@aquera/nile-elements 0.1.56 → 0.1.57-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 (525) hide show
  1. package/README.md +0 -23
  2. package/demo/filenames.txt +1 -0
  3. package/demo/filenames.txt +1 -0
  4. package/demo/index.html +74 -11
  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-2b5b3aba.esm.js} +1 -1
  10. package/dist/{fixture-fe6c932e.cjs.js → fixture-3330277d.cjs.js} +2 -2
  11. package/dist/{fixture-fe6c932e.cjs.js.map → fixture-3330277d.cjs.js.map} +1 -1
  12. package/dist/fixture-588a3119.esm.js +569 -0
  13. package/dist/fixture-7bfb866e.cjs.js +395 -0
  14. package/dist/fixture-7bfb866e.cjs.js.map +1 -0
  15. package/dist/index.cjs.js +1 -1
  16. package/dist/index.esm.js +1 -1
  17. package/dist/index.js +225 -227
  18. package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
  19. package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
  20. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +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.cjs.js +1 -1
  44. package/dist/nile-calendar/nile-calendar.cjs.js.map +1 -1
  45. package/dist/nile-calendar/nile-calendar.css.cjs.js +1 -1
  46. package/dist/nile-calendar/nile-calendar.css.cjs.js.map +1 -1
  47. package/dist/nile-calendar/nile-calendar.css.esm.js +151 -25
  48. package/dist/nile-calendar/nile-calendar.esm.js +88 -19
  49. package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
  50. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
  51. package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
  52. package/dist/nile-card/nile-card.test.cjs.js +1 -1
  53. package/dist/nile-card/nile-card.test.esm.js +1 -1
  54. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
  55. package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
  56. package/dist/nile-chip/nile-chip.cjs.js +1 -1
  57. package/dist/nile-chip/nile-chip.cjs.js.map +1 -1
  58. package/dist/nile-chip/nile-chip.esm.js +0 -1
  59. package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
  60. package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
  61. package/dist/nile-chip/nile-chip.test.esm.js +1 -1
  62. package/dist/nile-code-editor/extensionSetup.cjs.js +5 -5
  63. package/dist/nile-code-editor/extensionSetup.cjs.js.map +1 -1
  64. package/dist/nile-code-editor/extensionSetup.esm.js +1 -1
  65. package/dist/nile-code-editor/nile-code-editor.cjs.js +2 -2
  66. package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
  67. package/dist/nile-code-editor/nile-code-editor.esm.js +3 -3
  68. package/dist/nile-code-editor/theme.cjs.js +1 -1
  69. package/dist/nile-code-editor/theme.cjs.js.map +1 -1
  70. package/dist/nile-code-editor/theme.esm.js +1 -1
  71. package/dist/nile-dialog/index.cjs.js +1 -1
  72. package/dist/nile-dialog/index.esm.js +1 -1
  73. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  74. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  75. package/dist/nile-dialog/nile-dialog.esm.js +1 -1
  76. package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
  77. package/dist/nile-dialog/nile-dialog.test.cjs.js.map +1 -1
  78. package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
  79. package/dist/nile-drawer/index.cjs.js +1 -1
  80. package/dist/nile-drawer/index.esm.js +1 -1
  81. package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
  82. package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
  83. package/dist/nile-drawer/nile-drawer.esm.js +1 -1
  84. package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
  85. package/dist/nile-drawer/nile-drawer.test.cjs.js.map +1 -1
  86. package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
  87. package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
  88. package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
  89. package/dist/nile-empty-state/nile-empty-state.cjs.js +1 -1
  90. package/dist/nile-empty-state/nile-empty-state.cjs.js.map +1 -1
  91. package/dist/nile-empty-state/nile-empty-state.esm.js +13 -13
  92. package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
  93. package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
  94. package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
  95. package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
  96. package/dist/nile-error-notification/nile-error-notification.cjs.js +1 -1
  97. package/dist/nile-error-notification/nile-error-notification.cjs.js.map +1 -1
  98. package/dist/nile-error-notification/nile-error-notification.esm.js +2 -4
  99. package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +1 -1
  100. package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +1 -1
  101. package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
  102. package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
  103. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
  104. package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
  105. package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
  106. package/dist/nile-hero/nile-hero.test.esm.js +1 -1
  107. package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
  108. package/dist/nile-icon/icons/svg/index.esm.js +1 -1
  109. package/dist/nile-icon/index.cjs.js +1 -1
  110. package/dist/nile-icon/index.cjs.js.map +1 -1
  111. package/dist/nile-icon/index.esm.js +1 -1
  112. package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
  113. package/dist/nile-icon/nile-icon.test.cjs.js.map +1 -1
  114. package/dist/nile-icon/nile-icon.test.esm.js +1 -1
  115. package/dist/nile-icon-button/index.cjs.js +1 -1
  116. package/dist/nile-icon-button/index.esm.js +1 -1
  117. package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
  118. package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
  119. package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
  120. package/dist/nile-input/index.cjs.js +1 -1
  121. package/dist/nile-input/index.esm.js +1 -1
  122. package/dist/nile-input/nile-input.cjs.js +1 -1
  123. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  124. package/dist/nile-input/nile-input.esm.js +1 -1
  125. package/dist/nile-input/nile-input.test.cjs.js +1 -1
  126. package/dist/nile-input/nile-input.test.cjs.js.map +1 -1
  127. package/dist/nile-input/nile-input.test.esm.js +1 -1
  128. package/dist/nile-link/nile-link.test.cjs.js +1 -1
  129. package/dist/nile-link/nile-link.test.esm.js +1 -1
  130. package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
  131. package/dist/nile-loader/nile-loader.test.esm.js +1 -1
  132. package/dist/nile-menu-item/index.cjs.js +1 -1
  133. package/dist/nile-menu-item/index.esm.js +1 -1
  134. package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
  135. package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
  136. package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
  137. package/dist/nile-option/index.cjs.js +1 -1
  138. package/dist/nile-option/index.esm.js +1 -1
  139. package/dist/nile-option/nile-option.cjs.js +1 -1
  140. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  141. package/dist/nile-option/nile-option.esm.js +1 -1
  142. package/dist/nile-pagination/nile-pagination.cjs.js +1 -1
  143. package/dist/nile-pagination/nile-pagination.cjs.js.map +1 -1
  144. package/dist/nile-pagination/nile-pagination.css.cjs.js +1 -1
  145. package/dist/nile-pagination/nile-pagination.css.cjs.js.map +1 -1
  146. package/dist/nile-pagination/nile-pagination.css.esm.js +39 -152
  147. package/dist/nile-pagination/nile-pagination.esm.js +29 -118
  148. package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
  149. package/dist/nile-popover/nile-popover.test.esm.js +1 -1
  150. package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
  151. package/dist/nile-popup/nile-popup.test.esm.js +1 -1
  152. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
  153. package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
  154. package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
  155. package/dist/nile-radio/nile-radio.test.esm.js +1 -1
  156. package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
  157. package/dist/nile-radio-group/nile-radio-group.test.esm.js +1 -1
  158. package/dist/nile-select/index.cjs.js +1 -1
  159. package/dist/nile-select/index.esm.js +1 -1
  160. package/dist/nile-select/nile-select.cjs.js +1 -1
  161. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  162. package/dist/nile-select/nile-select.esm.js +1 -1
  163. package/dist/nile-select/nile-select.test.cjs.js +1 -1
  164. package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
  165. package/dist/nile-select/nile-select.test.esm.js +1 -1
  166. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
  167. package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
  168. package/dist/nile-tab/index.cjs.js +1 -1
  169. package/dist/nile-tab/index.esm.js +1 -1
  170. package/dist/nile-tab/nile-tab.cjs.js +1 -1
  171. package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
  172. package/dist/nile-tab/nile-tab.esm.js +1 -1
  173. package/dist/nile-tab-group/index.cjs.js +1 -1
  174. package/dist/nile-tab-group/index.esm.js +1 -1
  175. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  176. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  177. package/dist/nile-tab-group/nile-tab-group.esm.js +1 -1
  178. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
  179. package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +1 -1
  180. package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
  181. package/dist/nile-tag/index.cjs.js +1 -1
  182. package/dist/nile-tag/index.esm.js +1 -1
  183. package/dist/nile-tag/nile-tag.cjs.js +1 -1
  184. package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
  185. package/dist/nile-tag/nile-tag.esm.js +1 -1
  186. package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
  187. package/dist/nile-textarea/nile-textarea.test.esm.js +1 -1
  188. package/dist/nile-toast/index.cjs.js +1 -1
  189. package/dist/nile-toast/index.esm.js +1 -1
  190. package/dist/nile-toast/nile-toast.cjs.js +1 -1
  191. package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
  192. package/dist/nile-toast/nile-toast.esm.js +1 -1
  193. package/dist/nile-tree/index.cjs.js +1 -1
  194. package/dist/nile-tree/index.esm.js +1 -1
  195. package/dist/nile-tree/nile-tree.cjs.js +1 -1
  196. package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
  197. package/dist/nile-tree/nile-tree.esm.js +1 -1
  198. package/dist/nile-tree-item/index.cjs.js +1 -1
  199. package/dist/nile-tree-item/index.esm.js +1 -1
  200. package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
  201. package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
  202. package/dist/nile-tree-item/nile-tree-item.esm.js +1 -1
  203. package/dist/src/nile-calendar/nile-calendar.css.js +151 -25
  204. package/dist/src/nile-calendar/nile-calendar.css.js.map +1 -1
  205. package/dist/src/nile-calendar/nile-calendar.d.ts +8 -0
  206. package/dist/src/nile-calendar/nile-calendar.js +125 -14
  207. package/dist/src/nile-calendar/nile-calendar.js.map +1 -1
  208. package/dist/src/nile-chip/nile-chip.js +0 -1
  209. package/dist/src/nile-chip/nile-chip.js.map +1 -1
  210. package/dist/src/nile-code-editor/nile-code-editor.d.ts +0 -2
  211. package/dist/src/nile-code-editor/nile-code-editor.js +6 -48
  212. package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
  213. package/dist/src/nile-code-editor/theme.d.ts +0 -110
  214. package/dist/src/nile-code-editor/theme.js +0 -110
  215. package/dist/src/nile-code-editor/theme.js.map +1 -1
  216. package/dist/src/nile-empty-state/nile-empty-state.js +11 -11
  217. package/dist/src/nile-empty-state/nile-empty-state.js.map +1 -1
  218. package/dist/src/nile-error-notification/nile-error-notification.js +2 -4
  219. package/dist/src/nile-error-notification/nile-error-notification.js.map +1 -1
  220. package/dist/src/nile-file-preview/index.d.ts +1 -0
  221. package/dist/src/nile-file-preview/index.js +2 -0
  222. package/dist/src/nile-file-preview/index.js.map +1 -0
  223. package/dist/src/nile-file-preview/nile-file-preview.css.d.ts +12 -0
  224. package/dist/src/nile-file-preview/nile-file-preview.css.js +568 -0
  225. package/dist/src/nile-file-preview/nile-file-preview.css.js.map +1 -0
  226. package/dist/src/nile-file-preview/nile-file-preview.d.ts +50 -0
  227. package/dist/src/nile-file-preview/nile-file-preview.js +171 -0
  228. package/dist/src/nile-file-preview/nile-file-preview.js.map +1 -0
  229. package/dist/src/nile-file-preview/nile-file-preview.template.d.ts +13 -0
  230. package/dist/src/nile-file-preview/nile-file-preview.template.js +210 -0
  231. package/dist/src/nile-file-preview/nile-file-preview.template.js.map +1 -0
  232. package/dist/src/nile-file-preview/nile-file-preview.test.d.ts +7 -0
  233. package/dist/src/nile-file-preview/nile-file-preview.test.js +30 -0
  234. package/dist/src/nile-file-preview/nile-file-preview.test.js.map +1 -0
  235. package/dist/src/nile-file-preview/types/index.d.ts +2 -0
  236. package/dist/src/nile-file-preview/types/index.js +3 -0
  237. package/dist/src/nile-file-preview/types/index.js.map +1 -0
  238. package/dist/src/nile-file-preview/types/nile-file-preview.enums.d.ts +28 -0
  239. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js +33 -0
  240. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js.map +1 -0
  241. package/dist/src/nile-file-preview/types/nile-file-preview.interface.d.ts +4 -0
  242. package/dist/src/nile-file-preview/types/nile-file-preview.interface.js +2 -0
  243. package/dist/src/nile-file-preview/types/nile-file-preview.interface.js.map +1 -0
  244. package/dist/src/nile-file-preview/utils/index.d.ts +1 -0
  245. package/dist/src/nile-file-preview/utils/index.js +2 -0
  246. package/dist/src/nile-file-preview/utils/index.js.map +1 -0
  247. package/dist/src/nile-file-preview/utils/nile-file-preview.util.d.ts +4 -0
  248. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +38 -0
  249. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js.map +1 -0
  250. package/dist/src/nile-file-upload/index.d.ts +1 -0
  251. package/dist/src/nile-file-upload/index.js +2 -0
  252. package/dist/src/nile-file-upload/index.js.map +1 -0
  253. package/dist/src/nile-file-upload/nile-file-upload.css.d.ts +12 -0
  254. package/dist/src/nile-file-upload/nile-file-upload.css.js +569 -0
  255. package/dist/src/nile-file-upload/nile-file-upload.css.js.map +1 -0
  256. package/dist/src/nile-file-upload/nile-file-upload.d.ts +48 -0
  257. package/dist/src/nile-file-upload/nile-file-upload.js +165 -0
  258. package/dist/src/nile-file-upload/nile-file-upload.js.map +1 -0
  259. package/dist/src/nile-file-upload/nile-file-upload.template.d.ts +11 -0
  260. package/dist/src/nile-file-upload/nile-file-upload.template.js +171 -0
  261. package/dist/src/nile-file-upload/nile-file-upload.template.js.map +1 -0
  262. package/dist/src/nile-file-upload/nile-file-upload.test.d.ts +7 -0
  263. package/dist/src/nile-file-upload/nile-file-upload.test.js +30 -0
  264. package/dist/src/nile-file-upload/nile-file-upload.test.js.map +1 -0
  265. package/dist/src/nile-file-upload/types/file-upload.enums.d.ts +35 -0
  266. package/dist/src/nile-file-upload/types/file-upload.enums.js +42 -0
  267. package/dist/src/nile-file-upload/types/file-upload.enums.js.map +1 -0
  268. package/dist/src/nile-file-upload/types/file-upload.type.d.ts +4 -0
  269. package/dist/src/nile-file-upload/types/file-upload.type.js +2 -0
  270. package/dist/src/nile-file-upload/types/file-upload.type.js.map +1 -0
  271. package/dist/src/nile-file-upload/types/index.d.ts +2 -0
  272. package/dist/src/nile-file-upload/types/index.js +3 -0
  273. package/dist/src/nile-file-upload/types/index.js.map +1 -0
  274. package/dist/src/nile-file-upload/utils/drag-drop.util.d.ts +23 -0
  275. package/dist/src/nile-file-upload/utils/drag-drop.util.js +85 -0
  276. package/dist/src/nile-file-upload/utils/drag-drop.util.js.map +1 -0
  277. package/dist/src/nile-file-upload/utils/file-validation.util.d.ts +11 -0
  278. package/dist/src/nile-file-upload/utils/file-validation.util.js +120 -0
  279. package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -0
  280. package/dist/src/nile-icon/icons/svg/index.d.ts +0 -5
  281. package/dist/src/nile-icon/icons/svg/index.js +0 -5
  282. package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
  283. package/dist/src/nile-icon/icons/svg/ng-activity.d.ts +5 -0
  284. package/dist/src/nile-icon/icons/svg/ng-activity.js +5 -0
  285. package/dist/src/nile-icon/icons/svg/ng-activity.js.map +1 -0
  286. package/dist/src/nile-icon/icons/svg/ng-align-center.d.ts +5 -0
  287. package/dist/src/nile-icon/icons/svg/ng-align-center.js +5 -0
  288. package/dist/src/nile-icon/icons/svg/ng-align-center.js.map +1 -0
  289. package/dist/src/nile-icon/icons/svg/ng-annotation-x.d.ts +5 -0
  290. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js +5 -0
  291. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js.map +1 -0
  292. package/dist/src/nile-icon/icons/svg/ng-arrow-down.d.ts +5 -0
  293. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js +5 -0
  294. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js.map +1 -0
  295. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.d.ts +5 -0
  296. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js +5 -0
  297. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js.map +1 -0
  298. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.d.ts +5 -0
  299. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js +5 -0
  300. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js.map +1 -0
  301. package/dist/src/nile-icon/icons/svg/ng-arrow-up.d.ts +5 -0
  302. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js +5 -0
  303. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js.map +1 -0
  304. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.d.ts +5 -0
  305. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js +5 -0
  306. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js.map +1 -0
  307. package/dist/src/nile-icon/icons/svg/ng-bell-01.d.ts +5 -0
  308. package/dist/src/nile-icon/icons/svg/ng-bell-01.js +5 -0
  309. package/dist/src/nile-icon/icons/svg/ng-bell-01.js.map +1 -0
  310. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.d.ts +5 -0
  311. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js +5 -0
  312. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js.map +1 -0
  313. package/dist/src/nile-icon/icons/svg/ng-bold-01.d.ts +5 -0
  314. package/dist/src/nile-icon/icons/svg/ng-bold-01.js +5 -0
  315. package/dist/src/nile-icon/icons/svg/ng-bold-01.js.map +1 -0
  316. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.d.ts +5 -0
  317. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js +5 -0
  318. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js.map +1 -0
  319. package/dist/src/nile-icon/icons/svg/ng-calendar.d.ts +5 -0
  320. package/dist/src/nile-icon/icons/svg/ng-calendar.js +5 -0
  321. package/dist/src/nile-icon/icons/svg/ng-calendar.js.map +1 -0
  322. package/dist/src/nile-icon/icons/svg/ng-check-circle.d.ts +5 -0
  323. package/dist/src/nile-icon/icons/svg/ng-check-circle.js +5 -0
  324. package/dist/src/nile-icon/icons/svg/ng-check-circle.js.map +1 -0
  325. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.d.ts +5 -0
  326. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js +5 -0
  327. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js.map +1 -0
  328. package/dist/src/nile-icon/icons/svg/ng-chevron-down.d.ts +5 -0
  329. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js +5 -0
  330. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js.map +1 -0
  331. package/dist/src/nile-icon/icons/svg/ng-chevron-left.d.ts +5 -0
  332. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js +5 -0
  333. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js.map +1 -0
  334. package/dist/src/nile-icon/icons/svg/ng-chevron-right.d.ts +5 -0
  335. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js +5 -0
  336. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js.map +1 -0
  337. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.d.ts +5 -0
  338. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js +5 -0
  339. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js.map +1 -0
  340. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.d.ts +5 -0
  341. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js +5 -0
  342. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js.map +1 -0
  343. package/dist/src/nile-icon/icons/svg/ng-chevron-up.d.ts +5 -0
  344. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js +5 -0
  345. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js.map +1 -0
  346. package/dist/src/nile-icon/icons/svg/ng-copy-03.d.ts +5 -0
  347. package/dist/src/nile-icon/icons/svg/ng-copy-03.js +5 -0
  348. package/dist/src/nile-icon/icons/svg/ng-copy-03.js.map +1 -0
  349. package/dist/src/nile-icon/icons/svg/ng-dots-grid.d.ts +5 -0
  350. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js +5 -0
  351. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js.map +1 -0
  352. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.d.ts +5 -0
  353. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js +5 -0
  354. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js.map +1 -0
  355. package/dist/src/nile-icon/icons/svg/ng-download-01.d.ts +5 -0
  356. package/dist/src/nile-icon/icons/svg/ng-download-01.js +5 -0
  357. package/dist/src/nile-icon/icons/svg/ng-download-01.js.map +1 -0
  358. package/dist/src/nile-icon/icons/svg/ng-dropdown.d.ts +5 -0
  359. package/dist/src/nile-icon/icons/svg/ng-dropdown.js +5 -0
  360. package/dist/src/nile-icon/icons/svg/ng-dropdown.js.map +1 -0
  361. package/dist/src/nile-icon/icons/svg/ng-edit-02.d.ts +5 -0
  362. package/dist/src/nile-icon/icons/svg/ng-edit-02.js +5 -0
  363. package/dist/src/nile-icon/icons/svg/ng-edit-02.js.map +1 -0
  364. package/dist/src/nile-icon/icons/svg/ng-edit-05.d.ts +5 -0
  365. package/dist/src/nile-icon/icons/svg/ng-edit-05.js +5 -0
  366. package/dist/src/nile-icon/icons/svg/ng-edit-05.js.map +1 -0
  367. package/dist/src/nile-icon/icons/svg/ng-expand-06.d.ts +5 -0
  368. package/dist/src/nile-icon/icons/svg/ng-expand-06.js +5 -0
  369. package/dist/src/nile-icon/icons/svg/ng-expand-06.js.map +1 -0
  370. package/dist/src/nile-icon/icons/svg/ng-file-02.d.ts +5 -0
  371. package/dist/src/nile-icon/icons/svg/ng-file-02.js +5 -0
  372. package/dist/src/nile-icon/icons/svg/ng-file-02.js.map +1 -0
  373. package/dist/src/nile-icon/icons/svg/ng-file-check-02.d.ts +5 -0
  374. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js +5 -0
  375. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js.map +1 -0
  376. package/dist/src/nile-icon/icons/svg/ng-file-question-03.d.ts +5 -0
  377. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js +5 -0
  378. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js.map +1 -0
  379. package/dist/src/nile-icon/icons/svg/ng-filter-lines.d.ts +5 -0
  380. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js +5 -0
  381. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js.map +1 -0
  382. package/dist/src/nile-icon/icons/svg/ng-grid-01.d.ts +5 -0
  383. package/dist/src/nile-icon/icons/svg/ng-grid-01.js +5 -0
  384. package/dist/src/nile-icon/icons/svg/ng-grid-01.js.map +1 -0
  385. package/dist/src/nile-icon/icons/svg/ng-help-circle.d.ts +5 -0
  386. package/dist/src/nile-icon/icons/svg/ng-help-circle.js +5 -0
  387. package/dist/src/nile-icon/icons/svg/ng-help-circle.js.map +1 -0
  388. package/dist/src/nile-icon/icons/svg/ng-image-user-left.d.ts +5 -0
  389. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js +5 -0
  390. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js.map +1 -0
  391. package/dist/src/nile-icon/icons/svg/ng-info-circle.d.ts +5 -0
  392. package/dist/src/nile-icon/icons/svg/ng-info-circle.js +5 -0
  393. package/dist/src/nile-icon/icons/svg/ng-info-circle.js.map +1 -0
  394. package/dist/src/nile-icon/icons/svg/ng-italic-01.d.ts +5 -0
  395. package/dist/src/nile-icon/icons/svg/ng-italic-01.js +5 -0
  396. package/dist/src/nile-icon/icons/svg/ng-italic-01.js.map +1 -0
  397. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.d.ts +5 -0
  398. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js +5 -0
  399. package/dist/src/nile-icon/icons/svg/ng-layers-three-01.js.map +1 -0
  400. package/dist/src/nile-icon/icons/svg/ng-list.d.ts +5 -0
  401. package/dist/src/nile-icon/icons/svg/ng-list.js +5 -0
  402. package/dist/src/nile-icon/icons/svg/ng-list.js.map +1 -0
  403. package/dist/src/nile-icon/icons/svg/ng-log-out-01.d.ts +5 -0
  404. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js +5 -0
  405. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js.map +1 -0
  406. package/dist/src/nile-icon/icons/svg/ng-mail-01.d.ts +5 -0
  407. package/dist/src/nile-icon/icons/svg/ng-mail-01.js +5 -0
  408. package/dist/src/nile-icon/icons/svg/ng-mail-01.js.map +1 -0
  409. package/dist/src/nile-icon/icons/svg/ng-mail-04.d.ts +5 -0
  410. package/dist/src/nile-icon/icons/svg/ng-mail-04.js +5 -0
  411. package/dist/src/nile-icon/icons/svg/ng-mail-04.js.map +1 -0
  412. package/dist/src/nile-icon/icons/svg/ng-menu-05.d.ts +5 -0
  413. package/dist/src/nile-icon/icons/svg/ng-menu-05.js +5 -0
  414. package/dist/src/nile-icon/icons/svg/ng-menu-05.js.map +1 -0
  415. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.d.ts +5 -0
  416. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js +5 -0
  417. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js.map +1 -0
  418. package/dist/src/nile-icon/icons/svg/ng-minimize-02.d.ts +5 -0
  419. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js +5 -0
  420. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js.map +1 -0
  421. package/dist/src/nile-icon/icons/svg/ng-plus.d.ts +5 -0
  422. package/dist/src/nile-icon/icons/svg/ng-plus.js +5 -0
  423. package/dist/src/nile-icon/icons/svg/ng-plus.js.map +1 -0
  424. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.d.ts +5 -0
  425. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js +5 -0
  426. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js.map +1 -0
  427. package/dist/src/nile-icon/icons/svg/ng-rocket-02.d.ts +5 -0
  428. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js +5 -0
  429. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js.map +1 -0
  430. package/dist/src/nile-icon/icons/svg/ng-search-lg.d.ts +5 -0
  431. package/dist/src/nile-icon/icons/svg/ng-search-lg.js +5 -0
  432. package/dist/src/nile-icon/icons/svg/ng-search-lg.js.map +1 -0
  433. package/dist/src/nile-icon/icons/svg/ng-send-01.d.ts +5 -0
  434. package/dist/src/nile-icon/icons/svg/ng-send-01.js +5 -0
  435. package/dist/src/nile-icon/icons/svg/ng-send-01.js.map +1 -0
  436. package/dist/src/nile-icon/icons/svg/ng-settings-01.d.ts +5 -0
  437. package/dist/src/nile-icon/icons/svg/ng-settings-01.js +5 -0
  438. package/dist/src/nile-icon/icons/svg/ng-settings-01.js.map +1 -0
  439. package/dist/src/nile-icon/icons/svg/ng-share-04.d.ts +5 -0
  440. package/dist/src/nile-icon/icons/svg/ng-share-04.js +5 -0
  441. package/dist/src/nile-icon/icons/svg/ng-share-04.js.map +1 -0
  442. package/dist/src/nile-icon/icons/svg/ng-share-06.d.ts +5 -0
  443. package/dist/src/nile-icon/icons/svg/ng-share-06.js +5 -0
  444. package/dist/src/nile-icon/icons/svg/ng-share-06.js.map +1 -0
  445. package/dist/src/nile-icon/icons/svg/ng-stars-02.d.ts +5 -0
  446. package/dist/src/nile-icon/icons/svg/ng-stars-02.js +5 -0
  447. package/dist/src/nile-icon/icons/svg/ng-stars-02.js.map +1 -0
  448. package/dist/src/nile-icon/icons/svg/ng-trash-01.d.ts +5 -0
  449. package/dist/src/nile-icon/icons/svg/ng-trash-01.js +5 -0
  450. package/dist/src/nile-icon/icons/svg/ng-trash-01.js.map +1 -0
  451. package/dist/src/nile-icon/icons/svg/ng-trash-03.d.ts +5 -0
  452. package/dist/src/nile-icon/icons/svg/ng-trash-03.js +5 -0
  453. package/dist/src/nile-icon/icons/svg/ng-trash-03.js.map +1 -0
  454. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.d.ts +5 -0
  455. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js +5 -0
  456. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js.map +1 -0
  457. package/dist/src/nile-icon/icons/svg/ng-underline-01.d.ts +5 -0
  458. package/dist/src/nile-icon/icons/svg/ng-underline-01.js +5 -0
  459. package/dist/src/nile-icon/icons/svg/ng-underline-01.js.map +1 -0
  460. package/dist/src/nile-icon/icons/svg/ng-upload-01.d.ts +5 -0
  461. package/dist/src/nile-icon/icons/svg/ng-upload-01.js +5 -0
  462. package/dist/src/nile-icon/icons/svg/ng-upload-01.js.map +1 -0
  463. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.d.ts +5 -0
  464. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js +5 -0
  465. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js.map +1 -0
  466. package/dist/src/nile-icon/icons/svg/ng-user-01.d.ts +5 -0
  467. package/dist/src/nile-icon/icons/svg/ng-user-01.js +5 -0
  468. package/dist/src/nile-icon/icons/svg/ng-user-01.js.map +1 -0
  469. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.d.ts +5 -0
  470. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js +5 -0
  471. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js.map +1 -0
  472. package/dist/src/nile-icon/icons/svg/ng-user-check-02.d.ts +5 -0
  473. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js +5 -0
  474. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js.map +1 -0
  475. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.d.ts +5 -0
  476. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js +5 -0
  477. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js.map +1 -0
  478. package/dist/src/nile-icon/icons/svg/ng-user-right-01.d.ts +5 -0
  479. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js +5 -0
  480. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js.map +1 -0
  481. package/dist/src/nile-icon/icons/svg/ng-users-01.d.ts +5 -0
  482. package/dist/src/nile-icon/icons/svg/ng-users-01.js +5 -0
  483. package/dist/src/nile-icon/icons/svg/ng-users-01.js.map +1 -0
  484. package/dist/src/nile-icon/icons/svg/ng-x-close.d.ts +5 -0
  485. package/dist/src/nile-icon/icons/svg/ng-x-close.js +5 -0
  486. package/dist/src/nile-icon/icons/svg/ng-x-close.js.map +1 -0
  487. package/dist/src/nile-icon/icons/svg/ng-x-square.d.ts +5 -0
  488. package/dist/src/nile-icon/icons/svg/ng-x-square.js +5 -0
  489. package/dist/src/nile-icon/icons/svg/ng-x-square.js.map +1 -0
  490. package/dist/src/nile-pagination/nile-pagination.css.js +38 -151
  491. package/dist/src/nile-pagination/nile-pagination.css.js.map +1 -1
  492. package/dist/src/nile-pagination/nile-pagination.d.ts +0 -3
  493. package/dist/src/nile-pagination/nile-pagination.js +40 -167
  494. package/dist/src/nile-pagination/nile-pagination.js.map +1 -1
  495. package/dist/tsconfig.tsbuildinfo +1 -1
  496. package/package.json +1 -1
  497. package/rollup.config.js +39 -27
  498. package/src/nile-calendar/nile-calendar.css.ts +151 -25
  499. package/src/nile-calendar/nile-calendar.ts +146 -17
  500. package/src/nile-chip/nile-chip.ts +0 -1
  501. package/src/nile-code-editor/nile-code-editor.ts +6 -55
  502. package/src/nile-code-editor/theme.ts +0 -111
  503. package/src/nile-empty-state/nile-empty-state.ts +11 -11
  504. package/src/nile-error-notification/nile-error-notification.ts +3 -4
  505. package/src/nile-icon/icons/svg/index.ts +0 -5
  506. package/src/nile-pagination/nile-pagination.css.ts +38 -151
  507. package/src/nile-pagination/nile-pagination.ts +46 -188
  508. package/vscode-html-custom-data.json +23 -18
  509. package/dist/nile-icon/icons/svg/attribute.cjs.js +0 -2
  510. package/dist/nile-icon/icons/svg/attribute.cjs.js.map +0 -1
  511. package/dist/nile-icon/icons/svg/attribute.esm.js +0 -1
  512. package/dist/nile-icon/icons/svg/class.cjs.js +0 -2
  513. package/dist/nile-icon/icons/svg/class.cjs.js.map +0 -1
  514. package/dist/nile-icon/icons/svg/class.esm.js +0 -1
  515. package/dist/nile-icon/icons/svg/function.cjs.js +0 -2
  516. package/dist/nile-icon/icons/svg/function.cjs.js.map +0 -1
  517. package/dist/nile-icon/icons/svg/function.esm.js +0 -1
  518. package/dist/nile-icon/icons/svg/keyword.cjs.js +0 -2
  519. package/dist/nile-icon/icons/svg/keyword.cjs.js.map +0 -1
  520. package/dist/nile-icon/icons/svg/keyword.esm.js +0 -1
  521. package/src/nile-icon/icons/svg/attribute.ts +0 -5
  522. package/src/nile-icon/icons/svg/class.ts +0 -5
  523. package/src/nile-icon/icons/svg/column-add.ts +0 -5
  524. package/src/nile-icon/icons/svg/function.ts +0 -5
  525. package/src/nile-icon/icons/svg/keyword.ts +0 -5
