@formicoidea/labre-core 0.31.0 → 0.33.0

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 (637) hide show
  1. package/dist/_pkgs/affine-block-attachment/attachment-block.js +1 -1
  2. package/dist/_pkgs/affine-block-callout/callout-block.d.ts +6 -0
  3. package/dist/_pkgs/affine-block-callout/callout-block.js +26 -4
  4. package/dist/_pkgs/affine-block-callout/callout-keymap.js +59 -19
  5. package/dist/_pkgs/affine-block-callout/commands/callout-to-paragraph.d.ts +20 -0
  6. package/dist/_pkgs/affine-block-callout/commands/callout-to-paragraph.js +60 -0
  7. package/dist/_pkgs/affine-block-callout/commands/split-callout.d.ts +17 -0
  8. package/dist/_pkgs/affine-block-callout/commands/split-callout.js +42 -0
  9. package/dist/_pkgs/affine-block-callout/configs/slash-menu.js +9 -6
  10. package/dist/_pkgs/affine-block-callout/emoji-margin.d.ts +9 -0
  11. package/dist/_pkgs/affine-block-callout/emoji-margin.js +36 -0
  12. package/dist/_pkgs/affine-block-callout/emoji-menu.d.ts +5 -1
  13. package/dist/_pkgs/affine-block-callout/emoji-menu.js +5 -0
  14. package/dist/_pkgs/affine-block-code/code-block-inline.js +1 -1
  15. package/dist/_pkgs/affine-block-code/code-block.d.ts +14 -0
  16. package/dist/_pkgs/affine-block-code/code-block.js +44 -6
  17. package/dist/_pkgs/affine-block-code/code-toolbar/components/code-toolbar.d.ts +2 -0
  18. package/dist/_pkgs/affine-block-code/code-toolbar/components/code-toolbar.js +23 -14
  19. package/dist/_pkgs/affine-block-code/code-toolbar/components/more-menu.d.ts +16 -0
  20. package/dist/_pkgs/affine-block-code/code-toolbar/components/more-menu.js +93 -0
  21. package/dist/_pkgs/affine-block-code/code-toolbar/config.js +54 -5
  22. package/dist/_pkgs/affine-block-code/code-toolbar/index.js +1 -1
  23. package/dist/_pkgs/affine-block-code/effects.d.ts +2 -0
  24. package/dist/_pkgs/affine-block-code/effects.js +2 -0
  25. package/dist/_pkgs/affine-block-code/highlight/affine-code-unit.js +6 -1
  26. package/dist/_pkgs/affine-block-code/index.d.ts +1 -0
  27. package/dist/_pkgs/affine-block-code/index.js +1 -0
  28. package/dist/_pkgs/affine-block-code/line-numbers.d.ts +25 -0
  29. package/dist/_pkgs/affine-block-code/line-numbers.js +27 -0
  30. package/dist/_pkgs/affine-block-code/styles.js +31 -0
  31. package/dist/_pkgs/affine-block-data-view/data-view-block.js +1 -0
  32. package/dist/_pkgs/affine-block-database/components/title/index.js +4 -1
  33. package/dist/_pkgs/affine-block-database/configs/slash-menu.js +28 -1
  34. package/dist/_pkgs/affine-block-database/data-source.js +1 -2
  35. package/dist/_pkgs/affine-block-database/database-block.js +13 -0
  36. package/dist/_pkgs/affine-block-database/external-data-source.js +1 -1
  37. package/dist/_pkgs/affine-block-database/properties/paste-url.d.ts +24 -0
  38. package/dist/_pkgs/affine-block-database/properties/paste-url.js +98 -0
  39. package/dist/_pkgs/affine-block-database/properties/rich-text/cell-renderer.js +9 -19
  40. package/dist/_pkgs/affine-block-database/properties/title/text.js +20 -25
  41. package/dist/_pkgs/affine-block-database/views/index.js +1 -0
  42. package/dist/_pkgs/affine-block-edgeless-text/edgeless-text-block.js +11 -1
  43. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/config.d.ts +3 -0
  44. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/config.js +48 -1
  45. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/font-size.d.ts +17 -0
  46. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/font-size.js +24 -0
  47. package/dist/_pkgs/affine-block-embed/embed-figma-block/embed-figma-service.js +1 -1
  48. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/toolbar.js +2 -2
  49. package/dist/_pkgs/affine-block-embed-doc/common/doc-trashed.d.ts +9 -0
  50. package/dist/_pkgs/affine-block-embed-doc/common/doc-trashed.js +10 -0
  51. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/toolbar.js +1 -1
  52. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/embed-linked-doc-block.js +8 -4
  53. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/utils.js +1 -1
  54. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/configs/toolbar.js +1 -1
  55. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-synced-doc-block.d.ts +4 -0
  56. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-synced-doc-block.js +23 -4
  57. package/dist/_pkgs/affine-block-frame/frame-manager.d.ts +13 -0
  58. package/dist/_pkgs/affine-block-frame/frame-manager.js +34 -2
  59. package/dist/_pkgs/affine-block-frame/frame-tool.js +1 -1
  60. package/dist/_pkgs/affine-block-image/components/page-image-block.js +1 -1
  61. package/dist/_pkgs/affine-block-image/image-edgeless-block.js +1 -1
  62. package/dist/_pkgs/affine-block-latex/styles.js +6 -1
  63. package/dist/_pkgs/affine-block-list/utils/forward-delete.js +1 -1
  64. package/dist/_pkgs/affine-block-note/commands/select-block.js +1 -1
  65. package/dist/_pkgs/affine-block-note/commands/select-blocks-between.js +1 -1
  66. package/dist/_pkgs/affine-block-note/move-block.js +1 -1
  67. package/dist/_pkgs/affine-block-note/note-edgeless-block.d.ts +9 -0
  68. package/dist/_pkgs/affine-block-note/note-edgeless-block.js +29 -1
  69. package/dist/_pkgs/affine-block-paragraph/utils/forward-delete.js +2 -2
  70. package/dist/_pkgs/affine-block-paragraph/utils/merge-with-prev.js +1 -1
  71. package/dist/_pkgs/affine-block-root/commands/pivot-commands.d.ts +37 -0
  72. package/dist/_pkgs/affine-block-root/commands/pivot-commands.js +168 -0
  73. package/dist/_pkgs/affine-block-root/commands/reading-commands.d.ts +23 -0
  74. package/dist/_pkgs/affine-block-root/commands/reading-commands.js +107 -0
  75. package/dist/_pkgs/affine-block-root/commands/tag-commands.d.ts +47 -0
  76. package/dist/_pkgs/affine-block-root/commands/tag-commands.js +159 -0
  77. package/dist/_pkgs/affine-block-root/configs/toolbar.d.ts +1 -0
  78. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/more.js +10 -3
  79. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/render-linked-doc.js +1 -1
  80. package/dist/_pkgs/affine-block-root/edgeless/edgeless-keyboard.js +27 -2
  81. package/dist/_pkgs/affine-block-root/edgeless/edgeless-root-block.js +11 -2
  82. package/dist/_pkgs/affine-block-root/edgeless/edgeless-root-service.js +14 -0
  83. package/dist/_pkgs/affine-block-root/edgeless/index.d.ts +1 -0
  84. package/dist/_pkgs/affine-block-root/edgeless/index.js +1 -0
  85. package/dist/_pkgs/affine-block-root/edgeless/reserved-keys.d.ts +21 -0
  86. package/dist/_pkgs/affine-block-root/edgeless/reserved-keys.js +34 -0
  87. package/dist/_pkgs/affine-block-root/edgeless/utils/clipboard-utils.js +1 -1
  88. package/dist/_pkgs/affine-block-root/edgeless/utils/clone-utils.d.ts +7 -1
  89. package/dist/_pkgs/affine-block-root/edgeless/utils/clone-utils.js +11 -2
  90. package/dist/_pkgs/affine-block-root/index.d.ts +4 -1
  91. package/dist/_pkgs/affine-block-root/index.js +4 -1
  92. package/dist/_pkgs/affine-block-root/keyboard/commands.d.ts +2 -0
  93. package/dist/_pkgs/affine-block-root/keyboard/commands.js +147 -0
  94. package/dist/_pkgs/affine-block-root/view.js +13 -4
  95. package/dist/_pkgs/affine-block-surface/adapters/markdown/element-adapter/type.js +1 -1
  96. package/dist/_pkgs/affine-block-surface/adapters/plain-text/element-adapter/type.js +1 -1
  97. package/dist/_pkgs/affine-block-surface/commands/reassociate-connectors.js +0 -1
  98. package/dist/_pkgs/affine-block-surface/effects.js +6 -0
  99. package/dist/_pkgs/affine-block-surface/element-model/index.d.ts +21 -3
  100. package/dist/_pkgs/affine-block-surface/element-model/index.js +14 -2
  101. package/dist/_pkgs/affine-block-surface/extensions/audit.d.ts +107 -0
  102. package/dist/_pkgs/affine-block-surface/extensions/audit.js +489 -0
  103. package/dist/_pkgs/affine-block-surface/extensions/crud-extension.d.ts +14 -0
  104. package/dist/_pkgs/affine-block-surface/extensions/crud-extension.js +37 -5
  105. package/dist/_pkgs/affine-block-surface/extensions/editor-anchored-panel.d.ts +133 -0
  106. package/dist/_pkgs/affine-block-surface/extensions/editor-anchored-panel.js +327 -0
  107. package/dist/_pkgs/affine-block-surface/extensions/element-renderer.js +1 -1
  108. package/dist/_pkgs/affine-block-surface/extensions/export-manager/export-manager.js +1 -1
  109. package/dist/_pkgs/affine-block-surface/extensions/index.d.ts +17 -0
  110. package/dist/_pkgs/affine-block-surface/extensions/index.js +17 -0
  111. package/dist/_pkgs/affine-block-surface/extensions/interchange-import.d.ts +172 -0
  112. package/dist/_pkgs/affine-block-surface/extensions/interchange-import.js +393 -0
  113. package/dist/_pkgs/affine-block-surface/extensions/interchange.d.ts +306 -0
  114. package/dist/_pkgs/affine-block-surface/extensions/interchange.js +64 -0
  115. package/dist/_pkgs/affine-block-surface/extensions/map-quality-widget.d.ts +146 -0
  116. package/dist/_pkgs/affine-block-surface/extensions/map-quality-widget.js +528 -0
  117. package/dist/_pkgs/affine-block-surface/extensions/map-quality.d.ts +109 -0
  118. package/dist/_pkgs/affine-block-surface/extensions/map-quality.js +84 -0
  119. package/dist/_pkgs/affine-block-surface/extensions/morph-toolbar.d.ts +248 -0
  120. package/dist/_pkgs/affine-block-surface/extensions/morph-toolbar.js +248 -0
  121. package/dist/_pkgs/affine-block-surface/extensions/reading-toolbar.d.ts +15 -0
  122. package/dist/_pkgs/affine-block-surface/extensions/reading-toolbar.js +158 -0
  123. package/dist/_pkgs/affine-block-surface/extensions/reading-widget.d.ts +145 -0
  124. package/dist/_pkgs/affine-block-surface/extensions/reading-widget.js +588 -0
  125. package/dist/_pkgs/affine-block-surface/extensions/reading.d.ts +494 -0
  126. package/dist/_pkgs/affine-block-surface/extensions/reading.js +767 -0
  127. package/dist/_pkgs/affine-block-surface/extensions/spotlight.d.ts +45 -0
  128. package/dist/_pkgs/affine-block-surface/extensions/spotlight.js +177 -0
  129. package/dist/_pkgs/affine-block-surface/extensions/svg-sketch.d.ts +107 -0
  130. package/dist/_pkgs/affine-block-surface/extensions/svg-sketch.js +958 -0
  131. package/dist/_pkgs/affine-block-surface/extensions/tags-toolbar.d.ts +10 -0
  132. package/dist/_pkgs/affine-block-surface/extensions/tags-toolbar.js +295 -0
  133. package/dist/_pkgs/affine-block-surface/extensions/validation-toolbar.d.ts +27 -0
  134. package/dist/_pkgs/affine-block-surface/extensions/validation-toolbar.js +361 -0
  135. package/dist/_pkgs/affine-block-surface/extensions/validation.d.ts +2129 -0
  136. package/dist/_pkgs/affine-block-surface/extensions/validation.js +4620 -0
  137. package/dist/_pkgs/affine-block-surface/extensions/violation-detail-widget.d.ts +330 -0
  138. package/dist/_pkgs/affine-block-surface/extensions/violation-detail-widget.js +1004 -0
  139. package/dist/_pkgs/affine-block-surface/extensions/violation-timeline.d.ts +80 -0
  140. package/dist/_pkgs/affine-block-surface/extensions/violation-timeline.js +123 -0
  141. package/dist/_pkgs/affine-block-surface/framework-background/def.d.ts +610 -0
  142. package/dist/_pkgs/affine-block-surface/framework-background/def.js +206 -0
  143. package/dist/_pkgs/affine-block-surface/framework-background/facts.d.ts +188 -0
  144. package/dist/_pkgs/affine-block-surface/framework-background/facts.js +284 -0
  145. package/dist/_pkgs/affine-block-surface/framework-background/index.d.ts +5 -0
  146. package/dist/_pkgs/affine-block-surface/framework-background/index.js +5 -0
  147. package/dist/_pkgs/affine-block-surface/framework-background/interaction.d.ts +12 -0
  148. package/dist/_pkgs/affine-block-surface/framework-background/interaction.js +24 -0
  149. package/dist/_pkgs/affine-block-surface/framework-background/labels.d.ts +99 -0
  150. package/dist/_pkgs/affine-block-surface/framework-background/labels.js +193 -0
  151. package/dist/_pkgs/affine-block-surface/framework-background/renderer.d.ts +8 -0
  152. package/dist/_pkgs/affine-block-surface/framework-background/renderer.js +399 -0
  153. package/dist/_pkgs/affine-block-surface/index.d.ts +1 -0
  154. package/dist/_pkgs/affine-block-surface/index.js +1 -0
  155. package/dist/_pkgs/affine-block-surface/renderer/canvas-renderer.d.ts +69 -3
  156. package/dist/_pkgs/affine-block-surface/renderer/canvas-renderer.js +333 -44
  157. package/dist/_pkgs/affine-block-surface/renderer/dom-renderer.js +18 -2
  158. package/dist/_pkgs/affine-block-surface/renderer/overlay.js +1 -1
  159. package/dist/_pkgs/affine-block-surface/tool/default-tool.js +8 -0
  160. package/dist/_pkgs/affine-block-surface/utils/font.js +9 -3
  161. package/dist/_pkgs/affine-block-surface/view.d.ts +17 -0
  162. package/dist/_pkgs/affine-block-surface/view.js +57 -2
  163. package/dist/_pkgs/affine-block-surface-ref/portal/note.js +2 -2
  164. package/dist/_pkgs/affine-block-table/commands.js +1 -1
  165. package/dist/_pkgs/affine-block-table/selection-controller.d.ts +6 -0
  166. package/dist/_pkgs/affine-block-table/selection-controller.js +24 -1
  167. package/dist/_pkgs/affine-block-table/table-block.js +8 -2
  168. package/dist/_pkgs/affine-block-table/table-cell.js +5 -6
  169. package/dist/_pkgs/affine-block-table/table-keymap.d.ts +18 -0
  170. package/dist/_pkgs/affine-block-table/table-keymap.js +41 -0
  171. package/dist/_pkgs/affine-block-table/utils.d.ts +7 -0
  172. package/dist/_pkgs/affine-block-table/utils.js +12 -0
  173. package/dist/_pkgs/affine-block-table/view.js +2 -0
  174. package/dist/_pkgs/affine-components/caption/captioned-block-component.js +2 -1
  175. package/dist/_pkgs/affine-components/context-menu/button.d.ts +7 -0
  176. package/dist/_pkgs/affine-components/context-menu/button.js +7 -2
  177. package/dist/_pkgs/affine-components/context-menu/input.d.ts +4 -0
  178. package/dist/_pkgs/affine-components/context-menu/input.js +12 -0
  179. package/dist/_pkgs/affine-components/context-menu/menu-all.d.ts +2 -0
  180. package/dist/_pkgs/affine-components/context-menu/menu-renderer.js +8 -1
  181. package/dist/_pkgs/affine-components/context-menu/sub-menu.js +3 -0
  182. package/dist/_pkgs/affine-components/edgeless-shape-color-picker/color-picker.js +1 -1
  183. package/dist/_pkgs/affine-components/embed-card-modal/embed-card-edit-modal.js +1 -1
  184. package/dist/_pkgs/affine-components/filterable-list/styles.js +1 -1
  185. package/dist/_pkgs/affine-components/highlight-dropdown-menu/highlight-duotone-icon.js +8 -8
  186. package/dist/_pkgs/affine-components/highlight-dropdown-menu/text-duotone-icon.js +11 -11
  187. package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.d.ts +28 -0
  188. package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.js +231 -0
  189. package/dist/_pkgs/affine-components/icon-picker/emoji-data.d.ts +40 -0
  190. package/dist/_pkgs/affine-components/icon-picker/emoji-data.js +99 -0
  191. package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.d.ts +32 -0
  192. package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.js +276 -0
  193. package/dist/_pkgs/affine-components/icon-picker/icon-data.d.ts +34 -0
  194. package/dist/_pkgs/affine-components/icon-picker/icon-data.js +83 -0
  195. package/dist/_pkgs/affine-components/icon-picker/icon-picker.d.ts +39 -0
  196. package/dist/_pkgs/affine-components/icon-picker/icon-picker.js +233 -0
  197. package/dist/_pkgs/affine-components/icon-picker/index.d.ts +8 -0
  198. package/dist/_pkgs/affine-components/icon-picker/index.js +15 -0
  199. package/dist/_pkgs/affine-components/icon-picker/recent-store.d.ts +8 -0
  200. package/dist/_pkgs/affine-components/icon-picker/recent-store.js +41 -0
  201. package/dist/_pkgs/affine-components/icon-picker/styles.d.ts +5 -0
  202. package/dist/_pkgs/affine-components/icon-picker/styles.js +166 -0
  203. package/dist/_pkgs/affine-components/icon-picker/types.d.ts +22 -0
  204. package/dist/_pkgs/affine-components/icon-picker/types.js +10 -0
  205. package/dist/_pkgs/affine-components/icons/text.js +426 -426
  206. package/dist/_pkgs/affine-components/open-doc-dropdown-menu/dropdown-menu.d.ts +1 -0
  207. package/dist/_pkgs/affine-components/peek/peekable.js +1 -1
  208. package/dist/_pkgs/affine-components/portal/portal.d.ts +1 -1
  209. package/dist/_pkgs/affine-components/toolbar/index.d.ts +1 -0
  210. package/dist/_pkgs/affine-components/toolbar/index.js +1 -0
  211. package/dist/_pkgs/affine-components/toolbar/menu-button.js +2 -1
  212. package/dist/_pkgs/affine-components/toolbar/picker-menu.d.ts +55 -0
  213. package/dist/_pkgs/affine-components/toolbar/picker-menu.js +47 -0
  214. package/dist/_pkgs/affine-components/toolbar/toolbar.js +11 -10
  215. package/dist/_pkgs/affine-foundation/view.js +11 -2
  216. package/dist/_pkgs/affine-fragment-frame-panel/body/frame-panel-body.js +2 -2
  217. package/dist/_pkgs/affine-fragment-frame-panel/header/frame-panel-header.js +2 -2
  218. package/dist/_pkgs/affine-fragment-frame-panel/header/frames-setting-menu.js +1 -1
  219. package/dist/_pkgs/affine-fragment-outline/mobile-outline-panel.js +1 -1
  220. package/dist/_pkgs/affine-gfx-brush/index.d.ts +1 -0
  221. package/dist/_pkgs/affine-gfx-brush/index.js +1 -0
  222. package/dist/_pkgs/affine-gfx-brush/renderer/dom/brush.d.ts +1 -0
  223. package/dist/_pkgs/affine-gfx-brush/renderer/dom/brush.js +11 -0
  224. package/dist/_pkgs/affine-gfx-brush/renderer/dom/highlighter.d.ts +1 -0
  225. package/dist/_pkgs/affine-gfx-brush/renderer/dom/highlighter.js +11 -0
  226. package/dist/_pkgs/affine-gfx-brush/renderer/dom/index.d.ts +2 -0
  227. package/dist/_pkgs/affine-gfx-brush/renderer/dom/index.js +2 -0
  228. package/dist/_pkgs/affine-gfx-brush/renderer/dom/shared.d.ts +14 -0
  229. package/dist/_pkgs/affine-gfx-brush/renderer/dom/shared.js +54 -0
  230. package/dist/_pkgs/affine-gfx-brush/renderer/index.d.ts +1 -0
  231. package/dist/_pkgs/affine-gfx-brush/renderer/index.js +4 -0
  232. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-tool-button.js +1 -1
  233. package/dist/_pkgs/affine-gfx-brush/view.d.ts +14 -0
  234. package/dist/_pkgs/affine-gfx-brush/view.js +29 -3
  235. package/dist/_pkgs/affine-gfx-connector/connector-manager.js +39 -16
  236. package/dist/_pkgs/affine-gfx-connector/connector-tool.d.ts +26 -1
  237. package/dist/_pkgs/affine-gfx-connector/connector-tool.js +12 -3
  238. package/dist/_pkgs/affine-gfx-connector/connector-watcher.js +1 -4
  239. package/dist/_pkgs/affine-gfx-connector/direction/direction-reveal.d.ts +123 -0
  240. package/dist/_pkgs/affine-gfx-connector/direction/direction-reveal.js +282 -0
  241. package/dist/_pkgs/affine-gfx-connector/direction/direction-widget.d.ts +65 -0
  242. package/dist/_pkgs/affine-gfx-connector/direction/direction-widget.js +395 -0
  243. package/dist/_pkgs/affine-gfx-connector/direction/index.d.ts +4 -0
  244. package/dist/_pkgs/affine-gfx-connector/direction/index.js +4 -0
  245. package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.d.ts +72 -0
  246. package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.js +185 -0
  247. package/dist/_pkgs/affine-gfx-connector/direction/typed-edge.d.ts +69 -0
  248. package/dist/_pkgs/affine-gfx-connector/direction/typed-edge.js +66 -0
  249. package/dist/_pkgs/affine-gfx-connector/effects.d.ts +2 -0
  250. package/dist/_pkgs/affine-gfx-connector/effects.js +2 -0
  251. package/dist/_pkgs/affine-gfx-connector/element-renderer/connector-dom/index.js +78 -41
  252. package/dist/_pkgs/affine-gfx-connector/element-renderer/index.js +1 -1
  253. package/dist/_pkgs/affine-gfx-connector/element-renderer/utils.js +1 -1
  254. package/dist/_pkgs/affine-gfx-connector/index.d.ts +1 -0
  255. package/dist/_pkgs/affine-gfx-connector/index.js +1 -0
  256. package/dist/_pkgs/affine-gfx-connector/toolbar/config.d.ts +50 -0
  257. package/dist/_pkgs/affine-gfx-connector/toolbar/config.js +68 -2
  258. package/dist/_pkgs/affine-gfx-connector/view.js +16 -0
  259. package/dist/_pkgs/affine-gfx-group/command/group-api.js +150 -62
  260. package/dist/_pkgs/affine-gfx-group/text/edgeless-group-title-editor.js +4 -1
  261. package/dist/_pkgs/affine-gfx-mindmap/adapter/markdown/index.js +1 -1
  262. package/dist/_pkgs/affine-gfx-mindmap/adapter/utils.js +1 -1
  263. package/dist/_pkgs/affine-gfx-mindmap/templates/index.js +583 -4
  264. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-menu.js +23 -23
  265. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-tool-button.js +5 -1
  266. package/dist/_pkgs/affine-gfx-mindmap/view/utils.js +1 -1
  267. package/dist/_pkgs/affine-gfx-note/overlay/overlay.js +1 -1
  268. package/dist/_pkgs/affine-gfx-note/toolbar/note-senior-button.js +1 -1
  269. package/dist/_pkgs/affine-gfx-pointer/tools/pan-tool.d.ts +16 -0
  270. package/dist/_pkgs/affine-gfx-pointer/tools/pan-tool.js +102 -32
  271. package/dist/_pkgs/affine-gfx-shape/commands.d.ts +2 -0
  272. package/dist/_pkgs/affine-gfx-shape/commands.js +33 -0
  273. package/dist/_pkgs/affine-gfx-shape/consts.js +1 -1
  274. package/dist/_pkgs/affine-gfx-shape/draggable/shape-draggable.js +1 -1
  275. package/dist/_pkgs/affine-gfx-shape/element-renderer/shape/polygon.js +17 -9
  276. package/dist/_pkgs/affine-gfx-shape/element-renderer/shape/utils.js +8 -3
  277. package/dist/_pkgs/affine-gfx-shape/element-renderer/shape-dom/index.js +48 -19
  278. package/dist/_pkgs/affine-gfx-shape/element-view.js +19 -12
  279. package/dist/_pkgs/affine-gfx-shape/index.d.ts +1 -1
  280. package/dist/_pkgs/affine-gfx-shape/index.js +1 -1
  281. package/dist/_pkgs/affine-gfx-shape/overlay/polygon-drawing-overlay.js +1 -1
  282. package/dist/_pkgs/affine-gfx-shape/overlay/polygon-vertex-editing-overlay.js +12 -7
  283. package/dist/_pkgs/affine-gfx-shape/overlay/shape-overlay.js +1 -1
  284. package/dist/_pkgs/affine-gfx-shape/polygon-tool.js +4 -2
  285. package/dist/_pkgs/affine-gfx-shape/shape-tool.js +1 -1
  286. package/dist/_pkgs/affine-gfx-shape/text/edgeless-shape-text-editor.d.ts +26 -0
  287. package/dist/_pkgs/affine-gfx-shape/text/edgeless-shape-text-editor.js +124 -15
  288. package/dist/_pkgs/affine-gfx-shape/view.js +3 -3
  289. package/dist/_pkgs/affine-gfx-template/builtin/other.js +66 -17
  290. package/dist/_pkgs/affine-gfx-template/toolbar/overlay-scrollbar.js +1 -1
  291. package/dist/_pkgs/affine-gfx-template/toolbar/template-panel.js +1 -1
  292. package/dist/_pkgs/affine-gfx-template/toolbar/template-tool-button.d.ts +2 -0
  293. package/dist/_pkgs/affine-gfx-template/toolbar/template-tool-button.js +18 -1
  294. package/dist/_pkgs/affine-gfx-text/edgeless-text-editor.js +9 -5
  295. package/dist/_pkgs/affine-gfx-text/toolbar/actions.js +1 -1
  296. package/dist/_pkgs/affine-inline-latex/command.js +46 -26
  297. package/dist/_pkgs/affine-inline-latex/latex-node/latex-node.d.ts +10 -0
  298. package/dist/_pkgs/affine-inline-latex/latex-node/latex-node.js +23 -0
  299. package/dist/_pkgs/affine-inline-link/command.js +1 -1
  300. package/dist/_pkgs/affine-inline-link/link-node/affine-link.js +4 -1
  301. package/dist/_pkgs/affine-inline-preset/adapters/html/html-inline.d.ts +3 -0
  302. package/dist/_pkgs/affine-inline-preset/adapters/html/html-inline.js +29 -1
  303. package/dist/_pkgs/affine-inline-preset/command/format-block.js +1 -1
  304. package/dist/_pkgs/affine-inline-preset/command/format-native.js +2 -2
  305. package/dist/_pkgs/affine-inline-preset/command/format-text.js +1 -1
  306. package/dist/_pkgs/affine-inline-preset/inline-spec.js +1 -1
  307. package/dist/_pkgs/affine-inline-reference/reference-node/reference-node.js +1 -1
  308. package/dist/_pkgs/affine-model/blocks/code/code-model.d.ts +1 -0
  309. package/dist/_pkgs/affine-model/blocks/code/code-model.js +1 -0
  310. package/dist/_pkgs/affine-model/elements/bpmn/node.d.ts +40 -7
  311. package/dist/_pkgs/affine-model/elements/bpmn/node.js +4 -2
  312. package/dist/_pkgs/affine-model/elements/bpmn/pool.d.ts +74 -17
  313. package/dist/_pkgs/affine-model/elements/bpmn/pool.js +55 -26
  314. package/dist/_pkgs/affine-model/elements/c4/board.d.ts +88 -0
  315. package/dist/_pkgs/affine-model/elements/c4/board.js +128 -0
  316. package/dist/_pkgs/affine-model/elements/c4/boundary.d.ts +63 -0
  317. package/dist/_pkgs/affine-model/elements/c4/boundary.js +134 -0
  318. package/dist/_pkgs/affine-model/elements/c4/index.d.ts +3 -0
  319. package/dist/_pkgs/affine-model/elements/c4/index.js +3 -0
  320. package/dist/_pkgs/affine-model/elements/c4/node.d.ts +97 -0
  321. package/dist/_pkgs/affine-model/elements/c4/node.js +130 -0
  322. package/dist/_pkgs/affine-model/elements/connector/connector.js +25 -1
  323. package/dist/_pkgs/affine-model/elements/context-map/context-map.d.ts +27 -0
  324. package/dist/_pkgs/affine-model/elements/context-map/context-map.js +94 -0
  325. package/dist/_pkgs/affine-model/elements/context-map/index.d.ts +1 -0
  326. package/dist/_pkgs/affine-model/elements/context-map/index.js +1 -0
  327. package/dist/_pkgs/affine-model/elements/core-domain/core-domain.d.ts +34 -17
  328. package/dist/_pkgs/affine-model/elements/core-domain/core-domain.js +28 -26
  329. package/dist/_pkgs/affine-model/elements/edgy/board.d.ts +32 -0
  330. package/dist/_pkgs/affine-model/elements/edgy/board.js +112 -0
  331. package/dist/_pkgs/affine-model/elements/edgy/facets.d.ts +12 -0
  332. package/dist/_pkgs/affine-model/elements/edgy/facets.js +25 -1
  333. package/dist/_pkgs/affine-model/elements/edgy/index.d.ts +1 -0
  334. package/dist/_pkgs/affine-model/elements/edgy/index.js +1 -0
  335. package/dist/_pkgs/affine-model/elements/event-storming/event-storming.d.ts +36 -0
  336. package/dist/_pkgs/affine-model/elements/event-storming/event-storming.js +103 -0
  337. package/dist/_pkgs/affine-model/elements/event-storming/index.d.ts +1 -0
  338. package/dist/_pkgs/affine-model/elements/event-storming/index.js +1 -0
  339. package/dist/_pkgs/affine-model/elements/framework-background/background.d.ts +42 -0
  340. package/dist/_pkgs/affine-model/elements/framework-background/background.js +42 -0
  341. package/dist/_pkgs/affine-model/elements/framework-background/index.d.ts +1 -0
  342. package/dist/_pkgs/affine-model/elements/framework-background/index.js +1 -0
  343. package/dist/_pkgs/affine-model/elements/index.d.ts +14 -1
  344. package/dist/_pkgs/affine-model/elements/index.js +4 -0
  345. package/dist/_pkgs/affine-model/elements/mindmap/mindmap.js +8 -3
  346. package/dist/_pkgs/affine-model/elements/mindmap/style.d.ts +10 -0
  347. package/dist/_pkgs/affine-model/elements/mindmap/style.js +8 -0
  348. package/dist/_pkgs/affine-model/elements/shape/api/polygon.js +2 -8
  349. package/dist/_pkgs/affine-model/elements/wardley/wardley.d.ts +21 -29
  350. package/dist/_pkgs/affine-model/elements/wardley/wardley.js +41 -48
  351. package/dist/_pkgs/affine-shared/adapters/html/block-adapter.js +1 -1
  352. package/dist/_pkgs/affine-shared/adapters/markdown/block-adapter.js +1 -1
  353. package/dist/_pkgs/affine-shared/adapters/markdown/delta-converter.d.ts +6 -1
  354. package/dist/_pkgs/affine-shared/adapters/markdown/delta-converter.js +161 -3
  355. package/dist/_pkgs/affine-shared/adapters/markdown/markdown.js +5 -1
  356. package/dist/_pkgs/affine-shared/adapters/notion-html/block-adapter.js +1 -1
  357. package/dist/_pkgs/affine-shared/adapters/notion-html/delta-converter.js +1 -1
  358. package/dist/_pkgs/affine-shared/adapters/plain-text/block-adapter.js +1 -1
  359. package/dist/_pkgs/affine-shared/adapters/plain-text/delta-converter.js +1 -1
  360. package/dist/_pkgs/affine-shared/adapters/types/delta-converter.d.ts +1 -0
  361. package/dist/_pkgs/affine-shared/adapters/utils/color.d.ts +24 -0
  362. package/dist/_pkgs/affine-shared/adapters/utils/color.js +283 -0
  363. package/dist/_pkgs/affine-shared/adapters/utils/index.d.ts +1 -0
  364. package/dist/_pkgs/affine-shared/adapters/utils/index.js +1 -0
  365. package/dist/_pkgs/affine-shared/commands/block-crud/get-selected-blocks.js +10 -2
  366. package/dist/_pkgs/affine-shared/commands/model-crud/draft-selected-models.js +1 -1
  367. package/dist/_pkgs/affine-shared/commands/selection/focus-block-end.js +1 -1
  368. package/dist/_pkgs/affine-shared/commands/selection/focus-block-start.js +1 -1
  369. package/dist/_pkgs/affine-shared/consts/index.d.ts +10 -0
  370. package/dist/_pkgs/affine-shared/consts/index.js +10 -0
  371. package/dist/_pkgs/affine-shared/services/artefact-catalogue-service.d.ts +55 -0
  372. package/dist/_pkgs/affine-shared/services/artefact-catalogue-service.js +35 -0
  373. package/dist/_pkgs/affine-shared/services/audit-service.d.ts +311 -0
  374. package/dist/_pkgs/affine-shared/services/audit-service.js +228 -0
  375. package/dist/_pkgs/affine-shared/services/command-usage-service.d.ts +31 -0
  376. package/dist/_pkgs/affine-shared/services/command-usage-service.js +109 -0
  377. package/dist/_pkgs/affine-shared/services/comment-service/block-comment-manager.js +1 -1
  378. package/dist/_pkgs/affine-shared/services/doc-display-meta-service.js +1 -1
  379. package/dist/_pkgs/affine-shared/services/edit-props-store.d.ts +7 -0
  380. package/dist/_pkgs/affine-shared/services/edit-props-store.js +11 -0
  381. package/dist/_pkgs/affine-shared/services/embed-iframe/embed-iframe-config.js +1 -1
  382. package/dist/_pkgs/affine-shared/services/font-loader/font-loader-service.d.ts +26 -1
  383. package/dist/_pkgs/affine-shared/services/font-loader/font-loader-service.js +124 -7
  384. package/dist/_pkgs/affine-shared/services/index.d.ts +7 -0
  385. package/dist/_pkgs/affine-shared/services/index.js +7 -0
  386. package/dist/_pkgs/affine-shared/services/pivot-materiality-publisher.d.ts +129 -0
  387. package/dist/_pkgs/affine-shared/services/pivot-materiality-publisher.js +312 -0
  388. package/dist/_pkgs/affine-shared/services/pivot-properties-service.d.ts +217 -0
  389. package/dist/_pkgs/affine-shared/services/pivot-properties-service.js +114 -0
  390. package/dist/_pkgs/affine-shared/services/telemetry-service/code-block.d.ts +1 -1
  391. package/dist/_pkgs/affine-shared/services/telemetry-service/lifecycle.d.ts +255 -1
  392. package/dist/_pkgs/affine-shared/services/telemetry-service/telemetry-service.d.ts +2 -2
  393. package/dist/_pkgs/affine-shared/services/telemetry-service/types.d.ts +6 -1
  394. package/dist/_pkgs/affine-shared/services/toolbar-service/action.d.ts +10 -0
  395. package/dist/_pkgs/affine-shared/services/toolbar-service/index.d.ts +1 -0
  396. package/dist/_pkgs/affine-shared/services/toolbar-service/index.js +1 -0
  397. package/dist/_pkgs/affine-shared/services/toolbar-service/layout.d.ts +134 -0
  398. package/dist/_pkgs/affine-shared/services/toolbar-service/layout.js +146 -0
  399. package/dist/_pkgs/affine-shared/services/toolbar-service/registry.d.ts +44 -0
  400. package/dist/_pkgs/affine-shared/services/toolbar-service/registry.js +161 -3
  401. package/dist/_pkgs/affine-shared/services/translation-service/index.d.ts +68 -0
  402. package/dist/_pkgs/affine-shared/services/translation-service/index.js +39 -0
  403. package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.d.ts +155 -0
  404. package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.js +256 -0
  405. package/dist/_pkgs/affine-shared/test-utils/affine-template.js +1 -1
  406. package/dist/_pkgs/affine-shared/utils/dom/point-to-range.d.ts +4 -0
  407. package/dist/_pkgs/affine-shared/utils/dom/point-to-range.js +58 -2
  408. package/dist/_pkgs/affine-shared/utils/dom/viewport.d.ts +60 -0
  409. package/dist/_pkgs/affine-shared/utils/dom/viewport.js +58 -0
  410. package/dist/_pkgs/affine-shared/utils/edgeless.js +1 -1
  411. package/dist/_pkgs/affine-shared/utils/file/filesys.d.ts +34 -0
  412. package/dist/_pkgs/affine-shared/utils/file/filesys.js +48 -7
  413. package/dist/_pkgs/affine-shared/utils/print-to-pdf.d.ts +21 -0
  414. package/dist/_pkgs/affine-shared/utils/print-to-pdf.js +166 -32
  415. package/dist/_pkgs/affine-shared/utils/zod-schema.d.ts +7 -0
  416. package/dist/_pkgs/affine-shared/utils/zod-schema.js +25 -1
  417. package/dist/_pkgs/affine-widget-drag-handle/utils.js +1 -1
  418. package/dist/_pkgs/affine-widget-drag-handle/watchers/edgeless-watcher.d.ts +19 -10
  419. package/dist/_pkgs/affine-widget-drag-handle/watchers/edgeless-watcher.js +122 -23
  420. package/dist/_pkgs/affine-widget-drag-handle/watchers/pointer-event-watcher.d.ts +2 -0
  421. package/dist/_pkgs/affine-widget-drag-handle/watchers/pointer-event-watcher.js +25 -4
  422. package/dist/_pkgs/affine-widget-edgeless-auto-connect/index.js +1 -1
  423. package/dist/_pkgs/affine-widget-edgeless-dragging-area/edgeless-dragging-area-rect.js +1 -1
  424. package/dist/_pkgs/affine-widget-edgeless-selected-rect/auto-complete-panel.js +10 -5
  425. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-auto-complete.d.ts +15 -1
  426. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-auto-complete.js +37 -32
  427. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-element-link.js +5 -4
  428. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-selected-rect.js +19 -9
  429. package/dist/_pkgs/affine-widget-edgeless-selected-rect/utils.d.ts +16 -2
  430. package/dist/_pkgs/affine-widget-edgeless-selected-rect/utils.js +19 -2
  431. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-default.d.ts +14 -0
  432. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-default.js +40 -0
  433. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-widget.d.ts +158 -0
  434. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-widget.js +572 -0
  435. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/catalogue-groups.d.ts +46 -0
  436. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/catalogue-groups.js +66 -0
  437. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/chord-format.d.ts +13 -0
  438. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/chord-format.js +50 -0
  439. package/dist/_pkgs/affine-widget-edgeless-toolbar/edgeless-toolbar.d.ts +6 -0
  440. package/dist/_pkgs/affine-widget-edgeless-toolbar/edgeless-toolbar.js +15 -5
  441. package/dist/_pkgs/affine-widget-edgeless-toolbar/effects.d.ts +2 -0
  442. package/dist/_pkgs/affine-widget-edgeless-toolbar/effects.js +2 -0
  443. package/dist/_pkgs/affine-widget-edgeless-toolbar/extension/index.d.ts +7 -0
  444. package/dist/_pkgs/affine-widget-edgeless-toolbar/index.d.ts +5 -0
  445. package/dist/_pkgs/affine-widget-edgeless-toolbar/index.js +5 -0
  446. package/dist/_pkgs/affine-widget-edgeless-toolbar/menu/command-menu.d.ts +57 -0
  447. package/dist/_pkgs/affine-widget-edgeless-toolbar/menu/command-menu.js +140 -0
  448. package/dist/_pkgs/affine-widget-edgeless-toolbar/view.js +9 -0
  449. package/dist/_pkgs/affine-widget-frame-title/edgeless-frame-title-editor.js +4 -1
  450. package/dist/_pkgs/affine-widget-keyboard-toolbar/icons.js +98 -98
  451. package/dist/_pkgs/affine-widget-keyboard-toolbar/keyboard-tool-panel.js +1 -1
  452. package/dist/_pkgs/affine-widget-linked-doc/import-doc/import-doc.js +1 -1
  453. package/dist/_pkgs/affine-widget-linked-doc/linked-doc-popover.js +2 -15
  454. package/dist/_pkgs/affine-widget-linked-doc/transformers/markdown.d.ts +10 -1
  455. package/dist/_pkgs/affine-widget-linked-doc/transformers/markdown.js +133 -6
  456. package/dist/_pkgs/affine-widget-linked-doc/transformers/utils.d.ts +10 -0
  457. package/dist/_pkgs/affine-widget-linked-doc/transformers/utils.js +120 -3
  458. package/dist/_pkgs/affine-widget-linked-doc/utils.d.ts +12 -0
  459. package/dist/_pkgs/affine-widget-linked-doc/utils.js +33 -0
  460. package/dist/_pkgs/affine-widget-page-dragging-area/index.js +1 -1
  461. package/dist/_pkgs/affine-widget-remote-selection/doc/doc-remote-selection.js +1 -1
  462. package/dist/_pkgs/affine-widget-remote-selection/edgeless/index.js +6 -4
  463. package/dist/_pkgs/affine-widget-slash-menu/slash-menu-popover.js +8 -4
  464. package/dist/_pkgs/affine-widget-slash-menu/utils.d.ts +9 -0
  465. package/dist/_pkgs/affine-widget-slash-menu/utils.js +24 -0
  466. package/dist/_pkgs/affine-widget-toolbar/toolbar.d.ts +6 -0
  467. package/dist/_pkgs/affine-widget-toolbar/toolbar.js +40 -8
  468. package/dist/_pkgs/affine-widget-toolbar/utils.d.ts +146 -3
  469. package/dist/_pkgs/affine-widget-toolbar/utils.js +744 -58
  470. package/dist/_pkgs/data-view/core/common/property-menu.js +3 -16
  471. package/dist/_pkgs/data-view/core/component/tags/multi-tag-select.d.ts +4 -0
  472. package/dist/_pkgs/data-view/core/component/tags/multi-tag-select.js +28 -1
  473. package/dist/_pkgs/data-view/core/data-view.d.ts +3 -1
  474. package/dist/_pkgs/data-view/core/data-view.js +25 -3
  475. package/dist/_pkgs/data-view/core/detail/field.js +2 -2
  476. package/dist/_pkgs/data-view/core/detail/selection.d.ts +4 -2
  477. package/dist/_pkgs/data-view/core/detail/selection.js +23 -7
  478. package/dist/_pkgs/data-view/core/effect.js +2 -0
  479. package/dist/_pkgs/data-view/core/filter/eval.js +36 -23
  480. package/dist/_pkgs/data-view/core/filter/filter-fn/matcher.d.ts +7 -0
  481. package/dist/_pkgs/data-view/core/filter/filter-fn/matcher.js +12 -0
  482. package/dist/_pkgs/data-view/core/group-by/compare-date-keys.d.ts +11 -0
  483. package/dist/_pkgs/data-view/core/group-by/compare-date-keys.js +55 -0
  484. package/dist/_pkgs/data-view/core/group-by/define.d.ts +6 -0
  485. package/dist/_pkgs/data-view/core/group-by/define.js +114 -0
  486. package/dist/_pkgs/data-view/core/group-by/matcher.d.ts +7 -0
  487. package/dist/_pkgs/data-view/core/group-by/matcher.js +13 -0
  488. package/dist/_pkgs/data-view/core/group-by/renderer/boolean-group.js +11 -11
  489. package/dist/_pkgs/data-view/core/group-by/renderer/date-group.d.ts +9 -0
  490. package/dist/_pkgs/data-view/core/group-by/renderer/date-group.js +97 -0
  491. package/dist/_pkgs/data-view/core/group-by/setting.js +86 -7
  492. package/dist/_pkgs/data-view/core/group-by/trait.d.ts +34 -0
  493. package/dist/_pkgs/data-view/core/group-by/trait.js +106 -10
  494. package/dist/_pkgs/data-view/core/utils/menu-title.js +17 -17
  495. package/dist/_pkgs/data-view/property-presets/multi-select/cell-renderer.js +3 -1
  496. package/dist/_pkgs/data-view/property-presets/number/define.js +2 -1
  497. package/dist/_pkgs/data-view/property-presets/select/cell-renderer.js +3 -1
  498. package/dist/_pkgs/data-view/view-presets/calendar/calendar-view-manager.d.ts +70 -0
  499. package/dist/_pkgs/data-view/view-presets/calendar/calendar-view-manager.js +449 -0
  500. package/dist/_pkgs/data-view/view-presets/calendar/define.d.ts +10 -0
  501. package/dist/_pkgs/data-view/view-presets/calendar/define.js +27 -0
  502. package/dist/_pkgs/data-view/view-presets/calendar/effect.d.ts +1 -0
  503. package/dist/_pkgs/data-view/view-presets/calendar/effect.js +4 -0
  504. package/dist/_pkgs/data-view/view-presets/calendar/index.d.ts +6 -0
  505. package/dist/_pkgs/data-view/view-presets/calendar/index.js +6 -0
  506. package/dist/_pkgs/data-view/view-presets/calendar/layout.d.ts +37 -0
  507. package/dist/_pkgs/data-view/view-presets/calendar/layout.js +138 -0
  508. package/dist/_pkgs/data-view/view-presets/calendar/pc/actions.d.ts +7 -0
  509. package/dist/_pkgs/data-view/view-presets/calendar/pc/actions.js +64 -0
  510. package/dist/_pkgs/data-view/view-presets/calendar/pc/dnd.d.ts +32 -0
  511. package/dist/_pkgs/data-view/view-presets/calendar/pc/dnd.js +159 -0
  512. package/dist/_pkgs/data-view/view-presets/calendar/pc/effect.d.ts +1 -0
  513. package/dist/_pkgs/data-view/view-presets/calendar/pc/effect.js +7 -0
  514. package/dist/_pkgs/data-view/view-presets/calendar/pc/hit-test.d.ts +1 -0
  515. package/dist/_pkgs/data-view/view-presets/calendar/pc/hit-test.js +28 -0
  516. package/dist/_pkgs/data-view/view-presets/calendar/pc/styles.d.ts +1 -0
  517. package/dist/_pkgs/data-view/view-presets/calendar/pc/styles.js +707 -0
  518. package/dist/_pkgs/data-view/view-presets/calendar/pc/view.d.ts +89 -0
  519. package/dist/_pkgs/data-view/view-presets/calendar/pc/view.js +849 -0
  520. package/dist/_pkgs/data-view/view-presets/calendar/renderer.d.ts +2 -0
  521. package/dist/_pkgs/data-view/view-presets/calendar/renderer.js +8 -0
  522. package/dist/_pkgs/data-view/view-presets/calendar/source.d.ts +8 -0
  523. package/dist/_pkgs/data-view/view-presets/calendar/source.js +3 -0
  524. package/dist/_pkgs/data-view/view-presets/calendar/types.d.ts +79 -0
  525. package/dist/_pkgs/data-view/view-presets/calendar/types.js +1 -0
  526. package/dist/_pkgs/data-view/view-presets/convert.js +28 -0
  527. package/dist/_pkgs/data-view/view-presets/effect.js +2 -0
  528. package/dist/_pkgs/data-view/view-presets/index.d.ts +2 -0
  529. package/dist/_pkgs/data-view/view-presets/index.js +3 -0
  530. package/dist/_pkgs/data-view/view-presets/kanban/kanban-view-manager.js +3 -1
  531. package/dist/_pkgs/data-view/view-presets/kanban/mobile/cell.js +2 -2
  532. package/dist/_pkgs/data-view/view-presets/table/collapsed-state.d.ts +18 -0
  533. package/dist/_pkgs/data-view/view-presets/table/collapsed-state.js +36 -0
  534. package/dist/_pkgs/data-view/view-presets/table/mobile/cell.js +2 -2
  535. package/dist/_pkgs/data-view/view-presets/table/mobile/group.d.ts +11 -0
  536. package/dist/_pkgs/data-view/view-presets/table/mobile/group.js +89 -4
  537. package/dist/_pkgs/data-view/view-presets/table/pc/cell.d.ts +3 -0
  538. package/dist/_pkgs/data-view/view-presets/table/pc/cell.js +11 -2
  539. package/dist/_pkgs/data-view/view-presets/table/pc/controller/hotkeys.d.ts +1 -0
  540. package/dist/_pkgs/data-view/view-presets/table/pc/controller/hotkeys.js +39 -33
  541. package/dist/_pkgs/data-view/view-presets/table/pc/group.d.ts +10 -0
  542. package/dist/_pkgs/data-view/view-presets/table/pc/group.js +86 -5
  543. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/hotkeys.d.ts +1 -0
  544. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/hotkeys.js +39 -33
  545. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/group-title.js +18 -18
  546. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/row/cell.d.ts +3 -0
  547. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/row/cell.js +8 -0
  548. package/dist/_pkgs/data-view/view-presets/table/table-view-manager.js +3 -1
  549. package/dist/_pkgs/data-view/view-presets/table/utils.d.ts +3 -0
  550. package/dist/_pkgs/data-view/view-presets/table/utils.js +16 -1
  551. package/dist/_pkgs/data-view/widget-presets/tools/presets/view-options/view-options.js +3 -1
  552. package/dist/_pkgs/global/gfx/curve.js +4 -3
  553. package/dist/_pkgs/std/clipboard/clipboard.js +13 -3
  554. package/dist/_pkgs/std/clipboard/utils.d.ts +5 -0
  555. package/dist/_pkgs/std/clipboard/utils.js +10 -0
  556. package/dist/_pkgs/std/event/dispatcher.js +27 -1
  557. package/dist/_pkgs/std/event/keymap.js +16 -6
  558. package/dist/_pkgs/std/extension/command-registry.d.ts +475 -0
  559. package/dist/_pkgs/std/extension/command-registry.js +431 -0
  560. package/dist/_pkgs/std/extension/dnd/index.d.ts +1 -1
  561. package/dist/_pkgs/std/extension/index.d.ts +2 -0
  562. package/dist/_pkgs/std/extension/index.js +2 -0
  563. package/dist/_pkgs/std/extension/shortcut.js +2 -1
  564. package/dist/_pkgs/std/extension/translation-manifest.d.ts +49 -0
  565. package/dist/_pkgs/std/extension/translation-manifest.js +71 -0
  566. package/dist/_pkgs/std/gfx/grid.js +1 -1
  567. package/dist/_pkgs/std/gfx/index.d.ts +7 -3
  568. package/dist/_pkgs/std/gfx/index.js +6 -2
  569. package/dist/_pkgs/std/gfx/interactivity/gfx-view-event-handler.js +6 -1
  570. package/dist/_pkgs/std/gfx/interactivity/manager.d.ts +8 -0
  571. package/dist/_pkgs/std/gfx/interactivity/manager.js +18 -0
  572. package/dist/_pkgs/std/gfx/layer.d.ts +1 -1
  573. package/dist/_pkgs/std/gfx/layer.js +1 -2
  574. package/dist/_pkgs/std/gfx/model/surface/decorators/field.js +9 -0
  575. package/dist/_pkgs/std/gfx/model/surface/decorators/index.d.ts +2 -2
  576. package/dist/_pkgs/std/gfx/model/surface/decorators/index.js +2 -2
  577. package/dist/_pkgs/std/gfx/model/surface/decorators/local.d.ts +14 -0
  578. package/dist/_pkgs/std/gfx/model/surface/decorators/local.js +22 -0
  579. package/dist/_pkgs/std/gfx/model/surface/decorators/observer.d.ts +2 -0
  580. package/dist/_pkgs/std/gfx/model/surface/decorators/observer.js +40 -1
  581. package/dist/_pkgs/std/gfx/model/surface/element-model.d.ts +442 -0
  582. package/dist/_pkgs/std/gfx/model/surface/element-model.js +510 -25
  583. package/dist/_pkgs/std/gfx/model/surface/pivot.d.ts +48 -0
  584. package/dist/_pkgs/std/gfx/model/surface/pivot.js +34 -0
  585. package/dist/_pkgs/std/gfx/model/surface/role.d.ts +153 -0
  586. package/dist/_pkgs/std/gfx/model/surface/role.js +117 -0
  587. package/dist/_pkgs/std/gfx/model/surface/surface-model.d.ts +70 -0
  588. package/dist/_pkgs/std/gfx/model/surface/surface-model.js +305 -17
  589. package/dist/_pkgs/std/gfx/model/surface/tags.d.ts +77 -0
  590. package/dist/_pkgs/std/gfx/model/surface/tags.js +246 -0
  591. package/dist/_pkgs/std/gfx/perf.d.ts +10 -0
  592. package/dist/_pkgs/std/gfx/perf.js +30 -0
  593. package/dist/_pkgs/std/gfx/selection.js +1 -1
  594. package/dist/_pkgs/std/gfx/tool/tool-controller.d.ts +13 -0
  595. package/dist/_pkgs/std/gfx/tool/tool-controller.js +26 -0
  596. package/dist/_pkgs/std/gfx/viewport.d.ts +12 -0
  597. package/dist/_pkgs/std/gfx/viewport.js +20 -2
  598. package/dist/_pkgs/std/inline/extensions/inline-manager.js +1 -1
  599. package/dist/_pkgs/std/inline/extensions/markdown-matcher.js +1 -1
  600. package/dist/_pkgs/std/inline/services/event.d.ts +2 -0
  601. package/dist/_pkgs/std/inline/services/event.js +96 -21
  602. package/dist/_pkgs/std/utils/layer.js +2 -6
  603. package/dist/_pkgs/std/utils/tree.d.ts +14 -0
  604. package/dist/_pkgs/std/utils/tree.js +59 -8
  605. package/dist/_pkgs/std/view/element/gfx-block-component.js +23 -13
  606. package/dist/_pkgs/store/extension/workspace/workspace-meta.d.ts +10 -0
  607. package/dist/_pkgs/store/model/block/flat-sync-controller.js +2 -12
  608. package/dist/_pkgs/store/model/store/crud.js +10 -4
  609. package/dist/_pkgs/store/reactive/flat-native-y/index.d.ts +1 -1
  610. package/dist/_pkgs/store/reactive/flat-native-y/index.js +24 -2
  611. package/dist/commands.d.ts +58 -0
  612. package/dist/commands.js +66 -0
  613. package/dist/extensions/command-telemetry.d.ts +21 -0
  614. package/dist/extensions/command-telemetry.js +89 -0
  615. package/dist/extensions/command-usage.d.ts +23 -0
  616. package/dist/extensions/command-usage.js +37 -0
  617. package/dist/extensions/store.d.ts +9 -4
  618. package/dist/extensions/store.js +27 -24
  619. package/dist/extensions/view.d.ts +9 -4
  620. package/dist/extensions/view.js +35 -8
  621. package/dist/flags.d.ts +98 -21
  622. package/dist/flags.js +103 -22
  623. package/dist/frameworks.d.ts +45 -0
  624. package/dist/frameworks.js +186 -0
  625. package/dist/schemas.d.ts +8 -5
  626. package/dist/schemas.js +28 -32
  627. package/dist/shortcuts.d.ts +16 -16
  628. package/dist/shortcuts.js +8 -36
  629. package/dist/translations.d.ts +56 -0
  630. package/dist/translations.js +200 -0
  631. package/package.json +16 -4
  632. package/dist/_pkgs/affine-block-root/keyboard/shortcuts.d.ts +0 -8
  633. package/dist/_pkgs/affine-block-root/keyboard/shortcuts.js +0 -48
  634. package/dist/_pkgs/affine-gfx-shape/shortcuts.d.ts +0 -6
  635. package/dist/_pkgs/affine-gfx-shape/shortcuts.js +0 -28
  636. package/dist/_pkgs/data-view/core/utils/cache.d.ts +0 -5
  637. package/dist/_pkgs/data-view/core/utils/cache.js +0 -28
