@formicoidea/labre-core 0.40.0 → 0.41.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 (433) hide show
  1. package/dist/_pkgs/affine-block-attachment/attachment-block.js +7 -2
  2. package/dist/_pkgs/affine-block-attachment/components/rename-model.js +3 -2
  3. package/dist/_pkgs/affine-block-attachment/configs/slash-menu.js +7 -0
  4. package/dist/_pkgs/affine-block-attachment/configs/toolbar.js +11 -3
  5. package/dist/_pkgs/affine-block-attachment/configs/tooltips.js +4 -4
  6. package/dist/_pkgs/affine-block-attachment/translations.d.ts +49 -0
  7. package/dist/_pkgs/affine-block-attachment/translations.js +98 -0
  8. package/dist/_pkgs/affine-block-attachment/utils.js +9 -6
  9. package/dist/_pkgs/affine-block-bookmark/components/bookmark-card.js +13 -6
  10. package/dist/_pkgs/affine-block-bookmark/configs/slash-menu.js +6 -1
  11. package/dist/_pkgs/affine-block-bookmark/configs/toolbar.js +9 -1
  12. package/dist/_pkgs/affine-block-bookmark/configs/tooltips.js +2 -2
  13. package/dist/_pkgs/affine-block-bookmark/translations.d.ts +26 -0
  14. package/dist/_pkgs/affine-block-bookmark/translations.js +55 -0
  15. package/dist/_pkgs/affine-block-callout/configs/slash-menu.js +4 -0
  16. package/dist/_pkgs/affine-block-callout/configs/tooltips.js +2 -2
  17. package/dist/_pkgs/affine-block-callout/translations.d.ts +16 -0
  18. package/dist/_pkgs/affine-block-callout/translations.js +24 -0
  19. package/dist/_pkgs/affine-block-code/code-block.js +6 -3
  20. package/dist/_pkgs/affine-block-code/code-toolbar/components/code-toolbar.js +4 -2
  21. package/dist/_pkgs/affine-block-code/code-toolbar/components/lang-button.js +3 -2
  22. package/dist/_pkgs/affine-block-code/code-toolbar/components/preview-button.js +4 -3
  23. package/dist/_pkgs/affine-block-code/code-toolbar/config.js +116 -72
  24. package/dist/_pkgs/affine-block-code/translations.d.ts +30 -0
  25. package/dist/_pkgs/affine-block-code/translations.js +84 -0
  26. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/config.js +2 -2
  27. package/dist/_pkgs/affine-block-embed/common/render-linked-doc.js +7 -6
  28. package/dist/_pkgs/affine-block-embed/configs/toolbar.js +11 -2
  29. package/dist/_pkgs/affine-block-embed/embed-html-block/components/fullscreen-toolbar.js +4 -3
  30. package/dist/_pkgs/affine-block-embed/embed-html-block/configs/toolbar.js +5 -1
  31. package/dist/_pkgs/affine-block-embed/embed-html-block/configs/tooltips.js +14 -14
  32. package/dist/_pkgs/affine-block-embed/embed-html-block/embed-html-block.js +7 -1
  33. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-error-card.js +11 -4
  34. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-idle-card.d.ts +2 -0
  35. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-idle-card.js +13 -3
  36. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-edit-popup.js +4 -2
  37. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-input-base.js +8 -5
  38. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-input-popup.js +21 -5
  39. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-loading-card.js +4 -1
  40. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/slash-menu/slash-menu.js +4 -0
  41. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/toolbar.d.ts +2 -0
  42. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/toolbar.js +6 -1
  43. package/dist/_pkgs/affine-block-embed/embed-iframe-block/embed-iframe-block.js +3 -1
  44. package/dist/_pkgs/affine-block-embed/translations.d.ts +46 -0
  45. package/dist/_pkgs/affine-block-embed/translations.js +114 -0
  46. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/slash-menu.js +7 -0
  47. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/toolbar.js +29 -12
  48. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/tooltips.js +4 -4
  49. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/embed-linked-doc-block.js +10 -4
  50. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/components/embed-synced-doc-card.js +8 -4
  51. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/configs/toolbar.js +28 -13
  52. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-edgeless-synced-doc-block.js +3 -2
  53. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-synced-doc-block.js +3 -2
  54. package/dist/_pkgs/affine-block-embed-doc/translations.d.ts +40 -0
  55. package/dist/_pkgs/affine-block-embed-doc/translations.js +85 -0
  56. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-dense-menu.js +29 -22
  57. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-menu.js +5 -1
  58. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-tool-button.js +2 -1
  59. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/presentation-toolbar.js +12 -9
  60. package/dist/_pkgs/affine-block-frame/frame-manager.js +8 -2
  61. package/dist/_pkgs/affine-block-frame/frame-tool.js +7 -2
  62. package/dist/_pkgs/affine-block-frame/frame-toolbar.js +12 -6
  63. package/dist/_pkgs/affine-block-frame/index.d.ts +1 -0
  64. package/dist/_pkgs/affine-block-frame/index.js +1 -0
  65. package/dist/_pkgs/affine-block-frame/present/frame-order-button.js +5 -1
  66. package/dist/_pkgs/affine-block-frame/present/navigator-setting-button.js +16 -6
  67. package/dist/_pkgs/affine-block-frame/present/present-button.js +3 -1
  68. package/dist/_pkgs/affine-block-frame/translations.d.ts +64 -0
  69. package/dist/_pkgs/affine-block-frame/translations.js +131 -0
  70. package/dist/_pkgs/affine-block-image/components/page-image-block.js +5 -2
  71. package/dist/_pkgs/affine-block-image/configs/slash-menu.js +4 -0
  72. package/dist/_pkgs/affine-block-image/configs/toolbar.js +7 -1
  73. package/dist/_pkgs/affine-block-image/configs/tooltips.js +1 -1
  74. package/dist/_pkgs/affine-block-image/image-block.js +3 -2
  75. package/dist/_pkgs/affine-block-image/image-edgeless-block.js +6 -3
  76. package/dist/_pkgs/affine-block-image/preview-image/page.js +5 -1
  77. package/dist/_pkgs/affine-block-image/translations.d.ts +35 -0
  78. package/dist/_pkgs/affine-block-image/translations.js +68 -0
  79. package/dist/_pkgs/affine-block-image/utils.js +9 -8
  80. package/dist/_pkgs/affine-block-latex/configs/slash-menu.d.ts +8 -0
  81. package/dist/_pkgs/affine-block-latex/configs/slash-menu.js +19 -3
  82. package/dist/_pkgs/affine-block-latex/latex-block.js +6 -2
  83. package/dist/_pkgs/affine-block-latex/translations.d.ts +35 -0
  84. package/dist/_pkgs/affine-block-latex/translations.js +60 -0
  85. package/dist/_pkgs/affine-block-note/components/edgeless-note-border-dropdown-menu.d.ts +9 -0
  86. package/dist/_pkgs/affine-block-note/components/edgeless-note-border-dropdown-menu.js +23 -6
  87. package/dist/_pkgs/affine-block-note/components/edgeless-note-display-mode-dropdown-menu.d.ts +4 -1
  88. package/dist/_pkgs/affine-block-note/components/edgeless-note-display-mode-dropdown-menu.js +26 -6
  89. package/dist/_pkgs/affine-block-note/components/edgeless-note-shadow-menu.d.ts +3 -0
  90. package/dist/_pkgs/affine-block-note/components/edgeless-note-shadow-menu.js +21 -10
  91. package/dist/_pkgs/affine-block-note/components/edgeless-note-style-panel.js +22 -8
  92. package/dist/_pkgs/affine-block-note/configs/slash-menu.js +13 -0
  93. package/dist/_pkgs/affine-block-note/configs/toolbar.js +26 -19
  94. package/dist/_pkgs/affine-block-note/configs/tooltips.js +57 -30
  95. package/dist/_pkgs/affine-block-note/move-block.js +8 -2
  96. package/dist/_pkgs/affine-block-note/translations.d.ts +91 -0
  97. package/dist/_pkgs/affine-block-note/translations.js +253 -0
  98. package/dist/_pkgs/affine-block-paragraph/paragraph-block.js +7 -2
  99. package/dist/_pkgs/affine-block-paragraph/translations.d.ts +31 -0
  100. package/dist/_pkgs/affine-block-paragraph/translations.js +44 -0
  101. package/dist/_pkgs/affine-block-paragraph/view.js +6 -1
  102. package/dist/_pkgs/affine-block-root/configs/toolbar.d.ts +3 -1
  103. package/dist/_pkgs/affine-block-root/configs/toolbar.js +6 -3
  104. package/dist/_pkgs/affine-block-root/edgeless/clipboard/utils.js +1 -1
  105. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/alignment.js +26 -4
  106. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/misc.d.ts +14 -0
  107. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/misc.js +10 -3
  108. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/more.d.ts +8 -0
  109. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/more.js +9 -0
  110. package/dist/_pkgs/affine-block-root/edgeless/edgeless-keyboard.js +15 -6
  111. package/dist/_pkgs/affine-block-root/edgeless/utils/consts.d.ts +0 -1
  112. package/dist/_pkgs/affine-block-root/edgeless/utils/consts.js +0 -1
  113. package/dist/_pkgs/affine-block-root/translations.d.ts +61 -0
  114. package/dist/_pkgs/affine-block-root/translations.js +172 -0
  115. package/dist/_pkgs/affine-block-surface/extensions/export-manager/export-manager.js +3 -1
  116. package/dist/_pkgs/affine-block-surface/extensions/index.d.ts +1 -0
  117. package/dist/_pkgs/affine-block-surface/extensions/index.js +1 -0
  118. package/dist/_pkgs/affine-block-surface/extensions/interchange-import.js +31 -12
  119. package/dist/_pkgs/affine-block-surface/extensions/interchange.d.ts +40 -8
  120. package/dist/_pkgs/affine-block-surface/extensions/interchange.js +27 -0
  121. package/dist/_pkgs/affine-block-surface/extensions/morph-toolbar.d.ts +2 -2
  122. package/dist/_pkgs/affine-block-surface/extensions/morph-toolbar.js +5 -2
  123. package/dist/_pkgs/affine-block-surface/extensions/reading-widget.js +3 -2
  124. package/dist/_pkgs/affine-block-surface/extensions/svg-sketch-translations.d.ts +48 -0
  125. package/dist/_pkgs/affine-block-surface/extensions/svg-sketch-translations.js +120 -0
  126. package/dist/_pkgs/affine-block-surface/extensions/svg-sketch.js +36 -23
  127. package/dist/_pkgs/affine-block-surface/extensions/tags-toolbar.js +5 -5
  128. package/dist/_pkgs/affine-block-surface-ref/components/placeholder.d.ts +2 -1
  129. package/dist/_pkgs/affine-block-surface-ref/components/placeholder.js +21 -6
  130. package/dist/_pkgs/affine-block-surface-ref/configs/slash-menu.js +24 -7
  131. package/dist/_pkgs/affine-block-surface-ref/configs/tooltips.js +2 -2
  132. package/dist/_pkgs/affine-block-surface-ref/index.d.ts +1 -0
  133. package/dist/_pkgs/affine-block-surface-ref/index.js +1 -0
  134. package/dist/_pkgs/affine-block-surface-ref/surface-ref-block-edgeless.js +1 -0
  135. package/dist/_pkgs/affine-block-surface-ref/surface-ref-block.js +1 -0
  136. package/dist/_pkgs/affine-block-surface-ref/translations.d.ts +83 -0
  137. package/dist/_pkgs/affine-block-surface-ref/translations.js +175 -0
  138. package/dist/_pkgs/affine-block-surface-ref/utils.d.ts +8 -1
  139. package/dist/_pkgs/affine-block-surface-ref/utils.js +12 -4
  140. package/dist/_pkgs/affine-components/caption/block-caption.js +3 -1
  141. package/dist/_pkgs/affine-components/card-style-dropdown-menu/dropdown-menu.js +4 -3
  142. package/dist/_pkgs/affine-components/citation/citation.d.ts +2 -0
  143. package/dist/_pkgs/affine-components/citation/citation.js +19 -3
  144. package/dist/_pkgs/affine-components/color-picker/button.d.ts +6 -0
  145. package/dist/_pkgs/affine-components/color-picker/button.js +15 -1
  146. package/dist/_pkgs/affine-components/color-picker/color-panel.d.ts +8 -0
  147. package/dist/_pkgs/affine-components/color-picker/color-panel.js +17 -2
  148. package/dist/_pkgs/affine-components/color-picker/color-picker.d.ts +4 -0
  149. package/dist/_pkgs/affine-components/color-picker/color-picker.js +27 -3
  150. package/dist/_pkgs/affine-components/color-picker/types.d.ts +21 -0
  151. package/dist/_pkgs/affine-components/color-picker/utils.d.ts +28 -2
  152. package/dist/_pkgs/affine-components/color-picker/utils.js +32 -0
  153. package/dist/_pkgs/affine-components/context-menu/menu-renderer.d.ts +3 -0
  154. package/dist/_pkgs/affine-components/context-menu/menu-renderer.js +34 -7
  155. package/dist/_pkgs/affine-components/edgeless-line-styles-panel/line-styles-panel.d.ts +2 -0
  156. package/dist/_pkgs/affine-components/edgeless-line-styles-panel/line-styles-panel.js +21 -2
  157. package/dist/_pkgs/affine-components/edgeless-line-width-panel/line-width-panel.d.ts +2 -0
  158. package/dist/_pkgs/affine-components/edgeless-line-width-panel/line-width-panel.js +18 -2
  159. package/dist/_pkgs/affine-components/edgeless-shape-color-picker/color-picker.d.ts +2 -0
  160. package/dist/_pkgs/affine-components/edgeless-shape-color-picker/color-picker.js +34 -5
  161. package/dist/_pkgs/affine-components/embed-card-modal/embed-card-create-modal.js +5 -4
  162. package/dist/_pkgs/affine-components/embed-card-modal/embed-card-edit-modal.js +11 -9
  163. package/dist/_pkgs/affine-components/filterable-list/index.d.ts +2 -0
  164. package/dist/_pkgs/affine-components/filterable-list/index.js +17 -2
  165. package/dist/_pkgs/affine-components/highlight-dropdown-menu/dropdown-menu.d.ts +3 -0
  166. package/dist/_pkgs/affine-components/highlight-dropdown-menu/dropdown-menu.js +40 -7
  167. package/dist/_pkgs/affine-components/icon-button/index.d.ts +1 -1
  168. package/dist/_pkgs/affine-components/icon-button/index.js +1 -1
  169. package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.d.ts +6 -0
  170. package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.js +42 -7
  171. package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.d.ts +4 -0
  172. package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.js +35 -5
  173. package/dist/_pkgs/affine-components/icon-picker/icon-picker.d.ts +2 -0
  174. package/dist/_pkgs/affine-components/icon-picker/icon-picker.js +22 -5
  175. package/dist/_pkgs/affine-components/linked-doc-title/doc-title.d.ts +2 -0
  176. package/dist/_pkgs/affine-components/linked-doc-title/doc-title.js +16 -3
  177. package/dist/_pkgs/affine-components/notification/linked-doc.js +5 -4
  178. package/dist/_pkgs/affine-components/open-doc-dropdown-menu/dropdown-menu.js +7 -4
  179. package/dist/_pkgs/affine-components/resource/resource.d.ts +16 -1
  180. package/dist/_pkgs/affine-components/resource/resource.js +19 -4
  181. package/dist/_pkgs/affine-components/resource/status.d.ts +2 -0
  182. package/dist/_pkgs/affine-components/resource/status.js +27 -12
  183. package/dist/_pkgs/affine-components/size-dropdown-menu/dropdown-menu.d.ts +4 -1
  184. package/dist/_pkgs/affine-components/size-dropdown-menu/dropdown-menu.js +23 -4
  185. package/dist/_pkgs/affine-components/toast/toast.d.ts +1 -1
  186. package/dist/_pkgs/affine-components/toast/toast.js +1 -1
  187. package/dist/_pkgs/affine-components/toggle-button/toggle-button.d.ts +3 -0
  188. package/dist/_pkgs/affine-components/toggle-button/toggle-button.js +18 -3
  189. package/dist/_pkgs/affine-components/toolbar/icon-button.d.ts +2 -0
  190. package/dist/_pkgs/affine-components/toolbar/icon-button.js +18 -2
  191. package/dist/_pkgs/affine-components/toolbar/tooltip.d.ts +3 -3
  192. package/dist/_pkgs/affine-components/toolbar/tooltip.js +3 -3
  193. package/dist/_pkgs/affine-components/translations.d.ts +141 -0
  194. package/dist/_pkgs/affine-components/translations.js +478 -0
  195. package/dist/_pkgs/affine-fragment-adapter-panel/adapter-panel.d.ts +3 -0
  196. package/dist/_pkgs/affine-fragment-adapter-panel/adapter-panel.js +12 -1
  197. package/dist/_pkgs/affine-fragment-adapter-panel/body/adapter-panel-body.js +4 -3
  198. package/dist/_pkgs/affine-fragment-adapter-panel/config.d.ts +13 -0
  199. package/dist/_pkgs/affine-fragment-adapter-panel/config.js +18 -4
  200. package/dist/_pkgs/affine-fragment-adapter-panel/header/adapter-menu.js +2 -2
  201. package/dist/_pkgs/affine-fragment-adapter-panel/header/adapter-panel-header.js +2 -2
  202. package/dist/_pkgs/affine-fragment-adapter-panel/translations.d.ts +24 -0
  203. package/dist/_pkgs/affine-fragment-adapter-panel/translations.js +37 -0
  204. package/dist/_pkgs/affine-fragment-doc-title/doc-title.d.ts +1 -0
  205. package/dist/_pkgs/affine-fragment-doc-title/doc-title.js +9 -1
  206. package/dist/_pkgs/affine-fragment-doc-title/translations.d.ts +13 -0
  207. package/dist/_pkgs/affine-fragment-doc-title/translations.js +17 -0
  208. package/dist/_pkgs/affine-fragment-frame-panel/body/frame-panel-body.js +3 -2
  209. package/dist/_pkgs/affine-fragment-frame-panel/header/frame-panel-header.js +10 -4
  210. package/dist/_pkgs/affine-fragment-frame-panel/header/frames-setting-menu.js +18 -6
  211. package/dist/_pkgs/affine-fragment-frame-panel/translations.d.ts +16 -0
  212. package/dist/_pkgs/affine-fragment-frame-panel/translations.js +44 -0
  213. package/dist/_pkgs/affine-fragment-outline/body/outline-notice.js +10 -4
  214. package/dist/_pkgs/affine-fragment-outline/body/outline-panel-body.js +6 -3
  215. package/dist/_pkgs/affine-fragment-outline/card/outline-card.js +13 -6
  216. package/dist/_pkgs/affine-fragment-outline/card/outline-preview.d.ts +1 -0
  217. package/dist/_pkgs/affine-fragment-outline/card/outline-preview.js +16 -9
  218. package/dist/_pkgs/affine-fragment-outline/config.d.ts +1 -20
  219. package/dist/_pkgs/affine-fragment-outline/config.js +8 -23
  220. package/dist/_pkgs/affine-fragment-outline/header/outline-panel-header.js +10 -3
  221. package/dist/_pkgs/affine-fragment-outline/header/outline-setting-menu.js +9 -2
  222. package/dist/_pkgs/affine-fragment-outline/outline-viewer.js +6 -3
  223. package/dist/_pkgs/affine-fragment-outline/translations.d.ts +54 -0
  224. package/dist/_pkgs/affine-fragment-outline/translations.js +110 -0
  225. package/dist/_pkgs/affine-gfx-brush/toolbar/components/eraser/eraser-tool-button.js +3 -2
  226. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/consts.d.ts +3 -0
  227. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/consts.js +3 -0
  228. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-menu.js +5 -4
  229. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-tool-button.js +3 -2
  230. package/dist/_pkgs/affine-gfx-brush/toolbar/configs/brush.js +4 -2
  231. package/dist/_pkgs/affine-gfx-brush/toolbar/configs/highlighter.js +4 -2
  232. package/dist/_pkgs/affine-gfx-brush/translations.d.ts +17 -0
  233. package/dist/_pkgs/affine-gfx-brush/translations.js +30 -0
  234. package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.d.ts +8 -1
  235. package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.js +7 -1
  236. package/dist/_pkgs/affine-gfx-connector/text/edgeless-connector-label-editor.js +3 -2
  237. package/dist/_pkgs/affine-gfx-connector/toolbar/config.d.ts +4 -1
  238. package/dist/_pkgs/affine-gfx-connector/toolbar/config.js +24 -10
  239. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-dense-menu.js +7 -5
  240. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-menu.js +8 -6
  241. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-tool-button.js +4 -3
  242. package/dist/_pkgs/affine-gfx-connector/translations.d.ts +32 -0
  243. package/dist/_pkgs/affine-gfx-connector/translations.js +79 -0
  244. package/dist/_pkgs/affine-gfx-group/command/group-api.js +6 -1
  245. package/dist/_pkgs/affine-gfx-group/index.d.ts +1 -0
  246. package/dist/_pkgs/affine-gfx-group/index.js +1 -0
  247. package/dist/_pkgs/affine-gfx-group/toolbar/config.d.ts +6 -2
  248. package/dist/_pkgs/affine-gfx-group/toolbar/config.js +9 -4
  249. package/dist/_pkgs/affine-gfx-group/translations.d.ts +24 -0
  250. package/dist/_pkgs/affine-gfx-group/translations.js +33 -0
  251. package/dist/_pkgs/affine-gfx-link/toolbar/undo-dense-menu.js +2 -1
  252. package/dist/_pkgs/affine-gfx-link/toolbar/undo-tool-button.js +2 -1
  253. package/dist/_pkgs/affine-gfx-mindmap/index.d.ts +1 -0
  254. package/dist/_pkgs/affine-gfx-mindmap/index.js +1 -0
  255. package/dist/_pkgs/affine-gfx-mindmap/templates/index.js +628 -577
  256. package/dist/_pkgs/affine-gfx-mindmap/toolbar/basket-elements.js +7 -3
  257. package/dist/_pkgs/affine-gfx-mindmap/toolbar/config.js +9 -1
  258. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-importing-placeholder.d.ts +4 -0
  259. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-importing-placeholder.js +70 -7
  260. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-menu.js +8 -5
  261. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-tool-button.js +4 -2
  262. package/dist/_pkgs/affine-gfx-mindmap/toolbar/senior-tool.js +7 -2
  263. package/dist/_pkgs/affine-gfx-mindmap/toolbar/utils/import-mindmap.d.ts +2 -1
  264. package/dist/_pkgs/affine-gfx-mindmap/toolbar/utils/import-mindmap.js +16 -8
  265. package/dist/_pkgs/affine-gfx-mindmap/translations.d.ts +84 -0
  266. package/dist/_pkgs/affine-gfx-mindmap/translations.js +171 -0
  267. package/dist/_pkgs/affine-gfx-note/components/note-display-mode-panel.d.ts +8 -0
  268. package/dist/_pkgs/affine-gfx-note/components/note-display-mode-panel.js +24 -9
  269. package/dist/_pkgs/affine-gfx-note/components/note-shadow-panel.d.ts +9 -0
  270. package/dist/_pkgs/affine-gfx-note/components/note-shadow-panel.js +28 -8
  271. package/dist/_pkgs/affine-gfx-note/toolbar/note-menu-config.d.ts +2 -1
  272. package/dist/_pkgs/affine-gfx-note/toolbar/note-menu-config.js +42 -73
  273. package/dist/_pkgs/affine-gfx-note/toolbar/note-menu.js +21 -17
  274. package/dist/_pkgs/affine-gfx-note/toolbar/note-senior-button.js +3 -2
  275. package/dist/_pkgs/affine-gfx-note/toolbar/note-tool-button.js +3 -1
  276. package/dist/_pkgs/affine-gfx-note/toolbar/senior-tool.js +3 -1
  277. package/dist/_pkgs/affine-gfx-note/translations.d.ts +27 -0
  278. package/dist/_pkgs/affine-gfx-note/translations.js +59 -0
  279. package/dist/_pkgs/affine-gfx-pointer/quick-tool/default-tool-button.js +10 -2
  280. package/dist/_pkgs/affine-gfx-pointer/translations.d.ts +9 -0
  281. package/dist/_pkgs/affine-gfx-pointer/translations.js +17 -0
  282. package/dist/_pkgs/affine-gfx-shape/components/shape-panel.d.ts +4 -0
  283. package/dist/_pkgs/affine-gfx-shape/components/shape-panel.js +17 -3
  284. package/dist/_pkgs/affine-gfx-shape/components/shape-style-panel.d.ts +4 -0
  285. package/dist/_pkgs/affine-gfx-shape/components/shape-style-panel.js +23 -5
  286. package/dist/_pkgs/affine-gfx-shape/draggable/shape-menu.d.ts +0 -1
  287. package/dist/_pkgs/affine-gfx-shape/draggable/shape-menu.js +6 -46
  288. package/dist/_pkgs/affine-gfx-shape/draggable/shape-tool-button.js +3 -1
  289. package/dist/_pkgs/affine-gfx-shape/toolbar/config.d.ts +2 -0
  290. package/dist/_pkgs/affine-gfx-shape/toolbar/config.js +29 -8
  291. package/dist/_pkgs/affine-gfx-shape/toolbar/senior-tool.js +2 -0
  292. package/dist/_pkgs/affine-gfx-shape/toolbar/shape-menu-config.d.ts +3 -0
  293. package/dist/_pkgs/affine-gfx-shape/toolbar/shape-menu-config.js +7 -0
  294. package/dist/_pkgs/affine-gfx-shape/translations.d.ts +37 -0
  295. package/dist/_pkgs/affine-gfx-shape/translations.js +93 -0
  296. package/dist/_pkgs/affine-gfx-template/builtin/other.js +70 -42
  297. package/dist/_pkgs/affine-gfx-template/contribute.js +8 -1
  298. package/dist/_pkgs/affine-gfx-template/index.d.ts +2 -0
  299. package/dist/_pkgs/affine-gfx-template/index.js +2 -0
  300. package/dist/_pkgs/affine-gfx-template/snapshot-from-action.d.ts +6 -1
  301. package/dist/_pkgs/affine-gfx-template/snapshot-from-action.js +15 -5
  302. package/dist/_pkgs/affine-gfx-template/toolbar/builtin-templates.d.ts +1 -0
  303. package/dist/_pkgs/affine-gfx-template/toolbar/builtin-templates.js +12 -0
  304. package/dist/_pkgs/affine-gfx-template/toolbar/resolve-name.d.ts +25 -0
  305. package/dist/_pkgs/affine-gfx-template/toolbar/resolve-name.js +36 -0
  306. package/dist/_pkgs/affine-gfx-template/toolbar/senior-tool.js +3 -1
  307. package/dist/_pkgs/affine-gfx-template/toolbar/template-panel.d.ts +1 -0
  308. package/dist/_pkgs/affine-gfx-template/toolbar/template-panel.js +30 -8
  309. package/dist/_pkgs/affine-gfx-template/toolbar/template-type.d.ts +41 -0
  310. package/dist/_pkgs/affine-gfx-template/translations.d.ts +71 -0
  311. package/dist/_pkgs/affine-gfx-template/translations.js +209 -0
  312. package/dist/_pkgs/affine-gfx-text/edgeless-text-editor.js +3 -2
  313. package/dist/_pkgs/affine-gfx-text/toolbar/actions.d.ts +1 -1
  314. package/dist/_pkgs/affine-gfx-text/toolbar/actions.js +22 -9
  315. package/dist/_pkgs/affine-gfx-text/toolbar/text-menu.js +1 -0
  316. package/dist/_pkgs/affine-gfx-text/translations.d.ts +31 -0
  317. package/dist/_pkgs/affine-gfx-text/translations.js +64 -0
  318. package/dist/_pkgs/affine-inline-footnote/footnote-node/footnote-popup.js +8 -2
  319. package/dist/_pkgs/affine-inline-latex/latex-node/latex-editor-menu.js +5 -2
  320. package/dist/_pkgs/affine-inline-latex/latex-node/latex-node.js +7 -2
  321. package/dist/_pkgs/affine-inline-latex/translations.d.ts +13 -0
  322. package/dist/_pkgs/affine-inline-latex/translations.js +16 -0
  323. package/dist/_pkgs/affine-inline-link/link-node/configs/toolbar.d.ts +3 -3
  324. package/dist/_pkgs/affine-inline-link/link-node/configs/toolbar.js +6 -5
  325. package/dist/_pkgs/affine-inline-link/link-node/link-popup/link-popup.js +11 -5
  326. package/dist/_pkgs/affine-inline-link/translations.d.ts +23 -0
  327. package/dist/_pkgs/affine-inline-link/translations.js +44 -0
  328. package/dist/_pkgs/affine-inline-mention/affine-mention.js +11 -5
  329. package/dist/_pkgs/affine-inline-mention/translations.d.ts +16 -0
  330. package/dist/_pkgs/affine-inline-mention/translations.js +29 -0
  331. package/dist/_pkgs/affine-inline-preset/command/config.d.ts +3 -0
  332. package/dist/_pkgs/affine-inline-preset/command/config.js +8 -0
  333. package/dist/_pkgs/affine-inline-preset/translations.d.ts +25 -0
  334. package/dist/_pkgs/affine-inline-preset/translations.js +28 -0
  335. package/dist/_pkgs/affine-inline-reference/reference-node/configs/toolbar.js +2 -2
  336. package/dist/_pkgs/affine-inline-reference/reference-node/reference-node.js +3 -3
  337. package/dist/_pkgs/affine-inline-reference/reference-node/reference-popup/reference-popup.js +8 -6
  338. package/dist/_pkgs/affine-inline-reference/translations.d.ts +8 -0
  339. package/dist/_pkgs/affine-inline-reference/translations.js +13 -0
  340. package/dist/_pkgs/affine-rich-text/conversion.d.ts +13 -0
  341. package/dist/_pkgs/affine-rich-text/conversion.js +27 -0
  342. package/dist/_pkgs/affine-shared/adapters/clipboard/clipboard.js +1 -1
  343. package/dist/_pkgs/affine-shared/adapters/clipboard/utils.d.ts +2 -1
  344. package/dist/_pkgs/affine-shared/adapters/clipboard/utils.js +6 -3
  345. package/dist/_pkgs/affine-shared/adapters/markdown/markdown.js +5 -2
  346. package/dist/_pkgs/affine-shared/adapters/mix-text.js +5 -2
  347. package/dist/_pkgs/affine-shared/adapters/plain-text/plain-text.js +5 -2
  348. package/dist/_pkgs/affine-shared/adapters/utils/index.d.ts +1 -0
  349. package/dist/_pkgs/affine-shared/adapters/utils/index.js +1 -0
  350. package/dist/_pkgs/affine-shared/adapters/utils/wording.d.ts +9 -0
  351. package/dist/_pkgs/affine-shared/adapters/utils/wording.js +12 -0
  352. package/dist/_pkgs/affine-shared/services/comment-service/utils.js +2 -0
  353. package/dist/_pkgs/affine-shared/services/doc-display-meta-service.js +6 -3
  354. package/dist/_pkgs/affine-shared/services/notification-service.js +18 -1
  355. package/dist/_pkgs/affine-shared/services/open-doc-config.d.ts +0 -1
  356. package/dist/_pkgs/affine-shared/services/open-doc-config.js +0 -2
  357. package/dist/_pkgs/affine-shared/services/translation-service/chrome.d.ts +362 -0
  358. package/dist/_pkgs/affine-shared/services/translation-service/chrome.js +955 -3
  359. package/dist/_pkgs/affine-shared/services/translation-service/index.d.ts +40 -2
  360. package/dist/_pkgs/affine-shared/services/translation-service/index.js +44 -3
  361. package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.d.ts +83 -2
  362. package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.js +92 -0
  363. package/dist/_pkgs/affine-widget-drag-handle/components/edgeless-preview/preview.d.ts +4 -0
  364. package/dist/_pkgs/affine-widget-drag-handle/components/edgeless-preview/preview.js +21 -8
  365. package/dist/_pkgs/affine-widget-drag-handle/helpers/preview-helper.js +1 -0
  366. package/dist/_pkgs/affine-widget-drag-handle/translations.d.ts +14 -0
  367. package/dist/_pkgs/affine-widget-drag-handle/translations.js +35 -0
  368. package/dist/_pkgs/affine-widget-edgeless-auto-connect/index.js +4 -3
  369. package/dist/_pkgs/affine-widget-edgeless-auto-connect/translations.d.ts +6 -0
  370. package/dist/_pkgs/affine-widget-edgeless-auto-connect/translations.js +14 -0
  371. package/dist/_pkgs/affine-widget-edgeless-selected-rect/auto-complete-panel.js +8 -5
  372. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-auto-complete.js +3 -2
  373. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-element-link.js +3 -1
  374. package/dist/_pkgs/affine-widget-edgeless-selected-rect/translations.d.ts +17 -0
  375. package/dist/_pkgs/affine-widget-edgeless-selected-rect/translations.js +30 -0
  376. package/dist/_pkgs/affine-widget-edgeless-toolbar/button/tool-icon-button.d.ts +4 -0
  377. package/dist/_pkgs/affine-widget-edgeless-toolbar/button/tool-icon-button.js +18 -2
  378. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-widget.js +2 -2
  379. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/consts.d.ts +2 -0
  380. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/consts.js +3 -0
  381. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/types.d.ts +18 -1
  382. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/utils.d.ts +8 -3
  383. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/utils.js +38 -18
  384. package/dist/_pkgs/affine-widget-edgeless-toolbar/edgeless-toolbar.js +2 -1
  385. package/dist/_pkgs/affine-widget-edgeless-toolbar/panel/font-weight-and-style-panel.d.ts +8 -0
  386. package/dist/_pkgs/affine-widget-edgeless-toolbar/panel/font-weight-and-style-panel.js +31 -8
  387. package/dist/_pkgs/affine-widget-edgeless-toolbar/translations.d.ts +15 -0
  388. package/dist/_pkgs/affine-widget-edgeless-toolbar/translations.js +20 -0
  389. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/translations.d.ts +7 -0
  390. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/translations.js +23 -0
  391. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/zoom-bar-toggle-button.js +3 -1
  392. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/zoom-toolbar.js +5 -3
  393. package/dist/_pkgs/affine-widget-linked-doc/config.js +15 -10
  394. package/dist/_pkgs/affine-widget-linked-doc/import-doc/import-doc.d.ts +12 -1
  395. package/dist/_pkgs/affine-widget-linked-doc/import-doc/import-doc.js +27 -18
  396. package/dist/_pkgs/affine-widget-linked-doc/import-doc/index.d.ts +4 -1
  397. package/dist/_pkgs/affine-widget-linked-doc/import-doc/index.js +2 -2
  398. package/dist/_pkgs/affine-widget-linked-doc/linked-doc-popover.js +4 -1
  399. package/dist/_pkgs/affine-widget-linked-doc/mobile-linked-doc-menu.js +6 -2
  400. package/dist/_pkgs/affine-widget-linked-doc/transformers/html.js +3 -2
  401. package/dist/_pkgs/affine-widget-linked-doc/transformers/markdown.js +3 -2
  402. package/dist/_pkgs/affine-widget-linked-doc/translations.d.ts +53 -0
  403. package/dist/_pkgs/affine-widget-linked-doc/translations.js +104 -0
  404. package/dist/_pkgs/affine-widget-remote-selection/edgeless/index.js +4 -1
  405. package/dist/_pkgs/affine-widget-remote-selection/translations.d.ts +12 -0
  406. package/dist/_pkgs/affine-widget-remote-selection/translations.js +12 -0
  407. package/dist/_pkgs/affine-widget-slash-menu/config.js +15 -0
  408. package/dist/_pkgs/affine-widget-slash-menu/index.d.ts +1 -0
  409. package/dist/_pkgs/affine-widget-slash-menu/index.js +1 -0
  410. package/dist/_pkgs/affine-widget-slash-menu/slash-menu-popover.js +30 -15
  411. package/dist/_pkgs/affine-widget-slash-menu/tooltips/copy.js +1 -1
  412. package/dist/_pkgs/affine-widget-slash-menu/tooltips/delete.js +2 -2
  413. package/dist/_pkgs/affine-widget-slash-menu/tooltips/index.js +9 -0
  414. package/dist/_pkgs/affine-widget-slash-menu/tooltips/move-down.js +2 -2
  415. package/dist/_pkgs/affine-widget-slash-menu/tooltips/move-up.js +2 -2
  416. package/dist/_pkgs/affine-widget-slash-menu/tooltips/now.js +3 -3
  417. package/dist/_pkgs/affine-widget-slash-menu/tooltips/today.js +2 -2
  418. package/dist/_pkgs/affine-widget-slash-menu/tooltips/tomorrow.js +3 -3
  419. package/dist/_pkgs/affine-widget-slash-menu/tooltips/yesterday.js +3 -3
  420. package/dist/_pkgs/affine-widget-slash-menu/translations.d.ts +91 -0
  421. package/dist/_pkgs/affine-widget-slash-menu/translations.js +175 -0
  422. package/dist/_pkgs/affine-widget-slash-menu/types.d.ts +18 -0
  423. package/dist/_pkgs/affine-widget-slash-menu/utils.d.ts +20 -1
  424. package/dist/_pkgs/affine-widget-slash-menu/utils.js +37 -0
  425. package/dist/_pkgs/affine-widget-toolbar/translations.d.ts +9 -0
  426. package/dist/_pkgs/affine-widget-toolbar/translations.js +13 -0
  427. package/dist/_pkgs/affine-widget-toolbar/utils.js +2 -1
  428. package/dist/_pkgs/std/extension/translation-manifest.d.ts +7 -0
  429. package/dist/_pkgs/std/translations.d.ts +24 -0
  430. package/dist/_pkgs/std/translations.js +28 -0
  431. package/dist/_pkgs/std/view/element/block-component.js +24 -7
  432. package/dist/translations.js +144 -5
  433. package/package.json +1 -1