@@ -16,10 +16,14 @@ export const styles = css `
16
16
  display: flex;
17
17
  align-items: center;
18
18
  justify-content: space-between;
19
- padding: var(--nile-spacing-spacing-md) var(--nile-spacing-spacing-lg) ;
19
+ padding: var(--nile-spacing-spacing-md) var(--nile-spacing-spacing-lg);
20
+ }
21
+
22
+ .pagination-wrapper.v2 {
23
+ justify-content: flex-start;
24
+ gap: var(--nile-spacing-spacing-lg);
20
25
  }
21
26
 
22
-
23
27
  .pagination-wrapper.v2 .pager-container {
24
28
  flex-direction: row;
25
29
  align-items: center;
@@ -35,79 +39,12 @@ export const styles = css `
35
39
  font-weight: var(--nile-font-weight-regular);
36
40
  }
37
41
 
38
-
39
- .pagination-wrapper.compact {
40
- min-width: 324px;
41
- justify-content: space-between;
42
- }
43
-
44
-
45
-
46
- .pagination-wrapper.compact .range-text {
47
- margin-right: var(--nile-spacing-spacing-md);
48
- white-space: nowrap;
49
- }
50
-
51
-
52
- .pagination-wrapper.compact .pager-container {
53
- gap: var(--nile-spacing-spacing-md);
54
- }
55
-
56
-
57
- .pagination-wrapper.compact .pager-container {
58
- display: flex;
59
- align-items: center;
60
- gap: var(--nile-spacing-spacing-md);
61
- }
62
-
63
- .pagination-wrapper.compact .page-size-dropdown ::part(base) {
64
- min-width: 32px;
65
- height: 32px;
66
- padding: 0 6px;
67
- }
68
-
69
- .pagination-wrapper.compact .page-size-dropdown .chevron {
70
- transition: transform 0.2s;
71
- }
72
- .pagination-wrapper.compact .page-size-dropdown .open .chevron {
73
- transform: rotate(180deg);
74
- }
75
-
76
- .pagination-wrapper.compact ul.pagination:not(.compact-pagination) {
77
- display: none;
78
- }
79
-
80
- .compact-pagination {
81
- display: flex;
82
- align-items: center;
83
- gap: var(--nile-spacing-spacing-xs);
84
- list-style: none;
85
- margin: 0;
86
- padding: 0;
87
- }
88
- .page-dropdown .current-page-btn {
89
- padding: 2px;
90
- font-size: var(--nile-font-size-small);
91
- }
92
-
93
- nile-button.current-page-btn::part(base){
94
- min-width: 51px;
95
- }
96
-
97
- nile-button.current-page-btn::part(base):active {
98
- min-width: 51px;
99
- }
100
-
101
42
  .pager-container {
102
43
  display: flex;
103
44
  align-items: center;
104
45
  gap: var(--nile-spacing-spacing-3xl);
105
46
  }