@@ -1,7 +1,37 @@
1
1
  import { DocModeProvider, TelemetryProvider, } from '../affine-shared/services/index.js';
2
+ function openInlineLatexEditor(inlineEditor, index) {
3
+ inlineEditor
4
+ .waitForUpdate()
5
+ .then(async () => {
6
+ await inlineEditor.waitForUpdate();
7
+ const textPoint = inlineEditor.getTextPoint(index);
8
+ if (!textPoint)
9
+ return;
10
+ const [text] = textPoint;
11
+ const latexNode = text.parentElement?.closest('affine-latex-node');
12
+ if (!latexNode)
13
+ return;
14
+ latexNode.toggleEditor();
15
+ })
16
+ .catch(console.error);
17
+ }
18
+ /**
19
+ * An inline equation can only replace a range living in a single block, so a
20
+ * selection spanning several blocks is refused instead of silently applying to
21
+ * its first block.
22
+ */
23
+ function getSingleBlockInlineRange(textSelection) {
24
+ if (textSelection.to) {
25
+ return null;
26
+ }
27
+ return {
28
+ index: textSelection.from.index,
29
+ length: textSelection.from.length,
30
+ };
31
+ }
2
32
  export const insertInlineLatex = (ctx, next) => {
3
33
  const textSelection = ctx.textSelection ?? ctx.currentTextSelection;
4
- if (!textSelection || !textSelection.isCollapsed())
34
+ if (!textSelection)
5
35
  return;
6
36
  const blockComponent = ctx.std.view.getBlock(textSelection.from.blockId);
7
37
  if (!blockComponent)
@@ -12,18 +42,17 @@ export const insertInlineLatex = (ctx, next) => {
12
42
  const inlineEditor = richText.inlineEditor;
13
43
  if (!inlineEditor)
14
44
  return;
15
- inlineEditor.insertText({
16
- index: textSelection.from.index,
17
- length: 0,
18
- }, ' ');
19
- inlineEditor.formatText({
20
- index: textSelection.from.index,
21
- length: 1,
22
- }, {
23
- latex: '',
24
- });
45
+ const inlineRange = getSingleBlockInlineRange(textSelection);
46
+ if (!inlineRange)
47
+ return;
48
+ // A non-collapsed selection becomes the equation source, so selecting a
49
+ // formula and asking for an inline equation renders what was already typed.
50
+ const latex = textSelection.isCollapsed()
51
+ ? ''
52
+ : inlineEditor.yTextString.slice(inlineRange.index, inlineRange.index + inlineRange.length);
53
+ inlineEditor.insertText(inlineRange, ' ', { latex });
25
54
  inlineEditor.setInlineRange({
26
- index: textSelection.from.index,
55
+ index: inlineRange.index,
27
56
  length: 1,
28
57
  });
29
58
  const mode = ctx.std.get(DocModeProvider).getEditorMode() ?? 'page';
@@ -39,19 +68,10 @@ export const insertInlineLatex = (ctx, next) => {
39
68
  module: 'inline equation',
40
69
  control: 'create inline equation',
41
70
  });
42
- inlineEditor
43
- .waitForUpdate()
44
- .then(async () => {
45
- await inlineEditor.waitForUpdate();
46
- const textPoint = inlineEditor.getTextPoint(textSelection.from.index + 1);
47
- if (!textPoint)
48
- return;
49
- const [text] = textPoint;
50
- const latexNode = text.parentElement?.closest('affine-latex-node');
51
- if (!latexNode)
52
- return;
53
- latexNode.toggleEditor();
54
- })
55
- .catch(console.error);
71
+ // Only an empty equation needs the editor right away; one built from a
72
+ // selection already has its content.
73
+ if (textSelection.isCollapsed()) {
74
+ openInlineLatexEditor(inlineEditor, inlineRange.index + 1);
75
+ }
56
76
  next();
57
77
  };
