@umbraco-cms/backoffice 15.3.0 → 15.4.0-rc

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 (1505) hide show
  1. package/dist-cms/apps/app/app-logo.element.d.ts +25 -2
  2. package/dist-cms/apps/app/app-logo.element.js +44 -5
  3. package/dist-cms/apps/backoffice/backoffice.context.js +10 -12
  4. package/dist-cms/apps/backoffice/components/backoffice-header-logo.element.d.ts +10 -1
  5. package/dist-cms/apps/backoffice/components/backoffice-header-logo.element.js +28 -24
  6. package/dist-cms/apps/backoffice/components/backoffice-main.element.d.ts +0 -1
  7. package/dist-cms/apps/backoffice/components/backoffice-main.element.js +21 -41
  8. package/dist-cms/apps/installer/installer.context.d.ts +4 -2
  9. package/dist-cms/apps/installer/installer.context.js +4 -2
  10. package/dist-cms/apps/installer/installer.element.d.ts +0 -1
  11. package/dist-cms/apps/installer/installer.element.js +3 -4
  12. package/dist-cms/apps/installer/shared/layout/installer-layout.element.js +2 -1
  13. package/dist-cms/apps/installer/shared/utils.story-helpers.d.ts +2 -1
  14. package/dist-cms/apps/installer/shared/utils.story-helpers.js +6 -5
  15. package/dist-cms/apps/preview/apps/preview-culture.element.d.ts +1 -2
  16. package/dist-cms/apps/preview/apps/preview-culture.element.js +1 -2
  17. package/dist-cms/apps/preview/apps/preview-device.element.d.ts +1 -2
  18. package/dist-cms/apps/preview/apps/preview-device.element.js +1 -2
  19. package/dist-cms/apps/preview/apps/preview-exit.element.d.ts +1 -2
  20. package/dist-cms/apps/preview/apps/preview-exit.element.js +1 -2
  21. package/dist-cms/apps/preview/apps/preview-open-website.element.d.ts +1 -2
  22. package/dist-cms/apps/preview/apps/preview-open-website.element.js +1 -2
  23. package/dist-cms/apps/preview/preview.element.d.ts +1 -2
  24. package/dist-cms/apps/preview/preview.element.js +2 -3
  25. package/dist-cms/assets/lang/da-dk.js +4 -2
  26. package/dist-cms/assets/lang/da-dk.ts +6 -3
  27. package/dist-cms/assets/lang/en-us.js +14 -22
  28. package/dist-cms/assets/lang/en-us.ts +16 -23
  29. package/dist-cms/assets/lang/en.js +38 -15
  30. package/dist-cms/assets/lang/en.ts +41 -15
  31. package/dist-cms/css/dark.theme.css +4 -3
  32. package/dist-cms/css/rte-content.css +35 -30
  33. package/dist-cms/css/umb-css.css +5 -4
  34. package/dist-cms/css/uui-css.css +16 -11
  35. package/dist-cms/custom-elements.json +850 -232
  36. package/dist-cms/external/backend-api/index.js +1 -1
  37. package/dist-cms/external/backend-api/src/sdk.gen.d.ts +73 -2
  38. package/dist-cms/external/backend-api/src/types.gen.d.ts +92 -2
  39. package/dist-cms/external/monaco-editor/{cssMode-CUXEefSS.js → cssMode-DjRnuiTr.js} +1 -1
  40. package/dist-cms/external/monaco-editor/{freemarker2-DzwWvbKB.js → freemarker2-Dp4p3Na1.js} +1 -1
  41. package/dist-cms/external/monaco-editor/{handlebars-CemuYN_Z.js → handlebars-DdY5RWZd.js} +1 -1
  42. package/dist-cms/external/monaco-editor/{html-D4e50Vly.js → html-B73s0s80.js} +1 -1
  43. package/dist-cms/external/monaco-editor/{htmlMode-CgKTZMjM.js → htmlMode-BquRbSmq.js} +1 -1
  44. package/dist-cms/external/monaco-editor/{index-Def4N_V2.js → index-Bitfnghs.js} +18 -18
  45. package/dist-cms/external/monaco-editor/index.js +1 -1
  46. package/dist-cms/external/monaco-editor/{javascript-yQGGFsNP.js → javascript-0jCgtH1R.js} +1 -1
  47. package/dist-cms/external/monaco-editor/{jsonMode-8iHkAe7E.js → jsonMode-BUd-a1bE.js} +1 -1
  48. package/dist-cms/external/monaco-editor/{liquid-DGgcY_1I.js → liquid-DmXgvR3v.js} +1 -1
  49. package/dist-cms/external/monaco-editor/{mdx-DqMkUct3.js → mdx-CKY_Nyrz.js} +1 -1
  50. package/dist-cms/external/monaco-editor/{python-CCzWdJbb.js → python-D96lqhAh.js} +1 -1
  51. package/dist-cms/external/monaco-editor/{razor-CI9Hqcx_.js → razor-CRpUW7sE.js} +1 -1
  52. package/dist-cms/external/monaco-editor/{tsMode-BtpWVR7g.js → tsMode-DlQAxy2q.js} +1 -1
  53. package/dist-cms/external/monaco-editor/{typescript-M3dWBSCy.js → typescript-DdXNNvCJ.js} +1 -1
  54. package/dist-cms/external/monaco-editor/{xml-DQw1AQuz.js → xml-4KavmXJO.js} +1 -1
  55. package/dist-cms/external/monaco-editor/{yaml-Ds0726bJ.js → yaml-mC045hap.js} +1 -1
  56. package/dist-cms/external/router-slot/index.js +1 -1
  57. package/dist-cms/external/router-slot/model.d.ts +1 -0
  58. package/dist-cms/external/tinymce/index.d.ts +3 -0
  59. package/dist-cms/external/tiptap/extensions/tiptap-anchor.extension.d.ts +2 -0
  60. package/dist-cms/external/tiptap/extensions/tiptap-html-global-attributes.extension.d.ts +10 -0
  61. package/dist-cms/external/tiptap/extensions/tiptap-text-indent-extension.d.ts +15 -0
  62. package/dist-cms/external/tiptap/extensions/tiptap-umb-bubble-menu.extension.d.ts +23 -0
  63. package/dist-cms/external/tiptap/extensions/tiptap-umb-table.extension.d.ts +11 -13
  64. package/dist-cms/external/tiptap/index.d.ts +4 -0
  65. package/dist-cms/external/tiptap/index.js +19 -19
  66. package/dist-cms/external/uui/index.js +548 -431
  67. package/dist-cms/json-schema/umbraco-package-schema.d.ts +7 -1
  68. package/dist-cms/json-schema/umbraco-package-schema.js +1 -1
  69. package/dist-cms/libs/context-api/provide/context-provider.js +1 -2
  70. package/dist-cms/libs/extension-api/registry/extension.registry.d.ts +47 -20
  71. package/dist-cms/libs/extension-api/registry/extension.registry.js +97 -49
  72. package/dist-cms/libs/localization-api/localization.controller.js +3 -7
  73. package/dist-cms/libs/observable-api/utils/json-string-comparison.function.js +1 -1
  74. package/dist-cms/mocks/data/data-type/data-type.data.js +33 -13
  75. package/dist-cms/mocks/data/document/data/permissions-test.data.d.ts +2 -0
  76. package/dist-cms/mocks/data/document/data/permissions-test.data.js +126 -0
  77. package/dist-cms/mocks/data/document/document.data.js +11 -1
  78. package/dist-cms/mocks/data/document/document.db.js +14 -0
  79. package/dist-cms/mocks/data/document-blueprint/document-blueprint.data.d.ts +2 -3
  80. package/dist-cms/mocks/data/document-blueprint/document-blueprint.data.js +3 -13
  81. package/dist-cms/mocks/data/document-blueprint/document-blueprint.db.d.ts +0 -1
  82. package/dist-cms/mocks/data/document-blueprint/document-blueprint.db.js +7 -20
  83. package/dist-cms/mocks/data/stylesheet/stylesheet.data.js +43 -47
  84. package/dist-cms/mocks/data/tracked-reference.data.d.ts +2 -2
  85. package/dist-cms/mocks/data/tracked-reference.data.js +5 -0
  86. package/dist-cms/mocks/data/user-group/user-group.data.js +23 -1
  87. package/dist-cms/mocks/handlers/backoffice/backoffice.handlers.js +5 -0
  88. package/dist-cms/monaco-editor/vs/base/browser/browser.js +54 -0
  89. package/dist-cms/monaco-editor/vs/base/browser/canIUse.js +32 -0
  90. package/dist-cms/monaco-editor/vs/base/browser/contextmenu.js +5 -0
  91. package/dist-cms/monaco-editor/vs/base/browser/defaultWorkerFactory.js +195 -0
  92. package/dist-cms/monaco-editor/vs/base/browser/dnd.js +26 -0
  93. package/dist-cms/monaco-editor/vs/base/browser/dom.js +1525 -0
  94. package/dist-cms/monaco-editor/vs/base/browser/domObservable.js +15 -0
  95. package/dist-cms/monaco-editor/vs/base/browser/dompurify/dompurify.js +1569 -0
  96. package/dist-cms/monaco-editor/vs/base/browser/event.js +20 -0
  97. package/dist-cms/monaco-editor/vs/base/browser/fastDomNode.js +250 -0
  98. package/dist-cms/monaco-editor/vs/base/browser/fonts.js +14 -0
  99. package/dist-cms/monaco-editor/vs/base/browser/formattedTextRenderer.js +167 -0
  100. package/dist-cms/monaco-editor/vs/base/browser/globalPointerMoveMonitor.js +80 -0
  101. package/dist-cms/monaco-editor/vs/base/browser/history.js +5 -0
  102. package/dist-cms/monaco-editor/vs/base/browser/iframe.js +85 -0
  103. package/dist-cms/monaco-editor/vs/base/browser/keyboardEvent.js +122 -0
  104. package/dist-cms/monaco-editor/vs/base/browser/markdownRenderer.js +814 -0
  105. package/dist-cms/monaco-editor/vs/base/browser/mouseEvent.js +146 -0
  106. package/dist-cms/monaco-editor/vs/base/browser/performance.js +220 -0
  107. package/dist-cms/monaco-editor/vs/base/browser/pixelRatio.js +85 -0
  108. package/dist-cms/monaco-editor/vs/base/browser/touch.js +268 -0
  109. package/dist-cms/monaco-editor/vs/base/browser/trustedTypes.js +24 -0
  110. package/dist-cms/monaco-editor/vs/base/browser/ui/actionbar/actionViewItems.js +373 -0
  111. package/dist-cms/monaco-editor/vs/base/browser/ui/actionbar/actionbar.css +117 -0
  112. package/dist-cms/monaco-editor/vs/base/browser/ui/actionbar/actionbar.js +417 -0
  113. package/dist-cms/monaco-editor/vs/base/browser/ui/aria/aria.css +9 -0
  114. package/dist-cms/monaco-editor/vs/base/browser/ui/aria/aria.js +81 -0
  115. package/dist-cms/monaco-editor/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.css +36 -0
  116. package/dist-cms/monaco-editor/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +1 -0
  117. package/dist-cms/monaco-editor/vs/base/browser/ui/button/button.css +174 -0
  118. package/dist-cms/monaco-editor/vs/base/browser/ui/button/button.js +215 -0
  119. package/dist-cms/monaco-editor/vs/base/browser/ui/codicons/codicon/codicon-modifiers.css +33 -0
  120. package/dist-cms/monaco-editor/vs/base/browser/ui/codicons/codicon/codicon.css +25 -0
  121. package/dist-cms/monaco-editor/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  122. package/dist-cms/monaco-editor/vs/base/browser/ui/codicons/codiconStyles.js +6 -0
  123. package/dist-cms/monaco-editor/vs/base/browser/ui/contextview/contextview.css +16 -0
  124. package/dist-cms/monaco-editor/vs/base/browser/ui/contextview/contextview.js +292 -0
  125. package/dist-cms/monaco-editor/vs/base/browser/ui/countBadge/countBadge.css +24 -0
  126. package/dist-cms/monaco-editor/vs/base/browser/ui/countBadge/countBadge.js +35 -0
  127. package/dist-cms/monaco-editor/vs/base/browser/ui/dialog/dialog.css +155 -0
  128. package/dist-cms/monaco-editor/vs/base/browser/ui/dialog/dialog.js +1 -0
  129. package/dist-cms/monaco-editor/vs/base/browser/ui/dropdown/dropdown.css +46 -0
  130. package/dist-cms/monaco-editor/vs/base/browser/ui/dropdown/dropdown.js +139 -0
  131. package/dist-cms/monaco-editor/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +107 -0
  132. package/dist-cms/monaco-editor/vs/base/browser/ui/findinput/findInput.css +70 -0
  133. package/dist-cms/monaco-editor/vs/base/browser/ui/findinput/findInput.js +293 -0
  134. package/dist-cms/monaco-editor/vs/base/browser/ui/findinput/findInputToggles.js +50 -0
  135. package/dist-cms/monaco-editor/vs/base/browser/ui/findinput/replaceInput.js +173 -0
  136. package/dist-cms/monaco-editor/vs/base/browser/ui/highlightedlabel/highlightedLabel.js +133 -0
  137. package/dist-cms/monaco-editor/vs/base/browser/ui/hover/hover.js +6 -0
  138. package/dist-cms/monaco-editor/vs/base/browser/ui/hover/hoverDelegate.js +5 -0
  139. package/dist-cms/monaco-editor/vs/base/browser/ui/hover/hoverDelegate2.js +27 -0
  140. package/dist-cms/monaco-editor/vs/base/browser/ui/hover/hoverDelegateFactory.js +31 -0
  141. package/dist-cms/monaco-editor/vs/base/browser/ui/hover/hoverWidget.css +192 -0
  142. package/dist-cms/monaco-editor/vs/base/browser/ui/hover/hoverWidget.js +87 -0
  143. package/dist-cms/monaco-editor/vs/base/browser/ui/iconLabel/iconLabel.js +281 -0
  144. package/dist-cms/monaco-editor/vs/base/browser/ui/iconLabel/iconLabels.js +30 -0
  145. package/dist-cms/monaco-editor/vs/base/browser/ui/iconLabel/iconlabel.css +120 -0
  146. package/dist-cms/monaco-editor/vs/base/browser/ui/inputbox/inputBox.css +107 -0
  147. package/dist-cms/monaco-editor/vs/base/browser/ui/inputbox/inputBox.js +517 -0
  148. package/dist-cms/monaco-editor/vs/base/browser/ui/keybindingLabel/keybindingLabel.css +37 -0
  149. package/dist-cms/monaco-editor/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +122 -0
  150. package/dist-cms/monaco-editor/vs/base/browser/ui/list/list.css +91 -0
  151. package/dist-cms/monaco-editor/vs/base/browser/ui/list/list.js +9 -0
  152. package/dist-cms/monaco-editor/vs/base/browser/ui/list/listPaging.js +121 -0
  153. package/dist-cms/monaco-editor/vs/base/browser/ui/list/listView.js +1073 -0
  154. package/dist-cms/monaco-editor/vs/base/browser/ui/list/listWidget.js +1528 -0
  155. package/dist-cms/monaco-editor/vs/base/browser/ui/list/rangeMap.js +158 -0
  156. package/dist-cms/monaco-editor/vs/base/browser/ui/list/rowCache.js +107 -0
  157. package/dist-cms/monaco-editor/vs/base/browser/ui/list/splice.js +12 -0
  158. package/dist-cms/monaco-editor/vs/base/browser/ui/menu/menu.js +1139 -0
  159. package/dist-cms/monaco-editor/vs/base/browser/ui/mouseCursor/mouseCursor.css +8 -0
  160. package/dist-cms/monaco-editor/vs/base/browser/ui/mouseCursor/mouseCursor.js +6 -0
  161. package/dist-cms/monaco-editor/vs/base/browser/ui/progressbar/progressbar.css +61 -0
  162. package/dist-cms/monaco-editor/vs/base/browser/ui/progressbar/progressbar.js +102 -0
  163. package/dist-cms/monaco-editor/vs/base/browser/ui/radio/radio.css +69 -0
  164. package/dist-cms/monaco-editor/vs/base/browser/ui/radio/radio.js +1 -0
  165. package/dist-cms/monaco-editor/vs/base/browser/ui/resizable/resizable.js +147 -0
  166. package/dist-cms/monaco-editor/vs/base/browser/ui/sash/sash.css +149 -0
  167. package/dist-cms/monaco-editor/vs/base/browser/ui/sash/sash.js +448 -0
  168. package/dist-cms/monaco-editor/vs/base/browser/ui/scrollbar/abstractScrollbar.js +207 -0
  169. package/dist-cms/monaco-editor/vs/base/browser/ui/scrollbar/horizontalScrollbar.js +88 -0
  170. package/dist-cms/monaco-editor/vs/base/browser/ui/scrollbar/media/scrollbars.css +72 -0
  171. package/dist-cms/monaco-editor/vs/base/browser/ui/scrollbar/scrollableElement.js +554 -0
  172. package/dist-cms/monaco-editor/vs/base/browser/ui/scrollbar/scrollableElementOptions.js +5 -0
  173. package/dist-cms/monaco-editor/vs/base/browser/ui/scrollbar/scrollbarArrow.js +75 -0
  174. package/dist-cms/monaco-editor/vs/base/browser/ui/scrollbar/scrollbarState.js +161 -0
  175. package/dist-cms/monaco-editor/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.js +90 -0
  176. package/dist-cms/monaco-editor/vs/base/browser/ui/scrollbar/verticalScrollbar.js +91 -0
  177. package/dist-cms/monaco-editor/vs/base/browser/ui/selectBox/selectBox.css +34 -0
  178. package/dist-cms/monaco-editor/vs/base/browser/ui/selectBox/selectBox.js +44 -0
  179. package/dist-cms/monaco-editor/vs/base/browser/ui/selectBox/selectBoxCustom.css +126 -0
  180. package/dist-cms/monaco-editor/vs/base/browser/ui/selectBox/selectBoxCustom.js +849 -0
  181. package/dist-cms/monaco-editor/vs/base/browser/ui/selectBox/selectBoxNative.js +139 -0
  182. package/dist-cms/monaco-editor/vs/base/browser/ui/splitview/splitview.css +70 -0
  183. package/dist-cms/monaco-editor/vs/base/browser/ui/splitview/splitview.js +826 -0
  184. package/dist-cms/monaco-editor/vs/base/browser/ui/table/table.css +57 -0
  185. package/dist-cms/monaco-editor/vs/base/browser/ui/table/table.js +5 -0
  186. package/dist-cms/monaco-editor/vs/base/browser/ui/table/tableWidget.js +177 -0
  187. package/dist-cms/monaco-editor/vs/base/browser/ui/toggle/toggle.css +74 -0
  188. package/dist-cms/monaco-editor/vs/base/browser/ui/toggle/toggle.js +96 -0
  189. package/dist-cms/monaco-editor/vs/base/browser/ui/toolbar/toolbar.css +13 -0
  190. package/dist-cms/monaco-editor/vs/base/browser/ui/toolbar/toolbar.js +139 -0
  191. package/dist-cms/monaco-editor/vs/base/browser/ui/tree/abstractTree.js +2094 -0
  192. package/dist-cms/monaco-editor/vs/base/browser/ui/tree/asyncDataTree.js +845 -0
  193. package/dist-cms/monaco-editor/vs/base/browser/ui/tree/compressedObjectTreeModel.js +371 -0
  194. package/dist-cms/monaco-editor/vs/base/browser/ui/tree/dataTree.js +17 -0
  195. package/dist-cms/monaco-editor/vs/base/browser/ui/tree/indexTreeModel.js +534 -0
  196. package/dist-cms/monaco-editor/vs/base/browser/ui/tree/media/tree.css +174 -0
  197. package/dist-cms/monaco-editor/vs/base/browser/ui/tree/objectTree.js +201 -0
  198. package/dist-cms/monaco-editor/vs/base/browser/ui/tree/objectTreeModel.js +196 -0
  199. package/dist-cms/monaco-editor/vs/base/browser/ui/tree/tree.js +43 -0
  200. package/dist-cms/monaco-editor/vs/base/browser/ui/widget.js +41 -0
  201. package/dist-cms/monaco-editor/vs/base/browser/window.js +14 -0
  202. package/dist-cms/monaco-editor/vs/base/common/actions.js +174 -0
  203. package/dist-cms/monaco-editor/vs/base/common/arrays.js +501 -0
  204. package/dist-cms/monaco-editor/vs/base/common/arraysFind.js +175 -0
  205. package/dist-cms/monaco-editor/vs/base/common/assert.js +59 -0
  206. package/dist-cms/monaco-editor/vs/base/common/async.js +843 -0
  207. package/dist-cms/monaco-editor/vs/base/common/buffer.js +68 -0
  208. package/dist-cms/monaco-editor/vs/base/common/cache.js +59 -0
  209. package/dist-cms/monaco-editor/vs/base/common/cancellation.js +113 -0
  210. package/dist-cms/monaco-editor/vs/base/common/charCode.js +5 -0
  211. package/dist-cms/monaco-editor/vs/base/common/codicons.js +47 -0
  212. package/dist-cms/monaco-editor/vs/base/common/codiconsLibrary.js +580 -0
  213. package/dist-cms/monaco-editor/vs/base/common/codiconsUtil.js +19 -0
  214. package/dist-cms/monaco-editor/vs/base/common/collections.js +35 -0
  215. package/dist-cms/monaco-editor/vs/base/common/color.js +462 -0
  216. package/dist-cms/monaco-editor/vs/base/common/comparers.js +83 -0
  217. package/dist-cms/monaco-editor/vs/base/common/dataTransfer.js +128 -0
  218. package/dist-cms/monaco-editor/vs/base/common/decorators.js +30 -0
  219. package/dist-cms/monaco-editor/vs/base/common/diff/diff.js +899 -0
  220. package/dist-cms/monaco-editor/vs/base/common/diff/diffChange.js +32 -0
  221. package/dist-cms/monaco-editor/vs/base/common/equals.js +82 -0
  222. package/dist-cms/monaco-editor/vs/base/common/errorMessage.js +68 -0
  223. package/dist-cms/monaco-editor/vs/base/common/errors.js +150 -0
  224. package/dist-cms/monaco-editor/vs/base/common/event.js +1280 -0
  225. package/dist-cms/monaco-editor/vs/base/common/extpath.js +144 -0
  226. package/dist-cms/monaco-editor/vs/base/common/filters.js +769 -0
  227. package/dist-cms/monaco-editor/vs/base/common/functional.js +30 -0
  228. package/dist-cms/monaco-editor/vs/base/common/fuzzyScorer.js +138 -0
  229. package/dist-cms/monaco-editor/vs/base/common/glob.js +568 -0
  230. package/dist-cms/monaco-editor/vs/base/common/hash.js +258 -0
  231. package/dist-cms/monaco-editor/vs/base/common/hierarchicalKind.js +24 -0
  232. package/dist-cms/monaco-editor/vs/base/common/history.js +73 -0
  233. package/dist-cms/monaco-editor/vs/base/common/hotReload.js +81 -0
  234. package/dist-cms/monaco-editor/vs/base/common/hotReloadHelpers.js +24 -0
  235. package/dist-cms/monaco-editor/vs/base/common/htmlContent.js +149 -0
  236. package/dist-cms/monaco-editor/vs/base/common/iconLabels.js +85 -0
  237. package/dist-cms/monaco-editor/vs/base/common/idGenerator.js +14 -0
  238. package/dist-cms/monaco-editor/vs/base/common/ime.js +30 -0
  239. package/dist-cms/monaco-editor/vs/base/common/iterator.js +148 -0
  240. package/dist-cms/monaco-editor/vs/base/common/jsonSchema.js +5 -0
  241. package/dist-cms/monaco-editor/vs/base/common/keyCodes.js +372 -0
  242. package/dist-cms/monaco-editor/vs/base/common/keybindingLabels.js +136 -0
  243. package/dist-cms/monaco-editor/vs/base/common/keybindings.js +123 -0
  244. package/dist-cms/monaco-editor/vs/base/common/labels.js +9 -0
  245. package/dist-cms/monaco-editor/vs/base/common/lazy.js +37 -0
  246. package/dist-cms/monaco-editor/vs/base/common/lifecycle.js +355 -0
  247. package/dist-cms/monaco-editor/vs/base/common/linkedList.js +124 -0
  248. package/dist-cms/monaco-editor/vs/base/common/linkedText.js +45 -0
  249. package/dist-cms/monaco-editor/vs/base/common/map.js +573 -0
  250. package/dist-cms/monaco-editor/vs/base/common/marked/marked.js +2538 -0
  251. package/dist-cms/monaco-editor/vs/base/common/marshalling.js +55 -0
  252. package/dist-cms/monaco-editor/vs/base/common/marshallingIds.js +5 -0
  253. package/dist-cms/monaco-editor/vs/base/common/mime.js +8 -0
  254. package/dist-cms/monaco-editor/vs/base/common/naturalLanguage/korean.js +319 -0
  255. package/dist-cms/monaco-editor/vs/base/common/navigator.js +34 -0
  256. package/dist-cms/monaco-editor/vs/base/common/network.js +277 -0
  257. package/dist-cms/monaco-editor/vs/base/common/numbers.js +47 -0
  258. package/dist-cms/monaco-editor/vs/base/common/objects.js +179 -0
  259. package/dist-cms/monaco-editor/vs/base/common/observable.js +16 -0
  260. package/dist-cms/monaco-editor/vs/base/common/observableInternal/api.js +14 -0
  261. package/dist-cms/monaco-editor/vs/base/common/observableInternal/autorun.js +192 -0
  262. package/dist-cms/monaco-editor/vs/base/common/observableInternal/base.js +268 -0
  263. package/dist-cms/monaco-editor/vs/base/common/observableInternal/debugName.js +104 -0
  264. package/dist-cms/monaco-editor/vs/base/common/observableInternal/derived.js +286 -0
  265. package/dist-cms/monaco-editor/vs/base/common/observableInternal/lazyObservableValue.js +118 -0
  266. package/dist-cms/monaco-editor/vs/base/common/observableInternal/logging.js +258 -0
  267. package/dist-cms/monaco-editor/vs/base/common/observableInternal/promise.js +105 -0
  268. package/dist-cms/monaco-editor/vs/base/common/observableInternal/utils.js +366 -0
  269. package/dist-cms/monaco-editor/vs/base/common/path.js +1399 -0
  270. package/dist-cms/monaco-editor/vs/base/common/platform.js +153 -0
  271. package/dist-cms/monaco-editor/vs/base/common/process.js +58 -0
  272. package/dist-cms/monaco-editor/vs/base/common/range.js +44 -0
  273. package/dist-cms/monaco-editor/vs/base/common/resources.js +256 -0
  274. package/dist-cms/monaco-editor/vs/base/common/scrollable.js +320 -0
  275. package/dist-cms/monaco-editor/vs/base/common/search.js +49 -0
  276. package/dist-cms/monaco-editor/vs/base/common/sequence.js +1 -0
  277. package/dist-cms/monaco-editor/vs/base/common/severity.js +49 -0
  278. package/dist-cms/monaco-editor/vs/base/common/stopwatch.js +28 -0
  279. package/dist-cms/monaco-editor/vs/base/common/strings.js +840 -0
  280. package/dist-cms/monaco-editor/vs/base/common/symbols.js +8 -0
  281. package/dist-cms/monaco-editor/vs/base/common/ternarySearchTree.js +618 -0
  282. package/dist-cms/monaco-editor/vs/base/common/tfIdf.js +177 -0
  283. package/dist-cms/monaco-editor/vs/base/common/themables.js +83 -0
  284. package/dist-cms/monaco-editor/vs/base/common/types.js +119 -0
  285. package/dist-cms/monaco-editor/vs/base/common/uint.js +22 -0
  286. package/dist-cms/monaco-editor/vs/base/common/uri.js +602 -0
  287. package/dist-cms/monaco-editor/vs/base/common/uuid.js +56 -0
  288. package/dist-cms/monaco-editor/vs/base/common/worker/simpleWorker.js +461 -0
  289. package/dist-cms/monaco-editor/vs/base/parts/storage/common/storage.js +182 -0
  290. package/dist-cms/monaco-editor/vs/editor/common/commands/replaceCommand.js +82 -0
  291. package/dist-cms/monaco-editor/vs/editor/common/commands/shiftCommand.js +239 -0
  292. package/dist-cms/monaco-editor/vs/editor/common/commands/surroundSelectionCommand.js +41 -0
  293. package/dist-cms/monaco-editor/vs/editor/common/commands/trimTrailingWhitespaceCommand.js +95 -0
  294. package/dist-cms/monaco-editor/vs/editor/common/config/diffEditor.js +37 -0
  295. package/dist-cms/monaco-editor/vs/editor/common/config/editorConfiguration.js +5 -0
  296. package/dist-cms/monaco-editor/vs/editor/common/config/editorConfigurationSchema.js +300 -0
  297. package/dist-cms/monaco-editor/vs/editor/common/config/editorOptions.js +3146 -0
  298. package/dist-cms/monaco-editor/vs/editor/common/config/editorZoom.js +23 -0
  299. package/dist-cms/monaco-editor/vs/editor/common/config/fontInfo.js +153 -0
  300. package/dist-cms/monaco-editor/vs/editor/common/core/characterClassifier.js +56 -0
  301. package/dist-cms/monaco-editor/vs/editor/common/core/cursorColumns.js +109 -0
  302. package/dist-cms/monaco-editor/vs/editor/common/core/dimension.js +5 -0
  303. package/dist-cms/monaco-editor/vs/editor/common/core/editOperation.js +33 -0
  304. package/dist-cms/monaco-editor/vs/editor/common/core/editorColorRegistry.js +89 -0
  305. package/dist-cms/monaco-editor/vs/editor/common/core/eolCounter.js +42 -0
  306. package/dist-cms/monaco-editor/vs/editor/common/core/indentation.js +36 -0
  307. package/dist-cms/monaco-editor/vs/editor/common/core/lineRange.js +304 -0
  308. package/dist-cms/monaco-editor/vs/editor/common/core/offsetRange.js +193 -0
  309. package/dist-cms/monaco-editor/vs/editor/common/core/position.js +140 -0
  310. package/dist-cms/monaco-editor/vs/editor/common/core/positionToOffset.js +24 -0
  311. package/dist-cms/monaco-editor/vs/editor/common/core/range.js +400 -0
  312. package/dist-cms/monaco-editor/vs/editor/common/core/rgba.js +33 -0
  313. package/dist-cms/monaco-editor/vs/editor/common/core/selection.js +142 -0
  314. package/dist-cms/monaco-editor/vs/editor/common/core/stringBuilder.js +119 -0
  315. package/dist-cms/monaco-editor/vs/editor/common/core/textChange.js +245 -0
  316. package/dist-cms/monaco-editor/vs/editor/common/core/textEdit.js +98 -0
  317. package/dist-cms/monaco-editor/vs/editor/common/core/textLength.js +66 -0
  318. package/dist-cms/monaco-editor/vs/editor/common/core/textModelDefaults.js +16 -0
  319. package/dist-cms/monaco-editor/vs/editor/common/core/wordCharacterClassifier.js +83 -0
  320. package/dist-cms/monaco-editor/vs/editor/common/core/wordHelper.js +124 -0
  321. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursor.js +883 -0
  322. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorAtomicMoveOperations.js +142 -0
  323. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorCollection.js +191 -0
  324. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorColumnSelection.js +90 -0
  325. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorContext.js +13 -0
  326. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorDeleteOperations.js +215 -0
  327. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorMoveCommands.js +651 -0
  328. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorMoveOperations.js +287 -0
  329. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorTypeEditOperations.js +952 -0
  330. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorTypeOperations.js +169 -0
  331. package/dist-cms/monaco-editor/vs/editor/common/cursor/cursorWordOperations.js +707 -0
  332. package/dist-cms/monaco-editor/vs/editor/common/cursor/oneCursor.js +114 -0
  333. package/dist-cms/monaco-editor/vs/editor/common/cursorCommon.js +239 -0
  334. package/dist-cms/monaco-editor/vs/editor/common/cursorEvents.js +5 -0
  335. package/dist-cms/monaco-editor/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +138 -0
  336. package/dist-cms/monaco-editor/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/dynamicProgrammingDiffing.js +98 -0
  337. package/dist-cms/monaco-editor/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.js +159 -0
  338. package/dist-cms/monaco-editor/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js +246 -0
  339. package/dist-cms/monaco-editor/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +247 -0
  340. package/dist-cms/monaco-editor/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +371 -0
  341. package/dist-cms/monaco-editor/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.js +34 -0
  342. package/dist-cms/monaco-editor/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +179 -0
  343. package/dist-cms/monaco-editor/vs/editor/common/diff/defaultLinesDiffComputer/utils.js +60 -0
  344. package/dist-cms/monaco-editor/vs/editor/common/diff/documentDiffProvider.js +5 -0
  345. package/dist-cms/monaco-editor/vs/editor/common/diff/legacyLinesDiffComputer.js +465 -0
  346. package/dist-cms/monaco-editor/vs/editor/common/diff/linesDiffComputer.js +27 -0
  347. package/dist-cms/monaco-editor/vs/editor/common/diff/linesDiffComputers.js +10 -0
  348. package/dist-cms/monaco-editor/vs/editor/common/diff/rangeMapping.js +170 -0
  349. package/dist-cms/monaco-editor/vs/editor/common/editorAction.js +24 -0
  350. package/dist-cms/monaco-editor/vs/editor/common/editorCommon.js +11 -0
  351. package/dist-cms/monaco-editor/vs/editor/common/editorContextKeys.js +81 -0
  352. package/dist-cms/monaco-editor/vs/editor/common/editorFeatures.js +15 -0
  353. package/dist-cms/monaco-editor/vs/editor/common/editorTheme.js +21 -0
  354. package/dist-cms/monaco-editor/vs/editor/common/encodedTokenAttributes.js +77 -0
  355. package/dist-cms/monaco-editor/vs/editor/common/languageFeatureRegistry.js +177 -0
  356. package/dist-cms/monaco-editor/vs/editor/common/languageSelector.js +109 -0
  357. package/dist-cms/monaco-editor/vs/editor/common/languages/autoIndent.js +387 -0
  358. package/dist-cms/monaco-editor/vs/editor/common/languages/defaultDocumentColorsComputer.js +135 -0
  359. package/dist-cms/monaco-editor/vs/editor/common/languages/enterAction.js +50 -0
  360. package/dist-cms/monaco-editor/vs/editor/common/languages/language.js +6 -0
  361. package/dist-cms/monaco-editor/vs/editor/common/languages/languageConfiguration.js +136 -0
  362. package/dist-cms/monaco-editor/vs/editor/common/languages/languageConfigurationRegistry.js +353 -0
  363. package/dist-cms/monaco-editor/vs/editor/common/languages/linkComputer.js +270 -0
  364. package/dist-cms/monaco-editor/vs/editor/common/languages/modesRegistry.js +56 -0
  365. package/dist-cms/monaco-editor/vs/editor/common/languages/nullTokenize.js +26 -0
  366. package/dist-cms/monaco-editor/vs/editor/common/languages/supports/characterPair.js +37 -0
  367. package/dist-cms/monaco-editor/vs/editor/common/languages/supports/electricCharacter.js +52 -0
  368. package/dist-cms/monaco-editor/vs/editor/common/languages/supports/indentRules.js +61 -0
  369. package/dist-cms/monaco-editor/vs/editor/common/languages/supports/indentationLineProcessor.js +190 -0
  370. package/dist-cms/monaco-editor/vs/editor/common/languages/supports/inplaceReplaceSupport.js +85 -0
  371. package/dist-cms/monaco-editor/vs/editor/common/languages/supports/languageBracketsConfiguration.js +130 -0
  372. package/dist-cms/monaco-editor/vs/editor/common/languages/supports/onEnter.js +106 -0
  373. package/dist-cms/monaco-editor/vs/editor/common/languages/supports/richEditBrackets.js +353 -0
  374. package/dist-cms/monaco-editor/vs/editor/common/languages/supports/tokenization.js +284 -0
  375. package/dist-cms/monaco-editor/vs/editor/common/languages/supports.js +56 -0
  376. package/dist-cms/monaco-editor/vs/editor/common/languages/textToHtmlTokenizer.js +125 -0
  377. package/dist-cms/monaco-editor/vs/editor/common/languages.js +404 -0
  378. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js +714 -0
  379. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js +482 -0
  380. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js +107 -0
  381. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js +342 -0
  382. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js +105 -0
  383. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/combineTextEditInfos.js +121 -0
  384. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js +189 -0
  385. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js +112 -0
  386. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/nodeReader.js +124 -0
  387. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js +118 -0
  388. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js +104 -0
  389. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js +298 -0
  390. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js +94 -0
  391. package/dist-cms/monaco-editor/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js +66 -0
  392. package/dist-cms/monaco-editor/vs/editor/common/model/decorationProvider.js +1 -0
  393. package/dist-cms/monaco-editor/vs/editor/common/model/editStack.js +359 -0
  394. package/dist-cms/monaco-editor/vs/editor/common/model/fixedArray.js +67 -0
  395. package/dist-cms/monaco-editor/vs/editor/common/model/guidesTextModelPart.js +402 -0
  396. package/dist-cms/monaco-editor/vs/editor/common/model/indentationGuesser.js +176 -0
  397. package/dist-cms/monaco-editor/vs/editor/common/model/intervalTree.js +986 -0
  398. package/dist-cms/monaco-editor/vs/editor/common/model/mirrorTextModel.js +114 -0
  399. package/dist-cms/monaco-editor/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +1452 -0
  400. package/dist-cms/monaco-editor/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +455 -0
  401. package/dist-cms/monaco-editor/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js +137 -0
  402. package/dist-cms/monaco-editor/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js +360 -0
  403. package/dist-cms/monaco-editor/vs/editor/common/model/prefixSumComputer.js +223 -0
  404. package/dist-cms/monaco-editor/vs/editor/common/model/textModel.js +1899 -0
  405. package/dist-cms/monaco-editor/vs/editor/common/model/textModelPart.js +20 -0
  406. package/dist-cms/monaco-editor/vs/editor/common/model/textModelSearch.js +452 -0
  407. package/dist-cms/monaco-editor/vs/editor/common/model/textModelText.js +20 -0
  408. package/dist-cms/monaco-editor/vs/editor/common/model/textModelTokens.js +429 -0
  409. package/dist-cms/monaco-editor/vs/editor/common/model/tokenizationTextModelPart.js +530 -0
  410. package/dist-cms/monaco-editor/vs/editor/common/model/tokens.js +89 -0
  411. package/dist-cms/monaco-editor/vs/editor/common/model/treeSitterTokens.js +79 -0
  412. package/dist-cms/monaco-editor/vs/editor/common/model/utils.js +31 -0
  413. package/dist-cms/monaco-editor/vs/editor/common/model.js +133 -0
  414. package/dist-cms/monaco-editor/vs/editor/common/modelLineProjectionData.js +299 -0
  415. package/dist-cms/monaco-editor/vs/editor/common/services/editorBaseApi.js +40 -0
  416. package/dist-cms/monaco-editor/vs/editor/common/services/editorSimpleWorker.js +351 -0
  417. package/dist-cms/monaco-editor/vs/editor/common/services/editorWorker.js +6 -0
  418. package/dist-cms/monaco-editor/vs/editor/common/services/editorWorkerHost.js +13 -0
  419. package/dist-cms/monaco-editor/vs/editor/common/services/findSectionHeaders.js +81 -0
  420. package/dist-cms/monaco-editor/vs/editor/common/services/getIconClasses.js +103 -0
  421. package/dist-cms/monaco-editor/vs/editor/common/services/languageFeatureDebounce.js +135 -0
  422. package/dist-cms/monaco-editor/vs/editor/common/services/languageFeatures.js +6 -0
  423. package/dist-cms/monaco-editor/vs/editor/common/services/languageFeaturesService.js +45 -0
  424. package/dist-cms/monaco-editor/vs/editor/common/services/languageService.js +89 -0
  425. package/dist-cms/monaco-editor/vs/editor/common/services/languagesAssociations.js +190 -0
  426. package/dist-cms/monaco-editor/vs/editor/common/services/languagesRegistry.js +236 -0
  427. package/dist-cms/monaco-editor/vs/editor/common/services/markerDecorations.js +6 -0
  428. package/dist-cms/monaco-editor/vs/editor/common/services/markerDecorationsService.js +227 -0
  429. package/dist-cms/monaco-editor/vs/editor/common/services/model.js +6 -0
  430. package/dist-cms/monaco-editor/vs/editor/common/services/modelService.js +418 -0
  431. package/dist-cms/monaco-editor/vs/editor/common/services/resolverService.js +2 -0
  432. package/dist-cms/monaco-editor/vs/editor/common/services/semanticTokensDto.js +79 -0
  433. package/dist-cms/monaco-editor/vs/editor/common/services/semanticTokensProviderStyling.js +276 -0
  434. package/dist-cms/monaco-editor/vs/editor/common/services/semanticTokensStyling.js +6 -0
  435. package/dist-cms/monaco-editor/vs/editor/common/services/semanticTokensStylingService.js +45 -0
  436. package/dist-cms/monaco-editor/vs/editor/common/services/textModelSync/textModelSync.impl.js +304 -0
  437. package/dist-cms/monaco-editor/vs/editor/common/services/textModelSync/textModelSync.protocol.js +5 -0
  438. package/dist-cms/monaco-editor/vs/editor/common/services/textResourceConfiguration.js +3 -0
  439. package/dist-cms/monaco-editor/vs/editor/common/services/treeSitterParserService.js +2 -0
  440. package/dist-cms/monaco-editor/vs/editor/common/services/treeViewsDnd.js +22 -0
  441. package/dist-cms/monaco-editor/vs/editor/common/services/treeViewsDndService.js +9 -0
  442. package/dist-cms/monaco-editor/vs/editor/common/services/unicodeTextModelHighlighter.js +185 -0
  443. package/dist-cms/monaco-editor/vs/editor/common/standalone/standaloneEnums.js +978 -0
  444. package/dist-cms/monaco-editor/vs/editor/common/standaloneStrings.js +39 -0
  445. package/dist-cms/monaco-editor/vs/editor/common/textModelBracketPairs.js +43 -0
  446. package/dist-cms/monaco-editor/vs/editor/common/textModelEvents.js +176 -0
  447. package/dist-cms/monaco-editor/vs/editor/common/textModelGuides.js +38 -0
  448. package/dist-cms/monaco-editor/vs/editor/common/tokenizationRegistry.js +120 -0
  449. package/dist-cms/monaco-editor/vs/editor/common/tokenizationTextModelPart.js +5 -0
  450. package/dist-cms/monaco-editor/vs/editor/common/tokens/contiguousMultilineTokens.js +30 -0
  451. package/dist-cms/monaco-editor/vs/editor/common/tokens/contiguousMultilineTokensBuilder.js +20 -0
  452. package/dist-cms/monaco-editor/vs/editor/common/tokens/contiguousTokensEditing.js +125 -0
  453. package/dist-cms/monaco-editor/vs/editor/common/tokens/contiguousTokensStore.js +204 -0
  454. package/dist-cms/monaco-editor/vs/editor/common/tokens/lineTokens.js +288 -0
  455. package/dist-cms/monaco-editor/vs/editor/common/tokens/sparseMultilineTokens.js +516 -0
  456. package/dist-cms/monaco-editor/vs/editor/common/tokens/sparseTokensStore.js +194 -0
  457. package/dist-cms/monaco-editor/vs/editor/common/viewEventHandler.js +183 -0
  458. package/dist-cms/monaco-editor/vs/editor/common/viewEvents.js +178 -0
  459. package/dist-cms/monaco-editor/vs/editor/common/viewLayout/lineDecorations.js +205 -0
  460. package/dist-cms/monaco-editor/vs/editor/common/viewLayout/linePart.js +23 -0
  461. package/dist-cms/monaco-editor/vs/editor/common/viewLayout/linesLayout.js +768 -0
  462. package/dist-cms/monaco-editor/vs/editor/common/viewLayout/viewLayout.js +355 -0
  463. package/dist-cms/monaco-editor/vs/editor/common/viewLayout/viewLineRenderer.js +910 -0
  464. package/dist-cms/monaco-editor/vs/editor/common/viewLayout/viewLinesViewportData.js +27 -0
  465. package/dist-cms/monaco-editor/vs/editor/common/viewModel/glyphLanesModel.js +58 -0
  466. package/dist-cms/monaco-editor/vs/editor/common/viewModel/minimapTokensColorTracker.js +55 -0
  467. package/dist-cms/monaco-editor/vs/editor/common/viewModel/modelLineProjection.js +329 -0
  468. package/dist-cms/monaco-editor/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +442 -0
  469. package/dist-cms/monaco-editor/vs/editor/common/viewModel/overviewZoneManager.js +174 -0
  470. package/dist-cms/monaco-editor/vs/editor/common/viewModel/viewContext.js +19 -0
  471. package/dist-cms/monaco-editor/vs/editor/common/viewModel/viewModelDecorations.js +165 -0
  472. package/dist-cms/monaco-editor/vs/editor/common/viewModel/viewModelImpl.js +1063 -0
  473. package/dist-cms/monaco-editor/vs/editor/common/viewModel/viewModelLines.js +978 -0
  474. package/dist-cms/monaco-editor/vs/editor/common/viewModel.js +119 -0
  475. package/dist-cms/monaco-editor/vs/editor/common/viewModelEventDispatcher.js +355 -0
  476. package/dist-cms/monaco-editor/vs/nls.js +75 -0
  477. package/dist-cms/monaco-editor/vs/nls.messages.js +14 -0
  478. package/dist-cms/packages/block/block/context/block-manager.context.d.ts +1 -1
  479. package/dist-cms/packages/block/block/modals/block-catalogue/block-catalogue-modal.element.d.ts +2 -1
  480. package/dist-cms/packages/block/block/modals/block-catalogue/block-catalogue-modal.element.js +2 -2
  481. package/dist-cms/packages/block/block/validation/block-editor-validation-property-path-translator-base.api.d.ts +8 -0
  482. package/dist-cms/packages/block/block/validation/block-editor-validation-property-path-translator-base.api.js +26 -0
  483. package/dist-cms/packages/block/block/validation/block-element-data-validation-path-translator.controller.js +6 -0
  484. package/dist-cms/packages/block/block/validation/block-element-values-validation-path-translator.controller.js +6 -0
  485. package/dist-cms/packages/block/block/validation/index.d.ts +1 -0
  486. package/dist-cms/packages/block/block/validation/index.js +1 -0
  487. package/dist-cms/packages/block/block/workspace/block-element-manager.d.ts +6 -0
  488. package/dist-cms/packages/block/block/workspace/block-element-manager.js +10 -3
  489. package/dist-cms/packages/block/block/workspace/block-element-property-dataset.context.js +7 -0
  490. package/dist-cms/packages/block/block/workspace/block-workspace.context.d.ts +13 -0
  491. package/dist-cms/packages/block/block/workspace/block-workspace.context.js +64 -1
  492. package/dist-cms/packages/block/block/workspace/views/edit/block-workspace-view-edit-tab.element.js +6 -4
  493. package/dist-cms/packages/block/block-grid/{context → block-grid-manager}/block-grid-manager.context.d.ts +5 -2
  494. package/dist-cms/packages/block/block-grid/{context → block-grid-manager}/block-grid-manager.context.js +4 -2
  495. package/dist-cms/packages/block/block-grid/block-grid-manager/constants.d.ts +1 -0
  496. package/dist-cms/packages/block/block-grid/block-grid-manager/constants.js +1 -0
  497. package/dist-cms/packages/block/block-grid/block-grid-manager/index.d.ts +1 -0
  498. package/dist-cms/packages/block/block-grid/block-grid-manager/index.js +1 -0
  499. package/dist-cms/packages/block/block-grid/clipboard/block/paste/block-to-block-grid-paste-translator.d.ts +4 -8
  500. package/dist-cms/packages/block/block-grid/clipboard/block/paste/block-to-block-grid-paste-translator.js +4 -6
  501. package/dist-cms/packages/block/block-grid/clipboard/grid-block/paste/grid-block-to-block-grid-paste-translator.d.ts +4 -7
  502. package/dist-cms/packages/block/block-grid/clipboard/grid-block/paste/grid-block-to-block-grid-paste-translator.js +8 -7
  503. package/dist-cms/packages/block/block-grid/clipboard/manifests.d.ts +2 -1
  504. package/dist-cms/packages/block/block-grid/clipboard/manifests.js +1 -16
  505. package/dist-cms/packages/block/block-grid/components/block-grid-area/block-grid-area.element.d.ts +1 -1
  506. package/dist-cms/packages/block/block-grid/components/block-grid-area/block-grid-area.element.js +2 -2
  507. package/dist-cms/packages/block/block-grid/components/block-grid-area-config-entry/block-grid-area-config-entry.element.d.ts +0 -2
  508. package/dist-cms/packages/block/block-grid/components/block-grid-area-config-entry/block-grid-area-config-entry.element.js +0 -2
  509. package/dist-cms/packages/block/block-grid/components/block-grid-areas-container/block-grid-areas-container.element.d.ts +0 -1
  510. package/dist-cms/packages/block/block-grid/components/block-grid-areas-container/block-grid-areas-container.element.js +2 -3
  511. package/dist-cms/packages/block/block-grid/components/block-grid-block/block-grid-block.element.d.ts +0 -2
  512. package/dist-cms/packages/block/block-grid/components/block-grid-block/block-grid-block.element.js +0 -2
  513. package/dist-cms/packages/block/block-grid/components/block-grid-block-inline/block-grid-block-inline.element.d.ts +0 -2
  514. package/dist-cms/packages/block/block-grid/components/block-grid-block-inline/block-grid-block-inline.element.js +2 -4
  515. package/dist-cms/packages/block/block-grid/components/block-grid-block-unsupported/block-grid-block-unsupported.element.d.ts +0 -2
  516. package/dist-cms/packages/block/block-grid/components/block-grid-block-unsupported/block-grid-block-unsupported.element.js +0 -2
  517. package/dist-cms/packages/block/block-grid/{context → components/block-grid-entries}/block-grid-entries.context-token.d.ts +1 -1
  518. package/dist-cms/packages/block/block-grid/{context → components/block-grid-entries}/block-grid-entries.context-token.js +1 -1
  519. package/dist-cms/packages/block/block-grid/{context → components/block-grid-entries}/block-grid-entries.context.d.ts +8 -9
  520. package/dist-cms/packages/block/block-grid/{context → components/block-grid-entries}/block-grid-entries.context.js +20 -9
  521. package/dist-cms/packages/block/block-grid/components/block-grid-entries/block-grid-entries.element.d.ts +1 -2
  522. package/dist-cms/packages/block/block-grid/components/block-grid-entries/block-grid-entries.element.js +2 -9
  523. package/dist-cms/packages/block/block-grid/components/block-grid-entries/constants.d.ts +1 -0
  524. package/dist-cms/packages/block/block-grid/components/block-grid-entries/constants.js +1 -0
  525. package/dist-cms/packages/block/block-grid/{context → components/block-grid-entry}/block-grid-entry.context-token.d.ts +1 -1
  526. package/dist-cms/packages/block/block-grid/{context → components/block-grid-entry}/block-grid-entry.context-token.js +1 -1
  527. package/dist-cms/packages/block/block-grid/{context → components/block-grid-entry}/block-grid-entry.context.d.ts +10 -10
  528. package/dist-cms/packages/block/block-grid/{context → components/block-grid-entry}/block-grid-entry.context.js +9 -9
  529. package/dist-cms/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.d.ts +0 -4
  530. package/dist-cms/packages/block/block-grid/components/block-grid-entry/block-grid-entry.element.js +6 -10
  531. package/dist-cms/packages/block/block-grid/components/block-grid-entry/constants.d.ts +1 -0
  532. package/dist-cms/packages/block/block-grid/components/block-grid-entry/constants.js +1 -0
  533. package/dist-cms/packages/block/block-grid/components/constants.d.ts +2 -0
  534. package/dist-cms/packages/block/block-grid/components/constants.js +2 -0
  535. package/dist-cms/packages/block/block-grid/constants.d.ts +2 -1
  536. package/dist-cms/packages/block/block-grid/constants.js +2 -1
  537. package/dist-cms/packages/block/block-grid/context/constants.d.ts +0 -3
  538. package/dist-cms/packages/block/block-grid/context/constants.js +0 -3
  539. package/dist-cms/packages/block/block-grid/index.d.ts +0 -1
  540. package/dist-cms/packages/block/block-grid/index.js +0 -1
  541. package/dist-cms/packages/block/block-grid/local-components.d.ts +8 -0
  542. package/dist-cms/packages/block/block-grid/local-components.js +8 -0
  543. package/dist-cms/packages/block/block-grid/manifests.d.ts +2 -1
  544. package/dist-cms/packages/block/block-grid/manifests.js +2 -0
  545. package/dist-cms/packages/block/block-grid/property-editors/block-grid-area-type-permission/block-grid-area-type-permission.element.js +6 -6
  546. package/dist-cms/packages/block/block-grid/property-editors/block-grid-areas-config/property-editor-ui-block-grid-areas-config.element.d.ts +1 -1
  547. package/dist-cms/packages/block/block-grid/property-editors/block-grid-areas-config/property-editor-ui-block-grid-areas-config.element.js +1 -1
  548. package/dist-cms/packages/block/block-grid/property-editors/block-grid-column-span/property-editor-ui-block-grid-column-span.element.d.ts +1 -1
  549. package/dist-cms/packages/block/block-grid/property-editors/block-grid-column-span/property-editor-ui-block-grid-column-span.element.js +2 -2
  550. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/manifests.d.ts +2 -1
  551. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/manifests.js +3 -1
  552. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-actions/block-grid-paste-from-clipboard.d.ts +21 -0
  553. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-actions/block-grid-paste-from-clipboard.js +40 -0
  554. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-actions/manifests.d.ts +2 -0
  555. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-actions/manifests.js +18 -0
  556. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-editor-ui-block-grid.element.d.ts +4 -3
  557. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/property-editor-ui-block-grid.element.js +41 -11
  558. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/types.d.ts +8 -0
  559. package/dist-cms/packages/block/block-grid/property-editors/block-grid-editor/types.js +1 -0
  560. package/dist-cms/packages/block/block-grid/property-editors/block-grid-group-configuration/property-editor-ui-block-grid-group-configuration.element.d.ts +1 -1
  561. package/dist-cms/packages/block/block-grid/property-editors/block-grid-group-configuration/property-editor-ui-block-grid-group-configuration.element.js +2 -2
  562. package/dist-cms/packages/block/block-grid/property-editors/block-grid-layout-stylesheet/property-editor-ui-block-grid-layout-stylesheet.element.d.ts +1 -1
  563. package/dist-cms/packages/block/block-grid/property-editors/block-grid-layout-stylesheet/property-editor-ui-block-grid-layout-stylesheet.element.js +2 -2
  564. package/dist-cms/packages/block/block-grid/property-editors/manifests.d.ts +2 -1
  565. package/dist-cms/packages/block/block-grid/validation/block-grid-validation-property-path-translator.api.d.ts +7 -0
  566. package/dist-cms/packages/block/block-grid/validation/block-grid-validation-property-path-translator.api.js +14 -0
  567. package/dist-cms/packages/block/block-grid/validation/manifests.js +10 -0
  568. package/dist-cms/packages/block/block-list/clipboard/block/paste/block-to-block-list-paste-translator.d.ts +2 -2
  569. package/dist-cms/packages/block/block-list/clipboard/block/paste/block-to-block-list-paste-translator.js +3 -3
  570. package/dist-cms/packages/block/block-list/clipboard/manifests.js +0 -3
  571. package/dist-cms/packages/block/block-list/components/block-list-entry/block-list-entry.element.js +7 -7
  572. package/dist-cms/packages/block/block-list/context/block-list-manager.context.d.ts +5 -2
  573. package/dist-cms/packages/block/block-list/context/block-list-manager.context.js +3 -1
  574. package/dist-cms/packages/block/block-list/manifests.js +3 -1
  575. package/dist-cms/packages/block/block-list/property-editors/block-list-editor/property-editor-ui-block-list.element.d.ts +3 -1
  576. package/dist-cms/packages/block/block-list/property-editors/block-list-editor/property-editor-ui-block-list.element.js +39 -9
  577. package/dist-cms/packages/block/block-list/property-editors/block-list-type-configuration/property-editor-ui-block-list-type-configuration.element.d.ts +1 -1
  578. package/dist-cms/packages/block/block-list/property-editors/block-list-type-configuration/property-editor-ui-block-list-type-configuration.element.js +2 -2
  579. package/dist-cms/packages/block/block-list/validation/block-list-validation-property-path-translator.api.d.ts +7 -0
  580. package/dist-cms/packages/block/block-list/validation/block-list-validation-property-path-translator.api.js +14 -0
  581. package/dist-cms/packages/block/block-list/validation/manifests.d.ts +1 -0
  582. package/dist-cms/packages/block/block-list/validation/manifests.js +10 -0
  583. package/dist-cms/packages/block/block-list/workspace/views/block-list-type-workspace-view.element.js +1 -0
  584. package/dist-cms/packages/block/block-rte/components/block-rte-entry/block-rte-entry.element.js +5 -5
  585. package/dist-cms/packages/block/block-rte/context/block-rte-entries.context.d.ts +2 -2
  586. package/dist-cms/packages/block/block-rte/context/block-rte-entries.context.js +6 -2
  587. package/dist-cms/packages/block/block-rte/context/block-rte-manager.context.d.ts +5 -2
  588. package/dist-cms/packages/block/block-rte/context/block-rte-manager.context.js +3 -1
  589. package/dist-cms/packages/block/block-type/components/input-block-type/input-block-type.element.js +2 -2
  590. package/dist-cms/packages/clipboard/constants.d.ts +1 -1
  591. package/dist-cms/packages/clipboard/constants.js +1 -1
  592. package/dist-cms/packages/clipboard/property/actions/constants.d.ts +1 -0
  593. package/dist-cms/packages/clipboard/property/actions/constants.js +1 -0
  594. package/dist-cms/packages/clipboard/property/actions/index.d.ts +1 -0
  595. package/dist-cms/packages/clipboard/property/actions/index.js +1 -0
  596. package/dist-cms/packages/clipboard/property/actions/paste/constants.d.ts +1 -0
  597. package/dist-cms/packages/clipboard/property/actions/paste/constants.js +1 -0
  598. package/dist-cms/packages/clipboard/property/actions/paste/index.d.ts +1 -0
  599. package/dist-cms/packages/clipboard/property/actions/paste/index.js +1 -0
  600. package/dist-cms/packages/clipboard/property/actions/paste/manifests.d.ts +1 -0
  601. package/dist-cms/packages/clipboard/property/actions/paste/manifests.js +17 -16
  602. package/dist-cms/packages/clipboard/property/actions/paste/paste-from-clipboard.property-action.d.ts +1 -0
  603. package/dist-cms/packages/clipboard/property/actions/paste/paste-from-clipboard.property-action.js +5 -0
  604. package/dist-cms/packages/clipboard/property/constants.d.ts +2 -0
  605. package/dist-cms/packages/clipboard/property/constants.js +2 -0
  606. package/dist-cms/packages/clipboard/property/context/clipboard.property-context.d.ts +2 -0
  607. package/dist-cms/packages/clipboard/property/context/clipboard.property-context.js +3 -2
  608. package/dist-cms/packages/clipboard/property/index.d.ts +1 -0
  609. package/dist-cms/packages/clipboard/property/index.js +1 -0
  610. package/dist-cms/packages/clipboard/property/value-translator/paste/types.d.ts +3 -3
  611. package/dist-cms/packages/code-editor/property-editor/property-editor-ui-code-editor.element.js +2 -3
  612. package/dist-cms/packages/core/collection/collection-view.manager.js +1 -0
  613. package/dist-cms/packages/core/components/backoffice-modal-container/backoffice-modal-container.element.js +4 -1
  614. package/dist-cms/packages/core/components/input-color/input-color.element.d.ts +1 -1
  615. package/dist-cms/packages/core/components/input-date/input-date.element.d.ts +1 -0
  616. package/dist-cms/packages/core/components/input-date/input-date.element.js +10 -1
  617. package/dist-cms/packages/core/components/input-dropdown/input-dropdown-list.element.d.ts +12 -4
  618. package/dist-cms/packages/core/components/input-dropdown/input-dropdown-list.element.js +40 -18
  619. package/dist-cms/packages/core/components/input-eye-dropper/input-eye-dropper.element.d.ts +1 -1
  620. package/dist-cms/packages/core/components/input-number-range/input-number-range.element.d.ts +1 -1
  621. package/dist-cms/packages/core/components/input-number-range/input-number-range.element.js +2 -2
  622. package/dist-cms/packages/core/components/input-radio-button-list/input-radio-button-list.element.d.ts +8 -2
  623. package/dist-cms/packages/core/components/input-radio-button-list/input-radio-button-list.element.js +25 -18
  624. package/dist-cms/packages/core/components/input-slider/input-slider.element.d.ts +1 -1
  625. package/dist-cms/packages/core/components/input-toggle/input-toggle.element.d.ts +1 -1
  626. package/dist-cms/packages/core/components/input-with-alias/input-with-alias.element.js +2 -2
  627. package/dist-cms/packages/core/components/multiple-color-picker-input/multiple-color-picker-input.element.d.ts +1 -1
  628. package/dist-cms/packages/core/components/multiple-color-picker-input/multiple-color-picker-item-input.element.d.ts +1 -1
  629. package/dist-cms/packages/core/components/multiple-color-picker-input/multiple-color-picker-item-input.element.js +1 -2
  630. package/dist-cms/packages/core/components/multiple-text-string-input/input-multiple-text-string-item.element.d.ts +1 -1
  631. package/dist-cms/packages/core/components/multiple-text-string-input/input-multiple-text-string-item.element.js +6 -3
  632. package/dist-cms/packages/core/content/manager/element-data-manager.js +5 -0
  633. package/dist-cms/packages/core/content/property-dataset-context/element-property-dataset.context.d.ts +2 -0
  634. package/dist-cms/packages/core/content/property-dataset-context/element-property-dataset.context.js +4 -5
  635. package/dist-cms/packages/core/content/workspace/content-detail-validation-path-translator.d.ts +6 -0
  636. package/dist-cms/packages/core/content/workspace/content-detail-validation-path-translator.js +20 -0
  637. package/dist-cms/packages/core/content/workspace/content-detail-workspace-base.d.ts +3 -0
  638. package/dist-cms/packages/core/content/workspace/content-detail-workspace-base.js +52 -8
  639. package/dist-cms/packages/core/content-type/global-components/content-type-workspace-editor-header.element.d.ts +18 -0
  640. package/dist-cms/packages/core/content-type/global-components/content-type-workspace-editor-header.element.js +145 -0
  641. package/dist-cms/packages/core/content-type/global-components/index.d.ts +2 -0
  642. package/dist-cms/packages/core/content-type/global-components/index.js +2 -0
  643. package/dist-cms/packages/core/content-type/index.d.ts +1 -0
  644. package/dist-cms/packages/core/content-type/index.js +1 -0
  645. package/dist-cms/packages/core/content-type/repository/structure/content-type-structure-data-source.interface.d.ts +1 -1
  646. package/dist-cms/packages/core/content-type/repository/structure/content-type-structure-repository-base.d.ts +2 -1
  647. package/dist-cms/packages/core/content-type/repository/structure/content-type-structure-repository-base.js +3 -2
  648. package/dist-cms/packages/core/content-type/repository/structure/content-type-structure-repository.interface.d.ts +1 -1
  649. package/dist-cms/packages/core/content-type/repository/structure/content-type-structure-server-data-source-base.d.ts +3 -2
  650. package/dist-cms/packages/core/content-type/repository/structure/content-type-structure-server-data-source-base.js +3 -2
  651. package/dist-cms/packages/core/content-type/workspace/content-type-workspace-context-base.d.ts +5 -0
  652. package/dist-cms/packages/core/content-type/workspace/content-type-workspace-context-base.js +7 -0
  653. package/dist-cms/packages/core/content-type/workspace/content-type-workspace-context.interface.d.ts +8 -1
  654. package/dist-cms/packages/core/content-type/workspace/views/design/content-type-design-editor-group.element.js +2 -9
  655. package/dist-cms/packages/core/content-type/workspace/views/design/content-type-design-editor-properties.element.d.ts +1 -0
  656. package/dist-cms/packages/core/content-type/workspace/views/design/content-type-design-editor-properties.element.js +9 -1
  657. package/dist-cms/packages/core/content-type/workspace/views/design/content-type-design-editor-property.element.d.ts +1 -0
  658. package/dist-cms/packages/core/content-type/workspace/views/design/content-type-design-editor-property.element.js +22 -4
  659. package/dist-cms/packages/core/content-type/workspace/views/design/content-type-design-editor-tab.element.js +5 -2
  660. package/dist-cms/packages/core/content-type/workspace/views/design/content-type-design-editor.element.d.ts +2 -5
  661. package/dist-cms/packages/core/content-type/workspace/views/design/content-type-design-editor.element.js +48 -27
  662. package/dist-cms/packages/core/culture/components/input-culture-select/input-culture-select.element.d.ts +1 -1
  663. package/dist-cms/packages/core/culture/manifests.d.ts +1 -1
  664. package/dist-cms/packages/core/entity/constants.d.ts +1 -0
  665. package/dist-cms/packages/core/entity/constants.js +1 -0
  666. package/dist-cms/packages/core/entity/contexts/ancestors/ancestors.entity-context-token.d.ts +3 -0
  667. package/dist-cms/packages/core/entity/contexts/ancestors/ancestors.entity-context-token.js +2 -0
  668. package/dist-cms/packages/core/entity/contexts/ancestors/ancestors.entity-context.d.ts +26 -0
  669. package/dist-cms/packages/core/entity/contexts/ancestors/ancestors.entity-context.js +33 -0
  670. package/dist-cms/packages/core/entity/contexts/ancestors/constants.d.ts +1 -0
  671. package/dist-cms/packages/core/entity/contexts/ancestors/constants.js +1 -0
  672. package/dist-cms/packages/core/entity/contexts/ancestors/index.d.ts +1 -0
  673. package/dist-cms/packages/core/entity/contexts/ancestors/index.js +1 -0
  674. package/dist-cms/packages/core/entity/index.d.ts +2 -0
  675. package/dist-cms/packages/core/entity/index.js +2 -0
  676. package/dist-cms/packages/core/entity-action/constants.d.ts +1 -0
  677. package/dist-cms/packages/core/entity-action/constants.js +1 -0
  678. package/dist-cms/packages/core/entity-action/global-components/entity-actions-table-column-view/entity-actions-table-column-view.element.d.ts +1 -4
  679. package/dist-cms/packages/core/entity-action/global-components/entity-actions-table-column-view/entity-actions-table-column-view.element.js +2 -10
  680. package/dist-cms/packages/core/entity-action/has-children/condition/constants.d.ts +1 -0
  681. package/dist-cms/packages/core/entity-action/has-children/condition/constants.js +1 -0
  682. package/dist-cms/packages/core/entity-action/has-children/condition/entity-has-children.condition-config.d.ts +9 -0
  683. package/dist-cms/packages/core/entity-action/has-children/condition/entity-has-children.condition-config.js +1 -0
  684. package/dist-cms/packages/core/entity-action/has-children/condition/entity-has-children.condition.d.ts +7 -0
  685. package/dist-cms/packages/core/entity-action/has-children/condition/entity-has-children.condition.js +13 -0
  686. package/dist-cms/packages/core/entity-action/has-children/condition/entity-has-children.condition.manifest.d.ts +2 -0
  687. package/dist-cms/packages/core/entity-action/has-children/condition/entity-has-children.condition.manifest.js +7 -0
  688. package/dist-cms/packages/core/entity-action/has-children/constants.d.ts +2 -0
  689. package/dist-cms/packages/core/entity-action/has-children/constants.js +2 -0
  690. package/dist-cms/packages/core/entity-action/has-children/context/constants.d.ts +1 -0
  691. package/dist-cms/packages/core/entity-action/has-children/context/constants.js +1 -0
  692. package/dist-cms/packages/core/entity-action/has-children/context/has-children.context-token.d.ts +3 -0
  693. package/dist-cms/packages/core/entity-action/has-children/context/has-children.context-token.js +2 -0
  694. package/dist-cms/packages/core/entity-action/has-children/context/has-children.entity-context.d.ts +19 -0
  695. package/dist-cms/packages/core/entity-action/has-children/context/has-children.entity-context.js +27 -0
  696. package/dist-cms/packages/core/entity-action/has-children/context/index.d.ts +1 -0
  697. package/dist-cms/packages/core/entity-action/has-children/context/index.js +1 -0
  698. package/dist-cms/packages/core/entity-action/has-children/index.d.ts +1 -0
  699. package/dist-cms/packages/core/entity-action/has-children/index.js +1 -0
  700. package/dist-cms/packages/core/entity-action/has-children/manifests.d.ts +2 -0
  701. package/dist-cms/packages/core/entity-action/has-children/manifests.js +2 -0
  702. package/dist-cms/packages/core/entity-action/index.d.ts +1 -0
  703. package/dist-cms/packages/core/entity-action/index.js +1 -0
  704. package/dist-cms/packages/core/entity-action/manifests.js +2 -0
  705. package/dist-cms/packages/core/icon-registry/icon-dictionary.json +125 -0
  706. package/dist-cms/packages/core/icon-registry/icon-picker-modal/icon-picker-modal.element.js +1 -1
  707. package/dist-cms/packages/core/icon-registry/icons/icon-blend.d.ts +2 -0
  708. package/dist-cms/packages/core/icon-registry/icons/icon-blend.js +1 -0
  709. package/dist-cms/packages/core/icon-registry/icons/icon-columns-2.d.ts +2 -0
  710. package/dist-cms/packages/core/icon-registry/icons/icon-columns-2.js +1 -0
  711. package/dist-cms/packages/core/icon-registry/icons/icon-columns-3.d.ts +2 -0
  712. package/dist-cms/packages/core/icon-registry/icons/icon-columns-3.js +1 -0
  713. package/dist-cms/packages/core/icon-registry/icons/icon-columns-4.d.ts +2 -0
  714. package/dist-cms/packages/core/icon-registry/icons/icon-columns-4.js +1 -0
  715. package/dist-cms/packages/core/icon-registry/icons/icon-grid-2.d.ts +2 -0
  716. package/dist-cms/packages/core/icon-registry/icons/icon-grid-2.js +1 -0
  717. package/dist-cms/packages/core/icon-registry/icons/icon-grid-3.d.ts +2 -0
  718. package/dist-cms/packages/core/icon-registry/icons/icon-grid-3.js +1 -0
  719. package/dist-cms/packages/core/icon-registry/icons/icon-grip.d.ts +2 -0
  720. package/dist-cms/packages/core/icon-registry/icons/icon-grip.js +1 -0
  721. package/dist-cms/packages/core/icon-registry/icons/icon-heading-4.d.ts +2 -0
  722. package/dist-cms/packages/core/icon-registry/icons/icon-heading-4.js +1 -0
  723. package/dist-cms/packages/core/icon-registry/icons/icon-land-plot.d.ts +2 -0
  724. package/dist-cms/packages/core/icon-registry/icons/icon-land-plot.js +1 -0
  725. package/dist-cms/packages/core/icon-registry/icons/icon-layout-dislocated.d.ts +2 -0
  726. package/dist-cms/packages/core/icon-registry/icons/icon-layout-dislocated.js +1 -0
  727. package/dist-cms/packages/core/icon-registry/icons/icon-layout-grid.d.ts +2 -0
  728. package/dist-cms/packages/core/icon-registry/icons/icon-layout-grid.js +1 -0
  729. package/dist-cms/packages/core/icon-registry/icons/icon-layout-list.d.ts +2 -0
  730. package/dist-cms/packages/core/icon-registry/icons/icon-layout-list.js +1 -0
  731. package/dist-cms/packages/core/icon-registry/icons/icon-layout-masonry.d.ts +2 -0
  732. package/dist-cms/packages/core/icon-registry/icons/icon-layout-masonry.js +1 -0
  733. package/dist-cms/packages/core/icon-registry/icons/icon-layout-panel-left.d.ts +2 -0
  734. package/dist-cms/packages/core/icon-registry/icons/icon-layout-panel-left.js +1 -0
  735. package/dist-cms/packages/core/icon-registry/icons/icon-omega.d.ts +2 -0
  736. package/dist-cms/packages/core/icon-registry/icons/icon-omega.js +1 -0
  737. package/dist-cms/packages/core/icon-registry/icons/icon-paragraph.d.ts +2 -0
  738. package/dist-cms/packages/core/icon-registry/icons/icon-paragraph.js +1 -0
  739. package/dist-cms/packages/core/icon-registry/icons/icon-rows-2.d.ts +2 -0
  740. package/dist-cms/packages/core/icon-registry/icons/icon-rows-2.js +1 -0
  741. package/dist-cms/packages/core/icon-registry/icons/icon-rows-3.d.ts +2 -0
  742. package/dist-cms/packages/core/icon-registry/icons/icon-rows-3.js +1 -0
  743. package/dist-cms/packages/core/icon-registry/icons/icon-rows-4.d.ts +2 -0
  744. package/dist-cms/packages/core/icon-registry/icons/icon-rows-4.js +1 -0
  745. package/dist-cms/packages/core/icon-registry/icons/icon-shape-circle.d.ts +2 -0
  746. package/dist-cms/packages/core/icon-registry/icons/icon-shape-circle.js +1 -0
  747. package/dist-cms/packages/core/icon-registry/icons/icon-shape-cylinder.d.ts +2 -0
  748. package/dist-cms/packages/core/icon-registry/icons/icon-shape-cylinder.js +1 -0
  749. package/dist-cms/packages/core/icon-registry/icons/icon-shape-hexagon.d.ts +2 -0
  750. package/dist-cms/packages/core/icon-registry/icons/icon-shape-hexagon.js +1 -0
  751. package/dist-cms/packages/core/icon-registry/icons/icon-shape-rectangle-horizontal.d.ts +2 -0
  752. package/dist-cms/packages/core/icon-registry/icons/icon-shape-rectangle-horizontal.js +1 -0
  753. package/dist-cms/packages/core/icon-registry/icons/icon-shape-rectangle-vertical.d.ts +2 -0
  754. package/dist-cms/packages/core/icon-registry/icons/icon-shape-rectangle-vertical.js +1 -0
  755. package/dist-cms/packages/core/icon-registry/icons/icon-shape-square.d.ts +2 -0
  756. package/dist-cms/packages/core/icon-registry/icons/icon-shape-square.js +1 -0
  757. package/dist-cms/packages/core/icon-registry/icons/icon-shape-triangle-right.d.ts +2 -0
  758. package/dist-cms/packages/core/icon-registry/icons/icon-shape-triangle-right.js +1 -0
  759. package/dist-cms/packages/core/icon-registry/icons/icon-shape-triangle.d.ts +2 -0
  760. package/dist-cms/packages/core/icon-registry/icons/icon-shape-triangle.js +1 -0
  761. package/dist-cms/packages/core/icon-registry/icons/icon-shapes.d.ts +2 -0
  762. package/dist-cms/packages/core/icon-registry/icons/icon-shapes.js +1 -0
  763. package/dist-cms/packages/core/icon-registry/icons/icon-shared-value.d.ts +2 -0
  764. package/dist-cms/packages/core/icon-registry/icons/icon-shared-value.js +1 -0
  765. package/dist-cms/packages/core/icon-registry/icons/icon-spray-can.d.ts +2 -0
  766. package/dist-cms/packages/core/icon-registry/icons/icon-spray-can.js +1 -0
  767. package/dist-cms/packages/core/icon-registry/icons/icon-swatch-book.d.ts +2 -0
  768. package/dist-cms/packages/core/icon-registry/icons/icon-swatch-book.js +1 -0
  769. package/dist-cms/packages/core/icon-registry/icons.d.ts +186 -56
  770. package/dist-cms/packages/core/icon-registry/icons.js +148 -0
  771. package/dist-cms/packages/core/localization/components/ui-culture-input/ui-culture-input.element.d.ts +1 -1
  772. package/dist-cms/packages/core/localization/localize.element.d.ts +1 -1
  773. package/dist-cms/packages/core/localization/localize.element.js +9 -4
  774. package/dist-cms/packages/core/localization/registry/localization.registry.js +1 -1
  775. package/dist-cms/packages/core/menu/components/menu/index.d.ts +0 -1
  776. package/dist-cms/packages/core/menu/components/menu/index.js +0 -1
  777. package/dist-cms/packages/core/menu/components/menu/menu.element.d.ts +0 -1
  778. package/dist-cms/packages/core/menu/components/menu/menu.element.js +0 -4
  779. package/dist-cms/packages/core/menu/conditions/menu-alias.condition.js +10 -4
  780. package/dist-cms/packages/core/menu/menu-variant-tree-structure-workspace-context-base.js +10 -0
  781. package/dist-cms/packages/core/menu/section-sidebar-menu/section-sidebar-menu.element.js +1 -1
  782. package/dist-cms/packages/core/modal/common/error-viewer/error-viewer-modal.token.d.ts +1 -1
  783. package/dist-cms/packages/core/modal/common/error-viewer/error-viewer-modal.token.js +1 -1
  784. package/dist-cms/packages/core/modal/component/modal.element.js +1 -0
  785. package/dist-cms/packages/core/notification/controllers/peek-error/peek-error.controller.d.ts +1 -1
  786. package/dist-cms/packages/core/notification/extractUmbNotificationColor.function.d.ts +1 -1
  787. package/dist-cms/packages/core/object-type/input-object-type.element.d.ts +1 -1
  788. package/dist-cms/packages/core/picker/search/picker-search-field.element.d.ts +1 -3
  789. package/dist-cms/packages/core/picker/search/picker-search-field.element.js +6 -2
  790. package/dist-cms/packages/core/picker/search/picker-search-result.element.d.ts +1 -3
  791. package/dist-cms/packages/core/picker/search/picker-search-result.element.js +1 -2
  792. package/dist-cms/packages/core/picker-input/picker-input.context.js +1 -1
  793. package/dist-cms/packages/core/property/components/property-layout/property-layout.element.js +17 -4
  794. package/dist-cms/packages/core/property/manifests.d.ts +1 -1
  795. package/dist-cms/packages/core/property-type/index.d.ts +1 -0
  796. package/dist-cms/packages/core/property-type/index.js +1 -0
  797. package/dist-cms/packages/core/property-type/utils/index.d.ts +8 -0
  798. package/dist-cms/packages/core/property-type/utils/index.js +9 -0
  799. package/dist-cms/packages/core/property-type/workspace/property-type-workspace.context.d.ts +2 -0
  800. package/dist-cms/packages/core/property-type/workspace/property-type-workspace.context.js +10 -0
  801. package/dist-cms/packages/core/property-type/workspace/views/settings/property-workspace-view-settings.element.js +33 -19
  802. package/dist-cms/packages/core/recycle-bin/tree/tree-item/recycle-bin-tree-item.context.js +1 -1
  803. package/dist-cms/packages/core/resources/resource.controller.d.ts +1 -0
  804. package/dist-cms/packages/core/resources/resource.controller.js +2 -2
  805. package/dist-cms/packages/core/router/index.d.ts +1 -2
  806. package/dist-cms/packages/core/router/index.js +1 -2
  807. package/dist-cms/packages/core/router/modal-registration/modal-route-registration.controller.js +2 -1
  808. package/dist-cms/packages/core/router/{components/router-slot → route}/index.d.ts +1 -0
  809. package/dist-cms/packages/core/router/{components/router-slot → route}/index.js +1 -0
  810. package/dist-cms/packages/core/router/{components → route}/not-found/route-not-found.element.js +1 -2
  811. package/dist-cms/packages/core/router/{components/router-slot → route}/route.context.d.ts +5 -5
  812. package/dist-cms/packages/core/router/{components/router-slot → route}/route.context.js +7 -5
  813. package/dist-cms/packages/core/router/route/route.interface.d.ts +1 -0
  814. package/dist-cms/packages/core/router/route/route.interface.js +1 -0
  815. package/dist-cms/packages/core/router/{components/router-slot → route}/router-slot-change.event.d.ts +1 -1
  816. package/dist-cms/packages/core/router/{components/router-slot → route}/router-slot-change.event.js +1 -1
  817. package/dist-cms/packages/core/router/{components/router-slot → route}/router-slot-init.event.d.ts +1 -1
  818. package/dist-cms/packages/core/router/{components/router-slot → route}/router-slot-init.event.js +1 -1
  819. package/dist-cms/packages/core/router/{components/router-slot → route}/router-slot.element.d.ts +4 -4
  820. package/dist-cms/packages/core/router/{components/router-slot → route}/router-slot.element.js +4 -4
  821. package/dist-cms/packages/core/section/section.context.d.ts +4 -2
  822. package/dist-cms/packages/core/section/section.context.js +4 -3
  823. package/dist-cms/packages/core/sorter/sorter.controller.d.ts +1 -1
  824. package/dist-cms/packages/core/sorter/sorter.controller.js +1 -1
  825. package/dist-cms/packages/core/temporary-file/manifests.d.ts +1 -1
  826. package/dist-cms/packages/core/temporary-file/temporary-file-manager.class.d.ts +7 -0
  827. package/dist-cms/packages/core/temporary-file/temporary-file-manager.class.js +22 -3
  828. package/dist-cms/packages/core/temporary-file/temporary-file.repository.d.ts +1 -0
  829. package/dist-cms/packages/core/temporary-file/temporary-file.repository.js +1 -0
  830. package/dist-cms/packages/core/temporary-file/types.d.ts +10 -1
  831. package/dist-cms/packages/core/temporary-file/types.js +1 -0
  832. package/dist-cms/packages/core/themes/manifests.d.ts +1 -1
  833. package/dist-cms/packages/core/tree/default/default-tree.context.d.ts +29 -0
  834. package/dist-cms/packages/core/tree/default/default-tree.context.js +54 -0
  835. package/dist-cms/packages/core/tree/default/default-tree.element.d.ts +5 -0
  836. package/dist-cms/packages/core/tree/default/default-tree.element.js +24 -2
  837. package/dist-cms/packages/core/tree/entity-actions/duplicate-to/modal/duplicate-to-modal.element.js +1 -0
  838. package/dist-cms/packages/core/tree/entity-actions/move/move-to.action.js +2 -0
  839. package/dist-cms/packages/core/tree/entity-actions/sort-children-of/modal/sort-children-of-modal.element.js +3 -3
  840. package/dist-cms/packages/core/tree/expansion-manager/index.d.ts +1 -0
  841. package/dist-cms/packages/core/tree/expansion-manager/index.js +1 -0
  842. package/dist-cms/packages/core/tree/expansion-manager/tree-expansion-manager.d.ts +60 -0
  843. package/dist-cms/packages/core/tree/expansion-manager/tree-expansion-manager.js +74 -0
  844. package/dist-cms/packages/core/tree/expansion-manager/types.d.ts +2 -0
  845. package/dist-cms/packages/core/tree/expansion-manager/types.js +1 -0
  846. package/dist-cms/packages/core/tree/folder/entity-action/delete-folder/delete-folder.action.js +1 -1
  847. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-context-base.d.ts +15 -1
  848. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-context-base.js +61 -3
  849. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-element-base.d.ts +2 -0
  850. package/dist-cms/packages/core/tree/tree-item/tree-item-base/tree-item-element-base.js +14 -3
  851. package/dist-cms/packages/core/tree/tree-item/tree-item-context.interface.d.ts +4 -0
  852. package/dist-cms/packages/core/tree/tree-picker-modal/tree-picker-modal.element.js +1 -0
  853. package/dist-cms/packages/core/tree/tree-picker-modal/tree-picker-modal.token.d.ts +4 -3
  854. package/dist-cms/packages/core/utils/sanitize/escape-html.function.d.ts +1 -1
  855. package/dist-cms/packages/core/utils/sanitize/escape-html.function.js +1 -1
  856. package/dist-cms/packages/core/validation/components/form-validation-message.element.js +1 -1
  857. package/dist-cms/packages/core/validation/context/index.d.ts +1 -0
  858. package/dist-cms/packages/core/validation/context/index.js +1 -0
  859. package/dist-cms/packages/core/validation/context/server-model-validator.context.d.ts +3 -0
  860. package/dist-cms/packages/core/validation/context/server-model-validator.context.js +40 -6
  861. package/dist-cms/packages/core/validation/context/validation-messages.manager.d.ts +8 -2
  862. package/dist-cms/packages/core/validation/context/validation-messages.manager.js +33 -11
  863. package/dist-cms/packages/core/validation/controllers/bind-server-validation-to-form-control.controller.js +3 -3
  864. package/dist-cms/packages/core/validation/controllers/index.d.ts +1 -0
  865. package/dist-cms/packages/core/validation/controllers/index.js +1 -0
  866. package/dist-cms/packages/core/validation/controllers/types.d.ts +1 -0
  867. package/dist-cms/packages/core/validation/controllers/types.js +1 -0
  868. package/dist-cms/packages/core/validation/controllers/validation-path-translation/index.d.ts +2 -0
  869. package/dist-cms/packages/core/validation/controllers/validation-path-translation/index.js +2 -0
  870. package/dist-cms/packages/core/validation/controllers/validation-path-translation/property-validation-path-translator.extension.d.ts +11 -0
  871. package/dist-cms/packages/core/validation/controllers/validation-path-translation/property-validation-path-translator.extension.js +1 -0
  872. package/dist-cms/packages/core/validation/controllers/validation-path-translation/types.d.ts +31 -0
  873. package/dist-cms/packages/core/validation/controllers/validation-path-translation/types.js +1 -0
  874. package/dist-cms/packages/core/validation/controllers/validation-path-translation/validation-path-translation.controller.d.ts +14 -0
  875. package/dist-cms/packages/core/validation/controllers/validation-path-translation/validation-path-translation.controller.js +30 -0
  876. package/dist-cms/packages/core/validation/controllers/validation-path-translation/validation-property-path-translation.controller.d.ts +20 -0
  877. package/dist-cms/packages/core/validation/controllers/validation-path-translation/validation-property-path-translation.controller.js +44 -0
  878. package/dist-cms/packages/core/validation/controllers/validation.controller.d.ts +32 -2
  879. package/dist-cms/packages/core/validation/controllers/validation.controller.js +193 -68
  880. package/dist-cms/packages/core/validation/directives/bind-to-validation.lit-directive.js +1 -1
  881. package/dist-cms/packages/core/validation/index.d.ts +1 -1
  882. package/dist-cms/packages/core/validation/translators/validation-path-translator-base.controller.d.ts +1 -1
  883. package/dist-cms/packages/core/validation/translators/validation-path-translator-base.controller.js +1 -1
  884. package/dist-cms/packages/core/validation/translators/variant-values-validation-path-translator.controller.js +6 -0
  885. package/dist-cms/packages/core/validation/translators/variants-validation-path-translator.controller.js +6 -0
  886. package/dist-cms/packages/core/validation/types.d.ts +2 -0
  887. package/dist-cms/packages/core/validation/types.js +1 -0
  888. package/dist-cms/packages/core/validation/utils/index.d.ts +2 -0
  889. package/dist-cms/packages/core/validation/utils/index.js +2 -0
  890. package/dist-cms/packages/core/validation/utils/query-mapper-json-paths.function.d.ts +12 -0
  891. package/dist-cms/packages/core/validation/utils/query-mapper-json-paths.function.js +47 -0
  892. package/dist-cms/packages/core/validation/utils/scope-mapper-json-paths.function.d.ts +8 -0
  893. package/dist-cms/packages/core/validation/utils/scope-mapper-json-paths.function.js +25 -0
  894. package/dist-cms/packages/core/variant/variant-object-compare.function.d.ts +5 -0
  895. package/dist-cms/packages/core/variant/variant-object-compare.function.js +5 -0
  896. package/dist-cms/packages/core/workspace/components/workspace-action/default/workspace-action-default-kind.element.js +10 -8
  897. package/dist-cms/packages/core/workspace/components/workspace-action-menu/workspace-action-menu.element.js +22 -24
  898. package/dist-cms/packages/core/workspace/components/workspace-editor/workspace-editor.element.js +2 -2
  899. package/dist-cms/packages/core/workspace/components/workspace-split-view/workspace-split-view-variant-selector.element.js +1 -1
  900. package/dist-cms/packages/core/workspace/components/workspace-split-view/workspace-split-view.context.js +10 -0
  901. package/dist-cms/packages/core/workspace/contexts/tokens/variant-dataset-workspace-context.interface.d.ts +2 -0
  902. package/dist-cms/packages/core/workspace/entity-detail/entity-detail-workspace-base.d.ts +1 -0
  903. package/dist-cms/packages/core/workspace/entity-detail/entity-detail-workspace-base.js +15 -12
  904. package/dist-cms/packages/core/workspace/info-app/global-components/workspace-info-app-layout.element.js +7 -1
  905. package/dist-cms/packages/core/workspace/info-app/workspace-info-app.extension.d.ts +2 -2
  906. package/dist-cms/packages/core/workspace/modals/workspace-modal.element.d.ts +3 -1
  907. package/dist-cms/packages/core/workspace/modals/workspace-modal.element.js +17 -1
  908. package/dist-cms/packages/core/workspace/modals/workspace-modal.token.d.ts +1 -0
  909. package/dist-cms/packages/core/workspace/submittable/submittable-workspace-context-base.d.ts +2 -2
  910. package/dist-cms/packages/core/workspace/submittable/submittable-workspace-context-base.js +9 -15
  911. package/dist-cms/packages/data-type/components/data-type-flow-input/data-type-flow-input.element.d.ts +1 -1
  912. package/dist-cms/packages/data-type/components/data-type-flow-input/data-type-flow-input.element.js +2 -2
  913. package/dist-cms/packages/data-type/components/data-type-input/data-type-input.element.d.ts +1 -1
  914. package/dist-cms/packages/data-type/entity-actions/manifests.js +3 -2
  915. package/dist-cms/packages/data-type/manifests.js +2 -0
  916. package/dist-cms/packages/data-type/reference/info-app/manifests.d.ts +1 -0
  917. package/dist-cms/packages/data-type/reference/info-app/manifests.js +20 -0
  918. package/dist-cms/packages/data-type/reference/manifests.js +2 -1
  919. package/dist-cms/packages/data-type/reference/repository/data-type-reference.repository.d.ts +5 -13
  920. package/dist-cms/packages/data-type/reference/repository/data-type-reference.repository.js +7 -14
  921. package/dist-cms/packages/data-type/reference/repository/data-type-reference.server.data.d.ts +18 -10
  922. package/dist-cms/packages/data-type/reference/repository/data-type-reference.server.data.js +43 -13
  923. package/dist-cms/packages/data-type/workspace/data-type-workspace.context.js +21 -3
  924. package/dist-cms/packages/data-type/workspace/views/details/data-type-details-workspace-view.element.js +4 -2
  925. package/dist-cms/packages/data-type/workspace/views/info/workspace-view-data-type-info.element.d.ts +0 -1
  926. package/dist-cms/packages/data-type/workspace/views/info/workspace-view-data-type-info.element.js +1 -3
  927. package/dist-cms/packages/dictionary/entity-action/import/import-dictionary-modal.element.js +2 -2
  928. package/dist-cms/packages/documents/document-redirect-management/dashboard-redirect-management.element.js +1 -3
  929. package/dist-cms/packages/documents/document-types/constants.d.ts +3 -2
  930. package/dist-cms/packages/documents/document-types/constants.js +3 -2
  931. package/dist-cms/packages/documents/document-types/entity-actions/import/modal/document-type-import-modal.element.d.ts +1 -2
  932. package/dist-cms/packages/documents/document-types/entity-actions/import/modal/document-type-import-modal.element.js +21 -22
  933. package/dist-cms/packages/documents/document-types/manifests.js +2 -0
  934. package/dist-cms/packages/documents/document-types/property-editors/document-type-picker/manifests.js +0 -6
  935. package/dist-cms/packages/documents/document-types/property-editors/document-type-picker/property-editor-ui-document-type-picker.element.d.ts +0 -1
  936. package/dist-cms/packages/documents/document-types/property-editors/document-type-picker/property-editor-ui-document-type-picker.element.js +2 -7
  937. package/dist-cms/packages/documents/document-types/property-type/constants.d.ts +1 -0
  938. package/dist-cms/packages/documents/document-types/property-type/constants.js +1 -0
  939. package/dist-cms/packages/documents/document-types/property-type/document-type-property-type-item-ref.element.d.ts +18 -0
  940. package/dist-cms/packages/documents/document-types/property-type/document-type-property-type-item-ref.element.js +79 -0
  941. package/dist-cms/packages/documents/document-types/property-type/document-type-property-type-reference-response.management-api.mapping.d.ts +8 -0
  942. package/dist-cms/packages/documents/document-types/property-type/document-type-property-type-reference-response.management-api.mapping.js +19 -0
  943. package/dist-cms/packages/documents/document-types/property-type/entity.d.ts +2 -0
  944. package/dist-cms/packages/documents/document-types/property-type/entity.js +1 -0
  945. package/dist-cms/packages/documents/document-types/property-type/manifests.d.ts +1 -0
  946. package/dist-cms/packages/documents/document-types/property-type/manifests.js +19 -0
  947. package/dist-cms/packages/documents/document-types/property-type/types.d.ts +11 -0
  948. package/dist-cms/packages/documents/document-types/property-type/types.js +1 -0
  949. package/dist-cms/packages/documents/document-types/repository/structure/document-type-structure.server.data-source.js +5 -2
  950. package/dist-cms/packages/documents/document-types/workspace/document-type/document-type-workspace-editor.element.d.ts +0 -8
  951. package/dist-cms/packages/documents/document-types/workspace/document-type/document-type-workspace-editor.element.js +3 -122
  952. package/dist-cms/packages/documents/document-types/workspace/document-type/views/settings/document-type-workspace-view-settings.element.js +24 -18
  953. package/dist-cms/packages/documents/documents/audit-log/info-app/document-history-workspace-info-app.element.js +1 -0
  954. package/dist-cms/packages/documents/documents/collection/action/create-document-collection-action.element.js +4 -4
  955. package/dist-cms/packages/documents/documents/collection/repository/document-collection.server.data-source.js +6 -0
  956. package/dist-cms/packages/documents/documents/collection/types.d.ts +2 -0
  957. package/dist-cms/packages/documents/documents/collection/views/table/column-layouts/document-entity-actions-table-column-view.element.d.ts +15 -0
  958. package/dist-cms/packages/documents/documents/collection/views/table/column-layouts/document-entity-actions-table-column-view.element.js +35 -0
  959. package/dist-cms/packages/documents/documents/collection/views/table/column-layouts/document-table-column-state.element.js +4 -4
  960. package/dist-cms/packages/documents/documents/collection/views/table/document-table-collection-view.element.d.ts +1 -0
  961. package/dist-cms/packages/documents/documents/collection/views/table/document-table-collection-view.element.js +3 -5
  962. package/dist-cms/packages/documents/documents/components/input-document/input-document.element.d.ts +0 -1
  963. package/dist-cms/packages/documents/documents/components/input-document/input-document.element.js +0 -3
  964. package/dist-cms/packages/documents/documents/entity-actions/create/document-create-options-modal.element.js +3 -3
  965. package/dist-cms/packages/documents/documents/entity-actions/duplicate/modal/duplicate-document-modal.element.js +4 -1
  966. package/dist-cms/packages/documents/documents/global-contexts/document-configuration.context.d.ts +2 -2
  967. package/dist-cms/packages/documents/documents/global-contexts/document-configuration.context.js +3 -4
  968. package/dist-cms/packages/documents/documents/modals/save-modal/document-save-modal.element.js +2 -2
  969. package/dist-cms/packages/documents/documents/property-editors/document-picker/manifests.js +0 -6
  970. package/dist-cms/packages/documents/documents/property-editors/document-picker/property-editor-ui-document-picker.element.d.ts +0 -1
  971. package/dist-cms/packages/documents/documents/property-editors/document-picker/property-editor-ui-document-picker.element.js +2 -7
  972. package/dist-cms/packages/documents/documents/publishing/publish/modal/document-publish-modal.element.js +2 -2
  973. package/dist-cms/packages/documents/documents/publishing/publish/workspace-action/save-and-publish.action.js +3 -3
  974. package/dist-cms/packages/documents/documents/publishing/publish-with-descendants/modal/document-publish-with-descendants-modal.element.js +2 -2
  975. package/dist-cms/packages/documents/documents/publishing/repository/document-publishing.repository.d.ts +1 -1
  976. package/dist-cms/packages/documents/documents/publishing/repository/document-publishing.repository.js +3 -0
  977. package/dist-cms/packages/documents/documents/publishing/repository/document-publishing.server.data-source.d.ts +5 -1
  978. package/dist-cms/packages/documents/documents/publishing/repository/document-publishing.server.data-source.js +19 -1
  979. package/dist-cms/packages/documents/documents/publishing/schedule-publish/modal/document-schedule-modal.element.js +3 -2
  980. package/dist-cms/packages/documents/documents/publishing/schedule-publish/workspace-action/manifests.js +1 -1
  981. package/dist-cms/packages/documents/documents/publishing/unpublish/modal/document-unpublish-modal.element.d.ts +3 -2
  982. package/dist-cms/packages/documents/documents/publishing/unpublish/modal/document-unpublish-modal.element.js +35 -46
  983. package/dist-cms/packages/documents/documents/publishing/workspace-context/document-publishing.workspace-context.js +10 -4
  984. package/dist-cms/packages/documents/documents/recycle-bin/entity-action/manifests.js +4 -0
  985. package/dist-cms/packages/documents/documents/recycle-bin/tree/types.d.ts +1 -1
  986. package/dist-cms/packages/documents/documents/reference/components/document-reference-table.element.d.ts +4 -0
  987. package/dist-cms/packages/documents/documents/reference/components/document-reference-table.element.js +14 -1
  988. package/dist-cms/packages/documents/documents/reference/info-app/manifests.js +5 -2
  989. package/dist-cms/packages/documents/documents/reference/repository/document-reference-response.management-api.mapping.js +1 -0
  990. package/dist-cms/packages/documents/documents/reference/types.d.ts +6 -2
  991. package/dist-cms/packages/documents/documents/rollback/entity-action/manifests.js +1 -0
  992. package/dist-cms/packages/documents/documents/rollback/entity-action/rollback.action.js +3 -1
  993. package/dist-cms/packages/documents/documents/rollback/modal/rollback-modal.element.js +2 -1
  994. package/dist-cms/packages/documents/documents/tree/document-tree.element.d.ts +1 -2
  995. package/dist-cms/packages/documents/documents/tree/document-tree.element.js +1 -2
  996. package/dist-cms/packages/documents/documents/tree/document-tree.server.data-source.js +6 -0
  997. package/dist-cms/packages/documents/documents/tree/tree-item/document-tree-item.context.d.ts +1 -0
  998. package/dist-cms/packages/documents/documents/tree/tree-item/document-tree-item.context.js +7 -0
  999. package/dist-cms/packages/documents/documents/tree/types.d.ts +2 -0
  1000. package/dist-cms/packages/documents/documents/user-permissions/conditions/document-user-permission.condition.js +23 -7
  1001. package/dist-cms/packages/documents/documents/user-permissions/input-document-granular-user-permission/input-document-granular-user-permission.element.d.ts +2 -1
  1002. package/dist-cms/packages/documents/documents/user-permissions/input-document-granular-user-permission/input-document-granular-user-permission.element.js +25 -8
  1003. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.d.ts +0 -1
  1004. package/dist-cms/packages/documents/documents/workspace/document-workspace.context.js +20 -9
  1005. package/dist-cms/packages/extension-types/index.d.ts +1 -0
  1006. package/dist-cms/packages/health-check/dashboard-health-check.element.d.ts +2 -1
  1007. package/dist-cms/packages/health-check/dashboard-health-check.element.js +3 -3
  1008. package/dist-cms/packages/health-check/health-check-dashboard.context.d.ts +4 -3
  1009. package/dist-cms/packages/health-check/health-check-dashboard.context.js +4 -3
  1010. package/dist-cms/packages/language/components/input-language/input-language.element.d.ts +9 -1
  1011. package/dist-cms/packages/language/components/input-language/input-language.element.js +39 -16
  1012. package/dist-cms/packages/language/item/langauge-item-ref.element.d.ts +18 -0
  1013. package/dist-cms/packages/language/item/langauge-item-ref.element.js +65 -0
  1014. package/dist-cms/packages/language/item/manifests.d.ts +1 -0
  1015. package/dist-cms/packages/language/item/manifests.js +10 -0
  1016. package/dist-cms/packages/language/manifests.js +13 -11
  1017. package/dist-cms/packages/language/repository/item/language-item.server.data-source.js +2 -0
  1018. package/dist-cms/packages/language/repository/item/types.d.ts +2 -0
  1019. package/dist-cms/packages/log-viewer/components/log-viewer-date-range-selector.element.js +6 -22
  1020. package/dist-cms/packages/log-viewer/workspace/logviewer-workspace.context.d.ts +3 -2
  1021. package/dist-cms/packages/log-viewer/workspace/logviewer-workspace.context.js +4 -5
  1022. package/dist-cms/packages/log-viewer/workspace/views/overview/components/log-viewer-log-types-chart.element.js +2 -1
  1023. package/dist-cms/packages/log-viewer/workspace/views/search/components/log-viewer-level-tag.element.js +3 -3
  1024. package/dist-cms/packages/log-viewer/workspace/views/search/components/log-viewer-message.element.js +0 -1
  1025. package/dist-cms/packages/markdown-editor/property-editors/markdown-editor/markdown-editor-property-value-preset.d.ts +1 -1
  1026. package/dist-cms/packages/markdown-editor/property-editors/markdown-editor/property-editor-ui-markdown-editor.element.js +2 -2
  1027. package/dist-cms/packages/media/dropzone/components/index.d.ts +1 -0
  1028. package/dist-cms/packages/media/dropzone/components/index.js +1 -0
  1029. package/dist-cms/packages/media/dropzone/components/input-dropzone/input-dropzone.element.d.ts +61 -0
  1030. package/dist-cms/packages/media/dropzone/components/input-dropzone/input-dropzone.element.js +268 -0
  1031. package/dist-cms/packages/media/dropzone/constants.d.ts +8 -0
  1032. package/dist-cms/packages/media/{media/dropzone/types.js → dropzone/constants.js} +1 -0
  1033. package/dist-cms/packages/media/dropzone/dropzone-change.event.d.ts +9 -0
  1034. package/dist-cms/packages/media/dropzone/dropzone-change.event.js +7 -0
  1035. package/dist-cms/packages/media/{media/dropzone → dropzone}/dropzone-manager.class.d.ts +11 -2
  1036. package/dist-cms/packages/media/{media/dropzone → dropzone}/dropzone-manager.class.js +73 -29
  1037. package/dist-cms/packages/media/dropzone/index.d.ts +7 -0
  1038. package/dist-cms/packages/media/dropzone/index.js +6 -0
  1039. package/dist-cms/packages/media/dropzone/manifests.d.ts +1 -0
  1040. package/dist-cms/packages/media/dropzone/manifests.js +2 -0
  1041. package/dist-cms/packages/media/{media/dropzone → dropzone}/modals/dropzone-media-type-picker/dropzone-media-type-picker-modal.element.d.ts +1 -1
  1042. package/dist-cms/packages/media/{media/dropzone → dropzone}/modals/dropzone-media-type-picker/dropzone-media-type-picker-modal.element.js +3 -3
  1043. package/dist-cms/packages/media/{media/dropzone → dropzone}/modals/dropzone-media-type-picker/dropzone-media-type-picker-modal.token.d.ts +2 -2
  1044. package/dist-cms/packages/media/{media/dropzone → dropzone}/modals/dropzone-media-type-picker/dropzone-media-type-picker-modal.token.js +1 -1
  1045. package/dist-cms/packages/media/dropzone/modals/manifests.d.ts +1 -0
  1046. package/dist-cms/packages/media/{media/dropzone → dropzone}/types.d.ts +4 -10
  1047. package/dist-cms/packages/media/dropzone/types.js +1 -0
  1048. package/dist-cms/packages/media/manifests.js +2 -0
  1049. package/dist-cms/packages/media/media/collection/action/create-media-collection-action.element.js +3 -3
  1050. package/dist-cms/packages/media/media/collection/media-collection.context.d.ts +1 -1
  1051. package/dist-cms/packages/media/media/collection/media-collection.element.js +2 -2
  1052. package/dist-cms/packages/media/media/collection/types.d.ts +1 -1
  1053. package/dist-cms/packages/media/media/collection/views/grid/media-grid-collection-view.element.js +1 -1
  1054. package/dist-cms/packages/media/media/components/input-image-cropper/image-cropper-field.element.d.ts +6 -3
  1055. package/dist-cms/packages/media/media/components/input-image-cropper/image-cropper-field.element.js +61 -43
  1056. package/dist-cms/packages/media/media/components/input-image-cropper/image-cropper-focus-setter.element.js +30 -1
  1057. package/dist-cms/packages/media/media/components/input-image-cropper/image-cropper-preview.element.d.ts +1 -1
  1058. package/dist-cms/packages/media/media/components/input-image-cropper/image-cropper-preview.element.js +3 -3
  1059. package/dist-cms/packages/media/media/components/input-image-cropper/input-image-cropper.element.d.ts +6 -6
  1060. package/dist-cms/packages/media/media/components/input-image-cropper/input-image-cropper.element.js +52 -47
  1061. package/dist-cms/packages/media/media/components/input-media/input-media.element.d.ts +0 -1
  1062. package/dist-cms/packages/media/media/components/input-media/input-media.element.js +3 -6
  1063. package/dist-cms/packages/media/media/components/input-rich-media/input-rich-media.element.js +6 -4
  1064. package/dist-cms/packages/media/media/components/input-upload-field/input-upload-field.element.d.ts +6 -7
  1065. package/dist-cms/packages/media/media/components/input-upload-field/input-upload-field.element.js +68 -175
  1066. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-audio.element.d.ts +1 -0
  1067. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-audio.element.js +4 -1
  1068. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-file.element.d.ts +0 -7
  1069. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-file.element.js +15 -67
  1070. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-image.element.d.ts +1 -0
  1071. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-image.element.js +21 -8
  1072. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-svg.element.d.ts +1 -0
  1073. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-svg.element.js +21 -13
  1074. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-video.element.d.ts +1 -0
  1075. package/dist-cms/packages/media/media/components/input-upload-field/preview/input-upload-field-video.element.js +4 -1
  1076. package/dist-cms/packages/media/media/components/input-upload-field/utils.js +4 -0
  1077. package/dist-cms/packages/media/media/constants.d.ts +0 -1
  1078. package/dist-cms/packages/media/media/constants.js +0 -1
  1079. package/dist-cms/packages/media/media/dropzone/dropzone-media.element.d.ts +42 -0
  1080. package/dist-cms/packages/media/media/dropzone/dropzone-media.element.js +127 -0
  1081. package/dist-cms/packages/media/media/dropzone/dropzone.element.d.ts +7 -32
  1082. package/dist-cms/packages/media/media/dropzone/dropzone.element.js +16 -158
  1083. package/dist-cms/packages/media/media/dropzone/index.d.ts +1 -2
  1084. package/dist-cms/packages/media/media/dropzone/index.js +1 -2
  1085. package/dist-cms/packages/media/media/entity-actions/create/media-create-options-modal.element.js +3 -3
  1086. package/dist-cms/packages/media/media/entity-actions/manifests.js +1 -1
  1087. package/dist-cms/packages/media/media/index.d.ts +4 -0
  1088. package/dist-cms/packages/media/media/index.js +4 -0
  1089. package/dist-cms/packages/media/media/manifests.js +0 -2
  1090. package/dist-cms/packages/media/media/modals/media-picker/components/media-picker-create-item.element.js +1 -1
  1091. package/dist-cms/packages/media/media/modals/media-picker/media-picker-modal.element.js +20 -6
  1092. package/dist-cms/packages/media/media/property-editors/image-cropper/property-editor-ui-image-cropper.element.d.ts +1 -1
  1093. package/dist-cms/packages/media/media/property-editors/image-cropper/property-editor-ui-image-cropper.element.js +2 -2
  1094. package/dist-cms/packages/media/media/property-editors/image-crops/property-editor-ui-image-crops.element.js +14 -6
  1095. package/dist-cms/packages/media/media/property-editors/media-entity-picker/property-editor-ui-media-entity-picker.element.js +2 -2
  1096. package/dist-cms/packages/media/media/property-editors/media-picker/property-editor-ui-media-picker.element.js +2 -2
  1097. package/dist-cms/packages/media/media/property-editors/upload-field/property-editor-ui-upload-field.element.d.ts +1 -1
  1098. package/dist-cms/packages/media/media/property-editors/upload-field/property-editor-ui-upload-field.element.js +2 -2
  1099. package/dist-cms/packages/media/media/recycle-bin/entity-action/manifests.js +6 -0
  1100. package/dist-cms/packages/media/media/reference/info-app/manifests.js +5 -2
  1101. package/dist-cms/packages/media/media/reference/repository/media-reference-response.management-api.mapping.js +1 -0
  1102. package/dist-cms/packages/media/media/reference/repository/types.d.ts +6 -2
  1103. package/dist-cms/packages/media/media/types.d.ts +0 -1
  1104. package/dist-cms/packages/media/media-types/constants.d.ts +1 -0
  1105. package/dist-cms/packages/media/media-types/constants.js +1 -0
  1106. package/dist-cms/packages/media/media-types/entity-actions/import/modal/media-type-import-modal.element.d.ts +0 -1
  1107. package/dist-cms/packages/media/media-types/entity-actions/import/modal/media-type-import-modal.element.js +21 -22
  1108. package/dist-cms/packages/media/media-types/manifests.js +6 -4
  1109. package/dist-cms/packages/media/media-types/property-editors/media-type-picker/manifests.js +0 -10
  1110. package/dist-cms/packages/media/media-types/property-editors/media-type-picker/property-editor-ui-media-type-picker.element.js +2 -2
  1111. package/dist-cms/packages/media/media-types/property-type/constants.d.ts +1 -0
  1112. package/dist-cms/packages/media/media-types/property-type/constants.js +1 -0
  1113. package/dist-cms/packages/media/media-types/property-type/entity.d.ts +2 -0
  1114. package/dist-cms/packages/media/media-types/property-type/entity.js +1 -0
  1115. package/dist-cms/packages/media/media-types/property-type/manifests.d.ts +1 -0
  1116. package/dist-cms/packages/media/media-types/property-type/manifests.js +19 -0
  1117. package/dist-cms/packages/media/media-types/property-type/media-type-property-type-item-ref.element.d.ts +18 -0
  1118. package/dist-cms/packages/media/media-types/property-type/media-type-property-type-item-ref.element.js +79 -0
  1119. package/dist-cms/packages/media/media-types/property-type/media-type-property-type-reference-response.management-api.mapping.d.ts +8 -0
  1120. package/dist-cms/packages/media/media-types/property-type/media-type-property-type-reference-response.management-api.mapping.js +19 -0
  1121. package/dist-cms/packages/media/media-types/property-type/types.d.ts +11 -0
  1122. package/dist-cms/packages/media/media-types/property-type/types.js +1 -0
  1123. package/dist-cms/packages/media/media-types/repository/structure/media-type-structure.server.data-source.js +5 -2
  1124. package/dist-cms/packages/media/media-types/workspace/media-type-workspace-editor.element.d.ts +0 -9
  1125. package/dist-cms/packages/media/media-types/workspace/media-type-workspace-editor.element.js +3 -123
  1126. package/dist-cms/packages/media/vite.config.js +1 -0
  1127. package/dist-cms/packages/members/member/constants.d.ts +1 -0
  1128. package/dist-cms/packages/members/member/constants.js +1 -0
  1129. package/dist-cms/packages/members/member/entity-actions/manifests.js +4 -2
  1130. package/dist-cms/packages/members/member/item/repository/types.d.ts +9 -1
  1131. package/dist-cms/packages/members/member/manifests.js +2 -0
  1132. package/dist-cms/packages/members/member/property-editor/member-picker/property-editor-ui-member-picker.element.js +2 -2
  1133. package/dist-cms/packages/members/member/reference/constants.d.ts +1 -0
  1134. package/dist-cms/packages/members/member/reference/constants.js +1 -0
  1135. package/dist-cms/packages/members/member/reference/index.d.ts +1 -0
  1136. package/dist-cms/packages/members/member/reference/index.js +1 -0
  1137. package/dist-cms/packages/members/member/reference/info-app/manifests.d.ts +1 -0
  1138. package/dist-cms/packages/members/member/reference/info-app/manifests.js +20 -0
  1139. package/dist-cms/packages/members/member/reference/manifests.d.ts +1 -0
  1140. package/dist-cms/packages/members/member/reference/manifests.js +3 -0
  1141. package/dist-cms/packages/members/member/reference/repository/constants.d.ts +1 -0
  1142. package/dist-cms/packages/members/member/reference/repository/constants.js +1 -0
  1143. package/dist-cms/packages/members/member/reference/repository/index.d.ts +1 -0
  1144. package/dist-cms/packages/members/member/reference/repository/index.js +1 -0
  1145. package/dist-cms/packages/members/member/reference/repository/manifests.d.ts +1 -0
  1146. package/dist-cms/packages/members/member/reference/repository/manifests.js +18 -0
  1147. package/dist-cms/packages/members/member/reference/repository/member-reference-response.management-api.mapping.d.ts +8 -0
  1148. package/dist-cms/packages/members/member/reference/repository/member-reference-response.management-api.mapping.js +25 -0
  1149. package/dist-cms/packages/members/member/reference/repository/member-reference.repository.d.ts +13 -0
  1150. package/dist-cms/packages/members/member/reference/repository/member-reference.repository.js +25 -0
  1151. package/dist-cms/packages/members/member/reference/repository/member-reference.server.data.d.ts +38 -0
  1152. package/dist-cms/packages/members/member/reference/repository/member-reference.server.data.js +83 -0
  1153. package/dist-cms/packages/members/member/reference/repository/types.d.ts +17 -0
  1154. package/dist-cms/packages/members/member/reference/repository/types.js +1 -0
  1155. package/dist-cms/packages/members/member/repository/member-repository-base.d.ts +1 -1
  1156. package/dist-cms/packages/members/member/repository/member-repository-base.js +1 -1
  1157. package/dist-cms/packages/members/member/workspace/member/views/member/member-workspace-view-member-info.element.js +2 -2
  1158. package/dist-cms/packages/members/member/workspace/member/views/member/member-workspace-view-member.element.d.ts +1 -0
  1159. package/dist-cms/packages/members/member/workspace/member/views/member/member-workspace-view-member.element.js +34 -16
  1160. package/dist-cms/packages/members/member-group/components/input-member-group/input-member-group.element.d.ts +0 -1
  1161. package/dist-cms/packages/members/member-group/components/input-member-group/input-member-group.element.js +0 -3
  1162. package/dist-cms/packages/members/member-group/property-editor/member-group-picker/property-editor-ui-member-group-picker.element.js +2 -3
  1163. package/dist-cms/packages/members/member-type/constants.d.ts +2 -1
  1164. package/dist-cms/packages/members/member-type/constants.js +2 -1
  1165. package/dist-cms/packages/members/member-type/manifests.js +2 -0
  1166. package/dist-cms/packages/members/member-type/property-type/constants.d.ts +1 -0
  1167. package/dist-cms/packages/members/member-type/property-type/constants.js +1 -0
  1168. package/dist-cms/packages/members/member-type/property-type/entity.d.ts +2 -0
  1169. package/dist-cms/packages/members/member-type/property-type/entity.js +1 -0
  1170. package/dist-cms/packages/members/member-type/property-type/manifests.d.ts +1 -0
  1171. package/dist-cms/packages/members/member-type/property-type/manifests.js +19 -0
  1172. package/dist-cms/packages/members/member-type/property-type/member-type-property-type-item-ref.element.d.ts +18 -0
  1173. package/dist-cms/packages/members/member-type/property-type/member-type-property-type-item-ref.element.js +79 -0
  1174. package/dist-cms/packages/members/member-type/property-type/member-type-property-type-reference-response.management-api.mapping.d.ts +8 -0
  1175. package/dist-cms/packages/members/member-type/property-type/member-type-property-type-reference-response.management-api.mapping.js +19 -0
  1176. package/dist-cms/packages/members/member-type/property-type/types.d.ts +11 -0
  1177. package/dist-cms/packages/members/member-type/property-type/types.js +1 -0
  1178. package/dist-cms/packages/members/member-type/workspace/member-type-workspace-editor.element.d.ts +0 -8
  1179. package/dist-cms/packages/members/member-type/workspace/member-type-workspace-editor.element.js +3 -131
  1180. package/dist-cms/packages/models-builder/models-builder-dashboard.element.js +9 -17
  1181. package/dist-cms/packages/multi-url-picker/components/input-multi-url/input-multi-url.element.d.ts +1 -1
  1182. package/dist-cms/packages/multi-url-picker/link-picker-modal/link-picker-modal.element.js +1 -2
  1183. package/dist-cms/packages/multi-url-picker/property-editor/property-editor-ui-multi-url-picker.element.js +2 -2
  1184. package/dist-cms/packages/property-editors/accepted-types/property-editor-ui-accepted-upload-types.element.d.ts +0 -5
  1185. package/dist-cms/packages/property-editors/accepted-types/property-editor-ui-accepted-upload-types.element.js +4 -44
  1186. package/dist-cms/packages/property-editors/checkbox-list/components/input-checkbox-list/input-checkbox-list.element.d.ts +8 -2
  1187. package/dist-cms/packages/property-editors/checkbox-list/components/input-checkbox-list/input-checkbox-list.element.js +30 -24
  1188. package/dist-cms/packages/property-editors/checkbox-list/property-editor-ui-checkbox-list.element.d.ts +9 -1
  1189. package/dist-cms/packages/property-editors/checkbox-list/property-editor-ui-checkbox-list.element.js +19 -5
  1190. package/dist-cms/packages/property-editors/collection/config/bulk-action-permissions/permissions.element.js +2 -2
  1191. package/dist-cms/packages/property-editors/collection/config/column/column-configuration.element.js +15 -7
  1192. package/dist-cms/packages/property-editors/collection/config/column/components/input-collection-content-type-property.element.d.ts +1 -1
  1193. package/dist-cms/packages/property-editors/collection/config/layout/layout-configuration.element.js +15 -7
  1194. package/dist-cms/packages/property-editors/collection/config/order-by/order-by.element.js +2 -2
  1195. package/dist-cms/packages/property-editors/color-picker/property-editor-ui-color-picker.element.js +2 -2
  1196. package/dist-cms/packages/property-editors/color-swatches-editor/property-editor-ui-color-swatches-editor.element.js +2 -2
  1197. package/dist-cms/packages/property-editors/content-picker/components/input-content/input-content.element.d.ts +1 -3
  1198. package/dist-cms/packages/property-editors/content-picker/components/input-content/input-content.element.js +3 -10
  1199. package/dist-cms/packages/property-editors/content-picker/config/source-content/input-content-picker-source.element.d.ts +1 -1
  1200. package/dist-cms/packages/property-editors/content-picker/config/source-content/property-editor-ui-content-picker-source.element.d.ts +1 -1
  1201. package/dist-cms/packages/property-editors/content-picker/config/source-content/property-editor-ui-content-picker-source.element.js +2 -2
  1202. package/dist-cms/packages/property-editors/content-picker/config/source-type/property-editor-ui-content-picker-source-type.element.js +2 -2
  1203. package/dist-cms/packages/property-editors/content-picker/manifests.js +0 -6
  1204. package/dist-cms/packages/property-editors/content-picker/property-editor-ui-content-picker.element.d.ts +11 -12
  1205. package/dist-cms/packages/property-editors/content-picker/property-editor-ui-content-picker.element.js +70 -11
  1206. package/dist-cms/packages/property-editors/date-picker/property-editor-ui-date-picker.element.js +2 -2
  1207. package/dist-cms/packages/property-editors/dropdown/property-editor-ui-dropdown.element.d.ts +12 -3
  1208. package/dist-cms/packages/property-editors/dropdown/property-editor-ui-dropdown.element.js +47 -18
  1209. package/dist-cms/packages/property-editors/eye-dropper/property-editor-ui-eye-dropper.element.js +2 -2
  1210. package/dist-cms/packages/property-editors/icon-picker/property-editor-ui-icon-picker.element.js +4 -5
  1211. package/dist-cms/packages/property-editors/multiple-text-string/property-editor-ui-multiple-text-string.element.js +2 -2
  1212. package/dist-cms/packages/property-editors/number/property-editor-ui-number.element.js +2 -2
  1213. package/dist-cms/packages/property-editors/number-range/property-editor-ui-number-range.element.js +2 -2
  1214. package/dist-cms/packages/property-editors/order-direction/property-editor-ui-order-direction.element.js +2 -2
  1215. package/dist-cms/packages/property-editors/overlay-size/property-editor-ui-overlay-size.element.d.ts +1 -1
  1216. package/dist-cms/packages/property-editors/overlay-size/property-editor-ui-overlay-size.element.js +2 -2
  1217. package/dist-cms/packages/property-editors/radio-button-list/property-editor-ui-radio-button-list.element.d.ts +10 -3
  1218. package/dist-cms/packages/property-editors/radio-button-list/property-editor-ui-radio-button-list.element.js +21 -11
  1219. package/dist-cms/packages/property-editors/select/property-editor-ui-select.element.js +2 -2
  1220. package/dist-cms/packages/property-editors/slider/property-editor-ui-slider.element.js +2 -2
  1221. package/dist-cms/packages/property-editors/text-box/property-editor-ui-text-box.element.d.ts +1 -1
  1222. package/dist-cms/packages/property-editors/text-box/property-editor-ui-text-box.element.js +2 -2
  1223. package/dist-cms/packages/property-editors/textarea/manifests.js +0 -14
  1224. package/dist-cms/packages/property-editors/textarea/property-editor-ui-textarea.element.d.ts +0 -2
  1225. package/dist-cms/packages/property-editors/textarea/property-editor-ui-textarea.element.js +8 -15
  1226. package/dist-cms/packages/property-editors/toggle/property-editor-ui-toggle.element.js +2 -2
  1227. package/dist-cms/packages/property-editors/value-type/property-editor-ui-value-type.element.d.ts +1 -1
  1228. package/dist-cms/packages/property-editors/value-type/property-editor-ui-value-type.element.js +2 -2
  1229. package/dist-cms/packages/publish-cache/dashboard-published-status.element.d.ts +2 -0
  1230. package/dist-cms/packages/publish-cache/dashboard-published-status.element.js +19 -1
  1231. package/dist-cms/packages/relations/relations/entity-actions/bulk-delete/modal/bulk-delete-with-relation-modal.element.d.ts +2 -2
  1232. package/dist-cms/packages/relations/relations/entity-actions/bulk-delete/modal/bulk-delete-with-relation-modal.element.js +0 -2
  1233. package/dist-cms/packages/relations/relations/entity-actions/bulk-trash/modal/bulk-trash-with-relation-modal.element.d.ts +2 -2
  1234. package/dist-cms/packages/relations/relations/entity-actions/bulk-trash/modal/bulk-trash-with-relation-modal.element.js +0 -2
  1235. package/dist-cms/packages/relations/relations/entity-actions/delete/modal/delete-with-relation-modal.element.d.ts +2 -2
  1236. package/dist-cms/packages/relations/relations/entity-actions/delete/modal/delete-with-relation-modal.element.js +0 -1
  1237. package/dist-cms/packages/relations/relations/entity-actions/trash/modal/trash-with-relation-modal.element.d.ts +2 -2
  1238. package/dist-cms/packages/relations/relations/entity-actions/trash/modal/trash-with-relation-modal.element.js +0 -2
  1239. package/dist-cms/packages/relations/relations/{entity-actions/local-components/confirm-action-entity-references.element.d.ts → global-components/confirm-action-modal-entity-references.element.d.ts} +11 -10
  1240. package/dist-cms/packages/relations/relations/{entity-actions/local-components/confirm-action-entity-references.element.js → global-components/confirm-action-modal-entity-references.element.js} +13 -5
  1241. package/dist-cms/packages/relations/relations/{entity-actions/local-components/confirm-bulk-action-entity-references.element.d.ts → global-components/confirm-bulk-action-modal-entity-references.element.d.ts} +7 -3
  1242. package/dist-cms/packages/relations/relations/{entity-actions/local-components/confirm-bulk-action-entity-references.element.js → global-components/confirm-bulk-action-modal-entity-references.element.js} +4 -5
  1243. package/dist-cms/packages/relations/relations/global-components/index.d.ts +4 -0
  1244. package/dist-cms/packages/relations/relations/global-components/index.js +4 -0
  1245. package/dist-cms/packages/relations/relations/global-components/types.d.ts +2 -0
  1246. package/dist-cms/packages/relations/relations/global-components/types.js +1 -0
  1247. package/dist-cms/packages/relations/relations/index.d.ts +2 -1
  1248. package/dist-cms/packages/relations/relations/index.js +2 -1
  1249. package/dist-cms/packages/relations/relations/manifests.js +2 -0
  1250. package/dist-cms/packages/relations/relations/reference/types.d.ts +2 -2
  1251. package/dist-cms/packages/relations/relations/reference/workspace-info-app/entity-references-workspace-view-info.element.d.ts +21 -0
  1252. package/dist-cms/packages/{documents/documents/reference/info-app/document-references-workspace-view-info.element.js → relations/relations/reference/workspace-info-app/entity-references-workspace-view-info.element.js} +50 -34
  1253. package/dist-cms/packages/relations/relations/reference/workspace-info-app/entity-references-workspace-view-info.kind.d.ts +2 -0
  1254. package/dist-cms/packages/relations/relations/reference/workspace-info-app/entity-references-workspace-view-info.kind.js +12 -0
  1255. package/dist-cms/packages/relations/relations/reference/workspace-info-app/manifests.d.ts +2 -0
  1256. package/dist-cms/packages/relations/relations/reference/workspace-info-app/manifests.js +2 -0
  1257. package/dist-cms/packages/relations/relations/reference/workspace-info-app/types.d.ts +13 -0
  1258. package/dist-cms/packages/relations/relations/reference/workspace-info-app/types.js +1 -0
  1259. package/dist-cms/packages/relations/relations/types.d.ts +1 -0
  1260. package/dist-cms/packages/relations/relations/utils.d.ts +6 -1
  1261. package/dist-cms/packages/relations/relations/utils.js +7 -0
  1262. package/dist-cms/packages/rte/components/rte-base.element.js +34 -10
  1263. package/dist-cms/packages/rte/manifests.js +4 -2
  1264. package/dist-cms/packages/rte/validation/manifests.d.ts +1 -0
  1265. package/dist-cms/packages/rte/validation/manifests.js +10 -0
  1266. package/dist-cms/packages/rte/validation/rte-validation-property-path-translator.api.d.ts +7 -0
  1267. package/dist-cms/packages/rte/validation/rte-validation-property-path-translator.api.js +14 -0
  1268. package/dist-cms/packages/settings/welcome/settings-welcome-dashboard.element.js +6 -6
  1269. package/dist-cms/packages/static-file/property-editors/static-file-picker/property-editor-ui-static-file-picker.element.d.ts +1 -1
  1270. package/dist-cms/packages/static-file/property-editors/static-file-picker/property-editor-ui-static-file-picker.element.js +2 -2
  1271. package/dist-cms/packages/tags/components/tags-input/tags-input.element.d.ts +1 -1
  1272. package/dist-cms/packages/tags/property-editors/tags/Umbraco.Tags.js +2 -2
  1273. package/dist-cms/packages/tags/property-editors/tags/property-editor-ui-tags.element.d.ts +1 -1
  1274. package/dist-cms/packages/tags/property-editors/tags/property-editor-ui-tags.element.js +2 -2
  1275. package/dist-cms/packages/telemetry/dashboard-telemetry.element.js +4 -6
  1276. package/dist-cms/packages/templating/stylesheets/global-components/stylesheet-input/stylesheet-input.element.d.ts +1 -1
  1277. package/dist-cms/packages/templating/stylesheets/global-components/stylesheet-input/stylesheet-input.element.js +4 -3
  1278. package/dist-cms/packages/templating/stylesheets/global-components/stylesheet-rule-input/stylesheet-rule-input.element.d.ts +1 -1
  1279. package/dist-cms/packages/templating/stylesheets/global-components/stylesheet-rule-input/stylesheet-rule-input.element.js +5 -4
  1280. package/dist-cms/packages/templating/stylesheets/global-components/stylesheet-rule-input/stylesheet-rule-settings-modal.element.js +1 -1
  1281. package/dist-cms/packages/templating/stylesheets/manifests.js +2 -0
  1282. package/dist-cms/packages/templating/stylesheets/property-editors/manifests.d.ts +1 -0
  1283. package/dist-cms/packages/templating/stylesheets/property-editors/manifests.js +2 -0
  1284. package/dist-cms/packages/templating/stylesheets/property-editors/stylesheet-picker/manifests.d.ts +2 -0
  1285. package/dist-cms/packages/templating/stylesheets/property-editors/stylesheet-picker/manifests.js +11 -0
  1286. package/dist-cms/packages/templating/stylesheets/property-editors/stylesheet-picker/property-editor-ui-stylesheet-picker.element.d.ts +15 -0
  1287. package/dist-cms/packages/templating/stylesheets/property-editors/stylesheet-picker/property-editor-ui-stylesheet-picker.element.js +43 -0
  1288. package/dist-cms/packages/templating/templates/global-components/input-template/input-template.element.d.ts +1 -1
  1289. package/dist-cms/packages/templating/templates/global-components/input-template/input-template.element.js +2 -2
  1290. package/dist-cms/packages/templating/templates/global-components/template-card/template-card.element.d.ts +1 -1
  1291. package/dist-cms/packages/templating/templates/modals/query-builder/query-builder-modal.element.js +12 -18
  1292. package/dist-cms/packages/tiny-mce/components/input-tiny-mce/input-tiny-mce.element.d.ts +1 -1
  1293. package/dist-cms/packages/tiny-mce/components/input-tiny-mce/input-tiny-mce.element.js +1 -3
  1294. package/dist-cms/packages/tiny-mce/plugins/tinymce-plugin.extension.d.ts +3 -2
  1295. package/dist-cms/packages/tiny-mce/property-editors/block/property-editor-ui-block-rte-type-configuration.element.js +2 -2
  1296. package/dist-cms/packages/tiny-mce/property-editors/dimensions/property-editor-ui-tiny-mce-dimensions-configuration.element.js +3 -3
  1297. package/dist-cms/packages/tiny-mce/property-editors/max-image-size/property-editor-ui-tiny-mce-maximagesize.element.js +2 -2
  1298. package/dist-cms/packages/tiny-mce/property-editors/stylesheets/property-editor-ui-tiny-mce-stylesheets-configuration.element.d.ts +1 -0
  1299. package/dist-cms/packages/tiny-mce/property-editors/stylesheets/property-editor-ui-tiny-mce-stylesheets-configuration.element.js +11 -2
  1300. package/dist-cms/packages/tiny-mce/property-editors/tiny-mce/manifests.js +1 -1
  1301. package/dist-cms/packages/tiny-mce/property-editors/tiny-mce/property-editor-ui-tiny-mce.element.js +15 -18
  1302. package/dist-cms/packages/tiny-mce/property-editors/toolbar/property-editor-ui-tiny-mce-toolbar-configuration.element.js +2 -2
  1303. package/dist-cms/packages/tiptap/components/anchor-modal/anchor-modal.element.d.ts +13 -0
  1304. package/dist-cms/packages/tiptap/components/anchor-modal/anchor-modal.element.js +77 -0
  1305. package/dist-cms/packages/tiptap/components/anchor-modal/anchor-modal.token.d.ts +6 -0
  1306. package/dist-cms/packages/tiptap/components/anchor-modal/anchor-modal.token.js +5 -0
  1307. package/dist-cms/packages/tiptap/components/anchor-modal/constants.d.ts +1 -0
  1308. package/dist-cms/packages/tiptap/components/anchor-modal/constants.js +1 -0
  1309. package/dist-cms/packages/tiptap/components/anchor-modal/index.d.ts +1 -0
  1310. package/dist-cms/packages/tiptap/components/anchor-modal/index.js +1 -0
  1311. package/dist-cms/packages/tiptap/components/anchor-modal/manifests.d.ts +2 -0
  1312. package/dist-cms/packages/tiptap/components/anchor-modal/manifests.js +9 -0
  1313. package/dist-cms/packages/tiptap/components/cascading-menu-popover/cascading-menu-popover.element.d.ts +3 -3
  1314. package/dist-cms/packages/tiptap/components/cascading-menu-popover/cascading-menu-popover.element.js +23 -20
  1315. package/dist-cms/packages/tiptap/components/character-map/character-map-modal.element.d.ts +16 -0
  1316. package/dist-cms/packages/tiptap/components/character-map/character-map-modal.element.js +466 -0
  1317. package/dist-cms/packages/tiptap/components/character-map/character-map-modal.token.d.ts +4 -0
  1318. package/dist-cms/packages/tiptap/components/character-map/character-map-modal.token.js +5 -0
  1319. package/dist-cms/packages/tiptap/components/character-map/constants.d.ts +1 -0
  1320. package/dist-cms/packages/tiptap/components/character-map/constants.js +1 -0
  1321. package/dist-cms/packages/tiptap/components/character-map/index.d.ts +1 -0
  1322. package/dist-cms/packages/tiptap/components/character-map/index.js +1 -0
  1323. package/dist-cms/packages/tiptap/components/character-map/manifests.d.ts +2 -0
  1324. package/dist-cms/packages/tiptap/components/character-map/manifests.js +9 -0
  1325. package/dist-cms/packages/tiptap/components/index.d.ts +2 -0
  1326. package/dist-cms/packages/tiptap/components/index.js +2 -0
  1327. package/dist-cms/packages/tiptap/components/input-tiptap/input-tiptap.element.d.ts +3 -2
  1328. package/dist-cms/packages/tiptap/components/input-tiptap/input-tiptap.element.js +61 -56
  1329. package/dist-cms/packages/tiptap/components/input-tiptap/tiptap-statusbar.element.d.ts +23 -0
  1330. package/dist-cms/packages/tiptap/components/input-tiptap/tiptap-statusbar.element.js +115 -0
  1331. package/dist-cms/packages/tiptap/components/input-tiptap/tiptap-toolbar.element.d.ts +2 -1
  1332. package/dist-cms/packages/tiptap/components/input-tiptap/tiptap-toolbar.element.js +12 -9
  1333. package/dist-cms/packages/tiptap/components/manifests.d.ts +1 -0
  1334. package/dist-cms/packages/tiptap/components/manifests.js +3 -0
  1335. package/dist-cms/packages/tiptap/components/toolbar/style-menu.tiptap-toolbar-api.d.ts +7 -0
  1336. package/dist-cms/packages/tiptap/components/toolbar/style-menu.tiptap-toolbar-api.js +31 -0
  1337. package/dist-cms/packages/tiptap/components/toolbar/tiptap-toolbar-button-disabled.element.js +6 -5
  1338. package/dist-cms/packages/tiptap/components/toolbar/tiptap-toolbar-button.element.js +4 -3
  1339. package/dist-cms/packages/tiptap/{extensions/toolbar/font-family-tiptap-toolbar.element.d.ts → components/toolbar/tiptap-toolbar-color-picker-button.element.d.ts} +4 -4
  1340. package/dist-cms/packages/tiptap/components/toolbar/tiptap-toolbar-color-picker-button.element.js +74 -0
  1341. package/dist-cms/packages/tiptap/components/toolbar/tiptap-toolbar-menu.element.d.ts +23 -0
  1342. package/dist-cms/packages/tiptap/components/toolbar/tiptap-toolbar-menu.element.js +142 -0
  1343. package/dist-cms/packages/tiptap/components/types.d.ts +1 -0
  1344. package/dist-cms/packages/tiptap/constants.d.ts +3 -0
  1345. package/dist-cms/packages/tiptap/constants.js +3 -0
  1346. package/dist-cms/packages/tiptap/extensions/core/rich-text-essentials.tiptap-api.d.ts +2 -2
  1347. package/dist-cms/packages/tiptap/extensions/core/rich-text-essentials.tiptap-api.js +55 -5
  1348. package/dist-cms/packages/tiptap/extensions/core/text-indent.tiptap-api.d.ts +4 -0
  1349. package/dist-cms/packages/tiptap/extensions/core/text-indent.tiptap-api.js +12 -0
  1350. package/dist-cms/packages/tiptap/extensions/core/word-count.tiptap-api.d.ts +5 -0
  1351. package/dist-cms/packages/tiptap/extensions/core/word-count.tiptap-api.js +10 -0
  1352. package/dist-cms/packages/tiptap/extensions/index.d.ts +1 -0
  1353. package/dist-cms/packages/tiptap/extensions/index.js +1 -0
  1354. package/dist-cms/packages/tiptap/extensions/manifests.d.ts +1 -3
  1355. package/dist-cms/packages/tiptap/extensions/manifests.js +152 -6
  1356. package/dist-cms/packages/tiptap/extensions/statusbar/element-path.tiptap-statusbar-element.d.ts +18 -0
  1357. package/dist-cms/packages/tiptap/extensions/statusbar/element-path.tiptap-statusbar-element.js +74 -0
  1358. package/dist-cms/packages/tiptap/extensions/statusbar/manifests.d.ts +1 -0
  1359. package/dist-cms/packages/tiptap/extensions/statusbar/manifests.js +25 -0
  1360. package/dist-cms/packages/tiptap/extensions/statusbar/word-count.tiptap-statusbar-element.d.ts +18 -0
  1361. package/dist-cms/packages/tiptap/extensions/statusbar/word-count.tiptap-statusbar-element.js +56 -0
  1362. package/dist-cms/packages/tiptap/extensions/style-select/manifests.d.ts +1 -2
  1363. package/dist-cms/packages/tiptap/extensions/style-select/manifests.js +42 -1
  1364. package/dist-cms/packages/tiptap/extensions/style-select/style-select.tiptap-toolbar-api.d.ts +4 -0
  1365. package/dist-cms/packages/tiptap/extensions/style-select/style-select.tiptap-toolbar-api.js +4 -0
  1366. package/dist-cms/packages/tiptap/extensions/table/components/constants.d.ts +1 -0
  1367. package/dist-cms/packages/tiptap/extensions/table/components/constants.js +1 -0
  1368. package/dist-cms/packages/tiptap/extensions/table/components/table-column-menu.element.d.ts +14 -0
  1369. package/dist-cms/packages/tiptap/extensions/table/components/table-column-menu.element.js +48 -0
  1370. package/dist-cms/packages/tiptap/extensions/table/components/table-insert.element.js +1 -1
  1371. package/dist-cms/packages/tiptap/extensions/table/components/table-properties-modal.element.d.ts +14 -0
  1372. package/dist-cms/packages/tiptap/extensions/table/components/table-properties-modal.element.js +123 -0
  1373. package/dist-cms/packages/tiptap/extensions/table/components/table-properties-modal.token.d.ts +5 -0
  1374. package/dist-cms/packages/tiptap/extensions/table/components/table-properties-modal.token.js +5 -0
  1375. package/dist-cms/packages/tiptap/extensions/table/components/table-row-menu.element.d.ts +14 -0
  1376. package/dist-cms/packages/tiptap/extensions/table/components/table-row-menu.element.js +48 -0
  1377. package/dist-cms/packages/tiptap/extensions/table/components/table-toolbar-menu.element.d.ts +11 -0
  1378. package/dist-cms/packages/tiptap/extensions/table/components/table-toolbar-menu.element.js +36 -0
  1379. package/dist-cms/packages/tiptap/extensions/table/index.d.ts +1 -0
  1380. package/dist-cms/packages/tiptap/extensions/table/index.js +1 -0
  1381. package/dist-cms/packages/tiptap/extensions/table/manifests.d.ts +1 -2
  1382. package/dist-cms/packages/tiptap/extensions/table/manifests.js +45 -2
  1383. package/dist-cms/packages/tiptap/extensions/table/table.tiptap-api.d.ts +2 -0
  1384. package/dist-cms/packages/tiptap/extensions/table/table.tiptap-api.js +3 -3
  1385. package/dist-cms/packages/tiptap/extensions/table/table.tiptap-toolbar-api.d.ts +3 -3
  1386. package/dist-cms/packages/tiptap/extensions/table/table.tiptap-toolbar-api.js +128 -107
  1387. package/dist-cms/packages/tiptap/extensions/tiptap-statusbar.extension.d.ts +17 -0
  1388. package/dist-cms/packages/tiptap/extensions/tiptap-statusbar.extension.js +1 -0
  1389. package/dist-cms/packages/tiptap/extensions/tiptap-toolbar.extension.d.ts +42 -2
  1390. package/dist-cms/packages/tiptap/extensions/toolbar/anchor.tiptap-toolbar-api.d.ts +5 -0
  1391. package/dist-cms/packages/tiptap/extensions/toolbar/anchor.tiptap-toolbar-api.js +22 -0
  1392. package/dist-cms/packages/tiptap/extensions/toolbar/character-map.tiptap-toolbar-api.d.ts +5 -0
  1393. package/dist-cms/packages/tiptap/extensions/toolbar/character-map.tiptap-toolbar-api.js +17 -0
  1394. package/dist-cms/packages/tiptap/extensions/toolbar/embedded-media.tiptap-toolbar-api.d.ts +0 -1
  1395. package/dist-cms/packages/tiptap/extensions/toolbar/embedded-media.tiptap-toolbar-api.js +0 -4
  1396. package/dist-cms/packages/tiptap/extensions/toolbar/font-family.tiptap-toolbar-api.d.ts +6 -0
  1397. package/dist-cms/packages/tiptap/extensions/toolbar/font-family.tiptap-toolbar-api.js +8 -0
  1398. package/dist-cms/packages/tiptap/extensions/toolbar/font-size.tiptap-toolbar-api.d.ts +6 -0
  1399. package/dist-cms/packages/tiptap/extensions/toolbar/font-size.tiptap-toolbar-api.js +8 -0
  1400. package/dist-cms/packages/tiptap/extensions/toolbar/text-align-center.tiptap-toolbar-api.js +6 -1
  1401. package/dist-cms/packages/tiptap/extensions/toolbar/text-align-justify.tiptap-toolbar-api.js +6 -1
  1402. package/dist-cms/packages/tiptap/extensions/toolbar/text-align-left.tiptap-toolbar-api.js +6 -1
  1403. package/dist-cms/packages/tiptap/extensions/toolbar/text-align-right.tiptap-toolbar-api.js +6 -1
  1404. package/dist-cms/packages/tiptap/extensions/toolbar/text-color-background.tiptap-toolbar-api.d.ts +5 -0
  1405. package/dist-cms/packages/tiptap/extensions/toolbar/text-color-background.tiptap-toolbar-api.js +6 -0
  1406. package/dist-cms/packages/tiptap/extensions/toolbar/text-color-foreground.tiptap-toolbar-api.d.ts +5 -0
  1407. package/dist-cms/packages/tiptap/extensions/toolbar/text-color-foreground.tiptap-toolbar-api.js +6 -0
  1408. package/dist-cms/packages/tiptap/extensions/toolbar/text-indent.tiptap-toolbar-api.d.ts +5 -0
  1409. package/dist-cms/packages/tiptap/extensions/toolbar/text-indent.tiptap-toolbar-api.js +6 -0
  1410. package/dist-cms/packages/tiptap/extensions/toolbar/text-outdent.tiptap-toolbar-api.d.ts +5 -0
  1411. package/dist-cms/packages/tiptap/extensions/toolbar/text-outdent.tiptap-toolbar-api.js +6 -0
  1412. package/dist-cms/packages/tiptap/extensions/types.d.ts +2 -1
  1413. package/dist-cms/packages/tiptap/manifests.js +6 -1
  1414. package/dist-cms/packages/tiptap/property-editors/tiptap/components/property-editor-ui-tiptap-extensions-configuration.element.js +3 -2
  1415. package/dist-cms/packages/tiptap/property-editors/tiptap/components/property-editor-ui-tiptap-statusbar-configuration.element.d.ts +20 -0
  1416. package/dist-cms/packages/tiptap/property-editors/tiptap/components/property-editor-ui-tiptap-statusbar-configuration.element.js +363 -0
  1417. package/dist-cms/packages/tiptap/property-editors/tiptap/components/property-editor-ui-tiptap-toolbar-configuration.element.js +78 -46
  1418. package/dist-cms/packages/tiptap/property-editors/tiptap/contexts/tiptap-statusbar-configuration.context.d.ts +21 -0
  1419. package/dist-cms/packages/tiptap/property-editors/tiptap/contexts/tiptap-statusbar-configuration.context.js +128 -0
  1420. package/dist-cms/packages/tiptap/property-editors/tiptap/contexts/tiptap-toolbar-configuration.context.js +12 -9
  1421. package/dist-cms/packages/tiptap/property-editors/tiptap/manifests.js +36 -9
  1422. package/dist-cms/packages/tiptap/property-editors/tiptap/property-editor-ui-tiptap.element.js +1 -1
  1423. package/dist-cms/packages/tiptap/property-editors/tiptap/types.d.ts +12 -6
  1424. package/dist-cms/packages/umbraco-news/umbraco-news-dashboard.element.js +1 -1
  1425. package/dist-cms/packages/user/user/collection/views/grid/user-grid-collection-view.element.d.ts +1 -0
  1426. package/dist-cms/packages/user/user/collection/views/grid/user-grid-collection-view.element.js +29 -29
  1427. package/dist-cms/packages/user/user/components/user-input/user-input.element.d.ts +1 -1
  1428. package/dist-cms/packages/user/user/property-editor/user-picker/property-editor-ui-user-picker.element.js +2 -2
  1429. package/dist-cms/packages/user/user/repository/detail/user-detail.server.data-source.js +1 -1
  1430. package/dist-cms/packages/user/user/utils/index.d.ts +1 -5
  1431. package/dist-cms/packages/user/user/utils/index.js +1 -4
  1432. package/dist-cms/packages/user/user/utils/user-kind.d.ts +5 -0
  1433. package/dist-cms/packages/user/user/utils/user-kind.js +4 -0
  1434. package/dist-cms/packages/user/user-group/components/input-user-group/user-group-input.element.d.ts +1 -1
  1435. package/dist-cms/packages/user/user-group/workspace/user-group/components/user-group-granular-permission-list.element.d.ts +1 -0
  1436. package/dist-cms/packages/user/user-group/workspace/user-group/components/user-group-granular-permission-list.element.js +5 -0
  1437. package/dist-cms/packages/user/user-permission/components/input-entity-user-permission/input-entity-user-permission.element.d.ts +1 -1
  1438. package/dist-cms/packages/user/user-permission/modals/settings/entity-user-permission-settings-modal.element.d.ts +2 -0
  1439. package/dist-cms/packages/user/user-permission/modals/settings/entity-user-permission-settings-modal.element.js +10 -0
  1440. package/dist-cms/packages/user/user-permission/modals/settings/entity-user-permission-settings-modal.token.d.ts +1 -0
  1441. package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
  1442. package/dist-cms/umbraco-package-schema.json +14078 -73088
  1443. package/dist-cms/umbraco-package.json +1 -1
  1444. package/dist-cms/vite-config-base.js +1 -0
  1445. package/dist-cms/vscode-html-custom-data.json +434 -151
  1446. package/examples/validation-context/validation-context-dashboard.ts +120 -109
  1447. package/examples/workspace-context-counter/counter-workspace-context.ts +8 -6
  1448. package/package.json +7 -5
  1449. package/dist-cms/json-schema/all-packages.d.ts +0 -117
  1450. package/dist-cms/json-schema/all-packages.js +0 -117
  1451. package/dist-cms/packages/block/block-grid/components/block-grid-area/index.d.ts +0 -1
  1452. package/dist-cms/packages/block/block-grid/components/block-grid-area/index.js +0 -1
  1453. package/dist-cms/packages/block/block-grid/components/block-grid-area-config-entry/index.d.ts +0 -1
  1454. package/dist-cms/packages/block/block-grid/components/block-grid-area-config-entry/index.js +0 -1
  1455. package/dist-cms/packages/block/block-grid/components/block-grid-areas-container/index.d.ts +0 -1
  1456. package/dist-cms/packages/block/block-grid/components/block-grid-areas-container/index.js +0 -1
  1457. package/dist-cms/packages/block/block-grid/components/block-grid-block/index.d.ts +0 -1
  1458. package/dist-cms/packages/block/block-grid/components/block-grid-block/index.js +0 -1
  1459. package/dist-cms/packages/block/block-grid/components/block-grid-block-inline/index.d.ts +0 -1
  1460. package/dist-cms/packages/block/block-grid/components/block-grid-block-inline/index.js +0 -1
  1461. package/dist-cms/packages/block/block-grid/components/block-grid-block-unsupported/index.d.ts +0 -1
  1462. package/dist-cms/packages/block/block-grid/components/block-grid-block-unsupported/index.js +0 -1
  1463. package/dist-cms/packages/block/block-grid/components/block-grid-entries/index.d.ts +0 -1
  1464. package/dist-cms/packages/block/block-grid/components/block-grid-entries/index.js +0 -1
  1465. package/dist-cms/packages/block/block-grid/components/block-grid-entry/index.d.ts +0 -1
  1466. package/dist-cms/packages/block/block-grid/components/block-grid-entry/index.js +0 -1
  1467. package/dist-cms/packages/block/block-grid/components/block-scale-handler/index.d.ts +0 -1
  1468. package/dist-cms/packages/block/block-grid/components/block-scale-handler/index.js +0 -1
  1469. package/dist-cms/packages/block/block-grid/components/ref-grid-block/index.d.ts +0 -1
  1470. package/dist-cms/packages/block/block-grid/components/ref-grid-block/index.js +0 -1
  1471. package/dist-cms/packages/block/block-grid/context/index.d.ts +0 -2
  1472. package/dist-cms/packages/block/block-grid/context/index.js +0 -2
  1473. package/dist-cms/packages/core/menu/components/menu/menu.context.d.ts +0 -9
  1474. package/dist-cms/packages/core/menu/components/menu/menu.context.js +0 -14
  1475. package/dist-cms/packages/core/router/components/router-slot/route.interface.d.ts +0 -1
  1476. package/dist-cms/packages/data-type/workspace/views/info/data-type-workspace-view-info-reference.element.d.ts +0 -18
  1477. package/dist-cms/packages/data-type/workspace/views/info/data-type-workspace-view-info-reference.element.js +0 -109
  1478. package/dist-cms/packages/documents/documents/reference/info-app/document-references-workspace-view-info.element.d.ts +0 -17
  1479. package/dist-cms/packages/media/media/dropzone/constants.d.ts +0 -1
  1480. package/dist-cms/packages/media/media/dropzone/constants.js +0 -1
  1481. package/dist-cms/packages/media/media/dropzone/manifests.d.ts +0 -1
  1482. package/dist-cms/packages/media/media/dropzone/manifests.js +0 -1
  1483. package/dist-cms/packages/media/media/reference/info-app/media-references-workspace-info-app.element.d.ts +0 -19
  1484. package/dist-cms/packages/media/media/reference/info-app/media-references-workspace-info-app.element.js +0 -135
  1485. package/dist-cms/packages/tiptap/extensions/style-select/style-select-tiptap-toolbar.element.d.ts +0 -17
  1486. package/dist-cms/packages/tiptap/extensions/style-select/style-select-tiptap-toolbar.element.js +0 -86
  1487. package/dist-cms/packages/tiptap/extensions/table/table-tiptap-toolbar-button.element.d.ts +0 -14
  1488. package/dist-cms/packages/tiptap/extensions/table/table-tiptap-toolbar-button.element.js +0 -44
  1489. package/dist-cms/packages/tiptap/extensions/toolbar/font-family-tiptap-toolbar.element.js +0 -81
  1490. package/dist-cms/packages/tiptap/extensions/toolbar/font-size-tiptap-toolbar.element.d.ts +0 -13
  1491. package/dist-cms/packages/tiptap/extensions/toolbar/font-size-tiptap-toolbar.element.js +0 -48
  1492. /package/dist-cms/{packages/core/router/components/router-slot/route.interface.js → monaco-editor/vs/base/common/paging.js} +0 -0
  1493. /package/dist-cms/packages/block/block-grid/{context → block-grid-manager}/block-grid-manager.context-token.d.ts +0 -0
  1494. /package/dist-cms/packages/block/block-grid/{context → block-grid-manager}/block-grid-manager.context-token.js +0 -0
  1495. /package/dist-cms/packages/{media/media/dropzone/modals → block/block-grid/validation}/manifests.d.ts +0 -0
  1496. /package/dist-cms/packages/core/router/{components → route}/not-found/route-not-found.element.d.ts +0 -0
  1497. /package/dist-cms/packages/media/{media/dropzone → dropzone}/dropzone-submitted.event.d.ts +0 -0
  1498. /package/dist-cms/packages/media/{media/dropzone → dropzone}/dropzone-submitted.event.js +0 -0
  1499. /package/dist-cms/packages/media/{media/dropzone → dropzone}/modals/dropzone-media-type-picker/index.d.ts +0 -0
  1500. /package/dist-cms/packages/media/{media/dropzone → dropzone}/modals/dropzone-media-type-picker/index.js +0 -0
  1501. /package/dist-cms/packages/media/{media/dropzone → dropzone}/modals/index.d.ts +0 -0
  1502. /package/dist-cms/packages/media/{media/dropzone → dropzone}/modals/index.js +0 -0
  1503. /package/dist-cms/packages/media/{media/dropzone → dropzone}/modals/manifests.js +0 -0
  1504. /package/dist-cms/packages/tiptap/components/toolbar/{default-tiptap-toolbar-element.api.d.ts → default-tiptap-toolbar-api.d.ts} +0 -0
  1505. /package/dist-cms/packages/tiptap/components/toolbar/{default-tiptap-toolbar-element.api.js → default-tiptap-toolbar-api.js} +0 -0
