@aquera/nile-elements 0.1.55 → 0.1.56-beta-1.1

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 (840) hide show
  1. package/README.md +14 -56
  2. package/demo/filenames.txt +1 -0
  3. package/demo/filenames.txt +1 -0
  4. package/demo/index.html +145 -29
  5. package/demo/index.js +1 -0
  6. package/dist/axe.min-2b379f29.cjs.js +12 -0
  7. package/dist/axe.min-2b379f29.cjs.js.map +1 -0
  8. package/dist/axe.min-c2cd8733.esm.js +12 -0
  9. package/dist/{fixture-e7023246.esm.js → fixture-add72f26.esm.js} +1 -1
  10. package/dist/{fixture-fe6c932e.cjs.js → fixture-cb376a7f.cjs.js} +3 -3
  11. package/dist/fixture-cb376a7f.cjs.js.map +1 -0
  12. package/dist/index.cjs.js +1 -1
  13. package/dist/index.esm.js +1 -1
  14. package/dist/lit-html-39a6718c.esm.js +6 -0
  15. package/dist/lit-html-9b3af046.cjs.js +6 -0
  16. package/dist/lit-html-9b3af046.cjs.js.map +1 -0
  17. package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
  18. package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
  19. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
  20. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js.map +1 -1
  21. package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
  22. package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
  23. package/dist/nile-avatar/nile-avatar.test.cjs.js.map +1 -1
  24. package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
  25. package/dist/nile-badge/index.cjs.js +1 -1
  26. package/dist/nile-badge/index.esm.js +1 -1
  27. package/dist/nile-badge/nile-badge.cjs.js +1 -1
  28. package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
  29. package/dist/nile-badge/nile-badge.esm.js +1 -1
  30. package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
  31. package/dist/nile-badge/nile-badge.test.cjs.js.map +1 -1
  32. package/dist/nile-badge/nile-badge.test.esm.js +1 -1
  33. package/dist/nile-button/index.cjs.js +1 -1
  34. package/dist/nile-button/index.esm.js +1 -1
  35. package/dist/nile-button/nile-button.cjs.js +1 -1
  36. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  37. package/dist/nile-button/nile-button.esm.js +1 -1
  38. package/dist/nile-button/nile-button.test.cjs.js +1 -1
  39. package/dist/nile-button/nile-button.test.cjs.js.map +1 -1
  40. package/dist/nile-button/nile-button.test.esm.js +1 -1
  41. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +1 -1
  42. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +1 -1
  43. package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
  44. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
  45. package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
  46. package/dist/nile-card/nile-card.test.cjs.js +1 -1
  47. package/dist/nile-card/nile-card.test.esm.js +1 -1
  48. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
  49. package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
  50. package/dist/nile-chip/nile-chip.cjs.js +1 -1
  51. package/dist/nile-chip/nile-chip.cjs.js.map +1 -1
  52. package/dist/nile-chip/nile-chip.esm.js +17 -9
  53. package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
  54. package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
  55. package/dist/nile-chip/nile-chip.test.esm.js +1 -1
  56. package/dist/nile-code-editor/extensionSetup.cjs.js +5 -5
  57. package/dist/nile-code-editor/extensionSetup.cjs.js.map +1 -1
  58. package/dist/nile-code-editor/extensionSetup.esm.js +1 -1
  59. package/dist/nile-code-editor/nile-code-editor.cjs.js +2 -2
  60. package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
  61. package/dist/nile-code-editor/nile-code-editor.esm.js +3 -3
  62. package/dist/nile-code-editor/theme.cjs.js +1 -1
  63. package/dist/nile-code-editor/theme.cjs.js.map +1 -1
  64. package/dist/nile-code-editor/theme.esm.js +1 -1
  65. package/dist/nile-dialog/index.cjs.js +1 -1
  66. package/dist/nile-dialog/index.esm.js +1 -1
  67. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  68. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  69. package/dist/nile-dialog/nile-dialog.esm.js +1 -1
  70. package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
  71. package/dist/nile-dialog/nile-dialog.test.cjs.js.map +1 -1
  72. package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
  73. package/dist/nile-drawer/index.cjs.js +1 -1
  74. package/dist/nile-drawer/index.esm.js +1 -1
  75. package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
  76. package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
  77. package/dist/nile-drawer/nile-drawer.esm.js +1 -1
  78. package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
  79. package/dist/nile-drawer/nile-drawer.test.cjs.js.map +1 -1
  80. package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
  81. package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
  82. package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
  83. package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
  84. package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
  85. package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
  86. package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
  87. package/dist/nile-error-notification/nile-error-notification.cjs.js +1 -1
  88. package/dist/nile-error-notification/nile-error-notification.cjs.js.map +1 -1
  89. package/dist/nile-error-notification/nile-error-notification.esm.js +2 -4
  90. package/dist/nile-file-preview/index.cjs.js +2 -0
  91. package/dist/nile-file-preview/index.esm.js +1 -0
  92. package/dist/nile-file-preview/nile-file-preview.cjs.js +2 -0
  93. package/dist/nile-file-preview/nile-file-preview.cjs.js.map +1 -0
  94. package/dist/nile-file-preview/nile-file-preview.css.cjs.js +2 -0
  95. package/dist/nile-file-preview/nile-file-preview.css.cjs.js.map +1 -0
  96. package/dist/nile-file-preview/nile-file-preview.css.esm.js +512 -0
  97. package/dist/nile-file-preview/nile-file-preview.esm.js +3 -0
  98. package/dist/nile-file-preview/nile-file-preview.template.cjs.js +2 -0
  99. package/dist/nile-file-preview/nile-file-preview.template.cjs.js.map +1 -0
  100. package/dist/nile-file-preview/nile-file-preview.template.esm.js +173 -0
  101. package/dist/nile-file-preview/nile-file-preview.test.cjs.js +2 -0
  102. package/dist/nile-file-preview/nile-file-preview.test.cjs.js.map +1 -0
  103. package/dist/nile-file-preview/nile-file-preview.test.esm.js +1 -0
  104. package/dist/nile-file-preview/types/index.cjs.js +2 -0
  105. package/dist/nile-file-preview/types/index.cjs.js.map +1 -0
  106. package/dist/nile-file-preview/types/index.esm.js +1 -0
  107. package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js +2 -0
  108. package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js.map +1 -0
  109. package/dist/nile-file-preview/types/nile-file-preview.enums.esm.js +1 -0
  110. package/dist/nile-file-preview/types/nile-file-preview.interface.cjs.js +2 -0
  111. package/dist/nile-file-preview/types/nile-file-preview.interface.cjs.js.map +1 -0
  112. package/dist/nile-file-preview/types/nile-file-preview.interface.esm.js +1 -0
  113. package/dist/nile-file-preview/utils/index.cjs.js +2 -0
  114. package/dist/nile-file-preview/utils/index.cjs.js.map +1 -0
  115. package/dist/nile-file-preview/utils/index.esm.js +1 -0
  116. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js +2 -0
  117. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js.map +1 -0
  118. package/dist/nile-file-preview/utils/nile-file-preview.util.esm.js +1 -0
  119. package/dist/nile-file-upload/index.cjs.js +2 -0
  120. package/dist/nile-file-upload/index.cjs.js.map +1 -0
  121. package/dist/nile-file-upload/index.esm.js +1 -0
  122. package/dist/nile-file-upload/nile-file-upload.cjs.js +2 -0
  123. package/dist/nile-file-upload/nile-file-upload.cjs.js.map +1 -0
  124. package/dist/nile-file-upload/nile-file-upload.css.cjs.js +2 -0
  125. package/dist/nile-file-upload/nile-file-upload.css.cjs.js.map +1 -0
  126. package/dist/nile-file-upload/nile-file-upload.css.esm.js +538 -0
  127. package/dist/nile-file-upload/nile-file-upload.esm.js +3 -0
  128. package/dist/nile-file-upload/nile-file-upload.template.cjs.js +10 -0
  129. package/dist/nile-file-upload/nile-file-upload.template.cjs.js.map +1 -0
  130. package/dist/nile-file-upload/nile-file-upload.template.esm.js +111 -0
  131. package/dist/nile-file-upload/nile-file-upload.test.cjs.js +2 -0
  132. package/dist/nile-file-upload/nile-file-upload.test.cjs.js.map +1 -0
  133. package/dist/nile-file-upload/nile-file-upload.test.esm.js +1 -0
  134. package/dist/nile-file-upload/types/file-upload.enums.cjs.js +2 -0
  135. package/dist/nile-file-upload/types/file-upload.enums.cjs.js.map +1 -0
  136. package/dist/nile-file-upload/types/file-upload.enums.esm.js +1 -0
  137. package/dist/nile-file-upload/types/file-upload.type.cjs.js +2 -0
  138. package/dist/nile-file-upload/types/file-upload.type.cjs.js.map +1 -0
  139. package/dist/nile-file-upload/types/file-upload.type.esm.js +1 -0
  140. package/dist/nile-file-upload/types/index.cjs.js +2 -0
  141. package/dist/nile-file-upload/types/index.cjs.js.map +1 -0
  142. package/dist/nile-file-upload/types/index.esm.js +1 -0
  143. package/dist/nile-file-upload/utils/drag-drop.util.cjs.js +2 -0
  144. package/dist/nile-file-upload/utils/drag-drop.util.cjs.js.map +1 -0
  145. package/dist/nile-file-upload/utils/drag-drop.util.esm.js +1 -0
  146. package/dist/nile-file-upload/utils/file-validation.util.cjs.js +3 -0
  147. package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +1 -0
  148. package/dist/nile-file-upload/utils/file-validation.util.esm.js +1 -0
  149. package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +1 -1
  150. package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +1 -1
  151. package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
  152. package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
  153. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
  154. package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
  155. package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
  156. package/dist/nile-hero/nile-hero.test.esm.js +1 -1
  157. package/dist/nile-icon/icons/svg/accessreview.cjs.js +1 -1
  158. package/dist/nile-icon/icons/svg/accessreview.cjs.js.map +1 -1
  159. package/dist/nile-icon/icons/svg/accessreview.esm.js +1 -1
  160. package/dist/nile-icon/icons/svg/agent.cjs.js +1 -1
  161. package/dist/nile-icon/icons/svg/agent.cjs.js.map +1 -1
  162. package/dist/nile-icon/icons/svg/agent.esm.js +1 -1
  163. package/dist/nile-icon/icons/svg/api.cjs.js +1 -1
  164. package/dist/nile-icon/icons/svg/api.cjs.js.map +1 -1
  165. package/dist/nile-icon/icons/svg/api.esm.js +1 -1
  166. package/dist/nile-icon/icons/svg/apply-filter.cjs.js +1 -1
  167. package/dist/nile-icon/icons/svg/apply-filter.cjs.js.map +1 -1
  168. package/dist/nile-icon/icons/svg/apply-filter.esm.js +1 -1
  169. package/dist/nile-icon/icons/svg/arrowdropdown.cjs.js +1 -1
  170. package/dist/nile-icon/icons/svg/arrowdropdown.cjs.js.map +1 -1
  171. package/dist/nile-icon/icons/svg/arrowdropdown.esm.js +1 -1
  172. package/dist/nile-icon/icons/svg/arrowdropup.cjs.js +1 -1
  173. package/dist/nile-icon/icons/svg/arrowdropup.cjs.js.map +1 -1
  174. package/dist/nile-icon/icons/svg/arrowdropup.esm.js +1 -1
  175. package/dist/nile-icon/icons/svg/database.cjs.js +1 -1
  176. package/dist/nile-icon/icons/svg/database.cjs.js.map +1 -1
  177. package/dist/nile-icon/icons/svg/database.esm.js +1 -1
  178. package/dist/nile-icon/icons/svg/done.cjs.js +1 -1
  179. package/dist/nile-icon/icons/svg/done.cjs.js.map +1 -1
  180. package/dist/nile-icon/icons/svg/done.esm.js +1 -1
  181. package/dist/nile-icon/icons/svg/dontmap.cjs.js +1 -1
  182. package/dist/nile-icon/icons/svg/dontmap.cjs.js.map +1 -1
  183. package/dist/nile-icon/icons/svg/dontmap.esm.js +1 -1
  184. package/dist/nile-icon/icons/svg/doublearrowleft.cjs.js +1 -1
  185. package/dist/nile-icon/icons/svg/doublearrowleft.cjs.js.map +1 -1
  186. package/dist/nile-icon/icons/svg/doublearrowleft.esm.js +1 -1
  187. package/dist/nile-icon/icons/svg/doublearrowright.cjs.js +1 -1
  188. package/dist/nile-icon/icons/svg/doublearrowright.cjs.js.map +1 -1
  189. package/dist/nile-icon/icons/svg/doublearrowright.esm.js +1 -1
  190. package/dist/nile-icon/icons/svg/drag.cjs.js +1 -1
  191. package/dist/nile-icon/icons/svg/drag.cjs.js.map +1 -1
  192. package/dist/nile-icon/icons/svg/drag.esm.js +1 -1
  193. package/dist/nile-icon/icons/svg/expand-06.cjs.js +1 -1
  194. package/dist/nile-icon/icons/svg/expand-06.cjs.js.map +1 -1
  195. package/dist/nile-icon/icons/svg/expand-06.esm.js +1 -1
  196. package/dist/nile-icon/icons/svg/expand.cjs.js +1 -1
  197. package/dist/nile-icon/icons/svg/expand.cjs.js.map +1 -1
  198. package/dist/nile-icon/icons/svg/expand.esm.js +1 -1
  199. package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
  200. package/dist/nile-icon/icons/svg/index.esm.js +1 -1
  201. package/dist/nile-icon/icons/svg/info.cjs.js +1 -1
  202. package/dist/nile-icon/icons/svg/info.cjs.js.map +1 -1
  203. package/dist/nile-icon/icons/svg/info.esm.js +1 -1
  204. package/dist/nile-icon/icons/svg/integer.cjs.js +1 -1
  205. package/dist/nile-icon/icons/svg/integer.cjs.js.map +1 -1
  206. package/dist/nile-icon/icons/svg/integer.esm.js +1 -1
  207. package/dist/nile-icon/icons/svg/pluscircle.cjs.js +1 -1
  208. package/dist/nile-icon/icons/svg/pluscircle.cjs.js.map +1 -1
  209. package/dist/nile-icon/icons/svg/pluscircle.esm.js +1 -1
  210. package/dist/nile-icon/icons/svg/question.cjs.js +1 -1
  211. package/dist/nile-icon/icons/svg/question.cjs.js.map +1 -1
  212. package/dist/nile-icon/icons/svg/question.esm.js +1 -1
  213. package/dist/nile-icon/icons/svg/resource.cjs.js +1 -1
  214. package/dist/nile-icon/icons/svg/resource.cjs.js.map +1 -1
  215. package/dist/nile-icon/icons/svg/resource.esm.js +1 -1
  216. package/dist/nile-icon/icons/svg/sendescalation.cjs.js +1 -1
  217. package/dist/nile-icon/icons/svg/sendescalation.cjs.js.map +1 -1
  218. package/dist/nile-icon/icons/svg/sendescalation.esm.js +1 -1
  219. package/dist/nile-icon/icons/svg/sendreminder.cjs.js +1 -1
  220. package/dist/nile-icon/icons/svg/sendreminder.cjs.js.map +1 -1
  221. package/dist/nile-icon/icons/svg/sendreminder.esm.js +1 -1
  222. package/dist/nile-icon/icons/svg/timezone.cjs.js +1 -1
  223. package/dist/nile-icon/icons/svg/timezone.cjs.js.map +1 -1
  224. package/dist/nile-icon/icons/svg/timezone.esm.js +1 -1
  225. package/dist/nile-icon/icons/svg/unmute.cjs.js +1 -1
  226. package/dist/nile-icon/icons/svg/unmute.cjs.js.map +1 -1
  227. package/dist/nile-icon/icons/svg/unmute.esm.js +1 -1
  228. package/dist/nile-icon/icons/svg/upgrade.cjs.js +1 -1
  229. package/dist/nile-icon/icons/svg/upgrade.cjs.js.map +1 -1
  230. package/dist/nile-icon/icons/svg/upgrade.esm.js +1 -1
  231. package/dist/nile-icon/index.cjs.js +1 -1
  232. package/dist/nile-icon/index.cjs.js.map +1 -1
  233. package/dist/nile-icon/index.esm.js +1 -1
  234. package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
  235. package/dist/nile-icon/nile-icon.test.cjs.js.map +1 -1
  236. package/dist/nile-icon/nile-icon.test.esm.js +1 -1
  237. package/dist/nile-icon-button/index.cjs.js +1 -1
  238. package/dist/nile-icon-button/index.esm.js +1 -1
  239. package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
  240. package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
  241. package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
  242. package/dist/nile-input/index.cjs.js +1 -1
  243. package/dist/nile-input/index.esm.js +1 -1
  244. package/dist/nile-input/nile-input.cjs.js +1 -1
  245. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  246. package/dist/nile-input/nile-input.esm.js +1 -1
  247. package/dist/nile-input/nile-input.test.cjs.js +1 -1
  248. package/dist/nile-input/nile-input.test.cjs.js.map +1 -1
  249. package/dist/nile-input/nile-input.test.esm.js +1 -1
  250. package/dist/nile-link/nile-link.test.cjs.js +1 -1
  251. package/dist/nile-link/nile-link.test.esm.js +1 -1
  252. package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
  253. package/dist/nile-loader/nile-loader.test.esm.js +1 -1
  254. package/dist/nile-menu/nile-menu.css.cjs.js +1 -1
  255. package/dist/nile-menu/nile-menu.css.cjs.js.map +1 -1
  256. package/dist/nile-menu/nile-menu.css.esm.js +3 -3
  257. package/dist/nile-menu-item/index.cjs.js +1 -1
  258. package/dist/nile-menu-item/index.esm.js +1 -1
  259. package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
  260. package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
  261. package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
  262. package/dist/nile-option/index.cjs.js +1 -1
  263. package/dist/nile-option/index.esm.js +1 -1
  264. package/dist/nile-option/nile-option.cjs.js +1 -1
  265. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  266. package/dist/nile-option/nile-option.esm.js +2 -2
  267. package/dist/nile-popover/index.cjs.js +1 -1
  268. package/dist/nile-popover/index.esm.js +1 -1
  269. package/dist/nile-popover/nile-popover.cjs.js +3 -11
  270. package/dist/nile-popover/nile-popover.cjs.js.map +1 -1
  271. package/dist/nile-popover/nile-popover.esm.js +7 -13
  272. package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
  273. package/dist/nile-popover/nile-popover.test.cjs.js.map +1 -1
  274. package/dist/nile-popover/nile-popover.test.esm.js +3 -3
  275. package/dist/nile-popup/nile-popup.cjs.js +1 -1
  276. package/dist/nile-popup/nile-popup.cjs.js.map +1 -1
  277. package/dist/nile-popup/nile-popup.esm.js +1 -1
  278. package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
  279. package/dist/nile-popup/nile-popup.test.esm.js +1 -1
  280. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
  281. package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
  282. package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
  283. package/dist/nile-radio/nile-radio.test.esm.js +1 -1
  284. package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
  285. package/dist/nile-radio-group/nile-radio-group.test.esm.js +1 -1
  286. package/dist/nile-select/index.cjs.js +1 -1
  287. package/dist/nile-select/index.esm.js +1 -1
  288. package/dist/nile-select/nile-select.cjs.js +1 -1
  289. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  290. package/dist/nile-select/nile-select.esm.js +1 -1
  291. package/dist/nile-select/nile-select.test.cjs.js +1 -1
  292. package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
  293. package/dist/nile-select/nile-select.test.esm.js +1 -1
  294. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
  295. package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
  296. package/dist/nile-tab/index.cjs.js +1 -1
  297. package/dist/nile-tab/index.esm.js +1 -1
  298. package/dist/nile-tab/nile-tab.cjs.js +1 -1
  299. package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
  300. package/dist/nile-tab/nile-tab.esm.js +2 -2
  301. package/dist/nile-tab-group/index.cjs.js +1 -1
  302. package/dist/nile-tab-group/index.esm.js +1 -1
  303. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  304. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  305. package/dist/nile-tab-group/nile-tab-group.esm.js +1 -1
  306. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
  307. package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +1 -1
  308. package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
  309. package/dist/nile-tag/index.cjs.js +1 -1
  310. package/dist/nile-tag/index.esm.js +1 -1
  311. package/dist/nile-tag/nile-tag.cjs.js +1 -1
  312. package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
  313. package/dist/nile-tag/nile-tag.esm.js +1 -1
  314. package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
  315. package/dist/nile-textarea/nile-textarea.test.esm.js +1 -1
  316. package/dist/nile-toast/index.cjs.js +1 -1
  317. package/dist/nile-toast/index.esm.js +1 -1
  318. package/dist/nile-toast/nile-toast.cjs.js +1 -1
  319. package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
  320. package/dist/nile-toast/nile-toast.esm.js +1 -1
  321. package/dist/nile-tree/index.cjs.js +1 -1
  322. package/dist/nile-tree/index.esm.js +1 -1
  323. package/dist/nile-tree/nile-tree.cjs.js +1 -1
  324. package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
  325. package/dist/nile-tree/nile-tree.esm.js +1 -1
  326. package/dist/nile-tree-item/index.cjs.js +1 -1
  327. package/dist/nile-tree-item/index.esm.js +1 -1
  328. package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
  329. package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
  330. package/dist/nile-tree-item/nile-tree-item.esm.js +1 -1
  331. package/dist/src/index.d.ts +2 -1
  332. package/dist/src/index.js +2 -1
  333. package/dist/src/index.js.map +1 -1
  334. package/dist/src/nile-chip/nile-chip.js +9 -1
  335. package/dist/src/nile-chip/nile-chip.js.map +1 -1
  336. package/dist/src/nile-code-editor/nile-code-editor.d.ts +0 -2
  337. package/dist/src/nile-code-editor/nile-code-editor.js +6 -48
  338. package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
  339. package/dist/src/nile-code-editor/theme.d.ts +0 -110
  340. package/dist/src/nile-code-editor/theme.js +0 -110
  341. package/dist/src/nile-code-editor/theme.js.map +1 -1
  342. package/dist/src/nile-error-notification/nile-error-notification.js +2 -4
  343. package/dist/src/nile-error-notification/nile-error-notification.js.map +1 -1
  344. package/dist/src/nile-file-preview/index.d.ts +1 -0
  345. package/dist/src/nile-file-preview/index.js +2 -0
  346. package/dist/src/nile-file-preview/index.js.map +1 -0
  347. package/dist/src/nile-file-preview/nile-file-preview.css.d.ts +12 -0
  348. package/dist/src/nile-file-preview/nile-file-preview.css.js +524 -0
  349. package/dist/src/nile-file-preview/nile-file-preview.css.js.map +1 -0
  350. package/dist/src/nile-file-preview/nile-file-preview.d.ts +50 -0
  351. package/dist/src/nile-file-preview/nile-file-preview.js +171 -0
  352. package/dist/src/nile-file-preview/nile-file-preview.js.map +1 -0
  353. package/dist/src/nile-file-preview/nile-file-preview.template.d.ts +13 -0
  354. package/dist/src/nile-file-preview/nile-file-preview.template.js +205 -0
  355. package/dist/src/nile-file-preview/nile-file-preview.template.js.map +1 -0
  356. package/dist/src/nile-file-preview/nile-file-preview.test.d.ts +7 -0
  357. package/dist/src/nile-file-preview/nile-file-preview.test.js +30 -0
  358. package/dist/src/nile-file-preview/nile-file-preview.test.js.map +1 -0
  359. package/dist/src/nile-file-preview/types/index.d.ts +2 -0
  360. package/dist/src/nile-file-preview/types/index.js +3 -0
  361. package/dist/src/nile-file-preview/types/index.js.map +1 -0
  362. package/dist/src/nile-file-preview/types/nile-file-preview.enums.d.ts +27 -0
  363. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js +32 -0
  364. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js.map +1 -0
  365. package/dist/src/nile-file-preview/types/nile-file-preview.interface.d.ts +4 -0
  366. package/dist/src/nile-file-preview/types/nile-file-preview.interface.js +2 -0
  367. package/dist/src/nile-file-preview/types/nile-file-preview.interface.js.map +1 -0
  368. package/dist/src/nile-file-preview/utils/index.d.ts +1 -0
  369. package/dist/src/nile-file-preview/utils/index.js +2 -0
  370. package/dist/src/nile-file-preview/utils/index.js.map +1 -0
  371. package/dist/src/nile-file-preview/utils/nile-file-preview.util.d.ts +5 -0
  372. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +50 -0
  373. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js.map +1 -0
  374. package/dist/src/nile-file-upload/index.d.ts +1 -0
  375. package/dist/src/nile-file-upload/index.js +2 -0
  376. package/dist/src/nile-file-upload/index.js.map +1 -0
  377. package/dist/src/nile-file-upload/nile-file-upload.css.d.ts +12 -0
  378. package/dist/src/nile-file-upload/nile-file-upload.css.js +550 -0
  379. package/dist/src/nile-file-upload/nile-file-upload.css.js.map +1 -0
  380. package/dist/src/nile-file-upload/nile-file-upload.d.ts +48 -0
  381. package/dist/src/nile-file-upload/nile-file-upload.js +162 -0
  382. package/dist/src/nile-file-upload/nile-file-upload.js.map +1 -0
  383. package/dist/src/nile-file-upload/nile-file-upload.template.d.ts +10 -0
  384. package/dist/src/nile-file-upload/nile-file-upload.template.js +117 -0
  385. package/dist/src/nile-file-upload/nile-file-upload.template.js.map +1 -0
  386. package/dist/src/nile-file-upload/nile-file-upload.test.d.ts +7 -0
  387. package/dist/src/nile-file-upload/nile-file-upload.test.js +30 -0
  388. package/dist/src/nile-file-upload/nile-file-upload.test.js.map +1 -0
  389. package/dist/src/nile-file-upload/types/file-upload.enums.d.ts +36 -0
  390. package/dist/src/nile-file-upload/types/file-upload.enums.js +43 -0
  391. package/dist/src/nile-file-upload/types/file-upload.enums.js.map +1 -0
  392. package/dist/src/nile-file-upload/types/file-upload.type.d.ts +4 -0
  393. package/dist/src/nile-file-upload/types/file-upload.type.js +2 -0
  394. package/dist/src/nile-file-upload/types/file-upload.type.js.map +1 -0
  395. package/dist/src/nile-file-upload/types/index.d.ts +2 -0
  396. package/dist/src/nile-file-upload/types/index.js +3 -0
  397. package/dist/src/nile-file-upload/types/index.js.map +1 -0
  398. package/dist/src/nile-file-upload/utils/drag-drop.util.d.ts +21 -0
  399. package/dist/src/nile-file-upload/utils/drag-drop.util.js +82 -0
  400. package/dist/src/nile-file-upload/utils/drag-drop.util.js.map +1 -0
  401. package/dist/src/nile-file-upload/utils/file-validation.util.d.ts +13 -0
  402. package/dist/src/nile-file-upload/utils/file-validation.util.js +148 -0
  403. package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -0
  404. package/dist/src/nile-icon/icons/svg/accessreview.d.ts +1 -1
  405. package/dist/src/nile-icon/icons/svg/accessreview.js +1 -1
  406. package/dist/src/nile-icon/icons/svg/accessreview.js.map +1 -1
  407. package/dist/src/nile-icon/icons/svg/agent.d.ts +1 -1
  408. package/dist/src/nile-icon/icons/svg/agent.js +1 -1
  409. package/dist/src/nile-icon/icons/svg/agent.js.map +1 -1
  410. package/dist/src/nile-icon/icons/svg/api.d.ts +1 -1
  411. package/dist/src/nile-icon/icons/svg/api.js +1 -1
  412. package/dist/src/nile-icon/icons/svg/api.js.map +1 -1
  413. package/dist/src/nile-icon/icons/svg/apply-filter.d.ts +1 -1
  414. package/dist/src/nile-icon/icons/svg/apply-filter.js +1 -1
  415. package/dist/src/nile-icon/icons/svg/apply-filter.js.map +1 -1
  416. package/dist/src/nile-icon/icons/svg/arrowdropdown.d.ts +1 -1
  417. package/dist/src/nile-icon/icons/svg/arrowdropdown.js +1 -1
  418. package/dist/src/nile-icon/icons/svg/arrowdropdown.js.map +1 -1
  419. package/dist/src/nile-icon/icons/svg/arrowdropup.d.ts +1 -1
  420. package/dist/src/nile-icon/icons/svg/arrowdropup.js +1 -1
  421. package/dist/src/nile-icon/icons/svg/arrowdropup.js.map +1 -1
  422. package/dist/src/nile-icon/icons/svg/database.d.ts +1 -1
  423. package/dist/src/nile-icon/icons/svg/database.js +1 -1
  424. package/dist/src/nile-icon/icons/svg/database.js.map +1 -1
  425. package/dist/src/nile-icon/icons/svg/done.d.ts +1 -1
  426. package/dist/src/nile-icon/icons/svg/done.js +1 -1
  427. package/dist/src/nile-icon/icons/svg/done.js.map +1 -1
  428. package/dist/src/nile-icon/icons/svg/dontmap.d.ts +1 -1
  429. package/dist/src/nile-icon/icons/svg/dontmap.js +1 -1
  430. package/dist/src/nile-icon/icons/svg/dontmap.js.map +1 -1
  431. package/dist/src/nile-icon/icons/svg/doublearrowleft.d.ts +1 -1
  432. package/dist/src/nile-icon/icons/svg/doublearrowleft.js +1 -1
  433. package/dist/src/nile-icon/icons/svg/doublearrowleft.js.map +1 -1
  434. package/dist/src/nile-icon/icons/svg/doublearrowright.d.ts +1 -1
  435. package/dist/src/nile-icon/icons/svg/doublearrowright.js +1 -1
  436. package/dist/src/nile-icon/icons/svg/doublearrowright.js.map +1 -1
  437. package/dist/src/nile-icon/icons/svg/drag.d.ts +1 -1
  438. package/dist/src/nile-icon/icons/svg/drag.js +1 -1
  439. package/dist/src/nile-icon/icons/svg/drag.js.map +1 -1
  440. package/dist/src/nile-icon/icons/svg/expand-06.d.ts +1 -1
  441. package/dist/src/nile-icon/icons/svg/expand-06.js +1 -1
  442. package/dist/src/nile-icon/icons/svg/expand-06.js.map +1 -1
  443. package/dist/src/nile-icon/icons/svg/expand.d.ts +1 -1
  444. package/dist/src/nile-icon/icons/svg/expand.js +1 -1
  445. package/dist/src/nile-icon/icons/svg/expand.js.map +1 -1
  446. package/dist/src/nile-icon/icons/svg/index.d.ts +0 -6
  447. package/dist/src/nile-icon/icons/svg/index.js +0 -6
  448. package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
  449. package/dist/src/nile-icon/icons/svg/info.d.ts +1 -1
  450. package/dist/src/nile-icon/icons/svg/info.js +1 -1
  451. package/dist/src/nile-icon/icons/svg/info.js.map +1 -1
  452. package/dist/src/nile-icon/icons/svg/integer.d.ts +1 -1
  453. package/dist/src/nile-icon/icons/svg/integer.js +1 -1
  454. package/dist/src/nile-icon/icons/svg/integer.js.map +1 -1
  455. package/dist/src/nile-icon/icons/svg/ng-activity.d.ts +5 -0
  456. package/dist/src/nile-icon/icons/svg/ng-activity.js +5 -0
  457. package/dist/src/nile-icon/icons/svg/ng-activity.js.map +1 -0
  458. package/dist/src/nile-icon/icons/svg/ng-align-center.d.ts +5 -0
  459. package/dist/src/nile-icon/icons/svg/ng-align-center.js +5 -0
  460. package/dist/src/nile-icon/icons/svg/ng-align-center.js.map +1 -0
  461. package/dist/src/nile-icon/icons/svg/ng-annotation-x.d.ts +5 -0
  462. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js +5 -0
  463. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js.map +1 -0
  464. package/dist/src/nile-icon/icons/svg/ng-arrow-down.d.ts +5 -0
  465. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js +5 -0
  466. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js.map +1 -0
  467. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.d.ts +5 -0
  468. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js +5 -0
  469. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js.map +1 -0
  470. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.d.ts +5 -0
  471. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js +5 -0
  472. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js.map +1 -0
  473. package/dist/src/nile-icon/icons/svg/ng-arrow-up.d.ts +5 -0
  474. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js +5 -0
  475. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js.map +1 -0
  476. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.d.ts +5 -0
  477. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js +5 -0
  478. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js.map +1 -0
  479. package/dist/src/nile-icon/icons/svg/ng-bell-01.d.ts +5 -0
  480. package/dist/src/nile-icon/icons/svg/ng-bell-01.js +5 -0
  481. package/dist/src/nile-icon/icons/svg/ng-bell-01.js.map +1 -0
  482. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.d.ts +5 -0
  483. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js +5 -0
  484. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js.map +1 -0
  485. package/dist/src/nile-icon/icons/svg/ng-bold-01.d.ts +5 -0
  486. package/dist/src/nile-icon/icons/svg/ng-bold-01.js +5 -0
  487. package/dist/src/nile-icon/icons/svg/ng-bold-01.js.map +1 -0
  488. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.d.ts +5 -0
  489. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js +5 -0
  490. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js.map +1 -0
  491. package/dist/src/nile-icon/icons/svg/ng-calendar.d.ts +5 -0
  492. package/dist/src/nile-icon/icons/svg/ng-calendar.js +5 -0
  493. package/dist/src/nile-icon/icons/svg/ng-calendar.js.map +1 -0
  494. package/dist/src/nile-icon/icons/svg/ng-check-circle.d.ts +5 -0
  495. package/dist/src/nile-icon/icons/svg/ng-check-circle.js +5 -0
  496. package/dist/src/nile-icon/icons/svg/ng-check-circle.js.map +1 -0
  497. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.d.ts +5 -0
  498. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js +5 -0
  499. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js.map +1 -0
  500. package/dist/src/nile-icon/icons/svg/ng-chevron-down.d.ts +5 -0
  501. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js +5 -0
  502. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js.map +1 -0
  503. package/dist/src/nile-icon/icons/svg/ng-chevron-left.d.ts +5 -0
  504. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js +5 -0
  505. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js.map +1 -0
  506. package/dist/src/nile-icon/icons/svg/ng-chevron-right.d.ts +5 -0
  507. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js +5 -0
  508. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js.map +1 -0
  509. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.d.ts +5 -0
  510. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js +5 -0
  511. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js.map +1 -0
  512. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.d.ts +5 -0
  513. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js +5 -0
  514. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js.map +1 -0
  515. package/dist/src/nile-icon/icons/svg/ng-chevron-up.d.ts +5 -0
  516. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js +5 -0
  517. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js.map +1 -0
  518. package/dist/src/nile-icon/icons/svg/ng-copy-03.d.ts +5 -0
  519. package/dist/src/nile-icon/icons/svg/ng-copy-03.js +5 -0
  520. package/dist/src/nile-icon/icons/svg/ng-copy-03.js.map +1 -0
  521. package/dist/src/nile-icon/icons/svg/ng-dots-grid.d.ts +5 -0
  522. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js +5 -0
  523. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js.map +1 -0
  524. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.d.ts +5 -0
  525. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js +5 -0
  526. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js.map +1 -0
  527. package/dist/src/nile-icon/icons/svg/ng-download-01.d.ts +5 -0
  528. package/dist/src/nile-icon/icons/svg/ng-download-01.js +5 -0
  529. package/dist/src/nile-icon/icons/svg/ng-download-01.js.map +1 -0
  530. package/dist/src/nile-icon/icons/svg/ng-dropdown.d.ts +5 -0
  531. package/dist/src/nile-icon/icons/svg/ng-dropdown.js +5 -0
  532. package/dist/src/nile-icon/icons/svg/ng-dropdown.js.map +1 -0
  533. package/dist/src/nile-icon/icons/svg/ng-edit-02.d.ts +5 -0
  534. package/dist/src/nile-icon/icons/svg/ng-edit-02.js +5 -0
  535. package/dist/src/nile-icon/icons/svg/ng-edit-02.js.map +1 -0
  536. package/dist/src/nile-icon/icons/svg/ng-edit-05.d.ts +5 -0
  537. package/dist/src/nile-icon/icons/svg/ng-edit-05.js +5 -0
  538. package/dist/src/nile-icon/icons/svg/ng-edit-05.js.map +1 -0
  539. package/dist/src/nile-icon/icons/svg/ng-expand-06.d.ts +5 -0
  540. package/dist/src/nile-icon/icons/svg/ng-expand-06.js +5 -0
  541. package/dist/src/nile-icon/icons/svg/ng-expand-06.js.map +1 -0
  542. package/dist/src/nile-icon/icons/svg/ng-file-02.d.ts +5 -0
  543. package/dist/src/nile-icon/icons/svg/ng-file-02.js +5 -0
  544. package/dist/src/nile-icon/icons/svg/ng-file-02.js.map +1 -0
  545. package/dist/src/nile-icon/icons/svg/ng-file-check-02.d.ts +5 -0
  546. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js +5 -0
  547. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js.map +1 -0
  548. package/dist/src/nile-icon/icons/svg/ng-file-question-03.d.ts +5 -0
  549. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js +5 -0
  550. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js.map +1 -0
  551. package/dist/src/nile-icon/icons/svg/ng-filter-lines.d.ts +5 -0
  552. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js +5 -0
  553. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js.map +1 -0
  554. package/dist/src/nile-icon/icons/svg/ng-grid-01.d.ts +5 -0
  555. package/dist/src/nile-icon/icons/svg/ng-grid-01.js +5 -0
  556. package/dist/src/nile-icon/icons/svg/ng-grid-01.js.map +1 -0
  557. package/dist/src/nile-icon/icons/svg/ng-help-circle.d.ts +5 -0
  558. package/dist/src/nile-icon/icons/svg/ng-help-circle.js +5 -0
  559. package/dist/src/nile-icon/icons/svg/ng-help-circle.js.map +1 -0
  560. package/dist/src/nile-icon/icons/svg/ng-image-user-left.d.ts +5 -0
  561. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js +5 -0
  562. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js.map +1 -0
  563. package/dist/src/nile-icon/icons/svg/ng-info-circle.d.ts +5 -0
  564. package/dist/src/nile-icon/icons/svg/ng-info-circle.js +5 -0
  565. package/dist/src/nile-icon/icons/svg/ng-info-circle.js.map +1 -0
  566. package/dist/src/nile-icon/icons/svg/ng-italic-01.d.ts +5 -0
  567. package/dist/src/nile-icon/icons/svg/ng-italic-01.js +5 -0
  568. package/dist/src/nile-icon/icons/svg/ng-italic-01.js.map +1 -0
  569. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.d.ts +5 -0
  570. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js +5 -0
  571. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js.map +1 -0
  572. package/dist/src/nile-icon/icons/svg/ng-list.d.ts +5 -0
  573. package/dist/src/nile-icon/icons/svg/ng-list.js +5 -0
  574. package/dist/src/nile-icon/icons/svg/ng-list.js.map +1 -0
  575. package/dist/src/nile-icon/icons/svg/ng-log-out-01.d.ts +5 -0
  576. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js +5 -0
  577. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js.map +1 -0
  578. package/dist/src/nile-icon/icons/svg/ng-mail-01.d.ts +5 -0
  579. package/dist/src/nile-icon/icons/svg/ng-mail-01.js +5 -0
  580. package/dist/src/nile-icon/icons/svg/ng-mail-01.js.map +1 -0
  581. package/dist/src/nile-icon/icons/svg/ng-mail-04.d.ts +5 -0
  582. package/dist/src/nile-icon/icons/svg/ng-mail-04.js +5 -0
  583. package/dist/src/nile-icon/icons/svg/ng-mail-04.js.map +1 -0
  584. package/dist/src/nile-icon/icons/svg/ng-menu-05.d.ts +5 -0
  585. package/dist/src/nile-icon/icons/svg/ng-menu-05.js +5 -0
  586. package/dist/src/nile-icon/icons/svg/ng-menu-05.js.map +1 -0
  587. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.d.ts +5 -0
  588. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js +5 -0
  589. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js.map +1 -0
  590. package/dist/src/nile-icon/icons/svg/ng-minimize-02.d.ts +5 -0
  591. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js +5 -0
  592. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js.map +1 -0
  593. package/dist/src/nile-icon/icons/svg/ng-plus.d.ts +5 -0
  594. package/dist/src/nile-icon/icons/svg/ng-plus.js +5 -0
  595. package/dist/src/nile-icon/icons/svg/ng-plus.js.map +1 -0
  596. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.d.ts +5 -0
  597. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js +5 -0
  598. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js.map +1 -0
  599. package/dist/src/nile-icon/icons/svg/ng-rocket-02.d.ts +5 -0
  600. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js +5 -0
  601. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js.map +1 -0
  602. package/dist/src/nile-icon/icons/svg/ng-search-lg.d.ts +5 -0
  603. package/dist/src/nile-icon/icons/svg/ng-search-lg.js +5 -0
  604. package/dist/src/nile-icon/icons/svg/ng-search-lg.js.map +1 -0
  605. package/dist/src/nile-icon/icons/svg/ng-send-01.d.ts +5 -0
  606. package/dist/src/nile-icon/icons/svg/ng-send-01.js +5 -0
  607. package/dist/src/nile-icon/icons/svg/ng-send-01.js.map +1 -0
  608. package/dist/src/nile-icon/icons/svg/ng-settings-01.d.ts +5 -0
  609. package/dist/src/nile-icon/icons/svg/ng-settings-01.js +5 -0
  610. package/dist/src/nile-icon/icons/svg/ng-settings-01.js.map +1 -0
  611. package/dist/src/nile-icon/icons/svg/ng-share-04.d.ts +5 -0
  612. package/dist/src/nile-icon/icons/svg/ng-share-04.js +5 -0
  613. package/dist/src/nile-icon/icons/svg/ng-share-04.js.map +1 -0
  614. package/dist/src/nile-icon/icons/svg/ng-share-06.d.ts +5 -0
  615. package/dist/src/nile-icon/icons/svg/ng-share-06.js +5 -0
  616. package/dist/src/nile-icon/icons/svg/ng-share-06.js.map +1 -0
  617. package/dist/src/nile-icon/icons/svg/ng-stars-02.d.ts +5 -0
  618. package/dist/src/nile-icon/icons/svg/ng-stars-02.js +5 -0
  619. package/dist/src/nile-icon/icons/svg/ng-stars-02.js.map +1 -0
  620. package/dist/src/nile-icon/icons/svg/ng-trash-01.d.ts +5 -0
  621. package/dist/src/nile-icon/icons/svg/ng-trash-01.js +5 -0
  622. package/dist/src/nile-icon/icons/svg/ng-trash-01.js.map +1 -0
  623. package/dist/src/nile-icon/icons/svg/ng-trash-03.d.ts +5 -0
  624. package/dist/src/nile-icon/icons/svg/ng-trash-03.js +5 -0
  625. package/dist/src/nile-icon/icons/svg/ng-trash-03.js.map +1 -0
  626. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.d.ts +5 -0
  627. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js +5 -0
  628. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js.map +1 -0
  629. package/dist/src/nile-icon/icons/svg/ng-underline-01.d.ts +5 -0
  630. package/dist/src/nile-icon/icons/svg/ng-underline-01.js +5 -0
  631. package/dist/src/nile-icon/icons/svg/ng-underline-01.js.map +1 -0
  632. package/dist/src/nile-icon/icons/svg/ng-upload-01.d.ts +5 -0
  633. package/dist/src/nile-icon/icons/svg/ng-upload-01.js +5 -0
  634. package/dist/src/nile-icon/icons/svg/ng-upload-01.js.map +1 -0
  635. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.d.ts +5 -0
  636. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js +5 -0
  637. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js.map +1 -0
  638. package/dist/src/nile-icon/icons/svg/ng-user-01.d.ts +5 -0
  639. package/dist/src/nile-icon/icons/svg/ng-user-01.js +5 -0
  640. package/dist/src/nile-icon/icons/svg/ng-user-01.js.map +1 -0
  641. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.d.ts +5 -0
  642. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js +5 -0
  643. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js.map +1 -0
  644. package/dist/src/nile-icon/icons/svg/ng-user-check-02.d.ts +5 -0
  645. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js +5 -0
  646. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js.map +1 -0
  647. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.d.ts +5 -0
  648. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js +5 -0
  649. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js.map +1 -0
  650. package/dist/src/nile-icon/icons/svg/ng-user-right-01.d.ts +5 -0
  651. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js +5 -0
  652. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js.map +1 -0
  653. package/dist/src/nile-icon/icons/svg/ng-users-01.d.ts +5 -0
  654. package/dist/src/nile-icon/icons/svg/ng-users-01.js +5 -0
  655. package/dist/src/nile-icon/icons/svg/ng-users-01.js.map +1 -0
  656. package/dist/src/nile-icon/icons/svg/ng-x-close.d.ts +5 -0
  657. package/dist/src/nile-icon/icons/svg/ng-x-close.js +5 -0
  658. package/dist/src/nile-icon/icons/svg/ng-x-close.js.map +1 -0
  659. package/dist/src/nile-icon/icons/svg/ng-x-square.d.ts +5 -0
  660. package/dist/src/nile-icon/icons/svg/ng-x-square.js +5 -0
  661. package/dist/src/nile-icon/icons/svg/ng-x-square.js.map +1 -0
  662. package/dist/src/nile-icon/icons/svg/pluscircle.d.ts +1 -1
  663. package/dist/src/nile-icon/icons/svg/pluscircle.js +1 -1
  664. package/dist/src/nile-icon/icons/svg/pluscircle.js.map +1 -1
  665. package/dist/src/nile-icon/icons/svg/question.d.ts +1 -1
  666. package/dist/src/nile-icon/icons/svg/question.js +1 -1
  667. package/dist/src/nile-icon/icons/svg/question.js.map +1 -1
  668. package/dist/src/nile-icon/icons/svg/resource.d.ts +1 -1
  669. package/dist/src/nile-icon/icons/svg/resource.js +1 -1
  670. package/dist/src/nile-icon/icons/svg/resource.js.map +1 -1
  671. package/dist/src/nile-icon/icons/svg/sendescalation.d.ts +1 -1
  672. package/dist/src/nile-icon/icons/svg/sendescalation.js +1 -1
  673. package/dist/src/nile-icon/icons/svg/sendescalation.js.map +1 -1
  674. package/dist/src/nile-icon/icons/svg/sendreminder.d.ts +1 -1
  675. package/dist/src/nile-icon/icons/svg/sendreminder.js +1 -1
  676. package/dist/src/nile-icon/icons/svg/sendreminder.js.map +1 -1
  677. package/dist/src/nile-icon/icons/svg/timezone.d.ts +1 -1
  678. package/dist/src/nile-icon/icons/svg/timezone.js +1 -1
  679. package/dist/src/nile-icon/icons/svg/timezone.js.map +1 -1
  680. package/dist/src/nile-icon/icons/svg/unmute.d.ts +1 -1
  681. package/dist/src/nile-icon/icons/svg/unmute.js +1 -1
  682. package/dist/src/nile-icon/icons/svg/unmute.js.map +1 -1
  683. package/dist/src/nile-icon/icons/svg/upgrade.d.ts +1 -1
  684. package/dist/src/nile-icon/icons/svg/upgrade.js +1 -1
  685. package/dist/src/nile-icon/icons/svg/upgrade.js.map +1 -1
  686. package/dist/src/nile-menu/nile-menu.css.js +1 -1
  687. package/dist/src/nile-menu/nile-menu.css.js.map +1 -1
  688. package/dist/src/nile-option/nile-option.d.ts +1 -3
  689. package/dist/src/nile-option/nile-option.js +0 -9
  690. package/dist/src/nile-option/nile-option.js.map +1 -1
  691. package/dist/src/nile-pagination/nile-pagination-utils.js.map +1 -1
  692. package/dist/src/nile-pagination/nile-pagination.css.js +38 -151
  693. package/dist/src/nile-pagination/nile-pagination.css.js.map +1 -1
  694. package/dist/src/nile-pagination/nile-pagination.d.ts +0 -3
  695. package/dist/src/nile-pagination/nile-pagination.js +40 -167
  696. package/dist/src/nile-pagination/nile-pagination.js.map +1 -1
  697. package/dist/src/nile-popup/nile-popup.js +1 -20
  698. package/dist/src/nile-popup/nile-popup.js.map +1 -1
  699. package/dist/src/nile-select/nile-select.d.ts +1 -3
  700. package/dist/src/nile-select/nile-select.js +0 -11
  701. package/dist/src/nile-select/nile-select.js.map +1 -1
  702. package/dist/src/nile-slider/index.d.ts +1 -0
  703. package/dist/src/nile-slider/index.js +2 -0
  704. package/dist/src/nile-slider/index.js.map +1 -0
  705. package/dist/src/nile-slider/nile-slider.css.d.ts +12 -0
  706. package/dist/src/nile-slider/nile-slider.css.js +110 -0
  707. package/dist/src/nile-slider/nile-slider.css.js.map +1 -0
  708. package/dist/src/nile-slider/nile-slider.d.ts +47 -0
  709. package/dist/src/nile-slider/nile-slider.js +181 -0
  710. package/dist/src/nile-slider/nile-slider.js.map +1 -0
  711. package/dist/src/nile-slider/nile-slider.template.d.ts +5 -0
  712. package/dist/src/nile-slider/nile-slider.template.js +44 -0
  713. package/dist/src/nile-slider/nile-slider.template.js.map +1 -0
  714. package/dist/src/nile-slider/types/nile-slider.enums.d.ts +10 -0
  715. package/dist/src/nile-slider/types/nile-slider.enums.js +2 -0
  716. package/dist/src/nile-slider/types/nile-slider.enums.js.map +1 -0
  717. package/dist/src/nile-slider/types/nile-slider.types.d.ts +1 -0
  718. package/dist/src/nile-slider/types/nile-slider.types.js +2 -0
  719. package/dist/src/nile-slider/types/nile-slider.types.js.map +1 -0
  720. package/dist/src/nile-slider/utils/nile-slider.utils.d.ts +11 -0
  721. package/dist/src/nile-slider/utils/nile-slider.utils.js +86 -0
  722. package/dist/src/nile-slider/utils/nile-slider.utils.js.map +1 -0
  723. package/dist/src/nile-tab/nile-tab.js +1 -1
  724. package/dist/src/nile-tab/nile-tab.js.map +1 -1
  725. package/dist/tsconfig.tsbuildinfo +1 -1
  726. package/package.json +2 -4
  727. package/rollup.config.js +39 -27
  728. package/src/index.ts +3 -2
  729. package/src/nile-chip/nile-chip.ts +9 -1
  730. package/src/nile-code-editor/nile-code-editor.ts +6 -55
  731. package/src/nile-code-editor/theme.ts +0 -111
  732. package/src/nile-error-notification/nile-error-notification.ts +3 -4
  733. package/src/nile-file-preview/index.ts +1 -0
  734. package/src/nile-file-preview/nile-file-preview.css.ts +526 -0
  735. package/src/nile-file-preview/nile-file-preview.template.ts +243 -0
  736. package/src/nile-file-preview/nile-file-preview.test.ts +38 -0
  737. package/src/nile-file-preview/nile-file-preview.ts +171 -0
  738. package/src/nile-file-preview/types/index.ts +2 -0
  739. package/src/nile-file-preview/types/nile-file-preview.enums.ts +30 -0
  740. package/src/nile-file-preview/types/nile-file-preview.interface.ts +4 -0
  741. package/src/nile-file-preview/utils/index.ts +1 -0
  742. package/src/nile-file-preview/utils/nile-file-preview.util.ts +58 -0
  743. package/src/nile-file-upload/index.ts +1 -0
  744. package/src/nile-file-upload/nile-file-upload.css.ts +552 -0
  745. package/src/nile-file-upload/nile-file-upload.template.ts +170 -0
  746. package/src/nile-file-upload/nile-file-upload.test.ts +38 -0
  747. package/src/nile-file-upload/nile-file-upload.ts +145 -0
  748. package/src/nile-file-upload/types/file-upload.enums.ts +40 -0
  749. package/src/nile-file-upload/types/file-upload.type.ts +5 -0
  750. package/src/nile-file-upload/types/index.ts +2 -0
  751. package/src/nile-file-upload/utils/drag-drop.util.ts +106 -0
  752. package/src/nile-file-upload/utils/file-validation.util.ts +200 -0
  753. package/src/nile-icon/icons/svg/accessreview.ts +1 -1
  754. package/src/nile-icon/icons/svg/agent.ts +1 -1
  755. package/src/nile-icon/icons/svg/api.ts +1 -1
  756. package/src/nile-icon/icons/svg/apply-filter.ts +1 -1
  757. package/src/nile-icon/icons/svg/arrowdropdown.ts +1 -1
  758. package/src/nile-icon/icons/svg/arrowdropup.ts +1 -1
  759. package/src/nile-icon/icons/svg/database.ts +1 -1
  760. package/src/nile-icon/icons/svg/done.ts +1 -1
  761. package/src/nile-icon/icons/svg/dontmap.ts +1 -1
  762. package/src/nile-icon/icons/svg/doublearrowleft.ts +1 -1
  763. package/src/nile-icon/icons/svg/doublearrowright.ts +1 -1
  764. package/src/nile-icon/icons/svg/drag.ts +1 -1
  765. package/src/nile-icon/icons/svg/expand-06.ts +1 -1
  766. package/src/nile-icon/icons/svg/expand.ts +1 -1
  767. package/src/nile-icon/icons/svg/index.ts +0 -6
  768. package/src/nile-icon/icons/svg/info.ts +1 -1
  769. package/src/nile-icon/icons/svg/integer.ts +1 -1
  770. package/src/nile-icon/icons/svg/pluscircle.ts +1 -1
  771. package/src/nile-icon/icons/svg/question.ts +1 -1
  772. package/src/nile-icon/icons/svg/resource.ts +1 -1
  773. package/src/nile-icon/icons/svg/sendescalation.ts +1 -1
  774. package/src/nile-icon/icons/svg/sendreminder.ts +1 -1
  775. package/src/nile-icon/icons/svg/timezone.ts +1 -1
  776. package/src/nile-icon/icons/svg/unmute.ts +1 -1
  777. package/src/nile-icon/icons/svg/upgrade.ts +1 -1
  778. package/src/nile-menu/nile-menu.css.ts +1 -1
  779. package/src/nile-option/nile-option.ts +1 -9
  780. package/src/nile-popup/nile-popup.ts +3 -20
  781. package/src/nile-select/nile-select.ts +1 -14
  782. package/src/nile-tab/nile-tab.ts +1 -1
  783. package/vscode-html-custom-data.json +145 -56
  784. package/dist/axe.min-2720cd56.esm.js +0 -1
  785. package/dist/axe.min-69d47269.cjs.js +0 -2
  786. package/dist/axe.min-69d47269.cjs.js.map +0 -1
  787. package/dist/fixture-fe6c932e.cjs.js.map +0 -1
  788. package/dist/index.js +0 -10341
  789. package/dist/nile-icon/icons/svg/attribute.cjs.js +0 -2
  790. package/dist/nile-icon/icons/svg/attribute.cjs.js.map +0 -1
  791. package/dist/nile-icon/icons/svg/attribute.esm.js +0 -1
  792. package/dist/nile-icon/icons/svg/class.cjs.js +0 -2
  793. package/dist/nile-icon/icons/svg/class.cjs.js.map +0 -1
  794. package/dist/nile-icon/icons/svg/class.esm.js +0 -1
  795. package/dist/nile-icon/icons/svg/column-add.cjs.js +0 -2
  796. package/dist/nile-icon/icons/svg/column-add.cjs.js.map +0 -1
  797. package/dist/nile-icon/icons/svg/column-add.esm.js +0 -1
  798. package/dist/nile-icon/icons/svg/function.cjs.js +0 -2
  799. package/dist/nile-icon/icons/svg/function.cjs.js.map +0 -1
  800. package/dist/nile-icon/icons/svg/function.esm.js +0 -1
  801. package/dist/nile-icon/icons/svg/keyword.cjs.js +0 -2
  802. package/dist/nile-icon/icons/svg/keyword.cjs.js.map +0 -1
  803. package/dist/nile-icon/icons/svg/keyword.esm.js +0 -1
  804. package/dist/nile-icon/icons/svg/savings.cjs.js +0 -2
  805. package/dist/nile-icon/icons/svg/savings.cjs.js.map +0 -1
  806. package/dist/nile-icon/icons/svg/savings.esm.js +0 -1
  807. package/dist/nile-pagination/index.cjs.js +0 -2
  808. package/dist/nile-pagination/index.esm.js +0 -1
  809. package/dist/nile-pagination/nile-pagination-utils.cjs.js +0 -2
  810. package/dist/nile-pagination/nile-pagination-utils.cjs.js.map +0 -1
  811. package/dist/nile-pagination/nile-pagination-utils.esm.js +0 -1
  812. package/dist/nile-pagination/nile-pagination.cjs.js +0 -2
  813. package/dist/nile-pagination/nile-pagination.cjs.js.map +0 -1
  814. package/dist/nile-pagination/nile-pagination.css.cjs.js +0 -2
  815. package/dist/nile-pagination/nile-pagination.css.cjs.js.map +0 -1
  816. package/dist/nile-pagination/nile-pagination.css.esm.js +0 -238
  817. package/dist/nile-pagination/nile-pagination.esm.js +0 -178
  818. package/dist/src/nile-icon/icons/svg/attribute.d.ts +0 -5
  819. package/dist/src/nile-icon/icons/svg/attribute.js +0 -5
  820. package/dist/src/nile-icon/icons/svg/attribute.js.map +0 -1
  821. package/dist/src/nile-icon/icons/svg/class.d.ts +0 -5
  822. package/dist/src/nile-icon/icons/svg/class.js +0 -5
  823. package/dist/src/nile-icon/icons/svg/class.js.map +0 -1
  824. package/dist/src/nile-icon/icons/svg/function.d.ts +0 -5
  825. package/dist/src/nile-icon/icons/svg/function.js +0 -5
  826. package/dist/src/nile-icon/icons/svg/function.js.map +0 -1
  827. package/dist/src/nile-icon/icons/svg/keyword.d.ts +0 -5
  828. package/dist/src/nile-icon/icons/svg/keyword.js +0 -5
  829. package/dist/src/nile-icon/icons/svg/keyword.js.map +0 -1
  830. package/src/nile-icon/icons/svg/attribute.ts +0 -5
  831. package/src/nile-icon/icons/svg/class.ts +0 -5
  832. package/src/nile-icon/icons/svg/column-add.ts +0 -5
  833. package/src/nile-icon/icons/svg/function.ts +0 -5
  834. package/src/nile-icon/icons/svg/keyword.ts +0 -5
  835. package/src/nile-icon/icons/svg/savings.ts +0 -5
  836. package/src/nile-pagination/index.ts +0 -1
  837. package/src/nile-pagination/nile-pagination-utils.ts +0 -63
  838. package/src/nile-pagination/nile-pagination.css.ts +0 -252
  839. package/src/nile-pagination/nile-pagination.ts +0 -361
  840. /package/dist/{nile-pagination → nile-file-preview}/index.cjs.js.map +0 -0