106
47
 
107
- .pagination-wrapper.compact .pager-container {
108
- gap: var(--nile-spacing-xxs) !important;
109
- }
110
-
111
48
  .range-text {
112
49
  font-size: var(--nile-font-size-small);
113
50
  color: var(--nile-colors-dark-900);
@@ -136,48 +73,6 @@ export const styles = css `
136
73
  overflow-y: auto;
137
74
  width: 66px;
138
75
  }
139
- .down-scroll-wrapper {
140
- max-height: 150px;
141
- overflow-y: auto;
142
- width: 60px;
143
- }
144
-
145
-
146
- .compact-scroll-wrapper {
147
- max-height: 160px;
148
- overflow-y: auto;
149
- width: 60px;
150
- }
151
- .compact-dropdown nile-menu {
152
- overflow-y: auto;
153
- padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);
154
- box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);
155
- }
156
-
157
- .page-size-dropdown nile-menu {
158
- overflow-y: auto;
159
- padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);
160
- box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);
161
- }
162
-
163
- .compact-scroll-wrapper1 {
164
- max-height: 164px;
165
- overflow-y: auto;
166
- width: 60px;
167
- }
168
-
169
- .compact-dropdown1 nile-menu {
170
- overflow-y: auto;
171
- padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);
172
- box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);
173
- }
174
-
175
- .compact-dropdown1 nile-menu {
176
- overflow-y: auto;
177
- padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);
178
- box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);
179
- }
180
-
181
76
 
182
77
  .ellipsis-dropdown nile-menu {
183
78
  overflow-y: auto;
@@ -185,64 +80,56 @@ export const styles = css `
185
80
  box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);
