@jackuait/blok 0.4.1 → 0.4.2

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 (397) hide show
  1. package/README.md +136 -17
  2. package/codemod/README.md +16 -0
  3. package/codemod/migrate-editorjs-to-blok.js +859 -92
  4. package/codemod/test.js +682 -77
  5. package/dist/blok.mjs +5 -2
  6. package/dist/chunks/blok-BjgH1REI.mjs +12838 -0
  7. package/dist/chunks/i18next-CugVlwWp.mjs +1292 -0
  8. package/dist/chunks/i18next-loader-DfiUa_gd.mjs +43 -0
  9. package/dist/{index-CBkApZKo.mjs → chunks/index-5m5JWNey.mjs} +2 -2
  10. package/dist/chunks/inline-tool-convert-Bx5BVd8I.mjs +1988 -0
  11. package/dist/chunks/messages-2434tVOK.mjs +47 -0
  12. package/dist/chunks/messages-3DcCwXMF.mjs +47 -0
  13. package/dist/chunks/messages-4kMwVAKY.mjs +47 -0
  14. package/dist/chunks/messages-57uL5htT.mjs +47 -0
  15. package/dist/chunks/messages-76-iJV9Q.mjs +47 -0
  16. package/dist/chunks/messages-8p86Eyf2.mjs +47 -0
  17. package/dist/chunks/messages-BBX0p0Pi.mjs +47 -0
  18. package/dist/chunks/messages-BCm2eudQ.mjs +47 -0
  19. package/dist/chunks/messages-BFiUomgG.mjs +47 -0
  20. package/dist/chunks/messages-BIPNHHAV.mjs +47 -0
  21. package/dist/chunks/messages-BUlwu9mo.mjs +47 -0
  22. package/dist/chunks/messages-BX-DPa-z.mjs +47 -0
  23. package/dist/chunks/messages-BextV3Qh.mjs +47 -0
  24. package/dist/chunks/messages-BiPSFlUG.mjs +47 -0
  25. package/dist/chunks/messages-BiXe9G-O.mjs +47 -0
  26. package/dist/chunks/messages-Bl5z_Igo.mjs +47 -0
  27. package/dist/chunks/messages-BnsE97ku.mjs +47 -0
  28. package/dist/chunks/messages-BoO8gsVD.mjs +47 -0
  29. package/dist/chunks/messages-BqWaOGMn.mjs +47 -0
  30. package/dist/chunks/messages-BqkL2_Ro.mjs +47 -0
  31. package/dist/chunks/messages-BvCkXKX-.mjs +47 -0
  32. package/dist/chunks/messages-C6tbPLoj.mjs +47 -0
  33. package/dist/chunks/messages-CA6T3-gQ.mjs +47 -0
  34. package/dist/chunks/messages-CFFPFdWP.mjs +47 -0
  35. package/dist/chunks/messages-CFrKE-TN.mjs +47 -0
  36. package/dist/chunks/messages-CHz8VlG-.mjs +47 -0
  37. package/dist/chunks/messages-CLixzySl.mjs +47 -0
  38. package/dist/chunks/messages-CV7OM_qk.mjs +47 -0
  39. package/dist/chunks/messages-CXHt3eCC.mjs +47 -0
  40. package/dist/chunks/messages-CbmsBrB0.mjs +47 -0
  41. package/dist/chunks/messages-Ceo1KtFx.mjs +47 -0
  42. package/dist/chunks/messages-Cm0LJLtB.mjs +47 -0
  43. package/dist/chunks/messages-CmymP_Ar.mjs +47 -0
  44. package/dist/chunks/messages-D0ohMB5H.mjs +47 -0
  45. package/dist/chunks/messages-D3GrDwXh.mjs +47 -0
  46. package/dist/chunks/messages-D3vTzIpL.mjs +47 -0
  47. package/dist/chunks/messages-D5WeksbV.mjs +47 -0
  48. package/dist/chunks/messages-DGaab4EP.mjs +47 -0
  49. package/dist/chunks/messages-DKha57ZU.mjs +47 -0
  50. package/dist/chunks/messages-DOaujgMW.mjs +47 -0
  51. package/dist/chunks/messages-DVbPLd_0.mjs +47 -0
  52. package/dist/chunks/messages-D_FCyfW6.mjs +47 -0
  53. package/dist/chunks/messages-Dd5iZN3c.mjs +47 -0
  54. package/dist/chunks/messages-DehM7135.mjs +47 -0
  55. package/dist/chunks/messages-Dg1OHftD.mjs +47 -0
  56. package/dist/chunks/messages-Di6Flq-b.mjs +47 -0
  57. package/dist/chunks/messages-Dqhhex6e.mjs +47 -0
  58. package/dist/chunks/messages-DueVe0F1.mjs +47 -0
  59. package/dist/chunks/messages-Dx3eFwI0.mjs +47 -0
  60. package/dist/chunks/messages-FOtiUoKl.mjs +47 -0
  61. package/dist/chunks/messages-FTOZNhRD.mjs +47 -0
  62. package/dist/chunks/messages-IQxGfQIV.mjs +47 -0
  63. package/dist/chunks/messages-JF2fzCkK.mjs +47 -0
  64. package/dist/chunks/messages-MOGl7I5v.mjs +47 -0
  65. package/dist/chunks/messages-QgYhPL-3.mjs +47 -0
  66. package/dist/chunks/messages-WYWIbQwo.mjs +47 -0
  67. package/dist/chunks/messages-a6A_LgDv.mjs +47 -0
  68. package/dist/chunks/messages-bSf31LJi.mjs +47 -0
  69. package/dist/chunks/messages-diGozhTn.mjs +47 -0
  70. package/dist/chunks/messages-er-kd-VO.mjs +47 -0
  71. package/dist/chunks/messages-ez3w5NBn.mjs +47 -0
  72. package/dist/chunks/messages-f3uXjegd.mjs +47 -0
  73. package/dist/chunks/messages-ohwI1UGv.mjs +47 -0
  74. package/dist/chunks/messages-p9BZJaFV.mjs +47 -0
  75. package/dist/chunks/messages-qIQ4L4rw.mjs +47 -0
  76. package/dist/chunks/messages-qWkXPggi.mjs +47 -0
  77. package/dist/chunks/messages-w5foGze_.mjs +47 -0
  78. package/dist/full.mjs +50 -0
  79. package/dist/locales.mjs +227 -0
  80. package/dist/messages-2434tVOK.mjs +47 -0
  81. package/dist/messages-3DcCwXMF.mjs +47 -0
  82. package/dist/messages-4kMwVAKY.mjs +47 -0
  83. package/dist/messages-57uL5htT.mjs +47 -0
  84. package/dist/messages-76-iJV9Q.mjs +47 -0
  85. package/dist/messages-8p86Eyf2.mjs +47 -0
  86. package/dist/messages-BBX0p0Pi.mjs +47 -0
  87. package/dist/messages-BCm2eudQ.mjs +47 -0
  88. package/dist/messages-BFiUomgG.mjs +47 -0
  89. package/dist/messages-BIPNHHAV.mjs +47 -0
  90. package/dist/messages-BUlwu9mo.mjs +47 -0
  91. package/dist/messages-BX-DPa-z.mjs +47 -0
  92. package/dist/messages-BextV3Qh.mjs +47 -0
  93. package/dist/messages-BiPSFlUG.mjs +47 -0
  94. package/dist/messages-BiXe9G-O.mjs +47 -0
  95. package/dist/messages-Bl5z_Igo.mjs +47 -0
  96. package/dist/messages-BnsE97ku.mjs +47 -0
  97. package/dist/messages-BoO8gsVD.mjs +47 -0
  98. package/dist/messages-BqWaOGMn.mjs +47 -0
  99. package/dist/messages-BqkL2_Ro.mjs +47 -0
  100. package/dist/messages-BvCkXKX-.mjs +47 -0
  101. package/dist/messages-C6tbPLoj.mjs +47 -0
  102. package/dist/messages-CA6T3-gQ.mjs +47 -0
  103. package/dist/messages-CFFPFdWP.mjs +47 -0
  104. package/dist/messages-CFrKE-TN.mjs +47 -0
  105. package/dist/messages-CHz8VlG-.mjs +47 -0
  106. package/dist/messages-CLixzySl.mjs +47 -0
  107. package/dist/messages-CV7OM_qk.mjs +47 -0
  108. package/dist/messages-CXHt3eCC.mjs +47 -0
  109. package/dist/messages-CbmsBrB0.mjs +47 -0
  110. package/dist/messages-Ceo1KtFx.mjs +47 -0
  111. package/dist/messages-Cm0LJLtB.mjs +47 -0
  112. package/dist/messages-CmymP_Ar.mjs +47 -0
  113. package/dist/messages-D0ohMB5H.mjs +47 -0
  114. package/dist/messages-D3GrDwXh.mjs +47 -0
  115. package/dist/messages-D3vTzIpL.mjs +47 -0
  116. package/dist/messages-D5WeksbV.mjs +47 -0
  117. package/dist/messages-DGaab4EP.mjs +47 -0
  118. package/dist/messages-DKha57ZU.mjs +47 -0
  119. package/dist/messages-DOaujgMW.mjs +47 -0
  120. package/dist/messages-DVbPLd_0.mjs +47 -0
  121. package/dist/messages-D_FCyfW6.mjs +47 -0
  122. package/dist/messages-Dd5iZN3c.mjs +47 -0
  123. package/dist/messages-DehM7135.mjs +47 -0
  124. package/dist/messages-Dg1OHftD.mjs +47 -0
  125. package/dist/messages-Di6Flq-b.mjs +47 -0
  126. package/dist/messages-Dqhhex6e.mjs +47 -0
  127. package/dist/messages-DueVe0F1.mjs +47 -0
  128. package/dist/messages-Dx3eFwI0.mjs +47 -0
  129. package/dist/messages-FOtiUoKl.mjs +47 -0
  130. package/dist/messages-FTOZNhRD.mjs +47 -0
  131. package/dist/messages-IQxGfQIV.mjs +47 -0
  132. package/dist/messages-JF2fzCkK.mjs +47 -0
  133. package/dist/messages-MOGl7I5v.mjs +47 -0
  134. package/dist/messages-QgYhPL-3.mjs +47 -0
  135. package/dist/messages-WYWIbQwo.mjs +47 -0
  136. package/dist/messages-a6A_LgDv.mjs +47 -0
  137. package/dist/messages-bSf31LJi.mjs +47 -0
  138. package/dist/messages-diGozhTn.mjs +47 -0
  139. package/dist/messages-er-kd-VO.mjs +47 -0
  140. package/dist/messages-ez3w5NBn.mjs +47 -0
  141. package/dist/messages-f3uXjegd.mjs +47 -0
  142. package/dist/messages-ohwI1UGv.mjs +47 -0
  143. package/dist/messages-p9BZJaFV.mjs +47 -0
  144. package/dist/messages-qIQ4L4rw.mjs +47 -0
  145. package/dist/messages-qWkXPggi.mjs +47 -0
  146. package/dist/messages-w5foGze_.mjs +47 -0
  147. package/dist/tools.mjs +3073 -0
  148. package/dist/vendor.LICENSE.txt +59 -156
  149. package/package.json +47 -15
  150. package/src/blok.ts +267 -0
  151. package/src/components/__module.ts +139 -0
  152. package/src/components/block/api.ts +155 -0
  153. package/src/components/block/index.ts +1427 -0
  154. package/src/components/block-tunes/block-tune-delete.ts +51 -0
  155. package/src/components/blocks.ts +338 -0
  156. package/src/components/constants/data-attributes.ts +342 -0
  157. package/src/components/constants.ts +76 -0
  158. package/src/components/core.ts +392 -0
  159. package/src/components/dom.ts +773 -0
  160. package/src/components/domIterator.ts +189 -0
  161. package/src/components/errors/critical.ts +5 -0
  162. package/src/components/events/BlockChanged.ts +16 -0
  163. package/src/components/events/BlockHovered.ts +21 -0
  164. package/src/components/events/BlockSettingsClosed.ts +12 -0
  165. package/src/components/events/BlockSettingsOpened.ts +12 -0
  166. package/src/components/events/BlokMobileLayoutToggled.ts +15 -0
  167. package/src/components/events/FakeCursorAboutToBeToggled.ts +17 -0
  168. package/src/components/events/FakeCursorHaveBeenSet.ts +17 -0
  169. package/src/components/events/HistoryStateChanged.ts +19 -0
  170. package/src/components/events/RedactorDomChanged.ts +14 -0
  171. package/src/components/events/index.ts +46 -0
  172. package/src/components/flipper.ts +481 -0
  173. package/src/components/i18n/i18next-loader.ts +84 -0
  174. package/src/components/i18n/lightweight-i18n.ts +86 -0
  175. package/src/components/i18n/locales/TRANSLATION_GUIDELINES.md +113 -0
  176. package/src/components/i18n/locales/am/messages.json +44 -0
  177. package/src/components/i18n/locales/ar/messages.json +44 -0
  178. package/src/components/i18n/locales/az/messages.json +44 -0
  179. package/src/components/i18n/locales/bg/messages.json +44 -0
  180. package/src/components/i18n/locales/bn/messages.json +44 -0
  181. package/src/components/i18n/locales/bs/messages.json +44 -0
  182. package/src/components/i18n/locales/cs/messages.json +44 -0
  183. package/src/components/i18n/locales/da/messages.json +44 -0
  184. package/src/components/i18n/locales/de/messages.json +44 -0
  185. package/src/components/i18n/locales/dv/messages.json +44 -0
  186. package/src/components/i18n/locales/el/messages.json +44 -0
  187. package/src/components/i18n/locales/en/messages.json +44 -0
  188. package/src/components/i18n/locales/es/messages.json +44 -0
  189. package/src/components/i18n/locales/et/messages.json +44 -0
  190. package/src/components/i18n/locales/fa/messages.json +44 -0
  191. package/src/components/i18n/locales/fi/messages.json +44 -0
  192. package/src/components/i18n/locales/fil/messages.json +44 -0
  193. package/src/components/i18n/locales/fr/messages.json +44 -0
  194. package/src/components/i18n/locales/gu/messages.json +44 -0
  195. package/src/components/i18n/locales/he/messages.json +44 -0
  196. package/src/components/i18n/locales/hi/messages.json +44 -0
  197. package/src/components/i18n/locales/hr/messages.json +44 -0
  198. package/src/components/i18n/locales/hu/messages.json +44 -0
  199. package/src/components/i18n/locales/hy/messages.json +44 -0
  200. package/src/components/i18n/locales/id/messages.json +44 -0
  201. package/src/components/i18n/locales/index.ts +225 -0
  202. package/src/components/i18n/locales/it/messages.json +44 -0
  203. package/src/components/i18n/locales/ja/messages.json +44 -0
  204. package/src/components/i18n/locales/ka/messages.json +44 -0
  205. package/src/components/i18n/locales/km/messages.json +44 -0
  206. package/src/components/i18n/locales/kn/messages.json +44 -0
  207. package/src/components/i18n/locales/ko/messages.json +44 -0
  208. package/src/components/i18n/locales/ku/messages.json +44 -0
  209. package/src/components/i18n/locales/lo/messages.json +44 -0
  210. package/src/components/i18n/locales/lt/messages.json +44 -0
  211. package/src/components/i18n/locales/lv/messages.json +44 -0
  212. package/src/components/i18n/locales/mk/messages.json +44 -0
  213. package/src/components/i18n/locales/ml/messages.json +44 -0
  214. package/src/components/i18n/locales/mn/messages.json +44 -0
  215. package/src/components/i18n/locales/mr/messages.json +44 -0
  216. package/src/components/i18n/locales/ms/messages.json +44 -0
  217. package/src/components/i18n/locales/my/messages.json +44 -0
  218. package/src/components/i18n/locales/ne/messages.json +44 -0
  219. package/src/components/i18n/locales/nl/messages.json +44 -0
  220. package/src/components/i18n/locales/no/messages.json +44 -0
  221. package/src/components/i18n/locales/pa/messages.json +44 -0
  222. package/src/components/i18n/locales/pl/messages.json +44 -0
  223. package/src/components/i18n/locales/ps/messages.json +44 -0
  224. package/src/components/i18n/locales/pt/messages.json +44 -0
  225. package/src/components/i18n/locales/ro/messages.json +44 -0
  226. package/src/components/i18n/locales/ru/messages.json +44 -0
  227. package/src/components/i18n/locales/sd/messages.json +44 -0
  228. package/src/components/i18n/locales/si/messages.json +44 -0
  229. package/src/components/i18n/locales/sk/messages.json +44 -0
  230. package/src/components/i18n/locales/sl/messages.json +44 -0
  231. package/src/components/i18n/locales/sq/messages.json +44 -0
  232. package/src/components/i18n/locales/sr/messages.json +44 -0
  233. package/src/components/i18n/locales/sv/messages.json +44 -0
  234. package/src/components/i18n/locales/sw/messages.json +44 -0
  235. package/src/components/i18n/locales/ta/messages.json +44 -0
  236. package/src/components/i18n/locales/te/messages.json +44 -0
  237. package/src/components/i18n/locales/th/messages.json +44 -0
  238. package/src/components/i18n/locales/tr/messages.json +44 -0
  239. package/src/components/i18n/locales/ug/messages.json +44 -0
  240. package/src/components/i18n/locales/uk/messages.json +44 -0
  241. package/src/components/i18n/locales/ur/messages.json +44 -0
  242. package/src/components/i18n/locales/vi/messages.json +44 -0
  243. package/src/components/i18n/locales/yi/messages.json +44 -0
  244. package/src/components/i18n/locales/zh/messages.json +44 -0
  245. package/src/components/icons/index.ts +242 -0
  246. package/src/components/inline-tools/inline-tool-bold.ts +2213 -0
  247. package/src/components/inline-tools/inline-tool-convert.ts +141 -0
  248. package/src/components/inline-tools/inline-tool-italic.ts +500 -0
  249. package/src/components/inline-tools/inline-tool-link.ts +539 -0
  250. package/src/components/modules/api/blocks.ts +363 -0
  251. package/src/components/modules/api/caret.ts +125 -0
  252. package/src/components/modules/api/events.ts +51 -0
  253. package/src/components/modules/api/history.ts +73 -0
  254. package/src/components/modules/api/i18n.ts +33 -0
  255. package/src/components/modules/api/index.ts +39 -0
  256. package/src/components/modules/api/inlineToolbar.ts +33 -0
  257. package/src/components/modules/api/listeners.ts +56 -0
  258. package/src/components/modules/api/notifier.ts +46 -0
  259. package/src/components/modules/api/readonly.ts +39 -0
  260. package/src/components/modules/api/sanitizer.ts +30 -0
  261. package/src/components/modules/api/saver.ts +52 -0
  262. package/src/components/modules/api/selection.ts +48 -0
  263. package/src/components/modules/api/styles.ts +72 -0
  264. package/src/components/modules/api/toolbar.ts +79 -0
  265. package/src/components/modules/api/tools.ts +16 -0
  266. package/src/components/modules/api/tooltip.ts +67 -0
  267. package/src/components/modules/api/ui.ts +36 -0
  268. package/src/components/modules/blockEvents.ts +1375 -0
  269. package/src/components/modules/blockManager.ts +1348 -0
  270. package/src/components/modules/blockSelection.ts +708 -0
  271. package/src/components/modules/caret.ts +853 -0
  272. package/src/components/modules/crossBlockSelection.ts +329 -0
  273. package/src/components/modules/dragManager.ts +1141 -0
  274. package/src/components/modules/history.ts +1098 -0
  275. package/src/components/modules/i18n.ts +325 -0
  276. package/src/components/modules/index.ts +139 -0
  277. package/src/components/modules/modificationsObserver.ts +147 -0
  278. package/src/components/modules/paste.ts +1092 -0
  279. package/src/components/modules/readonly.ts +136 -0
  280. package/src/components/modules/rectangleSelection.ts +668 -0
  281. package/src/components/modules/renderer.ts +155 -0
  282. package/src/components/modules/saver.ts +283 -0
  283. package/src/components/modules/toolbar/blockSettings.ts +776 -0
  284. package/src/components/modules/toolbar/index.ts +1311 -0
  285. package/src/components/modules/toolbar/inline.ts +956 -0
  286. package/src/components/modules/tools.ts +589 -0
  287. package/src/components/modules/ui.ts +1179 -0
  288. package/src/components/polyfills.ts +113 -0
  289. package/src/components/selection.ts +1189 -0
  290. package/src/components/tools/base.ts +274 -0
  291. package/src/components/tools/block.ts +291 -0
  292. package/src/components/tools/collection.ts +67 -0
  293. package/src/components/tools/factory.ts +85 -0
  294. package/src/components/tools/inline.ts +71 -0
  295. package/src/components/tools/tune.ts +33 -0
  296. package/src/components/ui/toolbox.ts +497 -0
  297. package/src/components/utils/announcer.ts +205 -0
  298. package/src/components/utils/api.ts +20 -0
  299. package/src/components/utils/bem.ts +26 -0
  300. package/src/components/utils/blocks.ts +284 -0
  301. package/src/components/utils/caret.ts +1067 -0
  302. package/src/components/utils/data-model-transform.ts +382 -0
  303. package/src/components/utils/events.ts +117 -0
  304. package/src/components/utils/keyboard.ts +60 -0
  305. package/src/components/utils/listeners.ts +296 -0
  306. package/src/components/utils/mutations.ts +39 -0
  307. package/src/components/utils/notifier/draw.ts +190 -0
  308. package/src/components/utils/notifier/index.ts +66 -0
  309. package/src/components/utils/notifier/types.ts +1 -0
  310. package/src/components/utils/notifier.ts +77 -0
  311. package/src/components/utils/placeholder.ts +140 -0
  312. package/src/components/utils/popover/components/hint/hint.const.ts +10 -0
  313. package/src/components/utils/popover/components/hint/hint.ts +46 -0
  314. package/src/components/utils/popover/components/hint/index.ts +6 -0
  315. package/src/components/utils/popover/components/popover-header/index.ts +2 -0
  316. package/src/components/utils/popover/components/popover-header/popover-header.const.ts +8 -0
  317. package/src/components/utils/popover/components/popover-header/popover-header.ts +80 -0
  318. package/src/components/utils/popover/components/popover-header/popover-header.types.ts +14 -0
  319. package/src/components/utils/popover/components/popover-item/index.ts +13 -0
  320. package/src/components/utils/popover/components/popover-item/popover-item-default/popover-item-default.const.ts +50 -0
  321. package/src/components/utils/popover/components/popover-item/popover-item-default/popover-item-default.ts +666 -0
  322. package/src/components/utils/popover/components/popover-item/popover-item-html/popover-item-html.const.ts +14 -0
  323. package/src/components/utils/popover/components/popover-item/popover-item-html/popover-item-html.ts +136 -0
  324. package/src/components/utils/popover/components/popover-item/popover-item-separator/popover-item-separator.const.ts +20 -0
  325. package/src/components/utils/popover/components/popover-item/popover-item-separator/popover-item-separator.ts +117 -0
  326. package/src/components/utils/popover/components/popover-item/popover-item.ts +187 -0
  327. package/src/components/utils/popover/components/search-input/index.ts +2 -0
  328. package/src/components/utils/popover/components/search-input/search-input.const.ts +8 -0
  329. package/src/components/utils/popover/components/search-input/search-input.ts +181 -0
  330. package/src/components/utils/popover/components/search-input/search-input.types.ts +30 -0
  331. package/src/components/utils/popover/index.ts +13 -0
  332. package/src/components/utils/popover/popover-abstract.ts +448 -0
  333. package/src/components/utils/popover/popover-desktop.ts +643 -0
  334. package/src/components/utils/popover/popover-inline.ts +338 -0
  335. package/src/components/utils/popover/popover-mobile.ts +201 -0
  336. package/src/components/utils/popover/popover.const.ts +81 -0
  337. package/src/components/utils/popover/utils/popover-states-history.ts +72 -0
  338. package/src/components/utils/promise-queue.ts +43 -0
  339. package/src/components/utils/sanitizer.ts +537 -0
  340. package/src/components/utils/scroll-locker.ts +87 -0
  341. package/src/components/utils/shortcut.ts +231 -0
  342. package/src/components/utils/shortcuts.ts +113 -0
  343. package/src/components/utils/tools.ts +105 -0
  344. package/src/components/utils/tooltip.ts +642 -0
  345. package/src/components/utils/tw.ts +241 -0
  346. package/src/components/utils.ts +1081 -0
  347. package/src/env.d.ts +13 -0
  348. package/src/full.ts +69 -0
  349. package/src/locales.ts +51 -0
  350. package/src/stories/Block.stories.ts +498 -0
  351. package/src/stories/EditorModes.stories.ts +505 -0
  352. package/src/stories/Header.stories.ts +137 -0
  353. package/src/stories/InlineToolbar.stories.ts +498 -0
  354. package/src/stories/List.stories.ts +259 -0
  355. package/src/stories/Notifier.stories.ts +340 -0
  356. package/src/stories/Paragraph.stories.ts +112 -0
  357. package/src/stories/Placeholder.stories.ts +319 -0
  358. package/src/stories/Popover.stories.ts +844 -0
  359. package/src/stories/Selection.stories.ts +250 -0
  360. package/src/stories/StubBlock.stories.ts +156 -0
  361. package/src/stories/Toolbar.stories.ts +223 -0
  362. package/src/stories/Toolbox.stories.ts +166 -0
  363. package/src/stories/Tooltip.stories.ts +198 -0
  364. package/src/stories/helpers.ts +463 -0
  365. package/src/styles/main.css +123 -0
  366. package/src/tools/header/index.ts +570 -0
  367. package/src/tools/index.ts +38 -0
  368. package/src/tools/list/index.ts +1803 -0
  369. package/src/tools/paragraph/index.ts +411 -0
  370. package/src/tools/stub/index.ts +107 -0
  371. package/src/types-internal/blok-modules.d.ts +87 -0
  372. package/src/types-internal/html-janitor.d.ts +28 -0
  373. package/src/types-internal/module-config.d.ts +11 -0
  374. package/src/variants/all-locales.ts +155 -0
  375. package/src/variants/blok-maximum.ts +20 -0
  376. package/src/variants/blok-minimum.ts +243 -0
  377. package/types/api/blocks.d.ts +1 -1
  378. package/types/api/i18n.d.ts +5 -3
  379. package/types/api/selection.d.ts +6 -0
  380. package/types/api/styles.d.ts +0 -5
  381. package/types/configs/blok-config.d.ts +21 -0
  382. package/types/configs/i18n-config.d.ts +52 -2
  383. package/types/configs/i18n-dictionary.d.ts +16 -90
  384. package/types/data-attributes.d.ts +169 -0
  385. package/types/data-formats/output-data.d.ts +15 -0
  386. package/types/full.d.ts +80 -0
  387. package/types/index.d.ts +9 -24
  388. package/types/locales.d.ts +59 -0
  389. package/types/tools/adapters/inline-tool-adapter.d.ts +10 -0
  390. package/types/tools/block-tool.d.ts +9 -0
  391. package/types/tools/list.d.ts +25 -18
  392. package/types/tools/tool-settings.d.ts +8 -1
  393. package/types/tools/tool.d.ts +6 -0
  394. package/types/tools-entry.d.ts +49 -0
  395. package/types/utils/popover/popover-item.d.ts +0 -5
  396. package/dist/blok-BwPfU8ro.mjs +0 -21510
  397. package/dist/blok.umd.js +0 -198
