@cp949/phyx-blockly 12.5.1-p1 → 13.4.0-patch.1

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 (462) hide show
  1. package/README.md +7 -2
  2. package/blockly.min.js +2280 -2126
  3. package/blockly.mjs +13 -5
  4. package/blockly_compressed.js +1767 -1794
  5. package/blockly_compressed.js.map +1 -1
  6. package/blocks_compressed.js +151 -177
  7. package/blocks_compressed.js.map +1 -1
  8. package/core/block.d.ts +41 -19
  9. package/core/block_aria_composer.d.ts +158 -0
  10. package/core/block_svg.d.ts +88 -35
  11. package/core/blockly.d.ts +22 -22
  12. package/core/bubbles/bubble.d.ts +59 -5
  13. package/core/bubbles/mini_workspace_bubble.d.ts +11 -3
  14. package/core/bubbles/text_bubble.d.ts +7 -4
  15. package/core/bubbles/textinput_bubble.d.ts +11 -1
  16. package/core/clipboard/block_paster.d.ts +5 -5
  17. package/core/clipboard/registry.d.ts +1 -1
  18. package/core/clipboard/workspace_comment_paster.d.ts +4 -4
  19. package/core/clipboard.d.ts +1 -1
  20. package/core/comments/collapse_comment_bar_button.d.ts +7 -4
  21. package/core/comments/comment_bar_button.d.ts +15 -1
  22. package/core/comments/comment_editor.d.ts +21 -6
  23. package/core/comments/comment_view.d.ts +5 -5
  24. package/core/comments/delete_comment_bar_button.d.ts +7 -4
  25. package/core/comments/rendered_workspace_comment.d.ts +17 -12
  26. package/core/comments/workspace_comment.d.ts +2 -2
  27. package/core/common.d.ts +10 -3
  28. package/core/component_manager.d.ts +2 -0
  29. package/core/config.d.ts +37 -11
  30. package/core/connection_db.d.ts +40 -0
  31. package/core/contextmenu_registry.d.ts +12 -2
  32. package/core/css.d.ts +2 -1
  33. package/core/dragging/block_drag_strategy.d.ts +196 -19
  34. package/core/dragging/bubble_drag_strategy.d.ts +5 -4
  35. package/core/dragging/comment_drag_strategy.d.ts +4 -4
  36. package/core/dragging/dragger.d.ts +14 -14
  37. package/core/events/events_block_base.d.ts +2 -1
  38. package/core/events/events_block_change.d.ts +3 -2
  39. package/core/events/events_block_create.d.ts +3 -5
  40. package/core/events/events_block_delete.d.ts +3 -5
  41. package/core/events/events_block_drag.d.ts +2 -2
  42. package/core/events/events_block_field_intermediate_change.d.ts +3 -2
  43. package/core/events/events_block_move.d.ts +2 -1
  44. package/core/events/events_click.d.ts +2 -2
  45. package/core/events/events_comment_base.d.ts +2 -1
  46. package/core/events/events_comment_change.d.ts +2 -1
  47. package/core/events/events_comment_collapse.d.ts +3 -2
  48. package/core/events/events_comment_create.d.ts +2 -4
  49. package/core/events/events_comment_delete.d.ts +2 -4
  50. package/core/events/events_comment_drag.d.ts +2 -2
  51. package/core/events/events_comment_move.d.ts +2 -1
  52. package/core/events/events_comment_resize.d.ts +2 -1
  53. package/core/events/events_selected.d.ts +1 -1
  54. package/core/events/events_theme_change.d.ts +1 -1
  55. package/core/events/events_toolbox_item_select.d.ts +1 -1
  56. package/core/events/events_trashcan_open.d.ts +1 -1
  57. package/core/events/events_var_base.d.ts +2 -1
  58. package/core/events/events_var_create.d.ts +2 -1
  59. package/core/events/events_var_delete.d.ts +2 -1
  60. package/core/events/events_var_rename.d.ts +2 -1
  61. package/core/events/events_var_type_change.d.ts +2 -1
  62. package/core/events/events_viewport.d.ts +1 -1
  63. package/core/field.d.ts +120 -13
  64. package/core/field_checkbox.d.ts +31 -4
  65. package/core/field_dropdown.d.ts +68 -4
  66. package/core/field_image.d.ts +54 -2
  67. package/core/field_input.d.ts +38 -13
  68. package/core/field_label.d.ts +31 -2
  69. package/core/field_label_serializable.d.ts +3 -2
  70. package/core/field_number.d.ts +14 -3
  71. package/core/field_textinput.d.ts +15 -5
  72. package/core/field_variable.d.ts +16 -6
  73. package/core/flyout_base.d.ts +12 -126
  74. package/core/flyout_button.d.ts +11 -0
  75. package/core/flyout_horizontal.d.ts +0 -11
  76. package/core/flyout_metrics_manager.d.ts +2 -1
  77. package/core/flyout_vertical.d.ts +0 -11
  78. package/core/focus_manager.d.ts +52 -2
  79. package/core/generator.d.ts +2 -2
  80. package/core/gesture.d.ts +2 -21
  81. package/core/grid.d.ts +2 -2
  82. package/core/hints.d.ts +78 -0
  83. package/core/icons/comment_icon.d.ts +8 -0
  84. package/core/icons/icon.d.ts +20 -0
  85. package/core/icons/icon_types.d.ts +4 -4
  86. package/core/icons/mutator_icon.d.ts +8 -0
  87. package/core/icons/registry.d.ts +1 -1
  88. package/core/icons/warning_icon.d.ts +8 -0
  89. package/core/inputs/input.d.ts +58 -2
  90. package/core/insertion_marker.d.ts +54 -0
  91. package/core/insertion_marker_previewer.d.ts +20 -4
  92. package/core/interfaces/i_bounded_element.d.ts +7 -0
  93. package/core/interfaces/i_bubble.d.ts +3 -2
  94. package/core/interfaces/i_collapsible_toolbox_item.d.ts +5 -1
  95. package/core/interfaces/i_comment_icon.d.ts +6 -6
  96. package/core/interfaces/i_drag_target.d.ts +2 -2
  97. package/core/interfaces/i_draggable.d.ts +22 -17
  98. package/core/interfaces/i_dragger.d.ts +19 -10
  99. package/core/interfaces/i_flyout.d.ts +1 -31
  100. package/core/interfaces/i_flyout_inflater.d.ts +9 -0
  101. package/core/interfaces/i_focusable_node.d.ts +8 -0
  102. package/core/interfaces/i_focusable_tree.d.ts +8 -0
  103. package/core/interfaces/i_icon.d.ts +1 -1
  104. package/core/interfaces/i_json_block_definition.d.ts +113 -0
  105. package/core/interfaces/i_keyboard_accessible.d.ts +1 -1
  106. package/core/interfaces/i_navigation_policy.d.ts +12 -0
  107. package/core/interfaces/i_parameter_model.d.ts +2 -2
  108. package/core/interfaces/i_paster.d.ts +3 -3
  109. package/core/interfaces/i_procedure_block.d.ts +1 -1
  110. package/core/interfaces/i_procedure_map.d.ts +1 -1
  111. package/core/interfaces/i_procedure_model.d.ts +2 -2
  112. package/core/interfaces/i_selectable.d.ts +3 -3
  113. package/core/interfaces/i_selectable_toolbox_item.d.ts +3 -3
  114. package/core/interfaces/i_toolbox.d.ts +4 -0
  115. package/core/interfaces/i_toolbox_item.d.ts +6 -0
  116. package/core/interfaces/i_variable_backed_parameter_model.d.ts +1 -1
  117. package/core/keyboard_nav/keyboard_mover.d.ts +151 -0
  118. package/core/keyboard_nav/move_indicator.d.ts +35 -0
  119. package/core/keyboard_nav/{block_navigation_policy.d.ts → navigation_policies/block_navigation_policy.d.ts} +17 -25
  120. package/core/keyboard_nav/navigation_policies/bubble_navigation_policy.d.ts +63 -0
  121. package/core/keyboard_nav/{comment_bar_button_navigation_policy.d.ts → navigation_policies/comment_bar_button_navigation_policy.d.ts} +10 -3
  122. package/core/keyboard_nav/{comment_editor_navigation_policy.d.ts → navigation_policies/comment_editor_navigation_policy.d.ts} +10 -3
  123. package/core/keyboard_nav/{connection_navigation_policy.d.ts → navigation_policies/connection_navigation_policy.d.ts} +11 -16
  124. package/core/keyboard_nav/{field_navigation_policy.d.ts → navigation_policies/field_navigation_policy.d.ts} +10 -3
  125. package/core/keyboard_nav/{flyout_button_navigation_policy.d.ts → navigation_policies/flyout_button_navigation_policy.d.ts} +10 -3
  126. package/core/keyboard_nav/{flyout_separator_navigation_policy.d.ts → navigation_policies/flyout_separator_navigation_policy.d.ts} +9 -3
  127. package/core/keyboard_nav/{icon_navigation_policy.d.ts → navigation_policies/icon_navigation_policy.d.ts} +12 -5
  128. package/core/keyboard_nav/navigation_policies/toolbox_item_navigation_policy.d.ts +64 -0
  129. package/core/keyboard_nav/{workspace_comment_navigation_policy.d.ts → navigation_policies/workspace_comment_navigation_policy.d.ts} +14 -9
  130. package/core/keyboard_nav/{workspace_navigation_policy.d.ts → navigation_policies/workspace_navigation_policy.d.ts} +10 -3
  131. package/core/keyboard_nav/navigators/flyout_navigator.d.ts +63 -0
  132. package/core/keyboard_nav/navigators/navigator.d.ts +237 -0
  133. package/core/keyboard_nav/navigators/toolbox_navigator.d.ts +70 -0
  134. package/core/keyboard_navigation_controller.d.ts +12 -0
  135. package/core/layer_manager.d.ts +3 -3
  136. package/core/menu.d.ts +3 -0
  137. package/core/menuitem.d.ts +8 -1
  138. package/core/observable_procedure_map.d.ts +1 -1
  139. package/core/options.d.ts +4 -4
  140. package/core/procedures.d.ts +5 -8
  141. package/core/registry.d.ts +0 -2
  142. package/core/render_management.d.ts +1 -1
  143. package/core/rendered_connection.d.ts +33 -6
  144. package/core/renderers/common/constants.d.ts +4 -7
  145. package/core/renderers/common/i_path_object.d.ts +8 -0
  146. package/core/renderers/common/info.d.ts +1 -1
  147. package/core/renderers/common/path_object.d.ts +7 -16
  148. package/core/renderers/common/renderer.d.ts +3 -3
  149. package/core/renderers/zelos/constants.d.ts +1 -14
  150. package/core/renderers/zelos/drawer.d.ts +1 -1
  151. package/core/renderers/zelos/info.d.ts +10 -1
  152. package/core/renderers/zelos/measurables/bottom_row.d.ts +1 -1
  153. package/core/renderers/zelos/measurables/top_row.d.ts +1 -1
  154. package/core/renderers/zelos/path_object.d.ts +0 -3
  155. package/core/renderers/zelos/renderer.d.ts +8 -0
  156. package/core/serialization/procedures.d.ts +2 -2
  157. package/core/serialization/workspace_comments.d.ts +2 -2
  158. package/core/shortcut_items.d.ts +167 -2
  159. package/core/shortcut_registry.d.ts +9 -3
  160. package/core/theme.d.ts +0 -2
  161. package/core/toast.d.ts +2 -11
  162. package/core/toolbox/category.d.ts +11 -0
  163. package/core/toolbox/collapsible_category.d.ts +2 -0
  164. package/core/toolbox/separator.d.ts +4 -0
  165. package/core/toolbox/toolbox.d.ts +17 -33
  166. package/core/toolbox/toolbox_item.d.ts +4 -0
  167. package/core/tooltip.d.ts +13 -2
  168. package/core/trashcan.d.ts +16 -38
  169. package/core/utils/aria.d.ts +259 -28
  170. package/core/utils/dom.d.ts +1 -1
  171. package/core/utils/focusable_tree_traverser.d.ts +2 -2
  172. package/core/utils/shortcut_formatting.d.ts +22 -0
  173. package/core/utils/style.d.ts +14 -0
  174. package/core/utils/toolbox.d.ts +0 -8
  175. package/core/utils/useragent.d.ts +1 -0
  176. package/core/variable_map.d.ts +1 -41
  177. package/core/variable_model.d.ts +1 -7
  178. package/core/variables.d.ts +7 -8
  179. package/core/variables_dynamic.d.ts +4 -6
  180. package/core/workspace.d.ts +7 -85
  181. package/core/workspace_audio.d.ts +36 -7
  182. package/core/workspace_focus_target.d.ts +51 -0
  183. package/core/workspace_svg.d.ts +79 -60
  184. package/core/xml.d.ts +1 -1
  185. package/core/zoom_controls.d.ts +6 -59
  186. package/dart_compressed.js +123 -164
  187. package/dart_compressed.js.map +1 -1
  188. package/index.mjs +13 -5
  189. package/javascript_compressed.js +96 -147
  190. package/javascript_compressed.js.map +1 -1
  191. package/lua_compressed.js +142 -178
  192. package/lua_compressed.js.map +1 -1
  193. package/media/drop.mp3 +0 -0
  194. package/msg/ab.js +265 -7
  195. package/msg/ab.mjs +259 -1
  196. package/msg/ace.js +266 -8
  197. package/msg/ace.mjs +259 -1
  198. package/msg/af.js +265 -7
  199. package/msg/af.mjs +259 -1
  200. package/msg/am.js +266 -8
  201. package/msg/am.mjs +259 -1
  202. package/msg/ar.js +283 -25
  203. package/msg/ar.mjs +259 -1
  204. package/msg/ast.js +266 -8
  205. package/msg/ast.mjs +259 -1
  206. package/msg/az.js +266 -8
  207. package/msg/az.mjs +259 -1
  208. package/msg/ba.js +265 -7
  209. package/msg/ba.mjs +259 -1
  210. package/msg/bcc.js +265 -7
  211. package/msg/bcc.mjs +259 -1
  212. package/msg/be-tarask.js +297 -39
  213. package/msg/be-tarask.mjs +259 -1
  214. package/msg/be.js +266 -8
  215. package/msg/be.mjs +259 -1
  216. package/msg/bg.js +282 -24
  217. package/msg/bg.mjs +259 -1
  218. package/msg/bn.js +266 -8
  219. package/msg/bn.mjs +259 -1
  220. package/msg/br.js +266 -8
  221. package/msg/br.mjs +259 -1
  222. package/msg/bs.js +265 -7
  223. package/msg/bs.mjs +259 -1
  224. package/msg/ca.js +265 -7
  225. package/msg/ca.mjs +259 -1
  226. package/msg/ce.js +265 -7
  227. package/msg/ce.mjs +259 -1
  228. package/msg/cs.js +290 -32
  229. package/msg/cs.mjs +259 -1
  230. package/msg/csb.js +723 -0
  231. package/msg/csb.mjs +704 -0
  232. package/msg/da.js +284 -26
  233. package/msg/da.mjs +259 -1
  234. package/msg/de.js +265 -7
  235. package/msg/de.mjs +259 -1
  236. package/msg/diq.js +267 -9
  237. package/msg/diq.mjs +259 -1
  238. package/msg/dtp.js +265 -7
  239. package/msg/dtp.mjs +259 -1
  240. package/msg/dty.js +265 -7
  241. package/msg/dty.mjs +259 -1
  242. package/msg/ee.js +265 -7
  243. package/msg/ee.mjs +259 -1
  244. package/msg/el.js +290 -32
  245. package/msg/el.mjs +259 -1
  246. package/msg/en-gb.js +266 -8
  247. package/msg/en-gb.mjs +259 -1
  248. package/msg/en.js +266 -8
  249. package/msg/en.mjs +259 -1
  250. package/msg/eo.js +265 -7
  251. package/msg/eo.mjs +259 -1
  252. package/msg/es.js +282 -24
  253. package/msg/es.mjs +259 -1
  254. package/msg/et.js +265 -7
  255. package/msg/et.mjs +259 -1
  256. package/msg/eu.js +265 -7
  257. package/msg/eu.mjs +259 -1
  258. package/msg/fa.js +266 -8
  259. package/msg/fa.mjs +259 -1
  260. package/msg/fi.js +284 -26
  261. package/msg/fi.mjs +259 -1
  262. package/msg/fo.js +265 -7
  263. package/msg/fo.mjs +259 -1
  264. package/msg/fr.js +283 -25
  265. package/msg/fr.mjs +259 -1
  266. package/msg/frr.js +266 -8
  267. package/msg/frr.mjs +259 -1
  268. package/msg/ga.js +723 -0
  269. package/msg/{cdo.mjs → ga.mjs} +261 -3
  270. package/msg/gl.js +290 -32
  271. package/msg/gl.mjs +259 -1
  272. package/msg/gn.js +266 -8
  273. package/msg/gn.mjs +259 -1
  274. package/msg/gor.js +265 -7
  275. package/msg/gor.mjs +259 -1
  276. package/msg/ha.js +265 -7
  277. package/msg/ha.mjs +259 -1
  278. package/msg/he.js +313 -55
  279. package/msg/he.mjs +259 -1
  280. package/msg/hi.js +265 -7
  281. package/msg/hi.mjs +259 -1
  282. package/msg/hr.js +265 -7
  283. package/msg/hr.mjs +259 -1
  284. package/msg/hrx.js +265 -7
  285. package/msg/hrx.mjs +259 -1
  286. package/msg/hsb.js +265 -7
  287. package/msg/hsb.mjs +259 -1
  288. package/msg/hu.js +270 -12
  289. package/msg/hu.mjs +259 -1
  290. package/msg/hy.js +265 -7
  291. package/msg/hy.mjs +259 -1
  292. package/msg/ia.js +304 -46
  293. package/msg/ia.mjs +259 -1
  294. package/msg/id.js +489 -231
  295. package/msg/id.mjs +259 -1
  296. package/msg/ig.js +270 -12
  297. package/msg/ig.mjs +259 -1
  298. package/msg/inh.js +265 -7
  299. package/msg/inh.mjs +259 -1
  300. package/msg/is.js +265 -7
  301. package/msg/is.mjs +259 -1
  302. package/msg/it.js +289 -31
  303. package/msg/it.mjs +259 -1
  304. package/msg/ja.js +314 -56
  305. package/msg/ja.mjs +259 -1
  306. package/msg/ka.js +267 -9
  307. package/msg/ka.mjs +259 -1
  308. package/msg/kab.js +273 -15
  309. package/msg/kab.mjs +259 -1
  310. package/msg/kbd-cyrl.js +266 -8
  311. package/msg/kbd-cyrl.mjs +259 -1
  312. package/msg/km.js +265 -7
  313. package/msg/km.mjs +259 -1
  314. package/msg/kn.js +273 -15
  315. package/msg/kn.mjs +259 -1
  316. package/msg/ko.js +398 -140
  317. package/msg/ko.mjs +259 -1
  318. package/msg/krc.js +723 -0
  319. package/msg/krc.mjs +704 -0
  320. package/msg/ksh.js +266 -8
  321. package/msg/ksh.mjs +259 -1
  322. package/msg/ku-latn.js +266 -8
  323. package/msg/ku-latn.mjs +259 -1
  324. package/msg/ky.js +325 -67
  325. package/msg/ky.mjs +259 -1
  326. package/msg/la.js +266 -8
  327. package/msg/la.mjs +259 -1
  328. package/msg/lb.js +279 -21
  329. package/msg/lb.mjs +259 -1
  330. package/msg/lki.js +265 -7
  331. package/msg/lki.mjs +259 -1
  332. package/msg/lo.js +265 -7
  333. package/msg/lo.mjs +259 -1
  334. package/msg/lrc.js +265 -7
  335. package/msg/lrc.mjs +259 -1
  336. package/msg/lt.js +266 -8
  337. package/msg/lt.mjs +259 -1
  338. package/msg/lv.js +276 -18
  339. package/msg/lv.mjs +259 -1
  340. package/msg/mg.js +265 -7
  341. package/msg/mg.mjs +259 -1
  342. package/msg/mk.js +265 -7
  343. package/msg/mk.mjs +259 -1
  344. package/msg/ml.js +265 -7
  345. package/msg/ml.mjs +259 -1
  346. package/msg/mnw.js +265 -7
  347. package/msg/mnw.mjs +259 -1
  348. package/msg/ms.js +274 -16
  349. package/msg/ms.mjs +259 -1
  350. package/msg/mt.js +723 -0
  351. package/msg/{hak.mjs → mt.mjs} +261 -3
  352. package/msg/my.js +265 -7
  353. package/msg/my.mjs +259 -1
  354. package/msg/mzn.js +266 -8
  355. package/msg/mzn.mjs +259 -1
  356. package/msg/nb.js +265 -7
  357. package/msg/nb.mjs +259 -1
  358. package/msg/ne.js +275 -17
  359. package/msg/ne.mjs +259 -1
  360. package/msg/nl.js +336 -78
  361. package/msg/nl.mjs +259 -1
  362. package/msg/oc.js +265 -7
  363. package/msg/oc.mjs +259 -1
  364. package/msg/olo.js +266 -8
  365. package/msg/olo.mjs +259 -1
  366. package/msg/pa.js +273 -15
  367. package/msg/pa.mjs +259 -1
  368. package/msg/pl.js +282 -24
  369. package/msg/pl.mjs +259 -1
  370. package/msg/pms.js +283 -25
  371. package/msg/pms.mjs +259 -1
  372. package/msg/ps.js +296 -38
  373. package/msg/ps.mjs +259 -1
  374. package/msg/pt-br.js +282 -24
  375. package/msg/pt-br.mjs +259 -1
  376. package/msg/pt.js +282 -24
  377. package/msg/pt.mjs +259 -1
  378. package/msg/ro.js +299 -41
  379. package/msg/ro.mjs +259 -1
  380. package/msg/ru.js +283 -25
  381. package/msg/ru.mjs +259 -1
  382. package/msg/sc.js +265 -7
  383. package/msg/sc.mjs +259 -1
  384. package/msg/sco.js +266 -8
  385. package/msg/sco.mjs +259 -1
  386. package/msg/sd.js +265 -7
  387. package/msg/sd.mjs +259 -1
  388. package/msg/shn.js +265 -7
  389. package/msg/shn.mjs +259 -1
  390. package/msg/si.js +266 -8
  391. package/msg/si.mjs +259 -1
  392. package/msg/sk.js +283 -25
  393. package/msg/sk.mjs +259 -1
  394. package/msg/skr-arab.js +268 -10
  395. package/msg/skr-arab.mjs +259 -1
  396. package/msg/sl.js +283 -25
  397. package/msg/sl.mjs +259 -1
  398. package/msg/smn.js +267 -9
  399. package/msg/smn.mjs +259 -1
  400. package/msg/sq.js +273 -15
  401. package/msg/sq.mjs +259 -1
  402. package/msg/sr-latn.js +265 -7
  403. package/msg/sr-latn.mjs +259 -1
  404. package/msg/sr.js +266 -8
  405. package/msg/sr.mjs +259 -1
  406. package/msg/sv.js +282 -24
  407. package/msg/sv.mjs +259 -1
  408. package/msg/sw.js +266 -8
  409. package/msg/sw.mjs +259 -1
  410. package/msg/ta.js +283 -25
  411. package/msg/ta.mjs +259 -1
  412. package/msg/tcy.js +328 -70
  413. package/msg/tcy.mjs +259 -1
  414. package/msg/tdd.js +265 -7
  415. package/msg/tdd.mjs +259 -1
  416. package/msg/te.js +265 -7
  417. package/msg/te.mjs +259 -1
  418. package/msg/th.js +266 -8
  419. package/msg/th.mjs +259 -1
  420. package/msg/ti.js +265 -7
  421. package/msg/ti.mjs +259 -1
  422. package/msg/tl.js +265 -7
  423. package/msg/tl.mjs +259 -1
  424. package/msg/tlh.js +265 -7
  425. package/msg/tlh.mjs +259 -1
  426. package/msg/tr.js +284 -26
  427. package/msg/tr.mjs +259 -1
  428. package/msg/ug-arab.js +265 -7
  429. package/msg/ug-arab.mjs +259 -1
  430. package/msg/uk.js +291 -33
  431. package/msg/uk.mjs +259 -1
  432. package/msg/ur.js +265 -7
  433. package/msg/ur.mjs +259 -1
  434. package/msg/uz.js +298 -40
  435. package/msg/uz.mjs +259 -1
  436. package/msg/vi.js +284 -26
  437. package/msg/vi.mjs +259 -1
  438. package/msg/xmf.js +265 -7
  439. package/msg/xmf.mjs +259 -1
  440. package/msg/yo.js +265 -7
  441. package/msg/yo.mjs +259 -1
  442. package/msg/zgh.js +265 -7
  443. package/msg/zgh.mjs +259 -1
  444. package/msg/zh-hans.js +283 -25
  445. package/msg/zh-hans.mjs +259 -1
  446. package/msg/zh-hant.js +283 -25
  447. package/msg/zh-hant.mjs +259 -1
  448. package/package.json +53 -57
  449. package/php_compressed.js +150 -192
  450. package/php_compressed.js.map +1 -1
  451. package/python_compressed.js +85 -126
  452. package/python_compressed.js.map +1 -1
  453. package/core/flyout_navigator.d.ts +0 -11
  454. package/core/keyboard_nav/block_comment_navigation_policy.d.ts +0 -56
  455. package/core/keyboard_nav/flyout_navigation_policy.d.ts +0 -65
  456. package/core/keyboard_nav/line_cursor.d.ts +0 -187
  457. package/core/keyboard_nav/marker.d.ts +0 -53
  458. package/core/marker_manager.d.ts +0 -72
  459. package/core/navigator.d.ts +0 -65
  460. package/media/sprites.png +0 -0
  461. package/msg/cdo.js +0 -465
  462. package/msg/hak.js +0 -465
