@formicoidea/labre-core 0.30.1 → 0.32.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 (1468) hide show
  1. package/dist/_pkgs/affine-block-attachment/attachment-block.js +3 -3
  2. package/dist/_pkgs/affine-block-attachment/components/rename-model.js +1 -1
  3. package/dist/_pkgs/affine-block-attachment/configs/slash-menu.js +2 -2
  4. package/dist/_pkgs/affine-block-attachment/configs/toolbar.js +3 -3
  5. package/dist/_pkgs/affine-block-attachment/effects.js +2 -2
  6. package/dist/_pkgs/affine-block-attachment/embed.js +1 -1
  7. package/dist/_pkgs/affine-block-attachment/index.d.ts +7 -7
  8. package/dist/_pkgs/affine-block-attachment/index.js +7 -7
  9. package/dist/_pkgs/affine-block-attachment/store.js +1 -1
  10. package/dist/_pkgs/affine-block-attachment/utils.d.ts +1 -1
  11. package/dist/_pkgs/affine-block-attachment/view.js +3 -3
  12. package/dist/_pkgs/affine-block-bookmark/commands/insert-link-by-quick-search.js +1 -1
  13. package/dist/_pkgs/affine-block-bookmark/components/index.d.ts +1 -1
  14. package/dist/_pkgs/affine-block-bookmark/components/index.js +1 -1
  15. package/dist/_pkgs/affine-block-bookmark/configs/slash-menu.js +1 -1
  16. package/dist/_pkgs/affine-block-bookmark/configs/toolbar.js +1 -1
  17. package/dist/_pkgs/affine-block-bookmark/effects.js +3 -3
  18. package/dist/_pkgs/affine-block-bookmark/index.d.ts +6 -6
  19. package/dist/_pkgs/affine-block-bookmark/index.js +6 -6
  20. package/dist/_pkgs/affine-block-bookmark/store.js +1 -1
  21. package/dist/_pkgs/affine-block-bookmark/view.js +5 -5
  22. package/dist/_pkgs/affine-block-callout/callout-block.d.ts +6 -0
  23. package/dist/_pkgs/affine-block-callout/callout-block.js +25 -3
  24. package/dist/_pkgs/affine-block-callout/callout-keymap.js +59 -19
  25. package/dist/_pkgs/affine-block-callout/commands/callout-to-paragraph.d.ts +20 -0
  26. package/dist/_pkgs/affine-block-callout/commands/callout-to-paragraph.js +60 -0
  27. package/dist/_pkgs/affine-block-callout/commands/split-callout.d.ts +17 -0
  28. package/dist/_pkgs/affine-block-callout/commands/split-callout.js +42 -0
  29. package/dist/_pkgs/affine-block-callout/configs/slash-menu.js +10 -7
  30. package/dist/_pkgs/affine-block-callout/effects.d.ts +2 -2
  31. package/dist/_pkgs/affine-block-callout/effects.js +2 -2
  32. package/dist/_pkgs/affine-block-callout/emoji-margin.d.ts +9 -0
  33. package/dist/_pkgs/affine-block-callout/emoji-margin.js +36 -0
  34. package/dist/_pkgs/affine-block-callout/emoji-menu.d.ts +5 -1
  35. package/dist/_pkgs/affine-block-callout/emoji-menu.js +5 -0
  36. package/dist/_pkgs/affine-block-callout/store.js +1 -1
  37. package/dist/_pkgs/affine-block-callout/view.js +3 -3
  38. package/dist/_pkgs/affine-block-code/code-block.d.ts +14 -0
  39. package/dist/_pkgs/affine-block-code/code-block.js +44 -6
  40. package/dist/_pkgs/affine-block-code/code-toolbar/components/code-toolbar.d.ts +2 -0
  41. package/dist/_pkgs/affine-block-code/code-toolbar/components/code-toolbar.js +23 -14
  42. package/dist/_pkgs/affine-block-code/code-toolbar/components/lang-button.d.ts +1 -1
  43. package/dist/_pkgs/affine-block-code/code-toolbar/components/more-menu.d.ts +16 -0
  44. package/dist/_pkgs/affine-block-code/code-toolbar/components/more-menu.js +93 -0
  45. package/dist/_pkgs/affine-block-code/code-toolbar/components/preview-button.d.ts +1 -1
  46. package/dist/_pkgs/affine-block-code/code-toolbar/components/preview-button.js +1 -1
  47. package/dist/_pkgs/affine-block-code/code-toolbar/config.js +52 -5
  48. package/dist/_pkgs/affine-block-code/code-toolbar/context.d.ts +1 -1
  49. package/dist/_pkgs/affine-block-code/effects.d.ts +6 -4
  50. package/dist/_pkgs/affine-block-code/effects.js +8 -6
  51. package/dist/_pkgs/affine-block-code/highlight/affine-code-unit.js +6 -1
  52. package/dist/_pkgs/affine-block-code/index.d.ts +11 -10
  53. package/dist/_pkgs/affine-block-code/index.js +11 -10
  54. package/dist/_pkgs/affine-block-code/line-numbers.d.ts +25 -0
  55. package/dist/_pkgs/affine-block-code/line-numbers.js +27 -0
  56. package/dist/_pkgs/affine-block-code/store.js +2 -2
  57. package/dist/_pkgs/affine-block-code/styles.js +31 -0
  58. package/dist/_pkgs/affine-block-code/turbo/code-layout-handler.d.ts +1 -1
  59. package/dist/_pkgs/affine-block-code/view.js +1 -1
  60. package/dist/_pkgs/affine-block-data-view/configs/slash-menu.js +1 -1
  61. package/dist/_pkgs/affine-block-data-view/data-view-block.js +1 -0
  62. package/dist/_pkgs/affine-block-data-view/effects.js +1 -1
  63. package/dist/_pkgs/affine-block-data-view/store.js +1 -1
  64. package/dist/_pkgs/affine-block-data-view/view.js +2 -2
  65. package/dist/_pkgs/affine-block-database/adapters/html.js +1 -1
  66. package/dist/_pkgs/affine-block-database/adapters/index.d.ts +4 -4
  67. package/dist/_pkgs/affine-block-database/adapters/index.js +4 -4
  68. package/dist/_pkgs/affine-block-database/adapters/markdown.js +1 -1
  69. package/dist/_pkgs/affine-block-database/adapters/utils.js +1 -1
  70. package/dist/_pkgs/affine-block-database/commands.js +1 -1
  71. package/dist/_pkgs/affine-block-database/components/title/index.js +4 -1
  72. package/dist/_pkgs/affine-block-database/configs/slash-menu.js +30 -3
  73. package/dist/_pkgs/affine-block-database/context/index.d.ts +1 -1
  74. package/dist/_pkgs/affine-block-database/context/index.js +1 -1
  75. package/dist/_pkgs/affine-block-database/database-block.d.ts +1 -1
  76. package/dist/_pkgs/affine-block-database/database-block.js +13 -0
  77. package/dist/_pkgs/affine-block-database/effects.js +11 -11
  78. package/dist/_pkgs/affine-block-database/index.d.ts +14 -14
  79. package/dist/_pkgs/affine-block-database/index.js +14 -14
  80. package/dist/_pkgs/affine-block-database/properties/model.js +3 -3
  81. package/dist/_pkgs/affine-block-database/properties/paste-url.d.ts +24 -0
  82. package/dist/_pkgs/affine-block-database/properties/paste-url.js +98 -0
  83. package/dist/_pkgs/affine-block-database/properties/rich-text/cell-renderer.js +9 -19
  84. package/dist/_pkgs/affine-block-database/properties/title/text.js +20 -25
  85. package/dist/_pkgs/affine-block-database/store.js +2 -2
  86. package/dist/_pkgs/affine-block-database/view.js +2 -2
  87. package/dist/_pkgs/affine-block-database/views/index.js +1 -0
  88. package/dist/_pkgs/affine-block-divider/effects.js +1 -1
  89. package/dist/_pkgs/affine-block-divider/index.d.ts +2 -2
  90. package/dist/_pkgs/affine-block-divider/index.js +2 -2
  91. package/dist/_pkgs/affine-block-divider/store.js +1 -1
  92. package/dist/_pkgs/affine-block-divider/view.js +2 -2
  93. package/dist/_pkgs/affine-block-edgeless-text/edgeless-text-block.js +10 -0
  94. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/config.d.ts +3 -0
  95. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/config.js +48 -1
  96. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/font-size.d.ts +17 -0
  97. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/font-size.js +24 -0
  98. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/index.d.ts +1 -1
  99. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/index.js +1 -1
  100. package/dist/_pkgs/affine-block-edgeless-text/effects.js +1 -1
  101. package/dist/_pkgs/affine-block-edgeless-text/index.d.ts +2 -2
  102. package/dist/_pkgs/affine-block-edgeless-text/index.js +2 -2
  103. package/dist/_pkgs/affine-block-edgeless-text/view.js +4 -4
  104. package/dist/_pkgs/affine-block-embed/configs/toolbar.d.ts +4 -4
  105. package/dist/_pkgs/affine-block-embed/effects.d.ts +17 -17
  106. package/dist/_pkgs/affine-block-embed/effects.js +18 -18
  107. package/dist/_pkgs/affine-block-embed/embed-figma-block/configs/slash-menu.js +1 -1
  108. package/dist/_pkgs/affine-block-embed/embed-figma-block/embed-figma-spec.js +5 -5
  109. package/dist/_pkgs/affine-block-embed/embed-figma-block/index.d.ts +1 -1
  110. package/dist/_pkgs/affine-block-embed/embed-figma-block/index.js +1 -1
  111. package/dist/_pkgs/affine-block-embed/embed-github-block/configs/slash-menu.js +1 -1
  112. package/dist/_pkgs/affine-block-embed/embed-github-block/embed-github-spec.js +5 -5
  113. package/dist/_pkgs/affine-block-embed/embed-github-block/index.d.ts +1 -1
  114. package/dist/_pkgs/affine-block-embed/embed-github-block/index.js +1 -1
  115. package/dist/_pkgs/affine-block-embed/embed-html-block/configs/toolbar.js +1 -1
  116. package/dist/_pkgs/affine-block-embed/embed-html-block/embed-html-spec.js +2 -2
  117. package/dist/_pkgs/affine-block-embed/embed-html-block/index.d.ts +1 -1
  118. package/dist/_pkgs/affine-block-embed/embed-html-block/index.js +1 -1
  119. package/dist/_pkgs/affine-block-embed/embed-iframe-block/adapters/html.js +1 -1
  120. package/dist/_pkgs/affine-block-embed/embed-iframe-block/adapters/index.d.ts +3 -3
  121. package/dist/_pkgs/affine-block-embed/embed-iframe-block/adapters/index.js +6 -6
  122. package/dist/_pkgs/affine-block-embed/embed-iframe-block/adapters/plain-text.js +1 -1
  123. package/dist/_pkgs/affine-block-embed/embed-iframe-block/commands/index.d.ts +2 -2
  124. package/dist/_pkgs/affine-block-embed/embed-iframe-block/commands/index.js +2 -2
  125. package/dist/_pkgs/affine-block-embed/embed-iframe-block/commands/insert-embed-iframe-with-url.js +1 -1
  126. package/dist/_pkgs/affine-block-embed/embed-iframe-block/commands/insert-empty-embed-iframe.d.ts +1 -1
  127. package/dist/_pkgs/affine-block-embed/embed-iframe-block/commands/insert-empty-embed-iframe.js +1 -1
  128. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-error-card.d.ts +1 -1
  129. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-error-card.js +1 -1
  130. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-idle-card.d.ts +1 -1
  131. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-idle-card.js +1 -1
  132. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-edit-popup.d.ts +1 -1
  133. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-edit-popup.js +1 -1
  134. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-input-popup.d.ts +1 -1
  135. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-input-popup.js +1 -1
  136. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-loading-card.d.ts +1 -1
  137. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-loading-card.js +1 -1
  138. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/index.d.ts +2 -2
  139. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/index.js +2 -2
  140. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/providers/excalidraw.js +1 -1
  141. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/providers/google-docs.js +1 -1
  142. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/providers/google-drive.js +1 -1
  143. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/providers/index.d.ts +2 -2
  144. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/providers/index.js +6 -6
  145. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/providers/miro.js +1 -1
  146. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/providers/spotify.js +1 -1
  147. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/slash-menu/slash-menu.js +2 -2
  148. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/toolbar.js +2 -2
  149. package/dist/_pkgs/affine-block-embed/embed-iframe-block/embed-edgeless-iframe-block.d.ts +1 -1
  150. package/dist/_pkgs/affine-block-embed/embed-iframe-block/embed-edgeless-iframe-block.js +1 -1
  151. package/dist/_pkgs/affine-block-embed/embed-iframe-block/embed-iframe-spec.js +3 -3
  152. package/dist/_pkgs/affine-block-embed/embed-iframe-block/index.d.ts +8 -8
  153. package/dist/_pkgs/affine-block-embed/embed-iframe-block/index.js +8 -8
  154. package/dist/_pkgs/affine-block-embed/embed-loom-block/configs/slash-menu.js +1 -1
  155. package/dist/_pkgs/affine-block-embed/embed-loom-block/embed-loom-spec.js +5 -5
  156. package/dist/_pkgs/affine-block-embed/embed-loom-block/index.d.ts +1 -1
  157. package/dist/_pkgs/affine-block-embed/embed-loom-block/index.js +1 -1
  158. package/dist/_pkgs/affine-block-embed/embed-youtube-block/configs/slash-menu.js +1 -1
  159. package/dist/_pkgs/affine-block-embed/embed-youtube-block/embed-youtube-spec.js +5 -5
  160. package/dist/_pkgs/affine-block-embed/embed-youtube-block/index.d.ts +1 -1
  161. package/dist/_pkgs/affine-block-embed/embed-youtube-block/index.js +1 -1
  162. package/dist/_pkgs/affine-block-embed/index.d.ts +16 -16
  163. package/dist/_pkgs/affine-block-embed/index.js +16 -16
  164. package/dist/_pkgs/affine-block-embed/store.js +6 -6
  165. package/dist/_pkgs/affine-block-embed/types.d.ts +4 -4
  166. package/dist/_pkgs/affine-block-embed/types.js +4 -4
  167. package/dist/_pkgs/affine-block-embed/view.js +13 -13
  168. package/dist/_pkgs/affine-block-embed-doc/common/doc-trashed.d.ts +9 -0
  169. package/dist/_pkgs/affine-block-embed-doc/common/doc-trashed.js +10 -0
  170. package/dist/_pkgs/affine-block-embed-doc/common/render-linked-doc.d.ts +2 -2
  171. package/dist/_pkgs/affine-block-embed-doc/effects.d.ts +5 -5
  172. package/dist/_pkgs/affine-block-embed-doc/effects.js +5 -5
  173. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/commands/index.d.ts +1 -1
  174. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/commands/index.js +1 -1
  175. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/slash-menu.js +1 -1
  176. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/toolbar.js +1 -1
  177. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/embed-linked-doc-block.js +10 -6
  178. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/embed-linked-doc-spec.js +3 -3
  179. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/index.d.ts +8 -8
  180. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/index.js +8 -8
  181. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/commands/index.d.ts +1 -1
  182. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/commands/index.js +1 -1
  183. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/components/embed-synced-doc-card.js +2 -2
  184. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/configs/edgeless-interaction.js +1 -1
  185. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/configs/toolbar.js +1 -1
  186. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-edgeless-synced-doc-block.d.ts +1 -1
  187. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-edgeless-synced-doc-block.js +2 -2
  188. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-synced-doc-block.d.ts +4 -0
  189. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-synced-doc-block.js +22 -3
  190. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-synced-doc-spec.js +2 -2
  191. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/index.d.ts +7 -7
  192. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/index.js +7 -7
  193. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/init-height-extension.js +2 -2
  194. package/dist/_pkgs/affine-block-embed-doc/index.d.ts +2 -2
  195. package/dist/_pkgs/affine-block-embed-doc/index.js +2 -2
  196. package/dist/_pkgs/affine-block-embed-doc/store.js +2 -2
  197. package/dist/_pkgs/affine-block-embed-doc/view.js +4 -4
  198. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-dense-menu.js +1 -1
  199. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-menu.d.ts +1 -1
  200. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-menu.js +1 -1
  201. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-tool-button.d.ts +1 -1
  202. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-tool-button.js +1 -1
  203. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/index.d.ts +5 -5
  204. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/index.js +5 -5
  205. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/presentation-toolbar.d.ts +1 -1
  206. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/presentation-toolbar.js +2 -2
  207. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/quick-tool.js +1 -1
  208. package/dist/_pkgs/affine-block-frame/effects.d.ts +8 -8
  209. package/dist/_pkgs/affine-block-frame/effects.js +8 -8
  210. package/dist/_pkgs/affine-block-frame/frame-block.js +1 -1
  211. package/dist/_pkgs/affine-block-frame/frame-highlight-manager.d.ts +1 -1
  212. package/dist/_pkgs/affine-block-frame/frame-highlight-manager.js +1 -1
  213. package/dist/_pkgs/affine-block-frame/frame-manager.d.ts +13 -0
  214. package/dist/_pkgs/affine-block-frame/frame-manager.js +32 -2
  215. package/dist/_pkgs/affine-block-frame/frame-spec.js +2 -2
  216. package/dist/_pkgs/affine-block-frame/frame-tool.d.ts +2 -2
  217. package/dist/_pkgs/affine-block-frame/frame-tool.js +1 -1
  218. package/dist/_pkgs/affine-block-frame/frame-toolbar.js +1 -1
  219. package/dist/_pkgs/affine-block-frame/index.d.ts +9 -9
  220. package/dist/_pkgs/affine-block-frame/index.js +9 -9
  221. package/dist/_pkgs/affine-block-frame/present/frame-order-menu.js +1 -1
  222. package/dist/_pkgs/affine-block-frame/present/navigator-bg-widget.js +1 -1
  223. package/dist/_pkgs/affine-block-frame/present/present-button.d.ts +1 -1
  224. package/dist/_pkgs/affine-block-frame/present/present-button.js +1 -1
  225. package/dist/_pkgs/affine-block-frame/present-tool.d.ts +1 -1
  226. package/dist/_pkgs/affine-block-frame/view.js +10 -10
  227. package/dist/_pkgs/affine-block-image/adapters/html.js +1 -1
  228. package/dist/_pkgs/affine-block-image/adapters/markdown.js +1 -1
  229. package/dist/_pkgs/affine-block-image/adapters/notion-html.js +1 -1
  230. package/dist/_pkgs/affine-block-image/commands/insert-images.js +1 -1
  231. package/dist/_pkgs/affine-block-image/components/page-image-block.d.ts +1 -1
  232. package/dist/_pkgs/affine-block-image/components/page-image-block.js +3 -3
  233. package/dist/_pkgs/affine-block-image/configs/slash-menu.js +2 -2
  234. package/dist/_pkgs/affine-block-image/configs/toolbar.js +3 -3
  235. package/dist/_pkgs/affine-block-image/image-block.js +1 -1
  236. package/dist/_pkgs/affine-block-image/image-edgeless-block.js +1 -1
  237. package/dist/_pkgs/affine-block-image/image-spec.js +4 -4
  238. package/dist/_pkgs/affine-block-image/index.d.ts +10 -10
  239. package/dist/_pkgs/affine-block-image/index.js +10 -10
  240. package/dist/_pkgs/affine-block-image/store.js +1 -1
  241. package/dist/_pkgs/affine-block-image/turbo/image-layout-handler.d.ts +1 -1
  242. package/dist/_pkgs/affine-block-image/utils.d.ts +2 -2
  243. package/dist/_pkgs/affine-block-image/utils.js +1 -1
  244. package/dist/_pkgs/affine-block-image/view.js +4 -4
  245. package/dist/_pkgs/affine-block-latex/configs/slash-menu.js +2 -2
  246. package/dist/_pkgs/affine-block-latex/effects.js +1 -1
  247. package/dist/_pkgs/affine-block-latex/index.d.ts +3 -3
  248. package/dist/_pkgs/affine-block-latex/index.js +3 -3
  249. package/dist/_pkgs/affine-block-latex/store.js +2 -2
  250. package/dist/_pkgs/affine-block-latex/styles.js +6 -1
  251. package/dist/_pkgs/affine-block-latex/view.js +2 -2
  252. package/dist/_pkgs/affine-block-list/index.d.ts +4 -4
  253. package/dist/_pkgs/affine-block-list/index.js +4 -4
  254. package/dist/_pkgs/affine-block-list/store.js +1 -1
  255. package/dist/_pkgs/affine-block-list/turbo/list-layout-handler.d.ts +1 -1
  256. package/dist/_pkgs/affine-block-note/adapters/index.d.ts +3 -3
  257. package/dist/_pkgs/affine-block-note/adapters/index.js +6 -6
  258. package/dist/_pkgs/affine-block-note/commands/dedent-block-to-root.js +1 -1
  259. package/dist/_pkgs/affine-block-note/commands/dedent-blocks-to-root.js +1 -1
  260. package/dist/_pkgs/affine-block-note/commands/dedent-blocks.js +1 -1
  261. package/dist/_pkgs/affine-block-note/commands/indent-blocks.js +1 -1
  262. package/dist/_pkgs/affine-block-note/components/edgeless-note-background.css.js +1 -1
  263. package/dist/_pkgs/affine-block-note/components/edgeless-note-background.js +2 -2
  264. package/dist/_pkgs/affine-block-note/components/edgeless-note-mask.js +1 -1
  265. package/dist/_pkgs/affine-block-note/components/edgeless-note-shadow-menu.js +1 -1
  266. package/dist/_pkgs/affine-block-note/components/edgeless-page-block-title.js +2 -2
  267. package/dist/_pkgs/affine-block-note/configs/slash-menu.js +2 -2
  268. package/dist/_pkgs/affine-block-note/configs/toolbar.js +2 -2
  269. package/dist/_pkgs/affine-block-note/effects.js +9 -9
  270. package/dist/_pkgs/affine-block-note/index.d.ts +9 -9
  271. package/dist/_pkgs/affine-block-note/index.js +9 -9
  272. package/dist/_pkgs/affine-block-note/note-edgeless-block.d.ts +10 -1
  273. package/dist/_pkgs/affine-block-note/note-edgeless-block.js +35 -7
  274. package/dist/_pkgs/affine-block-note/note-keymap.js +3 -3
  275. package/dist/_pkgs/affine-block-note/store.js +1 -1
  276. package/dist/_pkgs/affine-block-note/turbo/note-layout-handler.d.ts +1 -1
  277. package/dist/_pkgs/affine-block-note/view.js +6 -6
  278. package/dist/_pkgs/affine-block-paragraph/index.d.ts +3 -3
  279. package/dist/_pkgs/affine-block-paragraph/index.js +3 -3
  280. package/dist/_pkgs/affine-block-paragraph/store.js +1 -1
  281. package/dist/_pkgs/affine-block-paragraph/turbo/paragraph-layout-handler.d.ts +1 -1
  282. package/dist/_pkgs/affine-block-paragraph/view.js +1 -1
  283. package/dist/_pkgs/affine-block-root/clipboard/page-clipboard.d.ts +1 -1
  284. package/dist/_pkgs/affine-block-root/clipboard/page-clipboard.js +1 -1
  285. package/dist/_pkgs/affine-block-root/commands/pivot-commands.d.ts +37 -0
  286. package/dist/_pkgs/affine-block-root/commands/pivot-commands.js +168 -0
  287. package/dist/_pkgs/affine-block-root/commands/reading-commands.d.ts +23 -0
  288. package/dist/_pkgs/affine-block-root/commands/reading-commands.js +107 -0
  289. package/dist/_pkgs/affine-block-root/commands/tag-commands.d.ts +47 -0
  290. package/dist/_pkgs/affine-block-root/commands/tag-commands.js +159 -0
  291. package/dist/_pkgs/affine-block-root/configs/toolbar.d.ts +1 -0
  292. package/dist/_pkgs/affine-block-root/edgeless/clipboard/command.js +2 -2
  293. package/dist/_pkgs/affine-block-root/edgeless/clipboard/utils.js +2 -2
  294. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/index.js +1 -1
  295. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/misc.js +2 -2
  296. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/more.js +16 -9
  297. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/render-linked-doc.js +1 -1
  298. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/utils.d.ts +1 -1
  299. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/utils.js +1 -1
  300. package/dist/_pkgs/affine-block-root/edgeless/edgeless-keyboard.js +26 -1
  301. package/dist/_pkgs/affine-block-root/edgeless/edgeless-root-block.js +11 -2
  302. package/dist/_pkgs/affine-block-root/edgeless/edgeless-root-service.js +15 -1
  303. package/dist/_pkgs/affine-block-root/edgeless/index.d.ts +4 -3
  304. package/dist/_pkgs/affine-block-root/edgeless/index.js +4 -3
  305. package/dist/_pkgs/affine-block-root/edgeless/reserved-keys.d.ts +21 -0
  306. package/dist/_pkgs/affine-block-root/edgeless/reserved-keys.js +34 -0
  307. package/dist/_pkgs/affine-block-root/edgeless/utils/clipboard-utils.js +1 -1
  308. package/dist/_pkgs/affine-block-root/edgeless/utils/clone-utils.d.ts +7 -1
  309. package/dist/_pkgs/affine-block-root/edgeless/utils/clone-utils.js +11 -2
  310. package/dist/_pkgs/affine-block-root/edgeless/utils/query.js +1 -1
  311. package/dist/_pkgs/affine-block-root/index.d.ts +5 -2
  312. package/dist/_pkgs/affine-block-root/index.js +5 -2
  313. package/dist/_pkgs/affine-block-root/keyboard/commands.d.ts +2 -0
  314. package/dist/_pkgs/affine-block-root/keyboard/commands.js +147 -0
  315. package/dist/_pkgs/affine-block-root/preview/edgeless-root-preview-block.js +1 -1
  316. package/dist/_pkgs/affine-block-root/store.js +1 -1
  317. package/dist/_pkgs/affine-block-root/view.js +21 -12
  318. package/dist/_pkgs/affine-block-surface/commands/auto-align.js +1 -1
  319. package/dist/_pkgs/affine-block-surface/commands/reassociate-connectors.js +0 -1
  320. package/dist/_pkgs/affine-block-surface/effects.js +6 -0
  321. package/dist/_pkgs/affine-block-surface/element-model/index.d.ts +5 -2
  322. package/dist/_pkgs/affine-block-surface/element-model/index.js +4 -2
  323. package/dist/_pkgs/affine-block-surface/extensions/audit.d.ts +107 -0
  324. package/dist/_pkgs/affine-block-surface/extensions/audit.js +472 -0
  325. package/dist/_pkgs/affine-block-surface/extensions/clipboard-config.d.ts +1 -1
  326. package/dist/_pkgs/affine-block-surface/extensions/clipboard-config.js +2 -2
  327. package/dist/_pkgs/affine-block-surface/extensions/crud-extension.d.ts +14 -0
  328. package/dist/_pkgs/affine-block-surface/extensions/crud-extension.js +29 -2
  329. package/dist/_pkgs/affine-block-surface/extensions/edit-props-middleware-builder.js +1 -1
  330. package/dist/_pkgs/affine-block-surface/extensions/editor-anchored-panel.d.ts +133 -0
  331. package/dist/_pkgs/affine-block-surface/extensions/editor-anchored-panel.js +326 -0
  332. package/dist/_pkgs/affine-block-surface/extensions/element-renderer.d.ts +1 -1
  333. package/dist/_pkgs/affine-block-surface/extensions/index.d.ts +22 -9
  334. package/dist/_pkgs/affine-block-surface/extensions/index.js +22 -9
  335. package/dist/_pkgs/affine-block-surface/extensions/map-quality-widget.d.ts +146 -0
  336. package/dist/_pkgs/affine-block-surface/extensions/map-quality-widget.js +528 -0
  337. package/dist/_pkgs/affine-block-surface/extensions/map-quality.d.ts +109 -0
  338. package/dist/_pkgs/affine-block-surface/extensions/map-quality.js +84 -0
  339. package/dist/_pkgs/affine-block-surface/extensions/reading-toolbar.d.ts +15 -0
  340. package/dist/_pkgs/affine-block-surface/extensions/reading-toolbar.js +158 -0
  341. package/dist/_pkgs/affine-block-surface/extensions/reading-widget.d.ts +145 -0
  342. package/dist/_pkgs/affine-block-surface/extensions/reading-widget.js +590 -0
  343. package/dist/_pkgs/affine-block-surface/extensions/reading.d.ts +494 -0
  344. package/dist/_pkgs/affine-block-surface/extensions/reading.js +767 -0
  345. package/dist/_pkgs/affine-block-surface/extensions/spotlight.d.ts +45 -0
  346. package/dist/_pkgs/affine-block-surface/extensions/spotlight.js +177 -0
  347. package/dist/_pkgs/affine-block-surface/extensions/surface-middleware.d.ts +1 -1
  348. package/dist/_pkgs/affine-block-surface/extensions/tags-toolbar.d.ts +10 -0
  349. package/dist/_pkgs/affine-block-surface/extensions/tags-toolbar.js +295 -0
  350. package/dist/_pkgs/affine-block-surface/extensions/validation-toolbar.d.ts +27 -0
  351. package/dist/_pkgs/affine-block-surface/extensions/validation-toolbar.js +361 -0
  352. package/dist/_pkgs/affine-block-surface/extensions/validation.d.ts +1340 -0
  353. package/dist/_pkgs/affine-block-surface/extensions/validation.js +3009 -0
  354. package/dist/_pkgs/affine-block-surface/extensions/violation-detail-widget.d.ts +286 -0
  355. package/dist/_pkgs/affine-block-surface/extensions/violation-detail-widget.js +907 -0
  356. package/dist/_pkgs/affine-block-surface/extensions/violation-timeline.d.ts +80 -0
  357. package/dist/_pkgs/affine-block-surface/extensions/violation-timeline.js +123 -0
  358. package/dist/_pkgs/affine-block-surface/framework-background/def.d.ts +321 -0
  359. package/dist/_pkgs/affine-block-surface/framework-background/def.js +81 -0
  360. package/dist/_pkgs/affine-block-surface/framework-background/facts.d.ts +188 -0
  361. package/dist/_pkgs/affine-block-surface/framework-background/facts.js +284 -0
  362. package/dist/_pkgs/affine-block-surface/framework-background/index.d.ts +5 -0
  363. package/dist/_pkgs/affine-block-surface/framework-background/index.js +5 -0
  364. package/dist/_pkgs/affine-block-surface/framework-background/interaction.d.ts +12 -0
  365. package/dist/_pkgs/affine-block-surface/framework-background/interaction.js +24 -0
  366. package/dist/_pkgs/affine-block-surface/framework-background/labels.d.ts +59 -0
  367. package/dist/_pkgs/affine-block-surface/framework-background/labels.js +117 -0
  368. package/dist/_pkgs/affine-block-surface/framework-background/renderer.d.ts +8 -0
  369. package/dist/_pkgs/affine-block-surface/framework-background/renderer.js +238 -0
  370. package/dist/_pkgs/affine-block-surface/index.d.ts +6 -5
  371. package/dist/_pkgs/affine-block-surface/index.js +5 -4
  372. package/dist/_pkgs/affine-block-surface/renderer/canvas-renderer.d.ts +69 -3
  373. package/dist/_pkgs/affine-block-surface/renderer/canvas-renderer.js +334 -45
  374. package/dist/_pkgs/affine-block-surface/renderer/dom-renderer.js +18 -2
  375. package/dist/_pkgs/affine-block-surface/renderer/tool-overlay.d.ts +2 -2
  376. package/dist/_pkgs/affine-block-surface/renderer/tool-overlay.js +1 -1
  377. package/dist/_pkgs/affine-block-surface/store.js +2 -2
  378. package/dist/_pkgs/affine-block-surface/tool/default-tool.js +8 -0
  379. package/dist/_pkgs/affine-block-surface/utils/font.js +9 -3
  380. package/dist/_pkgs/affine-block-surface/utils/get-bg-grip-gap.js +1 -1
  381. package/dist/_pkgs/affine-block-surface/utils/get-surface-block.d.ts +2 -2
  382. package/dist/_pkgs/affine-block-surface/utils/index.d.ts +3 -3
  383. package/dist/_pkgs/affine-block-surface/utils/index.js +3 -3
  384. package/dist/_pkgs/affine-block-surface/view.d.ts +17 -0
  385. package/dist/_pkgs/affine-block-surface/view.js +60 -5
  386. package/dist/_pkgs/affine-block-surface-ref/components/index.d.ts +2 -2
  387. package/dist/_pkgs/affine-block-surface-ref/components/index.js +2 -2
  388. package/dist/_pkgs/affine-block-surface-ref/components/placeholder.js +2 -2
  389. package/dist/_pkgs/affine-block-surface-ref/configs/slash-menu.js +2 -2
  390. package/dist/_pkgs/affine-block-surface-ref/configs/toolbar.js +1 -1
  391. package/dist/_pkgs/affine-block-surface-ref/effects.js +5 -5
  392. package/dist/_pkgs/affine-block-surface-ref/view.js +3 -3
  393. package/dist/_pkgs/affine-block-table/adapters/html.js +2 -2
  394. package/dist/_pkgs/affine-block-table/adapters/index.d.ts +5 -5
  395. package/dist/_pkgs/affine-block-table/adapters/index.js +5 -5
  396. package/dist/_pkgs/affine-block-table/adapters/markdown.js +1 -1
  397. package/dist/_pkgs/affine-block-table/add-button.d.ts +1 -1
  398. package/dist/_pkgs/affine-block-table/add-button.js +2 -2
  399. package/dist/_pkgs/affine-block-table/commands.js +1 -1
  400. package/dist/_pkgs/affine-block-table/configs/slash-menu.js +2 -2
  401. package/dist/_pkgs/affine-block-table/effects.js +4 -4
  402. package/dist/_pkgs/affine-block-table/index.d.ts +1 -1
  403. package/dist/_pkgs/affine-block-table/index.js +1 -1
  404. package/dist/_pkgs/affine-block-table/selection-controller.d.ts +8 -2
  405. package/dist/_pkgs/affine-block-table/selection-controller.js +27 -4
  406. package/dist/_pkgs/affine-block-table/selection-layer.d.ts +1 -1
  407. package/dist/_pkgs/affine-block-table/store.js +2 -2
  408. package/dist/_pkgs/affine-block-table/table-block.d.ts +2 -2
  409. package/dist/_pkgs/affine-block-table/table-block.js +11 -5
  410. package/dist/_pkgs/affine-block-table/table-cell.d.ts +2 -2
  411. package/dist/_pkgs/affine-block-table/table-cell.js +9 -10
  412. package/dist/_pkgs/affine-block-table/table-data-manager.d.ts +1 -1
  413. package/dist/_pkgs/affine-block-table/table-keymap.d.ts +18 -0
  414. package/dist/_pkgs/affine-block-table/table-keymap.js +41 -0
  415. package/dist/_pkgs/affine-block-table/utils.d.ts +7 -0
  416. package/dist/_pkgs/affine-block-table/utils.js +12 -0
  417. package/dist/_pkgs/affine-block-table/view.js +4 -2
  418. package/dist/_pkgs/affine-components/caption/captioned-block-component.js +2 -1
  419. package/dist/_pkgs/affine-components/card-style-dropdown-menu/dropdown-menu.js +1 -1
  420. package/dist/_pkgs/affine-components/card-style-dropdown-menu/index.d.ts +1 -1
  421. package/dist/_pkgs/affine-components/card-style-dropdown-menu/index.js +2 -2
  422. package/dist/_pkgs/affine-components/citation/index.d.ts +1 -1
  423. package/dist/_pkgs/affine-components/citation/index.js +2 -2
  424. package/dist/_pkgs/affine-components/color-picker/button.d.ts +2 -2
  425. package/dist/_pkgs/affine-components/color-picker/color-panel.js +2 -2
  426. package/dist/_pkgs/affine-components/color-picker/color-picker.js +1 -1
  427. package/dist/_pkgs/affine-components/color-picker/index.d.ts +9 -9
  428. package/dist/_pkgs/affine-components/color-picker/index.js +9 -9
  429. package/dist/_pkgs/affine-components/color-picker/utils.js +1 -1
  430. package/dist/_pkgs/affine-components/context-menu/button.d.ts +7 -0
  431. package/dist/_pkgs/affine-components/context-menu/button.js +7 -2
  432. package/dist/_pkgs/affine-components/context-menu/index.d.ts +10 -10
  433. package/dist/_pkgs/affine-components/context-menu/index.js +15 -15
  434. package/dist/_pkgs/affine-components/context-menu/input.d.ts +4 -0
  435. package/dist/_pkgs/affine-components/context-menu/input.js +12 -0
  436. package/dist/_pkgs/affine-components/context-menu/menu-all.d.ts +12 -10
  437. package/dist/_pkgs/affine-components/context-menu/menu-all.js +5 -5
  438. package/dist/_pkgs/affine-components/context-menu/menu-renderer.js +8 -1
  439. package/dist/_pkgs/affine-components/context-menu/sub-menu.js +3 -0
  440. package/dist/_pkgs/affine-components/drop-indicator/file-drop-manager.d.ts +1 -1
  441. package/dist/_pkgs/affine-components/drop-indicator/file-drop-manager.js +2 -2
  442. package/dist/_pkgs/affine-components/drop-indicator/index.d.ts +2 -2
  443. package/dist/_pkgs/affine-components/drop-indicator/index.js +2 -2
  444. package/dist/_pkgs/affine-components/edgeless-line-styles-panel/index.d.ts +1 -1
  445. package/dist/_pkgs/affine-components/edgeless-line-styles-panel/index.js +2 -2
  446. package/dist/_pkgs/affine-components/edgeless-line-width-panel/index.d.ts +1 -1
  447. package/dist/_pkgs/affine-components/edgeless-line-width-panel/index.js +2 -2
  448. package/dist/_pkgs/affine-components/edgeless-shape-color-picker/color-picker.d.ts +1 -1
  449. package/dist/_pkgs/affine-components/edgeless-shape-color-picker/color-picker.js +1 -1
  450. package/dist/_pkgs/affine-components/edgeless-shape-color-picker/index.d.ts +1 -1
  451. package/dist/_pkgs/affine-components/edgeless-shape-color-picker/index.js +2 -2
  452. package/dist/_pkgs/affine-components/embed-card-modal/embed-card-create-modal.js +1 -1
  453. package/dist/_pkgs/affine-components/embed-card-modal/embed-card-edit-modal.js +1 -1
  454. package/dist/_pkgs/affine-components/embed-card-modal/index.d.ts +2 -2
  455. package/dist/_pkgs/affine-components/embed-card-modal/index.js +4 -4
  456. package/dist/_pkgs/affine-components/filterable-list/index.d.ts +1 -1
  457. package/dist/_pkgs/affine-components/filterable-list/index.js +1 -1
  458. package/dist/_pkgs/affine-components/highlight-dropdown-menu/dropdown-menu.js +1 -1
  459. package/dist/_pkgs/affine-components/highlight-dropdown-menu/highlight-duotone-icon.js +8 -8
  460. package/dist/_pkgs/affine-components/highlight-dropdown-menu/index.d.ts +3 -3
  461. package/dist/_pkgs/affine-components/highlight-dropdown-menu/index.js +6 -6
  462. package/dist/_pkgs/affine-components/highlight-dropdown-menu/text-duotone-icon.js +11 -11
  463. package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.d.ts +28 -0
  464. package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.js +231 -0
  465. package/dist/_pkgs/affine-components/icon-picker/emoji-data.d.ts +40 -0
  466. package/dist/_pkgs/affine-components/icon-picker/emoji-data.js +99 -0
  467. package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.d.ts +32 -0
  468. package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.js +276 -0
  469. package/dist/_pkgs/affine-components/icon-picker/icon-data.d.ts +34 -0
  470. package/dist/_pkgs/affine-components/icon-picker/icon-data.js +83 -0
  471. package/dist/_pkgs/affine-components/icon-picker/icon-picker.d.ts +39 -0
  472. package/dist/_pkgs/affine-components/icon-picker/icon-picker.js +233 -0
  473. package/dist/_pkgs/affine-components/icon-picker/index.d.ts +8 -0
  474. package/dist/_pkgs/affine-components/icon-picker/index.js +15 -0
  475. package/dist/_pkgs/affine-components/icon-picker/recent-store.d.ts +8 -0
  476. package/dist/_pkgs/affine-components/icon-picker/recent-store.js +41 -0
  477. package/dist/_pkgs/affine-components/icon-picker/styles.d.ts +5 -0
  478. package/dist/_pkgs/affine-components/icon-picker/styles.js +166 -0
  479. package/dist/_pkgs/affine-components/icon-picker/types.d.ts +22 -0
  480. package/dist/_pkgs/affine-components/icon-picker/types.js +10 -0
  481. package/dist/_pkgs/affine-components/icons/index.d.ts +1 -1
  482. package/dist/_pkgs/affine-components/icons/index.js +1 -1
  483. package/dist/_pkgs/affine-components/icons/text.js +426 -426
  484. package/dist/_pkgs/affine-components/link-preview/index.d.ts +1 -1
  485. package/dist/_pkgs/affine-components/link-preview/index.js +2 -2
  486. package/dist/_pkgs/affine-components/linked-doc-title/index.d.ts +1 -1
  487. package/dist/_pkgs/affine-components/linked-doc-title/index.js +2 -2
  488. package/dist/_pkgs/affine-components/open-doc-dropdown-menu/dropdown-menu.d.ts +1 -0
  489. package/dist/_pkgs/affine-components/open-doc-dropdown-menu/dropdown-menu.js +1 -1
  490. package/dist/_pkgs/affine-components/open-doc-dropdown-menu/index.d.ts +1 -1
  491. package/dist/_pkgs/affine-components/open-doc-dropdown-menu/index.js +2 -2
  492. package/dist/_pkgs/affine-components/portal/portal.d.ts +1 -1
  493. package/dist/_pkgs/affine-components/resource/index.d.ts +2 -2
  494. package/dist/_pkgs/affine-components/resource/index.js +3 -3
  495. package/dist/_pkgs/affine-components/size-dropdown-menu/dropdown-menu.d.ts +1 -1
  496. package/dist/_pkgs/affine-components/size-dropdown-menu/dropdown-menu.js +2 -2
  497. package/dist/_pkgs/affine-components/size-dropdown-menu/index.d.ts +1 -1
  498. package/dist/_pkgs/affine-components/size-dropdown-menu/index.js +2 -2
  499. package/dist/_pkgs/affine-components/slider/index.d.ts +1 -1
  500. package/dist/_pkgs/affine-components/slider/index.js +2 -2
  501. package/dist/_pkgs/affine-components/slider/slider.d.ts +1 -1
  502. package/dist/_pkgs/affine-components/slider/slider.js +2 -2
  503. package/dist/_pkgs/affine-components/slider/utils.d.ts +1 -1
  504. package/dist/_pkgs/affine-components/toolbar/config.d.ts +1 -1
  505. package/dist/_pkgs/affine-components/toolbar/menu-button.js +1 -0
  506. package/dist/_pkgs/affine-components/toolbar/toolbar.js +11 -10
  507. package/dist/_pkgs/affine-components/view-dropdown-menu/dropdown-menu.js +1 -1
  508. package/dist/_pkgs/affine-components/view-dropdown-menu/index.d.ts +1 -1
  509. package/dist/_pkgs/affine-components/view-dropdown-menu/index.js +2 -2
  510. package/dist/_pkgs/affine-ext-loader/index.d.ts +4 -4
  511. package/dist/_pkgs/affine-ext-loader/index.js +4 -4
  512. package/dist/_pkgs/affine-ext-loader/manager.d.ts +1 -1
  513. package/dist/_pkgs/affine-ext-loader/store-manager.d.ts +1 -1
  514. package/dist/_pkgs/affine-ext-loader/store-manager.js +1 -1
  515. package/dist/_pkgs/affine-ext-loader/store-provider.d.ts +1 -1
  516. package/dist/_pkgs/affine-ext-loader/store-provider.js +1 -1
  517. package/dist/_pkgs/affine-ext-loader/view-manager.d.ts +2 -2
  518. package/dist/_pkgs/affine-ext-loader/view-manager.js +1 -1
  519. package/dist/_pkgs/affine-ext-loader/view-provider.d.ts +1 -1
  520. package/dist/_pkgs/affine-ext-loader/view-provider.js +1 -1
  521. package/dist/_pkgs/affine-foundation/view.js +13 -4
  522. package/dist/_pkgs/affine-fragment-adapter-panel/adapter-panel.d.ts +1 -1
  523. package/dist/_pkgs/affine-fragment-adapter-panel/adapter-panel.js +1 -1
  524. package/dist/_pkgs/affine-fragment-adapter-panel/body/adapter-panel-body.d.ts +1 -1
  525. package/dist/_pkgs/affine-fragment-adapter-panel/body/adapter-panel-body.js +1 -1
  526. package/dist/_pkgs/affine-fragment-adapter-panel/effects.js +4 -4
  527. package/dist/_pkgs/affine-fragment-adapter-panel/header/adapter-menu.d.ts +1 -1
  528. package/dist/_pkgs/affine-fragment-adapter-panel/header/adapter-menu.js +1 -1
  529. package/dist/_pkgs/affine-fragment-adapter-panel/header/adapter-panel-header.d.ts +1 -1
  530. package/dist/_pkgs/affine-fragment-adapter-panel/header/adapter-panel-header.js +1 -1
  531. package/dist/_pkgs/affine-fragment-adapter-panel/view.js +1 -1
  532. package/dist/_pkgs/affine-fragment-doc-title/effects.d.ts +1 -1
  533. package/dist/_pkgs/affine-fragment-doc-title/effects.js +1 -1
  534. package/dist/_pkgs/affine-fragment-doc-title/index.d.ts +2 -2
  535. package/dist/_pkgs/affine-fragment-doc-title/index.js +2 -2
  536. package/dist/_pkgs/affine-fragment-doc-title/utils.d.ts +1 -1
  537. package/dist/_pkgs/affine-fragment-doc-title/view.js +1 -1
  538. package/dist/_pkgs/affine-fragment-frame-panel/card/frame-preview.js +1 -1
  539. package/dist/_pkgs/affine-fragment-frame-panel/effects.js +8 -8
  540. package/dist/_pkgs/affine-fragment-frame-panel/index.d.ts +1 -1
  541. package/dist/_pkgs/affine-fragment-frame-panel/index.js +1 -1
  542. package/dist/_pkgs/affine-fragment-frame-panel/view.js +1 -1
  543. package/dist/_pkgs/affine-fragment-outline/body/outline-notice.js +3 -3
  544. package/dist/_pkgs/affine-fragment-outline/body/outline-panel-body.js +4 -4
  545. package/dist/_pkgs/affine-fragment-outline/card/outline-card.js +2 -2
  546. package/dist/_pkgs/affine-fragment-outline/card/outline-preview.js +1 -1
  547. package/dist/_pkgs/affine-fragment-outline/effects.js +9 -9
  548. package/dist/_pkgs/affine-fragment-outline/header/outline-panel-header.js +2 -2
  549. package/dist/_pkgs/affine-fragment-outline/header/outline-setting-menu.js +2 -2
  550. package/dist/_pkgs/affine-fragment-outline/outline-panel.js +1 -1
  551. package/dist/_pkgs/affine-fragment-outline/view.js +1 -1
  552. package/dist/_pkgs/affine-gfx-brush/adapter/index.d.ts +2 -2
  553. package/dist/_pkgs/affine-gfx-brush/adapter/index.js +2 -2
  554. package/dist/_pkgs/affine-gfx-brush/effects.d.ts +3 -3
  555. package/dist/_pkgs/affine-gfx-brush/effects.js +3 -3
  556. package/dist/_pkgs/affine-gfx-brush/index.d.ts +8 -7
  557. package/dist/_pkgs/affine-gfx-brush/index.js +8 -7
  558. package/dist/_pkgs/affine-gfx-brush/renderer/dom/brush.d.ts +1 -0
  559. package/dist/_pkgs/affine-gfx-brush/renderer/dom/brush.js +11 -0
  560. package/dist/_pkgs/affine-gfx-brush/renderer/dom/highlighter.d.ts +1 -0
  561. package/dist/_pkgs/affine-gfx-brush/renderer/dom/highlighter.js +11 -0
  562. package/dist/_pkgs/affine-gfx-brush/renderer/dom/index.d.ts +2 -0
  563. package/dist/_pkgs/affine-gfx-brush/renderer/dom/index.js +2 -0
  564. package/dist/_pkgs/affine-gfx-brush/renderer/dom/shared.d.ts +14 -0
  565. package/dist/_pkgs/affine-gfx-brush/renderer/dom/shared.js +54 -0
  566. package/dist/_pkgs/affine-gfx-brush/renderer/index.d.ts +1 -0
  567. package/dist/_pkgs/affine-gfx-brush/renderer/index.js +4 -0
  568. package/dist/_pkgs/affine-gfx-brush/store.js +1 -1
  569. package/dist/_pkgs/affine-gfx-brush/toolbar/components/eraser/eraser-tool-button.d.ts +1 -1
  570. package/dist/_pkgs/affine-gfx-brush/toolbar/components/eraser/eraser-tool-button.js +1 -1
  571. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/consts.d.ts +1 -1
  572. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/consts.js +1 -1
  573. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-menu.d.ts +3 -3
  574. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-menu.js +3 -3
  575. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-tool-button.d.ts +2 -2
  576. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-tool-button.js +3 -3
  577. package/dist/_pkgs/affine-gfx-brush/toolbar/configs/index.d.ts +2 -2
  578. package/dist/_pkgs/affine-gfx-brush/toolbar/configs/index.js +2 -2
  579. package/dist/_pkgs/affine-gfx-brush/view.d.ts +14 -0
  580. package/dist/_pkgs/affine-gfx-brush/view.js +36 -10
  581. package/dist/_pkgs/affine-gfx-connector/adapter/index.d.ts +2 -2
  582. package/dist/_pkgs/affine-gfx-connector/adapter/index.js +2 -2
  583. package/dist/_pkgs/affine-gfx-connector/adapter/markdown/index.js +1 -1
  584. package/dist/_pkgs/affine-gfx-connector/adapter/plain-text/index.js +1 -1
  585. package/dist/_pkgs/affine-gfx-connector/components/connector-handle.d.ts +1 -1
  586. package/dist/_pkgs/affine-gfx-connector/connector-manager.js +33 -7
  587. package/dist/_pkgs/affine-gfx-connector/connector-tool.d.ts +7 -0
  588. package/dist/_pkgs/affine-gfx-connector/connector-tool.js +3 -2
  589. package/dist/_pkgs/affine-gfx-connector/connector-watcher.js +1 -1
  590. package/dist/_pkgs/affine-gfx-connector/direction/direction-reveal.d.ts +123 -0
  591. package/dist/_pkgs/affine-gfx-connector/direction/direction-reveal.js +281 -0
  592. package/dist/_pkgs/affine-gfx-connector/direction/direction-widget.d.ts +65 -0
  593. package/dist/_pkgs/affine-gfx-connector/direction/direction-widget.js +395 -0
  594. package/dist/_pkgs/affine-gfx-connector/direction/index.d.ts +4 -0
  595. package/dist/_pkgs/affine-gfx-connector/direction/index.js +4 -0
  596. package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.d.ts +72 -0
  597. package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.js +187 -0
  598. package/dist/_pkgs/affine-gfx-connector/direction/typed-edge.d.ts +69 -0
  599. package/dist/_pkgs/affine-gfx-connector/direction/typed-edge.js +66 -0
  600. package/dist/_pkgs/affine-gfx-connector/effects.d.ts +6 -4
  601. package/dist/_pkgs/affine-gfx-connector/effects.js +6 -4
  602. package/dist/_pkgs/affine-gfx-connector/element-renderer/connector-dom/index.js +78 -41
  603. package/dist/_pkgs/affine-gfx-connector/element-transform/index.d.ts +1 -1
  604. package/dist/_pkgs/affine-gfx-connector/element-transform/index.js +1 -1
  605. package/dist/_pkgs/affine-gfx-connector/index.d.ts +11 -10
  606. package/dist/_pkgs/affine-gfx-connector/index.js +11 -10
  607. package/dist/_pkgs/affine-gfx-connector/store.js +2 -2
  608. package/dist/_pkgs/affine-gfx-connector/text/text.js +1 -1
  609. package/dist/_pkgs/affine-gfx-connector/toolbar/config.d.ts +50 -0
  610. package/dist/_pkgs/affine-gfx-connector/toolbar/config.js +69 -3
  611. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-dense-menu.js +1 -1
  612. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-menu.d.ts +1 -1
  613. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-menu.js +1 -1
  614. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-tool-button.d.ts +1 -1
  615. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-tool-button.js +1 -1
  616. package/dist/_pkgs/affine-gfx-connector/view/index.d.ts +1 -1
  617. package/dist/_pkgs/affine-gfx-connector/view/index.js +1 -1
  618. package/dist/_pkgs/affine-gfx-connector/view/view.js +1 -1
  619. package/dist/_pkgs/affine-gfx-connector/view.js +25 -9
  620. package/dist/_pkgs/affine-gfx-group/adapter/index.d.ts +2 -2
  621. package/dist/_pkgs/affine-gfx-group/adapter/index.js +2 -2
  622. package/dist/_pkgs/affine-gfx-group/adapter/markdown/index.js +1 -1
  623. package/dist/_pkgs/affine-gfx-group/adapter/plain-text/index.js +1 -1
  624. package/dist/_pkgs/affine-gfx-group/command/group-api.js +150 -62
  625. package/dist/_pkgs/affine-gfx-group/command/index.d.ts +1 -1
  626. package/dist/_pkgs/affine-gfx-group/command/index.js +1 -1
  627. package/dist/_pkgs/affine-gfx-group/effects.d.ts +1 -1
  628. package/dist/_pkgs/affine-gfx-group/effects.js +1 -1
  629. package/dist/_pkgs/affine-gfx-group/element-view.js +1 -1
  630. package/dist/_pkgs/affine-gfx-group/index.d.ts +6 -6
  631. package/dist/_pkgs/affine-gfx-group/index.js +6 -6
  632. package/dist/_pkgs/affine-gfx-group/store.js +2 -2
  633. package/dist/_pkgs/affine-gfx-group/text/edgeless-group-title-editor.js +5 -2
  634. package/dist/_pkgs/affine-gfx-group/text/text.js +1 -1
  635. package/dist/_pkgs/affine-gfx-group/toolbar/config.js +2 -2
  636. package/dist/_pkgs/affine-gfx-group/view.js +5 -5
  637. package/dist/_pkgs/affine-gfx-link/effects.js +1 -1
  638. package/dist/_pkgs/affine-gfx-link/undo-tool.js +1 -1
  639. package/dist/_pkgs/affine-gfx-link/view.js +2 -2
  640. package/dist/_pkgs/affine-gfx-mindmap/adapter/index.d.ts +2 -2
  641. package/dist/_pkgs/affine-gfx-mindmap/adapter/index.js +2 -2
  642. package/dist/_pkgs/affine-gfx-mindmap/adapter/plain-text/index.js +1 -1
  643. package/dist/_pkgs/affine-gfx-mindmap/effects.d.ts +3 -3
  644. package/dist/_pkgs/affine-gfx-mindmap/effects.js +3 -3
  645. package/dist/_pkgs/affine-gfx-mindmap/index.d.ts +9 -9
  646. package/dist/_pkgs/affine-gfx-mindmap/index.js +9 -9
  647. package/dist/_pkgs/affine-gfx-mindmap/indicator-overlay/index.js +2 -2
  648. package/dist/_pkgs/affine-gfx-mindmap/interactivity/drag-utils.js +2 -2
  649. package/dist/_pkgs/affine-gfx-mindmap/interactivity/index.d.ts +1 -1
  650. package/dist/_pkgs/affine-gfx-mindmap/interactivity/index.js +1 -1
  651. package/dist/_pkgs/affine-gfx-mindmap/interactivity/mind-map-drag.js +4 -4
  652. package/dist/_pkgs/affine-gfx-mindmap/store.js +1 -1
  653. package/dist/_pkgs/affine-gfx-mindmap/toolbar/config.js +1 -1
  654. package/dist/_pkgs/affine-gfx-mindmap/toolbar/senior-tool.js +2 -2
  655. package/dist/_pkgs/affine-gfx-mindmap/view/index.d.ts +4 -4
  656. package/dist/_pkgs/affine-gfx-mindmap/view/index.js +4 -4
  657. package/dist/_pkgs/affine-gfx-mindmap/view/utils.js +2 -2
  658. package/dist/_pkgs/affine-gfx-mindmap/view.js +8 -8
  659. package/dist/_pkgs/affine-gfx-note/components/note-shadow-panel.js +1 -1
  660. package/dist/_pkgs/affine-gfx-note/effects.d.ts +5 -5
  661. package/dist/_pkgs/affine-gfx-note/effects.js +5 -5
  662. package/dist/_pkgs/affine-gfx-note/index.d.ts +3 -3
  663. package/dist/_pkgs/affine-gfx-note/index.js +3 -3
  664. package/dist/_pkgs/affine-gfx-note/note-tool.js +1 -1
  665. package/dist/_pkgs/affine-gfx-note/overlay/index.d.ts +2 -2
  666. package/dist/_pkgs/affine-gfx-note/overlay/index.js +2 -2
  667. package/dist/_pkgs/affine-gfx-note/view.js +3 -3
  668. package/dist/_pkgs/affine-gfx-pointer/effects.js +1 -1
  669. package/dist/_pkgs/affine-gfx-pointer/index.d.ts +1 -1
  670. package/dist/_pkgs/affine-gfx-pointer/index.js +1 -1
  671. package/dist/_pkgs/affine-gfx-pointer/quick-tool/default-tool-button.d.ts +1 -1
  672. package/dist/_pkgs/affine-gfx-pointer/quick-tool/default-tool-button.js +1 -1
  673. package/dist/_pkgs/affine-gfx-pointer/snap/snap-manager.d.ts +1 -1
  674. package/dist/_pkgs/affine-gfx-pointer/tools/pan-tool.d.ts +16 -0
  675. package/dist/_pkgs/affine-gfx-pointer/tools/pan-tool.js +102 -32
  676. package/dist/_pkgs/affine-gfx-pointer/view.js +5 -5
  677. package/dist/_pkgs/affine-gfx-shape/adapter/index.d.ts +3 -3
  678. package/dist/_pkgs/affine-gfx-shape/adapter/index.js +3 -3
  679. package/dist/_pkgs/affine-gfx-shape/adapter/markdown/index.js +1 -1
  680. package/dist/_pkgs/affine-gfx-shape/adapter/plain-text/index.js +1 -1
  681. package/dist/_pkgs/affine-gfx-shape/commands.d.ts +2 -0
  682. package/dist/_pkgs/affine-gfx-shape/commands.js +33 -0
  683. package/dist/_pkgs/affine-gfx-shape/components/shape-panel.d.ts +1 -1
  684. package/dist/_pkgs/affine-gfx-shape/components/shape-panel.js +1 -1
  685. package/dist/_pkgs/affine-gfx-shape/draggable/index.d.ts +4 -4
  686. package/dist/_pkgs/affine-gfx-shape/draggable/index.js +4 -4
  687. package/dist/_pkgs/affine-gfx-shape/draggable/shape-menu.js +3 -3
  688. package/dist/_pkgs/affine-gfx-shape/draggable/shape-tool-element.js +1 -1
  689. package/dist/_pkgs/affine-gfx-shape/effects.d.ts +4 -4
  690. package/dist/_pkgs/affine-gfx-shape/effects.js +4 -4
  691. package/dist/_pkgs/affine-gfx-shape/element-renderer/index.d.ts +2 -2
  692. package/dist/_pkgs/affine-gfx-shape/element-renderer/index.js +2 -2
  693. package/dist/_pkgs/affine-gfx-shape/element-renderer/shape/index.d.ts +1 -1
  694. package/dist/_pkgs/affine-gfx-shape/element-renderer/shape/index.js +1 -1
  695. package/dist/_pkgs/affine-gfx-shape/element-renderer/shape-dom/index.js +49 -20
  696. package/dist/_pkgs/affine-gfx-shape/element-view.d.ts +1 -1
  697. package/dist/_pkgs/affine-gfx-shape/element-view.js +3 -3
  698. package/dist/_pkgs/affine-gfx-shape/index.d.ts +12 -12
  699. package/dist/_pkgs/affine-gfx-shape/index.js +12 -12
  700. package/dist/_pkgs/affine-gfx-shape/overlay/diamond.d.ts +1 -1
  701. package/dist/_pkgs/affine-gfx-shape/overlay/diamond.js +2 -2
  702. package/dist/_pkgs/affine-gfx-shape/overlay/ellipse.d.ts +1 -1
  703. package/dist/_pkgs/affine-gfx-shape/overlay/ellipse.js +2 -2
  704. package/dist/_pkgs/affine-gfx-shape/overlay/factory.d.ts +1 -1
  705. package/dist/_pkgs/affine-gfx-shape/overlay/factory.js +6 -6
  706. package/dist/_pkgs/affine-gfx-shape/overlay/index.d.ts +5 -5
  707. package/dist/_pkgs/affine-gfx-shape/overlay/index.js +5 -5
  708. package/dist/_pkgs/affine-gfx-shape/overlay/polygon.d.ts +1 -1
  709. package/dist/_pkgs/affine-gfx-shape/overlay/polygon.js +2 -2
  710. package/dist/_pkgs/affine-gfx-shape/overlay/rect.d.ts +1 -1
  711. package/dist/_pkgs/affine-gfx-shape/overlay/rect.js +2 -2
  712. package/dist/_pkgs/affine-gfx-shape/overlay/rounded-rect.d.ts +1 -1
  713. package/dist/_pkgs/affine-gfx-shape/overlay/rounded-rect.js +2 -2
  714. package/dist/_pkgs/affine-gfx-shape/overlay/shape-overlay.d.ts +1 -1
  715. package/dist/_pkgs/affine-gfx-shape/overlay/shape-overlay.js +2 -2
  716. package/dist/_pkgs/affine-gfx-shape/overlay/triangle.d.ts +1 -1
  717. package/dist/_pkgs/affine-gfx-shape/overlay/triangle.js +2 -2
  718. package/dist/_pkgs/affine-gfx-shape/store.js +1 -1
  719. package/dist/_pkgs/affine-gfx-shape/text/edgeless-shape-text-editor.d.ts +26 -0
  720. package/dist/_pkgs/affine-gfx-shape/text/edgeless-shape-text-editor.js +124 -13
  721. package/dist/_pkgs/affine-gfx-shape/text/index.d.ts +1 -1
  722. package/dist/_pkgs/affine-gfx-shape/text/index.js +1 -1
  723. package/dist/_pkgs/affine-gfx-shape/toolbar/config.js +6 -6
  724. package/dist/_pkgs/affine-gfx-shape/toolbar/index.d.ts +4 -4
  725. package/dist/_pkgs/affine-gfx-shape/toolbar/index.js +4 -4
  726. package/dist/_pkgs/affine-gfx-shape/toolbar/shape-menu-config.js +1 -1
  727. package/dist/_pkgs/affine-gfx-shape/view.js +10 -10
  728. package/dist/_pkgs/affine-gfx-template/effects.d.ts +4 -4
  729. package/dist/_pkgs/affine-gfx-template/effects.js +4 -4
  730. package/dist/_pkgs/affine-gfx-template/services/template.js +1 -1
  731. package/dist/_pkgs/affine-gfx-template/toolbar/template-tool-button.d.ts +3 -1
  732. package/dist/_pkgs/affine-gfx-template/toolbar/template-tool-button.js +19 -2
  733. package/dist/_pkgs/affine-gfx-template/view.js +3 -3
  734. package/dist/_pkgs/affine-gfx-text/adapter/index.d.ts +2 -2
  735. package/dist/_pkgs/affine-gfx-text/adapter/index.js +2 -2
  736. package/dist/_pkgs/affine-gfx-text/adapter/markdown/index.js +1 -1
  737. package/dist/_pkgs/affine-gfx-text/adapter/plain-text/index.js +1 -1
  738. package/dist/_pkgs/affine-gfx-text/dblclick-add-edgeless-text.js +2 -2
  739. package/dist/_pkgs/affine-gfx-text/edgeless-text-editor.js +10 -6
  740. package/dist/_pkgs/affine-gfx-text/effects.d.ts +2 -2
  741. package/dist/_pkgs/affine-gfx-text/effects.js +2 -2
  742. package/dist/_pkgs/affine-gfx-text/element-renderer/index.d.ts +1 -1
  743. package/dist/_pkgs/affine-gfx-text/element-renderer/index.js +1 -1
  744. package/dist/_pkgs/affine-gfx-text/element-view.js +2 -2
  745. package/dist/_pkgs/affine-gfx-text/index.d.ts +7 -7
  746. package/dist/_pkgs/affine-gfx-text/index.js +7 -7
  747. package/dist/_pkgs/affine-gfx-text/store.js +1 -1
  748. package/dist/_pkgs/affine-gfx-text/tool.js +2 -2
  749. package/dist/_pkgs/affine-gfx-text/toolbar/actions.js +1 -1
  750. package/dist/_pkgs/affine-gfx-text/toolbar/config.js +2 -2
  751. package/dist/_pkgs/affine-gfx-text/toolbar/index.d.ts +2 -2
  752. package/dist/_pkgs/affine-gfx-text/toolbar/index.js +2 -2
  753. package/dist/_pkgs/affine-gfx-text/toolbar/text-menu.d.ts +1 -1
  754. package/dist/_pkgs/affine-gfx-text/toolbar/text-menu.js +1 -1
  755. package/dist/_pkgs/affine-gfx-text/view.js +6 -6
  756. package/dist/_pkgs/affine-gfx-turbo-renderer/index.d.ts +5 -5
  757. package/dist/_pkgs/affine-gfx-turbo-renderer/index.js +5 -5
  758. package/dist/_pkgs/affine-gfx-turbo-renderer/layout/block-layout-provider.d.ts +1 -1
  759. package/dist/_pkgs/affine-gfx-turbo-renderer/painter/painter.worker.d.ts +1 -1
  760. package/dist/_pkgs/affine-gfx-turbo-renderer/renderer-utils.d.ts +1 -1
  761. package/dist/_pkgs/affine-gfx-turbo-renderer/renderer-utils.js +1 -1
  762. package/dist/_pkgs/affine-gfx-turbo-renderer/text-utils.d.ts +1 -1
  763. package/dist/_pkgs/affine-gfx-turbo-renderer/turbo-renderer.d.ts +1 -1
  764. package/dist/_pkgs/affine-gfx-turbo-renderer/turbo-renderer.js +1 -1
  765. package/dist/_pkgs/affine-inline-comment/effects.d.ts +1 -1
  766. package/dist/_pkgs/affine-inline-comment/effects.js +1 -1
  767. package/dist/_pkgs/affine-inline-comment/index.d.ts +2 -2
  768. package/dist/_pkgs/affine-inline-comment/index.js +2 -2
  769. package/dist/_pkgs/affine-inline-comment/inline-comment-manager.js +2 -2
  770. package/dist/_pkgs/affine-inline-comment/inline-spec.js +1 -1
  771. package/dist/_pkgs/affine-inline-comment/view.js +3 -3
  772. package/dist/_pkgs/affine-inline-footnote/adapters/index.d.ts +3 -3
  773. package/dist/_pkgs/affine-inline-footnote/adapters/index.js +3 -3
  774. package/dist/_pkgs/affine-inline-footnote/effects.d.ts +3 -3
  775. package/dist/_pkgs/affine-inline-footnote/effects.js +3 -3
  776. package/dist/_pkgs/affine-inline-footnote/footnote-node/footnote-node.d.ts +2 -2
  777. package/dist/_pkgs/affine-inline-footnote/footnote-node/footnote-popup.d.ts +1 -1
  778. package/dist/_pkgs/affine-inline-footnote/index.d.ts +2 -2
  779. package/dist/_pkgs/affine-inline-footnote/index.js +2 -2
  780. package/dist/_pkgs/affine-inline-footnote/inline-spec.js +1 -1
  781. package/dist/_pkgs/affine-inline-footnote/store.js +1 -1
  782. package/dist/_pkgs/affine-inline-footnote/view.js +2 -2
  783. package/dist/_pkgs/affine-inline-latex/adapters/index.d.ts +3 -3
  784. package/dist/_pkgs/affine-inline-latex/adapters/index.js +3 -3
  785. package/dist/_pkgs/affine-inline-latex/command.js +46 -26
  786. package/dist/_pkgs/affine-inline-latex/effects.d.ts +3 -3
  787. package/dist/_pkgs/affine-inline-latex/effects.js +3 -3
  788. package/dist/_pkgs/affine-inline-latex/index.d.ts +4 -4
  789. package/dist/_pkgs/affine-inline-latex/index.js +4 -4
  790. package/dist/_pkgs/affine-inline-latex/latex-node/latex-editor-menu.js +1 -1
  791. package/dist/_pkgs/affine-inline-latex/latex-node/latex-node.d.ts +10 -0
  792. package/dist/_pkgs/affine-inline-latex/latex-node/latex-node.js +23 -0
  793. package/dist/_pkgs/affine-inline-latex/store.js +1 -1
  794. package/dist/_pkgs/affine-inline-latex/view.js +3 -3
  795. package/dist/_pkgs/affine-inline-link/adapters/index.d.ts +6 -6
  796. package/dist/_pkgs/affine-inline-link/adapters/index.js +6 -6
  797. package/dist/_pkgs/affine-inline-link/adapters/markdown/index.d.ts +2 -2
  798. package/dist/_pkgs/affine-inline-link/adapters/markdown/index.js +2 -2
  799. package/dist/_pkgs/affine-inline-link/command.js +1 -1
  800. package/dist/_pkgs/affine-inline-link/effects.js +2 -2
  801. package/dist/_pkgs/affine-inline-link/index.d.ts +6 -6
  802. package/dist/_pkgs/affine-inline-link/index.js +6 -6
  803. package/dist/_pkgs/affine-inline-link/link-node/affine-link.js +4 -1
  804. package/dist/_pkgs/affine-inline-link/link-node/configs/toolbar.js +2 -2
  805. package/dist/_pkgs/affine-inline-link/link-node/link-popup/link-popup.js +1 -1
  806. package/dist/_pkgs/affine-inline-link/link-node/link-popup/toggle-link-popup.d.ts +1 -1
  807. package/dist/_pkgs/affine-inline-link/link-node/link-popup/toggle-link-popup.js +1 -1
  808. package/dist/_pkgs/affine-inline-link/store.js +1 -1
  809. package/dist/_pkgs/affine-inline-link/view.js +3 -3
  810. package/dist/_pkgs/affine-inline-mention/effects.d.ts +1 -1
  811. package/dist/_pkgs/affine-inline-mention/effects.js +1 -1
  812. package/dist/_pkgs/affine-inline-mention/index.d.ts +3 -3
  813. package/dist/_pkgs/affine-inline-mention/index.js +3 -3
  814. package/dist/_pkgs/affine-inline-mention/view.js +2 -2
  815. package/dist/_pkgs/affine-inline-preset/adapters/extensions.d.ts +5 -5
  816. package/dist/_pkgs/affine-inline-preset/adapters/extensions.js +10 -10
  817. package/dist/_pkgs/affine-inline-preset/adapters/html/html-inline.d.ts +3 -0
  818. package/dist/_pkgs/affine-inline-preset/adapters/html/html-inline.js +29 -1
  819. package/dist/_pkgs/affine-inline-preset/default-inline-manager.js +1 -1
  820. package/dist/_pkgs/affine-inline-preset/effects.d.ts +1 -1
  821. package/dist/_pkgs/affine-inline-preset/effects.js +1 -1
  822. package/dist/_pkgs/affine-inline-preset/index.d.ts +6 -6
  823. package/dist/_pkgs/affine-inline-preset/index.js +6 -6
  824. package/dist/_pkgs/affine-inline-preset/store.js +1 -1
  825. package/dist/_pkgs/affine-inline-preset/view.js +4 -4
  826. package/dist/_pkgs/affine-inline-reference/adapters/index.d.ts +3 -3
  827. package/dist/_pkgs/affine-inline-reference/adapters/index.js +3 -3
  828. package/dist/_pkgs/affine-inline-reference/effects.d.ts +1 -1
  829. package/dist/_pkgs/affine-inline-reference/effects.js +1 -1
  830. package/dist/_pkgs/affine-inline-reference/index.d.ts +5 -5
  831. package/dist/_pkgs/affine-inline-reference/index.js +5 -5
  832. package/dist/_pkgs/affine-inline-reference/inline-spec.js +1 -1
  833. package/dist/_pkgs/affine-inline-reference/reference-node/configs/toolbar.js +1 -1
  834. package/dist/_pkgs/affine-inline-reference/reference-node/index.d.ts +6 -6
  835. package/dist/_pkgs/affine-inline-reference/reference-node/index.js +5 -5
  836. package/dist/_pkgs/affine-inline-reference/reference-node/reference-config.d.ts +1 -1
  837. package/dist/_pkgs/affine-inline-reference/reference-node/reference-node.d.ts +2 -2
  838. package/dist/_pkgs/affine-inline-reference/reference-node/reference-node.js +1 -1
  839. package/dist/_pkgs/affine-inline-reference/reference-node/reference-popup/toggle-reference-popup.d.ts +1 -1
  840. package/dist/_pkgs/affine-inline-reference/reference-node/reference-popup/toggle-reference-popup.js +1 -1
  841. package/dist/_pkgs/affine-inline-reference/store.js +1 -1
  842. package/dist/_pkgs/affine-inline-reference/toolbar.js +1 -1
  843. package/dist/_pkgs/affine-inline-reference/view.js +4 -4
  844. package/dist/_pkgs/affine-model/blocks/callout/callout-model.d.ts +1 -1
  845. package/dist/_pkgs/affine-model/blocks/code/code-model.d.ts +2 -1
  846. package/dist/_pkgs/affine-model/blocks/code/code-model.js +1 -0
  847. package/dist/_pkgs/affine-model/blocks/edgeless-text/edgeless-text-model.d.ts +1 -1
  848. package/dist/_pkgs/affine-model/blocks/edgeless-text/edgeless-text-model.js +3 -3
  849. package/dist/_pkgs/affine-model/blocks/embed/iframe/iframe-schema.d.ts +2 -2
  850. package/dist/_pkgs/affine-model/blocks/embed/iframe/iframe-schema.js +1 -1
  851. package/dist/_pkgs/affine-model/blocks/embed/iframe/index.d.ts +2 -2
  852. package/dist/_pkgs/affine-model/blocks/embed/iframe/index.js +2 -2
  853. package/dist/_pkgs/affine-model/blocks/embed/index.d.ts +9 -9
  854. package/dist/_pkgs/affine-model/blocks/embed/index.js +9 -9
  855. package/dist/_pkgs/affine-model/blocks/embed/types.d.ts +9 -9
  856. package/dist/_pkgs/affine-model/blocks/embed/types.js +6 -6
  857. package/dist/_pkgs/affine-model/blocks/index.d.ts +1 -1
  858. package/dist/_pkgs/affine-model/blocks/index.js +1 -1
  859. package/dist/_pkgs/affine-model/blocks/list/list-model.d.ts +1 -1
  860. package/dist/_pkgs/affine-model/blocks/note/note-model.d.ts +2 -2
  861. package/dist/_pkgs/affine-model/blocks/note/note-model.js +2 -2
  862. package/dist/_pkgs/affine-model/blocks/paragraph/paragraph-model.d.ts +1 -1
  863. package/dist/_pkgs/affine-model/blocks/table/index.d.ts +1 -1
  864. package/dist/_pkgs/affine-model/blocks/table/index.js +1 -1
  865. package/dist/_pkgs/affine-model/blocks/table/table-model.d.ts +1 -1
  866. package/dist/_pkgs/affine-model/elements/brush/brush.d.ts +1 -1
  867. package/dist/_pkgs/affine-model/elements/brush/brush.js +1 -1
  868. package/dist/_pkgs/affine-model/elements/connector/connector.d.ts +2 -2
  869. package/dist/_pkgs/affine-model/elements/connector/connector.js +26 -2
  870. package/dist/_pkgs/affine-model/elements/connector/local-connector.d.ts +2 -2
  871. package/dist/_pkgs/affine-model/elements/connector/local-connector.js +2 -2
  872. package/dist/_pkgs/affine-model/elements/edgy/board.d.ts +32 -0
  873. package/dist/_pkgs/affine-model/elements/edgy/board.js +112 -0
  874. package/dist/_pkgs/affine-model/elements/edgy/facets.d.ts +12 -0
  875. package/dist/_pkgs/affine-model/elements/edgy/facets.js +25 -1
  876. package/dist/_pkgs/affine-model/elements/edgy/index.d.ts +1 -0
  877. package/dist/_pkgs/affine-model/elements/edgy/index.js +1 -0
  878. package/dist/_pkgs/affine-model/elements/framework-background/background.d.ts +42 -0
  879. package/dist/_pkgs/affine-model/elements/framework-background/background.js +42 -0
  880. package/dist/_pkgs/affine-model/elements/framework-background/index.d.ts +1 -0
  881. package/dist/_pkgs/affine-model/elements/framework-background/index.js +1 -0
  882. package/dist/_pkgs/affine-model/elements/highlighter/highlighter.d.ts +1 -1
  883. package/dist/_pkgs/affine-model/elements/highlighter/highlighter.js +2 -2
  884. package/dist/_pkgs/affine-model/elements/highlighter/index.d.ts +1 -1
  885. package/dist/_pkgs/affine-model/elements/highlighter/index.js +1 -1
  886. package/dist/_pkgs/affine-model/elements/index.d.ts +3 -1
  887. package/dist/_pkgs/affine-model/elements/index.js +1 -0
  888. package/dist/_pkgs/affine-model/elements/mindmap/index.d.ts +3 -3
  889. package/dist/_pkgs/affine-model/elements/mindmap/index.js +3 -3
  890. package/dist/_pkgs/affine-model/elements/mindmap/mindmap.js +10 -5
  891. package/dist/_pkgs/affine-model/elements/mindmap/snapshot/index.d.ts +2 -2
  892. package/dist/_pkgs/affine-model/elements/mindmap/snapshot/index.js +2 -2
  893. package/dist/_pkgs/affine-model/elements/mindmap/snapshot/utils.d.ts +1 -1
  894. package/dist/_pkgs/affine-model/elements/mindmap/style.d.ts +10 -0
  895. package/dist/_pkgs/affine-model/elements/mindmap/style.js +10 -2
  896. package/dist/_pkgs/affine-model/elements/text/text.d.ts +2 -2
  897. package/dist/_pkgs/affine-model/elements/text/text.js +2 -2
  898. package/dist/_pkgs/affine-model/elements/wardley/wardley.d.ts +21 -29
  899. package/dist/_pkgs/affine-model/elements/wardley/wardley.js +41 -48
  900. package/dist/_pkgs/affine-model/themes/default.d.ts +1 -1
  901. package/dist/_pkgs/affine-model/themes/default.js +1 -1
  902. package/dist/_pkgs/affine-model/themes/index.d.ts +4 -4
  903. package/dist/_pkgs/affine-model/themes/index.js +4 -4
  904. package/dist/_pkgs/affine-model/themes/types.js +1 -1
  905. package/dist/_pkgs/affine-model/themes/utils.d.ts +2 -2
  906. package/dist/_pkgs/affine-model/utils/helper.d.ts +1 -1
  907. package/dist/_pkgs/affine-model/utils/types.d.ts +1 -1
  908. package/dist/_pkgs/affine-rich-text/index.d.ts +4 -4
  909. package/dist/_pkgs/affine-rich-text/index.js +4 -4
  910. package/dist/_pkgs/affine-rich-text/utils.js +1 -1
  911. package/dist/_pkgs/affine-shared/adapters/attachment.js +1 -1
  912. package/dist/_pkgs/affine-shared/adapters/clipboard/index.d.ts +2 -2
  913. package/dist/_pkgs/affine-shared/adapters/clipboard/index.js +2 -2
  914. package/dist/_pkgs/affine-shared/adapters/html/html.d.ts +3 -3
  915. package/dist/_pkgs/affine-shared/adapters/html/html.js +5 -5
  916. package/dist/_pkgs/affine-shared/adapters/html/rehype-plugins/index.d.ts +2 -2
  917. package/dist/_pkgs/affine-shared/adapters/html/rehype-plugins/index.js +2 -2
  918. package/dist/_pkgs/affine-shared/adapters/html/rehype-plugins/inline-to-block.js +1 -1
  919. package/dist/_pkgs/affine-shared/adapters/html/rehype-plugins/wrap-inline-element.js +1 -1
  920. package/dist/_pkgs/affine-shared/adapters/image.js +1 -1
  921. package/dist/_pkgs/affine-shared/adapters/index.d.ts +12 -12
  922. package/dist/_pkgs/affine-shared/adapters/index.js +12 -12
  923. package/dist/_pkgs/affine-shared/adapters/markdown/delta-converter.d.ts +6 -1
  924. package/dist/_pkgs/affine-shared/adapters/markdown/delta-converter.js +160 -2
  925. package/dist/_pkgs/affine-shared/adapters/markdown/markdown.d.ts +5 -5
  926. package/dist/_pkgs/affine-shared/adapters/markdown/markdown.js +11 -7
  927. package/dist/_pkgs/affine-shared/adapters/markdown/preprocessor.d.ts +2 -2
  928. package/dist/_pkgs/affine-shared/adapters/markdown/preprocessor.js +1 -1
  929. package/dist/_pkgs/affine-shared/adapters/markdown/remark-plugins/index.d.ts +1 -1
  930. package/dist/_pkgs/affine-shared/adapters/markdown/remark-plugins/index.js +1 -1
  931. package/dist/_pkgs/affine-shared/adapters/middlewares/index.d.ts +12 -12
  932. package/dist/_pkgs/affine-shared/adapters/middlewares/index.js +12 -12
  933. package/dist/_pkgs/affine-shared/adapters/middlewares/paste.js +4 -4
  934. package/dist/_pkgs/affine-shared/adapters/middlewares/proxy.js +1 -1
  935. package/dist/_pkgs/affine-shared/adapters/middlewares/replace-id.js +1 -1
  936. package/dist/_pkgs/affine-shared/adapters/mix-text.js +2 -2
  937. package/dist/_pkgs/affine-shared/adapters/notion-html/delta-converter.js +1 -1
  938. package/dist/_pkgs/affine-shared/adapters/notion-html/notion-html.d.ts +2 -2
  939. package/dist/_pkgs/affine-shared/adapters/notion-html/notion-html.js +4 -4
  940. package/dist/_pkgs/affine-shared/adapters/notion-text.js +1 -1
  941. package/dist/_pkgs/affine-shared/adapters/plain-text/plain-text.d.ts +3 -3
  942. package/dist/_pkgs/affine-shared/adapters/plain-text/plain-text.js +3 -3
  943. package/dist/_pkgs/affine-shared/adapters/types/delta-converter.d.ts +2 -1
  944. package/dist/_pkgs/affine-shared/adapters/utils/color.d.ts +24 -0
  945. package/dist/_pkgs/affine-shared/adapters/utils/color.js +280 -0
  946. package/dist/_pkgs/affine-shared/adapters/utils/index.d.ts +1 -0
  947. package/dist/_pkgs/affine-shared/adapters/utils/index.js +1 -0
  948. package/dist/_pkgs/affine-shared/adapters/utils/text.js +1 -1
  949. package/dist/_pkgs/affine-shared/commands/block-crud/get-selected-blocks.js +10 -2
  950. package/dist/_pkgs/affine-shared/commands/model-crud/duplicate-selected-model.js +1 -1
  951. package/dist/_pkgs/affine-shared/commands/model-crud/get-selected-models.js +2 -2
  952. package/dist/_pkgs/affine-shared/commands/model-crud/replace-selected-text-with-blocks.js +1 -1
  953. package/dist/_pkgs/affine-shared/commands/selection/get-block-selections.d.ts +1 -1
  954. package/dist/_pkgs/affine-shared/commands/selection/get-surface-selection.d.ts +1 -1
  955. package/dist/_pkgs/affine-shared/commands/selection/get-text-selection.d.ts +1 -1
  956. package/dist/_pkgs/affine-shared/commands/selection/index.d.ts +6 -6
  957. package/dist/_pkgs/affine-shared/commands/selection/index.js +6 -6
  958. package/dist/_pkgs/affine-shared/commands/selection/is-nothing-selected.d.ts +1 -1
  959. package/dist/_pkgs/affine-shared/commands/selection/is-nothing-selected.js +1 -1
  960. package/dist/_pkgs/affine-shared/commands/selection/types.d.ts +1 -1
  961. package/dist/_pkgs/affine-shared/services/audit-service.d.ts +300 -0
  962. package/dist/_pkgs/affine-shared/services/audit-service.js +228 -0
  963. package/dist/_pkgs/affine-shared/services/block-meta-service.js +2 -2
  964. package/dist/_pkgs/affine-shared/services/citation-service/citation-service.d.ts +2 -2
  965. package/dist/_pkgs/affine-shared/services/citation-service/citation-service.js +2 -2
  966. package/dist/_pkgs/affine-shared/services/citation-service/index.d.ts +1 -1
  967. package/dist/_pkgs/affine-shared/services/citation-service/index.js +1 -1
  968. package/dist/_pkgs/affine-shared/services/comment-service/block-comment-manager.d.ts +1 -1
  969. package/dist/_pkgs/affine-shared/services/comment-service/block-comment-manager.js +5 -5
  970. package/dist/_pkgs/affine-shared/services/comment-service/index.d.ts +3 -3
  971. package/dist/_pkgs/affine-shared/services/comment-service/index.js +3 -3
  972. package/dist/_pkgs/affine-shared/services/comment-service/utils.d.ts +2 -2
  973. package/dist/_pkgs/affine-shared/services/comment-service/utils.js +1 -1
  974. package/dist/_pkgs/affine-shared/services/edit-props-store.d.ts +7 -0
  975. package/dist/_pkgs/affine-shared/services/edit-props-store.js +13 -2
  976. package/dist/_pkgs/affine-shared/services/embed-iframe/embed-iframe-service.d.ts +1 -1
  977. package/dist/_pkgs/affine-shared/services/embed-iframe/embed-iframe-service.js +1 -1
  978. package/dist/_pkgs/affine-shared/services/embed-iframe/index.d.ts +2 -2
  979. package/dist/_pkgs/affine-shared/services/embed-iframe/index.js +2 -2
  980. package/dist/_pkgs/affine-shared/services/font-loader/font-loader-service.d.ts +26 -1
  981. package/dist/_pkgs/affine-shared/services/font-loader/font-loader-service.js +124 -7
  982. package/dist/_pkgs/affine-shared/services/index.d.ts +37 -32
  983. package/dist/_pkgs/affine-shared/services/index.js +37 -32
  984. package/dist/_pkgs/affine-shared/services/link-preview-service/index.d.ts +3 -3
  985. package/dist/_pkgs/affine-shared/services/link-preview-service/index.js +3 -3
  986. package/dist/_pkgs/affine-shared/services/link-preview-service/link-preview-cache.js +2 -2
  987. package/dist/_pkgs/affine-shared/services/link-preview-service/link-preview-service.d.ts +1 -1
  988. package/dist/_pkgs/affine-shared/services/link-preview-service/link-preview-service.js +3 -3
  989. package/dist/_pkgs/affine-shared/services/page-viewport-service.d.ts +1 -1
  990. package/dist/_pkgs/affine-shared/services/pivot-materiality-publisher.d.ts +129 -0
  991. package/dist/_pkgs/affine-shared/services/pivot-materiality-publisher.js +311 -0
  992. package/dist/_pkgs/affine-shared/services/pivot-properties-service.d.ts +217 -0
  993. package/dist/_pkgs/affine-shared/services/pivot-properties-service.js +114 -0
  994. package/dist/_pkgs/affine-shared/services/telemetry-service/citation.d.ts +1 -1
  995. package/dist/_pkgs/affine-shared/services/telemetry-service/code-block.d.ts +1 -1
  996. package/dist/_pkgs/affine-shared/services/telemetry-service/lifecycle.d.ts +182 -0
  997. package/dist/_pkgs/affine-shared/services/telemetry-service/telemetry-service.d.ts +2 -2
  998. package/dist/_pkgs/affine-shared/services/telemetry-service/types.d.ts +6 -1
  999. package/dist/_pkgs/affine-shared/services/theme-service.js +1 -1
  1000. package/dist/_pkgs/affine-shared/services/toolbar-service/action.d.ts +11 -1
  1001. package/dist/_pkgs/affine-shared/services/toolbar-service/config.d.ts +2 -2
  1002. package/dist/_pkgs/affine-shared/services/toolbar-service/context.d.ts +6 -6
  1003. package/dist/_pkgs/affine-shared/services/toolbar-service/context.js +6 -6
  1004. package/dist/_pkgs/affine-shared/services/toolbar-service/index.d.ts +7 -6
  1005. package/dist/_pkgs/affine-shared/services/toolbar-service/index.js +7 -6
  1006. package/dist/_pkgs/affine-shared/services/toolbar-service/layout.d.ts +134 -0
  1007. package/dist/_pkgs/affine-shared/services/toolbar-service/layout.js +146 -0
  1008. package/dist/_pkgs/affine-shared/services/toolbar-service/module.d.ts +1 -1
  1009. package/dist/_pkgs/affine-shared/services/toolbar-service/registry.d.ts +4 -4
  1010. package/dist/_pkgs/affine-shared/services/toolbar-service/registry.js +1 -1
  1011. package/dist/_pkgs/affine-shared/services/translation-service/index.d.ts +68 -0
  1012. package/dist/_pkgs/affine-shared/services/translation-service/index.js +39 -0
  1013. package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.d.ts +155 -0
  1014. package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.js +254 -0
  1015. package/dist/_pkgs/affine-shared/services/user-service/index.d.ts +4 -4
  1016. package/dist/_pkgs/affine-shared/services/user-service/index.js +4 -4
  1017. package/dist/_pkgs/affine-shared/services/user-service/user-list-service.d.ts +1 -1
  1018. package/dist/_pkgs/affine-shared/services/user-service/user-service.d.ts +1 -1
  1019. package/dist/_pkgs/affine-shared/services/user-service/writer-info-service.d.ts +1 -1
  1020. package/dist/_pkgs/affine-shared/services/viewport-element-service.d.ts +1 -1
  1021. package/dist/_pkgs/affine-shared/styles/index.d.ts +4 -4
  1022. package/dist/_pkgs/affine-shared/styles/index.js +4 -4
  1023. package/dist/_pkgs/affine-shared/styles/panel.js +2 -2
  1024. package/dist/_pkgs/affine-shared/styles/text.d.ts +1 -1
  1025. package/dist/_pkgs/affine-shared/test-utils/affine-template.js +1 -1
  1026. package/dist/_pkgs/affine-shared/test-utils/index.d.ts +3 -3
  1027. package/dist/_pkgs/affine-shared/test-utils/index.js +3 -3
  1028. package/dist/_pkgs/affine-shared/types/index.d.ts +1 -1
  1029. package/dist/_pkgs/affine-shared/types/index.js +1 -1
  1030. package/dist/_pkgs/affine-shared/utils/computing.js +2 -2
  1031. package/dist/_pkgs/affine-shared/utils/dom/point-to-range.d.ts +4 -0
  1032. package/dist/_pkgs/affine-shared/utils/dom/point-to-range.js +58 -2
  1033. package/dist/_pkgs/affine-shared/utils/dom/viewport.d.ts +60 -0
  1034. package/dist/_pkgs/affine-shared/utils/dom/viewport.js +58 -0
  1035. package/dist/_pkgs/affine-shared/utils/drag-helper/cell-select.d.ts +1 -1
  1036. package/dist/_pkgs/affine-shared/utils/drag-helper/index.d.ts +3 -3
  1037. package/dist/_pkgs/affine-shared/utils/drag-helper/index.js +3 -3
  1038. package/dist/_pkgs/affine-shared/utils/drag-helper/linear-move.d.ts +1 -1
  1039. package/dist/_pkgs/affine-shared/utils/index.d.ts +27 -27
  1040. package/dist/_pkgs/affine-shared/utils/index.js +27 -27
  1041. package/dist/_pkgs/affine-shared/utils/popper-position.js +1 -1
  1042. package/dist/_pkgs/affine-shared/utils/print-to-pdf.d.ts +21 -0
  1043. package/dist/_pkgs/affine-shared/utils/print-to-pdf.js +166 -32
  1044. package/dist/_pkgs/affine-shared/utils/reference.js +1 -1
  1045. package/dist/_pkgs/affine-shared/utils/virtual-padding.js +1 -1
  1046. package/dist/_pkgs/affine-shared/utils/zod-schema.d.ts +7 -0
  1047. package/dist/_pkgs/affine-shared/utils/zod-schema.js +27 -1
  1048. package/dist/_pkgs/affine-widget-drag-handle/effects.js +3 -3
  1049. package/dist/_pkgs/affine-widget-drag-handle/index.d.ts +4 -4
  1050. package/dist/_pkgs/affine-widget-drag-handle/index.js +4 -4
  1051. package/dist/_pkgs/affine-widget-drag-handle/view.js +2 -2
  1052. package/dist/_pkgs/affine-widget-drag-handle/watchers/drag-event-watcher.js +3 -3
  1053. package/dist/_pkgs/affine-widget-drag-handle/watchers/edgeless-watcher.d.ts +19 -10
  1054. package/dist/_pkgs/affine-widget-drag-handle/watchers/edgeless-watcher.js +122 -23
  1055. package/dist/_pkgs/affine-widget-drag-handle/watchers/pointer-event-watcher.d.ts +2 -0
  1056. package/dist/_pkgs/affine-widget-drag-handle/watchers/pointer-event-watcher.js +26 -5
  1057. package/dist/_pkgs/affine-widget-edgeless-auto-connect/effects.js +1 -1
  1058. package/dist/_pkgs/affine-widget-edgeless-auto-connect/view.js +2 -2
  1059. package/dist/_pkgs/affine-widget-edgeless-dragging-area/effects.js +1 -1
  1060. package/dist/_pkgs/affine-widget-edgeless-dragging-area/index.d.ts +1 -1
  1061. package/dist/_pkgs/affine-widget-edgeless-dragging-area/index.js +1 -1
  1062. package/dist/_pkgs/affine-widget-edgeless-dragging-area/view.js +2 -2
  1063. package/dist/_pkgs/affine-widget-edgeless-selected-rect/auto-complete-panel.js +10 -5
  1064. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-auto-complete.d.ts +15 -1
  1065. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-auto-complete.js +37 -32
  1066. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-element-link.js +5 -4
  1067. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-selected-rect.js +19 -9
  1068. package/dist/_pkgs/affine-widget-edgeless-selected-rect/effects.js +4 -4
  1069. package/dist/_pkgs/affine-widget-edgeless-selected-rect/index.d.ts +1 -1
  1070. package/dist/_pkgs/affine-widget-edgeless-selected-rect/index.js +1 -1
  1071. package/dist/_pkgs/affine-widget-edgeless-selected-rect/spec.js +2 -2
  1072. package/dist/_pkgs/affine-widget-edgeless-selected-rect/utils.d.ts +16 -2
  1073. package/dist/_pkgs/affine-widget-edgeless-selected-rect/utils.js +19 -2
  1074. package/dist/_pkgs/affine-widget-edgeless-selected-rect/view.js +2 -2
  1075. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/utils.d.ts +1 -1
  1076. package/dist/_pkgs/affine-widget-edgeless-toolbar/edgeless-toolbar.js +1 -1
  1077. package/dist/_pkgs/affine-widget-edgeless-toolbar/effects.d.ts +7 -7
  1078. package/dist/_pkgs/affine-widget-edgeless-toolbar/effects.js +7 -7
  1079. package/dist/_pkgs/affine-widget-edgeless-toolbar/index.d.ts +8 -7
  1080. package/dist/_pkgs/affine-widget-edgeless-toolbar/index.js +8 -7
  1081. package/dist/_pkgs/affine-widget-edgeless-toolbar/menu/command-menu.d.ts +38 -0
  1082. package/dist/_pkgs/affine-widget-edgeless-toolbar/menu/command-menu.js +99 -0
  1083. package/dist/_pkgs/affine-widget-edgeless-toolbar/menu/slide-menu.d.ts +1 -1
  1084. package/dist/_pkgs/affine-widget-edgeless-toolbar/menu/slide-menu.js +1 -1
  1085. package/dist/_pkgs/affine-widget-edgeless-toolbar/mixins/index.d.ts +3 -3
  1086. package/dist/_pkgs/affine-widget-edgeless-toolbar/mixins/index.js +3 -3
  1087. package/dist/_pkgs/affine-widget-edgeless-toolbar/mixins/tool.mixin.d.ts +3 -3
  1088. package/dist/_pkgs/affine-widget-edgeless-toolbar/mixins/tool.mixin.js +2 -2
  1089. package/dist/_pkgs/affine-widget-edgeless-toolbar/view.js +2 -2
  1090. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/effects.js +3 -3
  1091. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/view.js +2 -2
  1092. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/zoom-toolbar.js +1 -1
  1093. package/dist/_pkgs/affine-widget-frame-title/edgeless-frame-title-editor.js +6 -3
  1094. package/dist/_pkgs/affine-widget-frame-title/mount-frame-title-editor.js +1 -1
  1095. package/dist/_pkgs/affine-widget-frame-title/view.js +2 -2
  1096. package/dist/_pkgs/affine-widget-keyboard-toolbar/icons.js +98 -98
  1097. package/dist/_pkgs/affine-widget-keyboard-toolbar/keyboard-toolbar.d.ts +2 -2
  1098. package/dist/_pkgs/affine-widget-keyboard-toolbar/keyboard-toolbar.js +3 -3
  1099. package/dist/_pkgs/affine-widget-keyboard-toolbar/view.js +2 -2
  1100. package/dist/_pkgs/affine-widget-linked-doc/config.d.ts +1 -1
  1101. package/dist/_pkgs/affine-widget-linked-doc/index.d.ts +4 -4
  1102. package/dist/_pkgs/affine-widget-linked-doc/index.js +4 -4
  1103. package/dist/_pkgs/affine-widget-linked-doc/linked-doc-popover.js +3 -16
  1104. package/dist/_pkgs/affine-widget-linked-doc/transformers/markdown.d.ts +10 -1
  1105. package/dist/_pkgs/affine-widget-linked-doc/transformers/markdown.js +133 -6
  1106. package/dist/_pkgs/affine-widget-linked-doc/transformers/utils.d.ts +10 -0
  1107. package/dist/_pkgs/affine-widget-linked-doc/transformers/utils.js +120 -3
  1108. package/dist/_pkgs/affine-widget-linked-doc/utils.d.ts +12 -0
  1109. package/dist/_pkgs/affine-widget-linked-doc/utils.js +33 -0
  1110. package/dist/_pkgs/affine-widget-linked-doc/view.d.ts +1 -1
  1111. package/dist/_pkgs/affine-widget-linked-doc/view.js +3 -3
  1112. package/dist/_pkgs/affine-widget-note-slicer/effects.js +1 -1
  1113. package/dist/_pkgs/affine-widget-note-slicer/index.d.ts +1 -1
  1114. package/dist/_pkgs/affine-widget-note-slicer/index.js +1 -1
  1115. package/dist/_pkgs/affine-widget-note-slicer/view.js +2 -2
  1116. package/dist/_pkgs/affine-widget-page-dragging-area/effects.js +1 -1
  1117. package/dist/_pkgs/affine-widget-page-dragging-area/index.d.ts +1 -1
  1118. package/dist/_pkgs/affine-widget-page-dragging-area/index.js +1 -1
  1119. package/dist/_pkgs/affine-widget-page-dragging-area/view.js +2 -2
  1120. package/dist/_pkgs/affine-widget-remote-selection/doc/doc-remote-selection.js +3 -3
  1121. package/dist/_pkgs/affine-widget-remote-selection/edgeless/index.js +7 -5
  1122. package/dist/_pkgs/affine-widget-remote-selection/effects.js +3 -3
  1123. package/dist/_pkgs/affine-widget-remote-selection/index.d.ts +2 -2
  1124. package/dist/_pkgs/affine-widget-remote-selection/index.js +4 -4
  1125. package/dist/_pkgs/affine-widget-remote-selection/manager/remote-color-manager.js +1 -1
  1126. package/dist/_pkgs/affine-widget-remote-selection/view.js +2 -2
  1127. package/dist/_pkgs/affine-widget-scroll-anchoring/view.js +2 -2
  1128. package/dist/_pkgs/affine-widget-slash-menu/config.d.ts +1 -1
  1129. package/dist/_pkgs/affine-widget-slash-menu/config.js +2 -2
  1130. package/dist/_pkgs/affine-widget-slash-menu/effects.d.ts +2 -2
  1131. package/dist/_pkgs/affine-widget-slash-menu/effects.js +3 -3
  1132. package/dist/_pkgs/affine-widget-slash-menu/extensions.d.ts +1 -1
  1133. package/dist/_pkgs/affine-widget-slash-menu/extensions.js +3 -3
  1134. package/dist/_pkgs/affine-widget-slash-menu/index.d.ts +3 -3
  1135. package/dist/_pkgs/affine-widget-slash-menu/index.js +3 -3
  1136. package/dist/_pkgs/affine-widget-slash-menu/slash-menu-popover.js +10 -6
  1137. package/dist/_pkgs/affine-widget-slash-menu/tooltips/index.d.ts +1 -1
  1138. package/dist/_pkgs/affine-widget-slash-menu/tooltips/index.js +8 -8
  1139. package/dist/_pkgs/affine-widget-slash-menu/utils.d.ts +10 -1
  1140. package/dist/_pkgs/affine-widget-slash-menu/utils.js +24 -0
  1141. package/dist/_pkgs/affine-widget-slash-menu/view.js +2 -2
  1142. package/dist/_pkgs/affine-widget-slash-menu/widget.d.ts +1 -1
  1143. package/dist/_pkgs/affine-widget-slash-menu/widget.js +5 -5
  1144. package/dist/_pkgs/affine-widget-toolbar/effects.d.ts +1 -1
  1145. package/dist/_pkgs/affine-widget-toolbar/effects.js +1 -1
  1146. package/dist/_pkgs/affine-widget-toolbar/index.d.ts +1 -1
  1147. package/dist/_pkgs/affine-widget-toolbar/index.js +2 -2
  1148. package/dist/_pkgs/affine-widget-toolbar/toolbar.d.ts +6 -0
  1149. package/dist/_pkgs/affine-widget-toolbar/toolbar.js +37 -9
  1150. package/dist/_pkgs/affine-widget-toolbar/utils.d.ts +146 -3
  1151. package/dist/_pkgs/affine-widget-toolbar/utils.js +743 -61
  1152. package/dist/_pkgs/affine-widget-toolbar/view.js +2 -2
  1153. package/dist/_pkgs/affine-widget-viewport-overlay/effects.js +1 -1
  1154. package/dist/_pkgs/affine-widget-viewport-overlay/view.js +2 -2
  1155. package/dist/_pkgs/data-view/core/common/property-menu.js +3 -16
  1156. package/dist/_pkgs/data-view/core/component/tags/multi-tag-select.d.ts +4 -0
  1157. package/dist/_pkgs/data-view/core/component/tags/multi-tag-select.js +28 -1
  1158. package/dist/_pkgs/data-view/core/data-view.d.ts +3 -1
  1159. package/dist/_pkgs/data-view/core/data-view.js +25 -3
  1160. package/dist/_pkgs/data-view/core/detail/field.js +2 -2
  1161. package/dist/_pkgs/data-view/core/detail/selection.d.ts +5 -3
  1162. package/dist/_pkgs/data-view/core/detail/selection.js +23 -7
  1163. package/dist/_pkgs/data-view/core/effect.js +2 -0
  1164. package/dist/_pkgs/data-view/core/filter/eval.js +36 -23
  1165. package/dist/_pkgs/data-view/core/filter/filter-fn/matcher.d.ts +7 -0
  1166. package/dist/_pkgs/data-view/core/filter/filter-fn/matcher.js +12 -0
  1167. package/dist/_pkgs/data-view/core/group-by/compare-date-keys.d.ts +11 -0
  1168. package/dist/_pkgs/data-view/core/group-by/compare-date-keys.js +55 -0
  1169. package/dist/_pkgs/data-view/core/group-by/define.d.ts +6 -0
  1170. package/dist/_pkgs/data-view/core/group-by/define.js +114 -0
  1171. package/dist/_pkgs/data-view/core/group-by/matcher.d.ts +7 -0
  1172. package/dist/_pkgs/data-view/core/group-by/matcher.js +13 -0
  1173. package/dist/_pkgs/data-view/core/group-by/renderer/boolean-group.js +11 -11
  1174. package/dist/_pkgs/data-view/core/group-by/renderer/date-group.d.ts +9 -0
  1175. package/dist/_pkgs/data-view/core/group-by/renderer/date-group.js +97 -0
  1176. package/dist/_pkgs/data-view/core/group-by/setting.js +86 -7
  1177. package/dist/_pkgs/data-view/core/group-by/trait.d.ts +34 -0
  1178. package/dist/_pkgs/data-view/core/group-by/trait.js +106 -10
  1179. package/dist/_pkgs/data-view/core/index.d.ts +1 -1
  1180. package/dist/_pkgs/data-view/core/index.js +1 -1
  1181. package/dist/_pkgs/data-view/core/property/utils.d.ts +2 -2
  1182. package/dist/_pkgs/data-view/core/types.d.ts +1 -1
  1183. package/dist/_pkgs/data-view/core/utils/menu-title.js +17 -17
  1184. package/dist/_pkgs/data-view/core/view-manager/index.d.ts +3 -3
  1185. package/dist/_pkgs/data-view/core/view-manager/index.js +3 -3
  1186. package/dist/_pkgs/data-view/property-presets/multi-select/cell-renderer.js +3 -1
  1187. package/dist/_pkgs/data-view/property-presets/number/define.js +2 -1
  1188. package/dist/_pkgs/data-view/property-presets/select/cell-renderer.js +3 -1
  1189. package/dist/_pkgs/data-view/view-presets/calendar/calendar-view-manager.d.ts +70 -0
  1190. package/dist/_pkgs/data-view/view-presets/calendar/calendar-view-manager.js +449 -0
  1191. package/dist/_pkgs/data-view/view-presets/calendar/define.d.ts +10 -0
  1192. package/dist/_pkgs/data-view/view-presets/calendar/define.js +27 -0
  1193. package/dist/_pkgs/data-view/view-presets/calendar/effect.d.ts +1 -0
  1194. package/dist/_pkgs/data-view/view-presets/calendar/effect.js +4 -0
  1195. package/dist/_pkgs/data-view/view-presets/calendar/index.d.ts +6 -0
  1196. package/dist/_pkgs/data-view/view-presets/calendar/index.js +6 -0
  1197. package/dist/_pkgs/data-view/view-presets/calendar/layout.d.ts +37 -0
  1198. package/dist/_pkgs/data-view/view-presets/calendar/layout.js +138 -0
  1199. package/dist/_pkgs/data-view/view-presets/calendar/pc/actions.d.ts +7 -0
  1200. package/dist/_pkgs/data-view/view-presets/calendar/pc/actions.js +68 -0
  1201. package/dist/_pkgs/data-view/view-presets/calendar/pc/dnd.d.ts +32 -0
  1202. package/dist/_pkgs/data-view/view-presets/calendar/pc/dnd.js +159 -0
  1203. package/dist/_pkgs/data-view/view-presets/calendar/pc/effect.d.ts +1 -0
  1204. package/dist/_pkgs/data-view/view-presets/calendar/pc/effect.js +7 -0
  1205. package/dist/_pkgs/data-view/view-presets/calendar/pc/hit-test.d.ts +1 -0
  1206. package/dist/_pkgs/data-view/view-presets/calendar/pc/hit-test.js +28 -0
  1207. package/dist/_pkgs/data-view/view-presets/calendar/pc/styles.d.ts +1 -0
  1208. package/dist/_pkgs/data-view/view-presets/calendar/pc/styles.js +707 -0
  1209. package/dist/_pkgs/data-view/view-presets/calendar/pc/view.d.ts +89 -0
  1210. package/dist/_pkgs/data-view/view-presets/calendar/pc/view.js +837 -0
  1211. package/dist/_pkgs/data-view/view-presets/calendar/renderer.d.ts +2 -0
  1212. package/dist/_pkgs/data-view/view-presets/calendar/renderer.js +8 -0
  1213. package/dist/_pkgs/data-view/view-presets/calendar/source.d.ts +8 -0
  1214. package/dist/_pkgs/data-view/view-presets/calendar/source.js +3 -0
  1215. package/dist/_pkgs/data-view/view-presets/calendar/types.d.ts +79 -0
  1216. package/dist/_pkgs/data-view/view-presets/calendar/types.js +1 -0
  1217. package/dist/_pkgs/data-view/view-presets/convert.js +28 -0
  1218. package/dist/_pkgs/data-view/view-presets/effect.js +2 -0
  1219. package/dist/_pkgs/data-view/view-presets/index.d.ts +2 -0
  1220. package/dist/_pkgs/data-view/view-presets/index.js +3 -0
  1221. package/dist/_pkgs/data-view/view-presets/kanban/kanban-view-manager.js +4 -2
  1222. package/dist/_pkgs/data-view/view-presets/kanban/mobile/cell.js +2 -2
  1223. package/dist/_pkgs/data-view/view-presets/kanban/mobile/kanban-view-ui-logic.d.ts +1 -1
  1224. package/dist/_pkgs/data-view/view-presets/kanban/pc/cell.d.ts +1 -1
  1225. package/dist/_pkgs/data-view/view-presets/kanban/pc/controller/selection.d.ts +1 -1
  1226. package/dist/_pkgs/data-view/view-presets/table/collapsed-state.d.ts +18 -0
  1227. package/dist/_pkgs/data-view/view-presets/table/collapsed-state.js +36 -0
  1228. package/dist/_pkgs/data-view/view-presets/table/mobile/cell.js +3 -3
  1229. package/dist/_pkgs/data-view/view-presets/table/mobile/group.d.ts +11 -0
  1230. package/dist/_pkgs/data-view/view-presets/table/mobile/group.js +87 -4
  1231. package/dist/_pkgs/data-view/view-presets/table/mobile/table-view-ui-logic.d.ts +1 -1
  1232. package/dist/_pkgs/data-view/view-presets/table/pc/cell.d.ts +4 -1
  1233. package/dist/_pkgs/data-view/view-presets/table/pc/cell.js +12 -3
  1234. package/dist/_pkgs/data-view/view-presets/table/pc/controller/clipboard.js +1 -1
  1235. package/dist/_pkgs/data-view/view-presets/table/pc/controller/drag-to-fill.d.ts +1 -1
  1236. package/dist/_pkgs/data-view/view-presets/table/pc/controller/drag-to-fill.js +1 -1
  1237. package/dist/_pkgs/data-view/view-presets/table/pc/controller/hotkeys.d.ts +3 -2
  1238. package/dist/_pkgs/data-view/view-presets/table/pc/controller/hotkeys.js +40 -34
  1239. package/dist/_pkgs/data-view/view-presets/table/pc/controller/selection.d.ts +1 -1
  1240. package/dist/_pkgs/data-view/view-presets/table/pc/controller/selection.js +1 -1
  1241. package/dist/_pkgs/data-view/view-presets/table/pc/group.d.ts +10 -0
  1242. package/dist/_pkgs/data-view/view-presets/table/pc/group.js +85 -6
  1243. package/dist/_pkgs/data-view/view-presets/table/pc/header/column-header.js +1 -1
  1244. package/dist/_pkgs/data-view/view-presets/table/pc/menu.js +1 -1
  1245. package/dist/_pkgs/data-view/view-presets/table/pc/row/row-select-checkbox.d.ts +1 -1
  1246. package/dist/_pkgs/data-view/view-presets/table/pc/row/row-select-checkbox.js +1 -1
  1247. package/dist/_pkgs/data-view/view-presets/table/pc/row/row.d.ts +1 -1
  1248. package/dist/_pkgs/data-view/view-presets/table/pc/row/row.js +2 -2
  1249. package/dist/_pkgs/data-view/view-presets/table/pc/table-view-style.js +1 -1
  1250. package/dist/_pkgs/data-view/view-presets/table/pc/table-view-ui-logic.d.ts +1 -1
  1251. package/dist/_pkgs/data-view/view-presets/table/pc/table-view-ui-logic.js +1 -1
  1252. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/clipboard.js +1 -1
  1253. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/drag-to-fill.d.ts +1 -1
  1254. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/drag-to-fill.js +1 -1
  1255. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/drag.d.ts +2 -2
  1256. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/hotkeys.d.ts +3 -2
  1257. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/hotkeys.js +41 -35
  1258. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/selection.d.ts +2 -2
  1259. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/selection.js +1 -1
  1260. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/effect.js +17 -17
  1261. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/bottom/group-footer.d.ts +2 -2
  1262. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/bottom/group-footer.js +2 -2
  1263. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/bottom/stats/column-stats-bar.d.ts +2 -2
  1264. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/bottom/stats/column-stats-bar.js +1 -1
  1265. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/bottom/stats/column-stats-column.d.ts +3 -3
  1266. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/bottom/stats/column-stats-column.js +2 -2
  1267. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/group-header.d.ts +2 -2
  1268. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/group-header.js +3 -3
  1269. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/group-title.d.ts +1 -1
  1270. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/group-title.js +20 -20
  1271. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/column-header-css.js +1 -1
  1272. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/column-header.d.ts +1 -1
  1273. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/column-header.js +4 -4
  1274. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/column-move-preview.d.ts +3 -3
  1275. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/number-format-bar.d.ts +1 -1
  1276. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/number-format-bar.js +1 -1
  1277. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/single-column-header.d.ts +3 -3
  1278. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/single-column-header.js +11 -11
  1279. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/vertical-indicator.d.ts +1 -1
  1280. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/header/vertical-indicator.js +2 -2
  1281. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/row/cell.d.ts +8 -5
  1282. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/row/cell.js +12 -4
  1283. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/row/menu.d.ts +2 -2
  1284. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/row/menu.js +1 -1
  1285. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/types.d.ts +1 -1
  1286. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/virtual/batch-task-manager.d.ts +1 -1
  1287. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/virtual/batch-task-manager.js +1 -1
  1288. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/virtual/virtual-scroll.d.ts +2 -2
  1289. package/dist/_pkgs/data-view/view-presets/table/pc-virtual/virtual/virtual-scroll.js +2 -2
  1290. package/dist/_pkgs/data-view/view-presets/table/renderer.js +1 -1
  1291. package/dist/_pkgs/data-view/view-presets/table/table-view-manager.js +4 -2
  1292. package/dist/_pkgs/data-view/view-presets/table/utils.d.ts +4 -1
  1293. package/dist/_pkgs/data-view/view-presets/table/utils.js +17 -2
  1294. package/dist/_pkgs/data-view/widget-presets/tools/presets/view-options/view-options.js +3 -1
  1295. package/dist/_pkgs/global/gfx/curve.js +4 -3
  1296. package/dist/_pkgs/std/clipboard/clipboard.js +13 -3
  1297. package/dist/_pkgs/std/clipboard/index.d.ts +2 -2
  1298. package/dist/_pkgs/std/clipboard/index.js +2 -2
  1299. package/dist/_pkgs/std/clipboard/utils.d.ts +5 -0
  1300. package/dist/_pkgs/std/clipboard/utils.js +7 -0
  1301. package/dist/_pkgs/std/event/dispatcher.js +27 -1
  1302. package/dist/_pkgs/std/event/keymap.js +16 -6
  1303. package/dist/_pkgs/std/extension/command-registry.d.ts +321 -0
  1304. package/dist/_pkgs/std/extension/command-registry.js +233 -0
  1305. package/dist/_pkgs/std/extension/dnd/index.d.ts +7 -7
  1306. package/dist/_pkgs/std/extension/dnd/index.js +8 -8
  1307. package/dist/_pkgs/std/extension/dnd/types.d.ts +3 -3
  1308. package/dist/_pkgs/std/extension/editor-life-cycle.d.ts +2 -2
  1309. package/dist/_pkgs/std/extension/editor-life-cycle.js +1 -1
  1310. package/dist/_pkgs/std/extension/index.d.ts +2 -0
  1311. package/dist/_pkgs/std/extension/index.js +2 -0
  1312. package/dist/_pkgs/std/extension/translation-manifest.d.ts +49 -0
  1313. package/dist/_pkgs/std/extension/translation-manifest.js +71 -0
  1314. package/dist/_pkgs/std/gfx/controller.js +1 -1
  1315. package/dist/_pkgs/std/gfx/index.d.ts +7 -3
  1316. package/dist/_pkgs/std/gfx/index.js +6 -2
  1317. package/dist/_pkgs/std/gfx/interactivity/event.d.ts +1 -1
  1318. package/dist/_pkgs/std/gfx/interactivity/extension/view.d.ts +6 -6
  1319. package/dist/_pkgs/std/gfx/interactivity/gfx-view-event-handler.d.ts +1 -1
  1320. package/dist/_pkgs/std/gfx/interactivity/gfx-view-event-handler.js +7 -2
  1321. package/dist/_pkgs/std/gfx/interactivity/manager.d.ts +8 -0
  1322. package/dist/_pkgs/std/gfx/interactivity/manager.js +18 -0
  1323. package/dist/_pkgs/std/gfx/interactivity/resize/manager.d.ts +2 -2
  1324. package/dist/_pkgs/std/gfx/interactivity/types/clone.d.ts +1 -1
  1325. package/dist/_pkgs/std/gfx/interactivity/types/drag.d.ts +3 -3
  1326. package/dist/_pkgs/std/gfx/interactivity/types/resize.d.ts +2 -2
  1327. package/dist/_pkgs/std/gfx/interactivity/types/select.d.ts +1 -1
  1328. package/dist/_pkgs/std/gfx/layer.d.ts +1 -1
  1329. package/dist/_pkgs/std/gfx/layer.js +2 -3
  1330. package/dist/_pkgs/std/gfx/model/surface/decorators/field.js +9 -0
  1331. package/dist/_pkgs/std/gfx/model/surface/decorators/index.d.ts +2 -2
  1332. package/dist/_pkgs/std/gfx/model/surface/decorators/index.js +2 -2
  1333. package/dist/_pkgs/std/gfx/model/surface/decorators/local.d.ts +14 -0
  1334. package/dist/_pkgs/std/gfx/model/surface/decorators/local.js +22 -0
  1335. package/dist/_pkgs/std/gfx/model/surface/decorators/observer.d.ts +2 -0
  1336. package/dist/_pkgs/std/gfx/model/surface/decorators/observer.js +40 -1
  1337. package/dist/_pkgs/std/gfx/model/surface/element-model.d.ts +282 -0
  1338. package/dist/_pkgs/std/gfx/model/surface/element-model.js +437 -26
  1339. package/dist/_pkgs/std/gfx/model/surface/pivot.d.ts +48 -0
  1340. package/dist/_pkgs/std/gfx/model/surface/pivot.js +34 -0
  1341. package/dist/_pkgs/std/gfx/model/surface/role.d.ts +153 -0
  1342. package/dist/_pkgs/std/gfx/model/surface/role.js +115 -0
  1343. package/dist/_pkgs/std/gfx/model/surface/surface-model.d.ts +70 -0
  1344. package/dist/_pkgs/std/gfx/model/surface/surface-model.js +304 -17
  1345. package/dist/_pkgs/std/gfx/model/surface/tags.d.ts +77 -0
  1346. package/dist/_pkgs/std/gfx/model/surface/tags.js +246 -0
  1347. package/dist/_pkgs/std/gfx/perf.d.ts +10 -0
  1348. package/dist/_pkgs/std/gfx/perf.js +30 -0
  1349. package/dist/_pkgs/std/gfx/selection.js +1 -1
  1350. package/dist/_pkgs/std/gfx/tool/tool-controller.d.ts +13 -0
  1351. package/dist/_pkgs/std/gfx/tool/tool-controller.js +26 -0
  1352. package/dist/_pkgs/std/gfx/viewport-element.d.ts +3 -3
  1353. package/dist/_pkgs/std/gfx/viewport-element.js +5 -5
  1354. package/dist/_pkgs/std/gfx/viewport.d.ts +13 -1
  1355. package/dist/_pkgs/std/gfx/viewport.js +20 -2
  1356. package/dist/_pkgs/std/inline/extensions/index.d.ts +4 -4
  1357. package/dist/_pkgs/std/inline/extensions/index.js +4 -4
  1358. package/dist/_pkgs/std/inline/index.d.ts +8 -8
  1359. package/dist/_pkgs/std/inline/index.js +8 -8
  1360. package/dist/_pkgs/std/inline/range/active.js +1 -1
  1361. package/dist/_pkgs/std/inline/range/range-binding.js +1 -1
  1362. package/dist/_pkgs/std/inline/services/event.d.ts +2 -0
  1363. package/dist/_pkgs/std/inline/services/event.js +96 -21
  1364. package/dist/_pkgs/std/utils/layer.js +2 -6
  1365. package/dist/_pkgs/std/utils/tree.d.ts +14 -0
  1366. package/dist/_pkgs/std/utils/tree.js +59 -8
  1367. package/dist/_pkgs/std/view/element/gfx-block-component.js +23 -13
  1368. package/dist/_pkgs/store/extension/history/history-extension.d.ts +2 -2
  1369. package/dist/_pkgs/store/extension/history/history-extension.js +1 -1
  1370. package/dist/_pkgs/store/extension/history/index.d.ts +1 -1
  1371. package/dist/_pkgs/store/extension/history/index.js +1 -1
  1372. package/dist/_pkgs/store/extension/index.d.ts +6 -6
  1373. package/dist/_pkgs/store/extension/index.js +6 -6
  1374. package/dist/_pkgs/store/extension/schema.d.ts +2 -2
  1375. package/dist/_pkgs/store/extension/selection/base.d.ts +1 -1
  1376. package/dist/_pkgs/store/extension/selection/identifier.d.ts +2 -2
  1377. package/dist/_pkgs/store/extension/selection/index.d.ts +4 -4
  1378. package/dist/_pkgs/store/extension/selection/index.js +4 -4
  1379. package/dist/_pkgs/store/extension/selection/selection-extension.d.ts +3 -3
  1380. package/dist/_pkgs/store/extension/selection/selection-extension.js +3 -3
  1381. package/dist/_pkgs/store/extension/selection/types.d.ts +1 -1
  1382. package/dist/_pkgs/store/extension/store-extension.d.ts +2 -2
  1383. package/dist/_pkgs/store/extension/store-extension.js +2 -2
  1384. package/dist/_pkgs/store/extension/workspace/doc.d.ts +2 -2
  1385. package/dist/_pkgs/store/extension/workspace/index.d.ts +3 -3
  1386. package/dist/_pkgs/store/extension/workspace/index.js +3 -3
  1387. package/dist/_pkgs/store/extension/workspace/workspace-meta.d.ts +10 -0
  1388. package/dist/_pkgs/store/extension/workspace/workspace.d.ts +1 -1
  1389. package/dist/_pkgs/store/impls/doc.d.ts +45 -0
  1390. package/dist/_pkgs/store/impls/doc.js +110 -0
  1391. package/dist/_pkgs/store/impls/index.d.ts +4 -0
  1392. package/dist/_pkgs/store/impls/index.js +4 -0
  1393. package/dist/_pkgs/store/impls/workspace-base.d.ts +81 -0
  1394. package/dist/_pkgs/store/impls/workspace-base.js +143 -0
  1395. package/dist/_pkgs/store/impls/workspace-meta.d.ts +33 -0
  1396. package/dist/_pkgs/store/impls/workspace-meta.js +125 -0
  1397. package/dist/_pkgs/store/impls/workspace.d.ts +14 -0
  1398. package/dist/_pkgs/store/impls/workspace.js +14 -0
  1399. package/dist/_pkgs/store/index.d.ts +9 -8
  1400. package/dist/_pkgs/store/index.js +9 -8
  1401. package/dist/_pkgs/store/model/block/flat-sync-controller.js +2 -12
  1402. package/dist/_pkgs/store/model/store/crud.js +7 -4
  1403. package/dist/_pkgs/store/model/store/identifier.d.ts +1 -1
  1404. package/dist/_pkgs/store/model/store-container.d.ts +2 -2
  1405. package/dist/_pkgs/store/model/store-container.js +2 -2
  1406. package/dist/_pkgs/store/reactive/base-reactive-data.d.ts +1 -1
  1407. package/dist/_pkgs/store/reactive/flat-native-y/index.d.ts +4 -4
  1408. package/dist/_pkgs/store/reactive/flat-native-y/index.js +31 -9
  1409. package/dist/_pkgs/store/reactive/flat-native-y/initialize.d.ts +2 -2
  1410. package/dist/_pkgs/store/reactive/flat-native-y/initialize.js +3 -3
  1411. package/dist/_pkgs/store/reactive/flat-native-y/proxy.d.ts +2 -2
  1412. package/dist/_pkgs/store/reactive/flat-native-y/proxy.js +5 -5
  1413. package/dist/_pkgs/store/reactive/flat-native-y/signal-updater.d.ts +1 -1
  1414. package/dist/_pkgs/store/reactive/flat-native-y/signal-updater.js +1 -1
  1415. package/dist/_pkgs/store/reactive/flat-native-y/types.d.ts +1 -1
  1416. package/dist/_pkgs/store/reactive/flat-native-y/utils.d.ts +1 -1
  1417. package/dist/_pkgs/store/reactive/flat-native-y/utils.js +3 -3
  1418. package/dist/_pkgs/store/reactive/flat-native-y/y-event-handler.d.ts +1 -1
  1419. package/dist/_pkgs/store/reactive/flat-native-y/y-event-handler.js +2 -2
  1420. package/dist/_pkgs/store/reactive/flat-native-y/y-map-updater.d.ts +1 -1
  1421. package/dist/_pkgs/store/reactive/flat-native-y/y-map-updater.js +3 -3
  1422. package/dist/_pkgs/store/reactive/memory.d.ts +1 -1
  1423. package/dist/_pkgs/store/reactive/stash-pop.js +1 -1
  1424. package/dist/_pkgs/store/reactive/text/index.d.ts +3 -3
  1425. package/dist/_pkgs/store/reactive/text/index.js +3 -3
  1426. package/dist/_pkgs/store/reactive/text/text.d.ts +2 -2
  1427. package/dist/_pkgs/store/reactive/text/types.d.ts +1 -1
  1428. package/dist/_pkgs/store/test/test-doc.d.ts +1 -45
  1429. package/dist/_pkgs/store/test/test-doc.js +1 -110
  1430. package/dist/_pkgs/store/test/test-meta.d.ts +1 -33
  1431. package/dist/_pkgs/store/test/test-meta.js +1 -125
  1432. package/dist/_pkgs/store/test/test-workspace.d.ts +8 -68
  1433. package/dist/_pkgs/store/test/test-workspace.js +7 -132
  1434. package/dist/_pkgs/store/transformer/assets.d.ts +2 -2
  1435. package/dist/_pkgs/store/transformer/base.d.ts +5 -5
  1436. package/dist/_pkgs/store/transformer/base.js +4 -4
  1437. package/dist/_pkgs/store/transformer/index.d.ts +7 -7
  1438. package/dist/_pkgs/store/transformer/index.js +7 -7
  1439. package/dist/_pkgs/store/transformer/json.js +4 -4
  1440. package/dist/_pkgs/store/transformer/slice.d.ts +1 -1
  1441. package/dist/_pkgs/store/transformer/slice.js +1 -1
  1442. package/dist/_pkgs/store/transformer/type.d.ts +2 -2
  1443. package/dist/_pkgs/sync/doc/peer.js +1 -1
  1444. package/dist/commands.d.ts +58 -0
  1445. package/dist/commands.js +66 -0
  1446. package/dist/extensions/command-telemetry.d.ts +21 -0
  1447. package/dist/extensions/command-telemetry.js +89 -0
  1448. package/dist/extensions/store.d.ts +9 -4
  1449. package/dist/extensions/store.js +27 -24
  1450. package/dist/extensions/view.d.ts +9 -4
  1451. package/dist/extensions/view.js +23 -8
  1452. package/dist/flags.d.ts +98 -21
  1453. package/dist/flags.js +103 -22
  1454. package/dist/frameworks.d.ts +45 -0
  1455. package/dist/frameworks.js +154 -0
  1456. package/dist/schemas.d.ts +8 -5
  1457. package/dist/schemas.js +28 -32
  1458. package/dist/shortcuts.d.ts +16 -16
  1459. package/dist/shortcuts.js +8 -36
  1460. package/dist/translations.d.ts +56 -0
  1461. package/dist/translations.js +112 -0
  1462. package/package.json +16 -4
  1463. package/dist/_pkgs/affine-block-root/keyboard/shortcuts.d.ts +0 -8
  1464. package/dist/_pkgs/affine-block-root/keyboard/shortcuts.js +0 -48
  1465. package/dist/_pkgs/affine-gfx-shape/shortcuts.d.ts +0 -6
  1466. package/dist/_pkgs/affine-gfx-shape/shortcuts.js +0 -28
  1467. package/dist/_pkgs/data-view/core/utils/cache.d.ts +0 -5
  1468. package/dist/_pkgs/data-view/core/utils/cache.js +0 -28
