@nldd/design-system 0.8.64 → 0.8.66

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 (509) hide show
  1. package/dist/components/actions/button/button.d.ts.map +1 -1
  2. package/dist/components/actions/button/button.js +7 -6
  3. package/dist/components/actions/button/button.js.map +1 -1
  4. package/dist/components/actions/button/button.styles.d.ts.map +1 -1
  5. package/dist/components/actions/button/button.styles.js +9 -5
  6. package/dist/components/actions/button/button.styles.js.map +1 -1
  7. package/dist/components/actions/button-bar/button-bar.d.ts.map +1 -1
  8. package/dist/components/actions/button-bar/button-bar.js +3 -2
  9. package/dist/components/actions/button-bar/button-bar.js.map +1 -1
  10. package/dist/components/actions/button-group/button-group.d.ts.map +1 -1
  11. package/dist/components/actions/button-group/button-group.js +3 -2
  12. package/dist/components/actions/button-group/button-group.js.map +1 -1
  13. package/dist/components/actions/icon-button/icon-button.d.ts +4 -0
  14. package/dist/components/actions/icon-button/icon-button.d.ts.map +1 -1
  15. package/dist/components/actions/icon-button/icon-button.js +13 -5
  16. package/dist/components/actions/icon-button/icon-button.js.map +1 -1
  17. package/dist/components/actions/icon-button/icon-button.styles.d.ts.map +1 -1
  18. package/dist/components/actions/icon-button/icon-button.styles.js +15 -10
  19. package/dist/components/actions/icon-button/icon-button.styles.js.map +1 -1
  20. package/dist/components/actions/icon-button/icon-button.template.d.ts.map +1 -1
  21. package/dist/components/actions/icon-button/icon-button.template.js +2 -0
  22. package/dist/components/actions/icon-button/icon-button.template.js.map +1 -1
  23. package/dist/components/actions/menu/menu.d.ts +1 -0
  24. package/dist/components/actions/menu/menu.d.ts.map +1 -1
  25. package/dist/components/actions/menu/menu.js +33 -15
  26. package/dist/components/actions/menu/menu.js.map +1 -1
  27. package/dist/components/actions/menu/menu.styles.d.ts.map +1 -1
  28. package/dist/components/actions/menu/menu.styles.js +8 -0
  29. package/dist/components/actions/menu/menu.styles.js.map +1 -1
  30. package/dist/components/actions/split-button/split-button.d.ts.map +1 -1
  31. package/dist/components/actions/split-button/split-button.js +5 -4
  32. package/dist/components/actions/split-button/split-button.js.map +1 -1
  33. package/dist/components/actions/toolbar/toolbar.d.ts +15 -2
  34. package/dist/components/actions/toolbar/toolbar.d.ts.map +1 -1
  35. package/dist/components/actions/toolbar/toolbar.js +116 -42
  36. package/dist/components/actions/toolbar/toolbar.js.map +1 -1
  37. package/dist/components/actions/toolbar/toolbar.styles.d.ts.map +1 -1
  38. package/dist/components/actions/toolbar/toolbar.styles.js +33 -18
  39. package/dist/components/actions/toolbar/toolbar.styles.js.map +1 -1
  40. package/dist/components/actions/toolbar/toolbar.template.d.ts.map +1 -1
  41. package/dist/components/actions/toolbar/toolbar.template.js +5 -2
  42. package/dist/components/actions/toolbar/toolbar.template.js.map +1 -1
  43. package/dist/components/components.js +104 -102
  44. package/dist/components/content/blockquote/blockquote.styles.d.ts.map +1 -1
  45. package/dist/components/content/blockquote/blockquote.styles.js +0 -3
  46. package/dist/components/content/blockquote/blockquote.styles.js.map +1 -1
  47. package/dist/components/content/byline/byline.d.ts.map +1 -1
  48. package/dist/components/content/byline/byline.js +3 -2
  49. package/dist/components/content/byline/byline.js.map +1 -1
  50. package/dist/components/content/code-viewer/code-viewer.d.ts +24 -64
  51. package/dist/components/content/code-viewer/code-viewer.d.ts.map +1 -1
  52. package/dist/components/content/code-viewer/code-viewer.js +239 -156
  53. package/dist/components/content/code-viewer/code-viewer.js.map +1 -1
  54. package/dist/components/content/code-viewer/code-viewer.styles.d.ts.map +1 -1
  55. package/dist/components/content/code-viewer/code-viewer.styles.js +33 -92
  56. package/dist/components/content/code-viewer/code-viewer.styles.js.map +1 -1
  57. package/dist/components/content/code-viewer/code-viewer.template.d.ts.map +1 -1
  58. package/dist/components/content/code-viewer/code-viewer.template.js +10 -29
  59. package/dist/components/content/code-viewer/code-viewer.template.js.map +1 -1
  60. package/dist/components/content/icon/icon-aliases.d.ts.map +1 -1
  61. package/dist/components/content/icon/icon-aliases.js +43 -8
  62. package/dist/components/content/icon/icon-aliases.js.map +1 -1
  63. package/dist/components/content/icon/icon-registry.d.ts.map +1 -1
  64. package/dist/components/content/icon/icon-registry.js +34 -4
  65. package/dist/components/content/icon/icon-registry.js.map +1 -1
  66. package/dist/components/content/icon/icon.d.ts.map +1 -1
  67. package/dist/components/content/icon/icon.js +3 -2
  68. package/dist/components/content/icon/icon.js.map +1 -1
  69. package/dist/components/content/image/image.d.ts.map +1 -1
  70. package/dist/components/content/image/image.js +7 -6
  71. package/dist/components/content/image/image.js.map +1 -1
  72. package/dist/components/content/image/image.styles.d.ts.map +1 -1
  73. package/dist/components/content/image/image.styles.js +2 -6
  74. package/dist/components/content/image/image.styles.js.map +1 -1
  75. package/dist/components/content/keyboard-shortcut/keyboard-shortcut.d.ts.map +1 -1
  76. package/dist/components/content/keyboard-shortcut/keyboard-shortcut.js +8 -7
  77. package/dist/components/content/keyboard-shortcut/keyboard-shortcut.js.map +1 -1
  78. package/dist/components/content/keyboard-shortcut/keyboard-shortcut.styles.d.ts.map +1 -1
  79. package/dist/components/content/keyboard-shortcut/keyboard-shortcut.styles.js +5 -1
  80. package/dist/components/content/keyboard-shortcut/keyboard-shortcut.styles.js.map +1 -1
  81. package/dist/components/content/rich-text/rich-text.d.ts.map +1 -1
  82. package/dist/components/content/rich-text/rich-text.js +3 -2
  83. package/dist/components/content/rich-text/rich-text.js.map +1 -1
  84. package/dist/components/content/tag/tag.d.ts.map +1 -1
  85. package/dist/components/content/tag/tag.js +5 -4
  86. package/dist/components/content/tag/tag.js.map +1 -1
  87. package/dist/components/content/title/title.d.ts.map +1 -1
  88. package/dist/components/content/title/title.js +2 -1
  89. package/dist/components/content/title/title.js.map +1 -1
  90. package/dist/components/content/token/token.d.ts +70 -0
  91. package/dist/components/content/token/token.d.ts.map +1 -0
  92. package/dist/components/content/token/token.js +170 -0
  93. package/dist/components/content/token/token.js.map +1 -0
  94. package/dist/components/content/token/token.styles.d.ts.map +1 -0
  95. package/dist/components/content/token/token.styles.js +122 -0
  96. package/dist/components/content/token/token.styles.js.map +1 -0
  97. package/dist/components/content/token/token.template.d.ts +6 -0
  98. package/dist/components/content/token/token.template.d.ts.map +1 -0
  99. package/dist/components/content/token/token.template.js +47 -0
  100. package/dist/components/content/token/token.template.js.map +1 -0
  101. package/dist/components/content/tooltip/tooltip.d.ts.map +1 -1
  102. package/dist/components/content/tooltip/tooltip.js +14 -5
  103. package/dist/components/content/tooltip/tooltip.js.map +1 -1
  104. package/dist/components/content/tooltip/tooltip.styles.d.ts.map +1 -1
  105. package/dist/components/content/tooltip/tooltip.styles.js +11 -0
  106. package/dist/components/content/tooltip/tooltip.styles.js.map +1 -1
  107. package/dist/components/gherkin-DhZlEZiy.js +115 -0
  108. package/dist/components/index-Bfw_pYWB.js +405 -0
  109. package/dist/components/index-Bqf6o41r.js +81 -0
  110. package/dist/components/index-CKnwqp_9.js +688 -0
  111. package/dist/components/index-CXT1jMFt.js +384 -0
  112. package/dist/components/index-DO7aT0MT.js +177 -0
  113. package/dist/components/index-DWwviobk.js +703 -0
  114. package/dist/components/index-DjsXjoZJ.js +67143 -0
  115. package/dist/components/index.d.ts +20 -18
  116. package/dist/components/index.d.ts.map +1 -1
  117. package/dist/components/index.js +20 -18
  118. package/dist/components/index.js.map +1 -1
  119. package/dist/components/inputs/code-editor/code-editor.d.ts +58 -29
  120. package/dist/components/inputs/code-editor/code-editor.d.ts.map +1 -1
  121. package/dist/components/inputs/code-editor/code-editor.js +241 -52
  122. package/dist/components/inputs/code-editor/code-editor.js.map +1 -1
  123. package/dist/components/inputs/code-editor/code-editor.styles.d.ts.map +1 -1
  124. package/dist/components/inputs/code-editor/code-editor.styles.js +58 -46
  125. package/dist/components/inputs/code-editor/code-editor.styles.js.map +1 -1
  126. package/dist/components/inputs/code-editor/code-editor.template.d.ts +1 -1
  127. package/dist/components/inputs/code-editor/code-editor.template.d.ts.map +1 -1
  128. package/dist/components/inputs/code-editor/code-editor.template.js +5 -22
  129. package/dist/components/inputs/code-editor/code-editor.template.js.map +1 -1
  130. package/dist/components/inputs/combo-box/combo-box.d.ts +15 -4
  131. package/dist/components/inputs/combo-box/combo-box.d.ts.map +1 -1
  132. package/dist/components/inputs/combo-box/combo-box.js +53 -9
  133. package/dist/components/inputs/combo-box/combo-box.js.map +1 -1
  134. package/dist/components/inputs/dropdown/dropdown.d.ts.map +1 -1
  135. package/dist/components/inputs/dropdown/dropdown.js +2 -1
  136. package/dist/components/inputs/dropdown/dropdown.js.map +1 -1
  137. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.d.ts +1 -1
  138. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.d.ts.map +1 -1
  139. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.js +6 -5
  140. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.js.map +1 -1
  141. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.d.ts.map +1 -1
  142. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.js +8 -11
  143. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.js.map +1 -1
  144. package/dist/components/inputs/number-field/number-field.d.ts.map +1 -1
  145. package/dist/components/inputs/number-field/number-field.js +2 -1
  146. package/dist/components/inputs/number-field/number-field.js.map +1 -1
  147. package/dist/components/inputs/password-field/password-field.d.ts.map +1 -1
  148. package/dist/components/inputs/password-field/password-field.js +3 -2
  149. package/dist/components/inputs/password-field/password-field.js.map +1 -1
  150. package/dist/components/inputs/radio-button-group/radio-button-group.js +1 -1
  151. package/dist/components/inputs/radio-button-group/radio-button-group.js.map +1 -1
  152. package/dist/components/inputs/search-field/search-field.d.ts.map +1 -1
  153. package/dist/components/inputs/search-field/search-field.js +2 -1
  154. package/dist/components/inputs/search-field/search-field.js.map +1 -1
  155. package/dist/components/inputs/segmented-control/segmented-control.d.ts +1 -1
  156. package/dist/components/inputs/segmented-control/segmented-control.d.ts.map +1 -1
  157. package/dist/components/inputs/segmented-control/segmented-control.js +10 -9
  158. package/dist/components/inputs/segmented-control/segmented-control.js.map +1 -1
  159. package/dist/components/inputs/segmented-control/segmented-control.styles.d.ts.map +1 -1
  160. package/dist/components/inputs/segmented-control/segmented-control.styles.js +70 -36
  161. package/dist/components/inputs/segmented-control/segmented-control.styles.js.map +1 -1
  162. package/dist/components/inputs/stepper/stepper.d.ts.map +1 -1
  163. package/dist/components/inputs/stepper/stepper.js +2 -1
  164. package/dist/components/inputs/stepper/stepper.js.map +1 -1
  165. package/dist/components/inputs/switch/switch.d.ts.map +1 -1
  166. package/dist/components/inputs/switch/switch.js +2 -1
  167. package/dist/components/inputs/switch/switch.js.map +1 -1
  168. package/dist/components/inputs/text-editor/text-editor.annotation-sentinels.d.ts +51 -0
  169. package/dist/components/inputs/text-editor/text-editor.annotation-sentinels.d.ts.map +1 -0
  170. package/dist/components/inputs/text-editor/text-editor.annotation-sentinels.js +148 -0
  171. package/dist/components/inputs/text-editor/text-editor.annotation-sentinels.js.map +1 -0
  172. package/dist/components/inputs/text-editor/text-editor.annotations.d.ts +47 -0
  173. package/dist/components/inputs/text-editor/text-editor.annotations.d.ts.map +1 -0
  174. package/dist/components/inputs/text-editor/text-editor.annotations.js +327 -0
  175. package/dist/components/inputs/text-editor/text-editor.annotations.js.map +1 -0
  176. package/dist/components/inputs/text-editor/text-editor.caret.d.ts +13 -0
  177. package/dist/components/inputs/text-editor/text-editor.caret.d.ts.map +1 -0
  178. package/dist/components/inputs/text-editor/text-editor.caret.js +27 -0
  179. package/dist/components/inputs/text-editor/text-editor.caret.js.map +1 -0
  180. package/dist/components/inputs/text-editor/text-editor.commands.d.ts +68 -0
  181. package/dist/components/inputs/text-editor/text-editor.commands.d.ts.map +1 -0
  182. package/dist/components/inputs/text-editor/text-editor.commands.js +420 -0
  183. package/dist/components/inputs/text-editor/text-editor.commands.js.map +1 -0
  184. package/dist/components/inputs/text-editor/text-editor.d.ts +241 -0
  185. package/dist/components/inputs/text-editor/text-editor.d.ts.map +1 -0
  186. package/dist/components/inputs/text-editor/text-editor.drag.d.ts +30 -0
  187. package/dist/components/inputs/text-editor/text-editor.drag.d.ts.map +1 -0
  188. package/dist/components/inputs/text-editor/text-editor.drag.js +231 -0
  189. package/dist/components/inputs/text-editor/text-editor.drag.js.map +1 -0
  190. package/dist/components/inputs/text-editor/text-editor.i18n.d.ts +8 -0
  191. package/dist/components/inputs/text-editor/text-editor.i18n.d.ts.map +1 -0
  192. package/dist/components/inputs/text-editor/text-editor.i18n.js +13 -0
  193. package/dist/components/inputs/text-editor/text-editor.i18n.js.map +1 -0
  194. package/dist/components/inputs/text-editor/text-editor.js +780 -0
  195. package/dist/components/inputs/text-editor/text-editor.js.map +1 -0
  196. package/dist/components/inputs/text-editor/text-editor.links.d.ts +18 -0
  197. package/dist/components/inputs/text-editor/text-editor.links.d.ts.map +1 -0
  198. package/dist/components/inputs/text-editor/text-editor.links.js +147 -0
  199. package/dist/components/inputs/text-editor/text-editor.links.js.map +1 -0
  200. package/dist/components/inputs/text-editor/text-editor.markdown.d.ts +20 -0
  201. package/dist/components/inputs/text-editor/text-editor.markdown.d.ts.map +1 -0
  202. package/dist/components/inputs/text-editor/text-editor.markdown.js +372 -0
  203. package/dist/components/inputs/text-editor/text-editor.markdown.js.map +1 -0
  204. package/dist/components/inputs/text-editor/text-editor.mentions.d.ts +32 -0
  205. package/dist/components/inputs/text-editor/text-editor.mentions.d.ts.map +1 -0
  206. package/dist/components/inputs/text-editor/text-editor.mentions.js +153 -0
  207. package/dist/components/inputs/text-editor/text-editor.mentions.js.map +1 -0
  208. package/dist/components/inputs/text-editor/text-editor.ordered-list.d.ts +12 -0
  209. package/dist/components/inputs/text-editor/text-editor.ordered-list.d.ts.map +1 -0
  210. package/dist/components/inputs/text-editor/text-editor.ordered-list.js +106 -0
  211. package/dist/components/inputs/text-editor/text-editor.ordered-list.js.map +1 -0
  212. package/dist/components/inputs/text-editor/text-editor.styles.d.ts +2 -0
  213. package/dist/components/inputs/text-editor/text-editor.styles.d.ts.map +1 -0
  214. package/dist/components/inputs/text-editor/text-editor.styles.js +592 -0
  215. package/dist/components/inputs/text-editor/text-editor.styles.js.map +1 -0
  216. package/dist/components/inputs/text-editor/text-editor.template.d.ts +4 -0
  217. package/dist/components/inputs/text-editor/text-editor.template.d.ts.map +1 -0
  218. package/dist/components/inputs/text-editor/text-editor.template.js +7 -0
  219. package/dist/components/inputs/text-editor/text-editor.template.js.map +1 -0
  220. package/dist/components/inputs/text-field/text-field.d.ts.map +1 -1
  221. package/dist/components/inputs/text-field/text-field.js +3 -2
  222. package/dist/components/inputs/text-field/text-field.js.map +1 -1
  223. package/dist/components/inputs/toggle-button/toggle-button.d.ts.map +1 -1
  224. package/dist/components/inputs/toggle-button/toggle-button.js +4 -3
  225. package/dist/components/inputs/toggle-button/toggle-button.js.map +1 -1
  226. package/dist/components/inputs/toggle-button/toggle-button.styles.d.ts.map +1 -1
  227. package/dist/components/inputs/toggle-button/toggle-button.styles.js +14 -10
  228. package/dist/components/inputs/toggle-button/toggle-button.styles.js.map +1 -1
  229. package/dist/components/inputs/toggle-button-group/toggle-button-group.d.ts +1 -1
  230. package/dist/components/inputs/toggle-button-group/toggle-button-group.d.ts.map +1 -1
  231. package/dist/components/inputs/toggle-button-group/toggle-button-group.js +5 -4
  232. package/dist/components/inputs/toggle-button-group/toggle-button-group.js.map +1 -1
  233. package/dist/components/inputs/token-field/token-field.d.ts +257 -0
  234. package/dist/components/inputs/token-field/token-field.d.ts.map +1 -0
  235. package/dist/components/inputs/token-field/token-field.i18n.d.ts +9 -0
  236. package/dist/components/inputs/token-field/token-field.i18n.d.ts.map +1 -0
  237. package/dist/components/inputs/token-field/token-field.i18n.js +8 -0
  238. package/dist/components/inputs/token-field/token-field.i18n.js.map +1 -0
  239. package/dist/components/inputs/token-field/token-field.js +889 -0
  240. package/dist/components/inputs/token-field/token-field.js.map +1 -0
  241. package/dist/components/inputs/token-field/token-field.styles.d.ts +2 -0
  242. package/dist/components/inputs/token-field/token-field.styles.d.ts.map +1 -0
  243. package/dist/components/inputs/token-field/token-field.styles.js +194 -0
  244. package/dist/components/inputs/token-field/token-field.styles.js.map +1 -0
  245. package/dist/components/inputs/token-field/token-field.template.d.ts +8 -0
  246. package/dist/components/inputs/token-field/token-field.template.d.ts.map +1 -0
  247. package/dist/components/inputs/token-field/token-field.template.js +136 -0
  248. package/dist/components/inputs/token-field/token-field.template.js.map +1 -0
  249. package/dist/components/layout/app-view/app-view.d.ts +26 -6
  250. package/dist/components/layout/app-view/app-view.d.ts.map +1 -1
  251. package/dist/components/layout/app-view/app-view.js +103 -12
  252. package/dist/components/layout/app-view/app-view.js.map +1 -1
  253. package/dist/components/layout/app-view/app-view.styles.d.ts.map +1 -1
  254. package/dist/components/layout/app-view/app-view.styles.js +25 -0
  255. package/dist/components/layout/app-view/app-view.styles.js.map +1 -1
  256. package/dist/components/layout/box/box.d.ts.map +1 -1
  257. package/dist/components/layout/box/box.js +2 -1
  258. package/dist/components/layout/box/box.js.map +1 -1
  259. package/dist/components/layout/box/box.styles.d.ts.map +1 -1
  260. package/dist/components/layout/box/box.styles.js +1 -6
  261. package/dist/components/layout/box/box.styles.js.map +1 -1
  262. package/dist/components/layout/collection/collection.d.ts +5 -0
  263. package/dist/components/layout/collection/collection.d.ts.map +1 -1
  264. package/dist/components/layout/collection/collection.js +17 -1
  265. package/dist/components/layout/collection/collection.js.map +1 -1
  266. package/dist/components/layout/collection/collection.styles.d.ts.map +1 -1
  267. package/dist/components/layout/collection/collection.styles.js +18 -17
  268. package/dist/components/layout/collection/collection.styles.js.map +1 -1
  269. package/dist/components/layout/page/page.d.ts +31 -1
  270. package/dist/components/layout/page/page.d.ts.map +1 -1
  271. package/dist/components/layout/page/page.js +112 -26
  272. package/dist/components/layout/page/page.js.map +1 -1
  273. package/dist/components/layout/page/page.styles.d.ts.map +1 -1
  274. package/dist/components/layout/page/page.styles.js +48 -0
  275. package/dist/components/layout/page/page.styles.js.map +1 -1
  276. package/dist/components/layout/page-footer/page-footer.d.ts.map +1 -1
  277. package/dist/components/layout/page-footer/page-footer.js +2 -1
  278. package/dist/components/layout/page-footer/page-footer.js.map +1 -1
  279. package/dist/components/layout/page-sections/hero/hero.d.ts +7 -23
  280. package/dist/components/layout/page-sections/hero/hero.d.ts.map +1 -1
  281. package/dist/components/layout/page-sections/hero/hero.js +12 -73
  282. package/dist/components/layout/page-sections/hero/hero.js.map +1 -1
  283. package/dist/components/layout/page-sections/hero/hero.styles.d.ts.map +1 -1
  284. package/dist/components/layout/page-sections/hero/hero.styles.js +13 -159
  285. package/dist/components/layout/page-sections/hero/hero.styles.js.map +1 -1
  286. package/dist/components/layout/popover/popover.d.ts +1 -0
  287. package/dist/components/layout/popover/popover.d.ts.map +1 -1
  288. package/dist/components/layout/popover/popover.js +14 -1
  289. package/dist/components/layout/popover/popover.js.map +1 -1
  290. package/dist/components/layout/popover/popover.styles.d.ts.map +1 -1
  291. package/dist/components/layout/popover/popover.styles.js +11 -0
  292. package/dist/components/layout/popover/popover.styles.js.map +1 -1
  293. package/dist/components/layout/sheet/sheet.d.ts +5 -1
  294. package/dist/components/layout/sheet/sheet.d.ts.map +1 -1
  295. package/dist/components/layout/sheet/sheet.js +20 -6
  296. package/dist/components/layout/sheet/sheet.js.map +1 -1
  297. package/dist/components/layout/sheet/sheet.styles.d.ts.map +1 -1
  298. package/dist/components/layout/sheet/sheet.styles.js +60 -83
  299. package/dist/components/layout/sheet/sheet.styles.js.map +1 -1
  300. package/dist/components/layout/spacer/spacer.d.ts.map +1 -1
  301. package/dist/components/layout/spacer/spacer.js +2 -1
  302. package/dist/components/layout/spacer/spacer.js.map +1 -1
  303. package/dist/components/layout/spacer/spacer.styles.d.ts.map +1 -1
  304. package/dist/components/layout/spacer/spacer.styles.js +0 -1
  305. package/dist/components/layout/spacer/spacer.styles.js.map +1 -1
  306. package/dist/components/layout/split-views/bar-split-view/bar-split-view.d.ts +3 -0
  307. package/dist/components/layout/split-views/bar-split-view/bar-split-view.d.ts.map +1 -1
  308. package/dist/components/layout/split-views/bar-split-view/bar-split-view.js +49 -0
  309. package/dist/components/layout/split-views/bar-split-view/bar-split-view.js.map +1 -1
  310. package/dist/components/layout/split-views/bar-split-view/bar-split-view.styles.d.ts.map +1 -1
  311. package/dist/components/layout/split-views/bar-split-view/bar-split-view.styles.js +55 -0
  312. package/dist/components/layout/split-views/bar-split-view/bar-split-view.styles.js.map +1 -1
  313. package/dist/components/layout/split-views/bar-split-view/bar-split-view.template.d.ts.map +1 -1
  314. package/dist/components/layout/split-views/bar-split-view/bar-split-view.template.js +18 -9
  315. package/dist/components/layout/split-views/bar-split-view/bar-split-view.template.js.map +1 -1
  316. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.d.ts +8 -0
  317. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.d.ts.map +1 -1
  318. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.js +21 -0
  319. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.js.map +1 -1
  320. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.styles.d.ts.map +1 -1
  321. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.styles.js +34 -0
  322. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.styles.js.map +1 -1
  323. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.template.d.ts.map +1 -1
  324. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.template.js +17 -7
  325. package/dist/components/layout/split-views/navigation-split-view/navigation-split-view.template.js.map +1 -1
  326. package/dist/components/layout/split-views/side-by-side-split-view/side-by-side-split-view.d.ts +6 -0
  327. package/dist/components/layout/split-views/side-by-side-split-view/side-by-side-split-view.d.ts.map +1 -1
  328. package/dist/components/layout/split-views/side-by-side-split-view/side-by-side-split-view.js +17 -0
  329. package/dist/components/layout/split-views/side-by-side-split-view/side-by-side-split-view.js.map +1 -1
  330. package/dist/components/layout/split-views/split-view-divider/split-view-divider.d.ts.map +1 -1
  331. package/dist/components/layout/split-views/split-view-divider/split-view-divider.js +2 -1
  332. package/dist/components/layout/split-views/split-view-divider/split-view-divider.js.map +1 -1
  333. package/dist/components/layout/split-views/split-view-divider/split-view-divider.styles.js +10 -10
  334. package/dist/components/layout/split-views/split-view-pane/split-view-pane.d.ts +10 -0
  335. package/dist/components/layout/split-views/split-view-pane/split-view-pane.d.ts.map +1 -1
  336. package/dist/components/layout/split-views/split-view-pane/split-view-pane.js +13 -0
  337. package/dist/components/layout/split-views/split-view-pane/split-view-pane.js.map +1 -1
  338. package/dist/components/layout/split-views/split-view-pane/split-view-pane.styles.d.ts.map +1 -1
  339. package/dist/components/layout/split-views/split-view-pane/split-view-pane.styles.js +19 -0
  340. package/dist/components/layout/split-views/split-view-pane/split-view-pane.styles.js.map +1 -1
  341. package/dist/components/layout/window/window.d.ts.map +1 -1
  342. package/dist/components/layout/window/window.js +11 -2
  343. package/dist/components/layout/window/window.js.map +1 -1
  344. package/dist/components/lists-and-tables/cells/cell/cell.d.ts.map +1 -1
  345. package/dist/components/lists-and-tables/cells/cell/cell.js +4 -3
  346. package/dist/components/lists-and-tables/cells/cell/cell.js.map +1 -1
  347. package/dist/components/lists-and-tables/cells/description-cell/description-cell.d.ts.map +1 -1
  348. package/dist/components/lists-and-tables/cells/description-cell/description-cell.js +3 -2
  349. package/dist/components/lists-and-tables/cells/description-cell/description-cell.js.map +1 -1
  350. package/dist/components/lists-and-tables/cells/drag-handle-cell/drag-handle-cell.d.ts.map +1 -1
  351. package/dist/components/lists-and-tables/cells/drag-handle-cell/drag-handle-cell.js +2 -1
  352. package/dist/components/lists-and-tables/cells/drag-handle-cell/drag-handle-cell.js.map +1 -1
  353. package/dist/components/lists-and-tables/cells/icon-cell/icon-cell.d.ts.map +1 -1
  354. package/dist/components/lists-and-tables/cells/icon-cell/icon-cell.js +3 -2
  355. package/dist/components/lists-and-tables/cells/icon-cell/icon-cell.js.map +1 -1
  356. package/dist/components/lists-and-tables/cells/text-cell/text-cell.d.ts.map +1 -1
  357. package/dist/components/lists-and-tables/cells/text-cell/text-cell.js +10 -9
  358. package/dist/components/lists-and-tables/cells/text-cell/text-cell.js.map +1 -1
  359. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.d.ts.map +1 -1
  360. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.js +3 -2
  361. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.js.map +1 -1
  362. package/dist/components/lists-and-tables/cells/title-cell/title-cell.d.ts.map +1 -1
  363. package/dist/components/lists-and-tables/cells/title-cell/title-cell.js +9 -8
  364. package/dist/components/lists-and-tables/cells/title-cell/title-cell.js.map +1 -1
  365. package/dist/components/lists-and-tables/list/list.d.ts.map +1 -1
  366. package/dist/components/lists-and-tables/list/list.js +5 -4
  367. package/dist/components/lists-and-tables/list/list.js.map +1 -1
  368. package/dist/components/lists-and-tables/list/list.styles.d.ts.map +1 -1
  369. package/dist/components/lists-and-tables/list/list.styles.js +3 -2
  370. package/dist/components/lists-and-tables/list/list.styles.js.map +1 -1
  371. package/dist/components/lists-and-tables/list-item/list-item.d.ts.map +1 -1
  372. package/dist/components/lists-and-tables/list-item/list-item.js +2 -1
  373. package/dist/components/lists-and-tables/list-item/list-item.js.map +1 -1
  374. package/dist/components/lists-and-tables/table/table.d.ts.map +1 -1
  375. package/dist/components/lists-and-tables/table/table.js +4 -3
  376. package/dist/components/lists-and-tables/table/table.js.map +1 -1
  377. package/dist/components/navigation/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  378. package/dist/components/navigation/breadcrumbs/breadcrumbs.js +2 -1
  379. package/dist/components/navigation/breadcrumbs/breadcrumbs.js.map +1 -1
  380. package/dist/components/navigation/document-tab-bar/document-tab-bar.d.ts.map +1 -1
  381. package/dist/components/navigation/document-tab-bar/document-tab-bar.js +5 -4
  382. package/dist/components/navigation/document-tab-bar/document-tab-bar.js.map +1 -1
  383. package/dist/components/navigation/link/link.d.ts.map +1 -1
  384. package/dist/components/navigation/link/link.js +2 -1
  385. package/dist/components/navigation/link/link.js.map +1 -1
  386. package/dist/components/navigation/menu-bar/menu-bar.d.ts.map +1 -1
  387. package/dist/components/navigation/menu-bar/menu-bar.js +2 -1
  388. package/dist/components/navigation/menu-bar/menu-bar.js.map +1 -1
  389. package/dist/components/navigation/menu-bar-item/menu-bar-item.d.ts.map +1 -1
  390. package/dist/components/navigation/menu-bar-item/menu-bar-item.js +4 -3
  391. package/dist/components/navigation/menu-bar-item/menu-bar-item.js.map +1 -1
  392. package/dist/components/navigation/skip-link/skip-link.d.ts.map +1 -1
  393. package/dist/components/navigation/skip-link/skip-link.js +2 -1
  394. package/dist/components/navigation/skip-link/skip-link.js.map +1 -1
  395. package/dist/components/navigation/tab-bar/tab-bar.d.ts +7 -0
  396. package/dist/components/navigation/tab-bar/tab-bar.d.ts.map +1 -1
  397. package/dist/components/navigation/tab-bar/tab-bar.js +31 -5
  398. package/dist/components/navigation/tab-bar/tab-bar.js.map +1 -1
  399. package/dist/components/navigation/tab-bar/tab-bar.styles.d.ts.map +1 -1
  400. package/dist/components/navigation/tab-bar/tab-bar.styles.js +74 -78
  401. package/dist/components/navigation/tab-bar/tab-bar.styles.js.map +1 -1
  402. package/dist/components/navigation/tab-bar/tab-bar.template.d.ts.map +1 -1
  403. package/dist/components/navigation/tab-bar/tab-bar.template.js +8 -1
  404. package/dist/components/navigation/tab-bar/tab-bar.template.js.map +1 -1
  405. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.d.ts.map +1 -1
  406. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.js +7 -6
  407. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.js.map +1 -1
  408. package/dist/components/navigation/top-title-bar/top-title-bar.d.ts +6 -1
  409. package/dist/components/navigation/top-title-bar/top-title-bar.d.ts.map +1 -1
  410. package/dist/components/navigation/top-title-bar/top-title-bar.js +47 -10
  411. package/dist/components/navigation/top-title-bar/top-title-bar.js.map +1 -1
  412. package/dist/components/shell-BlsXDxCn.js +222 -0
  413. package/dist/components/status-and-feedback/activity-indicator/activity-indicator.d.ts.map +1 -1
  414. package/dist/components/status-and-feedback/activity-indicator/activity-indicator.js +4 -3
  415. package/dist/components/status-and-feedback/activity-indicator/activity-indicator.js.map +1 -1
  416. package/dist/components/status-and-feedback/activity-indicator/activity-indicator.styles.d.ts.map +1 -1
  417. package/dist/components/status-and-feedback/activity-indicator/activity-indicator.styles.js +0 -1
  418. package/dist/components/status-and-feedback/activity-indicator/activity-indicator.styles.js.map +1 -1
  419. package/dist/components/status-and-feedback/badge/badge.d.ts.map +1 -1
  420. package/dist/components/status-and-feedback/badge/badge.js +4 -3
  421. package/dist/components/status-and-feedback/badge/badge.js.map +1 -1
  422. package/dist/components/status-and-feedback/banner/banner.d.ts +0 -1
  423. package/dist/components/status-and-feedback/banner/banner.d.ts.map +1 -1
  424. package/dist/components/status-and-feedback/banner/banner.js +13 -13
  425. package/dist/components/status-and-feedback/banner/banner.js.map +1 -1
  426. package/dist/components/status-and-feedback/inline-dialog/inline-dialog.d.ts.map +1 -1
  427. package/dist/components/status-and-feedback/inline-dialog/inline-dialog.js +5 -4
  428. package/dist/components/status-and-feedback/inline-dialog/inline-dialog.js.map +1 -1
  429. package/dist/components/status-and-feedback/just-in-time-education/just-in-time-education.d.ts +1 -0
  430. package/dist/components/status-and-feedback/just-in-time-education/just-in-time-education.d.ts.map +1 -1
  431. package/dist/components/status-and-feedback/just-in-time-education/just-in-time-education.js +35 -4
  432. package/dist/components/status-and-feedback/just-in-time-education/just-in-time-education.js.map +1 -1
  433. package/dist/components/status-and-feedback/just-in-time-education/just-in-time-education.styles.d.ts.map +1 -1
  434. package/dist/components/status-and-feedback/just-in-time-education/just-in-time-education.styles.js +11 -0
  435. package/dist/components/status-and-feedback/just-in-time-education/just-in-time-education.styles.js.map +1 -1
  436. package/dist/components/status-and-feedback/modal-dialog/modal-dialog.d.ts.map +1 -1
  437. package/dist/components/status-and-feedback/modal-dialog/modal-dialog.js +4 -3
  438. package/dist/components/status-and-feedback/modal-dialog/modal-dialog.js.map +1 -1
  439. package/dist/components/status-and-feedback/progress-bar/progress-bar.d.ts.map +1 -1
  440. package/dist/components/status-and-feedback/progress-bar/progress-bar.js +9 -8
  441. package/dist/components/status-and-feedback/progress-bar/progress-bar.js.map +1 -1
  442. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.d.ts.map +1 -1
  443. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js +0 -6
  444. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js.map +1 -1
  445. package/dist/components/status-and-feedback/progress-circle/progress-circle.d.ts.map +1 -1
  446. package/dist/components/status-and-feedback/progress-circle/progress-circle.js +8 -7
  447. package/dist/components/status-and-feedback/progress-circle/progress-circle.js.map +1 -1
  448. package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.d.ts.map +1 -1
  449. package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.js +0 -2
  450. package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.js.map +1 -1
  451. package/dist/components/status-and-feedback/status-bar/status-bar.d.ts.map +1 -1
  452. package/dist/components/status-and-feedback/status-bar/status-bar.js +3 -2
  453. package/dist/components/status-and-feedback/status-bar/status-bar.js.map +1 -1
  454. package/dist/components/toml-BOuWGMcf.js +76 -0
  455. package/dist/css/fouc.css +30 -0
  456. package/dist/css/global.css +1 -0
  457. package/dist/css/rich-text.css +0 -5
  458. package/dist/css/settings.css +25 -10
  459. package/dist/utilities/codemirror/codemirror-element.d.ts +66 -0
  460. package/dist/utilities/codemirror/codemirror-element.d.ts.map +1 -0
  461. package/dist/utilities/codemirror/codemirror-element.js +121 -0
  462. package/dist/utilities/codemirror/codemirror-element.js.map +1 -0
  463. package/dist/utilities/codemirror/languages.d.ts +4 -0
  464. package/dist/utilities/codemirror/languages.d.ts.map +1 -0
  465. package/dist/utilities/codemirror/languages.js +39 -0
  466. package/dist/utilities/codemirror/languages.js.map +1 -0
  467. package/dist/utilities/codemirror/theme.d.ts +4 -0
  468. package/dist/utilities/codemirror/theme.d.ts.map +1 -0
  469. package/dist/utilities/codemirror/theme.js +84 -0
  470. package/dist/utilities/codemirror/theme.js.map +1 -0
  471. package/dist/utilities/dismiss-from-title-bar.d.ts +19 -0
  472. package/dist/utilities/dismiss-from-title-bar.d.ts.map +1 -0
  473. package/dist/utilities/dismiss-from-title-bar.js +21 -0
  474. package/dist/utilities/dismiss-from-title-bar.js.map +1 -0
  475. package/dist/utilities/reflect-non-default.d.ts +30 -0
  476. package/dist/utilities/reflect-non-default.d.ts.map +1 -0
  477. package/dist/utilities/reflect-non-default.js +34 -0
  478. package/dist/utilities/reflect-non-default.js.map +1 -0
  479. package/dist/utilities/scroll-mode-controller.d.ts +69 -0
  480. package/dist/utilities/scroll-mode-controller.d.ts.map +1 -0
  481. package/dist/utilities/scroll-mode-controller.js +101 -0
  482. package/dist/utilities/scroll-mode-controller.js.map +1 -0
  483. package/package.json +92 -68
  484. package/dist/components/index-BNhqNvDd.js +0 -36784
  485. package/dist/components/inputs/token/token.d.ts +0 -42
  486. package/dist/components/inputs/token/token.d.ts.map +0 -1
  487. package/dist/components/inputs/token/token.js +0 -86
  488. package/dist/components/inputs/token/token.js.map +0 -1
  489. package/dist/components/inputs/token/token.styles.d.ts.map +0 -1
  490. package/dist/components/inputs/token/token.styles.js +0 -142
  491. package/dist/components/inputs/token/token.styles.js.map +0 -1
  492. package/dist/components/inputs/token/token.template.d.ts +0 -4
  493. package/dist/components/inputs/token/token.template.d.ts.map +0 -1
  494. package/dist/components/inputs/token/token.template.js +0 -41
  495. package/dist/components/inputs/token/token.template.js.map +0 -1
  496. package/dist/components/prism-bash-vbqaw3JR.js +0 -226
  497. package/dist/components/prism-css-B93tXdOU.js +0 -59
  498. package/dist/components/prism-gherkin-CMPYyXOQ.js +0 -82
  499. package/dist/components/prism-javascript-DeC_17Pw.js +0 -140
  500. package/dist/components/prism-json-DIMpow89.js +0 -25
  501. package/dist/components/prism-markdown-D-uFBkiz.js +0 -339
  502. package/dist/components/prism-markup-DfJYPYHA.js +0 -177
  503. package/dist/components/prism-python--N285k7w.js +0 -99
  504. package/dist/components/prism-rust-Cnm1tSdo.js +0 -157
  505. package/dist/components/prism-sql-BGqCBMyJ.js +0 -33
  506. package/dist/components/prism-toml-Ubdq-a5x.js +0 -45
  507. package/dist/components/prism-typescript-BPJAiB1s.js +0 -87
  508. package/dist/components/prism-yaml-DO0f9pf6.js +0 -71
  509. /package/dist/components/{inputs → content}/token/token.styles.d.ts +0 -0
