@aquera/nile-elements 0.1.64-beta-1.1 → 0.1.64-beta-1.2

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 (230) hide show
  1. package/demo/index.html +70 -53
  2. package/dist/index.cjs.js +1 -1
  3. package/dist/index.esm.js +1 -1
  4. package/dist/index.js +590 -545
  5. package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
  6. package/dist/nile-avatar/nile-avatar.test.cjs.js.map +1 -1
  7. package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
  8. package/dist/nile-badge/index.cjs.js +1 -1
  9. package/dist/nile-badge/index.esm.js +1 -1
  10. package/dist/nile-badge/nile-badge.cjs.js +1 -1
  11. package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
  12. package/dist/nile-badge/nile-badge.esm.js +1 -1
  13. package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
  14. package/dist/nile-badge/nile-badge.test.cjs.js.map +1 -1
  15. package/dist/nile-badge/nile-badge.test.esm.js +1 -1
  16. package/dist/nile-button/index.cjs.js +1 -1
  17. package/dist/nile-button/index.esm.js +1 -1
  18. package/dist/nile-button/nile-button.cjs.js +1 -1
  19. package/dist/nile-button/nile-button.cjs.js.map +1 -1
  20. package/dist/nile-button/nile-button.esm.js +2 -2
  21. package/dist/nile-button/nile-button.test.cjs.js +1 -1
  22. package/dist/nile-button/nile-button.test.cjs.js.map +1 -1
  23. package/dist/nile-button/nile-button.test.esm.js +1 -1
  24. package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
  25. package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
  26. package/dist/nile-calendar/nile-calendar.test.esm.js +5 -5
  27. package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
  28. package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
  29. package/dist/nile-chip/nile-chip.test.esm.js +1 -1
  30. package/dist/nile-dialog/index.cjs.js +1 -1
  31. package/dist/nile-dialog/index.esm.js +1 -1
  32. package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
  33. package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
  34. package/dist/nile-dialog/nile-dialog.esm.js +1 -1
  35. package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
  36. package/dist/nile-dialog/nile-dialog.test.cjs.js.map +1 -1
  37. package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
  38. package/dist/nile-drawer/index.cjs.js +1 -1
  39. package/dist/nile-drawer/index.esm.js +1 -1
  40. package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
  41. package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
  42. package/dist/nile-drawer/nile-drawer.esm.js +2 -2
  43. package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
  44. package/dist/nile-drawer/nile-drawer.test.cjs.js.map +1 -1
  45. package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
  46. package/dist/nile-icon/icons/svg/bold-try.cjs.js +2 -0
  47. package/dist/nile-icon/icons/svg/bold-try.cjs.js.map +1 -0
  48. package/dist/nile-icon/icons/svg/bold-try.esm.js +1 -0
  49. package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
  50. package/dist/nile-icon/icons/svg/index.esm.js +1 -1
  51. package/dist/nile-icon/icons/svg/nile-bold.cjs.js +2 -0
  52. package/dist/nile-icon/icons/svg/nile-bold.cjs.js.map +1 -0
  53. package/dist/nile-icon/icons/svg/nile-bold.esm.js +1 -0
  54. package/dist/nile-icon/icons/svg/nile-centeralign.cjs.js +2 -0
  55. package/dist/nile-icon/icons/svg/nile-centeralign.cjs.js.map +1 -0
  56. package/dist/nile-icon/icons/svg/nile-centeralign.esm.js +1 -0
  57. package/dist/nile-icon/icons/svg/nile-italic.cjs.js +2 -0
  58. package/dist/nile-icon/icons/svg/nile-italic.cjs.js.map +1 -0
  59. package/dist/nile-icon/icons/svg/nile-italic.esm.js +1 -0
  60. package/dist/nile-icon/icons/svg/nile-justify.cjs.js +2 -0
  61. package/dist/nile-icon/icons/svg/nile-justify.cjs.js.map +1 -0
  62. package/dist/nile-icon/icons/svg/nile-justify.esm.js +1 -0
  63. package/dist/nile-icon/icons/svg/nile-leftalign.cjs.js +2 -0
  64. package/dist/nile-icon/icons/svg/nile-leftalign.cjs.js.map +1 -0
  65. package/dist/nile-icon/icons/svg/nile-leftalign.esm.js +1 -0
  66. package/dist/nile-icon/icons/svg/nile-ol.cjs.js +2 -0
  67. package/dist/nile-icon/icons/svg/nile-ol.cjs.js.map +1 -0
  68. package/dist/nile-icon/icons/svg/nile-ol.esm.js +1 -0
  69. package/dist/nile-icon/icons/svg/nile-rightalign.cjs.js +2 -0
  70. package/dist/nile-icon/icons/svg/nile-rightalign.cjs.js.map +1 -0
  71. package/dist/nile-icon/icons/svg/nile-rightalign.esm.js +1 -0
  72. package/dist/nile-icon/icons/svg/nile-ul.cjs.js +2 -0
  73. package/dist/nile-icon/icons/svg/nile-ul.cjs.js.map +1 -0
  74. package/dist/nile-icon/icons/svg/nile-ul.esm.js +1 -0
  75. package/dist/nile-icon/icons/svg/nile-underline.cjs.js +2 -0
  76. package/dist/nile-icon/icons/svg/nile-underline.cjs.js.map +1 -0
  77. package/dist/nile-icon/icons/svg/nile-underline.esm.js +1 -0
  78. package/dist/nile-icon/index.cjs.js +1 -1
  79. package/dist/nile-icon/index.cjs.js.map +1 -1
  80. package/dist/nile-icon/index.esm.js +1 -1
  81. package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
  82. package/dist/nile-icon/nile-icon.test.cjs.js.map +1 -1
  83. package/dist/nile-icon/nile-icon.test.esm.js +1 -1
  84. package/dist/nile-icon-button/index.cjs.js +1 -1
  85. package/dist/nile-icon-button/index.esm.js +1 -1
  86. package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
  87. package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
  88. package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
  89. package/dist/nile-input/index.cjs.js +1 -1
  90. package/dist/nile-input/index.esm.js +1 -1
  91. package/dist/nile-input/nile-input.cjs.js +1 -1
  92. package/dist/nile-input/nile-input.cjs.js.map +1 -1
  93. package/dist/nile-input/nile-input.esm.js +1 -1
  94. package/dist/nile-input/nile-input.test.cjs.js +1 -1
  95. package/dist/nile-input/nile-input.test.cjs.js.map +1 -1
  96. package/dist/nile-input/nile-input.test.esm.js +1 -1
  97. package/dist/nile-menu-item/index.cjs.js +1 -1
  98. package/dist/nile-menu-item/index.esm.js +1 -1
  99. package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
  100. package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
  101. package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
  102. package/dist/nile-option/index.cjs.js +1 -1
  103. package/dist/nile-option/index.esm.js +1 -1
  104. package/dist/nile-option/nile-option.cjs.js +1 -1
  105. package/dist/nile-option/nile-option.cjs.js.map +1 -1
  106. package/dist/nile-option/nile-option.esm.js +1 -1
  107. package/dist/nile-rich-text-editor/index.cjs.js +1 -1
  108. package/dist/nile-rich-text-editor/index.esm.js +1 -1
  109. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js +1 -1
  110. package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js.map +1 -1
  111. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js +1 -1
  112. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js.map +1 -1
  113. package/dist/nile-rich-text-editor/nile-rich-text-editor.css.esm.js +41 -4
  114. package/dist/nile-rich-text-editor/nile-rich-text-editor.esm.js +1 -1
  115. package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js +1 -1
  116. package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js.map +1 -1
  117. package/dist/nile-rich-text-editor/nile-rte-mentions-item.esm.js +1 -1
  118. package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js +2 -2
  119. package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js.map +1 -1
  120. package/dist/nile-rich-text-editor/nile-rte-mentions.esm.js +1 -1
  121. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js +1 -1
  122. package/dist/nile-rich-text-editor/nile-rte-select.cjs.js.map +1 -1
  123. package/dist/nile-rich-text-editor/nile-rte-select.esm.js +14 -12
  124. package/dist/nile-select/index.cjs.js +1 -1
  125. package/dist/nile-select/index.esm.js +1 -1
  126. package/dist/nile-select/nile-select.cjs.js +1 -1
  127. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  128. package/dist/nile-select/nile-select.esm.js +1 -1
  129. package/dist/nile-select/nile-select.test.cjs.js +1 -1
  130. package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
  131. package/dist/nile-select/nile-select.test.esm.js +1 -1
  132. package/dist/nile-tab/index.cjs.js +1 -1
  133. package/dist/nile-tab/index.esm.js +1 -1
  134. package/dist/nile-tab/nile-tab.cjs.js +1 -1
  135. package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
  136. package/dist/nile-tab/nile-tab.esm.js +1 -1
  137. package/dist/nile-tab-group/index.cjs.js +1 -1
  138. package/dist/nile-tab-group/index.esm.js +1 -1
  139. package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
  140. package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
  141. package/dist/nile-tab-group/nile-tab-group.esm.js +2 -2
  142. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
  143. package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +1 -1
  144. package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
  145. package/dist/nile-tag/index.cjs.js +1 -1
  146. package/dist/nile-tag/index.esm.js +1 -1
  147. package/dist/nile-tag/nile-tag.cjs.js +1 -1
  148. package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
  149. package/dist/nile-tag/nile-tag.esm.js +1 -1
  150. package/dist/nile-toast/index.cjs.js +1 -1
  151. package/dist/nile-toast/index.esm.js +1 -1
  152. package/dist/nile-toast/nile-toast.cjs.js +1 -1
  153. package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
  154. package/dist/nile-toast/nile-toast.esm.js +1 -1
  155. package/dist/nile-tree/index.cjs.js +1 -1
  156. package/dist/nile-tree/index.esm.js +1 -1
  157. package/dist/nile-tree/nile-tree.cjs.js +1 -1
  158. package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
  159. package/dist/nile-tree/nile-tree.esm.js +1 -1
  160. package/dist/nile-tree-item/index.cjs.js +1 -1
  161. package/dist/nile-tree-item/index.esm.js +1 -1
  162. package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
  163. package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
  164. package/dist/nile-tree-item/nile-tree-item.esm.js +1 -1
  165. package/dist/src/nile-icon/icons/svg/bold-try.d.ts +5 -0
  166. package/dist/src/nile-icon/icons/svg/bold-try.js +5 -0
  167. package/dist/src/nile-icon/icons/svg/bold-try.js.map +1 -0
  168. package/dist/src/nile-icon/icons/svg/index.d.ts +10 -0
  169. package/dist/src/nile-icon/icons/svg/index.js +10 -0
  170. package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
  171. package/dist/src/nile-icon/icons/svg/nile-bold.d.ts +5 -0
  172. package/dist/src/nile-icon/icons/svg/nile-bold.js +5 -0
  173. package/dist/src/nile-icon/icons/svg/nile-bold.js.map +1 -0
  174. package/dist/src/nile-icon/icons/svg/nile-centeralign.d.ts +5 -0
  175. package/dist/src/nile-icon/icons/svg/nile-centeralign.js +5 -0
  176. package/dist/src/nile-icon/icons/svg/nile-centeralign.js.map +1 -0
  177. package/dist/src/nile-icon/icons/svg/nile-italic.d.ts +5 -0
  178. package/dist/src/nile-icon/icons/svg/nile-italic.js +5 -0
  179. package/dist/src/nile-icon/icons/svg/nile-italic.js.map +1 -0
  180. package/dist/src/nile-icon/icons/svg/nile-justify.d.ts +5 -0
  181. package/dist/src/nile-icon/icons/svg/nile-justify.js +5 -0
  182. package/dist/src/nile-icon/icons/svg/nile-justify.js.map +1 -0
  183. package/dist/src/nile-icon/icons/svg/nile-leftalign.d.ts +5 -0
  184. package/dist/src/nile-icon/icons/svg/nile-leftalign.js +5 -0
  185. package/dist/src/nile-icon/icons/svg/nile-leftalign.js.map +1 -0
  186. package/dist/src/nile-icon/icons/svg/nile-ol.d.ts +5 -0
  187. package/dist/src/nile-icon/icons/svg/nile-ol.js +5 -0
  188. package/dist/src/nile-icon/icons/svg/nile-ol.js.map +1 -0
  189. package/dist/src/nile-icon/icons/svg/nile-rightalign.d.ts +5 -0
  190. package/dist/src/nile-icon/icons/svg/nile-rightalign.js +5 -0
  191. package/dist/src/nile-icon/icons/svg/nile-rightalign.js.map +1 -0
  192. package/dist/src/nile-icon/icons/svg/nile-ul.d.ts +5 -0
  193. package/dist/src/nile-icon/icons/svg/nile-ul.js +5 -0
  194. package/dist/src/nile-icon/icons/svg/nile-ul.js.map +1 -0
  195. package/dist/src/nile-icon/icons/svg/nile-underline.d.ts +5 -0
  196. package/dist/src/nile-icon/icons/svg/nile-underline.js +5 -0
  197. package/dist/src/nile-icon/icons/svg/nile-underline.js.map +1 -0
  198. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.d.ts +0 -9
  199. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js +40 -11
  200. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js.map +1 -1
  201. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.d.ts +1 -1
  202. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js +23 -70
  203. package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js.map +1 -1
  204. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.d.ts +1 -0
  205. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js +5 -0
  206. package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js.map +1 -1
  207. package/dist/src/nile-rich-text-editor/nile-rte-mentions.d.ts +3 -0
  208. package/dist/src/nile-rich-text-editor/nile-rte-mentions.js +39 -2
  209. package/dist/src/nile-rich-text-editor/nile-rte-mentions.js.map +1 -1
  210. package/dist/src/nile-rich-text-editor/nile-rte-select.js +26 -3
  211. package/dist/src/nile-rich-text-editor/nile-rte-select.js.map +1 -1
  212. package/dist/tsconfig.tsbuildinfo +1 -1
  213. package/package.json +1 -1
  214. package/src/nile-icon/icons/svg/bold-try.ts +5 -0
  215. package/src/nile-icon/icons/svg/index.ts +10 -0
  216. package/src/nile-icon/icons/svg/nile-bold.ts +5 -0
  217. package/src/nile-icon/icons/svg/nile-centeralign.ts +5 -0
  218. package/src/nile-icon/icons/svg/nile-italic.ts +5 -0
  219. package/src/nile-icon/icons/svg/nile-justify.ts +5 -0
  220. package/src/nile-icon/icons/svg/nile-leftalign.ts +5 -0
  221. package/src/nile-icon/icons/svg/nile-ol.ts +5 -0
  222. package/src/nile-icon/icons/svg/nile-rightalign.ts +5 -0
  223. package/src/nile-icon/icons/svg/nile-ul.ts +5 -0
  224. package/src/nile-icon/icons/svg/nile-underline.ts +5 -0
  225. package/src/nile-rich-text-editor/nile-rich-text-editor.css.ts +42 -14
  226. package/src/nile-rich-text-editor/nile-rich-text-editor.ts +29 -67
  227. package/src/nile-rich-text-editor/nile-rte-mentions-item.ts +5 -0
  228. package/src/nile-rich-text-editor/nile-rte-mentions.ts +38 -4
  229. package/src/nile-rich-text-editor/nile-rte-select.ts +26 -4
  230. package/vscode-html-custom-data.json +10 -2