186
81
  }
187
82
 
83
+
84
+
188
85
  .page-size-menu {
189
86
  max-height: 144px;
190
87
  overflow-y: auto;
191
88
  }
192
89
 
193
- .pagination-wrapper.fluid ul.pagination li:first-child {
194
- margin-right: var(--nile-spacing-spacing-xs);
195
- }
196
- .pagination-wrapper.fluid ul.pagination li:last-child {
197
- margin-left: var(--nile-spacing-spacing-md);
198
- }
199
-
90
+ ul.pagination li:first-child {
91
+ margin-right: var(--nile-spacing-spacing-xs);
92
+ }
93
+ ul.pagination li:last-child {
94
+ margin-left: var(--nile-spacing-spacing-md);
95
+ }
200
96
 
201
97
  .page-size-label {
202
98
  font-size: var(--nile-type-scale-3);
203
99
  color: var(--nile-colors-dark-500);
204
100
  margin-left: var(--nile-spacing-spacing-md);
205
101
  font-feature-settings: 'liga' off, 'clig' off;
206
- font-weight: var(--nile-font-weight-regular);
102
+ font-weight: var(--nile-font-weight-regular);
207
103
  }
208
104
 
209
105
  nile-button::part(base) {
210
- min-width: 32px;
211
- height: 32px;
212
- padding: 0px 6px;
213
- box-shadow: none;
214
- }
106
+ min-width: 32px;
107
+ height: 32px;
108
+ padding: 0px 6px;
109
+ box-shadow: none;
110
+ }
215
111
 
