@formicoidea/labre-core 0.39.3 → 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 (449) 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/emoji-margin.js +19 -11
  18. package/dist/_pkgs/affine-block-callout/translations.d.ts +16 -0
  19. package/dist/_pkgs/affine-block-callout/translations.js +24 -0
  20. package/dist/_pkgs/affine-block-code/code-block.js +6 -3
  21. package/dist/_pkgs/affine-block-code/code-toolbar/components/code-toolbar.js +4 -2
  22. package/dist/_pkgs/affine-block-code/code-toolbar/components/lang-button.js +3 -2
  23. package/dist/_pkgs/affine-block-code/code-toolbar/components/preview-button.js +4 -3
  24. package/dist/_pkgs/affine-block-code/code-toolbar/config.js +116 -72
  25. package/dist/_pkgs/affine-block-code/translations.d.ts +30 -0
  26. package/dist/_pkgs/affine-block-code/translations.js +84 -0
  27. package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/config.js +2 -2
  28. package/dist/_pkgs/affine-block-embed/common/render-linked-doc.js +7 -6
  29. package/dist/_pkgs/affine-block-embed/configs/toolbar.js +11 -2
  30. package/dist/_pkgs/affine-block-embed/embed-html-block/components/fullscreen-toolbar.js +4 -3
  31. package/dist/_pkgs/affine-block-embed/embed-html-block/configs/toolbar.js +5 -1
  32. package/dist/_pkgs/affine-block-embed/embed-html-block/configs/tooltips.js +14 -14
  33. package/dist/_pkgs/affine-block-embed/embed-html-block/embed-html-block.js +7 -1
  34. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-error-card.js +11 -4
  35. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-idle-card.d.ts +2 -0
  36. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-idle-card.js +13 -3
  37. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-edit-popup.js +4 -2
  38. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-input-base.js +8 -5
  39. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-link-input-popup.js +21 -5
  40. package/dist/_pkgs/affine-block-embed/embed-iframe-block/components/embed-iframe-loading-card.js +4 -1
  41. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/slash-menu/slash-menu.js +4 -0
  42. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/toolbar.d.ts +2 -0
  43. package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/toolbar.js +6 -1
  44. package/dist/_pkgs/affine-block-embed/embed-iframe-block/embed-iframe-block.js +3 -1
  45. package/dist/_pkgs/affine-block-embed/translations.d.ts +46 -0
  46. package/dist/_pkgs/affine-block-embed/translations.js +114 -0
  47. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/slash-menu.js +7 -0
  48. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/toolbar.js +29 -12
  49. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/tooltips.js +4 -4
  50. package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/embed-linked-doc-block.js +10 -4
  51. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/components/embed-synced-doc-card.js +8 -4
  52. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/configs/toolbar.js +28 -13
  53. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-edgeless-synced-doc-block.js +3 -2
  54. package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-synced-doc-block.js +3 -2
  55. package/dist/_pkgs/affine-block-embed-doc/translations.d.ts +40 -0
  56. package/dist/_pkgs/affine-block-embed-doc/translations.js +85 -0
  57. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-dense-menu.js +29 -22
  58. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-menu.js +5 -1
  59. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/frame-tool-button.js +2 -1
  60. package/dist/_pkgs/affine-block-frame/edgeless-toolbar/presentation-toolbar.js +12 -9
  61. package/dist/_pkgs/affine-block-frame/frame-manager.js +8 -2
  62. package/dist/_pkgs/affine-block-frame/frame-tool.js +7 -2
  63. package/dist/_pkgs/affine-block-frame/frame-toolbar.js +12 -6
  64. package/dist/_pkgs/affine-block-frame/index.d.ts +1 -0
  65. package/dist/_pkgs/affine-block-frame/index.js +1 -0
  66. package/dist/_pkgs/affine-block-frame/present/frame-order-button.js +5 -1
  67. package/dist/_pkgs/affine-block-frame/present/navigator-setting-button.js +16 -6
  68. package/dist/_pkgs/affine-block-frame/present/present-button.js +3 -1
  69. package/dist/_pkgs/affine-block-frame/translations.d.ts +64 -0
  70. package/dist/_pkgs/affine-block-frame/translations.js +131 -0
  71. package/dist/_pkgs/affine-block-image/components/page-image-block.js +5 -2
  72. package/dist/_pkgs/affine-block-image/configs/slash-menu.js +4 -0
  73. package/dist/_pkgs/affine-block-image/configs/toolbar.js +7 -1
  74. package/dist/_pkgs/affine-block-image/configs/tooltips.js +1 -1
  75. package/dist/_pkgs/affine-block-image/image-block.js +3 -2
  76. package/dist/_pkgs/affine-block-image/image-edgeless-block.js +6 -3
  77. package/dist/_pkgs/affine-block-image/preview-image/page.js +5 -1
  78. package/dist/_pkgs/affine-block-image/translations.d.ts +35 -0
  79. package/dist/_pkgs/affine-block-image/translations.js +68 -0
  80. package/dist/_pkgs/affine-block-image/utils.js +9 -8
  81. package/dist/_pkgs/affine-block-latex/configs/slash-menu.d.ts +8 -0
  82. package/dist/_pkgs/affine-block-latex/configs/slash-menu.js +19 -3
  83. package/dist/_pkgs/affine-block-latex/latex-block.js +6 -2
  84. package/dist/_pkgs/affine-block-latex/translations.d.ts +35 -0
  85. package/dist/_pkgs/affine-block-latex/translations.js +60 -0
  86. package/dist/_pkgs/affine-block-note/components/edgeless-note-border-dropdown-menu.d.ts +9 -0
  87. package/dist/_pkgs/affine-block-note/components/edgeless-note-border-dropdown-menu.js +23 -6
  88. package/dist/_pkgs/affine-block-note/components/edgeless-note-display-mode-dropdown-menu.d.ts +4 -1
  89. package/dist/_pkgs/affine-block-note/components/edgeless-note-display-mode-dropdown-menu.js +26 -6
  90. package/dist/_pkgs/affine-block-note/components/edgeless-note-shadow-menu.d.ts +3 -0
  91. package/dist/_pkgs/affine-block-note/components/edgeless-note-shadow-menu.js +21 -10
  92. package/dist/_pkgs/affine-block-note/components/edgeless-note-style-panel.js +22 -8
  93. package/dist/_pkgs/affine-block-note/configs/slash-menu.js +13 -0
  94. package/dist/_pkgs/affine-block-note/configs/toolbar.js +26 -19
  95. package/dist/_pkgs/affine-block-note/configs/tooltips.d.ts +16 -0
  96. package/dist/_pkgs/affine-block-note/configs/tooltips.js +150 -90
  97. package/dist/_pkgs/affine-block-note/move-block.js +8 -2
  98. package/dist/_pkgs/affine-block-note/translations.d.ts +91 -0
  99. package/dist/_pkgs/affine-block-note/translations.js +253 -0
  100. package/dist/_pkgs/affine-block-paragraph/paragraph-block.js +7 -2
  101. package/dist/_pkgs/affine-block-paragraph/styles.js +30 -83
  102. package/dist/_pkgs/affine-block-paragraph/translations.d.ts +31 -0
  103. package/dist/_pkgs/affine-block-paragraph/translations.js +44 -0
  104. package/dist/_pkgs/affine-block-paragraph/turbo/paragraph-layout-handler.js +1 -0
  105. package/dist/_pkgs/affine-block-paragraph/turbo/paragraph-painter.worker.d.ts +2 -0
  106. package/dist/_pkgs/affine-block-paragraph/turbo/paragraph-painter.worker.js +6 -1
  107. package/dist/_pkgs/affine-block-paragraph/view.js +6 -1
  108. package/dist/_pkgs/affine-block-root/configs/toolbar.d.ts +3 -1
  109. package/dist/_pkgs/affine-block-root/configs/toolbar.js +6 -3
  110. package/dist/_pkgs/affine-block-root/edgeless/clipboard/utils.js +1 -1
  111. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/alignment.js +26 -4
  112. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/misc.d.ts +14 -0
  113. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/misc.js +10 -3
  114. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/more.d.ts +8 -0
  115. package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/more.js +9 -0
  116. package/dist/_pkgs/affine-block-root/edgeless/edgeless-keyboard.js +15 -6
  117. package/dist/_pkgs/affine-block-root/edgeless/utils/consts.d.ts +0 -1
  118. package/dist/_pkgs/affine-block-root/edgeless/utils/consts.js +0 -1
  119. package/dist/_pkgs/affine-block-root/translations.d.ts +61 -0
  120. package/dist/_pkgs/affine-block-root/translations.js +172 -0
  121. package/dist/_pkgs/affine-block-surface/extensions/export-manager/export-manager.js +3 -1
  122. package/dist/_pkgs/affine-block-surface/extensions/index.d.ts +1 -0
  123. package/dist/_pkgs/affine-block-surface/extensions/index.js +1 -0
  124. package/dist/_pkgs/affine-block-surface/extensions/interchange-import.js +31 -12
  125. package/dist/_pkgs/affine-block-surface/extensions/interchange.d.ts +40 -8
  126. package/dist/_pkgs/affine-block-surface/extensions/interchange.js +27 -0
  127. package/dist/_pkgs/affine-block-surface/extensions/morph-toolbar.d.ts +2 -2
  128. package/dist/_pkgs/affine-block-surface/extensions/morph-toolbar.js +5 -2
  129. package/dist/_pkgs/affine-block-surface/extensions/reading-widget.js +3 -2
  130. package/dist/_pkgs/affine-block-surface/extensions/svg-sketch-translations.d.ts +48 -0
  131. package/dist/_pkgs/affine-block-surface/extensions/svg-sketch-translations.js +120 -0
  132. package/dist/_pkgs/affine-block-surface/extensions/svg-sketch.js +36 -23
  133. package/dist/_pkgs/affine-block-surface/extensions/tags-toolbar.js +5 -5
  134. package/dist/_pkgs/affine-block-surface/framework-background/def.d.ts +4 -1
  135. package/dist/_pkgs/affine-block-surface/framework-background/def.js +6 -2
  136. package/dist/_pkgs/affine-block-surface-ref/components/placeholder.d.ts +2 -1
  137. package/dist/_pkgs/affine-block-surface-ref/components/placeholder.js +21 -6
  138. package/dist/_pkgs/affine-block-surface-ref/configs/slash-menu.js +24 -7
  139. package/dist/_pkgs/affine-block-surface-ref/configs/tooltips.js +2 -2
  140. package/dist/_pkgs/affine-block-surface-ref/index.d.ts +1 -0
  141. package/dist/_pkgs/affine-block-surface-ref/index.js +1 -0
  142. package/dist/_pkgs/affine-block-surface-ref/surface-ref-block-edgeless.js +1 -0
  143. package/dist/_pkgs/affine-block-surface-ref/surface-ref-block.js +1 -0
  144. package/dist/_pkgs/affine-block-surface-ref/translations.d.ts +83 -0
  145. package/dist/_pkgs/affine-block-surface-ref/translations.js +175 -0
  146. package/dist/_pkgs/affine-block-surface-ref/utils.d.ts +8 -1
  147. package/dist/_pkgs/affine-block-surface-ref/utils.js +12 -4
  148. package/dist/_pkgs/affine-components/caption/block-caption.js +3 -1
  149. package/dist/_pkgs/affine-components/card-style-dropdown-menu/dropdown-menu.js +4 -3
  150. package/dist/_pkgs/affine-components/citation/citation.d.ts +2 -0
  151. package/dist/_pkgs/affine-components/citation/citation.js +19 -3
  152. package/dist/_pkgs/affine-components/color-picker/button.d.ts +6 -0
  153. package/dist/_pkgs/affine-components/color-picker/button.js +15 -1
  154. package/dist/_pkgs/affine-components/color-picker/color-panel.d.ts +8 -0
  155. package/dist/_pkgs/affine-components/color-picker/color-panel.js +17 -2
  156. package/dist/_pkgs/affine-components/color-picker/color-picker.d.ts +4 -0
  157. package/dist/_pkgs/affine-components/color-picker/color-picker.js +27 -3
  158. package/dist/_pkgs/affine-components/color-picker/types.d.ts +21 -0
  159. package/dist/_pkgs/affine-components/color-picker/utils.d.ts +28 -2
  160. package/dist/_pkgs/affine-components/color-picker/utils.js +32 -0
  161. package/dist/_pkgs/affine-components/context-menu/menu-renderer.d.ts +3 -0
  162. package/dist/_pkgs/affine-components/context-menu/menu-renderer.js +34 -7
  163. package/dist/_pkgs/affine-components/edgeless-line-styles-panel/line-styles-panel.d.ts +2 -0
  164. package/dist/_pkgs/affine-components/edgeless-line-styles-panel/line-styles-panel.js +21 -2
  165. package/dist/_pkgs/affine-components/edgeless-line-width-panel/line-width-panel.d.ts +2 -0
  166. package/dist/_pkgs/affine-components/edgeless-line-width-panel/line-width-panel.js +18 -2
  167. package/dist/_pkgs/affine-components/edgeless-shape-color-picker/color-picker.d.ts +2 -0
  168. package/dist/_pkgs/affine-components/edgeless-shape-color-picker/color-picker.js +34 -5
  169. package/dist/_pkgs/affine-components/embed-card-modal/embed-card-create-modal.js +5 -4
  170. package/dist/_pkgs/affine-components/embed-card-modal/embed-card-edit-modal.js +11 -9
  171. package/dist/_pkgs/affine-components/filterable-list/index.d.ts +2 -0
  172. package/dist/_pkgs/affine-components/filterable-list/index.js +17 -2
  173. package/dist/_pkgs/affine-components/highlight-dropdown-menu/dropdown-menu.d.ts +3 -0
  174. package/dist/_pkgs/affine-components/highlight-dropdown-menu/dropdown-menu.js +40 -7
  175. package/dist/_pkgs/affine-components/icon-button/index.d.ts +1 -1
  176. package/dist/_pkgs/affine-components/icon-button/index.js +1 -1
  177. package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.d.ts +6 -0
  178. package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.js +42 -7
  179. package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.d.ts +4 -0
  180. package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.js +35 -5
  181. package/dist/_pkgs/affine-components/icon-picker/icon-picker.d.ts +2 -0
  182. package/dist/_pkgs/affine-components/icon-picker/icon-picker.js +22 -5
  183. package/dist/_pkgs/affine-components/linked-doc-title/doc-title.d.ts +2 -0
  184. package/dist/_pkgs/affine-components/linked-doc-title/doc-title.js +16 -3
  185. package/dist/_pkgs/affine-components/notification/linked-doc.js +5 -4
  186. package/dist/_pkgs/affine-components/open-doc-dropdown-menu/dropdown-menu.js +7 -4
  187. package/dist/_pkgs/affine-components/resource/resource.d.ts +16 -1
  188. package/dist/_pkgs/affine-components/resource/resource.js +19 -4
  189. package/dist/_pkgs/affine-components/resource/status.d.ts +2 -0
  190. package/dist/_pkgs/affine-components/resource/status.js +27 -12
  191. package/dist/_pkgs/affine-components/size-dropdown-menu/dropdown-menu.d.ts +4 -1
  192. package/dist/_pkgs/affine-components/size-dropdown-menu/dropdown-menu.js +23 -4
  193. package/dist/_pkgs/affine-components/toast/toast.d.ts +1 -1
  194. package/dist/_pkgs/affine-components/toast/toast.js +1 -1
  195. package/dist/_pkgs/affine-components/toggle-button/toggle-button.d.ts +3 -0
  196. package/dist/_pkgs/affine-components/toggle-button/toggle-button.js +18 -3
  197. package/dist/_pkgs/affine-components/toolbar/icon-button.d.ts +2 -0
  198. package/dist/_pkgs/affine-components/toolbar/icon-button.js +18 -2
  199. package/dist/_pkgs/affine-components/toolbar/tooltip.d.ts +3 -3
  200. package/dist/_pkgs/affine-components/toolbar/tooltip.js +3 -3
  201. package/dist/_pkgs/affine-components/translations.d.ts +141 -0
  202. package/dist/_pkgs/affine-components/translations.js +478 -0
  203. package/dist/_pkgs/affine-fragment-adapter-panel/adapter-panel.d.ts +3 -0
  204. package/dist/_pkgs/affine-fragment-adapter-panel/adapter-panel.js +12 -1
  205. package/dist/_pkgs/affine-fragment-adapter-panel/body/adapter-panel-body.js +4 -3
  206. package/dist/_pkgs/affine-fragment-adapter-panel/config.d.ts +13 -0
  207. package/dist/_pkgs/affine-fragment-adapter-panel/config.js +18 -4
  208. package/dist/_pkgs/affine-fragment-adapter-panel/header/adapter-menu.js +2 -2
  209. package/dist/_pkgs/affine-fragment-adapter-panel/header/adapter-panel-header.js +2 -2
  210. package/dist/_pkgs/affine-fragment-adapter-panel/translations.d.ts +24 -0
  211. package/dist/_pkgs/affine-fragment-adapter-panel/translations.js +37 -0
  212. package/dist/_pkgs/affine-fragment-doc-title/doc-title.d.ts +1 -0
  213. package/dist/_pkgs/affine-fragment-doc-title/doc-title.js +9 -1
  214. package/dist/_pkgs/affine-fragment-doc-title/translations.d.ts +13 -0
  215. package/dist/_pkgs/affine-fragment-doc-title/translations.js +17 -0
  216. package/dist/_pkgs/affine-fragment-frame-panel/body/frame-panel-body.js +3 -2
  217. package/dist/_pkgs/affine-fragment-frame-panel/header/frame-panel-header.js +10 -4
  218. package/dist/_pkgs/affine-fragment-frame-panel/header/frames-setting-menu.js +18 -6
  219. package/dist/_pkgs/affine-fragment-frame-panel/translations.d.ts +16 -0
  220. package/dist/_pkgs/affine-fragment-frame-panel/translations.js +44 -0
  221. package/dist/_pkgs/affine-fragment-outline/body/outline-notice.js +10 -4
  222. package/dist/_pkgs/affine-fragment-outline/body/outline-panel-body.js +6 -3
  223. package/dist/_pkgs/affine-fragment-outline/card/outline-card.js +13 -6
  224. package/dist/_pkgs/affine-fragment-outline/card/outline-preview.d.ts +1 -0
  225. package/dist/_pkgs/affine-fragment-outline/card/outline-preview.js +16 -9
  226. package/dist/_pkgs/affine-fragment-outline/config.d.ts +1 -20
  227. package/dist/_pkgs/affine-fragment-outline/config.js +8 -23
  228. package/dist/_pkgs/affine-fragment-outline/header/outline-panel-header.js +10 -3
  229. package/dist/_pkgs/affine-fragment-outline/header/outline-setting-menu.js +9 -2
  230. package/dist/_pkgs/affine-fragment-outline/outline-viewer.js +6 -3
  231. package/dist/_pkgs/affine-fragment-outline/translations.d.ts +54 -0
  232. package/dist/_pkgs/affine-fragment-outline/translations.js +110 -0
  233. package/dist/_pkgs/affine-gfx-brush/toolbar/components/eraser/eraser-tool-button.js +3 -2
  234. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/consts.d.ts +3 -0
  235. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/consts.js +3 -0
  236. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-menu.js +5 -4
  237. package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-tool-button.js +3 -2
  238. package/dist/_pkgs/affine-gfx-brush/toolbar/configs/brush.js +4 -2
  239. package/dist/_pkgs/affine-gfx-brush/toolbar/configs/highlighter.js +4 -2
  240. package/dist/_pkgs/affine-gfx-brush/translations.d.ts +17 -0
  241. package/dist/_pkgs/affine-gfx-brush/translations.js +30 -0
  242. package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.d.ts +8 -1
  243. package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.js +7 -1
  244. package/dist/_pkgs/affine-gfx-connector/text/edgeless-connector-label-editor.js +3 -2
  245. package/dist/_pkgs/affine-gfx-connector/toolbar/config.d.ts +4 -1
  246. package/dist/_pkgs/affine-gfx-connector/toolbar/config.js +24 -10
  247. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-dense-menu.js +7 -5
  248. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-menu.js +8 -6
  249. package/dist/_pkgs/affine-gfx-connector/toolbar/connector-tool-button.js +4 -3
  250. package/dist/_pkgs/affine-gfx-connector/translations.d.ts +32 -0
  251. package/dist/_pkgs/affine-gfx-connector/translations.js +79 -0
  252. package/dist/_pkgs/affine-gfx-group/command/group-api.js +6 -1
  253. package/dist/_pkgs/affine-gfx-group/index.d.ts +1 -0
  254. package/dist/_pkgs/affine-gfx-group/index.js +1 -0
  255. package/dist/_pkgs/affine-gfx-group/toolbar/config.d.ts +6 -2
  256. package/dist/_pkgs/affine-gfx-group/toolbar/config.js +9 -4
  257. package/dist/_pkgs/affine-gfx-group/translations.d.ts +24 -0
  258. package/dist/_pkgs/affine-gfx-group/translations.js +33 -0
  259. package/dist/_pkgs/affine-gfx-link/toolbar/undo-dense-menu.js +2 -1
  260. package/dist/_pkgs/affine-gfx-link/toolbar/undo-tool-button.js +2 -1
  261. package/dist/_pkgs/affine-gfx-mindmap/index.d.ts +1 -0
  262. package/dist/_pkgs/affine-gfx-mindmap/index.js +1 -0
  263. package/dist/_pkgs/affine-gfx-mindmap/templates/index.js +628 -577
  264. package/dist/_pkgs/affine-gfx-mindmap/toolbar/basket-elements.js +7 -3
  265. package/dist/_pkgs/affine-gfx-mindmap/toolbar/config.js +9 -1
  266. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-importing-placeholder.d.ts +4 -0
  267. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-importing-placeholder.js +70 -7
  268. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-menu.js +8 -5
  269. package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-tool-button.js +4 -2
  270. package/dist/_pkgs/affine-gfx-mindmap/toolbar/senior-tool.js +7 -2
  271. package/dist/_pkgs/affine-gfx-mindmap/toolbar/utils/import-mindmap.d.ts +2 -1
  272. package/dist/_pkgs/affine-gfx-mindmap/toolbar/utils/import-mindmap.js +16 -8
  273. package/dist/_pkgs/affine-gfx-mindmap/translations.d.ts +84 -0
  274. package/dist/_pkgs/affine-gfx-mindmap/translations.js +171 -0
  275. package/dist/_pkgs/affine-gfx-note/components/note-display-mode-panel.d.ts +8 -0
  276. package/dist/_pkgs/affine-gfx-note/components/note-display-mode-panel.js +24 -9
  277. package/dist/_pkgs/affine-gfx-note/components/note-shadow-panel.d.ts +9 -0
  278. package/dist/_pkgs/affine-gfx-note/components/note-shadow-panel.js +28 -8
  279. package/dist/_pkgs/affine-gfx-note/toolbar/note-menu-config.d.ts +2 -1
  280. package/dist/_pkgs/affine-gfx-note/toolbar/note-menu-config.js +42 -73
  281. package/dist/_pkgs/affine-gfx-note/toolbar/note-menu.js +21 -17
  282. package/dist/_pkgs/affine-gfx-note/toolbar/note-senior-button.js +3 -2
  283. package/dist/_pkgs/affine-gfx-note/toolbar/note-tool-button.js +3 -1
  284. package/dist/_pkgs/affine-gfx-note/toolbar/senior-tool.js +3 -1
  285. package/dist/_pkgs/affine-gfx-note/translations.d.ts +27 -0
  286. package/dist/_pkgs/affine-gfx-note/translations.js +59 -0
  287. package/dist/_pkgs/affine-gfx-pointer/quick-tool/default-tool-button.js +10 -2
  288. package/dist/_pkgs/affine-gfx-pointer/translations.d.ts +9 -0
  289. package/dist/_pkgs/affine-gfx-pointer/translations.js +17 -0
  290. package/dist/_pkgs/affine-gfx-shape/components/shape-panel.d.ts +4 -0
  291. package/dist/_pkgs/affine-gfx-shape/components/shape-panel.js +17 -3
  292. package/dist/_pkgs/affine-gfx-shape/components/shape-style-panel.d.ts +4 -0
  293. package/dist/_pkgs/affine-gfx-shape/components/shape-style-panel.js +23 -5
  294. package/dist/_pkgs/affine-gfx-shape/draggable/shape-menu.d.ts +0 -1
  295. package/dist/_pkgs/affine-gfx-shape/draggable/shape-menu.js +6 -46
  296. package/dist/_pkgs/affine-gfx-shape/draggable/shape-tool-button.js +3 -1
  297. package/dist/_pkgs/affine-gfx-shape/toolbar/config.d.ts +2 -0
  298. package/dist/_pkgs/affine-gfx-shape/toolbar/config.js +29 -8
  299. package/dist/_pkgs/affine-gfx-shape/toolbar/senior-tool.js +2 -0
  300. package/dist/_pkgs/affine-gfx-shape/toolbar/shape-menu-config.d.ts +3 -0
  301. package/dist/_pkgs/affine-gfx-shape/toolbar/shape-menu-config.js +7 -0
  302. package/dist/_pkgs/affine-gfx-shape/translations.d.ts +37 -0
  303. package/dist/_pkgs/affine-gfx-shape/translations.js +93 -0
  304. package/dist/_pkgs/affine-gfx-template/builtin/other.js +101 -56
  305. package/dist/_pkgs/affine-gfx-template/contribute.js +8 -1
  306. package/dist/_pkgs/affine-gfx-template/index.d.ts +2 -0
  307. package/dist/_pkgs/affine-gfx-template/index.js +2 -0
  308. package/dist/_pkgs/affine-gfx-template/snapshot-from-action.d.ts +6 -1
  309. package/dist/_pkgs/affine-gfx-template/snapshot-from-action.js +15 -5
  310. package/dist/_pkgs/affine-gfx-template/toolbar/builtin-templates.d.ts +1 -0
  311. package/dist/_pkgs/affine-gfx-template/toolbar/builtin-templates.js +12 -0
  312. package/dist/_pkgs/affine-gfx-template/toolbar/resolve-name.d.ts +25 -0
  313. package/dist/_pkgs/affine-gfx-template/toolbar/resolve-name.js +36 -0
  314. package/dist/_pkgs/affine-gfx-template/toolbar/senior-tool.js +3 -1
  315. package/dist/_pkgs/affine-gfx-template/toolbar/template-panel.d.ts +1 -0
  316. package/dist/_pkgs/affine-gfx-template/toolbar/template-panel.js +30 -8
  317. package/dist/_pkgs/affine-gfx-template/toolbar/template-type.d.ts +41 -0
  318. package/dist/_pkgs/affine-gfx-template/translations.d.ts +71 -0
  319. package/dist/_pkgs/affine-gfx-template/translations.js +209 -0
  320. package/dist/_pkgs/affine-gfx-text/edgeless-text-editor.js +3 -2
  321. package/dist/_pkgs/affine-gfx-text/toolbar/actions.d.ts +1 -1
  322. package/dist/_pkgs/affine-gfx-text/toolbar/actions.js +22 -9
  323. package/dist/_pkgs/affine-gfx-text/toolbar/text-menu.js +1 -0
  324. package/dist/_pkgs/affine-gfx-text/translations.d.ts +31 -0
  325. package/dist/_pkgs/affine-gfx-text/translations.js +64 -0
  326. package/dist/_pkgs/affine-inline-footnote/footnote-node/footnote-popup.js +8 -2
  327. package/dist/_pkgs/affine-inline-latex/latex-node/latex-editor-menu.js +5 -2
  328. package/dist/_pkgs/affine-inline-latex/latex-node/latex-node.js +7 -2
  329. package/dist/_pkgs/affine-inline-latex/translations.d.ts +13 -0
  330. package/dist/_pkgs/affine-inline-latex/translations.js +16 -0
  331. package/dist/_pkgs/affine-inline-link/link-node/configs/toolbar.d.ts +3 -3
  332. package/dist/_pkgs/affine-inline-link/link-node/configs/toolbar.js +6 -5
  333. package/dist/_pkgs/affine-inline-link/link-node/link-popup/link-popup.js +11 -5
  334. package/dist/_pkgs/affine-inline-link/translations.d.ts +23 -0
  335. package/dist/_pkgs/affine-inline-link/translations.js +44 -0
  336. package/dist/_pkgs/affine-inline-mention/affine-mention.js +11 -5
  337. package/dist/_pkgs/affine-inline-mention/translations.d.ts +16 -0
  338. package/dist/_pkgs/affine-inline-mention/translations.js +29 -0
  339. package/dist/_pkgs/affine-inline-preset/command/config.d.ts +3 -0
  340. package/dist/_pkgs/affine-inline-preset/command/config.js +8 -0
  341. package/dist/_pkgs/affine-inline-preset/markdown.d.ts +3 -0
  342. package/dist/_pkgs/affine-inline-preset/markdown.js +19 -0
  343. package/dist/_pkgs/affine-inline-preset/translations.d.ts +25 -0
  344. package/dist/_pkgs/affine-inline-preset/translations.js +28 -0
  345. package/dist/_pkgs/affine-inline-reference/reference-node/configs/toolbar.js +2 -2
  346. package/dist/_pkgs/affine-inline-reference/reference-node/reference-node.js +3 -3
  347. package/dist/_pkgs/affine-inline-reference/reference-node/reference-popup/reference-popup.js +8 -6
  348. package/dist/_pkgs/affine-inline-reference/translations.d.ts +8 -0
  349. package/dist/_pkgs/affine-inline-reference/translations.js +13 -0
  350. package/dist/_pkgs/affine-rich-text/conversion.d.ts +13 -0
  351. package/dist/_pkgs/affine-rich-text/conversion.js +27 -0
  352. package/dist/_pkgs/affine-shared/adapters/clipboard/clipboard.js +1 -1
  353. package/dist/_pkgs/affine-shared/adapters/clipboard/utils.d.ts +2 -1
  354. package/dist/_pkgs/affine-shared/adapters/clipboard/utils.js +6 -3
  355. package/dist/_pkgs/affine-shared/adapters/markdown/markdown.js +5 -2
  356. package/dist/_pkgs/affine-shared/adapters/mix-text.js +5 -2
  357. package/dist/_pkgs/affine-shared/adapters/plain-text/plain-text.js +5 -2
  358. package/dist/_pkgs/affine-shared/adapters/utils/index.d.ts +1 -0
  359. package/dist/_pkgs/affine-shared/adapters/utils/index.js +1 -0
  360. package/dist/_pkgs/affine-shared/adapters/utils/wording.d.ts +9 -0
  361. package/dist/_pkgs/affine-shared/adapters/utils/wording.js +12 -0
  362. package/dist/_pkgs/affine-shared/consts/heading.d.ts +29 -0
  363. package/dist/_pkgs/affine-shared/consts/heading.js +70 -0
  364. package/dist/_pkgs/affine-shared/consts/index.d.ts +2 -0
  365. package/dist/_pkgs/affine-shared/consts/index.js +2 -0
  366. package/dist/_pkgs/affine-shared/consts/notation.d.ts +67 -0
  367. package/dist/_pkgs/affine-shared/consts/notation.js +65 -0
  368. package/dist/_pkgs/affine-shared/services/comment-service/utils.js +2 -0
  369. package/dist/_pkgs/affine-shared/services/doc-display-meta-service.js +6 -3
  370. package/dist/_pkgs/affine-shared/services/notification-service.js +18 -1
  371. package/dist/_pkgs/affine-shared/services/open-doc-config.d.ts +0 -1
  372. package/dist/_pkgs/affine-shared/services/open-doc-config.js +0 -2
  373. package/dist/_pkgs/affine-shared/services/translation-service/chrome.d.ts +362 -0
  374. package/dist/_pkgs/affine-shared/services/translation-service/chrome.js +955 -3
  375. package/dist/_pkgs/affine-shared/services/translation-service/index.d.ts +40 -2
  376. package/dist/_pkgs/affine-shared/services/translation-service/index.js +44 -3
  377. package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.d.ts +83 -2
  378. package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.js +92 -0
  379. package/dist/_pkgs/affine-widget-drag-handle/components/edgeless-preview/preview.d.ts +4 -0
  380. package/dist/_pkgs/affine-widget-drag-handle/components/edgeless-preview/preview.js +21 -8
  381. package/dist/_pkgs/affine-widget-drag-handle/helpers/preview-helper.js +1 -0
  382. package/dist/_pkgs/affine-widget-drag-handle/translations.d.ts +14 -0
  383. package/dist/_pkgs/affine-widget-drag-handle/translations.js +35 -0
  384. package/dist/_pkgs/affine-widget-edgeless-auto-connect/index.js +4 -3
  385. package/dist/_pkgs/affine-widget-edgeless-auto-connect/translations.d.ts +6 -0
  386. package/dist/_pkgs/affine-widget-edgeless-auto-connect/translations.js +14 -0
  387. package/dist/_pkgs/affine-widget-edgeless-selected-rect/auto-complete-panel.js +8 -5
  388. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-auto-complete.js +3 -2
  389. package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-element-link.js +3 -1
  390. package/dist/_pkgs/affine-widget-edgeless-selected-rect/translations.d.ts +17 -0
  391. package/dist/_pkgs/affine-widget-edgeless-selected-rect/translations.js +30 -0
  392. package/dist/_pkgs/affine-widget-edgeless-toolbar/button/tool-icon-button.d.ts +4 -0
  393. package/dist/_pkgs/affine-widget-edgeless-toolbar/button/tool-icon-button.js +18 -2
  394. package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-widget.js +2 -2
  395. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/consts.d.ts +2 -0
  396. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/consts.js +3 -0
  397. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/types.d.ts +18 -1
  398. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/utils.d.ts +8 -3
  399. package/dist/_pkgs/affine-widget-edgeless-toolbar/config/utils.js +38 -18
  400. package/dist/_pkgs/affine-widget-edgeless-toolbar/edgeless-toolbar.js +2 -1
  401. package/dist/_pkgs/affine-widget-edgeless-toolbar/panel/font-weight-and-style-panel.d.ts +8 -0
  402. package/dist/_pkgs/affine-widget-edgeless-toolbar/panel/font-weight-and-style-panel.js +31 -8
  403. package/dist/_pkgs/affine-widget-edgeless-toolbar/translations.d.ts +15 -0
  404. package/dist/_pkgs/affine-widget-edgeless-toolbar/translations.js +20 -0
  405. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/translations.d.ts +7 -0
  406. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/translations.js +23 -0
  407. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/zoom-bar-toggle-button.js +3 -1
  408. package/dist/_pkgs/affine-widget-edgeless-zoom-toolbar/zoom-toolbar.js +5 -3
  409. package/dist/_pkgs/affine-widget-linked-doc/config.js +15 -10
  410. package/dist/_pkgs/affine-widget-linked-doc/import-doc/import-doc.d.ts +12 -1
  411. package/dist/_pkgs/affine-widget-linked-doc/import-doc/import-doc.js +27 -18
  412. package/dist/_pkgs/affine-widget-linked-doc/import-doc/index.d.ts +4 -1
  413. package/dist/_pkgs/affine-widget-linked-doc/import-doc/index.js +2 -2
  414. package/dist/_pkgs/affine-widget-linked-doc/linked-doc-popover.js +4 -1
  415. package/dist/_pkgs/affine-widget-linked-doc/mobile-linked-doc-menu.js +6 -2
  416. package/dist/_pkgs/affine-widget-linked-doc/transformers/html.js +3 -2
  417. package/dist/_pkgs/affine-widget-linked-doc/transformers/markdown.js +3 -2
  418. package/dist/_pkgs/affine-widget-linked-doc/translations.d.ts +53 -0
  419. package/dist/_pkgs/affine-widget-linked-doc/translations.js +104 -0
  420. package/dist/_pkgs/affine-widget-remote-selection/edgeless/index.js +4 -1
  421. package/dist/_pkgs/affine-widget-remote-selection/translations.d.ts +12 -0
  422. package/dist/_pkgs/affine-widget-remote-selection/translations.js +12 -0
  423. package/dist/_pkgs/affine-widget-slash-menu/config.js +15 -0
  424. package/dist/_pkgs/affine-widget-slash-menu/index.d.ts +1 -0
  425. package/dist/_pkgs/affine-widget-slash-menu/index.js +1 -0
  426. package/dist/_pkgs/affine-widget-slash-menu/slash-menu-popover.js +30 -15
  427. package/dist/_pkgs/affine-widget-slash-menu/tooltips/copy.js +1 -1
  428. package/dist/_pkgs/affine-widget-slash-menu/tooltips/delete.js +2 -2
  429. package/dist/_pkgs/affine-widget-slash-menu/tooltips/index.js +9 -0
  430. package/dist/_pkgs/affine-widget-slash-menu/tooltips/move-down.js +2 -2
  431. package/dist/_pkgs/affine-widget-slash-menu/tooltips/move-up.js +2 -2
  432. package/dist/_pkgs/affine-widget-slash-menu/tooltips/now.js +3 -3
  433. package/dist/_pkgs/affine-widget-slash-menu/tooltips/today.js +2 -2
  434. package/dist/_pkgs/affine-widget-slash-menu/tooltips/tomorrow.js +3 -3
  435. package/dist/_pkgs/affine-widget-slash-menu/tooltips/yesterday.js +3 -3
  436. package/dist/_pkgs/affine-widget-slash-menu/translations.d.ts +91 -0
  437. package/dist/_pkgs/affine-widget-slash-menu/translations.js +175 -0
  438. package/dist/_pkgs/affine-widget-slash-menu/types.d.ts +18 -0
  439. package/dist/_pkgs/affine-widget-slash-menu/utils.d.ts +20 -1
  440. package/dist/_pkgs/affine-widget-slash-menu/utils.js +37 -0
  441. package/dist/_pkgs/affine-widget-toolbar/translations.d.ts +9 -0
  442. package/dist/_pkgs/affine-widget-toolbar/translations.js +13 -0
  443. package/dist/_pkgs/affine-widget-toolbar/utils.js +2 -1
  444. package/dist/_pkgs/std/extension/translation-manifest.d.ts +7 -0
  445. package/dist/_pkgs/std/translations.d.ts +24 -0
  446. package/dist/_pkgs/std/translations.js +28 -0
  447. package/dist/_pkgs/std/view/element/block-component.js +24 -7
  448. package/dist/translations.js +144 -5
  449. package/package.json +1 -1
