@aquera/nile-elements 0.1.55-beta-1 → 0.1.55-patch-3

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 (638) hide show
  1. package/README.md +6 -0
  2. package/demo/index.html +0 -1
  3. package/dist/axe.min-2c0b27d0.esm.js +1 -0
  4. package/dist/axe.min-51d832fe.cjs.js +2 -0
  5. package/dist/axe.min-51d832fe.cjs.js.map +1 -0
  6. package/dist/{fixture-cb376a7f.cjs.js → fixture-28d63bc4.cjs.js} +2 -2
  7. package/dist/fixture-28d63bc4.cjs.js.map +1 -0
  8. package/dist/{fixture-c1bd203f.cjs.js → fixture-4da0d7ba.cjs.js} +3 -3
  9. package/dist/fixture-4da0d7ba.cjs.js.map +1 -0
  10. package/dist/{fixture-add72f26.esm.js → fixture-78a015b8.esm.js} +1 -1
  11. package/dist/{fixture-f2693d97.esm.js → fixture-aeed6660.esm.js} +2 -2
  12. package/dist/flow-938d2713.esm.js +17 -0
  13. package/dist/flow-eb3cbb92.cjs.js +14 -0
  14. package/dist/flow-eb3cbb92.cjs.js.map +1 -0
  15. package/dist/index.js +2 -2
  16. package/dist/internal/resizable-table-helper.cjs.js +2 -0
  17. package/dist/internal/resizable-table-helper.cjs.js.map +1 -0
  18. package/dist/internal/resizable-table-helper.esm.js +1 -0
  19. package/dist/internal/resizable-table-styles.cjs.js +2 -0
  20. package/dist/internal/resizable-table-styles.cjs.js.map +1 -0
  21. package/dist/internal/resizable-table-styles.esm.js +132 -0
  22. package/dist/lit-html-879bd16a.esm.js +7 -0
  23. package/dist/lit-html-9a84b336.cjs.js +6 -0
  24. package/dist/lit-html-9a84b336.cjs.js.map +1 -0
  25. package/dist/nile-code-editor/extensionSetup.cjs.js +3 -3
  26. package/dist/nile-code-editor/extensionSetup.cjs.js.map +1 -1
  27. package/dist/nile-code-editor/extensionSetup.esm.js +1 -1
  28. package/dist/nile-code-editor/nile-code-editor.cjs.js +2 -2
  29. package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
  30. package/dist/nile-code-editor/nile-code-editor.esm.js +2 -2
  31. package/dist/nile-file-preview/nile-file-preview.cjs.js +1 -1
  32. package/dist/nile-file-preview/nile-file-preview.cjs.js.map +1 -1
  33. package/dist/nile-file-preview/nile-file-preview.css.cjs.js +1 -1
  34. package/dist/nile-file-preview/nile-file-preview.css.cjs.js.map +1 -1
  35. package/dist/nile-file-preview/nile-file-preview.css.esm.js +25 -48
  36. package/dist/nile-file-preview/nile-file-preview.esm.js +1 -3
  37. package/dist/nile-file-preview/nile-file-preview.template.cjs.js +1 -1
  38. package/dist/nile-file-preview/nile-file-preview.template.cjs.js.map +1 -1
  39. package/dist/nile-file-preview/nile-file-preview.template.esm.js +22 -22
  40. package/dist/nile-file-preview/nile-file-preview.test.cjs.js +1 -1
  41. package/dist/nile-file-preview/nile-file-preview.test.esm.js +1 -1
  42. package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js +1 -1
  43. package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js.map +1 -1
  44. package/dist/nile-file-preview/types/nile-file-preview.enums.esm.js +1 -1
  45. package/dist/nile-file-preview/utils/index.cjs.js +1 -1
  46. package/dist/nile-file-preview/utils/index.esm.js +1 -1
  47. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js +1 -1
  48. package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js.map +1 -1
  49. package/dist/nile-file-preview/utils/nile-file-preview.util.esm.js +1 -1
  50. package/dist/nile-file-upload/index.cjs.js +1 -1
  51. package/dist/nile-file-upload/index.esm.js +1 -1
  52. package/dist/nile-file-upload/nile-file-upload.cjs.js +1 -1
  53. package/dist/nile-file-upload/nile-file-upload.cjs.js.map +1 -1
  54. package/dist/nile-file-upload/nile-file-upload.css.cjs.js +1 -1
  55. package/dist/nile-file-upload/nile-file-upload.css.cjs.js.map +1 -1
  56. package/dist/nile-file-upload/nile-file-upload.css.esm.js +9 -4
  57. package/dist/nile-file-upload/nile-file-upload.esm.js +2 -2
  58. package/dist/nile-file-upload/nile-file-upload.template.cjs.js +3 -3
  59. package/dist/nile-file-upload/nile-file-upload.template.cjs.js.map +1 -1
  60. package/dist/nile-file-upload/nile-file-upload.template.esm.js +31 -31
  61. package/dist/nile-file-upload/nile-file-upload.test.cjs.js +1 -1
  62. package/dist/nile-file-upload/nile-file-upload.test.esm.js +1 -1
  63. package/dist/nile-file-upload/types/file-upload.enums.cjs.js +1 -1
  64. package/dist/nile-file-upload/types/file-upload.enums.cjs.js.map +1 -1
  65. package/dist/nile-file-upload/types/file-upload.enums.esm.js +1 -1
  66. package/dist/nile-file-upload/utils/file-validation.util.cjs.js +2 -2
  67. package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +1 -1
  68. package/dist/nile-file-upload/utils/file-validation.util.esm.js +1 -1
  69. package/dist/nile-icon/icons/svg/format_align_justify.cjs.js +2 -0
  70. package/dist/nile-icon/icons/svg/format_align_justify.cjs.js.map +1 -0
  71. package/dist/nile-icon/icons/svg/format_align_justify.esm.js +1 -0
  72. package/dist/nile-icon/icons/svg/format_align_left.cjs.js +2 -0
  73. package/dist/nile-icon/icons/svg/format_align_left.cjs.js.map +1 -0
  74. package/dist/nile-icon/icons/svg/format_align_left.esm.js +1 -0
  75. package/dist/nile-icon/icons/svg/format_align_middle.cjs.js +2 -0
  76. package/dist/nile-icon/icons/svg/format_align_middle.cjs.js.map +1 -0
  77. package/dist/nile-icon/icons/svg/format_align_middle.esm.js +1 -0
  78. package/dist/nile-icon/icons/svg/format_align_right.cjs.js +2 -0
  79. package/dist/nile-icon/icons/svg/format_align_right.cjs.js.map +1 -0
  80. package/dist/nile-icon/icons/svg/format_align_right.esm.js +1 -0
  81. package/dist/nile-icon/icons/svg/format_bold.cjs.js +2 -0
  82. package/dist/nile-icon/icons/svg/format_bold.cjs.js.map +1 -0
  83. package/dist/nile-icon/icons/svg/format_bold.esm.js +1 -0
  84. package/dist/nile-icon/icons/svg/format_clear.cjs.js +2 -0
  85. package/dist/nile-icon/icons/svg/format_clear.cjs.js.map +1 -0
  86. package/dist/nile-icon/icons/svg/format_clear.esm.js +1 -0
  87. package/dist/nile-icon/icons/svg/format_italic.cjs.js +2 -0
  88. package/dist/nile-icon/icons/svg/format_italic.cjs.js.map +1 -0
  89. package/dist/nile-icon/icons/svg/format_italic.esm.js +1 -0
  90. package/dist/nile-icon/icons/svg/format_list_bulleted.cjs.js +2 -0
  91. package/dist/nile-icon/icons/svg/format_list_bulleted.cjs.js.map +1 -0
  92. package/dist/nile-icon/icons/svg/format_list_bulleted.esm.js +1 -0
  93. package/dist/nile-icon/icons/svg/format_list_numbered.cjs.js +2 -0
  94. package/dist/nile-icon/icons/svg/format_list_numbered.cjs.js.map +1 -0
  95. package/dist/nile-icon/icons/svg/format_list_numbered.esm.js +1 -0
  96. package/dist/nile-icon/icons/svg/format_underline.cjs.js +2 -0
  97. package/dist/nile-icon/icons/svg/format_underline.cjs.js.map +1 -0
  98. package/dist/nile-icon/icons/svg/format_underline.esm.js +1 -0
  99. package/dist/nile-icon/icons/svg/image_2.cjs.js +2 -0
  100. package/dist/nile-icon/icons/svg/image_2.cjs.js.map +1 -0
  101. package/dist/nile-icon/icons/svg/image_2.esm.js +1 -0
  102. package/dist/nile-icon/icons/svg/link_2.cjs.js +2 -0
  103. package/dist/nile-icon/icons/svg/link_2.cjs.js.map +1 -0
  104. package/dist/nile-icon/icons/svg/link_2.esm.js +1 -0
  105. package/dist/nile-icon/icons/svg/ng-action.cjs.js +2 -0
  106. package/dist/nile-icon/icons/svg/ng-action.cjs.js.map +1 -0
  107. package/dist/nile-icon/icons/svg/ng-action.esm.js +1 -0
  108. package/dist/nile-icon/icons/svg/ng-activity.cjs.js +2 -0
  109. package/dist/nile-icon/icons/svg/ng-activity.cjs.js.map +1 -0
  110. package/dist/nile-icon/icons/svg/ng-activity.esm.js +1 -0
  111. package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js +2 -0
  112. package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js.map +1 -0
  113. package/dist/nile-icon/icons/svg/ng-alert-circle.esm.js +1 -0
  114. package/dist/nile-icon/icons/svg/ng-align-center.cjs.js +2 -0
  115. package/dist/nile-icon/icons/svg/ng-align-center.cjs.js.map +1 -0
  116. package/dist/nile-icon/icons/svg/ng-align-center.esm.js +1 -0
  117. package/dist/nile-icon/icons/svg/ng-annotation-x.cjs.js +2 -0
  118. package/dist/nile-icon/icons/svg/ng-annotation-x.cjs.js.map +1 -0
  119. package/dist/nile-icon/icons/svg/ng-annotation-x.esm.js +1 -0
  120. package/dist/nile-icon/icons/svg/ng-arrow-down.cjs.js +2 -0
  121. package/dist/nile-icon/icons/svg/ng-arrow-down.cjs.js.map +1 -0
  122. package/dist/nile-icon/icons/svg/ng-arrow-down.esm.js +1 -0
  123. package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.cjs.js +2 -0
  124. package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.cjs.js.map +1 -0
  125. package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.esm.js +1 -0
  126. package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.cjs.js +2 -0
  127. package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.cjs.js.map +1 -0
  128. package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.esm.js +1 -0
  129. package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js +2 -0
  130. package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js.map +1 -0
  131. package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.esm.js +1 -0
  132. package/dist/nile-icon/icons/svg/ng-arrow-up.cjs.js +2 -0
  133. package/dist/nile-icon/icons/svg/ng-arrow-up.cjs.js.map +1 -0
  134. package/dist/nile-icon/icons/svg/ng-arrow-up.esm.js +1 -0
  135. package/dist/nile-icon/icons/svg/ng-bar-chart-12.cjs.js +2 -0
  136. package/dist/nile-icon/icons/svg/ng-bar-chart-12.cjs.js.map +1 -0
  137. package/dist/nile-icon/icons/svg/ng-bar-chart-12.esm.js +1 -0
  138. package/dist/nile-icon/icons/svg/ng-bell-01.cjs.js +2 -0
  139. package/dist/nile-icon/icons/svg/ng-bell-01.cjs.js.map +1 -0
  140. package/dist/nile-icon/icons/svg/ng-bell-01.esm.js +1 -0
  141. package/dist/nile-icon/icons/svg/ng-bell-ringing-04.cjs.js +2 -0
  142. package/dist/nile-icon/icons/svg/ng-bell-ringing-04.cjs.js.map +1 -0
  143. package/dist/nile-icon/icons/svg/ng-bell-ringing-04.esm.js +1 -0
  144. package/dist/nile-icon/icons/svg/ng-bold-01.cjs.js +2 -0
  145. package/dist/nile-icon/icons/svg/ng-bold-01.cjs.js.map +1 -0
  146. package/dist/nile-icon/icons/svg/ng-bold-01.esm.js +1 -0
  147. package/dist/nile-icon/icons/svg/ng-building-01.cjs.js +2 -0
  148. package/dist/nile-icon/icons/svg/ng-building-01.cjs.js.map +1 -0
  149. package/dist/nile-icon/icons/svg/ng-building-01.esm.js +1 -0
  150. package/dist/nile-icon/icons/svg/ng-building-05.cjs.js +2 -0
  151. package/dist/nile-icon/icons/svg/ng-building-05.cjs.js.map +1 -0
  152. package/dist/nile-icon/icons/svg/ng-building-05.esm.js +1 -0
  153. package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js +2 -0
  154. package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js.map +1 -0
  155. package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.esm.js +1 -0
  156. package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js +2 -0
  157. package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js.map +1 -0
  158. package/dist/nile-icon/icons/svg/ng-button-loading-blue.esm.js +1 -0
  159. package/dist/nile-icon/icons/svg/ng-calendar-plus-02.cjs.js +2 -0
  160. package/dist/nile-icon/icons/svg/ng-calendar-plus-02.cjs.js.map +1 -0
  161. package/dist/nile-icon/icons/svg/ng-calendar-plus-02.esm.js +1 -0
  162. package/dist/nile-icon/icons/svg/ng-calendar.cjs.js +2 -0
  163. package/dist/nile-icon/icons/svg/ng-calendar.cjs.js.map +1 -0
  164. package/dist/nile-icon/icons/svg/ng-calendar.esm.js +1 -0
  165. package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js +2 -0
  166. package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js.map +1 -0
  167. package/dist/nile-icon/icons/svg/ng-check-circle-broken.esm.js +1 -0
  168. package/dist/nile-icon/icons/svg/ng-check-circle.cjs.js +2 -0
  169. package/dist/nile-icon/icons/svg/ng-check-circle.cjs.js.map +1 -0
  170. package/dist/nile-icon/icons/svg/ng-check-circle.esm.js +1 -0
  171. package/dist/nile-icon/icons/svg/ng-check-square-broken.cjs.js +2 -0
  172. package/dist/nile-icon/icons/svg/ng-check-square-broken.cjs.js.map +1 -0
  173. package/dist/nile-icon/icons/svg/ng-check-square-broken.esm.js +1 -0
  174. package/dist/nile-icon/icons/svg/ng-check.cjs.js +2 -0
  175. package/dist/nile-icon/icons/svg/ng-check.cjs.js.map +1 -0
  176. package/dist/nile-icon/icons/svg/ng-check.esm.js +1 -0
  177. package/dist/nile-icon/icons/svg/ng-chevron-down.cjs.js +2 -0
  178. package/dist/nile-icon/icons/svg/ng-chevron-down.cjs.js.map +1 -0
  179. package/dist/nile-icon/icons/svg/ng-chevron-down.esm.js +1 -0
  180. package/dist/nile-icon/icons/svg/ng-chevron-left.cjs.js +2 -0
  181. package/dist/nile-icon/icons/svg/ng-chevron-left.cjs.js.map +1 -0
  182. package/dist/nile-icon/icons/svg/ng-chevron-left.esm.js +1 -0
  183. package/dist/nile-icon/icons/svg/ng-chevron-right.cjs.js +2 -0
  184. package/dist/nile-icon/icons/svg/ng-chevron-right.cjs.js.map +1 -0
  185. package/dist/nile-icon/icons/svg/ng-chevron-right.esm.js +1 -0
  186. package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.cjs.js +2 -0
  187. package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.cjs.js.map +1 -0
  188. package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.esm.js +1 -0
  189. package/dist/nile-icon/icons/svg/ng-chevron-up-double.cjs.js +2 -0
  190. package/dist/nile-icon/icons/svg/ng-chevron-up-double.cjs.js.map +1 -0
  191. package/dist/nile-icon/icons/svg/ng-chevron-up-double.esm.js +1 -0
  192. package/dist/nile-icon/icons/svg/ng-chevron-up.cjs.js +2 -0
  193. package/dist/nile-icon/icons/svg/ng-chevron-up.cjs.js.map +1 -0
  194. package/dist/nile-icon/icons/svg/ng-chevron-up.esm.js +1 -0
  195. package/dist/nile-icon/icons/svg/ng-copy-03.cjs.js +2 -0
  196. package/dist/nile-icon/icons/svg/ng-copy-03.cjs.js.map +1 -0
  197. package/dist/nile-icon/icons/svg/ng-copy-03.esm.js +1 -0
  198. package/dist/nile-icon/icons/svg/ng-dataflow-04.cjs.js +2 -0
  199. package/dist/nile-icon/icons/svg/ng-dataflow-04.cjs.js.map +1 -0
  200. package/dist/nile-icon/icons/svg/ng-dataflow-04.esm.js +1 -0
  201. package/dist/nile-icon/icons/svg/ng-dots-grid.cjs.js +2 -0
  202. package/dist/nile-icon/icons/svg/ng-dots-grid.cjs.js.map +1 -0
  203. package/dist/nile-icon/icons/svg/ng-dots-grid.esm.js +1 -0
  204. package/dist/nile-icon/icons/svg/ng-dots-vertical.cjs.js +2 -0
  205. package/dist/nile-icon/icons/svg/ng-dots-vertical.cjs.js.map +1 -0
  206. package/dist/nile-icon/icons/svg/ng-dots-vertical.esm.js +1 -0
  207. package/dist/nile-icon/icons/svg/ng-download-01.cjs.js +2 -0
  208. package/dist/nile-icon/icons/svg/ng-download-01.cjs.js.map +1 -0
  209. package/dist/nile-icon/icons/svg/ng-download-01.esm.js +1 -0
  210. package/dist/nile-icon/icons/svg/ng-dropdown.cjs.js +2 -0
  211. package/dist/nile-icon/icons/svg/ng-dropdown.cjs.js.map +1 -0
  212. package/dist/nile-icon/icons/svg/ng-dropdown.esm.js +1 -0
  213. package/dist/nile-icon/icons/svg/ng-edit-02.cjs.js +2 -0
  214. package/dist/nile-icon/icons/svg/ng-edit-02.cjs.js.map +1 -0
  215. package/dist/nile-icon/icons/svg/ng-edit-02.esm.js +1 -0
  216. package/dist/nile-icon/icons/svg/ng-edit-05.cjs.js +2 -0
  217. package/dist/nile-icon/icons/svg/ng-edit-05.cjs.js.map +1 -0
  218. package/dist/nile-icon/icons/svg/ng-edit-05.esm.js +1 -0
  219. package/dist/nile-icon/icons/svg/ng-expand-06.cjs.js +2 -0
  220. package/dist/nile-icon/icons/svg/ng-expand-06.cjs.js.map +1 -0
  221. package/dist/nile-icon/icons/svg/ng-expand-06.esm.js +1 -0
  222. package/dist/nile-icon/icons/svg/ng-eye-off.cjs.js +2 -0
  223. package/dist/nile-icon/icons/svg/ng-eye-off.cjs.js.map +1 -0
  224. package/dist/nile-icon/icons/svg/ng-eye-off.esm.js +1 -0
  225. package/dist/nile-icon/icons/svg/ng-eye.cjs.js +2 -0
  226. package/dist/nile-icon/icons/svg/ng-eye.cjs.js.map +1 -0
  227. package/dist/nile-icon/icons/svg/ng-eye.esm.js +1 -0
  228. package/dist/nile-icon/icons/svg/ng-file-02.cjs.js +2 -0
  229. package/dist/nile-icon/icons/svg/ng-file-02.cjs.js.map +1 -0
  230. package/dist/nile-icon/icons/svg/ng-file-02.esm.js +1 -0
  231. package/dist/nile-icon/icons/svg/ng-file-06.cjs.js +2 -0
  232. package/dist/nile-icon/icons/svg/ng-file-06.cjs.js.map +1 -0
  233. package/dist/nile-icon/icons/svg/ng-file-06.esm.js +1 -0
  234. package/dist/nile-icon/icons/svg/ng-file-check-02.cjs.js +2 -0
  235. package/dist/nile-icon/icons/svg/ng-file-check-02.cjs.js.map +1 -0
  236. package/dist/nile-icon/icons/svg/ng-file-check-02.esm.js +1 -0
  237. package/dist/nile-icon/icons/svg/ng-file-question-03.cjs.js +2 -0
  238. package/dist/nile-icon/icons/svg/ng-file-question-03.cjs.js.map +1 -0
  239. package/dist/nile-icon/icons/svg/ng-file-question-03.esm.js +1 -0
  240. package/dist/nile-icon/icons/svg/ng-filter-lines.cjs.js +2 -0
  241. package/dist/nile-icon/icons/svg/ng-filter-lines.cjs.js.map +1 -0
  242. package/dist/nile-icon/icons/svg/ng-filter-lines.esm.js +1 -0
  243. package/dist/nile-icon/icons/svg/ng-grid-01.cjs.js +2 -0
  244. package/dist/nile-icon/icons/svg/ng-grid-01.cjs.js.map +1 -0
  245. package/dist/nile-icon/icons/svg/ng-grid-01.esm.js +1 -0
  246. package/dist/nile-icon/icons/svg/ng-help-circle.cjs.js +2 -0
  247. package/dist/nile-icon/icons/svg/ng-help-circle.cjs.js.map +1 -0
  248. package/dist/nile-icon/icons/svg/ng-help-circle.esm.js +1 -0
  249. package/dist/nile-icon/icons/svg/ng-image-03.cjs.js +2 -0
  250. package/dist/nile-icon/icons/svg/ng-image-03.cjs.js.map +1 -0
  251. package/dist/nile-icon/icons/svg/ng-image-03.esm.js +1 -0
  252. package/dist/nile-icon/icons/svg/ng-image-user-left.cjs.js +2 -0
  253. package/dist/nile-icon/icons/svg/ng-image-user-left.cjs.js.map +1 -0
  254. package/dist/nile-icon/icons/svg/ng-image-user-left.esm.js +1 -0
  255. package/dist/nile-icon/icons/svg/ng-info-circle.cjs.js +2 -0
  256. package/dist/nile-icon/icons/svg/ng-info-circle.cjs.js.map +1 -0
  257. package/dist/nile-icon/icons/svg/ng-info-circle.esm.js +1 -0
  258. package/dist/nile-icon/icons/svg/ng-italic-01.cjs.js +2 -0
  259. package/dist/nile-icon/icons/svg/ng-italic-01.cjs.js.map +1 -0
  260. package/dist/nile-icon/icons/svg/ng-italic-01.esm.js +1 -0
  261. package/dist/nile-icon/icons/svg/ng-layers-three-01.cjs.js +2 -0
  262. package/dist/nile-icon/icons/svg/ng-layers-three-01.cjs.js.map +1 -0
  263. package/dist/nile-icon/icons/svg/ng-layers-three-01.esm.js +1 -0
  264. package/dist/nile-icon/icons/svg/ng-list.cjs.js +2 -0
  265. package/dist/nile-icon/icons/svg/ng-list.cjs.js.map +1 -0
  266. package/dist/nile-icon/icons/svg/ng-list.esm.js +1 -0
  267. package/dist/nile-icon/icons/svg/ng-log-out-01.cjs.js +2 -0
  268. package/dist/nile-icon/icons/svg/ng-log-out-01.cjs.js.map +1 -0
  269. package/dist/nile-icon/icons/svg/ng-log-out-01.esm.js +1 -0
  270. package/dist/nile-icon/icons/svg/ng-mail-01.cjs.js +2 -0
  271. package/dist/nile-icon/icons/svg/ng-mail-01.cjs.js.map +1 -0
  272. package/dist/nile-icon/icons/svg/ng-mail-01.esm.js +1 -0
  273. package/dist/nile-icon/icons/svg/ng-mail-04.cjs.js +2 -0
  274. package/dist/nile-icon/icons/svg/ng-mail-04.cjs.js.map +1 -0
  275. package/dist/nile-icon/icons/svg/ng-mail-04.esm.js +1 -0
  276. package/dist/nile-icon/icons/svg/ng-marker-pin-01.cjs.js +2 -0
  277. package/dist/nile-icon/icons/svg/ng-marker-pin-01.cjs.js.map +1 -0
  278. package/dist/nile-icon/icons/svg/ng-marker-pin-01.esm.js +1 -0
  279. package/dist/nile-icon/icons/svg/ng-menu-05.cjs.js +2 -0
  280. package/dist/nile-icon/icons/svg/ng-menu-05.cjs.js.map +1 -0
  281. package/dist/nile-icon/icons/svg/ng-menu-05.esm.js +1 -0
  282. package/dist/nile-icon/icons/svg/ng-message-text-square-01.cjs.js +2 -0
  283. package/dist/nile-icon/icons/svg/ng-message-text-square-01.cjs.js.map +1 -0
  284. package/dist/nile-icon/icons/svg/ng-message-text-square-01.esm.js +1 -0
  285. package/dist/nile-icon/icons/svg/ng-minimize-02.cjs.js +2 -0
  286. package/dist/nile-icon/icons/svg/ng-minimize-02.cjs.js.map +1 -0
  287. package/dist/nile-icon/icons/svg/ng-minimize-02.esm.js +1 -0
  288. package/dist/nile-icon/icons/svg/ng-minus.cjs.js +2 -0
  289. package/dist/nile-icon/icons/svg/ng-minus.cjs.js.map +1 -0
  290. package/dist/nile-icon/icons/svg/ng-minus.esm.js +1 -0
  291. package/dist/nile-icon/icons/svg/ng-plus.cjs.js +2 -0
  292. package/dist/nile-icon/icons/svg/ng-plus.cjs.js.map +1 -0
  293. package/dist/nile-icon/icons/svg/ng-plus.esm.js +1 -0
  294. package/dist/nile-icon/icons/svg/ng-refresh-cw-02.cjs.js +2 -0
  295. package/dist/nile-icon/icons/svg/ng-refresh-cw-02.cjs.js.map +1 -0
  296. package/dist/nile-icon/icons/svg/ng-refresh-cw-02.esm.js +1 -0
  297. package/dist/nile-icon/icons/svg/ng-rocket-02.cjs.js +2 -0
  298. package/dist/nile-icon/icons/svg/ng-rocket-02.cjs.js.map +1 -0
  299. package/dist/nile-icon/icons/svg/ng-rocket-02.esm.js +1 -0
  300. package/dist/nile-icon/icons/svg/ng-search-lg.cjs.js +2 -0
  301. package/dist/nile-icon/icons/svg/ng-search-lg.cjs.js.map +1 -0
  302. package/dist/nile-icon/icons/svg/ng-search-lg.esm.js +1 -0
  303. package/dist/nile-icon/icons/svg/ng-send-01.cjs.js +2 -0
  304. package/dist/nile-icon/icons/svg/ng-send-01.cjs.js.map +1 -0
  305. package/dist/nile-icon/icons/svg/ng-send-01.esm.js +1 -0
  306. package/dist/nile-icon/icons/svg/ng-settings-01.cjs.js +2 -0
  307. package/dist/nile-icon/icons/svg/ng-settings-01.cjs.js.map +1 -0
  308. package/dist/nile-icon/icons/svg/ng-settings-01.esm.js +1 -0
  309. package/dist/nile-icon/icons/svg/ng-share-04.cjs.js +2 -0
  310. package/dist/nile-icon/icons/svg/ng-share-04.cjs.js.map +1 -0
  311. package/dist/nile-icon/icons/svg/ng-share-04.esm.js +1 -0
  312. package/dist/nile-icon/icons/svg/ng-share-06.cjs.js +2 -0
  313. package/dist/nile-icon/icons/svg/ng-share-06.cjs.js.map +1 -0
  314. package/dist/nile-icon/icons/svg/ng-share-06.esm.js +1 -0
  315. package/dist/nile-icon/icons/svg/ng-stars-02.cjs.js +2 -0
  316. package/dist/nile-icon/icons/svg/ng-stars-02.cjs.js.map +1 -0
  317. package/dist/nile-icon/icons/svg/ng-stars-02.esm.js +1 -0
  318. package/dist/nile-icon/icons/svg/ng-trash-01.cjs.js +2 -0
  319. package/dist/nile-icon/icons/svg/ng-trash-01.cjs.js.map +1 -0
  320. package/dist/nile-icon/icons/svg/ng-trash-01.esm.js +1 -0
  321. package/dist/nile-icon/icons/svg/ng-trash-03.cjs.js +2 -0
  322. package/dist/nile-icon/icons/svg/ng-trash-03.cjs.js.map +1 -0
  323. package/dist/nile-icon/icons/svg/ng-trash-03.esm.js +1 -0
  324. package/dist/nile-icon/icons/svg/ng-trend-up-01.cjs.js +2 -0
  325. package/dist/nile-icon/icons/svg/ng-trend-up-01.cjs.js.map +1 -0
  326. package/dist/nile-icon/icons/svg/ng-trend-up-01.esm.js +1 -0
  327. package/dist/nile-icon/icons/svg/ng-underline-01.cjs.js +2 -0
  328. package/dist/nile-icon/icons/svg/ng-underline-01.cjs.js.map +1 -0
  329. package/dist/nile-icon/icons/svg/ng-underline-01.esm.js +1 -0
  330. package/dist/nile-icon/icons/svg/ng-upload-01.cjs.js +2 -0
  331. package/dist/nile-icon/icons/svg/ng-upload-01.cjs.js.map +1 -0
  332. package/dist/nile-icon/icons/svg/ng-upload-01.esm.js +1 -0
  333. package/dist/nile-icon/icons/svg/ng-upload-cloud-02.cjs.js +2 -0
  334. package/dist/nile-icon/icons/svg/ng-upload-cloud-02.cjs.js.map +1 -0
  335. package/dist/nile-icon/icons/svg/ng-upload-cloud-02.esm.js +1 -0
  336. package/dist/nile-icon/icons/svg/ng-user-01.cjs.js +2 -0
  337. package/dist/nile-icon/icons/svg/ng-user-01.cjs.js.map +1 -0
  338. package/dist/nile-icon/icons/svg/ng-user-01.esm.js +1 -0
  339. package/dist/nile-icon/icons/svg/ng-user-check-02-1.cjs.js +2 -0
  340. package/dist/nile-icon/icons/svg/ng-user-check-02-1.cjs.js.map +1 -0
  341. package/dist/nile-icon/icons/svg/ng-user-check-02-1.esm.js +1 -0
  342. package/dist/nile-icon/icons/svg/ng-user-check-02.cjs.js +2 -0
  343. package/dist/nile-icon/icons/svg/ng-user-check-02.cjs.js.map +1 -0
  344. package/dist/nile-icon/icons/svg/ng-user-check-02.esm.js +1 -0
  345. package/dist/nile-icon/icons/svg/ng-user-plus-02.cjs.js +2 -0
  346. package/dist/nile-icon/icons/svg/ng-user-plus-02.cjs.js.map +1 -0
  347. package/dist/nile-icon/icons/svg/ng-user-plus-02.esm.js +1 -0
  348. package/dist/nile-icon/icons/svg/ng-user-right-01.cjs.js +2 -0
  349. package/dist/nile-icon/icons/svg/ng-user-right-01.cjs.js.map +1 -0
  350. package/dist/nile-icon/icons/svg/ng-user-right-01.esm.js +1 -0
  351. package/dist/nile-icon/icons/svg/ng-users-01.cjs.js +2 -0
  352. package/dist/nile-icon/icons/svg/ng-users-01.cjs.js.map +1 -0
  353. package/dist/nile-icon/icons/svg/ng-users-01.esm.js +1 -0
  354. package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js +2 -0
  355. package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js.map +1 -0
  356. package/dist/nile-icon/icons/svg/ng-x-circle.esm.js +1 -0
  357. package/dist/nile-icon/icons/svg/ng-x-close.cjs.js +2 -0
  358. package/dist/nile-icon/icons/svg/ng-x-close.cjs.js.map +1 -0
  359. package/dist/nile-icon/icons/svg/ng-x-close.esm.js +1 -0
  360. package/dist/nile-icon/icons/svg/ng-x-square.cjs.js +2 -0
  361. package/dist/nile-icon/icons/svg/ng-x-square.cjs.js.map +1 -0
  362. package/dist/nile-icon/icons/svg/ng-x-square.esm.js +1 -0
  363. package/dist/nile-rich-text-editor/index.cjs.js +2 -0
  364. package/dist/nile-rich-text-editor/index.cjs.js.map +1 -0
  365. package/dist/nile-rich-text-editor/index.esm.js +1 -0
  366. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js +2 -0
  367. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js.map +1 -0
  368. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js +2 -0
  369. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js.map +1 -0
  370. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.esm.js +129 -0
  371. package/dist/nile-rich-text-editor/nile-rich-text-editor.esm.js +1 -0
  372. package/dist/nile-rich-text-editor/nile-rte-color.cjs.js +2 -0
  373. package/dist/nile-rich-text-editor/nile-rte-color.cjs.js.map +1 -0
  374. package/dist/nile-rich-text-editor/nile-rte-color.esm.js +53 -0
  375. package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js +2 -0
  376. package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js.map +1 -0
  377. package/dist/nile-rich-text-editor/nile-rte-divider.esm.js +1 -0
  378. package/dist/nile-rich-text-editor/nile-rte-link.cjs.js +2 -0
  379. package/dist/nile-rich-text-editor/nile-rte-link.cjs.js.map +1 -0
  380. package/dist/nile-rich-text-editor/nile-rte-link.esm.js +19 -0
  381. package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js +2 -0
  382. package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js.map +1 -0
  383. package/dist/nile-rich-text-editor/nile-rte-mentions-item.esm.js +1 -0
  384. package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js +3 -0
  385. package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js.map +1 -0
  386. package/dist/nile-rich-text-editor/nile-rte-mentions.esm.js +1 -0
  387. package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js +2 -0
  388. package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js.map +1 -0
  389. package/dist/nile-rich-text-editor/nile-rte-preview.esm.js +1 -0
  390. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js +2 -0
  391. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js.map +1 -0
  392. package/dist/nile-rich-text-editor/nile-rte-select.esm.js +54 -0
  393. package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js +2 -0
  394. package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js.map +1 -0
  395. package/dist/nile-rich-text-editor/nile-rte-toolbar-item.esm.js +1 -0
  396. package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js +2 -0
  397. package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js.map +1 -0
  398. package/dist/nile-rich-text-editor/nile-rte-toolbar.esm.js +1 -0
  399. package/dist/nile-rich-text-editor/utils.cjs.js +2 -0
  400. package/dist/nile-rich-text-editor/utils.cjs.js.map +1 -0
  401. package/dist/nile-rich-text-editor/utils.esm.js +1 -0
  402. package/dist/nile-select/virtual-scroll-helper.cjs.js +2 -0
  403. package/dist/nile-select/virtual-scroll-helper.cjs.js.map +1 -0
  404. package/dist/nile-select/virtual-scroll-helper.esm.js +38 -0
  405. package/dist/nile-slider/nile-slider.css.cjs.js +1 -1
  406. package/dist/nile-slider/nile-slider.css.cjs.js.map +1 -1
  407. package/dist/nile-slider/nile-slider.css.esm.js +1 -1
  408. package/dist/nile-virtual-select/index.cjs.js +2 -0
  409. package/dist/nile-virtual-select/index.cjs.js.map +1 -0
  410. package/dist/nile-virtual-select/index.esm.js +1 -0
  411. package/dist/nile-virtual-select/nile-virtual-select.cjs.js +2 -0
  412. package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -0
  413. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js +2 -0
  414. package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -0
  415. package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +477 -0
  416. package/dist/nile-virtual-select/nile-virtual-select.esm.js +227 -0
  417. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +2 -0
  418. package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js.map +1 -0
  419. package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +93 -0
  420. package/dist/nile-virtual-select/renderer.cjs.js +2 -0
  421. package/dist/nile-virtual-select/renderer.cjs.js.map +1 -0
  422. package/dist/nile-virtual-select/renderer.esm.js +28 -0
  423. package/dist/nile-virtual-select/search-manager.cjs.js +2 -0
  424. package/dist/nile-virtual-select/search-manager.cjs.js.map +1 -0
  425. package/dist/nile-virtual-select/search-manager.esm.js +1 -0
  426. package/dist/nile-virtual-select/selection-manager.cjs.js +2 -0
  427. package/dist/nile-virtual-select/selection-manager.cjs.js.map +1 -0
  428. package/dist/nile-virtual-select/selection-manager.esm.js +1 -0
  429. package/dist/nile-virtual-select/types.cjs.js +2 -0
  430. package/dist/nile-virtual-select/types.cjs.js.map +1 -0
  431. package/dist/nile-virtual-select/types.esm.js +1 -0
  432. package/dist/scopedElementsWrapper-24f32095.cjs.js +6 -0
  433. package/dist/scopedElementsWrapper-24f32095.cjs.js.map +1 -0
  434. package/dist/scopedElementsWrapper-7a509408.esm.js +7 -0
  435. package/dist/sinon-esm-69e51168.cjs.js +2 -0
  436. package/dist/sinon-esm-69e51168.cjs.js.map +1 -0
  437. package/dist/sinon-esm-73a0cd99.esm.js +1 -0
  438. package/dist/src/internal/resizable-table-styles.js +0 -12
  439. package/dist/src/internal/resizable-table-styles.js.map +1 -1
  440. package/dist/src/nile-calendar/test.d.ts +0 -0
  441. package/dist/src/nile-calendar/test.js +2 -0
  442. package/dist/src/nile-calendar/test.js.map +1 -0
  443. package/dist/src/nile-code-editor/nile-code-editor.d.ts +2 -1
  444. package/dist/src/nile-code-editor/nile-code-editor.js +14 -5
  445. package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
  446. package/dist/src/nile-file-preview/nile-file-preview.css.js +21 -44
  447. package/dist/src/nile-file-preview/nile-file-preview.css.js.map +1 -1
  448. package/dist/src/nile-file-preview/nile-file-preview.d.ts +5 -1
  449. package/dist/src/nile-file-preview/nile-file-preview.js +45 -16
  450. package/dist/src/nile-file-preview/nile-file-preview.js.map +1 -1
  451. package/dist/src/nile-file-preview/nile-file-preview.template.d.ts +3 -2
  452. package/dist/src/nile-file-preview/nile-file-preview.template.js +17 -11
  453. package/dist/src/nile-file-preview/nile-file-preview.template.js.map +1 -1
  454. package/dist/src/nile-file-preview/types/nile-file-preview.enums.d.ts +2 -1
  455. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js +1 -0
  456. package/dist/src/nile-file-preview/types/nile-file-preview.enums.js.map +1 -1
  457. package/dist/src/nile-file-preview/utils/nile-file-preview.util.d.ts +1 -2
  458. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +8 -8
  459. package/dist/src/nile-file-preview/utils/nile-file-preview.util.js.map +1 -1
  460. package/dist/src/nile-file-upload/nile-file-upload.css.js +4 -4
  461. package/dist/src/nile-file-upload/nile-file-upload.css.js.map +1 -1
  462. package/dist/src/nile-file-upload/nile-file-upload.d.ts +1 -0
  463. package/dist/src/nile-file-upload/nile-file-upload.js +12 -11
  464. package/dist/src/nile-file-upload/nile-file-upload.js.map +1 -1
  465. package/dist/src/nile-file-upload/nile-file-upload.template.d.ts +7 -4
  466. package/dist/src/nile-file-upload/nile-file-upload.template.js +34 -21
  467. package/dist/src/nile-file-upload/nile-file-upload.template.js.map +1 -1
  468. package/dist/src/nile-file-upload/types/file-upload.enums.d.ts +4 -2
  469. package/dist/src/nile-file-upload/types/file-upload.enums.js +2 -0
  470. package/dist/src/nile-file-upload/types/file-upload.enums.js.map +1 -1
  471. package/dist/src/nile-file-upload/utils/file-validation.util.d.ts +1 -0
  472. package/dist/src/nile-file-upload/utils/file-validation.util.js +10 -0
  473. package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -1
  474. package/dist/src/nile-icon/icons/svg/format_align_justify.d.ts +5 -0
  475. package/dist/src/nile-icon/icons/svg/format_align_justify.js +5 -0
  476. package/dist/src/nile-icon/icons/svg/format_align_justify.js.map +1 -0
  477. package/dist/src/nile-icon/icons/svg/format_align_left.d.ts +5 -0
  478. package/dist/src/nile-icon/icons/svg/format_align_left.js +5 -0
  479. package/dist/src/nile-icon/icons/svg/format_align_left.js.map +1 -0
  480. package/dist/src/nile-icon/icons/svg/format_align_middle.d.ts +5 -0
  481. package/dist/src/nile-icon/icons/svg/format_align_middle.js +5 -0
  482. package/dist/src/nile-icon/icons/svg/format_align_middle.js.map +1 -0
  483. package/dist/src/nile-icon/icons/svg/format_align_right.d.ts +5 -0
  484. package/dist/src/nile-icon/icons/svg/format_align_right.js +5 -0
  485. package/dist/src/nile-icon/icons/svg/format_align_right.js.map +1 -0
  486. package/dist/src/nile-icon/icons/svg/format_bold.d.ts +5 -0
  487. package/dist/src/nile-icon/icons/svg/format_bold.js +5 -0
  488. package/dist/src/nile-icon/icons/svg/format_bold.js.map +1 -0
  489. package/dist/src/nile-icon/icons/svg/format_clear.d.ts +5 -0
  490. package/dist/src/nile-icon/icons/svg/format_clear.js +5 -0
  491. package/dist/src/nile-icon/icons/svg/format_clear.js.map +1 -0
  492. package/dist/src/nile-icon/icons/svg/format_italic.d.ts +5 -0
  493. package/dist/src/nile-icon/icons/svg/format_italic.js +5 -0
  494. package/dist/src/nile-icon/icons/svg/format_italic.js.map +1 -0
  495. package/dist/src/nile-icon/icons/svg/format_list_bulleted.d.ts +5 -0
  496. package/dist/src/nile-icon/icons/svg/format_list_bulleted.js +5 -0
  497. package/dist/src/nile-icon/icons/svg/format_list_bulleted.js.map +1 -0
  498. package/dist/src/nile-icon/icons/svg/format_list_numbered.d.ts +5 -0
  499. package/dist/src/nile-icon/icons/svg/format_list_numbered.js +5 -0
  500. package/dist/src/nile-icon/icons/svg/format_list_numbered.js.map +1 -0
  501. package/dist/src/nile-icon/icons/svg/format_underline.d.ts +5 -0
  502. package/dist/src/nile-icon/icons/svg/format_underline.js +5 -0
  503. package/dist/src/nile-icon/icons/svg/format_underline.js.map +1 -0
  504. package/dist/src/nile-icon/icons/svg/image_2.d.ts +5 -0
  505. package/dist/src/nile-icon/icons/svg/image_2.js +5 -0
  506. package/dist/src/nile-icon/icons/svg/image_2.js.map +1 -0
  507. package/dist/src/nile-icon/icons/svg/link_2.d.ts +5 -0
  508. package/dist/src/nile-icon/icons/svg/link_2.js +5 -0
  509. package/dist/src/nile-icon/icons/svg/link_2.js.map +1 -0
  510. package/dist/src/nile-icon/icons/svg/ng-action.d.ts +5 -0
  511. package/dist/src/nile-icon/icons/svg/ng-action.js +5 -0
  512. package/dist/src/nile-icon/icons/svg/ng-action.js.map +1 -0
  513. package/dist/src/nile-icon/icons/svg/ng-alert-circle.d.ts +5 -0
  514. package/dist/src/nile-icon/icons/svg/ng-alert-circle.js +5 -0
  515. package/dist/src/nile-icon/icons/svg/ng-alert-circle.js.map +1 -0
  516. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.d.ts +5 -0
  517. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js +5 -0
  518. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js.map +1 -0
  519. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.d.ts +5 -0
  520. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js +5 -0
  521. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js.map +1 -0
  522. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.d.ts +5 -0
  523. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js +5 -0
  524. package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js.map +1 -0
  525. package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.d.ts +5 -0
  526. package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js +5 -0
  527. package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js.map +1 -0
  528. package/dist/src/nile-icon/icons/svg/ng-check.d.ts +5 -0
  529. package/dist/src/nile-icon/icons/svg/ng-check.js +5 -0
  530. package/dist/src/nile-icon/icons/svg/ng-check.js.map +1 -0
  531. package/dist/src/nile-icon/icons/svg/ng-file-06.d.ts +5 -0
  532. package/dist/src/nile-icon/icons/svg/ng-file-06.js +5 -0
  533. package/dist/src/nile-icon/icons/svg/ng-file-06.js.map +1 -0
  534. package/dist/src/nile-icon/icons/svg/ng-image-03.d.ts +5 -0
  535. package/dist/src/nile-icon/icons/svg/ng-image-03.js +5 -0
  536. package/dist/src/nile-icon/icons/svg/ng-image-03.js.map +1 -0
  537. package/dist/src/nile-icon/icons/svg/ng-minus.d.ts +5 -0
  538. package/dist/src/nile-icon/icons/svg/ng-minus.js +5 -0
  539. package/dist/src/nile-icon/icons/svg/ng-minus.js.map +1 -0
  540. package/dist/src/nile-icon/icons/svg/ng-x-circle.d.ts +5 -0
  541. package/dist/src/nile-icon/icons/svg/ng-x-circle.js +5 -0
  542. package/dist/src/nile-icon/icons/svg/ng-x-circle.js.map +1 -0
  543. package/dist/src/nile-rich-text-editor/index.d.ts +1 -0
  544. package/dist/src/nile-rich-text-editor/index.js +2 -0
  545. package/dist/src/nile-rich-text-editor/index.js.map +1 -0
  546. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.d.ts +3 -0
  547. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js +133 -0
  548. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js.map +1 -0
  549. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.d.ts +63 -0
  550. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js +693 -0
  551. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js.map +1 -0
  552. package/dist/src/nile-rich-text-editor/nile-rte-color.d.ts +22 -0
  553. package/dist/src/nile-rich-text-editor/nile-rte-color.js +192 -0
  554. package/dist/src/nile-rich-text-editor/nile-rte-color.js.map +1 -0
  555. package/dist/src/nile-rich-text-editor/nile-rte-divider.d.ts +10 -0
  556. package/dist/src/nile-rich-text-editor/nile-rte-divider.js +12 -0
  557. package/dist/src/nile-rich-text-editor/nile-rte-divider.js.map +1 -0
  558. package/dist/src/nile-rich-text-editor/nile-rte-link.d.ts +19 -0
  559. package/dist/src/nile-rich-text-editor/nile-rte-link.js +172 -0
  560. package/dist/src/nile-rich-text-editor/nile-rte-link.js.map +1 -0
  561. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.d.ts +19 -0
  562. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js +54 -0
  563. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js.map +1 -0
  564. package/dist/src/nile-rich-text-editor/nile-rte-mentions.d.ts +66 -0
  565. package/dist/src/nile-rich-text-editor/nile-rte-mentions.js +552 -0
  566. package/dist/src/nile-rich-text-editor/nile-rte-mentions.js.map +1 -0
  567. package/dist/src/nile-rich-text-editor/nile-rte-preview.d.ts +10 -0
  568. package/dist/src/nile-rich-text-editor/nile-rte-preview.js +12 -0
  569. package/dist/src/nile-rich-text-editor/nile-rte-preview.js.map +1 -0
  570. package/dist/src/nile-rich-text-editor/nile-rte-select.d.ts +37 -0
  571. package/dist/src/nile-rich-text-editor/nile-rte-select.js +211 -0
  572. package/dist/src/nile-rich-text-editor/nile-rte-select.js.map +1 -0
  573. package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.d.ts +12 -0
  574. package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js +23 -0
  575. package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js.map +1 -0
  576. package/dist/src/nile-rich-text-editor/nile-rte-toolbar.d.ts +10 -0
  577. package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js +12 -0
  578. package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js.map +1 -0
  579. package/dist/src/nile-rich-text-editor/rte-utils/content.d.ts +2 -0
  580. package/dist/src/nile-rich-text-editor/rte-utils/content.js +25 -0
  581. package/dist/src/nile-rich-text-editor/rte-utils/content.js.map +1 -0
  582. package/dist/src/nile-rich-text-editor/rte-utils/css.d.ts +1 -0
  583. package/dist/src/nile-rich-text-editor/rte-utils/css.js +9 -0
  584. package/dist/src/nile-rich-text-editor/rte-utils/css.js.map +1 -0
  585. package/dist/src/nile-rich-text-editor/rte-utils/dom.d.ts +2 -0
  586. package/dist/src/nile-rich-text-editor/rte-utils/dom.js +48 -0
  587. package/dist/src/nile-rich-text-editor/rte-utils/dom.js.map +1 -0
  588. package/dist/src/nile-rich-text-editor/rte-utils/formatting.d.ts +2 -0
  589. package/dist/src/nile-rich-text-editor/rte-utils/formatting.js +69 -0
  590. package/dist/src/nile-rich-text-editor/rte-utils/formatting.js.map +1 -0
  591. package/dist/src/nile-rich-text-editor/rte-utils/keys.d.ts +2 -0
  592. package/dist/src/nile-rich-text-editor/rte-utils/keys.js +38 -0
  593. package/dist/src/nile-rich-text-editor/rte-utils/keys.js.map +1 -0
  594. package/dist/src/nile-rich-text-editor/rte-utils/lists.d.ts +2 -0
  595. package/dist/src/nile-rich-text-editor/rte-utils/lists.js +28 -0
  596. package/dist/src/nile-rich-text-editor/rte-utils/lists.js.map +1 -0
  597. package/dist/src/nile-rich-text-editor/rte-utils/selection.d.ts +17 -0
  598. package/dist/src/nile-rich-text-editor/rte-utils/selection.js +39 -0
  599. package/dist/src/nile-rich-text-editor/rte-utils/selection.js.map +1 -0
  600. package/dist/src/nile-rich-text-editor/rte-utils/toolbar.d.ts +28 -0
  601. package/dist/src/nile-rich-text-editor/rte-utils/toolbar.js +161 -0
  602. package/dist/src/nile-rich-text-editor/rte-utils/toolbar.js.map +1 -0
  603. package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.d.ts +13 -0
  604. package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.js +119 -0
  605. package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.js.map +1 -0
  606. package/dist/src/nile-rich-text-editor/rte-utils/vars.d.ts +1 -0
  607. package/dist/src/nile-rich-text-editor/rte-utils/vars.js +14 -0
  608. package/dist/src/nile-rich-text-editor/rte-utils/vars.js.map +1 -0
  609. package/dist/src/nile-rich-text-editor/sanatize.d.ts +1 -0
  610. package/dist/src/nile-rich-text-editor/sanatize.js +40 -0
  611. package/dist/src/nile-rich-text-editor/sanatize.js.map +1 -0
  612. package/dist/src/nile-rich-text-editor/utils.d.ts +13 -0
  613. package/dist/src/nile-rich-text-editor/utils.js +415 -0
  614. package/dist/src/nile-rich-text-editor/utils.js.map +1 -0
  615. package/dist/src/nile-virtual-select/renderer.js +3 -0
  616. package/dist/src/nile-virtual-select/renderer.js.map +1 -1
  617. package/dist/src/version.d.ts +9 -0
  618. package/dist/src/version.js +7 -0
  619. package/dist/src/version.js.map +1 -0
  620. package/dist/tsconfig.tsbuildinfo +1 -1
  621. package/dist/version.cjs.js +2 -0
  622. package/dist/version.cjs.js.map +1 -0
  623. package/dist/version.esm.js +1 -0
  624. package/dist/virtualize-3a6cec69.esm.js +22 -0
  625. package/dist/virtualize-72f549f4.cjs.js +18 -0
  626. package/dist/virtualize-72f549f4.cjs.js.map +1 -0
  627. package/dist/virtualize-a4a40d96.esm.js +22 -0
  628. package/dist/virtualize-b6a2fbe0.cjs.js +18 -0
  629. package/dist/virtualize-b6a2fbe0.cjs.js.map +1 -0
  630. package/package.json +4 -4
  631. package/src/nile-code-editor/nile-code-editor.ts +17 -4
  632. package/vscode-html-custom-data.json +3 -3
  633. package/dist/aquera-nile-elements-0.1.57-beta-2.0.tgz +0 -0
  634. package/dist/axe.min-2b379f29.cjs.js +0 -12
  635. package/dist/axe.min-2b379f29.cjs.js.map +0 -1
  636. package/dist/axe.min-c2cd8733.esm.js +0 -12
  637. package/dist/fixture-c1bd203f.cjs.js.map +0 -1
  638. package/dist/fixture-cb376a7f.cjs.js.map +0 -1