216
112
  nile-button::part(base):active {
217
- min-width: 32px;
218
- height: 32px;
219
- padding: 0px 6px;
220
- box-shadow: none;
221
- border: none;
222
- }
113
+ min-width: 32px;
114
+ height: 32px;
115
+ padding: 0px 6px;
116
+ box-shadow: none;
117
+ border:none;
118
+ }
119
+
120
+ nile-button.down::part(base){
121
+ min-width: 62px;
122
+
123
+ }
124
+ .page-size-dropdown .chevron {
125
+ transition: transform 0.2s;
126
+ }
127
+ .page-size-dropdown .open .chevron {
128
+ transform: rotate(180deg);
129
+ }
130
+
223
131
 
224
- nile-button.down::part(base) {
225
- min-width: 62px;
226
- }
227
132
 
228
- nile-button.compactbtn:part(base){
229
- background-color: red;
230
- }
231
- .page-size-dropdown .chevron {
232
- transition: transform 0.2s;
233
- }
234
- .page-size-dropdown .open .chevron {
235
- transform: rotate(180deg);
236
- }
237
-
238
- .pagination-wrapper.compact .compact-dropdown .chevron,
239
- .pagination-wrapper.compact .compact-dropdown1 .chevron {
240
- transition: transform 0.2s;
241
- }
242
- .pagination-wrapper.compact .compact-dropdown .down.open .chevron,
243
- .pagination-wrapper.compact .compact-dropdown1 .current-page-btn.open .chevron {
244
- transform: rotate(180deg);
245
- }
246
133
 