@@ -1,10 +1,10 @@
1
+ import { __decorate } from "tslib";
1
2
  /**
2
3
  * Copyright Aquera Inc 2025
3
4
  *
4
5
  * This source code is licensed under the BSD-3-Clause license found in the
5
6
  * LICENSE file in the root directory of this source tree.
6
7
  */
7
- import { __decorate } from "tslib";
8
8
  import { html } from 'lit';
9
9
  import { customElement, property, query, state } from 'lit/decorators.js';
10
10
  import { styles } from './nile-pagination.css';
@@ -21,57 +21,41 @@ let NilePagination = class NilePagination extends NileElement {
21
21
  this.disabled = false;
22
22
  this.showTitle = true;
23
23
  this._pageSizeOpen = false;
24
- this._pageOpen = false;
25
24
  }
26
25
  static get styles() {
27
26
  return [styles];
28
27
  }
29
28
  firstUpdated() {
30
- if (this._pageSizeDropdown) {
31
- this._pageSizeDropdown.addEventListener('nile-show', () => {
32
- this._pageSizeOpen = true;
33
- });
34
- this._pageSizeDropdown.addEventListener('nile-after-hide', () => {
35
- this._pageSizeOpen = false;
36
- });
37
- }
29
+ this._pageSizeDropdown.addEventListener('nile-show', () => {
30
+ this._pageSizeOpen = true;
31
+ });
32
+ this._pageSizeDropdown.addEventListener('nile-after-hide', () => {
33
+ this._pageSizeOpen = false;
34
+ });
38
35
  }