@@ -36,12 +36,60 @@ var _a;
36
36
  import { DisposableGroup } from '../../../../global/disposable/index.js';
37
37
  import { Bound, deserializeXYWH, getBoundWithRotation, getPointsFromBoundWithRotation, linePolygonIntersects, PointLocation, polygonGetPointTangent, polygonNearestPoint, randomSeed, rotatePoints, } from '../../../../global/gfx/index.js';
38
38
  import { createMutex } from 'lib0/mutex';
39
- import isEqual from 'lodash-es/isEqual';
39
+ import isEqual from 'lodash-es/isEqual.js';
40
40
  import { Subject } from 'rxjs';
41
41
  import * as Y from 'yjs';
42
42
  import { descendantElementsImpl, hasDescendantElementImpl, isLockedByAncestorImpl, isLockedBySelfImpl, isLockedImpl, lockElementImpl, unlockElementImpl, } from '../../../utils/tree.js';
43
43
  import { gfxGroupCompatibleSymbol } from '../base.js';
44
- import { convertProps, field, getDerivedProps, getFieldPropsSet, local, updateDerivedProps, watch, } from './decorators/index.js';
44
+ import { convertProps, field, getDerivedProps, getFieldPropsSet, hasObserveMeta, local, observe, startObserve, updateDerivedProps, watch, } from './decorators/index.js';
45
+ /**
46
+ * Declared `@field()`s that {@link GfxPrimitiveElementModel.clearField} refuses
47
+ * to remove, because they have no meaningful ABSENT state: every one of them is
48
+ * read unconditionally, with no fallback, by code that has no way to cope.
49
+ *
50
+ * - `index` — the fractional z-order key. Gone, the element's stacking is
51
+ * `undefined` and the layer manager sorts it nowhere, silently.
52
+ * - `xywh` — gone, `elementBound` collapses to `{0,0,0,0}` and the renderer
53
+ * throws `"undefined" is not valid JSON` on every frame.
54
+ * - `seed` — the roughness seed; gone, the hand-drawn renderers produce a
55
+ * different shape on every repaint.
56
+ *
57
+ * An optional field is exactly one whose accessor declares a usable default (or
58
+ * `undefined`), and those stay clearable. This list is the short answer to
59
+ * "which declared fields are not optional"; it is a deny-list on purpose, so a
60
+ * new optional field needs no ceremony and a new structural one is a deliberate
61
+ * addition here.
62
+ */
63
+ const UNCLEARABLE_ELEMENT_FIELDS = new Set(['index', 'seed', 'xywh']);
64
+ /**
65
+ * Republish a nested-`Y.Map` field change as an element-level change.
66
+ *
67
+ * `syncElementFromY` observes the element's OWN `Y.Map` only, so mutating a
68
+ * value INSIDE {@link GfxPrimitiveElementModel.tags} — which is the whole point
69
+ * of storing it as a nested map, since that is what makes two people qualifying
70
+ * one element on two different tags both keep their work — emits nothing. This
71
+ * is the `Y.Map` counterpart of the `watchText` bridge the same file already
72
+ * ships for nested `Y.Text`, and it is what puts a per-tag write on the same
73
+ * footing as every other field: one `elementUpdated`, carrying the transaction's
74
+ * own `local` flag, for the renderer, the rules engine and
75
+ * `PivotMaterialityPublisher` alike.
76
+ *
77
+ * `transaction === null` is the observer ATTACHING, not a change (see
78
+ * `startObserve`); republishing there would fire on every mount and on every
79
+ * re-attach.
80
+ */
81
+ function observeTags(_, instance, transaction) {
82
+ if (transaction === null)
83
+ return;
84
+ instance['_onChange']({
85
+ props: { tags: instance.tags },
86
+ // Deliberately empty, exactly like `watchText`: Yjs gives the delta of the
87
+ // NESTED map, and inventing a previous value for the whole field would be
88
+ // a guess. Consumers that need the old set read it from their own state.
89
+ oldValues: {},
90
+ local: transaction.local,
91
+ });
92
+ }
45
93
  let GfxPrimitiveElementModel = (() => {
46
94
  let _display_decorators;
47
95
  let _display_initializers = [];
@@ -61,6 +109,24 @@ let GfxPrimitiveElementModel = (() => {
61
109
  let _linkedDocId_decorators;
62
110
  let _linkedDocId_initializers = [];
63
111
  let _linkedDocId_extraInitializers = [];
112
+ let _pivotDocId_decorators;
113
+ let _pivotDocId_initializers = [];
114
+ let _pivotDocId_extraInitializers = [];
115
+ let _role_decorators;
116
+ let _role_initializers = [];
117
+ let _role_extraInitializers = [];
118
+ let _tags_decorators;
119
+ let _tags_initializers = [];
120
+ let _tags_extraInitializers = [];
121
+ let _validationExceptions_decorators;
122
+ let _validationExceptions_initializers = [];
123
+ let _validationExceptions_extraInitializers = [];
124
+ let _validationProfile_decorators;
125
+ let _validationProfile_initializers = [];
126
+ let _validationProfile_extraInitializers = [];
127
+ let _qualityChecklist_decorators;
128
+ let _qualityChecklist_initializers = [];
129
+ let _qualityChecklist_extraInitializers = [];
64
130
  let _lockedBySelf_decorators;
65
131
  let _lockedBySelf_initializers = [];
66
132
  let _lockedBySelf_extraInitializers = [];
@@ -84,6 +150,12 @@ let GfxPrimitiveElementModel = (() => {
84
150
  _index_decorators = [field()];
85
151
  _externalLink_decorators = [field()];
86
152
  _linkedDocId_decorators = [field()];
153
+ _pivotDocId_decorators = [field()];
154
+ _role_decorators = [field()];
155
+ _tags_decorators = [observe(observeTags), field()];
156
+ _validationExceptions_decorators = [field()];
157
+ _validationProfile_decorators = [field()];
158
+ _qualityChecklist_decorators = [field()];
87
159
  _lockedBySelf_decorators = [field()];
88
160
  _opacity_decorators = [local()];
89
161
  _responseExtension_decorators = [local()];
@@ -94,6 +166,12 @@ let GfxPrimitiveElementModel = (() => {
94
166
  __esDecorate(this, null, _index_decorators, { kind: "accessor", name: "index", static: false, private: false, access: { has: obj => "index" in obj, get: obj => obj.index, set: (obj, value) => { obj.index = value; } }, metadata: _metadata }, _index_initializers, _index_extraInitializers);
95
167
  __esDecorate(this, null, _externalLink_decorators, { kind: "accessor", name: "externalLink", static: false, private: false, access: { has: obj => "externalLink" in obj, get: obj => obj.externalLink, set: (obj, value) => { obj.externalLink = value; } }, metadata: _metadata }, _externalLink_initializers, _externalLink_extraInitializers);
96
168
  __esDecorate(this, null, _linkedDocId_decorators, { kind: "accessor", name: "linkedDocId", static: false, private: false, access: { has: obj => "linkedDocId" in obj, get: obj => obj.linkedDocId, set: (obj, value) => { obj.linkedDocId = value; } }, metadata: _metadata }, _linkedDocId_initializers, _linkedDocId_extraInitializers);
169
+ __esDecorate(this, null, _pivotDocId_decorators, { kind: "accessor", name: "pivotDocId", static: false, private: false, access: { has: obj => "pivotDocId" in obj, get: obj => obj.pivotDocId, set: (obj, value) => { obj.pivotDocId = value; } }, metadata: _metadata }, _pivotDocId_initializers, _pivotDocId_extraInitializers);
170
+ __esDecorate(this, null, _role_decorators, { kind: "accessor", name: "role", static: false, private: false, access: { has: obj => "role" in obj, get: obj => obj.role, set: (obj, value) => { obj.role = value; } }, metadata: _metadata }, _role_initializers, _role_extraInitializers);
171
+ __esDecorate(this, null, _tags_decorators, { kind: "accessor", name: "tags", static: false, private: false, access: { has: obj => "tags" in obj, get: obj => obj.tags, set: (obj, value) => { obj.tags = value; } }, metadata: _metadata }, _tags_initializers, _tags_extraInitializers);
172
+ __esDecorate(this, null, _validationExceptions_decorators, { kind: "accessor", name: "validationExceptions", static: false, private: false, access: { has: obj => "validationExceptions" in obj, get: obj => obj.validationExceptions, set: (obj, value) => { obj.validationExceptions = value; } }, metadata: _metadata }, _validationExceptions_initializers, _validationExceptions_extraInitializers);
173
+ __esDecorate(this, null, _validationProfile_decorators, { kind: "accessor", name: "validationProfile", static: false, private: false, access: { has: obj => "validationProfile" in obj, get: obj => obj.validationProfile, set: (obj, value) => { obj.validationProfile = value; } }, metadata: _metadata }, _validationProfile_initializers, _validationProfile_extraInitializers);
174
+ __esDecorate(this, null, _qualityChecklist_decorators, { kind: "accessor", name: "qualityChecklist", static: false, private: false, access: { has: obj => "qualityChecklist" in obj, get: obj => obj.qualityChecklist, set: (obj, value) => { obj.qualityChecklist = value; } }, metadata: _metadata }, _qualityChecklist_initializers, _qualityChecklist_extraInitializers);
97
175
  __esDecorate(this, null, _lockedBySelf_decorators, { kind: "accessor", name: "lockedBySelf", static: false, private: false, access: { has: obj => "lockedBySelf" in obj, get: obj => obj.lockedBySelf, set: (obj, value) => { obj.lockedBySelf = value; } }, metadata: _metadata }, _lockedBySelf_initializers, _lockedBySelf_extraInitializers);
98
176
  __esDecorate(this, null, _opacity_decorators, { kind: "accessor", name: "opacity", static: false, private: false, access: { has: obj => "opacity" in obj, get: obj => obj.opacity, set: (obj, value) => { obj.opacity = value; } }, metadata: _metadata }, _opacity_initializers, _opacity_extraInitializers);
99
177
  __esDecorate(this, null, _responseExtension_decorators, { kind: "accessor", name: "responseExtension", static: false, private: false, access: { has: obj => "responseExtension" in obj, get: obj => obj.responseExtension, set: (obj, value) => { obj.responseExtension = value; } }, metadata: _metadata }, _responseExtension_initializers, _responseExtension_extraInitializers);
@@ -104,8 +182,10 @@ let GfxPrimitiveElementModel = (() => {
104
182
  return true;
105
183
  }
106
184
  get deserializedXYWH() {
107
- if (!this._lastXYWH || this.xywh !== this._lastXYWH) {
108
- const xywh = this.xywh;
185
+ // Read `xywh` once: on a group it is a derived getter that may recompute
186
+ // the union of every child bound, so reading it twice doubles the cost.
187
+ const xywh = this.xywh;
188
+ if (!this._lastXYWH || xywh !== this._lastXYWH) {
109
189
  this._local.set('deserializedXYWH', deserializeXYWH(xywh));
110
190
  this._lastXYWH = xywh;
111
191
  }
@@ -174,7 +254,13 @@ let GfxPrimitiveElementModel = (() => {
174
254
  this.#index_accessor_storage = (__runInitializers(this, _hidden_extraInitializers), __runInitializers(this, _index_initializers, void 0));
175
255
  this.#externalLink_accessor_storage = (__runInitializers(this, _index_extraInitializers), __runInitializers(this, _externalLink_initializers, undefined));
176
256
  this.#linkedDocId_accessor_storage = (__runInitializers(this, _externalLink_extraInitializers), __runInitializers(this, _linkedDocId_initializers, undefined));
177
- this.#lockedBySelf_accessor_storage = (__runInitializers(this, _linkedDocId_extraInitializers), __runInitializers(this, _lockedBySelf_initializers, false));
257
+ this.#pivotDocId_accessor_storage = (__runInitializers(this, _linkedDocId_extraInitializers), __runInitializers(this, _pivotDocId_initializers, undefined));
258
+ this.#role_accessor_storage = (__runInitializers(this, _pivotDocId_extraInitializers), __runInitializers(this, _role_initializers, undefined));
259
+ this.#tags_accessor_storage = (__runInitializers(this, _role_extraInitializers), __runInitializers(this, _tags_initializers, undefined));
260
+ this.#validationExceptions_accessor_storage = (__runInitializers(this, _tags_extraInitializers), __runInitializers(this, _validationExceptions_initializers, undefined));
261
+ this.#validationProfile_accessor_storage = (__runInitializers(this, _validationExceptions_extraInitializers), __runInitializers(this, _validationProfile_initializers, undefined));
262
+ this.#qualityChecklist_accessor_storage = (__runInitializers(this, _validationProfile_extraInitializers), __runInitializers(this, _qualityChecklist_initializers, undefined));
263
+ this.#lockedBySelf_accessor_storage = (__runInitializers(this, _qualityChecklist_extraInitializers), __runInitializers(this, _lockedBySelf_initializers, false));
178
264
  this.#opacity_accessor_storage = (__runInitializers(this, _lockedBySelf_extraInitializers), __runInitializers(this, _opacity_initializers, 1));
179
265
  this.#responseExtension_accessor_storage = (__runInitializers(this, _opacity_extraInitializers), __runInitializers(this, _responseExtension_initializers, [0, 0]));
180
266
  this.#seed_accessor_storage = (__runInitializers(this, _responseExtension_extraInitializers), __runInitializers(this, _seed_initializers, void 0));
@@ -185,6 +271,12 @@ let GfxPrimitiveElementModel = (() => {
185
271
  this.surface = model;
186
272
  this._stashed = stashedStore;
187
273
  this._onChange = onChange;
274
+ // DO NOT turn these two into field initializers. `@field()` deliberately
275
+ // does NOT write an `undefined` default into the Y.Map (see
276
+ // `./decorators/field.ts`), and both accessors are declared without an
277
+ // initializer — so these assignments, which go through the SETTER, are the
278
+ // only reason `index` and `seed` reach the document at all. Losing `index`
279
+ // would silently corrupt z-order on every new element.
188
280
  this.index = 'a0';
189
281
  this.seed = randomSeed();
190
282
  }
@@ -288,6 +380,63 @@ let GfxPrimitiveElementModel = (() => {
288
380
  unlock() {
289
381
  unlockElementImpl(this.surface.store, this);
290
382
  }
383
+ /**
384
+ * Remove an OPTIONAL `@field()` from the document entirely.
385
+ *
386
+ * The missing half of `@field()`. Its setter is unconditional — assigning
387
+ * `undefined` still calls `yMap.set(prop, undefined)` — so "clearing" an
388
+ * optional field through the accessor leaves the KEY behind. The getter reads
389
+ * `undefined` and nothing misbehaves, but the element is no longer
390
+ * byte-identical to one that never had the field: the phantom key syncs to
391
+ * every peer and ships in every snapshot. `init` is already careful to write
392
+ * nothing for an `undefined` default; this is how a field gets back to that
393
+ * state once it has been set.
394
+ *
395
+ * Emits a `delete` action rather than an `update`, so a consumer filtering on
396
+ * `props` will see an EMPTY payload and must inspect `oldValues` — the same
397
+ * shape an undo of the original write produces.
398
+ *
399
+ * ## What it refuses, and why that is load-bearing
400
+ *
401
+ * This is a direct write path into the element's Y.Map, on the class that
402
+ * carries the document format, exported by `@labre/std` and therefore
403
+ * callable by a host. `_assignElementProp` learned the same lesson in the
404
+ * unknown-props change (see `docs/spikes/us-1-8-unknown-props-preservation.md`,
405
+ * whose deny-list is explicitly security rather than hygiene); an unguarded
406
+ * delete re-opens the door from the other side. So:
407
+ *
408
+ * - a key the element class does not DECLARE as a `@field()` is refused. It
409
+ * is either an unknown key preserved verbatim for a newer client — deleting
410
+ * it is exactly the data loss that change exists to prevent — or not
411
+ * document data at all;
412
+ * - a STRUCTURAL field is refused even though it is declared
413
+ * ({@link UNCLEARABLE_ELEMENT_FIELDS}).
414
+ *
415
+ * Refusal is a no-op plus a `console.warn`, the same way an unencodable value
416
+ * is dropped rather than thrown: a misuse must not take the board down, and
417
+ * must not silently corrupt it either.
418
+ */
419
+ clearField(prop) {
420
+ if (UNCLEARABLE_ELEMENT_FIELDS.has(prop)) {
421
+ console.warn(`Refusing to clear the structural element field "${prop}": it has no meaningful absent state.`);
422
+ return;
423
+ }
424
+ if (!getFieldPropsSet(this).has(prop)) {
425
+ console.warn(`Refusing to clear "${prop}": not a declared @field() on this element. Unknown keys are preserved deliberately.`);
426
+ return;
427
+ }
428
+ if (!this.yMap.has(prop))
429
+ return;
430
+ if (this.yMap.doc) {
431
+ this.surface.store.transact(() => {
432
+ this.yMap.delete(prop);
433
+ });
434
+ // The Y.Map observer prunes `_preserved` on the delete action.
435
+ return;
436
+ }
437
+ this.yMap.delete(prop);
438
+ this._preserved.delete(prop);
439
+ }
291
440
  #display_accessor_storage;
292
441
  get display() { return this.#display_accessor_storage; }
293
442
  set display(value) { this.#display_accessor_storage = value; }
@@ -317,6 +466,203 @@ let GfxPrimitiveElementModel = (() => {
317
466
  #linkedDocId_accessor_storage;
318
467
  get linkedDocId() { return this.#linkedDocId_accessor_storage; }
319
468
  set linkedDocId(value) { this.#linkedDocId_accessor_storage = value; }
469
+ #pivotDocId_accessor_storage;
470
+ /**
471
+ * Identity binding to a host-owned **pivot record**: this element is an
472
+ * *occurrence* of the document `pivotDocId`. Many elements, across many
473
+ * boards, may carry the same `pivotDocId` — that is the point. A Wardley
474
+ * `component` drawn on three maps is the same component (MF1, ADR 0005).
475
+ *
476
+ * Opaque to the library: the framework never dereferences it, never fetches
477
+ * it, never renders it. Reading it is the host's job, through
478
+ * `PivotPropertiesProvider` (`@labre/affine-shared/services`, ADR 0006).
479
+ * No renderer, no hit-test, no layout and no exporter may read it; it
480
+ * participates in no `@derive`, `@convert` or `@watch` chain, so it cannot
481
+ * move, resize or restyle anything.
482
+ *
483
+ * Orthogonal to {@link linkedDocId} / {@link externalLink}, which are a
484
+ * *hyperlink* (navigation), not an identity. They differ on every axis that
485
+ * matters — cardinality (a hyperlink is one target per element and is
486
+ * exclusive with `externalLink`; a binding is many-elements-to-one-record),
487
+ * lifecycle (a hyperlink is picked from a search modal, a binding is created
488
+ * by promotion) and consumers (an arrow that navigates vs. a hover card and
489
+ * a rules engine). An element may legitimately carry both, and code reading
490
+ * one as a stand-in for the other is a bug.
491
+ *
492
+ * Declared on the BASE class for the same reason as {@link role}: an element
493
+ * re-created from props (paste, duplicate, alt-drag clone, template
494
+ * insertion) only reaches the Y.Map through keys that have a declared
495
+ * accessor, so a binding declared per subclass would be silently dropped on
496
+ * copy — and the loss would be invisible until the next reload.
497
+ *
498
+ * `undefined` = unbound, and no key is written for it, so an element that
499
+ * never binds stays byte-identical to one created before the field existed:
500
+ * optional field, no schema version bump, no migration. Clearing it goes
501
+ * through {@link clearField}, which removes the key rather than leaving a
502
+ * tombstone.
503
+ *
504
+ * A binding to a record that does not (yet) exist — or was deleted, or is
505
+ * invisible to this user — is a legal, persisted state: the library never
506
+ * validates it and never deletes host data. It resolves to `missing` at read
507
+ * time (ADR 0006).
508
+ */
509
+ get pivotDocId() { return this.#pivotDocId_accessor_storage; }
510
+ set pivotDocId(value) { this.#pivotDocId_accessor_storage = value; }
511
+ #role_accessor_storage;
512
+ /**
513
+ * Semantic role of the element, `<framework>:<role>` (see `./role.ts`).
514
+ * `undefined` = neutral: generalist elements carry no role, and no key is
515
+ * written for them at creation.
516
+ *
517
+ * Declared on the BASE class on purpose, even though only framework modules
518
+ * set it: an element re-created from props (paste, duplicate, template
519
+ * insertion) only reaches the Y.Map through keys that have a declared
520
+ * accessor, so a role declared per subclass would be silently dropped on
521
+ * copy. Flat string on purpose — element serialization is one level deep.
522
+ */
523
+ get role() { return this.#role_accessor_storage; }
524
+ set role(value) { this.#role_accessor_storage = value; }
525
+ #tags_accessor_storage;
526
+ /**
527
+ * Level 3 — **contextual qualification** (ADR 0007 § 4). Tag def id → the
528
+ * value ids selected for it, e.g. `{ 'wardley:nature': ['wardley:nature/data'] }`.
529
+ *
530
+ * Both halves of a key are namespaced by framework on purpose: two universes
531
+ * WILL collide on a word like `activity` — `edgy:activity` is already an EDGY
532
+ * base element while `activity` is one of Wardley's four natures — and
533
+ * namespacing is what makes that collision harmless rather than decorative.
534
+ *
535
+ * Absent and empty are equivalent (both mean "unqualified"), and the default
536
+ * is `undefined`, **never** `new Y.Map()`: `@field()`'s `init` writes nothing
537
+ * for an `undefined` default, so an element that is never qualified — every
538
+ * brush stroke, every connector — stays byte-identical to one created before
539
+ * the field existed. A non-`undefined` default on this base class would
540
+ * reinstate that cost on every element of every document. The qualification
541
+ * writer (`setElementTag`, `./tags.js`) creates the map on first use and
542
+ * removes the key again when the last tag goes.
543
+ *
544
+ * ## Why a NESTED `Y.Map` and not a plain object
545
+ *
546
+ * `@field()` writes straight into the element's `Y.Map` with no `native2Y` in
547
+ * the path, so a plain object here really would be ONE opaque value: two
548
+ * people qualifying the same element on two DIFFERENT tags would silently
549
+ * lose one of the two. A nested map merges per tag, which is what the shape
550
+ * has to do — there is no migration runner for surface elements, so it is
551
+ * chosen once. The `string[]` of a SINGLE tag stays last-write-wins, and that
552
+ * is correct: one tag's value set is one atomic choice.
553
+ *
554
+ * Exactly one level of Y-awareness, with plain arrays as values — shallower
555
+ * than `MindmapElementModel.children` (`Y.Map<NodeDetail>`), which already
556
+ * ships, and inside what `surface-transformer`'s `SURFACE_YMAP_UNIQ_IDENTIFIER`
557
+ * envelope round-trips generically.
558
+ *
559
+ * Declared on the BASE class for the same reason as {@link role} and
560
+ * {@link pivotDocId}: an element re-created from props (paste, duplicate,
561
+ * alt-drag clone, template insertion) only reaches the `Y.Map` through keys
562
+ * that have a declared accessor, and a qualification the user authored is
563
+ * exactly the kind of thing that must survive a copy. `SurfaceBlockModel`'s
564
+ * `_propsToY` rebuilds the map from the plain JSON `serialize()` produces, so
565
+ * a copy is a copy of the values and never a second reference to one map.
566
+ *
567
+ * Opaque to the framework: no renderer, no hit-test, no layout and no
568
+ * exporter reads it, and it participates in no `@derive` / `@convert` chain.
569
+ * Values whose def has vanished still load and are displayed as raw ids —
570
+ * defs are runtime configuration and are NEVER persisted.
571
+ */
572
+ get tags() { return this.#tags_accessor_storage; }
573
+ set tags(value) { this.#tags_accessor_storage = value; }
574
+ #validationExceptions_accessor_storage;
575
+ /**
576
+ * Validation rules this element is excused from (PF8, "no rule is a wall").
577
+ *
578
+ * Declared on the BASE class for the same reason as {@link role}: an element
579
+ * re-created from props (paste, duplicate, template insertion) only reaches
580
+ * the Y.Map through keys that have a declared accessor, so an exception
581
+ * declared per subclass would be silently dropped on copy — and an arbitration
582
+ * the user made explicitly is exactly the kind of thing that must survive a
583
+ * copy.
584
+ *
585
+ * `undefined` = no exception, and no key is written for it, so an element that
586
+ * never got one stays byte-identical to one created before the field existed:
587
+ * optional field, no schema version bump, no migration.
588
+ *
589
+ * Flat JSON on purpose — element serialization is one level deep, and a value
590
+ * a Yjs update can encode is the contract enforced by `_assignElementProp`.
591
+ * The engine that reads it lives in `@labre/affine-block-surface`; the base
592
+ * model only carries the data, and knows nothing about rules.
593
+ */
594
+ get validationExceptions() { return this.#validationExceptions_accessor_storage; }
595
+ set validationExceptions(value) { this.#validationExceptions_accessor_storage = value; }
596
+ #validationProfile_accessor_storage;
597
+ /**
598
+ * Id of the validation PROFILE this element's framework is checked against
599
+ * (PF9) — a set of enabled rules and their severities, declared as data by
600
+ * the framework.
601
+ *
602
+ * Carried by the framework's BACKGROUND element, i.e. the root instance, and
603
+ * not by the document: two maps on one canvas are two independent pieces of
604
+ * work, and a sketch has to be able to sit next to a deliverable without
605
+ * either of them dictating the other's requirements (PF9.1). The engine reads
606
+ * it off the background a finding was measured against, which it already
607
+ * names (`Violation.backgroundId`).
608
+ *
609
+ * Declared on the BASE class for the same reason as {@link role} and
610
+ * {@link validationExceptions}: an element re-created from props (paste,
611
+ * duplicate, template insertion) only reaches the Y.Map through keys that
612
+ * have a declared accessor, so a profile declared per subclass would be
613
+ * silently dropped on copy — and duplicating a strict map must give a strict
614
+ * map.
615
+ *
616
+ * `undefined` = "no explicit choice", which resolves to the framework's
617
+ * DEFAULT profile — the most permissive reasonable one, because the sketch
618
+ * wins. No key is written for it, so a document authored before this field
619
+ * existed stays byte-identical: optional field, no schema version bump, no
620
+ * migration. Choosing the default back again removes the key rather than
621
+ * writing it.
622
+ *
623
+ * Flat string on purpose — element serialization is one level deep. The
624
+ * engine that interprets it lives in `@labre/affine-block-surface`; the base
625
+ * model only carries the id, and knows nothing about profiles.
626
+ */
627
+ get validationProfile() { return this.#validationProfile_accessor_storage; }
628
+ set validationProfile(value) { this.#validationProfile_accessor_storage = value; }
629
+ #qualityChecklist_accessor_storage;
630
+ /**
631
+ * The map-quality NUDGES the user has ticked off on this instance (PF7.10) —
632
+ * ids of declarative reminders their framework ships, never rules the engine
633
+ * evaluates.
634
+ *
635
+ * A nudge is an expectation the tool cannot judge ("the map has a title that
636
+ * frames the study"): the content can exist without being good, so nothing
637
+ * here is ever computed. Ticking one is the same gesture as granting an
638
+ * exception — the user says "I have taken care of this" and the tool records
639
+ * it rather than pretending to check it.
640
+ *
641
+ * Carried by the framework's BACKGROUND element, i.e. the root instance, for
642
+ * the same reason {@link validationProfile} is: two maps on one canvas are two
643
+ * independent pieces of work, and a checklist ticked on one says nothing about
644
+ * the other.
645
+ *
646
+ * Declared on the BASE class for the same reason as {@link role} and
647
+ * {@link validationExceptions}: an element re-created from props (paste,
648
+ * duplicate, template insertion) only reaches the Y.Map through keys that have
649
+ * a declared accessor, so a checklist declared per subclass would be silently
650
+ * dropped on copy.
651
+ *
652
+ * `undefined` = nothing ticked, and no key is written for it, so a document
653
+ * authored before this field existed stays byte-identical: optional field, no
654
+ * schema version bump, no migration. Unticking the last one goes through
655
+ * {@link clearField}, which removes the key rather than leaving a tombstone.
656
+ *
657
+ * Flat JSON — an array of strings — on purpose: element serialization is one
658
+ * level deep, and a value a Yjs update can encode is the contract enforced by
659
+ * `_assignElementProp`. The library that interprets the ids lives in
660
+ * `@labre/affine-block-surface`; the base model only carries them, and knows
661
+ * nothing about nudges. Ids of nudges no framework declares any more are kept,
662
+ * not pruned: the tooling comes and goes with a flag, the decision does not.
663
+ */
664
+ get qualityChecklist() { return this.#qualityChecklist_accessor_storage; }
665
+ set qualityChecklist(value) { this.#qualityChecklist_accessor_storage = value; }
320
666
  #lockedBySelf_accessor_storage;
321
667
  get lockedBySelf() { return this.#lockedBySelf_accessor_storage; }
322
668
  set lockedBySelf(value) { this.#lockedBySelf_accessor_storage = value; }
@@ -337,6 +683,17 @@ export class GfxGroupLikeElementModel extends GfxPrimitiveElementModel {
337
683
  super(...arguments);
338
684
  this._childIds = [];
339
685
  this._mutex = createMutex();
686
+ /**
687
+ * Whether the cached `xywh` must be recomputed from the children.
688
+ *
689
+ * The bound of a group is the union of its children bounds, which used to be
690
+ * recomputed on **every** read of `xywh` — and `xywh` is read many times per
691
+ * frame (renderer, hit test, toolbar anchor, selection rect…). It is now
692
+ * computed once per mutation: the surface marks the group dirty (or
693
+ * refreshes it eagerly) whenever a child changes, see
694
+ * {@link invalidateXYWH} / {@link refreshXYWH}.
695
+ */
696
+ this._xywhDirty = true;
340
697
  this[_a] = true;
341
698
  }
342
699
  static { _a = gfxGroupCompatibleSymbol; }
@@ -361,26 +718,47 @@ export class GfxGroupLikeElementModel extends GfxPrimitiveElementModel {
361
718
  }
362
719
  get xywh() {
363
720
  this._mutex(() => {
364
- const curXYWH = this._local.get('xywh') ?? '[0,0,0,0]';
365
- const newXYWH = this._getXYWH().serialize();
366
- if (curXYWH !== newXYWH || !this._local.has('xywh')) {
367
- this._local.set('xywh', newXYWH);
368
- if (curXYWH !== newXYWH) {
369
- this._onChange({
370
- props: {
371
- xywh: newXYWH,
372
- },
373
- oldValues: {
374
- xywh: curXYWH,
375
- },
376
- local: true,
377
- });
378
- }
721
+ if (this._xywhDirty || !this._local.has('xywh')) {
722
+ this._recomputeXYWH(true);
379
723
  }
380
724
  });
381
725
  return this._local.get('xywh') ?? '[0,0,0,0]';
382
726
  }
383
727
  set xywh(_) { }
728
+ /**
729
+ * Recompute the cached bound and notify the listeners when it moved.
730
+ *
731
+ * Always run it through {@link _mutex}: the notification re-enters the
732
+ * `xywh` getter (a parent group unites this bound again), and the mutex is
733
+ * what keeps that read from recomputing this very group a second time.
734
+ */
735
+ _recomputeXYWH(local) {
736
+ const oldXYWH = this._local.get('xywh') ?? '[0,0,0,0]';
737
+ const hadXYWH = this._local.has('xywh');
738
+ const nextXYWH = this._getXYWH().serialize();
739
+ this._xywhDirty = false;
740
+ if (hadXYWH && oldXYWH === nextXYWH) {
741
+ return;
742
+ }
743
+ // Set before notifying: the listeners read `xywh` back, and the mutex
744
+ // makes that read return the cached value instead of recomputing.
745
+ this._local.set('xywh', nextXYWH);
746
+ if (oldXYWH !== nextXYWH) {
747
+ this._onChange({
748
+ props: {
749
+ xywh: nextXYWH,
750
+ },
751
+ oldValues: {
752
+ xywh: oldXYWH,
753
+ },
754
+ local,
755
+ });
756
+ }
757
+ }
758
+ /**
759
+ * Pure: it only reads the children. The cache is written by
760
+ * {@link _recomputeXYWH}, which is the single place allowed to store it.
761
+ */
384
762
  _getXYWH() {
385
763
  let bound;
386
764
  this.childElements.forEach(child => {
@@ -389,14 +767,29 @@ export class GfxGroupLikeElementModel extends GfxPrimitiveElementModel {
389
767
  }
390
768
  bound = bound ? bound.unite(child.elementBound) : child.elementBound;
391
769
  });
392
- if (bound) {
393
- this._local.set('xywh', bound.serialize());
394
- }
395
- else {
396
- this._local.delete('xywh');
397
- }
398
770
  return bound ?? new Bound(0, 0, 0, 0);
399
771
  }
772
+ /**
773
+ * Mark the cached bound as stale without recomputing it. The next read of
774
+ * `xywh` pays for the recomputation, and notifies the listeners if the
775
+ * bound actually moved.
776
+ *
777
+ * Use it for the changes that only *may* move the bound (a custom prop a
778
+ * subclass folds into its own `elementBound`); use {@link refreshXYWH} for
779
+ * the changes that are known to move it.
780
+ */
781
+ invalidateXYWH() {
782
+ this._xywhDirty = true;
783
+ }
784
+ /**
785
+ * Recompute the cached bound right away, and notify the listeners when it
786
+ * moved. `local` is the origin of the mutation that moved it.
787
+ */
788
+ refreshXYWH(local) {
789
+ this._mutex(() => {
790
+ this._recomputeXYWH(local);
791
+ });
792
+ }
400
793
  /**
401
794
  * The actual field that stores the children of the group.
402
795
  * It should be a ymap decorated with `@field`.
@@ -418,6 +811,7 @@ export class GfxGroupLikeElementModel extends GfxPrimitiveElementModel {
418
811
  setChildIds(value, fromLocal) {
419
812
  const oldChildIds = this.childIds;
420
813
  this._childIds = value;
814
+ this.invalidateXYWH();
421
815
  this._onChange({
422
816
  props: {
423
817
  childIds: value,
@@ -446,12 +840,29 @@ export function syncElementFromY(model, callback) {
446
840
  disposables[key]?.();
447
841
  disposables[key] = watchText(key, value, callback);
448
842
  }
843
+ // A nested Y type declared with `@observe` gets a FRESH instance every
844
+ // time the key itself is rewritten — by a remote peer, or by undo/redo,
845
+ // neither of which goes through the accessor's setter (the only other
846
+ // caller of `startObserve`). Without this the observer is left on a
847
+ // detached type and every later in-place mutation goes unseen: set a
848
+ // tag, undo, redo, set another one, and the second write is invisible
849
+ // to the publisher. Guarded on identity so re-setting the same instance
850
+ // does not needlessly re-run the observer's initialising call.
851
+ if (model['_preserved'].get(key) !== value &&
852
+ hasObserveMeta(key, model)) {
853
+ startObserve(key, model);
854
+ }
449
855
  model['_preserved'].set(key, value);
450
856
  props[key] = value;
451
857
  oldValues[key] = oldValue;
452
858
  }
453
859
  else {
860
+ // `_preserved` is pruned FIRST: `startObserve` re-reads the accessor,
861
+ // which falls back to `_preserved`, so the other order would re-attach
862
+ // the observer to the very map that has just been deleted.
454
863
  model['_preserved'].delete(key);
864
+ if (hasObserveMeta(key, model))
865
+ startObserve(key, model);
455
866
  oldValues[key] = oldValue;
456
867
  }
457
868
  });
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Backlinks over `pivotDocId` — **computed, never persisted** (MF1, ADR 0005 § 5).
3
+ *
4
+ * The library ships one pure, synchronous collector and nothing else: no index,
5
+ * no reverse map, no cache, and nothing written back into the document. That is
6
+ * not an optimisation left for later, it is the invariant: "which boards
7
+ * mention this component" is a recomputation, always, so it can never drift
8
+ * from the document and can never be corrupted by a bad write — because there
9
+ * is no write.
10
+ *
11
+ * Cross-document aggregation ("every board where this component appears") is
12
+ * the host's job, built from per-document calls to
13
+ * {@link collectPivotOccurrences}. The repository has no backlink
14
+ * infrastructure and this module deliberately does not introduce one.
15
+ */
16
+ import type { GfxPrimitiveElementModel } from './element-model.js';
17
+ import type { SurfaceBlockModel } from './surface-model.js';
18
+ /** One element that is an occurrence of one pivot record. */
19
+ export type PivotOccurrence = {
20
+ /** The bound pivot record. */
21
+ pivotDocId: string;
22
+ /** The surface element that is an occurrence of it. */
23
+ elementId: string;
24
+ /** Element type, e.g. `'shape'`, `'wardleyNode'`, `'edgyNode'`. */
25
+ elementType: string;
26
+ };
27
+ /** A surface element whose binding is known to be present. */
28
+ export type PivotBoundElement = GfxPrimitiveElementModel & {
29
+ pivotDocId: string;
30
+ };
31
+ /**
32
+ * Whether the element carries a binding. Narrowing type guard, so a caller that
33
+ * has checked does not have to re-assert the string.
34
+ *
35
+ * An empty string is NOT a binding: `@field()` writes whatever it is given, and
36
+ * a host that passes `''` means "none". Treating it as a record id would send
37
+ * the provider looking for a document that cannot exist.
38
+ */
39
+ export declare function isPivotBound(el: GfxPrimitiveElementModel): el is PivotBoundElement;
40
+ /**
41
+ * Every occurrence on one surface, in element order. O(n) over the surface's
42
+ * elements; allocates nothing persistent.
43
+ *
44
+ * @param pivotDocId Restrict to one record. Omitted, every bound element is
45
+ * returned — which is what a host rebuilding its derived state wants
46
+ * (ADR 0006 § 4.2: the element is always the source of truth).
47
+ */
48
+ export declare function collectPivotOccurrences(surface: SurfaceBlockModel, pivotDocId?: string): PivotOccurrence[];
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Whether the element carries a binding. Narrowing type guard, so a caller that
3
+ * has checked does not have to re-assert the string.
4
+ *
5
+ * An empty string is NOT a binding: `@field()` writes whatever it is given, and
6
+ * a host that passes `''` means "none". Treating it as a record id would send
7
+ * the provider looking for a document that cannot exist.
8
+ */
9
+ export function isPivotBound(el) {
10
+ return typeof el.pivotDocId === 'string' && el.pivotDocId.length > 0;
11
+ }
12
+ /**
13
+ * Every occurrence on one surface, in element order. O(n) over the surface's
14
+ * elements; allocates nothing persistent.
15
+ *
16
+ * @param pivotDocId Restrict to one record. Omitted, every bound element is
17
+ * returned — which is what a host rebuilding its derived state wants
18
+ * (ADR 0006 § 4.2: the element is always the source of truth).
19
+ */
20
+ export function collectPivotOccurrences(surface, pivotDocId) {
21
+ const occurrences = [];
22
+ for (const element of surface.elementModels) {
23
+ if (!isPivotBound(element))
24
+ continue;
25
+ if (pivotDocId !== undefined && element.pivotDocId !== pivotDocId)
26
+ continue;
27
+ occurrences.push({
28
+ pivotDocId: element.pivotDocId,
29
+ elementId: element.id,
30
+ elementType: element.type,
31
+ });
32
+ }
33
+ return occurrences;
34
+ }