@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,490 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { LitElement } from 'lit';
3
- import { customElement, property, state } from 'lit/decorators.js';
4
- let NileRteMentions = class NileRteMentions extends LitElement {
5
- constructor() {
6
- super(...arguments);
7
- this.mentions = {};
8
- // nile-rte-mentions.ts (inside class)
9
- this.mentionFormat = {};
10
- this.itemsFormats = {};
11
- this.mentionColors = {}; // NEW
12
- /** External config from the editor (lowest priority) */
13
- this.externalConfig = {};
14
- /** Config gathered from child <nile-rte-mentions-item> (highest priority) */
15
- this.itemsConfig = {};
16
- this.itemsColors = {}; // NEW
17
- // wired from editor
18
- this.editorEl = null;
19
- this.hostEl = null;
20
- this.dropdownEl = null; // <nile-dropdown>
21
- this.menuEl = null; // <nile-menu>
22
- // selection caret
23
- this.lastRange = null;
24
- // dropdown state
25
- this.mentionOpen = false;
26
- this.mentionTrigger = null;
27
- this.mentionQuery = '';
28
- this.mentionSuggestions = [];
29
- this.mentionFiltered = [];
30
- this.mentionX = 0;
31
- this.mentionY = 0;
32
- this.triggerBtn = null;
33
- // Observe child items & their attributes
34
- this.mo = null;
35
- // ---------- selection helpers ----------
36
- this.onSelectionChange = () => {
37
- if (!this.editorEl)
38
- return;
39
- const sel = document.getSelection();
40
- if (!sel || sel.rangeCount === 0)
41
- return;
42
- const range = sel.getRangeAt(0);
43
- if (this.editorEl.contains(range.commonAncestorContainer)) {
44
- this.lastRange = range.cloneRange();
45
- }
46
- };
47
- this.saveSelection = () => {
48
- const sel = window.getSelection();
49
- if (sel && sel.rangeCount)
50
- this.lastRange = sel.getRangeAt(0).cloneRange();
51
- };
52
- // ---------- editor events ----------
53
- this.onEditorInput = () => {
54
- if (this.mentionOpen)
55
- this.handleMention();
56
- };
57
- this.onEditorKeyUp = (e) => {
58
- this.saveSelection();
59
- const key = e.key;
60
- const cfg = this.config;
61
- if (!this.mentionOpen && key && cfg[key]) {
62
- this.openMention(key);
63
- return;
64
- }
65
- if (this.mentionOpen)
66
- this.handleMention();
67
- };
68
- this.onEditorKeyDown = (e) => {
69
- if (!this.mentionOpen)
70
- return;
71
- const key = e.key;
72
- if (key === 'ArrowDown' || key === 'ArrowUp' || key === 'Enter') {
73
- e.preventDefault();
74
- if (key === 'Enter' && this.mentionFiltered.length) {
75
- this.selectMention(this.mentionFiltered[0]);
76
- }
77
- }
78
- else if (key === 'Escape') {
79
- e.preventDefault();
80
- this.closeMention();
81
- }
82
- };
83
- this.repositionMention = () => {
84
- if (!this.mentionOpen || !this.hostEl || !this.triggerBtn)
85
- return;
86
- const caretRect = this.getCaretClientRect();
87
- if (!caretRect)
88
- return;
89
- const hostRect = this.hostEl.getBoundingClientRect();
90
- this.mentionX = caretRect.left - hostRect.left;
91
- this.mentionY = caretRect.bottom - hostRect.top;
92
- this.triggerBtn.style.left = `${this.mentionX}px`;
93
- this.triggerBtn.style.top = `${this.mentionY}px`;
94
- };
95
- }
96
- createRenderRoot() { return this; }
97
- getTriggerFormat(trigger) {
98
- const fromItems = this.itemsFormats[trigger] || {};
99
- const fromAttr = this.mentionFormat[trigger] || {};
100
- return {
101
- prefix: (fromItems.prefix ?? fromAttr.prefix ?? ''),
102
- suffix: (fromItems.suffix ?? fromAttr.suffix ?? ''),
103
- };
104
- }
105
- formatLabel(trigger, rawLabel) {
106
- const { prefix, suffix } = this.getTriggerFormat(trigger);
107
- return `${prefix ?? ''}${rawLabel}${suffix ?? ''}`;
108
- }
109
- get config() {
110
- // Priority: external < attribute < child-items
111
- return { ...this.externalConfig, ...this.mentions, ...this.itemsConfig };
112
- }
113
- // Public API used by <nile-rich-text-editor>
114
- attach(editorEl, hostEl) {
115
- this.editorEl = editorEl;
116
- this.hostEl = hostEl;
117
- this.injectStyles();
118
- this.ensureMentionDropdown();
119
- this.rebuildConfigFromChildren();
120
- // Watch for <nile-rte-mentions-item> add/remove/attr changes
121
- this.mo = new MutationObserver(() => this.rebuildConfigFromChildren());
122
- this.mo.observe(this, { childList: true, subtree: true, attributes: true });
123
- // listeners on editor
124
- this.editorEl.addEventListener('input', this.onEditorInput);
125
- this.editorEl.addEventListener('mouseup', this.saveSelection);
126
- this.editorEl.addEventListener('keyup', this.onEditorKeyUp);
127
- this.editorEl.addEventListener('keydown', this.onEditorKeyDown);
128
- this.editorEl.addEventListener('scroll', this.repositionMention);
129
- // keep range fresh
130
- document.addEventListener('selectionchange', this.onSelectionChange, true);
131
- }
132
- detach() {
133
- if (this.mo) {
134
- this.mo.disconnect();
135
- this.mo = null;
136
- }
137
- if (this.editorEl) {
138
- this.editorEl.removeEventListener('input', this.onEditorInput);
139
- this.editorEl.removeEventListener('mouseup', this.saveSelection);
140
- this.editorEl.removeEventListener('keyup', this.onEditorKeyUp);
141
- this.editorEl.removeEventListener('keydown', this.onEditorKeyDown);
142
- this.editorEl.removeEventListener('scroll', this.repositionMention);
143
- }
144
- document.removeEventListener('selectionchange', this.onSelectionChange, true);
145
- }
146
- setExternalConfig(cfg) {
147
- this.externalConfig = cfg || {};
148
- }
149
- disconnectedCallback() {
150
- this.detach();
151
- super.disconnectedCallback();
152
- }
153
- // ---------- gather child items ----------
154
- rebuildConfigFromChildren() {
155
- const cfg = {};
156
- const colors = {};
157
- const formats = {};
158
- const items = Array.from(this.querySelectorAll('nile-rte-mentions-item'));
159
- for (const item of items) {
160
- const trig = item.mentionsCharacter ??
161
- item.getAttribute('mentionscharacter') ??
162
- '';
163
- if (!trig || typeof trig !== 'string')
164
- continue;
165
- let data = item.mentionsData ??
166
- (() => {
167
- const raw = item.getAttribute('mentionsdata');
168
- if (!raw)
169
- return null;
170
- try {
171
- const parsed = JSON.parse(raw);
172
- return Array.isArray(parsed)
173
- ? parsed.filter(i => i && typeof i.key === 'string' && typeof i.label === 'string')
174
- : [];
175
- }
176
- catch {
177
- return [];
178
- }
179
- })();
180
- const color = item.mentionsColor ??
181
- item.getAttribute('mentionscolor') ??
182
- '';
183
- const prefix = item.mentionsPrefix ??
184
- item.getAttribute('mentionsprefix') ?? '';
185
- const suffix = item.mentionsSuffix ??
186
- item.getAttribute('mentionssuffix') ?? '';
187
- if (!Array.isArray(data))
188
- data = [];
189
- cfg[trig] = data;
190
- if (color)
191
- colors[trig] = String(color);
192
- if (prefix || suffix)
193
- formats[trig] = { prefix, suffix };
194
- }
195
- this.itemsConfig = cfg;
196
- this.itemsColors = colors;
197
- this.itemsFormats = formats;
198
- }
199
- // ---------- styles ----------
200
- injectStyles() {
201
- if (this.querySelector('style[data-mentions-style]'))
202
- return;
203
- const style = document.createElement('style');
204
- style.setAttribute('data-mentions-style', 'true');
205
- style.textContent = `
206
- .mention-dropdown {
207
- position: absolute; z-index: 1000; list-style: none; margin: 0; padding: 4px;
208
- border: 1px solid #e5e7eb; border-radius: 6px; background: #fff;
209
- box-shadow: 0 4px 10px rgba(0,0,0,.08); max-height: 180px; overflow: auto; font-size: 14px;
210
- }
211
- .mention-dropdown li { padding: 6px 8px; cursor: pointer; border-radius: 4px; }
212
- .mention-dropdown li:hover { background: #f1f5f9; }
213
- .mention { background: #eef2ff; padding: 0 3px; border-radius: 3px; }
214
- nile-menu.mentions-menu::part(menu__items-wrapper){
215
- max-height: 260px;
216
- }
217
-
218
- `;
219
- this.insertBefore(style, this.firstChild);
220
- }
221
- getTriggerColor(trigger) {
222
- // Priority: child item color > attribute JSON color
223
- return this.itemsColors[trigger] ?? this.mentionColors[trigger];
224
- }
225
- ensureMentionDropdown() {
226
- if (this.dropdownEl || !this.hostEl)
227
- return;
228
- const dd = document.createElement('nile-dropdown');
229
- dd.style.zIndex = '1000';
230
- const btn = document.createElement('nile-button'); // invisible trigger
231
- btn.setAttribute('slot', 'trigger');
232
- btn.style.position = 'absolute';
233
- btn.style.width = '1px';
234
- btn.style.height = '1px';
235
- btn.style.border = '0';
236
- btn.style.padding = '0';
237
- btn.style.opacity = '0';
238
- btn.style.pointerEvents = 'none';
239
- dd.appendChild(btn);
240
- this.triggerBtn = btn;
241
- const menu = document.createElement('nile-menu');
242
- menu.classList.add('mentions-menu');
243
- dd.appendChild(menu);
244
- this.hostEl.appendChild(dd);
245
- this.dropdownEl = dd;
246
- this.menuEl = menu;
247
- }
248
- restoreSelection() {
249
- if (!this.lastRange)
250
- return;
251
- const sel = document.getSelection();
252
- if (!sel)
253
- return;
254
- sel.removeAllRanges();
255
- sel.addRange(this.lastRange);
256
- }
257
- focusAndRestore() { this.editorEl?.focus(); this.restoreSelection(); }
258
- getCaretClientRect() {
259
- const sel = document.getSelection();
260
- if (!sel || sel.rangeCount === 0)
261
- return null;
262
- const range = sel.getRangeAt(0).cloneRange();
263
- range.collapse(false);
264
- const rects = range.getClientRects();
265
- if (rects && rects.length > 0)
266
- return rects[0];
267
- const marker = document.createElement('span');
268
- marker.setAttribute('data-caret-marker', '1');
269
- marker.textContent = '\u200B';
270
- range.insertNode(marker);
271
- const rect = marker.getBoundingClientRect();
272
- const after = document.createRange();
273
- after.setStartAfter(marker);
274
- after.collapse(true);
275
- sel.removeAllRanges();
276
- sel.addRange(after);
277
- marker.remove();
278
- return rect || null;
279
- }
280
- // ---------- mentions flow ----------
281
- openMention(trigger) {
282
- this.saveSelection();
283
- if (!this.editorEl || !this.dropdownEl || !this.hostEl)
284
- return;
285
- const caretRect = this.getCaretClientRect();
286
- if (!caretRect)
287
- return;
288
- const hostRect = this.hostEl.getBoundingClientRect();
289
- this.mentionX = caretRect.left - hostRect.left;
290
- this.mentionY = caretRect.bottom - hostRect.top;
291
- this.mentionTrigger = trigger;
292
- this.mentionSuggestions = this.config[trigger] || [];
293
- this.mentionQuery = '';
294
- this.updateMentionFiltered();
295
- this.mentionOpen = true;
296
- this.renderMentionList();
297
- }
298
- closeMention() {
299
- this.mentionOpen = false;
300
- this.mentionTrigger = null;
301
- this.mentionQuery = '';
302
- this.mentionFiltered = [];
303
- // hide dropdown
304
- this.dropdownEl?.removeAttribute('open');
305
- }
306
- handleMention() {
307
- if (!this.mentionOpen || !this.mentionTrigger)
308
- return;
309
- const sel = window.getSelection();
310
- if (!sel || !sel.anchorNode)
311
- return;
312
- let node = sel.anchorNode;
313
- if (node.nodeType !== Node.TEXT_NODE) {
314
- const c = node.childNodes?.[sel.anchorOffset] || node.firstChild;
315
- if (c?.nodeType === Node.TEXT_NODE)
316
- node = c;
317
- }
318
- const text = (node && node.nodeType === Node.TEXT_NODE) ? (node.textContent || '') : '';
319
- const idx = text.lastIndexOf(this.mentionTrigger);
320
- if (idx >= 0) {
321
- this.mentionQuery = text.substring(idx + 1);
322
- this.updateMentionFiltered();
323
- this.renderMentionList();
324
- }
325
- else {
326
- this.closeMention();
327
- }
328
- }
329
- updateMentionFiltered() {
330
- const q = this.mentionQuery.toLowerCase();
331
- this.mentionFiltered = (this.mentionSuggestions || []).filter(item => item.label.toLowerCase().startsWith(q));
332
- }
333
- renderMentionList() {
334
- if (!this.dropdownEl || !this.menuEl)
335
- return;
336
- if (!this.triggerBtn)
337
- return;
338
- this.triggerBtn.style.position = 'absolute';
339
- this.triggerBtn.style.left = `${this.mentionX}px`;
340
- this.triggerBtn.style.top = `${this.mentionY}px`;
341
- // clear old items
342
- this.menuEl.innerHTML = '';
343
- if (!this.mentionOpen || !this.mentionFiltered.length) {
344
- this.dropdownEl.removeAttribute('open');
345
- return;
346
- }
347
- // build menu items
348
- for (const item of this.mentionFiltered) {
349
- const mi = document.createElement('nile-menu-item');
350
- const display = this.formatLabel(this.mentionTrigger, item.label);
351
- mi.textContent = item.label;
352
- mi.addEventListener('mousedown', (e) => {
353
- e.preventDefault();
354
- this.selectMention(item);
355
- });
356
- this.menuEl.appendChild(mi);
357
- }
358
- // show dropdown
359
- this.dropdownEl.setAttribute('open', '');
360
- }
361
- selectMention(item) {
362
- this.restoreSelection();
363
- if (!this.lastRange || !this.mentionTrigger || !this.editorEl)
364
- return;
365
- let node = this.lastRange.startContainer;
366
- let offset = this.lastRange.startOffset;
367
- if (node.nodeType !== Node.TEXT_NODE) {
368
- const child = node.childNodes[offset];
369
- if (child?.nodeType === Node.TEXT_NODE) {
370
- node = child;
371
- offset = 0;
372
- }
373
- else
374
- return;
375
- }
376
- const textNode = node;
377
- const text = textNode.textContent || '';
378
- const atIndex = text.lastIndexOf(this.mentionTrigger, offset);
379
- if (atIndex < 0)
380
- return;
381
- const endIndex = atIndex + 1 + this.mentionQuery.length;
382
- const mentionRange = document.createRange();
383
- mentionRange.setStart(textNode, atIndex);
384
- mentionRange.setEnd(textNode, endIndex);
385
- mentionRange.deleteContents();
386
- const span = document.createElement('span');
387
- span.classList.add('mention');
388
- // ✅ formatted text when prefix/suffix is configured
389
- const formatted = this.formatLabel(this.mentionTrigger, item.label);
390
- const hasFormat = !!(this.getTriggerFormat(this.mentionTrigger).prefix ||
391
- this.getTriggerFormat(this.mentionTrigger).suffix);
392
- span.textContent = hasFormat ? formatted : `${this.mentionTrigger}${item.label}`;
393
- // keep your color logic
394
- const bg = this.getTriggerColor(this.mentionTrigger);
395
- if (bg) {
396
- span.style.backgroundColor = bg;
397
- // span.style.color = bg; // optional alternate styling
398
- }
399
- mentionRange.insertNode(span);
400
- const spaceNode = document.createTextNode('\u00A0');
401
- span.after(spaceNode);
402
- const sel = window.getSelection();
403
- const afterRange = document.createRange();
404
- afterRange.setStartAfter(spaceNode);
405
- afterRange.collapse(true);
406
- sel?.removeAllRanges();
407
- sel?.addRange(afterRange);
408
- this.lastRange = afterRange.cloneRange();
409
- this.closeMention();
410
- // bubble an input event so the editor updates preview/state
411
- this.editorEl.dispatchEvent(new InputEvent('input', { bubbles: true }));
412
- }
413
- };
414
- __decorate([
415
- property({
416
- attribute: 'mentions',
417
- converter: {
418
- fromAttribute: (value) => {
419
- try {
420
- const parsed = JSON.parse(value);
421
- const out = {};
422
- for (const trig of Object.keys(parsed)) {
423
- const arr = parsed[trig];
424
- if (Array.isArray(arr)) {
425
- out[trig] = arr
426
- .filter(i => i && typeof i.key === 'string' && typeof i.label === 'string')
427
- .map(i => ({ key: i.key, label: i.label }));
428
- }
429
- }
430
- return out;
431
- }
432
- catch {
433
- return {};
434
- }
435
- },
436
- toAttribute: (v) => JSON.stringify(v),
437
- }
438
- })
439
- ], NileRteMentions.prototype, "mentions", void 0);
440
- __decorate([
441
- property({
442
- attribute: 'mentionformat',
443
- converter: {
444
- fromAttribute: (v) => {
445
- try {
446
- const o = JSON.parse(v);
447
- return (o && typeof o === 'object') ? o : {};
448
- }
449
- catch {
450
- return {};
451
- }
452
- },
453
- toAttribute: (v) => JSON.stringify(v ?? {}),
454
- }
455
- })
456
- ], NileRteMentions.prototype, "mentionFormat", void 0);
457
- __decorate([
458
- state()
459
- ], NileRteMentions.prototype, "itemsFormats", void 0);
460
- __decorate([
461
- property({
462
- attribute: 'mentioncolors',
463
- converter: {
464
- fromAttribute: (value) => {
465
- try {
466
- const o = JSON.parse(value);
467
- return (o && typeof o === 'object') ? o : {};
468
- }
469
- catch {
470
- return {};
471
- }
472
- },
473
- toAttribute: (v) => JSON.stringify(v ?? {})
474
- }
475
- })
476
- ], NileRteMentions.prototype, "mentionColors", void 0);
477
- __decorate([
478
- state()
479
- ], NileRteMentions.prototype, "externalConfig", void 0);
480
- __decorate([
481
- state()
482
- ], NileRteMentions.prototype, "itemsConfig", void 0);
483
- __decorate([
484
- state()
485
- ], NileRteMentions.prototype, "itemsColors", void 0);
486
- NileRteMentions = __decorate([
487
- customElement('nile-rte-mentions')
488
- ], NileRteMentions);
489
- export { NileRteMentions };
490
- //# sourceMappingURL=nile-rte-mentions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nile-rte-mentions.js","sourceRoot":"","sources":["../../../src/nile-rich-text-editor/nile-rte-mentions.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport type { MentionItem } from './nile-rte-mentions-item';\n\ntype MentionsConfig = Record<string, MentionItem[]>;\n\n@customElement('nile-rte-mentions')\nexport class NileRteMentions extends LitElement {\n protected createRenderRoot() { return this; } \n\n \n @property({\n attribute: 'mentions',\n converter: {\n fromAttribute: (value: string): MentionsConfig => {\n try {\n const parsed = JSON.parse(value);\n const out: MentionsConfig = {};\n for (const trig of Object.keys(parsed)) {\n const arr = parsed[trig];\n if (Array.isArray(arr)) {\n out[trig] = arr\n .filter(i => i && typeof i.key === 'string' && typeof i.label === 'string')\n .map(i => ({ key: i.key, label: i.label }));\n }\n }\n return out;\n } catch { return {}; }\n },\n toAttribute: (v: MentionsConfig) => JSON.stringify(v),\n }\n })\n mentions: MentionsConfig = {};\n\n // nile-rte-mentions.ts (inside class)\n\n@property({\n attribute: 'mentionformat',\n converter: {\n fromAttribute: (v: string): Record<string, {prefix?: string; suffix?: string}> => {\n try { const o = JSON.parse(v); return (o && typeof o === 'object') ? o : {}; }\n catch { return {}; }\n },\n toAttribute: (v: Record<string, {prefix?: string; suffix?: string}>) => JSON.stringify(v ?? {}),\n }\n})\nmentionFormat: Record<string, { prefix?: string; suffix?: string }> = {};\n\n@state() private itemsFormats: Record<string, { prefix?: string; suffix?: string }> = {};\n\nprivate getTriggerFormat(trigger: string): { prefix: string; suffix: string } {\n const fromItems = this.itemsFormats[trigger] || {};\n const fromAttr = this.mentionFormat[trigger] || {};\n return {\n prefix: (fromItems.prefix ?? fromAttr.prefix ?? ''),\n suffix: (fromItems.suffix ?? fromAttr.suffix ?? ''),\n };\n}\n\nprivate formatLabel(trigger: string, rawLabel: string): string {\n const { prefix, suffix } = this.getTriggerFormat(trigger);\n return `${prefix ?? ''}${rawLabel}${suffix ?? ''}`;\n}\n\n\n @property({\n attribute: 'mentioncolors',\n converter: {\n fromAttribute: (value: string): Record<string,string> => {\n try { const o = JSON.parse(value); return (o && typeof o === 'object') ? o : {}; }\n catch { return {}; }\n },\n toAttribute: (v: Record<string,string>) => JSON.stringify(v ?? {})\n }\n })\n mentionColors: Record<string, string> = {}; // NEW\n\n /** External config from the editor (lowest priority) */\n @state() private externalConfig: MentionsConfig = {};\n\n /** Config gathered from child <nile-rte-mentions-item> (highest priority) */\n @state() private itemsConfig: MentionsConfig = {};\n\n @state() private itemsColors: Record<string,string> = {}; // NEW\n\n private get config(): MentionsConfig {\n // Priority: external < attribute < child-items\n return { ...this.externalConfig, ...this.mentions, ...this.itemsConfig };\n }\n\n // wired from editor\n private editorEl: HTMLElement | null = null;\n private hostEl: HTMLElement | null = null;\n\n \nprivate dropdownEl: HTMLElement | null = null; // <nile-dropdown>\nprivate menuEl: HTMLElement | null = null; // <nile-menu>\n\n\n // selection caret\n private lastRange: Range | null = null;\n\n // dropdown state\n private mentionOpen = false;\n private mentionTrigger: string | null = null;\n private mentionQuery = '';\n private mentionSuggestions: MentionItem[] = [];\n private mentionFiltered: MentionItem[] = [];\n private mentionX = 0;\n private mentionY = 0;\nprivate triggerBtn: HTMLElement | null = null;\n\n \n\n // Observe child items & their attributes\n private mo: MutationObserver | null = null;\n\n // Public API used by <nile-rich-text-editor>\n attach(editorEl: HTMLElement, hostEl: HTMLElement) {\n this.editorEl = editorEl;\n this.hostEl = hostEl;\n\n this.injectStyles();\n this.ensureMentionDropdown();\n this.rebuildConfigFromChildren();\n\n // Watch for <nile-rte-mentions-item> add/remove/attr changes\n this.mo = new MutationObserver(() => this.rebuildConfigFromChildren());\n this.mo.observe(this, { childList: true, subtree: true, attributes: true });\n\n // listeners on editor\n this.editorEl.addEventListener('input', this.onEditorInput);\n this.editorEl.addEventListener('mouseup', this.saveSelection);\n this.editorEl.addEventListener('keyup', this.onEditorKeyUp);\n this.editorEl.addEventListener('keydown', this.onEditorKeyDown);\n this.editorEl.addEventListener('scroll', this.repositionMention);\n\n // keep range fresh\n document.addEventListener('selectionchange', this.onSelectionChange, true);\n }\n\n detach() {\n if (this.mo) { this.mo.disconnect(); this.mo = null; }\n if (this.editorEl) {\n this.editorEl.removeEventListener('input', this.onEditorInput);\n this.editorEl.removeEventListener('mouseup', this.saveSelection);\n this.editorEl.removeEventListener('keyup', this.onEditorKeyUp);\n this.editorEl.removeEventListener('keydown', this.onEditorKeyDown);\n this.editorEl.removeEventListener('scroll', this.repositionMention);\n }\n document.removeEventListener('selectionchange', this.onSelectionChange, true);\n }\n\n setExternalConfig(cfg: MentionsConfig) {\n this.externalConfig = cfg || {};\n }\n\n disconnectedCallback(): void {\n this.detach();\n super.disconnectedCallback();\n }\n\n // ---------- gather child items ----------\n private rebuildConfigFromChildren() {\n const cfg: MentionsConfig = {};\n const colors: Record<string,string> = {}; \n const formats: Record<string, { prefix?: string; suffix?: string }> = {};\n\n const items = Array.from(this.querySelectorAll('nile-rte-mentions-item')) as Array<\n HTMLElement & { mentionsCharacter?: string; mentionsData?: MentionItem[]; mentionsColor?: string }\n >;\n\n for (const item of items) {\n const trig =\n (item as any).mentionsCharacter ??\n item.getAttribute('mentionscharacter') ??\n '';\n\n if (!trig || typeof trig !== 'string') continue;\n\n let data: MentionItem[] | null =\n (item as any).mentionsData ??\n (() => {\n const raw = item.getAttribute('mentionsdata');\n if (!raw) return null;\n try {\n const parsed = JSON.parse(raw);\n return Array.isArray(parsed)\n ? parsed.filter(i => i && typeof i.key === 'string' && typeof i.label === 'string')\n : [];\n } catch { return []; }\n })();\n\n const color =\n (item as any).mentionsColor ??\n item.getAttribute('mentionscolor') ??\n '';\n\n const prefix =\n (item as any).mentionsPrefix ??\n item.getAttribute('mentionsprefix') ?? '';\n const suffix =\n (item as any).mentionsSuffix ??\n item.getAttribute('mentionssuffix') ?? '';\n\n\n if (!Array.isArray(data)) data = [];\n cfg[trig] = data;\n if (color) colors[trig] = String(color); \n if (prefix || suffix) formats[trig] = { prefix, suffix };\n }\n\n this.itemsConfig = cfg;\n this.itemsColors = colors; \n this.itemsFormats = formats;\n }\n // ---------- styles ----------\n private injectStyles() {\n if (this.querySelector('style[data-mentions-style]')) return;\n const style = document.createElement('style');\n style.setAttribute('data-mentions-style', 'true');\n style.textContent = `\n .mention-dropdown {\n position: absolute; z-index: 1000; list-style: none; margin: 0; padding: 4px;\n border: 1px solid #e5e7eb; border-radius: 6px; background: #fff;\n box-shadow: 0 4px 10px rgba(0,0,0,.08); max-height: 180px; overflow: auto; font-size: 14px;\n }\n .mention-dropdown li { padding: 6px 8px; cursor: pointer; border-radius: 4px; }\n .mention-dropdown li:hover { background: #f1f5f9; }\n .mention { background: #eef2ff; padding: 0 3px; border-radius: 3px; }\n nile-menu.mentions-menu::part(menu__items-wrapper){\n max-height: 260px;\n }\n\n `;\n this.insertBefore(style, this.firstChild);\n }\n\n private getTriggerColor(trigger: string): string | undefined {\n // Priority: child item color > attribute JSON color\n return this.itemsColors[trigger] ?? this.mentionColors[trigger];\n }\n\n \nprivate ensureMentionDropdown() {\n if (this.dropdownEl || !this.hostEl) return;\n\n const dd = document.createElement('nile-dropdown');\n dd.style.zIndex = '1000';\n\n const btn = document.createElement('nile-button'); // invisible trigger\n btn.setAttribute('slot', 'trigger');\n btn.style.position = 'absolute'; \n btn.style.width = '1px';\n btn.style.height = '1px';\n btn.style.border = '0';\n btn.style.padding = '0';\n btn.style.opacity = '0'; \n btn.style.pointerEvents = 'none'; \n dd.appendChild(btn);\n this.triggerBtn = btn; \n const menu = document.createElement('nile-menu');\n menu.classList.add('mentions-menu');\n dd.appendChild(menu);\n\n this.hostEl.appendChild(dd);\n this.dropdownEl = dd;\n this.menuEl = menu;\n}\n\n // ---------- selection helpers ----------\n private onSelectionChange = () => {\n if (!this.editorEl) return;\n const sel = document.getSelection();\n if (!sel || sel.rangeCount === 0) return;\n const range = sel.getRangeAt(0);\n if (this.editorEl.contains(range.commonAncestorContainer)) {\n this.lastRange = range.cloneRange();\n }\n };\n private saveSelection = () => {\n const sel = window.getSelection();\n if (sel && sel.rangeCount) this.lastRange = sel.getRangeAt(0).cloneRange();\n };\n private restoreSelection() {\n if (!this.lastRange) return;\n const sel = document.getSelection(); if (!sel) return;\n sel.removeAllRanges(); sel.addRange(this.lastRange);\n }\n private focusAndRestore() { this.editorEl?.focus(); this.restoreSelection(); }\n\n private getCaretClientRect(): DOMRect | null {\n const sel = document.getSelection();\n if (!sel || sel.rangeCount === 0) return null;\n\n const range = sel.getRangeAt(0).cloneRange();\n range.collapse(false);\n\n const rects = range.getClientRects();\n if (rects && rects.length > 0) return rects[0];\n\n const marker = document.createElement('span');\n marker.setAttribute('data-caret-marker', '1');\n marker.textContent = '\\u200B';\n range.insertNode(marker);\n\n const rect = marker.getBoundingClientRect();\n\n const after = document.createRange();\n after.setStartAfter(marker);\n after.collapse(true);\n sel.removeAllRanges();\n sel.addRange(after);\n marker.remove();\n\n return rect || null;\n }\n\n // ---------- editor events ----------\n private onEditorInput = () => {\n if (this.mentionOpen) this.handleMention();\n };\n\n private onEditorKeyUp = (e: KeyboardEvent) => {\n this.saveSelection();\n const key = e.key;\n const cfg = this.config;\n if (!this.mentionOpen && key && cfg[key]) {\n this.openMention(key);\n return;\n }\n if (this.mentionOpen) this.handleMention();\n };\n\n private onEditorKeyDown = (e: KeyboardEvent) => {\n if (!this.mentionOpen) return;\n const key = e.key;\n if (key === 'ArrowDown' || key === 'ArrowUp' || key === 'Enter') {\n e.preventDefault();\n if (key === 'Enter' && this.mentionFiltered.length) {\n this.selectMention(this.mentionFiltered[0]);\n }\n } else if (key === 'Escape') {\n e.preventDefault();\n this.closeMention();\n }\n };\n\n // ---------- mentions flow ----------\n private openMention(trigger: string) {\n this.saveSelection();\n if (!this.editorEl || !this.dropdownEl || !this.hostEl) return;\n\n const caretRect = this.getCaretClientRect();\n if (!caretRect) return;\n\n const hostRect = this.hostEl.getBoundingClientRect();\n\n this.mentionX = caretRect.left - hostRect.left;\n this.mentionY = caretRect.bottom - hostRect.top;\n\n this.mentionTrigger = trigger;\n this.mentionSuggestions = this.config[trigger] || [];\n this.mentionQuery = '';\n this.updateMentionFiltered();\n\n this.mentionOpen = true;\n this.renderMentionList();\n }\n\n private closeMention() {\n this.mentionOpen = false;\n this.mentionTrigger = null;\n this.mentionQuery = '';\n this.mentionFiltered = [];\n // hide dropdown\n this.dropdownEl?.removeAttribute('open');\n }\n\n private handleMention() {\n if (!this.mentionOpen || !this.mentionTrigger) return;\n const sel = window.getSelection(); if (!sel || !sel.anchorNode) return;\n\n let node: Node | null = sel.anchorNode;\n if (node.nodeType !== Node.TEXT_NODE) {\n const c = (node as HTMLElement).childNodes?.[sel.anchorOffset] || node.firstChild;\n if (c?.nodeType === Node.TEXT_NODE) node = c;\n }\n const text = (node && node.nodeType === Node.TEXT_NODE) ? (node.textContent || '') : '';\n const idx = text.lastIndexOf(this.mentionTrigger);\n if (idx >= 0) {\n this.mentionQuery = text.substring(idx + 1);\n this.updateMentionFiltered();\n this.renderMentionList();\n } else {\n this.closeMention();\n }\n }\n\n private updateMentionFiltered() {\n const q = this.mentionQuery.toLowerCase();\n this.mentionFiltered = (this.mentionSuggestions || []).filter(item =>\n item.label.toLowerCase().startsWith(q)\n );\n }\n\n private renderMentionList() {\n if (!this.dropdownEl || !this.menuEl) return;\n \n if (!this.triggerBtn) return;\n this.triggerBtn.style.position = 'absolute';\n this.triggerBtn.style.left = `${this.mentionX}px`;\n this.triggerBtn.style.top = `${this.mentionY}px`;\n \n \n // clear old items\n this.menuEl.innerHTML = '';\n \n if (!this.mentionOpen || !this.mentionFiltered.length) {\n this.dropdownEl.removeAttribute('open');\n return;\n }\n \n // build menu items\n for (const item of this.mentionFiltered) {\n const mi = document.createElement('nile-menu-item');\n const display = this.formatLabel(this.mentionTrigger!, item.label);\n mi.textContent = item.label;\n mi.addEventListener('mousedown', (e) => {\n e.preventDefault();\n this.selectMention(item);\n });\n this.menuEl.appendChild(mi);\n }\n \n // show dropdown\n this.dropdownEl.setAttribute('open', '');\n }\n \n\n private repositionMention = () => {\n if (!this.mentionOpen || !this.hostEl || !this.triggerBtn) return;\n\n const caretRect = this.getCaretClientRect();\n if (!caretRect) return;\n\n const hostRect = this.hostEl.getBoundingClientRect();\n\n this.mentionX = caretRect.left - hostRect.left;\n this.mentionY = caretRect.bottom - hostRect.top;\n\n this.triggerBtn.style.left = `${this.mentionX}px`;\n this.triggerBtn.style.top = `${this.mentionY}px`;\n };\n\n \n private selectMention(item: MentionItem) {\n this.restoreSelection(); \n if (!this.lastRange || !this.mentionTrigger || !this.editorEl) return;\n \n let node: Node = this.lastRange.startContainer;\n let offset = this.lastRange.startOffset;\n if (node.nodeType !== Node.TEXT_NODE) {\n const child = node.childNodes[offset];\n if (child?.nodeType === Node.TEXT_NODE) { node = child; offset = 0; } else return;\n }\n \n const textNode = node as Text;\n const text = textNode.textContent || '';\n const atIndex = text.lastIndexOf(this.mentionTrigger, offset);\n if (atIndex < 0) return;\n \n const endIndex = atIndex + 1 + this.mentionQuery.length;\n const mentionRange = document.createRange();\n mentionRange.setStart(textNode, atIndex);\n mentionRange.setEnd(textNode, endIndex);\n mentionRange.deleteContents();\n \n const span = document.createElement('span');\n span.classList.add('mention');\n \n // ✅ formatted text when prefix/suffix is configured\n const formatted = this.formatLabel(this.mentionTrigger, item.label);\n const hasFormat = !!(\n this.getTriggerFormat(this.mentionTrigger).prefix || \n this.getTriggerFormat(this.mentionTrigger).suffix\n );\n span.textContent = hasFormat ? formatted : `${this.mentionTrigger}${item.label}`;\n \n // keep your color logic\n const bg = this.getTriggerColor(this.mentionTrigger);\n if (bg) {\n span.style.backgroundColor = bg;\n // span.style.color = bg; // optional alternate styling\n }\n \n mentionRange.insertNode(span);\n \n const spaceNode = document.createTextNode('\\u00A0');\n span.after(spaceNode);\n \n const sel = window.getSelection();\n const afterRange = document.createRange();\n afterRange.setStartAfter(spaceNode); \n afterRange.collapse(true);\n sel?.removeAllRanges(); \n sel?.addRange(afterRange);\n this.lastRange = afterRange.cloneRange();\n \n this.closeMention();\n \n // bubble an input event so the editor updates preview/state\n this.editorEl.dispatchEvent(new InputEvent('input', { bubbles: true }));\n }\n \n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-rte-mentions': NileRteMentions;\n }\n}\n"]}
@@ -1,10 +0,0 @@
1
- import { LitElement } from 'lit';
2
- export declare class NileRtePreview extends LitElement {
3
- protected createRenderRoot(): this;
4
- protected shouldUpdate(): boolean;
5
- }
6
- declare global {
7
- interface HTMLElementTagNameMap {
8
- 'nile-rte-preview': NileRtePreview;
9
- }
10
- }
@@ -1,12 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { LitElement } from 'lit';
3
- import { customElement } from 'lit/decorators.js';
4
- let NileRtePreview = class NileRtePreview extends LitElement {
5
- createRenderRoot() { return this; }
6
- shouldUpdate() { return false; }
7
- };
8
- NileRtePreview = __decorate([
9
- customElement('nile-rte-preview')
10
- ], NileRtePreview);
11
- export { NileRtePreview };
12
- //# sourceMappingURL=nile-rte-preview.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nile-rte-preview.js","sourceRoot":"","sources":["../../../src/nile-rich-text-editor/nile-rte-preview.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG3C,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,UAAU;IAClC,gBAAgB,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IACnC,YAAY,KAAK,OAAO,KAAK,CAAC,CAAC,CAAC;CAC3C,CAAA;AAHY,cAAc;IAD1B,aAAa,CAAC,kBAAkB,CAAC;GACrB,cAAc,CAG1B","sourcesContent":["import { LitElement } from 'lit';\nimport { customElement } from 'lit/decorators.js';\n\n@customElement('nile-rte-preview')\nexport class NileRtePreview extends LitElement {\n protected createRenderRoot() { return this; }\n protected shouldUpdate() { return false; }\n}\ndeclare global { interface HTMLElementTagNameMap { 'nile-rte-preview': NileRtePreview; } }\n"]}
@@ -1,37 +0,0 @@
1
- import { LitElement } from 'lit';
2
- type HeadingTag = 'p' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
3
- type GenericOption = {
4
- value: string;
5
- label?: string;
6
- icon?: string;
7
- };
8
- type HeadingOption = {
9
- value: HeadingTag;
10
- label?: string;
11
- icon?: string;
12
- };
13
- export declare class NileRteSelect extends LitElement {
14
- protected createRenderRoot(): this;
15
- /** 'heading' | 'font' | 'align' */
16
- type: string;
17
- /** JSON: [{ value, label?, icon? }, ...] (attribute-based; runtime-validated) */
18
- options: string;
19
- /** Programmatic options (preferred for TS safety). */
20
- optionsObj?: Array<GenericOption | HeadingOption>;
21
- /** Fallback label for trigger (e.g., "Align") */
22
- label: string;
23
- private selectedValue;
24
- private mapAlignIcon;
25
- private get parsedOptions();
26
- private ensureDefault;
27
- private onSelect;
28
- connectedCallback(): void;
29
- private injectLocalStyles;
30
- render(): import("lit-html").TemplateResult<1>;
31
- }
32
- declare global {
33
- interface HTMLElementTagNameMap {
34
- 'nile-rte-select': NileRteSelect;
35
- }
36
- }
37
- export {};