39
36
  get totalPages() {
40
37
  return Math.max(1, calculateTotalPages(this.totalItems, this.pageSize));
41
38
  }
42
- goToPage(newPage) {
39
+ goToPage(page) {
43
40
  if (this.disabled)
44
41
  return;
45
- const previousPage = this.currentPage;
46
- this.currentPage = newPage;
47
- this.emit('nile-change', { page: newPage, previousPage, pageSize: this.pageSize });
42
+ this.currentPage = page;
43
+ this.emit('nile-change', { page: this.currentPage, pageSize: this.pageSize });
48
44
  }
49
- onPageSizeSelect(newSize) {
50
- if (this.disabled || this.pageSize === newSize)
45
+ onPageSizeSelect(size) {
46
+ if (this.disabled || this.pageSize === size)
51
47
  return;
52
- const previousPage = this.currentPage;
53
- this.pageSize = newSize;
48
+ this.pageSize = size;
54
49
  this.currentPage = 1;
55
- this.emit('nile-change', {
56
- page: 1,
57
- previousPage,
58
- pageSize: newSize
59
- });
60
- }
61
- renderCompactRangeText() {
62
- const full = getRangeText(this.totalItems, this.pageSize, this.currentPage);
63
- const trimmed = full.replace(/^Showing\s*/, '');
64
- return html `<div class="range-text">${trimmed}</div>`;
50
+ this.emit('nile-change', { page: 1, pageSize: size });
65
51
  }
66
52
  renderRangeText() {
67
53
  if (this.totalItems === 0) {
68
54
  return html `<div class="range-text">Showing 0 of 0</div>`;
69
55
  }
70
- return html `
71
- <div part="range-text" class="range-text">
72
- ${getRangeText(this.totalItems, this.pageSize, this.currentPage)}
73
- </div>
74
- `;
56
+ return html `<div class="range-text">
57
+ ${getRangeText(this.totalItems, this.pageSize, this.currentPage)}
58
+ </div>`;
75
59
  }
76
60
  renderPageSizeSelect() {
77
61
  if (this.variant !== 'fluid')
@@ -79,72 +63,24 @@ let NilePagination = class NilePagination extends NileElement {
79
63
  return html `
80
64
  <div class="page-size-select">
81
65
  <nile-dropdown class="page-size-dropdown" ?disabled=${this.disabled}>
82
- <nile-button
83
- slot="trigger"
84
- variant="tertiary"
85
- class="down ${this._pageSizeOpen ? 'open' : ''}"
66
+ <nile-button slot="trigger" variant="tertiary" class="down ${this._pageSizeOpen ? 'open' : ''}"
86
67
  ?disabled=${this.disabled}
87
68
  >
88
69
  ${this.pageSize}
89
- <nile-icon
90
- name="chevrondown"
91
- size="14"
92
- color="var(--nile-colors-dark-500)"
93
- class="chevron"
94
- ></nile-icon>
70
+ <nile-icon name="chevrondown" size="14" color="var(--nile-colors-dark-500)" class="chevron"></nile-icon>
95
71
  </nile-button>
96
- <nile-menu>
97
- <div class="down-scroll-wrapper">
98
- ${this.pageSizeOptions.map(size => html `
99
- <nile-menu-item
100
- ?disabled=${this.disabled}
101
- @click=${() => this.onPageSizeSelect(size)}
102
- >
103
- ${size}
104
- </nile-menu-item>
105
- `)}
106
- </div>
107
- </nile-menu>
108
- </nile-dropdown>
109
- <span part="pagesize-label" class="page-size-label">Items per page</span>
110
- </div>
111
- `;
112
- }
113
- renderCompactPageSize() {
114
- return html `
115
- <nile-dropdown
116
- class="compact-dropdown"
117
- ?disabled=${this.disabled}
118
- @nile-show=${() => (this._pageSizeOpen = true)}
119
- @nile-after-hide=${() => (this._pageSizeOpen = false)}
120
- >
121
- <nile-button
122
- slot="trigger"
123
- variant="tertiary"
124
- class="down ${this._pageSizeOpen ? 'open' : ''}"
125
- ?disabled=${this.disabled}
126
- >
127
- ${this.pageSize}
128
- <nile-icon
129
- name="chevrondown"
130
- size="14"
131
- color="var(--nile-colors-dark-500)"
132
- class="chevron"
133
- ></nile-icon>
134
- </nile-button>
135
- <nile-menu>
136
- <div class="compact-scroll-wrapper">
72
+ <nile-menu class="page-size-menu">
137
73
  ${this.pageSizeOptions.map(size => html `
138
74
  <nile-menu-item
139
75
  ?disabled=${this.disabled}
140
76
  @click=${() => this.onPageSizeSelect(size)}
141
77
  >
142
78
  ${size}
143
- </nile-menu-item>
144
- `)}
145
- </div>
146
- </nile-menu>
147
- </nile-dropdown>
79
+ </nile-menu-item>`)}
80
+ </nile-menu>
81
+ </nile-dropdown>
82
+ <span class="page-size-label">Items per page</span>
83
+ </div>
148
84
  `;
149
85
  }
150
86
  renderPrevButton() {
@@ -189,8 +125,7 @@ let NilePagination = class NilePagination extends NileElement {
189
125
  @click=${() => this.goToPage(page)}
190
126
  >
191
127
  ${page}
192
- </nile-menu-item>
193
- `)}
128
+ </nile-menu-item>`)}
194
129
  </div>
195
130
  </nile-menu>
196
131
  </nile-dropdown>
@@ -210,54 +145,10 @@ let NilePagination = class NilePagination extends NileElement {
210
145
  `;