package/msg/fa.js CHANGED
@@ -19,11 +19,71 @@ var Blockly = Blockly || { Msg: Object.create(null) };
19
19
 
20
20
  Blockly.Msg["ADD_COMMENT"] = "افزودن نظر";
21
21
  Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
22
+ Blockly.Msg["ANNOUNCE_CANT_SCROLL_FURTHER"] = "Can't scroll further."; // untranslated
23
+ Blockly.Msg["ANNOUNCE_MOVE_AFTER"] = "Moving %1 after %2."; // untranslated
24
+ Blockly.Msg["ANNOUNCE_MOVE_AROUND"] = "Moving %1 around %2."; // untranslated
25
+ Blockly.Msg["ANNOUNCE_MOVE_BEFORE"] = "Moving %1 before %2."; // untranslated
26
+ Blockly.Msg["ANNOUNCE_MOVE_CANCELED"] = "Canceled movement."; // untranslated
27
+ Blockly.Msg["ANNOUNCE_MOVE_INSIDE"] = "Moving %1 inside %2."; // untranslated
28
+ Blockly.Msg["ANNOUNCE_MOVE_OF"] = "%1 of %2"; // untranslated
29
+ Blockly.Msg["ANNOUNCE_MOVE_TO"] = "Moving %1 to %2."; // untranslated
30
+ Blockly.Msg["ANNOUNCE_MOVE_WORKSPACE"] = "Moving %1 on workspace."; // untranslated
31
+ Blockly.Msg["ANNOUNCE_SCROLLED_DOWN"] = "Scrolled down."; // untranslated
32
+ Blockly.Msg["ANNOUNCE_SCROLLED_LEFT"] = "Scrolled left."; // untranslated
33
+ Blockly.Msg["ANNOUNCE_SCROLLED_RIGHT"] = "Scrolled right."; // untranslated
34
+ Blockly.Msg["ANNOUNCE_SCROLLED_UP"] = "Scrolled up."; // untranslated
35
+ Blockly.Msg["ARIA_LABEL_ADD_ELSE_IF"] = "Add else if"; // untranslated
36
+ Blockly.Msg["ARIA_LABEL_ADD_INPUT"] = "Add input"; // untranslated
37
+ Blockly.Msg["ARIA_LABEL_ADD_LIST_ITEM"] = "Add list item"; // untranslated
38
+ Blockly.Msg["ARIA_LABEL_ADD_TEXT"] = "Add text"; // untranslated
39
+ Blockly.Msg["ARIA_LABEL_BUTTON"] = "button"; // untranslated
40
+ Blockly.Msg["ARIA_LABEL_COMMENT"] = "Comment"; // untranslated
41
+ Blockly.Msg["ARIA_LABEL_COMMENT_COLLAPSE"] = "Collapse Comment"; // untranslated
42
+ Blockly.Msg["ARIA_LABEL_COMMENT_EXPAND"] = "Expand Comment"; // untranslated
43
+ Blockly.Msg["ARIA_LABEL_FIELD_ANGLE"] = "%1 degrees"; // untranslated
44
+ Blockly.Msg["ARIA_LABEL_HEADING"] = "heading"; // untranslated
45
+ Blockly.Msg["ARIA_LABEL_REMOVE_ELSE_IF"] = "Remove else if"; // untranslated
46
+ Blockly.Msg["ARIA_LABEL_REMOVE_INPUT"] = "Remove input"; // untranslated
47
+ Blockly.Msg["ARIA_LABEL_REMOVE_LIST_ITEM"] = "Remove list item"; // untranslated
48
+ Blockly.Msg["ARIA_LABEL_REMOVE_TEXT"] = "Remove text"; // untranslated
49
+ Blockly.Msg["ARIA_LABEL_TRASH_EMPTY"] = "Trash, currently empty"; // untranslated
50
+ Blockly.Msg["ARIA_TYPE_FIELD_ANGLE"] = "angle"; // untranslated
51
+ Blockly.Msg["ARIA_TYPE_FIELD_BITMAP"] = "pixel image"; // untranslated
52
+ Blockly.Msg["ARIA_TYPE_FIELD_CHECKBOX"] = "checkbox"; // untranslated
53
+ Blockly.Msg["ARIA_TYPE_FIELD_COLOUR"] = "color"; // untranslated
54
+ Blockly.Msg["ARIA_TYPE_FIELD_DATE"] = "date"; // untranslated
55
+ Blockly.Msg["ARIA_TYPE_FIELD_DROPDOWN"] = "dropdown"; // untranslated
56
+ Blockly.Msg["ARIA_TYPE_FIELD_GRID"] = "grid dropdown"; // untranslated
57
+ Blockly.Msg["ARIA_TYPE_FIELD_IMAGE"] = "image"; // untranslated
58
+ Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input"; // untranslated
59
+ Blockly.Msg["ARIA_TYPE_FIELD_NUMBER"] = "number"; // untranslated
60
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT"] = "text"; // untranslated
61
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT_ARGUMENT"] = "input name"; // untranslated
62
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT_PROCEDURE"] = "function name"; // untranslated
63
+ Blockly.Msg["BACKSPACE_KEY"] = "Backspace"; // untranslated
64
+ Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "Begin %1"; // untranslated
65
+ Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "Begin stack"; // untranslated
66
+ Blockly.Msg["BLOCK_LABEL_COLLAPSED"] = "collapsed"; // untranslated
67
+ Blockly.Msg["BLOCK_LABEL_CONTAINER"] = "container"; // untranslated
68
+ Blockly.Msg["BLOCK_LABEL_DISABLED"] = "disabled"; // untranslated
69
+ Blockly.Msg["BLOCK_LABEL_HAS_BRANCHES"] = "has %1 branches"; // untranslated
70
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "has input"; // untranslated
71
+ Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "has inputs"; // untranslated
72
+ Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "replaceable"; // untranslated
73
+ Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1 stack blocks"; // untranslated
74
+ Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "statement"; // untranslated
75
+ Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1 category"; // untranslated
76
+ Blockly.Msg["BLOCK_LABEL_VALUE"] = "value"; // untranslated
77
+ Blockly.Msg["BUBBLE_LABEL_COMMENT"] = "Comment: %1"; // untranslated
78
+ Blockly.Msg["BUBBLE_LABEL_DEFAULT"] = "Bubble"; // untranslated
79
+ Blockly.Msg["BUBBLE_LABEL_WARNING"] = "Warning: %1"; // untranslated
22
80
  Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "متغیر '%1' را نمی‌توان پاک کرد، زیرا جزیی از تعریف تابع '%2' می‌باشد";