@@ -2,15 +2,25 @@ import type { AffineTextAttributes } from '../../affine-shared/types/index.js';
2
2
  import { type BlockStdScope, ShadowlessElement } from '../../std/index.js';
3
3
  import { type InlineEditor } from '../../std/inline/index.js';
4
4
  import type { DeltaInsert } from '../../store/index.js';
5
+ import { type PropertyValues } from 'lit';
5
6
  declare const AffineLatexNode_base: typeof ShadowlessElement & import("../../global/utils/types.js").Constructor<import("../../global/lit/with-disposable.js").DisposableClass>;
6
7
  export declare class AffineLatexNode extends AffineLatexNode_base {
7
8
  static styles: import("lit").CSSResult;
8
9
  private _editorAbortController;
10
+ private _isEditorOpen;
9
11
  readonly latex$: import("@preact/signals-core").Signal<string>;
10
12
  readonly latexEditorSignal: import("@preact/signals-core").Signal<string>;
11
13
  get deltaLatex(): string;
12
14
  get latexContainer(): HTMLElement | null;
13
15
  connectedCallback(): void;
16
+ /**
17
+ * The delta is the source of truth: when it changes underneath us (undo, a
18
+ * remote edit, a paste replacing the node) the signals must follow it,
19
+ * otherwise the node keeps painting the equation it was first created with.
20
+ * While the editor is open the user is the source of truth instead, so the
21
+ * in-flight draft is left alone.
22
+ */
23
+ protected updated(changedProperties: PropertyValues<this>): void;
14
24
  render(): import("lit-html").TemplateResult<1>;
15
25
  toggleEditor(): void;
16
26
  get readonly(): boolean;
@@ -203,6 +203,26 @@ let AffineLatexNode = (() => {
203
203
  });
204
204
  return result;
205
205
  }
