@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/ar.js CHANGED
@@ -18,12 +18,72 @@
18
18
  var Blockly = Blockly || { Msg: Object.create(null) };
19
19
 
20
20
  Blockly.Msg["ADD_COMMENT"] = "أضف تعليقًا";
21
- Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
21
+ Blockly.Msg["ALT_KEY"] = "بديل";
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
- Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
83
+ Blockly.Msg["CHROME_OS"] = "نظام التشغيل ChromeOS";
25
84
  Blockly.Msg["CLEAN_UP"] = "تنظيف الكتل";
26
- Blockly.Msg["CLOSE"] = "Close"; // untranslated
85
+ Blockly.Msg["CLOSE"] = "إغلاق";
86
+ Blockly.Msg["CLOSE_BACKPACK"] = "Close backpack"; // untranslated
27
87
  Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "الكتل المطوية تحتوي على تحذيرات.";
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"] = "إنشئ لون بالكمية المحددة من الأحمر, الأخضر والأزرق. بحيث يجب تكون كافة القيم بين 0 و 100.";
47
- Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
107
+ Blockly.Msg["COMMAND_KEY"] = "يأمر";
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
82
- Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
141
+ Blockly.Msg["CONTROL_KEY"] = "يتحكم";
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
146
+ Blockly.Msg["CUT_SHORTCUT"] = "قطع";
83
147
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "حذف %1 كتلة؟";
84
148
  Blockly.Msg["DELETE_BLOCK"] = "حذف كتلة";
149
+ Blockly.Msg["DELETE_KEY"] = "يمسح";
85
150
  Blockly.Msg["DELETE_VARIABLE"] = "حذف المتغير %1";
86
151
  Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "حذف%1 1 استخدامات المتغير '%2'؟";
87
152
  Blockly.Msg["DELETE_X_BLOCKS"] = "احذف %1 كتلة";
@@ -90,19 +155,100 @@ Blockly.Msg["DIALOG_OK"] = "موافق";
90
155
  Blockly.Msg["DISABLE_BLOCK"] = "عطّل كتلة";
91
156
  Blockly.Msg["DUPLICATE_BLOCK"] = "مكرر";
92
157
  Blockly.Msg["DUPLICATE_COMMENT"] = "تعليق مكرر";
93
- Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
158
+ Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "تحرير محتويات المنع";
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"] = "اضغط على %1 للحصول على مساعدة بشأن عناصر التحكم في لوحة المفاتيح.";
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
102
- Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
103
- 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
105
- Blockly.Msg["LINUX"] = "Linux"; // 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"] = "استخدم مفاتيح الأسهم للتحرك، ثم %1 لقبول الموضع.";
246
+ Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "تم النسخ. اضغط %1 للصق.";
247
+ Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "قص. اضغط على %1 للصق.";
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"] = "اضغط باستمرار على %1 واستخدم مفاتيح الأسهم للتحرك بحرية، ثم اضغط على %2 لقبول الموضع.";
250
+ Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "Use the arrow keys to navigate."; // untranslated
251
+ Blockly.Msg["LINUX"] = "لينكس";
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"] = "إنشئ قائمة فارغة";
108
254
  Blockly.Msg["LISTS_CREATE_EMPTY_TOOLTIP"] = "تقوم بإرجاع قائمة، طولها 0, لا تحتوي على أية سجلات البيانات";
@@ -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://ar.wikipedia.org/wiki/متباينة_(جبر)";
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"] = "يرجع صحيح إذا كان الإدخال الأول أكبر من أو يساوي الإدخال الثاني.";
@@ -215,8 +367,9 @@ Blockly.Msg["LOGIC_TERNARY_HELPURL"] = ":https://ar.wikipedia.org/wiki/%3F";
215
367
  Blockly.Msg["LOGIC_TERNARY_IF_FALSE"] = "إذا كانت العبارة خاطئة";
216
368
  Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "إذا كانت العبارة صحيحة";
217
369
  Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "تحقق الشرط في 'الاختبار'. إذا كان الشرط صحيح، يقوم بإرجاع قيمة 'اذا كانت العبارة صحيحة'؛ خلاف ذلك يرجع قيمة 'اذا كانت العبارة خاطئة'.";
218
- Blockly.Msg["MAC_OS"] = "macOS"; // untranslated
370
+ Blockly.Msg["MAC_OS"] = "ماك أو إس";
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://ar.wikipedia.org/wiki/حسابيات";
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"] = "عودة قوس ظل النقطة (س، ص)
229
382
  Blockly.Msg["MATH_CHANGE_HELPURL"] = "https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; // untranslated
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://ar.wikipedia.org/wiki/ثابت رياضي";
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"] = "ير جع واحد من الثوابت الشائعة : π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), or ∞ (infinity).";
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://tr.wikipedia.org/wiki/عامل_ق
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://ar.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://ar.wikipedia.org/wiki/توليد_الأعداد_العشوائية";
271
435
  Blockly.Msg["MATH_RANDOM_FLOAT_TITLE_RANDOM"] = "كسر عشوائي";