81
+ Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
23
82
  Blockly.Msg["CHANGE_VALUE_TITLE"] = "تغییر مقدار:";
24
83
  Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
25
84
  Blockly.Msg["CLEAN_UP"] = "تمیز کردن بلوک‌ها";
26
85
  Blockly.Msg["CLOSE"] = "Close"; // untranslated
86
+ Blockly.Msg["CLOSE_BACKPACK"] = "Close backpack"; // untranslated
27
87
  Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "Collapsed blocks contain warnings."; // untranslated
28
88
  Blockly.Msg["COLLAPSE_ALL"] = "فروپاشی بلوک‌ها";
29
89
  Blockly.Msg["COLLAPSE_BLOCK"] = "فروپاشی بلوک";
@@ -44,7 +104,8 @@ Blockly.Msg["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorper
44
104
  Blockly.Msg["COLOUR_RGB_RED"] = "قرمز";
45
105
  Blockly.Msg["COLOUR_RGB_TITLE"] = "رنگ با";
46
106
  Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "ساخت یک رنگ با مقدار مشخص‌شده‌ای از قرمز، سبز و آبی. همهٔ مقادیر باید بین ۰ تا ۱۰۰ باشند.";
47
- Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
107
+ Blockly.Msg["COMMAND_KEY"] = "Command"; // untranslated
108
+ Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
48
109
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
49
110
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "خروج از حلقه";
50
111
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "ادامه با تکرار بعدی حلقه";
@@ -77,11 +138,15 @@ Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "تکرار تا زمانی
77
138
  Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "تکرار در حالی که";
78
139
  Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "تا زمانی که یک مقدار ناصحیح است، چند عبارت را انجام بده.";
79
140
  Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "تا زمانی که یک مقدار صحیح است، چند عبارت را انجام بده.";
80
- Blockly.Msg["CONTROL_KEY"] = "Ctrl"; // untranslated
81
- Blockly.Msg["COPY_SHORTCUT"] = "Copy"; // untranslated
141
+ Blockly.Msg["CONTROL_KEY"] = "Control"; // untranslated
142
+ Blockly.Msg["COPY_ALL_TO_BACKPACK"] = "Copy All Blocks to Backpack"; // untranslated
143
+ Blockly.Msg["COPY_SHORTCUT"] = "رونویسی";
144
+ Blockly.Msg["COPY_TO_BACKPACK"] = "Copy to Backpack"; // untranslated
145
+ Blockly.Msg["CURRENT_BLOCK_ANNOUNCEMENT"] = "Current block: %1"; // untranslated
82
146
  Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
83
147
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "حذف همهٔ بلاک‌های %1؟";
84
148
  Blockly.Msg["DELETE_BLOCK"] = "حذف بلوک";
149
+ Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
85
150
  Blockly.Msg["DELETE_VARIABLE"] = "متغیر '%1'را پاک کنید";
86
151
  Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "تعداد %1 استفاده از متغیر '%2' پاک شود؟";
87
152
  Blockly.Msg["DELETE_X_BLOCKS"] = "حذف بلوک‌های %1";
@@ -91,17 +156,98 @@ Blockly.Msg["DISABLE_BLOCK"] = "غیرفعال‌سازی بلوک";
91
156
  Blockly.Msg["DUPLICATE_BLOCK"] = "تکراری";
92
157
  Blockly.Msg["DUPLICATE_COMMENT"] = "دیدگاه تکراری";
93
158
  Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
159
+ Blockly.Msg["EMPTY_BACKPACK"] = "Empty Backpack"; // untranslated
94
160
  Blockly.Msg["ENABLE_BLOCK"] = "فعال‌سازی بلوک";
161
+ Blockly.Msg["END_KEY"] = "End"; // untranslated
162
+ Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
163
+ Blockly.Msg["ESCAPE"] = "Escape"; // untranslated
95
164
  Blockly.Msg["EXPAND_ALL"] = "گسترش بلوک‌ها";
96
165
  Blockly.Msg["EXPAND_BLOCK"] = "گسترش بلوک";
97
166
  Blockly.Msg["EXTERNAL_INPUTS"] = "ورودی‌های خارجی";
167
+ Blockly.Msg["FIELD_BITMAP_ARIA_VALUE"] = "%1 by %2, %3 pixels on"; // untranslated
168
+ Blockly.Msg["FIELD_BITMAP_BUTTON_LABEL_CLEAR"] = "Clear"; // untranslated
169
+ Blockly.Msg["FIELD_BITMAP_BUTTON_LABEL_RANDOMIZE"] = "Randomize"; // untranslated
170
+ Blockly.Msg["FIELD_BITMAP_PIXEL_LABEL"] = "%1, row %2, column %3"; // untranslated
171
+ Blockly.Msg["FIELD_BITMAP_PIXEL_OFF"] = "off"; // untranslated
172
+ Blockly.Msg["FIELD_BITMAP_PIXEL_ON"] = "on"; // untranslated
173
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_CHECKED"] = "Checked"; // untranslated
174
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_UNCHECKED"] = "Not checked"; // untranslated
175
+ Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
176
+ Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
177
+ Blockly.Msg["FIELD_LABEL_OPTION_INDEX"] = "Option %1"; // untranslated
178
+ Blockly.Msg["FIELD_LABEL_VARIABLE"] = "Variable '%1'"; // untranslated
179
+ Blockly.Msg["FIELD_MULTILINEINPUT_FINISH_EDITING"] = "Finish editing"; // untranslated
180
+ Blockly.Msg["FIELD_MULTILINEINPUT_NEW_LINE"] = "New line"; // untranslated
98
181
  Blockly.Msg["HELP"] = "راهنما";
99
- Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
182
+ Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls."; // untranslated
183
+ Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
184
+ Blockly.Msg["ICON_LABEL_COMMENT_CLOSED"] = "Open Comment"; // untranslated
185
+ Blockly.Msg["ICON_LABEL_COMMENT_OPEN"] = "Close Comment"; // untranslated
186
+ Blockly.Msg["ICON_LABEL_DEFAULT"] = "Icon"; // untranslated
187
+ Blockly.Msg["ICON_LABEL_MUTATOR_CLOSED"] = "Edit this block"; // untranslated
188
+ Blockly.Msg["ICON_LABEL_MUTATOR_OPEN"] = "Close block editor"; // untranslated
189
+ Blockly.Msg["ICON_LABEL_WARNING_CLOSED"] = "Open Warning"; // untranslated
190
+ Blockly.Msg["ICON_LABEL_WARNING_OPEN"] = "Close Warning"; // untranslated
100
191
  Blockly.Msg["INLINE_INPUTS"] = "ورودی‌های درون خطی";
101
- Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
192
+ Blockly.Msg["INPUT_LABEL_CONDITION"] = "condition"; // untranslated
193
+ Blockly.Msg["INPUT_LABEL_CONDITION_A"] = "first condition"; // untranslated
194
+ Blockly.Msg["INPUT_LABEL_CONDITION_B"] = "second condition"; // untranslated
195
+ Blockly.Msg["INPUT_LABEL_EMPTY"] = "Empty"; // untranslated
196
+ Blockly.Msg["INPUT_LABEL_END_STATEMENT"] = "End %1"; // untranslated
197
+ Blockly.Msg["INPUT_LABEL_INDEX"] = "input %1"; // untranslated
198
+ Blockly.Msg["INPUT_LABEL_LISTS_CREATE_WITH_ITEM"] = "value %1"; // untranslated
199
+ Blockly.Msg["INPUT_LABEL_LISTS_DELIMITER"] = "delimiter"; // untranslated
200
+ Blockly.Msg["INPUT_LABEL_LISTS_END_POSITION"] = "end position"; // untranslated
201
+ Blockly.Msg["INPUT_LABEL_LISTS_LIST_FROM_TEXT"] = "text to split"; // untranslated
202
+ Blockly.Msg["INPUT_LABEL_LISTS_POSITION"] = "position within list"; // untranslated
203
+ Blockly.Msg["INPUT_LABEL_LISTS_REPEAT_ITEM"] = "value to repeat"; // untranslated
204
+ Blockly.Msg["INPUT_LABEL_LISTS_REPEAT_NUM"] = "number of times to repeat"; // untranslated
205
+ Blockly.Msg["INPUT_LABEL_LISTS_START_POSITION"] = "start position"; // untranslated
206
+ Blockly.Msg["INPUT_LABEL_LISTS_TEXT_FROM_LIST"] = "list to join"; // untranslated
207
+ Blockly.Msg["INPUT_LABEL_LISTS_TO_CHANGE"] = "list to change"; // untranslated
208
+ Blockly.Msg["INPUT_LABEL_LISTS_TO_CHECK"] = "list to check"; // untranslated
209
+ Blockly.Msg["INPUT_LABEL_LISTS_VALUE_TO_SET"] = "value to set"; // untranslated
210
+ Blockly.Msg["INPUT_LABEL_LOOP_BY"] = "increment"; // untranslated
211
+ Blockly.Msg["INPUT_LABEL_LOOP_FROM"] = "starting number"; // untranslated
212
+ Blockly.Msg["INPUT_LABEL_LOOP_LIST"] = "list to iterate over"; // untranslated
213
+ Blockly.Msg["INPUT_LABEL_LOOP_TIMES"] = "number of times to repeat"; // untranslated
214
+ Blockly.Msg["INPUT_LABEL_LOOP_TO"] = "ending number"; // untranslated
215
+ Blockly.Msg["INPUT_LABEL_MATH_CHANGE_BY"] = "amount to change by"; // untranslated
216
+ Blockly.Msg["INPUT_LABEL_MATH_CONSTRAIN_VALUE"] = "number to constrain"; // untranslated
217
+ Blockly.Msg["INPUT_LABEL_MATH_DIVIDEND"] = "dividend"; // untranslated
218
+ Blockly.Msg["INPUT_LABEL_MATH_DIVISOR"] = "divisor"; // untranslated
219
+ Blockly.Msg["INPUT_LABEL_NUMBER"] = "number"; // untranslated
220
+ Blockly.Msg["INPUT_LABEL_NUMBER_A"] = "first number"; // untranslated
221
+ Blockly.Msg["INPUT_LABEL_NUMBER_ATAN2_X"] = "x coordinate"; // untranslated
222
+ Blockly.Msg["INPUT_LABEL_NUMBER_ATAN2_Y"] = "y coordinate"; // untranslated
223
+ Blockly.Msg["INPUT_LABEL_NUMBER_B"] = "second number"; // untranslated
224
+ Blockly.Msg["INPUT_LABEL_NUMBER_LIST"] = "list of numbers"; // untranslated
225
+ Blockly.Msg["INPUT_LABEL_NUMBER_MAX"] = "maximum"; // untranslated
226
+ Blockly.Msg["INPUT_LABEL_NUMBER_MIN"] = "minimum"; // untranslated
227
+ Blockly.Msg["INPUT_LABEL_NUMBER_TO_CHECK"] = "number to check"; // untranslated
228
+ Blockly.Msg["INPUT_LABEL_STATEMENT"] = "statement position"; // untranslated
229
+ Blockly.Msg["INPUT_LABEL_TEXT_APPEND"] = "value to append"; // untranslated
230
+ Blockly.Msg["INPUT_LABEL_TEXT_END_POSITION"] = "end position"; // untranslated
231
+ Blockly.Msg["INPUT_LABEL_TEXT_JOIN_ITEM"] = "value %1"; // untranslated
232
+ Blockly.Msg["INPUT_LABEL_TEXT_POSITION"] = "letter position"; // untranslated
233
+ Blockly.Msg["INPUT_LABEL_TEXT_PROMPT_MESSAGE"] = "message"; // untranslated
234
+ Blockly.Msg["INPUT_LABEL_TEXT_START_POSITION"] = "start position"; // untranslated
235
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_CHANGE"] = "text to change"; // untranslated
236
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_CHECK"] = "text to check"; // untranslated
237
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_FIND"] = "text to find"; // untranslated
238
+ Blockly.Msg["INPUT_LABEL_TEXT_TO_REPLACE"] = "text to replace"; // untranslated
239
+ Blockly.Msg["INPUT_LABEL_VALUE"] = "value position"; // untranslated
240
+ Blockly.Msg["INPUT_LABEL_VALUE_A"] = "first value"; // untranslated
241
+ Blockly.Msg["INPUT_LABEL_VALUE_B"] = "second value"; // untranslated
242
+ Blockly.Msg["INPUT_LABEL_VARIABLES_SET"] = "value to set"; // untranslated
243
+ Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
244
+ Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "Use %1 to navigate inside of blocks."; // untranslated
245
+ Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position."; // untranslated
102
246
  Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
103
247
  Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "Cut. Press %1 to paste."; // untranslated
104
- Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position"; // untranslated
248
+ Blockly.Msg["KEYBOARD_NAV_FLYOUT_LABEL_HINT"] = "Use the arrow keys to navigate to a block, or press %1 to go to the next heading."; // untranslated
249
+ Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position."; // untranslated
250
+ Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "Use the arrow keys to navigate."; // untranslated
105
251
  Blockly.Msg["LINUX"] = "Linux"; // untranslated
106
252
  Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
107
253
  Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "ایجاد فهرست خالی";
@@ -192,7 +338,13 @@ Blockly.Msg["LOGIC_BOOLEAN_FALSE"] = "ناصحیح";
192
338
  Blockly.Msg["LOGIC_BOOLEAN_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Logic#values"; // untranslated
193
339
  Blockly.Msg["LOGIC_BOOLEAN_TOOLTIP"] = "بازگرداندن یکی از صحیح یا ناصحیح.";
194
340
  Blockly.Msg["LOGIC_BOOLEAN_TRUE"] = "صحیح";
341
+ Blockly.Msg["LOGIC_COMPARE_EQ_ARIA"] = "equals"; // untranslated
342
+ Blockly.Msg["LOGIC_COMPARE_GTE_ARIA"] = "greater than or equal to"; // untranslated
343
+ Blockly.Msg["LOGIC_COMPARE_GT_ARIA"] = "greater than"; // untranslated
195
344
  Blockly.Msg["LOGIC_COMPARE_HELPURL"] = "https://fa.wikipedia.org/wiki/%D9%86%D8%A7%D8%A8%D8%B1%D8%A7%D8%A8%D8%B1%DB%8C";
345
+ Blockly.Msg["LOGIC_COMPARE_LTE_ARIA"] = "less than or equal to"; // untranslated
346
+ Blockly.Msg["LOGIC_COMPARE_LT_ARIA"] = "less than"; // untranslated
347
+ Blockly.Msg["LOGIC_COMPARE_NEQ_ARIA"] = "not equals"; // untranslated
196
348
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_EQ"] = "بازگشت صحیح اگر هر دو ورودی با یکدیگر برابر باشد.";
197
349
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GT"] = "بازگرداندن صحیح اگر ورودی اول بزرگتر از ورودی دوم باشد.";
198
350
  Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GTE"] = "بازگرداندن صحیح اگر ورودی اول بزرگتر یا مساوی یا ورودی دوم باشد.";
@@ -217,6 +369,7 @@ Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "اگر صحیح";
217
369
  Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "بررسی وضعیت در «آزمایش». اگر وضعیت صحیح باشد، مقدار «اگر صحیح» را بر می‌گرداند در غیر اینصورت مقدار «اگر ناصحیح» را.";
218
370
  Blockly.Msg["MAC_OS"] = "macOS"; // untranslated
219
371
  Blockly.Msg["MATH_ADDITION_SYMBOL"] = "+"; // untranslated
372
+ Blockly.Msg["MATH_ADDITION_SYMBOL_ARIA"] = "plus"; // untranslated
220
373
  Blockly.Msg["MATH_ARITHMETIC_HELPURL"] = "https://fa.wikipedia.org/wiki/%D8%AD%D8%B3%D8%A7%D8%A8";
221
374
  Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_ADD"] = "بازگرداندن مقدار جمع دو عدد.";
222
375
  Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_DIVIDE"] = "بازگرداندن باقی‌ماندهٔ دو عدد.";
@@ -229,12 +382,19 @@ Blockly.Msg["MATH_ATAN2_TOOLTIP"] = "Return the arctangent of point (X, Y) in de
229
382
  Blockly.Msg["MATH_CHANGE_HELPURL"] = "https://fa.wikipedia.org/wiki/%D8%A7%D8%B5%D8%B7%D9%84%D8%A7%D8%AD_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C#.D8.A7.D9.81.D8.B2.D8.A7.DB.8C.D8.B4_.D8.B4.D9.85.D8.A7.D8.B1.D9.86.D8.AF.D9.87";
230
383
  Blockly.Msg["MATH_CHANGE_TITLE"] = "تغییر %1 با %2";
231
384
  Blockly.Msg["MATH_CHANGE_TOOLTIP"] = "افزودن یک عدد به متغیر '%1'.";
385
+ Blockly.Msg["MATH_CONSTANT_E_ARIA"] = "e"; // untranslated
386
+ Blockly.Msg["MATH_CONSTANT_GOLDEN_RATIO_ARIA"] = "golden ratio"; // untranslated
232
387
  Blockly.Msg["MATH_CONSTANT_HELPURL"] = "https://fa.wikipedia.org/wiki/%D8%AB%D8%A7%D8%A8%D8%AA_%D8%B1%DB%8C%D8%A7%D8%B6%DB%8C";
388
+ Blockly.Msg["MATH_CONSTANT_INFINITY_ARIA"] = "infinity"; // untranslated
389
+ Blockly.Msg["MATH_CONSTANT_PI_ARIA"] = "pi"; // untranslated
390
+ Blockly.Msg["MATH_CONSTANT_SQRT1_2_ARIA"] = "square root of 1 over 2"; // untranslated
391
+ Blockly.Msg["MATH_CONSTANT_SQRT2_ARIA"] = "square root of 2"; // untranslated
233
392
  Blockly.Msg["MATH_CONSTANT_TOOLTIP"] = "یکی از مقادیر ثابت جهانی را برمی‌گرداند: π (۳٫۱۴۱…)، e (۲٫۷۱۸...)، φ (۱٫۶۱۸)، sqrt(۲) (۱٫۴۱۴)، sqrt(۱/۲) (۰٫۷۰۷...) و یا ∞ (بی‌نهایت).";
234
393
  Blockly.Msg["MATH_CONSTRAIN_HELPURL"] = "https://en.wikipedia.org/wiki/Clamping_(graphics)"; // untranslated
235
394
  Blockly.Msg["MATH_CONSTRAIN_TITLE"] = "محدودکردن %1 پایین %2 بالا %3";
236
395
  Blockly.Msg["MATH_CONSTRAIN_TOOLTIP"] = "محدودکردن یک عدد بین محدودیت‌های مشخص‌شده (بسته).";
237
396
  Blockly.Msg["MATH_DIVISION_SYMBOL"] = "÷"; // untranslated
397
+ Blockly.Msg["MATH_DIVISION_SYMBOL_ARIA"] = "divided by"; // untranslated
238
398
  Blockly.Msg["MATH_IS_DIVISIBLE_BY"] = "تقسیم شده بر";
239
399
  Blockly.Msg["MATH_IS_EVEN"] = "زوج است";
240
400
  Blockly.Msg["MATH_IS_NEGATIVE"] = "منفی است";
@@ -247,13 +407,16 @@ Blockly.Msg["MATH_MODULO_HELPURL"] = "https://fa.wikipedia.org/wiki/%D8%B9%D9%85
247
407
  Blockly.Msg["MATH_MODULO_TITLE"] = "باقی‌ماندهٔ %1 ÷ %2";
248
408
  Blockly.Msg["MATH_MODULO_TOOLTIP"] = "باقی‌ماندهٔ تقسیم دو عدد را بر می‌گرداند.";
249
409
  Blockly.Msg["MATH_MULTIPLICATION_SYMBOL"] = "×"; // untranslated
410
+ Blockly.Msg["MATH_MULTIPLICATION_SYMBOL_ARIA"] = "times"; // untranslated
250
411
  Blockly.Msg["MATH_NUMBER_HELPURL"] = "https://fa.wikipedia.org/wiki/%D8%B9%D8%AF%D8%AF";
251
412
  Blockly.Msg["MATH_NUMBER_TOOLTIP"] = "یک عدد.";
252
413
  Blockly.Msg["MATH_ONLIST_HELPURL"] = ""; // untranslated
253
414
  Blockly.Msg["MATH_ONLIST_OPERATOR_AVERAGE"] = "میانگین فهرست";
254
415
  Blockly.Msg["MATH_ONLIST_OPERATOR_MAX"] = "بزرگ‌ترین عدد در فهرست";
416
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MAX_ARIA"] = "maximum"; // untranslated
255
417
  Blockly.Msg["MATH_ONLIST_OPERATOR_MEDIAN"] = "میانهٔ فهرست";
256
418
  Blockly.Msg["MATH_ONLIST_OPERATOR_MIN"] = "کوچک‌ترین عدد در فهرست";
419
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MIN_ARIA"] = "minimum"; // untranslated
257
420
  Blockly.Msg["MATH_ONLIST_OPERATOR_MODE"] = "مد فهرست";
258
421
  Blockly.Msg["MATH_ONLIST_OPERATOR_RANDOM"] = "مورد تصادفی از فهرست";
259
422
  Blockly.Msg["MATH_ONLIST_OPERATOR_STD_DEV"] = "انحراف معیار فهرست";
@@ -267,6 +430,7 @@ Blockly.Msg["MATH_ONLIST_TOOLTIP_RANDOM"] = "موردی تصادفی از فهر
267
430
  Blockly.Msg["MATH_ONLIST_TOOLTIP_STD_DEV"] = "انحراف معیار فهرست را بر می‌گرداند.";
268
431
  Blockly.Msg["MATH_ONLIST_TOOLTIP_SUM"] = "جمع همهٔ عددهای فهرست را باز می‌گرداند.";
269
432
  Blockly.Msg["MATH_POWER_SYMBOL"] = "^"; // untranslated
433
+ Blockly.Msg["MATH_POWER_SYMBOL_ARIA"] = "to the power of"; // untranslated
270
434
  Blockly.Msg["MATH_RANDOM_FLOAT_HELPURL"] = "https://fa.wikipedia.org/wiki/%D8%AA%D9%88%D9%84%DB%8C%D8%AF_%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81%DB%8C";
271
435
  Blockly.Msg["MATH_RANDOM_FLOAT_TITLE_RANDOM"] = "کسر تصادفی";
272
436
  Blockly.Msg["MATH_RANDOM_FLOAT_TOOLTIP"] = "بازگرداندن کسری تصادفی بین ۰٫۰ (بسته) تا ۱٫۰ (باز).";
@@ -280,6 +444,12 @@ Blockly.Msg["MATH_ROUND_OPERATOR_ROUNDUP"] = "گرد به بالا";
280
444
  Blockly.Msg["MATH_ROUND_TOOLTIP"] = "گردکردن یک عدد به بالا یا پایین.";
281
445
  Blockly.Msg["MATH_SINGLE_HELPURL"] = "https://fa.wikipedia.org/wiki/%D8%B1%DB%8C%D8%B4%D9%87_%D8%AF%D9%88%D9%85";
282
446
  Blockly.Msg["MATH_SINGLE_OP_ABSOLUTE"] = "مطلق";
447
+ Blockly.Msg["MATH_SINGLE_OP_ABSOLUTE_ARIA"] = "absolute value"; // untranslated
448
+ Blockly.Msg["MATH_SINGLE_OP_EXP_ARIA"] = "e to the power of"; // untranslated
449
+ Blockly.Msg["MATH_SINGLE_OP_LN_ARIA"] = "natural logarithm"; // untranslated
450
+ Blockly.Msg["MATH_SINGLE_OP_LOG10_ARIA"] = "base 10 logarithm"; // untranslated
451
+ Blockly.Msg["MATH_SINGLE_OP_NEG_ARIA"] = "negative"; // untranslated
452
+ Blockly.Msg["MATH_SINGLE_OP_POW10_ARIA"] = "10 to the power of"; // untranslated
283
453
  Blockly.Msg["MATH_SINGLE_OP_ROOT"] = "ریشهٔ دوم";
284
454
  Blockly.Msg["MATH_SINGLE_TOOLTIP_ABS"] = "قدر مطلق یک عدد را بازمی‌گرداند.";
285
455
  Blockly.Msg["MATH_SINGLE_TOOLTIP_EXP"] = "بازگرداندن توان e یک عدد.";
@@ -289,19 +459,27 @@ Blockly.Msg["MATH_SINGLE_TOOLTIP_NEG"] = "منفی‌شدهٔ یک عدد را
289
459
  Blockly.Msg["MATH_SINGLE_TOOLTIP_POW10"] = "بازگرداندن توان ۱۰ یک عدد.";
290
460
  Blockly.Msg["MATH_SINGLE_TOOLTIP_ROOT"] = "ریشهٔ دوم یک عدد را باز می‌گرداند.";
291
461
  Blockly.Msg["MATH_SUBTRACTION_SYMBOL"] = "-"; // untranslated
462
+ Blockly.Msg["MATH_SUBTRACTION_SYMBOL_ARIA"] = "minus"; // untranslated
292
463
  Blockly.Msg["MATH_TRIG_ACOS"] = "acos"; // untranslated
464
+ Blockly.Msg["MATH_TRIG_ACOS_ARIA"] = "inverse cosine"; // untranslated
293
465
  Blockly.Msg["MATH_TRIG_ASIN"] = "asin"; // untranslated
466
+ Blockly.Msg["MATH_TRIG_ASIN_ARIA"] = "inverse sine"; // untranslated
294
467
  Blockly.Msg["MATH_TRIG_ATAN"] = "atan"; // untranslated
468
+ Blockly.Msg["MATH_TRIG_ATAN_ARIA"] = "inverse tangent"; // untranslated
295
469
  Blockly.Msg["MATH_TRIG_COS"] = "cos"; // untranslated
470
+ Blockly.Msg["MATH_TRIG_COS_ARIA"] = "cosine"; // untranslated
296
471
  Blockly.Msg["MATH_TRIG_HELPURL"] = "https://fa.wikipedia.org/wiki/%D8%AA%D8%A7%D8%A8%D8%B9%E2%80%8C%D9%87%D8%A7%DB%8C_%D9%85%D8%AB%D9%84%D8%AB%D8%A7%D8%AA%DB%8C";
297
472
  Blockly.Msg["MATH_TRIG_SIN"] = "sin"; // untranslated
473
+ Blockly.Msg["MATH_TRIG_SIN_ARIA"] = "sine"; // untranslated
298
474
  Blockly.Msg["MATH_TRIG_TAN"] = "tan"; // untranslated
475
+ Blockly.Msg["MATH_TRIG_TAN_ARIA"] = "tangent"; // untranslated
299
476
  Blockly.Msg["MATH_TRIG_TOOLTIP_ACOS"] = "بازگرداندن آرک‌کسینوس درجه (نه رادیان).";
300
477
  Blockly.Msg["MATH_TRIG_TOOLTIP_ASIN"] = "بازگرداندن آرک‌سینوس درجه (نه رادیان).";
301
478
  Blockly.Msg["MATH_TRIG_TOOLTIP_ATAN"] = "بازگرداندن آرک‌تانژانت درجه (نه رادیان).";
302
479
  Blockly.Msg["MATH_TRIG_TOOLTIP_COS"] = "بازگرداندن کسینوس یک زاویه درجه (نه رادیان).";
303
480
  Blockly.Msg["MATH_TRIG_TOOLTIP_SIN"] = "بازگرداندن سینوس یک زاویه به درجه (نه رادیان).";
304
481
  Blockly.Msg["MATH_TRIG_TOOLTIP_TAN"] = "بازگرداندن تانژانت یک زاویه به درجه (نه رادیان).";
482
+ Blockly.Msg["MINIMAP_ARIA_LABEL"] = "Workspace minimap. Use the arrow keys to pan the workspace."; // untranslated
305
483
  Blockly.Msg["MOVE_BLOCK"] = "Move Block"; // untranslated
306
484
  Blockly.Msg["NEW_COLOUR_VARIABLE"] = "ساخت متغیر رنگ...";
307
485
  Blockly.Msg["NEW_NUMBER_VARIABLE"] = "ساخت متغیر عددی...";
@@ -309,9 +487,17 @@ Blockly.Msg["NEW_STRING_VARIABLE"] = "ساخت متغیر رشته...";
309
487
  Blockly.Msg["NEW_VARIABLE"] = "ایجاد متغیر...";
310
488
  Blockly.Msg["NEW_VARIABLE_TITLE"] = "نام متغیر تازه:";
311
489
  Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "نوع متغیر جدید:";
312
- Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
490
+ Blockly.Msg["NO_PARENT_ANNOUNCEMENT"] = "Current block has no parent"; // untranslated
491
+ Blockly.Msg["OPEN_BACKPACK"] = "Open backpack"; // untranslated
492
+ Blockly.Msg["OPEN_TRASH"] = "Open trash"; // untranslated
493
+ Blockly.Msg["OPTION_KEY"] = "Option"; // untranslated
313
494
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
495
+ Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
496
+ Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
497
+ Blockly.Msg["PARENT_BLOCKS_ANNOUNCEMENT"] = "Parent blocks: %1"; // untranslated
498
+ Blockly.Msg["PASTE_ALL_FROM_BACKPACK"] = "Paste All Blocks from Backpack"; // untranslated
314
499
  Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
500
+ Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
315
501
  Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "اجازه اظهارات";
316
502
  Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "با:";
317
503
  Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://fa.wikipedia.org/wiki/%D8%B1%D9%88%DB%8C%D9%87_(%D8%B9%D9%84%D9%88%D9%85_%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D9%87)";
@@ -341,11 +527,56 @@ Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TITLE"] = "ورودی‌ها";
341
527
  Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TOOLTIP"] = "افزودن، حذف یا دوباره مرتب‌کردن ورودی این تابع.";
342
528
  Blockly.Msg["REDO"] = "انجام دوباره";
343
529
  Blockly.Msg["REMOVE_COMMENT"] = "حذف نظر";
530
+ Blockly.Msg["REMOVE_FROM_BACKPACK"] = "Remove from Backpack"; // untranslated
344
531
  Blockly.Msg["RENAME_VARIABLE"] = "تغییر نام متغیر...";
345
532
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "تغییر نام همهٔ متغیرهای «%1» به:";
533
+ Blockly.Msg["RESET_ZOOM"] = "Reset zoom"; // untranslated
534
+ Blockly.Msg["SCREENREADER_HINT"] = "Use the arrow keys to navigate. Press %1 to toggle screenreader accessibility mode."; // untranslated
535
+ Blockly.Msg["SCREENREADER_MODE_DISABLED"] = "Screenreader mode is off, press %1 to turn it on"; // untranslated
536
+ Blockly.Msg["SCREENREADER_MODE_ENABLED"] = "Screenreader mode is on, press %1 to turn it off"; // untranslated
537
+ Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
538
+ Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "Abort move"; // untranslated
539
+ Blockly.Msg["SHORTCUTS_CLEANUP"] = "Clean up workspace"; // untranslated
346
540
  Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
541
+ Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
542
+ Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
543
+ Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
347
544
  Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
545
+ Blockly.Msg["SHORTCUTS_ESCAPE"] = "Exit"; // untranslated
546
+ Blockly.Msg["SHORTCUTS_EXTENDED_INFORMATION"] = "Announce detailed information"; // untranslated
547
+ Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "Finish move"; // untranslated
548
+ Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "Focus toolbox"; // untranslated
549
+ Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "Focus workspace"; // untranslated
348
550
  Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
551
+ Blockly.Msg["SHORTCUTS_INFORMATION"] = "Announce information"; // untranslated
552
+ Blockly.Msg["SHORTCUTS_JUMP_BLOCK_END"] = "Jump to block end"; // untranslated
553
+ Blockly.Msg["SHORTCUTS_JUMP_BLOCK_START"] = "Jump to block start"; // untranslated
554
+ Blockly.Msg["SHORTCUTS_JUMP_BOTTOM_STACK"] = "Jump to bottom of stack"; // untranslated
555
+ Blockly.Msg["SHORTCUTS_JUMP_FIRST_BLOCK"] = "Jump to first block"; // untranslated
556
+ Blockly.Msg["SHORTCUTS_JUMP_LAST_BLOCK"] = "Jump to last block"; // untranslated
557
+ Blockly.Msg["SHORTCUTS_JUMP_NEXT_PAGE"] = "Jump to next page"; // untranslated
558
+ Blockly.Msg["SHORTCUTS_JUMP_PREVIOUS_PAGE"] = "Jump to previous page"; // untranslated
559
+ Blockly.Msg["SHORTCUTS_JUMP_TOP_STACK"] = "Jump to top of stack"; // untranslated
560
+ Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "Move down"; // untranslated
561
+ Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "Move left"; // untranslated
562
+ Blockly.Msg["SHORTCUTS_MOVE_RIGHT"] = "Move right"; // untranslated
563
+ Blockly.Msg["SHORTCUTS_MOVE_UP"] = "Move up"; // untranslated
564
+ Blockly.Msg["SHORTCUTS_NEXT_HEADING"] = "Next heading"; // untranslated
565
+ Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "Next stack"; // untranslated
566
+ Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "Edit or confirm"; // untranslated
567
+ Blockly.Msg["SHORTCUTS_PREVIOUS_HEADING"] = "Previous heading"; // untranslated
568
+ Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "Previous stack"; // untranslated
569
+ Blockly.Msg["SHORTCUTS_SCROLL_DOWN"] = "Scroll down"; // untranslated
570
+ Blockly.Msg["SHORTCUTS_SCROLL_LEFT"] = "Scroll left"; // untranslated
571
+ Blockly.Msg["SHORTCUTS_SCROLL_RIGHT"] = "Scroll right"; // untranslated
572
+ Blockly.Msg["SHORTCUTS_SCROLL_UP"] = "Scroll up"; // untranslated
573
+ Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "Show menu"; // untranslated
574
+ Blockly.Msg["SHORTCUTS_SHOW_TOOLTIP"] = "Show tooltip"; // untranslated
575
+ Blockly.Msg["SHORTCUTS_START_MOVE"] = "Start move"; // untranslated
576
+ Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "Start move stack"; // untranslated
577
+ Blockly.Msg["SHORTCUTS_TOGGLE_SCREENREADER_MODE"] = "Toggle screenreader mode"; // untranslated
578
+ Blockly.Msg["SPACE_KEY"] = "Space"; // untranslated
579
+ Blockly.Msg["TAB_KEY"] = "Tab"; // untranslated
349
580
  Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Text#text-modification"; // untranslated
350
581
  Blockly.Msg["TEXT_APPEND_TITLE"] = "به %1 الحاق متن %2";
351
582
  Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "الحاق متنی به متغیر «%1».";
@@ -369,6 +600,8 @@ Blockly.Msg["TEXT_COUNT_TOOLTIP"] = "تعداد دفعاتی که یک متن د
369
600
  Blockly.Msg["TEXT_CREATE_JOIN_ITEM_TOOLTIP"] = "افزودن یک مورد به متن.";
370
601
  Blockly.Msg["TEXT_CREATE_JOIN_TITLE_JOIN"] = "عضویت";
371
602
  Blockly.Msg["TEXT_CREATE_JOIN_TOOLTIP"] = "اضافه کردن، حذف یا مرتب‌سازی بحش‌ها برای تنظیم مجدد این بلوک متنی.";
603
+ Blockly.Msg["TEXT_FROM_END_ARIA"] = "letter number from end"; // untranslated
604
+ Blockly.Msg["TEXT_FROM_START_ARIA"] = "letter number"; // untranslated
372
605
  Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_END"] = "به حرف # از انتها";
373
606
  Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_START"] = "به حرف #";
374
607
  Blockly.Msg["TEXT_GET_SUBSTRING_END_LAST"] = "به آخرین حرف";
@@ -415,6 +648,11 @@ Blockly.Msg["TEXT_TRIM_OPERATOR_LEFT"] = "تراشیدن فاصله‌ها از
415
648
  Blockly.Msg["TEXT_TRIM_OPERATOR_RIGHT"] = "تراشیدن فاصله‌ها از طرف چپ";
416
649
  Blockly.Msg["TEXT_TRIM_TOOLTIP"] = "کپی از متن با فاصله‌های حذف‌شده از یک یا هر دو پایان باز می‌گرداند.";
417
650
  Blockly.Msg["TODAY"] = "امروز";
651
+ Blockly.Msg["TOOLBOX_SEARCH_NO_RESULTS"] = "No matching blocks found"; // untranslated
652
+ Blockly.Msg["TOOLBOX_SEARCH_PLACEHOLDER"] = "Search for blocks"; // untranslated
653
+ Blockly.Msg["TOOLBOX_SEARCH_PROMPT"] = "Type to search for blocks"; // untranslated
654
+ Blockly.Msg["TOOLBOX_SEARCH_RESULT_COUNT"] = "%1 matching blocks"; // untranslated
655
+ Blockly.Msg["TOOLBOX_SEARCH_RESULT_COUNT_ONE"] = "1 matching block"; // untranslated
418
656
  Blockly.Msg["UNDO"] = "واگردانی";
419
657
  Blockly.Msg["UNKNOWN"] = "Unknown"; // untranslated
420
658
  Blockly.Msg["UNNAMED_KEY"] = "بدون نام";
@@ -430,8 +668,28 @@ Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "متغیری با نام '%1' هم ا
430
668
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "در حال حاضر یک متغیر با نام '%1' برای متغیر دیگری از نوع '%2' وجود دارد.";
431
669
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "A variable named '%1' already exists as a parameter in the procedure '%2'."; // untranslated
432
670
  Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
433
- Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly Workspace"; // untranslated
434
671
  Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "یک چیزی بگو...";
672
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1 stacks of blocks%2 in workspace."; // untranslated
673
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "One stack of blocks%2 in workspace."; // untranslated
674
+ Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "No blocks%2 in workspace."; // untranslated
675
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = " and %1 comments"; // untranslated
676
+ Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = " and one comment"; // untranslated
677
+ Blockly.Msg["WORKSPACE_LABEL_1_STACK"] = "1 stack of blocks"; // untranslated
678
+ Blockly.Msg["WORKSPACE_LABEL_FLYOUT_WORKSPACE"] = "%1 blocks"; // untranslated
679
+ Blockly.Msg["WORKSPACE_LABEL_MANY_STACKS"] = "%1 stacks of blocks"; // untranslated
680
+ Blockly.Msg["WORKSPACE_LABEL_MUTATOR_WORKSPACE"] = "Block editor workspace"; // untranslated
681
+ Blockly.Msg["WORKSPACE_LABEL_PLAIN"] = "Blocks workspace."; // untranslated
682
+ Blockly.Msg["WORKSPACE_ROLEDESCRIPTION"] = "workspace"; // untranslated
683
+ Blockly.Msg["WORKSPACE_SEARCH_CLOSE"] = "Close search bar"; // untranslated
684
+ Blockly.Msg["WORKSPACE_SEARCH_FIND_NEXT"] = "Find next"; // untranslated
685
+ Blockly.Msg["WORKSPACE_SEARCH_FIND_PREVIOUS"] = "Find previous"; // untranslated
686
+ Blockly.Msg["WORKSPACE_SEARCH_INPUT_LABEL"] = "Search workspace. Press Enter for the next match, Shift+Enter for the previous match. Press Escape to close search and focus the current match."; // untranslated
687
+ Blockly.Msg["WORKSPACE_SEARCH_MATCH"] = "Match %1 of %2: %3"; // untranslated
688
+ Blockly.Msg["WORKSPACE_SEARCH_NO_MATCHES"] = "No matching blocks"; // untranslated
689
+ Blockly.Msg["WORKSPACE_SEARCH_PLACEHOLDER"] = "Search"; // untranslated
690
+ Blockly.Msg["ZOOM_IN"] = "Zoom in"; // untranslated
691
+ Blockly.Msg["ZOOM_OUT"] = "Zoom out"; // untranslated
692
+ Blockly.Msg["ZOOM_TO_FIT_ARIA_LABEL"] = "Zoom to fit"; // untranslated
435
693
  Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
436
694
  Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
437
695
  Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];