@aquera/nile-elements 0.1.57-beta-1.8 → 0.1.57-beta-1.9

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 (366) hide show
  1. package/README.md +0 -3
  2. package/demo/index.html +25 -9
  3. package/demo/index.js +0 -83
  4. package/dist/axe.min-2b379f29.cjs.js +12 -0
  5. package/dist/axe.min-2b379f29.cjs.js.map +1 -0
  6. package/dist/axe.min-c2cd8733.esm.js +12 -0
  7. package/dist/fixture-2b5b3aba.esm.js +569 -0
  8. package/dist/fixture-7bfb866e.cjs.js +395 -0
  9. package/dist/fixture-7bfb866e.cjs.js.map +1 -0
  10. package/dist/index.cjs.js +1 -1
  11. package/dist/index.esm.js +1 -1
  12. package/dist/index.js +93 -276
  13. package/dist/nile-select/nile-select.cjs.js +1 -1
  14. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  15. package/dist/nile-select/nile-select.esm.js +1 -1
  16. package/dist/nile-table-body/index.cjs.js +1 -1
  17. package/dist/nile-table-body/index.esm.js +1 -1
  18. package/dist/nile-table-body/nile-table-body.cjs.js +1 -1
  19. package/dist/nile-table-body/nile-table-body.cjs.js.map +1 -1
  20. package/dist/nile-table-body/nile-table-body.css.cjs.js +1 -1
  21. package/dist/nile-table-body/nile-table-body.css.cjs.js.map +1 -1
  22. package/dist/nile-table-body/nile-table-body.css.esm.js +2 -5
  23. package/dist/nile-table-body/nile-table-body.esm.js +2 -3
  24. package/dist/nile-table-cell-item/index.cjs.js +1 -1
  25. package/dist/nile-table-cell-item/index.esm.js +1 -1
  26. package/dist/nile-table-cell-item/nile-table-cell-item.cjs.js +1 -1
  27. package/dist/nile-table-cell-item/nile-table-cell-item.cjs.js.map +1 -1
  28. package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js +1 -1
  29. package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js.map +1 -1
  30. package/dist/nile-table-cell-item/nile-table-cell-item.css.esm.js +3 -22
  31. package/dist/nile-table-cell-item/nile-table-cell-item.esm.js +3 -8
  32. package/dist/nile-table-header-item/index.cjs.js +1 -1
  33. package/dist/nile-table-header-item/index.esm.js +1 -1
  34. package/dist/nile-table-header-item/nile-table-header-item.cjs.js +1 -1
  35. package/dist/nile-table-header-item/nile-table-header-item.cjs.js.map +1 -1
  36. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js +1 -1
  37. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js.map +1 -1
  38. package/dist/nile-table-header-item/nile-table-header-item.css.esm.js +2 -6
  39. package/dist/nile-table-header-item/nile-table-header-item.esm.js +32 -64
  40. package/dist/src/nile-file-preview/index.d.ts +1 -0
  41. package/dist/src/nile-file-preview/index.js +2 -0
  42. package/dist/src/nile-file-preview/index.js.map +1 -0
  43. package/dist/src/nile-file-preview/nile-file-preview.css.d.ts +12 -0
  44. package/dist/src/nile-file-preview/nile-file-preview.css.js +568 -0
  45. package/dist/src/nile-file-preview/nile-file-preview.css.js.map +1 -0
  46. package/dist/src/nile-file-preview/nile-file-preview.d.ts +50 -0
  47. package/dist/src/nile-file-preview/nile-file-preview.js +171 -0
  48. package/dist/src/nile-file-preview/nile-file-preview.js.map +1 -0
  49. package/dist/src/nile-file-preview/nile-file-preview.template.d.ts +13 -0
  50. package/dist/src/nile-file-preview/nile-file-preview.template.js +210 -0
  51. package/dist/src/nile-file-preview/nile-file-preview.template.js.map +1 -0
  52. package/dist/src/nile-file-preview/nile-file-preview.test.d.ts +7 -0
  53. package/dist/src/nile-file-preview/nile-file-preview.test.js +30 -0
  54. package/dist/src/nile-file-preview/nile-file-preview.test.js.map +1 -0
  55. package/dist/src/nile-file-preview/types/index.d.ts +2 -0
  56. package/dist/src/nile-file-preview/types/index.js +3 -0
  57. package/dist/src/nile-file-preview/types/index.js.map +1 -0
  58. package/dist/src/nile-file-preview/types/nile-file-preview.enums.d.ts +28 -0
  59. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js +33 -0
  60. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js.map +1 -0
  61. package/dist/src/nile-file-preview/types/nile-file-preview.interface.d.ts +4 -0
  62. package/dist/src/nile-file-preview/types/nile-file-preview.interface.js +2 -0
  63. package/dist/src/nile-file-preview/types/nile-file-preview.interface.js.map +1 -0
  64. package/dist/src/nile-file-preview/utils/index.d.ts +1 -0
  65. package/dist/src/nile-file-preview/utils/index.js +2 -0
  66. package/dist/src/nile-file-preview/utils/index.js.map +1 -0
  67. package/dist/src/nile-file-preview/utils/nile-file-preview.util.d.ts +4 -0
  68. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +38 -0
  69. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js.map +1 -0
  70. package/dist/src/nile-file-upload/index.d.ts +1 -0
  71. package/dist/src/nile-file-upload/index.js +2 -0
  72. package/dist/src/nile-file-upload/index.js.map +1 -0
  73. package/dist/src/nile-file-upload/nile-file-upload.css.d.ts +12 -0
  74. package/dist/src/nile-file-upload/nile-file-upload.css.js +569 -0
  75. package/dist/src/nile-file-upload/nile-file-upload.css.js.map +1 -0
  76. package/dist/src/nile-file-upload/nile-file-upload.d.ts +48 -0
  77. package/dist/src/nile-file-upload/nile-file-upload.js +165 -0
  78. package/dist/src/nile-file-upload/nile-file-upload.js.map +1 -0
  79. package/dist/src/nile-file-upload/nile-file-upload.template.d.ts +11 -0
  80. package/dist/src/nile-file-upload/nile-file-upload.template.js +171 -0
  81. package/dist/src/nile-file-upload/nile-file-upload.template.js.map +1 -0
  82. package/dist/src/nile-file-upload/nile-file-upload.test.d.ts +7 -0
  83. package/dist/src/nile-file-upload/nile-file-upload.test.js +30 -0
  84. package/dist/src/nile-file-upload/nile-file-upload.test.js.map +1 -0
  85. package/dist/src/nile-file-upload/types/file-upload.enums.d.ts +35 -0
  86. package/dist/src/nile-file-upload/types/file-upload.enums.js +42 -0
  87. package/dist/src/nile-file-upload/types/file-upload.enums.js.map +1 -0
  88. package/dist/src/nile-file-upload/types/file-upload.type.d.ts +4 -0
  89. package/dist/src/nile-file-upload/types/file-upload.type.js +2 -0
  90. package/dist/src/nile-file-upload/types/file-upload.type.js.map +1 -0
  91. package/dist/src/nile-file-upload/types/index.d.ts +2 -0
  92. package/dist/src/nile-file-upload/types/index.js +3 -0
  93. package/dist/src/nile-file-upload/types/index.js.map +1 -0
  94. package/dist/src/nile-file-upload/utils/drag-drop.util.d.ts +23 -0
  95. package/dist/src/nile-file-upload/utils/drag-drop.util.js +85 -0
  96. package/dist/src/nile-file-upload/utils/drag-drop.util.js.map +1 -0
  97. package/dist/src/nile-file-upload/utils/file-validation.util.d.ts +11 -0
  98. package/dist/src/nile-file-upload/utils/file-validation.util.js +120 -0
  99. package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -0
  100. package/dist/src/nile-icon/icons/svg/ng-activity.d.ts +5 -0
  101. package/dist/src/nile-icon/icons/svg/ng-activity.js +5 -0
  102. package/dist/src/nile-icon/icons/svg/ng-activity.js.map +1 -0
  103. package/dist/src/nile-icon/icons/svg/ng-align-center.d.ts +5 -0
  104. package/dist/src/nile-icon/icons/svg/ng-align-center.js +5 -0
  105. package/dist/src/nile-icon/icons/svg/ng-align-center.js.map +1 -0
  106. package/dist/src/nile-icon/icons/svg/ng-annotation-x.d.ts +5 -0
  107. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js +5 -0
  108. package/dist/src/nile-icon/icons/svg/ng-annotation-x.js.map +1 -0
  109. package/dist/src/nile-icon/icons/svg/ng-arrow-down.d.ts +5 -0
  110. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js +5 -0
  111. package/dist/src/nile-icon/icons/svg/ng-arrow-down.js.map +1 -0
  112. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.d.ts +5 -0
  113. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js +5 -0
  114. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-down.js.map +1 -0
  115. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.d.ts +5 -0
  116. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js +5 -0
  117. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-left.js.map +1 -0
  118. package/dist/src/nile-icon/icons/svg/ng-arrow-up.d.ts +5 -0
  119. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js +5 -0
  120. package/dist/src/nile-icon/icons/svg/ng-arrow-up.js.map +1 -0
  121. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.d.ts +5 -0
  122. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js +5 -0
  123. package/dist/src/nile-icon/icons/svg/ng-bar-chart-12.js.map +1 -0
  124. package/dist/src/nile-icon/icons/svg/ng-bell-01.d.ts +5 -0
  125. package/dist/src/nile-icon/icons/svg/ng-bell-01.js +5 -0
  126. package/dist/src/nile-icon/icons/svg/ng-bell-01.js.map +1 -0
  127. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.d.ts +5 -0
  128. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js +5 -0
  129. package/dist/src/nile-icon/icons/svg/ng-bell-ringing-04.js.map +1 -0
  130. package/dist/src/nile-icon/icons/svg/ng-bold-01.d.ts +5 -0
  131. package/dist/src/nile-icon/icons/svg/ng-bold-01.js +5 -0
  132. package/dist/src/nile-icon/icons/svg/ng-bold-01.js.map +1 -0
  133. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.d.ts +5 -0
  134. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js +5 -0
  135. package/dist/src/nile-icon/icons/svg/ng-calendar-plus-02.js.map +1 -0
  136. package/dist/src/nile-icon/icons/svg/ng-calendar.d.ts +5 -0
  137. package/dist/src/nile-icon/icons/svg/ng-calendar.js +5 -0
  138. package/dist/src/nile-icon/icons/svg/ng-calendar.js.map +1 -0
  139. package/dist/src/nile-icon/icons/svg/ng-check-circle.d.ts +5 -0
  140. package/dist/src/nile-icon/icons/svg/ng-check-circle.js +5 -0
  141. package/dist/src/nile-icon/icons/svg/ng-check-circle.js.map +1 -0
  142. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.d.ts +5 -0
  143. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js +5 -0
  144. package/dist/src/nile-icon/icons/svg/ng-check-square-broken.js.map +1 -0
  145. package/dist/src/nile-icon/icons/svg/ng-chevron-down.d.ts +5 -0
  146. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js +5 -0
  147. package/dist/src/nile-icon/icons/svg/ng-chevron-down.js.map +1 -0
  148. package/dist/src/nile-icon/icons/svg/ng-chevron-left.d.ts +5 -0
  149. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js +5 -0
  150. package/dist/src/nile-icon/icons/svg/ng-chevron-left.js.map +1 -0
  151. package/dist/src/nile-icon/icons/svg/ng-chevron-right.d.ts +5 -0
  152. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js +5 -0
  153. package/dist/src/nile-icon/icons/svg/ng-chevron-right.js.map +1 -0
  154. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.d.ts +5 -0
  155. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js +5 -0
  156. package/dist/src/nile-icon/icons/svg/ng-chevron-selector-vertical.js.map +1 -0
  157. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.d.ts +5 -0
  158. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js +5 -0
  159. package/dist/src/nile-icon/icons/svg/ng-chevron-up-double.js.map +1 -0
  160. package/dist/src/nile-icon/icons/svg/ng-chevron-up.d.ts +5 -0
  161. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js +5 -0
  162. package/dist/src/nile-icon/icons/svg/ng-chevron-up.js.map +1 -0
  163. package/dist/src/nile-icon/icons/svg/ng-copy-03.d.ts +5 -0
  164. package/dist/src/nile-icon/icons/svg/ng-copy-03.js +5 -0
  165. package/dist/src/nile-icon/icons/svg/ng-copy-03.js.map +1 -0
  166. package/dist/src/nile-icon/icons/svg/ng-dots-grid.d.ts +5 -0
  167. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js +5 -0
  168. package/dist/src/nile-icon/icons/svg/ng-dots-grid.js.map +1 -0
  169. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.d.ts +5 -0
  170. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js +5 -0
  171. package/dist/src/nile-icon/icons/svg/ng-dots-vertical.js.map +1 -0
  172. package/dist/src/nile-icon/icons/svg/ng-download-01.d.ts +5 -0
  173. package/dist/src/nile-icon/icons/svg/ng-download-01.js +5 -0
  174. package/dist/src/nile-icon/icons/svg/ng-download-01.js.map +1 -0
  175. package/dist/src/nile-icon/icons/svg/ng-dropdown.d.ts +5 -0
  176. package/dist/src/nile-icon/icons/svg/ng-dropdown.js +5 -0
  177. package/dist/src/nile-icon/icons/svg/ng-dropdown.js.map +1 -0
  178. package/dist/src/nile-icon/icons/svg/ng-edit-02.d.ts +5 -0
  179. package/dist/src/nile-icon/icons/svg/ng-edit-02.js +5 -0
  180. package/dist/src/nile-icon/icons/svg/ng-edit-02.js.map +1 -0
  181. package/dist/src/nile-icon/icons/svg/ng-edit-05.d.ts +5 -0
  182. package/dist/src/nile-icon/icons/svg/ng-edit-05.js +5 -0
  183. package/dist/src/nile-icon/icons/svg/ng-edit-05.js.map +1 -0
  184. package/dist/src/nile-icon/icons/svg/ng-expand-06.d.ts +5 -0
  185. package/dist/src/nile-icon/icons/svg/ng-expand-06.js +5 -0
  186. package/dist/src/nile-icon/icons/svg/ng-expand-06.js.map +1 -0
  187. package/dist/src/nile-icon/icons/svg/ng-file-02.d.ts +5 -0
  188. package/dist/src/nile-icon/icons/svg/ng-file-02.js +5 -0
  189. package/dist/src/nile-icon/icons/svg/ng-file-02.js.map +1 -0
  190. package/dist/src/nile-icon/icons/svg/ng-file-check-02.d.ts +5 -0
  191. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js +5 -0
  192. package/dist/src/nile-icon/icons/svg/ng-file-check-02.js.map +1 -0
  193. package/dist/src/nile-icon/icons/svg/ng-file-question-03.d.ts +5 -0
  194. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js +5 -0
  195. package/dist/src/nile-icon/icons/svg/ng-file-question-03.js.map +1 -0
  196. package/dist/src/nile-icon/icons/svg/ng-filter-lines.d.ts +5 -0
  197. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js +5 -0
  198. package/dist/src/nile-icon/icons/svg/ng-filter-lines.js.map +1 -0
  199. package/dist/src/nile-icon/icons/svg/ng-grid-01.d.ts +5 -0
  200. package/dist/src/nile-icon/icons/svg/ng-grid-01.js +5 -0
  201. package/dist/src/nile-icon/icons/svg/ng-grid-01.js.map +1 -0
  202. package/dist/src/nile-icon/icons/svg/ng-help-circle.d.ts +5 -0
  203. package/dist/src/nile-icon/icons/svg/ng-help-circle.js +5 -0
  204. package/dist/src/nile-icon/icons/svg/ng-help-circle.js.map +1 -0
  205. package/dist/src/nile-icon/icons/svg/ng-image-user-left.d.ts +5 -0
  206. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js +5 -0
  207. package/dist/src/nile-icon/icons/svg/ng-image-user-left.js.map +1 -0
  208. package/dist/src/nile-icon/icons/svg/ng-info-circle.d.ts +5 -0
  209. package/dist/src/nile-icon/icons/svg/ng-info-circle.js +5 -0
  210. package/dist/src/nile-icon/icons/svg/ng-info-circle.js.map +1 -0
  211. package/dist/src/nile-icon/icons/svg/ng-italic-01.d.ts +5 -0
  212. package/dist/src/nile-icon/icons/svg/ng-italic-01.js +5 -0
  213. package/dist/src/nile-icon/icons/svg/ng-italic-01.js.map +1 -0
  214. package/dist/src/nile-icon/icons/svg/ng-list.d.ts +5 -0
  215. package/dist/src/nile-icon/icons/svg/ng-list.js +5 -0
  216. package/dist/src/nile-icon/icons/svg/ng-list.js.map +1 -0
  217. package/dist/src/nile-icon/icons/svg/ng-log-out-01.d.ts +5 -0
  218. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js +5 -0
  219. package/dist/src/nile-icon/icons/svg/ng-log-out-01.js.map +1 -0
  220. package/dist/src/nile-icon/icons/svg/ng-mail-01.d.ts +5 -0
  221. package/dist/src/nile-icon/icons/svg/ng-mail-01.js +5 -0
  222. package/dist/src/nile-icon/icons/svg/ng-mail-01.js.map +1 -0
  223. package/dist/src/nile-icon/icons/svg/ng-mail-04.d.ts +5 -0
  224. package/dist/src/nile-icon/icons/svg/ng-mail-04.js +5 -0
  225. package/dist/src/nile-icon/icons/svg/ng-mail-04.js.map +1 -0
  226. package/dist/src/nile-icon/icons/svg/ng-menu-05.d.ts +5 -0
  227. package/dist/src/nile-icon/icons/svg/ng-menu-05.js +5 -0
  228. package/dist/src/nile-icon/icons/svg/ng-menu-05.js.map +1 -0
  229. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.d.ts +5 -0
  230. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js +5 -0
  231. package/dist/src/nile-icon/icons/svg/ng-message-text-square-01.js.map +1 -0
  232. package/dist/src/nile-icon/icons/svg/ng-minimize-02.d.ts +5 -0
  233. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js +5 -0
  234. package/dist/src/nile-icon/icons/svg/ng-minimize-02.js.map +1 -0
  235. package/dist/src/nile-icon/icons/svg/ng-plus.d.ts +5 -0
  236. package/dist/src/nile-icon/icons/svg/ng-plus.js +5 -0
  237. package/dist/src/nile-icon/icons/svg/ng-plus.js.map +1 -0
  238. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.d.ts +5 -0
  239. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js +5 -0
  240. package/dist/src/nile-icon/icons/svg/ng-refresh-cw-02.js.map +1 -0
  241. package/dist/src/nile-icon/icons/svg/ng-rocket-02.d.ts +5 -0
  242. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js +5 -0
  243. package/dist/src/nile-icon/icons/svg/ng-rocket-02.js.map +1 -0
  244. package/dist/src/nile-icon/icons/svg/ng-search-lg.d.ts +5 -0
  245. package/dist/src/nile-icon/icons/svg/ng-search-lg.js +5 -0
  246. package/dist/src/nile-icon/icons/svg/ng-search-lg.js.map +1 -0
  247. package/dist/src/nile-icon/icons/svg/ng-send-01.d.ts +5 -0
  248. package/dist/src/nile-icon/icons/svg/ng-send-01.js +5 -0
  249. package/dist/src/nile-icon/icons/svg/ng-send-01.js.map +1 -0
  250. package/dist/src/nile-icon/icons/svg/ng-settings-01.d.ts +5 -0
  251. package/dist/src/nile-icon/icons/svg/ng-settings-01.js +5 -0
  252. package/dist/src/nile-icon/icons/svg/ng-settings-01.js.map +1 -0
  253. package/dist/src/nile-icon/icons/svg/ng-share-04.d.ts +5 -0
  254. package/dist/src/nile-icon/icons/svg/ng-share-04.js +5 -0
  255. package/dist/src/nile-icon/icons/svg/ng-share-04.js.map +1 -0
  256. package/dist/src/nile-icon/icons/svg/ng-share-06.d.ts +5 -0
  257. package/dist/src/nile-icon/icons/svg/ng-share-06.js +5 -0
  258. package/dist/src/nile-icon/icons/svg/ng-share-06.js.map +1 -0
  259. package/dist/src/nile-icon/icons/svg/ng-stars-02.d.ts +5 -0
  260. package/dist/src/nile-icon/icons/svg/ng-stars-02.js +5 -0
  261. package/dist/src/nile-icon/icons/svg/ng-stars-02.js.map +1 -0
  262. package/dist/src/nile-icon/icons/svg/ng-trash-01.d.ts +5 -0
  263. package/dist/src/nile-icon/icons/svg/ng-trash-01.js +5 -0
  264. package/dist/src/nile-icon/icons/svg/ng-trash-01.js.map +1 -0
  265. package/dist/src/nile-icon/icons/svg/ng-trash-03.d.ts +5 -0
  266. package/dist/src/nile-icon/icons/svg/ng-trash-03.js +5 -0
  267. package/dist/src/nile-icon/icons/svg/ng-trash-03.js.map +1 -0
  268. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.d.ts +5 -0
  269. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js +5 -0
  270. package/dist/src/nile-icon/icons/svg/ng-trend-up-01.js.map +1 -0
  271. package/dist/src/nile-icon/icons/svg/ng-underline-01.d.ts +5 -0
  272. package/dist/src/nile-icon/icons/svg/ng-underline-01.js +5 -0
  273. package/dist/src/nile-icon/icons/svg/ng-underline-01.js.map +1 -0
  274. package/dist/src/nile-icon/icons/svg/ng-upload-01.d.ts +5 -0
  275. package/dist/src/nile-icon/icons/svg/ng-upload-01.js +5 -0
  276. package/dist/src/nile-icon/icons/svg/ng-upload-01.js.map +1 -0
  277. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.d.ts +5 -0
  278. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js +5 -0
  279. package/dist/src/nile-icon/icons/svg/ng-upload-cloud-02.js.map +1 -0
  280. package/dist/src/nile-icon/icons/svg/ng-user-01.d.ts +5 -0
  281. package/dist/src/nile-icon/icons/svg/ng-user-01.js +5 -0
  282. package/dist/src/nile-icon/icons/svg/ng-user-01.js.map +1 -0
  283. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.d.ts +5 -0
  284. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js +5 -0
  285. package/dist/src/nile-icon/icons/svg/ng-user-check-02-1.js.map +1 -0
  286. package/dist/src/nile-icon/icons/svg/ng-user-check-02.d.ts +5 -0
  287. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js +5 -0
  288. package/dist/src/nile-icon/icons/svg/ng-user-check-02.js.map +1 -0
  289. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.d.ts +5 -0
  290. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js +5 -0
  291. package/dist/src/nile-icon/icons/svg/ng-user-plus-02.js.map +1 -0
  292. package/dist/src/nile-icon/icons/svg/ng-user-right-01.d.ts +5 -0
  293. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js +5 -0
  294. package/dist/src/nile-icon/icons/svg/ng-user-right-01.js.map +1 -0
  295. package/dist/src/nile-icon/icons/svg/ng-users-01.d.ts +5 -0
  296. package/dist/src/nile-icon/icons/svg/ng-users-01.js +5 -0
  297. package/dist/src/nile-icon/icons/svg/ng-users-01.js.map +1 -0
  298. package/dist/src/nile-icon/icons/svg/ng-x-close.d.ts +5 -0
  299. package/dist/src/nile-icon/icons/svg/ng-x-close.js +5 -0
  300. package/dist/src/nile-icon/icons/svg/ng-x-close.js.map +1 -0
  301. package/dist/src/nile-icon/icons/svg/ng-x-square.d.ts +5 -0
  302. package/dist/src/nile-icon/icons/svg/ng-x-square.js +5 -0
  303. package/dist/src/nile-icon/icons/svg/ng-x-square.js.map +1 -0
  304. package/dist/src/nile-select/nile-select.d.ts +4 -0
  305. package/dist/src/nile-select/nile-select.js +31 -1
  306. package/dist/src/nile-select/nile-select.js.map +1 -1
  307. package/dist/src/nile-slider/index.d.ts +1 -0
  308. package/dist/src/nile-slider/index.js +2 -0
  309. package/dist/src/nile-slider/index.js.map +1 -0
  310. package/dist/src/nile-slider/nile-slider.css.d.ts +12 -0
  311. package/dist/src/nile-slider/nile-slider.css.js +110 -0
  312. package/dist/src/nile-slider/nile-slider.css.js.map +1 -0
  313. package/dist/src/nile-slider/nile-slider.d.ts +47 -0
  314. package/dist/src/nile-slider/nile-slider.js +181 -0
  315. package/dist/src/nile-slider/nile-slider.js.map +1 -0
  316. package/dist/src/nile-slider/nile-slider.template.d.ts +5 -0
  317. package/dist/src/nile-slider/nile-slider.template.js +44 -0
  318. package/dist/src/nile-slider/nile-slider.template.js.map +1 -0
  319. package/dist/src/nile-slider/types/nile-slider.enums.d.ts +10 -0
  320. package/dist/src/nile-slider/types/nile-slider.enums.js +2 -0
  321. package/dist/src/nile-slider/types/nile-slider.enums.js.map +1 -0
  322. package/dist/src/nile-slider/types/nile-slider.types.d.ts +1 -0
  323. package/dist/src/nile-slider/types/nile-slider.types.js +2 -0
  324. package/dist/src/nile-slider/types/nile-slider.types.js.map +1 -0
  325. package/dist/src/nile-slider/utils/nile-slider.utils.d.ts +11 -0
  326. package/dist/src/nile-slider/utils/nile-slider.utils.js +86 -0
  327. package/dist/src/nile-slider/utils/nile-slider.utils.js.map +1 -0
  328. package/dist/src/nile-table-body/nile-table-body.css.js +0 -4
  329. package/dist/src/nile-table-body/nile-table-body.css.js.map +1 -1
  330. package/dist/src/nile-table-body/nile-table-body.d.ts +0 -2
  331. package/dist/src/nile-table-body/nile-table-body.js +0 -11
  332. package/dist/src/nile-table-body/nile-table-body.js.map +1 -1
  333. package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js +1 -21
  334. package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js.map +1 -1
  335. package/dist/src/nile-table-cell-item/nile-table-cell-item.d.ts +0 -3
  336. package/dist/src/nile-table-cell-item/nile-table-cell-item.js +8 -27
  337. package/dist/src/nile-table-cell-item/nile-table-cell-item.js.map +1 -1
  338. package/dist/src/nile-table-header-item/nile-table-header-item.css.js +0 -5
  339. package/dist/src/nile-table-header-item/nile-table-header-item.css.js.map +1 -1
  340. package/dist/src/nile-table-header-item/nile-table-header-item.d.ts +0 -3
  341. package/dist/src/nile-table-header-item/nile-table-header-item.js +35 -86
  342. package/dist/src/nile-table-header-item/nile-table-header-item.js.map +1 -1
  343. package/dist/tsconfig.tsbuildinfo +1 -1
  344. package/package.json +1 -1
  345. package/src/nile-select/nile-select.ts +37 -1
  346. package/src/nile-table-body/nile-table-body.css.ts +0 -4
  347. package/src/nile-table-body/nile-table-body.ts +0 -10
  348. package/src/nile-table-cell-item/nile-table-cell-item.css.ts +1 -21
  349. package/src/nile-table-cell-item/nile-table-cell-item.ts +5 -22
  350. package/src/nile-table-header-item/nile-table-header-item.css.ts +0 -5
  351. package/src/nile-table-header-item/nile-table-header-item.ts +45 -94
  352. package/vscode-html-custom-data.json +5 -16
  353. package/dist/internal/resizable-table-helper.cjs.js +0 -2
  354. package/dist/internal/resizable-table-helper.cjs.js.map +0 -1
  355. package/dist/internal/resizable-table-helper.esm.js +0 -1
  356. package/dist/internal/resizable-table-styles.cjs.js +0 -2
  357. package/dist/internal/resizable-table-styles.cjs.js.map +0 -1
  358. package/dist/internal/resizable-table-styles.esm.js +0 -120
  359. package/dist/src/internal/resizable-table-helper.d.ts +0 -59
  360. package/dist/src/internal/resizable-table-helper.js +0 -111
  361. package/dist/src/internal/resizable-table-helper.js.map +0 -1
  362. package/dist/src/internal/resizable-table-styles.d.ts +0 -16
  363. package/dist/src/internal/resizable-table-styles.js +0 -137
  364. package/dist/src/internal/resizable-table-styles.js.map +0 -1
  365. package/src/internal/resizable-table-helper.ts +0 -151
  366. package/src/internal/resizable-table-styles.ts +0 -144