247
134
 
248
135
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"nile-pagination.css.js","sourceRoot":"","sources":["../../../src/nile-pagination/nile-pagination.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6OxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,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 */\n\nimport { css } from 'lit';\n\n/**\n * Pagination CSS\n */\nexport const styles = css`\n :host {\n }\n\n .pagination-wrapper {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--nile-spacing-spacing-md) var(--nile-spacing-spacing-lg) ;\n }\n\n \n .pagination-wrapper.v2 .pager-container {\n flex-direction: row;\n align-items: center;\n gap: var(--nile-spacing-spacing-md);\n margin-right: var(--nile-spacing-spacing-xl);\n }\n\n .pagination-wrapper.v2 .range-text {\n margin-right: var(--nile-spacing-spacing-md);\n font-size: var(--nile-font-size-small);\n color: var(--nile-colors-dark-900);\n font-feature-settings: 'liga' off, 'clig' off;\n font-weight: var(--nile-font-weight-regular);\n }\n\n \n .pagination-wrapper.compact {\n min-width: 324px;\n justify-content: space-between;\n }\n\n\n\n.pagination-wrapper.compact .range-text {\n margin-right: var(--nile-spacing-spacing-md);\n white-space: nowrap;\n}\n\n\n.pagination-wrapper.compact .pager-container {\n gap: var(--nile-spacing-spacing-md);\n}\n\n\n .pagination-wrapper.compact .pager-container {\n display: flex;\n align-items: center;\n gap: var(--nile-spacing-spacing-md);\n }\n\n .pagination-wrapper.compact .page-size-dropdown ::part(base) {\n min-width: 32px;\n height: 32px;\n padding: 0 6px;\n }\n\n .pagination-wrapper.compact .page-size-dropdown .chevron {\n transition: transform 0.2s;\n }\n .pagination-wrapper.compact .page-size-dropdown .open .chevron {\n transform: rotate(180deg);\n }\n\n .pagination-wrapper.compact ul.pagination:not(.compact-pagination) {\n display: none;\n }\n\n .compact-pagination {\n display: flex;\n align-items: center;\n gap: var(--nile-spacing-spacing-xs);\n list-style: none;\n margin: 0;\n padding: 0;\n }\n .page-dropdown .current-page-btn {\n padding: 2px;\n font-size: var(--nile-font-size-small);\n }\n\n nile-button.current-page-btn::part(base){\n min-width: 51px;\n }\n\n nile-button.current-page-btn::part(base):active {\n min-width: 51px;\n}\n\n .pager-container {\n display: flex;\n align-items: center;\n gap: var(--nile-spacing-spacing-3xl);\n }\n\n.pagination-wrapper.compact .pager-container {\n gap: var(--nile-spacing-xxs) !important;\n}\n\n .range-text {\n font-size: var(--nile-font-size-small);\n color: var(--nile-colors-dark-900);\n white-space: nowrap;\n }\n\n .page-size-select {\n display: inline-flex;\n align-items: center;\n }\n\n ul.pagination {\n display: flex;\n list-style: none;\n padding: var(--nile-spacing-spacing-none);\n margin: var(--nile-spacing-spacing-none);\n gap: var(--nile-radius-radius-xxs);\n }\n\n ul.pagination li {\n margin: var(--nile-spacing-spacing-none);\n }\n\n .ellipsis-scroll-wrapper {\n max-height: 194px;\n overflow-y: auto;\n width: 66px;\n }\n .down-scroll-wrapper {\n max-height: 150px;\n overflow-y: auto;\n width: 60px;\n }\n\n\n .compact-scroll-wrapper {\n max-height: 160px;\n overflow-y: auto;\n width: 60px;\n }\n .compact-dropdown nile-menu {\n overflow-y: auto;\n padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);\n box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);\n }\n \n .page-size-dropdown nile-menu {\n overflow-y: auto;\n padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);\n box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);\n }\n\n .compact-scroll-wrapper1 {\n max-height: 164px;\n overflow-y: auto;\n width: 60px;\n }\n\n .compact-dropdown1 nile-menu {\n overflow-y: auto;\n padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);\n box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);\n }\n \n .compact-dropdown1 nile-menu {\n overflow-y: auto;\n padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);\n box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);\n }\n\n\n .ellipsis-dropdown nile-menu {\n overflow-y: auto;\n padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);\n box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);\n }\n\n .page-size-menu {\n max-height: 144px;\n overflow-y: auto;\n }\n\n.pagination-wrapper.fluid ul.pagination li:first-child {\n margin-right: var(--nile-spacing-spacing-xs);\n}\n.pagination-wrapper.fluid ul.pagination li:last-child {\n margin-left: var(--nile-spacing-spacing-md);\n}\n\n\n .page-size-label {\n font-size: var(--nile-type-scale-3);\n color: var(--nile-colors-dark-500);\n margin-left: var(--nile-spacing-spacing-md);\n font-feature-settings: 'liga' off, 'clig' off;\n font-weight: var(--nile-font-weight-regular); \n }\n\n nile-button::part(base) {\n min-width: 32px;\n height: 32px;\n padding: 0px 6px;\n box-shadow: none;\n }\n\n nile-button::part(base):active {\n min-width: 32px;\n height: 32px;\n padding: 0px 6px;\n box-shadow: none;\n border: none;\n }\n\n nile-button.down::part(base) {\n min-width: 62px;\n }\n\n nile-button.compactbtn:part(base){\n background-color: red;\n }\n .page-size-dropdown .chevron {\n transition: transform 0.2s;\n }\n .page-size-dropdown .open .chevron {\n transform: rotate(180deg);\n }\n \n .pagination-wrapper.compact .compact-dropdown .chevron,\n .pagination-wrapper.compact .compact-dropdown1 .chevron {\n transition: transform 0.2s;\n }\n .pagination-wrapper.compact .compact-dropdown .down.open .chevron,\n .pagination-wrapper.compact .compact-dropdown1 .current-page-btn.open .chevron {\n transform: rotate(180deg);\n }\n\n\n`;\n\nexport default [styles];\n"]}
1
+ {"version":3,"file":"nile-pagination.css.js","sourceRoot":"","sources":["../../../src/nile-pagination/nile-pagination.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4HxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,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 */\n\nimport { css } from 'lit';\n\n/**\n * Pagination CSS\n */\nexport const styles = css`\n :host {\n }\n\n .pagination-wrapper {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--nile-spacing-spacing-md) var(--nile-spacing-spacing-lg);\n }\n\n .pagination-wrapper.v2 {\n justify-content: flex-start;\n gap: var(--nile-spacing-spacing-lg);\n }\n\n .pagination-wrapper.v2 .pager-container {\n flex-direction: row;\n align-items: center;\n gap: var(--nile-spacing-spacing-md);\n margin-right: var(--nile-spacing-spacing-xl);\n }\n\n .pagination-wrapper.v2 .range-text {\n margin-right: var(--nile-spacing-spacing-md);\n font-size: var(--nile-font-size-small);\n color: var(--nile-colors-dark-900);\n font-feature-settings: 'liga' off, 'clig' off;\n font-weight: var(--nile-font-weight-regular);\n }\n\n .pager-container {\n display: flex;\n align-items: center;\n gap: var(--nile-spacing-spacing-3xl);\n }\n\n .range-text {\n font-size: var(--nile-font-size-small);\n color: var(--nile-colors-dark-900);\n white-space: nowrap;\n }\n\n .page-size-select {\n display: inline-flex;\n align-items: center;\n }\n\n ul.pagination {\n display: flex;\n list-style: none;\n padding: var(--nile-spacing-spacing-none);\n margin: var(--nile-spacing-spacing-none);\n gap: var(--nile-radius-radius-xxs);\n }\n\n ul.pagination li {\n margin: var(--nile-spacing-spacing-none);\n }\n\n .ellipsis-scroll-wrapper {\n max-height: 194px;\n overflow-y: auto;\n width: 66px;\n }\n\n .ellipsis-dropdown nile-menu {\n overflow-y: auto;\n padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-none);\n box-shadow: 0px 4px 8px 0px rgba(119, 125, 130, 0.15);\n }\n\n \n\n .page-size-menu {\n max-height: 144px;\n overflow-y: auto;\n }\n\n ul.pagination li:first-child {\n margin-right: var(--nile-spacing-spacing-xs);\n }\n ul.pagination li:last-child {\n margin-left: var(--nile-spacing-spacing-md);\n }\n\n .page-size-label {\n font-size: var(--nile-type-scale-3);\n color: var(--nile-colors-dark-500);\n margin-left: var(--nile-spacing-spacing-md);\n font-feature-settings: 'liga' off, 'clig' off;\n font-weight: var(--nile-font-weight-regular);\n }\n\n nile-button::part(base) {\n min-width: 32px;\n height: 32px;\n padding: 0px 6px;\n box-shadow: none;\n}\n\n nile-button::part(base):active {\n min-width: 32px;\n height: 32px;\n padding: 0px 6px;\n box-shadow: none;\n border:none;\n}\n \n nile-button.down::part(base){\n min-width: 62px;\n\n }\n.page-size-dropdown .chevron {\n transition: transform 0.2s;\n}\n.page-size-dropdown .open .chevron {\n transform: rotate(180deg);\n}\n\n\n\n\n\n`;\n\nexport default [styles];\n"]}
@@ -16,16 +16,13 @@ export declare class NilePagination extends NileElement {
16
16
  disabled: boolean;
17
17
  showTitle: boolean;
18
18
  private _pageSizeOpen;
19
- private _pageOpen;
20
19
  private _pageSizeDropdown;
21
20
  firstUpdated(): void;
22
21
  private get totalPages();
23
22
  private goToPage;
24
23
  private onPageSizeSelect;
25
- private renderCompactRangeText;
26
24
  private renderRangeText;
27
25
  private renderPageSizeSelect;
28
- private renderCompactPageSize;
29
26
  private renderPrevButton;
30
27
  private renderNextButton;
31
28
  private renderPageItem;
@@ -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":"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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 */\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"]}