211
146
  }
212
147
  renderPageList() {
213
- if (this.variant === 'compact') {
214
- return html `
215
- <nav aria-label="Pagination">
216
- <ul class="pagination compact-pagination">
217
- ${this.renderPrevButton()}
218
- <li>
219
- <nile-dropdown
220
- class="compact-dropdown1"
221
- ?disabled=${this.disabled}
222
- @nile-show=${() => (this._pageOpen = true)}
223
- @nile-after-hide=${() => (this._pageOpen = false)}
224
- >
225
- <nile-button
226
- slot="trigger"
227
- variant="tertiary"
228
- class="current-page-btn ${this._pageOpen ? 'open' : ''}"
229
- ?disabled=${this.disabled}
230
- >
231
- ${this.currentPage}
232
- <nile-icon
233
- name="chevrondown"
234
- size="14"
235
- class="chevron"
236
- ></nile-icon>
237
- </nile-button>
238
- <nile-menu>
239
- <div class="compact-scroll-wrapper1">
240
- ${Array.from({ length: this.totalPages }, (_, i) => i + 1).map(p => html `
241
- <nile-menu-item
242
- ?disabled=${this.disabled}
243
- @click=${() => this.goToPage(p)}
244
- >
245
- ${p}
246
- </nile-menu-item>
247
- `)}
248
- </div>
249
- </nile-menu>
250
- </nile-dropdown>
251
- </li>
252
- ${this.renderNextButton()}
253
- </ul>
254
- </nav>
255
- `;
256
- }
257
148
  const items = getPaginationItems(this.totalPages, this.currentPage);
258
149
  return html `
259
150
  <nav aria-label="Pagination">
260
- <ul part="page-list" class="pagination">
151
+ <ul class="pagination">
261
152
  ${this.renderPrevButton()}
262
153
  ${items.map((item, idx) => this.renderPageItem(item, idx, items))}
263
154
  ${this.renderNextButton()}
@@ -267,48 +158,33 @@ let NilePagination = class NilePagination extends NileElement {
267
158
  }
268
159
  render() {
269
160
  return html `
270
- <div part="wrapper" class="pagination-wrapper ${this.variant}">
271
- <div part="pager-container" class="pager-container">
272
- ${this.variant === 'fluid' && this.showTitle
273
- ? this.renderRangeText()
274
- : this.variant === 'compact'
275
- ? this.renderCompactRangeText()
276
- : null}
277
- ${this.variant === 'fluid'
278
- ? this.renderPageSizeSelect()
279
- : this.renderCompactPageSize()}
161
+ <div class="pagination-wrapper ${this.variant}">
162
+ <div class="pager-container">
163
+ ${this.showTitle ? this.renderRangeText() : null}
164
+ ${this.renderPageSizeSelect()}
165
+ </div>
166
+ ${this.renderPageList()}
280
167
  </div>
281
- ${this.renderPageList()}
282
- </div>
283
- `;
168
+ `;
284
169
  }