@@ -0,0 +1,113 @@
1
+ # Translation Guidelines
2
+
3
+ This document provides guidelines for creating and maintaining translations for the Blok editor. Follow these principles to ensure consistent, high-quality translations across all supported languages.
4
+
5
+ ## Core Principles
6
+
7
+ 1. **Use UX-friendly, natural translations** suitable for real product interfaces
8
+ 2. **Prioritize clarity, brevity, and common UI patterns** over literal translation
9
+ 3. **Avoid slang, transliteration, and technical jargon**
10
+ 4. **Adapt wording to context** (buttons, tooltips, hints, mobile vs desktop)
11
+ 5. **Prefer action-oriented, user-centric phrasing**
12
+
13
+ ## Technical Requirements
14
+
15
+ ### File Format
16
+
17
+ - Each locale has a directory named with its ISO 639-1 code (e.g., `en/`, `fr/`, `de/`)
18
+ - Translations are stored in `messages.json` as a flat key-value object
19
+ - Keys use dot notation for namespacing (e.g., `popover.search`)
20
+ - All keys from `en/messages.json` must be present in every locale
21
+
22
+ ### Key Naming
23
+
24
+ Keys follow this structure:
25
+ - `toolNames.*` - Names of tools shown in the toolbox
26
+ - `tools.*` - Tool-specific strings (e.g., `tools.link.addLink`)
27
+ - `toolbox.*` - Toolbox/slash menu UI (e.g., `toolbox.addBelow`)
28
+ - `popover.*` - Popover UI elements (e.g., `popover.search`)
29
+ - `blockSettings.*` - Block menu actions (e.g., `blockSettings.delete`)
30
+ - `a11y.*` - Screen reader announcements and ARIA labels
31
+
32
+ ### Placeholders
33
+
34
+ Some strings contain placeholders in `{curlyBraces}` format. These must be preserved exactly as-is:
35
+ ```json
36
+ "a11y.dropPosition": "Will drop at position {position} of {total}"
37
+ ```
38
+
39
+ ## Translation Context
40
+
41
+ ### Tool Names (`toolNames.*`)
42
+
43
+ These appear in the toolbox/slash menu. Keep them short (1-2 words):
44
+ - Good: "Text", "Heading", "Bulleted list"
45
+ - Avoid: "Text paragraph block", "Header element"
46
+
47
+ ### UI Actions (`ui.*`)
48
+
49
+ These are tooltips and button labels. Be concise and action-oriented:
50
+ - Good: "Drag to move", "Click to add below"
51
+ - Avoid: "You can drag this to move it", "Click here to add a new block below"
52
+
53
+ ### Accessibility (`a11y.*`)
54
+
55
+ Screen reader text should be descriptive but not verbose:
56
+ - Good: "Drag to move block or click for menu"
57
+ - Avoid: "This is a drag handle that you can use to move the block"
58
+
59
+ ### Error Messages (`tools.stub.*`)
60
+
61
+ Be clear and helpful without being alarming:
62
+ - Good: "This block cannot be displayed"
63
+ - Avoid: "ERROR: Block rendering failed!"
64
+
65
+ ## Examples
66
+
67
+ ### Good Translations
68
+
69
+ | Key | English | French (Good) |
70
+ |-----|---------|---------------|
71
+ | `popover.search` | Search | Rechercher |
72
+ | `toolNames.bulletedList` | Bulleted list | Liste à puces |
73
+ | `blockSettings.delete` | Delete | Supprimer |
74
+
75
+ ### What to Avoid
76
+
77
+ | Issue | Bad Example | Better |
78
+ |-------|-------------|--------|
79
+ | Too literal | "Liste avec des points" | "Liste à puces" |
80
+ | Too verbose | "Cliquez ici pour rechercher" | "Rechercher" |
81
+ | Technical jargon | "Supprimer le bloc DOM" | "Supprimer" |
82
+ | Transliteration | "Serch" (phonetic) | "Buscar" (Spanish) |
83
+
84
+ ## RTL Languages
85
+
86
+ Arabic, Hebrew, Persian, Urdu, and other RTL languages are supported. The editor handles text direction automatically based on locale configuration. Ensure translations read naturally in RTL flow.
87
+
88
+ ## Grammar & Style
89
+
90
+ - **Consistent grammatical person** - Use imperative mood for actions ("Delete" not "Deletes" or "To delete")
91
+ - **Capitalization conventions** - Follow language-specific rules (German capitalizes nouns, English title-cases UI labels)
92
+ - **Formal/informal register** - Choose formal (vous/Sie/usted) or informal (tu/du/tú) consistently within each language
93
+
94
+ ## Practical Considerations
95
+
96
+ - **Text expansion** - Translations can be 30-50% longer than English; maintain brevity to avoid UI overflow
97
+ - **Keyboard shortcuts** - Adapt platform-specific mentions ("Option-click" vs "Alt-click") for locale conventions
98
+ - **Native punctuation** - Use language-appropriate punctuation (French uses non-breaking spaces before `:` and `;`, Chinese uses `「」` quotation marks, etc.)
99
+
100
+ ## Quality Assurance
101
+
102
+ - **Test in context** - UI strings may look correct in isolation but awkward when displayed in the actual interface
103
+ - **Gender/number agreement** - Ensure surrounding text handles grammatical variations when placeholders insert dynamic values
104
+ - **Reference established terminology** - Check how major apps (Google Docs, Notion, Microsoft Word) translate similar concepts in each language
105
+
106
+ ## Validation
107
+
108
+ Run the translation checker to verify completeness:
109
+ ```bash
110
+ node scripts/i18n/check-translations.mjs
111
+ ```
112
+
113
+ This will report any missing or extra keys compared to the English source.
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "ለማንቀሳቀስ ይጎትቱ",
3
+ "blockSettings.clickToOpenMenu": "ምናሌውን ለመክፈት ጠቅ ያድርጉ",
4
+ "toolbox.addBelow": "ከታች ለመጨመር ጠቅ ያድርጉ",
5
+ "toolbox.optionAddAbove": "ከላይ ለመጨመር Option-ጠቅ ያድርጉ",
6
+ "toolbox.ctrlAddAbove": "ከላይ ለመጨመር Ctrl-ጠቅ ያድርጉ",
7
+ "popover.search": "ፈልግ",
8
+ "popover.nothingFound": "ምንም አልተገኘም",
9
+ "popover.convertTo": "ወደ ቀይር",
10
+ "toolNames.text": "ጽሑፍ",
11
+ "toolNames.heading": "ርዕስ",
12
+ "toolNames.link": "አገናኝ",
13
+ "toolNames.bold": "ደማቅ",
14
+ "toolNames.italic": "ሰያፍ",
15
+ "toolNames.bulletedList": "ነጥብ ያለው ዝርዝር",
16
+ "toolNames.numberedList": "ቁጥር ያለው ዝርዝር",
17
+ "toolNames.todoList": "የሚደረግ ዝርዝር",
18
+ "tools.link.addLink": "አገናኝ ጨምር",
19
+ "tools.link.invalidLink": "ልክ ያልሆነ አገናኝ",
20
+ "tools.stub.error": "ስህተት",
21
+ "tools.stub.blockCannotBeDisplayed": "ይህ ብሎክ ሊታይ አይችልም",
22
+ "tools.header.heading1": "ርዕስ 1",
23
+ "tools.header.heading2": "ርዕስ 2",
24
+ "tools.header.heading3": "ርዕስ 3",
25
+ "tools.header.heading4": "ርዕስ 4",
26
+ "tools.header.heading5": "ርዕስ 5",
27
+ "tools.header.heading6": "ርዕስ 6",
28
+ "tools.list.list": "ዝርዝር",
29
+ "blockSettings.delete": "ሰርዝ",
30
+ "a11y.dragHandle": "ብሎኩን ለማንቀሳቀስ ይጎትቱ ወይም ለምናሌ ጠቅ ያድርጉ",
31
+ "a11y.dragHandleRole": "መጎተቻ",
32
+ "a11y.dragStarted": "ብሎክ እየተጎተተ ነው",
33
+ "a11y.dragStartedMultiple": "{count} ብሎኮች እየተጎተቱ ነው",
34
+ "a11y.dropPosition": "በ{total} ውስጥ በቦታ {position} ይጣላል",
35
+ "a11y.dropCancelled": "መጎተት ተሰርዟል",
36
+ "a11y.blockMoved": "ብሎክ ወደ ቦታ {position} ከ{total} ተዛወረ",
37
+ "a11y.blocksMoved": "{count} ብሎኮች ወደ ቦታ {position} ተዛወሩ",
38
+ "a11y.blockDuplicated": "ብሎክ በቦታ {position} ከ{total} ተባዝቷል",
39
+ "a11y.blocksDuplicated": "{count} ብሎኮች ከቦታ {position} ጀምሮ ተባዝተዋል",
40
+ "a11y.movedUp": "ብሎክ ወደ ላይ ወደ ቦታ {position} ከ{total} ተዛወረ",
41
+ "a11y.movedDown": "ብሎክ ወደ ታች ወደ ቦታ {position} ከ{total} ተዛወረ",
42
+ "a11y.atTop": "ብሎክ ከላይ ነው፣ ወደ ላይ መሄድ አይችልም",
43
+ "a11y.atBottom": "ብሎክ ከታች ነው፣ ወደ ታች መሄድ አይችልም"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "اسحب للتحريك",
3
+ "blockSettings.clickToOpenMenu": "انقر لفتح القائمة",
4
+ "toolbox.addBelow": "إضافة كتلة",
5
+ "toolbox.optionAddAbove": "⌥ — إضافة أعلى",
6
+ "toolbox.ctrlAddAbove": "Ctrl — إضافة أعلى",
7
+ "popover.search": "بحث",
8
+ "popover.nothingFound": "لا توجد نتائج",
9
+ "popover.convertTo": "تحويل إلى",
10
+ "toolNames.text": "نص",
11
+ "toolNames.heading": "عنوان",
12
+ "toolNames.link": "رابط",
13
+ "toolNames.bold": "عريض",
14
+ "toolNames.italic": "مائل",
15
+ "toolNames.bulletedList": "قائمة نقطية",
16
+ "toolNames.numberedList": "قائمة مرقمة",
17
+ "toolNames.todoList": "قائمة مهام",
18
+ "tools.link.addLink": "إضافة رابط",
19
+ "tools.link.invalidLink": "رابط غير صالح",
20
+ "tools.stub.error": "خطأ",
21
+ "tools.stub.blockCannotBeDisplayed": "تعذّر عرض هذه الكتلة",
22
+ "tools.header.heading1": "عنوان 1",
23
+ "tools.header.heading2": "عنوان 2",
24
+ "tools.header.heading3": "عنوان 3",
25
+ "tools.header.heading4": "عنوان 4",
26
+ "tools.header.heading5": "عنوان 5",
27
+ "tools.header.heading6": "عنوان 6",
28
+ "tools.list.list": "قائمة",
29
+ "blockSettings.delete": "حذف",
30
+ "a11y.dragHandle": "اسحب لتحريك الكتلة أو انقر للقائمة",
31
+ "a11y.dragHandleRole": "مقبض السحب",
32
+ "a11y.dragStarted": "جارٍ سحب الكتلة",
33
+ "a11y.dragStartedMultiple": "جارٍ سحب {count} كتل",
34
+ "a11y.dropPosition": "سيتم الإفلات في الموضع {position} من {total}",
35
+ "a11y.dropCancelled": "تم إلغاء السحب",
36
+ "a11y.blockMoved": "تم نقل الكتلة إلى الموضع {position} من {total}",
37
+ "a11y.blocksMoved": "تم نقل {count} كتل إلى الموضع {position}",
38
+ "a11y.blockDuplicated": "تم تكرار الكتلة في الموضع {position} من {total}",
39
+ "a11y.blocksDuplicated": "تم تكرار {count} كتل بدءًا من الموضع {position}",
40
+ "a11y.movedUp": "تم نقل الكتلة للأعلى، الموضع {position} من {total}",
41
+ "a11y.movedDown": "تم نقل الكتلة للأسفل، الموضع {position} من {total}",
42
+ "a11y.atTop": "الكتلة في الأعلى، لا يمكن التحريك للأعلى",
43
+ "a11y.atBottom": "الكتلة في الأسفل، لا يمكن التحريك للأسفل"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "Köçürmək üçün dartın",
3
+ "blockSettings.clickToOpenMenu": "Menyunu açmaq üçün klikləyin",
4
+ "toolbox.addBelow": "Blok əlavə et",
5
+ "toolbox.optionAddAbove": "⌥ Yuxarıya əlavə et",
6
+ "toolbox.ctrlAddAbove": "Ctrl Yuxarıya əlavə et",
7
+ "popover.search": "Axtar",
8
+ "popover.nothingFound": "Heç nə tapılmadı",
9
+ "popover.convertTo": "Çevir",
10
+ "toolNames.text": "Mətn",
11
+ "toolNames.heading": "Başlıq",
12
+ "toolNames.link": "Keçid",
13
+ "toolNames.bold": "Qalın",
14
+ "toolNames.italic": "Kursiv",
15
+ "toolNames.bulletedList": "Nöqtəli siyahı",
16
+ "toolNames.numberedList": "Nömrəli siyahı",
17
+ "toolNames.todoList": "Ediləcəklər siyahısı",
18
+ "tools.link.addLink": "Keçid əlavə et",
19
+ "tools.link.invalidLink": "Yanlış keçid",
20
+ "tools.stub.error": "Xəta",
21
+ "tools.stub.blockCannotBeDisplayed": "Bu blok göstərilə bilmir",
22
+ "tools.header.heading1": "Başlıq 1",
23
+ "tools.header.heading2": "Başlıq 2",
24
+ "tools.header.heading3": "Başlıq 3",
25
+ "tools.header.heading4": "Başlıq 4",
26
+ "tools.header.heading5": "Başlıq 5",
27
+ "tools.header.heading6": "Başlıq 6",
28
+ "tools.list.list": "Siyahı",
29
+ "blockSettings.delete": "Sil",
30
+ "a11y.dragHandle": "Köçürmək üçün dartın və ya menyu üçün klikləyin",
31
+ "a11y.dragHandleRole": "dartma tutacağı",
32
+ "a11y.dragStarted": "Blok dartılır",
33
+ "a11y.dragStartedMultiple": "{count} blok dartılır",
34
+ "a11y.dropPosition": "{total} içindən {position}-ci mövqeyə buraxılacaq",
35
+ "a11y.dropCancelled": "Dartma ləğv edildi",
36
+ "a11y.blockMoved": "Blok {total} içindən {position}-ci mövqeyə köçürüldü",
37
+ "a11y.blocksMoved": "{count} blok {position}-ci mövqeyə köçürüldü",
38
+ "a11y.blockDuplicated": "Blok {total} içindən {position}-ci mövqeyə kopyalandı",
39
+ "a11y.blocksDuplicated": "{count} blok {position}-ci mövqeyindən kopyalandı",
40
+ "a11y.movedUp": "Blok yuxarı köçürüldü ({total} içindən {position}-ci)",
41
+ "a11y.movedDown": "Blok aşağı köçürüldü ({total} içindən {position}-ci)",
42
+ "a11y.atTop": "Blok ən yuxarıdadır, yuxarı köçürülə bilməz",
43
+ "a11y.atBottom": "Blok ən aşağıdadır, aşağı köçürülə bilməz"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "Плъзнете за преместване",
3
+ "blockSettings.clickToOpenMenu": "Щракнете за отваряне на менюто",
4
+ "toolbox.addBelow": "Щракнете за добавяне отдолу",
5
+ "toolbox.optionAddAbove": "Option-щракване за добавяне отгоре",
6
+ "toolbox.ctrlAddAbove": "Ctrl-щракване за добавяне отгоре",
7
+ "popover.search": "Търсене",
8
+ "popover.nothingFound": "Нищо не е намерено",
9
+ "popover.convertTo": "Конвертиране в",
10
+ "toolNames.text": "Текст",
11
+ "toolNames.heading": "Заглавие",
12
+ "toolNames.link": "Връзка",
13
+ "toolNames.bold": "Удебелен",
14
+ "toolNames.italic": "Курсив",
15
+ "toolNames.bulletedList": "Списък с точки",
16
+ "toolNames.numberedList": "Номериран списък",
17
+ "toolNames.todoList": "Списък със задачи",
18
+ "tools.link.addLink": "Добавяне на връзка",
19
+ "tools.link.invalidLink": "Невалидна връзка",
20
+ "tools.stub.error": "Грешка",
21
+ "tools.stub.blockCannotBeDisplayed": "Този блок не може да бъде показан",
22
+ "tools.header.heading1": "Заглавие 1",
23
+ "tools.header.heading2": "Заглавие 2",
24
+ "tools.header.heading3": "Заглавие 3",
25
+ "tools.header.heading4": "Заглавие 4",
26
+ "tools.header.heading5": "Заглавие 5",
27
+ "tools.header.heading6": "Заглавие 6",
28
+ "tools.list.list": "Списък",
29
+ "blockSettings.delete": "Изтриване",
30
+ "a11y.dragHandle": "Плъзнете за преместване на блок или щракнете за меню",
31
+ "a11y.dragHandleRole": "манипулатор за плъзгане",
32
+ "a11y.dragStarted": "Плъзгане на блок",
33
+ "a11y.dragStartedMultiple": "Плъзгане на {count} блока",
34
+ "a11y.dropPosition": "Ще се пусне на позиция {position} от {total}",
35
+ "a11y.dropCancelled": "Плъзгането е отменено",
36
+ "a11y.blockMoved": "Блокът е преместен на позиция {position} от {total}",
37
+ "a11y.blocksMoved": "{count} блока са преместени на позиция {position}",
38
+ "a11y.blockDuplicated": "Блокът е дублиран на позиция {position} от {total}",
39
+ "a11y.blocksDuplicated": "{count} блока са дублирани от позиция {position}",
40
+ "a11y.movedUp": "Блокът е преместен нагоре на позиция {position} от {total}",
41
+ "a11y.movedDown": "Блокът е преместен надолу на позиция {position} от {total}",
42
+ "a11y.atTop": "Блокът е най-отгоре, не може да се премести нагоре",
43
+ "a11y.atBottom": "Блокът е най-отдолу, не може да се премести надолу"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "সরাতে টেনে আনুন",
3
+ "blockSettings.clickToOpenMenu": "মেনু খুলতে ক্লিক করুন",
4
+ "toolbox.addBelow": "ব্লক যোগ করুন",
5
+ "toolbox.optionAddAbove": "⌥ উপরে যোগ করুন",
6
+ "toolbox.ctrlAddAbove": "Ctrl উপরে যোগ করুন",
7
+ "popover.search": "খুঁজুন",
8
+ "popover.nothingFound": "কিছু পাওয়া যায়নি",
9
+ "popover.convertTo": "রূপান্তর করুন",
10
+ "toolNames.text": "টেক্সট",
11
+ "toolNames.heading": "শিরোনাম",
12
+ "toolNames.link": "লিংক",
13
+ "toolNames.bold": "বোল্ড",
14
+ "toolNames.italic": "ইটালিক",
15
+ "toolNames.bulletedList": "বুলেট তালিকা",
16
+ "toolNames.numberedList": "সংখ্যাযুক্ত তালিকা",
17
+ "toolNames.todoList": "কাজের তালিকা",
18
+ "tools.link.addLink": "লিংক যোগ করুন",
19
+ "tools.link.invalidLink": "অবৈধ লিংক",
20
+ "tools.stub.error": "ত্রুটি",
21
+ "tools.stub.blockCannotBeDisplayed": "এই ব্লকটি প্রদর্শন করা যাচ্ছে না",
22
+ "tools.header.heading1": "শিরোনাম 1",
23
+ "tools.header.heading2": "শিরোনাম 2",
24
+ "tools.header.heading3": "শিরোনাম 3",
25
+ "tools.header.heading4": "শিরোনাম 4",
26
+ "tools.header.heading5": "শিরোনাম 5",
27
+ "tools.header.heading6": "শিরোনাম 6",
28
+ "tools.list.list": "তালিকা",
29
+ "blockSettings.delete": "মুছুন",
30
+ "a11y.dragHandle": "ব্লক সরাতে টানুন বা মেনুর জন্য ক্লিক করুন",
31
+ "a11y.dragHandleRole": "টানার হ্যান্ডেল",
32
+ "a11y.dragStarted": "ব্লক টানা হচ্ছে",
33
+ "a11y.dragStartedMultiple": "{count}টি ব্লক টানা হচ্ছে",
34
+ "a11y.dropPosition": "{total}টির মধ্যে {position} অবস্থানে রাখা হবে",
35
+ "a11y.dropCancelled": "টানা বাতিল হয়েছে",
36
+ "a11y.blockMoved": "ব্লক {total}টির মধ্যে {position} অবস্থানে সরানো হয়েছে",
37
+ "a11y.blocksMoved": "{count}টি ব্লক {position} অবস্থানে সরানো হয়েছে",
38
+ "a11y.blockDuplicated": "ব্লক {total}টির মধ্যে {position} অবস্থানে কপি করা হয়েছে",
39
+ "a11y.blocksDuplicated": "{count}টি ব্লক {position} অবস্থান থেকে কপি করা হয়েছে",
40
+ "a11y.movedUp": "ব্লক উপরে সরানো হয়েছে, {total}টির মধ্যে {position}",
41
+ "a11y.movedDown": "ব্লক নিচে সরানো হয়েছে, {total}টির মধ্যে {position}",
42
+ "a11y.atTop": "ব্লক সবার উপরে আছে, আর উপরে সরানো যাবে না",
43
+ "a11y.atBottom": "ব্লক সবার নিচে আছে, আর নিচে সরানো যাবে না"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "Prevucite za premještanje",
3
+ "blockSettings.clickToOpenMenu": "Kliknite za otvaranje menija",
4
+ "toolbox.addBelow": "Kliknite za dodavanje ispod",
5
+ "toolbox.optionAddAbove": "Option-klik za dodavanje iznad",
6
+ "toolbox.ctrlAddAbove": "Ctrl-klik za dodavanje iznad",
7
+ "popover.search": "Pretraži",
8
+ "popover.nothingFound": "Ništa nije pronađeno",
9
+ "popover.convertTo": "Pretvori u",
10
+ "toolNames.text": "Tekst",
11
+ "toolNames.heading": "Naslov",
12
+ "toolNames.link": "Link",
13
+ "toolNames.bold": "Podebljano",
14
+ "toolNames.italic": "Kurziv",
15
+ "toolNames.bulletedList": "Lista s tačkama",
16
+ "toolNames.numberedList": "Numerirana lista",
17
+ "toolNames.todoList": "Lista zadataka",
18
+ "tools.link.addLink": "Dodaj link",
19
+ "tools.link.invalidLink": "Nevažeći link",
20
+ "tools.stub.error": "Greška",
21
+ "tools.stub.blockCannotBeDisplayed": "Ovaj blok se ne može prikazati",
22
+ "tools.header.heading1": "Naslov 1",
23
+ "tools.header.heading2": "Naslov 2",
24
+ "tools.header.heading3": "Naslov 3",
25
+ "tools.header.heading4": "Naslov 4",
26
+ "tools.header.heading5": "Naslov 5",
27
+ "tools.header.heading6": "Naslov 6",
28
+ "tools.list.list": "Lista",
29
+ "blockSettings.delete": "Obriši",
30
+ "a11y.dragHandle": "Prevucite za premještanje bloka ili kliknite za meni",
31
+ "a11y.dragHandleRole": "ručka za povlačenje",
32
+ "a11y.dragStarted": "Povlačenje bloka",
33
+ "a11y.dragStartedMultiple": "Povlačenje {count} blokova",
34
+ "a11y.dropPosition": "Bit će postavljeno na poziciju {position} od {total}",
35
+ "a11y.dropCancelled": "Povlačenje je otkazano",
36
+ "a11y.blockMoved": "Blok je premješten na poziciju {position} od {total}",
37
+ "a11y.blocksMoved": "{count} blokova je premješteno na poziciju {position}",
38
+ "a11y.blockDuplicated": "Blok je dupliran na poziciju {position} od {total}",
39
+ "a11y.blocksDuplicated": "{count} blokova je duplirano počevši od pozicije {position}",
40
+ "a11y.movedUp": "Blok je pomjeren gore na poziciju {position} od {total}",
41
+ "a11y.movedDown": "Blok je pomjeren dolje na poziciju {position} od {total}",
42
+ "a11y.atTop": "Blok je na vrhu, ne može se pomjeriti gore",
43
+ "a11y.atBottom": "Blok je na dnu, ne može se pomjeriti dolje"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "Přetáhněte pro přesunutí",
3
+ "blockSettings.clickToOpenMenu": "Klikněte pro otevření nabídky",
4
+ "toolbox.addBelow": "Přidat blok",
5
+ "toolbox.optionAddAbove": "⌥ — přidat nad",
6
+ "toolbox.ctrlAddAbove": "Ctrl — přidat nad",
7
+ "popover.search": "Hledat",
8
+ "popover.nothingFound": "Nic nenalezeno",
9
+ "popover.convertTo": "Převést na",
10
+ "toolNames.text": "Text",
11
+ "toolNames.heading": "Nadpis",
12
+ "toolNames.link": "Odkaz",
13
+ "toolNames.bold": "Tučné",
14
+ "toolNames.italic": "Kurzíva",
15
+ "toolNames.bulletedList": "Odrážkový seznam",
16
+ "toolNames.numberedList": "Číslovaný seznam",
17
+ "toolNames.todoList": "Seznam úkolů",
18
+ "tools.link.addLink": "Přidat odkaz",
19
+ "tools.link.invalidLink": "Neplatný odkaz",
20
+ "tools.stub.error": "Chyba",
21
+ "tools.stub.blockCannotBeDisplayed": "Tento blok nelze zobrazit",
22
+ "tools.header.heading1": "Nadpis 1",
23
+ "tools.header.heading2": "Nadpis 2",
24
+ "tools.header.heading3": "Nadpis 3",
25
+ "tools.header.heading4": "Nadpis 4",
26
+ "tools.header.heading5": "Nadpis 5",
27
+ "tools.header.heading6": "Nadpis 6",
28
+ "tools.list.list": "Seznam",
29
+ "blockSettings.delete": "Smazat",
30
+ "a11y.dragHandle": "Přetáhněte pro přesunutí nebo klikněte pro nabídku",
31
+ "a11y.dragHandleRole": "úchyt pro přetažení",
32
+ "a11y.dragStarted": "Přetahování bloku",
33
+ "a11y.dragStartedMultiple": "Přetahování {count} bloků",
34
+ "a11y.dropPosition": "Bude umístěno na pozici {position} z {total}",
35
+ "a11y.dropCancelled": "Přetažení zrušeno",
36
+ "a11y.blockMoved": "Blok přesunut na pozici {position} z {total}",
37
+ "a11y.blocksMoved": "{count} bloků přesunuto na pozici {position}",
38
+ "a11y.blockDuplicated": "Blok zduplikován na pozici {position} z {total}",
39
+ "a11y.blocksDuplicated": "{count} bloků zduplikováno od pozice {position}",
40
+ "a11y.movedUp": "Blok přesunut nahoru na pozici {position} z {total}",
41
+ "a11y.movedDown": "Blok přesunut dolů na pozici {position} z {total}",
42
+ "a11y.atTop": "Blok je na začátku, nelze přesunout výše",
43
+ "a11y.atBottom": "Blok je na konci, nelze přesunout níže"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "Træk for at flytte",
3
+ "blockSettings.clickToOpenMenu": "Klik for at åbne menuen",
4
+ "toolbox.addBelow": "Klik for at tilføje nedenfor",
5
+ "toolbox.optionAddAbove": "Option-klik for at tilføje ovenfor",
6
+ "toolbox.ctrlAddAbove": "Ctrl-klik for at tilføje ovenfor",
7
+ "popover.search": "Søg",
8
+ "popover.nothingFound": "Intet fundet",
9
+ "popover.convertTo": "Konverter til",
10
+ "toolNames.text": "Tekst",
11
+ "toolNames.heading": "Overskrift",
12
+ "toolNames.link": "Link",
13
+ "toolNames.bold": "Fed",
14
+ "toolNames.italic": "Kursiv",
15
+ "toolNames.bulletedList": "Punktliste",
16
+ "toolNames.numberedList": "Nummereret liste",
17
+ "toolNames.todoList": "Opgaveliste",
18
+ "tools.link.addLink": "Tilføj et link",
19
+ "tools.link.invalidLink": "Ugyldigt link",
20
+ "tools.stub.error": "Fejl",
21
+ "tools.stub.blockCannotBeDisplayed": "Denne blok kan ikke vises",
22
+ "tools.header.heading1": "Overskrift 1",
23
+ "tools.header.heading2": "Overskrift 2",
24
+ "tools.header.heading3": "Overskrift 3",
25
+ "tools.header.heading4": "Overskrift 4",
26
+ "tools.header.heading5": "Overskrift 5",
27
+ "tools.header.heading6": "Overskrift 6",
28
+ "tools.list.list": "Liste",
29
+ "blockSettings.delete": "Slet",
30
+ "a11y.dragHandle": "Træk for at flytte blok eller klik for menu",
31
+ "a11y.dragHandleRole": "trækhåndtag",
32
+ "a11y.dragStarted": "Trækker blok",
33
+ "a11y.dragStartedMultiple": "Trækker {count} blokke",
34
+ "a11y.dropPosition": "Placeres på position {position} af {total}",
35
+ "a11y.dropCancelled": "Træk annulleret",
36
+ "a11y.blockMoved": "Blok flyttet til position {position} af {total}",
37
+ "a11y.blocksMoved": "{count} blokke flyttet til position {position}",
38
+ "a11y.blockDuplicated": "Blok duplikeret på position {position} af {total}",
39
+ "a11y.blocksDuplicated": "{count} blokke duplikeret fra position {position}",
40
+ "a11y.movedUp": "Blok flyttet op til position {position} af {total}",
41
+ "a11y.movedDown": "Blok flyttet ned til position {position} af {total}",
42
+ "a11y.atTop": "Blokken er øverst, kan ikke flyttes op",
43
+ "a11y.atBottom": "Blokken er nederst, kan ikke flyttes ned"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "Ziehen zum Verschieben",
3
+ "blockSettings.clickToOpenMenu": "Klicken zum Menü",
4
+ "toolbox.addBelow": "Block hinzufügen",
5
+ "toolbox.optionAddAbove": "⌥ — darüber einfügen",
6
+ "toolbox.ctrlAddAbove": "Strg — darüber einfügen",
7
+ "popover.search": "Suchen",
8
+ "popover.nothingFound": "Keine Ergebnisse",
9
+ "popover.convertTo": "Umwandeln in",
10
+ "toolNames.text": "Text",
11
+ "toolNames.heading": "Überschrift",
12
+ "toolNames.link": "Link",
13
+ "toolNames.bold": "Fett",
14
+ "toolNames.italic": "Kursiv",
15
+ "toolNames.bulletedList": "Aufzählung",
16
+ "toolNames.numberedList": "Nummerierte Liste",
17
+ "toolNames.todoList": "Aufgabenliste",
18
+ "tools.link.addLink": "Link hinzufügen",
19
+ "tools.link.invalidLink": "Ungültiger Link",
20
+ "tools.stub.error": "Fehler",
21
+ "tools.stub.blockCannotBeDisplayed": "Block kann nicht angezeigt werden",
22
+ "tools.header.heading1": "Überschrift 1",
23
+ "tools.header.heading2": "Überschrift 2",
24
+ "tools.header.heading3": "Überschrift 3",
25
+ "tools.header.heading4": "Überschrift 4",
26
+ "tools.header.heading5": "Überschrift 5",
27
+ "tools.header.heading6": "Überschrift 6",
28
+ "tools.list.list": "Liste",
29
+ "blockSettings.delete": "Löschen",
30
+ "a11y.dragHandle": "Ziehen zum Verschieben oder klicken für Menü",
31
+ "a11y.dragHandleRole": "Ziehgriff",
32
+ "a11y.dragStarted": "Block wird verschoben",
33
+ "a11y.dragStartedMultiple": "{count} Blöcke werden verschoben",
34
+ "a11y.dropPosition": "Wird an Position {position} von {total} eingefügt",
35
+ "a11y.dropCancelled": "Verschieben abgebrochen",
36
+ "a11y.blockMoved": "Block an Position {position} von {total} verschoben",
37
+ "a11y.blocksMoved": "{count} Blöcke an Position {position} verschoben",
38
+ "a11y.blockDuplicated": "Block an Position {position} von {total} dupliziert",
39
+ "a11y.blocksDuplicated": "{count} Blöcke ab Position {position} dupliziert",
40
+ "a11y.movedUp": "Block nach oben verschoben, Position {position} von {total}",
41
+ "a11y.movedDown": "Block nach unten verschoben, Position {position} von {total}",
42
+ "a11y.atTop": "Block ist ganz oben",
43
+ "a11y.atBottom": "Block ist ganz unten"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "ބަދަލުކުރަން ދަމާލާ",
3
+ "blockSettings.clickToOpenMenu": "މެނޫ ހުޅުވަން ކްލިކް ކުރޭ",
4
+ "toolbox.addBelow": "ތިރީގައި އިތުރުކުރަން ކްލިކް ކުރޭ",
5
+ "toolbox.optionAddAbove": "މަތީގައި އިތުރުކުރަން Option-ކްލިކް",
6
+ "toolbox.ctrlAddAbove": "މަތީގައި އިތުރުކުރަން Ctrl-ކްލިކް",
7
+ "popover.search": "ހޯދާ",
8
+ "popover.nothingFound": "އެއްވެސް އެއްޗެއް ނުފެނުނު",
9
+ "popover.convertTo": "ބަދަލުކުރޭ",
10
+ "toolNames.text": "ލިޔުން",
11
+ "toolNames.heading": "ސުރުޚީ",
12
+ "toolNames.link": "ލިންކް",
13
+ "toolNames.bold": "ބޯލްޑް",
14
+ "toolNames.italic": "އިޓެލިކް",
15
+ "toolNames.bulletedList": "ބުލެޓް ލިސްޓް",
16
+ "toolNames.numberedList": "ނަންބަރު ލިސްޓް",
17
+ "toolNames.todoList": "ޓޫޑޫ ލިސްޓް",
18
+ "tools.link.addLink": "ލިންކް އިތުރުކުރޭ",
19
+ "tools.link.invalidLink": "ރަނގަޅު ނޫން ލިންކެއް",
20
+ "tools.stub.error": "މައްސަލައެއް",
21
+ "tools.stub.blockCannotBeDisplayed": "މި ބްލޮކް ދައްކާނެ ގޮތެއް ނެތް",
22
+ "tools.header.heading1": "ސުރުޚީ 1",
23
+ "tools.header.heading2": "ސުރުޚީ 2",
24
+ "tools.header.heading3": "ސުރުޚީ 3",
25
+ "tools.header.heading4": "ސުރުޚީ 4",
26
+ "tools.header.heading5": "ސުރުޚީ 5",
27
+ "tools.header.heading6": "ސުރުޚީ 6",
28
+ "tools.list.list": "ލިސްޓް",
29
+ "blockSettings.delete": "ފޮހެލާ",
30
+ "a11y.dragHandle": "ބްލޮކް ބަދަލުކުރަން ދަމާލާ ނުވަތަ މެނޫއަށް ކްލިކް ކުރޭ",
31
+ "a11y.dragHandleRole": "ދެމުމުގެ ހެންޑަލް",
32
+ "a11y.dragStarted": "ބްލޮކް ދަމަނީ",
33
+ "a11y.dragStartedMultiple": "{count} ބްލޮކް ދަމަނީ",
34
+ "a11y.dropPosition": "ޕޮޒިޝަން {position} އިން {total} ގައި ބާއްވާނެ",
35
+ "a11y.dropCancelled": "ދެމުން ކެންސަލް ވެއްޖެ",
36
+ "a11y.blockMoved": "ބްލޮކް ޕޮޒިޝަން {position} އިން {total} އަށް ބަދަލުވެއްޖެ",
37
+ "a11y.blocksMoved": "{count} ބްލޮކް ޕޮޒިޝަން {position} އަށް ބަދަލުވެއްޖެ",
38
+ "a11y.blockDuplicated": "ބްލޮކް ޕޮޒިޝަން {position} އިން {total} ގައި ކޮޕީ ވެއްޖެ",
39
+ "a11y.blocksDuplicated": "{count} ބްލޮކް ޕޮޒިޝަން {position} އިން ކޮޕީ ވެއްޖެ",
40
+ "a11y.movedUp": "ބްލޮކް މައްޗަށް ޕޮޒިޝަން {position} އިން {total} އަށް ގޮސްފި",
41
+ "a11y.movedDown": "ބްލޮކް ތިރިއަށް ޕޮޒިޝަން {position} އިން {total} އަށް ގޮސްފި",
42
+ "a11y.atTop": "ބްލޮކް އެންމެ މަތީގައި، މައްޗަށް ނުދެވޭނެ",
43
+ "a11y.atBottom": "ބްލޮކް އެންމެ ތިރީގައި، ތިރިއަށް ނުދެވޭނެ"
44
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "blockSettings.dragToMove": "Σύρετε για μετακίνηση",
3
+ "blockSettings.clickToOpenMenu": "Κλικ για το μενού",
4
+ "toolbox.addBelow": "Προσθήκη μπλοκ",
5
+ "toolbox.optionAddAbove": "⌥ — προσθήκη πάνω",
6
+ "toolbox.ctrlAddAbove": "Ctrl — προσθήκη πάνω",
7
+ "popover.search": "Αναζήτηση",
8
+ "popover.nothingFound": "Δεν βρέθηκαν αποτελέσματα",
9
+ "popover.convertTo": "Μετατροπή σε",
10
+ "toolNames.text": "Κείμενο",
11
+ "toolNames.heading": "Επικεφαλίδα",
12
+ "toolNames.link": "Σύνδεσμος",
13
+ "toolNames.bold": "Έντονα",
14
+ "toolNames.italic": "Πλάγια",
15
+ "toolNames.bulletedList": "Λίστα με κουκκίδες",
16
+ "toolNames.numberedList": "Αριθμημένη λίστα",
17
+ "toolNames.todoList": "Λίστα εργασιών",
18
+ "tools.link.addLink": "Προσθήκη συνδέσμου",
19
+ "tools.link.invalidLink": "Μη έγκυρος σύνδεσμος",
20
+ "tools.stub.error": "Σφάλμα",
21
+ "tools.stub.blockCannotBeDisplayed": "Δεν είναι δυνατή η εμφάνιση του μπλοκ",
22
+ "tools.header.heading1": "Επικεφαλίδα 1",
23
+ "tools.header.heading2": "Επικεφαλίδα 2",
24
+ "tools.header.heading3": "Επικεφαλίδα 3",
25
+ "tools.header.heading4": "Επικεφαλίδα 4",
26
+ "tools.header.heading5": "Επικεφαλίδα 5",
27
+ "tools.header.heading6": "Επικεφαλίδα 6",
28
+ "tools.list.list": "Λίστα",
29
+ "blockSettings.delete": "Διαγραφή",
30
+ "a11y.dragHandle": "Σύρετε για μετακίνηση ή κλικ για μενού",
31
+ "a11y.dragHandleRole": "λαβή μετακίνησης",
32
+ "a11y.dragStarted": "Μετακίνηση μπλοκ",
33
+ "a11y.dragStartedMultiple": "Μετακίνηση {count} μπλοκ",
34
+ "a11y.dropPosition": "Θα τοποθετηθεί στη θέση {position} από {total}",
35
+ "a11y.dropCancelled": "Η μετακίνηση ακυρώθηκε",
36
+ "a11y.blockMoved": "Το μπλοκ μετακινήθηκε στη θέση {position} από {total}",
37
+ "a11y.blocksMoved": "{count} μπλοκ μετακινήθηκαν στη θέση {position}",
38
+ "a11y.blockDuplicated": "Το μπλοκ αντιγράφηκε στη θέση {position} από {total}",
39
+ "a11y.blocksDuplicated": "{count} μπλοκ αντιγράφηκαν από τη θέση {position}",
40
+ "a11y.movedUp": "Το μπλοκ μετακινήθηκε πάνω, θέση {position} από {total}",
41
+ "a11y.movedDown": "Το μπλοκ μετακινήθηκε κάτω, θέση {position} από {total}",
42
+ "a11y.atTop": "Το μπλοκ είναι στην κορυφή",
43
+ "a11y.atBottom": "Το μπλοκ είναι στο κάτω μέρος"
44
+ }