206
+ /**
207
+ * The delta is the source of truth: when it changes underneath us (undo, a
208
+ * remote edit, a paste replacing the node) the signals must follow it,
209
+ * otherwise the node keeps painting the equation it was first created with.
210
+ * While the editor is open the user is the source of truth instead, so the
211
+ * in-flight draft is left alone.
212
+ */
213
+ updated(changedProperties) {
214
+ super.updated(changedProperties);
215
+ if (!changedProperties.has('delta') || this._isEditorOpen) {
216
+ return;
217
+ }
218
+ const latex = this.deltaLatex;
219
+ if (this.latex$.peek() !== latex) {
220
+ this.latex$.value = latex;
221
+ }
222
+ if (this.latexEditorSignal.peek() !== latex) {
223
+ this.latexEditorSignal.value = latex;
224
+ }
225
+ }
206
226
  render() {
207
227
  return html `<span class="affine-latex" data-selected=${this.selected}
208
228
  ><div class="latex-container"></div>
@@ -237,7 +257,9 @@ let AffineLatexNode = (() => {
237
257
  zIndex: 'var(--affine-z-index-popover)',
238
258
  },
239
259
  });
260
+ this._isEditorOpen = true;
240
261
  this._editorAbortController.signal.addEventListener('abort', () => {
262
+ this._isEditorOpen = false;
241
263
  portal.remove();
242
264
  const latex = this.latexEditorSignal.peek();
243
265
  this.latex$.value = latex;
@@ -279,6 +301,7 @@ let AffineLatexNode = (() => {
279
301
  constructor() {
280
302
  super(...arguments);
281
303
  this._editorAbortController = null;
304
+ this._isEditorOpen = false;
282
305
  this.latex$ = signal('');
283
306
  this.latexEditorSignal = signal('');
284
307
  this.#delta_accessor_storage = __runInitializers(this, _delta_initializers, {
@@ -1,4 +1,4 @@
1
- import { INLINE_ROOT_ATTR, } from '../std/inline/index.js';
1
+ import { INLINE_ROOT_ATTR } from '../std/inline/index.js';
2
2
  import { toggleLinkPopup } from './link-node/link-popup/toggle-link-popup.js';
3
3
  export const toggleLink = (ctx, next) => {
4
4
  const selection = document.getSelection();
@@ -124,10 +124,13 @@ let AffineLink = (() => {
124
124
  ></a>`;
125
125
  }