@@ -1,4 +1,4 @@
1
- import{__decorate as i}from"tslib";import{s}from"./nile-option.css.esm.js";import"../nile-icon/index.esm.js";import{classMap as o}from"lit/directives/class-map.js";import{query as n,state as e,property as c,customElement as m}from"lit/decorators.js";import{html as t}from"lit";import{w as r}from"../internal/watch.esm.js";import{N as l}from"../internal/nile-element.esm.js";import"../nile-checkbox/nile-checkbox.esm.js";import"lit/directives/unsafe-svg.js";import"../nile-icon/icons/svg/index.esm.js";import"../nile-icon/icons/svg/access-request.esm.js";import"../nile-icon/icons/svg/accessreview.esm.js";import"../nile-icon/icons/svg/action.esm.js";import"../nile-icon/icons/svg/activity-logs.esm.js";import"../nile-icon/icons/svg/address.esm.js";import"../nile-icon/icons/svg/admin-users.esm.js";import"../nile-icon/icons/svg/agent.esm.js";import"../nile-icon/icons/svg/aggregation.esm.js";import"../nile-icon/icons/svg/alert-circle.esm.js";import"../nile-icon/icons/svg/alert.esm.js";import"../nile-icon/icons/svg/allapplication.esm.js";import"../nile-icon/icons/svg/allsearch.esm.js";import"../nile-icon/icons/svg/analytics.esm.js";import"../nile-icon/icons/svg/api.esm.js";import"../nile-icon/icons/svg/applications-2.esm.js";import"../nile-icon/icons/svg/apply-filter.esm.js";import"../nile-icon/icons/svg/apps.esm.js";import"../nile-icon/icons/svg/aquera.esm.js";import"../nile-icon/icons/svg/aquerasupport.esm.js";import"../nile-icon/icons/svg/array-loop.esm.js";import"../nile-icon/icons/svg/array-of-boolean.esm.js";import"../nile-icon/icons/svg/array-of-integer.esm.js";import"../nile-icon/icons/svg/array-of-string.esm.js";import"../nile-icon/icons/svg/array.esm.js";import"../nile-icon/icons/svg/arrayofobject.esm.js";import"../nile-icon/icons/svg/arrow-narrow-left.esm.js";import"../nile-icon/icons/svg/arrow.esm.js";import"../nile-icon/icons/svg/arrowdown.esm.js";import"../nile-icon/icons/svg/arrowdropdown.esm.js";import"../nile-icon/icons/svg/arrowdropup.esm.js";import"../nile-icon/icons/svg/arrowleft.esm.js";import"../nile-icon/icons/svg/arrowright.esm.js";import"../nile-icon/icons/svg/arrowup.esm.js";import"../nile-icon/icons/svg/attribute-map-analysis-icon.esm.js";import"../nile-icon/icons/svg/attribute.esm.js";import"../nile-icon/icons/svg/attributemap.esm.js";import"../nile-icon/icons/svg/automation-details.esm.js";import"../nile-icon/icons/svg/back.esm.js";import"../nile-icon/icons/svg/bar-and-line-chart.esm.js";import"../nile-icon/icons/svg/bar-chart-square-02.esm.js";import"../nile-icon/icons/svg/bar-chart.esm.js";import"../nile-icon/icons/svg/bargraph.esm.js";import"../nile-icon/icons/svg/block.esm.js";import"../nile-icon/icons/svg/bluedot.esm.js";import"../nile-icon/icons/svg/bold.esm.js";import"../nile-icon/icons/svg/book-closed.esm.js";import"../nile-icon/icons/svg/boolean.esm.js";import"../nile-icon/icons/svg/border_all.esm.js";import"../nile-icon/icons/svg/box.esm.js";import"../nile-icon/icons/svg/bubble-chart.esm.js";import"../nile-icon/icons/svg/bulk-sync.esm.js";import"../nile-icon/icons/svg/button-loading-black.esm.js";import"../nile-icon/icons/svg/button-loading-blue-animated.esm.js";import"../nile-icon/icons/svg/button-loading-blue.esm.js";import"../nile-icon/icons/svg/button-loading-white.esm.js";import"../nile-icon/icons/svg/calendar.esm.js";import"../nile-icon/icons/svg/cases.esm.js";import"../nile-icon/icons/svg/cell-loader.esm.js";import"../nile-icon/icons/svg/center-align.esm.js";import"../nile-icon/icons/svg/certification.esm.js";import"../nile-icon/icons/svg/check-circle.esm.js";import"../nile-icon/icons/svg/check-done-01.esm.js";import"../nile-icon/icons/svg/check-done-02.esm.js";import"../nile-icon/icons/svg/chevron-left-double.esm.js";import"../nile-icon/icons/svg/chevron-up.esm.js";import"../nile-icon/icons/svg/class.esm.js";import"../nile-icon/icons/svg/clock-check.esm.js";import"../nile-icon/icons/svg/clock-rewind.esm.js";import"../nile-icon/icons/svg/clock.esm.js";import"../nile-icon/icons/svg/close.esm.js";import"../nile-icon/icons/svg/cloud-01.esm.js";import"../nile-icon/icons/svg/code-generator.esm.js";import"../nile-icon/icons/svg/collapse-1.esm.js";import"../nile-icon/icons/svg/collapse.esm.js";import"../nile-icon/icons/svg/color.esm.js";import"../nile-icon/icons/svg/column-02.esm.js";import"../nile-icon/icons/svg/column-add.esm.js";import"../nile-icon/icons/svg/columns-03.esm.js";import"../nile-icon/icons/svg/combo1.esm.js";import"../nile-icon/icons/svg/comment.esm.js";import"../nile-icon/icons/svg/compact.esm.js";import"../nile-icon/icons/svg/compare-tiles.esm.js";import"../nile-icon/icons/svg/compare.esm.js";import"../nile-icon/icons/svg/component-menu.esm.js";import"../nile-icon/icons/svg/component.esm.js";import"../nile-icon/icons/svg/components-icon.esm.js";import"../nile-icon/icons/svg/componenttext.esm.js";import"../nile-icon/icons/svg/condition.esm.js";import"../nile-icon/icons/svg/conditions.esm.js";import"../nile-icon/icons/svg/connect.esm.js";import"../nile-icon/icons/svg/connectivitymap.esm.js";import"../nile-icon/icons/svg/connectorrightarrow.esm.js";import"../nile-icon/icons/svg/copy-06.esm.js";import"../nile-icon/icons/svg/copy.esm.js";import"../nile-icon/icons/svg/cor-analysis.esm.js";import"../nile-icon/icons/svg/correlation.esm.js";import"../nile-icon/icons/svg/cost-analytics.esm.js";import"../nile-icon/icons/svg/create.esm.js";import"../nile-icon/icons/svg/createuser.esm.js";import"../nile-icon/icons/svg/dashboard.esm.js";import"../nile-icon/icons/svg/data-insight.esm.js";import"../nile-icon/icons/svg/data-type-array.esm.js";import"../nile-icon/icons/svg/data-type-boolean.esm.js";import"../nile-icon/icons/svg/data-type-json.esm.js";import"../nile-icon/icons/svg/data-type-null.esm.js";import"../nile-icon/icons/svg/data-type-number.esm.js";import"../nile-icon/icons/svg/data-type-string.esm.js";import"../nile-icon/icons/svg/data-type-unknown.esm.js";import"../nile-icon/icons/svg/database.esm.js";import"../nile-icon/icons/svg/databaseview.esm.js";import"../nile-icon/icons/svg/dataflow-03.esm.js";import"../nile-icon/icons/svg/dataflow-04.esm.js";import"../nile-icon/icons/svg/default-cursor.esm.js";import"../nile-icon/icons/svg/default.esm.js";import"../nile-icon/icons/svg/delegate.esm.js";import"../nile-icon/icons/svg/delete.esm.js";import"../nile-icon/icons/svg/deligateduser.esm.js";import"../nile-icon/icons/svg/directory.esm.js";import"../nile-icon/icons/svg/disabled.esm.js";import"../nile-icon/icons/svg/dock-to-right.esm.js";import"../nile-icon/icons/svg/document-new.esm.js";import"../nile-icon/icons/svg/done-02.esm.js";import"../nile-icon/icons/svg/done.esm.js";import"../nile-icon/icons/svg/dontmap.esm.js";import"../nile-icon/icons/svg/donut.esm.js";import"../nile-icon/icons/svg/dotpoints-02.esm.js";import"../nile-icon/icons/svg/dots-grid.esm.js";import"../nile-icon/icons/svg/doublearrowleft.esm.js";import"../nile-icon/icons/svg/doublearrowright.esm.js";import"../nile-icon/icons/svg/dowhileloop.esm.js";import"../nile-icon/icons/svg/downgrade.esm.js";import"../nile-icon/icons/svg/download.esm.js";import"../nile-icon/icons/svg/drag.esm.js";import"../nile-icon/icons/svg/edit-write.esm.js";import"../nile-icon/icons/svg/else.esm.js";import"../nile-icon/icons/svg/email.esm.js";import"../nile-icon/icons/svg/enable.esm.js";import"../nile-icon/icons/svg/entities.esm.js";import"../nile-icon/icons/svg/entitlement.esm.js";import"../nile-icon/icons/svg/error.esm.js";import"../nile-icon/icons/svg/escalate.esm.js";import"../nile-icon/icons/svg/exactmatch.esm.js";import"../nile-icon/icons/svg/execute.esm.js";import"../nile-icon/icons/svg/expand-03.esm.js";import"../nile-icon/icons/svg/expand-06.esm.js";import"../nile-icon/icons/svg/expand-2.esm.js";import"../nile-icon/icons/svg/expand.esm.js";import"../nile-icon/icons/svg/eye-off.esm.js";import"../nile-icon/icons/svg/eye.esm.js";import"../nile-icon/icons/svg/eyeclosed.esm.js";import"../nile-icon/icons/svg/featured-icon.esm.js";import"../nile-icon/icons/svg/file-06.esm.js";import"../nile-icon/icons/svg/file-check-02.esm.js";import"../nile-icon/icons/svg/file-shield-01.esm.js";import"../nile-icon/icons/svg/file-shield-02.esm.js";import"../nile-icon/icons/svg/file-type-icon.esm.js";import"../nile-icon/icons/svg/file.esm.js";import"../nile-icon/icons/svg/filter-1.esm.js";import"../nile-icon/icons/svg/filter.esm.js";import"../nile-icon/icons/svg/fingerprint-03.esm.js";import"../nile-icon/icons/svg/firewall.esm.js";import"../nile-icon/icons/svg/firewallagent.esm.js";import"../nile-icon/icons/svg/flow.esm.js";import"../nile-icon/icons/svg/flowmap-agent.esm.js";import"../nile-icon/icons/svg/flowmap-application.esm.js";import"../nile-icon/icons/svg/flowmap-colorpalatte.esm.js";import"../nile-icon/icons/svg/flowmap-firewall-agent.esm.js";import"../nile-icon/icons/svg/flowmap-firewall.esm.js";import"../nile-icon/icons/svg/flowmap-gateway.esm.js";import"../nile-icon/icons/svg/flowmap-orchestration.esm.js";import"../nile-icon/icons/svg/flowmap-undo.esm.js";import"../nile-icon/icons/svg/flowmap-workflow.esm.js";import"../nile-icon/icons/svg/flowmap.esm.js";import"../nile-icon/icons/svg/folder.esm.js";import"../nile-icon/icons/svg/foreach.esm.js";import"../nile-icon/icons/svg/frequency.esm.js";import"../nile-icon/icons/svg/full-union.esm.js";import"../nile-icon/icons/svg/fullscreen.esm.js";import"../nile-icon/icons/svg/fullscreenexit.esm.js";import"../nile-icon/icons/svg/fullscreenshrink.esm.js";import"../nile-icon/icons/svg/function.esm.js";import"../nile-icon/icons/svg/funnel-02.esm.js";import"../nile-icon/icons/svg/funnel.esm.js";import"../nile-icon/icons/svg/gateway.esm.js";import"../nile-icon/icons/svg/gauge.esm.js";import"../nile-icon/icons/svg/general.esm.js";import"../nile-icon/icons/svg/generationphase.esm.js";import"../nile-icon/icons/svg/global-search.esm.js";import"../nile-icon/icons/svg/globe-03.esm.js";import"../nile-icon/icons/svg/globe.esm.js";import"../nile-icon/icons/svg/goto.esm.js";import"../nile-icon/icons/svg/graph.esm.js";import"../nile-icon/icons/svg/graphedit.esm.js";import"../nile-icon/icons/svg/greendot.esm.js";import"../nile-icon/icons/svg/greydot.esm.js";import"../nile-icon/icons/svg/greylightdot.esm.js";import"../nile-icon/icons/svg/grid-01.esm.js";import"../nile-icon/icons/svg/group-analysis-icon.esm.js";import"../nile-icon/icons/svg/group.esm.js";import"../nile-icon/icons/svg/groupby.esm.js";import"../nile-icon/icons/svg/groups.esm.js";import"../nile-icon/icons/svg/guide-01.esm.js";import"../nile-icon/icons/svg/guide.esm.js";import"../nile-icon/icons/svg/handtool.esm.js";import"../nile-icon/icons/svg/header-child-workflow.esm.js";import"../nile-icon/icons/svg/header-flows.esm.js";import"../nile-icon/icons/svg/header-tasks.esm.js";import"../nile-icon/icons/svg/headphones-01.esm.js";import"../nile-icon/icons/svg/help.esm.js";import"../nile-icon/icons/svg/helpandsupport.esm.js";import"../nile-icon/icons/svg/helpers.esm.js";import"../nile-icon/icons/svg/helpsupport.esm.js";import"../nile-icon/icons/svg/history.esm.js";import"../nile-icon/icons/svg/identitygraph.esm.js";import"../nile-icon/icons/svg/identityledger.esm.js";import"../nile-icon/icons/svg/ifelse.esm.js";import"../nile-icon/icons/svg/ifelsenew.esm.js";import"../nile-icon/icons/svg/image.esm.js";import"../nile-icon/icons/svg/immutable.esm.js";import"../nile-icon/icons/svg/info-icon.esm.js";import"../nile-icon/icons/svg/info.esm.js";import"../nile-icon/icons/svg/inner-union.esm.js";import"../nile-icon/icons/svg/inprogress.esm.js";import"../nile-icon/icons/svg/insert-at-cursor.esm.js";import"../nile-icon/icons/svg/integer.esm.js";import"../nile-icon/icons/svg/intersection.esm.js";import"../nile-icon/icons/svg/itallic.esm.js";import"../nile-icon/icons/svg/js.esm.js";import"../nile-icon/icons/svg/justify-align.esm.js";import"../nile-icon/icons/svg/key-performance-indicator.esm.js";import"../nile-icon/icons/svg/keyboard-01.esm.js";import"../nile-icon/icons/svg/keyword.esm.js";import"../nile-icon/icons/svg/kill.esm.js";import"../nile-icon/icons/svg/laptop-01.esm.js";import"../nile-icon/icons/svg/layers-three-02.esm.js";import"../nile-icon/icons/svg/layout-alt-02.esm.js";import"../nile-icon/icons/svg/layout-alt-03.esm.js";import"../nile-icon/icons/svg/left-align.esm.js";import"../nile-icon/icons/svg/left-join.esm.js";import"../nile-icon/icons/svg/left-union.esm.js";import"../nile-icon/icons/svg/leftpointarrow.esm.js";import"../nile-icon/icons/svg/life-buoy-01.esm.js";import"../nile-icon/icons/svg/line.esm.js";import"../nile-icon/icons/svg/link.esm.js";import"../nile-icon/icons/svg/list-attribute.esm.js";import"../nile-icon/icons/svg/list.esm.js";import"../nile-icon/icons/svg/loader.esm.js";import"../nile-icon/icons/svg/loading.esm.js";import"../nile-icon/icons/svg/loading2.esm.js";import"../nile-icon/icons/svg/lock.esm.js";import"../nile-icon/icons/svg/log-info.esm.js";import"../nile-icon/icons/svg/log.esm.js";import"../nile-icon/icons/svg/logo-white.esm.js";import"../nile-icon/icons/svg/logout.esm.js";import"../nile-icon/icons/svg/logs.esm.js";import"../nile-icon/icons/svg/loop.esm.js";import"../nile-icon/icons/svg/manage.esm.js";import"../nile-icon/icons/svg/map.esm.js";import"../nile-icon/icons/svg/mapcreate.esm.js";import"../nile-icon/icons/svg/mapdont.esm.js";import"../nile-icon/icons/svg/maponcreate.esm.js";import"../nile-icon/icons/svg/maponupdate.esm.js";import"../nile-icon/icons/svg/mapper.esm.js";import"../nile-icon/icons/svg/mapupdate.esm.js";import"../nile-icon/icons/svg/marker-pin-01.esm.js";import"../nile-icon/icons/svg/maximize.esm.js";import"../nile-icon/icons/svg/menu.esm.js";import"../nile-icon/icons/svg/message-notification-square.esm.js";import"../nile-icon/icons/svg/minus.esm.js";import"../nile-icon/icons/svg/monitor-01.esm.js";import"../nile-icon/icons/svg/mouse.esm.js";import"../nile-icon/icons/svg/move-application.esm.js";import"../nile-icon/icons/svg/moveleft.esm.js";import"../nile-icon/icons/svg/moveright.esm.js";import"../nile-icon/icons/svg/mute.esm.js";import"../nile-icon/icons/svg/my-integration.esm.js";import"../nile-icon/icons/svg/new-calendar.esm.js";import"../nile-icon/icons/svg/nightingale-chart.esm.js";import"../nile-icon/icons/svg/nlp.esm.js";import"../nile-icon/icons/svg/nomatch.esm.js";import"../nile-icon/icons/svg/note.esm.js";import"../nile-icon/icons/svg/notification.esm.js";import"../nile-icon/icons/svg/notificationadd.esm.js";import"../nile-icon/icons/svg/notificationadded.esm.js";import"../nile-icon/icons/svg/null.esm.js";import"../nile-icon/icons/svg/number.esm.js";import"../nile-icon/icons/svg/numberinput.esm.js";import"../nile-icon/icons/svg/numbers.esm.js";import"../nile-icon/icons/svg/object.esm.js";import"../nile-icon/icons/svg/ol.esm.js";import"../nile-icon/icons/svg/operators.esm.js";import"../nile-icon/icons/svg/options.esm.js";import"../nile-icon/icons/svg/orchestration-solid.esm.js";import"../nile-icon/icons/svg/orchestration.esm.js";import"../nile-icon/icons/svg/organization.esm.js";import"../nile-icon/icons/svg/other.esm.js";import"../nile-icon/icons/svg/otherdetails.esm.js";import"../nile-icon/icons/svg/override.esm.js";import"../nile-icon/icons/svg/palletemenu.esm.js";import"../nile-icon/icons/svg/paperclip.esm.js";import"../nile-icon/icons/svg/partner.esm.js";import"../nile-icon/icons/svg/partners.esm.js";import"../nile-icon/icons/svg/pause.esm.js";import"../nile-icon/icons/svg/pencil.esm.js";import"../nile-icon/icons/svg/peopletask.esm.js";import"../nile-icon/icons/svg/persistent-variable.esm.js";import"../nile-icon/icons/svg/persistentdata.esm.js";import"../nile-icon/icons/svg/phone.esm.js";import"../nile-icon/icons/svg/pie.esm.js";import"../nile-icon/icons/svg/pin.esm.js";import"../nile-icon/icons/svg/play.esm.js";import"../nile-icon/icons/svg/play_pause.esm.js";import"../nile-icon/icons/svg/plus.esm.js";import"../nile-icon/icons/svg/pluscircle.esm.js";import"../nile-icon/icons/svg/plussquare.esm.js";import"../nile-icon/icons/svg/policy.esm.js";import"../nile-icon/icons/svg/potentialmatch.esm.js";import"../nile-icon/icons/svg/poweron.esm.js";import"../nile-icon/icons/svg/predefined.esm.js";import"../nile-icon/icons/svg/preview.esm.js";import"../nile-icon/icons/svg/printer.esm.js";import"../nile-icon/icons/svg/priority-high.esm.js";import"../nile-icon/icons/svg/priority-highest.esm.js";import"../nile-icon/icons/svg/priority-low.esm.js";import"../nile-icon/icons/svg/priority-medium.esm.js";import"../nile-icon/icons/svg/privilage.esm.js";import"../nile-icon/icons/svg/privilege.esm.js";import"../nile-icon/icons/svg/privilegeobject.esm.js";import"../nile-icon/icons/svg/process.esm.js";import"../nile-icon/icons/svg/professionaldetails.esm.js";import"../nile-icon/icons/svg/question.esm.js";import"../nile-icon/icons/svg/radar.esm.js";import"../nile-icon/icons/svg/radio.esm.js";import"../nile-icon/icons/svg/radioactive.esm.js";import"../nile-icon/icons/svg/radiodone.esm.js";import"../nile-icon/icons/svg/read.esm.js";import"../nile-icon/icons/svg/readexpression.esm.js";import"../nile-icon/icons/svg/readonly.esm.js";import"../nile-icon/icons/svg/readonlyuser.esm.js";import"../nile-icon/icons/svg/readuser.esm.js";import"../nile-icon/icons/svg/reddot.esm.js";import"../nile-icon/icons/svg/redo-02.esm.js";import"../nile-icon/icons/svg/redo.esm.js";import"../nile-icon/icons/svg/refresh.esm.js";import"../nile-icon/icons/svg/reminder.esm.js";import"../nile-icon/icons/svg/resize.esm.js";import"../nile-icon/icons/svg/resource.esm.js";import"../nile-icon/icons/svg/resource_analysis.esm.js";import"../nile-icon/icons/svg/resource_graph.esm.js";import"../nile-icon/icons/svg/restart_alt.esm.js";import"../nile-icon/icons/svg/revocation-cycle.esm.js";import"../nile-icon/icons/svg/right-align.esm.js";import"../nile-icon/icons/svg/right-join.esm.js";import"../nile-icon/icons/svg/right-union.esm.js";import"../nile-icon/icons/svg/rocket-02.esm.js";import"../nile-icon/icons/svg/role.esm.js";import"../nile-icon/icons/svg/run.esm.js";import"../nile-icon/icons/svg/sankey.esm.js";import"../nile-icon/icons/svg/save.esm.js";import"../nile-icon/icons/svg/savings.esm.js";import"../nile-icon/icons/svg/scatter-plot.esm.js";import"../nile-icon/icons/svg/schedule.esm.js";import"../nile-icon/icons/svg/schema.esm.js";import"../nile-icon/icons/svg/script.esm.js";import"../nile-icon/icons/svg/search-steps-icon.esm.js";import"../nile-icon/icons/svg/search.esm.js";import"../nile-icon/icons/svg/section.esm.js";import"../nile-icon/icons/svg/select-02.esm.js";import"../nile-icon/icons/svg/select.esm.js";import"../nile-icon/icons/svg/selectapplication.esm.js";import"../nile-icon/icons/svg/selectattributes.esm.js";import"../nile-icon/icons/svg/semi-circle-donut-chart.esm.js";import"../nile-icon/icons/svg/send.esm.js";import"../nile-icon/icons/svg/sendemail.esm.js";import"../nile-icon/icons/svg/sendescalation.esm.js";import"../nile-icon/icons/svg/sendreminder.esm.js";import"../nile-icon/icons/svg/server-03.esm.js";import"../nile-icon/icons/svg/settings-02.esm.js";import"../nile-icon/icons/svg/settings.esm.js";import"../nile-icon/icons/svg/share.esm.js";import"../nile-icon/icons/svg/shield-01.esm.js";import"../nile-icon/icons/svg/smartcode.esm.js";import"../nile-icon/icons/svg/sort.esm.js";import"../nile-icon/icons/svg/sort_ascending.esm.js";import"../nile-icon/icons/svg/sort_descending.esm.js";import"../nile-icon/icons/svg/sortascending.esm.js";import"../nile-icon/icons/svg/sortdescending.esm.js";import"../nile-icon/icons/svg/sortdown.esm.js";import"../nile-icon/icons/svg/sortup.esm.js";import"../nile-icon/icons/svg/stacked-bar-chart.esm.js";import"../nile-icon/icons/svg/step_into.esm.js";import"../nile-icon/icons/svg/step_out.esm.js";import"../nile-icon/icons/svg/step_over.esm.js";import"../nile-icon/icons/svg/stop.esm.js";import"../nile-icon/icons/svg/storybook.esm.js";import"../nile-icon/icons/svg/string.esm.js";import"../nile-icon/icons/svg/stringinput.esm.js";import"../nile-icon/icons/svg/stringletters.esm.js";import"../nile-icon/icons/svg/support.esm.js";import"../nile-icon/icons/svg/swap.esm.js";import"../nile-icon/icons/svg/switch.esm.js";import"../nile-icon/icons/svg/sync.esm.js";import"../nile-icon/icons/svg/table.esm.js";import"../nile-icon/icons/svg/tag.esm.js";import"../nile-icon/icons/svg/test.esm.js";import"../nile-icon/icons/svg/text-02.esm.js";import"../nile-icon/icons/svg/text.esm.js";import"../nile-icon/icons/svg/textarea-expander.esm.js";import"../nile-icon/icons/svg/thumbsdown.esm.js";import"../nile-icon/icons/svg/thumbsup.esm.js";import"../nile-icon/icons/svg/thumsup.esm.js";import"../nile-icon/icons/svg/tick.esm.js";import"../nile-icon/icons/svg/timeupdate.esm.js";import"../nile-icon/icons/svg/timezone.esm.js";import"../nile-icon/icons/svg/transaction_monitor.esm.js";import"../nile-icon/icons/svg/trend-up-02.esm.js";import"../nile-icon/icons/svg/trigger.esm.js";import"../nile-icon/icons/svg/ul.esm.js";import"../nile-icon/icons/svg/underline.esm.js";import"../nile-icon/icons/svg/undo-02.esm.js";import"../nile-icon/icons/svg/undo.esm.js";import"../nile-icon/icons/svg/union.esm.js";import"../nile-icon/icons/svg/unmute.esm.js";import"../nile-icon/icons/svg/update.esm.js";import"../nile-icon/icons/svg/updown.esm.js";import"../nile-icon/icons/svg/upgrade.esm.js";import"../nile-icon/icons/svg/upload.esm.js";import"../nile-icon/icons/svg/user-group.esm.js";import"../nile-icon/icons/svg/user.esm.js";import"../nile-icon/icons/svg/useractive.esm.js";import"../nile-icon/icons/svg/useradd.esm.js";import"../nile-icon/icons/svg/useraddgroup.esm.js";import"../nile-icon/icons/svg/userfind.esm.js";import"../nile-icon/icons/svg/userimport.esm.js";import"../nile-icon/icons/svg/userimportgroup.esm.js";import"../nile-icon/icons/svg/usermixed.esm.js";import"../nile-icon/icons/svg/userremove.esm.js";import"../nile-icon/icons/svg/userremovegroup.esm.js";import"../nile-icon/icons/svg/users-plus.esm.js";import"../nile-icon/icons/svg/users-up.esm.js";import"../nile-icon/icons/svg/users.esm.js";import"../nile-icon/icons/svg/userupdate.esm.js";import"../nile-icon/icons/svg/validationexpression.esm.js";import"../nile-icon/icons/svg/variable-global.esm.js";import"../nile-icon/icons/svg/variable-local.esm.js";import"../nile-icon/icons/svg/variable-new.esm.js";import"../nile-icon/icons/svg/variable.esm.js";import"../nile-icon/icons/svg/video.esm.js";import"../nile-icon/icons/svg/view.esm.js";import"../nile-icon/icons/svg/virtualserver.esm.js";import"../nile-icon/icons/svg/virtualservergroup.esm.js";import"../nile-icon/icons/svg/visibility.esm.js";import"../nile-icon/icons/svg/visibilityoff.esm.js";import"../nile-icon/icons/svg/wait.esm.js";import"../nile-icon/icons/svg/warning-01.esm.js";import"../nile-icon/icons/svg/warning.esm.js";import"../nile-icon/icons/svg/whileloop.esm.js";import"../nile-icon/icons/svg/workflow-application.esm.js";import"../nile-icon/icons/svg/workflow-text.esm.js";import"../nile-icon/icons/svg/workflow.esm.js";import"../nile-icon/icons/svg/writeexpression.esm.js";import"../nile-icon/aliasmap.esm.js";import"../nile-checkbox/nile-checkbox.css.esm.js";import"../internal/default-value.esm.js";import"lit/directives/if-defined.js";import"lit/directives/live.js";let p=class extends l{constructor(){super(...arguments),this.current=!1,this.selected=!1,this.hasHover=!1,this.hidden=!1,this.isMultipleSelect=!1,this.value="",this.showCheckbox=!1,this.disabled=!1}connectedCallback(){super.connectedCallback(),this.setAttribute("role","option"),this.setAttribute("aria-selected","false");const i=this.closest("nile-select");if(i&&i.hasAttribute("multiple")){let s=i.getAttribute("multiple");"false"!==s&&(""===s&&(s="true"),this.isMultipleSelect=Boolean(s))}}updated(i){i.has("showCheckbox")&&(this.isMultipleSelect=this.showCheckbox)}handleDefaultSlotChange(){const i=this.getTextLabel();void 0!==this.cachedTextLabel?i!==this.cachedTextLabel&&(this.cachedTextLabel=i,this.emit("slotchange")):this.cachedTextLabel=i}handleMouseEnter(){this.hasHover=!0}handleMouseLeave(){this.hasHover=!1}handleDisabledChange(){this.setAttribute("aria-disabled",this.disabled?"true":"false")}handleSelectedChange(){this.setAttribute("aria-selected",this.selected?"true":"false")}handleValueChange(){"string"!=typeof this.value&&(this.value=String(this.value))}getTextLabel(){const i=this.querySelector("label");return i?i.textContent?.trim()??"":(this.textContent??"").trim()}render(){return t`
1
+ import{__decorate as i}from"tslib";import{s}from"./nile-option.css.esm.js";import"../nile-icon/index.esm.js";import{classMap as o}from"lit/directives/class-map.js";import{query as n,state as e,property as c,customElement as m}from"lit/decorators.js";import{html as t}from"lit";import{w as r}from"../internal/watch.esm.js";import{N as l}from"../internal/nile-element.esm.js";import"../nile-checkbox/nile-checkbox.esm.js";import"lit/directives/unsafe-svg.js";import"../nile-icon/icons/svg/index.esm.js";import"../nile-icon/icons/svg/access-request.esm.js";import"../nile-icon/icons/svg/accessreview.esm.js";import"../nile-icon/icons/svg/action.esm.js";import"../nile-icon/icons/svg/activity-logs.esm.js";import"../nile-icon/icons/svg/address.esm.js";import"../nile-icon/icons/svg/admin-users.esm.js";import"../nile-icon/icons/svg/agent.esm.js";import"../nile-icon/icons/svg/aggregation.esm.js";import"../nile-icon/icons/svg/alert-circle.esm.js";import"../nile-icon/icons/svg/alert.esm.js";import"../nile-icon/icons/svg/allapplication.esm.js";import"../nile-icon/icons/svg/allsearch.esm.js";import"../nile-icon/icons/svg/analytics.esm.js";import"../nile-icon/icons/svg/api.esm.js";import"../nile-icon/icons/svg/applications-2.esm.js";import"../nile-icon/icons/svg/apply-filter.esm.js";import"../nile-icon/icons/svg/apps.esm.js";import"../nile-icon/icons/svg/aquera.esm.js";import"../nile-icon/icons/svg/aquerasupport.esm.js";import"../nile-icon/icons/svg/array-loop.esm.js";import"../nile-icon/icons/svg/array-of-boolean.esm.js";import"../nile-icon/icons/svg/array-of-integer.esm.js";import"../nile-icon/icons/svg/array-of-string.esm.js";import"../nile-icon/icons/svg/array.esm.js";import"../nile-icon/icons/svg/arrayofobject.esm.js";import"../nile-icon/icons/svg/arrow-narrow-left.esm.js";import"../nile-icon/icons/svg/arrow.esm.js";import"../nile-icon/icons/svg/arrowdown.esm.js";import"../nile-icon/icons/svg/arrowdropdown.esm.js";import"../nile-icon/icons/svg/arrowdropup.esm.js";import"../nile-icon/icons/svg/arrowleft.esm.js";import"../nile-icon/icons/svg/arrowright.esm.js";import"../nile-icon/icons/svg/arrowup.esm.js";import"../nile-icon/icons/svg/attribute-map-analysis-icon.esm.js";import"../nile-icon/icons/svg/attribute.esm.js";import"../nile-icon/icons/svg/attributemap.esm.js";import"../nile-icon/icons/svg/automation-details.esm.js";import"../nile-icon/icons/svg/back.esm.js";import"../nile-icon/icons/svg/bar-and-line-chart.esm.js";import"../nile-icon/icons/svg/bar-chart-square-02.esm.js";import"../nile-icon/icons/svg/bar-chart.esm.js";import"../nile-icon/icons/svg/bargraph.esm.js";import"../nile-icon/icons/svg/block.esm.js";import"../nile-icon/icons/svg/bluedot.esm.js";import"../nile-icon/icons/svg/bold-try.esm.js";import"../nile-icon/icons/svg/bold.esm.js";import"../nile-icon/icons/svg/book-closed.esm.js";import"../nile-icon/icons/svg/boolean.esm.js";import"../nile-icon/icons/svg/border_all.esm.js";import"../nile-icon/icons/svg/box.esm.js";import"../nile-icon/icons/svg/bubble-chart.esm.js";import"../nile-icon/icons/svg/bulk-sync.esm.js";import"../nile-icon/icons/svg/button-loading-black.esm.js";import"../nile-icon/icons/svg/button-loading-blue-animated.esm.js";import"../nile-icon/icons/svg/button-loading-blue.esm.js";import"../nile-icon/icons/svg/button-loading-white.esm.js";import"../nile-icon/icons/svg/calendar.esm.js";import"../nile-icon/icons/svg/cases.esm.js";import"../nile-icon/icons/svg/cell-loader.esm.js";import"../nile-icon/icons/svg/center-align.esm.js";import"../nile-icon/icons/svg/certification.esm.js";import"../nile-icon/icons/svg/check-circle.esm.js";import"../nile-icon/icons/svg/check-done-01.esm.js";import"../nile-icon/icons/svg/check-done-02.esm.js";import"../nile-icon/icons/svg/chevron-left-double.esm.js";import"../nile-icon/icons/svg/chevron-up.esm.js";import"../nile-icon/icons/svg/class.esm.js";import"../nile-icon/icons/svg/clock-check.esm.js";import"../nile-icon/icons/svg/clock-rewind.esm.js";import"../nile-icon/icons/svg/clock.esm.js";import"../nile-icon/icons/svg/close.esm.js";import"../nile-icon/icons/svg/cloud-01.esm.js";import"../nile-icon/icons/svg/code-generator.esm.js";import"../nile-icon/icons/svg/collapse-1.esm.js";import"../nile-icon/icons/svg/collapse.esm.js";import"../nile-icon/icons/svg/color.esm.js";import"../nile-icon/icons/svg/column-02.esm.js";import"../nile-icon/icons/svg/column-add.esm.js";import"../nile-icon/icons/svg/columns-03.esm.js";import"../nile-icon/icons/svg/combo1.esm.js";import"../nile-icon/icons/svg/comment.esm.js";import"../nile-icon/icons/svg/compact.esm.js";import"../nile-icon/icons/svg/compare-tiles.esm.js";import"../nile-icon/icons/svg/compare.esm.js";import"../nile-icon/icons/svg/component-menu.esm.js";import"../nile-icon/icons/svg/component.esm.js";import"../nile-icon/icons/svg/components-icon.esm.js";import"../nile-icon/icons/svg/componenttext.esm.js";import"../nile-icon/icons/svg/condition.esm.js";import"../nile-icon/icons/svg/conditions.esm.js";import"../nile-icon/icons/svg/connect.esm.js";import"../nile-icon/icons/svg/connectivitymap.esm.js";import"../nile-icon/icons/svg/connectorrightarrow.esm.js";import"../nile-icon/icons/svg/copy-06.esm.js";import"../nile-icon/icons/svg/copy.esm.js";import"../nile-icon/icons/svg/cor-analysis.esm.js";import"../nile-icon/icons/svg/correlation.esm.js";import"../nile-icon/icons/svg/cost-analytics.esm.js";import"../nile-icon/icons/svg/create.esm.js";import"../nile-icon/icons/svg/createuser.esm.js";import"../nile-icon/icons/svg/dashboard.esm.js";import"../nile-icon/icons/svg/data-insight.esm.js";import"../nile-icon/icons/svg/data-type-array.esm.js";import"../nile-icon/icons/svg/data-type-boolean.esm.js";import"../nile-icon/icons/svg/data-type-json.esm.js";import"../nile-icon/icons/svg/data-type-null.esm.js";import"../nile-icon/icons/svg/data-type-number.esm.js";import"../nile-icon/icons/svg/data-type-string.esm.js";import"../nile-icon/icons/svg/data-type-unknown.esm.js";import"../nile-icon/icons/svg/database.esm.js";import"../nile-icon/icons/svg/databaseview.esm.js";import"../nile-icon/icons/svg/dataflow-03.esm.js";import"../nile-icon/icons/svg/dataflow-04.esm.js";import"../nile-icon/icons/svg/default-cursor.esm.js";import"../nile-icon/icons/svg/default.esm.js";import"../nile-icon/icons/svg/delegate.esm.js";import"../nile-icon/icons/svg/delete.esm.js";import"../nile-icon/icons/svg/deligateduser.esm.js";import"../nile-icon/icons/svg/directory.esm.js";import"../nile-icon/icons/svg/disabled.esm.js";import"../nile-icon/icons/svg/dock-to-right.esm.js";import"../nile-icon/icons/svg/document-new.esm.js";import"../nile-icon/icons/svg/done-02.esm.js";import"../nile-icon/icons/svg/done.esm.js";import"../nile-icon/icons/svg/dontmap.esm.js";import"../nile-icon/icons/svg/donut.esm.js";import"../nile-icon/icons/svg/dotpoints-02.esm.js";import"../nile-icon/icons/svg/dots-grid.esm.js";import"../nile-icon/icons/svg/doublearrowleft.esm.js";import"../nile-icon/icons/svg/doublearrowright.esm.js";import"../nile-icon/icons/svg/dowhileloop.esm.js";import"../nile-icon/icons/svg/downgrade.esm.js";import"../nile-icon/icons/svg/download.esm.js";import"../nile-icon/icons/svg/drag.esm.js";import"../nile-icon/icons/svg/edit-write.esm.js";import"../nile-icon/icons/svg/else.esm.js";import"../nile-icon/icons/svg/email.esm.js";import"../nile-icon/icons/svg/enable.esm.js";import"../nile-icon/icons/svg/entities.esm.js";import"../nile-icon/icons/svg/entitlement.esm.js";import"../nile-icon/icons/svg/error.esm.js";import"../nile-icon/icons/svg/escalate.esm.js";import"../nile-icon/icons/svg/exactmatch.esm.js";import"../nile-icon/icons/svg/execute.esm.js";import"../nile-icon/icons/svg/expand-03.esm.js";import"../nile-icon/icons/svg/expand-06.esm.js";import"../nile-icon/icons/svg/expand-2.esm.js";import"../nile-icon/icons/svg/expand.esm.js";import"../nile-icon/icons/svg/eye-off.esm.js";import"../nile-icon/icons/svg/eye.esm.js";import"../nile-icon/icons/svg/eyeclosed.esm.js";import"../nile-icon/icons/svg/featured-icon.esm.js";import"../nile-icon/icons/svg/file-06.esm.js";import"../nile-icon/icons/svg/file-check-02.esm.js";import"../nile-icon/icons/svg/file-shield-01.esm.js";import"../nile-icon/icons/svg/file-shield-02.esm.js";import"../nile-icon/icons/svg/file-type-icon.esm.js";import"../nile-icon/icons/svg/file.esm.js";import"../nile-icon/icons/svg/filter-1.esm.js";import"../nile-icon/icons/svg/filter.esm.js";import"../nile-icon/icons/svg/fingerprint-03.esm.js";import"../nile-icon/icons/svg/firewall.esm.js";import"../nile-icon/icons/svg/firewallagent.esm.js";import"../nile-icon/icons/svg/flow.esm.js";import"../nile-icon/icons/svg/flowmap-agent.esm.js";import"../nile-icon/icons/svg/flowmap-application.esm.js";import"../nile-icon/icons/svg/flowmap-colorpalatte.esm.js";import"../nile-icon/icons/svg/flowmap-firewall-agent.esm.js";import"../nile-icon/icons/svg/flowmap-firewall.esm.js";import"../nile-icon/icons/svg/flowmap-gateway.esm.js";import"../nile-icon/icons/svg/flowmap-orchestration.esm.js";import"../nile-icon/icons/svg/flowmap-undo.esm.js";import"../nile-icon/icons/svg/flowmap-workflow.esm.js";import"../nile-icon/icons/svg/flowmap.esm.js";import"../nile-icon/icons/svg/folder.esm.js";import"../nile-icon/icons/svg/foreach.esm.js";import"../nile-icon/icons/svg/frequency.esm.js";import"../nile-icon/icons/svg/full-union.esm.js";import"../nile-icon/icons/svg/fullscreen.esm.js";import"../nile-icon/icons/svg/fullscreenexit.esm.js";import"../nile-icon/icons/svg/fullscreenshrink.esm.js";import"../nile-icon/icons/svg/function.esm.js";import"../nile-icon/icons/svg/funnel-02.esm.js";import"../nile-icon/icons/svg/funnel.esm.js";import"../nile-icon/icons/svg/gateway.esm.js";import"../nile-icon/icons/svg/gauge.esm.js";import"../nile-icon/icons/svg/general.esm.js";import"../nile-icon/icons/svg/generationphase.esm.js";import"../nile-icon/icons/svg/global-search.esm.js";import"../nile-icon/icons/svg/globe-03.esm.js";import"../nile-icon/icons/svg/globe.esm.js";import"../nile-icon/icons/svg/goto.esm.js";import"../nile-icon/icons/svg/graph.esm.js";import"../nile-icon/icons/svg/graphedit.esm.js";import"../nile-icon/icons/svg/greendot.esm.js";import"../nile-icon/icons/svg/greydot.esm.js";import"../nile-icon/icons/svg/greylightdot.esm.js";import"../nile-icon/icons/svg/grid-01.esm.js";import"../nile-icon/icons/svg/group-analysis-icon.esm.js";import"../nile-icon/icons/svg/group.esm.js";import"../nile-icon/icons/svg/groupby.esm.js";import"../nile-icon/icons/svg/groups.esm.js";import"../nile-icon/icons/svg/guide-01.esm.js";import"../nile-icon/icons/svg/guide.esm.js";import"../nile-icon/icons/svg/handtool.esm.js";import"../nile-icon/icons/svg/header-child-workflow.esm.js";import"../nile-icon/icons/svg/header-flows.esm.js";import"../nile-icon/icons/svg/header-tasks.esm.js";import"../nile-icon/icons/svg/headphones-01.esm.js";import"../nile-icon/icons/svg/help.esm.js";import"../nile-icon/icons/svg/helpandsupport.esm.js";import"../nile-icon/icons/svg/helpers.esm.js";import"../nile-icon/icons/svg/helpsupport.esm.js";import"../nile-icon/icons/svg/history.esm.js";import"../nile-icon/icons/svg/identitygraph.esm.js";import"../nile-icon/icons/svg/identityledger.esm.js";import"../nile-icon/icons/svg/ifelse.esm.js";import"../nile-icon/icons/svg/ifelsenew.esm.js";import"../nile-icon/icons/svg/image.esm.js";import"../nile-icon/icons/svg/immutable.esm.js";import"../nile-icon/icons/svg/info-icon.esm.js";import"../nile-icon/icons/svg/info.esm.js";import"../nile-icon/icons/svg/inner-union.esm.js";import"../nile-icon/icons/svg/inprogress.esm.js";import"../nile-icon/icons/svg/insert-at-cursor.esm.js";import"../nile-icon/icons/svg/integer.esm.js";import"../nile-icon/icons/svg/intersection.esm.js";import"../nile-icon/icons/svg/itallic.esm.js";import"../nile-icon/icons/svg/js.esm.js";import"../nile-icon/icons/svg/justify-align.esm.js";import"../nile-icon/icons/svg/key-performance-indicator.esm.js";import"../nile-icon/icons/svg/keyboard-01.esm.js";import"../nile-icon/icons/svg/keyword.esm.js";import"../nile-icon/icons/svg/kill.esm.js";import"../nile-icon/icons/svg/laptop-01.esm.js";import"../nile-icon/icons/svg/layers-three-02.esm.js";import"../nile-icon/icons/svg/layout-alt-02.esm.js";import"../nile-icon/icons/svg/layout-alt-03.esm.js";import"../nile-icon/icons/svg/left-align.esm.js";import"../nile-icon/icons/svg/left-join.esm.js";import"../nile-icon/icons/svg/left-union.esm.js";import"../nile-icon/icons/svg/leftpointarrow.esm.js";import"../nile-icon/icons/svg/life-buoy-01.esm.js";import"../nile-icon/icons/svg/line.esm.js";import"../nile-icon/icons/svg/link.esm.js";import"../nile-icon/icons/svg/list-attribute.esm.js";import"../nile-icon/icons/svg/list.esm.js";import"../nile-icon/icons/svg/loader.esm.js";import"../nile-icon/icons/svg/loading.esm.js";import"../nile-icon/icons/svg/loading2.esm.js";import"../nile-icon/icons/svg/lock.esm.js";import"../nile-icon/icons/svg/log-info.esm.js";import"../nile-icon/icons/svg/log.esm.js";import"../nile-icon/icons/svg/logo-white.esm.js";import"../nile-icon/icons/svg/logout.esm.js";import"../nile-icon/icons/svg/logs.esm.js";import"../nile-icon/icons/svg/loop.esm.js";import"../nile-icon/icons/svg/manage.esm.js";import"../nile-icon/icons/svg/map.esm.js";import"../nile-icon/icons/svg/mapcreate.esm.js";import"../nile-icon/icons/svg/mapdont.esm.js";import"../nile-icon/icons/svg/maponcreate.esm.js";import"../nile-icon/icons/svg/maponupdate.esm.js";import"../nile-icon/icons/svg/mapper.esm.js";import"../nile-icon/icons/svg/mapupdate.esm.js";import"../nile-icon/icons/svg/marker-pin-01.esm.js";import"../nile-icon/icons/svg/maximize.esm.js";import"../nile-icon/icons/svg/menu.esm.js";import"../nile-icon/icons/svg/message-notification-square.esm.js";import"../nile-icon/icons/svg/minus.esm.js";import"../nile-icon/icons/svg/monitor-01.esm.js";import"../nile-icon/icons/svg/mouse.esm.js";import"../nile-icon/icons/svg/move-application.esm.js";import"../nile-icon/icons/svg/moveleft.esm.js";import"../nile-icon/icons/svg/moveright.esm.js";import"../nile-icon/icons/svg/mute.esm.js";import"../nile-icon/icons/svg/my-integration.esm.js";import"../nile-icon/icons/svg/new-calendar.esm.js";import"../nile-icon/icons/svg/nightingale-chart.esm.js";import"../nile-icon/icons/svg/nile-bold.esm.js";import"../nile-icon/icons/svg/nile-centeralign.esm.js";import"../nile-icon/icons/svg/nile-italic.esm.js";import"../nile-icon/icons/svg/nile-justify.esm.js";import"../nile-icon/icons/svg/nile-leftalign.esm.js";import"../nile-icon/icons/svg/nile-ol.esm.js";import"../nile-icon/icons/svg/nile-rightalign.esm.js";import"../nile-icon/icons/svg/nile-ul.esm.js";import"../nile-icon/icons/svg/nile-underline.esm.js";import"../nile-icon/icons/svg/nlp.esm.js";import"../nile-icon/icons/svg/nomatch.esm.js";import"../nile-icon/icons/svg/note.esm.js";import"../nile-icon/icons/svg/notification.esm.js";import"../nile-icon/icons/svg/notificationadd.esm.js";import"../nile-icon/icons/svg/notificationadded.esm.js";import"../nile-icon/icons/svg/null.esm.js";import"../nile-icon/icons/svg/number.esm.js";import"../nile-icon/icons/svg/numberinput.esm.js";import"../nile-icon/icons/svg/numbers.esm.js";import"../nile-icon/icons/svg/object.esm.js";import"../nile-icon/icons/svg/ol.esm.js";import"../nile-icon/icons/svg/operators.esm.js";import"../nile-icon/icons/svg/options.esm.js";import"../nile-icon/icons/svg/orchestration-solid.esm.js";import"../nile-icon/icons/svg/orchestration.esm.js";import"../nile-icon/icons/svg/organization.esm.js";import"../nile-icon/icons/svg/other.esm.js";import"../nile-icon/icons/svg/otherdetails.esm.js";import"../nile-icon/icons/svg/override.esm.js";import"../nile-icon/icons/svg/palletemenu.esm.js";import"../nile-icon/icons/svg/paperclip.esm.js";import"../nile-icon/icons/svg/partner.esm.js";import"../nile-icon/icons/svg/partners.esm.js";import"../nile-icon/icons/svg/pause.esm.js";import"../nile-icon/icons/svg/pencil.esm.js";import"../nile-icon/icons/svg/peopletask.esm.js";import"../nile-icon/icons/svg/persistent-variable.esm.js";import"../nile-icon/icons/svg/persistentdata.esm.js";import"../nile-icon/icons/svg/phone.esm.js";import"../nile-icon/icons/svg/pie.esm.js";import"../nile-icon/icons/svg/pin.esm.js";import"../nile-icon/icons/svg/play.esm.js";import"../nile-icon/icons/svg/play_pause.esm.js";import"../nile-icon/icons/svg/plus.esm.js";import"../nile-icon/icons/svg/pluscircle.esm.js";import"../nile-icon/icons/svg/plussquare.esm.js";import"../nile-icon/icons/svg/policy.esm.js";import"../nile-icon/icons/svg/potentialmatch.esm.js";import"../nile-icon/icons/svg/poweron.esm.js";import"../nile-icon/icons/svg/predefined.esm.js";import"../nile-icon/icons/svg/preview.esm.js";import"../nile-icon/icons/svg/printer.esm.js";import"../nile-icon/icons/svg/priority-high.esm.js";import"../nile-icon/icons/svg/priority-highest.esm.js";import"../nile-icon/icons/svg/priority-low.esm.js";import"../nile-icon/icons/svg/priority-medium.esm.js";import"../nile-icon/icons/svg/privilage.esm.js";import"../nile-icon/icons/svg/privilege.esm.js";import"../nile-icon/icons/svg/privilegeobject.esm.js";import"../nile-icon/icons/svg/process.esm.js";import"../nile-icon/icons/svg/professionaldetails.esm.js";import"../nile-icon/icons/svg/question.esm.js";import"../nile-icon/icons/svg/radar.esm.js";import"../nile-icon/icons/svg/radio.esm.js";import"../nile-icon/icons/svg/radioactive.esm.js";import"../nile-icon/icons/svg/radiodone.esm.js";import"../nile-icon/icons/svg/read.esm.js";import"../nile-icon/icons/svg/readexpression.esm.js";import"../nile-icon/icons/svg/readonly.esm.js";import"../nile-icon/icons/svg/readonlyuser.esm.js";import"../nile-icon/icons/svg/readuser.esm.js";import"../nile-icon/icons/svg/reddot.esm.js";import"../nile-icon/icons/svg/redo-02.esm.js";import"../nile-icon/icons/svg/redo.esm.js";import"../nile-icon/icons/svg/refresh.esm.js";import"../nile-icon/icons/svg/reminder.esm.js";import"../nile-icon/icons/svg/resize.esm.js";import"../nile-icon/icons/svg/resource.esm.js";import"../nile-icon/icons/svg/resource_analysis.esm.js";import"../nile-icon/icons/svg/resource_graph.esm.js";import"../nile-icon/icons/svg/restart_alt.esm.js";import"../nile-icon/icons/svg/revocation-cycle.esm.js";import"../nile-icon/icons/svg/right-align.esm.js";import"../nile-icon/icons/svg/right-join.esm.js";import"../nile-icon/icons/svg/right-union.esm.js";import"../nile-icon/icons/svg/rocket-02.esm.js";import"../nile-icon/icons/svg/role.esm.js";import"../nile-icon/icons/svg/run.esm.js";import"../nile-icon/icons/svg/sankey.esm.js";import"../nile-icon/icons/svg/save.esm.js";import"../nile-icon/icons/svg/savings.esm.js";import"../nile-icon/icons/svg/scatter-plot.esm.js";import"../nile-icon/icons/svg/schedule.esm.js";import"../nile-icon/icons/svg/schema.esm.js";import"../nile-icon/icons/svg/script.esm.js";import"../nile-icon/icons/svg/search-steps-icon.esm.js";import"../nile-icon/icons/svg/search.esm.js";import"../nile-icon/icons/svg/section.esm.js";import"../nile-icon/icons/svg/select-02.esm.js";import"../nile-icon/icons/svg/select.esm.js";import"../nile-icon/icons/svg/selectapplication.esm.js";import"../nile-icon/icons/svg/selectattributes.esm.js";import"../nile-icon/icons/svg/semi-circle-donut-chart.esm.js";import"../nile-icon/icons/svg/send.esm.js";import"../nile-icon/icons/svg/sendemail.esm.js";import"../nile-icon/icons/svg/sendescalation.esm.js";import"../nile-icon/icons/svg/sendreminder.esm.js";import"../nile-icon/icons/svg/server-03.esm.js";import"../nile-icon/icons/svg/settings-02.esm.js";import"../nile-icon/icons/svg/settings.esm.js";import"../nile-icon/icons/svg/share.esm.js";import"../nile-icon/icons/svg/shield-01.esm.js";import"../nile-icon/icons/svg/smartcode.esm.js";import"../nile-icon/icons/svg/sort.esm.js";import"../nile-icon/icons/svg/sort_ascending.esm.js";import"../nile-icon/icons/svg/sort_descending.esm.js";import"../nile-icon/icons/svg/sortascending.esm.js";import"../nile-icon/icons/svg/sortdescending.esm.js";import"../nile-icon/icons/svg/sortdown.esm.js";import"../nile-icon/icons/svg/sortup.esm.js";import"../nile-icon/icons/svg/stacked-bar-chart.esm.js";import"../nile-icon/icons/svg/step_into.esm.js";import"../nile-icon/icons/svg/step_out.esm.js";import"../nile-icon/icons/svg/step_over.esm.js";import"../nile-icon/icons/svg/stop.esm.js";import"../nile-icon/icons/svg/storybook.esm.js";import"../nile-icon/icons/svg/string.esm.js";import"../nile-icon/icons/svg/stringinput.esm.js";import"../nile-icon/icons/svg/stringletters.esm.js";import"../nile-icon/icons/svg/support.esm.js";import"../nile-icon/icons/svg/swap.esm.js";import"../nile-icon/icons/svg/switch.esm.js";import"../nile-icon/icons/svg/sync.esm.js";import"../nile-icon/icons/svg/table.esm.js";import"../nile-icon/icons/svg/tag.esm.js";import"../nile-icon/icons/svg/test.esm.js";import"../nile-icon/icons/svg/text-02.esm.js";import"../nile-icon/icons/svg/text.esm.js";import"../nile-icon/icons/svg/textarea-expander.esm.js";import"../nile-icon/icons/svg/thumbsdown.esm.js";import"../nile-icon/icons/svg/thumbsup.esm.js";import"../nile-icon/icons/svg/thumsup.esm.js";import"../nile-icon/icons/svg/tick.esm.js";import"../nile-icon/icons/svg/timeupdate.esm.js";import"../nile-icon/icons/svg/timezone.esm.js";import"../nile-icon/icons/svg/transaction_monitor.esm.js";import"../nile-icon/icons/svg/trend-up-02.esm.js";import"../nile-icon/icons/svg/trigger.esm.js";import"../nile-icon/icons/svg/ul.esm.js";import"../nile-icon/icons/svg/underline.esm.js";import"../nile-icon/icons/svg/undo-02.esm.js";import"../nile-icon/icons/svg/undo.esm.js";import"../nile-icon/icons/svg/union.esm.js";import"../nile-icon/icons/svg/unmute.esm.js";import"../nile-icon/icons/svg/update.esm.js";import"../nile-icon/icons/svg/updown.esm.js";import"../nile-icon/icons/svg/upgrade.esm.js";import"../nile-icon/icons/svg/upload.esm.js";import"../nile-icon/icons/svg/user-group.esm.js";import"../nile-icon/icons/svg/user.esm.js";import"../nile-icon/icons/svg/useractive.esm.js";import"../nile-icon/icons/svg/useradd.esm.js";import"../nile-icon/icons/svg/useraddgroup.esm.js";import"../nile-icon/icons/svg/userfind.esm.js";import"../nile-icon/icons/svg/userimport.esm.js";import"../nile-icon/icons/svg/userimportgroup.esm.js";import"../nile-icon/icons/svg/usermixed.esm.js";import"../nile-icon/icons/svg/userremove.esm.js";import"../nile-icon/icons/svg/userremovegroup.esm.js";import"../nile-icon/icons/svg/users-plus.esm.js";import"../nile-icon/icons/svg/users-up.esm.js";import"../nile-icon/icons/svg/users.esm.js";import"../nile-icon/icons/svg/userupdate.esm.js";import"../nile-icon/icons/svg/validationexpression.esm.js";import"../nile-icon/icons/svg/variable-global.esm.js";import"../nile-icon/icons/svg/variable-local.esm.js";import"../nile-icon/icons/svg/variable-new.esm.js";import"../nile-icon/icons/svg/variable.esm.js";import"../nile-icon/icons/svg/video.esm.js";import"../nile-icon/icons/svg/view.esm.js";import"../nile-icon/icons/svg/virtualserver.esm.js";import"../nile-icon/icons/svg/virtualservergroup.esm.js";import"../nile-icon/icons/svg/visibility.esm.js";import"../nile-icon/icons/svg/visibilityoff.esm.js";import"../nile-icon/icons/svg/wait.esm.js";import"../nile-icon/icons/svg/warning-01.esm.js";import"../nile-icon/icons/svg/warning.esm.js";import"../nile-icon/icons/svg/whileloop.esm.js";import"../nile-icon/icons/svg/workflow-application.esm.js";import"../nile-icon/icons/svg/workflow-text.esm.js";import"../nile-icon/icons/svg/workflow.esm.js";import"../nile-icon/icons/svg/writeexpression.esm.js";import"../nile-icon/aliasmap.esm.js";import"../nile-checkbox/nile-checkbox.css.esm.js";import"../internal/default-value.esm.js";import"lit/directives/if-defined.js";import"lit/directives/live.js";let p=class extends l{constructor(){super(...arguments),this.current=!1,this.selected=!1,this.hasHover=!1,this.hidden=!1,this.isMultipleSelect=!1,this.value="",this.showCheckbox=!1,this.disabled=!1}connectedCallback(){super.connectedCallback(),this.setAttribute("role","option"),this.setAttribute("aria-selected","false");const i=this.closest("nile-select");if(i&&i.hasAttribute("multiple")){let s=i.getAttribute("multiple");"false"!==s&&(""===s&&(s="true"),this.isMultipleSelect=Boolean(s))}}updated(i){i.has("showCheckbox")&&(this.isMultipleSelect=this.showCheckbox)}handleDefaultSlotChange(){const i=this.getTextLabel();void 0!==this.cachedTextLabel?i!==this.cachedTextLabel&&(this.cachedTextLabel=i,this.emit("slotchange")):this.cachedTextLabel=i}handleMouseEnter(){this.hasHover=!0}handleMouseLeave(){this.hasHover=!1}handleDisabledChange(){this.setAttribute("aria-disabled",this.disabled?"true":"false")}handleSelectedChange(){this.setAttribute("aria-selected",this.selected?"true":"false")}handleValueChange(){"string"!=typeof this.value&&(this.value=String(this.value))}getTextLabel(){const i=this.querySelector("label");return i?i.textContent?.trim()??"":(this.textContent??"").trim()}render(){return t`
2
2
  ${this.hidden?"":t` <div
3
3
  part="base"
4
4
  class=${o({option:!0,"option--single-select":!this.isMultipleSelect,"option--current":this.selected&&!this.isMultipleSelect,"option--disabled":this.disabled,"option--selected":this.selected&&!this.isMultipleSelect,"option--hover":this.hasHover})}
@@ -1,2 +1,2 @@
1
- System.register(["./nile-rich-text-editor.cjs.js","tslib","lit","lit/decorators.js","./nile-rte-toolbar.cjs.js","./nile-rte-toolbar-item.cjs.js","./nile-rte-select.cjs.js","./nile-rte-color.cjs.js","./nile-rte-divider.cjs.js","./nile-rte-preview.cjs.js","./nile-rte-mentions.cjs.js","./utils.cjs.js"],function(_export,_context){"use strict";return{setters:[function(_nileRichTextEditorCjsJs){_export("NileRichTextEditor",_nileRichTextEditorCjsJs.N);},function(_tslib){},function(_lit){},function(_litDecoratorsJs){},function(_nileRteToolbarCjsJs){},function(_nileRteToolbarItemCjsJs){},function(_nileRteSelectCjsJs){},function(_nileRteColorCjsJs){},function(_nileRteDividerCjsJs){},function(_nileRtePreviewCjsJs){},function(_nileRteMentionsCjsJs){},function(_utilsCjsJs){}],execute:function execute(){}};});
1
+ System.register(["./nile-rich-text-editor.cjs.js","tslib","lit","lit/decorators.js","./nile-rte-toolbar.cjs.js","./nile-rte-toolbar-item.cjs.js","./nile-rte-select.cjs.js","./nile-rte-color.cjs.js","./nile-rte-divider.cjs.js","./nile-rte-preview.cjs.js","./nile-rte-mentions.cjs.js","./utils.cjs.js","./nile-rich-text-editor.css.cjs.js"],function(_export,_context){"use strict";return{setters:[function(_nileRichTextEditorCjsJs){_export("NileRichTextEditor",_nileRichTextEditorCjsJs.N);},function(_tslib){},function(_lit){},function(_litDecoratorsJs){},function(_nileRteToolbarCjsJs){},function(_nileRteToolbarItemCjsJs){},function(_nileRteSelectCjsJs){},function(_nileRteColorCjsJs){},function(_nileRteDividerCjsJs){},function(_nileRtePreviewCjsJs){},function(_nileRteMentionsCjsJs){},function(_utilsCjsJs){},function(_nileRichTextEditorCssCjsJs){}],execute:function execute(){}};});
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- export{N as NileRichTextEditor}from"./nile-rich-text-editor.esm.js";import"tslib";import"lit";import"lit/decorators.js";import"./nile-rte-toolbar.esm.js";import"./nile-rte-toolbar-item.esm.js";import"./nile-rte-select.esm.js";import"./nile-rte-color.esm.js";import"./nile-rte-divider.esm.js";import"./nile-rte-preview.esm.js";import"./nile-rte-mentions.esm.js";import"./utils.esm.js";
1
+ export{N as NileRichTextEditor}from"./nile-rich-text-editor.esm.js";import"tslib";import"lit";import"lit/decorators.js";import"./nile-rte-toolbar.esm.js";import"./nile-rte-toolbar-item.esm.js";import"./nile-rte-select.esm.js";import"./nile-rte-color.esm.js";import"./nile-rte-divider.esm.js";import"./nile-rte-preview.esm.js";import"./nile-rte-mentions.esm.js";import"./utils.esm.js";import"./nile-rich-text-editor.css.esm.js";
@@ -1,2 +1,2 @@
1
- function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}System.register(["tslib","lit","lit/decorators.js","./nile-rte-toolbar.cjs.js","./nile-rte-toolbar-item.cjs.js","./nile-rte-select.cjs.js","./nile-rte-color.cjs.js","./nile-rte-divider.cjs.js","./nile-rte-preview.cjs.js","./nile-rte-mentions.cjs.js","./utils.cjs.js"],function(_export,_context){"use strict";var t,e,i,s,n,r,o,h,l,c,a,d,u,p,f,b;function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var n=0,F=function F(){};return{s:F,n:function(_n3){function n(){return _n3.apply(this,arguments);}n.toString=function(){return _n3.toString();};return n;}(function(){return n>=r.length?{done:!0}:{done:!1,value:r[n++]};}),e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}function _callSuper(t,o,e){return o=_getPrototypeOf(o),_possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],_getPrototypeOf(t).constructor):o.apply(t,e));}function _possibleConstructorReturn(t,e){if(e&&("object"==_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t);}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e;}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}function _superPropGet(t,o,e,r){var p=_get(_getPrototypeOf(1&r?t.prototype:t),o,e);return 2&r&&"function"==typeof p?function(t){return p.apply(e,t);}:p;}function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var p=_superPropBase(e,t);if(p){var n=Object.getOwnPropertyDescriptor(p,t);return n.get?n.get.call(arguments.length<3?e:r):n.value;}},_get.apply(null,arguments);}function _superPropBase(t,o){for(;!{}.hasOwnProperty.call(t,o)&&null!==(t=_getPrototypeOf(t)););return t;}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t);},_getPrototypeOf(t);}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_setPrototypeOf(t,e);}function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t;},_setPrototypeOf(t,e);}return{setters:[function(_tslib){t=_tslib.__decorate;},function(_lit){e=_lit.LitElement;},function(_litDecoratorsJs){i=_litDecoratorsJs.property;s=_litDecoratorsJs.state;n=_litDecoratorsJs.customElement;},function(_nileRteToolbarCjsJs){},function(_nileRteToolbarItemCjsJs){},function(_nileRteSelectCjsJs){},function(_nileRteColorCjsJs){},function(_nileRteDividerCjsJs){},function(_nileRtePreviewCjsJs){},function(_nileRteMentionsCjsJs){},function(_utilsCjsJs){r=_utilsCjsJs.s;o=_utilsCjsJs.a;h=_utilsCjsJs.b;l=_utilsCjsJs.c;c=_utilsCjsJs.i;a=_utilsCjsJs.t;d=_utilsCjsJs.n;u=_utilsCjsJs.d;p=_utilsCjsJs.r;}],execute:function execute(){f={bold:"bold",italic:"itallic",underline:"underline",link:"user",left:"user",center:"user",right:"user",justify:"user",ul:"ul",ol:"ol",clear:"close"};_export("N",b=/*#__PURE__*/function(_e){function b(){var _this;_classCallCheck(this,b);_this=_callSuper(this,b,arguments),_this.value="",_this.mentions={},_this.content="",_this.previewEl=null,_this.toolbarEl=null,_this.lastRange=null,_this.buttonMap=new Map(),_this.headingSelect=null,_this.fontSelect=null,_this.colorInput=null,_this.mentionsEl=null,_this.onSelectionChange=function(){if(!_this.editorEl)return;var t=document.getSelection();if(!t||0===t.rangeCount)return;var e=t.getRangeAt(0);_this.editorEl.contains(e.commonAncestorContainer)&&(_this.lastRange=e.cloneRange(),_this.updateToolbarState());};return _this;}_inherits(b,_e);return _createClass(b,[{key:"createRenderRoot",value:function createRenderRoot(){return this;}},{key:"shouldUpdate",value:function shouldUpdate(){return!1;}},{key:"connectedCallback",value:function connectedCallback(){var _this$mentionsEl$atta,_this$mentionsEl,_this$mentionsEl$setE,_this$mentionsEl2;_superPropGet(b,"connectedCallback",this,3)([]),this.injectStyles(),this.toolbarEl=this.querySelector("nile-rte-toolbar"),this.previewEl=this.querySelector("nile-rte-preview"),this.ensureEditor(),this.value&&!this.editorEl.innerHTML.trim()&&(this.editorEl.innerHTML=this.value),this.content=this.editorEl.innerHTML,this.toolbarEl&&this.wireAuthoredToolbar(this.toolbarEl),this.mentionsEl=this.querySelector("nile-rte-mentions"),this.mentionsEl&&((_this$mentionsEl$atta=(_this$mentionsEl=this.mentionsEl).attach)!==null&&_this$mentionsEl$atta!==void 0&&_this$mentionsEl$atta.call(_this$mentionsEl,this.editorEl,this),(_this$mentionsEl$setE=(_this$mentionsEl2=this.mentionsEl).setExternalConfig)!==null&&_this$mentionsEl$setE!==void 0&&_this$mentionsEl$setE.call(_this$mentionsEl2,this.mentions)),this.wireEditor(),this.updateToolbarState(),this.syncPreview(),document.addEventListener("selectionchange",this.onSelectionChange,!0);}},{key:"disconnectedCallback",value:function disconnectedCallback(){document.removeEventListener("selectionchange",this.onSelectionChange,!0),this.mentionsEl&&this.mentionsEl.detach&&this.mentionsEl.detach(),_superPropGet(b,"disconnectedCallback",this,3)([]);}},{key:"injectStyles",value:function injectStyles(){if(this.querySelector("style[data-rte-style]"))return;var t=document.createElement("style");t.setAttribute("data-rte-style","true"),t.textContent='\n /* Host positioning for overlays */\n nile-rich-text-editor { position: relative; display: block; }\n\n \nnile-rte-toolbar-item > nile-button::part(base) {\n \n width:32px; height:32px; padding:0px 6px;\n}\n \n \n\n\n .toolbar, nile-rte-toolbar {\n display:flex; align-items:center; gap:8px; padding-top:8px; padding-left: 8px; padding-right: 8px;\n border:1px solid #e5e7eb; border-bottom:none; border-radius:8px 8px 0 0; background:#fff;\n }\n\n nile-rte-toolbar-item > button, .toolbar button, nile-rte-toolbar button {\n border:1px solid #e5e7eb; background:#fff; border-radius:6px;\n cursor:pointer;\n }\n\n \n /* Ensure clicks hit the button (not nested icon internals) */\n nile-rte-toolbar-item > button nile-icon { pointer-events:none; }\n\n nile-rte-toolbar-item > button.active { border-color:#2563eb; background:#eff6ff; }\n nile-rte-select select { height:32px; border:1px solid #e5e7eb; border-radius:6px; background:#fff; }\n nile-rte-color input[type="color"] { height:32px; width:36px; border:1px solid #e5e7eb; padding:0; border-radius:6px; background:#fff; }\n nile-rte-divider { width:1px; height:20px; background:#e5e7eb; display:inline-block; margin:0 4px; }\n\n .editor p { margin:1em 0; }\n .editor h1 { font-size:2em }\n .editor h2 { font-size:1.5em }\n .editor h3 { font-size:1.17em }\n .editor h4 { font-size:1em }\n .editor h5 { font-size:0.83em }\n .editor h6 { font-size:0.67em }\n\n .editor { min-height:160px; padding:12px; border:1px solid #e5e7eb; border-radius:0 0 8px 8px; background:#fff; outline:none; }\n nile-rte-preview { display:block; margin-top:10px; padding:10px; border:1px dashed #cbd5e1; border-radius:8px; background:#fafafa; }\n ',this.insertBefore(t,this.firstChild);}},{key:"ensureEditor",value:function ensureEditor(){if(this.editorEl=this.querySelector(".editor"),!this.editorEl){var _this$toolbarEl;var _t=document.createElement("div");_t.className="editor",_t.setAttribute("contenteditable","true"),(_this$toolbarEl=this.toolbarEl)!==null&&_this$toolbarEl!==void 0&&_this$toolbarEl.nextSibling?this.insertBefore(_t,this.toolbarEl.nextSibling):this.previewEl?this.insertBefore(_t,this.previewEl):this.appendChild(_t),this.editorEl=_t;}this.editorEl.innerHTML.trim()||(this.editorEl.innerHTML="<p><br></p>"),this.ensureAtLeastOneParagraph();}},{key:"wireEditor",value:function wireEditor(){var _this2=this;this.editorEl.addEventListener("input",function(){_this2.ensureAtLeastOneParagraph(),_this2.updateContent();}),this.editorEl.addEventListener("mouseup",function(){return _this2.saveSelection();}),this.editorEl.addEventListener("keyup",function(){return _this2.saveSelection();});}},{key:"wireAuthoredToolbar",value:function wireAuthoredToolbar(t){var _this3=this;this.buttonMap.clear(),this.headingSelect=null,this.fontSelect=null,this.colorInput=null,Array.from(t.children).forEach(function(t){var e=t.tagName.toLowerCase();if("nile-rte-select"!==e||"align"!==t.getAttribute("type")){if("nile-rte-toolbar-item"===e){var _this3$buttonMap$get;var _e2=t.querySelector(":scope > nile-button");var _i=t.getAttribute("name")||"",_s=t.getAttribute("label")||_i,_n=t.getAttribute("icon"),_r=t.innerHTML.trim().length>0;if(_e2||(_e2=document.createElement("nile-button"),_e2.variant="tertiary",_e2.size="small"),_n)_e2.innerHTML="<nile-icon name=\"".concat(_n,"\" aria-label=\"").concat(_s,"\"></nile-icon>"),t.innerHTML="";else if(_r)_e2.innerHTML=t.innerHTML,t.innerHTML="";else{var _n2=f[_i];_n2?_e2.innerHTML="<nile-icon name=\"".concat(_n2,"\" size=\"26\" aria-label=\"").concat(_s,"\"></nile-icon>"):_e2.textContent=_s||_i,t.innerHTML="";}_e2.isConnected||t.appendChild(_e2),_e2.setAttribute("aria-label",_s),_e2.addEventListener("mousedown",function(t){return t.preventDefault();}),_e2.addEventListener("click",function(){return _this3.onToolbarCommand(_i);});var _o=(_this3$buttonMap$get=_this3.buttonMap.get(_i))!==null&&_this3$buttonMap$get!==void 0?_this3$buttonMap$get:[];return _o.push(_e2),void _this3.buttonMap.set(_i,_o);}if("nile-rte-select"!==e){if("nile-rte-color"===e){var _t$getAttribute,_t$getAttribute2;var _e3=(_t$getAttribute=t.getAttribute("label"))!==null&&_t$getAttribute!==void 0?_t$getAttribute:"Text color",_i2=(_t$getAttribute2=t.getAttribute("value"))!==null&&_t$getAttribute2!==void 0?_t$getAttribute2:"#000000";var _s2=t.querySelector(':scope > input[type="color"]');_s2||(_s2=document.createElement("input"),_s2.type="color",t.appendChild(_s2)),_s2.title=_e3,_s2.value=_i2,_s2.addEventListener("mousedown",function(t){return t.preventDefault();}),_s2.addEventListener("input",function(){_this3.focusAndRestore(),l(_this3.editorEl,_s2.value),_this3.updateContent(),_this3.updateToolbarState();}),_this3.colorInput=_s2;}}else{var _e4=t.getAttribute("type")||"";t.addEventListener("change",function(t){_this3.focusAndRestore();var i=t.detail;"heading"===_e4?o(_this3.editorEl,i):"font"===_e4&&h(_this3.editorEl,i),_this3.updateContent(),_this3.updateToolbarState();});}}else t.addEventListener("change",function(t){_this3.focusAndRestore();var e=t.detail;r(_this3.editorEl,e),_this3.updateContent(),_this3.updateToolbarState();});});}},{key:"saveSelection",value:function saveSelection(){var t=window.getSelection();t&&t.rangeCount&&(this.lastRange=t.getRangeAt(0).cloneRange());}},{key:"restoreSelection",value:function restoreSelection(){if(!this.lastRange)return;var t=document.getSelection();t&&(t.removeAllRanges(),t.addRange(this.lastRange));}},{key:"focusAndRestore",value:function focusAndRestore(){var _this$editorEl;(_this$editorEl=this.editorEl)!==null&&_this$editorEl!==void 0&&_this$editorEl.focus(),this.restoreSelection();}},{key:"insertList",value:function insertList(t){if(this.restoreSelection(),!this.lastRange)return;var e=document.createElement(t),i=this.lastRange.extractContents(),s=document.createElement("div");s.appendChild(i),Array.from(s.childNodes).forEach(function(t){var _t$textContent;if(t.nodeType===Node.TEXT_NODE&&!((_t$textContent=t.textContent)!==null&&_t$textContent!==void 0&&_t$textContent.trim()))return;var i=document.createElement("li");i.appendChild(t),e.appendChild(i);}),this.lastRange.insertNode(e),this.afterListEdit(e);}},{key:"afterListEdit",value:function afterListEdit(t){var e=document.createRange();e.setStartAfter(t),e.collapse(!0);var i=window.getSelection();i!==null&&i!==void 0&&i.removeAllRanges(),i!==null&&i!==void 0&&i.addRange(e),this.saveSelection(),this.updateContent(),this.updateToolbarState();}},{key:"ensureAtLeastOneParagraph",value:function ensureAtLeastOneParagraph(){var _t$textContent2;var t=this.editorEl;if(!t)return;var e=""===((_t$textContent2=t.textContent)!==null&&_t$textContent2!==void 0?_t$textContent2:"").replace(/\u200B/g,"").trim();if(0===t.childNodes.length||e)return void(t.innerHTML="<p><br></p>");if(!t.querySelector("p,h1,h2,h3,h4,h5,h6,ul,ol,table,blockquote,pre")){var _e5=document.createElement("p");for(;t.firstChild;)_e5.appendChild(t.firstChild);return _e5.hasChildNodes()||_e5.appendChild(document.createElement("br")),void t.appendChild(_e5);}t.querySelectorAll("p").forEach(function(t){var _t$textContent3;""===((_t$textContent3=t.textContent)!==null&&_t$textContent3!==void 0?_t$textContent3:"").replace(/\u200B/g,"")&&(t.innerHTML.toLowerCase().includes("<br")||(t.innerHTML="<br>"));});}},{key:"onToolbarCommand",value:function onToolbarCommand(t){switch(this.focusAndRestore(),t){case"bold":a(this.editorEl,"strong");break;case"italic":a(this.editorEl,"em");break;case"underline":a(this.editorEl,"u");break;case"left":r(this.editorEl,"left");break;case"center":r(this.editorEl,"center");break;case"right":r(this.editorEl,"right");break;case"justify":r(this.editorEl,"justify");break;case"ul":this.insertList("ul");break;case"ol":this.insertList("ol");break;case"link":c(this.editorEl);break;case"clear":var _t2=document.createTreeWalker(this.editorEl,NodeFilter.SHOW_ELEMENT),_e6=[];for(;_t2.nextNode();){var _i3=_t2.currentNode;_i3.removeAttribute("style"),["B","STRONG","I","EM","U","SPAN","FONT"].includes(_i3.tagName)&&_e6.push(_i3);}for(var _i4=0,_e7=_e6;_i4<_e7.length;_i4++){var _t3=_e7[_i4];for(;_t3.firstChild;){var _t3$parentNode;(_t3$parentNode=_t3.parentNode)===null||_t3$parentNode===void 0||_t3$parentNode.insertBefore(_t3.firstChild,_t3);}_t3.remove();}this.ensureAtLeastOneParagraph();}this.updateContent(),this.updateToolbarState();}},{key:"setBtnActive",value:function setBtnActive(t,e){var i=this.buttonMap.get(t);if(i){var _iterator=_createForOfIteratorHelper(i),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var _t4=_step.value;_t4.toggleAttribute("data-active",!!e);}}catch(err){_iterator.e(err);}finally{_iterator.f();}}}},{key:"updateToolbarState",value:function updateToolbarState(){var _this4=this,_i$closest;if(!this.editorEl)return;var t=document.getSelection();if(!t||0===t.rangeCount)return;var e=t.getRangeAt(0);if(!this.editorEl.contains(e.commonAncestorContainer))return;var i=d(e.startContainer)||this.editorEl,s=getComputedStyle(i),n=u(e.startContainer,this.editorEl)||this.editorEl,r=function(){var t=i;for(;t&&t!==_this4.editorEl;){if(t instanceof HTMLElement){var _e8=t.tagName.toLowerCase();if("strong"===_e8||"b"===_e8)return!0;var _i5=getComputedStyle(t).fontWeight;if(parseInt(_i5,10)>=600)return!0;}t=t.parentNode;}return!1;}(),o=function(){var t=i;for(;t&&t!==_this4.editorEl;){if(t instanceof HTMLElement){var _e9=t.tagName.toLowerCase();if("em"===_e9||"i"===_e9)return!0;if("italic"===getComputedStyle(t).fontStyle)return!0;}t=t.parentNode;}return!1;}(),h=function(){var t=i;for(;t&&t!==_this4.editorEl;){if(t instanceof HTMLElement){var _e10=getComputedStyle(t).textDecorationLine;if(_e10&&_e10.includes("underline"))return!0;if("u"===t.tagName.toLowerCase())return!0;}t=t.parentNode;}return!1;}(),l=!!i.closest("a"),c=n.style.textAlign||getComputedStyle(n).textAlign||"start",a="start"===c?"left":c,f=!!i.closest("li")&&((_i$closest=i.closest("ul,ol"))===null||_i$closest===void 0?void 0:_i$closest.tagName.toLowerCase())||"";if(this.setBtnActive("bold",r),this.setBtnActive("italic",o),this.setBtnActive("underline",h),this.setBtnActive("link",l),this.setBtnActive("left","left"===a&&!["center","right","justify"].includes(a)),this.setBtnActive("center","center"===a),this.setBtnActive("right","right"===a),this.setBtnActive("justify","justify"===a),this.setBtnActive("ul","ul"===f),this.setBtnActive("ol","ol"===f),this.headingSelect){var _t5=n.tagName.toLowerCase(),_e11=["h1","h2","h3"].includes(_t5)?_t5:"p";this.headingSelect.value!==_e11&&(this.headingSelect.value=_e11);}if(this.fontSelect){var _t6=(s.fontFamily||"").replace(/["']/g,"").split(",")[0].trim().toLowerCase();if(_t6)for(var _i6=0,_Array$from=Array.from(this.fontSelect.options);_i6<_Array$from.length;_i6++){var _e12=_Array$from[_i6];if(_e12.value.toLowerCase()===_t6){this.fontSelect.value=_e12.value;break;}}}if(this.colorInput){var _t7=p(s.color);_t7&&this.colorInput.value.toLowerCase()!==_t7.toLowerCase()&&(this.colorInput.value=_t7);}}},{key:"syncPreview",value:function syncPreview(){this.updateContent();}},{key:"updateContent",value:function updateContent(){this.editorEl&&(this.ensureAtLeastOneParagraph(),this.content=this.editorEl.innerHTML,this.previewEl&&(this.previewEl.innerHTML=this.content),this.dispatchEvent(new CustomEvent("content-changed",{detail:{content:this.content},bubbles:!0,composed:!0})));}}]);}(e));t([i({type:String})],b.prototype,"value",void 0),t([i({attribute:"mentions",converter:{fromAttribute:function fromAttribute(t){try{var _e13=JSON.parse(t),_i7={};for(var _i8=0,_Object$keys=Object.keys(_e13);_i8<_Object$keys.length;_i8++){var _t8=_Object$keys[_i8];var _s3=_e13[_t8];Array.isArray(_s3)&&(_i7[_t8]=_s3.filter(function(t){return t&&"string"==typeof t.key&&"string"==typeof t.label;}).map(function(t){return{key:t.key,label:t.label};}));}return _i7;}catch(_unused){return{};}},toAttribute:function toAttribute(t){return JSON.stringify(t);}}})],b.prototype,"mentions",void 0),t([s()],b.prototype,"content",void 0),_export("N",b=t([n("nile-rich-text-editor")],b));}};});
1
+ function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}System.register(["tslib","lit","lit/decorators.js","./nile-rte-toolbar.cjs.js","./nile-rte-toolbar-item.cjs.js","./nile-rte-select.cjs.js","./nile-rte-color.cjs.js","./nile-rte-divider.cjs.js","./nile-rte-preview.cjs.js","./nile-rte-mentions.cjs.js","./utils.cjs.js","./nile-rich-text-editor.css.cjs.js"],function(_export,_context){"use strict";var t,i,e,s,n,r,o,h,l,c,a,u,f,d,m,p,b;function _createForOfIteratorHelper(r,e){var t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=_unsupportedIterableToArray(r))||e&&r&&"number"==typeof r.length){t&&(r=t);var n=0,F=function F(){};return{s:F,n:function(_n3){function n(){return _n3.apply(this,arguments);}n.toString=function(){return _n3.toString();};return n;}(function(){return n>=r.length?{done:!0}:{done:!1,value:r[n++]};}),e:function e(r){throw r;},f:F};}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var o,a=!0,u=!1;return{s:function s(){t=t.call(r);},n:function n(){var r=t.next();return a=r.done,r;},e:function e(r){u=!0,o=r;},f:function f(){try{a||null==t["return"]||t["return"]();}finally{if(u)throw o;}}};}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}function _callSuper(t,o,e){return o=_getPrototypeOf(o),_possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],_getPrototypeOf(t).constructor):o.apply(t,e));}function _possibleConstructorReturn(t,e){if(e&&("object"==_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t);}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e;}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}function _superPropGet(t,o,e,r){var p=_get(_getPrototypeOf(1&r?t.prototype:t),o,e);return 2&r&&"function"==typeof p?function(t){return p.apply(e,t);}:p;}function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var p=_superPropBase(e,t);if(p){var n=Object.getOwnPropertyDescriptor(p,t);return n.get?n.get.call(arguments.length<3?e:r):n.value;}},_get.apply(null,arguments);}function _superPropBase(t,o){for(;!{}.hasOwnProperty.call(t,o)&&null!==(t=_getPrototypeOf(t)););return t;}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t);},_getPrototypeOf(t);}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_setPrototypeOf(t,e);}function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t;},_setPrototypeOf(t,e);}return{setters:[function(_tslib){t=_tslib.__decorate;},function(_lit){i=_lit.LitElement;},function(_litDecoratorsJs){e=_litDecoratorsJs.property;s=_litDecoratorsJs.state;n=_litDecoratorsJs.customElement;},function(_nileRteToolbarCjsJs){},function(_nileRteToolbarItemCjsJs){},function(_nileRteSelectCjsJs){},function(_nileRteColorCjsJs){},function(_nileRteDividerCjsJs){},function(_nileRtePreviewCjsJs){},function(_nileRteMentionsCjsJs){},function(_utilsCjsJs){r=_utilsCjsJs.s;o=_utilsCjsJs.a;h=_utilsCjsJs.b;l=_utilsCjsJs.c;c=_utilsCjsJs.i;a=_utilsCjsJs.t;u=_utilsCjsJs.n;f=_utilsCjsJs.d;d=_utilsCjsJs.r;},function(_nileRichTextEditorCssCjsJs){m=_nileRichTextEditorCssCjsJs.s;}],execute:function execute(){p={bold:"nile-bold",italic:"nile-italic",underline:"nile-underline",link:"user",left:"nile-leftalign",center:"nile-centeralign",right:"nile-rightalign",justify:"nile-justify",ul:"nile-ul",ol:"nile-ol",clear:"error"};_export("N",b=/*#__PURE__*/function(_i){function b(){var _this;_classCallCheck(this,b);_this=_callSuper(this,b,arguments),_this.value="",_this.mentions={},_this.content="",_this.previewEl=null,_this.toolbarEl=null,_this.lastRange=null,_this.buttonMap=new Map(),_this.headingSelect=null,_this.fontSelect=null,_this.colorInput=null,_this.mentionsEl=null,_this.onSelectionChange=function(){if(!_this.editorEl)return;var t=document.getSelection();if(!t||0===t.rangeCount)return;var i=t.getRangeAt(0);_this.editorEl.contains(i.commonAncestorContainer)&&(_this.lastRange=i.cloneRange(),_this.updateToolbarState());};return _this;}_inherits(b,_i);return _createClass(b,[{key:"createRenderRoot",value:function createRenderRoot(){return this;}},{key:"shouldUpdate",value:function shouldUpdate(){return!1;}},{key:"injectCss",value:function injectCss(t){if(this.querySelector("style[data-rte-style]"))return;var i=document.createElement("style");i.setAttribute("data-rte-style","true"),i.textContent=t,this.insertBefore(i,this.firstChild);}},{key:"connectedCallback",value:function connectedCallback(){var _this$mentionsEl$atta,_this$mentionsEl,_this$mentionsEl$setE,_this$mentionsEl2;_superPropGet(b,"connectedCallback",this,3)([]),this.injectCss(m.cssText),this.toolbarEl=this.querySelector("nile-rte-toolbar"),this.previewEl=this.querySelector("nile-rte-preview"),this.ensureEditor(),this.value&&!this.editorEl.innerHTML.trim()&&(this.editorEl.innerHTML=this.value),this.content=this.editorEl.innerHTML,this.toolbarEl&&this.wireAuthoredToolbar(this.toolbarEl),this.mentionsEl=this.querySelector("nile-rte-mentions"),this.mentionsEl&&((_this$mentionsEl$atta=(_this$mentionsEl=this.mentionsEl).attach)!==null&&_this$mentionsEl$atta!==void 0&&_this$mentionsEl$atta.call(_this$mentionsEl,this.editorEl,this),(_this$mentionsEl$setE=(_this$mentionsEl2=this.mentionsEl).setExternalConfig)!==null&&_this$mentionsEl$setE!==void 0&&_this$mentionsEl$setE.call(_this$mentionsEl2,this.mentions)),this.wireEditor(),this.updateToolbarState(),this.syncPreview(),document.addEventListener("selectionchange",this.onSelectionChange,!0);}},{key:"disconnectedCallback",value:function disconnectedCallback(){document.removeEventListener("selectionchange",this.onSelectionChange,!0),this.mentionsEl&&this.mentionsEl.detach&&this.mentionsEl.detach(),_superPropGet(b,"disconnectedCallback",this,3)([]);}},{key:"ensureEditor",value:function ensureEditor(){if(this.editorEl=this.querySelector(".editor"),!this.editorEl){var _this$toolbarEl;var _t=document.createElement("div");_t.className="editor",_t.setAttribute("contenteditable","true"),(_this$toolbarEl=this.toolbarEl)!==null&&_this$toolbarEl!==void 0&&_this$toolbarEl.nextSibling?this.insertBefore(_t,this.toolbarEl.nextSibling):this.previewEl?this.insertBefore(_t,this.previewEl):this.appendChild(_t),this.editorEl=_t;}this.editorEl.innerHTML.trim()||(this.editorEl.innerHTML="<p><br></p>"),this.ensureAtLeastOneParagraph();}},{key:"wireEditor",value:function wireEditor(){var _this2=this;this.editorEl.addEventListener("input",function(){_this2.ensureAtLeastOneParagraph(),_this2.updateContent();}),this.editorEl.addEventListener("mouseup",function(){return _this2.saveSelection();}),this.editorEl.addEventListener("keyup",function(){return _this2.saveSelection();});}},{key:"wireAuthoredToolbar",value:function wireAuthoredToolbar(t){var _this3=this;this.buttonMap.clear(),this.headingSelect=null,this.fontSelect=null,this.colorInput=null,Array.from(t.children).forEach(function(t){var i=t.tagName.toLowerCase();if("nile-rte-select"!==i||"align"!==t.getAttribute("type")){if("nile-rte-toolbar-item"===i){var _this3$buttonMap$get;var _i2=t.querySelector(":scope > nile-button");var _e=t.getAttribute("name")||"",_s=t.getAttribute("label")||_e,_n=t.getAttribute("icon"),_r=t.innerHTML.trim().length>0;if(_i2||(_i2=document.createElement("nile-button"),_i2.variant="tertiary",_i2.size="small"),_n)_i2.innerHTML="<nile-icon name=\"".concat(_n,"\" aria-label=\"").concat(_s,"\"></nile-icon>"),t.innerHTML="";else if(_r)_i2.innerHTML=t.innerHTML,t.innerHTML="";else{var _n2=p[_e];_n2?_i2.innerHTML="<nile-icon name=\"".concat(_n2,"\" size=\"20\" color=\"black\" aria-label=\"").concat(_s,"\"></nile-icon>"):_i2.textContent=_s||_e,t.innerHTML="";}_i2.isConnected||t.appendChild(_i2),_i2.setAttribute("aria-label",_s),_i2.addEventListener("mousedown",function(t){return t.preventDefault();}),_i2.addEventListener("click",function(){return _this3.onToolbarCommand(_e);});var _o=(_this3$buttonMap$get=_this3.buttonMap.get(_e))!==null&&_this3$buttonMap$get!==void 0?_this3$buttonMap$get:[];return _o.push(_i2),void _this3.buttonMap.set(_e,_o);}if("nile-rte-select"!==i){if("nile-rte-color"===i){var _t$getAttribute,_t$getAttribute2;var _i3=(_t$getAttribute=t.getAttribute("label"))!==null&&_t$getAttribute!==void 0?_t$getAttribute:"Text color",_e2=(_t$getAttribute2=t.getAttribute("value"))!==null&&_t$getAttribute2!==void 0?_t$getAttribute2:"#000000";var _s2=t.querySelector(':scope > input[type="color"]');_s2||(_s2=document.createElement("input"),_s2.type="color",t.appendChild(_s2)),_s2.title=_i3,_s2.value=_e2,_s2.addEventListener("mousedown",function(t){return t.preventDefault();}),_s2.addEventListener("input",function(){_this3.focusAndRestore(),l(_this3.editorEl,_s2.value),_this3.updateContent(),_this3.updateToolbarState();}),_this3.colorInput=_s2;}}else{var _i4=t.getAttribute("type")||"";t.addEventListener("change",function(t){_this3.focusAndRestore();var e=t.detail;"heading"===_i4?o(_this3.editorEl,e):"font"===_i4&&h(_this3.editorEl,e),_this3.updateContent(),_this3.updateToolbarState();});}}else t.addEventListener("change",function(t){_this3.focusAndRestore();var i=t.detail;r(_this3.editorEl,i),_this3.updateContent(),_this3.updateToolbarState();});});}},{key:"saveSelection",value:function saveSelection(){var t=window.getSelection();t&&t.rangeCount&&(this.lastRange=t.getRangeAt(0).cloneRange());}},{key:"restoreSelection",value:function restoreSelection(){if(!this.lastRange)return;var t=document.getSelection();t&&(t.removeAllRanges(),t.addRange(this.lastRange));}},{key:"focusAndRestore",value:function focusAndRestore(){var _this$editorEl;(_this$editorEl=this.editorEl)!==null&&_this$editorEl!==void 0&&_this$editorEl.focus(),this.restoreSelection();}},{key:"insertList",value:function insertList(t){if(this.restoreSelection(),!this.lastRange)return;var i=document.createElement(t),e=this.lastRange.extractContents(),s=document.createElement("div");s.appendChild(e),Array.from(s.childNodes).forEach(function(t){var _t$textContent;if(t.nodeType===Node.TEXT_NODE&&!((_t$textContent=t.textContent)!==null&&_t$textContent!==void 0&&_t$textContent.trim()))return;var e=document.createElement("li");e.appendChild(t),i.appendChild(e);}),this.lastRange.insertNode(i),this.afterListEdit(i);}},{key:"afterListEdit",value:function afterListEdit(t){var i=document.createRange();i.setStartAfter(t),i.collapse(!0);var e=window.getSelection();e!==null&&e!==void 0&&e.removeAllRanges(),e!==null&&e!==void 0&&e.addRange(i),this.saveSelection(),this.updateContent(),this.updateToolbarState();}},{key:"ensureAtLeastOneParagraph",value:function ensureAtLeastOneParagraph(){var _t$textContent2;var t=this.editorEl;if(!t)return;var i=""===((_t$textContent2=t.textContent)!==null&&_t$textContent2!==void 0?_t$textContent2:"").replace(/\u200B/g,"").trim();if(0===t.childNodes.length||i)return void(t.innerHTML="<p><br></p>");if(!t.querySelector("p,h1,h2,h3,h4,h5,h6,ul,ol,table,blockquote,pre")){var _i5=document.createElement("p");for(;t.firstChild;)_i5.appendChild(t.firstChild);return _i5.hasChildNodes()||_i5.appendChild(document.createElement("br")),void t.appendChild(_i5);}t.querySelectorAll("p").forEach(function(t){var _t$textContent3;""===((_t$textContent3=t.textContent)!==null&&_t$textContent3!==void 0?_t$textContent3:"").replace(/\u200B/g,"")&&(t.innerHTML.toLowerCase().includes("<br")||(t.innerHTML="<br>"));});}},{key:"onToolbarCommand",value:function onToolbarCommand(t){switch(this.focusAndRestore(),t){case"bold":a(this.editorEl,"strong");break;case"italic":a(this.editorEl,"em");break;case"underline":a(this.editorEl,"u");break;case"left":r(this.editorEl,"left");break;case"center":r(this.editorEl,"center");break;case"right":r(this.editorEl,"right");break;case"justify":r(this.editorEl,"justify");break;case"ul":this.insertList("ul");break;case"ol":this.insertList("ol");break;case"link":c(this.editorEl);break;case"clear":var _t2=document.createTreeWalker(this.editorEl,NodeFilter.SHOW_ELEMENT),_i6=[];for(;_t2.nextNode();){var _e3=_t2.currentNode;_e3.removeAttribute("style"),["B","STRONG","I","EM","U","SPAN","FONT"].includes(_e3.tagName)&&_i6.push(_e3);}for(var _i8=0,_i7=_i6;_i8<_i7.length;_i8++){var _t3=_i7[_i8];for(;_t3.firstChild;){var _t3$parentNode;(_t3$parentNode=_t3.parentNode)===null||_t3$parentNode===void 0||_t3$parentNode.insertBefore(_t3.firstChild,_t3);}_t3.remove();}this.ensureAtLeastOneParagraph();}this.updateContent(),this.updateToolbarState();}},{key:"setBtnActive",value:function setBtnActive(t,i){var e=this.buttonMap.get(t);if(e){var _iterator=_createForOfIteratorHelper(e),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var _t4=_step.value;_t4.toggleAttribute("data-active",!!i);}}catch(err){_iterator.e(err);}finally{_iterator.f();}}}},{key:"updateToolbarState",value:function updateToolbarState(){var _this4=this,_e$closest;if(!this.editorEl)return;var t=document.getSelection();if(!t||0===t.rangeCount)return;var i=t.getRangeAt(0);if(!this.editorEl.contains(i.commonAncestorContainer))return;var e=u(i.startContainer)||this.editorEl,s=getComputedStyle(e),n=f(i.startContainer,this.editorEl)||this.editorEl,r=function(){var t=e;for(;t&&t!==_this4.editorEl;){if(t instanceof HTMLElement){var _i9=t.tagName.toLowerCase();if("strong"===_i9||"b"===_i9)return!0;var _e4=getComputedStyle(t).fontWeight;if(parseInt(_e4,10)>=600)return!0;}t=t.parentNode;}return!1;}(),o=function(){var t=e;for(;t&&t!==_this4.editorEl;){if(t instanceof HTMLElement){var _i10=t.tagName.toLowerCase();if("em"===_i10||"i"===_i10)return!0;if("italic"===getComputedStyle(t).fontStyle)return!0;}t=t.parentNode;}return!1;}(),h=function(){var t=e;for(;t&&t!==_this4.editorEl;){if(t instanceof HTMLElement){var _i11=getComputedStyle(t).textDecorationLine;if(_i11&&_i11.includes("underline"))return!0;if("u"===t.tagName.toLowerCase())return!0;}t=t.parentNode;}return!1;}(),l=!!e.closest("a"),c=n.style.textAlign||getComputedStyle(n).textAlign||"start",a="start"===c?"left":c,m=!!e.closest("li")&&((_e$closest=e.closest("ul,ol"))===null||_e$closest===void 0?void 0:_e$closest.tagName.toLowerCase())||"";if(this.setBtnActive("bold",r),this.setBtnActive("italic",o),this.setBtnActive("underline",h),this.setBtnActive("link",l),this.setBtnActive("left","left"===a&&!["center","right","justify"].includes(a)),this.setBtnActive("center","center"===a),this.setBtnActive("right","right"===a),this.setBtnActive("justify","justify"===a),this.setBtnActive("ul","ul"===m),this.setBtnActive("ol","ol"===m),this.headingSelect){var _t5=n.tagName.toLowerCase(),_i12=["h1","h2","h3"].includes(_t5)?_t5:"p";this.headingSelect.value!==_i12&&(this.headingSelect.value=_i12);}if(this.fontSelect){var _t6=(s.fontFamily||"").replace(/["']/g,"").split(",")[0].trim().toLowerCase();if(_t6)for(var _i13=0,_Array$from=Array.from(this.fontSelect.options);_i13<_Array$from.length;_i13++){var _i14=_Array$from[_i13];if(_i14.value.toLowerCase()===_t6){this.fontSelect.value=_i14.value;break;}}}if(this.colorInput){var _t7=d(s.color);_t7&&this.colorInput.value.toLowerCase()!==_t7.toLowerCase()&&(this.colorInput.value=_t7);}}},{key:"syncPreview",value:function syncPreview(){this.updateContent();}},{key:"updateContent",value:function updateContent(){this.editorEl&&(this.ensureAtLeastOneParagraph(),this.content=this.editorEl.innerHTML,this.previewEl&&(this.previewEl.innerHTML=this.content),this.dispatchEvent(new CustomEvent("content-changed",{detail:{content:this.content},bubbles:!0,composed:!0})));}}]);}(i));t([e({type:String})],b.prototype,"value",void 0),t([e({attribute:"mentions",converter:{fromAttribute:function fromAttribute(t){try{var _i15=JSON.parse(t),_e5={};for(var _i16=0,_Object$keys=Object.keys(_i15);_i16<_Object$keys.length;_i16++){var _t8=_Object$keys[_i16];var _s3=_i15[_t8];Array.isArray(_s3)&&(_e5[_t8]=_s3.filter(function(t){return t&&"string"==typeof t.key&&"string"==typeof t.label;}).map(function(t){return{key:t.key,label:t.label};}));}return _e5;}catch(_unused){return{};}},toAttribute:function toAttribute(t){return JSON.stringify(t);}}})],b.prototype,"mentions",void 0),t([s()],b.prototype,"content",void 0),_export("N",b=t([n("nile-rich-text-editor")],b));}};});
2
2
  //# sourceMappingURL=nile-rich-text-editor.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-rich-text-editor.cjs.js","sources":["../../../src/nile-rich-text-editor/nile-rich-text-editor.ts"],"sourcesContent":["// nile-rich-text-editor.ts\nimport { LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\n\nimport './nile-rte-toolbar';\nimport './nile-rte-toolbar-item';\nimport './nile-rte-select';\nimport './nile-rte-color';\nimport './nile-rte-divider';\nimport './nile-rte-preview';\nimport './nile-rte-mentions';\n\nimport {\n closestBlock, nearestElement, rgbToHex,\n toggleInlineTag, setBlockTag, setAlignment,\n setFontFamily, setForeColor, insertOrEditLink\n} from './utils';\n\ntype MentionsConfig = Record<string, { key: string; label: string }[]>;\n\n/**\n * Map commands → default icon names from your <nile-icon> set.\n * Adjust values to match the real names you have.\n */\nconst DEFAULT_ICONS: Record<string, string> = {\n bold: 'bold',\n italic: 'itallic',\n underline: 'underline',\n link: 'user',\n left: 'user',\n center: 'user',\n right: 'user',\n justify: 'user',\n ul: 'ul',\n ol: 'ol',\n clear: 'close',\n};\n\n@customElement('nile-rich-text-editor')\nexport class NileRichTextEditor extends LitElement {\n protected createRenderRoot() { return this; } // Light DOM\n protected shouldUpdate() { return false; } // Preserve authored DOM; no Lit re-render\n\n /** Initial HTML content */\n @property({ type: String }) value = '';\n\n /** Optional mentions config (can also be on <nile-rte-mentions mentions=\"...\">) */\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 // ----- internal state (no Lit render) -----\n @state() private content = '';\n private editorEl!: HTMLElement;\n private previewEl: HTMLElement | null = null;\n private toolbarEl: HTMLElement | null = null;\n\n private lastRange: Range | null = null;\n\n // map for button active reflections\n private buttonMap = new Map<string, HTMLElement[]>();\n private headingSelect: HTMLSelectElement | null = null;\n private fontSelect: HTMLSelectElement | null = null;\n private colorInput: HTMLInputElement | null = null;\n\n // Mentions controller (child)\n private mentionsEl: HTMLElement | null = null;\n\n \n\n connectedCallback(): void {\n super.connectedCallback();\n\n // 1) Inject styles once (so authored DOM stays as-is)\n this.injectStyles();\n \n\n // 2) Keep authored nodes\n this.toolbarEl = this.querySelector('nile-rte-toolbar');\n this.previewEl = this.querySelector('nile-rte-preview');\n\n // 3) Ensure there is an editor element; create if missing.\n this.ensureEditor();\n\n // 4) Fill initial content\n if (this.value && !this.editorEl.innerHTML.trim()) {\n this.editorEl.innerHTML = this.value;\n }\n this.content = this.editorEl.innerHTML;\n\n // 5) Wire toolbar authored children directly\n if (this.toolbarEl) this.wireAuthoredToolbar(this.toolbarEl);\n\n // 6) Mentions: delegate to child controller\n this.mentionsEl = this.querySelector('nile-rte-mentions');\n if (this.mentionsEl) {\n // pass the editor and host for positioning\n (this.mentionsEl as any).attach?.(this.editorEl, this as HTMLElement);\n // pass parent-provided config so child can merge with its own attribute config\n (this.mentionsEl as any).setExternalConfig?.(this.mentions);\n }\n\n // 7) Wire editor listeners (selection + input)\n this.wireEditor();\n\n // 8) Initial active state + preview\n this.updateToolbarState();\n this.syncPreview();\n\n // 9) Global selection tracking (for toolbar state)\n document.addEventListener('selectionchange', this.onSelectionChange, true);\n }\n\n disconnectedCallback(): void {\n document.removeEventListener('selectionchange', this.onSelectionChange, true);\n // Optionally tell mentions to cleanup\n if (this.mentionsEl && (this.mentionsEl as any).detach) {\n (this.mentionsEl as any).detach();\n }\n super.disconnectedCallback();\n }\n\n // ---------- DOM helpers ----------\n private injectStyles() {\n if (this.querySelector('style[data-rte-style]')) return;\n const style = document.createElement('style');\n style.setAttribute('data-rte-style', 'true');\n style.textContent = `\n /* Host positioning for overlays */\n nile-rich-text-editor { position: relative; display: block; }\n\n \nnile-rte-toolbar-item > nile-button::part(base) {\n \n width:32px; height:32px; padding:0px 6px;\n}\n \n \n\n\n .toolbar, nile-rte-toolbar {\n display:flex; align-items:center; gap:8px; padding-top:8px; padding-left: 8px; padding-right: 8px;\n border:1px solid #e5e7eb; border-bottom:none; border-radius:8px 8px 0 0; background:#fff;\n }\n\n nile-rte-toolbar-item > button, .toolbar button, nile-rte-toolbar button {\n border:1px solid #e5e7eb; background:#fff; border-radius:6px;\n cursor:pointer;\n }\n\n \n /* Ensure clicks hit the button (not nested icon internals) */\n nile-rte-toolbar-item > button nile-icon { pointer-events:none; }\n\n nile-rte-toolbar-item > button.active { border-color:#2563eb; background:#eff6ff; }\n nile-rte-select select { height:32px; border:1px solid #e5e7eb; border-radius:6px; background:#fff; }\n nile-rte-color input[type=\"color\"] { height:32px; width:36px; border:1px solid #e5e7eb; padding:0; border-radius:6px; background:#fff; }\n nile-rte-divider { width:1px; height:20px; background:#e5e7eb; display:inline-block; margin:0 4px; }\n\n .editor p { margin:1em 0; }\n .editor h1 { font-size:2em }\n .editor h2 { font-size:1.5em }\n .editor h3 { font-size:1.17em }\n .editor h4 { font-size:1em }\n .editor h5 { font-size:0.83em }\n .editor h6 { font-size:0.67em }\n\n .editor { min-height:160px; padding:12px; border:1px solid #e5e7eb; border-radius:0 0 8px 8px; background:#fff; outline:none; }\n nile-rte-preview { display:block; margin-top:10px; padding:10px; border:1px dashed #cbd5e1; border-radius:8px; background:#fafafa; }\n `;\n this.insertBefore(style, this.firstChild);\n }\n\n private ensureEditor() {\n this.editorEl = this.querySelector('.editor') as HTMLElement;\n if (!this.editorEl) {\n const editor = document.createElement('div');\n editor.className = 'editor';\n editor.setAttribute('contenteditable','true');\n if (this.toolbarEl?.nextSibling) {\n this.insertBefore(editor, this.toolbarEl.nextSibling);\n } else if (this.previewEl) {\n this.insertBefore(editor, this.previewEl);\n } else {\n this.appendChild(editor);\n }\n this.editorEl = editor;\n }\n // **NEW**: seed an empty paragraph so setBlockTag() has something to swap\n if (!this.editorEl.innerHTML.trim()) {\n this.editorEl.innerHTML = '<p><br></p>';\n }\n this.ensureAtLeastOneParagraph();\n }\n\n private wireEditor() {\n // Input & selection preservation\n this.editorEl.addEventListener('input', () => { \n this.ensureAtLeastOneParagraph();\n this.updateContent();\n });\n this.editorEl.addEventListener('mouseup', () => this.saveSelection());\n this.editorEl.addEventListener('keyup', () => this.saveSelection()); // keep range fresh for toolbar\n }\n\n private wireAuthoredToolbar(tb: HTMLElement) {\n // Clear previous map\n this.buttonMap.clear();\n this.headingSelect = null;\n this.fontSelect = null;\n this.colorInput = null;\n\n // Process children\n Array.from(tb.children).forEach(child => {\n const tag = child.tagName.toLowerCase();\n\n if (tag === 'nile-rte-select' && child.getAttribute('type') === 'align') {\n child.addEventListener('change', (e: any) => {\n this.focusAndRestore();\n const alignment = e.detail as 'left'|'center'|'right'|'justify';\n setAlignment(this.editorEl, alignment);\n this.updateContent();\n this.updateToolbarState();\n });\n return;\n }\n \n\n if (tag === 'nile-rte-toolbar-item') {\n // Look for an authored <nile-button> (so authors can override)\n let btn = child.querySelector(':scope > nile-button') as HTMLElement | null;\n \n const cmd = child.getAttribute('name') || '';\n const label = child.getAttribute('label') || cmd;\n const iconAttr = child.getAttribute('icon');\n const authoredHasContent = child.innerHTML.trim().length > 0;\n \n // If none, create one\n if (!btn) {\n btn = document.createElement('nile-button');\n (btn as any).variant = 'tertiary';\n (btn as any).size = 'small'; // optional\n }\n \n // Fill visual content\n if (iconAttr) {\n btn.innerHTML = `<nile-icon name=\"${iconAttr}\" aria-label=\"${label}\"></nile-icon>`;\n child.innerHTML = '';\n } else if (!authoredHasContent) {\n const defaultIcon = DEFAULT_ICONS[cmd];\n if (defaultIcon) {\n btn.innerHTML = `<nile-icon name=\"${defaultIcon}\" size=\"26\" aria-label=\"${label}\"></nile-icon>`;\n } else {\n btn.textContent = label || cmd;\n }\n child.innerHTML = '';\n } else {\n // Author provided custom content (could be a <nile-icon> already)\n btn.innerHTML = child.innerHTML;\n child.innerHTML = '';\n }\n \n // Mount it\n if (!btn.isConnected) child.appendChild(btn);\n \n // Interactions\n btn.setAttribute('aria-label', label);\n btn.addEventListener('mousedown', e => e.preventDefault());\n btn.addEventListener('click', () => this.onToolbarCommand(cmd));\n \n // Register for active reflection\n const arr = this.buttonMap.get(cmd) ?? [];\n arr.push(btn);\n this.buttonMap.set(cmd, arr);\n \n return; // done with this child\n }\n if (tag === 'nile-rte-select') {\n const type = child.getAttribute('type') || '';\n\n // listen for our custom dropdown’s change event\n child.addEventListener('change', (e: any) => {\n // restore focus & selection\n this.focusAndRestore();\n\n const val = e.detail as string;\n\n if (type === 'heading') {\n // apply block tag\n setBlockTag(this.editorEl, val as any);\n }\n else if (type === 'font') {\n setFontFamily(this.editorEl, val);\n }\n \n // update the editor content & toolbar UI\n this.updateContent();\n this.updateToolbarState();\n });\n\n // nothing else to inject into the DOM\n return;\n }\n \n\n if (tag === 'nile-rte-color') {\n const label = child.getAttribute('label') ?? 'Text color';\n const value = child.getAttribute('value') ?? '#000000';\n // render internal <input type=\"color\">\n let input = child.querySelector(':scope > input[type=\"color\"]') as HTMLInputElement | null;\n if (!input) {\n input = document.createElement('input');\n input.type = 'color';\n child.appendChild(input);\n }\n input.title = label;\n input.value = value;\n input.addEventListener('mousedown', e => e.preventDefault());\n input.addEventListener('input', () => {\n this.focusAndRestore();\n setForeColor(this.editorEl, input!.value);\n this.updateContent(); this.updateToolbarState();\n });\n this.colorInput = input;\n }\n\n // nile-rte-divider: no-op (purely visual)\n });\n }\n\n // ---------- Selection helpers (for toolbar state only) ----------\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 this.updateToolbarState();\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 /*──────────────────────── LIST HELPERS ────────────────────────*/\nprivate insertList(type: 'ul' | 'ol') {\n this.restoreSelection();\n if (!this.lastRange) return;\n\n // build <ul>/<ol>\n const list = document.createElement(type);\n\n // grab the selected fragment\n const frag = this.lastRange.extractContents();\n const temp = document.createElement('div');\n temp.appendChild(frag);\n\n // wrap each top-level node in an <li>\n Array.from(temp.childNodes).forEach(n => {\n // skip empty whitespace text nodes\n if (n.nodeType === Node.TEXT_NODE && !n.textContent?.trim()) return;\n const li = document.createElement('li');\n li.appendChild(n); // moves the node!\n list.appendChild(li);\n });\n\n // insert list where the selection was\n this.lastRange.insertNode(list);\n this.afterListEdit(list);\n}\n\nprivate afterListEdit(node: Node) {\n const range = document.createRange();\n range.setStartAfter(node);\n range.collapse(true);\n const sel = window.getSelection();\n sel?.removeAllRanges();\n sel?.addRange(range);\n\n this.saveSelection();\n this.updateContent();\n this.updateToolbarState();\n}\n // Keep at least one <p><br></p> and wrap stray inline/text into a <p>\nprivate ensureAtLeastOneParagraph() {\n const el = this.editorEl;\n if (!el) return;\n\n // 1) If completely empty → seed a paragraph\n const onlyWhitespace =\n (el.textContent ?? '').replace(/\\u200B/g, '').trim() === '';\n if (el.childNodes.length === 0 || onlyWhitespace) {\n el.innerHTML = '<p><br></p>';\n return;\n }\n\n // 2) If no block elements exist, wrap whatever is there into a <p>\n const hasBlock = el.querySelector('p,h1,h2,h3,h4,h5,h6,ul,ol,table,blockquote,pre');\n if (!hasBlock) {\n const p = document.createElement('p');\n while (el.firstChild) p.appendChild(el.firstChild);\n if (!p.hasChildNodes()) p.appendChild(document.createElement('br'));\n el.appendChild(p);\n return;\n }\n\n // 3) Make sure the first/only empty <p> still has a <br>\n el.querySelectorAll('p').forEach(p => {\n if ((p.textContent ?? '').replace(/\\u200B/g, '') === '') {\n if (!p.innerHTML.toLowerCase().includes('<br')) p.innerHTML = '<br>';\n }\n });\n}\n\n\n\n // ---------- Toolbar/commands ----------\n private onToolbarCommand(cmd: string) {\n this.focusAndRestore();\n switch (cmd) {\n case 'bold': toggleInlineTag(this.editorEl, 'strong'); break;\n case 'italic': toggleInlineTag(this.editorEl, 'em'); break;\n case 'underline': toggleInlineTag(this.editorEl, 'u'); break;\n case 'left': setAlignment(this.editorEl, 'left'); break;\n case 'center': setAlignment(this.editorEl, 'center'); break;\n case 'right': setAlignment(this.editorEl, 'right'); break;\n case 'justify': setAlignment(this.editorEl, 'justify'); break;\n case 'ul': this.insertList('ul'); break;\n case 'ol': this.insertList('ol'); break;\n case 'link': insertOrEditLink(this.editorEl); break;\n case 'clear':\n const walker = document.createTreeWalker(this.editorEl, NodeFilter.SHOW_ELEMENT);\n const toUnwrap: HTMLElement[] = [];\n while (walker.nextNode()) {\n const el = walker.currentNode as HTMLElement;\n el.removeAttribute('style');\n if (['B','STRONG','I','EM','U','SPAN','FONT'].includes(el.tagName)) {\n toUnwrap.push(el);\n }\n }\n for (const el of toUnwrap) {\n while (el.firstChild) el.parentNode?.insertBefore(el.firstChild, el);\n el.remove();\n }\n this.ensureAtLeastOneParagraph();\n break;\n\n default: break;\n }\n this.updateContent(); this.updateToolbarState();\n }\n\n private setBtnActive(cmd: string, active: boolean) {\n const arr = this.buttonMap.get(cmd); if (!arr) return;\n for (const btn of arr) btn.toggleAttribute('data-active', !!active);\n }\n\n private updateToolbarState() {\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)) return;\n\n const startElm = nearestElement(range.startContainer) || this.editorEl;\n const comp = getComputedStyle(startElm);\n const block = closestBlock(range.startContainer, this.editorEl) || this.editorEl;\n\n const isBold = (() => {\n let n: Node | null = startElm;\n while (n && n !== this.editorEl) {\n if (n instanceof HTMLElement) {\n const t = n.tagName.toLowerCase();\n if (t === 'strong' || t === 'b') return true;\n const w = getComputedStyle(n).fontWeight;\n if (parseInt(w, 10) >= 600) return true;\n }\n n = n.parentNode;\n }\n return false;\n })();\n\n const isItalic = (() => {\n let n: Node | null = startElm;\n while (n && n !== this.editorEl) {\n if (n instanceof HTMLElement) {\n const t = n.tagName.toLowerCase();\n if (t === 'em' || t === 'i') return true;\n if (getComputedStyle(n).fontStyle === 'italic') return true;\n }\n n = n.parentNode;\n }\n return false;\n })();\n\n const isUnderline = (() => {\n let n: Node | null = startElm;\n while (n && n !== this.editorEl) {\n if (n instanceof HTMLElement) {\n const tdl = getComputedStyle(n).textDecorationLine;\n if (tdl && tdl.includes('underline')) return true;\n if (n.tagName.toLowerCase() === 'u') return true;\n }\n n = n.parentNode;\n }\n return false;\n })();\n\n const inLink = !!startElm.closest('a');\n\n const align = (block.style.textAlign || getComputedStyle(block).textAlign || 'start') as string;\n const alignNorm = align === 'start' ? 'left' : align;\n\n const inLi = !!startElm.closest('li');\n const listType = inLi ? (startElm.closest('ul,ol')?.tagName.toLowerCase() || '') : '';\n\n this.setBtnActive('bold', isBold);\n this.setBtnActive('italic', isItalic);\n this.setBtnActive('underline', isUnderline);\n this.setBtnActive('link', inLink);\n\n this.setBtnActive('left', alignNorm === 'left' && !['center','right','justify'].includes(alignNorm));\n this.setBtnActive('center', alignNorm === 'center');\n this.setBtnActive('right', alignNorm === 'right');\n this.setBtnActive('justify', alignNorm === 'justify');\n\n this.setBtnActive('ul', listType === 'ul');\n this.setBtnActive('ol', listType === 'ol');\n\n // Reflect heading\n if (this.headingSelect) {\n const tag = block.tagName.toLowerCase();\n const v = ['h1','h2','h3'].includes(tag) ? tag : 'p';\n if (this.headingSelect.value !== v) this.headingSelect.value = v;\n }\n\n // Reflect font family\n if (this.fontSelect) {\n const ff = (comp.fontFamily || '').replace(/[\"']/g, '').split(',')[0].trim().toLowerCase();\n if (ff) {\n for (const opt of Array.from(this.fontSelect.options)) {\n if (opt.value.toLowerCase() === ff) { this.fontSelect.value = opt.value; break; }\n }\n }\n }\n\n // Reflect color\n if (this.colorInput) {\n const hex = rgbToHex(comp.color);\n if (hex && this.colorInput.value.toLowerCase() !== hex.toLowerCase()) {\n this.colorInput.value = hex;\n }\n }\n }\n\n private syncPreview() {\n this.updateContent();\n }\n\n private updateContent() {\n if (!this.editorEl) return;\n this.ensureAtLeastOneParagraph();\n this.content = this.editorEl.innerHTML;\n\n // live preview on the authored node (kept in place)\n if (this.previewEl) this.previewEl.innerHTML = this.content;\n\n this.dispatchEvent(new CustomEvent('content-changed', {\n detail: { content: this.content }, bubbles: true, composed: true\n }));\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-rich-text-editor': NileRichTextEditor;\n }\n}\n\n"],"names":["DEFAULT_ICONS","bold","italic","underline","link","left","center","right","justify","ul","ol","clear","NileRichTextEditor","b","this","value","mentions","content","previewEl","toolbarEl","lastRange","buttonMap","Map","headingSelect","fontSelect","colorInput","mentionsEl","onSelectionChange","editorEl","sel","document","getSelection","rangeCount","range","getRangeAt","contains","commonAncestorContainer","cloneRange","updateToolbarState","_this","_inherits","_e","_createClass","key","createRenderRoot","shouldUpdate","connectedCallback","super","injectStyles","querySelector","ensureEditor","innerHTML","trim","wireAuthoredToolbar","attach","setExternalConfig","wireEditor","syncPreview","addEventListener","disconnectedCallback","removeEventListener","detach","style","createElement","setAttribute","textContent","insertBefore","firstChild","_this$toolbarEl","editor","className","nextSibling","appendChild","ensureAtLeastOneParagraph","updateContent","saveSelection","tb","Array","from","children","forEach","child","tag","tagName","toLowerCase","getAttribute","_this3$buttonMap$get","btn","cmd","label","iconAttr","authoredHasContent","length","variant","size","defaultIcon","isConnected","e","preventDefault","onToolbarCommand","arr","get","push","set","_t$getAttribute","_t$getAttribute2","input","type","title","focusAndRestore","setForeColor","val","detail","setBlockTag","setFontFamily","alignment","setAlignment","window","restoreSelection","removeAllRanges","addRange","focus","insertList","list","frag","extractContents","temp","childNodes","n","nodeType","Node","TEXT_NODE","li","insertNode","afterListEdit","node","createRange","setStartAfter","collapse","el","onlyWhitespace","_t$textContent2","replace","p","hasChildNodes","querySelectorAll","_t$textContent3","includes","toggleInlineTag","insertOrEditLink","walker","createTreeWalker","NodeFilter","SHOW_ELEMENT","toUnwrap","nextNode","currentNode","removeAttribute","_i4","_e7","parentNode","remove","setBtnActive","active","_iterator","s","_step","done","toggleAttribute","err","f","startElm","nearestElement","startContainer","comp","getComputedStyle","block","closestBlock","isBold","HTMLElement","t","w","fontWeight","parseInt","isItalic","fontStyle","isUnderline","tdl","textDecorationLine","inLink","closest","align","textAlign","alignNorm","listType","v","ff","fontFamily","split","_i6","_Array$from","options","opt","hex","rgbToHex","color","dispatchEvent","CustomEvent","bubbles","composed","__decorate","LitElement","property","String","prototype","attribute","converter","fromAttribute","parsed","JSON","parse","out","_i8","_Object$keys","Object","keys","trig","isArray","filter","i","map","_unused","toAttribute","stringify","state","customElement"],"mappings":"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"}
1
+ {"version":3,"file":"nile-rich-text-editor.cjs.js","sources":["../../../src/nile-rich-text-editor/nile-rich-text-editor.ts"],"sourcesContent":["// nile-rich-text-editor.ts\nimport { LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\n\nimport './nile-rte-toolbar';\nimport './nile-rte-toolbar-item';\nimport './nile-rte-select';\nimport './nile-rte-color';\nimport './nile-rte-divider';\nimport './nile-rte-preview';\nimport './nile-rte-mentions';\n\nimport {\n closestBlock, nearestElement, rgbToHex,\n toggleInlineTag, setBlockTag, setAlignment,\n setFontFamily, setForeColor, insertOrEditLink\n} from './utils';\n\nimport {styles} from './nile-rich-text-editor.css'; \n\ntype MentionsConfig = Record<string, { key: string; label: string }[]>;\n\n/**\n * Map commands → default icon names from your <nile-icon> set.\n * Adjust values to match the real names you have.\n */\nconst DEFAULT_ICONS: Record<string, string> = {\n bold: 'nile-bold',\n italic: 'nile-italic',\n underline: 'nile-underline',\n link: 'user',\n left: 'nile-leftalign',\n center: 'nile-centeralign',\n right: 'nile-rightalign',\n justify: 'nile-justify',\n ul: 'nile-ul',\n ol: 'nile-ol',\n clear: 'error',\n};\n\n@customElement('nile-rich-text-editor')\nexport class NileRichTextEditor extends LitElement {\n protected createRenderRoot() { return this; } \n protected shouldUpdate() { return false; } \n\n /** Initial HTML content */\n @property({ type: String }) value = '';\n\n /** Optional mentions config (can also be on <nile-rte-mentions mentions=\"...\">) */\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 // ----- internal state (no Lit render) -----\n @state() private content = '';\n private editorEl!: HTMLElement;\n private previewEl: HTMLElement | null = null;\n private toolbarEl: HTMLElement | null = null;\n\n private lastRange: Range | null = null;\n\n // map for button active reflections\n private buttonMap = new Map<string, HTMLElement[]>();\n private headingSelect: HTMLSelectElement | null = null;\n private fontSelect: HTMLSelectElement | null = null;\n private colorInput: HTMLInputElement | null = null;\n\n // Mentions controller (child)\n private mentionsEl: HTMLElement | null = null;\n\n \n\n private injectCss(cssText: string) {\n if (this.querySelector('style[data-rte-style]')) return;\n const style = document.createElement('style');\n style.setAttribute('data-rte-style', 'true');\n style.textContent = cssText;\n this.insertBefore(style, this.firstChild);\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n\n // 1) Inject styles once (so authored DOM stays as-is)\n this.injectCss(styles.cssText); \n \n\n // 2) Keep authored nodes\n this.toolbarEl = this.querySelector('nile-rte-toolbar');\n this.previewEl = this.querySelector('nile-rte-preview');\n\n // 3) Ensure there is an editor element; create if missing.\n this.ensureEditor();\n\n // 4) Fill initial content\n if (this.value && !this.editorEl.innerHTML.trim()) {\n this.editorEl.innerHTML = this.value;\n }\n this.content = this.editorEl.innerHTML;\n\n // 5) Wire toolbar authored children directly\n if (this.toolbarEl) this.wireAuthoredToolbar(this.toolbarEl);\n\n // 6) Mentions: delegate to child controller\n this.mentionsEl = this.querySelector('nile-rte-mentions');\n if (this.mentionsEl) {\n \n (this.mentionsEl as any).attach?.(this.editorEl, this as HTMLElement);\n \n (this.mentionsEl as any).setExternalConfig?.(this.mentions);\n }\n\n \n this.wireEditor();\n\n \n this.updateToolbarState();\n this.syncPreview();\n\n \n document.addEventListener('selectionchange', this.onSelectionChange, true);\n }\n\n disconnectedCallback(): void {\n document.removeEventListener('selectionchange', this.onSelectionChange, true);\n // Optionally tell mentions to cleanup\n if (this.mentionsEl && (this.mentionsEl as any).detach) {\n (this.mentionsEl as any).detach();\n }\n super.disconnectedCallback();\n }\n\n \n \n\n private ensureEditor() {\n this.editorEl = this.querySelector('.editor') as HTMLElement;\n if (!this.editorEl) {\n const editor = document.createElement('div');\n editor.className = 'editor';\n editor.setAttribute('contenteditable','true');\n if (this.toolbarEl?.nextSibling) {\n this.insertBefore(editor, this.toolbarEl.nextSibling);\n } else if (this.previewEl) {\n this.insertBefore(editor, this.previewEl);\n } else {\n this.appendChild(editor);\n }\n this.editorEl = editor;\n }\n // **NEW**: seed an empty paragraph so setBlockTag() has something to swap\n if (!this.editorEl.innerHTML.trim()) {\n this.editorEl.innerHTML = '<p><br></p>';\n }\n this.ensureAtLeastOneParagraph();\n }\n\n private wireEditor() {\n // Input & selection preservation\n this.editorEl.addEventListener('input', () => { \n this.ensureAtLeastOneParagraph();\n this.updateContent();\n });\n this.editorEl.addEventListener('mouseup', () => this.saveSelection());\n this.editorEl.addEventListener('keyup', () => this.saveSelection()); // keep range fresh for toolbar\n }\n\n private wireAuthoredToolbar(tb: HTMLElement) {\n // Clear previous map\n this.buttonMap.clear();\n this.headingSelect = null;\n this.fontSelect = null;\n this.colorInput = null;\n\n // Process children\n Array.from(tb.children).forEach(child => {\n const tag = child.tagName.toLowerCase();\n\n if (tag === 'nile-rte-select' && child.getAttribute('type') === 'align') {\n child.addEventListener('change', (e: any) => {\n this.focusAndRestore();\n const alignment = e.detail as 'left'|'center'|'right'|'justify';\n setAlignment(this.editorEl, alignment);\n this.updateContent();\n this.updateToolbarState();\n });\n return;\n }\n \n\n if (tag === 'nile-rte-toolbar-item') {\n // Look for an authored <nile-button> (so authors can override)\n let btn = child.querySelector(':scope > nile-button') as HTMLElement | null;\n \n const cmd = child.getAttribute('name') || '';\n const label = child.getAttribute('label') || cmd;\n const iconAttr = child.getAttribute('icon');\n const authoredHasContent = child.innerHTML.trim().length > 0;\n \n // If none, create one\n if (!btn) {\n btn = document.createElement('nile-button');\n (btn as any).variant = 'tertiary';\n (btn as any).size = 'small'; // optional\n }\n \n // Fill visual content\n if (iconAttr) {\n btn.innerHTML = `<nile-icon name=\"${iconAttr}\" aria-label=\"${label}\"></nile-icon>`;\n child.innerHTML = '';\n } else if (!authoredHasContent) {\n const defaultIcon = DEFAULT_ICONS[cmd];\n if (defaultIcon) {\n btn.innerHTML = `<nile-icon name=\"${defaultIcon}\" size=\"20\" color=\"black\" aria-label=\"${label}\"></nile-icon>`;\n } else {\n btn.textContent = label || cmd;\n }\n child.innerHTML = '';\n } else {\n // Author provided custom content (could be a <nile-icon> already)\n btn.innerHTML = child.innerHTML;\n child.innerHTML = '';\n }\n \n // Mount it\n if (!btn.isConnected) child.appendChild(btn);\n \n // Interactions\n btn.setAttribute('aria-label', label);\n btn.addEventListener('mousedown', e => e.preventDefault());\n btn.addEventListener('click', () => this.onToolbarCommand(cmd));\n \n // Register for active reflection\n const arr = this.buttonMap.get(cmd) ?? [];\n arr.push(btn);\n this.buttonMap.set(cmd, arr);\n \n return; // done with this child\n }\n if (tag === 'nile-rte-select') {\n const type = child.getAttribute('type') || '';\n\n // listen for our custom dropdown’s change event\n child.addEventListener('change', (e: any) => {\n // restore focus & selection\n this.focusAndRestore();\n\n const val = e.detail as string;\n\n if (type === 'heading') {\n // apply block tag\n setBlockTag(this.editorEl, val as any);\n }\n else if (type === 'font') {\n setFontFamily(this.editorEl, val);\n }\n \n // update the editor content & toolbar UI\n this.updateContent();\n this.updateToolbarState();\n });\n\n // nothing else to inject into the DOM\n return;\n }\n \n\n if (tag === 'nile-rte-color') {\n const label = child.getAttribute('label') ?? 'Text color';\n const value = child.getAttribute('value') ?? '#000000';\n // render internal <input type=\"color\">\n let input = child.querySelector(':scope > input[type=\"color\"]') as HTMLInputElement | null;\n if (!input) {\n input = document.createElement('input');\n input.type = 'color';\n child.appendChild(input);\n }\n input.title = label;\n input.value = value;\n input.addEventListener('mousedown', e => e.preventDefault());\n input.addEventListener('input', () => {\n this.focusAndRestore();\n setForeColor(this.editorEl, input!.value);\n this.updateContent(); this.updateToolbarState();\n });\n this.colorInput = input;\n }\n\n // nile-rte-divider: no-op (purely visual)\n });\n }\n\n // ---------- Selection helpers (for toolbar state only) ----------\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 this.updateToolbarState();\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 /*──────────────────────── LIST HELPERS ────────────────────────*/\nprivate insertList(type: 'ul' | 'ol') {\n this.restoreSelection();\n if (!this.lastRange) return;\n\n // build <ul>/<ol>\n const list = document.createElement(type);\n\n // grab the selected fragment\n const frag = this.lastRange.extractContents();\n const temp = document.createElement('div');\n temp.appendChild(frag);\n\n // wrap each top-level node in an <li>\n Array.from(temp.childNodes).forEach(n => {\n // skip empty whitespace text nodes\n if (n.nodeType === Node.TEXT_NODE && !n.textContent?.trim()) return;\n const li = document.createElement('li');\n li.appendChild(n); // moves the node!\n list.appendChild(li);\n });\n\n // insert list where the selection was\n this.lastRange.insertNode(list);\n this.afterListEdit(list);\n}\n\nprivate afterListEdit(node: Node) {\n const range = document.createRange();\n range.setStartAfter(node);\n range.collapse(true);\n const sel = window.getSelection();\n sel?.removeAllRanges();\n sel?.addRange(range);\n\n this.saveSelection();\n this.updateContent();\n this.updateToolbarState();\n}\n // Keep at least one <p><br></p> and wrap stray inline/text into a <p>\nprivate ensureAtLeastOneParagraph() {\n const el = this.editorEl;\n if (!el) return;\n\n // 1) If completely empty → seed a paragraph\n const onlyWhitespace =\n (el.textContent ?? '').replace(/\\u200B/g, '').trim() === '';\n if (el.childNodes.length === 0 || onlyWhitespace) {\n el.innerHTML = '<p><br></p>';\n return;\n }\n\n // 2) If no block elements exist, wrap whatever is there into a <p>\n const hasBlock = el.querySelector('p,h1,h2,h3,h4,h5,h6,ul,ol,table,blockquote,pre');\n if (!hasBlock) {\n const p = document.createElement('p');\n while (el.firstChild) p.appendChild(el.firstChild);\n if (!p.hasChildNodes()) p.appendChild(document.createElement('br'));\n el.appendChild(p);\n return;\n }\n\n // 3) Make sure the first/only empty <p> still has a <br>\n el.querySelectorAll('p').forEach(p => {\n if ((p.textContent ?? '').replace(/\\u200B/g, '') === '') {\n if (!p.innerHTML.toLowerCase().includes('<br')) p.innerHTML = '<br>';\n }\n });\n}\n\n\n\n // ---------- Toolbar/commands ----------\n private onToolbarCommand(cmd: string) {\n this.focusAndRestore();\n switch (cmd) {\n case 'bold': toggleInlineTag(this.editorEl, 'strong'); break;\n case 'italic': toggleInlineTag(this.editorEl, 'em'); break;\n case 'underline': toggleInlineTag(this.editorEl, 'u'); break;\n case 'left': setAlignment(this.editorEl, 'left'); break;\n case 'center': setAlignment(this.editorEl, 'center'); break;\n case 'right': setAlignment(this.editorEl, 'right'); break;\n case 'justify': setAlignment(this.editorEl, 'justify'); break;\n case 'ul': this.insertList('ul'); break;\n case 'ol': this.insertList('ol'); break;\n case 'link': insertOrEditLink(this.editorEl); break;\n case 'clear':\n const walker = document.createTreeWalker(this.editorEl, NodeFilter.SHOW_ELEMENT);\n const toUnwrap: HTMLElement[] = [];\n while (walker.nextNode()) {\n const el = walker.currentNode as HTMLElement;\n el.removeAttribute('style');\n if (['B','STRONG','I','EM','U','SPAN','FONT'].includes(el.tagName)) {\n toUnwrap.push(el);\n }\n }\n for (const el of toUnwrap) {\n while (el.firstChild) el.parentNode?.insertBefore(el.firstChild, el);\n el.remove();\n }\n this.ensureAtLeastOneParagraph();\n break;\n\n default: break;\n }\n this.updateContent(); this.updateToolbarState();\n }\n\n private setBtnActive(cmd: string, active: boolean) {\n const arr = this.buttonMap.get(cmd); if (!arr) return;\n for (const btn of arr) btn.toggleAttribute('data-active', !!active);\n }\n\n private updateToolbarState() {\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)) return;\n\n const startElm = nearestElement(range.startContainer) || this.editorEl;\n const comp = getComputedStyle(startElm);\n const block = closestBlock(range.startContainer, this.editorEl) || this.editorEl;\n\n const isBold = (() => {\n let n: Node | null = startElm;\n while (n && n !== this.editorEl) {\n if (n instanceof HTMLElement) {\n const t = n.tagName.toLowerCase();\n if (t === 'strong' || t === 'b') return true;\n const w = getComputedStyle(n).fontWeight;\n if (parseInt(w, 10) >= 600) return true;\n }\n n = n.parentNode;\n }\n return false;\n })();\n\n const isItalic = (() => {\n let n: Node | null = startElm;\n while (n && n !== this.editorEl) {\n if (n instanceof HTMLElement) {\n const t = n.tagName.toLowerCase();\n if (t === 'em' || t === 'i') return true;\n if (getComputedStyle(n).fontStyle === 'italic') return true;\n }\n n = n.parentNode;\n }\n return false;\n })();\n\n const isUnderline = (() => {\n let n: Node | null = startElm;\n while (n && n !== this.editorEl) {\n if (n instanceof HTMLElement) {\n const tdl = getComputedStyle(n).textDecorationLine;\n if (tdl && tdl.includes('underline')) return true;\n if (n.tagName.toLowerCase() === 'u') return true;\n }\n n = n.parentNode;\n }\n return false;\n })();\n\n const inLink = !!startElm.closest('a');\n\n const align = (block.style.textAlign || getComputedStyle(block).textAlign || 'start') as string;\n const alignNorm = align === 'start' ? 'left' : align;\n\n const inLi = !!startElm.closest('li');\n const listType = inLi ? (startElm.closest('ul,ol')?.tagName.toLowerCase() || '') : '';\n\n this.setBtnActive('bold', isBold);\n this.setBtnActive('italic', isItalic);\n this.setBtnActive('underline', isUnderline);\n this.setBtnActive('link', inLink);\n\n this.setBtnActive('left', alignNorm === 'left' && !['center','right','justify'].includes(alignNorm));\n this.setBtnActive('center', alignNorm === 'center');\n this.setBtnActive('right', alignNorm === 'right');\n this.setBtnActive('justify', alignNorm === 'justify');\n\n this.setBtnActive('ul', listType === 'ul');\n this.setBtnActive('ol', listType === 'ol');\n\n // Reflect heading\n if (this.headingSelect) {\n const tag = block.tagName.toLowerCase();\n const v = ['h1','h2','h3'].includes(tag) ? tag : 'p';\n if (this.headingSelect.value !== v) this.headingSelect.value = v;\n }\n\n // Reflect font family\n if (this.fontSelect) {\n const ff = (comp.fontFamily || '').replace(/[\"']/g, '').split(',')[0].trim().toLowerCase();\n if (ff) {\n for (const opt of Array.from(this.fontSelect.options)) {\n if (opt.value.toLowerCase() === ff) { this.fontSelect.value = opt.value; break; }\n }\n }\n }\n\n // Reflect color\n if (this.colorInput) {\n const hex = rgbToHex(comp.color);\n if (hex && this.colorInput.value.toLowerCase() !== hex.toLowerCase()) {\n this.colorInput.value = hex;\n }\n }\n }\n\n private syncPreview() {\n this.updateContent();\n }\n\n private updateContent() {\n if (!this.editorEl) return;\n this.ensureAtLeastOneParagraph();\n this.content = this.editorEl.innerHTML;\n\n // live preview on the authored node (kept in place)\n if (this.previewEl) this.previewEl.innerHTML = this.content;\n\n this.dispatchEvent(new CustomEvent('content-changed', {\n detail: { content: this.content }, bubbles: true, composed: true\n }));\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-rich-text-editor': NileRichTextEditor;\n }\n}\n\n"],"names":["DEFAULT_ICONS","bold","italic","underline","link","left","center","right","justify","ul","ol","clear","_export","NileRichTextEditor","_i","b","constructor","this","value","mentions","content","previewEl","toolbarEl","lastRange","buttonMap","Map","headingSelect","fontSelect","colorInput","mentionsEl","onSelectionChange","editorEl","sel","document","getSelection","rangeCount","range","getRangeAt","contains","commonAncestorContainer","cloneRange","updateToolbarState","_this","_inherits","_createClass","key","createRenderRoot","shouldUpdate","injectCss","cssText","querySelector","style","createElement","setAttribute","textContent","insertBefore","firstChild","connectedCallback","super","styles","ensureEditor","innerHTML","trim","wireAuthoredToolbar","attach","setExternalConfig","wireEditor","syncPreview","addEventListener","disconnectedCallback","removeEventListener","detach","_this$toolbarEl","editor","className","nextSibling","appendChild","ensureAtLeastOneParagraph","updateContent","saveSelection","tb","Array","from","children","forEach","child","tag","tagName","toLowerCase","getAttribute","_this3$buttonMap$get","btn","cmd","label","iconAttr","authoredHasContent","length","variant","size","defaultIcon","isConnected","e","preventDefault","onToolbarCommand","arr","get","push","set","_t$getAttribute","_t$getAttribute2","input","type","title","focusAndRestore","setForeColor","val","detail","setBlockTag","setFontFamily","alignment","setAlignment","window","restoreSelection","removeAllRanges","addRange","focus","insertList","list","frag","extractContents","temp","childNodes","n","nodeType","Node","TEXT_NODE","li","insertNode","afterListEdit","node","createRange","setStartAfter","collapse","el","onlyWhitespace","replace","p","hasChildNodes","querySelectorAll","includes","toggleInlineTag","insertOrEditLink","walker","createTreeWalker","NodeFilter","SHOW_ELEMENT","toUnwrap","nextNode","currentNode","removeAttribute","_i8","_i7","parentNode","remove","setBtnActive","active","_iterator","_createForOfIteratorHelper","s","_step","done","toggleAttribute","err","f","_this4","_e$closest","startElm","nearestElement","startContainer","comp","getComputedStyle","block","closestBlock","isBold","HTMLElement","t","w","fontWeight","parseInt","isItalic","fontStyle","isUnderline","tdl","textDecorationLine","inLink","closest","align","textAlign","alignNorm","listType","v","ff","fontFamily","split","_i13","_Array$from","options","opt","hex","rgbToHex","color","dispatchEvent","CustomEvent","bubbles","composed","__decorate","LitElement","property","String","prototype","attribute","converter","fromAttribute","parsed","JSON","parse","out","_i16","_Object$keys","Object","keys","trig","isArray","filter","i","map","_unused","toAttribute","stringify","state","customElement"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- System.register(["lit"],function(_export,_context){"use strict";var o,_templateObject;function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}return{setters:[function(_lit){o=_lit.css;}],execute:function execute(){o(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n\t:host {\n\n\t},\n\n\n"])));}};});
1
+ System.register(["lit"],function(_export,_context){"use strict";var e,_templateObject,o;function _taggedTemplateLiteral(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}));}return{setters:[function(_lit){e=_lit.css;}],execute:function execute(){_export("s",o=e(_templateObject||(_templateObject=_taggedTemplateLiteral(["\n /* Host positioning for overlays */\n nile-rich-text-editor { position: relative; display: block; font-family: inherit; }\n\n \nnile-rte-toolbar-item > nile-button::part(base) {\n \n width:32px; height:32px; padding:0px 6px;\n border: none;\n}\n \n \n\n\n .toolbar, nile-rte-toolbar {\n display:flex; align-items:center; gap:8px; padding:8px; \n border:1px solid #e5e7eb; border-bottom:none; border-radius:8px 8px 0 0; background:#fff;\n }\n\n nile-rte-toolbar-item > button, .toolbar button, nile-rte-toolbar button {\n border:1px solid #e5e7eb; background:#fff; border-radius:6px;\n cursor:pointer;\n }\n\n \n /* Ensure clicks hit the button (not nested icon internals) */\n nile-rte-toolbar-item > button nile-icon { pointer-events:none; }\n\n nile-rte-toolbar-item > button.active { border-color:#2563eb; background:#eff6ff; }\n nile-rte-select select { height:32px; border:1px solid #e5e7eb; border-radius:6px; background:#fff; }\n nile-rte-color input[type=\"color\"] { height:32px; width:36px; border:1px solid #e5e7eb; padding:0; border-radius:6px; background:#fff; }\n nile-rte-divider { width:1px; height:20px; background:#e5e7eb; display:inline-block; margin:0 4px; }\n\n .editor p { margin:1em 0; }\n .editor h1 { font-size:2em }\n .editor h2 { font-size:1.5em }\n .editor h3 { font-size:1.17em }\n .editor h4 { font-size:1em }\n .editor h5 { font-size:0.83em }\n .editor h6 { font-size:0.67em }\n\n .editor { min-height:160px; padding:12px; border:1px solid #e5e7eb; border-radius:0 0 8px 8px; background:#fff; outline:none; }\n nile-rte-preview { display:block; margin-top:10px; padding:10px; border:1px dashed #cbd5e1; border-radius:8px; background:#fafafa; }\n"]))));}};});
2
2
  //# sourceMappingURL=nile-rich-text-editor.css.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-rich-text-editor.css.cjs.js","sources":["../../../src/nile-rich-text-editor/nile-rich-text-editor.css.ts"],"sourcesContent":["/**\n* Copyright Aquera Inc 2023\n*\n* This source code is licensed under the BSD-3-Clause license found in the\n* LICENSE file in the root directory of this source tree.\n*/\n\nimport {css} from 'lit';\n\n/**\n * RichTextEditor CSS\n */\nexport const styles = css`\n\t:host {\n\n\t},\n\n\n`;\n\nexport default [styles];"],"names":["css","_templateObject","_taggedTemplateLiteral"],"mappings":"sSAYsBA,CAAG,CAAAC,eAAA,GAAAA,eAAA,CAAAC,sBAAA"}
1
+ {"version":3,"file":"nile-rich-text-editor.css.cjs.js","sources":["../../../src/nile-rich-text-editor/nile-rich-text-editor.css.ts"],"sourcesContent":["// rte-styles.ts\nimport { css } from 'lit';\n\nexport const styles = css`\n /* Host positioning for overlays */\n nile-rich-text-editor { position: relative; display: block; font-family: inherit; }\n\n \nnile-rte-toolbar-item > nile-button::part(base) {\n \n width:32px; height:32px; padding:0px 6px;\n border: none;\n}\n \n \n\n\n .toolbar, nile-rte-toolbar {\n display:flex; align-items:center; gap:8px; padding:8px; \n border:1px solid #e5e7eb; border-bottom:none; border-radius:8px 8px 0 0; background:#fff;\n }\n\n nile-rte-toolbar-item > button, .toolbar button, nile-rte-toolbar button {\n border:1px solid #e5e7eb; background:#fff; border-radius:6px;\n cursor:pointer;\n }\n\n \n /* Ensure clicks hit the button (not nested icon internals) */\n nile-rte-toolbar-item > button nile-icon { pointer-events:none; }\n\n nile-rte-toolbar-item > button.active { border-color:#2563eb; background:#eff6ff; }\n nile-rte-select select { height:32px; border:1px solid #e5e7eb; border-radius:6px; background:#fff; }\n nile-rte-color input[type=\"color\"] { height:32px; width:36px; border:1px solid #e5e7eb; padding:0; border-radius:6px; background:#fff; }\n nile-rte-divider { width:1px; height:20px; background:#e5e7eb; display:inline-block; margin:0 4px; }\n\n .editor p { margin:1em 0; }\n .editor h1 { font-size:2em }\n .editor h2 { font-size:1.5em }\n .editor h3 { font-size:1.17em }\n .editor h4 { font-size:1em }\n .editor h5 { font-size:0.83em }\n .editor h6 { font-size:0.67em }\n\n .editor { min-height:160px; padding:12px; border:1px solid #e5e7eb; border-radius:0 0 8px 8px; background:#fff; outline:none; }\n nile-rte-preview { display:block; margin-top:10px; padding:10px; border:1px dashed #cbd5e1; border-radius:8px; background:#fafafa; }\n`;\n\nexport default [styles];"],"names":["styles","css","_templateObject","_taggedTemplateLiteral"],"mappings":"oTAGaA,CAAAA,CAASC,CAAG,CAAAC,eAAA,GAAAA,eAAA,CAAAC,sBAAA"}
@@ -1,7 +1,44 @@
1
- import{css as o}from"lit";o`
2
- :host {
1
+ import{css as e}from"lit";const o=e`
2
+ /* Host positioning for overlays */
3
+ nile-rich-text-editor { position: relative; display: block; font-family: inherit; }
3
4
 
4
- },
5
+
6
+ nile-rte-toolbar-item > nile-button::part(base) {
7
+
8
+ width:32px; height:32px; padding:0px 6px;
9
+ border: none;
10
+ }
11
+
12
+
5
13
 
6
14
 
7
- `;
15
+ .toolbar, nile-rte-toolbar {
16
+ display:flex; align-items:center; gap:8px; padding:8px;
17
+ border:1px solid #e5e7eb; border-bottom:none; border-radius:8px 8px 0 0; background:#fff;
18
+ }
19
+
20
+ nile-rte-toolbar-item > button, .toolbar button, nile-rte-toolbar button {
21
+ border:1px solid #e5e7eb; background:#fff; border-radius:6px;
22
+ cursor:pointer;
23
+ }
24
+
25
+
26
+ /* Ensure clicks hit the button (not nested icon internals) */
27
+ nile-rte-toolbar-item > button nile-icon { pointer-events:none; }
28
+
29
+ nile-rte-toolbar-item > button.active { border-color:#2563eb; background:#eff6ff; }
30
+ nile-rte-select select { height:32px; border:1px solid #e5e7eb; border-radius:6px; background:#fff; }
31
+ nile-rte-color input[type="color"] { height:32px; width:36px; border:1px solid #e5e7eb; padding:0; border-radius:6px; background:#fff; }
32
+ nile-rte-divider { width:1px; height:20px; background:#e5e7eb; display:inline-block; margin:0 4px; }
33
+
34
+ .editor p { margin:1em 0; }
35
+ .editor h1 { font-size:2em }
36
+ .editor h2 { font-size:1.5em }
37
+ .editor h3 { font-size:1.17em }
38
+ .editor h4 { font-size:1em }
39
+ .editor h5 { font-size:0.83em }
40
+ .editor h6 { font-size:0.67em }
41
+
42
+ .editor { min-height:160px; padding:12px; border:1px solid #e5e7eb; border-radius:0 0 8px 8px; background:#fff; outline:none; }
43
+ nile-rte-preview { display:block; margin-top:10px; padding:10px; border:1px dashed #cbd5e1; border-radius:8px; background:#fafafa; }
44
+ `;export{o as s};