@@ -0,0 +1,171 @@
1
+ /**
2
+ * Copyright Aquera Inc 2025
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { __decorate } from "tslib";
8
+ import { styles } from './nile-file-preview.css';
9
+ import NileElement from '../internal/nile-element';
10
+ import { customElement, property } from 'lit/decorators.js';
11
+ import { generatePreviewUrl } from './utils';
12
+ import { FilePreviewState, FilePreviewVariant, FilePreviewErrorMessages, FilePreviewEvent } from './types';
13
+ import { html } from 'lit';
14
+ import { getHorizontalErrorState, getHorizontalNoPreviewState, getHorizontalPreviewState, getHorizontalUploadingState, getVerticalErrorState, getVerticalNoPreviewState, getVerticalPreviewState, getVerticalUploadingState } from './nile-file-preview.template';
15
+ /**
16
+ * Nile preview component.
17
+ *
18
+ * @tag nile-preview
19
+ *
20
+ */
21
+ let NileFilePreview = class NileFilePreview extends NileElement {
22
+ constructor() {
23
+ super(...arguments);
24
+ this.errorMessage = "";
25
+ this.fileUrl = "";
26
+ this.uploadStatus = 0;
27
+ this.allowedTypes = [];
28
+ this.state = FilePreviewState.DEFAULT;
29
+ this.variant = FilePreviewVariant.HORIZONTAL;
30
+ this.inputFileName = "";
31
+ this.inputFileHtml = null;
32
+ this.originalUrl = "";
33
+ this.dummyFile = new File(['sdfjbs ewhf'], "dummy.txt", { type: "text/plain" });
34
+ /* #endregion */
35
+ }
36
+ /**
37
+ * The styles for nile-preview
38
+ * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
39
+ */
40
+ static get styles() {
41
+ return [styles];
42
+ }
43
+ /**
44
+ * Render method
45
+ * @slot This is a slot test
46
+ */
47
+ connectedCallback() {
48
+ super.connectedCallback();
49
+ this.emit(FilePreviewEvent.NILE_INIT);
50
+ }
51
+ updated(changedProperties) {
52
+ if (changedProperties.has('uploadStatus') && this.uploadStatus) {
53
+ if (this.uploadStatus < 100) {
54
+ this.createUploadState(this.inputFile, this.uploadStatus);
55
+ this.emit(FilePreviewEvent.NILE_UPLOADING);
56
+ }
57
+ else {
58
+ this.createState(this.inputFile);
59
+ }
60
+ }
61
+ else if (changedProperties.has('inputFile') && this.inputFile) {
62
+ this.createState(this.inputFile);
63
+ this.emit(FilePreviewEvent.NILE_RECEIVE);
64
+ }
65
+ else if (changedProperties.has('fileUrl') && this.fileUrl) {
66
+ this.handleFileUrl(this.fileUrl);
67
+ this.emit(FilePreviewEvent.NILE_RECEIVE);
68
+ }
69
+ else if (changedProperties.has('errorMessage')) {
70
+ this.createState(this.inputFile);
71
+ }
72
+ }
73
+ createUploadState(file, uploadStatus) {
74
+ const isHorizontal = this.variant === FilePreviewVariant.HORIZONTAL;
75
+ this.inputFileHtml = isHorizontal
76
+ ? getHorizontalUploadingState(file, uploadStatus)
77
+ : getVerticalUploadingState(file, uploadStatus);
78
+ this.requestUpdate();
79
+ }
80
+ async handleFileUrl(url) {
81
+ this.originalUrl = url;
82
+ try {
83
+ const response = await fetch(url);
84
+ const blob = await response.blob();
85
+ const fileName = this.inputFileName || url.split('/').pop() || FilePreviewErrorMessages.UNKNOWN_FILE_NAME;
86
+ const file = new File([blob], fileName, { type: blob.type });
87
+ this.createState(file);
88
+ }
89
+ catch (error) {
90
+ const dummyFile = new File([], this.inputFileName || FilePreviewErrorMessages.UNKNOWN_FILE_NAME, { type: 'application/octet-stream' });
91
+ this.errorMessage = FilePreviewErrorMessages.FAILED_TO_LOAD;
92
+ this.inputFileHtml = this.variant === FilePreviewVariant.HORIZONTAL
93
+ ? getHorizontalErrorState(dummyFile, this.errorMessage, this.originalUrl)
94
+ : getVerticalErrorState(dummyFile, this.errorMessage, this.originalUrl);
95
+ this.requestUpdate();
96
+ }
97
+ }
98
+ async createState(file) {
99
+ const isHorizontal = this.variant === FilePreviewVariant.HORIZONTAL;
100
+ if (this.allowedTypes.includes(file.type) && !this.errorMessage) {
101
+ if (file.type.startsWith('image/')) {
102
+ try {
103
+ const url = await generatePreviewUrl(file);
104
+ this.inputFileHtml = isHorizontal
105
+ ? getHorizontalPreviewState(url, file, this.originalUrl)
106
+ : getVerticalPreviewState(url, file, this.originalUrl);
107
+ }
108
+ catch (error) {
109
+ this.inputFileHtml = isHorizontal
110
+ ? getHorizontalNoPreviewState(file, this.originalUrl)
111
+ : getVerticalNoPreviewState(file, this.originalUrl);
112
+ }
113
+ }
114
+ else {
115
+ this.inputFileHtml = isHorizontal
116
+ ? getHorizontalNoPreviewState(file, this.originalUrl)
117
+ : getVerticalNoPreviewState(file, this.originalUrl);
118
+ }
119
+ }
120
+ else {
121
+ this.errorMessage = !this.errorMessage
122
+ ? FilePreviewErrorMessages.INVALID_FORMAT
123
+ : FilePreviewErrorMessages.UPLOAD_CANCEL;
124
+ this.inputFileHtml = isHorizontal
125
+ ? getHorizontalErrorState(file, this.errorMessage, this.originalUrl)
126
+ : getVerticalErrorState(file, this.errorMessage, this.originalUrl);
127
+ }
128
+ this.requestUpdate();
129
+ }
130
+ render() {
131
+ return html `
132
+ ${this.inputFileHtml ?
133
+ this.inputFileHtml :
134
+ html ``}
135
+ `;
136
+ }
137
+ disconnectedCallback() {
138
+ super.disconnectedCallback();
139
+ this.emit(FilePreviewEvent.NILE_DESTROY);
140
+ }
141
+ };
142
+ __decorate([
143
+ property({ type: String })
144
+ ], NileFilePreview.prototype, "errorMessage", void 0);
145
+ __decorate([
146
+ property({ type: Object })
147
+ ], NileFilePreview.prototype, "inputFile", void 0);
148
+ __decorate([
149
+ property({ type: String })
150
+ ], NileFilePreview.prototype, "fileUrl", void 0);
151
+ __decorate([
152
+ property({ type: Number })
153
+ ], NileFilePreview.prototype, "uploadStatus", void 0);
154
+ __decorate([
155
+ property({ type: Array })
156
+ ], NileFilePreview.prototype, "allowedTypes", void 0);
157
+ __decorate([
158
+ property({ type: String })
159
+ ], NileFilePreview.prototype, "state", void 0);
160
+ __decorate([
161
+ property({ type: String })
162
+ ], NileFilePreview.prototype, "variant", void 0);
163
+ __decorate([
164
+ property({ type: String })
165
+ ], NileFilePreview.prototype, "inputFileName", void 0);
166
+ NileFilePreview = __decorate([
167
+ customElement('nile-file-preview')
168
+ ], NileFilePreview);
169
+ export { NileFilePreview };
170
+ export default NileFilePreview;
171
+ //# sourceMappingURL=nile-file-preview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-file-preview.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.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 {styles} from './nile-file-preview.css';\nimport NileElement from '../internal/nile-element';\nimport { customElement, property } from 'lit/decorators.js';\nimport { generatePreviewUrl } from './utils';\nimport { FilePreviewState, FilePreviewVariant, FilePreviewErrorMessages, FilePreviewEvent } from './types';\nimport { LitElement, html, CSSResultArray, TemplateResult, PropertyValues } from 'lit';\nimport {\n getHorizontalErrorState,\n getHorizontalNoPreviewState,\n getHorizontalPreviewState,\n getHorizontalUploadingState,\n getVerticalErrorState,\n getVerticalNoPreviewState,\n getVerticalPreviewState,\n getVerticalUploadingState\n} from './nile-file-preview.template';\n\n\n/**\n * Nile preview component.\n *\n * @tag nile-preview\n *\n */\n@customElement('nile-file-preview')\nexport class NileFilePreview extends NileElement {\n /**\n * The styles for nile-preview\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n @property({ type: String }) errorMessage: string = \"\";\n\t@property({ type: Object }) inputFile: File; \n\t@property({ type: String }) fileUrl: string = \"\";\n\t@property({ type: Number }) uploadStatus: number = 0;\n @property({ type: Array }) allowedTypes: string[] = [];\n\t@property({ type: String }) state: FilePreviewState = FilePreviewState.DEFAULT;\n\t@property({ type: String }) variant: FilePreviewVariant = FilePreviewVariant.HORIZONTAL;\n @property({ type: String }) inputFileName: string = \"\";\n\tprivate inputFileHtml: TemplateResult | null = null;\n private originalUrl: string = \"\";\n\n /**\n * Render method\n * @slot This is a slot test\n */\n\n connectedCallback(): void {\n super.connectedCallback();\n this.emit(FilePreviewEvent.NILE_INIT);\n }\n\n protected updated(changedProperties: PropertyValues): void {\n if(changedProperties.has('uploadStatus') && this.uploadStatus) {\n if(this.uploadStatus < 100) {\n this.createUploadState(this.inputFile, this.uploadStatus);\n this.emit(FilePreviewEvent.NILE_UPLOADING);\n\n } else {\n this.createState(this.inputFile);\n }\n\n } else if (changedProperties.has('inputFile') && this.inputFile) {\n this.createState(this.inputFile);\n this.emit(FilePreviewEvent.NILE_RECEIVE);\n\n } else if (changedProperties.has('fileUrl') && this.fileUrl) {\n this.handleFileUrl(this.fileUrl);\n this.emit(FilePreviewEvent.NILE_RECEIVE);\n\n } else if (changedProperties.has('errorMessage')) {\n this.createState(this.inputFile);\n }\n }\n\n private createUploadState( file: File, uploadStatus: number): void {\n const isHorizontal = this.variant === FilePreviewVariant.HORIZONTAL;\n\n this.inputFileHtml = isHorizontal \n ? getHorizontalUploadingState(file, uploadStatus)\n : getVerticalUploadingState(file, uploadStatus);\n\n this.requestUpdate();\n }\n\n private async handleFileUrl(url: string): Promise<void> {\n this.originalUrl = url;\n try {\n const response = await fetch(url);\n const blob = await response.blob();\n const fileName = this.inputFileName || url.split('/').pop() || FilePreviewErrorMessages.UNKNOWN_FILE_NAME;\n const file = new File([blob], fileName, { type: blob.type });\n\n this.createState(file);\n } catch (error) {\n const dummyFile = new File([], this.inputFileName || FilePreviewErrorMessages.UNKNOWN_FILE_NAME, { type: 'application/octet-stream' });\n this.errorMessage = FilePreviewErrorMessages.FAILED_TO_LOAD;\n\n this.inputFileHtml = this.variant === FilePreviewVariant.HORIZONTAL\n ? getHorizontalErrorState(dummyFile, this.errorMessage, this.originalUrl)\n : getVerticalErrorState(dummyFile, this.errorMessage, this.originalUrl);\n this.requestUpdate();\n }\n }\n\n\tpublic async createState(file: File): Promise<void> {\n const isHorizontal = this.variant === FilePreviewVariant.HORIZONTAL;\n\n if (this.allowedTypes.includes(file.type) && !this.errorMessage) { \n if (file.type.startsWith('image/')) {\n try {\n const url = await generatePreviewUrl(file);\n this.inputFileHtml = isHorizontal\n ? getHorizontalPreviewState(url, file, this.originalUrl)\n : getVerticalPreviewState(url, file, this.originalUrl);\n } catch (error) {\n this.inputFileHtml = isHorizontal\n ? getHorizontalNoPreviewState(file, this.originalUrl)\n : getVerticalNoPreviewState(file, this.originalUrl); \n }\n } else {\n this.inputFileHtml = isHorizontal\n ? getHorizontalNoPreviewState(file, this.originalUrl)\n : getVerticalNoPreviewState(file, this.originalUrl);\n }\n } else {\n this.errorMessage = !this.errorMessage\n ? FilePreviewErrorMessages.INVALID_FORMAT\n : FilePreviewErrorMessages.UPLOAD_CANCEL;\n\n this.inputFileHtml = isHorizontal\n ? getHorizontalErrorState(file, this.errorMessage, this.originalUrl)\n : getVerticalErrorState(file, this.errorMessage, this.originalUrl);\n }\n this.requestUpdate();\n }\n\n private dummyFile = new File(['sdfjbs ewhf'], \"dummy.txt\", { type: \"text/plain\" });\n\n public render(): TemplateResult {\n return html`\n\t\t\t${this.inputFileHtml ?\n\t\t\t\tthis.inputFileHtml :\n\t\t\t\thtml``\n\t\t\t}\n `;\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.emit(FilePreviewEvent.NILE_DESTROY);\n }\n\n /* #endregion */\n}\n\nexport default NileFilePreview;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-file-preview': NileFilePreview;\n }\n}"]}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Template File for nile-preview component
3
+ */
4
+ import './nile-file-preview.css';
5
+ import { TemplateResult } from 'lit';
6
+ export declare function getHorizontalUploadingState(file: File, uploadStatus: number): TemplateResult;
7
+ export declare function getHorizontalPreviewState(url: string, file: File, originalUrl: string): TemplateResult;
8
+ export declare function getHorizontalNoPreviewState(file: File, originalUrl: string): TemplateResult;
9
+ export declare function getHorizontalErrorState(file: File, errorMessage: string, originalUrl: string): TemplateResult;
10
+ export declare function getVerticalUploadingState(file: File, uploadStatus: number): TemplateResult;
11
+ export declare function getVerticalPreviewState(url: string, file: File, originalUrl: string): TemplateResult;
12
+ export declare function getVerticalNoPreviewState(file: File, originalUrl: string): TemplateResult;
13
+ export declare function getVerticalErrorState(file: File, errorMessage: string, originalUrl: string): TemplateResult;
@@ -0,0 +1,210 @@
1
+ /**
2
+ * Template File for nile-preview component
3
+ */
4
+ import './nile-file-preview.css';
5
+ import { html } from 'lit';
6
+ import { removeFile, cancelFileUpload } from './utils';
7
+ export function getHorizontalUploadingState(file, uploadStatus) {
8
+ return html `
9
+ <div class="uploading">
10
+ <nile-loader width="24" height="24"></nile-loader>
11
+ <div class="progress-bar-container">
12
+ <div class="progress-bar-percent">
13
+ <p>Uploading File...</p>
14
+ <p>${uploadStatus}%</p>
15
+ </div>
16
+ <nile-progress-bar
17
+ value="${uploadStatus}"
18
+ ></nile-progress-bar>
19
+ <p>${file.name}</p>
20
+ </div>
21
+ <slot @click=${(e) => cancelFileUpload(file, e)} name="cancelIcon">
22
+ <nile-icon
23
+ name="close"
24
+ size="14"
25
+ class="icon"
26
+ ></nile-icon>
27
+ </slot>
28
+ </div>
29
+ `;
30
+ }
31
+ export function getHorizontalPreviewState(url, file, originalUrl) {
32
+ return html `
33
+ <div class="preview horizontal-div">
34
+ <div class="preview-inner">
35
+ <div class="preview-image-container">
36
+ <img
37
+ class="image-preview"
38
+ src=${url}
39
+ alt=${file.name}
40
+ />
41
+ </div>
42
+ <div class="preview-file-info">
43
+ <p>${file.name}</p>
44
+ <p>${(file.type.split('/')[1]).toUpperCase()} &#8226; ${(Number(file.size) / 1024).toFixed(0)}KB</p>
45
+ </div>
46
+ </div>
47
+ <slot name="cancelIcon">
48
+ <nile-icon
49
+ @click=${(e) => removeFile(file, e, originalUrl)}
50
+ name="trash"
51
+ size="14"
52
+ class="icon"
53
+ ></nile-icon>
54
+ </slot>
55
+ </div>
56
+ `;
57
+ }
58
+ export function getHorizontalNoPreviewState(file, originalUrl) {
59
+ return html `
60
+ <div class="no-preview horizontal-div">
61
+ <div class="no-preview-container">
62
+ <div class="document-icon">
63
+ <nile-icon name="general" size="20" color="var(--nile-colors-blue-500, var(--ng-componentcolors-utility-brand-600))"></nile-icon>
64
+ </div>
65
+ <div class="preview-file-info">
66
+ <p>${file.name}</p>
67
+ <p>${(file.type.split('/')[1]).toUpperCase()} &#8226; ${(Number(file.size) / 1034).toFixed(0)}KB</p>
68
+ </div>
69
+ </div>
70
+ <div>
71
+ <slot name="cancelIcon">
72
+ <nile-icon
73
+ @click=${(e) => removeFile(file, e, originalUrl)}
74
+ name="trash"
75
+ size="14"
76
+ class="icon"
77
+ ></nile-icon>
78
+ </slot>
79
+ </div>
80
+ </div>
81
+ `;
82
+ }
83
+ export function getHorizontalErrorState(file, errorMessage, originalUrl) {
84
+ return html `
85
+ <div class="error horizontal-div">
86
+ <div class="error-container">
87
+ <div class="error-icon">
88
+ <nile-icon name="info-icon" size="20" color="var(--nile-colors-red-700, var(--ng-colors-text-error-primary-600))"></nile-icon>
89
+ </div>
90
+ <div class="file-info">
91
+ <p>${file.name}</p>
92
+ <nile-tooltip content=${errorMessage}>
93
+ <p>${errorMessage}</p>
94
+ </nile-tooltip>
95
+ </div>
96
+ </div>
97
+ <slot name="cancelIcon">
98
+ <nile-icon
99
+ @click=${(e) => removeFile(file, e, originalUrl)}
100
+ name="close"
101
+ size="14"
102
+ class="icon"
103
+ ></nile-icon>
104
+ </slot>
105
+ </div>
106
+ `;
107
+ }
108
+ // vertical states
109
+ export function getVerticalUploadingState(file, uploadStatus) {
110
+ return html `
111
+ <div class="vertical-div vertical-uploading">
112
+ <div class="loading">
113
+ <nile-loader width="24" height="24"></nile-loader>
114
+ </div>
115
+
116
+ <div class="progress-bar-container">
117
+ <div class="progress-bar-percent">
118
+ <p>Uploading...</p>
119
+ <p>${uploadStatus}%</p>
120
+ </div>
121
+ <nile-progress-bar value=${uploadStatus}></nile-progress-bar>
122
+ <p>${file.name}</p>
123
+ </div>
124
+
125
+ <slot name="cancelIcon">
126
+ <nile-icon
127
+ @click=${(e) => cancelFileUpload(file, e)}
128
+ name="close"
129
+ size="14"
130
+ class="icon corner-icon"
131
+ ></nile-icon>
132
+ </slot>
133
+ </div>
134
+ `;
135
+ }
136
+ export function getVerticalPreviewState(url, file, originalUrl) {
137
+ return html `
138
+ <div class="vertical-div vertical-preview">
139
+ <div>
140
+ <img
141
+ class="image-preview"
142
+ src=${url}
143
+ alt=${file.name}
144
+ />
145
+ </div>
146
+
147
+ <div class="content-container">
148
+ <p>${file.name}</p>
149
+ <p>${(file.type.split('/')[1]).toUpperCase()} &#8226; ${(Number(file.size) / 1024).toFixed(0)}KB</p>
150
+ </div>
151
+
152
+ <slot name="cancelIcon">
153
+ <nile-icon
154
+ @click=${(e) => removeFile(file, e, originalUrl)}
155
+ name="trash"
156
+ size="14"
157
+ class="icon corner-icon"
158
+ ></nile-icon>
159
+ </slot>
160
+ </div>
161
+ `;
162
+ }
163
+ export function getVerticalNoPreviewState(file, originalUrl) {
164
+ return html `
165
+ <div class="vertical-div vertical-no-preview">
166
+ <div class="vertical-document-icon">
167
+ <nile-icon name="general" size="20" color="var(--nile-colors-blue-500, var(--ng-componentcolors-utility-brand-600))"></nile-icon>
168
+ </div>
169
+
170
+ <div class="content-container">
171
+ <p>${file.name}</p>
172
+ <p>${file.type} &#8226; ${(Number(file.size) / 1024).toFixed(0)}KB</p>
173
+ </div>
174
+
175
+ <slot name="cancelIcon">
176
+ <nile-icon
177
+ @click=${(e) => removeFile(file, e, originalUrl)}
178
+ name="trash"
179
+ size="14"
180
+ class="icon corner-icon"
181
+ ></nile-icon>
182
+ </slot>
183
+ </div>
184
+ `;
185
+ }
186
+ export function getVerticalErrorState(file, errorMessage, originalUrl) {
187
+ return html `
188
+ <div class="vertical-div vertical-error">
189
+ <div class="vertical-document-icon error-bg">
190
+ <nile-icon name="info-icon" size="20" color="var(--nile-colors-red-700, var(--ng-colors-text-error-primary-600))"></nile-icon>
191
+ </div>
192
+
193
+ <div class="file-info-vertical-state">
194
+ <p>${file.name}</p>
195
+ <nile-tooltip content=${errorMessage}>
196
+ <p>${errorMessage}</p>
197
+ </nile-tooltip>
198
+ </div>
199
+
200
+ <slot name="cancelIcon" @click=${(e) => removeFile(file, e, originalUrl)}>
201
+ <nile-icon
202
+ name="close"
203
+ size="14"
204
+ class="icon corner-icon"
205
+ ></nile-icon>
206
+ </slot>
207
+ </div>
208
+ `;
209
+ }
210
+ //# sourceMappingURL=nile-file-preview.template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-file-preview.template.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.template.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Template File for nile-preview component\n */\n\nimport './nile-file-preview.css';\nimport { html, TemplateResult } from 'lit';\nimport { FilePreviewErrorMessages, RemoveFileDetail } from './types';\nimport { removeFile, cancelFileUpload } from './utils';\n\n export function getHorizontalUploadingState(\n file: File,\n uploadStatus: number\n ): TemplateResult {\n return html`\n <div class=\"uploading\">\n <nile-loader width=\"24\" height=\"24\"></nile-loader>\n <div class=\"progress-bar-container\">\n <div class=\"progress-bar-percent\">\n <p>Uploading File...</p>\n <p>${uploadStatus}%</p>\n </div>\n <nile-progress-bar\n value=\"${uploadStatus}\"\n ></nile-progress-bar>\n <p>${file.name}</p>\n </div>\n <slot @click=${(e: CustomEvent<RemoveFileDetail>) => cancelFileUpload(file, e)} name=\"cancelIcon\">\n <nile-icon\n name=\"close\"\n size=\"14\"\n class=\"icon\"\n ></nile-icon>\n </slot>\n </div>\n `;\n }\n\nexport function getHorizontalPreviewState(\n url: string,\n file: File,\n originalUrl: string\n): TemplateResult {\n return html`\n <div class=\"preview horizontal-div\">\n <div class=\"preview-inner\">\n <div class=\"preview-image-container\">\n <img\n class=\"image-preview\"\n src=${url}\n alt=${file.name}\n />\n </div>\n <div class=\"preview-file-info\">\n <p>${file.name}</p>\n <p>${(file.type.split('/')[1]).toUpperCase()} &#8226; ${(Number(file.size) / 1024).toFixed(0)}KB</p>\n </div>\n </div>\n <slot name=\"cancelIcon\">\n <nile-icon\n @click=${(e: CustomEvent<RemoveFileDetail>) => removeFile(file, e, originalUrl)}\n name=\"trash\"\n size=\"14\"\n class=\"icon\"\n ></nile-icon>\n </slot>\n </div>\n `;\n}\n\nexport function getHorizontalNoPreviewState(\n file: File,\n originalUrl: string\n): TemplateResult {\n return html`\n <div class=\"no-preview horizontal-div\">\n <div class=\"no-preview-container\">\n <div class=\"document-icon\">\n <nile-icon name=\"general\" size=\"20\" color=\"var(--nile-colors-blue-500, var(--ng-componentcolors-utility-brand-600))\"></nile-icon>\n </div>\n <div class=\"preview-file-info\">\n <p>${file.name}</p>\n <p>${(file.type.split('/')[1]).toUpperCase()} &#8226; ${(Number(file.size) / 1034).toFixed(0)}KB</p>\n </div>\n </div>\n <div>\n <slot name=\"cancelIcon\">\n <nile-icon\n @click=${(e: CustomEvent<RemoveFileDetail>) => removeFile(file, e, originalUrl)}\n name=\"trash\"\n size=\"14\"\n class=\"icon\"\n ></nile-icon>\n </slot>\n </div>\n </div>\n `;\n}\n\nexport function getHorizontalErrorState(\n file: File,\n errorMessage: string,\n originalUrl: string\n): TemplateResult {\n return html`\n <div class=\"error horizontal-div\">\n <div class=\"error-container\">\n <div class=\"error-icon\">\n <nile-icon name=\"info-icon\" size=\"20\" color=\"var(--nile-colors-red-700, var(--ng-colors-text-error-primary-600))\"></nile-icon>\n </div>\n <div class=\"file-info\">\n <p>${file.name}</p>\n <nile-tooltip content=${errorMessage}>\n <p>${errorMessage}</p>\n </nile-tooltip>\n </div>\n </div>\n <slot name=\"cancelIcon\">\n <nile-icon\n @click=${(e: CustomEvent<RemoveFileDetail>) => removeFile(file, e, originalUrl)}\n name=\"close\"\n size=\"14\"\n class=\"icon\"\n ></nile-icon>\n </slot>\n </div>\n `;\n}\n\n// vertical states\nexport function getVerticalUploadingState(\n file: File,\n uploadStatus: number\n): TemplateResult {\n return html`\n <div class=\"vertical-div vertical-uploading\">\n <div class=\"loading\">\n <nile-loader width=\"24\" height=\"24\"></nile-loader>\n </div>\n\n <div class=\"progress-bar-container\">\n <div class=\"progress-bar-percent\">\n <p>Uploading...</p>\n <p>${uploadStatus}%</p>\n </div>\n <nile-progress-bar value=${uploadStatus}></nile-progress-bar>\n <p>${file.name}</p>\n </div>\n\n <slot name=\"cancelIcon\">\n <nile-icon\n @click=${(e: CustomEvent<RemoveFileDetail>) => cancelFileUpload(file, e)}\n name=\"close\"\n size=\"14\"\n class=\"icon corner-icon\"\n ></nile-icon>\n </slot>\n </div>\n `;\n}\n\n\nexport function getVerticalPreviewState(\n url: string,\n file: File,\n originalUrl: string\n): TemplateResult {\n return html`\n <div class=\"vertical-div vertical-preview\">\n <div>\n <img\n class=\"image-preview\"\n src=${url}\n alt=${file.name}\n />\n </div>\n\n <div class=\"content-container\">\n <p>${file.name}</p>\n <p>${(file.type.split('/')[1]).toUpperCase()} &#8226; ${(Number(file.size) / 1024).toFixed(0)}KB</p>\n </div>\n\n <slot name=\"cancelIcon\">\n <nile-icon\n @click=${(e: CustomEvent<RemoveFileDetail>) => removeFile(file, e, originalUrl)}\n name=\"trash\"\n size=\"14\"\n class=\"icon corner-icon\"\n ></nile-icon>\n </slot>\n </div>\n `;\n}\n\nexport function getVerticalNoPreviewState(\n file: File,\n originalUrl: string\n): TemplateResult {\n return html`\n <div class=\"vertical-div vertical-no-preview\">\n <div class=\"vertical-document-icon\">\n <nile-icon name=\"general\" size=\"20\" color=\"var(--nile-colors-blue-500, var(--ng-componentcolors-utility-brand-600))\"></nile-icon>\n </div>\n\n <div class=\"content-container\">\n <p>${file.name}</p>\n <p>${file.type} &#8226; ${(Number(file.size) / 1024).toFixed(0)}KB</p>\n </div>\n\n <slot name=\"cancelIcon\">\n <nile-icon\n @click=${(e: CustomEvent<RemoveFileDetail>) => removeFile(file, e, originalUrl)}\n name=\"trash\"\n size=\"14\"\n class=\"icon corner-icon\"\n ></nile-icon>\n </slot>\n </div>\n `;\n}\n\nexport function getVerticalErrorState(\n file: File,\n errorMessage: string,\n originalUrl: string\n): TemplateResult {\n return html`\n <div class=\"vertical-div vertical-error\">\n <div class=\"vertical-document-icon error-bg\">\n <nile-icon name=\"info-icon\" size=\"20\" color=\"var(--nile-colors-red-700, var(--ng-colors-text-error-primary-600))\"></nile-icon>\n </div>\n\n <div class=\"file-info-vertical-state\">\n <p>${file.name}</p>\n <nile-tooltip content=${errorMessage}>\n <p>${errorMessage}</p>\n </nile-tooltip>\n </div>\n\n <slot name=\"cancelIcon\" @click=${(e: CustomEvent<RemoveFileDetail>) => removeFile(file, e, originalUrl)}>\n <nile-icon\n name=\"close\"\n size=\"14\"\n class=\"icon corner-icon\"\n ></nile-icon>\n </slot>\n </div>\n `;\n}"]}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Copyright Aquera Inc 2025
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import './nile-file-preview';
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Copyright Aquera Inc 2025
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { fixture, assert, expect, html } from '@open-wc/testing';
8
+ import './nile-file-preview'; // Just import to register the element
9
+ describe('<nile-preview>', () => {
10
+ let element;
11
+ beforeEach(async () => {
12
+ element = await fixture(html `<nile-file-preview></nile-file-preview>`);
13
+ });
14
+ it('passes accessibility test', async () => {
15
+ await expect(element).to.be.accessible();
16
+ });
17
+ it('renders with the correct tag name', () => {
18
+ expect(element.tagName.toLowerCase()).to.equal('nile-preview');
19
+ });
20
+ it('renders with slot content when provided', async () => {
21
+ const testContent = 'Test Content';
22
+ element = await fixture(html `<nile-file-preview>${testContent}</nile-file-preview>`);
23
+ const slot = element.shadowRoot.querySelector('slot');
24
+ assert.exists(slot, 'Slot should exist');
25
+ const assignedNodes = slot.assignedNodes({ flatten: true });
26
+ expect(assignedNodes.length).to.be.greaterThan(0);
27
+ expect(assignedNodes[0].textContent?.trim()).to.equal(testContent);
28
+ });
29
+ });
30
+ //# sourceMappingURL=nile-file-preview.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-file-preview.test.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,qBAAqB,CAAC,CAAC,sCAAsC;AAEpE,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAI,OAAoB,CAAC;IAEzB,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAA,yCAAyC,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,WAAW,GAAG,cAAc,CAAC;QACnC,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAA,sBAAsB,WAAW,sBAAsB,CAAC,CAAC;QAErF,MAAM,IAAI,GAAI,OAAO,CAAC,UAAW,CAAC,aAAa,CAAC,MAAM,CAAqB,CAAC;QAC5E,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAEzC,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACL,CAAC,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\n \nimport { fixture, assert, expect, html } from '@open-wc/testing';\nimport './nile-file-preview'; // Just import to register the element\n\ndescribe('<nile-preview>', () => {\n let element: HTMLElement;\n\n beforeEach(async () => {\n element = await fixture(html`<nile-file-preview></nile-file-preview>`);\n });\n\n it('passes accessibility test', async () => {\n await expect(element).to.be.accessible();\n });\n\n it('renders with the correct tag name', () => {\n expect(element.tagName.toLowerCase()).to.equal('nile-preview');\n });\n\n it('renders with slot content when provided', async () => {\n const testContent = 'Test Content';\n element = await fixture(html`<nile-file-preview>${testContent}</nile-file-preview>`);\n \n const slot = (element.shadowRoot!.querySelector('slot') as HTMLSlotElement);\n assert.exists(slot, 'Slot should exist');\n\n const assignedNodes = slot.assignedNodes({ flatten: true });\n expect(assignedNodes.length).to.be.greaterThan(0);\n expect(assignedNodes[0].textContent?.trim()).to.equal(testContent);\n });\n});"]}
@@ -0,0 +1,2 @@
1
+ export * from './nile-file-preview.enums';
2
+ export * from './nile-file-preview.interface';
@@ -0,0 +1,3 @@
1
+ export * from './nile-file-preview.enums';
2
+ export * from './nile-file-preview.interface';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/nile-file-preview/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC","sourcesContent":["export * from './nile-file-preview.enums';\nexport * from './nile-file-preview.interface';"]}
@@ -0,0 +1,28 @@
1
+ export declare enum FilePreviewState {
2
+ DEFAULT = "default",
3
+ UPLOADING = "uploading",
4
+ PREVIEW = "preview",
5
+ NO_PREVIEW = "no-preview",
6
+ ERROR = "error"
7
+ }
8
+ export declare enum FilePreviewVariant {
9
+ HORIZONTAL = "horizontal",
10
+ VERTICAL = "vertical"
11
+ }
12
+ export declare enum FilePreviewErrorMessages {
13
+ INVALID_FORMAT = "Invalid File Format. Please try again.",
14
+ SIZE_LIMIT = "Size limit exceeded",
15
+ FAILED_TO_LOAD = "Failed to load file from URL",
16
+ UNKNOWN_FILE_NAME = "unknown-file",
17
+ UPLOAD_CANCEL = "File upload cancelled.",
18
+ NO_FILE_SELECTED = "No file selected.",
19
+ UNABLE_TO_GENEARTE_URL = "Unable to generate the url."
20
+ }
21
+ export declare enum FilePreviewEvent {
22
+ NILE_INIT = "nile-init",
23
+ NILE_RECEIVE = "nile-receive",
24
+ NILE_UPLOADING = "nile-uploding",
25
+ NILE_REMOVE = "nile-remove",
26
+ NILE_CANCEL_UPLOAD = "nile-cancel-upload",
27
+ NILE_DESTROY = "nile-destroy"
28
+ }
@@ -0,0 +1,33 @@
1
+ export var FilePreviewState;
2
+ (function (FilePreviewState) {
3
+ FilePreviewState["DEFAULT"] = "default";
4
+ FilePreviewState["UPLOADING"] = "uploading";
5
+ FilePreviewState["PREVIEW"] = "preview";
6
+ FilePreviewState["NO_PREVIEW"] = "no-preview";
7
+ FilePreviewState["ERROR"] = "error";
8
+ })(FilePreviewState || (FilePreviewState = {}));
9
+ export var FilePreviewVariant;
10
+ (function (FilePreviewVariant) {
11
+ FilePreviewVariant["HORIZONTAL"] = "horizontal";
12
+ FilePreviewVariant["VERTICAL"] = "vertical";
13
+ })(FilePreviewVariant || (FilePreviewVariant = {}));
14
+ export var FilePreviewErrorMessages;
15
+ (function (FilePreviewErrorMessages) {
16
+ FilePreviewErrorMessages["INVALID_FORMAT"] = "Invalid File Format. Please try again.";
17
+ FilePreviewErrorMessages["SIZE_LIMIT"] = "Size limit exceeded";
18
+ FilePreviewErrorMessages["FAILED_TO_LOAD"] = "Failed to load file from URL";
19
+ FilePreviewErrorMessages["UNKNOWN_FILE_NAME"] = "unknown-file";
20
+ FilePreviewErrorMessages["UPLOAD_CANCEL"] = "File upload cancelled.";
21
+ FilePreviewErrorMessages["NO_FILE_SELECTED"] = "No file selected.";
22
+ FilePreviewErrorMessages["UNABLE_TO_GENEARTE_URL"] = "Unable to generate the url.";
23
+ })(FilePreviewErrorMessages || (FilePreviewErrorMessages = {}));
24
+ export var FilePreviewEvent;
25
+ (function (FilePreviewEvent) {
26
+ FilePreviewEvent["NILE_INIT"] = "nile-init";
27
+ FilePreviewEvent["NILE_RECEIVE"] = "nile-receive";
28
+ FilePreviewEvent["NILE_UPLOADING"] = "nile-uploding";
29
+ FilePreviewEvent["NILE_REMOVE"] = "nile-remove";
30
+ FilePreviewEvent["NILE_CANCEL_UPLOAD"] = "nile-cancel-upload";
31
+ FilePreviewEvent["NILE_DESTROY"] = "nile-destroy";
32
+ })(FilePreviewEvent || (FilePreviewEvent = {}));
33
+ //# sourceMappingURL=nile-file-preview.enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-file-preview.enums.js","sourceRoot":"","sources":["../../../../src/nile-file-preview/types/nile-file-preview.enums.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,2CAAuB,CAAA;IACvB,uCAAmB,CAAA;IACnB,6CAAyB,CAAA;IACzB,mCAAe,CAAA;AACjB,CAAC,EANW,gBAAgB,KAAhB,gBAAgB,QAM3B;AAED,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,2CAAqB,CAAA;AACvB,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED,MAAM,CAAN,IAAY,wBAQX;AARD,WAAY,wBAAwB;IAClC,qFAAyD,CAAA;IACzD,8DAAkC,CAAA;IAClC,2EAA+C,CAAA;IAC/C,8DAAkC,CAAA;IAClC,oEAAwC,CAAA;IACxC,kEAAsC,CAAA;IACtC,kFAAsD,CAAA;AACxD,CAAC,EARW,wBAAwB,KAAxB,wBAAwB,QAQnC;AAED,MAAM,CAAN,IAAY,gBAOX;AAPD,WAAY,gBAAgB;IAC1B,2CAAuB,CAAA;IACvB,iDAA6B,CAAA;IAC7B,oDAAgC,CAAA;IAChC,+CAA2B,CAAA;IAC3B,6DAAyC,CAAA;IACzC,iDAA6B,CAAA;AAC/B,CAAC,EAPW,gBAAgB,KAAhB,gBAAgB,QAO3B","sourcesContent":["export enum FilePreviewState {\n DEFAULT = 'default',\n UPLOADING = 'uploading',\n PREVIEW = 'preview',\n NO_PREVIEW = 'no-preview',\n ERROR = 'error'\n}\n\nexport enum FilePreviewVariant {\n HORIZONTAL = 'horizontal',\n VERTICAL = 'vertical'\n}\n\nexport enum FilePreviewErrorMessages {\n INVALID_FORMAT = \"Invalid File Format. Please try again.\",\n SIZE_LIMIT = \"Size limit exceeded\",\n FAILED_TO_LOAD = \"Failed to load file from URL\",\n UNKNOWN_FILE_NAME = 'unknown-file',\n UPLOAD_CANCEL = \"File upload cancelled.\",\n NO_FILE_SELECTED = \"No file selected.\",\n UNABLE_TO_GENEARTE_URL = \"Unable to generate the url.\"\n}\n\nexport enum FilePreviewEvent {\n NILE_INIT = \"nile-init\",\n NILE_RECEIVE = \"nile-receive\",\n NILE_UPLOADING = \"nile-uploding\",\n NILE_REMOVE = \"nile-remove\",\n NILE_CANCEL_UPLOAD = \"nile-cancel-upload\",\n NILE_DESTROY = \"nile-destroy\"\n}"]}
@@ -0,0 +1,4 @@
1
+ export type RemoveFileDetail = {
2
+ value: File;
3
+ url: string;
4
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=nile-file-preview.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-file-preview.interface.js","sourceRoot":"","sources":["../../../../src/nile-file-preview/types/nile-file-preview.interface.ts"],"names":[],"mappings":"","sourcesContent":["export type RemoveFileDetail = {\n value: File;\n url: string;\n};\n"]}
@@ -0,0 +1 @@
1
+ export * from './nile-file-preview.util';
@@ -0,0 +1,2 @@
1
+ export * from './nile-file-preview.util';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/nile-file-preview/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA","sourcesContent":["export * from './nile-file-preview.util'"]}
@@ -0,0 +1,4 @@
1
+ import { RemoveFileDetail } from "../types";
2
+ export declare const generatePreviewUrl: (file: File) => Promise<string>;
3
+ export declare const removeFile: (removeFile: File, e: CustomEvent<RemoveFileDetail>, originalUrl: string) => void;
4
+ export declare const cancelFileUpload: (file: File, e: CustomEvent<RemoveFileDetail>) => void;
@@ -0,0 +1,38 @@
1
+ import { FilePreviewEvent, FilePreviewErrorMessages } from "../types";
2
+ export const generatePreviewUrl = (file) => {
3
+ return new Promise((resolve, reject) => {
4
+ const reader = new FileReader();
5
+ if (file) {
6
+ reader.readAsDataURL(file);
7
+ }
8
+ else {
9
+ reject(FilePreviewErrorMessages.NO_FILE_SELECTED);
10
+ }
11
+ reader.onload = () => {
12
+ const previewUrl = reader.result;
13
+ resolve(previewUrl);
14
+ };
15
+ reader.onerror = (error) => {
16
+ reject(FilePreviewErrorMessages.UNABLE_TO_GENEARTE_URL);
17
+ };
18
+ });
19
+ };
20
+ export const removeFile = (removeFile, e, originalUrl) => {
21
+ if (e.target) {
22
+ e.target.dispatchEvent(new CustomEvent(FilePreviewEvent.NILE_REMOVE, {
23
+ detail: { value: removeFile, url: originalUrl },
24
+ bubbles: true,
25
+ composed: true,
26
+ }));
27
+ }
28
+ };
29
+ export const cancelFileUpload = (file, e) => {
30
+ if (e.target) {
31
+ e.target.dispatchEvent(new CustomEvent(FilePreviewEvent.NILE_CANCEL_UPLOAD, {
32
+ detail: { file: file },
33
+ bubbles: true,
34
+ composed: true,
35
+ }));
36
+ }
37
+ };
38
+ //# sourceMappingURL=nile-file-preview.util.js.map