@@ -24,28 +24,13 @@ export const previewIconMap = {
24
24
  kanban: DatabaseKanbanViewIcon(_16px),
25
25
  attachment: AttachmentIcon(_16px),
26
26
  };
27
- const paragraphPlaceholderMap = {
28
- quote: 'Quote',
29
- text: 'Text Block',
30
- h1: 'Heading 1',
31
- h2: 'Heading 2',
32
- h3: 'Heading 3',
33
- h4: 'Heading 4',
34
- h5: 'Heading 5',
35
- h6: 'Heading 6',
36
- };
37
- export const placeholderMap = {
38
- code: 'Code Block',
39
- bulleted: 'Bulleted List',
40
- numbered: 'Numbered List',
41
- toggle: 'Toggle List',
42
- todo: 'Todo',
43
- bookmark: 'Bookmark',
44
- image: 'Image',
45
- database: 'Database',
46
- attachment: 'Attachment',
47
- ...paragraphPlaceholderMap,
48
- };
49
- export const headingKeys = new Set(Object.keys(paragraphPlaceholderMap).filter(key => key.startsWith('h')));
27
+ export const headingKeys = new Set([
28
+ 'h1',
29
+ 'h2',
30
+ 'h3',
31
+ 'h4',
32
+ 'h5',
33
+ 'h6',
34
+ ]);
50
35
  export const outlineSettingsKey = 'outlinePanelSettings';
