@aquera/nile-elements 0.1.67-beta-1.6 → 0.1.67-beta-1.8

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 (674) hide show
  1. package/demo/index.html +150 -245
  2. package/dist/aquera-nile-elements-0.1.57-beta-2.0.tgz +0 -0
  3. package/dist/axe.min-2b379f29.cjs.js +12 -0
  4. package/dist/axe.min-2b379f29.cjs.js.map +1 -0
  5. package/dist/axe.min-c2cd8733.esm.js +12 -0
  6. package/dist/{fixture-aeed6660.esm.js → fixture-add72f26.esm.js} +2 -2
  7. package/dist/fixture-c1bd203f.cjs.js +395 -0
  8. package/dist/fixture-c1bd203f.cjs.js.map +1 -0
  9. package/dist/{fixture-4da0d7ba.cjs.js → fixture-cb376a7f.cjs.js} +2 -2
  10. package/dist/fixture-cb376a7f.cjs.js.map +1 -0
  11. package/dist/fixture-f2693d97.esm.js +569 -0
  12. package/dist/index.cjs.js +1 -1
  13. package/dist/index.esm.js +1 -1
  14. package/dist/index.js +246 -345
  15. package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
  16. package/dist/nile-avatar/nile-avatar.test.cjs.js.map +1 -1
  17. package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
  18. package/dist/nile-badge/index.cjs.js +1 -1
  19. package/dist/nile-badge/index.esm.js +1 -1
  20. package/dist/nile-badge/nile-badge.cjs.js +1 -1
  21. package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
  22. package/dist/nile-badge/nile-badge.esm.js +1 -1
  23. package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
  24. package/dist/nile-badge/nile-badge.test.cjs.js.map +1 -1
  25. package/dist/nile-badge/nile-badge.test.esm.js +1 -1
  26. package/dist/nile-button/index.cjs.js +1 -1
  27. package/dist/nile-button/index.esm.js +1 -1
  28. package/dist/nile-button/nile-button.cjs.js +1 -1
  29. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  30. package/dist/nile-button/nile-button.esm.js +1 -1
  31. package/dist/nile-button/nile-button.test.cjs.js +1 -1
  32. package/dist/nile-button/nile-button.test.cjs.js.map +1 -1
  33. package/dist/nile-button/nile-button.test.esm.js +1 -1
  34. package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
  35. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
  36. package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
  37. package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
  38. package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
  39. package/dist/nile-chip/nile-chip.test.esm.js +1 -1
  40. package/dist/nile-dialog/index.cjs.js +1 -1
  41. package/dist/nile-dialog/index.esm.js +1 -1
  42. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  43. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  44. package/dist/nile-dialog/nile-dialog.esm.js +1 -1
  45. package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
  46. package/dist/nile-dialog/nile-dialog.test.cjs.js.map +1 -1
  47. package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
  48. package/dist/nile-drawer/index.cjs.js +1 -1
  49. package/dist/nile-drawer/index.esm.js +1 -1
  50. package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
  51. package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
  52. package/dist/nile-drawer/nile-drawer.esm.js +2 -2
  53. package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
  54. package/dist/nile-drawer/nile-drawer.test.cjs.js.map +1 -1
  55. package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
  56. package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
  57. package/dist/nile-icon/icons/svg/index.esm.js +1 -1
  58. package/dist/nile-icon/index.cjs.js +1 -1
  59. package/dist/nile-icon/index.cjs.js.map +1 -1
  60. package/dist/nile-icon/index.esm.js +1 -1
  61. package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
  62. package/dist/nile-icon/nile-icon.test.cjs.js.map +1 -1
  63. package/dist/nile-icon/nile-icon.test.esm.js +1 -1
  64. package/dist/nile-icon-button/index.cjs.js +1 -1
  65. package/dist/nile-icon-button/index.esm.js +1 -1
  66. package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
  67. package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
  68. package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
  69. package/dist/nile-input/index.cjs.js +1 -1
  70. package/dist/nile-input/index.esm.js +1 -1
  71. package/dist/nile-input/nile-input.cjs.js +1 -1
  72. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  73. package/dist/nile-input/nile-input.esm.js +1 -1
  74. package/dist/nile-input/nile-input.test.cjs.js +1 -1
  75. package/dist/nile-input/nile-input.test.cjs.js.map +1 -1
  76. package/dist/nile-input/nile-input.test.esm.js +1 -1
  77. package/dist/nile-menu-item/index.cjs.js +1 -1
  78. package/dist/nile-menu-item/index.esm.js +1 -1
  79. package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
  80. package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
  81. package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
  82. package/dist/nile-option/index.cjs.js +1 -1
  83. package/dist/nile-option/index.esm.js +1 -1
  84. package/dist/nile-option/nile-option.cjs.js +1 -1
  85. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  86. package/dist/nile-option/nile-option.esm.js +2 -2
  87. package/dist/nile-option-group/index.cjs.js +2 -0
  88. package/dist/nile-option-group/index.esm.js +1 -0
  89. package/dist/nile-option-group/nile-option-group.cjs.js +2 -0
  90. package/dist/nile-option-group/nile-option-group.cjs.js.map +1 -0
  91. package/dist/nile-option-group/nile-option-group.css.cjs.js +2 -0
  92. package/dist/nile-option-group/nile-option-group.css.cjs.js.map +1 -0
  93. package/dist/nile-option-group/nile-option-group.css.esm.js +46 -0
  94. package/dist/nile-option-group/nile-option-group.esm.js +14 -0
  95. package/dist/nile-option-group/nile-option-group.interface.cjs.js +2 -0
  96. package/dist/nile-option-group/nile-option-group.interface.cjs.js.map +1 -0
  97. package/dist/nile-option-group/nile-option-group.interface.esm.js +1 -0
  98. package/dist/nile-select/index.cjs.js +1 -1
  99. package/dist/nile-select/index.esm.js +1 -1
  100. package/dist/nile-select/nile-select.cjs.js +1 -1
  101. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  102. package/dist/nile-select/nile-select.esm.js +2 -2
  103. package/dist/nile-select/nile-select.test.cjs.js +1 -1
  104. package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
  105. package/dist/nile-select/nile-select.test.esm.js +1 -1
  106. package/dist/nile-tab/index.cjs.js +1 -1
  107. package/dist/nile-tab/index.esm.js +1 -1
  108. package/dist/nile-tab/nile-tab.cjs.js +1 -1
  109. package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
  110. package/dist/nile-tab/nile-tab.esm.js +1 -1
  111. package/dist/nile-tab-group/index.cjs.js +1 -1
  112. package/dist/nile-tab-group/index.esm.js +1 -1
  113. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  114. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  115. package/dist/nile-tab-group/nile-tab-group.esm.js +1 -1
  116. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
  117. package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +1 -1
  118. package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
  119. package/dist/nile-tag/index.cjs.js +1 -1
  120. package/dist/nile-tag/index.esm.js +1 -1
  121. package/dist/nile-tag/nile-tag.cjs.js +1 -1
  122. package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
  123. package/dist/nile-tag/nile-tag.esm.js +1 -1
  124. package/dist/nile-toast/index.cjs.js +1 -1
  125. package/dist/nile-toast/index.esm.js +1 -1
  126. package/dist/nile-toast/nile-toast.cjs.js +1 -1
  127. package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
  128. package/dist/nile-toast/nile-toast.esm.js +1 -1
  129. package/dist/nile-tree/index.cjs.js +1 -1
  130. package/dist/nile-tree/index.esm.js +1 -1
  131. package/dist/nile-tree/nile-tree.cjs.js +1 -1
  132. package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
  133. package/dist/nile-tree/nile-tree.esm.js +1 -1
  134. package/dist/nile-tree-item/index.cjs.js +1 -1
  135. package/dist/nile-tree-item/index.esm.js +1 -1
  136. package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
  137. package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
  138. package/dist/nile-tree-item/nile-tree-item.esm.js +1 -1
  139. package/dist/nile-virtual-select/index.cjs.js +1 -1
  140. package/dist/nile-virtual-select/index.esm.js +1 -1
  141. package/dist/nile-virtual-select/nile-virtual-select.cjs.js +1 -1
  142. package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -1
  143. package/dist/nile-virtual-select/nile-virtual-select.esm.js +2 -2
  144. package/dist/src/index.d.ts +1 -1
  145. package/dist/src/index.js +1 -1
  146. package/dist/src/index.js.map +1 -1
  147. package/dist/src/nile-group-header/index.d.ts +1 -0
  148. package/dist/src/nile-group-header/index.js +2 -0
  149. package/dist/src/nile-group-header/index.js.map +1 -0
  150. package/dist/src/nile-group-header/nile-group-header.css.d.ts +12 -0
  151. package/dist/src/nile-group-header/nile-group-header.css.js +30 -0
  152. package/dist/src/nile-group-header/nile-group-header.css.js.map +1 -0
  153. package/dist/src/nile-group-header/nile-group-header.d.ts +19 -0
  154. package/dist/src/nile-group-header/nile-group-header.js +36 -0
  155. package/dist/src/nile-group-header/nile-group-header.js.map +1 -0
  156. package/dist/src/nile-group-header/nile-option-header.css.d.ts +12 -0
  157. package/dist/src/nile-group-header/nile-option-header.css.js +30 -0
  158. package/dist/src/nile-group-header/nile-option-header.css.js.map +1 -0
  159. package/dist/src/nile-group-header/nile-option-header.d.ts +33 -0
  160. package/dist/src/nile-group-header/nile-option-header.js +51 -0
  161. package/dist/src/nile-group-header/nile-option-header.js.map +1 -0
  162. package/dist/src/nile-icon/icons/svg/index.d.ts +0 -9
  163. package/dist/src/nile-icon/icons/svg/index.js +0 -9
  164. package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
  165. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.d.ts +1 -1
  166. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js +1 -1
  167. package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js.map +1 -1
  168. package/dist/src/nile-option/nile-option.d.ts +1 -0
  169. package/dist/src/nile-option/nile-option.js +5 -0
  170. package/dist/src/nile-option/nile-option.js.map +1 -1
  171. package/dist/src/nile-option-group/index.d.ts +1 -0
  172. package/dist/src/nile-option-group/index.js +2 -0
  173. package/dist/src/nile-option-group/index.js.map +1 -0
  174. package/dist/src/nile-option-group/nile-option-group.css.d.ts +12 -0
  175. package/dist/src/nile-option-group/nile-option-group.css.js +58 -0
  176. package/dist/src/nile-option-group/nile-option-group.css.js.map +1 -0
  177. package/dist/src/nile-option-group/nile-option-group.d.ts +23 -0
  178. package/dist/src/nile-option-group/nile-option-group.interface.d.ts +21 -0
  179. package/dist/src/nile-option-group/nile-option-group.interface.js +2 -0
  180. package/dist/src/nile-option-group/nile-option-group.interface.js.map +1 -0
  181. package/dist/src/nile-option-group/nile-option-group.js +78 -0
  182. package/dist/src/nile-option-group/nile-option-group.js.map +1 -0
  183. package/dist/src/nile-option-header/index.d.ts +1 -0
  184. package/dist/src/nile-option-header/index.js +2 -0
  185. package/dist/src/nile-option-header/index.js.map +1 -0
  186. package/dist/src/nile-option-header/nile-option-header.css.d.ts +12 -0
  187. package/dist/src/nile-option-header/nile-option-header.css.js +30 -0
  188. package/dist/src/nile-option-header/nile-option-header.css.js.map +1 -0
  189. package/dist/src/nile-option-header/nile-option-header.d.ts +33 -0
  190. package/dist/src/nile-option-header/nile-option-header.js +51 -0
  191. package/dist/src/nile-option-header/nile-option-header.js.map +1 -0
  192. package/dist/src/nile-select/nile-select.d.ts +3 -0
  193. package/dist/src/nile-select/nile-select.js +34 -1
  194. package/dist/src/nile-select/nile-select.js.map +1 -1
  195. package/dist/src/nile-tooltip/nile-tooltip-utils.d.ts +18 -0
  196. package/dist/src/nile-tooltip/nile-tooltip-utils.js +216 -0
  197. package/dist/src/nile-tooltip/nile-tooltip-utils.js.map +1 -0
  198. package/dist/src/nile-tooltip/nile-tooltip.test.d.ts +1 -0
  199. package/dist/src/nile-tooltip/nile-tooltip.test.js +148 -0
  200. package/dist/src/nile-tooltip/nile-tooltip.test.js.map +1 -0
  201. package/dist/tsconfig.tsbuildinfo +1 -1
  202. package/package.json +4 -3
  203. package/src/index.ts +1 -1
  204. package/src/nile-icon/icons/svg/index.ts +0 -9
  205. package/src/nile-option/nile-option.ts +3 -0
  206. package/src/nile-option-group/index.ts +1 -0
  207. package/src/nile-option-group/nile-option-group.css.ts +60 -0
  208. package/src/nile-option-group/nile-option-group.interface.ts +24 -0
  209. package/src/nile-option-group/nile-option-group.ts +87 -0
  210. package/src/nile-select/nile-select.ts +41 -2
  211. package/vscode-html-custom-data.json +20 -134
  212. package/dist/axe.min-2c0b27d0.esm.js +0 -1
  213. package/dist/axe.min-51d832fe.cjs.js +0 -2
  214. package/dist/axe.min-51d832fe.cjs.js.map +0 -1
  215. package/dist/fixture-4da0d7ba.cjs.js.map +0 -1
  216. package/dist/flow-938d2713.esm.js +0 -17
  217. package/dist/flow-eb3cbb92.cjs.js +0 -14
  218. package/dist/flow-eb3cbb92.cjs.js.map +0 -1
  219. package/dist/lit-html-879bd16a.esm.js +0 -7
  220. package/dist/lit-html-9a84b336.cjs.js +0 -6
  221. package/dist/lit-html-9a84b336.cjs.js.map +0 -1
  222. package/dist/nile-icon/icons/svg/format_align_justify.cjs.js +0 -2
  223. package/dist/nile-icon/icons/svg/format_align_justify.cjs.js.map +0 -1
  224. package/dist/nile-icon/icons/svg/format_align_justify.esm.js +0 -1
  225. package/dist/nile-icon/icons/svg/format_align_left.cjs.js +0 -2
  226. package/dist/nile-icon/icons/svg/format_align_left.cjs.js.map +0 -1
  227. package/dist/nile-icon/icons/svg/format_align_left.esm.js +0 -1
  228. package/dist/nile-icon/icons/svg/format_align_middle.cjs.js +0 -2
  229. package/dist/nile-icon/icons/svg/format_align_middle.cjs.js.map +0 -1
  230. package/dist/nile-icon/icons/svg/format_align_middle.esm.js +0 -1
  231. package/dist/nile-icon/icons/svg/format_align_right.cjs.js +0 -2
  232. package/dist/nile-icon/icons/svg/format_align_right.cjs.js.map +0 -1
  233. package/dist/nile-icon/icons/svg/format_align_right.esm.js +0 -1
  234. package/dist/nile-icon/icons/svg/format_bold.cjs.js +0 -2
  235. package/dist/nile-icon/icons/svg/format_bold.cjs.js.map +0 -1
  236. package/dist/nile-icon/icons/svg/format_bold.esm.js +0 -1
  237. package/dist/nile-icon/icons/svg/format_italic.cjs.js +0 -2
  238. package/dist/nile-icon/icons/svg/format_italic.cjs.js.map +0 -1
  239. package/dist/nile-icon/icons/svg/format_italic.esm.js +0 -1
  240. package/dist/nile-icon/icons/svg/format_underline.cjs.js +0 -2
  241. package/dist/nile-icon/icons/svg/format_underline.cjs.js.map +0 -1
  242. package/dist/nile-icon/icons/svg/format_underline.esm.js +0 -1
  243. package/dist/nile-icon/icons/svg/image_2.cjs.js +0 -2
  244. package/dist/nile-icon/icons/svg/image_2.cjs.js.map +0 -1
  245. package/dist/nile-icon/icons/svg/image_2.esm.js +0 -1
  246. package/dist/nile-icon/icons/svg/link_2.cjs.js +0 -2
  247. package/dist/nile-icon/icons/svg/link_2.cjs.js.map +0 -1
  248. package/dist/nile-icon/icons/svg/link_2.esm.js +0 -1
  249. package/dist/nile-icon/icons/svg/ng-action.cjs.js +0 -2
  250. package/dist/nile-icon/icons/svg/ng-action.cjs.js.map +0 -1
  251. package/dist/nile-icon/icons/svg/ng-action.esm.js +0 -1
  252. package/dist/nile-icon/icons/svg/ng-activity.cjs.js +0 -2
  253. package/dist/nile-icon/icons/svg/ng-activity.cjs.js.map +0 -1
  254. package/dist/nile-icon/icons/svg/ng-activity.esm.js +0 -1
  255. package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js +0 -2
  256. package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js.map +0 -1
  257. package/dist/nile-icon/icons/svg/ng-alert-circle.esm.js +0 -1
  258. package/dist/nile-icon/icons/svg/ng-align-center.cjs.js +0 -2
  259. package/dist/nile-icon/icons/svg/ng-align-center.cjs.js.map +0 -1
  260. package/dist/nile-icon/icons/svg/ng-align-center.esm.js +0 -1
  261. package/dist/nile-icon/icons/svg/ng-annotation-x.cjs.js +0 -2
  262. package/dist/nile-icon/icons/svg/ng-annotation-x.cjs.js.map +0 -1
  263. package/dist/nile-icon/icons/svg/ng-annotation-x.esm.js +0 -1
  264. package/dist/nile-icon/icons/svg/ng-arrow-down.cjs.js +0 -2
  265. package/dist/nile-icon/icons/svg/ng-arrow-down.cjs.js.map +0 -1
  266. package/dist/nile-icon/icons/svg/ng-arrow-down.esm.js +0 -1
  267. package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.cjs.js +0 -2
  268. package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.cjs.js.map +0 -1
  269. package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.esm.js +0 -1
  270. package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.cjs.js +0 -2
  271. package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.cjs.js.map +0 -1
  272. package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.esm.js +0 -1
  273. package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js +0 -2
  274. package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js.map +0 -1
  275. package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.esm.js +0 -1
  276. package/dist/nile-icon/icons/svg/ng-arrow-up.cjs.js +0 -2
  277. package/dist/nile-icon/icons/svg/ng-arrow-up.cjs.js.map +0 -1
  278. package/dist/nile-icon/icons/svg/ng-arrow-up.esm.js +0 -1
  279. package/dist/nile-icon/icons/svg/ng-bar-chart-12.cjs.js +0 -2
  280. package/dist/nile-icon/icons/svg/ng-bar-chart-12.cjs.js.map +0 -1
  281. package/dist/nile-icon/icons/svg/ng-bar-chart-12.esm.js +0 -1
  282. package/dist/nile-icon/icons/svg/ng-bell-01.cjs.js +0 -2
  283. package/dist/nile-icon/icons/svg/ng-bell-01.cjs.js.map +0 -1
  284. package/dist/nile-icon/icons/svg/ng-bell-01.esm.js +0 -1
  285. package/dist/nile-icon/icons/svg/ng-bell-ringing-04.cjs.js +0 -2
  286. package/dist/nile-icon/icons/svg/ng-bell-ringing-04.cjs.js.map +0 -1
  287. package/dist/nile-icon/icons/svg/ng-bell-ringing-04.esm.js +0 -1
  288. package/dist/nile-icon/icons/svg/ng-bold-01.cjs.js +0 -2
  289. package/dist/nile-icon/icons/svg/ng-bold-01.cjs.js.map +0 -1
  290. package/dist/nile-icon/icons/svg/ng-bold-01.esm.js +0 -1
  291. package/dist/nile-icon/icons/svg/ng-building-01.cjs.js +0 -2
  292. package/dist/nile-icon/icons/svg/ng-building-01.cjs.js.map +0 -1
  293. package/dist/nile-icon/icons/svg/ng-building-01.esm.js +0 -1
  294. package/dist/nile-icon/icons/svg/ng-building-05.cjs.js +0 -2
  295. package/dist/nile-icon/icons/svg/ng-building-05.cjs.js.map +0 -1
  296. package/dist/nile-icon/icons/svg/ng-building-05.esm.js +0 -1
  297. package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js +0 -2
  298. package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js.map +0 -1
  299. package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.esm.js +0 -1
  300. package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js +0 -2
  301. package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js.map +0 -1
  302. package/dist/nile-icon/icons/svg/ng-button-loading-blue.esm.js +0 -1
  303. package/dist/nile-icon/icons/svg/ng-calendar-plus-02.cjs.js +0 -2
  304. package/dist/nile-icon/icons/svg/ng-calendar-plus-02.cjs.js.map +0 -1
  305. package/dist/nile-icon/icons/svg/ng-calendar-plus-02.esm.js +0 -1
  306. package/dist/nile-icon/icons/svg/ng-calendar.cjs.js +0 -2
  307. package/dist/nile-icon/icons/svg/ng-calendar.cjs.js.map +0 -1
  308. package/dist/nile-icon/icons/svg/ng-calendar.esm.js +0 -1
  309. package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js +0 -2
  310. package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js.map +0 -1
  311. package/dist/nile-icon/icons/svg/ng-check-circle-broken.esm.js +0 -1
  312. package/dist/nile-icon/icons/svg/ng-check-circle.cjs.js +0 -2
  313. package/dist/nile-icon/icons/svg/ng-check-circle.cjs.js.map +0 -1
  314. package/dist/nile-icon/icons/svg/ng-check-circle.esm.js +0 -1
  315. package/dist/nile-icon/icons/svg/ng-check-square-broken.cjs.js +0 -2
  316. package/dist/nile-icon/icons/svg/ng-check-square-broken.cjs.js.map +0 -1
  317. package/dist/nile-icon/icons/svg/ng-check-square-broken.esm.js +0 -1
  318. package/dist/nile-icon/icons/svg/ng-check.cjs.js +0 -2
  319. package/dist/nile-icon/icons/svg/ng-check.cjs.js.map +0 -1
  320. package/dist/nile-icon/icons/svg/ng-check.esm.js +0 -1
  321. package/dist/nile-icon/icons/svg/ng-chevron-down.cjs.js +0 -2
  322. package/dist/nile-icon/icons/svg/ng-chevron-down.cjs.js.map +0 -1
  323. package/dist/nile-icon/icons/svg/ng-chevron-down.esm.js +0 -1
  324. package/dist/nile-icon/icons/svg/ng-chevron-left.cjs.js +0 -2
  325. package/dist/nile-icon/icons/svg/ng-chevron-left.cjs.js.map +0 -1
  326. package/dist/nile-icon/icons/svg/ng-chevron-left.esm.js +0 -1
  327. package/dist/nile-icon/icons/svg/ng-chevron-right.cjs.js +0 -2
  328. package/dist/nile-icon/icons/svg/ng-chevron-right.cjs.js.map +0 -1
  329. package/dist/nile-icon/icons/svg/ng-chevron-right.esm.js +0 -1
  330. package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.cjs.js +0 -2
  331. package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.cjs.js.map +0 -1
  332. package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.esm.js +0 -1
  333. package/dist/nile-icon/icons/svg/ng-chevron-up-double.cjs.js +0 -2
  334. package/dist/nile-icon/icons/svg/ng-chevron-up-double.cjs.js.map +0 -1
  335. package/dist/nile-icon/icons/svg/ng-chevron-up-double.esm.js +0 -1
  336. package/dist/nile-icon/icons/svg/ng-chevron-up.cjs.js +0 -2
  337. package/dist/nile-icon/icons/svg/ng-chevron-up.cjs.js.map +0 -1
  338. package/dist/nile-icon/icons/svg/ng-chevron-up.esm.js +0 -1
  339. package/dist/nile-icon/icons/svg/ng-copy-03.cjs.js +0 -2
  340. package/dist/nile-icon/icons/svg/ng-copy-03.cjs.js.map +0 -1
  341. package/dist/nile-icon/icons/svg/ng-copy-03.esm.js +0 -1
  342. package/dist/nile-icon/icons/svg/ng-dataflow-04.cjs.js +0 -2
  343. package/dist/nile-icon/icons/svg/ng-dataflow-04.cjs.js.map +0 -1
  344. package/dist/nile-icon/icons/svg/ng-dataflow-04.esm.js +0 -1
  345. package/dist/nile-icon/icons/svg/ng-dots-grid.cjs.js +0 -2
  346. package/dist/nile-icon/icons/svg/ng-dots-grid.cjs.js.map +0 -1
  347. package/dist/nile-icon/icons/svg/ng-dots-grid.esm.js +0 -1
  348. package/dist/nile-icon/icons/svg/ng-dots-vertical.cjs.js +0 -2
  349. package/dist/nile-icon/icons/svg/ng-dots-vertical.cjs.js.map +0 -1
  350. package/dist/nile-icon/icons/svg/ng-dots-vertical.esm.js +0 -1
  351. package/dist/nile-icon/icons/svg/ng-download-01.cjs.js +0 -2
  352. package/dist/nile-icon/icons/svg/ng-download-01.cjs.js.map +0 -1
  353. package/dist/nile-icon/icons/svg/ng-download-01.esm.js +0 -1
  354. package/dist/nile-icon/icons/svg/ng-dropdown.cjs.js +0 -2
  355. package/dist/nile-icon/icons/svg/ng-dropdown.cjs.js.map +0 -1
  356. package/dist/nile-icon/icons/svg/ng-dropdown.esm.js +0 -1
  357. package/dist/nile-icon/icons/svg/ng-edit-02.cjs.js +0 -2
  358. package/dist/nile-icon/icons/svg/ng-edit-02.cjs.js.map +0 -1
  359. package/dist/nile-icon/icons/svg/ng-edit-02.esm.js +0 -1
  360. package/dist/nile-icon/icons/svg/ng-edit-05.cjs.js +0 -2
  361. package/dist/nile-icon/icons/svg/ng-edit-05.cjs.js.map +0 -1
  362. package/dist/nile-icon/icons/svg/ng-edit-05.esm.js +0 -1
  363. package/dist/nile-icon/icons/svg/ng-expand-06.cjs.js +0 -2
  364. package/dist/nile-icon/icons/svg/ng-expand-06.cjs.js.map +0 -1
  365. package/dist/nile-icon/icons/svg/ng-expand-06.esm.js +0 -1
  366. package/dist/nile-icon/icons/svg/ng-eye-off.cjs.js +0 -2
  367. package/dist/nile-icon/icons/svg/ng-eye-off.cjs.js.map +0 -1
  368. package/dist/nile-icon/icons/svg/ng-eye-off.esm.js +0 -1
  369. package/dist/nile-icon/icons/svg/ng-eye.cjs.js +0 -2
  370. package/dist/nile-icon/icons/svg/ng-eye.cjs.js.map +0 -1
  371. package/dist/nile-icon/icons/svg/ng-eye.esm.js +0 -1
  372. package/dist/nile-icon/icons/svg/ng-file-02.cjs.js +0 -2
  373. package/dist/nile-icon/icons/svg/ng-file-02.cjs.js.map +0 -1
  374. package/dist/nile-icon/icons/svg/ng-file-02.esm.js +0 -1
  375. package/dist/nile-icon/icons/svg/ng-file-06.cjs.js +0 -2
  376. package/dist/nile-icon/icons/svg/ng-file-06.cjs.js.map +0 -1
  377. package/dist/nile-icon/icons/svg/ng-file-06.esm.js +0 -1
  378. package/dist/nile-icon/icons/svg/ng-file-check-02.cjs.js +0 -2
  379. package/dist/nile-icon/icons/svg/ng-file-check-02.cjs.js.map +0 -1
  380. package/dist/nile-icon/icons/svg/ng-file-check-02.esm.js +0 -1
  381. package/dist/nile-icon/icons/svg/ng-file-question-03.cjs.js +0 -2
  382. package/dist/nile-icon/icons/svg/ng-file-question-03.cjs.js.map +0 -1
  383. package/dist/nile-icon/icons/svg/ng-file-question-03.esm.js +0 -1
  384. package/dist/nile-icon/icons/svg/ng-filter-lines.cjs.js +0 -2
  385. package/dist/nile-icon/icons/svg/ng-filter-lines.cjs.js.map +0 -1
  386. package/dist/nile-icon/icons/svg/ng-filter-lines.esm.js +0 -1
  387. package/dist/nile-icon/icons/svg/ng-grid-01.cjs.js +0 -2
  388. package/dist/nile-icon/icons/svg/ng-grid-01.cjs.js.map +0 -1
  389. package/dist/nile-icon/icons/svg/ng-grid-01.esm.js +0 -1
  390. package/dist/nile-icon/icons/svg/ng-help-circle.cjs.js +0 -2
  391. package/dist/nile-icon/icons/svg/ng-help-circle.cjs.js.map +0 -1
  392. package/dist/nile-icon/icons/svg/ng-help-circle.esm.js +0 -1
  393. package/dist/nile-icon/icons/svg/ng-image-03.cjs.js +0 -2
  394. package/dist/nile-icon/icons/svg/ng-image-03.cjs.js.map +0 -1
  395. package/dist/nile-icon/icons/svg/ng-image-03.esm.js +0 -1
  396. package/dist/nile-icon/icons/svg/ng-image-user-left.cjs.js +0 -2
  397. package/dist/nile-icon/icons/svg/ng-image-user-left.cjs.js.map +0 -1
  398. package/dist/nile-icon/icons/svg/ng-image-user-left.esm.js +0 -1
  399. package/dist/nile-icon/icons/svg/ng-info-circle.cjs.js +0 -2
  400. package/dist/nile-icon/icons/svg/ng-info-circle.cjs.js.map +0 -1
  401. package/dist/nile-icon/icons/svg/ng-info-circle.esm.js +0 -1
  402. package/dist/nile-icon/icons/svg/ng-italic-01.cjs.js +0 -2
  403. package/dist/nile-icon/icons/svg/ng-italic-01.cjs.js.map +0 -1
  404. package/dist/nile-icon/icons/svg/ng-italic-01.esm.js +0 -1
  405. package/dist/nile-icon/icons/svg/ng-layers-three-01.cjs.js +0 -2
  406. package/dist/nile-icon/icons/svg/ng-layers-three-01.cjs.js.map +0 -1
  407. package/dist/nile-icon/icons/svg/ng-layers-three-01.esm.js +0 -1
  408. package/dist/nile-icon/icons/svg/ng-list.cjs.js +0 -2
  409. package/dist/nile-icon/icons/svg/ng-list.cjs.js.map +0 -1
  410. package/dist/nile-icon/icons/svg/ng-list.esm.js +0 -1
  411. package/dist/nile-icon/icons/svg/ng-log-out-01.cjs.js +0 -2
  412. package/dist/nile-icon/icons/svg/ng-log-out-01.cjs.js.map +0 -1
  413. package/dist/nile-icon/icons/svg/ng-log-out-01.esm.js +0 -1
  414. package/dist/nile-icon/icons/svg/ng-mail-01.cjs.js +0 -2
  415. package/dist/nile-icon/icons/svg/ng-mail-01.cjs.js.map +0 -1
  416. package/dist/nile-icon/icons/svg/ng-mail-01.esm.js +0 -1
  417. package/dist/nile-icon/icons/svg/ng-mail-04.cjs.js +0 -2
  418. package/dist/nile-icon/icons/svg/ng-mail-04.cjs.js.map +0 -1
  419. package/dist/nile-icon/icons/svg/ng-mail-04.esm.js +0 -1
  420. package/dist/nile-icon/icons/svg/ng-marker-pin-01.cjs.js +0 -2
  421. package/dist/nile-icon/icons/svg/ng-marker-pin-01.cjs.js.map +0 -1
  422. package/dist/nile-icon/icons/svg/ng-marker-pin-01.esm.js +0 -1
  423. package/dist/nile-icon/icons/svg/ng-menu-05.cjs.js +0 -2
  424. package/dist/nile-icon/icons/svg/ng-menu-05.cjs.js.map +0 -1
  425. package/dist/nile-icon/icons/svg/ng-menu-05.esm.js +0 -1
  426. package/dist/nile-icon/icons/svg/ng-message-text-square-01.cjs.js +0 -2
  427. package/dist/nile-icon/icons/svg/ng-message-text-square-01.cjs.js.map +0 -1
  428. package/dist/nile-icon/icons/svg/ng-message-text-square-01.esm.js +0 -1
  429. package/dist/nile-icon/icons/svg/ng-minimize-02.cjs.js +0 -2
  430. package/dist/nile-icon/icons/svg/ng-minimize-02.cjs.js.map +0 -1
  431. package/dist/nile-icon/icons/svg/ng-minimize-02.esm.js +0 -1
  432. package/dist/nile-icon/icons/svg/ng-minus.cjs.js +0 -2
  433. package/dist/nile-icon/icons/svg/ng-minus.cjs.js.map +0 -1
  434. package/dist/nile-icon/icons/svg/ng-minus.esm.js +0 -1
  435. package/dist/nile-icon/icons/svg/ng-plus.cjs.js +0 -2
  436. package/dist/nile-icon/icons/svg/ng-plus.cjs.js.map +0 -1
  437. package/dist/nile-icon/icons/svg/ng-plus.esm.js +0 -1
  438. package/dist/nile-icon/icons/svg/ng-refresh-cw-02.cjs.js +0 -2
  439. package/dist/nile-icon/icons/svg/ng-refresh-cw-02.cjs.js.map +0 -1
  440. package/dist/nile-icon/icons/svg/ng-refresh-cw-02.esm.js +0 -1
  441. package/dist/nile-icon/icons/svg/ng-rocket-02.cjs.js +0 -2
  442. package/dist/nile-icon/icons/svg/ng-rocket-02.cjs.js.map +0 -1
  443. package/dist/nile-icon/icons/svg/ng-rocket-02.esm.js +0 -1
  444. package/dist/nile-icon/icons/svg/ng-search-lg.cjs.js +0 -2
  445. package/dist/nile-icon/icons/svg/ng-search-lg.cjs.js.map +0 -1
  446. package/dist/nile-icon/icons/svg/ng-search-lg.esm.js +0 -1
  447. package/dist/nile-icon/icons/svg/ng-send-01.cjs.js +0 -2
  448. package/dist/nile-icon/icons/svg/ng-send-01.cjs.js.map +0 -1
  449. package/dist/nile-icon/icons/svg/ng-send-01.esm.js +0 -1
  450. package/dist/nile-icon/icons/svg/ng-settings-01.cjs.js +0 -2
  451. package/dist/nile-icon/icons/svg/ng-settings-01.cjs.js.map +0 -1
  452. package/dist/nile-icon/icons/svg/ng-settings-01.esm.js +0 -1
  453. package/dist/nile-icon/icons/svg/ng-share-04.cjs.js +0 -2
  454. package/dist/nile-icon/icons/svg/ng-share-04.cjs.js.map +0 -1
  455. package/dist/nile-icon/icons/svg/ng-share-04.esm.js +0 -1
  456. package/dist/nile-icon/icons/svg/ng-share-06.cjs.js +0 -2
  457. package/dist/nile-icon/icons/svg/ng-share-06.cjs.js.map +0 -1
  458. package/dist/nile-icon/icons/svg/ng-share-06.esm.js +0 -1
  459. package/dist/nile-icon/icons/svg/ng-stars-02.cjs.js +0 -2
  460. package/dist/nile-icon/icons/svg/ng-stars-02.cjs.js.map +0 -1
  461. package/dist/nile-icon/icons/svg/ng-stars-02.esm.js +0 -1
  462. package/dist/nile-icon/icons/svg/ng-trash-01.cjs.js +0 -2
  463. package/dist/nile-icon/icons/svg/ng-trash-01.cjs.js.map +0 -1
  464. package/dist/nile-icon/icons/svg/ng-trash-01.esm.js +0 -1
  465. package/dist/nile-icon/icons/svg/ng-trash-03.cjs.js +0 -2
  466. package/dist/nile-icon/icons/svg/ng-trash-03.cjs.js.map +0 -1
  467. package/dist/nile-icon/icons/svg/ng-trash-03.esm.js +0 -1
  468. package/dist/nile-icon/icons/svg/ng-trend-up-01.cjs.js +0 -2
  469. package/dist/nile-icon/icons/svg/ng-trend-up-01.cjs.js.map +0 -1
  470. package/dist/nile-icon/icons/svg/ng-trend-up-01.esm.js +0 -1
  471. package/dist/nile-icon/icons/svg/ng-underline-01.cjs.js +0 -2
  472. package/dist/nile-icon/icons/svg/ng-underline-01.cjs.js.map +0 -1
  473. package/dist/nile-icon/icons/svg/ng-underline-01.esm.js +0 -1
  474. package/dist/nile-icon/icons/svg/ng-upload-01.cjs.js +0 -2
  475. package/dist/nile-icon/icons/svg/ng-upload-01.cjs.js.map +0 -1
  476. package/dist/nile-icon/icons/svg/ng-upload-01.esm.js +0 -1
  477. package/dist/nile-icon/icons/svg/ng-upload-cloud-02.cjs.js +0 -2
  478. package/dist/nile-icon/icons/svg/ng-upload-cloud-02.cjs.js.map +0 -1
  479. package/dist/nile-icon/icons/svg/ng-upload-cloud-02.esm.js +0 -1
  480. package/dist/nile-icon/icons/svg/ng-user-01.cjs.js +0 -2
  481. package/dist/nile-icon/icons/svg/ng-user-01.cjs.js.map +0 -1
  482. package/dist/nile-icon/icons/svg/ng-user-01.esm.js +0 -1
  483. package/dist/nile-icon/icons/svg/ng-user-check-02-1.cjs.js +0 -2
  484. package/dist/nile-icon/icons/svg/ng-user-check-02-1.cjs.js.map +0 -1
  485. package/dist/nile-icon/icons/svg/ng-user-check-02-1.esm.js +0 -1
  486. package/dist/nile-icon/icons/svg/ng-user-check-02.cjs.js +0 -2
  487. package/dist/nile-icon/icons/svg/ng-user-check-02.cjs.js.map +0 -1
  488. package/dist/nile-icon/icons/svg/ng-user-check-02.esm.js +0 -1
  489. package/dist/nile-icon/icons/svg/ng-user-plus-02.cjs.js +0 -2
  490. package/dist/nile-icon/icons/svg/ng-user-plus-02.cjs.js.map +0 -1
  491. package/dist/nile-icon/icons/svg/ng-user-plus-02.esm.js +0 -1
  492. package/dist/nile-icon/icons/svg/ng-user-right-01.cjs.js +0 -2
  493. package/dist/nile-icon/icons/svg/ng-user-right-01.cjs.js.map +0 -1
  494. package/dist/nile-icon/icons/svg/ng-user-right-01.esm.js +0 -1
  495. package/dist/nile-icon/icons/svg/ng-users-01.cjs.js +0 -2
  496. package/dist/nile-icon/icons/svg/ng-users-01.cjs.js.map +0 -1
  497. package/dist/nile-icon/icons/svg/ng-users-01.esm.js +0 -1
  498. package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js +0 -2
  499. package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js.map +0 -1
  500. package/dist/nile-icon/icons/svg/ng-x-circle.esm.js +0 -1
  501. package/dist/nile-icon/icons/svg/ng-x-close.cjs.js +0 -2
  502. package/dist/nile-icon/icons/svg/ng-x-close.cjs.js.map +0 -1
  503. package/dist/nile-icon/icons/svg/ng-x-close.esm.js +0 -1
  504. package/dist/nile-icon/icons/svg/ng-x-square.cjs.js +0 -2
  505. package/dist/nile-icon/icons/svg/ng-x-square.cjs.js.map +0 -1
  506. package/dist/nile-icon/icons/svg/ng-x-square.esm.js +0 -1
  507. package/dist/nile-rich-text-editor/index.cjs.js +0 -2
  508. package/dist/nile-rich-text-editor/index.esm.js +0 -1
  509. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js +0 -2
  510. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js.map +0 -1
  511. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js +0 -2
  512. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js.map +0 -1
  513. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.esm.js +0 -107
  514. package/dist/nile-rich-text-editor/nile-rich-text-editor.esm.js +0 -1
  515. package/dist/nile-rich-text-editor/nile-rte-color.cjs.js +0 -2
  516. package/dist/nile-rich-text-editor/nile-rte-color.cjs.js.map +0 -1
  517. package/dist/nile-rich-text-editor/nile-rte-color.esm.js +0 -1
  518. package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js +0 -2
  519. package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js.map +0 -1
  520. package/dist/nile-rich-text-editor/nile-rte-divider.esm.js +0 -1
  521. package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js +0 -2
  522. package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js.map +0 -1
  523. package/dist/nile-rich-text-editor/nile-rte-mentions-item.esm.js +0 -1
  524. package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js +0 -3
  525. package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js.map +0 -1
  526. package/dist/nile-rich-text-editor/nile-rte-mentions.esm.js +0 -1
  527. package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js +0 -2
  528. package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js.map +0 -1
  529. package/dist/nile-rich-text-editor/nile-rte-preview.esm.js +0 -1
  530. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js +0 -2
  531. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js.map +0 -1
  532. package/dist/nile-rich-text-editor/nile-rte-select.esm.js +0 -52
  533. package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js +0 -2
  534. package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js.map +0 -1
  535. package/dist/nile-rich-text-editor/nile-rte-toolbar-item.esm.js +0 -1
  536. package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js +0 -2
  537. package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js.map +0 -1
  538. package/dist/nile-rich-text-editor/nile-rte-toolbar.esm.js +0 -1
  539. package/dist/nile-rich-text-editor/utils.cjs.js +0 -2
  540. package/dist/nile-rich-text-editor/utils.cjs.js.map +0 -1
  541. package/dist/nile-rich-text-editor/utils.esm.js +0 -1
  542. package/dist/scopedElementsWrapper-24f32095.cjs.js +0 -6
  543. package/dist/scopedElementsWrapper-24f32095.cjs.js.map +0 -1
  544. package/dist/scopedElementsWrapper-7a509408.esm.js +0 -7
  545. package/dist/sinon-esm-69e51168.cjs.js +0 -2
  546. package/dist/sinon-esm-69e51168.cjs.js.map +0 -1
  547. package/dist/sinon-esm-73a0cd99.esm.js +0 -1
  548. package/dist/src/nile-calendar/test.d.ts +0 -0
  549. package/dist/src/nile-calendar/test.js +0 -2
  550. package/dist/src/nile-calendar/test.js.map +0 -1
  551. package/dist/src/nile-icon/icons/svg/format_align_justify.d.ts +0 -5
  552. package/dist/src/nile-icon/icons/svg/format_align_justify.js +0 -5
  553. package/dist/src/nile-icon/icons/svg/format_align_justify.js.map +0 -1
  554. package/dist/src/nile-icon/icons/svg/format_align_left.d.ts +0 -5
  555. package/dist/src/nile-icon/icons/svg/format_align_left.js +0 -5
  556. package/dist/src/nile-icon/icons/svg/format_align_left.js.map +0 -1
  557. package/dist/src/nile-icon/icons/svg/format_align_middle.d.ts +0 -5
  558. package/dist/src/nile-icon/icons/svg/format_align_middle.js +0 -5
  559. package/dist/src/nile-icon/icons/svg/format_align_middle.js.map +0 -1
  560. package/dist/src/nile-icon/icons/svg/format_align_right.d.ts +0 -5
  561. package/dist/src/nile-icon/icons/svg/format_align_right.js +0 -5
  562. package/dist/src/nile-icon/icons/svg/format_align_right.js.map +0 -1
  563. package/dist/src/nile-icon/icons/svg/format_bold.d.ts +0 -5
  564. package/dist/src/nile-icon/icons/svg/format_bold.js +0 -5
  565. package/dist/src/nile-icon/icons/svg/format_bold.js.map +0 -1
  566. package/dist/src/nile-icon/icons/svg/format_italic.d.ts +0 -5
  567. package/dist/src/nile-icon/icons/svg/format_italic.js +0 -5
  568. package/dist/src/nile-icon/icons/svg/format_italic.js.map +0 -1
  569. package/dist/src/nile-icon/icons/svg/format_underline.d.ts +0 -5
  570. package/dist/src/nile-icon/icons/svg/format_underline.js +0 -5
  571. package/dist/src/nile-icon/icons/svg/format_underline.js.map +0 -1
  572. package/dist/src/nile-icon/icons/svg/image_2.d.ts +0 -5
  573. package/dist/src/nile-icon/icons/svg/image_2.js +0 -5
  574. package/dist/src/nile-icon/icons/svg/image_2.js.map +0 -1
  575. package/dist/src/nile-icon/icons/svg/link_2.d.ts +0 -5
  576. package/dist/src/nile-icon/icons/svg/link_2.js +0 -5
  577. package/dist/src/nile-icon/icons/svg/link_2.js.map +0 -1
  578. package/dist/src/nile-rich-text-editor/index.d.ts +0 -1
  579. package/dist/src/nile-rich-text-editor/index.js +0 -2
  580. package/dist/src/nile-rich-text-editor/index.js.map +0 -1
  581. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.d.ts +0 -3
  582. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js +0 -111
  583. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js.map +0 -1
  584. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.d.ts +0 -58
  585. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js +0 -667
  586. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js.map +0 -1
  587. package/dist/src/nile-rich-text-editor/nile-rte-color.d.ts +0 -14
  588. package/dist/src/nile-rich-text-editor/nile-rte-color.js +0 -28
  589. package/dist/src/nile-rich-text-editor/nile-rte-color.js.map +0 -1
  590. package/dist/src/nile-rich-text-editor/nile-rte-divider.d.ts +0 -10
  591. package/dist/src/nile-rich-text-editor/nile-rte-divider.js +0 -12
  592. package/dist/src/nile-rich-text-editor/nile-rte-divider.js.map +0 -1
  593. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.d.ts +0 -19
  594. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js +0 -54
  595. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js.map +0 -1
  596. package/dist/src/nile-rich-text-editor/nile-rte-mentions.d.ts +0 -64
  597. package/dist/src/nile-rich-text-editor/nile-rte-mentions.js +0 -490
  598. package/dist/src/nile-rich-text-editor/nile-rte-mentions.js.map +0 -1
  599. package/dist/src/nile-rich-text-editor/nile-rte-preview.d.ts +0 -10
  600. package/dist/src/nile-rich-text-editor/nile-rte-preview.js +0 -12
  601. package/dist/src/nile-rich-text-editor/nile-rte-preview.js.map +0 -1
  602. package/dist/src/nile-rich-text-editor/nile-rte-select.d.ts +0 -37
  603. package/dist/src/nile-rich-text-editor/nile-rte-select.js +0 -205
  604. package/dist/src/nile-rich-text-editor/nile-rte-select.js.map +0 -1
  605. package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.d.ts +0 -12
  606. package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js +0 -23
  607. package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js.map +0 -1
  608. package/dist/src/nile-rich-text-editor/nile-rte-toolbar.d.ts +0 -10
  609. package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js +0 -12
  610. package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js.map +0 -1
  611. package/dist/src/nile-rich-text-editor/rte-utils/content.d.ts +0 -2
  612. package/dist/src/nile-rich-text-editor/rte-utils/content.js +0 -25
  613. package/dist/src/nile-rich-text-editor/rte-utils/content.js.map +0 -1
  614. package/dist/src/nile-rich-text-editor/rte-utils/css.d.ts +0 -1
  615. package/dist/src/nile-rich-text-editor/rte-utils/css.js +0 -9
  616. package/dist/src/nile-rich-text-editor/rte-utils/css.js.map +0 -1
  617. package/dist/src/nile-rich-text-editor/rte-utils/dom.d.ts +0 -2
  618. package/dist/src/nile-rich-text-editor/rte-utils/dom.js +0 -48
  619. package/dist/src/nile-rich-text-editor/rte-utils/dom.js.map +0 -1
  620. package/dist/src/nile-rich-text-editor/rte-utils/formatting.d.ts +0 -2
  621. package/dist/src/nile-rich-text-editor/rte-utils/formatting.js +0 -69
  622. package/dist/src/nile-rich-text-editor/rte-utils/formatting.js.map +0 -1
  623. package/dist/src/nile-rich-text-editor/rte-utils/keys.d.ts +0 -2
  624. package/dist/src/nile-rich-text-editor/rte-utils/keys.js +0 -38
  625. package/dist/src/nile-rich-text-editor/rte-utils/keys.js.map +0 -1
  626. package/dist/src/nile-rich-text-editor/rte-utils/lists.d.ts +0 -2
  627. package/dist/src/nile-rich-text-editor/rte-utils/lists.js +0 -28
  628. package/dist/src/nile-rich-text-editor/rte-utils/lists.js.map +0 -1
  629. package/dist/src/nile-rich-text-editor/rte-utils/selection.d.ts +0 -17
  630. package/dist/src/nile-rich-text-editor/rte-utils/selection.js +0 -39
  631. package/dist/src/nile-rich-text-editor/rte-utils/selection.js.map +0 -1
  632. package/dist/src/nile-rich-text-editor/rte-utils/toolbar.d.ts +0 -28
  633. package/dist/src/nile-rich-text-editor/rte-utils/toolbar.js +0 -161
  634. package/dist/src/nile-rich-text-editor/rte-utils/toolbar.js.map +0 -1
  635. package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.d.ts +0 -13
  636. package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.js +0 -119
  637. package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.js.map +0 -1
  638. package/dist/src/nile-rich-text-editor/rte-utils/vars.d.ts +0 -1
  639. package/dist/src/nile-rich-text-editor/rte-utils/vars.js +0 -14
  640. package/dist/src/nile-rich-text-editor/rte-utils/vars.js.map +0 -1
  641. package/dist/src/nile-rich-text-editor/utils.d.ts +0 -13
  642. package/dist/src/nile-rich-text-editor/utils.js +0 -405
  643. package/dist/src/nile-rich-text-editor/utils.js.map +0 -1
  644. package/dist/src/version.d.ts +0 -9
  645. package/dist/src/version.js +0 -7
  646. package/dist/src/version.js.map +0 -1
  647. package/dist/version.cjs.js +0 -2
  648. package/dist/version.cjs.js.map +0 -1
  649. package/dist/version.esm.js +0 -1
  650. package/dist/virtualize-3a6cec69.esm.js +0 -22
  651. package/dist/virtualize-72f549f4.cjs.js +0 -18
  652. package/dist/virtualize-72f549f4.cjs.js.map +0 -1
  653. package/src/nile-icon/icons/svg/format_align_justify.ts +0 -5
  654. package/src/nile-icon/icons/svg/format_align_left.ts +0 -5
  655. package/src/nile-icon/icons/svg/format_align_middle.ts +0 -5
  656. package/src/nile-icon/icons/svg/format_align_right.ts +0 -5
  657. package/src/nile-icon/icons/svg/format_bold.ts +0 -5
  658. package/src/nile-icon/icons/svg/format_italic.ts +0 -5
  659. package/src/nile-icon/icons/svg/format_underline.ts +0 -5
  660. package/src/nile-icon/icons/svg/image_2.ts +0 -5
  661. package/src/nile-icon/icons/svg/link_2.ts +0 -5
  662. package/src/nile-rich-text-editor/index.ts +0 -1
  663. package/src/nile-rich-text-editor/nile-rich-text-editor.css.ts +0 -112
  664. package/src/nile-rich-text-editor/nile-rich-text-editor.ts +0 -738
  665. package/src/nile-rich-text-editor/nile-rte-color.ts +0 -14
  666. package/src/nile-rich-text-editor/nile-rte-divider.ts +0 -9
  667. package/src/nile-rich-text-editor/nile-rte-mentions-item.ts +0 -46
  668. package/src/nile-rich-text-editor/nile-rte-mentions.ts +0 -522
  669. package/src/nile-rich-text-editor/nile-rte-preview.ts +0 -9
  670. package/src/nile-rich-text-editor/nile-rte-select.ts +0 -213
  671. package/src/nile-rich-text-editor/nile-rte-toolbar-item.ts +0 -13
  672. package/src/nile-rich-text-editor/nile-rte-toolbar.ts +0 -9
  673. package/src/nile-rich-text-editor/utils.ts +0 -419
  674. /package/dist/{nile-rich-text-editor → nile-option-group}/index.cjs.js.map +0 -0