285
170
  };
286
171
  __decorate([
287
- property({ attribute: 'totalitems', reflect: true, converter: {
288
- fromAttribute: (v) => {
172
+ property({ attribute: 'totalitems', reflect: true, converter: { fromAttribute: (v) => {
289
173
  const n = Number(v);
290
174
  return Number.isFinite(n) && n >= 0 ? Math.floor(n) : 0;
291
- },
292
- },
293
- })
175
+ } } })
294
176
  ], NilePagination.prototype, "totalItems", void 0);
295
177
  __decorate([
296
- property({ attribute: 'currentpage', reflect: true, converter: {
297
- fromAttribute: (v) => {
178
+ property({ attribute: 'currentpage', reflect: true, converter: { fromAttribute: (v) => {
298
179
  const n = Number(v);
299
180
  return Number.isFinite(n) && n >= 1 ? Math.floor(n) : 1;
300
- },
301
- },
302
- })
181
+ } } })
303
182
  ], NilePagination.prototype, "currentPage", void 0);
304
183
  __decorate([
305
- property({ attribute: 'pagesize', reflect: true, converter: {
306
- fromAttribute: (v) => {
184
+ property({ attribute: 'pagesize', reflect: true, converter: { fromAttribute: (v) => {
307
185
  const n = Number(v);
308
186
  return Number.isFinite(n) && n >= 1 ? Math.floor(n) : 50;
309
- },
310
- },
311
- })
187
+ } } })
312
188
  ], NilePagination.prototype, "pageSize", void 0);