51
36
  export const tocContext = createContext('tocContext');
@@ -32,6 +32,7 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
32
32
  }
33
33
  return useValue ? value : void 0;
34
34
  };
35
+ import { translateKey } from '../../affine-shared/services/index.js';
35
36
  import { createButtonPopper } from '../../affine-shared/utils/index.js';
36
37
  import { SignalWatcher, WithDisposable } from '../../global/lit/index.js';
37
38
  import { SettingsIcon, SortIcon } from '@blocksuite/icons/lit';
@@ -41,6 +42,7 @@ import { signal } from '@preact/signals-core';
41
42
  import { html } from 'lit';
42
43
  import { query } from 'lit/decorators.js';
43
44
  import { tocContext } from '../config.js';
45
+ import { OUTLINE_PREVIEW_SETTINGS_TOOLTIP, OUTLINE_TABLE_OF_CONTENTS, OUTLINE_VISIBILITY_AND_SORT_TOOLTIP, } from '../translations.js';
44
46
  import * as styles from './outline-panel-header.css.js';
45
47
  export const AFFINE_OUTLINE_PANEL_HEADER = 'affine-outline-panel-header';
46
48
  let OutlinePanelHeader = (() => {
@@ -80,13 +82,18 @@ let OutlinePanelHeader = (() => {
80
82
  render() {
81
83
  const sortingEnabled = this._context.enableSorting$.value;
82
84
  const showSettingPopper = this._settingPopperShow$.value;
85
+ const std = this._context.editor$.value.std;
83
86
  return html `<div class=${styles.container}>
84
87
  <div class=${styles.noteSettingContainer}>
85
- <span class=${styles.label}>Table of Contents</span>
88
+ <span class=${styles.label}
89
+ >${translateKey(std, ...OUTLINE_TABLE_OF_CONTENTS)}</span
90
+ >
86
91
  <edgeless-tool-icon-button
87
92
  data-testid="toggle-toc-setting-button"
88
93
  class="${showSettingPopper ? 'active' : ''}"
89
- .tooltip=${showSettingPopper ? '' : 'Preview Settings'}
94
+ .tooltip=${showSettingPopper
95
+ ? ''
96
+ : translateKey(std, ...OUTLINE_PREVIEW_SETTINGS_TOOLTIP)}
90
97
  .tipPosition=${'bottom'}
91
98
  .active=${showSettingPopper}
92
99
  .activeMode=${'background'}
@@ -98,7 +105,7 @@ let OutlinePanelHeader = (() => {
98
105
  <edgeless-tool-icon-button
99
106
  data-testid="toggle-notes-sorting-button"
100
107
  class="${sortingEnabled ? 'active' : ''}"
101
- .tooltip=${'Visibility and sort'}
108
+ .tooltip=${translateKey(std, ...OUTLINE_VISIBILITY_AND_SORT_TOOLTIP)}
102
109
  .tipPosition=${'left'}
103
110
  .iconContainerPadding=${0}
104
111
  .active=${sortingEnabled}
@@ -32,11 +32,13 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
32
32
  }
33
33
  return useValue ? value : void 0;
34
34
  };
35
+ import { translateKey } from '../../affine-shared/services/index.js';
35
36
  import { SignalWatcher, WithDisposable } from '../../global/lit/index.js';
36
37
  import { ShadowlessElement } from '../../std/index.js';
37
38
  import { consume } from '@lit/context';
38
39
  import { html } from 'lit';
39
40
  import { tocContext } from '../config.js';
41
+ import { OUTLINE_SETTINGS_LABEL, OUTLINE_SHOW_TYPE_ICON, } from '../translations.js';
40
42
  import * as styles from './outline-setting-menu.css.js';
41
43
  export const AFFINE_OUTLINE_NOTE_PREVIEW_SETTING_MENU = 'affine-outline-note-preview-setting-menu';
42
44
  let OutlineNotePreviewSettingMenu = (() => {
@@ -53,15 +55,20 @@ let OutlineNotePreviewSettingMenu = (() => {
53
55
  }
54
56
  render() {
55
57
  const showPreviewIcon = this._context.showIcons$.value;
58
+ const std = this._context.editor$.value.std;
56
59
  return html `<div
57
60
  class=${styles.notePreviewSettingMenuContainer}
58
61
  @click=${(e) => e.stopPropagation()}
59
62
  >
60
63
  <div class=${styles.notePreviewSettingMenuItem}>
61
- <div class=${styles.settingLabel}>Settings</div>
64
+ <div class=${styles.settingLabel}>
65
+ ${translateKey(std, ...OUTLINE_SETTINGS_LABEL)}
66
+ </div>
62
67
  </div>
63
68
  <div class="${styles.notePreviewSettingMenuItem} ${styles.action}">
64
- <div class=${styles.actionLabel}>Show type icon</div>
69
+ <div class=${styles.actionLabel}>
70
+ ${translateKey(std, ...OUTLINE_SHOW_TYPE_ICON)}
71
+ </div>
65
72
  <div class=${styles.toggleButton}>
66
73
  <toggle-switch
67
74
  .on=${showPreviewIcon}
@@ -33,7 +33,7 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
33
33
  return useValue ? value : void 0;
34
34
  };
35
35
  import { NoteDisplayMode } from '../affine-model/index.js';
36
- import { DocModeProvider } from '../affine-shared/services/index.js';
36
+ import { DocModeProvider, translateKey } from '../affine-shared/services/index.js';
37
37
  import { scrollbarStyle } from '../affine-shared/styles/index.js';
38
38
  import { SignalWatcher, WithDisposable } from '../global/lit/index.js';
39
39
  import { TocIcon } from '@blocksuite/icons/lit';
@@ -45,6 +45,7 @@ import { property, query, state } from 'lit/decorators.js';
45
45
  import { classMap } from 'lit/directives/class-map.js';
46
46
  import { repeat } from 'lit/directives/repeat.js';
47
47
  import { tocContext } from './config.js';
48
+ import { OUTLINE_OPEN_IN_SIDEBAR_TOOLTIP, OUTLINE_TABLE_OF_CONTENTS, } from './translations.js';
48
49
  import { getHeadingBlocksFromDoc } from './utils/query.js';
49
50
  import { observeActiveHeadingDuringScroll, scrollToBlockWithHighlight, } from './utils/scroll.js';
50
51
  export const AFFINE_OUTLINE_VIEWER = 'affine-outline-viewer';
@@ -261,7 +262,7 @@ let OutlineViewer = (() => {
261
262
  ];
262
263
  const toggleOutlinePanelButton = this.toggleOutlinePanel !== null
263
264
  ? html `<edgeless-tool-icon-button
264
- .tooltip=${'Open in sidebar'}
265
+ .tooltip=${translateKey(this.editor.std, ...OUTLINE_OPEN_IN_SIDEBAR_TOOLTIP)}
265
266
  .tipPosition=${'top-end'}
266
267
  .activeMode=${'background'}
267
268
  @click=${this._toggleOutlinePanel}
@@ -284,7 +285,9 @@ let OutlineViewer = (() => {
284
285
  </div>
285
286
  <div class="outline-viewer-panel">
286
287
  <div class="outline-viewer-item outline-viewer-header">
287
- <span>Table of Contents</span>
288
+ <span
289
+ >${translateKey(this.editor.std, ...OUTLINE_TABLE_OF_CONTENTS)}</span
290
+ >
288
291
  ${toggleOutlinePanelButton}
289
292
  </div>
290
293
  ${repeat(items, block => block.id, block => {
@@ -0,0 +1,54 @@
1
+ import { type ChromeWording } from '../affine-shared/services/index.js';
2
+ /**
3
+ * The outline (plan) panel's own wordings: the placeholder text a preview
4
+ * card shows in place of an empty bookmark title, code language, database
5
+ * title, image caption or attachment name.
6
+ *
7
+ * Declared here rather than restated in `outline-preview.ts` so the manifest
8
+ * (`@labre/affine/translations`, `PACKAGE_WORDINGS`) can walk them — see
9
+ * `packages/affine/shared/src/services/translation-service/README.md`.
10
+ */
11
+ export declare const OUTLINE_PLACEHOLDER_BOOKMARK: ChromeWording;
12
+ export declare const OUTLINE_PLACEHOLDER_CODE: ChromeWording;
13
+ export declare const OUTLINE_PLACEHOLDER_DATABASE: ChromeWording;
14
+ export declare const OUTLINE_PLACEHOLDER_IMAGE: ChromeWording;
15
+ export declare const OUTLINE_PLACEHOLDER_ATTACHMENT: ChromeWording;
16
+ export declare const OUTLINE_NOTICE_HIDDEN_LABEL: ChromeWording;
17
+ export declare const OUTLINE_NOTICE_HIDDEN_TEXT: ChromeWording;
18
+ /**
19
+ * The banner's call to action, said around a sort icon. The icon carries no
20
+ * text of its own and cannot be interpolated into a `translateKey` param, so
21
+ * rather than translate the two half-sentences either side of it separately
22
+ * — the split `manifest.unit.spec.ts` and the brief both warn against — the
23
+ * icon is rendered BEFORE the (now whole) sentence instead of in the middle
24
+ * of it.
25
+ */
26
+ export declare const OUTLINE_NOTICE_ORGANIZE: ChromeWording;
27
+ export declare const OUTLINE_EMPTY_PANEL: ChromeWording;
28
+ export declare const OUTLINE_HIDDEN_CONTENTS: ChromeWording;
29
+ export declare const OUTLINE_MODE_BOTH: ChromeWording;
30
+ export declare const OUTLINE_MODE_EDGELESS: ChromeWording;
31
+ export declare const OUTLINE_MODE_PAGE: ChromeWording;
32
+ export declare const OUTLINE_CARD_SHOW_IN: ChromeWording;
33
+ export declare const OUTLINE_CARD_DISPLAY_MODE_TOOLTIP: ChromeWording;
34
+ export declare const OUTLINE_PREVIEW_DELETED_DOC: ChromeWording;
35
+ /**
36
+ * Shared by the full panel's header AND the floating mini-viewer's own header
37
+ * (`outline-viewer.ts`) — the exact same title over the exact same list.
38
+ */
39
+ export declare const OUTLINE_TABLE_OF_CONTENTS: ChromeWording;
40
+ export declare const OUTLINE_PREVIEW_SETTINGS_TOOLTIP: ChromeWording;
41
+ export declare const OUTLINE_VISIBILITY_AND_SORT_TOOLTIP: ChromeWording;
42
+ export declare const OUTLINE_SETTINGS_LABEL: ChromeWording;
43
+ export declare const OUTLINE_SHOW_TYPE_ICON: ChromeWording;
44
+ export declare const OUTLINE_OPEN_IN_SIDEBAR_TOOLTIP: ChromeWording;
45
+ /**
46
+ * Every wording DECLARED IN THIS FILE (not re-exported from `chrome.ts`), in
47
+ * the order it renders them. L7 dedupe aliased `OUTLINE_PLACEHOLDER_CODE`/
48
+ * `_IMAGE`/`_ATTACHMENT`, `OUTLINE_MODE_BOTH`/`_EDGELESS`/`_PAGE`,
49
+ * `OUTLINE_CARD_SHOW_IN`, `OUTLINE_PREVIEW_DELETED_DOC`,
50
+ * `OUTLINE_PREVIEW_SETTINGS_TOOLTIP` and `OUTLINE_SETTINGS_LABEL` to
51
+ * `chrome.ts` wordings — not listed again here, same rule the note/slash-menu
52
+ * packages' own chrome aliases already follow.
53
+ */
54
+ export declare const OUTLINE_WORDINGS: readonly ChromeWording[];
@@ -0,0 +1,110 @@
1
+ import { ATTACHMENT_LABEL, BLOCK_TYPE_CODE_BLOCK, CHROME_DELETED_DOC, DISPLAY_MODE_BOTH, DISPLAY_MODE_EDGELESS, DISPLAY_MODE_PAGE, DISPLAY_MODE_SHOW_IN, IMAGE_LABEL, PREVIEW_SETTINGS_LABEL, TOOLBAR_SETTINGS, } from '../affine-shared/services/index.js';
2
+ /**
3
+ * The outline (plan) panel's own wordings: the placeholder text a preview
4
+ * card shows in place of an empty bookmark title, code language, database
5
+ * title, image caption or attachment name.
6
+ *
7
+ * Declared here rather than restated in `outline-preview.ts` so the manifest
8
+ * (`@labre/affine/translations`, `PACKAGE_WORDINGS`) can walk them — see
9
+ * `packages/affine/shared/src/services/translation-service/README.md`.
10
+ */
11
+ export const OUTLINE_PLACEHOLDER_BOOKMARK = [
12
+ 'com.labre.outline.placeholder.bookmark',
13
+ 'Bookmark',
14
+ ];
15
+ export const OUTLINE_PLACEHOLDER_CODE = BLOCK_TYPE_CODE_BLOCK;
16
+ export const OUTLINE_PLACEHOLDER_DATABASE = [
17
+ 'com.labre.outline.placeholder.database',
18
+ 'Database',
19
+ ];
20
+ export const OUTLINE_PLACEHOLDER_IMAGE = IMAGE_LABEL;
21
+ export const OUTLINE_PLACEHOLDER_ATTACHMENT = ATTACHMENT_LABEL;
22
+ /* ── Notice banner (edgeless-only content hidden in page mode) ────────── */
23
+ export const OUTLINE_NOTICE_HIDDEN_LABEL = [
24
+ 'com.labre.outline.notice.hidden-label',
25
+ 'SOME CONTENTS HIDDEN',
26
+ ];
27
+ export const OUTLINE_NOTICE_HIDDEN_TEXT = [
28
+ 'com.labre.outline.notice.hidden-text',
29
+ 'Some contents are not visible on canvas.',
30
+ ];
31
+ /**
32
+ * The banner's call to action, said around a sort icon. The icon carries no
33
+ * text of its own and cannot be interpolated into a `translateKey` param, so
34
+ * rather than translate the two half-sentences either side of it separately
35
+ * — the split `manifest.unit.spec.ts` and the brief both warn against — the
36
+ * icon is rendered BEFORE the (now whole) sentence instead of in the middle
37
+ * of it.
38
+ */
39
+ export const OUTLINE_NOTICE_ORGANIZE = [
40
+ 'com.labre.outline.notice.organize',
41
+ 'Click here or to organize content.',
42
+ ];
43
+ /* ── Panel body ─────────────────────────────────────────────────────────── */
44
+ export const OUTLINE_EMPTY_PANEL = [
45
+ 'com.labre.outline.empty-panel',
46
+ 'Use headings to create a table of contents.',
47
+ ];
48
+ export const OUTLINE_HIDDEN_CONTENTS = [
49
+ 'com.labre.outline.hidden-contents',
50
+ 'Hidden Contents',
51
+ ];
52
+ /* ── Note card ──────────────────────────────────────────────────────────── */
53
+ export const OUTLINE_MODE_BOTH = DISPLAY_MODE_BOTH;
54
+ export const OUTLINE_MODE_EDGELESS = DISPLAY_MODE_EDGELESS;
55
+ export const OUTLINE_MODE_PAGE = DISPLAY_MODE_PAGE;
56
+ export const OUTLINE_CARD_SHOW_IN = DISPLAY_MODE_SHOW_IN;
57
+ export const OUTLINE_CARD_DISPLAY_MODE_TOOLTIP = [
58
+ 'com.labre.outline.card.display-mode-tooltip',
59
+ 'Display Mode',
60
+ ];
61
+ /* ── Block preview ──────────────────────────────────────────────────────── */
62
+ export const OUTLINE_PREVIEW_DELETED_DOC = CHROME_DELETED_DOC;
63
+ /* ── Header ─────────────────────────────────────────────────────────────── */
64
+ /**
65
+ * Shared by the full panel's header AND the floating mini-viewer's own header
66
+ * (`outline-viewer.ts`) — the exact same title over the exact same list.
67
+ */
68
+ export const OUTLINE_TABLE_OF_CONTENTS = [
69
+ 'com.labre.outline.table-of-contents',
70
+ 'Table of Contents',
71
+ ];
72
+ export const OUTLINE_PREVIEW_SETTINGS_TOOLTIP = PREVIEW_SETTINGS_LABEL;
73
+ export const OUTLINE_VISIBILITY_AND_SORT_TOOLTIP = [
74
+ 'com.labre.outline.visibility-and-sort-tooltip',
75
+ 'Visibility and sort',
76
+ ];
77
+ /* ── Preview settings menu ──────────────────────────────────────────────── */
78
+ export const OUTLINE_SETTINGS_LABEL = TOOLBAR_SETTINGS;
79
+ export const OUTLINE_SHOW_TYPE_ICON = [
80
+ 'com.labre.outline.setting-menu.show-type-icon',
81
+ 'Show type icon',
82
+ ];
83
+ /* ── Floating mini-viewer ───────────────────────────────────────────────── */
84
+ export const OUTLINE_OPEN_IN_SIDEBAR_TOOLTIP = [
85
+ 'com.labre.outline.viewer.open-in-sidebar',
86
+ 'Open in sidebar',
87
+ ];
88
+ /**
89
+ * Every wording DECLARED IN THIS FILE (not re-exported from `chrome.ts`), in
90
+ * the order it renders them. L7 dedupe aliased `OUTLINE_PLACEHOLDER_CODE`/
91
+ * `_IMAGE`/`_ATTACHMENT`, `OUTLINE_MODE_BOTH`/`_EDGELESS`/`_PAGE`,
92
+ * `OUTLINE_CARD_SHOW_IN`, `OUTLINE_PREVIEW_DELETED_DOC`,
93
+ * `OUTLINE_PREVIEW_SETTINGS_TOOLTIP` and `OUTLINE_SETTINGS_LABEL` to
94
+ * `chrome.ts` wordings — not listed again here, same rule the note/slash-menu
95
+ * packages' own chrome aliases already follow.
96
+ */
97
+ export const OUTLINE_WORDINGS = [
98
+ OUTLINE_PLACEHOLDER_BOOKMARK,
99
+ OUTLINE_PLACEHOLDER_DATABASE,
100
+ OUTLINE_NOTICE_HIDDEN_LABEL,
101
+ OUTLINE_NOTICE_HIDDEN_TEXT,
102
+ OUTLINE_NOTICE_ORGANIZE,
103
+ OUTLINE_EMPTY_PANEL,
104
+ OUTLINE_HIDDEN_CONTENTS,
105
+ OUTLINE_CARD_DISPLAY_MODE_TOOLTIP,
106
+ OUTLINE_TABLE_OF_CONTENTS,
107
+ OUTLINE_VISIBILITY_AND_SORT_TOOLTIP,
108
+ OUTLINE_SHOW_TYPE_ICON,
109
+ OUTLINE_OPEN_IN_SIDEBAR_TOOLTIP,
110
+ ];
@@ -1,8 +1,9 @@
1
1
  import { DefaultTool } from '../../../../affine-block-surface/index.js';
2
- import { ThemeProvider } from '../../../../affine-shared/services/index.js';
2
+ import { ThemeProvider, translateKey } from '../../../../affine-shared/services/index.js';
3
3
  import { EdgelessToolbarToolMixin } from '../../../../affine-widget-edgeless-toolbar/index.js';
4
4
  import { css, html, LitElement } from 'lit';
5
5
  import { EraserTool } from '../../../eraser-tool.js';
6
+ import { BRUSH_TOOLTIP_ERASER } from '../../../translations.js';
6
7
  import { EdgelessEraserDarkIcon, EdgelessEraserLightIcon } from './icons.js';
7
8
  export class EdgelessEraserToolButton extends EdgelessToolbarToolMixin(LitElement) {
8
9
  constructor() {
@@ -49,7 +50,7 @@ export class EdgelessEraserToolButton extends EdgelessToolbarToolMixin(LitElemen
49
50
  <edgeless-toolbar-button
50
51
  class="edgeless-eraser-button"
51
52
  .tooltip=${html `<affine-tooltip-content-with-shortcut
52
- data-tip="${'Eraser'}"
53
+ data-tip="${translateKey(this.edgeless.std, ...BRUSH_TOOLTIP_ERASER)}"
53
54
  data-shortcut="${'E'}"
54
55
  ></affine-tooltip-content-with-shortcut>`}
55
56
  .tooltipOffset=${4}
@@ -1,3 +1,4 @@
1
+ import type { ChromeWording } from '../../../../affine-shared/services/index.js';
1
2
  import type { Pen } from './types.js';
2
3
  export declare const penIconMap: {
3
4
  dark: {
@@ -15,3 +16,5 @@ export declare const penInfoMap: {
15
16
  shortcut: string;
16
17
  };
17
18
  };
19
+ /** `penInfoMap[pen].tip`'s i18n key/fallback pair — resolved at render. */
20
+ export declare const penTipWording: (pen: Pen) => ChromeWording;
@@ -1,3 +1,4 @@
1
+ import { BRUSH_TOOLTIP_HIGHLIGHTER, BRUSH_TOOLTIP_PEN, } from '../../../translations.js';
1
2
  import { EdgelessBrushDarkIcon, EdgelessBrushLightIcon, EdgelessHighlighterDarkIcon, EdgelessHighlighterLightIcon, } from './icons.js';
2
3
  export const penIconMap = {
3
4
  dark: {
@@ -19,3 +20,5 @@ export const penInfoMap = {
19
20
  shortcut: '⇧ P',
20
21
  },
21
22
  };
23
+ /** `penInfoMap[pen].tip`'s i18n key/fallback pair — resolved at render. */
24
+ export const penTipWording = (pen) => pen === 'brush' ? BRUSH_TOOLTIP_PEN : BRUSH_TOOLTIP_HIGHLIGHTER;
@@ -34,7 +34,7 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
34
34
  };
35
35
  import { adjustColorAlpha } from '../../../../affine-components/color-picker/index.js';
36
36
  import { BRUSH_LINE_WIDTHS, DefaultTheme, HIGHLIGHTER_LINE_WIDTHS, } from '../../../../affine-model/index.js';
37
- import { FeatureFlagService, ThemeProvider, } from '../../../../affine-shared/services/index.js';
37
+ import { FeatureFlagService, ThemeProvider, translateKey, } from '../../../../affine-shared/services/index.js';
38
38
  import { EdgelessToolbarToolMixin } from '../../../../affine-widget-edgeless-toolbar/index.js';
39
39
  import { SignalWatcher } from '../../../../global/lit/index.js';
40
40
  import { computed, } from '@preact/signals-core';
@@ -43,7 +43,7 @@ import { property } from 'lit/decorators.js';
43
43
  import { styleMap } from 'lit/directives/style-map.js';
44
44
  import { BrushTool } from '../../../brush-tool.js';
45
45
  import { HighlighterTool } from '../../../highlighter-tool.js';
46
- import { penInfoMap } from './consts.js';
46
+ import { penInfoMap, penTipWording } from './consts.js';
47
47
  let EdgelessPenMenu = (() => {
48
48
  let _classSuper = EdgelessToolbarToolMixin(SignalWatcher(LitElement));
49
49
  let _onChange_decorators;
@@ -136,7 +136,7 @@ let EdgelessPenMenu = (() => {
136
136
  <edgeless-tool-icon-button
137
137
  class="edgeless-brush-button"
138
138
  .tooltip=${html `<affine-tooltip-content-with-shortcut
139
- data-tip="${penInfoMap.brush.tip}"
139
+ data-tip="${translateKey(this.edgeless.std, ...penTipWording('brush'))}"
140
140
  data-shortcut="${penInfoMap.brush.shortcut}"
141
141
  ></affine-tooltip-content-with-shortcut>`}
142
142
  .tooltipOffset=${20}
@@ -155,7 +155,7 @@ let EdgelessPenMenu = (() => {
155
155
  <edgeless-tool-icon-button
156
156
  class="edgeless-highlighter-button"
157
157
  .tooltip=${html `<affine-tooltip-content-with-shortcut
158
- data-tip="${penInfoMap.highlighter.tip}"
158
+ data-tip="${translateKey(this.edgeless.std, ...penTipWording('highlighter'))}"
159
159
  data-shortcut="${penInfoMap.highlighter.shortcut}"
160
160
  ></affine-tooltip-content-with-shortcut>`}
161
161
  .tooltipOffset=${20}
@@ -190,6 +190,7 @@ let EdgelessPenMenu = (() => {
190
190
  .hasTransparent=${!this.edgeless.store
191
191
  .get(FeatureFlagService)
192
192
  .getFlag('enable_color_picker')}
193
+ .std=${this.edgeless.std}
193
194
  ></edgeless-color-panel>
194
195
  </div>
195
196
  </edgeless-slide-menu>
@@ -1,5 +1,5 @@
1
1
  import { keepColor } from '../../../../affine-components/color-picker/index.js';
2
- import { EditPropsStore, ThemeProvider } from '../../../../affine-shared/services/index.js';
2
+ import { EditPropsStore, ThemeProvider, translateKey, } from '../../../../affine-shared/services/index.js';
3
3
  import { EdgelessToolbarToolMixin } from '../../../../affine-widget-edgeless-toolbar/index.js';
4
4
  import { SignalWatcher } from '../../../../global/lit/index.js';
5
5
  import { computed, signal } from '@preact/signals-core';
@@ -8,7 +8,7 @@ import { styleMap } from 'lit/directives/style-map.js';
8
8
  import { when } from 'lit/directives/when.js';
9
9
  import { BrushTool } from '../../../brush-tool.js';
10
10
  import { HighlighterTool } from '../../../highlighter-tool.js';
11
- import { penIconMap, penInfoMap } from './consts.js';
11
+ import { penIconMap, penInfoMap, penTipWording } from './consts.js';
12
12
  export class EdgelessPenToolButton extends EdgelessToolbarToolMixin(SignalWatcher(LitElement)) {
13
13
  constructor() {
14
14
  super(...arguments);
@@ -49,6 +49,7 @@ export class EdgelessPenToolButton extends EdgelessToolbarToolMixin(SignalWatche
49
49
  const type = this.pen$.value;
50
50
  return {
51
51
  ...penInfoMap[type],
52
+ tip: translateKey(this.edgeless.std, ...penTipWording(type)),
52
53
  type: this.pen$.value,
53
54
  icon: this.penIcon$.value,
54
55
  color: this.color$.value,
@@ -1,10 +1,11 @@
1
1
  import { EdgelessCRUDIdentifier } from '../../../affine-block-surface/index.js';
2
2
  import { packColor, } from '../../../affine-components/color-picker/index.js';
3
3
  import { BrushElementModel, DefaultTheme, LineWidth, resolveColor, } from '../../../affine-model/index.js';
4
- import { ToolbarModuleExtension, } from '../../../affine-shared/services/index.js';
4
+ import { ToolbarModuleExtension, translateKey, } from '../../../affine-shared/services/index.js';
5
5
  import { getMostCommonResolvedValue, getMostCommonValue, } from '../../../affine-shared/utils/index.js';
6
6
  import { BlockFlavourIdentifier } from '../../../std/index.js';
7
7
  import { html } from 'lit';
8
+ import { BRUSH_LABEL_COLOR } from '../../translations.js';
8
9
  export const brushToolbarConfig = {
9
10
  actions: [
10
11
  {
@@ -74,12 +75,13 @@ export const brushToolbarConfig = {
74
75
  return html `
75
76
  <edgeless-color-picker-button
76
77
  class="color"
77
- .label="${'Color'}"
78
+ .label="${translateKey(ctx.std, ...BRUSH_LABEL_COLOR)}"
78
79
  .pick=${onPick}
79
80
  .color=${color}
80
81
  .theme=${theme}
81
82
  .originalColor=${originalColor}
82
83
  .enableCustomColor=${enableCustomColor}
84
+ .std=${ctx.std}
83
85
  >
84
86
  </edgeless-color-picker-button>
85
87
  `;
@@ -1,10 +1,11 @@
1
1
  import { EdgelessCRUDIdentifier } from '../../../affine-block-surface/index.js';
2
2
  import { adjustColorAlpha, keepColor, packColor, } from '../../../affine-components/color-picker/index.js';
3
3
  import { DEFAULT_HIGHLIGHTER_LINE_WIDTH, DefaultTheme, HIGHLIGHTER_LINE_WIDTHS, HighlighterElementModel, resolveColor, } from '../../../affine-model/index.js';
4
- import { ToolbarModuleExtension, } from '../../../affine-shared/services/index.js';
4
+ import { ToolbarModuleExtension, translateKey, } from '../../../affine-shared/services/index.js';
5
5
  import { getMostCommonResolvedValue, getMostCommonValue, } from '../../../affine-shared/utils/index.js';
6
6
  import { BlockFlavourIdentifier } from '../../../std/index.js';
7
7
  import { html } from 'lit';
8
+ import { BRUSH_LABEL_COLOR } from '../../translations.js';
8
9
  const trackBaseProps = {
9
10
  category: 'highlighter',
10
11
  };
@@ -84,7 +85,7 @@ export const highlighterToolbarConfig = {
84
85
  return html `
85
86
  <edgeless-color-picker-button
86
87
  .colorPanelClass="${'one-way small'}"
87
- .label="${'Color'}"
88
+ .label="${translateKey(ctx.std, ...BRUSH_LABEL_COLOR)}"
88
89
  .pick=${onPick}
89
90
  .color=${color}
90
91
  .theme=${theme}
@@ -92,6 +93,7 @@ export const highlighterToolbarConfig = {
92
93
  .palettes=${DefaultTheme.StrokeColorShortPalettes}
93
94
  .shouldKeepColor=${true}
94
95
  .enableCustomColor=${false}
96
+ .std=${ctx.std}
95
97
  >
96
98
  </edgeless-color-picker-button>
97
99
  `;
@@ -0,0 +1,17 @@
1
+ import { type ChromeWording } from '../affine-shared/services/index.js';
2
+ /**
3
+ * This package's own wordings, joined into `PACKAGE_WORDINGS` in
4
+ * `@labre/affine/translations` — see that file and
5
+ * `packages/affine/shared/src/services/translation-service/README.md`.
6
+ *
7
+ * `senior-tool.ts`'s own `name: 'Pen'` is NOT here: `SeniorTool.labelKey`
8
+ * exists only for a framework's own button — the core tools (note, shape,
9
+ * template, pen…) declare no framework descriptor and therefore no key, by
10
+ * design (`packages/affine/widgets/edgeless-toolbar/src/extension/index.ts`).
11
+ */
12
+ export declare const BRUSH_TOOLTIP_ERASER: ChromeWording;
13
+ export declare const BRUSH_TOOLTIP_PEN: ChromeWording;
14
+ export declare const BRUSH_TOOLTIP_HIGHLIGHTER: ChromeWording;
15
+ /** An alias (L7 dedupe): the same word as {@link COLOR_LABEL}, one key. */
16
+ export declare const BRUSH_LABEL_COLOR: ChromeWording;
17
+ export declare const BRUSH_WORDINGS: readonly ChromeWording[];
@@ -0,0 +1,30 @@
1
+ import { COLOR_LABEL } from '../affine-shared/services/index.js';
2
+ /**
3
+ * This package's own wordings, joined into `PACKAGE_WORDINGS` in
4
+ * `@labre/affine/translations` — see that file and
5
+ * `packages/affine/shared/src/services/translation-service/README.md`.
6
+ *
7
+ * `senior-tool.ts`'s own `name: 'Pen'` is NOT here: `SeniorTool.labelKey`
8
+ * exists only for a framework's own button — the core tools (note, shape,
9
+ * template, pen…) declare no framework descriptor and therefore no key, by
10
+ * design (`packages/affine/widgets/edgeless-toolbar/src/extension/index.ts`).
11
+ */
12
+ export const BRUSH_TOOLTIP_ERASER = [
13
+ 'com.labre.brush.tooltip.eraser',
14
+ 'Eraser',
15
+ ];
16
+ export const BRUSH_TOOLTIP_PEN = [
17
+ 'com.labre.brush.tooltip.pen',
18
+ 'Pen',
19
+ ];
20
+ export const BRUSH_TOOLTIP_HIGHLIGHTER = [
21
+ 'com.labre.brush.tooltip.highlighter',
22
+ 'Highlighter',
23
+ ];
24
+ /** An alias (L7 dedupe): the same word as {@link COLOR_LABEL}, one key. */
25
+ export const BRUSH_LABEL_COLOR = COLOR_LABEL;
26
+ export const BRUSH_WORDINGS = [
27
+ BRUSH_TOOLTIP_ERASER,
28
+ BRUSH_TOOLTIP_PEN,
29
+ BRUSH_TOOLTIP_HIGHLIGHTER,
30
+ ];
@@ -1,5 +1,5 @@
1
1
  import type { ConnectorElementModel } from '../../affine-model/index.js';
2
- import type { AnyCommandDescriptor, BlockStdScope } from '../../std/index.js';
2
+ import type { AnyCommandDescriptor, BlockStdScope, CommandDescriptor } from '../../std/index.js';
3
3
  import { z } from 'zod';
4
4
  import { type TypedEdge } from './typed-edge.js';
5
5
  /**
@@ -64,6 +64,13 @@ export declare function invertibleEdges(std: BlockStdScope, elementIds?: string[
64
64
  export declare function invertEdge(model: ConnectorElementModel): void;
65
65
  /** The registered id, so a toolbar entry can invoke it rather than copy it. */
66
66
  export declare const INVERT_EDGE_DIRECTION = "edge.invert-direction";
67
+ /**
68
+ * Exported (not just registered through {@link edgeDirectionCommands}) so the
69
+ * contextual-toolbar entry can read its `labelKey` / `labelFallback` straight
70
+ * off the descriptor — see `toolbar/config.ts`'s `b.invert-direction` — rather
71
+ * than restating the wording as a second literal.
72
+ */
73
+ export declare const invertEdgeDirection: CommandDescriptor<InvertEdgeDirectionParams>;
67
74
  /**
68
75
  * The registry's element type erases the parameter contract, and `run`
69
76
  * re-validates with the zod schema rather than trusting the static type — what
@@ -105,7 +105,13 @@ export function invertEdge(model) {
105
105
  }
106
106
  /** The registered id, so a toolbar entry can invoke it rather than copy it. */
107
107
  export const INVERT_EDGE_DIRECTION = 'edge.invert-direction';
108
- const invertEdgeDirection = {
108
+ /**
109
+ * Exported (not just registered through {@link edgeDirectionCommands}) so the
110
+ * contextual-toolbar entry can read its `labelKey` / `labelFallback` straight
111
+ * off the descriptor — see `toolbar/config.ts`'s `b.invert-direction` — rather
112
+ * than restating the wording as a second literal.
113
+ */
114
+ export const invertEdgeDirection = {
109
115
  id: INVERT_EDGE_DIRECTION,
110
116
  owner: 'core',
111
117
  kind: 'action',
@@ -34,7 +34,7 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
34
34
  };
35
35
  import { DefaultTool, EdgelessCRUDIdentifier, } from '../../affine-block-surface/index.js';
36
36
  import { getLineHeight } from '../../affine-gfx-text/index.js';
37
- import { ThemeProvider } from '../../affine-shared/services/index.js';
37
+ import { ThemeProvider, translateKey } from '../../affine-shared/services/index.js';
38
38
  import { almostEqual } from '../../affine-shared/utils/index.js';
39
39
  import { BlockSuiteError, ErrorCode } from '../../global/exceptions/index.js';
40
40
  import { Bound, Vec } from '../../global/gfx/index.js';
@@ -47,6 +47,7 @@ import { css, html, nothing } from 'lit';
47
47
  import { property, query } from 'lit/decorators.js';
48
48
  import { styleMap } from 'lit/directives/style-map.js';
49
49
  import * as Y from 'yjs';
50
+ import { CONNECTOR_ADD_TEXT } from '../translations.js';
50
51
  const HORIZONTAL_PADDING = 2;
51
52
  const VERTICAL_PADDING = 2;
52
53
  const BORDER_WIDTH = 1;
@@ -312,7 +313,7 @@ let EdgelessConnectorLabelEditor = (() => {
312
313
  ${isEmpty
313
314
  ? html `
314
315
  <span class="edgeless-connector-label-editor-placeholder">
315
- Add text
316
+ ${translateKey(this.std, ...CONNECTOR_ADD_TEXT)}
316
317
  </span>
317
318
  `
318
319
  : nothing}
@@ -16,6 +16,7 @@ export declare const connectorToolbarConfig: {
16
16
  readonly id: "b.flip-direction";
17
17
  readonly icon: import("lit-html").TemplateResult<1>;
18
18
  readonly tooltip: "Flip direction";
19
+ readonly tooltipWording: import("../../affine-shared/services/index.js").ChromeWording;
19
20
  /**
20
21
  * Hidden for a TYPED EDGE (`docs/adr/0010` M3).
21
22
  *
@@ -56,7 +57,8 @@ export declare const connectorToolbarConfig: {
56
57
  */
57
58
  readonly id: "b.invert-direction";
58
59
  readonly icon: import("lit-html").TemplateResult<1>;
59
- readonly tooltip: "Reverse direction";
60
+ readonly tooltip: string | undefined;
61
+ readonly tooltipWording: readonly [string, string];
60
62
  /**
61
63
  * Shown as soon as the selection holds ONE reversible typed edge, and
62
64
  * it then acts on the typed edges of that selection and on nothing
@@ -77,6 +79,7 @@ export declare const connectorToolbarConfig: {
77
79
  }, {
78
80
  readonly id: "g.text";
79
81
  readonly tooltip: "Add text";
82
+ readonly tooltipWording: import("../../affine-shared/services/index.js").ChromeWording;
80
83
  readonly icon: import("lit-html").TemplateResult<1>;
81
84
  readonly when: (ctx: ToolbarContext) => boolean;
82
85
  readonly run: (ctx: ToolbarContext) => void;