@@ -0,0 +1,1452 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ import { Position } from '../../core/position.js';
6
+ import { Range } from '../../core/range.js';
7
+ import { FindMatch } from '../../model.js';
8
+ import { SENTINEL, TreeNode, fixInsert, leftest, rbDelete, righttest, updateTreeMetadata } from './rbTreeBase.js';
9
+ import { Searcher, createFindMatch, isValidMatch } from '../textModelSearch.js';
10
+ // const lfRegex = new RegExp(/\r\n|\r|\n/g);
11
+ const AverageBufferSize = 65535;
12
+ function createUintArray(arr) {
13
+ let r;
14
+ if (arr[arr.length - 1] < 65536) {
15
+ r = new Uint16Array(arr.length);
16
+ }
17
+ else {
18
+ r = new Uint32Array(arr.length);
19
+ }
20
+ r.set(arr, 0);
21
+ return r;
22
+ }
23
+ class LineStarts {
24
+ constructor(lineStarts, cr, lf, crlf, isBasicASCII) {
25
+ this.lineStarts = lineStarts;
26
+ this.cr = cr;
27
+ this.lf = lf;
28
+ this.crlf = crlf;
29
+ this.isBasicASCII = isBasicASCII;
30
+ }
31
+ }
32
+ export function createLineStartsFast(str, readonly = true) {
33
+ const r = [0];
34
+ let rLength = 1;
35
+ for (let i = 0, len = str.length; i < len; i++) {
36
+ const chr = str.charCodeAt(i);
37
+ if (chr === 13 /* CharCode.CarriageReturn */) {
38
+ if (i + 1 < len && str.charCodeAt(i + 1) === 10 /* CharCode.LineFeed */) {
39
+ // \r\n... case
40
+ r[rLength++] = i + 2;
41
+ i++; // skip \n
42
+ }
43
+ else {
44
+ // \r... case
45
+ r[rLength++] = i + 1;
46
+ }
47
+ }
48
+ else if (chr === 10 /* CharCode.LineFeed */) {
49
+ r[rLength++] = i + 1;
50
+ }
51
+ }
52
+ if (readonly) {
53
+ return createUintArray(r);
54
+ }
55
+ else {
56
+ return r;
57
+ }
58
+ }
59
+ export function createLineStarts(r, str) {
60
+ r.length = 0;
61
+ r[0] = 0;
62
+ let rLength = 1;
63
+ let cr = 0, lf = 0, crlf = 0;
64
+ let isBasicASCII = true;
65
+ for (let i = 0, len = str.length; i < len; i++) {
66
+ const chr = str.charCodeAt(i);
67
+ if (chr === 13 /* CharCode.CarriageReturn */) {
68
+ if (i + 1 < len && str.charCodeAt(i + 1) === 10 /* CharCode.LineFeed */) {
69
+ // \r\n... case
70
+ crlf++;
71
+ r[rLength++] = i + 2;
72
+ i++; // skip \n
73
+ }
74
+ else {
75
+ cr++;
76
+ // \r... case
77
+ r[rLength++] = i + 1;
78
+ }
79
+ }
80
+ else if (chr === 10 /* CharCode.LineFeed */) {
81
+ lf++;
82
+ r[rLength++] = i + 1;
83
+ }
84
+ else {
85
+ if (isBasicASCII) {
86
+ if (chr !== 9 /* CharCode.Tab */ && (chr < 32 || chr > 126)) {
87
+ isBasicASCII = false;
88
+ }
89
+ }
90
+ }
91
+ }
92
+ const result = new LineStarts(createUintArray(r), cr, lf, crlf, isBasicASCII);
93
+ r.length = 0;
94
+ return result;
95
+ }
96
+ export class Piece {
97
+ constructor(bufferIndex, start, end, lineFeedCnt, length) {
98
+ this.bufferIndex = bufferIndex;
99
+ this.start = start;
100
+ this.end = end;
101
+ this.lineFeedCnt = lineFeedCnt;
102
+ this.length = length;
103
+ }
104
+ }
105
+ export class StringBuffer {
106
+ constructor(buffer, lineStarts) {
107
+ this.buffer = buffer;
108
+ this.lineStarts = lineStarts;
109
+ }
110
+ }
111
+ /**
112
+ * Readonly snapshot for piece tree.
113
+ * In a real multiple thread environment, to make snapshot reading always work correctly, we need to
114
+ * 1. Make TreeNode.piece immutable, then reading and writing can run in parallel.
115
+ * 2. TreeNode/Buffers normalization should not happen during snapshot reading.
116
+ */
117
+ class PieceTreeSnapshot {
118
+ constructor(tree, BOM) {
119
+ this._pieces = [];
120
+ this._tree = tree;
121
+ this._BOM = BOM;
122
+ this._index = 0;
123
+ if (tree.root !== SENTINEL) {
124
+ tree.iterate(tree.root, node => {
125
+ if (node !== SENTINEL) {
126
+ this._pieces.push(node.piece);
127
+ }
128
+ return true;
129
+ });
130
+ }
131
+ }
132
+ read() {
133
+ if (this._pieces.length === 0) {
134
+ if (this._index === 0) {
135
+ this._index++;
136
+ return this._BOM;
137
+ }
138
+ else {
139
+ return null;
140
+ }
141
+ }
142
+ if (this._index > this._pieces.length - 1) {
143
+ return null;
144
+ }
145
+ if (this._index === 0) {
146
+ return this._BOM + this._tree.getPieceContent(this._pieces[this._index++]);
147
+ }
148
+ return this._tree.getPieceContent(this._pieces[this._index++]);
149
+ }
150
+ }
151
+ class PieceTreeSearchCache {
152
+ constructor(limit) {
153
+ this._limit = limit;
154
+ this._cache = [];
155
+ }
156
+ get(offset) {
157
+ for (let i = this._cache.length - 1; i >= 0; i--) {
158
+ const nodePos = this._cache[i];
159
+ if (nodePos.nodeStartOffset <= offset && nodePos.nodeStartOffset + nodePos.node.piece.length >= offset) {
160
+ return nodePos;
161
+ }
162
+ }
163
+ return null;
164
+ }
165
+ get2(lineNumber) {
166
+ for (let i = this._cache.length - 1; i >= 0; i--) {
167
+ const nodePos = this._cache[i];
168
+ if (nodePos.nodeStartLineNumber && nodePos.nodeStartLineNumber < lineNumber && nodePos.nodeStartLineNumber + nodePos.node.piece.lineFeedCnt >= lineNumber) {
169
+ return nodePos;
170
+ }
171
+ }
172
+ return null;
173
+ }
174
+ set(nodePosition) {
175
+ if (this._cache.length >= this._limit) {
176
+ this._cache.shift();
177
+ }
178
+ this._cache.push(nodePosition);
179
+ }
180
+ validate(offset) {
181
+ let hasInvalidVal = false;
182
+ const tmp = this._cache;
183
+ for (let i = 0; i < tmp.length; i++) {
184
+ const nodePos = tmp[i];
185
+ if (nodePos.node.parent === null || nodePos.nodeStartOffset >= offset) {
186
+ tmp[i] = null;
187
+ hasInvalidVal = true;
188
+ continue;
189
+ }
190
+ }
191
+ if (hasInvalidVal) {
192
+ const newArr = [];
193
+ for (const entry of tmp) {
194
+ if (entry !== null) {
195
+ newArr.push(entry);
196
+ }
197
+ }
198
+ this._cache = newArr;
199
+ }
200
+ }
201
+ }
202
+ export class PieceTreeBase {
203
+ constructor(chunks, eol, eolNormalized) {
204
+ this.create(chunks, eol, eolNormalized);
205
+ }
206
+ create(chunks, eol, eolNormalized) {
207
+ this._buffers = [
208
+ new StringBuffer('', [0])
209
+ ];
210
+ this._lastChangeBufferPos = { line: 0, column: 0 };
211
+ this.root = SENTINEL;
212
+ this._lineCnt = 1;
213
+ this._length = 0;
214
+ this._EOL = eol;
215
+ this._EOLLength = eol.length;
216
+ this._EOLNormalized = eolNormalized;
217
+ let lastNode = null;
218
+ for (let i = 0, len = chunks.length; i < len; i++) {
219
+ if (chunks[i].buffer.length > 0) {
220
+ if (!chunks[i].lineStarts) {
221
+ chunks[i].lineStarts = createLineStartsFast(chunks[i].buffer);
222
+ }
223
+ const piece = new Piece(i + 1, { line: 0, column: 0 }, { line: chunks[i].lineStarts.length - 1, column: chunks[i].buffer.length - chunks[i].lineStarts[chunks[i].lineStarts.length - 1] }, chunks[i].lineStarts.length - 1, chunks[i].buffer.length);
224
+ this._buffers.push(chunks[i]);
225
+ lastNode = this.rbInsertRight(lastNode, piece);
226
+ }
227
+ }
228
+ this._searchCache = new PieceTreeSearchCache(1);
229
+ this._lastVisitedLine = { lineNumber: 0, value: '' };
230
+ this.computeBufferMetadata();
231
+ }
232
+ normalizeEOL(eol) {
233
+ const averageBufferSize = AverageBufferSize;
234
+ const min = averageBufferSize - Math.floor(averageBufferSize / 3);
235
+ const max = min * 2;
236
+ let tempChunk = '';
237
+ let tempChunkLen = 0;
238
+ const chunks = [];
239
+ this.iterate(this.root, node => {
240
+ const str = this.getNodeContent(node);
241
+ const len = str.length;
242
+ if (tempChunkLen <= min || tempChunkLen + len < max) {
243
+ tempChunk += str;
244
+ tempChunkLen += len;
245
+ return true;
246
+ }
247
+ // flush anyways
248
+ const text = tempChunk.replace(/\r\n|\r|\n/g, eol);
249
+ chunks.push(new StringBuffer(text, createLineStartsFast(text)));
250
+ tempChunk = str;
251
+ tempChunkLen = len;
252
+ return true;
253
+ });
254
+ if (tempChunkLen > 0) {
255
+ const text = tempChunk.replace(/\r\n|\r|\n/g, eol);
256
+ chunks.push(new StringBuffer(text, createLineStartsFast(text)));
257
+ }
258
+ this.create(chunks, eol, true);
259
+ }
260
+ // #region Buffer API
261
+ getEOL() {
262
+ return this._EOL;
263
+ }
264
+ setEOL(newEOL) {
265
+ this._EOL = newEOL;
266
+ this._EOLLength = this._EOL.length;
267
+ this.normalizeEOL(newEOL);
268
+ }
269
+ createSnapshot(BOM) {
270
+ return new PieceTreeSnapshot(this, BOM);
271
+ }
272
+ getOffsetAt(lineNumber, column) {
273
+ let leftLen = 0; // inorder
274
+ let x = this.root;
275
+ while (x !== SENTINEL) {
276
+ if (x.left !== SENTINEL && x.lf_left + 1 >= lineNumber) {
277
+ x = x.left;
278
+ }
279
+ else if (x.lf_left + x.piece.lineFeedCnt + 1 >= lineNumber) {
280
+ leftLen += x.size_left;
281
+ // lineNumber >= 2
282
+ const accumualtedValInCurrentIndex = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);
283
+ return leftLen += accumualtedValInCurrentIndex + column - 1;
284
+ }
285
+ else {
286
+ lineNumber -= x.lf_left + x.piece.lineFeedCnt;
287
+ leftLen += x.size_left + x.piece.length;
288
+ x = x.right;
289
+ }
290
+ }
291
+ return leftLen;
292
+ }
293
+ getPositionAt(offset) {
294
+ offset = Math.floor(offset);
295
+ offset = Math.max(0, offset);
296
+ let x = this.root;
297
+ let lfCnt = 0;
298
+ const originalOffset = offset;
299
+ while (x !== SENTINEL) {
300
+ if (x.size_left !== 0 && x.size_left >= offset) {
301
+ x = x.left;
302
+ }
303
+ else if (x.size_left + x.piece.length >= offset) {
304
+ const out = this.getIndexOf(x, offset - x.size_left);
305
+ lfCnt += x.lf_left + out.index;
306
+ if (out.index === 0) {
307
+ const lineStartOffset = this.getOffsetAt(lfCnt + 1, 1);
308
+ const column = originalOffset - lineStartOffset;
309
+ return new Position(lfCnt + 1, column + 1);
310
+ }
311
+ return new Position(lfCnt + 1, out.remainder + 1);
312
+ }
313
+ else {
314
+ offset -= x.size_left + x.piece.length;
315
+ lfCnt += x.lf_left + x.piece.lineFeedCnt;
316
+ if (x.right === SENTINEL) {
317
+ // last node
318
+ const lineStartOffset = this.getOffsetAt(lfCnt + 1, 1);
319
+ const column = originalOffset - offset - lineStartOffset;
320
+ return new Position(lfCnt + 1, column + 1);
321
+ }
322
+ else {
323
+ x = x.right;
324
+ }
325
+ }
326
+ }
327
+ return new Position(1, 1);
328
+ }
329
+ getValueInRange(range, eol) {
330
+ if (range.startLineNumber === range.endLineNumber && range.startColumn === range.endColumn) {
331
+ return '';
332
+ }
333
+ const startPosition = this.nodeAt2(range.startLineNumber, range.startColumn);
334
+ const endPosition = this.nodeAt2(range.endLineNumber, range.endColumn);
335
+ const value = this.getValueInRange2(startPosition, endPosition);
336
+ if (eol) {
337
+ if (eol !== this._EOL || !this._EOLNormalized) {
338
+ return value.replace(/\r\n|\r|\n/g, eol);
339
+ }
340
+ if (eol === this.getEOL() && this._EOLNormalized) {
341
+ if (eol === '\r\n') {
342
+ }
343
+ return value;
344
+ }
345
+ return value.replace(/\r\n|\r|\n/g, eol);
346
+ }
347
+ return value;
348
+ }
349
+ getValueInRange2(startPosition, endPosition) {
350
+ if (startPosition.node === endPosition.node) {
351
+ const node = startPosition.node;
352
+ const buffer = this._buffers[node.piece.bufferIndex].buffer;
353
+ const startOffset = this.offsetInBuffer(node.piece.bufferIndex, node.piece.start);
354
+ return buffer.substring(startOffset + startPosition.remainder, startOffset + endPosition.remainder);
355
+ }
356
+ let x = startPosition.node;
357
+ const buffer = this._buffers[x.piece.bufferIndex].buffer;
358
+ const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);
359
+ let ret = buffer.substring(startOffset + startPosition.remainder, startOffset + x.piece.length);
360
+ x = x.next();
361
+ while (x !== SENTINEL) {
362
+ const buffer = this._buffers[x.piece.bufferIndex].buffer;
363
+ const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);
364
+ if (x === endPosition.node) {
365
+ ret += buffer.substring(startOffset, startOffset + endPosition.remainder);
366
+ break;
367
+ }
368
+ else {
369
+ ret += buffer.substr(startOffset, x.piece.length);
370
+ }
371
+ x = x.next();
372
+ }
373
+ return ret;
374
+ }
375
+ getLinesContent() {
376
+ const lines = [];
377
+ let linesLength = 0;
378
+ let currentLine = '';
379
+ let danglingCR = false;
380
+ this.iterate(this.root, node => {
381
+ if (node === SENTINEL) {
382
+ return true;
383
+ }
384
+ const piece = node.piece;
385
+ let pieceLength = piece.length;
386
+ if (pieceLength === 0) {
387
+ return true;
388
+ }
389
+ const buffer = this._buffers[piece.bufferIndex].buffer;
390
+ const lineStarts = this._buffers[piece.bufferIndex].lineStarts;
391
+ const pieceStartLine = piece.start.line;
392
+ const pieceEndLine = piece.end.line;
393
+ let pieceStartOffset = lineStarts[pieceStartLine] + piece.start.column;
394
+ if (danglingCR) {
395
+ if (buffer.charCodeAt(pieceStartOffset) === 10 /* CharCode.LineFeed */) {
396
+ // pretend the \n was in the previous piece..
397
+ pieceStartOffset++;
398
+ pieceLength--;
399
+ }
400
+ lines[linesLength++] = currentLine;
401
+ currentLine = '';
402
+ danglingCR = false;
403
+ if (pieceLength === 0) {
404
+ return true;
405
+ }
406
+ }
407
+ if (pieceStartLine === pieceEndLine) {
408
+ // this piece has no new lines
409
+ if (!this._EOLNormalized && buffer.charCodeAt(pieceStartOffset + pieceLength - 1) === 13 /* CharCode.CarriageReturn */) {
410
+ danglingCR = true;
411
+ currentLine += buffer.substr(pieceStartOffset, pieceLength - 1);
412
+ }
413
+ else {
414
+ currentLine += buffer.substr(pieceStartOffset, pieceLength);
415
+ }
416
+ return true;
417
+ }
418
+ // add the text before the first line start in this piece
419
+ currentLine += (this._EOLNormalized
420
+ ? buffer.substring(pieceStartOffset, Math.max(pieceStartOffset, lineStarts[pieceStartLine + 1] - this._EOLLength))
421
+ : buffer.substring(pieceStartOffset, lineStarts[pieceStartLine + 1]).replace(/(\r\n|\r|\n)$/, ''));
422
+ lines[linesLength++] = currentLine;
423
+ for (let line = pieceStartLine + 1; line < pieceEndLine; line++) {
424
+ currentLine = (this._EOLNormalized
425
+ ? buffer.substring(lineStarts[line], lineStarts[line + 1] - this._EOLLength)
426
+ : buffer.substring(lineStarts[line], lineStarts[line + 1]).replace(/(\r\n|\r|\n)$/, ''));
427
+ lines[linesLength++] = currentLine;
428
+ }
429
+ if (!this._EOLNormalized && buffer.charCodeAt(lineStarts[pieceEndLine] + piece.end.column - 1) === 13 /* CharCode.CarriageReturn */) {
430
+ danglingCR = true;
431
+ if (piece.end.column === 0) {
432
+ // The last line ended with a \r, let's undo the push, it will be pushed by next iteration
433
+ linesLength--;
434
+ }
435
+ else {
436
+ currentLine = buffer.substr(lineStarts[pieceEndLine], piece.end.column - 1);
437
+ }
438
+ }
439
+ else {
440
+ currentLine = buffer.substr(lineStarts[pieceEndLine], piece.end.column);
441
+ }
442
+ return true;
443
+ });
444
+ if (danglingCR) {
445
+ lines[linesLength++] = currentLine;
446
+ currentLine = '';
447
+ }
448
+ lines[linesLength++] = currentLine;
449
+ return lines;
450
+ }
451
+ getLength() {
452
+ return this._length;
453
+ }
454
+ getLineCount() {
455
+ return this._lineCnt;
456
+ }
457
+ getLineContent(lineNumber) {
458
+ if (this._lastVisitedLine.lineNumber === lineNumber) {
459
+ return this._lastVisitedLine.value;
460
+ }
461
+ this._lastVisitedLine.lineNumber = lineNumber;
462
+ if (lineNumber === this._lineCnt) {
463
+ this._lastVisitedLine.value = this.getLineRawContent(lineNumber);
464
+ }
465
+ else if (this._EOLNormalized) {
466
+ this._lastVisitedLine.value = this.getLineRawContent(lineNumber, this._EOLLength);
467
+ }
468
+ else {
469
+ this._lastVisitedLine.value = this.getLineRawContent(lineNumber).replace(/(\r\n|\r|\n)$/, '');
470
+ }
471
+ return this._lastVisitedLine.value;
472
+ }
473
+ _getCharCode(nodePos) {
474
+ if (nodePos.remainder === nodePos.node.piece.length) {
475
+ // the char we want to fetch is at the head of next node.
476
+ const matchingNode = nodePos.node.next();
477
+ if (!matchingNode) {
478
+ return 0;
479
+ }
480
+ const buffer = this._buffers[matchingNode.piece.bufferIndex];
481
+ const startOffset = this.offsetInBuffer(matchingNode.piece.bufferIndex, matchingNode.piece.start);
482
+ return buffer.buffer.charCodeAt(startOffset);
483
+ }
484
+ else {
485
+ const buffer = this._buffers[nodePos.node.piece.bufferIndex];
486
+ const startOffset = this.offsetInBuffer(nodePos.node.piece.bufferIndex, nodePos.node.piece.start);
487
+ const targetOffset = startOffset + nodePos.remainder;
488
+ return buffer.buffer.charCodeAt(targetOffset);
489
+ }
490
+ }
491
+ getLineCharCode(lineNumber, index) {
492
+ const nodePos = this.nodeAt2(lineNumber, index + 1);
493
+ return this._getCharCode(nodePos);
494
+ }
495
+ getLineLength(lineNumber) {
496
+ if (lineNumber === this.getLineCount()) {
497
+ const startOffset = this.getOffsetAt(lineNumber, 1);
498
+ return this.getLength() - startOffset;
499
+ }
500
+ return this.getOffsetAt(lineNumber + 1, 1) - this.getOffsetAt(lineNumber, 1) - this._EOLLength;
501
+ }
502
+ findMatchesInNode(node, searcher, startLineNumber, startColumn, startCursor, endCursor, searchData, captureMatches, limitResultCount, resultLen, result) {
503
+ const buffer = this._buffers[node.piece.bufferIndex];
504
+ const startOffsetInBuffer = this.offsetInBuffer(node.piece.bufferIndex, node.piece.start);
505
+ const start = this.offsetInBuffer(node.piece.bufferIndex, startCursor);
506
+ const end = this.offsetInBuffer(node.piece.bufferIndex, endCursor);
507
+ let m;
508
+ // Reset regex to search from the beginning
509
+ const ret = { line: 0, column: 0 };
510
+ let searchText;
511
+ let offsetInBuffer;
512
+ if (searcher._wordSeparators) {
513
+ searchText = buffer.buffer.substring(start, end);
514
+ offsetInBuffer = (offset) => offset + start;
515
+ searcher.reset(0);
516
+ }
517
+ else {
518
+ searchText = buffer.buffer;
519
+ offsetInBuffer = (offset) => offset;
520
+ searcher.reset(start);
521
+ }
522
+ do {
523
+ m = searcher.next(searchText);
524
+ if (m) {
525
+ if (offsetInBuffer(m.index) >= end) {
526
+ return resultLen;
527
+ }
528
+ this.positionInBuffer(node, offsetInBuffer(m.index) - startOffsetInBuffer, ret);
529
+ const lineFeedCnt = this.getLineFeedCnt(node.piece.bufferIndex, startCursor, ret);
530
+ const retStartColumn = ret.line === startCursor.line ? ret.column - startCursor.column + startColumn : ret.column + 1;
531
+ const retEndColumn = retStartColumn + m[0].length;
532
+ result[resultLen++] = createFindMatch(new Range(startLineNumber + lineFeedCnt, retStartColumn, startLineNumber + lineFeedCnt, retEndColumn), m, captureMatches);
533
+ if (offsetInBuffer(m.index) + m[0].length >= end) {
534
+ return resultLen;
535
+ }
536
+ if (resultLen >= limitResultCount) {
537
+ return resultLen;
538
+ }
539
+ }
540
+ } while (m);
541
+ return resultLen;
542
+ }
543
+ findMatchesLineByLine(searchRange, searchData, captureMatches, limitResultCount) {
544
+ const result = [];
545
+ let resultLen = 0;
546
+ const searcher = new Searcher(searchData.wordSeparators, searchData.regex);
547
+ let startPosition = this.nodeAt2(searchRange.startLineNumber, searchRange.startColumn);
548
+ if (startPosition === null) {
549
+ return [];
550
+ }
551
+ const endPosition = this.nodeAt2(searchRange.endLineNumber, searchRange.endColumn);
552
+ if (endPosition === null) {
553
+ return [];
554
+ }
555
+ let start = this.positionInBuffer(startPosition.node, startPosition.remainder);
556
+ const end = this.positionInBuffer(endPosition.node, endPosition.remainder);
557
+ if (startPosition.node === endPosition.node) {
558
+ this.findMatchesInNode(startPosition.node, searcher, searchRange.startLineNumber, searchRange.startColumn, start, end, searchData, captureMatches, limitResultCount, resultLen, result);
559
+ return result;
560
+ }
561
+ let startLineNumber = searchRange.startLineNumber;
562
+ let currentNode = startPosition.node;
563
+ while (currentNode !== endPosition.node) {
564
+ const lineBreakCnt = this.getLineFeedCnt(currentNode.piece.bufferIndex, start, currentNode.piece.end);
565
+ if (lineBreakCnt >= 1) {
566
+ // last line break position
567
+ const lineStarts = this._buffers[currentNode.piece.bufferIndex].lineStarts;
568
+ const startOffsetInBuffer = this.offsetInBuffer(currentNode.piece.bufferIndex, currentNode.piece.start);
569
+ const nextLineStartOffset = lineStarts[start.line + lineBreakCnt];
570
+ const startColumn = startLineNumber === searchRange.startLineNumber ? searchRange.startColumn : 1;
571
+ resultLen = this.findMatchesInNode(currentNode, searcher, startLineNumber, startColumn, start, this.positionInBuffer(currentNode, nextLineStartOffset - startOffsetInBuffer), searchData, captureMatches, limitResultCount, resultLen, result);
572
+ if (resultLen >= limitResultCount) {
573
+ return result;
574
+ }
575
+ startLineNumber += lineBreakCnt;
576
+ }
577
+ const startColumn = startLineNumber === searchRange.startLineNumber ? searchRange.startColumn - 1 : 0;
578
+ // search for the remaining content
579
+ if (startLineNumber === searchRange.endLineNumber) {
580
+ const text = this.getLineContent(startLineNumber).substring(startColumn, searchRange.endColumn - 1);
581
+ resultLen = this._findMatchesInLine(searchData, searcher, text, searchRange.endLineNumber, startColumn, resultLen, result, captureMatches, limitResultCount);
582
+ return result;
583
+ }
584
+ resultLen = this._findMatchesInLine(searchData, searcher, this.getLineContent(startLineNumber).substr(startColumn), startLineNumber, startColumn, resultLen, result, captureMatches, limitResultCount);
585
+ if (resultLen >= limitResultCount) {
586
+ return result;
587
+ }
588
+ startLineNumber++;
589
+ startPosition = this.nodeAt2(startLineNumber, 1);
590
+ currentNode = startPosition.node;
591
+ start = this.positionInBuffer(startPosition.node, startPosition.remainder);
592
+ }
593
+ if (startLineNumber === searchRange.endLineNumber) {
594
+ const startColumn = startLineNumber === searchRange.startLineNumber ? searchRange.startColumn - 1 : 0;
595
+ const text = this.getLineContent(startLineNumber).substring(startColumn, searchRange.endColumn - 1);
596
+ resultLen = this._findMatchesInLine(searchData, searcher, text, searchRange.endLineNumber, startColumn, resultLen, result, captureMatches, limitResultCount);
597
+ return result;
598
+ }
599
+ const startColumn = startLineNumber === searchRange.startLineNumber ? searchRange.startColumn : 1;
600
+ resultLen = this.findMatchesInNode(endPosition.node, searcher, startLineNumber, startColumn, start, end, searchData, captureMatches, limitResultCount, resultLen, result);
601
+ return result;
602
+ }
603
+ _findMatchesInLine(searchData, searcher, text, lineNumber, deltaOffset, resultLen, result, captureMatches, limitResultCount) {
604
+ const wordSeparators = searchData.wordSeparators;
605
+ if (!captureMatches && searchData.simpleSearch) {
606
+ const searchString = searchData.simpleSearch;
607
+ const searchStringLen = searchString.length;
608
+ const textLength = text.length;
609
+ let lastMatchIndex = -searchStringLen;
610
+ while ((lastMatchIndex = text.indexOf(searchString, lastMatchIndex + searchStringLen)) !== -1) {
611
+ if (!wordSeparators || isValidMatch(wordSeparators, text, textLength, lastMatchIndex, searchStringLen)) {
612
+ result[resultLen++] = new FindMatch(new Range(lineNumber, lastMatchIndex + 1 + deltaOffset, lineNumber, lastMatchIndex + 1 + searchStringLen + deltaOffset), null);
613
+ if (resultLen >= limitResultCount) {
614
+ return resultLen;
615
+ }
616
+ }
617
+ }
618
+ return resultLen;
619
+ }
620
+ let m;
621
+ // Reset regex to search from the beginning
622
+ searcher.reset(0);
623
+ do {
624
+ m = searcher.next(text);
625
+ if (m) {
626
+ result[resultLen++] = createFindMatch(new Range(lineNumber, m.index + 1 + deltaOffset, lineNumber, m.index + 1 + m[0].length + deltaOffset), m, captureMatches);
627
+ if (resultLen >= limitResultCount) {
628
+ return resultLen;
629
+ }
630
+ }
631
+ } while (m);
632
+ return resultLen;
633
+ }
634
+ // #endregion
635
+ // #region Piece Table
636
+ insert(offset, value, eolNormalized = false) {
637
+ this._EOLNormalized = this._EOLNormalized && eolNormalized;
638
+ this._lastVisitedLine.lineNumber = 0;
639
+ this._lastVisitedLine.value = '';
640
+ if (this.root !== SENTINEL) {
641
+ const { node, remainder, nodeStartOffset } = this.nodeAt(offset);
642
+ const piece = node.piece;
643
+ const bufferIndex = piece.bufferIndex;
644
+ const insertPosInBuffer = this.positionInBuffer(node, remainder);
645
+ if (node.piece.bufferIndex === 0 &&
646
+ piece.end.line === this._lastChangeBufferPos.line &&
647
+ piece.end.column === this._lastChangeBufferPos.column &&
648
+ (nodeStartOffset + piece.length === offset) &&
649
+ value.length < AverageBufferSize) {
650
+ // changed buffer
651
+ this.appendToNode(node, value);
652
+ this.computeBufferMetadata();
653
+ return;
654
+ }
655
+ if (nodeStartOffset === offset) {
656
+ this.insertContentToNodeLeft(value, node);
657
+ this._searchCache.validate(offset);
658
+ }
659
+ else if (nodeStartOffset + node.piece.length > offset) {
660
+ // we are inserting into the middle of a node.
661
+ const nodesToDel = [];
662
+ let newRightPiece = new Piece(piece.bufferIndex, insertPosInBuffer, piece.end, this.getLineFeedCnt(piece.bufferIndex, insertPosInBuffer, piece.end), this.offsetInBuffer(bufferIndex, piece.end) - this.offsetInBuffer(bufferIndex, insertPosInBuffer));
663
+ if (this.shouldCheckCRLF() && this.endWithCR(value)) {
664
+ const headOfRight = this.nodeCharCodeAt(node, remainder);
665
+ if (headOfRight === 10 /** \n */) {
666
+ const newStart = { line: newRightPiece.start.line + 1, column: 0 };
667
+ newRightPiece = new Piece(newRightPiece.bufferIndex, newStart, newRightPiece.end, this.getLineFeedCnt(newRightPiece.bufferIndex, newStart, newRightPiece.end), newRightPiece.length - 1);
668
+ value += '\n';
669
+ }
670
+ }
671
+ // reuse node for content before insertion point.
672
+ if (this.shouldCheckCRLF() && this.startWithLF(value)) {
673
+ const tailOfLeft = this.nodeCharCodeAt(node, remainder - 1);
674
+ if (tailOfLeft === 13 /** \r */) {
675
+ const previousPos = this.positionInBuffer(node, remainder - 1);
676
+ this.deleteNodeTail(node, previousPos);
677
+ value = '\r' + value;
678
+ if (node.piece.length === 0) {
679
+ nodesToDel.push(node);
680
+ }
681
+ }
682
+ else {
683
+ this.deleteNodeTail(node, insertPosInBuffer);
684
+ }
685
+ }
686
+ else {
687
+ this.deleteNodeTail(node, insertPosInBuffer);
688
+ }
689
+ const newPieces = this.createNewPieces(value);
690
+ if (newRightPiece.length > 0) {
691
+ this.rbInsertRight(node, newRightPiece);
692
+ }
693
+ let tmpNode = node;
694
+ for (let k = 0; k < newPieces.length; k++) {
695
+ tmpNode = this.rbInsertRight(tmpNode, newPieces[k]);
696
+ }
697
+ this.deleteNodes(nodesToDel);
698
+ }
699
+ else {
700
+ this.insertContentToNodeRight(value, node);
701
+ }
702
+ }
703
+ else {
704
+ // insert new node
705
+ const pieces = this.createNewPieces(value);
706
+ let node = this.rbInsertLeft(null, pieces[0]);
707
+ for (let k = 1; k < pieces.length; k++) {
708
+ node = this.rbInsertRight(node, pieces[k]);
709
+ }
710
+ }
711
+ // todo, this is too brutal. Total line feed count should be updated the same way as lf_left.
712
+ this.computeBufferMetadata();
713
+ }
714
+ delete(offset, cnt) {
715
+ this._lastVisitedLine.lineNumber = 0;
716
+ this._lastVisitedLine.value = '';
717
+ if (cnt <= 0 || this.root === SENTINEL) {
718
+ return;
719
+ }
720
+ const startPosition = this.nodeAt(offset);
721
+ const endPosition = this.nodeAt(offset + cnt);
722
+ const startNode = startPosition.node;
723
+ const endNode = endPosition.node;
724
+ if (startNode === endNode) {
725
+ const startSplitPosInBuffer = this.positionInBuffer(startNode, startPosition.remainder);
726
+ const endSplitPosInBuffer = this.positionInBuffer(startNode, endPosition.remainder);
727
+ if (startPosition.nodeStartOffset === offset) {
728
+ if (cnt === startNode.piece.length) { // delete node
729
+ const next = startNode.next();
730
+ rbDelete(this, startNode);
731
+ this.validateCRLFWithPrevNode(next);
732
+ this.computeBufferMetadata();
733
+ return;
734
+ }
735
+ this.deleteNodeHead(startNode, endSplitPosInBuffer);
736
+ this._searchCache.validate(offset);
737
+ this.validateCRLFWithPrevNode(startNode);
738
+ this.computeBufferMetadata();
739
+ return;
740
+ }
741
+ if (startPosition.nodeStartOffset + startNode.piece.length === offset + cnt) {
742
+ this.deleteNodeTail(startNode, startSplitPosInBuffer);
743
+ this.validateCRLFWithNextNode(startNode);
744
+ this.computeBufferMetadata();
745
+ return;
746
+ }
747
+ // delete content in the middle, this node will be splitted to nodes
748
+ this.shrinkNode(startNode, startSplitPosInBuffer, endSplitPosInBuffer);
749
+ this.computeBufferMetadata();
750
+ return;
751
+ }
752
+ const nodesToDel = [];
753
+ const startSplitPosInBuffer = this.positionInBuffer(startNode, startPosition.remainder);
754
+ this.deleteNodeTail(startNode, startSplitPosInBuffer);
755
+ this._searchCache.validate(offset);
756
+ if (startNode.piece.length === 0) {
757
+ nodesToDel.push(startNode);
758
+ }
759
+ // update last touched node
760
+ const endSplitPosInBuffer = this.positionInBuffer(endNode, endPosition.remainder);
761
+ this.deleteNodeHead(endNode, endSplitPosInBuffer);
762
+ if (endNode.piece.length === 0) {
763
+ nodesToDel.push(endNode);
764
+ }
765
+ // delete nodes in between
766
+ const secondNode = startNode.next();
767
+ for (let node = secondNode; node !== SENTINEL && node !== endNode; node = node.next()) {
768
+ nodesToDel.push(node);
769
+ }
770
+ const prev = startNode.piece.length === 0 ? startNode.prev() : startNode;
771
+ this.deleteNodes(nodesToDel);
772
+ this.validateCRLFWithNextNode(prev);
773
+ this.computeBufferMetadata();
774
+ }
775
+ insertContentToNodeLeft(value, node) {
776
+ // we are inserting content to the beginning of node
777
+ const nodesToDel = [];
778
+ if (this.shouldCheckCRLF() && this.endWithCR(value) && this.startWithLF(node)) {
779
+ // move `\n` to new node.
780
+ const piece = node.piece;
781
+ const newStart = { line: piece.start.line + 1, column: 0 };
782
+ const nPiece = new Piece(piece.bufferIndex, newStart, piece.end, this.getLineFeedCnt(piece.bufferIndex, newStart, piece.end), piece.length - 1);
783
+ node.piece = nPiece;
784
+ value += '\n';
785
+ updateTreeMetadata(this, node, -1, -1);
786
+ if (node.piece.length === 0) {
787
+ nodesToDel.push(node);
788
+ }
789
+ }
790
+ const newPieces = this.createNewPieces(value);
791
+ let newNode = this.rbInsertLeft(node, newPieces[newPieces.length - 1]);
792
+ for (let k = newPieces.length - 2; k >= 0; k--) {
793
+ newNode = this.rbInsertLeft(newNode, newPieces[k]);
794
+ }
795
+ this.validateCRLFWithPrevNode(newNode);
796
+ this.deleteNodes(nodesToDel);
797
+ }
798
+ insertContentToNodeRight(value, node) {
799
+ // we are inserting to the right of this node.
800
+ if (this.adjustCarriageReturnFromNext(value, node)) {
801
+ // move \n to the new node.
802
+ value += '\n';
803
+ }
804
+ const newPieces = this.createNewPieces(value);
805
+ const newNode = this.rbInsertRight(node, newPieces[0]);
806
+ let tmpNode = newNode;
807
+ for (let k = 1; k < newPieces.length; k++) {
808
+ tmpNode = this.rbInsertRight(tmpNode, newPieces[k]);
809
+ }
810
+ this.validateCRLFWithPrevNode(newNode);
811
+ }
812
+ positionInBuffer(node, remainder, ret) {
813
+ const piece = node.piece;
814
+ const bufferIndex = node.piece.bufferIndex;
815
+ const lineStarts = this._buffers[bufferIndex].lineStarts;
816
+ const startOffset = lineStarts[piece.start.line] + piece.start.column;
817
+ const offset = startOffset + remainder;
818
+ // binary search offset between startOffset and endOffset
819
+ let low = piece.start.line;
820
+ let high = piece.end.line;
821
+ let mid = 0;
822
+ let midStop = 0;
823
+ let midStart = 0;
824
+ while (low <= high) {
825
+ mid = low + ((high - low) / 2) | 0;
826
+ midStart = lineStarts[mid];
827
+ if (mid === high) {
828
+ break;
829
+ }
830
+ midStop = lineStarts[mid + 1];
831
+ if (offset < midStart) {
832
+ high = mid - 1;
833
+ }
834
+ else if (offset >= midStop) {
835
+ low = mid + 1;
836
+ }
837
+ else {
838
+ break;
839
+ }
840
+ }
841
+ if (ret) {
842
+ ret.line = mid;
843
+ ret.column = offset - midStart;
844
+ return null;
845
+ }
846
+ return {
847
+ line: mid,
848
+ column: offset - midStart
849
+ };
850
+ }
851
+ getLineFeedCnt(bufferIndex, start, end) {
852
+ // we don't need to worry about start: abc\r|\n, or abc|\r, or abc|\n, or abc|\r\n doesn't change the fact that, there is one line break after start.
853
+ // now let's take care of end: abc\r|\n, if end is in between \r and \n, we need to add line feed count by 1
854
+ if (end.column === 0) {
855
+ return end.line - start.line;
856
+ }
857
+ const lineStarts = this._buffers[bufferIndex].lineStarts;
858
+ if (end.line === lineStarts.length - 1) { // it means, there is no \n after end, otherwise, there will be one more lineStart.
859
+ return end.line - start.line;
860
+ }
861
+ const nextLineStartOffset = lineStarts[end.line + 1];
862
+ const endOffset = lineStarts[end.line] + end.column;
863
+ if (nextLineStartOffset > endOffset + 1) { // there are more than 1 character after end, which means it can't be \n
864
+ return end.line - start.line;
865
+ }
866
+ // endOffset + 1 === nextLineStartOffset
867
+ // character at endOffset is \n, so we check the character before first
868
+ // if character at endOffset is \r, end.column is 0 and we can't get here.
869
+ const previousCharOffset = endOffset - 1; // end.column > 0 so it's okay.
870
+ const buffer = this._buffers[bufferIndex].buffer;
871
+ if (buffer.charCodeAt(previousCharOffset) === 13) {
872
+ return end.line - start.line + 1;
873
+ }
874
+ else {
875
+ return end.line - start.line;
876
+ }
877
+ }
878
+ offsetInBuffer(bufferIndex, cursor) {
879
+ const lineStarts = this._buffers[bufferIndex].lineStarts;
880
+ return lineStarts[cursor.line] + cursor.column;
881
+ }
882
+ deleteNodes(nodes) {
883
+ for (let i = 0; i < nodes.length; i++) {
884
+ rbDelete(this, nodes[i]);
885
+ }
886
+ }
887
+ createNewPieces(text) {
888
+ if (text.length > AverageBufferSize) {
889
+ // the content is large, operations like substring, charCode becomes slow
890
+ // so here we split it into smaller chunks, just like what we did for CR/LF normalization
891
+ const newPieces = [];
892
+ while (text.length > AverageBufferSize) {
893
+ const lastChar = text.charCodeAt(AverageBufferSize - 1);
894
+ let splitText;
895
+ if (lastChar === 13 /* CharCode.CarriageReturn */ || (lastChar >= 0xD800 && lastChar <= 0xDBFF)) {
896
+ // last character is \r or a high surrogate => keep it back
897
+ splitText = text.substring(0, AverageBufferSize - 1);
898
+ text = text.substring(AverageBufferSize - 1);
899
+ }
900
+ else {
901
+ splitText = text.substring(0, AverageBufferSize);
902
+ text = text.substring(AverageBufferSize);
903
+ }
904
+ const lineStarts = createLineStartsFast(splitText);
905
+ newPieces.push(new Piece(this._buffers.length, /* buffer index */ { line: 0, column: 0 }, { line: lineStarts.length - 1, column: splitText.length - lineStarts[lineStarts.length - 1] }, lineStarts.length - 1, splitText.length));
906
+ this._buffers.push(new StringBuffer(splitText, lineStarts));
907
+ }
908
+ const lineStarts = createLineStartsFast(text);
909
+ newPieces.push(new Piece(this._buffers.length, /* buffer index */ { line: 0, column: 0 }, { line: lineStarts.length - 1, column: text.length - lineStarts[lineStarts.length - 1] }, lineStarts.length - 1, text.length));
910
+ this._buffers.push(new StringBuffer(text, lineStarts));
911
+ return newPieces;
912
+ }
913
+ let startOffset = this._buffers[0].buffer.length;
914
+ const lineStarts = createLineStartsFast(text, false);
915
+ let start = this._lastChangeBufferPos;
916
+ if (this._buffers[0].lineStarts[this._buffers[0].lineStarts.length - 1] === startOffset
917
+ && startOffset !== 0
918
+ && this.startWithLF(text)
919
+ && this.endWithCR(this._buffers[0].buffer) // todo, we can check this._lastChangeBufferPos's column as it's the last one
920
+ ) {
921
+ this._lastChangeBufferPos = { line: this._lastChangeBufferPos.line, column: this._lastChangeBufferPos.column + 1 };
922
+ start = this._lastChangeBufferPos;
923
+ for (let i = 0; i < lineStarts.length; i++) {
924
+ lineStarts[i] += startOffset + 1;
925
+ }
926
+ this._buffers[0].lineStarts = this._buffers[0].lineStarts.concat(lineStarts.slice(1));
927
+ this._buffers[0].buffer += '_' + text;
928
+ startOffset += 1;
929
+ }
930
+ else {
931
+ if (startOffset !== 0) {
932
+ for (let i = 0; i < lineStarts.length; i++) {
933
+ lineStarts[i] += startOffset;
934
+ }
935
+ }
936
+ this._buffers[0].lineStarts = this._buffers[0].lineStarts.concat(lineStarts.slice(1));
937
+ this._buffers[0].buffer += text;
938
+ }
939
+ const endOffset = this._buffers[0].buffer.length;
940
+ const endIndex = this._buffers[0].lineStarts.length - 1;
941
+ const endColumn = endOffset - this._buffers[0].lineStarts[endIndex];
942
+ const endPos = { line: endIndex, column: endColumn };
943
+ const newPiece = new Piece(0, /** todo@peng */ start, endPos, this.getLineFeedCnt(0, start, endPos), endOffset - startOffset);
944
+ this._lastChangeBufferPos = endPos;
945
+ return [newPiece];
946
+ }
947
+ getLineRawContent(lineNumber, endOffset = 0) {
948
+ let x = this.root;
949
+ let ret = '';
950
+ const cache = this._searchCache.get2(lineNumber);
951
+ if (cache) {
952
+ x = cache.node;
953
+ const prevAccumulatedValue = this.getAccumulatedValue(x, lineNumber - cache.nodeStartLineNumber - 1);
954
+ const buffer = this._buffers[x.piece.bufferIndex].buffer;
955
+ const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);
956
+ if (cache.nodeStartLineNumber + x.piece.lineFeedCnt === lineNumber) {
957
+ ret = buffer.substring(startOffset + prevAccumulatedValue, startOffset + x.piece.length);
958
+ }
959
+ else {
960
+ const accumulatedValue = this.getAccumulatedValue(x, lineNumber - cache.nodeStartLineNumber);
961
+ return buffer.substring(startOffset + prevAccumulatedValue, startOffset + accumulatedValue - endOffset);
962
+ }
963
+ }
964
+ else {
965
+ let nodeStartOffset = 0;
966
+ const originalLineNumber = lineNumber;
967
+ while (x !== SENTINEL) {
968
+ if (x.left !== SENTINEL && x.lf_left >= lineNumber - 1) {
969
+ x = x.left;
970
+ }
971
+ else if (x.lf_left + x.piece.lineFeedCnt > lineNumber - 1) {
972
+ const prevAccumulatedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);
973
+ const accumulatedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 1);
974
+ const buffer = this._buffers[x.piece.bufferIndex].buffer;
975
+ const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);
976
+ nodeStartOffset += x.size_left;
977
+ this._searchCache.set({
978
+ node: x,
979
+ nodeStartOffset,
980
+ nodeStartLineNumber: originalLineNumber - (lineNumber - 1 - x.lf_left)
981
+ });
982
+ return buffer.substring(startOffset + prevAccumulatedValue, startOffset + accumulatedValue - endOffset);
983
+ }
984
+ else if (x.lf_left + x.piece.lineFeedCnt === lineNumber - 1) {
985
+ const prevAccumulatedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);
986
+ const buffer = this._buffers[x.piece.bufferIndex].buffer;
987
+ const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);
988
+ ret = buffer.substring(startOffset + prevAccumulatedValue, startOffset + x.piece.length);
989
+ break;
990
+ }
991
+ else {
992
+ lineNumber -= x.lf_left + x.piece.lineFeedCnt;
993
+ nodeStartOffset += x.size_left + x.piece.length;
994
+ x = x.right;
995
+ }
996
+ }
997
+ }
998
+ // search in order, to find the node contains end column
999
+ x = x.next();
1000
+ while (x !== SENTINEL) {
1001
+ const buffer = this._buffers[x.piece.bufferIndex].buffer;
1002
+ if (x.piece.lineFeedCnt > 0) {
1003
+ const accumulatedValue = this.getAccumulatedValue(x, 0);
1004
+ const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);
1005
+ ret += buffer.substring(startOffset, startOffset + accumulatedValue - endOffset);
1006
+ return ret;
1007
+ }
1008
+ else {
1009
+ const startOffset = this.offsetInBuffer(x.piece.bufferIndex, x.piece.start);
1010
+ ret += buffer.substr(startOffset, x.piece.length);
1011
+ }
1012
+ x = x.next();
1013
+ }
1014
+ return ret;
1015
+ }
1016
+ computeBufferMetadata() {
1017
+ let x = this.root;
1018
+ let lfCnt = 1;
1019
+ let len = 0;
1020
+ while (x !== SENTINEL) {
1021
+ lfCnt += x.lf_left + x.piece.lineFeedCnt;
1022
+ len += x.size_left + x.piece.length;
1023
+ x = x.right;
1024
+ }
1025
+ this._lineCnt = lfCnt;
1026
+ this._length = len;
1027
+ this._searchCache.validate(this._length);
1028
+ }
1029
+ // #region node operations
1030
+ getIndexOf(node, accumulatedValue) {
1031
+ const piece = node.piece;
1032
+ const pos = this.positionInBuffer(node, accumulatedValue);
1033
+ const lineCnt = pos.line - piece.start.line;
1034
+ if (this.offsetInBuffer(piece.bufferIndex, piece.end) - this.offsetInBuffer(piece.bufferIndex, piece.start) === accumulatedValue) {
1035
+ // we are checking the end of this node, so a CRLF check is necessary.
1036
+ const realLineCnt = this.getLineFeedCnt(node.piece.bufferIndex, piece.start, pos);
1037
+ if (realLineCnt !== lineCnt) {
1038
+ // aha yes, CRLF
1039
+ return { index: realLineCnt, remainder: 0 };
1040
+ }
1041
+ }
1042
+ return { index: lineCnt, remainder: pos.column };
1043
+ }
1044
+ getAccumulatedValue(node, index) {
1045
+ if (index < 0) {
1046
+ return 0;
1047
+ }
1048
+ const piece = node.piece;
1049
+ const lineStarts = this._buffers[piece.bufferIndex].lineStarts;
1050
+ const expectedLineStartIndex = piece.start.line + index + 1;
1051
+ if (expectedLineStartIndex > piece.end.line) {
1052
+ return lineStarts[piece.end.line] + piece.end.column - lineStarts[piece.start.line] - piece.start.column;
1053
+ }
1054
+ else {
1055
+ return lineStarts[expectedLineStartIndex] - lineStarts[piece.start.line] - piece.start.column;
1056
+ }
1057
+ }
1058
+ deleteNodeTail(node, pos) {
1059
+ const piece = node.piece;
1060
+ const originalLFCnt = piece.lineFeedCnt;
1061
+ const originalEndOffset = this.offsetInBuffer(piece.bufferIndex, piece.end);
1062
+ const newEnd = pos;
1063
+ const newEndOffset = this.offsetInBuffer(piece.bufferIndex, newEnd);
1064
+ const newLineFeedCnt = this.getLineFeedCnt(piece.bufferIndex, piece.start, newEnd);
1065
+ const lf_delta = newLineFeedCnt - originalLFCnt;
1066
+ const size_delta = newEndOffset - originalEndOffset;
1067
+ const newLength = piece.length + size_delta;
1068
+ node.piece = new Piece(piece.bufferIndex, piece.start, newEnd, newLineFeedCnt, newLength);
1069
+ updateTreeMetadata(this, node, size_delta, lf_delta);
1070
+ }
1071
+ deleteNodeHead(node, pos) {
1072
+ const piece = node.piece;
1073
+ const originalLFCnt = piece.lineFeedCnt;
1074
+ const originalStartOffset = this.offsetInBuffer(piece.bufferIndex, piece.start);
1075
+ const newStart = pos;
1076
+ const newLineFeedCnt = this.getLineFeedCnt(piece.bufferIndex, newStart, piece.end);
1077
+ const newStartOffset = this.offsetInBuffer(piece.bufferIndex, newStart);
1078
+ const lf_delta = newLineFeedCnt - originalLFCnt;
1079
+ const size_delta = originalStartOffset - newStartOffset;
1080
+ const newLength = piece.length + size_delta;
1081
+ node.piece = new Piece(piece.bufferIndex, newStart, piece.end, newLineFeedCnt, newLength);
1082
+ updateTreeMetadata(this, node, size_delta, lf_delta);
1083
+ }
1084
+ shrinkNode(node, start, end) {
1085
+ const piece = node.piece;
1086
+ const originalStartPos = piece.start;
1087
+ const originalEndPos = piece.end;
1088
+ // old piece, originalStartPos, start
1089
+ const oldLength = piece.length;
1090
+ const oldLFCnt = piece.lineFeedCnt;
1091
+ const newEnd = start;
1092
+ const newLineFeedCnt = this.getLineFeedCnt(piece.bufferIndex, piece.start, newEnd);
1093
+ const newLength = this.offsetInBuffer(piece.bufferIndex, start) - this.offsetInBuffer(piece.bufferIndex, originalStartPos);
1094
+ node.piece = new Piece(piece.bufferIndex, piece.start, newEnd, newLineFeedCnt, newLength);
1095
+ updateTreeMetadata(this, node, newLength - oldLength, newLineFeedCnt - oldLFCnt);
1096
+ // new right piece, end, originalEndPos
1097
+ const newPiece = new Piece(piece.bufferIndex, end, originalEndPos, this.getLineFeedCnt(piece.bufferIndex, end, originalEndPos), this.offsetInBuffer(piece.bufferIndex, originalEndPos) - this.offsetInBuffer(piece.bufferIndex, end));
1098
+ const newNode = this.rbInsertRight(node, newPiece);
1099
+ this.validateCRLFWithPrevNode(newNode);
1100
+ }
1101
+ appendToNode(node, value) {
1102
+ if (this.adjustCarriageReturnFromNext(value, node)) {
1103
+ value += '\n';
1104
+ }
1105
+ const hitCRLF = this.shouldCheckCRLF() && this.startWithLF(value) && this.endWithCR(node);
1106
+ const startOffset = this._buffers[0].buffer.length;
1107
+ this._buffers[0].buffer += value;
1108
+ const lineStarts = createLineStartsFast(value, false);
1109
+ for (let i = 0; i < lineStarts.length; i++) {
1110
+ lineStarts[i] += startOffset;
1111
+ }
1112
+ if (hitCRLF) {
1113
+ const prevStartOffset = this._buffers[0].lineStarts[this._buffers[0].lineStarts.length - 2];
1114
+ this._buffers[0].lineStarts.pop();
1115
+ // _lastChangeBufferPos is already wrong
1116
+ this._lastChangeBufferPos = { line: this._lastChangeBufferPos.line - 1, column: startOffset - prevStartOffset };
1117
+ }
1118
+ this._buffers[0].lineStarts = this._buffers[0].lineStarts.concat(lineStarts.slice(1));
1119
+ const endIndex = this._buffers[0].lineStarts.length - 1;
1120
+ const endColumn = this._buffers[0].buffer.length - this._buffers[0].lineStarts[endIndex];
1121
+ const newEnd = { line: endIndex, column: endColumn };
1122
+ const newLength = node.piece.length + value.length;
1123
+ const oldLineFeedCnt = node.piece.lineFeedCnt;
1124
+ const newLineFeedCnt = this.getLineFeedCnt(0, node.piece.start, newEnd);
1125
+ const lf_delta = newLineFeedCnt - oldLineFeedCnt;
1126
+ node.piece = new Piece(node.piece.bufferIndex, node.piece.start, newEnd, newLineFeedCnt, newLength);
1127
+ this._lastChangeBufferPos = newEnd;
1128
+ updateTreeMetadata(this, node, value.length, lf_delta);
1129
+ }
1130
+ nodeAt(offset) {
1131
+ let x = this.root;
1132
+ const cache = this._searchCache.get(offset);
1133
+ if (cache) {
1134
+ return {
1135
+ node: cache.node,
1136
+ nodeStartOffset: cache.nodeStartOffset,
1137
+ remainder: offset - cache.nodeStartOffset
1138
+ };
1139
+ }
1140
+ let nodeStartOffset = 0;
1141
+ while (x !== SENTINEL) {
1142
+ if (x.size_left > offset) {
1143
+ x = x.left;
1144
+ }
1145
+ else if (x.size_left + x.piece.length >= offset) {
1146
+ nodeStartOffset += x.size_left;
1147
+ const ret = {
1148
+ node: x,
1149
+ remainder: offset - x.size_left,
1150
+ nodeStartOffset
1151
+ };
1152
+ this._searchCache.set(ret);
1153
+ return ret;
1154
+ }
1155
+ else {
1156
+ offset -= x.size_left + x.piece.length;
1157
+ nodeStartOffset += x.size_left + x.piece.length;
1158
+ x = x.right;
1159
+ }
1160
+ }
1161
+ return null;
1162
+ }
1163
+ nodeAt2(lineNumber, column) {
1164
+ let x = this.root;
1165
+ let nodeStartOffset = 0;
1166
+ while (x !== SENTINEL) {
1167
+ if (x.left !== SENTINEL && x.lf_left >= lineNumber - 1) {
1168
+ x = x.left;
1169
+ }
1170
+ else if (x.lf_left + x.piece.lineFeedCnt > lineNumber - 1) {
1171
+ const prevAccumualtedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);
1172
+ const accumulatedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 1);
1173
+ nodeStartOffset += x.size_left;
1174
+ return {
1175
+ node: x,
1176
+ remainder: Math.min(prevAccumualtedValue + column - 1, accumulatedValue),
1177
+ nodeStartOffset
1178
+ };
1179
+ }
1180
+ else if (x.lf_left + x.piece.lineFeedCnt === lineNumber - 1) {
1181
+ const prevAccumualtedValue = this.getAccumulatedValue(x, lineNumber - x.lf_left - 2);
1182
+ if (prevAccumualtedValue + column - 1 <= x.piece.length) {
1183
+ return {
1184
+ node: x,
1185
+ remainder: prevAccumualtedValue + column - 1,
1186
+ nodeStartOffset
1187
+ };
1188
+ }
1189
+ else {
1190
+ column -= x.piece.length - prevAccumualtedValue;
1191
+ break;
1192
+ }
1193
+ }
1194
+ else {
1195
+ lineNumber -= x.lf_left + x.piece.lineFeedCnt;
1196
+ nodeStartOffset += x.size_left + x.piece.length;
1197
+ x = x.right;
1198
+ }
1199
+ }
1200
+ // search in order, to find the node contains position.column
1201
+ x = x.next();
1202
+ while (x !== SENTINEL) {
1203
+ if (x.piece.lineFeedCnt > 0) {
1204
+ const accumulatedValue = this.getAccumulatedValue(x, 0);
1205
+ const nodeStartOffset = this.offsetOfNode(x);
1206
+ return {
1207
+ node: x,
1208
+ remainder: Math.min(column - 1, accumulatedValue),
1209
+ nodeStartOffset
1210
+ };
1211
+ }
1212
+ else {
1213
+ if (x.piece.length >= column - 1) {
1214
+ const nodeStartOffset = this.offsetOfNode(x);
1215
+ return {
1216
+ node: x,
1217
+ remainder: column - 1,
1218
+ nodeStartOffset
1219
+ };
1220
+ }
1221
+ else {
1222
+ column -= x.piece.length;
1223
+ }
1224
+ }
1225
+ x = x.next();
1226
+ }
1227
+ return null;
1228
+ }
1229
+ nodeCharCodeAt(node, offset) {
1230
+ if (node.piece.lineFeedCnt < 1) {
1231
+ return -1;
1232
+ }
1233
+ const buffer = this._buffers[node.piece.bufferIndex];
1234
+ const newOffset = this.offsetInBuffer(node.piece.bufferIndex, node.piece.start) + offset;
1235
+ return buffer.buffer.charCodeAt(newOffset);
1236
+ }
1237
+ offsetOfNode(node) {
1238
+ if (!node) {
1239
+ return 0;
1240
+ }
1241
+ let pos = node.size_left;
1242
+ while (node !== this.root) {
1243
+ if (node.parent.right === node) {
1244
+ pos += node.parent.size_left + node.parent.piece.length;
1245
+ }
1246
+ node = node.parent;
1247
+ }
1248
+ return pos;
1249
+ }
1250
+ // #endregion
1251
+ // #region CRLF
1252
+ shouldCheckCRLF() {
1253
+ return !(this._EOLNormalized && this._EOL === '\n');
1254
+ }
1255
+ startWithLF(val) {
1256
+ if (typeof val === 'string') {
1257
+ return val.charCodeAt(0) === 10;
1258
+ }
1259
+ if (val === SENTINEL || val.piece.lineFeedCnt === 0) {
1260
+ return false;
1261
+ }
1262
+ const piece = val.piece;
1263
+ const lineStarts = this._buffers[piece.bufferIndex].lineStarts;
1264
+ const line = piece.start.line;
1265
+ const startOffset = lineStarts[line] + piece.start.column;
1266
+ if (line === lineStarts.length - 1) {
1267
+ // last line, so there is no line feed at the end of this line
1268
+ return false;
1269
+ }
1270
+ const nextLineOffset = lineStarts[line + 1];
1271
+ if (nextLineOffset > startOffset + 1) {
1272
+ return false;
1273
+ }
1274
+ return this._buffers[piece.bufferIndex].buffer.charCodeAt(startOffset) === 10;
1275
+ }
1276
+ endWithCR(val) {
1277
+ if (typeof val === 'string') {
1278
+ return val.charCodeAt(val.length - 1) === 13;
1279
+ }
1280
+ if (val === SENTINEL || val.piece.lineFeedCnt === 0) {
1281
+ return false;
1282
+ }
1283
+ return this.nodeCharCodeAt(val, val.piece.length - 1) === 13;
1284
+ }
1285
+ validateCRLFWithPrevNode(nextNode) {
1286
+ if (this.shouldCheckCRLF() && this.startWithLF(nextNode)) {
1287
+ const node = nextNode.prev();
1288
+ if (this.endWithCR(node)) {
1289
+ this.fixCRLF(node, nextNode);
1290
+ }
1291
+ }
1292
+ }
1293
+ validateCRLFWithNextNode(node) {
1294
+ if (this.shouldCheckCRLF() && this.endWithCR(node)) {
1295
+ const nextNode = node.next();
1296
+ if (this.startWithLF(nextNode)) {
1297
+ this.fixCRLF(node, nextNode);
1298
+ }
1299
+ }
1300
+ }
1301
+ fixCRLF(prev, next) {
1302
+ const nodesToDel = [];
1303
+ // update node
1304
+ const lineStarts = this._buffers[prev.piece.bufferIndex].lineStarts;
1305
+ let newEnd;
1306
+ if (prev.piece.end.column === 0) {
1307
+ // it means, last line ends with \r, not \r\n
1308
+ newEnd = { line: prev.piece.end.line - 1, column: lineStarts[prev.piece.end.line] - lineStarts[prev.piece.end.line - 1] - 1 };
1309
+ }
1310
+ else {
1311
+ // \r\n
1312
+ newEnd = { line: prev.piece.end.line, column: prev.piece.end.column - 1 };
1313
+ }
1314
+ const prevNewLength = prev.piece.length - 1;
1315
+ const prevNewLFCnt = prev.piece.lineFeedCnt - 1;
1316
+ prev.piece = new Piece(prev.piece.bufferIndex, prev.piece.start, newEnd, prevNewLFCnt, prevNewLength);
1317
+ updateTreeMetadata(this, prev, -1, -1);
1318
+ if (prev.piece.length === 0) {
1319
+ nodesToDel.push(prev);
1320
+ }
1321
+ // update nextNode
1322
+ const newStart = { line: next.piece.start.line + 1, column: 0 };
1323
+ const newLength = next.piece.length - 1;
1324
+ const newLineFeedCnt = this.getLineFeedCnt(next.piece.bufferIndex, newStart, next.piece.end);
1325
+ next.piece = new Piece(next.piece.bufferIndex, newStart, next.piece.end, newLineFeedCnt, newLength);
1326
+ updateTreeMetadata(this, next, -1, -1);
1327
+ if (next.piece.length === 0) {
1328
+ nodesToDel.push(next);
1329
+ }
1330
+ // create new piece which contains \r\n
1331
+ const pieces = this.createNewPieces('\r\n');
1332
+ this.rbInsertRight(prev, pieces[0]);
1333
+ // delete empty nodes
1334
+ for (let i = 0; i < nodesToDel.length; i++) {
1335
+ rbDelete(this, nodesToDel[i]);
1336
+ }
1337
+ }
1338
+ adjustCarriageReturnFromNext(value, node) {
1339
+ if (this.shouldCheckCRLF() && this.endWithCR(value)) {
1340
+ const nextNode = node.next();
1341
+ if (this.startWithLF(nextNode)) {
1342
+ // move `\n` forward
1343
+ value += '\n';
1344
+ if (nextNode.piece.length === 1) {
1345
+ rbDelete(this, nextNode);
1346
+ }
1347
+ else {
1348
+ const piece = nextNode.piece;
1349
+ const newStart = { line: piece.start.line + 1, column: 0 };
1350
+ const newLength = piece.length - 1;
1351
+ const newLineFeedCnt = this.getLineFeedCnt(piece.bufferIndex, newStart, piece.end);
1352
+ nextNode.piece = new Piece(piece.bufferIndex, newStart, piece.end, newLineFeedCnt, newLength);
1353
+ updateTreeMetadata(this, nextNode, -1, -1);
1354
+ }
1355
+ return true;
1356
+ }
1357
+ }
1358
+ return false;
1359
+ }
1360
+ // #endregion
1361
+ // #endregion
1362
+ // #region Tree operations
1363
+ iterate(node, callback) {
1364
+ if (node === SENTINEL) {
1365
+ return callback(SENTINEL);
1366
+ }
1367
+ const leftRet = this.iterate(node.left, callback);
1368
+ if (!leftRet) {
1369
+ return leftRet;
1370
+ }
1371
+ return callback(node) && this.iterate(node.right, callback);
1372
+ }
1373
+ getNodeContent(node) {
1374
+ if (node === SENTINEL) {
1375
+ return '';
1376
+ }
1377
+ const buffer = this._buffers[node.piece.bufferIndex];
1378
+ const piece = node.piece;
1379
+ const startOffset = this.offsetInBuffer(piece.bufferIndex, piece.start);
1380
+ const endOffset = this.offsetInBuffer(piece.bufferIndex, piece.end);
1381
+ const currentContent = buffer.buffer.substring(startOffset, endOffset);
1382
+ return currentContent;
1383
+ }
1384
+ getPieceContent(piece) {
1385
+ const buffer = this._buffers[piece.bufferIndex];
1386
+ const startOffset = this.offsetInBuffer(piece.bufferIndex, piece.start);
1387
+ const endOffset = this.offsetInBuffer(piece.bufferIndex, piece.end);
1388
+ const currentContent = buffer.buffer.substring(startOffset, endOffset);
1389
+ return currentContent;
1390
+ }
1391
+ /**
1392
+ * node node
1393
+ * / \ / \
1394
+ * a b <---- a b
1395
+ * /
1396
+ * z
1397
+ */
1398
+ rbInsertRight(node, p) {
1399
+ const z = new TreeNode(p, 1 /* NodeColor.Red */);
1400
+ z.left = SENTINEL;
1401
+ z.right = SENTINEL;
1402
+ z.parent = SENTINEL;
1403
+ z.size_left = 0;
1404
+ z.lf_left = 0;
1405
+ const x = this.root;
1406
+ if (x === SENTINEL) {
1407
+ this.root = z;
1408
+ z.color = 0 /* NodeColor.Black */;
1409
+ }
1410
+ else if (node.right === SENTINEL) {
1411
+ node.right = z;
1412
+ z.parent = node;
1413
+ }
1414
+ else {
1415
+ const nextNode = leftest(node.right);
1416
+ nextNode.left = z;
1417
+ z.parent = nextNode;
1418
+ }
1419
+ fixInsert(this, z);
1420
+ return z;
1421
+ }
1422
+ /**
1423
+ * node node
1424
+ * / \ / \
1425
+ * a b ----> a b
1426
+ * \
1427
+ * z
1428
+ */
1429
+ rbInsertLeft(node, p) {
1430
+ const z = new TreeNode(p, 1 /* NodeColor.Red */);
1431
+ z.left = SENTINEL;
1432
+ z.right = SENTINEL;
1433
+ z.parent = SENTINEL;
1434
+ z.size_left = 0;
1435
+ z.lf_left = 0;
1436
+ if (this.root === SENTINEL) {
1437
+ this.root = z;
1438
+ z.color = 0 /* NodeColor.Black */;
1439
+ }
1440
+ else if (node.left === SENTINEL) {
1441
+ node.left = z;
1442
+ z.parent = node;
1443
+ }
1444
+ else {
1445
+ const prevNode = righttest(node.left); // a
1446
+ prevNode.right = z;
1447
+ z.parent = prevNode;
1448
+ }
1449
+ fixInsert(this, z);
1450
+ return z;
1451
+ }
1452
+ }