@@ -0,0 +1,29 @@
1
+ import { UNKNOWN_LABEL, } from '../affine-shared/services/index.js';
2
+ /** `@labre/affine-inline-mention`'s own wordings — the @-mention chip's states. */
3
+ export const MENTION_UNKNOWN_MEMBER = [
4
+ 'com.labre.mention.unknown-member',
5
+ '@Unknown Member',
6
+ ];
7
+ export const MENTION_INACTIVE_MEMBER = [
8
+ 'com.labre.mention.inactive-member',
9
+ '@Inactive Member',
10
+ ];
11
+ export const MENTION_LOADING = [
12
+ 'com.labre.mention.loading',
13
+ '@loading',
14
+ ];
15
+ /**
16
+ * The fallback name shown when a resolved member's own name is empty — the
17
+ * member's REAL name (`userInfo$.value.name`) is never translated, only this
18
+ * one word that stands in for it.
19
+ */
20
+ export const MENTION_UNKNOWN_NAME_FALLBACK = UNKNOWN_LABEL;
21
+ /**
22
+ * Every wording declared above, in declaration order — walked by
23
+ * `PACKAGE_WORDINGS` in `packages/affine/all/src/translations.ts`.
24
+ */
25
+ export const MENTION_WORDINGS = [
26
+ MENTION_UNKNOWN_MEMBER,
27
+ MENTION_INACTIVE_MEMBER,
28
+ MENTION_LOADING,
29
+ ];
@@ -1,8 +1,11 @@
1
+ import { type ChromeWording } from '../../affine-shared/services/index.js';
1
2
  import { type EditorHost } from '../../std/index.js';