126
126
  render() {
127
+ // No `text-decoration` here on purpose: this object is the OVERRIDE handed
128
+ // to `affineTextStyles`, and it is spread last, so any decoration it names
129
+ // would silently erase the one computed from `strike` / `underline`.
130
+ // A plain link still shows none — `affineTextStyles` defaults to 'none'.
127
131
  const linkStyle = {
128
132
  color: 'var(--affine-link-color)',
129
133
  fill: 'var(--affine-link-color)',
130
- 'text-decoration': 'none',
131
134
  cursor: 'pointer',
132
135
  };
133
136
  if (this.delta.attributes && this.delta.attributes?.code) {
@@ -1,6 +1,9 @@
1
1
  export declare const htmlTextToDeltaMatcher: import("../../../store/index.js").ExtensionType & {
2
2
  identifier: import("../../../global/di/types.js").ServiceIdentifier<import("../../../affine-shared/adapters/index.js").HtmlASTToDeltaMatcher>;
3
3
  };
4
+ export declare const htmlColorStyleElementToDeltaMatcher: import("../../../store/index.js").ExtensionType & {
5
+ identifier: import("../../../global/di/types.js").ServiceIdentifier<import("../../../affine-shared/adapters/index.js").HtmlASTToDeltaMatcher>;
6
+ };
4
7
  export declare const htmlTextLikeElementToDeltaMatcher: import("../../../store/index.js").ExtensionType & {
5
8
  identifier: import("../../../global/di/types.js").ServiceIdentifier<import("../../../affine-shared/adapters/index.js").HtmlASTToDeltaMatcher>;
6
9
  };
@@ -1,4 +1,4 @@
1
- import { HtmlASTToDeltaExtension, } from '../../../affine-shared/adapters/index.js';
1
+ import { extractColorFromStyle, HtmlASTToDeltaExtension, resolveNearestSupportedColor, } from '../../../affine-shared/adapters/index.js';
2
2
  import { collapseWhiteSpace } from 'collapse-white-space';
3
3
  /**
4
4
  * Handle empty text nodes created by HTML parser for styling purposes.
@@ -147,6 +147,33 @@ export const htmlTextToDeltaMatcher = HtmlASTToDeltaExtension({
147
147
  return value ? [{ insert: value }] : [];
148
148
  },
149
149
  });
150
+ export const htmlColorStyleElementToDeltaMatcher = HtmlASTToDeltaExtension({
151
+ name: 'color-style-element',
152
+ match: ast => isElement(ast) &&
153
+ ast.tagName === 'span' &&
154
+ typeof ast.properties?.style === 'string' &&
155
+ /color\s*:/i.test(ast.properties.style),
156
+ toDelta: (ast, context) => {
157
+ if (!isElement(ast)) {
158
+ return [];
159
+ }
160
+ const baseOptions = { ...context.options, trim: false };
161
+ // In preformatted contexts (e.g. code blocks) we don't keep inline colors.
162
+ if (baseOptions.pre) {
163
+ return ast.children.flatMap(child => context.toDelta(child, baseOptions));
164
+ }
165
+ const colorValue = extractColorFromStyle(typeof ast.properties?.style === 'string' ? ast.properties.style : '');
166
+ const mappedColor = colorValue
167
+ ? resolveNearestSupportedColor(colorValue)
168
+ : null;
169
+ return ast.children.flatMap(child => context.toDelta(child, baseOptions).map(delta => {
170
+ if (mappedColor) {
171
+ delta.attributes = { ...delta.attributes, color: mappedColor };
172
+ }
173
+ return delta;
174
+ }));
175
+ },
176
+ });
150
177
  export const htmlTextLikeElementToDeltaMatcher = HtmlASTToDeltaExtension({
151
178
  name: 'text-like-element',
152
179
  match: ast => isTextLikeElement(ast),
@@ -251,6 +278,7 @@ export const htmlBrElementToDeltaMatcher = HtmlASTToDeltaExtension({
251
278
  });
252
279
  export const HtmlInlineToDeltaAdapterExtensions = [
253
280
  htmlTextToDeltaMatcher,
281
+ htmlColorStyleElementToDeltaMatcher,
254
282
  htmlTextLikeElementToDeltaMatcher,
255
283
  htmlStrongElementToDeltaMatcher,
256
284
  htmlItalicElementToDeltaMatcher,
@@ -1,5 +1,5 @@
1
1
  import { getSelectedBlocksCommand } from '../../affine-shared/commands/index.js';
2
- import { INLINE_ROOT_ATTR, } from '../../std/inline/index.js';
2
+ import { INLINE_ROOT_ATTR } from '../../std/inline/index.js';
3
3
  import { FORMAT_BLOCK_SUPPORT_FLAVOURS } from './consts.js';
4
4
  // for block selection
5
5
  export const formatBlockCommand = (ctx, next) => {
@@ -1,5 +1,5 @@
1
- import { BLOCK_ID_ATTR, } from '../../std/index.js';
2
- import { INLINE_ROOT_ATTR, } from '../../std/inline/index.js';
1
+ import { BLOCK_ID_ATTR } from '../../std/index.js';
2
+ import { INLINE_ROOT_ATTR } from '../../std/inline/index.js';
3
3
  import { FORMAT_NATIVE_SUPPORT_FLAVOURS } from './consts.js';
4
4
  // for native range
5
5
  export const formatNativeCommand = (ctx, next) => {
@@ -1,6 +1,6 @@
1
1
  import { clearMarksOnDiscontinuousInput } from '../../affine-rich-text/index.js';
2
2
  import { getSelectedBlocksCommand } from '../../affine-shared/commands/index.js';
3
- import { INLINE_ROOT_ATTR, } from '../../std/inline/index.js';
3
+ import { INLINE_ROOT_ATTR } from '../../std/inline/index.js';
4
4
  import { FORMAT_TEXT_SUPPORT_FLAVOURS } from './consts.js';
5
5
  // for text selection
6
6
  export const formatTextCommand = (ctx, next) => {
@@ -1,4 +1,4 @@
1
- import { InlineSpecExtension, } from '../std/inline/index.js';
1
+ import { InlineSpecExtension } from '../std/inline/index.js';
2
2
  import { html } from 'lit';
3
3
  import { z } from 'zod';
4
4
  export const BoldInlineSpecExtension = InlineSpecExtension({
@@ -34,7 +34,7 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
34
34
  };
35
35
  import { whenHover } from '../../affine-components/hover/index.js';
36
36
  import { Peekable } from '../../affine-components/peek/index.js';
37
- import { DEFAULT_DOC_NAME, REFERENCE_NODE, } from '../../affine-shared/consts/index.js';
37
+ import { DEFAULT_DOC_NAME, REFERENCE_NODE } from '../../affine-shared/consts/index.js';
38
38
  import { DocDisplayMetaProvider, ToolbarRegistryIdentifier, } from '../../affine-shared/services/index.js';
39
39
  import { affineTextStyles } from '../../affine-shared/styles/index.js';
40
40
  import { cloneReferenceInfo, referenceToNode, } from '../../affine-shared/utils/index.js';
@@ -7,6 +7,7 @@ type CodeBlockProps = {
7
7
  caption: string;
8
8
  preview?: boolean;
9
9
  lineNumber?: boolean;
10
+ collapsed?: boolean;
10
11
  comments?: Record<string, boolean>;
11
12
  } & BlockMeta;
12
13
  export declare const CodeBlockSchema: {
@@ -8,6 +8,7 @@ export const CodeBlockSchema = defineBlockSchema({
8
8
  caption: '',
9
9
  preview: undefined,
10
10
  lineNumber: undefined,
11
+ collapsed: undefined,
11
12
  comments: undefined,
12
13
  'meta:createdAt': undefined,
13
14
  'meta:createdBy': undefined,
@@ -1,17 +1,50 @@
1
1
  import { ShapeElementModel } from '../shape/index.js';
2
2
  /**
3
- * The BPMN flow-object nodes shipped in v1. Each maps onto a native shape:
4
- * - `startEvent` / `endEvent` → an ellipse (thin green / thick red ring)
5
- * - `task` → a rounded rectangle with editable inner text
6
- * - `gatewayExclusive` → a diamond decorated with an X glyph
3
+ * The BPMN artefacts the pack draws — the **descriptive conformance subclass**
4
+ * of BPMN 2.0. Each maps onto a native shape, decorated by a glyph where the
5
+ * notation asks for one:
6
+ *
7
+ * - events (ellipse) — `startEvent` / `endEvent` plain, plus the message and
8
+ * timer starts and the message and terminate ends;
9
+ * - activities (rect) — `task` plain, plus the user and service tasks, the
10
+ * collapsed sub-process and the call activity;
11
+ * - gateways (diamond) — `gatewayExclusive` (X) and `gatewayParallel` (+);
12
+ * - data & artifacts — `dataObject`, `dataStore` and `textAnnotation`, whose
13
+ * silhouettes (folded page, cylinder, open bracket) are drawn by the glyph
14
+ * over a native rect with its own stroke and fill turned off;
15
+ * - `group` — a dashed rounded rectangle drawn AROUND things.
16
+ *
17
+ * `group` is the odd one and deliberately so. Every other kind is a node the
18
+ * process is made of; a group is a lasso somebody drew round part of it. The
19
+ * spec (BPMN 2.0.2 §10.4) exempts it from every connection and containment
20
+ * constraint there is — it cannot be attached to a sequence or message flow, it
21
+ * is not bounded by the pool or lane it overlaps, and it may straddle several
22
+ * pools at once. Nothing here has to enforce that, because a group is unfilled:
23
+ * it is hit near its border and on its label, so it never steals a click from
24
+ * what it encloses, and what it encloses never becomes its content.
25
+ *
26
+ * ## Compatibility
27
+ *
28
+ * This union is only ever WIDENED, and it is widened with new VALUES of the
29
+ * existing `kind` string field — no new field, no schema change, no migration
30
+ * and no backfill. The precedent is `wardley`'s (`gfx/wardley/src/roles.ts`):
31
+ * a process drawn before today carries one of the four original values, loads
32
+ * unchanged and paints exactly as it always did.
33
+ *
34
+ * The expanded (drilled-in) sub-process is deliberately NOT here: `subProcess`
35
+ * is the COLLAPSED representation only — a task-sized rectangle with the `+`
36
+ * marker. An expanded sub-process is a container with its own flow inside it,
37
+ * which is a containment model this pack does not have yet.
7
38
  */
8
- export type BpmnNodeKind = 'startEvent' | 'endEvent' | 'task' | 'gatewayExclusive';
39
+ export type BpmnNodeKind = 'startEvent' | 'startEventMessage' | 'startEventTimer' | 'endEvent' | 'endEventMessage' | 'endEventTerminate' | 'task' | 'taskUser' | 'taskService' | 'subProcess' | 'callActivity' | 'gatewayExclusive' | 'gatewayParallel' | 'dataObject' | 'dataStore' | 'textAnnotation' | 'group';
9
40
  /**
10
41
  * A BPMN flow-object node. Extends {@link ShapeElementModel} (a native shape)
11
42
  * so it inherits ALL shape behaviour — editable stroke width / colors, inner
12
43
  * text, native resize, the shape context toolbar — for free. `kind`
13
- * discriminates the four basics; only `gatewayExclusive` is decorated with a
14
- * glyph (the X) by the renderer (the others are plain native shapes).
44
+ * discriminates the artefacts and drives the RENDERING alone; what a node
45
+ * MEANS is the `role` stamped on it at creation (`gfx/bpmn/src/roles.ts`).
46
+ * The plain start event, end event and task are undecorated native shapes;
47
+ * every other kind is decorated with a glyph by the renderer.
15
48
  *
16
49
  * Mirrors {@link EdgyNodeElementModel}.
17
50
  */
@@ -38,8 +38,10 @@ import { ShapeElementModel } from '../shape/index.js';
38
38
  * A BPMN flow-object node. Extends {@link ShapeElementModel} (a native shape)
39
39
  * so it inherits ALL shape behaviour — editable stroke width / colors, inner
40
40
  * text, native resize, the shape context toolbar — for free. `kind`
41
- * discriminates the four basics; only `gatewayExclusive` is decorated with a
42
- * glyph (the X) by the renderer (the others are plain native shapes).
41
+ * discriminates the artefacts and drives the RENDERING alone; what a node
42
+ * MEANS is the `role` stamped on it at creation (`gfx/bpmn/src/roles.ts`).
43
+ * The plain start event, end event and task are undecorated native shapes;
44
+ * every other kind is decorated with a glyph by the renderer.
43
45
  *
44
46
  * Mirrors {@link EdgyNodeElementModel}.
45
47
  */
@@ -1,30 +1,87 @@
1
- import type { IVec, SerializedXYWH } from '../../../global/gfx/index.js';
2
- import { Bound } from '../../../global/gfx/index.js';
3
- import type { BaseElementProps } from '../../../std/gfx/index.js';
4
- import { GfxPrimitiveElementModel } from '../../../std/gfx/index.js';
5
- export type BpmnPoolProps = BaseElementProps & {
1
+ import type { SerializedXYWH } from '../../../global/gfx/index.js';
2
+ import type { FrameworkBackgroundProps } from '../framework-background/index.js';
3
+ import { FrameworkBackgroundElementModel } from '../framework-background/index.js';
4
+ /**
5
+ * One LANE (couloir) of a pool: a horizontal band the participant's own work is
6
+ * divided into — "Sales", "Back office", "Automated".
7
+ *
8
+ * The shape of a {@link BackgroundInstanceZoneItem} in
9
+ * `@labre/affine-block-surface`, and deliberately the same three fields: the
10
+ * primitive paints an instance partition from that structure, the audit reports
11
+ * it from that structure, and a lane that had a shape of its own would be a
12
+ * fourth place the two have to agree.
13
+ *
14
+ * `size` is a relative WEIGHT, not a height in model units: lanes share the
15
+ * plot in proportion to their sizes, so a pool dragged taller redistributes the
16
+ * extra space instead of leaving a gap under the last band. `2` reads as "twice
17
+ * the other one", which is the only thing a lane's height ever means.
18
+ */
19
+ export interface BpmnLane {
20
+ /** Stable id, generated at creation. Never the name: a lane can be renamed. */
21
+ id: string;
22
+ /** The lane name, written horizontally in its top-left corner. */
23
+ name?: string;
24
+ /** Relative weight — see above. Must be a finite number greater than zero. */
25
+ size: number;
26
+ }
27
+ export type BpmnPoolProps = FrameworkBackgroundProps & {
6
28
  /** The participant name shown in the left band — edited inline on dblclick. */
7
29
  name?: string;
8
- /** When false the resize handles are hidden — toggled from the toolbar. */
9
- resizeEnabled?: boolean;
30
+ /** The pool's own partition into lanes. Absent until the first one is added. */
31
+ lanes?: BpmnLane[];
10
32
  };
11
33
  /**
12
34
  * A BPMN "pool": a participant container drawn as a rounded-rect frame with a
13
- * vertical name band on the left. It is a background element (like the wardley
14
- * / cynefin backgrounds): the user drops flow-object nodes on top of it. Lanes
15
- * are deliberately out of scope for v1.
35
+ * vertical name band on the left. It is a framework background like every other
36
+ * one in the library — the user drops flow-object nodes on top of it, and a
37
+ * connector never snaps to it.
38
+ *
39
+ * The geometry of a passive canvas comes from
40
+ * {@link FrameworkBackgroundElementModel}: this class used to restate all five
41
+ * of those overrides verbatim, which is exactly the kind of copy that drifts.
42
+ * The persisted type is still `bpmnPool`, and the first four fields below are
43
+ * the four it has always written, in the same order, with the same defaults.
16
44
  *
17
- * Mirrors the other framework background elements.
45
+ * What it LOOKS like is declared, not coded: see `BPMN_POOL_BACKGROUND` in
46
+ * `@labre/affine-gfx-bpmn`.
18
47
  */
19
- export declare class BpmnPoolElementModel extends GfxPrimitiveElementModel<BpmnPoolProps> {
48
+ export declare class BpmnPoolElementModel extends FrameworkBackgroundElementModel<BpmnPoolProps> {
20
49
  get type(): string;
21
- get connectable(): boolean;
22
- containsBound(bounds: Bound): boolean;
23
- getLineIntersections(start: IVec, end: IVec): import("../../../global/gfx/index.js").PointLocation[] | null;
24
- getNearestPoint(point: IVec): IVec;
25
- includesPoint(x: number, y: number): boolean;
26
50
  accessor name: string;
27
51
  accessor resizeEnabled: boolean;
28
52
  accessor rotate: number;
29
53
  accessor xywh: SerializedXYWH;
54
+ /**
55
+ * The pool's own partition into lanes, in top-to-bottom order.
56
+ *
57
+ * The FIFTH field, and the only one that is optional. It mirrors
58
+ * `validationExceptions` on the base element model exactly, for the same three
59
+ * reasons:
60
+ *
61
+ * - **`undefined`, not `[]`.** `@field()`'s `init` writes nothing for an
62
+ * `undefined` default, so a pool that has no lane stays byte-identical to
63
+ * one created before this field existed: optional field, no schema version
64
+ * bump, no migration, and every document already on disk opens and paints
65
+ * exactly as it did (pinned by `pool-background.unit.spec.ts`, whose
66
+ * fixture carries no `lanes` key). Removing the last lane goes back through
67
+ * `clearField`, which deletes the KEY rather than leaving a phantom one.
68
+ * - **Flat JSON on purpose.** Element serialization is one level deep, and a
69
+ * value a Yjs update can encode is the contract `_assignElementProp`
70
+ * enforces. A nested `Y.Map` is what `tags` needs and this does not (see
71
+ * `docs/adr/0007`): a lane list is one atomic choice about how a single
72
+ * participant's own band is cut, authored by whoever is drawing the
73
+ * process — not an accumulating multi-key set different people qualify
74
+ * concurrently. The trade is stated so it is reviewed, not discovered:
75
+ * two peers reordering the lanes at the same moment resolve
76
+ * last-write-wins, one whole list winning over the other.
77
+ * - **Declared HERE and not on the base class.** A lane is a subdivision of a
78
+ * pool and of nothing else, and the accessor is what carries the value
79
+ * through a copy, a paste or a template insertion, so a duplicated pool
80
+ * arrives with its lanes.
81
+ *
82
+ * What it MEANS is declared, not coded: `BPMN_POOL_BACKGROUND.instanceZones`
83
+ * in `@labre/affine-gfx-bpmn` names this prop, and the framework-background
84
+ * primitive paints the dividers and the names from it.
85
+ */
86
+ accessor lanes: BpmnLane[] | undefined;
30
87
  }
@@ -32,18 +32,25 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
32
32
  }
33
33
  return useValue ? value : void 0;
34
34
  };
35
- import { Bound, getPointsFromBoundWithRotation, linePolygonIntersects, pointInPolygon, polygonNearestPoint, } from '../../../global/gfx/index.js';
36
- import { field, GfxPrimitiveElementModel } from '../../../std/gfx/index.js';
35
+ import { field } from '../../../std/gfx/index.js';
36
+ import { FrameworkBackgroundElementModel } from '../framework-background/index.js';
37
37
  /**
38
38
  * A BPMN "pool": a participant container drawn as a rounded-rect frame with a
39
- * vertical name band on the left. It is a background element (like the wardley
40
- * / cynefin backgrounds): the user drops flow-object nodes on top of it. Lanes
41
- * are deliberately out of scope for v1.
39
+ * vertical name band on the left. It is a framework background like every other
40
+ * one in the library — the user drops flow-object nodes on top of it, and a
41
+ * connector never snaps to it.
42
42
  *
43
- * Mirrors the other framework background elements.
43
+ * The geometry of a passive canvas comes from
44
+ * {@link FrameworkBackgroundElementModel}: this class used to restate all five
45
+ * of those overrides verbatim, which is exactly the kind of copy that drifts.
46
+ * The persisted type is still `bpmnPool`, and the first four fields below are
47
+ * the four it has always written, in the same order, with the same defaults.
48
+ *
49
+ * What it LOOKS like is declared, not coded: see `BPMN_POOL_BACKGROUND` in
50
+ * `@labre/affine-gfx-bpmn`.
44
51
  */
45
52
  let BpmnPoolElementModel = (() => {
46
- let _classSuper = GfxPrimitiveElementModel;
53
+ let _classSuper = FrameworkBackgroundElementModel;
47
54
  let _name_decorators;
48
55
  let _name_initializers = [];
49
56
  let _name_extraInitializers = [];
@@ -56,6 +63,9 @@ let BpmnPoolElementModel = (() => {
56
63
  let _xywh_decorators;
57
64
  let _xywh_initializers = [];
58
65
  let _xywh_extraInitializers = [];
66
+ let _lanes_decorators;
67
+ let _lanes_initializers = [];
68
+ let _lanes_extraInitializers = [];
59
69
  return class BpmnPoolElementModel extends _classSuper {
60
70
  static {
61
71
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
@@ -63,33 +73,17 @@ let BpmnPoolElementModel = (() => {
63
73
  _resizeEnabled_decorators = [field(true)];
64
74
  _rotate_decorators = [field(0)];
65
75
  _xywh_decorators = [field()];
76
+ _lanes_decorators = [field()];
66
77
  __esDecorate(this, null, _name_decorators, { kind: "accessor", name: "name", static: false, private: false, access: { has: obj => "name" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);
67
78
  __esDecorate(this, null, _resizeEnabled_decorators, { kind: "accessor", name: "resizeEnabled", static: false, private: false, access: { has: obj => "resizeEnabled" in obj, get: obj => obj.resizeEnabled, set: (obj, value) => { obj.resizeEnabled = value; } }, metadata: _metadata }, _resizeEnabled_initializers, _resizeEnabled_extraInitializers);
68
79
  __esDecorate(this, null, _rotate_decorators, { kind: "accessor", name: "rotate", static: false, private: false, access: { has: obj => "rotate" in obj, get: obj => obj.rotate, set: (obj, value) => { obj.rotate = value; } }, metadata: _metadata }, _rotate_initializers, _rotate_extraInitializers);
69
80
  __esDecorate(this, null, _xywh_decorators, { kind: "accessor", name: "xywh", static: false, private: false, access: { has: obj => "xywh" in obj, get: obj => obj.xywh, set: (obj, value) => { obj.xywh = value; } }, metadata: _metadata }, _xywh_initializers, _xywh_extraInitializers);
81
+ __esDecorate(this, null, _lanes_decorators, { kind: "accessor", name: "lanes", static: false, private: false, access: { has: obj => "lanes" in obj, get: obj => obj.lanes, set: (obj, value) => { obj.lanes = value; } }, metadata: _metadata }, _lanes_initializers, _lanes_extraInitializers);
70
82
  if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
71
83
  }
72
84
  get type() {
73
85
  return 'bpmnPool';
74
86
  }
75
- get connectable() {
76
- return false;
77
- }
78
- containsBound(bounds) {
79
- const points = getPointsFromBoundWithRotation(this);
80
- return points.some(point => bounds.containsPoint(point));
81
- }
82
- getLineIntersections(start, end) {
83
- const points = getPointsFromBoundWithRotation(this);
84
- return linePolygonIntersects(start, end, points);
85
- }
86
- getNearestPoint(point) {
87
- return polygonNearestPoint(Bound.deserialize(this.xywh).points, point);
88
- }
89
- includesPoint(x, y) {
90
- const points = getPointsFromBoundWithRotation(this);
91
- return pointInPolygon([x, y], points);
92
- }
93
87
  #name_accessor_storage = __runInitializers(this, _name_initializers, 'Pool');
94
88
  get name() { return this.#name_accessor_storage; }
95
89
  set name(value) { this.#name_accessor_storage = value; }
@@ -102,9 +96,44 @@ let BpmnPoolElementModel = (() => {
102
96
  #xywh_accessor_storage = (__runInitializers(this, _rotate_extraInitializers), __runInitializers(this, _xywh_initializers, '[0,0,560,200]'));
103
97
  get xywh() { return this.#xywh_accessor_storage; }
104
98
  set xywh(value) { this.#xywh_accessor_storage = value; }
99
+ #lanes_accessor_storage = (__runInitializers(this, _xywh_extraInitializers), __runInitializers(this, _lanes_initializers, undefined));
100
+ /**
101
+ * The pool's own partition into lanes, in top-to-bottom order.
102
+ *
103
+ * The FIFTH field, and the only one that is optional. It mirrors
104
+ * `validationExceptions` on the base element model exactly, for the same three
105
+ * reasons:
106
+ *
107
+ * - **`undefined`, not `[]`.** `@field()`'s `init` writes nothing for an
108
+ * `undefined` default, so a pool that has no lane stays byte-identical to
109
+ * one created before this field existed: optional field, no schema version
110
+ * bump, no migration, and every document already on disk opens and paints
111
+ * exactly as it did (pinned by `pool-background.unit.spec.ts`, whose
112
+ * fixture carries no `lanes` key). Removing the last lane goes back through
113
+ * `clearField`, which deletes the KEY rather than leaving a phantom one.
114
+ * - **Flat JSON on purpose.** Element serialization is one level deep, and a
115
+ * value a Yjs update can encode is the contract `_assignElementProp`
116
+ * enforces. A nested `Y.Map` is what `tags` needs and this does not (see
117
+ * `docs/adr/0007`): a lane list is one atomic choice about how a single
118
+ * participant's own band is cut, authored by whoever is drawing the
119
+ * process — not an accumulating multi-key set different people qualify
120
+ * concurrently. The trade is stated so it is reviewed, not discovered:
121
+ * two peers reordering the lanes at the same moment resolve
122
+ * last-write-wins, one whole list winning over the other.
123
+ * - **Declared HERE and not on the base class.** A lane is a subdivision of a
124
+ * pool and of nothing else, and the accessor is what carries the value
125
+ * through a copy, a paste or a template insertion, so a duplicated pool
126
+ * arrives with its lanes.
127
+ *
128
+ * What it MEANS is declared, not coded: `BPMN_POOL_BACKGROUND.instanceZones`
129
+ * in `@labre/affine-gfx-bpmn` names this prop, and the framework-background
130
+ * primitive paints the dividers and the names from it.
131
+ */
132
+ get lanes() { return this.#lanes_accessor_storage; }
133
+ set lanes(value) { this.#lanes_accessor_storage = value; }
105
134
  constructor() {
106
135
  super(...arguments);
107
- __runInitializers(this, _xywh_extraInitializers);
136
+ __runInitializers(this, _lanes_extraInitializers);
108
137
  }
109
138
  };
110
139
  })();