272
436
  Blockly.Msg["MATH_RANDOM_FLOAT_TOOLTIP"] = "يرجع جزء عشوائي بين 0.0 (ضمنياً) و 1.0 (خارجيا).";
@@ -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://ar.wikipedia.org/wiki/جذر_تربيعي";
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,29 +459,45 @@ Blockly.Msg["MATH_SINGLE_TOOLTIP_NEG"] = "يرجع عدد سالب.";
289
459
  Blockly.Msg["MATH_SINGLE_TOOLTIP_POW10"] = "يرجع مضروب الرقم 10 في نفسه .";
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";
464
+ Blockly.Msg["MATH_TRIG_ACOS_ARIA"] = "inverse cosine"; // untranslated
293
465
  Blockly.Msg["MATH_TRIG_ASIN"] = "asin";
466
+ Blockly.Msg["MATH_TRIG_ASIN_ARIA"] = "inverse sine"; // untranslated
294
467
  Blockly.Msg["MATH_TRIG_ATAN"] = "atan";
468
+ Blockly.Msg["MATH_TRIG_ATAN_ARIA"] = "inverse tangent"; // untranslated
295
469
  Blockly.Msg["MATH_TRIG_COS"] = "جيب تمام";
470
+ Blockly.Msg["MATH_TRIG_COS_ARIA"] = "cosine"; // untranslated
296
471
  Blockly.Msg["MATH_TRIG_HELPURL"] = "https://ar.wikipedia.org/wiki/دوال_مثلثية";
297
472
  Blockly.Msg["MATH_TRIG_SIN"] = "جيب";
473
+ Blockly.Msg["MATH_TRIG_SIN_ARIA"] = "sine"; // untranslated
298
474
  Blockly.Msg["MATH_TRIG_TAN"] = "ظل";
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"] = "يرجع الظل لدرجة (لا دائرة نصف قطرية).";
305
- Blockly.Msg["MOVE_BLOCK"] = "Move Block"; // untranslated
482
+ Blockly.Msg["MINIMAP_ARIA_LABEL"] = "Workspace minimap. Use the arrow keys to pan the workspace."; // untranslated
483
+ Blockly.Msg["MOVE_BLOCK"] = "نقل المنع";
306
484
  Blockly.Msg["NEW_COLOUR_VARIABLE"] = "انشاء متغير لوني...";
307
485
  Blockly.Msg["NEW_NUMBER_VARIABLE"] = "انشاء متغير رقمي...";
308
486
  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"] = "خيار";
313
494
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
314
- Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // 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
499
+ Blockly.Msg["PASTE_SHORTCUT"] = "لصق";
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://ar.wikipedia.org/wiki/دالة_(برمجة)";
@@ -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"] = "أزل التعليق";
344
- Blockly.Msg["RENAME_VARIABLE"] = "إعادة تسمية المتغير...";
530
+ Blockly.Msg["REMOVE_FROM_BACKPACK"] = "Remove from Backpack"; // untranslated
531
+ Blockly.Msg["RENAME_VARIABLE"] = "أعد تسمية المتغير '%1'";
345
532
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "إعادة تسمية كافة المتغيرات '%1' إلى:";
346
- Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
347
- Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
348
- Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
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
540
+ Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "التنقل عبر الكود";
541
+ Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
542
+ Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
543
+ Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
544
+ Blockly.Msg["SHORTCUTS_EDITING"] = "التحرير";
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
550
+ Blockly.Msg["SHORTCUTS_GENERAL"] = "عام";
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,8 +648,13 @@ 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
- Blockly.Msg["UNKNOWN"] = "Unknown"; // untranslated
657
+ Blockly.Msg["UNKNOWN"] = "مجهول";
420
658
  Blockly.Msg["UNNAMED_KEY"] = "غير مسمى";
421
659
  Blockly.Msg["VARIABLES_DEFAULT_NAME"] = "البند";
422
660
  Blockly.Msg["VARIABLES_GET_CREATE_SET"] = "انشئ 'التعيين %1'";
@@ -429,9 +667,29 @@ Blockly.Msg["VARIABLES_SET_TOOLTIP"] = "تعيين هذا المتغير لتك
429
667
  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"] = "المتغير المسمى '%1' موجود بالفعل كمعلمة في الإجراء '%2'.";
432
- Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
433
- Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "مساحة عمل بلوكلي";
670
+ Blockly.Msg["WINDOWS"] = "ويندوز";
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"];