2
3
  import type { TemplateResult } from 'lit';
3
4
  export interface TextFormatConfig {
4
5
  id: string;
5
6
  name: string;
7
+ /** {@link name}, said as an i18n key — resolved by the widget that renders it. */
8
+ nameWording?: ChromeWording;
6
9
  icon: TemplateResult<1>;
7
10
  hotkey?: string;
8
11
  activeWhen: (host: EditorHost) => boolean;
@@ -1,11 +1,14 @@
1
1
  import { BoldIcon, CodeIcon, ItalicIcon, LinkIcon, StrikethroughIcon, UnderlineIcon, } from '../../affine-components/icons/index.js';
2
2
  import { toggleLink } from '../../affine-inline-link/index.js';
3
+ import {} from '../../affine-shared/services/index.js';
3
4
  import { TextSelection } from '../../std/index.js';
4
5
  import { isTextAttributeActive, toggleBold, toggleCode, toggleItalic, toggleStrike, toggleUnderline, } from './text-style.js';
6
+ import { TEXT_FORMAT_BOLD, TEXT_FORMAT_CODE, TEXT_FORMAT_ITALIC, TEXT_FORMAT_LINK, TEXT_FORMAT_STRIKETHROUGH, TEXT_FORMAT_UNDERLINE, } from '../translations.js';
5
7
  export const textFormatConfigs = [
6
8
  {
7
9
  id: 'bold',
8
10
  name: 'Bold',
11
+ nameWording: TEXT_FORMAT_BOLD,
9
12
  icon: BoldIcon,
10
13
  hotkey: 'Mod-b',
11
14
  activeWhen: host => {
@@ -22,6 +25,7 @@ export const textFormatConfigs = [
22
25
  {
23
26
  id: 'italic',
24
27
  name: 'Italic',
28
+ nameWording: TEXT_FORMAT_ITALIC,
25
29
  icon: ItalicIcon,
26
30
  hotkey: 'Mod-i',
27
31
  activeWhen: host => {
@@ -38,6 +42,7 @@ export const textFormatConfigs = [
38
42
  {
39
43
  id: 'underline',
40
44
  name: 'Underline',
45
+ nameWording: TEXT_FORMAT_UNDERLINE,
41
46
  icon: UnderlineIcon,
42
47
  hotkey: 'Mod-u',
43
48
  activeWhen: host => {
@@ -54,6 +59,7 @@ export const textFormatConfigs = [
54
59
  {
55
60
  id: 'strike',
56
61
  name: 'Strikethrough',
62
+ nameWording: TEXT_FORMAT_STRIKETHROUGH,
57
63
  icon: StrikethroughIcon,
58
64
  hotkey: 'Mod-shift-s',
59
65
  activeWhen: host => {
@@ -70,6 +76,7 @@ export const textFormatConfigs = [
70
76
  {
71
77
  id: 'code',
72
78
  name: 'Code',
79
+ nameWording: TEXT_FORMAT_CODE,
73
80
  icon: CodeIcon,
74
81
  hotkey: 'Mod-e',
75
82
  activeWhen: host => {
@@ -86,6 +93,7 @@ export const textFormatConfigs = [
86
93
  {
87
94
  id: 'link',
88
95
  name: 'Link',
96
+ nameWording: TEXT_FORMAT_LINK,
89
97
  icon: LinkIcon,
90
98
  hotkey: 'Mod-k',
91
99
  activeWhen: host => {
@@ -0,0 +1,25 @@
1
+ import { type ChromeWording, TEXT_FORMAT_BOLD, TEXT_FORMAT_ITALIC, TEXT_FORMAT_STRIKETHROUGH, TEXT_FORMAT_UNDERLINE } from '../affine-shared/services/index.js';
2
+ /**
3
+ * `@labre/affine-inline-preset`'s own wordings — `command/config.ts`'s
4
+ * `textFormatConfigs`. This is DATA (no `std` of its own): `name` is
5
+ * consumed as the format bar's tooltip by `blocks/root/src/configs/toolbar.ts`
6
+ * (a different lot), the same "static config rendered by a widget" pattern
7
+ * the slash menu already uses — a `nameWording` sibling next to `name`,
8
+ * resolved by whichever widget renders the entry.
9
+ *
10
+ * "Link" reuses `TOOLBAR_LINK` (`chrome.ts`) rather than minting a second key
11
+ * for the same word. `TEXT_FORMAT_BOLD`/`_ITALIC`/`_UNDERLINE`/
12
+ * `_STRIKETHROUGH` (L7 dedupe: shared verbatim with `blocks/note`'s own
13
+ * slash-menu items and tooltips) are declared once in `chrome.ts` and
14
+ * re-exported here under this package's own name; only "Code" stays this
15
+ * format's own.
16
+ */
17
+ export { TEXT_FORMAT_BOLD, TEXT_FORMAT_ITALIC, TEXT_FORMAT_UNDERLINE, TEXT_FORMAT_STRIKETHROUGH, };
18
+ export declare const TEXT_FORMAT_CODE: ChromeWording;
19
+ export declare const TEXT_FORMAT_LINK: ChromeWording;
20
+ /**
21
+ * Every wording DECLARED IN THIS FILE (not re-exported from `chrome.ts`), in
22
+ * declaration order — walked by `PACKAGE_WORDINGS` in
23
+ * `packages/affine/all/src/translations.ts`.
24
+ */
25
+ export declare const PRESET_WORDINGS: readonly ChromeWording[];
@@ -0,0 +1,28 @@
1
+ import { TEXT_FORMAT_BOLD, TEXT_FORMAT_ITALIC, TEXT_FORMAT_STRIKETHROUGH, TEXT_FORMAT_UNDERLINE, TOOLBAR_LINK, } from '../affine-shared/services/index.js';
2
+ /**
3
+ * `@labre/affine-inline-preset`'s own wordings — `command/config.ts`'s
4
+ * `textFormatConfigs`. This is DATA (no `std` of its own): `name` is
5
+ * consumed as the format bar's tooltip by `blocks/root/src/configs/toolbar.ts`
6
+ * (a different lot), the same "static config rendered by a widget" pattern
7
+ * the slash menu already uses — a `nameWording` sibling next to `name`,
8
+ * resolved by whichever widget renders the entry.
9
+ *
10
+ * "Link" reuses `TOOLBAR_LINK` (`chrome.ts`) rather than minting a second key
11
+ * for the same word. `TEXT_FORMAT_BOLD`/`_ITALIC`/`_UNDERLINE`/
12
+ * `_STRIKETHROUGH` (L7 dedupe: shared verbatim with `blocks/note`'s own
13
+ * slash-menu items and tooltips) are declared once in `chrome.ts` and
14
+ * re-exported here under this package's own name; only "Code" stays this
15
+ * format's own.
16
+ */
17
+ export { TEXT_FORMAT_BOLD, TEXT_FORMAT_ITALIC, TEXT_FORMAT_UNDERLINE, TEXT_FORMAT_STRIKETHROUGH, };
18
+ export const TEXT_FORMAT_CODE = [
19
+ 'com.labre.text-format.code',
20
+ 'Code',
21
+ ];
22
+ export const TEXT_FORMAT_LINK = TOOLBAR_LINK;
23
+ /**
24
+ * Every wording DECLARED IN THIS FILE (not re-exported from `chrome.ts`), in
25
+ * declaration order — walked by `PACKAGE_WORDINGS` in
26
+ * `packages/affine/all/src/translations.ts`.
27
+ */
28
+ export const PRESET_WORDINGS = [TEXT_FORMAT_CODE];
@@ -1,5 +1,5 @@
1
1
  import { notifyLinkedDocSwitchedToEmbed } from '../../../affine-components/notification/index.js';
2
- import { ActionPlacement, DocDisplayMetaProvider, TOOLBAR_CARD_VIEW, TOOLBAR_DELETE, TOOLBAR_EMBED_VIEW, TOOLBAR_INLINE_VIEW, toolbarActionLabel, } from '../../../affine-shared/services/index.js';
2
+ import { ActionPlacement, DocDisplayMetaProvider, TOOLBAR_CARD_VIEW, TOOLBAR_DELETE, TOOLBAR_EMBED_VIEW, TOOLBAR_INLINE_VIEW, toolbarActionLabel, translateKey, UNTITLED_DOC_LABEL, } from '../../../affine-shared/services/index.js';
3
3
  import { cloneReferenceInfoWithoutAliases, isInsideBlockByFlavour, } from '../../../affine-shared/utils/index.js';
4
4
  import { DeleteIcon } from '@blocksuite/icons/lit';
5
5
  import { BlockSelection } from '../../../std/index.js';
@@ -25,7 +25,7 @@ export const builtinInlineReferenceToolbarConfig = {
25
25
  if (!target.referenceInfo.title)
26
26
  return null;
27
27
  const originalTitle = ctx.std.get(DocDisplayMetaProvider).title(target.referenceInfo.pageId)
28
- .value || 'Untitled';
28
+ .value || translateKey(ctx.std, ...UNTITLED_DOC_LABEL);
29
29
  const open = (event) => target.open({ event });
30
30
  return html `<affine-linked-doc-title
31
31
  .title=${originalTitle}
@@ -34,8 +34,8 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
34
34
  };
35
35
  import { whenHover } from '../../affine-components/hover/index.js';
36
36
  import { Peekable } from '../../affine-components/peek/index.js';
37
- import { DEFAULT_DOC_NAME, REFERENCE_NODE } from '../../affine-shared/consts/index.js';
38
- import { DocDisplayMetaProvider, ToolbarRegistryIdentifier, } from '../../affine-shared/services/index.js';
37
+ import { REFERENCE_NODE } from '../../affine-shared/consts/index.js';
38
+ import { DOC_UNTITLED, DocDisplayMetaProvider, ToolbarRegistryIdentifier, translateKey, } from '../../affine-shared/services/index.js';
39
39
  import { affineTextStyles } from '../../affine-shared/styles/index.js';
40
40
  import { cloneReferenceInfo, referenceToNode, } from '../../affine-shared/utils/index.js';
41
41
  import { WithDisposable } from '../../global/lit/index.js';
@@ -121,7 +121,7 @@ let AffineReference = (() => {
121
121
  }
122
122
  `; }
123
123
  get docTitle() {
124
- return this.refMeta?.title ?? DEFAULT_DOC_NAME;
124
+ return this.refMeta?.title ?? translateKey(this.std, ...DOC_UNTITLED);
125
125
  }
126
126
  #refMeta_accessor_storage;
127
127
  // Since the linked doc may be deleted, the `_refMeta` could be undefined.
@@ -32,8 +32,9 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
32
32
  }
33
33
  return useValue ? value : void 0;
34
34
  };
35
+ import { RESET_LABEL, SAVE_LABEL } from '../../../affine-components/translations.js';
35
36
  import { REFERENCE_NODE } from '../../../affine-shared/consts/index.js';
36
- import { TelemetryProvider, } from '../../../affine-shared/services/index.js';
37
+ import { TelemetryProvider, translateKey, } from '../../../affine-shared/services/index.js';
37
38
  import { fontXSStyle, panelBaseStyle } from '../../../affine-shared/styles/index.js';
38
39
  import { stopPropagation } from '../../../affine-shared/utils/index.js';
39
40
  import { SignalWatcher, WithDisposable } from '../../../global/lit/index.js';
@@ -44,6 +45,7 @@ import { signal } from '@preact/signals-core';
44
45
  import { css, html } from 'lit';
45
46
  import { property, query } from 'lit/decorators.js';
46
47
  import { live } from 'lit/directives/live.js';
48
+ import { REFERENCE_TITLE_PLACEHOLDER } from '../../translations.js';
47
49
  let ReferencePopup = (() => {
48
50
  let _classSuper = SignalWatcher(WithDisposable(ShadowlessElement));
49
51
  let _abortController_decorators;
@@ -253,28 +255,28 @@ let ReferencePopup = (() => {
253
255
  <input
254
256
  id="alias-title"
255
257
  type="text"
256
- placeholder="Add a custom title"
258
+ placeholder=${translateKey(this.std, ...REFERENCE_TITLE_PLACEHOLDER)}
257
259
  .value=${live(this.title$.value)}
258
260
  @input=${this._updateTitle}
259
261
  />
260
262
  <editor-icon-button
261
- aria-label="Reset"
263
+ aria-label="${translateKey(this.std, ...RESET_LABEL)}"
262
264
  class="reset"
263
265
  .iconContainerPadding=${4}
264
- .tooltip=${'Reset'}
266
+ .tooltip=${translateKey(this.std, ...RESET_LABEL)}
265
267
  @click=${this._onReset}
266
268
  >
267
269
  ${ResetIcon({ width: '16px', height: '16px' })}
268
270
  </editor-icon-button>
269
271
  <editor-toolbar-separator></editor-toolbar-separator>
270
272
  <editor-icon-button
271
- aria-label="Save"
273
+ aria-label="${translateKey(this.std, ...SAVE_LABEL)}"
272
274
  class="save"
273
275
  .active=${true}
274
276
  @click=${this._onSave}
275
277
  >
276
278
  ${DoneIcon({ width: '16px', height: '16px' })}
277
- <span class="label">Save</span>
279
+ <span class="label">${translateKey(this.std, ...SAVE_LABEL)}</span>
278
280
  </editor-icon-button>
279
281
  </div>
280
282
  </div>
@@ -0,0 +1,8 @@
1
+ import { type ChromeWording } from '../affine-shared/services/index.js';
2
+ /** `@labre/affine-inline-reference`'s own wordings — the alias-editing popup. */
3
+ export declare const REFERENCE_TITLE_PLACEHOLDER: ChromeWording;
4
+ /**
5
+ * Every wording declared above, in declaration order — walked by
6
+ * `PACKAGE_WORDINGS` in `packages/affine/all/src/translations.ts`.
7
+ */
8
+ export declare const REFERENCE_WORDINGS: readonly ChromeWording[];
@@ -0,0 +1,13 @@
1
+ import {} from '../affine-shared/services/index.js';
2
+ /** `@labre/affine-inline-reference`'s own wordings — the alias-editing popup. */
3
+ export const REFERENCE_TITLE_PLACEHOLDER = [
4
+ 'com.labre.inline-reference.popup.title-placeholder',
5
+ 'Add a custom title',
6
+ ];
7
+ /**
8
+ * Every wording declared above, in declaration order — walked by
9
+ * `PACKAGE_WORDINGS` in `packages/affine/all/src/translations.ts`.
10
+ */
11
+ export const REFERENCE_WORDINGS = [
12
+ REFERENCE_TITLE_PLACEHOLDER,
13
+ ];
@@ -1,7 +1,18 @@
1
+ import { type ChromeWording } from '../affine-shared/services/index.js';
1
2
  import type { TemplateResult } from 'lit';
2
3
  /**
3
4
  * Text primitive entries used in slash menu and format bar,
4
5
  * which are also used for registering hotkeys for converting block flavours.
6
+ *
7
+ * `nameWording` / `descriptionWording` mirror the "static config rendered by
8
+ * a widget" pattern (`packages/affine/shared/src/services/translation-service/README.md`):
9
+ * this file has no `std` of its own — it is data, not a component — so the
10
+ * WORDS are declared once in `chrome.ts`'s "Block types" section (shared with
11
+ * `blocks/note` / `blocks/paragraph` / `blocks/list` / `widgets/slash-menu`,
12
+ * a different lot) and the widget that renders an entry resolves the sibling
13
+ * field with `translateKey` at render, the same way the slash menu resolves
14
+ * its own `nameWording`. The English `name` / `description` stay the
15
+ * identity and fallback.
5
16
  */
6
17
  export interface TextConversionConfig {
7
18
  flavour: string;
@@ -10,5 +21,7 @@ export interface TextConversionConfig {
10
21
  description?: string;
11
22
  hotkey: string[] | null;
12
23
  icon: TemplateResult<1>;
24
+ nameWording?: ChromeWording;
25
+ descriptionWording?: ChromeWording;
13
26
  }
14
27
  export declare const textConversionConfigs: TextConversionConfig[];
@@ -1,4 +1,5 @@
1
1
  import { BulletedListIcon, CheckBoxIcon, CodeBlockIcon, DividerIcon, Heading1Icon, Heading2Icon, Heading3Icon, Heading4Icon, Heading5Icon, Heading6Icon, NumberedListIcon, QuoteIcon, TextIcon, } from '../affine-components/icons/index.js';
2
+ import { BLOCK_TYPE_BULLETED_LIST, BLOCK_TYPE_BULLETED_LIST_DESCRIPTION, BLOCK_TYPE_CODE_BLOCK, BLOCK_TYPE_CODE_BLOCK_DESCRIPTION, BLOCK_TYPE_DIVIDER, BLOCK_TYPE_DIVIDER_DESCRIPTION, BLOCK_TYPE_HEADING_1, BLOCK_TYPE_HEADING_1_DESCRIPTION, BLOCK_TYPE_HEADING_2, BLOCK_TYPE_HEADING_2_DESCRIPTION, BLOCK_TYPE_HEADING_3, BLOCK_TYPE_HEADING_3_DESCRIPTION, BLOCK_TYPE_HEADING_4, BLOCK_TYPE_HEADING_4_DESCRIPTION, BLOCK_TYPE_HEADING_5, BLOCK_TYPE_HEADING_5_DESCRIPTION, BLOCK_TYPE_HEADING_6, BLOCK_TYPE_HEADING_6_DESCRIPTION, BLOCK_TYPE_NUMBERED_LIST, BLOCK_TYPE_NUMBERED_LIST_DESCRIPTION, BLOCK_TYPE_QUOTE, BLOCK_TYPE_QUOTE_DESCRIPTION, BLOCK_TYPE_TEXT, BLOCK_TYPE_TEXT_DESCRIPTION, BLOCK_TYPE_TODO_LIST, BLOCK_TYPE_TODO_LIST_DESCRIPTION, } from '../affine-shared/services/index.js';
2
3
  export const textConversionConfigs = [
3
4
  {
4
5
  flavour: 'affine:paragraph',
@@ -7,6 +8,8 @@ export const textConversionConfigs = [
7
8
  description: 'Start typing with plain text.',
8
9
  hotkey: [`Mod-Alt-0`, `Mod-Shift-0`],
9
10
  icon: TextIcon,
11
+ nameWording: BLOCK_TYPE_TEXT,
12
+ descriptionWording: BLOCK_TYPE_TEXT_DESCRIPTION,
10
13
  },
11
14
  {
12
15
  flavour: 'affine:paragraph',
@@ -15,6 +18,8 @@ export const textConversionConfigs = [
15
18
  description: 'Headings in the largest font.',
16
19
  hotkey: [`Mod-Alt-1`, `Mod-Shift-1`],
17
20
  icon: Heading1Icon,
21
+ nameWording: BLOCK_TYPE_HEADING_1,
22
+ descriptionWording: BLOCK_TYPE_HEADING_1_DESCRIPTION,
18
23
  },
19
24
  {
20
25
  flavour: 'affine:paragraph',
@@ -23,6 +28,8 @@ export const textConversionConfigs = [
23
28
  description: 'Headings in the 2nd font size.',
24
29
  hotkey: [`Mod-Alt-2`, `Mod-Shift-2`],
25
30
  icon: Heading2Icon,
31
+ nameWording: BLOCK_TYPE_HEADING_2,
32
+ descriptionWording: BLOCK_TYPE_HEADING_2_DESCRIPTION,
26
33
  },
27
34
  {
28
35
  flavour: 'affine:paragraph',
@@ -31,6 +38,8 @@ export const textConversionConfigs = [
31
38
  description: 'Headings in the 3rd font size.',
32
39
  hotkey: [`Mod-Alt-3`, `Mod-Shift-3`],
33
40
  icon: Heading3Icon,
41
+ nameWording: BLOCK_TYPE_HEADING_3,
42
+ descriptionWording: BLOCK_TYPE_HEADING_3_DESCRIPTION,
34
43
  },
35
44
  {
36
45
  flavour: 'affine:paragraph',
@@ -39,6 +48,8 @@ export const textConversionConfigs = [
39
48
  description: 'Headings in the 4th font size.',
40
49
  hotkey: [`Mod-Alt-4`, `Mod-Shift-4`],
41
50
  icon: Heading4Icon,
51
+ nameWording: BLOCK_TYPE_HEADING_4,
52
+ descriptionWording: BLOCK_TYPE_HEADING_4_DESCRIPTION,
42
53
  },
43
54
  {
44
55
  flavour: 'affine:paragraph',
@@ -47,6 +58,8 @@ export const textConversionConfigs = [
47
58
  description: 'Headings in the 5th font size.',
48
59
  hotkey: [`Mod-Alt-5`, `Mod-Shift-5`],
49
60
  icon: Heading5Icon,
61
+ nameWording: BLOCK_TYPE_HEADING_5,
62
+ descriptionWording: BLOCK_TYPE_HEADING_5_DESCRIPTION,
50
63
  },
51
64
  {
52
65
  flavour: 'affine:paragraph',
@@ -55,6 +68,8 @@ export const textConversionConfigs = [
55
68
  description: 'Headings in the 6th font size.',
56
69
  hotkey: [`Mod-Alt-6`, `Mod-Shift-6`],
57
70
  icon: Heading6Icon,
71
+ nameWording: BLOCK_TYPE_HEADING_6,
72
+ descriptionWording: BLOCK_TYPE_HEADING_6_DESCRIPTION,
58
73
  },
59
74
  {
60
75
  flavour: 'affine:list',
@@ -63,6 +78,8 @@ export const textConversionConfigs = [
63
78
  description: 'Create a bulleted list.',
64
79
  hotkey: [`Mod-Alt-8`, `Mod-Shift-8`],
65
80
  icon: BulletedListIcon,
81
+ nameWording: BLOCK_TYPE_BULLETED_LIST,
82
+ descriptionWording: BLOCK_TYPE_BULLETED_LIST_DESCRIPTION,
66
83
  },
67
84
  {
68
85
  flavour: 'affine:list',
@@ -71,6 +88,8 @@ export const textConversionConfigs = [
71
88
  description: 'Create a numbered list.',
72
89
  hotkey: [`Mod-Alt-9`, `Mod-Shift-9`],
73
90
  icon: NumberedListIcon,
91
+ nameWording: BLOCK_TYPE_NUMBERED_LIST,
92
+ descriptionWording: BLOCK_TYPE_NUMBERED_LIST_DESCRIPTION,
74
93
  },
75
94
  {
76
95
  flavour: 'affine:list',
@@ -79,6 +98,8 @@ export const textConversionConfigs = [
79
98
  description: 'Add tasks to a to-do list.',
80
99
  hotkey: null,
81
100
  icon: CheckBoxIcon,
101
+ nameWording: BLOCK_TYPE_TODO_LIST,
102
+ descriptionWording: BLOCK_TYPE_TODO_LIST_DESCRIPTION,
82
103
  },
83
104
  {
84
105
  flavour: 'affine:code',
@@ -87,6 +108,8 @@ export const textConversionConfigs = [
87
108
  description: 'Code snippet with formatting.',
88
109
  hotkey: [`Mod-Alt-c`],
89
110
  icon: CodeBlockIcon,
111
+ nameWording: BLOCK_TYPE_CODE_BLOCK,
112
+ descriptionWording: BLOCK_TYPE_CODE_BLOCK_DESCRIPTION,
90
113
  },
91
114
  {
92
115
  flavour: 'affine:paragraph',
@@ -95,6 +118,8 @@ export const textConversionConfigs = [
95
118
  description: 'Add a blockquote for emphasis.',
96
119
  hotkey: null,
97
120
  icon: QuoteIcon,
121
+ nameWording: BLOCK_TYPE_QUOTE,
122
+ descriptionWording: BLOCK_TYPE_QUOTE_DESCRIPTION,
98
123
  },
99
124
  {
100
125
  flavour: 'affine:divider',
@@ -103,5 +128,7 @@ export const textConversionConfigs = [
103
128
  description: 'Visually separate content.',
104
129
  hotkey: [`Mod-Alt-d`, `Mod-Shift-d`],
105
130
  icon: DividerIcon,
131
+ nameWording: BLOCK_TYPE_DIVIDER,
132
+ descriptionWording: BLOCK_TYPE_DIVIDER_DESCRIPTION,
106
133
  },
107
134
  ];
@@ -26,7 +26,7 @@ export class ClipboardAdapter extends BaseAdapter {
26
26
  throw new BlockSuiteError(ErrorCode.ValueNotExists, 'ClipboardAdapter.fromSliceSnapshot: assets is not found');
27
27
  }
28
28
  const map = assets.getAssets();
29
- const blobs = await encodeClipboardBlobs(map, this._onError);
29
+ const blobs = await encodeClipboardBlobs(map, this._onError, this.provider);
30
30
  return {
31
31
  file: JSON.stringify({
32
32
  snapshot,
@@ -1,5 +1,6 @@
1
+ import type { ServiceProvider } from '../../../global/di/index.js';
1
2
  import type { FileSnapshot } from './clipboard.js';
2
3
  export declare const encode: (arraybuffer: ArrayBuffer) => string;
3
4
  export declare const decode: (base64: string) => ArrayBuffer;
4
- export declare function encodeClipboardBlobs(map: Map<string, Blob>, onError?: (message: string) => void): Promise<Record<string, FileSnapshot>>;
5
+ export declare function encodeClipboardBlobs(map: Map<string, Blob>, onError?: (message: string) => void, provider?: ServiceProvider): Promise<Record<string, FileSnapshot>>;
5
6
  export declare function decodeClipboardBlobs(blobs: Record<string, FileSnapshot>, map: Map<string, Blob> | undefined): void;
@@ -1,3 +1,5 @@
1
+ import { CHROME_CLIPBOARD_FILE_TOO_LARGE, CHROME_CLIPBOARD_SIZE_LIMIT, } from '../../services/translation-service/chrome.js';
2
+ import { resolveWording } from '../utils/wording.js';
1
3
  const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
2
4
  // Use a lookup table to find the index.
3
5
  const lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);
@@ -43,18 +45,19 @@ export const decode = (base64) => {
43
45
  }
44
46
  return arraybuffer;
45
47
  };
46
- export async function encodeClipboardBlobs(map, onError) {
48
+ export async function encodeClipboardBlobs(map, onError, provider) {
47
49
  const blobs = {};
48
50
  let sumSize = 0;
49
51
  await Promise.all(Array.from(map.entries()).map(async ([id, blob]) => {
50
52
  if (blob.size > 4 * 1024 * 1024) {
51
- onError?.(blob.name ?? 'File' + ' is too large to be copied');
53
+ onError?.(blob.name ??
54
+ resolveWording(provider, CHROME_CLIPBOARD_FILE_TOO_LARGE));
52
55
  return;
53
56
  }
54
57
  sumSize += blob.size;
55
58
  if (sumSize > 6 * 1024 * 1024) {
56
59
  onError?.(blob.name ??
57
- 'File' + ' cannot be copied due to the clipboard size limit');
60
+ resolveWording(provider, CHROME_CLIPBOARD_SIZE_LIMIT));
58
61
  return;
59
62
  }
60
63
  const content = encode(await blob.arrayBuffer());
@@ -11,6 +11,8 @@ import { InlineDeltaToMarkdownAdapterMatcherIdentifier, MarkdownASTToDeltaMatche
11
11
  import { remarkGfm } from './gfm.js';
12
12
  import { MarkdownPreprocessorManager } from './preprocessor.js';
13
13
  import { remarkCallout } from './remark-plugins/remark-callout.js';
14
+ import { CHROME_UNTITLED } from '../../services/translation-service/chrome.js';
15
+ import { resolveWording } from '../utils/wording.js';
14
16
  export class MarkdownAdapter extends BaseAdapter {
15
17
  constructor(job, provider) {
16
18
  super(job, provider);
@@ -192,6 +194,7 @@ export class MarkdownAdapter extends BaseAdapter {
192
194
  async toDocSnapshot(payload) {
193
195
  const markdownFile = this.preprocessorManager.process('doc', payload.file);
194
196
  const markdownAst = this._markdownToAst(markdownFile);
197
+ const untitled = resolveWording(this.provider, CHROME_UNTITLED);
195
198
  const blockSnapshotRoot = {
196
199
  type: 'block',
197
200
  id: nanoid(),
@@ -209,7 +212,7 @@ export class MarkdownAdapter extends BaseAdapter {
209
212
  type: 'page',
210
213
  meta: {
211
214
  id: nanoid(),
212
- title: 'Untitled',
215
+ title: untitled,
213
216
  createDate: Date.now(),
214
217
  tags: [],
215
218
  },
@@ -222,7 +225,7 @@ export class MarkdownAdapter extends BaseAdapter {
222
225
  '$blocksuite:internal:text$': true,
223
226
  delta: [
224
227
  {
225
- insert: 'Untitled',
228
+ insert: untitled,
226
229
  },
227
230
  ],
228
231
  },
@@ -1,7 +1,9 @@
1
1
  import { DefaultTheme, NoteDisplayMode } from '../../affine-model/index.js';
2
2
  import { ASTWalker, BaseAdapter, BlockSnapshotSchema, nanoid, } from '../../store/index.js';
3
3
  import { MarkdownAdapter } from './markdown/markdown.js';
4
+ import { CHROME_UNTITLED } from '../services/translation-service/chrome.js';
4
5
  import { AdapterFactoryIdentifier } from './types/adapter.js';
6
+ import { resolveWording } from './utils/wording.js';
5
7
  export class MixTextAdapter extends BaseAdapter {
6
8
  constructor(job, provider) {
7
9
  super(job, provider);
@@ -135,11 +137,12 @@ export class MixTextAdapter extends BaseAdapter {
135
137
  }
136
138
  toDocSnapshot(payload) {
137
139
  payload.file = payload.file.replaceAll('\r', '');
140
+ const untitled = resolveWording(this.provider, CHROME_UNTITLED);
138
141
  return {
139
142
  type: 'page',
140
143
  meta: {
141
144
  id: nanoid(),
142
- title: 'Untitled',
145
+ title: untitled,
143
146
  createDate: Date.now(),
144
147
  tags: [],
145
148
  },
@@ -152,7 +155,7 @@ export class MixTextAdapter extends BaseAdapter {
152
155
  '$blocksuite:internal:text$': true,
153
156
  delta: [
154
157
  {
155
- insert: 'Untitled',
158
+ insert: untitled,
156
159
  },
157
160
  ],
158
161
  },
@@ -3,6 +3,8 @@ import { ASTWalker, BaseAdapter, BlockSnapshotSchema, nanoid, } from '../../../s
3
3
  import { AdapterFactoryIdentifier, } from '../types/index.js';
4
4
  import { BlockPlainTextAdapterMatcherIdentifier, } from './block-adapter.js';
5
5
  import { InlineDeltaToPlainTextAdapterMatcherIdentifier, PlainTextDeltaConverter, } from './delta-converter.js';
6
+ import { CHROME_UNTITLED } from '../../services/translation-service/chrome.js';
7
+ import { resolveWording } from '../utils/wording.js';
6
8
  export class PlainTextAdapter extends BaseAdapter {
7
9
  constructor(job, provider) {
8
10
  super(job, provider);
@@ -125,11 +127,12 @@ export class PlainTextAdapter extends BaseAdapter {
125
127
  }
126
128
  toDocSnapshot(payload) {
127
129
  payload.file = payload.file.replaceAll('\r', '');
130
+ const untitled = resolveWording(this.provider, CHROME_UNTITLED);
128
131
  return {
129
132
  type: 'page',
130
133
  meta: {
131
134
  id: nanoid(),
132
- title: 'Untitled',
135
+ title: untitled,
133
136
  createDate: Date.now(),
134
137
  tags: [],
135
138
  },
@@ -142,7 +145,7 @@ export class PlainTextAdapter extends BaseAdapter {
142
145
  '$blocksuite:internal:text$': true,
143
146
  delta: [
144
147
  {
145
- insert: 'Untitled',
148
+ insert: untitled,
146
149
  },
147
150
  ],
148
151
  },
@@ -3,3 +3,4 @@ export * from './fetch.js';
3
3
  export * from './file-path.js';
4
4
  export * from './hast.js';
5
5
  export * from './text.js';
6
+ export * from './wording.js';
@@ -3,3 +3,4 @@ export * from './fetch.js';
3
3
  export * from './file-path.js';
4
4
  export * from './hast.js';
5
5
  export * from './text.js';
6
+ export * from './wording.js';
@@ -0,0 +1,9 @@
1
+ import type { ServiceProvider } from '../../../global/di/index.js';
2
+ /**
3
+ * `translateKey`'s own contract, over a `ServiceProvider` rather than a
4
+ * `BlockStdScope` — an adapter/transformer (`ClipboardAdapter`, the markdown
5
+ * / mix-text / plain-text `toDocSnapshot` importers…) has no `std`, only the
6
+ * provider `std.getOptional` itself delegates to. `undefined` (no provider
7
+ * handed in) resolves exactly like no host registered one.
8
+ */
9
+ export declare function resolveWording(provider: ServiceProvider | undefined, wording: readonly [key: string, fallback: string]): string;
@@ -0,0 +1,12 @@
1
+ import { TranslationProvider } from '../../services/translation-service/index.js';
2
+ /**
3
+ * `translateKey`'s own contract, over a `ServiceProvider` rather than a
4
+ * `BlockStdScope` — an adapter/transformer (`ClipboardAdapter`, the markdown
5
+ * / mix-text / plain-text `toDocSnapshot` importers…) has no `std`, only the
6
+ * provider `std.getOptional` itself delegates to. `undefined` (no provider
7
+ * handed in) resolves exactly like no host registered one.
8
+ */
9
+ export function resolveWording(provider, wording) {
10
+ const resolved = provider?.getOptional(TranslationProvider)?.t(wording[0]);
11
+ return resolved !== undefined && resolved !== '' ? resolved : wording[1];
12
+ }
@@ -1,5 +1,6 @@
1
1
  import { CommentIcon } from '@blocksuite/icons/lit';
2
2
  import { BlockSelection } from '../../../std/index.js';
3
+ import { TOOLBAR_COMMENT } from '../translation-service/chrome.js';
3
4
  import { CommentProviderIdentifier } from './comment-provider.js';
4
5
  export function findAllCommentedBlocks(store) {
5
6
  return store.getAllModels().filter((block) => {
@@ -15,6 +16,7 @@ export function findCommentedBlocks(store, commentId) {
15
16
  }
16
17
  export const blockCommentToolbarButton = {
17
18
  tooltip: 'Comment',
19
+ tooltipWording: TOOLBAR_COMMENT,
18
20
  when: ({ std }) => !!std.getOptional(CommentProviderIdentifier),
19
21
  icon: CommentIcon(),
20
22
  run: ctx => {
@@ -5,6 +5,8 @@ import { LifeCycleWatcher, StdIdentifier } from '../../std/index.js';
5
5
  import { computed, signal, } from '@preact/signals-core';
6
6
  import { referenceToNode } from '../utils/reference.js';
7
7
  import { DocModeProvider } from './doc-mode-service.js';
8
+ import { CHROME_DELETED_DOC, CHROME_UNTITLED, } from './translation-service/chrome.js';
9
+ import { translateKey } from './translation-service/index.js';
8
10
  export const DocDisplayMetaProvider = createIdentifier('DocDisplayMetaService');
9
11
  export class DocDisplayMetaService extends LifeCycleWatcher {
10
12
  constructor() {
@@ -77,14 +79,15 @@ export class DocDisplayMetaService extends LifeCycleWatcher {
77
79
  title(pageId, { title } = {}) {
78
80
  const doc = this.std.workspace.getDoc(pageId);
79
81
  if (!doc) {
80
- return computed(() => title || 'Deleted doc');
82
+ return computed(() => title || translateKey(this.std, ...CHROME_DELETED_DOC));
81
83
  }
82
84
  const store = doc.getStore();
83
85
  let title$ = this.titleMap.get(store);
84
86
  if (!title$) {
85
- title$ = signal(doc.meta?.title || 'Untitled');
87
+ title$ = signal(doc.meta?.title || translateKey(this.std, ...CHROME_UNTITLED));
86
88
  const disposable = this.std.workspace.slots.docListUpdated.subscribe(() => {
87
- title$.value = doc.meta?.title || 'Untitled';
89
+ title$.value =
90
+ doc.meta?.title || translateKey(this.std, ...CHROME_UNTITLED);
88
91
  });
89
92
  this.disposables.push(disposable);
90
93
  this.titleMap.set(store, title$);