313
189
  __decorate([
314
190
  property({ attribute: 'pagesizeoptions', reflect: false, converter: { fromAttribute: (v) => {
@@ -334,9 +210,6 @@ __decorate([
334
210
  __decorate([
335
211
  state()
336
212
  ], NilePagination.prototype, "_pageSizeOpen", void 0);
337
- __decorate([
338
- state()
339
- ], NilePagination.prototype, "_pageOpen", void 0);
340
213
  __decorate([
341
214
  query('.page-size-dropdown')
342
215
  ], NilePagination.prototype, "_pageSizeDropdown", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-pagination.js","sourceRoot":"","sources":["../../../src/nile-pagination/nile-pagination.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html, CSSResultArray, TemplateResult } from 'lit';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { styles } from './nile-pagination.css';\nimport NileElement from '../internal/nile-element';\nimport {\n calculateTotalPages,\n getPaginationItems,\n getHiddenPages,\n getRangeText,\n} from './nile-pagination-utils';\n\n@customElement('nile-pagination')\nexport class NilePagination extends NileElement {\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property({attribute: 'totalitems',reflect: true,converter: {\n fromAttribute: (v: string) => {\n const n = Number(v);\n return Number.isFinite(n) && n >= 0 ? Math.floor(n) : 0;\n },\n },\n })totalItems: number = 0;\n\n @property({attribute: 'currentpage', reflect: true, converter: {\n fromAttribute: (v: string) => {\n const n = Number(v);\n return Number.isFinite(n) && n >= 1 ? Math.floor(n) : 1;\n },\n },\n })currentPage: number = 1;\n\n @property({attribute: 'pagesize',reflect: true,converter: {\n fromAttribute: (v: string) => {\n const n = Number(v);\n return Number.isFinite(n) && n >= 1 ? Math.floor(n) : 50;\n },\n },\n })pageSize: number = 50;\n\n @property({ attribute: 'pagesizeoptions', reflect: false, converter: { fromAttribute: (v: string) => {\n try {\n const arr = JSON.parse(v);\n if (Array.isArray(arr) && arr.every(x => typeof x === 'number')) {\n return arr as number[];\n }\n } catch {}\n return [10, 25, 50, 100];\n }}})\n pageSizeOptions: number[] = [10, 25, 50, 100];\n\n @property({ type: String })variant: 'fluid' | 'compact' = 'fluid';\n @property({ type: Boolean }) disabled = false;\n @property({ type: Boolean }) showTitle = true;\n\n @state() private _pageSizeOpen = false;\n @state() private _pageOpen = false;\n @query('.page-size-dropdown') private _pageSizeDropdown!: HTMLElement;\n\n firstUpdated() {\n if (this._pageSizeDropdown) { \n this._pageSizeDropdown.addEventListener('nile-show', () => {\n this._pageSizeOpen = true;\n });\n this._pageSizeDropdown.addEventListener('nile-after-hide', () => {\n this._pageSizeOpen = false;\n });\n }\n }\n\n private get totalPages(): number {\n return Math.max(1, calculateTotalPages(this.totalItems, this.pageSize));\n }\n\n private goToPage(newPage: number) {\n \n if (this.disabled) return;\n const previousPage = this.currentPage;\n this.currentPage = newPage;\n this.emit('nile-change', { page: newPage, previousPage, pageSize: this.pageSize });\n }\n\n private onPageSizeSelect(newSize: number) {\n if (this.disabled || this.pageSize === newSize) return;\n\n const previousPage = this.currentPage;\n this.pageSize = newSize;\n this.currentPage = 1;\n this.emit('nile-change', {\n page: 1,\n previousPage,\n pageSize: newSize\n });\n}\n\nprivate renderCompactRangeText(): TemplateResult {\n const full = getRangeText(this.totalItems, this.pageSize, this.currentPage);\n const trimmed = full.replace(/^Showing\\s*/, ''); \n return html`<div class=\"range-text\">${trimmed}</div>`;\n}\n\n\n private renderRangeText(): TemplateResult {\n if (this.totalItems === 0) {\n return html`<div class=\"range-text\">Showing 0 of 0</div>`;\n }\n return html`\n <div part=\"range-text\" class=\"range-text\">\n ${getRangeText(this.totalItems, this.pageSize, this.currentPage)}\n </div>\n `;\n }\n\n private renderPageSizeSelect(): TemplateResult | null {\n if (this.variant !== 'fluid') return null;\n return html`\n <div class=\"page-size-select\">\n <nile-dropdown class=\"page-size-dropdown\" ?disabled=${this.disabled}>\n <nile-button\n slot=\"trigger\"\n variant=\"tertiary\"\n class=\"down ${this._pageSizeOpen ? 'open' : ''}\"\n ?disabled=${this.disabled}\n >\n ${this.pageSize}\n <nile-icon\n name=\"chevrondown\"\n size=\"14\"\n color=\"var(--nile-colors-dark-500)\"\n class=\"chevron\"\n ></nile-icon>\n </nile-button>\n <nile-menu>\n <div class=\"down-scroll-wrapper\">\n ${this.pageSizeOptions.map(\n size => html`\n <nile-menu-item\n ?disabled=${this.disabled}\n @click=${() => this.onPageSizeSelect(size)}\n >\n ${size}\n </nile-menu-item>\n `\n )}\n </div>\n </nile-menu>\n </nile-dropdown>\n <span part=\"pagesize-label\" class=\"page-size-label\">Items per page</span>\n </div>\n `;\n }\n\n\n private renderCompactPageSize(): TemplateResult {\n return html`\n <nile-dropdown\n class=\"compact-dropdown\"\n ?disabled=${this.disabled}\n @nile-show=${() => (this._pageSizeOpen = true)}\n @nile-after-hide=${() => (this._pageSizeOpen = false)}\n >\n <nile-button\n slot=\"trigger\"\n variant=\"tertiary\"\n class=\"down ${this._pageSizeOpen ? 'open' : ''}\"\n ?disabled=${this.disabled}\n >\n ${this.pageSize}\n <nile-icon\n name=\"chevrondown\"\n size=\"14\"\n color=\"var(--nile-colors-dark-500)\"\n class=\"chevron\"\n ></nile-icon>\n </nile-button>\n <nile-menu>\n <div class=\"compact-scroll-wrapper\">\n ${this.pageSizeOptions.map(\n size => html`\n <nile-menu-item\n ?disabled=${this.disabled}\n @click=${() => this.onPageSizeSelect(size)}\n >\n ${size}\n </nile-menu-item>\n `\n )}\n </div>\n </nile-menu>\n </nile-dropdown>\n `;\n }\n \n\n private renderPrevButton(): TemplateResult {\n return html`\n <li>\n <nile-button\n variant=\"tertiary\"\n ?disabled=${this.currentPage === 1 || this.disabled}\n @click=${() => this.goToPage(this.currentPage - 1)}\n >\n <nile-icon name=\"arrowleft\" size=\"14\"></nile-icon>\n </nile-button>\n </li>\n `;\n }\n\n private renderNextButton(): TemplateResult {\n return html`\n <li>\n <nile-button\n variant=\"tertiary\"\n ?disabled=${this.currentPage === this.totalPages || this.disabled}\n @click=${() => this.goToPage(this.currentPage + 1)}\n >\n <nile-icon name=\"arrowright\" size=\"14\"></nile-icon>\n </nile-button>\n </li>\n `;\n }\n\n private renderPageItem(\n item: number | string,\n idx: number,\n items: (number | string)[]\n ): TemplateResult {\n if (item === '…') {\n return html`\n <li>\n <nile-dropdown class=\"ellipsis-dropdown\" ?disabled=${this.disabled}>\n <nile-button slot=\"trigger\" variant=\"ghost\" ?disabled=${this.disabled}>\n …\n </nile-button>\n <nile-menu>\n <div class=\"ellipsis-scroll-wrapper\">\n ${getHiddenPages(\n this.totalPages,\n items,\n this.currentPage,\n idx < items.indexOf(this.currentPage) ? 'left' : 'right'\n ).map(\n page => html`\n <nile-menu-item\n ?disabled=${this.disabled}\n @click=${() => this.goToPage(page)}\n >\n ${page}\n </nile-menu-item>\n `\n )}\n </div>\n </nile-menu>\n </nile-dropdown>\n </li>\n `;\n }\n return html`\n <li>\n <nile-button\n variant=${item === this.currentPage ? 'primary' : 'ghost'}\n ?disabled=${this.disabled}\n @click=${() => this.goToPage(item as number)}\n >\n ${item}\n </nile-button>\n </li>\n `;\n }\n\n private renderPageList(): TemplateResult {\n if (this.variant === 'compact') {\n return html`\n <nav aria-label=\"Pagination\">\n <ul class=\"pagination compact-pagination\">\n ${this.renderPrevButton()}\n <li>\n <nile-dropdown\n class=\"compact-dropdown1\"\n ?disabled=${this.disabled}\n @nile-show=${() => (this._pageOpen = true)}\n @nile-after-hide=${() => (this._pageOpen = false)}\n >\n <nile-button\n slot=\"trigger\"\n variant=\"tertiary\"\n class=\"current-page-btn ${this._pageOpen ? 'open' : ''}\"\n ?disabled=${this.disabled}\n >\n ${this.currentPage}\n <nile-icon\n name=\"chevrondown\"\n size=\"14\"\n class=\"chevron\"\n ></nile-icon>\n </nile-button>\n <nile-menu>\n <div class=\"compact-scroll-wrapper1\">\n ${Array.from({ length: this.totalPages }, (_, i) => i + 1).map(\n p => html`\n <nile-menu-item\n ?disabled=${this.disabled}\n @click=${() => this.goToPage(p)}\n >\n ${p}\n </nile-menu-item>\n `\n )}\n </div>\n </nile-menu>\n </nile-dropdown>\n </li>\n ${this.renderNextButton()}\n </ul>\n </nav>\n `;\n }\n const items = getPaginationItems(this.totalPages, this.currentPage);\n return html`\n <nav aria-label=\"Pagination\">\n <ul part=\"page-list\" class=\"pagination\">\n ${this.renderPrevButton()}\n ${items.map((item, idx) => this.renderPageItem(item, idx, items))}\n ${this.renderNextButton()}\n </ul>\n </nav>\n `;\n }\n\n public render(): TemplateResult {\n return html`\n <div part=\"wrapper\" class=\"pagination-wrapper ${this.variant}\">\n <div part=\"pager-container\" class=\"pager-container\">\n ${this.variant === 'fluid' && this.showTitle\n ? this.renderRangeText()\n : this.variant === 'compact'\n ? this.renderCompactRangeText()\n : null}\n ${this.variant === 'fluid'\n ? this.renderPageSizeSelect()\n : this.renderCompactPageSize()}\n </div>\n ${this.renderPageList()}\n </div>\n `;\n}\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-pagination': NilePagination;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-pagination.js","sourceRoot":"","sources":["../../../src/nile-pagination/nile-pagination.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;AACH,OAAO,EAAc,IAAI,EAAkC,MAAM,KAAK,CAAC;AACvE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,YAAY,GACb,MAAM,yBAAyB,CAAC;AAGjC,IAAa,cAAc,GAA3B,MAAa,cAAe,SAAQ,WAAW;IAA/C;;QAOqE,eAAU,GAAW,CAAC,CAAC;QAGvB,gBAAW,GAAY,CAAC,CAAC;QAKxB,aAAQ,GAAW,EAAE,CAAC;QAO5C,oBAAe,GAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAEhE,YAAO,GAAwB,OAAO,CAAC;QACtC,aAAQ,GAAG,KAAK,CAAC;QACjB,cAAS,GAAG,IAAI,CAAC;QAE7B,kBAAa,GAAG,KAAK,CAAC;IAsKzC,CAAC;IAjMQ,MAAM,KAAK,MAAM;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IA4BD,YAAY;QACV,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,WAAW,EAAE,GAAG,EAAE;YACxD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,GAAG,EAAE;YAC9D,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAY,UAAU;QACpB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1E,CAAC;IAEO,QAAQ,CAAC,IAAY;QAC3B,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChF,CAAC;IAEO,gBAAgB,CAAC,IAAY;QACnC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO;QACpD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAEO,eAAe;QACrB,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,EAAE;YACzB,OAAO,IAAI,CAAA,8CAA8C,CAAC;SAC3D;QACD,OAAO,IAAI,CAAA;QACP,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC;WAC3D,CAAC;IACV,CAAC;IAEO,oBAAoB;QAC1B,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1C,OAAO,IAAI,CAAA;;8DAE+C,IAAI,CAAC,QAAQ;uEACJ,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;wBAC/E,IAAI,CAAC,QAAQ;;cAEvB,IAAI,CAAC,QAAQ;;;;cAIb,IAAI,CAAC,eAAe,CAAC,GAAG,CACxB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAA;;8BAEI,IAAI,CAAC,QAAQ;2BAChB,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;;oBAExC,IAAI;kCACU,CACrB;;;;;KAKR,CAAC;IACJ,CAAC;IAEO,gBAAgB;QACtB,OAAO,IAAI,CAAA;;;;sBAIO,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ;mBAC1C,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;;;;;KAKvD,CAAC;IACJ,CAAC;IAEO,gBAAgB;QACtB,OAAO,IAAI,CAAA;;;;sBAIO,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ;mBACxD,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;;;;;KAKvD,CAAC;IACJ,CAAC;IAEO,cAAc,CACpB,IAAqB,EACrB,GAAW,EACX,KAA0B;QAE1B,IAAI,IAAI,KAAK,GAAG,EAAE;YAChB,OAAO,IAAI,CAAA;;+DAE8C,IAAI,CAAC,QAAQ;oEACR,IAAI,CAAC,QAAQ;;;;;kBAK/D,cAAc,CACd,IAAI,CAAC,UAAU,EACf,KAAK,EACL,IAAI,CAAC,WAAW,EAChB,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CACzD,CAAC,GAAG,CACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAA;;kCAEI,IAAI,CAAC,QAAQ;+BAChB,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;;wBAEhC,IAAI;sCACU,CACrB;;;;;OAKV,CAAC;SACH;QAED,OAAO,IAAI,CAAA;;;oBAGK,IAAI,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;sBAC7C,IAAI,CAAC,QAAQ;mBAChB,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAc,CAAC;;YAE1C,IAAI;;;KAGX,CAAC;IACJ,CAAC;IAEO,cAAc;QACpB,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACpE,OAAO,IAAI,CAAA;;;YAGH,IAAI,CAAC,gBAAgB,EAAE;YACvB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/D,IAAI,CAAC,gBAAgB,EAAE;;;KAG9B,CAAC;IACJ,CAAC;IAEM,MAAM;QACX,OAAO,IAAI,CAAA;uCACwB,IAAI,CAAC,OAAO;;YAEvC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI;YAC9C,IAAI,CAAC,oBAAoB,EAAE;;UAE7B,IAAI,CAAC,cAAc,EAAE;;KAE1B,CAAC;IACJ,CAAC;CACF,CAAA;AA3LoE;IADlE,QAAQ,CAAC,EAAC,SAAS,EAAE,YAAY,EAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC,CAAS,EAAE,EAAE;gBAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC5G,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC,EAAC,EAAC,CAAC;kDAAuB;AAGvB;IADlE,QAAQ,CAAC,EAAE,SAAS,EAAE,aAAa,EAAC,OAAO,EAAE,IAAI,EAAC,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC,CAAS,EAAE,EAAE;gBAAG,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC9G,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAAA,CAAC,EAAC,EAAC,CAAC;mDAA0B;AAKxB;IAFnE,QAAQ,CAAC,EAAC,SAAS,EAAE,UAAU,EAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC,CAAS,EAAE,EAAE;gBACpF,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACpB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAAA,CAAC,EAAC,EAAC,CAAC;gDAAuB;AAO5C;IAJ7C,QAAQ,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,OAAO,EAAE,KAAK,EAAC,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC,CAAS,EAAE,EAAE;gBAAG,IAAI;oBAAE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAC9H,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE;wBAC/D,OAAO,GAAe,CAAC;qBACxB;iBACF;gBAAC,MAAM,GAAE;gBAAA,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAAA,CAAC,EAAC,EAAC,CAAC;uDAA+C;AAEhE;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;+CAAwC;AACtC;IAA5B,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gDAAkB;AACjB;IAA5B,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;iDAAkB;AAErC;IAAR,KAAK,EAAE;qDAA+B;AACT;IAA7B,KAAK,CAAC,qBAAqB,CAAC;yDAAyC;AA7B3D,cAAc;IAD1B,aAAa,CAAC,iBAAiB,CAAC;GACpB,cAAc,CAkM1B;SAlMY,cAAc","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { LitElement, html, CSSResultArray, TemplateResult } from 'lit';\nimport { customElement, property, query, state } from 'lit/decorators.js';\nimport { styles } from './nile-pagination.css';\nimport NileElement from '../internal/nile-element';\nimport {\n calculateTotalPages,\n getPaginationItems,\n getHiddenPages,\n getRangeText,\n} from './nile-pagination-utils';\n\n@customElement('nile-pagination')\nexport class NilePagination extends NileElement {\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n \n @property({attribute: 'totalitems',reflect: true, converter: { fromAttribute: (v: string) => {const n = Number(v);\n return Number.isFinite(n) && n >= 0 ? Math.floor(n) : 0; }}})totalItems: number = 0;\n\n @property({ attribute: 'currentpage',reflect: true,converter: { fromAttribute: (v: string) => { const n = Number(v);\n return Number.isFinite(n) && n >= 1 ? Math.floor(n) : 1;}}}) currentPage : number = 1;\n\n\n @property({attribute: 'pagesize',reflect: true, converter: { fromAttribute: (v: string) => {\n const n = Number(v);\n return Number.isFinite(n) && n >= 1 ? Math.floor(n) : 50;}}}) pageSize: number = 50;\n\n\n @property({ attribute: 'pagesizeoptions', reflect: false,converter: { fromAttribute: (v: string) => { try { const arr = JSON.parse(v);\n if (Array.isArray(arr) && arr.every(x => typeof x === 'number')) {\n return arr as number[];\n }\n } catch {}return [10, 25, 50, 100];}}}) pageSizeOptions: number[] = [10, 25, 50, 100];\n\n @property({ type: String }) variant: 'fluid' | 'compact' = 'fluid';\n @property({ type: Boolean }) disabled = false;\n @property({ type: Boolean }) showTitle = true;\n\n @state() private _pageSizeOpen = false;\n @query('.page-size-dropdown') private _pageSizeDropdown!: HTMLElement;\n\n firstUpdated() {\n this._pageSizeDropdown.addEventListener('nile-show', () => {\n this._pageSizeOpen = true;\n });\n this._pageSizeDropdown.addEventListener('nile-after-hide', () => {\n this._pageSizeOpen = false;\n });\n }\n \n private get totalPages(): number {\n return Math.max(1, calculateTotalPages(this.totalItems, this.pageSize));\n }\n\n private goToPage(page: number) {\n if (this.disabled) return;\n this.currentPage = page; \n this.emit('nile-change', { page: this.currentPage, pageSize: this.pageSize });\n }\n\n private onPageSizeSelect(size: number) {\n if (this.disabled || this.pageSize === size) return;\n this.pageSize = size;\n this.currentPage = 1;\n this.emit('nile-change', { page: 1, pageSize: size });\n }\n\n private renderRangeText(): TemplateResult {\n if (this.totalItems === 0) {\n return html`<div class=\"range-text\">Showing 0 of 0</div>`;\n }\n return html`<div class=\"range-text\">\n ${getRangeText(this.totalItems, this.pageSize, this.currentPage)}\n </div>`;\n }\n\n private renderPageSizeSelect(): TemplateResult | null {\n if (this.variant !== 'fluid') return null;\n return html`\n <div class=\"page-size-select\">\n <nile-dropdown class=\"page-size-dropdown\" ?disabled=${this.disabled}>\n <nile-button slot=\"trigger\" variant=\"tertiary\" class=\"down ${this._pageSizeOpen ? 'open' : ''}\"\n ?disabled=${this.disabled}\n >\n ${this.pageSize}\n <nile-icon name=\"chevrondown\" size=\"14\" color=\"var(--nile-colors-dark-500)\" class=\"chevron\"></nile-icon>\n </nile-button>\n <nile-menu class=\"page-size-menu\">\n ${this.pageSizeOptions.map(\n size => html`\n <nile-menu-item\n ?disabled=${this.disabled}\n @click=${() => this.onPageSizeSelect(size)}\n >\n ${size}\n </nile-menu-item>`\n )}\n </nile-menu>\n </nile-dropdown>\n <span class=\"page-size-label\">Items per page</span>\n </div>\n `;\n }\n\n private renderPrevButton(): TemplateResult {\n return html`\n <li>\n <nile-button\n variant=\"tertiary\"\n ?disabled=${this.currentPage === 1 || this.disabled}\n @click=${() => this.goToPage(this.currentPage - 1)}\n >\n <nile-icon name=\"arrowleft\" size=\"14\"></nile-icon>\n </nile-button>\n </li>\n `;\n }\n\n private renderNextButton(): TemplateResult {\n return html`\n <li>\n <nile-button\n variant=\"tertiary\"\n ?disabled=${this.currentPage === this.totalPages || this.disabled}\n @click=${() => this.goToPage(this.currentPage + 1)}\n >\n <nile-icon name=\"arrowright\" size=\"14\"></nile-icon>\n </nile-button>\n </li>\n `;\n }\n\n private renderPageItem(\n item: number | string,\n idx: number,\n items: (number | string)[]\n ): TemplateResult {\n if (item === '…') {\n return html`\n <li>\n <nile-dropdown class=\"ellipsis-dropdown\" ?disabled=${this.disabled}>\n <nile-button slot=\"trigger\" variant=\"ghost\" ?disabled=${this.disabled}>\n …\n </nile-button>\n <nile-menu>\n <div class=\"ellipsis-scroll-wrapper\">\n ${getHiddenPages(\n this.totalPages,\n items,\n this.currentPage,\n idx < items.indexOf(this.currentPage) ? 'left' : 'right'\n ).map(\n page => html`\n <nile-menu-item\n ?disabled=${this.disabled}\n @click=${() => this.goToPage(page)}\n >\n ${page}\n </nile-menu-item>`\n )}\n </div>\n </nile-menu>\n </nile-dropdown>\n </li>\n `;\n }\n\n return html`\n <li>\n <nile-button\n variant=${item === this.currentPage ? 'primary' : 'ghost'}\n ?disabled=${this.disabled}\n @click=${() => this.goToPage(item as number)}\n >\n ${item}\n </nile-button>\n </li>\n `;\n }\n\n private renderPageList(): TemplateResult {\n const items = getPaginationItems(this.totalPages, this.currentPage);\n return html`\n <nav aria-label=\"Pagination\">\n <ul class=\"pagination\">\n ${this.renderPrevButton()}\n ${items.map((item, idx) => this.renderPageItem(item, idx, items))}\n ${this.renderNextButton()}\n </ul>\n </nav>\n `;\n }\n\n public render(): TemplateResult {\n return html`\n <div class=\"pagination-wrapper ${this.variant}\">\n <div class=\"pager-container\">\n ${this.showTitle ? this.renderRangeText() : null}\n ${this.renderPageSizeSelect()}\n </div>\n ${this.renderPageList()}\n </div>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-pagination': NilePagination;\n }\n}\n"]}
@@ -133,27 +133,8 @@ let NilePopup = class NilePopup extends NileElement {
133
133
  if (this.anchorEl instanceof HTMLSlotElement) {
134
134
  this.anchorEl = this.anchorEl.assignedElements({ flatten: true })[0];
135
135
  }
136
- /**
137
- * NOTE TO DEVELOPERS:
138
- * The anchor element is essential for nile-popup to function correctly.
139
- * This error was thrown when an anchor (slot="anchor") or anchor reference was not found.
140
- *
141
- * In many places, developers are using *ngIf or similar conditional rendering directly on the anchor slot
142
- * inside <nile-tooltip>, which removes the anchor from the DOM.
143
- * As a result, the tooltip remains but cannot be anchored — leading to this error.
144
- *
145
- * Suggested Fixes:
146
- * - Move *ngIf to a wrapper above <nile-tooltip>
147
- * - OR use the 'disabled' property of nile-tooltip to prevent it from activating without anchor
148
- *
149
- * For now, this error is commented out to avoid runtime crashes.
150
- * Proper usage patterns should be followed instead.
151
- */
152
136
  if (!this.anchorEl) {
153
- // throw new Error(
154
- // 'Invalid anchor element: no anchor could be found using the anchor slot or the anchor attribute.'
155
- // );
156
- return;
137
+ throw new Error('Invalid anchor element: no anchor could be found using the anchor slot or the anchor attribute.');
157
138
  }
158
139
  this.start();
159
140
  }
@@ -1 +1 @@
1
- {"version":3,"file":"nile-popup.js","sourceRoot":"","sources":["../../../src/nile-popup/nile-popup.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 {LitElement, CSSResultArray, TemplateResult} from 'lit';\nimport { arrow, autoUpdate, computePosition, flip, offset, platform, shift, size } from '@floating-ui/dom';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement, property, query } from 'lit/decorators.js';\nimport { html } from 'lit';\nimport { offsetParent } from 'composed-offset-position';\nimport NileElement from '../internal/nile-element';\nimport {styles} from './nile-popup.css';\nimport type { CSSResultGroup } from 'lit';\n\n/**\n * Nile icon component.\n *\n * @tag nile-popup\n *\n */\n@customElement('nile-popup')\nexport class NilePopup extends NileElement {\n static styles: CSSResultGroup = styles;\n\n private anchorEl: Element | null;\n private cleanup: ReturnType<typeof autoUpdate> | undefined;\n\n /** A reference to the internal popup container. Useful for animating and styling the popup with JavaScript. */\n @query('.popup') popup: HTMLElement;\n @query('.popup__arrow') private arrowEl: HTMLElement;\n\n /**\n * The element the popup will be anchored to. If the anchor lives outside of the popup, you can provide its `id` or a\n * reference to it here. If the anchor lives inside the popup, use the `anchor` slot instead.\n */\n @property() anchor: Element | string;\n\n /**\n * Activates the positioning logic and shows the popup. When this attribute is removed, the positioning logic is torn\n * down and the popup will be hidden.\n */\n @property({ type: Boolean, reflect: true }) active = false;\n\n /**\n * The preferred placement of the popup. Note that the actual placement will vary as configured to keep the\n * panel inside of the viewport.\n */\n @property({ reflect: true }) placement:\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'left'\n | 'left-start'\n | 'left-end' = 'top';\n\n /**\n * Determines how the popup is positioned. The `absolute` strategy works well in most cases, but if overflow is\n * clipped, using a `fixed` position strategy can often workaround it.\n */\n @property({ reflect: true }) strategy: 'absolute' | 'fixed' = 'absolute';\n\n /** The distance in pixels from which to offset the panel away from its anchor. */\n @property({ type: Number }) distance = 0;\n\n /** The distance in pixels from which to offset the panel along its anchor. */\n @property({ type: Number }) skidding = 0;\n\n /**\n * Attaches an arrow to the popup. The arrow's size and color can be customized using the `--arrow-size` and\n * `--arrow-color` custom properties. For additional customizations, you can also target the arrow using\n * `::part(arrow)` in your stylesheet.\n */\n @property({ type: Boolean }) arrow = false;\n\n /**\n * The placement of the arrow. The default is `anchor`, which will align the arrow as close to the center of the\n * anchor as possible, considering available space and `arrow-padding`. A value of `start`, `end`, or `center` will\n * align the arrow to the start, end, or center of the popover instead.\n */\n @property({ attribute: 'arrow-placement' }) arrowPlacement: 'start' | 'end' | 'center' | 'anchor' = 'anchor';\n\n /**\n * The amount of padding between the arrow and the edges of the popup. If the popup has a border-radius, for example,\n * this will prevent it from overflowing the corners.\n */\n @property({ attribute: 'arrow-padding', type: Number }) arrowPadding = 10;\n\n /**\n * When set, placement of the popup will flip to the opposite site to keep it in view. You can use\n * `flipFallbackPlacements` to further configure how the fallback placement is determined.\n */\n @property({ type: Boolean }) flip = false;\n\n /**\n * If the preferred placement doesn't fit, popup will be tested in these fallback placements until one fits. Must be a\n * string of any number of placements separated by a space, e.g. \"top bottom left\". If no placement fits, the flip\n * fallback strategy will be used instead.\n * */\n @property({\n attribute: 'flip-fallback-placements',\n converter: {\n fromAttribute: (value: string) => {\n return value\n .split(' ')\n .map(p => p.trim())\n .filter(p => p !== '');\n },\n toAttribute: (value: []) => {\n return value.join(' ');\n }\n }\n })\n flipFallbackPlacements = '';\n\n /**\n * When neither the preferred placement nor the fallback placements fit, this value will be used to determine whether\n * the popup should be positioned using the best available fit based on available space or as it was initially\n * preferred.\n */\n @property({ attribute: 'flip-fallback-strategy' }) flipFallbackStrategy: 'best-fit' | 'initial' = 'best-fit';\n\n /**\n * The flip boundary describes clipping element(s) that overflow will be checked relative to when flipping. By\n * default, the boundary includes overflow ancestors that will cause the element to be clipped. If needed, you can\n * change the boundary by passing a reference to one or more elements to this property.\n */\n @property({ type: Object }) flipBoundary: Element | Element[];\n\n /** The amount of padding, in pixels, to exceed before the flip behavior will occur. */\n @property({ attribute: 'flip-padding', type: Number }) flipPadding = 0;\n\n /** Moves the popup along the axis to keep it in view when clipped. */\n @property({ type: Boolean }) shift = false;\n\n /**\n * The shift boundary describes clipping element(s) that overflow will be checked relative to when shifting. By\n * default, the boundary includes overflow ancestors that will cause the element to be clipped. If needed, you can\n * change the boundary by passing a reference to one or more elements to this property.\n */\n @property({ type: Object }) shiftBoundary: Element | Element[];\n\n /** The amount of padding, in pixels, to exceed before the shift behavior will occur. */\n @property({ attribute: 'shift-padding', type: Number }) shiftPadding = 0;\n\n /** When set, this will cause the popup to automatically resize itself to prevent it from overflowing. */\n @property({ attribute: 'auto-size' }) autoSize: 'horizontal' | 'vertical' | 'both';\n\n /** Syncs the popup's width or height to that of the anchor element. */\n @property() sync: 'width' | 'height' | 'both';\n\n /**\n * The auto-size boundary describes clipping element(s) that overflow will be checked relative to when resizing. By\n * default, the boundary includes overflow ancestors that will cause the element to be clipped. If needed, you can\n * change the boundary by passing a reference to one or more elements to this property.\n */\n @property({ type: Object }) autoSizeBoundary: Element | Element[];\n\n /** The amount of padding, in pixels, to exceed before the auto-size behavior will occur. */\n @property({ attribute: 'auto-size-padding', type: Number }) autoSizePadding = 0;\n\n async connectedCallback() {\n super.connectedCallback();\n\n // Start the positioner after the first update\n await this.updateComplete;\n this.start();\n }\n\n disconnectedCallback() {\n this.stop();\n }\n\n async updated(changedProps: Map<string, unknown>) {\n super.updated(changedProps);\n\n // Start or stop the positioner when active changes\n if (changedProps.has('active')) {\n if (this.active) {\n this.start();\n } else {\n this.stop();\n }\n }\n\n // Update the anchor when anchor changes\n if (changedProps.has('anchor')) {\n this.handleAnchorChange();\n }\n\n // All other properties will trigger a reposition when active\n if (this.active) {\n await this.updateComplete;\n this.reposition();\n }\n }\n\n private async handleAnchorChange() {\n await this.stop();\n\n if (this.anchor && typeof this.anchor === 'string') {\n // Locate the anchor by id\n const root = this.getRootNode() as Document | ShadowRoot;\n this.anchorEl = root.getElementById(this.anchor);\n } else if (this.anchor instanceof Element) {\n // Use the anchor's reference\n this.anchorEl = this.anchor;\n } else {\n // Look for a slotted anchor\n this.anchorEl = this.querySelector<HTMLElement>('[slot=\"anchor\"]');\n }\n\n // If the anchor is a <slot>, we'll use the first assigned element as the target since slots use `display: contents`\n // and positioning can't be calculated on them\n if (this.anchorEl instanceof HTMLSlotElement) {\n this.anchorEl = this.anchorEl.assignedElements({ flatten: true })[0] as HTMLElement;\n }\n\n /**\n * NOTE TO DEVELOPERS:\n * The anchor element is essential for nile-popup to function correctly.\n * This error was thrown when an anchor (slot=\"anchor\") or anchor reference was not found.\n *\n * In many places, developers are using *ngIf or similar conditional rendering directly on the anchor slot\n * inside <nile-tooltip>, which removes the anchor from the DOM.\n * As a result, the tooltip remains but cannot be anchored — leading to this error.\n *\n * Suggested Fixes:\n * - Move *ngIf to a wrapper above <nile-tooltip>\n * - OR use the 'disabled' property of nile-tooltip to prevent it from activating without anchor\n *\n * For now, this error is commented out to avoid runtime crashes.\n * Proper usage patterns should be followed instead.\n */\n if (!this.anchorEl) {\n // throw new Error(\n // 'Invalid anchor element: no anchor could be found using the anchor slot or the anchor attribute.'\n // );\n return;\n }\n\n this.start();\n }\n\n private start() {\n // We can't start the positioner without an anchor\n if (!this.anchorEl) {\n return;\n }\n\n this.cleanup = autoUpdate(this.anchorEl, this.popup, () => {\n this.reposition();\n });\n }\n\n private async stop(): Promise<void> {\n return new Promise(resolve => {\n if (this.cleanup) {\n this.cleanup();\n this.cleanup = undefined;\n this.removeAttribute('data-current-placement');\n this.style.removeProperty('--auto-size-available-width');\n this.style.removeProperty('--auto-size-available-height');\n requestAnimationFrame(() => resolve());\n } else {\n resolve();\n }\n });\n }\n\n /** Forces the popup to recalculate and reposition itself. */\n reposition() {\n // Nothing to do if the popup is inactive or the anchor doesn't exist\n if (!this.active || !this.anchorEl) {\n return;\n }\n\n //\n // NOTE: Floating UI middlewares are order dependent: https://floating-ui.com/docs/middleware\n //\n const middleware = [\n // The offset middleware goes first\n offset({ mainAxis: this.distance, crossAxis: this.skidding })\n ];\n\n // First we sync width/height\n if (this.sync) {\n middleware.push(\n size({\n apply: ({ rects }) => {\n const syncWidth = this.sync === 'width' || this.sync === 'both';\n const syncHeight = this.sync === 'height' || this.sync === 'both';\n this.popup.style.width = syncWidth ? `${rects.reference.width}px` : '';\n this.popup.style.height = syncHeight ? `${rects.reference.height}px` : '';\n }\n })\n );\n } else {\n // Cleanup styles if we're not matching width/height\n this.popup.style.width = '';\n this.popup.style.height = '';\n }\n\n // Then we flip\n if (this.flip) {\n middleware.push(\n flip({\n boundary: this.flipBoundary,\n // @ts-expect-error - We're converting a string attribute to an array here\n fallbackPlacements: this.flipFallbackPlacements,\n fallbackStrategy: this.flipFallbackStrategy === 'best-fit' ? 'bestFit' : 'initialPlacement',\n padding: this.flipPadding\n })\n );\n }\n\n // Then we shift\n if (this.shift) {\n middleware.push(\n shift({\n boundary: this.shiftBoundary,\n padding: this.shiftPadding\n })\n );\n }\n\n // Now we adjust the size as needed\n if (this.autoSize) {\n middleware.push(\n size({\n boundary: this.autoSizeBoundary,\n padding: this.autoSizePadding,\n apply: ({ availableWidth, availableHeight }) => {\n if (this.autoSize === 'vertical' || this.autoSize === 'both') {\n this.style.setProperty('--auto-size-available-height', `${availableHeight}px`);\n } else {\n this.style.removeProperty('--auto-size-available-height');\n }\n\n if (this.autoSize === 'horizontal' || this.autoSize === 'both') {\n this.style.setProperty('--auto-size-available-width', `${availableWidth}px`);\n } else {\n this.style.removeProperty('--auto-size-available-width');\n }\n }\n })\n );\n } else {\n // Cleanup styles if we're no longer using auto-size\n this.style.removeProperty('--auto-size-available-width');\n this.style.removeProperty('--auto-size-available-height');\n }\n\n // Finally, we add an arrow\n if (this.arrow) {\n middleware.push(\n arrow({\n element: this.arrowEl,\n padding: this.arrowPadding\n })\n );\n }\n\n //\n // Use custom positioning logic if the strategy is absolute. Otherwise, fall back to the default logic.\n //\n //\n const getOffsetParent =\n this.strategy === 'absolute'\n ? (element: Element) => platform.getOffsetParent(element, offsetParent)\n : platform.getOffsetParent;\n\n computePosition(this.anchorEl, this.popup, {\n placement: this.placement,\n middleware,\n strategy: this.strategy,\n platform: {\n ...platform,\n getOffsetParent\n }\n }).then(({ x, y, middlewareData, placement }) => {\n //\n // Even though we have our own localization utility, it uses different heuristics to determine RTL. Because of\n // that, we'll use the same approach that Floating UI uses.\n //\n // Source: https://github.com/floating-ui/floating-ui/blob/cb3b6ab07f95275730d3e6e46c702f8d4908b55c/packages/dom/src/utils/getDocumentRect.ts#L31\n //\n const isRtl = getComputedStyle(this).direction === 'rtl';\n const staticSide = { top: 'bottom', right: 'left', bottom: 'top', left: 'right' }[placement.split('-')[0]]!;\n\n this.setAttribute('data-current-placement', placement);\n\n Object.assign(this.popup.style, {\n left: `${x}px`,\n top: `${y}px`\n });\n\n if (this.arrow) {\n const arrowX = middlewareData.arrow!.x;\n const arrowY = middlewareData.arrow!.y;\n let top = '';\n let right = '';\n let bottom = '';\n let left = '';\n\n if (this.arrowPlacement === 'start') {\n // Start\n const value = typeof arrowX === 'number' ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : '';\n top = typeof arrowY === 'number' ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : '';\n right = isRtl ? value : '';\n left = isRtl ? '' : value;\n } else if (this.arrowPlacement === 'end') {\n // End\n const value = typeof arrowX === 'number' ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : '';\n right = isRtl ? '' : value;\n left = isRtl ? value : '';\n bottom = typeof arrowY === 'number' ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : '';\n } else if (this.arrowPlacement === 'center') {\n // Center\n left = typeof arrowX === 'number' ? `calc(50% - var(--arrow-size-diagonal))` : '';\n top = typeof arrowY === 'number' ? `calc(50% - var(--arrow-size-diagonal))` : '';\n } else {\n // Anchor (default)\n left = typeof arrowX === 'number' ? `${arrowX}px` : '';\n top = typeof arrowY === 'number' ? `${arrowY}px` : '';\n }\n\n Object.assign(this.arrowEl.style, {\n top,\n right,\n bottom,\n left,\n [staticSide]: 'calc(var(--arrow-size-diagonal) * -1)'\n });\n }\n });\n\n this.emit('reposition');\n }\n\n render() {\n return html`\n <slot name=\"anchor\" @slotchange=${this.handleAnchorChange}></slot>\n\n <div\n part=\"popup\"\n class=${classMap({\n popup: true,\n 'popup--active': this.active,\n 'popup--fixed': this.strategy === 'fixed',\n 'popup--has-arrow': this.arrow\n })}\n >\n <slot></slot>\n ${this.arrow ? html`<div part=\"arrow\" class=\"popup__arrow\" role=\"presentation\"></div>` : ''}\n </div>\n `;\n }\n}\n\nexport default NilePopup;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-popup': NilePopup;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-popup.js","sourceRoot":"","sources":["../../../src/nile-popup/nile-popup.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 {LitElement, CSSResultArray, TemplateResult} from 'lit';\nimport { arrow, autoUpdate, computePosition, flip, offset, platform, shift, size } from '@floating-ui/dom';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { customElement, property, query } from 'lit/decorators.js';\nimport { html } from 'lit';\nimport { offsetParent } from 'composed-offset-position';\nimport NileElement from '../internal/nile-element';\nimport {styles} from './nile-popup.css';\nimport type { CSSResultGroup } from 'lit';\n\n/**\n * Nile icon component.\n *\n * @tag nile-popup\n *\n */\n@customElement('nile-popup')\nexport class NilePopup extends NileElement {\n static styles: CSSResultGroup = styles;\n\n private anchorEl: Element | null;\n private cleanup: ReturnType<typeof autoUpdate> | undefined;\n\n /** A reference to the internal popup container. Useful for animating and styling the popup with JavaScript. */\n @query('.popup') popup: HTMLElement;\n @query('.popup__arrow') private arrowEl: HTMLElement;\n\n /**\n * The element the popup will be anchored to. If the anchor lives outside of the popup, you can provide its `id` or a\n * reference to it here. If the anchor lives inside the popup, use the `anchor` slot instead.\n */\n @property() anchor: Element | string;\n\n /**\n * Activates the positioning logic and shows the popup. When this attribute is removed, the positioning logic is torn\n * down and the popup will be hidden.\n */\n @property({ type: Boolean, reflect: true }) active = false;\n\n /**\n * The preferred placement of the popup. Note that the actual placement will vary as configured to keep the\n * panel inside of the viewport.\n */\n @property({ reflect: true }) placement:\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'left'\n | 'left-start'\n | 'left-end' = 'top';\n\n /**\n * Determines how the popup is positioned. The `absolute` strategy works well in most cases, but if overflow is\n * clipped, using a `fixed` position strategy can often workaround it.\n */\n @property({ reflect: true }) strategy: 'absolute' | 'fixed' = 'absolute';\n\n /** The distance in pixels from which to offset the panel away from its anchor. */\n @property({ type: Number }) distance = 0;\n\n /** The distance in pixels from which to offset the panel along its anchor. */\n @property({ type: Number }) skidding = 0;\n\n /**\n * Attaches an arrow to the popup. The arrow's size and color can be customized using the `--arrow-size` and\n * `--arrow-color` custom properties. For additional customizations, you can also target the arrow using\n * `::part(arrow)` in your stylesheet.\n */\n @property({ type: Boolean }) arrow = false;\n\n /**\n * The placement of the arrow. The default is `anchor`, which will align the arrow as close to the center of the\n * anchor as possible, considering available space and `arrow-padding`. A value of `start`, `end`, or `center` will\n * align the arrow to the start, end, or center of the popover instead.\n */\n @property({ attribute: 'arrow-placement' }) arrowPlacement: 'start' | 'end' | 'center' | 'anchor' = 'anchor';\n\n /**\n * The amount of padding between the arrow and the edges of the popup. If the popup has a border-radius, for example,\n * this will prevent it from overflowing the corners.\n */\n @property({ attribute: 'arrow-padding', type: Number }) arrowPadding = 10;\n\n /**\n * When set, placement of the popup will flip to the opposite site to keep it in view. You can use\n * `flipFallbackPlacements` to further configure how the fallback placement is determined.\n */\n @property({ type: Boolean }) flip = false;\n\n /**\n * If the preferred placement doesn't fit, popup will be tested in these fallback placements until one fits. Must be a\n * string of any number of placements separated by a space, e.g. \"top bottom left\". If no placement fits, the flip\n * fallback strategy will be used instead.\n * */\n @property({\n attribute: 'flip-fallback-placements',\n converter: {\n fromAttribute: (value: string) => {\n return value\n .split(' ')\n .map(p => p.trim())\n .filter(p => p !== '');\n },\n toAttribute: (value: []) => {\n return value.join(' ');\n }\n }\n })\n flipFallbackPlacements = '';\n\n /**\n * When neither the preferred placement nor the fallback placements fit, this value will be used to determine whether\n * the popup should be positioned using the best available fit based on available space or as it was initially\n * preferred.\n */\n @property({ attribute: 'flip-fallback-strategy' }) flipFallbackStrategy: 'best-fit' | 'initial' = 'best-fit';\n\n /**\n * The flip boundary describes clipping element(s) that overflow will be checked relative to when flipping. By\n * default, the boundary includes overflow ancestors that will cause the element to be clipped. If needed, you can\n * change the boundary by passing a reference to one or more elements to this property.\n */\n @property({ type: Object }) flipBoundary: Element | Element[];\n\n /** The amount of padding, in pixels, to exceed before the flip behavior will occur. */\n @property({ attribute: 'flip-padding', type: Number }) flipPadding = 0;\n\n /** Moves the popup along the axis to keep it in view when clipped. */\n @property({ type: Boolean }) shift = false;\n\n /**\n * The shift boundary describes clipping element(s) that overflow will be checked relative to when shifting. By\n * default, the boundary includes overflow ancestors that will cause the element to be clipped. If needed, you can\n * change the boundary by passing a reference to one or more elements to this property.\n */\n @property({ type: Object }) shiftBoundary: Element | Element[];\n\n /** The amount of padding, in pixels, to exceed before the shift behavior will occur. */\n @property({ attribute: 'shift-padding', type: Number }) shiftPadding = 0;\n\n /** When set, this will cause the popup to automatically resize itself to prevent it from overflowing. */\n @property({ attribute: 'auto-size' }) autoSize: 'horizontal' | 'vertical' | 'both';\n\n /** Syncs the popup's width or height to that of the anchor element. */\n @property() sync: 'width' | 'height' | 'both';\n\n /**\n * The auto-size boundary describes clipping element(s) that overflow will be checked relative to when resizing. By\n * default, the boundary includes overflow ancestors that will cause the element to be clipped. If needed, you can\n * change the boundary by passing a reference to one or more elements to this property.\n */\n @property({ type: Object }) autoSizeBoundary: Element | Element[];\n\n /** The amount of padding, in pixels, to exceed before the auto-size behavior will occur. */\n @property({ attribute: 'auto-size-padding', type: Number }) autoSizePadding = 0;\n\n async connectedCallback() {\n super.connectedCallback();\n\n // Start the positioner after the first update\n await this.updateComplete;\n this.start();\n }\n\n disconnectedCallback() {\n this.stop();\n }\n\n async updated(changedProps: Map<string, unknown>) {\n super.updated(changedProps);\n\n // Start or stop the positioner when active changes\n if (changedProps.has('active')) {\n if (this.active) {\n this.start();\n } else {\n this.stop();\n }\n }\n\n // Update the anchor when anchor changes\n if (changedProps.has('anchor')) {\n this.handleAnchorChange();\n }\n\n // All other properties will trigger a reposition when active\n if (this.active) {\n await this.updateComplete;\n this.reposition();\n }\n }\n\n private async handleAnchorChange() {\n await this.stop();\n\n if (this.anchor && typeof this.anchor === 'string') {\n // Locate the anchor by id\n const root = this.getRootNode() as Document | ShadowRoot;\n this.anchorEl = root.getElementById(this.anchor);\n } else if (this.anchor instanceof Element) {\n // Use the anchor's reference\n this.anchorEl = this.anchor;\n } else {\n // Look for a slotted anchor\n this.anchorEl = this.querySelector<HTMLElement>('[slot=\"anchor\"]');\n }\n\n // If the anchor is a <slot>, we'll use the first assigned element as the target since slots use `display: contents`\n // and positioning can't be calculated on them\n if (this.anchorEl instanceof HTMLSlotElement) {\n this.anchorEl = this.anchorEl.assignedElements({ flatten: true })[0] as HTMLElement;\n }\n\n if (!this.anchorEl) {\n throw new Error(\n 'Invalid anchor element: no anchor could be found using the anchor slot or the anchor attribute.'\n );\n }\n\n this.start();\n }\n\n private start() {\n // We can't start the positioner without an anchor\n if (!this.anchorEl) {\n return;\n }\n\n this.cleanup = autoUpdate(this.anchorEl, this.popup, () => {\n this.reposition();\n });\n }\n\n private async stop(): Promise<void> {\n return new Promise(resolve => {\n if (this.cleanup) {\n this.cleanup();\n this.cleanup = undefined;\n this.removeAttribute('data-current-placement');\n this.style.removeProperty('--auto-size-available-width');\n this.style.removeProperty('--auto-size-available-height');\n requestAnimationFrame(() => resolve());\n } else {\n resolve();\n }\n });\n }\n\n /** Forces the popup to recalculate and reposition itself. */\n reposition() {\n // Nothing to do if the popup is inactive or the anchor doesn't exist\n if (!this.active || !this.anchorEl) {\n return;\n }\n\n //\n // NOTE: Floating UI middlewares are order dependent: https://floating-ui.com/docs/middleware\n //\n const middleware = [\n // The offset middleware goes first\n offset({ mainAxis: this.distance, crossAxis: this.skidding })\n ];\n\n // First we sync width/height\n if (this.sync) {\n middleware.push(\n size({\n apply: ({ rects }) => {\n const syncWidth = this.sync === 'width' || this.sync === 'both';\n const syncHeight = this.sync === 'height' || this.sync === 'both';\n this.popup.style.width = syncWidth ? `${rects.reference.width}px` : '';\n this.popup.style.height = syncHeight ? `${rects.reference.height}px` : '';\n }\n })\n );\n } else {\n // Cleanup styles if we're not matching width/height\n this.popup.style.width = '';\n this.popup.style.height = '';\n }\n\n // Then we flip\n if (this.flip) {\n middleware.push(\n flip({\n boundary: this.flipBoundary,\n // @ts-expect-error - We're converting a string attribute to an array here\n fallbackPlacements: this.flipFallbackPlacements,\n fallbackStrategy: this.flipFallbackStrategy === 'best-fit' ? 'bestFit' : 'initialPlacement',\n padding: this.flipPadding\n })\n );\n }\n\n // Then we shift\n if (this.shift) {\n middleware.push(\n shift({\n boundary: this.shiftBoundary,\n padding: this.shiftPadding\n })\n );\n }\n\n // Now we adjust the size as needed\n if (this.autoSize) {\n middleware.push(\n size({\n boundary: this.autoSizeBoundary,\n padding: this.autoSizePadding,\n apply: ({ availableWidth, availableHeight }) => {\n if (this.autoSize === 'vertical' || this.autoSize === 'both') {\n this.style.setProperty('--auto-size-available-height', `${availableHeight}px`);\n } else {\n this.style.removeProperty('--auto-size-available-height');\n }\n\n if (this.autoSize === 'horizontal' || this.autoSize === 'both') {\n this.style.setProperty('--auto-size-available-width', `${availableWidth}px`);\n } else {\n this.style.removeProperty('--auto-size-available-width');\n }\n }\n })\n );\n } else {\n // Cleanup styles if we're no longer using auto-size\n this.style.removeProperty('--auto-size-available-width');\n this.style.removeProperty('--auto-size-available-height');\n }\n\n // Finally, we add an arrow\n if (this.arrow) {\n middleware.push(\n arrow({\n element: this.arrowEl,\n padding: this.arrowPadding\n })\n );\n }\n\n //\n // Use custom positioning logic if the strategy is absolute. Otherwise, fall back to the default logic.\n //\n //\n const getOffsetParent =\n this.strategy === 'absolute'\n ? (element: Element) => platform.getOffsetParent(element, offsetParent)\n : platform.getOffsetParent;\n\n computePosition(this.anchorEl, this.popup, {\n placement: this.placement,\n middleware,\n strategy: this.strategy,\n platform: {\n ...platform,\n getOffsetParent\n }\n }).then(({ x, y, middlewareData, placement }) => {\n //\n // Even though we have our own localization utility, it uses different heuristics to determine RTL. Because of\n // that, we'll use the same approach that Floating UI uses.\n //\n // Source: https://github.com/floating-ui/floating-ui/blob/cb3b6ab07f95275730d3e6e46c702f8d4908b55c/packages/dom/src/utils/getDocumentRect.ts#L31\n //\n const isRtl = getComputedStyle(this).direction === 'rtl';\n const staticSide = { top: 'bottom', right: 'left', bottom: 'top', left: 'right' }[placement.split('-')[0]]!;\n\n this.setAttribute('data-current-placement', placement);\n\n Object.assign(this.popup.style, {\n left: `${x}px`,\n top: `${y}px`\n });\n\n if (this.arrow) {\n const arrowX = middlewareData.arrow!.x;\n const arrowY = middlewareData.arrow!.y;\n let top = '';\n let right = '';\n let bottom = '';\n let left = '';\n\n if (this.arrowPlacement === 'start') {\n // Start\n const value = typeof arrowX === 'number' ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : '';\n top = typeof arrowY === 'number' ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : '';\n right = isRtl ? value : '';\n left = isRtl ? '' : value;\n } else if (this.arrowPlacement === 'end') {\n // End\n const value = typeof arrowX === 'number' ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : '';\n right = isRtl ? '' : value;\n left = isRtl ? value : '';\n bottom = typeof arrowY === 'number' ? `calc(${this.arrowPadding}px - var(--arrow-padding-offset))` : '';\n } else if (this.arrowPlacement === 'center') {\n // Center\n left = typeof arrowX === 'number' ? `calc(50% - var(--arrow-size-diagonal))` : '';\n top = typeof arrowY === 'number' ? `calc(50% - var(--arrow-size-diagonal))` : '';\n } else {\n // Anchor (default)\n left = typeof arrowX === 'number' ? `${arrowX}px` : '';\n top = typeof arrowY === 'number' ? `${arrowY}px` : '';\n }\n\n Object.assign(this.arrowEl.style, {\n top,\n right,\n bottom,\n left,\n [staticSide]: 'calc(var(--arrow-size-diagonal) * -1)'\n });\n }\n });\n\n this.emit('reposition');\n }\n\n render() {\n return html`\n <slot name=\"anchor\" @slotchange=${this.handleAnchorChange}></slot>\n\n <div\n part=\"popup\"\n class=${classMap({\n popup: true,\n 'popup--active': this.active,\n 'popup--fixed': this.strategy === 'fixed',\n 'popup--has-arrow': this.arrow\n })}\n >\n <slot></slot>\n ${this.arrow ? html`<div part=\"arrow\" class=\"popup__arrow\" role=\"presentation\"></div>` : ''}\n </div>\n `;\n }\n}\n\nexport default NilePopup;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-popup': NilePopup;\n }\n}\n"]}
@@ -8,7 +8,7 @@ import '../nile-icon';
8
8
  import '../nile-popup/nile-popup';
9
9
  import '../nile-tag/nile-tag';
10
10
  import NileElement from '../internal/nile-element';
11
- import type { CSSResultGroup, PropertyValues } from 'lit';
11
+ import type { CSSResultGroup } from 'lit';
12
12
  import type { NileFormControl } from '../internal/nile-element';
13
13
  import type NileOption from '../nile-option/nile-option';
14
14
  import type NilePopup from '../nile-popup/nile-popup';
@@ -157,8 +157,6 @@ export declare class NileSelect extends NileElement implements NileFormControl {
157
157
  get validationMessage(): string;
158
158
  connectedCallback(): void;
159
159
  disconnectedCallback(): void;
160
- protected updated(_changedProperties: PropertyValues): void;
161
- setCheckBoxInOption(checked: boolean): void;
162
160
  private addOpenListeners;
163
161
  private removeOpenListeners;
164
162
  private handleFocus;
@@ -182,17 +182,6 @@ let NileSelect = class NileSelect extends NileElement {
182
182
  super.disconnectedCallback();
183
183
  this.emit('nile-destroy');
184
184
  }
185
- updated(_changedProperties) {
186
- if (_changedProperties.has('multiple')) {
187
- this.setCheckBoxInOption(this.multiple);
188
- }
189
- }
190
- setCheckBoxInOption(checked) {
191
- const options = this.getAllOptions();
192
- options.forEach((option) => {
193
- option.showCheckbox = checked;
194
- });
195
- }
196
185
  addOpenListeners() {
197
186
  document.addEventListener('focusin', this.handleDocumentFocusIn);
198
187
  document.addEventListener('keydown', this.handleDocumentKeyDown);