@@ -1,738 +0,0 @@
1
- // nile-rich-text-editor.ts
2
- import { LitElement } from 'lit';
3
- import { customElement, property, state } from 'lit/decorators.js';
4
-
5
- import './nile-rte-toolbar';
6
- import './nile-rte-toolbar-item';
7
- import './nile-rte-select';
8
- import './nile-rte-color';
9
- import './nile-rte-divider';
10
- import './nile-rte-preview';
11
- import './nile-rte-mentions';
12
-
13
- import {
14
- closestBlock, nearestElement, rgbToHex,
15
- toggleInlineTag, setBlockTag, setAlignment,
16
- setFontFamily, setForeColor, insertOrEditLink, setBackColor
17
- } from './utils';
18
-
19
- import {styles} from './nile-rich-text-editor.css';
20
-
21
- type MentionsConfig = Record<string, { key: string; label: string }[]>;
22
-
23
- /**
24
- * Map commands → default icon names from your <nile-icon> set.
25
- * Adjust values to match the real names you have.
26
- */
27
- const DEFAULT_ICONS: Record<string, string> = {
28
- bold: 'format_bold',
29
- italic: 'format_italic',
30
- underline: 'format_underline',
31
- link: 'link_2',
32
- left: 'format_align_left',
33
- center: 'format_align_middle',
34
- right: 'format_align_right',
35
- justify: 'format_align_justify',
36
- ul: 'format_list_bulleted',
37
- ol: 'format_list_numbered',
38
- clear: 'error',
39
- };
40
-
41
- @customElement('nile-rich-text-editor')
42
- export class NileRichTextEditor extends LitElement {
43
- protected createRenderRoot() { return this; }
44
- protected shouldUpdate() { return false; }
45
-
46
- /** Initial HTML content */
47
- @property({ type: String }) value = '';
48
-
49
- /** Optional mentions config (can also be on <nile-rte-mentions mentions="...">) */
50
- @property({
51
- attribute: 'mentions',
52
- converter: {
53
- fromAttribute: (value: string): MentionsConfig => {
54
- try {
55
- const parsed = JSON.parse(value);
56
- const out: MentionsConfig = {};
57
- for (const trig of Object.keys(parsed)) {
58
- const arr = parsed[trig];
59
- if (Array.isArray(arr)) {
60
- out[trig] = arr
61
- .filter(i => i && typeof i.key === 'string' && typeof i.label === 'string')
62
- .map(i => ({ key: i.key, label: i.label }));
63
- }
64
- }
65
- return out;
66
- } catch { return {}; }
67
- },
68
- toAttribute: (v: MentionsConfig) => JSON.stringify(v),
69
- }
70
- })
71
- mentions: MentionsConfig = {};
72
-
73
- // ----- internal state (no Lit render) -----
74
- @state() private content = '';
75
- private editorEl!: HTMLElement;
76
- private previewEl: HTMLElement | null = null;
77
- private toolbarEl: HTMLElement | null = null;
78
-
79
- private lastRange: Range | null = null;
80
-
81
- // map for button active reflections
82
- private buttonMap = new Map<string, HTMLElement[]>();
83
- private headingSelect: HTMLSelectElement | null = null;
84
- private fontSelect: HTMLSelectElement | null = null;
85
- private colorInput: HTMLInputElement | null = null;
86
- private bgColorInput: HTMLInputElement | null = null;
87
- private colorSwatchEl: HTMLElement | null = null;
88
- private bgSwatchEl: HTMLElement | null = null;
89
-
90
-
91
- // Mentions controller (child)
92
- private mentionsEl: HTMLElement | null = null;
93
-
94
-
95
-
96
- private injectCss(cssText: string) {
97
- if (this.querySelector('style[data-rte-style]')) return;
98
- const style = document.createElement('style');
99
- style.setAttribute('data-rte-style', 'true');
100
- style.textContent = cssText;
101
- this.insertBefore(style, this.firstChild);
102
- }
103
-
104
- connectedCallback(): void {
105
- super.connectedCallback();
106
-
107
-
108
- this.injectCss(styles.cssText);
109
-
110
-
111
-
112
- this.toolbarEl = this.querySelector('nile-rte-toolbar');
113
- this.previewEl = this.querySelector('nile-rte-preview');
114
-
115
-
116
- this.ensureEditor();
117
-
118
-
119
- if (this.value && !this.editorEl.innerHTML.trim()) {
120
- this.editorEl.innerHTML = this.value;
121
- }
122
- this.content = this.editorEl.innerHTML;
123
-
124
-
125
- if (this.toolbarEl) this.wireAuthoredToolbar(this.toolbarEl);
126
-
127
-
128
- this.mentionsEl = this.querySelector('nile-rte-mentions');
129
- if (this.mentionsEl) {
130
-
131
- (this.mentionsEl as any).attach?.(this.editorEl, this as HTMLElement);
132
-
133
- (this.mentionsEl as any).setExternalConfig?.(this.mentions);
134
- }
135
-
136
-
137
- this.wireEditor();
138
-
139
-
140
- this.updateToolbarState();
141
- this.syncPreview();
142
-
143
-
144
- document.addEventListener('selectionchange', this.onSelectionChange, true);
145
- }
146
-
147
- disconnectedCallback(): void {
148
- document.removeEventListener('selectionchange', this.onSelectionChange, true);
149
-
150
- if (this.mentionsEl && (this.mentionsEl as any).detach) {
151
- (this.mentionsEl as any).detach();
152
- }
153
- super.disconnectedCallback();
154
- }
155
-
156
-
157
-
158
-
159
- private ensureEditor() {
160
- this.editorEl = this.querySelector('.editor') as HTMLElement;
161
- if (!this.editorEl) {
162
- const editor = document.createElement('article');
163
- editor.className = 'editor';
164
- editor.setAttribute('contenteditable','true');
165
- if (this.toolbarEl?.nextSibling) {
166
- this.insertBefore(editor, this.toolbarEl.nextSibling);
167
- } else if (this.previewEl) {
168
- this.insertBefore(editor, this.previewEl);
169
- } else {
170
- this.appendChild(editor);
171
- }
172
- this.editorEl = editor;
173
- }
174
- if (!this.editorEl.innerHTML.trim()) {
175
- this.editorEl.innerHTML = '<p><br></p>';
176
- }
177
- this.ensureAtLeastOneParagraph();
178
- }
179
-
180
- private wireEditor() {
181
- this.editorEl.addEventListener('input', () => {
182
- this.ensureAtLeastOneParagraph();
183
- this.updateContent();
184
- });
185
- this.editorEl.addEventListener('mouseup', () => this.saveSelection());
186
- this.editorEl.addEventListener('keyup', () => this.saveSelection());
187
- this.editorEl.addEventListener('keydown', this.onEditorKeydown);
188
- }
189
-
190
-
191
- private onEditorKeydown = (e: KeyboardEvent) => {
192
- if (e.key !== 'Tab') return;
193
-
194
- e.preventDefault();
195
- this.focusAndRestore();
196
-
197
- const sel = window.getSelection();
198
- if (!sel || sel.rangeCount === 0) return;
199
- const range = sel.getRangeAt(0);
200
-
201
-
202
- if (e.shiftKey) {
203
- if (range.collapsed && range.startContainer.nodeType === Node.TEXT_NODE) {
204
- const t = range.startContainer as Text;
205
- const off = range.startOffset;
206
- const before = t.data.slice(0, off);
207
-
208
-
209
- const removed = before.replace(/(\t|[ \u00a0]{2})$/, '');
210
- if (removed.length !== before.length) {
211
- t.data = removed + t.data.slice(off);
212
- const r = document.createRange();
213
- r.setStart(t, removed.length);
214
- r.collapse(true);
215
- sel.removeAllRanges();
216
- sel.addRange(r);
217
- this.updateContent();
218
- this.updateToolbarState();
219
- }
220
- }
221
- return;
222
- }
223
-
224
-
225
- range.deleteContents();
226
- const tabNode = document.createTextNode('\t');
227
- range.insertNode(tabNode);
228
-
229
-
230
- const r = document.createRange();
231
- r.setStartAfter(tabNode);
232
- r.collapse(true);
233
- sel.removeAllRanges();
234
- sel.addRange(r);
235
-
236
- this.updateContent();
237
- this.updateToolbarState();
238
- };
239
-
240
-
241
- private wireAuthoredToolbar(tb: HTMLElement) {
242
-
243
- this.buttonMap.clear();
244
- this.headingSelect = null;
245
- this.fontSelect = null;
246
- this.colorInput = null;
247
-
248
-
249
- Array.from(tb.children).forEach(child => {
250
- const tag = child.tagName.toLowerCase();
251
-
252
- if (tag === 'nile-rte-select' && child.getAttribute('type') === 'align') {
253
- child.addEventListener('change', (e: any) => {
254
- this.focusAndRestore();
255
- const alignment = e.detail as 'left'|'center'|'right'|'justify';
256
- setAlignment(this.editorEl, alignment);
257
- this.updateContent();
258
- this.updateToolbarState();
259
- });
260
- return;
261
- }
262
-
263
-
264
- if (tag === 'nile-rte-toolbar-item') {
265
-
266
- let btn = child.querySelector(':scope > nile-button') as HTMLElement | null;
267
-
268
- const cmd = child.getAttribute('name') || '';
269
- const label = child.getAttribute('label') || cmd;
270
- const iconAttr = child.getAttribute('icon');
271
- const authoredHasContent = child.innerHTML.trim().length > 0;
272
-
273
-
274
- if (!btn) {
275
- btn = document.createElement('nile-button');
276
- (btn as any).variant = 'tertiary';
277
- (btn as any).size = 'small'; // optional
278
- }
279
-
280
-
281
- if (iconAttr) {
282
- btn.innerHTML = `<nile-icon name="${iconAttr}" aria-label="${label}"></nile-icon>`;
283
- child.innerHTML = '';
284
- } else if (!authoredHasContent) {
285
- const defaultIcon = DEFAULT_ICONS[cmd];
286
- if (defaultIcon) {
287
- btn.innerHTML = `<nile-icon name="${defaultIcon}" size="20" color="black" aria-label="${label}"></nile-icon>`;
288
- } else {
289
- btn.textContent = label || cmd;
290
- }
291
- child.innerHTML = '';
292
- } else {
293
- btn.innerHTML = child.innerHTML;
294
- child.innerHTML = '';
295
- }
296
-
297
- // Mount it
298
- if (!btn.isConnected) child.appendChild(btn);
299
-
300
- // Interactions
301
- btn.setAttribute('aria-label', label);
302
- btn.addEventListener('mousedown', e => e.preventDefault());
303
- btn.addEventListener('click', () => this.onToolbarCommand(cmd));
304
-
305
-
306
- const arr = this.buttonMap.get(cmd) ?? [];
307
- arr.push(btn);
308
- this.buttonMap.set(cmd, arr);
309
-
310
- return;
311
- }
312
- if (tag === 'nile-rte-select') {
313
- const type = child.getAttribute('type') || '';
314
-
315
- // listen for our custom dropdown’s change event
316
- child.addEventListener('change', (e: any) => {
317
- // restore focus & selection
318
- this.focusAndRestore();
319
-
320
- const val = e.detail as string;
321
-
322
- if (type === 'heading') {
323
- // apply block tag
324
- setBlockTag(this.editorEl, val as any);
325
- }
326
- else if (type === 'font') {
327
- setFontFamily(this.editorEl, val);
328
- }
329
-
330
- // update the editor content & toolbar UI
331
- this.updateContent();
332
- this.updateToolbarState();
333
- });
334
-
335
- // nothing else to inject into the DOM
336
- return;
337
- }
338
-
339
-
340
- if (tag === 'nile-rte-color') {
341
- const label = child.getAttribute('label') ?? 'Text color';
342
- const value = child.getAttribute('value') ?? '#000000';
343
- const mode = child.getAttribute('mode') ?? 'text'; // 'text' | 'background'
344
-
345
- // Create/attach the hidden color input
346
- let input = child.querySelector(':scope > input[type="color"]') as HTMLInputElement | null;
347
- if (!input) {
348
- input = document.createElement('input');
349
- input.type = 'color';
350
- input.style.position = 'absolute';
351
- input.style.opacity = '0';
352
- input.style.pointerEvents = 'none'; // we'll click it programmatically
353
- child.appendChild(input);
354
- }
355
- input.title = label;
356
- input.value = value;
357
-
358
- let trigger = child.querySelector(':scope > nile-button') as HTMLElement | null;
359
- if (!trigger) {
360
- const nb = document.createElement('nile-button');
361
- (nb as any).variant = 'ghost';
362
- nb.className = 'rte-color-trigger';
363
- nb.setAttribute('aria-label', label);
364
-
365
- if (mode === 'background') {
366
- nb.innerHTML = `<span class="swatch-box" aria-hidden="true"></span>`;
367
- } else {
368
- nb.innerHTML = `
369
- <span class="glyph-stack" aria-hidden="true">
370
- <span class="glyph">A</span>
371
- <span class="underline"></span>
372
- </span>
373
- `;
374
- }
375
-
376
- child.appendChild(nb);
377
- trigger = nb;
378
- }
379
-
380
-
381
- // Cache swatch elements to update later
382
- const underline = trigger.querySelector('.underline') as HTMLElement | null;
383
- const square = trigger.querySelector('.swatch-box') as HTMLElement | null;
384
-
385
- if (mode === 'background') {
386
- this.bgColorInput = input;
387
- this.bgSwatchEl = square;
388
- if (this.bgSwatchEl) this.bgSwatchEl.style.backgroundColor = input.value;
389
- } else {
390
- this.colorInput = input;
391
- this.colorSwatchEl = underline;
392
- if (this.colorSwatchEl) this.colorSwatchEl.style.backgroundColor = input.value;
393
- }
394
-
395
- // Open native picker on trigger click
396
- trigger.addEventListener('click', (e) => {
397
- e.preventDefault();
398
- // Keep selection before opening the picker
399
- this.focusAndRestore();
400
- input!.click();
401
- });
402
-
403
- // When the user picks a color, apply it + update swatch
404
- input.addEventListener('input', () => {
405
- this.focusAndRestore();
406
- if (mode === 'background') {
407
- setBackColor(this.editorEl, input!.value);
408
- if (this.bgSwatchEl) this.bgSwatchEl.style.backgroundColor = input!.value;
409
- } else {
410
- setForeColor(this.editorEl, input!.value);
411
- if (this.colorSwatchEl) this.colorSwatchEl.style.backgroundColor = input!.value;
412
- }
413
- this.updateContent();
414
- this.updateToolbarState();
415
- });
416
-
417
- // Prevent losing selection when interacting
418
- trigger.addEventListener('mousedown', e => e.preventDefault());
419
- input.addEventListener('mousedown', e => e.preventDefault());
420
- }
421
- });
422
- }
423
- private onSelectionChange = () => {
424
- if (!this.editorEl) return;
425
- const sel = document.getSelection();
426
- if (!sel || sel.rangeCount === 0) return;
427
- const range = sel.getRangeAt(0);
428
- if (this.editorEl.contains(range.commonAncestorContainer)) {
429
- this.lastRange = range.cloneRange();
430
- this.updateToolbarState();
431
- }
432
- };
433
- private saveSelection() {
434
- const sel = window.getSelection();
435
- if (sel && sel.rangeCount) this.lastRange = sel.getRangeAt(0).cloneRange();
436
- }
437
- private restoreSelection() {
438
- if (!this.lastRange) return;
439
- const sel = document.getSelection(); if (!sel) return;
440
- sel.removeAllRanges(); sel.addRange(this.lastRange);
441
- }
442
- private focusAndRestore() { this.editorEl?.focus(); this.restoreSelection(); }
443
-
444
- /*──────────────────────── LIST HELPERS ────────────────────────*/
445
- private insertList(type: 'ul' | 'ol') {
446
- this.restoreSelection();
447
- if (!this.lastRange) return;
448
-
449
- // build <ul>/<ol>
450
- const list = document.createElement(type);
451
-
452
- // grab the selected fragment
453
- const frag = this.lastRange.extractContents();
454
- const temp = document.createElement('div');
455
- temp.appendChild(frag);
456
-
457
- // wrap each top-level node in an <li>
458
- Array.from(temp.childNodes).forEach(n => {
459
- // skip empty whitespace text nodes
460
- if (n.nodeType === Node.TEXT_NODE && !n.textContent?.trim()) return;
461
- const li = document.createElement('li');
462
- li.appendChild(n); // moves the node!
463
- list.appendChild(li);
464
- });
465
-
466
- // insert list where the selection was
467
- this.lastRange.insertNode(list);
468
- this.afterListEdit(list);
469
- }
470
-
471
- private afterListEdit(node: Node) {
472
- const range = document.createRange();
473
- range.setStartAfter(node);
474
- range.collapse(true);
475
- const sel = window.getSelection();
476
- sel?.removeAllRanges();
477
- sel?.addRange(range);
478
-
479
- this.saveSelection();
480
- this.updateContent();
481
- this.updateToolbarState();
482
- }
483
- // Keep at least one <p><br></p> and wrap stray inline/text into a <p>
484
- private ensureAtLeastOneParagraph() {
485
- const el = this.editorEl;
486
- if (!el) return;
487
-
488
- // 1) If completely empty → seed a paragraph
489
- const onlyWhitespace =
490
- (el.textContent ?? '').replace(/\u200B/g, '').trim() === '';
491
- if (el.childNodes.length === 0 || onlyWhitespace) {
492
- el.innerHTML = '<p><br></p>';
493
- return;
494
- }
495
-
496
- // 2) If no block elements exist, wrap whatever is there into a <p>
497
- const hasBlock = el.querySelector('p,h1,h2,h3,h4,h5,h6,ul,ol,table,blockquote,pre');
498
- if (!hasBlock) {
499
- const p = document.createElement('p');
500
- while (el.firstChild) p.appendChild(el.firstChild);
501
- if (!p.hasChildNodes()) p.appendChild(document.createElement('br'));
502
- el.appendChild(p);
503
- return;
504
- }
505
-
506
- // 3) Make sure the first/only empty <p> still has a <br>
507
- el.querySelectorAll('p').forEach(p => {
508
- if ((p.textContent ?? '').replace(/\u200B/g, '') === '') {
509
- if (!p.innerHTML.toLowerCase().includes('<br')) p.innerHTML = '<br>';
510
- }
511
- });
512
- }
513
-
514
-
515
-
516
- // ---------- Toolbar/commands ----------
517
- private onToolbarCommand(cmd: string) {
518
- this.focusAndRestore();
519
- switch (cmd) {
520
- case 'bold': toggleInlineTag(this.editorEl, 'strong'); break;
521
- case 'italic': toggleInlineTag(this.editorEl, 'em'); break;
522
- case 'underline': toggleInlineTag(this.editorEl, 'u'); break;
523
- case 'left': setAlignment(this.editorEl, 'left'); break;
524
- case 'center': setAlignment(this.editorEl, 'center'); break;
525
- case 'right': setAlignment(this.editorEl, 'right'); break;
526
- case 'justify': setAlignment(this.editorEl, 'justify'); break;
527
- case 'ul': this.insertList('ul'); break;
528
- case 'ol': this.insertList('ol'); break;
529
- case 'link': insertOrEditLink(this.editorEl); break;
530
- case 'clear':
531
- const walker = document.createTreeWalker(this.editorEl, NodeFilter.SHOW_ELEMENT);
532
- const toUnwrap: HTMLElement[] = [];
533
- while (walker.nextNode()) {
534
- const el = walker.currentNode as HTMLElement;
535
- el.removeAttribute('style');
536
- if (['B','STRONG','I','EM','U','SPAN','FONT'].includes(el.tagName)) {
537
- toUnwrap.push(el);
538
- }
539
- }
540
- for (const el of toUnwrap) {
541
- while (el.firstChild) el.parentNode?.insertBefore(el.firstChild, el);
542
- el.remove();
543
- }
544
- this.ensureAtLeastOneParagraph();
545
- break;
546
-
547
- default: break;
548
- }
549
- this.updateContent(); this.updateToolbarState();
550
- }
551
-
552
- private setBtnActive(cmd: string, active: boolean) {
553
- const arr = this.buttonMap.get(cmd); if (!arr) return;
554
- for (const btn of arr) btn.toggleAttribute('data-active', !!active);
555
- }
556
-
557
- private updateToolbarState() {
558
- if (!this.editorEl) return;
559
- const sel = document.getSelection();
560
- if (!sel || sel.rangeCount === 0) return;
561
- const range = sel.getRangeAt(0);
562
- if (!this.editorEl.contains(range.commonAncestorContainer)) return;
563
-
564
- const startElm = nearestElement(range.startContainer) || this.editorEl;
565
- const comp = getComputedStyle(startElm);
566
- const block = closestBlock(range.startContainer, this.editorEl) || this.editorEl;
567
-
568
- const isBold = (() => {
569
- let n: Node | null = startElm;
570
- while (n && n !== this.editorEl) {
571
- if (n instanceof HTMLElement) {
572
- const t = n.tagName.toLowerCase();
573
- if (t === 'strong' || t === 'b') return true;
574
- const w = getComputedStyle(n).fontWeight;
575
- if (parseInt(w, 10) >= 600) return true;
576
- }
577
- n = n.parentNode;
578
- }
579
- return false;
580
- })();
581
-
582
- const isItalic = (() => {
583
- let n: Node | null = startElm;
584
- while (n && n !== this.editorEl) {
585
- if (n instanceof HTMLElement) {
586
- const t = n.tagName.toLowerCase();
587
- if (t === 'em' || t === 'i') return true;
588
- if (getComputedStyle(n).fontStyle === 'italic') return true;
589
- }
590
- n = n.parentNode;
591
- }
592
- return false;
593
- })();
594
-
595
- const isUnderline = (() => {
596
- let n: Node | null = startElm;
597
- while (n && n !== this.editorEl) {
598
- if (n instanceof HTMLElement) {
599
- const tdl = getComputedStyle(n).textDecorationLine;
600
- if (tdl && tdl.includes('underline')) return true;
601
- if (n.tagName.toLowerCase() === 'u') return true;
602
- }
603
- n = n.parentNode;
604
- }
605
- return false;
606
- })();
607
-
608
- const inLink = !!startElm.closest('a');
609
-
610
- const align = (block.style.textAlign || getComputedStyle(block).textAlign || 'start') as string;
611
- const alignNorm = align === 'start' ? 'left' : align;
612
-
613
- const inLi = !!startElm.closest('li');
614
- const listType = inLi ? (startElm.closest('ul,ol')?.tagName.toLowerCase() || '') : '';
615
-
616
- this.setBtnActive('bold', isBold);
617
- this.setBtnActive('italic', isItalic);
618
- this.setBtnActive('underline', isUnderline);
619
- this.setBtnActive('link', inLink);
620
-
621
- this.setBtnActive('left', alignNorm === 'left' && !['center','right','justify'].includes(alignNorm));
622
- this.setBtnActive('center', alignNorm === 'center');
623
- this.setBtnActive('right', alignNorm === 'right');
624
- this.setBtnActive('justify', alignNorm === 'justify');
625
-
626
- this.setBtnActive('ul', listType === 'ul');
627
- this.setBtnActive('ol', listType === 'ol');
628
-
629
- // Reflect heading
630
- if (this.headingSelect) {
631
- const tag = block.tagName.toLowerCase();
632
- const v = ['h1','h2','h3'].includes(tag) ? tag : 'p';
633
- if (this.headingSelect.value !== v) this.headingSelect.value = v;
634
- }
635
-
636
- // Reflect font family
637
- if (this.fontSelect) {
638
- const ff = (comp.fontFamily || '').replace(/["']/g, '').split(',')[0].trim().toLowerCase();
639
- if (ff) {
640
- for (const opt of Array.from(this.fontSelect.options)) {
641
- if (opt.value.toLowerCase() === ff) { this.fontSelect.value = opt.value; break; }
642
- }
643
- }
644
- }
645
-
646
- if (this.colorInput) {
647
- const hex = rgbToHex(comp.color);
648
- if (hex && this.colorInput.value.toLowerCase() !== hex.toLowerCase()) {
649
- this.colorInput.value = hex;
650
- }
651
- if (this.colorSwatchEl) this.colorSwatchEl.style.backgroundColor = this.colorInput.value;
652
- }
653
-
654
-
655
- if (this.bgColorInput) {
656
- const bg = getComputedStyle(startElm).backgroundColor;
657
- if (bg && !/transparent|rgba\(\s*0\s*,\s*0\s*,\s*0\s*,\s*0\s*\)/i.test(bg)) {
658
- const bgHex = rgbToHex(bg);
659
- if (bgHex && this.bgColorInput.value.toLowerCase() !== bgHex.toLowerCase()) {
660
- this.bgColorInput.value = bgHex;
661
- }
662
- }
663
- if (this.bgSwatchEl) this.bgSwatchEl.style.backgroundColor = this.bgColorInput.value;
664
- }
665
- }
666
-
667
- private syncPreview() {
668
- this.updateContent();
669
- }
670
-
671
- private updateContent() {
672
- if (!this.editorEl) return;
673
- this.ensureAtLeastOneParagraph();
674
-
675
-
676
- const clone = this.editorEl.cloneNode(true) as HTMLElement;
677
-
678
-
679
- const origWalker = document.createTreeWalker(this.editorEl, NodeFilter.SHOW_ELEMENT);
680
- const cloneWalker = document.createTreeWalker(clone, NodeFilter.SHOW_ELEMENT);
681
-
682
-
683
- const importantProps = [
684
- 'font-weight',
685
- 'font-style',
686
- 'text-decoration',
687
- 'color',
688
- 'background-color',
689
- 'font-size',
690
- 'font-family',
691
- 'text-align',
692
- 'line-height',
693
- 'letter-spacing',
694
- 'white-space',
695
- 'vertical-align'
696
- ];
697
-
698
- while (origWalker.nextNode() && cloneWalker.nextNode()) {
699
- const origEl = origWalker.currentNode as HTMLElement;
700
- const cloneEl = cloneWalker.currentNode as HTMLElement;
701
- const computed = window.getComputedStyle(origEl);
702
-
703
-
704
- const cssText = importantProps
705
- .map(prop => `${prop}:${computed.getPropertyValue(prop)}`)
706
- .join(';');
707
-
708
-
709
- if (cssText.trim()) {
710
- cloneEl.setAttribute('style', cssText);
711
- }
712
- }
713
-
714
-
715
- this.content = clone.innerHTML;
716
-
717
-
718
- if (this.previewEl) this.previewEl.innerHTML = this.content;
719
-
720
-
721
- this.dispatchEvent(new CustomEvent('content-changed', {
722
- detail: { content: this.content },
723
- bubbles: true,
724
- composed: true
725
- }));
726
- }
727
-
728
-
729
-
730
-
731
- }
732
-
733
- declare global {
734
- interface HTMLElementTagNameMap {
735
- 'nile-rich-text-editor': NileRichTextEditor;
736
- }
737
- }
738
-