@@ -79,13 +79,6 @@ export const resizerStyles = css `
79
79
  opacity: 1;
80
80
  width: 3px;
81
81
  }
82
-
83
- :host([resizable]) .column {
84
- overflow: hidden;
85
- text-overflow: ellipsis;
86
- white-space: nowrap;
87
- display: block;
88
- }
89
82
  `;
90
83
  export const headerResizerStyles = css `
91
84
  .resizer {
@@ -118,11 +111,6 @@ export const headerResizerStyles = css `
118
111
  background-color: transparent;
119
112
  opacity: 1;
120
113
  }
121
-
122
- :host([resizable]) .headers {
123
- text-overflow: ellipsis;
124
- white-space: nowrap;
125
- }
126
114
  `;
127
115
  export const resizableSlotStyles = css `
128
116
  :host([resizable]) ::slotted(*) {
@@ -1 +1 @@
1
- {"version":3,"file":"resizable-table-styles.js","sourceRoot":"","sources":["../../../src/internal/resizable-table-styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;;GAGG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;CAMrC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;CASvC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4D/B,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCrC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;CAgBrC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAA;;;;CAInC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\n/**\n * Resizable Styles Utility\n * Centralized styles for resizable table functionality\n */\n\nexport const resizableHostStyles = css`\n :host([resizable]) {\n position: relative;\n overflow: hidden;\n table-layout: fixed;\n }\n`;\n\nexport const resizableHeaderStyles = css`\n :host([resizable]) {\n position: relative;\n }\n\n :host([resizable]) .header__item__wrapper {\n border-right: 1px solid var(--nile-colors-neutral-400);\n position: relative;\n }\n`;\n\nexport const resizerStyles = css`\n .resizer {\n position: absolute;\n right: 0;\n top: -1000px;\n bottom: -1000px;\n width: 8px;\n cursor: col-resize;\n user-select: none;\n background-color: var(--nile-colors-neutral-100);\n transition: background-color 0.2s;\n z-index: 10;\n opacity: 0;\n transition: opacity 0.2s ease;\n pointer-events: none;\n }\n\n :host([resizable]):hover .resizer {\n opacity: 1;\n pointer-events: auto;\n }\n\n .resizer::before {\n content: '';\n position: absolute;\n right: 3px;\n top: 0;\n width: 2px;\n height: 100%;\n background-color: var(--nile-colors-neutral-500);\n opacity: 0.8;\n }\n\n .resizer:hover {\n background-color: var(--nile-colors-neutral-400);\n }\n\n .resizer:hover::before {\n background-color: var(--nile-colors-neutral-700);\n opacity: 1;\n }\n\n .resizer.resizing {\n background-color: var(--nile-colors-neutral-400);\n opacity: 1;\n pointer-events: auto;\n }\n\n .resizer.resizing::before {\n background-color: var(--nile-colors-neutral-700);\n opacity: 1;\n width: 3px;\n }\n\n :host([resizable]) .column {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n display: block;\n }\n`;\n\nexport const headerResizerStyles = css`\n .resizer {\n position: absolute;\n right: -2px;\n top: -1000px;\n bottom: -1000px;\n width: 8px;\n cursor: ew-resize;\n user-select: none;\n transition: background-color 0.2s;\n z-index: 10;\n opacity: 0;\n transition: opacity 0.2s ease;\n }\n\n :host([resizable]):hover .resizer {\n opacity: 1;\n }\n\n .resizer::before {\n content: '';\n position: absolute;\n height: 100%;\n opacity: 0.8;\n }\n\n .resizer.resizing {\n border-right: 4px double var(--nile-colors-neutral-400);\n background-color: transparent;\n opacity: 1;\n }\n\n :host([resizable]) .headers {\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n`;\n\nexport const resizableSlotStyles = css`\n :host([resizable]) ::slotted(*) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n display: block;\n }\n\n :host([resizable]) ::slotted(span),\n :host([resizable]) ::slotted(div),\n :host([resizable]) ::slotted(p) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n display: block;\n }\n`;\n\nexport const tableLayoutStyles = css`\n .nile__table__body[resizable] {\n table-layout: fixed;\n }\n`; \n"]}
1
+ {"version":3,"file":"resizable-table-styles.js","sourceRoot":"","sources":["../../../src/internal/resizable-table-styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;;GAGG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;CAMrC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;CASvC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqD/B,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BrC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;CAgBrC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAA;;;;CAInC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\n/**\n * Resizable Styles Utility\n * Centralized styles for resizable table functionality\n */\n\nexport const resizableHostStyles = css`\n :host([resizable]) {\n position: relative;\n overflow: hidden;\n table-layout: fixed;\n }\n`;\n\nexport const resizableHeaderStyles = css`\n :host([resizable]) {\n position: relative;\n }\n\n :host([resizable]) .header__item__wrapper {\n border-right: 1px solid var(--nile-colors-neutral-400);\n position: relative;\n }\n`;\n\nexport const resizerStyles = css`\n .resizer {\n position: absolute;\n right: 0;\n top: -1000px;\n bottom: -1000px;\n width: 8px;\n cursor: col-resize;\n user-select: none;\n background-color: var(--nile-colors-neutral-100);\n transition: background-color 0.2s;\n z-index: 10;\n opacity: 0;\n transition: opacity 0.2s ease;\n pointer-events: none;\n }\n\n :host([resizable]):hover .resizer {\n opacity: 1;\n pointer-events: auto;\n }\n\n .resizer::before {\n content: '';\n position: absolute;\n right: 3px;\n top: 0;\n width: 2px;\n height: 100%;\n background-color: var(--nile-colors-neutral-500);\n opacity: 0.8;\n }\n\n .resizer:hover {\n background-color: var(--nile-colors-neutral-400);\n }\n\n .resizer:hover::before {\n background-color: var(--nile-colors-neutral-700);\n opacity: 1;\n }\n\n .resizer.resizing {\n background-color: var(--nile-colors-neutral-400);\n opacity: 1;\n pointer-events: auto;\n }\n\n .resizer.resizing::before {\n background-color: var(--nile-colors-neutral-700);\n opacity: 1;\n width: 3px;\n }\n`;\n\nexport const headerResizerStyles = css`\n .resizer {\n position: absolute;\n right: -2px;\n top: -1000px;\n bottom: -1000px;\n width: 8px;\n cursor: ew-resize;\n user-select: none;\n transition: background-color 0.2s;\n z-index: 10;\n opacity: 0;\n transition: opacity 0.2s ease;\n }\n\n :host([resizable]):hover .resizer {\n opacity: 1;\n }\n\n .resizer::before {\n content: '';\n position: absolute;\n height: 100%;\n opacity: 0.8;\n }\n\n .resizer.resizing {\n border-right: 4px double var(--nile-colors-neutral-400);\n background-color: transparent;\n opacity: 1;\n }\n`;\n\nexport const resizableSlotStyles = css`\n :host([resizable]) ::slotted(*) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n display: block;\n }\n\n :host([resizable]) ::slotted(span),\n :host([resizable]) ::slotted(div),\n :host([resizable]) ::slotted(p) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n display: block;\n }\n`;\n\nexport const tableLayoutStyles = css`\n .nile__table__body[resizable] {\n table-layout: fixed;\n }\n`; \n"]}
File without changes
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../../../src/nile-calendar/test.ts"],"names":[],"mappings":"","sourcesContent":[""]}
@@ -41,7 +41,7 @@ export declare class NileCodeEditor extends NileElement {
41
41
  debounceTimeout: number;
42
42
  aboveCursor: boolean;
43
43
  tabCompletion: boolean;
44
- monospaceFontFamily: boolean;
44
+ defaultFont: boolean;
45
45
  view: EditorView;
46
46
  viewState: EditorState;
47
47
  private timeOut;
@@ -52,6 +52,7 @@ export declare class NileCodeEditor extends NileElement {
52
52
  private placeholderComp;
53
53
  private defaultSyntaxHighlightingComp;
54
54
  private themeComp;
55
+ private autoCompletionComp;
55
56
  /**
56
57
  * The styles for CodeEditor
57
58
  * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
@@ -58,7 +58,7 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
58
58
  this.debounceTimeout = 200;
59
59
  this.aboveCursor = false;
60
60
  this.tabCompletion = true;
61
- this.monospaceFontFamily = false;
61
+ this.defaultFont = false;
62
62
  this.timeOut = null;
63
63
  // Compartments for initialiazing and switching extensions
64
64
  this.lineNumbersComp = new Compartment();
@@ -68,6 +68,7 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
68
68
  this.placeholderComp = new Compartment();
69
69
  this.defaultSyntaxHighlightingComp = new Compartment();
70
70
  this.themeComp = new Compartment();
71
+ this.autoCompletionComp = new Compartment();
71
72
  /**
72
73
  * Custom autocomplete handler for code editor suggestions
73
74
  * @param context CompletionContext from CodeMirror
@@ -146,6 +147,14 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
146
147
  ]
147
148
  });
148
149
  }
150
+ if (changedProperties.has('aboveCursor')) {
151
+ console.log('aboveCursor changed:', this.aboveCursor);
152
+ this.view.dispatch({
153
+ effects: [
154
+ this.autoCompletionComp.reconfigure(autocompletion({ aboveCursor: this.aboveCursor }))
155
+ ]
156
+ });
157
+ }
149
158
  if (changedProperties.has('placeholder')) {
150
159
  this.view.dispatch({
151
160
  effects: [
@@ -261,7 +270,7 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
261
270
  customAutoCompletions,
262
271
  placeholderExtension,
263
272
  defaultSyntaxHighlightingExtension,
264
- autocompletion({ aboveCursor: this.aboveCursor }),
273
+ this.autoCompletionComp.of(autocompletion({ aboveCursor: this.aboveCursor })),
265
274
  language,
266
275
  customThemeExtension,
267
276
  this.getTabCompletionKeymap(),
@@ -433,12 +442,12 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
433
442
  }
434
443
  getCustomThemeExtension() {
435
444
  if (this.customThemeCSS) {
436
- if (this.monospaceFontFamily) {
445
+ if (this.defaultFont) {
437
446
  return [EditorView.theme(this.customThemeCSS), EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];
438
447
  }
439
448
  return [EditorView.theme(this.customThemeCSS), EditorView.theme(customisedThemeCss)];
440
449
  }
441
- if (this.monospaceFontFamily) {
450
+ if (this.defaultFont) {
442
451
  return [EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];
443
452
  }
444
453
  return [EditorView.theme(customisedThemeCss)];
@@ -524,7 +533,7 @@ __decorate([
524
533
  ], NileCodeEditor.prototype, "tabCompletion", void 0);
525
534
  __decorate([
526
535
  property({ type: Boolean, reflect: true, attribute: true })
527
- ], NileCodeEditor.prototype, "monospaceFontFamily", void 0);
536
+ ], NileCodeEditor.prototype, "defaultFont", void 0);
528
537
  NileCodeEditor = __decorate([
529
538
  customElement('nile-code-editor')
530
539
  ], NileCodeEditor);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-code-editor.js","sourceRoot":"","sources":["../../../src/nile-code-editor/nile-code-editor.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n html,\n CSSResultArray,\n TemplateResult,\n PropertyValueMap,\n} from 'lit';\n\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-code-editor.css';\nimport { EditorView } from 'codemirror';\nimport { ViewUpdate, placeholder } from '@codemirror/view';\nimport { \n Compartment,\n EditorState,\n Extension\n} from '@codemirror/state';\nimport { StyleSpec } from 'style-mod';\nimport {\n syntaxHighlighting,\n defaultHighlightStyle,\n} from '@codemirror/language';\n\nimport { lineNumbers } from '@codemirror/view';\nimport {\n javascript,\n javascriptLanguage,\n} from '@codemirror/lang-javascript';\nimport { sql } from '@codemirror/lang-sql';\nimport { json } from '@codemirror/lang-json';\nimport { html as htmlLang } from '@codemirror/lang-html';\nimport { autocompletion,CompletionContext,CompletionResult } from '@codemirror/autocomplete';\nimport NileElement from '../internal/nile-element';\nimport { basicSetup } from './extensionSetup';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { Theme as DefaultTheme, customisedThemeCss, fontFamily } from './theme';\nimport { keymap } from '@codemirror/view';\nimport { acceptCompletion, closeCompletion, completionStatus } from '@codemirror/autocomplete';\n\n// Choose the appropriate mode for your use case\n\n/**\n * Nile icon component.\n *\n * @tag nile-code-editor\n *\n */\n@customElement('nile-code-editor')\nexport class NileCodeEditor extends NileElement {\n \n @query('.code__editor__container') codeEditor: HTMLInputElement;\n\n @property({ type: String, reflect: true , attribute: true }) value = '';\n\n @property({ type: String, reflect: true , attribute: true }) expandIcon = \"expand-2\";\n\n @property({ type: String, reflect: true , attribute: true }) placeholder = \"\";\n\n @property({ type: Object, reflect: true , attribute: true }) customAutoCompletions: object | any = {};\n\n @property({ type: Array, reflect: true , attribute: true }) customCompletionsPaths: string[] = [];\n\n @property({ type: String, reflect: true , attribute: true}) language: 'javascript' | 'sql' | 'json' | 'html' = 'javascript';\n\n @property({ type: String, reflect: true , attribute: 'error-message' }) errorMessage: string = '';\n\n @property({ type: Boolean, reflect: true , attribute: true }) error: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) enableSearch: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) noborder: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) multiline: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) enableFoldGutters: boolean = false;\n \n @property({ type: Boolean, reflect: true , attribute: true }) allowVariableInCustomSuggestion: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) lineNumbers: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: false }) disableSyntaxHighlighting: boolean = false;\n\n @property({ type: Object, attribute: false }) customThemeCSS: object | null = customisedThemeCss;\n\n @property({ type: Boolean, reflect: true , attribute: true }) lineNumbersMultiline: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true }) hasScroller: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true }) expandable: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true}) readonly: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true}) debounce: boolean = false;\n\n @property({ type: Number, reflect: true , attribute: true}) debounceTimeout: number = 200;\n\n @property({ type: Boolean, reflect: true , attribute: true}) aboveCursor: boolean = false;\n\n @property({ type: Boolean, reflect: true, attribute: true }) tabCompletion: boolean = true;\n\n @property({ type: Boolean, reflect: true, attribute: true }) monospaceFontFamily: boolean = false;\n\n public view: EditorView;\n public viewState:EditorState;\n private timeOut: any = null;\n\n // Compartments for initialiazing and switching extensions\n private lineNumbersComp = new Compartment();\n private restrictSingleLineComp = new Compartment();\n private readOnlyComp = new Compartment();\n private customCompletionComp = new Compartment();\n private placeholderComp = new Compartment();\n private defaultSyntaxHighlightingComp = new Compartment();\n private themeComp = new Compartment();\n\n /**\n * The styles for CodeEditor\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 connectedCallback(): void {\n super.connectedCallback();\n this.emit('nile-init',undefined,false);\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.view.destroy()\n this.emit('nile-destroy',undefined,false);\n }\n\n firstUpdated() {\n this.createNewView()\n this.emit('nile-after-init',{ \n codeMirrorInstance: this.view, \n createNewView: this.createNewView, \n insertAtCursor: this.insertBetweenCode \n }, false )\n }\n\n getTabCompletionKeymap() {\n return this.tabCompletion\n ? keymap.of([\n {\n key: 'Tab',\n run: acceptCompletion,\n }\n ])\n : [];\n }\n\n protected updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void{\n super.updated(changedProperties);\n if (changedProperties.has('value') && this.view.state.doc.toString()!=this.value) {\n // Editor has already been initialized, update its state\n this.singleLineMultiLineToggle();\n }\n if (changedProperties.has('multiline')) {\n this.view.dispatch({\n effects: [\n this.lineNumbersComp.reconfigure(this.getLineNumbersExension()),\n this.restrictSingleLineComp.reconfigure(this.getSingleLineExtension())\n ],\n })\n this.singleLineMultiLineToggle();\n }\n if (changedProperties.has('readonly')) {\n this.view.dispatch({ \n effects: [\n this.readOnlyComp.reconfigure(this.getReadOnlyExtension()),\n ]\n })\n }\n if (changedProperties.has('placeholder')) {\n this.view.dispatch({ \n effects: [\n this.placeholderComp.reconfigure(this.getPlaceholderExtension()),\n ]\n })\n }\n if (changedProperties.has('lineNumbers') || changedProperties.has('lineNumbersMultiline')) {\n this.view.dispatch({ \n effects: [\n this.lineNumbersComp.reconfigure(this.getLineNumbersExension()),\n ]\n })\n }\n if(changedProperties.has('customAutoCompletions') || changedProperties.has('customCompletionsPaths')){\n this.view.dispatch({ \n effects: [\n this.customCompletionComp.reconfigure(javascriptLanguage.data.of({\n autocomplete: this.customAutocomplete\n }))\n ]\n })\n }\n if(changedProperties.has('disableSyntaxHighlighting')){\n this.view.dispatch({ \n effects: [\n this.defaultSyntaxHighlightingComp.reconfigure(this.getDefaultSyntaxHighlightingExtension())\n ]\n })\n }\n if(changedProperties.has('customThemeCSS')){\n this.view.dispatch({ \n effects: [\n this.themeComp.reconfigure(this.getCustomThemeExtension())\n ]\n })\n }\n }\n\n public render(): TemplateResult {\n const hasErrorMessage = !!this.errorMessage;\n const hasError = !!this.error;\n const noborder = !!this.noborder;\n const noScrollbar = !this.hasScroller\n return html`<div\n part=\"code-editor-base\"\n class=${classMap({\n 'code__editor__container': true,\n 'noborder': noborder,\n 'error': hasError || hasErrorMessage,\n 'code__editor__singleline': !this.multiline,\n 'no-scroller': noScrollbar\n })}\n >\n ${this.expandable\n ? html` \n <div @click=\"${(e: CustomEvent) => this.emit('nile-expand')}\" class=\"expand__icon__container\">\n <nile-icon\n name=\"${this.expandIcon}\"\n size=\"16\"\n color=\"black\"\n ></nile-icon>\n </div>`\n : ''}\n </div>\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}`;\n }\n\n createNewView(emitEvent=true){\n if(this.view) this.view.destroy();\n this.createState()\n this.view = new EditorView({\n state: this.viewState,\n parent: this.codeEditor\n });\n\n this.view.dom.addEventListener('keydown', (e: KeyboardEvent) => {\n if (e.key === 'Escape' && this.view && completionStatus(this.view.state) !== null) {\n e.stopPropagation(); \n e.preventDefault(); \n closeCompletion(this.view);\n }\n }, true);\n \n if (emitEvent) this.emit('nile-after-update', { createNewView: this.createNewView, codeMirrorInstance: this.view, }, false );\n }\n\n createState(){\n const lineNumbersExtension = this.lineNumbersComp.of(this.getLineNumbersExension());\n const readOnlyExtension = this.readOnlyComp.of(this.getReadOnlyExtension());\n const restrictSingleLineExtension = this.restrictSingleLineComp.of(this.getSingleLineExtension())\n const placeholderExtension = this.placeholderComp.of(this.getPlaceholderExtension())\n const customThemeExtension=this.themeComp.of(this.getCustomThemeExtension());\n const defaultSyntaxHighlightingExtension = this.defaultSyntaxHighlightingComp.of(this.getDefaultSyntaxHighlightingExtension());\n const language = this.getLanguageExtension()\n const customAutoCompletions = this.customCompletionComp.of(javascriptLanguage.data.of({\n autocomplete: this.customAutocomplete\n }));\n\n this.viewState = EditorState.create({\n doc: !this.multiline ? convertToSingleLine(this.value) : this.value,\n extensions: [\n basicSetup({\n highlightActiveLine: false,\n foldGutter: this.enableFoldGutters,\n enableSearch:this.enableSearch\n }),\n lineNumbersExtension,\n readOnlyExtension,\n restrictSingleLineExtension,\n customAutoCompletions,\n placeholderExtension,\n defaultSyntaxHighlightingExtension,\n autocompletion({aboveCursor: this.aboveCursor}),\n language,\n customThemeExtension,\n this.getTabCompletionKeymap(),\n EditorView.updateListener.of((v: ViewUpdate) => {\n if (v.docChanged) {\n this.debounce ? this.emitAfterTimeout({ value: this.view.state.doc.toString() }) : this.emit('nile-change', { value: this.view.state.doc.toString() })\n }\n }),\n EditorView.domEventHandlers({\n focus: () => this.dispatchEvent(new Event('nile-focus')),\n blur: () => this.dispatchEvent(new Event('nile-blur')),\n }),\n ],\n });\n return this.viewState\n }\n /**\n * Custom autocomplete handler for code editor suggestions\n * @param context CompletionContext from CodeMirror\n * @returns CompletionResult with suggestions or null if no suggestions\n */\n customAutocomplete = (context: CompletionContext): CompletionResult | null => {\n // Getting the valid last line, last text from the code editor\n const text = context.state.doc.sliceString(0, context.pos);\n const lastWord = text.split('\\n').at(-1)?.split(' ').at(-1) || '';\n const [textBeforeCursor, baseTextAfterSeperation] = splitStringAtLastSeparator(lastWord);\n \n return this.getNestedSuggestions(context, textBeforeCursor, baseTextAfterSeperation) \n || this.getTopLevelSuggestions(context, textBeforeCursor);\n };\n\n /**\n * Gets nested property suggestions based on the current path\n * @param context CompletionContext from CodeMirror\n * @param textBeforeCursor Text before cursor position\n * @param baseTextAfterSeperation Text after the last separator (. or [)\n * @returns CompletionResult with nested suggestions or null\n */\n getNestedSuggestions(context: CompletionContext, textBeforeCursor: string, baseTextAfterSeperation: string) {\n // Return early if not a valid path or not ending with . or [\n if (!isValidPath(textBeforeCursor) || !['.', '['].includes(textBeforeCursor.at(-1)!)) {\n return null;\n }\n\n const path = parsePath(textBeforeCursor);\n if (!path) return null;\n\n const textAfterSeperation = baseTextAfterSeperation.replace(/[\"'\\[]/g, '');\n const isInString = textAfterSeperation !== baseTextAfterSeperation;\n const isBracket = textBeforeCursor.at(-1) === '[';\n\n // Return null if we're in a string after a dot\n if (textBeforeCursor.at(-1) === '.' && isInString) return null;\n\n // Get nested properties and filter by text after separation if it exists\n let resolved = resolveNestedProperties(this.customAutoCompletions, path);\n if (!resolved || typeof resolved !== 'object') return null;\n\n if (textAfterSeperation) {\n resolved = Object.fromEntries(\n Object.entries(resolved).filter(([key]) => \n key.toLowerCase().startsWith(textAfterSeperation.toLowerCase())\n )\n );\n }\n\n return {\n from: context.pos - textAfterSeperation.length,\n options: Object.keys(resolved).map(key => ({\n label: key,\n type: 'property',\n info: `Key of ${path[path.length - 1]}`,\n apply: !this.allowVariableInCustomSuggestion && (isBracket && !isInString) \n ? `'${key}'` \n : key,\n boost: 999\n }))\n };\n }\n\n /**\n * Gets top level suggestions based on custom completions and paths\n * @param context CompletionContext from CodeMirror\n * @param textBeforeCursor Text before cursor position\n * @returns CompletionResult with top level suggestions or null\n */\n getTopLevelSuggestions(context: CompletionContext,textBeforeCursor:string){\n const baseMatch: any = textBeforeCursor.match(/([a-zA-Z_$][\\w$]*)$/);\n \n if (!baseMatch) {\n const trimmedText = textBeforeCursor.trim();\n if (trimmedText === '') {\n const optionsList = Object.keys(this.customAutoCompletions).filter(key => \n Object.keys(this.customAutoCompletions[key]).length\n );\n \n const options = optionsList.map((key) => ({\n label: key,\n type: 'property',\n apply: key,\n boost: 999\n }));\n \n if(this.customCompletionsPaths.length){\n this.customCompletionsPaths.forEach(path => {\n options.push({\n label: ''+path,\n type: 'property',\n apply: ''+path,\n boost: 998\n });\n });\n }\n \n return {\n from: context.pos,\n options: options\n };\n }\n return null;\n }\n \n const optionsList = Object.keys(this.customAutoCompletions).filter(key => \n Object.keys(this.customAutoCompletions[key]).length && \n key.toLowerCase().startsWith(textBeforeCursor.toLowerCase())\n );\n \n const options=optionsList.map((key) => ({\n label: key,\n type: 'property',\n apply: key,\n boost: 999\n }))\n if(this.customCompletionsPaths.length){\n this.customCompletionsPaths\n .filter(path=>path.toLocaleLowerCase().includes(textBeforeCursor.toLocaleLowerCase()))\n .forEach(path=>{\n options.push({\n label: ''+path,\n type: 'property',\n apply: ''+path,\n boost: 998\n })\n })\n }\n return {\n from: context.pos - baseMatch[1].length,\n options: options\n }\n }\n\n emitAfterTimeout(value:any){\n if(this.timeOut) clearTimeout(this.timeOut);\n this.timeOut=setTimeout(()=> this.emit('nile-change', value, false), this.debounceTimeout)\n }\n \n public focusAtPosition(pos: number=this.view.state.doc.toString().length): void {\n if (this.view) {\n this.view.dispatch({\n selection: { anchor: pos },\n });\n this.view.focus();\n }\n }\n\n public insertBetweenCode=(text: string) => {\n const transaction = this.view.state.changeByRange(range => {\n const { from, to } = range;\n return { changes: { from:from, to, insert: text }, range };\n });\n this.view.dispatch(transaction);\n }\n\n singleLineMultiLineToggle() {\n this.view.dispatch({\n changes: {\n from: 0,\n to: this.view.state.doc.length,\n insert: !this.multiline\n ? convertToSingleLine(this.value)\n : this.value,\n },\n });\n }\n\n //EXTENSION CONFIGURATIONS\n getLineNumbersExension() {\n return (!this.multiline && this.lineNumbers) || (this.multiline && this.lineNumbersMultiline) ? lineNumbers() : [];\n }\n \n getLanguageExtension():Extension{\n switch(this.language){\n case 'sql':\n return sql();\n case 'json':\n return json();\n case 'html':\n return htmlLang();\n default:\n return javascript(); \n }\n }\n\n getReadOnlyExtension() {\n return this.readonly ? EditorState.readOnly.of(true) : [];\n }\n\n getSingleLineExtension() {\n return !this.multiline ? EditorState.transactionFilter.of(tr =>\n tr.newDoc.lines > 1 ? [] : tr\n ) : [];\n }\n\n getPlaceholderExtension(){\n return this.placeholder ? placeholder(this.placeholder) : [];\n }\n \n getDefaultSyntaxHighlightingExtension(){\n return !this.disableSyntaxHighlighting ? syntaxHighlighting(defaultHighlightStyle, { fallback: true }):[]\n }\n\n getCustomThemeExtension(): Extension {\n if(this.customThemeCSS) {\n if(this.monospaceFontFamily){\n return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss),EditorView.theme(fontFamily)];\n }\n return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss)];\n }\n if(this.monospaceFontFamily){\n return [EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];\n }\n return [EditorView.theme(customisedThemeCss)];\n }\n\n restrictSingleLine() {\n return EditorState.transactionFilter.of(tr =>\n tr.newDoc.lines > 1 ? [] : tr\n );\n }\n /* #endregion */\n}\n\nexport default NileCodeEditor;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-code-editor': NileCodeEditor;\n }\n}\n\n/**\n * Parses a string path into an array of keys representing nested object access\n * @param text The path string to parse (e.g. \"foo.bar[0].baz\")\n * @returns Array of keys if valid path, null otherwise\n * @example\n * parsePath(\"foo.bar[0]\") // returns [\"foo\", \"bar\", \"0\"]\n * parsePath(\"invalid\") // returns null\n */\nfunction parsePath(text: string) {\n const regex = /([a-zA-Z_$][\\w$]*)(\\[(?:[^\\]]+)\\]|\\.[a-zA-Z_$][\\w$]*)*/g;\n const matches = [...text.matchAll(regex)];\n if (matches.length > 0) {\n const base = matches[0][1]; // The base object name\n const keys = [base];\n // Extract keys from dot or bracket notation\n const pathMatches = text.match(/\\[(.*?)\\]|\\.(\\w+)/g) || [];\n for (const match of pathMatches) {\n if (match.startsWith('[')) {\n keys.push(match.slice(1, -1).replace(/['\"]/g, '')); // Remove brackets and quotes\n } else if (match.startsWith('.')) {\n keys.push(match.slice(1));\n }\n }\n return keys;\n }\n return null;\n};\n\n/**\n * Splits a path string at the last separator (. or [)\n * @param input The path string to split\n * @returns Array containing [path up to last separator, remainder after separator]\n * @example\n * splitStringAtLastSeparator(\"foo.bar[0]\") // returns [\"foo.bar[\", \"0\"]\n */\nfunction splitStringAtLastSeparator(input:string) {\n const lastSeparatorIndex = Math.max(input.lastIndexOf('.'), input.lastIndexOf('['));\n if (lastSeparatorIndex === -1) return [input, ''];\n return [input.slice(0, lastSeparatorIndex + 1), input.slice(lastSeparatorIndex + 1)];\n}\n\n/**\n * Traverses an object using an array of keys to access nested properties\n * @param obj The object to traverse\n * @param keys Array of keys defining the path to the desired property\n * @returns The value at the specified path, or null if path is invalid\n * @example\n * resolveNestedProperties({foo: {bar: 123}}, [\"foo\", \"bar\"]) // returns 123\n */\nfunction resolveNestedProperties (obj:any, keys:any[]){\n return keys.reduce((acc, key) => {\n if (acc && typeof acc === 'object') {\n return acc[key];\n }\n return null;\n }, obj);\n};\n\n/**\n * Validates if a string represents a valid object path format\n * @param path The path string to validate\n * @returns Boolean indicating if path format is valid\n * @example\n * isValidPath(\"foo.bar[0]\") // returns true\n * isValidPath(\"foo..bar\") // returns false\n */\nfunction isValidPath(path: string) {\n // Regex to validate the format of the string\n const regex = /^([a-zA-Z_$][\\w$]*)(\\.[a-zA-Z_$][\\w$]*|\\[\\s*(['\"]?[a-zA-Z0-9_$]*['\"]?)\\s*\\])*([\\.\\[])?$/;\n // Test the string against the regex\n return regex.test(path);\n}\n\n/**\n * Converts multi-line code into a single line by removing line breaks and extra whitespace\n * @param code The code string to convert\n * @returns Single line version of the code\n * @example\n * convertToSingleLine(\"foo\\n bar\") // returns \"foo bar\"\n */\nfunction convertToSingleLine(code: string) {\n if (!code) return '';\n // Remove line breaks and unnecessary whitespace\n return code.replace(/\\s+/g, ' ').trim();\n}\n\n"]}
1
+ {"version":3,"file":"nile-code-editor.js","sourceRoot":"","sources":["../../../src/nile-code-editor/nile-code-editor.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n html,\n CSSResultArray,\n TemplateResult,\n PropertyValueMap,\n} from 'lit';\n\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-code-editor.css';\nimport { EditorView } from 'codemirror';\nimport { ViewUpdate, placeholder } from '@codemirror/view';\nimport { \n Compartment,\n EditorState,\n Extension\n} from '@codemirror/state';\nimport { StyleSpec } from 'style-mod';\nimport {\n syntaxHighlighting,\n defaultHighlightStyle,\n} from '@codemirror/language';\n\nimport { lineNumbers } from '@codemirror/view';\nimport {\n javascript,\n javascriptLanguage,\n} from '@codemirror/lang-javascript';\nimport { sql } from '@codemirror/lang-sql';\nimport { json } from '@codemirror/lang-json';\nimport { html as htmlLang } from '@codemirror/lang-html';\nimport { autocompletion,CompletionContext,CompletionResult } from '@codemirror/autocomplete';\nimport NileElement from '../internal/nile-element';\nimport { basicSetup } from './extensionSetup';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { Theme as DefaultTheme, customisedThemeCss, fontFamily } from './theme';\nimport { keymap } from '@codemirror/view';\nimport { acceptCompletion, closeCompletion, completionStatus } from '@codemirror/autocomplete';\n\n// Choose the appropriate mode for your use case\n\n/**\n * Nile icon component.\n *\n * @tag nile-code-editor\n *\n */\n@customElement('nile-code-editor')\nexport class NileCodeEditor extends NileElement {\n \n @query('.code__editor__container') codeEditor: HTMLInputElement;\n\n @property({ type: String, reflect: true , attribute: true }) value = '';\n\n @property({ type: String, reflect: true , attribute: true }) expandIcon = \"expand-2\";\n\n @property({ type: String, reflect: true , attribute: true }) placeholder = \"\";\n\n @property({ type: Object, reflect: true , attribute: true }) customAutoCompletions: object | any = {};\n\n @property({ type: Array, reflect: true , attribute: true }) customCompletionsPaths: string[] = [];\n\n @property({ type: String, reflect: true , attribute: true}) language: 'javascript' | 'sql' | 'json' | 'html' = 'javascript';\n\n @property({ type: String, reflect: true , attribute: 'error-message' }) errorMessage: string = '';\n\n @property({ type: Boolean, reflect: true , attribute: true }) error: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) enableSearch: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) noborder: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) multiline: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) enableFoldGutters: boolean = false;\n \n @property({ type: Boolean, reflect: true , attribute: true }) allowVariableInCustomSuggestion: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) lineNumbers: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: false }) disableSyntaxHighlighting: boolean = false;\n\n @property({ type: Object, attribute: false }) customThemeCSS: object | null = customisedThemeCss;\n\n @property({ type: Boolean, reflect: true , attribute: true }) lineNumbersMultiline: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true }) hasScroller: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true }) expandable: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true}) readonly: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true}) debounce: boolean = false;\n\n @property({ type: Number, reflect: true , attribute: true}) debounceTimeout: number = 200;\n\n @property({ type: Boolean, reflect: true , attribute: true}) aboveCursor: boolean = false;\n\n @property({ type: Boolean, reflect: true, attribute: true }) tabCompletion: boolean = true;\n\n @property({ type: Boolean, reflect: true, attribute: true }) defaultFont: boolean = false;\n\n public view: EditorView;\n public viewState:EditorState;\n private timeOut: any = null;\n\n // Compartments for initialiazing and switching extensions\n private lineNumbersComp = new Compartment();\n private restrictSingleLineComp = new Compartment();\n private readOnlyComp = new Compartment();\n private customCompletionComp = new Compartment();\n private placeholderComp = new Compartment();\n private defaultSyntaxHighlightingComp = new Compartment();\n private themeComp = new Compartment();\n private autoCompletionComp = new Compartment();\n\n /**\n * The styles for CodeEditor\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 connectedCallback(): void {\n super.connectedCallback();\n this.emit('nile-init',undefined,false);\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.view.destroy()\n this.emit('nile-destroy',undefined,false);\n }\n\n firstUpdated() {\n this.createNewView()\n this.emit('nile-after-init',{ \n codeMirrorInstance: this.view, \n createNewView: this.createNewView, \n insertAtCursor: this.insertBetweenCode \n }, false )\n }\n\n getTabCompletionKeymap() {\n return this.tabCompletion\n ? keymap.of([\n {\n key: 'Tab',\n run: acceptCompletion,\n }\n ])\n : [];\n }\n\n protected updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void{\n super.updated(changedProperties);\n if (changedProperties.has('value') && this.view.state.doc.toString()!=this.value) {\n // Editor has already been initialized, update its state\n this.singleLineMultiLineToggle();\n }\n if (changedProperties.has('multiline')) {\n this.view.dispatch({\n effects: [\n this.lineNumbersComp.reconfigure(this.getLineNumbersExension()),\n this.restrictSingleLineComp.reconfigure(this.getSingleLineExtension())\n ],\n })\n this.singleLineMultiLineToggle();\n }\n if (changedProperties.has('readonly')) {\n this.view.dispatch({ \n effects: [\n this.readOnlyComp.reconfigure(this.getReadOnlyExtension()),\n ]\n })\n }\n if (changedProperties.has('aboveCursor')) {\n console.log('aboveCursor changed:', this.aboveCursor);\n this.view.dispatch({\n effects: [\n this.autoCompletionComp.reconfigure(\n autocompletion({ aboveCursor: this.aboveCursor })\n )\n ]\n });\n } \n if (changedProperties.has('placeholder')) {\n this.view.dispatch({ \n effects: [\n this.placeholderComp.reconfigure(this.getPlaceholderExtension()),\n ]\n })\n }\n if (changedProperties.has('lineNumbers') || changedProperties.has('lineNumbersMultiline')) {\n this.view.dispatch({ \n effects: [\n this.lineNumbersComp.reconfigure(this.getLineNumbersExension()),\n ]\n })\n }\n if(changedProperties.has('customAutoCompletions') || changedProperties.has('customCompletionsPaths')){\n this.view.dispatch({ \n effects: [\n this.customCompletionComp.reconfigure(javascriptLanguage.data.of({\n autocomplete: this.customAutocomplete\n }))\n ]\n })\n }\n if(changedProperties.has('disableSyntaxHighlighting')){\n this.view.dispatch({ \n effects: [\n this.defaultSyntaxHighlightingComp.reconfigure(this.getDefaultSyntaxHighlightingExtension())\n ]\n })\n }\n if(changedProperties.has('customThemeCSS')){\n this.view.dispatch({ \n effects: [\n this.themeComp.reconfigure(this.getCustomThemeExtension())\n ]\n })\n }\n }\n\n public render(): TemplateResult {\n const hasErrorMessage = !!this.errorMessage;\n const hasError = !!this.error;\n const noborder = !!this.noborder;\n const noScrollbar = !this.hasScroller\n return html`<div\n part=\"code-editor-base\"\n class=${classMap({\n 'code__editor__container': true,\n 'noborder': noborder,\n 'error': hasError || hasErrorMessage,\n 'code__editor__singleline': !this.multiline,\n 'no-scroller': noScrollbar\n })}\n >\n ${this.expandable\n ? html` \n <div @click=\"${(e: CustomEvent) => this.emit('nile-expand')}\" class=\"expand__icon__container\">\n <nile-icon\n name=\"${this.expandIcon}\"\n size=\"16\"\n color=\"black\"\n ></nile-icon>\n </div>`\n : ''}\n </div>\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}`;\n }\n\n createNewView(emitEvent=true){\n if(this.view) this.view.destroy();\n this.createState()\n this.view = new EditorView({\n state: this.viewState,\n parent: this.codeEditor\n });\n\n this.view.dom.addEventListener('keydown', (e: KeyboardEvent) => {\n if (e.key === 'Escape' && this.view && completionStatus(this.view.state) !== null) {\n e.stopPropagation(); \n e.preventDefault(); \n closeCompletion(this.view);\n }\n }, true);\n \n if (emitEvent) this.emit('nile-after-update', { createNewView: this.createNewView, codeMirrorInstance: this.view, }, false );\n }\n\n createState(){\n const lineNumbersExtension = this.lineNumbersComp.of(this.getLineNumbersExension());\n const readOnlyExtension = this.readOnlyComp.of(this.getReadOnlyExtension());\n const restrictSingleLineExtension = this.restrictSingleLineComp.of(this.getSingleLineExtension())\n const placeholderExtension = this.placeholderComp.of(this.getPlaceholderExtension())\n const customThemeExtension=this.themeComp.of(this.getCustomThemeExtension());\n const defaultSyntaxHighlightingExtension = this.defaultSyntaxHighlightingComp.of(this.getDefaultSyntaxHighlightingExtension());\n const language = this.getLanguageExtension()\n const customAutoCompletions = this.customCompletionComp.of(javascriptLanguage.data.of({\n autocomplete: this.customAutocomplete\n }));\n\n this.viewState = EditorState.create({\n doc: !this.multiline ? convertToSingleLine(this.value) : this.value,\n extensions: [\n basicSetup({\n highlightActiveLine: false,\n foldGutter: this.enableFoldGutters,\n enableSearch:this.enableSearch\n }),\n lineNumbersExtension,\n readOnlyExtension,\n restrictSingleLineExtension,\n customAutoCompletions,\n placeholderExtension,\n defaultSyntaxHighlightingExtension,\n this.autoCompletionComp.of(\n autocompletion({ aboveCursor: this.aboveCursor })\n ), \n language,\n customThemeExtension,\n this.getTabCompletionKeymap(),\n EditorView.updateListener.of((v: ViewUpdate) => {\n if (v.docChanged) {\n this.debounce ? this.emitAfterTimeout({ value: this.view.state.doc.toString() }) : this.emit('nile-change', { value: this.view.state.doc.toString() })\n }\n }),\n EditorView.domEventHandlers({\n focus: () => this.dispatchEvent(new Event('nile-focus')),\n blur: () => this.dispatchEvent(new Event('nile-blur')),\n }),\n ],\n });\n return this.viewState\n }\n /**\n * Custom autocomplete handler for code editor suggestions\n * @param context CompletionContext from CodeMirror\n * @returns CompletionResult with suggestions or null if no suggestions\n */\n customAutocomplete = (context: CompletionContext): CompletionResult | null => {\n // Getting the valid last line, last text from the code editor\n const text = context.state.doc.sliceString(0, context.pos);\n const lastWord = text.split('\\n').at(-1)?.split(' ').at(-1) || '';\n const [textBeforeCursor, baseTextAfterSeperation] = splitStringAtLastSeparator(lastWord);\n \n return this.getNestedSuggestions(context, textBeforeCursor, baseTextAfterSeperation) \n || this.getTopLevelSuggestions(context, textBeforeCursor);\n };\n\n /**\n * Gets nested property suggestions based on the current path\n * @param context CompletionContext from CodeMirror\n * @param textBeforeCursor Text before cursor position\n * @param baseTextAfterSeperation Text after the last separator (. or [)\n * @returns CompletionResult with nested suggestions or null\n */\n getNestedSuggestions(context: CompletionContext, textBeforeCursor: string, baseTextAfterSeperation: string) {\n // Return early if not a valid path or not ending with . or [\n if (!isValidPath(textBeforeCursor) || !['.', '['].includes(textBeforeCursor.at(-1)!)) {\n return null;\n }\n\n const path = parsePath(textBeforeCursor);\n if (!path) return null;\n\n const textAfterSeperation = baseTextAfterSeperation.replace(/[\"'\\[]/g, '');\n const isInString = textAfterSeperation !== baseTextAfterSeperation;\n const isBracket = textBeforeCursor.at(-1) === '[';\n\n // Return null if we're in a string after a dot\n if (textBeforeCursor.at(-1) === '.' && isInString) return null;\n\n // Get nested properties and filter by text after separation if it exists\n let resolved = resolveNestedProperties(this.customAutoCompletions, path);\n if (!resolved || typeof resolved !== 'object') return null;\n\n if (textAfterSeperation) {\n resolved = Object.fromEntries(\n Object.entries(resolved).filter(([key]) => \n key.toLowerCase().startsWith(textAfterSeperation.toLowerCase())\n )\n );\n }\n\n return {\n from: context.pos - textAfterSeperation.length,\n options: Object.keys(resolved).map(key => ({\n label: key,\n type: 'property',\n info: `Key of ${path[path.length - 1]}`,\n apply: !this.allowVariableInCustomSuggestion && (isBracket && !isInString) \n ? `'${key}'` \n : key,\n boost: 999\n }))\n };\n }\n\n /**\n * Gets top level suggestions based on custom completions and paths\n * @param context CompletionContext from CodeMirror\n * @param textBeforeCursor Text before cursor position\n * @returns CompletionResult with top level suggestions or null\n */\n getTopLevelSuggestions(context: CompletionContext,textBeforeCursor:string){\n const baseMatch: any = textBeforeCursor.match(/([a-zA-Z_$][\\w$]*)$/);\n \n if (!baseMatch) {\n const trimmedText = textBeforeCursor.trim();\n if (trimmedText === '') {\n const optionsList = Object.keys(this.customAutoCompletions).filter(key => \n Object.keys(this.customAutoCompletions[key]).length\n );\n \n const options = optionsList.map((key) => ({\n label: key,\n type: 'property',\n apply: key,\n boost: 999\n }));\n \n if(this.customCompletionsPaths.length){\n this.customCompletionsPaths.forEach(path => {\n options.push({\n label: ''+path,\n type: 'property',\n apply: ''+path,\n boost: 998\n });\n });\n }\n \n return {\n from: context.pos,\n options: options\n };\n }\n return null;\n }\n \n const optionsList = Object.keys(this.customAutoCompletions).filter(key => \n Object.keys(this.customAutoCompletions[key]).length && \n key.toLowerCase().startsWith(textBeforeCursor.toLowerCase())\n );\n \n const options=optionsList.map((key) => ({\n label: key,\n type: 'property',\n apply: key,\n boost: 999\n }))\n if(this.customCompletionsPaths.length){\n this.customCompletionsPaths\n .filter(path=>path.toLocaleLowerCase().includes(textBeforeCursor.toLocaleLowerCase()))\n .forEach(path=>{\n options.push({\n label: ''+path,\n type: 'property',\n apply: ''+path,\n boost: 998\n })\n })\n }\n return {\n from: context.pos - baseMatch[1].length,\n options: options\n }\n }\n\n emitAfterTimeout(value:any){\n if(this.timeOut) clearTimeout(this.timeOut);\n this.timeOut=setTimeout(()=> this.emit('nile-change', value, false), this.debounceTimeout)\n }\n \n public focusAtPosition(pos: number=this.view.state.doc.toString().length): void {\n if (this.view) {\n this.view.dispatch({\n selection: { anchor: pos },\n });\n this.view.focus();\n }\n }\n\n public insertBetweenCode=(text: string) => {\n const transaction = this.view.state.changeByRange(range => {\n const { from, to } = range;\n return { changes: { from:from, to, insert: text }, range };\n });\n this.view.dispatch(transaction);\n }\n\n singleLineMultiLineToggle() {\n this.view.dispatch({\n changes: {\n from: 0,\n to: this.view.state.doc.length,\n insert: !this.multiline\n ? convertToSingleLine(this.value)\n : this.value,\n },\n });\n }\n\n //EXTENSION CONFIGURATIONS\n getLineNumbersExension() {\n return (!this.multiline && this.lineNumbers) || (this.multiline && this.lineNumbersMultiline) ? lineNumbers() : [];\n }\n \n getLanguageExtension():Extension{\n switch(this.language){\n case 'sql':\n return sql();\n case 'json':\n return json();\n case 'html':\n return htmlLang();\n default:\n return javascript(); \n }\n }\n\n getReadOnlyExtension() {\n return this.readonly ? EditorState.readOnly.of(true) : [];\n }\n\n getSingleLineExtension() {\n return !this.multiline ? EditorState.transactionFilter.of(tr =>\n tr.newDoc.lines > 1 ? [] : tr\n ) : [];\n }\n\n getPlaceholderExtension(){\n return this.placeholder ? placeholder(this.placeholder) : [];\n }\n \n getDefaultSyntaxHighlightingExtension(){\n return !this.disableSyntaxHighlighting ? syntaxHighlighting(defaultHighlightStyle, { fallback: true }):[]\n }\n\n getCustomThemeExtension(): Extension {\n if(this.customThemeCSS) {\n if(this.defaultFont){\n return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss),EditorView.theme(fontFamily)];\n }\n return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss)];\n }\n if(this.defaultFont){\n return [EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];\n }\n return [EditorView.theme(customisedThemeCss)];\n }\n\n restrictSingleLine() {\n return EditorState.transactionFilter.of(tr =>\n tr.newDoc.lines > 1 ? [] : tr\n );\n }\n /* #endregion */\n}\n\nexport default NileCodeEditor;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-code-editor': NileCodeEditor;\n }\n}\n\n/**\n * Parses a string path into an array of keys representing nested object access\n * @param text The path string to parse (e.g. \"foo.bar[0].baz\")\n * @returns Array of keys if valid path, null otherwise\n * @example\n * parsePath(\"foo.bar[0]\") // returns [\"foo\", \"bar\", \"0\"]\n * parsePath(\"invalid\") // returns null\n */\nfunction parsePath(text: string) {\n const regex = /([a-zA-Z_$][\\w$]*)(\\[(?:[^\\]]+)\\]|\\.[a-zA-Z_$][\\w$]*)*/g;\n const matches = [...text.matchAll(regex)];\n if (matches.length > 0) {\n const base = matches[0][1]; // The base object name\n const keys = [base];\n // Extract keys from dot or bracket notation\n const pathMatches = text.match(/\\[(.*?)\\]|\\.(\\w+)/g) || [];\n for (const match of pathMatches) {\n if (match.startsWith('[')) {\n keys.push(match.slice(1, -1).replace(/['\"]/g, '')); // Remove brackets and quotes\n } else if (match.startsWith('.')) {\n keys.push(match.slice(1));\n }\n }\n return keys;\n }\n return null;\n};\n\n/**\n * Splits a path string at the last separator (. or [)\n * @param input The path string to split\n * @returns Array containing [path up to last separator, remainder after separator]\n * @example\n * splitStringAtLastSeparator(\"foo.bar[0]\") // returns [\"foo.bar[\", \"0\"]\n */\nfunction splitStringAtLastSeparator(input:string) {\n const lastSeparatorIndex = Math.max(input.lastIndexOf('.'), input.lastIndexOf('['));\n if (lastSeparatorIndex === -1) return [input, ''];\n return [input.slice(0, lastSeparatorIndex + 1), input.slice(lastSeparatorIndex + 1)];\n}\n\n/**\n * Traverses an object using an array of keys to access nested properties\n * @param obj The object to traverse\n * @param keys Array of keys defining the path to the desired property\n * @returns The value at the specified path, or null if path is invalid\n * @example\n * resolveNestedProperties({foo: {bar: 123}}, [\"foo\", \"bar\"]) // returns 123\n */\nfunction resolveNestedProperties (obj:any, keys:any[]){\n return keys.reduce((acc, key) => {\n if (acc && typeof acc === 'object') {\n return acc[key];\n }\n return null;\n }, obj);\n};\n\n/**\n * Validates if a string represents a valid object path format\n * @param path The path string to validate\n * @returns Boolean indicating if path format is valid\n * @example\n * isValidPath(\"foo.bar[0]\") // returns true\n * isValidPath(\"foo..bar\") // returns false\n */\nfunction isValidPath(path: string) {\n // Regex to validate the format of the string\n const regex = /^([a-zA-Z_$][\\w$]*)(\\.[a-zA-Z_$][\\w$]*|\\[\\s*(['\"]?[a-zA-Z0-9_$]*['\"]?)\\s*\\])*([\\.\\[])?$/;\n // Test the string against the regex\n return regex.test(path);\n}\n\n/**\n * Converts multi-line code into a single line by removing line breaks and extra whitespace\n * @param code The code string to convert\n * @returns Single line version of the code\n * @example\n * convertToSingleLine(\"foo\\n bar\") // returns \"foo bar\"\n */\nfunction convertToSingleLine(code: string) {\n if (!code) return '';\n // Remove line breaks and unnecessary whitespace\n return code.replace(/\\s+/g, ' ').trim();\n}\n\n"]}
@@ -106,6 +106,10 @@ export const styles = css `
106
106
  }
107
107
 
108
108
  /* Uploading State */
109
+ nile-loader {
110
+ line-height: 0;
111
+ }
112
+
109
113
  .uploading {
110
114
  height: 62px;
111
115
  width: 648px;
@@ -187,6 +191,7 @@ export const styles = css `
187
191
 
188
192
  .preview-inner {
189
193
  display: flex;
194
+ align-items: center;
190
195
  gap: 18px;
191
196
  }
192
197
 
@@ -202,46 +207,11 @@ export const styles = css `
202
207
  border-radius: var(--nile-radius-radius-xs);
203
208
  border: 1px solid var(--nile-colors-neutral-400);
204
209
  }
205
-
206
- /* .preview-file-info {
207
- width: 100%;
208
- display: flex;
209
- flex-direction: column;
210
- justify-content: center;
211
- align-items: flex-start;
212
- gap: 0px;
213
- }
214
-
215
- .preview-file-info p {
216
- margin: 0px;
217
- font-size: var(--nile-type-scale-3);
218
- font-weight: var(--nile-font-weight-regular);
219
- text-align: left;
220
- white-space: nowrap;
221
- text-overflow: ellipsis;
222
- overflow: hidden;
223
- width: 500px;
224
- }
225
-
226
- .preview-file-info p:last-of-type{
227
- color: var(--nile-colors-neutral-700);
228
- font-size: var(--nile-type-scale-2);
229
- font-weight: var(--nile-font-weight-regular);
230
- text-align: left;
231
- white-space: nowrap;
232
- text-overflow: ellipsis;
233
- overflow: hidden;
234
- width: 538px;
235
- } */
236
210
 
237
211
  .preview nile-icon:hover {
238
212
  cursor: pointer;
239
213
  }
240
214
 
241
- .preview-actions {
242
- /* padding-right: 12px; */
243
- }
244
-
245
215
  /* NO PREVIEW STATE */
246
216
  .no-preview {
247
217
  border: 1px solid var(--nile-colors-neutral-400);
@@ -253,6 +223,7 @@ export const styles = css `
253
223
 
254
224
  .no-preview-container {
255
225
  display: flex;
226
+ align-items: center;
256
227
  gap: 18px;
257
228
  }
258
229
 
@@ -279,19 +250,29 @@ export const styles = css `
279
250
  flex-direction: column;
280
251
  justify-content: center;
281
252
  align-items: flex-start;
282
- gap: 8px;
253
+ gap: 4px;
283
254
  }
284
255
 
285
256
  .preview-file-info p {
286
257
  margin: 0px;
287
258
  font-size: var(--nile-type-scale-3);
288
259
  font-weight: var(--nile-font-weight-regular);
260
+ text-align: left;
261
+ white-space: nowrap;
262
+ text-overflow: ellipsis;
263
+ overflow: hidden;
264
+ width: 500px;
289
265
  }
290
266
 
291
267
  .preview-file-info p:last-of-type{
292
268
  color: var(--nile-colors-neutral-700);
293
269
  font-size: var(--nile-type-scale-2);
294
270
  font-weight: var(--nile-font-weight-regular);
271
+ text-align: left;
272
+ white-space: nowrap;
273
+ text-overflow: ellipsis;
274
+ overflow: hidden;
275
+ width: 500px;
295
276
  }
296
277
 
297
278
  .no-preview > nile-icon:hover {
@@ -310,6 +291,7 @@ export const styles = css `
310
291
  .error-container {
311
292
  width: 95%;
312
293
  display: flex;
294
+ align-items: center;
313
295
  gap: 18px;
314
296
  }
315
297
 
@@ -350,7 +332,7 @@ export const styles = css `
350
332
  width: 538px;
351
333
  }
352
334
 
353
- .file-info > nile-tooltip > span {
335
+ .file-info nile-tooltip span, .file-info span {
354
336
  color: var(--nile-colors-red-700);
355
337
  font-size: var(--nile-type-scale-2);
356
338
  font-weight: var(--nile-font-weight-regular);
@@ -376,11 +358,7 @@ export const styles = css `
376
358
  width: 538px;
377
359
  }
378
360
 
379
- /* nile-tooltip::part(base) {
380
- display: inline-block;
381
- } */
382
-
383
- /* VARTICAL STATE START */
361
+ /* VERTICAL STATE START */
384
362
  /* Default State */
385
363
  .vertical-default {
386
364
  display: flex;
@@ -539,7 +517,7 @@ export const styles = css `
539
517
  max-width: 222px;
540
518
  }
541
519
 
542
- .file-info-vertical-state > nile-tooltip > span {
520
+ .file-info-vertical-state nile-tooltip span, .file-info-vertical-state span {
543
521
  color: var(--nile-colors-red-700);
544
522
  font-size: var(--nile-type-scale-2);
545
523
  font-weight: var(--nile-font-weight-regular);
@@ -580,7 +558,6 @@ export const styles = css `
580
558
  margin: 0;
581
559
  }
582
560
 
583
-
584
561
  /* Displaing uploaded files CSS */
585
562
  .display-files {
586
563
  display: flex;
@@ -1 +1 @@
1
- {"version":3,"file":"nile-file-preview.css.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.css.ts"],"names":[],"mappings":"AAAA;;;;;EAKE;AAEF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqlBxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n* Copyright Aquera Inc 2023\n*\n* This source code is licensed under the BSD-3-Clause license found in the\n* LICENSE file in the root directory of this source tree.\n*/\n\nimport {css} from 'lit';\n\n/**\n * FileUpload CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n }\n\n * {\n padding: 0px;\n margin: 0px;\n box-sizing: border-box;\n }\n\n .wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 18px;\n height: auto;\n }\n\n input {\n display: none;\n }\n\n .horizontal-div {\n max-height: 62px;\n width: 648px;\n min-width: 230px;\n padding: 12px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px dashed var(--nile-colors-neutral-500);\n color: var(--nile-colors-dark-900);\n background-color: var(--nile-colors-white-base);\n }\n \n .hover-state {\n border-color: var(--nile-colors-primary-600);\n }\n\n .vertical-div {\n height: auto;\n min-height: 156px;\n min-width: 240px;\n width: 240px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n padding: 12px;\n border-radius: var(--nile-radius-radius-xs);\n color: var(--nile-colors-dark-900);\n border: 1px dashed var(--nile-colors-neutral-500);\n background-color: var(--nile-colors-white-base);\n position: relative; \n margin-bottom: 10px;\n }\n\n .vertical-div:hover {\n border-color: var(--nile-colors-blue-500);\n }\n\n .outer-div-border {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .inner-div {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 18px;\n box-sizing: border-box;\n }\n\n .icons-container {\n display: flex;\n gap: 4px;\n }\n\n .general-icon {\n transform: rotate(-18.11deg);\n position: relative;\n bottom: 3px;\n }\n\n .image-icon {\n transform: rotate(15deg);\n }\n\n .icon:hover {\n cursor: pointer;\n }\n\n /* Uploading State */\n .uploading {\n height: 62px;\n width: 648px;\n padding: 12px;\n min-width: 230px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n box-sizing: border-box;\n border: 1px solid var(--nile-colors-neutral-400);\n border-radius: 4px;\n background-color: var(--nile-colors-white-base);\n }\n \n .uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .progress-bar-container {\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 6px;\n }\n\n .progress-bar-percent {\n width: 100%;\n display: flex;\n justify-content: space-between;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .progress-bar-container p {\n margin: 0px;\n }\n\n .progress-bar-container > p {\n font-size: var(--nile-type-scale-1);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .progress-bar-container .horizontal-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .progress-bar-container .vertical-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 212px;\n }\n\n /* PREVIEW STATE */\n .preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .preview-inner {\n display: flex;\n gap: 18px;\n }\n\n .preview-image-container {\n height: 42px;\n width: 42px;\n }\n\n .preview-image-container img, iframe {\n height: 42px;\n width: 42px;\n object-fit: contain;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-neutral-400);\n }\n \n /* .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 0px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 538px;\n } */\n\n .preview nile-icon:hover {\n cursor: pointer;\n }\n\n .preview-actions {\n /* padding-right: 12px; */\n }\n\n /* NO PREVIEW STATE */\n .no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .no-preview-container {\n display: flex;\n gap: 18px;\n }\n\n .document-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n .document-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 8px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .no-preview > nile-icon:hover {\n cursor: pointer;\n }\n\n /* ERROR STATE */\n .error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-container {\n width: 95%;\n display: flex;\n gap: 18px;\n }\n\n .error-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-red-400);\n background-color: var(--nile-colors-red-100);\n }\n\n .error-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .file-info > nile-tooltip > span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n max-width: 90%;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: left;\n }\n\n .error > nile-icon:hover {\n cursor: pointer;\n }\n\n .file-info .horizontal-file-name {\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-900);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n\n /* nile-tooltip::part(base) {\n display: inline-block;\n } */\n\n /* VARTICAL STATE START */\n /* Default State */\n .vertical-default {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 18px\n }\n\n .content-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n\n .content-container h4 {\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:first-child {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:last-child {\n margin: 0px;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-neutral-700);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n /* Drag State */\n .vertical-drag {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap:18px;\n font-size: var(--nile-type-scale-3);\n color: var(--nile-colors-blue-700);\n background-color: var(--nile-colors-blue-100);\n border-color: var(--nile-colors-blue-500);\n }\n\n /* Uploading State */\n .vertical-uploading {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: center;\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .loading {\n display: flex;\n justify-content: center;\n align-items: center;\n padding-top: 40px;\n }\n\n .corner-icon {\n position: absolute;\n top: 10px;\n right: 10px;\n }\n\n /* Preview State */\n .vertical-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .image-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n object-fit: cover;\n width: 80px;\n height: 80px;\n border-radius: var(--nile-radius-radius-xs);\n }\n\n /* Vertical No Preview State */\n .vertical-no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .vertical-document-icon {\n height: 80px;\n width: 80px;\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n /* Veritcal Error State */\n .vertical-error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-bg {\n background-color: var(--nile-colors-red-100);\n border: 1px solid var(--nile-colors-red-400);\n }\n\n .file-info-vertical-state {\n width: 100%;\n text-align: center;\n }\n\n .file-info-vertical-state p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n padding-bottom: 6px;\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n max-width: 222px;\n }\n \n .file-info-vertical-state > nile-tooltip > span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n max-width: 212px;\n }\n\n .error-message {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center\n }\n\n .error-p {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n width: 216px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n }\n\n .error-p p {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin: 0;\n }\n\n\n /* Displaing uploaded files CSS */\n .display-files {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: center;\n gap: 8px;\n width: 648px;\n min-width: 230px;\n max-height: 200px;\n overflow-y: auto;\n border: 1px solid var(--nile-colors-neutral-700);\n border-radius: var(--nile-radius-radius-xs);\n scrollbar-width: none;\n padding: 12px;\n }\n\n ul, li {\n width: 100%;\n }\n\n li {\n list-style-type: none;\n }\n`;\n\nexport default [styles];"]}
1
+ {"version":3,"file":"nile-file-preview.css.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.css.ts"],"names":[],"mappings":"AAAA;;;;;EAKE;AAEF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8jBxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n* Copyright Aquera Inc 2023\n*\n* This source code is licensed under the BSD-3-Clause license found in the\n* LICENSE file in the root directory of this source tree.\n*/\n\nimport {css} from 'lit';\n\n/**\n * FileUpload CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n }\n\n * {\n padding: 0px;\n margin: 0px;\n box-sizing: border-box;\n }\n\n .wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 18px;\n height: auto;\n }\n\n input {\n display: none;\n }\n\n .horizontal-div {\n max-height: 62px;\n width: 648px;\n min-width: 230px;\n padding: 12px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px dashed var(--nile-colors-neutral-500);\n color: var(--nile-colors-dark-900);\n background-color: var(--nile-colors-white-base);\n }\n \n .hover-state {\n border-color: var(--nile-colors-primary-600);\n }\n\n .vertical-div {\n height: auto;\n min-height: 156px;\n min-width: 240px;\n width: 240px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n padding: 12px;\n border-radius: var(--nile-radius-radius-xs);\n color: var(--nile-colors-dark-900);\n border: 1px dashed var(--nile-colors-neutral-500);\n background-color: var(--nile-colors-white-base);\n position: relative; \n margin-bottom: 10px;\n }\n\n .vertical-div:hover {\n border-color: var(--nile-colors-blue-500);\n }\n\n .outer-div-border {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .inner-div {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 18px;\n box-sizing: border-box;\n }\n\n .icons-container {\n display: flex;\n gap: 4px;\n }\n\n .general-icon {\n transform: rotate(-18.11deg);\n position: relative;\n bottom: 3px;\n }\n\n .image-icon {\n transform: rotate(15deg);\n }\n\n .icon:hover {\n cursor: pointer;\n }\n\n /* Uploading State */\n nile-loader {\n line-height: 0;\n }\n\n .uploading {\n height: 62px;\n width: 648px;\n padding: 12px;\n min-width: 230px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n box-sizing: border-box;\n border: 1px solid var(--nile-colors-neutral-400);\n border-radius: 4px;\n background-color: var(--nile-colors-white-base);\n }\n \n .uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .progress-bar-container {\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 6px;\n }\n\n .progress-bar-percent {\n width: 100%;\n display: flex;\n justify-content: space-between;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .progress-bar-container p {\n margin: 0px;\n }\n\n .progress-bar-container > p {\n font-size: var(--nile-type-scale-1);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .progress-bar-container .horizontal-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .progress-bar-container .vertical-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 212px;\n }\n\n /* PREVIEW STATE */\n .preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .preview-inner {\n display: flex;\n align-items: center;\n gap: 18px;\n }\n\n .preview-image-container {\n height: 42px;\n width: 42px;\n }\n\n .preview-image-container img, iframe {\n height: 42px;\n width: 42px;\n object-fit: contain;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .preview nile-icon:hover {\n cursor: pointer;\n }\n\n /* NO PREVIEW STATE */\n .no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .no-preview-container {\n display: flex;\n align-items: center;\n gap: 18px;\n }\n\n .document-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n .document-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .no-preview > nile-icon:hover {\n cursor: pointer;\n }\n\n /* ERROR STATE */\n .error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-container {\n width: 95%;\n display: flex;\n align-items: center;\n gap: 18px;\n }\n\n .error-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-red-400);\n background-color: var(--nile-colors-red-100);\n }\n\n .error-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .file-info nile-tooltip span, .file-info span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n max-width: 90%;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: left;\n }\n\n .error > nile-icon:hover {\n cursor: pointer;\n }\n\n .file-info .horizontal-file-name {\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-900);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n\n /* VERTICAL STATE START */\n /* Default State */\n .vertical-default {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 18px\n }\n\n .content-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n\n .content-container h4 {\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:first-child {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:last-child {\n margin: 0px;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-neutral-700);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n /* Drag State */\n .vertical-drag {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap:18px;\n font-size: var(--nile-type-scale-3);\n color: var(--nile-colors-blue-700);\n background-color: var(--nile-colors-blue-100);\n border-color: var(--nile-colors-blue-500);\n }\n\n /* Uploading State */\n .vertical-uploading {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: center;\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .loading {\n display: flex;\n justify-content: center;\n align-items: center;\n padding-top: 40px;\n }\n\n .corner-icon {\n position: absolute;\n top: 10px;\n right: 10px;\n }\n\n /* Preview State */\n .vertical-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .image-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n object-fit: cover;\n width: 80px;\n height: 80px;\n border-radius: var(--nile-radius-radius-xs);\n }\n\n /* Vertical No Preview State */\n .vertical-no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .vertical-document-icon {\n height: 80px;\n width: 80px;\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n /* Veritcal Error State */\n .vertical-error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-bg {\n background-color: var(--nile-colors-red-100);\n border: 1px solid var(--nile-colors-red-400);\n }\n\n .file-info-vertical-state {\n width: 100%;\n text-align: center;\n }\n\n .file-info-vertical-state p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n padding-bottom: 6px;\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n max-width: 222px;\n }\n \n .file-info-vertical-state nile-tooltip span, .file-info-vertical-state span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n max-width: 212px;\n }\n\n .error-message {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center\n }\n\n .error-p {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n width: 216px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n }\n\n .error-p p {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin: 0;\n }\n\n /* Displaing uploaded files CSS */\n .display-files {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: center;\n gap: 8px;\n width: 648px;\n min-width: 230px;\n max-height: 200px;\n overflow-y: auto;\n border: 1px solid var(--nile-colors-neutral-700);\n border-radius: var(--nile-radius-radius-xs);\n scrollbar-width: none;\n padding: 12px;\n }\n\n ul, li {\n width: 100%;\n }\n\n li {\n list-style-type: none;\n }\n`;\n\nexport default [styles];"]}
@@ -28,6 +28,7 @@ export declare class NileFilePreview extends NileElement {
28
28
  inputFileName: string;
29
29
  private inputFileHtml;
30
30
  private originalUrl;
31
+ isStringTruncated: boolean;
31
32
  /**
32
33
  * Render method
33
34
  * @slot This is a slot test
@@ -38,7 +39,10 @@ export declare class NileFilePreview extends NileElement {
38
39
  private createUploadState;
39
40
  private handleFileUrl;
40
41
  createState(file: File): Promise<void>;
41
- private dummyFile;
42
+ private customFile;
43
+ getState(): TemplateResult;
44
+ getHorizontalStates(): TemplateResult;
45
+ getVerticalStates(): TemplateResult;
42
46
  render(): TemplateResult;
43
47
  disconnectedCallback(): void;
44
48
  }