@@ -0,0 +1,68 @@
1
+ import type { EditorView } from '@codemirror/view';
2
+ export type HeadingLevel = 0 | 1 | 2 | 3 | 4 | 5 | 6;
3
+ export interface TextEditorActiveFormats {
4
+ bold: boolean;
5
+ italic: boolean;
6
+ inlineCode: boolean;
7
+ codeBlock: boolean;
8
+ strikethrough: boolean;
9
+ link: boolean;
10
+ bulletList: boolean;
11
+ orderedList: boolean;
12
+ quote: boolean;
13
+ heading: HeadingLevel;
14
+ }
15
+ export interface TextEditorState {
16
+ active: TextEditorActiveFormats;
17
+ /** Whether the selection is collapsed (a caret, no range). */
18
+ empty: boolean;
19
+ /** Whether the list item at the caret can be nested deeper / outdented. */
20
+ canIndent: boolean;
21
+ canOutdent: boolean;
22
+ /** Whether there is history to undo / redo (drives the history buttons). */
23
+ canUndo: boolean;
24
+ canRedo: boolean;
25
+ }
26
+ export declare const EMPTY_FORMATS: TextEditorActiveFormats;
27
+ /** Wrap (or, if already wrapped, unwrap) each selection range with `marker`. */
28
+ export declare function toggleInlineWrap(view: EditorView, marker: string, nodeName: string): void;
29
+ /** Set the selected lines to heading `level`, or toggle them back to body. */
30
+ export declare function toggleHeading(view: EditorView, level: HeadingLevel): void;
31
+ /** Set the selected lines to heading `level` (0 = paragraph), without toggling.
32
+ * Suited to a picker where choosing a level always applies it. */
33
+ export declare function setHeading(view: EditorView, level: HeadingLevel): void;
34
+ export declare function toggleBulletList(view: EditorView): void;
35
+ /** Set the selected lines to a list of `type`, replacing any existing list
36
+ * marker; `'none'` strips it. Ordered items are numbered within the selection.
37
+ * Unlike the toggles, this cleanly switches between list types (for a picker). */
38
+ export declare function setList(view: EditorView, type: 'none' | 'bullet' | 'ordered'): void;
39
+ /** Nest the selected list item(s) under the nearest preceding item at the same
40
+ * level, indenting only as far as that parent's content column. That keeps the
41
+ * item a valid nested list — 4+ spaces with no parent would parse as an indented
42
+ * code block — so a first or standalone item (no parent) is left untouched. */
43
+ export declare function indentListItems(view: EditorView): void;
44
+ /** Un-nest the selected list item(s) by one level: the inverse of
45
+ * indentListItems. Each item's leading indent drops to that of the nearest
46
+ * preceding shallower item (the one it is nested under), or to column 0 when
47
+ * there is no shallower parent. Keeps indent and outdent symmetric — one
48
+ * outdent exactly reverses one indent. (CodeMirror's generic indentLess removed
49
+ * a fixed indent unit instead, so a list indent took two outdents to undo.) */
50
+ export declare function outdentListItems(view: EditorView): void;
51
+ /** Whether the list item at the caret can be nested deeper (it has a preceding
52
+ * item at the same level to nest under). Drives the indent button's disabled state. */
53
+ export declare function canIndentListItem(view: EditorView): boolean;
54
+ /** Whether the list item at the caret is nested (indented) and so can be outdented. */
55
+ export declare function canOutdentListItem(view: EditorView): boolean;
56
+ /** Backspace at a list item's content start (right after the marker) removes the
57
+ * marker and its trailing space — the item's own indent is kept — so a top-level
58
+ * item cleanly returns to column 0 for every number, not just the first. CodeMirror's
59
+ * default deleteMarkupBackward instead aligns the content under the previous item,
60
+ * leaving stray whitespace on items 2, 3, … Returns false (so other handlers run)
61
+ * unless the caret sits exactly at a list marker's end outside a code block. */
62
+ export declare function clearListMarkerBackward(view: EditorView): boolean;
63
+ export declare function toggleQuote(view: EditorView): void;
64
+ export declare function toggleLink(view: EditorView, href?: string): void;
65
+ /** Wrap the selected lines in a ``` fenced code block, or unwrap if already in one. */
66
+ export declare function toggleCodeBlock(view: EditorView): void;
67
+ export declare function readActiveFormats(view: EditorView): TextEditorActiveFormats;
68
+ //# sourceMappingURL=text-editor.commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-editor.commands.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/text-editor/text-editor.commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AASnD,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAErD,MAAM,WAAW,uBAAuB;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,uBAAuB,CAAC;IAChC,8DAA8D;IAC9D,KAAK,EAAE,OAAO,CAAC;IACf,2EAA2E;IAC3E,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,4EAA4E;IAC5E,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CACjB;AAED,eAAO,MAAM,aAAa,EAAE,uBAW3B,CAAC;AAmBF,gFAAgF;AAChF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CA8BzF;AA8CD,8EAA8E;AAC9E,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,CAQzE;AAED;mEACmE;AACnE,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,CAKtE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAYvD;AAID;;mFAEmF;AACnF,wBAAgB,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,IAAI,CA0BnF;AAED;;;gFAGgF;AAChF,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CA4BtD;AAED;;;;;gFAKgF;AAChF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CA4BvD;AAED;wFACwF;AACxF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAc3D;AAED,uFAAuF;AACvF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAG5D;AAED;;;;;iFAKiF;AACjF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAqBjE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAQlD;AAeD,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,SAAK,GAAG,IAAI,CAuB5D;AAED,uFAAuF;AACvF,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAetD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,uBAAuB,CA8B3E"}
@@ -0,0 +1,420 @@
1
+ import { EditorSelection } from '@codemirror/state';
2
+ import { syntaxTree } from '@codemirror/language';
3
+ export const EMPTY_FORMATS = {
4
+ bold: false,
5
+ italic: false,
6
+ inlineCode: false,
7
+ codeBlock: false,
8
+ strikethrough: false,
9
+ link: false,
10
+ bulletList: false,
11
+ orderedList: false,
12
+ quote: false,
13
+ heading: 0,
14
+ };
15
+ function enclosing(view, pos, nodeName, side = 1) {
16
+ for (let n = syntaxTree(view.state).resolveInner(pos, side); n; n = n.parent) {
17
+ if (n.name === nodeName)
18
+ return n;
19
+ }
20
+ return null;
21
+ }
22
+ /** An inline format is "active" for the caret only when the node encloses it on
23
+ * *both* sides. At the outer edge (just before the opening marker or just after
24
+ * the closing one) only one side is inside, and text typed there lands outside
25
+ * the format — so the toolbar must not light up. This mirrors what typing does. */
26
+ function enclosingInline(view, pos, nodeName) {
27
+ const left = enclosing(view, pos, nodeName, -1);
28
+ const right = enclosing(view, pos, nodeName, 1);
29
+ return left && right && left.from === right.from && left.to === right.to ? right : null;
30
+ }
31
+ /** Wrap (or, if already wrapped, unwrap) each selection range with `marker`. */
32
+ export function toggleInlineWrap(view, marker, nodeName) {
33
+ // CodeMirror's `readOnly` facet only gates its own built-in commands, not a raw
34
+ // `view.dispatch`, so every editing helper here must refuse a read-only view
35
+ // itself — otherwise the command API and the Mod-b/i/e/k keymap would mutate a
36
+ // read-only (or disabled) editor.
37
+ if (view.state.readOnly)
38
+ return;
39
+ const len = marker.length;
40
+ view.dispatch(view.state.changeByRange((range) => {
41
+ const wrap = enclosing(view, range.from, nodeName);
42
+ if (wrap) {
43
+ return {
44
+ changes: [
45
+ { from: wrap.from, to: wrap.from + len },
46
+ { from: wrap.to - len, to: wrap.to },
47
+ ],
48
+ range: EditorSelection.range(Math.max(wrap.from, range.from - len), Math.max(wrap.from, range.to - len)),
49
+ };
50
+ }
51
+ return {
52
+ changes: [
53
+ { from: range.from, insert: marker },
54
+ { from: range.to, insert: marker },
55
+ ],
56
+ range: EditorSelection.range(range.from + len, range.to + len),
57
+ };
58
+ }));
59
+ view.focus();
60
+ }
61
+ /** Build a change that turns `line.text` into `next` by touching only the span
62
+ * that differs (shared prefix and suffix are left untouched). Replacing the whole
63
+ * line would collapse any annotation anchored inside it — its offsets map to the
64
+ * line boundary. Returns null when nothing changed. */
65
+ function minimalLineChange(line, next) {
66
+ const old = line.text;
67
+ if (next === old)
68
+ return null;
69
+ let p = 0;
70
+ while (p < old.length && p < next.length && old[p] === next[p])
71
+ p++;
72
+ let s = 0;
73
+ while (s < old.length - p && s < next.length - p && old[old.length - 1 - s] === next[next.length - 1 - s])
74
+ s++;
75
+ return { from: line.from + p, to: line.from + old.length - s, insert: next.slice(p, next.length - s) };
76
+ }
77
+ function mapSelectedLines(view, transform) {
78
+ if (view.state.readOnly)
79
+ return; // guards toggleHeading/setHeading/toggleBulletList/toggleQuote
80
+ const { state } = view;
81
+ const { from, to } = state.selection.main;
82
+ const first = state.doc.lineAt(from).number;
83
+ const last = state.doc.lineAt(to).number;
84
+ const changes = [];
85
+ for (let i = first; i <= last; i++) {
86
+ const line = state.doc.line(i);
87
+ const change = minimalLineChange(line, transform(line.text));
88
+ if (change)
89
+ changes.push(change);
90
+ }
91
+ if (changes.length)
92
+ view.dispatch({ changes });
93
+ view.focus();
94
+ }
95
+ function everySelectedLine(view, predicate) {
96
+ const { state } = view;
97
+ const { from, to } = state.selection.main;
98
+ const first = state.doc.lineAt(from).number;
99
+ const last = state.doc.lineAt(to).number;
100
+ for (let i = first; i <= last; i++) {
101
+ if (!predicate(state.doc.line(i).text))
102
+ return false;
103
+ }
104
+ return true;
105
+ }
106
+ /** Set the selected lines to heading `level`, or toggle them back to body. */
107
+ export function toggleHeading(view, level) {
108
+ mapSelectedLines(view, (text) => {
109
+ const match = text.match(/^(#{1,6})\s+/);
110
+ const current = match ? match[1].length : 0;
111
+ const body = match ? text.slice(match[0].length) : text;
112
+ if (level === 0 || current === level)
113
+ return body;
114
+ return `${'#'.repeat(level)} ${body}`;
115
+ });
116
+ }
117
+ /** Set the selected lines to heading `level` (0 = paragraph), without toggling.
118
+ * Suited to a picker where choosing a level always applies it. */
119
+ export function setHeading(view, level) {
120
+ mapSelectedLines(view, (text) => {
121
+ const body = text.replace(/^#{1,6}\s+/, '');
122
+ return level === 0 ? body : `${'#'.repeat(level)} ${body}`;
123
+ });
124
+ }
125
+ export function toggleBulletList(view) {
126
+ // Accept every markdown bullet char (- * +), matching readActiveFormats and the
127
+ // render guard. If the toggle recognised fewer chars than the state reader, a
128
+ // "+ item" line would report active yet the toggle couldn't strip it (it'd add
129
+ // another "- " instead), so state and toggle would disagree.
130
+ const re = /^(\s*)[-*+]\s+/;
131
+ const allBulleted = everySelectedLine(view, (t) => re.test(t) || t.trim() === '');
132
+ mapSelectedLines(view, (t) => {
133
+ if (t.trim() === '')
134
+ return t;
135
+ if (allBulleted)
136
+ return t.replace(re, '$1');
137
+ return re.test(t) ? t : t.replace(/^(\s*)/, '$1- ');
138
+ });
139
+ }
140
+ const LIST_STRIP_RE = /^(\s*)(?:[-*+]|\d+[.)])\s+/;
141
+ /** Set the selected lines to a list of `type`, replacing any existing list
142
+ * marker; `'none'` strips it. Ordered items are numbered within the selection.
143
+ * Unlike the toggles, this cleanly switches between list types (for a picker). */
144
+ export function setList(view, type) {
145
+ if (view.state.readOnly)
146
+ return;
147
+ const { state } = view;
148
+ const { from, to } = state.selection.main;
149
+ const first = state.doc.lineAt(from).number;
150
+ const last = state.doc.lineAt(to).number;
151
+ const changes = [];
152
+ let number = 0;
153
+ for (let i = first; i <= last; i++) {
154
+ const line = state.doc.line(i);
155
+ // 'none' clears the leading indent too — bare text can't carry list
156
+ // indentation (4+ spaces would even parse as a code block); the list types
157
+ // keep it ($1) so nesting survives a switch between bullet and ordered.
158
+ const stripped = line.text.replace(LIST_STRIP_RE, type === 'none' ? '' : '$1');
159
+ let next = stripped;
160
+ if (type !== 'none' && stripped.trim() !== '') {
161
+ number += 1;
162
+ const marker = type === 'bullet' ? '- ' : `${number}. `;
163
+ next = stripped.replace(/^(\s*)/, `$1${marker}`);
164
+ }
165
+ // Only rewrite the marker, not the whole line — keeps annotations alive.
166
+ const change = minimalLineChange(line, next);
167
+ if (change)
168
+ changes.push(change);
169
+ }
170
+ if (changes.length)
171
+ view.dispatch({ changes });
172
+ view.focus();
173
+ }
174
+ /** Nest the selected list item(s) under the nearest preceding item at the same
175
+ * level, indenting only as far as that parent's content column. That keeps the
176
+ * item a valid nested list — 4+ spaces with no parent would parse as an indented
177
+ * code block — so a first or standalone item (no parent) is left untouched. */
178
+ export function indentListItems(view) {
179
+ if (view.state.readOnly)
180
+ return;
181
+ const { state } = view;
182
+ const { from, to } = state.selection.main;
183
+ const first = state.doc.lineAt(from).number;
184
+ const last = state.doc.lineAt(to).number;
185
+ const changes = [];
186
+ for (let i = first; i <= last; i++) {
187
+ const line = state.doc.line(i);
188
+ const match = line.text.match(LIST_STRIP_RE);
189
+ if (!match)
190
+ continue;
191
+ const indent = match[1].length;
192
+ // Walk up to the nearest list item at this level or shallower — the item we
193
+ // nest under. A blank line is skipped (loose lists); a non-list line ends it.
194
+ let parentContentColumn = -1;
195
+ for (let j = i - 1; j >= 1; j--) {
196
+ const text = state.doc.line(j).text;
197
+ if (text.trim() === '')
198
+ continue;
199
+ const prev = text.match(LIST_STRIP_RE);
200
+ if (!prev)
201
+ break;
202
+ if (prev[1].length <= indent) {
203
+ parentContentColumn = prev[0].length;
204
+ break;
205
+ }
206
+ }
207
+ if (parentContentColumn > indent) {
208
+ changes.push({ from: line.from, insert: ' '.repeat(parentContentColumn - indent) });
209
+ }
210
+ }
211
+ if (changes.length)
212
+ view.dispatch({ changes });
213
+ view.focus();
214
+ }
215
+ /** Un-nest the selected list item(s) by one level: the inverse of
216
+ * indentListItems. Each item's leading indent drops to that of the nearest
217
+ * preceding shallower item (the one it is nested under), or to column 0 when
218
+ * there is no shallower parent. Keeps indent and outdent symmetric — one
219
+ * outdent exactly reverses one indent. (CodeMirror's generic indentLess removed
220
+ * a fixed indent unit instead, so a list indent took two outdents to undo.) */
221
+ export function outdentListItems(view) {
222
+ if (view.state.readOnly)
223
+ return;
224
+ const { state } = view;
225
+ const { from, to } = state.selection.main;
226
+ const first = state.doc.lineAt(from).number;
227
+ const last = state.doc.lineAt(to).number;
228
+ const changes = [];
229
+ for (let i = first; i <= last; i++) {
230
+ const line = state.doc.line(i);
231
+ const match = line.text.match(LIST_STRIP_RE);
232
+ if (!match)
233
+ continue;
234
+ const indent = match[1].length;
235
+ if (indent === 0)
236
+ continue;
237
+ // The item this one is nested under: the nearest preceding shallower list
238
+ // item. A blank line is skipped (loose lists); a non-list line ends the
239
+ // list, so an orphan indent falls back to column 0.
240
+ let targetIndent = 0;
241
+ for (let j = i - 1; j >= 1; j--) {
242
+ const text = state.doc.line(j).text;
243
+ if (text.trim() === '')
244
+ continue;
245
+ const prev = text.match(LIST_STRIP_RE);
246
+ if (!prev)
247
+ break;
248
+ if (prev[1].length < indent) {
249
+ targetIndent = prev[1].length;
250
+ break;
251
+ }
252
+ }
253
+ changes.push({ from: line.from, to: line.from + (indent - targetIndent) });
254
+ }
255
+ if (changes.length)
256
+ view.dispatch({ changes });
257
+ view.focus();
258
+ }
259
+ /** Whether the list item at the caret can be nested deeper (it has a preceding
260
+ * item at the same level to nest under). Drives the indent button's disabled state. */
261
+ export function canIndentListItem(view) {
262
+ const { state } = view;
263
+ const line = state.doc.lineAt(state.selection.main.head);
264
+ const match = line.text.match(LIST_STRIP_RE);
265
+ if (!match)
266
+ return false;
267
+ const indent = match[1].length;
268
+ for (let j = line.number - 1; j >= 1; j--) {
269
+ const text = state.doc.line(j).text;
270
+ if (text.trim() === '')
271
+ continue;
272
+ const prev = text.match(LIST_STRIP_RE);
273
+ if (!prev)
274
+ return false;
275
+ if (prev[1].length <= indent)
276
+ return prev[0].length > indent;
277
+ }
278
+ return false;
279
+ }
280
+ /** Whether the list item at the caret is nested (indented) and so can be outdented. */
281
+ export function canOutdentListItem(view) {
282
+ const match = view.state.doc.lineAt(view.state.selection.main.head).text.match(LIST_STRIP_RE);
283
+ return !!match && match[1].length > 0;
284
+ }
285
+ /** Backspace at a list item's content start (right after the marker) removes the
286
+ * marker and its trailing space — the item's own indent is kept — so a top-level
287
+ * item cleanly returns to column 0 for every number, not just the first. CodeMirror's
288
+ * default deleteMarkupBackward instead aligns the content under the previous item,
289
+ * leaving stray whitespace on items 2, 3, … Returns false (so other handlers run)
290
+ * unless the caret sits exactly at a list marker's end outside a code block. */
291
+ export function clearListMarkerBackward(view) {
292
+ // Consume Backspace entirely on a read-only editor. Returning false would hand it
293
+ // to the markdown language's deleteMarkupBackward, which (unlike @codemirror/commands)
294
+ // does NOT check readOnly and would delete the marker anyway. This binding is
295
+ // already Prec.highest to sit in front of it, so swallowing here is the fix.
296
+ if (view.state.readOnly)
297
+ return true;
298
+ const { state } = view;
299
+ const sel = state.selection.main;
300
+ if (!sel.empty)
301
+ return false;
302
+ const line = state.doc.lineAt(sel.head);
303
+ const marker = line.text.match(/^(\s*)(?:\d+[.)]|[-*+])\s/);
304
+ if (!marker || sel.head !== line.from + marker[0].length)
305
+ return false;
306
+ // A leading marker in a code block is literal text, not a list.
307
+ if (enclosing(view, line.from, 'FencedCode') || enclosing(view, line.from, 'CodeBlock'))
308
+ return false;
309
+ const from = line.from + marker[1].length; // keep the item's own indent
310
+ view.dispatch({
311
+ changes: { from, to: line.from + marker[0].length },
312
+ selection: { anchor: from },
313
+ userEvent: 'delete.backward',
314
+ });
315
+ return true;
316
+ }
317
+ export function toggleQuote(view) {
318
+ const re = /^(\s*)>\s?/;
319
+ const allQuoted = everySelectedLine(view, (t) => re.test(t) || t.trim() === '');
320
+ mapSelectedLines(view, (t) => {
321
+ if (t.trim() === '')
322
+ return t;
323
+ if (allQuoted)
324
+ return t.replace(re, '$1');
325
+ return re.test(t) ? t : t.replace(/^(\s*)/, '$1> ');
326
+ });
327
+ }
328
+ /** Wrap the selection as a markdown link. Caret lands where the user types next:
329
+ * inside `[]` if there's no text, inside `()` if there's no href, else after. */
330
+ // The non-mention Link node enclosing `pos`, or null. Mentions own their click,
331
+ // so they don't count as a "link" for the link button.
332
+ function realLinkAt(view, pos) {
333
+ const link = enclosing(view, pos, 'Link');
334
+ if (!link)
335
+ return null;
336
+ for (let child = link.firstChild; child; child = child.nextSibling) {
337
+ if (child.name === 'URL' && view.state.sliceDoc(child.from, child.to).startsWith('user:'))
338
+ return null;
339
+ }
340
+ return link;
341
+ }
342
+ export function toggleLink(view, href = '') {
343
+ if (view.state.readOnly)
344
+ return;
345
+ // In a link already → unwrap it (drop the [ ]( ) markers, keep the text).
346
+ const link = realLinkAt(view, view.state.selection.main.head);
347
+ if (link) {
348
+ const text = view.state.sliceDoc(link.from, link.to).replace(/^\[(.*)\]\([^)]*\)$/, '$1');
349
+ view.dispatch({
350
+ changes: { from: link.from, to: link.to, insert: text },
351
+ selection: EditorSelection.range(link.from, link.from + text.length),
352
+ });
353
+ view.focus();
354
+ return;
355
+ }
356
+ view.dispatch(view.state.changeByRange((range) => {
357
+ const text = view.state.sliceDoc(range.from, range.to);
358
+ const insert = `[${text}](${href})`;
359
+ let caret;
360
+ if (!text)
361
+ caret = range.from + 1;
362
+ else if (!href)
363
+ caret = range.from + 1 + text.length + 2;
364
+ else
365
+ caret = range.from + insert.length;
366
+ return { changes: { from: range.from, to: range.to, insert }, range: EditorSelection.cursor(caret) };
367
+ }));
368
+ view.focus();
369
+ }
370
+ /** Wrap the selected lines in a ``` fenced code block, or unwrap if already in one. */
371
+ export function toggleCodeBlock(view) {
372
+ if (view.state.readOnly)
373
+ return;
374
+ const { state } = view;
375
+ const { from, to } = state.selection.main;
376
+ const first = state.doc.lineAt(from);
377
+ const last = state.doc.lineAt(to);
378
+ const prev = first.number > 1 ? state.doc.line(first.number - 1) : null;
379
+ const next = last.number < state.doc.lines ? state.doc.line(last.number + 1) : null;
380
+ const fenced = !!prev?.text.trim().startsWith('```') && !!next?.text.trim().startsWith('```');
381
+ if (fenced && prev && next) {
382
+ view.dispatch({ changes: [{ from: prev.from, to: first.from }, { from: last.to, to: next.to }] });
383
+ }
384
+ else {
385
+ view.dispatch({ changes: [{ from: first.from, insert: '```\n' }, { from: last.to, insert: '\n```' }] });
386
+ }
387
+ view.focus();
388
+ }
389
+ export function readActiveFormats(view) {
390
+ const { state } = view;
391
+ const pos = state.selection.main.head;
392
+ // Inline marks light up only when the caret is *within* them on both sides,
393
+ // so an edge caret (where typed text lands outside the format) stays inactive.
394
+ const has = (name) => enclosingInline(view, pos, name) !== null;
395
+ const lineText = state.doc.lineAt(pos).text;
396
+ const lineStart = state.doc.lineAt(pos).from;
397
+ const headingMatch = lineText.match(/^(#{1,6})\s/);
398
+ // In a code block a leading marker is literal text, not a list/heading — the
399
+ // regex-based checks below would otherwise report it. (The syntax-tree checks,
400
+ // like bold or quote, already ignore code content.)
401
+ const codeBlock = enclosing(view, lineStart, 'FencedCode') !== null || enclosing(view, lineStart, 'CodeBlock') !== null;
402
+ return {
403
+ bold: has('StrongEmphasis'),
404
+ italic: has('Emphasis'),
405
+ inlineCode: has('InlineCode'),
406
+ codeBlock,
407
+ strikethrough: has('Strikethrough'),
408
+ link: realLinkAt(view, pos) !== null,
409
+ // Lists from the line's own marker. (Resolving the tree at a line-end caret
410
+ // can spill into the next line and flip-flop the toolbar state.)
411
+ bulletList: !codeBlock && /^\s*[-*+]\s/.test(lineText),
412
+ orderedList: !codeBlock && /^\s*\d+[.)]\s/.test(lineText),
413
+ // Quote from the Blockquote node at the line's *start* — that catches lazy
414
+ // continuation lines (part of the quote but with no '>') too, while resolving
415
+ // at line.from (not the caret) keeps it stable at the line end.
416
+ quote: enclosing(view, lineStart, 'Blockquote') !== null,
417
+ heading: (codeBlock || !headingMatch ? 0 : headingMatch[1].length),
418
+ };
419
+ }
420
+ //# sourceMappingURL=text-editor.commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-editor.commands.js","sourceRoot":"","sources":["../../../../src/components/inputs/text-editor/text-editor.commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAkClD,MAAM,CAAC,MAAM,aAAa,GAA4B;IACrD,IAAI,EAAE,KAAK;IACX,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE,KAAK;IAChB,aAAa,EAAE,KAAK;IACpB,IAAI,EAAE,KAAK;IACX,UAAU,EAAE,KAAK;IACjB,WAAW,EAAE,KAAK;IAClB,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,CAAC;CACV,CAAC;AAEF,SAAS,SAAS,CAAC,IAAgB,EAAE,GAAW,EAAE,QAAgB,EAAE,OAAmB,CAAC;IACvF,KAAK,IAAI,CAAC,GAAsB,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QACjG,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;oFAGoF;AACpF,SAAS,eAAe,CAAC,IAAgB,EAAE,GAAW,EAAE,QAAgB;IACvE,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IAChD,OAAO,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACzF,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,gBAAgB,CAAC,IAAgB,EAAE,MAAc,EAAE,QAAgB;IAClF,gFAAgF;IAChF,6EAA6E;IAC7E,+EAA+E;IAC/E,kCAAkC;IAClC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO;IAChC,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE;QAChD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACnD,IAAI,IAAI,EAAE,CAAC;YACV,OAAO;gBACN,OAAO,EAAE;oBACR,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE;oBACxC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;iBACpC;gBACD,KAAK,EAAE,eAAe,CAAC,KAAK,CAC3B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,EACrC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC,CACnC;aACD,CAAC;QACH,CAAC;QACD,OAAO;YACN,OAAO,EAAE;gBACR,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;aAClC;YACD,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC;SAC9D,CAAC;IACH,CAAC,CAAC,CAAC,CAAC;IACJ,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,CAAC;AAED;;;wDAGwD;AACxD,SAAS,iBAAiB,CACzB,IAAoC,EACpC,IAAY;IAEZ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;IACtB,IAAI,IAAI,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;QAAE,CAAC,EAAE,CAAC;IACpE,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;QAAE,CAAC,EAAE,CAAC;IAC/G,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;AACxG,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAgB,EAAE,SAAmC;IAC9E,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO,CAAC,+DAA+D;IAChG,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;IAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,OAAO,GAAmD,EAAE,CAAC;IACnE,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7D,IAAI,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,OAAO,CAAC,MAAM;QAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAgB,EAAE,SAAoC;IAChF,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;IAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;IACtD,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,aAAa,CAAC,IAAgB,EAAE,KAAmB;IAClE,gBAAgB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxD,IAAI,KAAK,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QAClD,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;IACvC,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;mEACmE;AACnE,MAAM,UAAU,UAAU,CAAC,IAAgB,EAAE,KAAmB;IAC/D,gBAAgB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAC5C,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAgB;IAChD,gFAAgF;IAChF,8EAA8E;IAC9E,+EAA+E;IAC/E,6DAA6D;IAC7D,MAAM,EAAE,GAAG,gBAAgB,CAAC;IAC5B,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAClF,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;QAC5B,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,CAAC,CAAC;QAC9B,IAAI,WAAW;YAAE,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC5C,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,aAAa,GAAG,4BAA4B,CAAC;AAEnD;;mFAEmF;AACnF,MAAM,UAAU,OAAO,CAAC,IAAgB,EAAE,IAAmC;IAC5E,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO;IAChC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;IAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,OAAO,GAAmD,EAAE,CAAC;IACnE,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,oEAAoE;QACpE,2EAA2E;QAC3E,wEAAwE;QACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/E,IAAI,IAAI,GAAG,QAAQ,CAAC;QACpB,IAAI,IAAI,KAAK,MAAM,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC/C,MAAM,IAAI,CAAC,CAAC;YACZ,MAAM,MAAM,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC;YACxD,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,MAAM,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,yEAAyE;QACzE,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,OAAO,CAAC,MAAM;QAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,CAAC;AAED;;;gFAGgF;AAChF,MAAM,UAAU,eAAe,CAAC,IAAgB;IAC/C,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO;IAChC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;IAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,OAAO,GAAuC,EAAE,CAAC;IACvD,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC/B,4EAA4E;QAC5E,8EAA8E;QAC9E,IAAI,mBAAmB,GAAG,CAAC,CAAC,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACpC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;gBAAE,SAAS;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YACvC,IAAI,CAAC,IAAI;gBAAE,MAAM;YACjB,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC;gBAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAAC,MAAM;YAAC,CAAC;QAC/E,CAAC;QACD,IAAI,mBAAmB,GAAG,MAAM,EAAE,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,mBAAmB,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;QACrF,CAAC;IACF,CAAC;IACD,IAAI,OAAO,CAAC,MAAM;QAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,CAAC;AAED;;;;;gFAKgF;AAChF,MAAM,UAAU,gBAAgB,CAAC,IAAgB;IAChD,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO;IAChC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;IAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,OAAO,GAAmC,EAAE,CAAC;IACnD,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC/B,IAAI,MAAM,KAAK,CAAC;YAAE,SAAS;QAC3B,0EAA0E;QAC1E,wEAAwE;QACxE,oDAAoD;QACpD,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACpC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;gBAAE,SAAS;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YACvC,IAAI,CAAC,IAAI;gBAAE,MAAM;YACjB,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;gBAAC,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBAAC,MAAM;YAAC,CAAC;QACvE,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,OAAO,CAAC,MAAM;QAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,CAAC;AAED;wFACwF;AACxF,MAAM,UAAU,iBAAiB,CAAC,IAAgB;IACjD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,SAAS;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM;YAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;IAC9D,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,kBAAkB,CAAC,IAAgB;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC9F,OAAO,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACvC,CAAC;AAED;;;;;iFAKiF;AACjF,MAAM,UAAU,uBAAuB,CAAC,IAAgB;IACvD,kFAAkF;IAClF,uFAAuF;IACvF,8EAA8E;IAC9E,6EAA6E;IAC7E,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;IACjC,IAAI,CAAC,GAAG,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACvE,gEAAgE;IAChE,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IACtG,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,6BAA6B;IACxE,IAAI,CAAC,QAAQ,CAAC;QACb,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;QACnD,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QAC3B,SAAS,EAAE,iBAAiB;KAC5B,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAgB;IAC3C,MAAM,EAAE,GAAG,YAAY,CAAC;IACxB,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAChF,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;QAC5B,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,CAAC,CAAC;QAC9B,IAAI,SAAS;YAAE,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC1C,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;kFACkF;AAClF,gFAAgF;AAChF,uDAAuD;AACvD,SAAS,UAAU,CAAC,IAAgB,EAAE,GAAW;IAChD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAC1C,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACpE,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;IACxG,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAgB,EAAE,IAAI,GAAG,EAAE;IACrD,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO;IAChC,0EAA0E;IAC1E,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;QAC1F,IAAI,CAAC,QAAQ,CAAC;YACb,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;YACvD,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;SACpE,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,OAAO;IACR,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,IAAI,KAAK,IAAI,GAAG,CAAC;QACpC,IAAI,KAAa,CAAC;QAClB,IAAI,CAAC,IAAI;YAAE,KAAK,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;aAC7B,IAAI,CAAC,IAAI;YAAE,KAAK,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;;YACpD,KAAK,GAAG,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;QACxC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IACtG,CAAC,CAAC,CAAC,CAAC;IACJ,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,eAAe,CAAC,IAAgB;IAC/C,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ;QAAE,OAAO;IAChC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;IAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpF,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9F,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACnG,CAAC;SAAM,CAAC;QACP,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IACzG,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,CAAC;AACd,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAgB;IACjD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;IACtC,4EAA4E;IAC5E,+EAA+E;IAC/E,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;IACxE,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAC5C,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAC7C,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACnD,6EAA6E;IAC7E,+EAA+E;IAC/E,oDAAoD;IACpD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,CAAC,KAAK,IAAI,IAAI,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,KAAK,IAAI,CAAC;IACxH,OAAO;QACN,IAAI,EAAE,GAAG,CAAC,gBAAgB,CAAC;QAC3B,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC;QACvB,UAAU,EAAE,GAAG,CAAC,YAAY,CAAC;QAC7B,SAAS;QACT,aAAa,EAAE,GAAG,CAAC,eAAe,CAAC;QACnC,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,IAAI;QACpC,4EAA4E;QAC5E,iEAAiE;QACjE,UAAU,EAAE,CAAC,SAAS,IAAI,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;QACtD,WAAW,EAAE,CAAC,SAAS,IAAI,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC;QACzD,2EAA2E;QAC3E,8EAA8E;QAC9E,gEAAgE;QAChE,KAAK,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,CAAC,KAAK,IAAI;QACxD,OAAO,EAAE,CAAC,SAAS,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAiB;KAClF,CAAC;AACH,CAAC"}