blockly 13.0.0-beta.1 → 13.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (292) hide show
  1. package/blockly.min.js +1260 -1215
  2. package/blockly_compressed.js +1110 -1085
  3. package/blockly_compressed.js.map +1 -1
  4. package/blocks_compressed.js +71 -71
  5. package/blocks_compressed.js.map +1 -1
  6. package/core/block.d.ts +18 -0
  7. package/core/block_aria_composer.d.ts +1 -1
  8. package/core/bubbles/bubble.d.ts +39 -0
  9. package/core/field_checkbox.d.ts +27 -0
  10. package/core/field_dropdown.d.ts +51 -1
  11. package/core/field_image.d.ts +24 -0
  12. package/core/field_input.d.ts +1 -1
  13. package/core/field_number.d.ts +10 -0
  14. package/core/field_textinput.d.ts +10 -0
  15. package/core/field_variable.d.ts +9 -0
  16. package/core/flyout_base.d.ts +10 -0
  17. package/core/interfaces/i_flyout_inflater.d.ts +9 -0
  18. package/core/interfaces/i_json_block_definition.d.ts +1 -0
  19. package/core/menu.d.ts +3 -0
  20. package/core/menuitem.d.ts +8 -1
  21. package/core/shortcut_items.d.ts +6 -1
  22. package/core/tooltip.d.ts +10 -0
  23. package/core/trashcan.d.ts +23 -38
  24. package/core/utils/aria.d.ts +7 -1
  25. package/core/workspace.d.ts +5 -1
  26. package/core/workspace_svg.d.ts +8 -0
  27. package/core/zoom_controls.d.ts +43 -50
  28. package/dart_compressed.js +62 -62
  29. package/dart_compressed.js.map +1 -1
  30. package/javascript_compressed.js +55 -55
  31. package/javascript_compressed.js.map +1 -1
  32. package/lua_compressed.js +50 -50
  33. package/lua_compressed.js.map +1 -1
  34. package/media/drop.mp3 +0 -0
  35. package/msg/ab.js +23 -3
  36. package/msg/ab.mjs +21 -1
  37. package/msg/ace.js +24 -4
  38. package/msg/ace.mjs +21 -1
  39. package/msg/af.js +23 -3
  40. package/msg/af.mjs +21 -1
  41. package/msg/am.js +24 -4
  42. package/msg/am.mjs +21 -1
  43. package/msg/ar.js +46 -26
  44. package/msg/ar.mjs +21 -1
  45. package/msg/ast.js +24 -4
  46. package/msg/ast.mjs +21 -1
  47. package/msg/az.js +24 -4
  48. package/msg/az.mjs +21 -1
  49. package/msg/ba.js +23 -3
  50. package/msg/ba.mjs +21 -1
  51. package/msg/bcc.js +23 -3
  52. package/msg/bcc.mjs +21 -1
  53. package/msg/be-tarask.js +57 -37
  54. package/msg/be-tarask.mjs +21 -1
  55. package/msg/be.js +24 -4
  56. package/msg/be.mjs +21 -1
  57. package/msg/bg.js +23 -3
  58. package/msg/bg.mjs +21 -1
  59. package/msg/bn.js +24 -4
  60. package/msg/bn.mjs +21 -1
  61. package/msg/br.js +24 -4
  62. package/msg/br.mjs +21 -1
  63. package/msg/bs.js +23 -3
  64. package/msg/bs.mjs +21 -1
  65. package/msg/ca.js +23 -3
  66. package/msg/ca.mjs +21 -1
  67. package/msg/ce.js +23 -3
  68. package/msg/ce.mjs +21 -1
  69. package/msg/cs.js +31 -11
  70. package/msg/cs.mjs +21 -1
  71. package/msg/da.js +47 -27
  72. package/msg/da.mjs +21 -1
  73. package/msg/de.js +23 -3
  74. package/msg/de.mjs +21 -1
  75. package/msg/diq.js +25 -5
  76. package/msg/diq.mjs +21 -1
  77. package/msg/dtp.js +23 -3
  78. package/msg/dtp.mjs +21 -1
  79. package/msg/dty.js +23 -3
  80. package/msg/dty.mjs +21 -1
  81. package/msg/ee.js +23 -3
  82. package/msg/ee.mjs +21 -1
  83. package/msg/el.js +54 -34
  84. package/msg/el.mjs +21 -1
  85. package/msg/en-gb.js +23 -3
  86. package/msg/en-gb.mjs +21 -1
  87. package/msg/en.js +24 -4
  88. package/msg/en.mjs +21 -1
  89. package/msg/eo.js +23 -3
  90. package/msg/eo.mjs +21 -1
  91. package/msg/es.js +33 -13
  92. package/msg/es.mjs +21 -1
  93. package/msg/et.js +23 -3
  94. package/msg/et.mjs +21 -1
  95. package/msg/eu.js +23 -3
  96. package/msg/eu.mjs +21 -1
  97. package/msg/fa.js +24 -4
  98. package/msg/fa.mjs +21 -1
  99. package/msg/fi.js +42 -22
  100. package/msg/fi.mjs +21 -1
  101. package/msg/fo.js +23 -3
  102. package/msg/fo.mjs +21 -1
  103. package/msg/fr.js +46 -26
  104. package/msg/fr.mjs +21 -1
  105. package/msg/frr.js +24 -4
  106. package/msg/frr.mjs +21 -1
  107. package/msg/ga.js +550 -0
  108. package/msg/{cdo.mjs → ga.mjs} +23 -3
  109. package/msg/gl.js +46 -26
  110. package/msg/gl.mjs +21 -1
  111. package/msg/gn.js +24 -4
  112. package/msg/gn.mjs +21 -1
  113. package/msg/gor.js +23 -3
  114. package/msg/gor.mjs +21 -1
  115. package/msg/ha.js +23 -3
  116. package/msg/ha.mjs +21 -1
  117. package/msg/hak.js +24 -4
  118. package/msg/hak.mjs +21 -1
  119. package/msg/he.js +73 -53
  120. package/msg/he.mjs +21 -1
  121. package/msg/hi.js +23 -3
  122. package/msg/hi.mjs +21 -1
  123. package/msg/hr.js +23 -3
  124. package/msg/hr.mjs +21 -1
  125. package/msg/hrx.js +23 -3
  126. package/msg/hrx.mjs +21 -1
  127. package/msg/hsb.js +23 -3
  128. package/msg/hsb.mjs +21 -1
  129. package/msg/hu.js +25 -5
  130. package/msg/hu.mjs +21 -1
  131. package/msg/hy.js +23 -3
  132. package/msg/hy.mjs +21 -1
  133. package/msg/ia.js +46 -26
  134. package/msg/ia.mjs +21 -1
  135. package/msg/id.js +253 -233
  136. package/msg/id.mjs +21 -1
  137. package/msg/ig.js +31 -11
  138. package/msg/ig.mjs +21 -1
  139. package/msg/inh.js +23 -3
  140. package/msg/inh.mjs +21 -1
  141. package/msg/is.js +23 -3
  142. package/msg/is.mjs +21 -1
  143. package/msg/it.js +49 -29
  144. package/msg/it.mjs +21 -1
  145. package/msg/ja.js +46 -26
  146. package/msg/ja.mjs +21 -1
  147. package/msg/ka.js +25 -5
  148. package/msg/ka.mjs +21 -1
  149. package/msg/kab.js +32 -12
  150. package/msg/kab.mjs +21 -1
  151. package/msg/kbd-cyrl.js +24 -4
  152. package/msg/kbd-cyrl.mjs +21 -1
  153. package/msg/km.js +23 -3
  154. package/msg/km.mjs +21 -1
  155. package/msg/kn.js +23 -3
  156. package/msg/kn.mjs +21 -1
  157. package/msg/ko.js +48 -28
  158. package/msg/ko.mjs +21 -1
  159. package/msg/krc.js +550 -0
  160. package/msg/krc.mjs +531 -0
  161. package/msg/ksh.js +24 -4
  162. package/msg/ksh.mjs +21 -1
  163. package/msg/ku-latn.js +24 -4
  164. package/msg/ku-latn.mjs +21 -1
  165. package/msg/ky.js +25 -5
  166. package/msg/ky.mjs +21 -1
  167. package/msg/la.js +24 -4
  168. package/msg/la.mjs +21 -1
  169. package/msg/lb.js +34 -14
  170. package/msg/lb.mjs +21 -1
  171. package/msg/lki.js +23 -3
  172. package/msg/lki.mjs +21 -1
  173. package/msg/lo.js +23 -3
  174. package/msg/lo.mjs +21 -1
  175. package/msg/lrc.js +23 -3
  176. package/msg/lrc.mjs +21 -1
  177. package/msg/lt.js +24 -4
  178. package/msg/lt.mjs +21 -1
  179. package/msg/lv.js +34 -14
  180. package/msg/lv.mjs +21 -1
  181. package/msg/mg.js +23 -3
  182. package/msg/mg.mjs +21 -1
  183. package/msg/mk.js +23 -3
  184. package/msg/mk.mjs +21 -1
  185. package/msg/ml.js +23 -3
  186. package/msg/ml.mjs +21 -1
  187. package/msg/mnw.js +23 -3
  188. package/msg/mnw.mjs +21 -1
  189. package/msg/ms.js +32 -12
  190. package/msg/ms.mjs +21 -1
  191. package/msg/my.js +23 -3
  192. package/msg/my.mjs +21 -1
  193. package/msg/mzn.js +24 -4
  194. package/msg/mzn.mjs +21 -1
  195. package/msg/nb.js +23 -3
  196. package/msg/nb.mjs +21 -1
  197. package/msg/ne.js +32 -12
  198. package/msg/ne.mjs +21 -1
  199. package/msg/nl.js +46 -26
  200. package/msg/nl.mjs +21 -1
  201. package/msg/oc.js +23 -3
  202. package/msg/oc.mjs +21 -1
  203. package/msg/olo.js +24 -4
  204. package/msg/olo.mjs +21 -1
  205. package/msg/pa.js +32 -12
  206. package/msg/pa.mjs +21 -1
  207. package/msg/pl.js +46 -26
  208. package/msg/pl.mjs +21 -1
  209. package/msg/pms.js +46 -26
  210. package/msg/pms.mjs +21 -1
  211. package/msg/ps.js +41 -21
  212. package/msg/ps.mjs +21 -1
  213. package/msg/pt-br.js +46 -26
  214. package/msg/pt-br.mjs +21 -1
  215. package/msg/pt.js +46 -26
  216. package/msg/pt.mjs +21 -1
  217. package/msg/ro.js +55 -35
  218. package/msg/ro.mjs +21 -1
  219. package/msg/ru.js +46 -26
  220. package/msg/ru.mjs +21 -1
  221. package/msg/sc.js +23 -3
  222. package/msg/sc.mjs +21 -1
  223. package/msg/sco.js +24 -4
  224. package/msg/sco.mjs +21 -1
  225. package/msg/sd.js +23 -3
  226. package/msg/sd.mjs +21 -1
  227. package/msg/shn.js +23 -3
  228. package/msg/shn.mjs +21 -1
  229. package/msg/si.js +24 -4
  230. package/msg/si.mjs +21 -1
  231. package/msg/sk.js +24 -4
  232. package/msg/sk.mjs +21 -1
  233. package/msg/skr-arab.js +26 -6
  234. package/msg/skr-arab.mjs +21 -1
  235. package/msg/sl.js +47 -27
  236. package/msg/sl.mjs +21 -1
  237. package/msg/smn.js +25 -5
  238. package/msg/smn.mjs +21 -1
  239. package/msg/sq.js +32 -12
  240. package/msg/sq.mjs +21 -1
  241. package/msg/sr-latn.js +23 -3
  242. package/msg/sr-latn.mjs +21 -1
  243. package/msg/sr.js +23 -3
  244. package/msg/sr.mjs +21 -1
  245. package/msg/sv.js +46 -26
  246. package/msg/sv.mjs +21 -1
  247. package/msg/sw.js +24 -4
  248. package/msg/sw.mjs +21 -1
  249. package/msg/ta.js +42 -22
  250. package/msg/ta.mjs +21 -1
  251. package/msg/tcy.js +93 -73
  252. package/msg/tcy.mjs +21 -1
  253. package/msg/tdd.js +23 -3
  254. package/msg/tdd.mjs +21 -1
  255. package/msg/te.js +23 -3
  256. package/msg/te.mjs +21 -1
  257. package/msg/th.js +24 -4
  258. package/msg/th.mjs +21 -1
  259. package/msg/ti.js +23 -3
  260. package/msg/ti.mjs +21 -1
  261. package/msg/tl.js +23 -3
  262. package/msg/tl.mjs +21 -1
  263. package/msg/tlh.js +23 -3
  264. package/msg/tlh.mjs +21 -1
  265. package/msg/tr.js +46 -26
  266. package/msg/tr.mjs +21 -1
  267. package/msg/ug-arab.js +23 -3
  268. package/msg/ug-arab.mjs +21 -1
  269. package/msg/uk.js +23 -3
  270. package/msg/uk.mjs +21 -1
  271. package/msg/ur.js +23 -3
  272. package/msg/ur.mjs +21 -1
  273. package/msg/uz.js +38 -18
  274. package/msg/uz.mjs +21 -1
  275. package/msg/vi.js +47 -27
  276. package/msg/vi.mjs +21 -1
  277. package/msg/xmf.js +23 -3
  278. package/msg/xmf.mjs +21 -1
  279. package/msg/yo.js +23 -3
  280. package/msg/yo.mjs +21 -1
  281. package/msg/zgh.js +23 -3
  282. package/msg/zgh.mjs +21 -1
  283. package/msg/zh-hans.js +46 -26
  284. package/msg/zh-hans.mjs +21 -1
  285. package/msg/zh-hant.js +46 -26
  286. package/msg/zh-hant.mjs +21 -1
  287. package/package.json +4 -4
  288. package/php_compressed.js +54 -55
  289. package/php_compressed.js.map +1 -1
  290. package/python_compressed.js +57 -57
  291. package/python_compressed.js.map +1 -1
  292. package/msg/cdo.js +0 -530
package/msg/zh-hans.mjs CHANGED
@@ -417,7 +417,6 @@ export const {
417
417
  PROCEDURES_IFRETURN_HELPURL,
418
418
  PROCEDURES_IFRETURN_WARNING,
419
419
  WORKSPACE_COMMENT_DEFAULT_TEXT,
420
- WORKSPACE_ARIA_LABEL,
421
420
  COLLAPSED_WARNINGS_WARNING,
422
421
  DIALOG_OK,
423
422
  DIALOG_CANCEL,
@@ -474,10 +473,15 @@ export const {
474
473
  SHORTCUTS_PERFORM_ACTION,
475
474
  SHORTCUTS_DUPLICATE,
476
475
  SHORTCUTS_CLEANUP,
476
+ SHORTCUTS_SHOW_TOOLTIP,
477
477
  KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT,
478
478
  KEYBOARD_NAV_CONSTRAINED_MOVE_HINT,
479
479
  KEYBOARD_NAV_COPIED_HINT,
480
480
  KEYBOARD_NAV_CUT_HINT,
481
+ WORKSPACE_LABEL_1_STACK,
482
+ WORKSPACE_LABEL_MANY_STACKS,
483
+ WORKSPACE_LABEL_MUTATOR_WORKSPACE,
484
+ WORKSPACE_LABEL_FLYOUT_WORKSPACE,
481
485
  WORKSPACE_CONTENTS_BLOCKS_MANY,
482
486
  WORKSPACE_CONTENTS_BLOCKS_ONE,
483
487
  WORKSPACE_CONTENTS_BLOCKS_ZERO,
@@ -507,5 +511,21 @@ export const {
507
511
  ANNOUNCE_MOVE_CANCELED,
508
512
  FIELD_LABEL_EMPTY,
509
513
  ARIA_TYPE_FIELD_INPUT,
514
+ ARIA_TYPE_FIELD_TEXT_INPUT,
515
+ ARIA_TYPE_FIELD_NUMBER,
516
+ ARIA_TYPE_FIELD_DROPDOWN,
517
+ ARIA_TYPE_FIELD_IMAGE,
518
+ ARIA_TYPE_FIELD_CHECKBOX,
510
519
  FIELD_LABEL_EDIT_PREFIX,
520
+ OPEN_TRASH,
521
+ ZOOM_IN,
522
+ ZOOM_OUT,
523
+ RESET_ZOOM,
524
+ FIELD_LABEL_OPTION_INDEX,
525
+ FIELD_LABEL_CHECKBOX_CHECKED,
526
+ FIELD_LABEL_CHECKBOX_UNCHECKED,
527
+ FIELD_LABEL_VARIABLE,
528
+ ARIA_LABEL_BUTTON,
529
+ ARIA_LABEL_HEADING,
530
+ BUBBLE_LABEL_DEFAULT,
511
531
  } = zh_hans;
package/msg/zh-hant.js CHANGED
@@ -18,7 +18,7 @@
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"] = "Alt";
22
22
  Blockly.Msg["ANNOUNCE_MOVE_AFTER"] = "moving %1 after %3"; // untranslated
23
23
  Blockly.Msg["ANNOUNCE_MOVE_AROUND"] = "moving %1 %2 around %3"; // untranslated
24
24
  Blockly.Msg["ANNOUNCE_MOVE_BEFORE"] = "moving %1 before %3"; // untranslated
@@ -26,7 +26,14 @@ Blockly.Msg["ANNOUNCE_MOVE_CANCELED"] = "Canceled movement"; // untranslated
26
26
  Blockly.Msg["ANNOUNCE_MOVE_INSIDE"] = "moving %1 inside %3 %4"; // untranslated
27
27
  Blockly.Msg["ANNOUNCE_MOVE_TO"] = "moving %1 %2 to %3 %4"; // untranslated
28
28
  Blockly.Msg["ANNOUNCE_MOVE_WORKSPACE"] = "moving %1 on workspace"; // untranslated
29
- Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input field"; // untranslated
29
+ Blockly.Msg["ARIA_LABEL_BUTTON"] = "button"; // untranslated
30
+ Blockly.Msg["ARIA_LABEL_HEADING"] = "heading"; // untranslated
31
+ Blockly.Msg["ARIA_TYPE_FIELD_CHECKBOX"] = "checkbox"; // untranslated
32
+ Blockly.Msg["ARIA_TYPE_FIELD_DROPDOWN"] = "dropdown"; // untranslated
33
+ Blockly.Msg["ARIA_TYPE_FIELD_IMAGE"] = "image"; // untranslated
34
+ Blockly.Msg["ARIA_TYPE_FIELD_INPUT"] = "input"; // untranslated
35
+ Blockly.Msg["ARIA_TYPE_FIELD_NUMBER"] = "number"; // untranslated
36
+ Blockly.Msg["ARIA_TYPE_FIELD_TEXT_INPUT"] = "text"; // untranslated
30
37
  Blockly.Msg["BACKSPACE_KEY"] = "Backspace"; // untranslated
31
38
  Blockly.Msg["BLOCK_LABEL_BEGIN_PREFIX"] = "Begin %1"; // untranslated
32
39
  Blockly.Msg["BLOCK_LABEL_BEGIN_STACK"] = "Begin stack"; // untranslated
@@ -37,15 +44,16 @@ Blockly.Msg["BLOCK_LABEL_HAS_INPUT"] = "has input"; // untranslated
37
44
  Blockly.Msg["BLOCK_LABEL_HAS_INPUTS"] = "has inputs"; // untranslated
38
45
  Blockly.Msg["BLOCK_LABEL_REPLACEABLE"] = "replaceable"; // untranslated
39
46
  Blockly.Msg["BLOCK_LABEL_STACK_BLOCKS"] = "%1 stack blocks"; // untranslated
40
- Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "statement"; // untranslated
47
+ Blockly.Msg["BLOCK_LABEL_STATEMENT"] = "command"; // untranslated
41
48
  Blockly.Msg["BLOCK_LABEL_TOOLBOX_CATEGORY"] = "%1 category"; // untranslated
42
49
  Blockly.Msg["BLOCK_LABEL_VALUE"] = "value"; // untranslated
50
+ Blockly.Msg["BUBBLE_LABEL_DEFAULT"] = "Bubble"; // untranslated
43
51
  Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "無法刪除變數「%1」,因為這是功能「%2」定義的一部份內容";
44
52
  Blockly.Msg["CAPS_LOCK_KEY"] = "Caps Lock"; // untranslated
45
53
  Blockly.Msg["CHANGE_VALUE_TITLE"] = "修改值:";
46
- Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
54
+ Blockly.Msg["CHROME_OS"] = "ChromeOS";
47
55
  Blockly.Msg["CLEAN_UP"] = "清理區塊";
48
- Blockly.Msg["CLOSE"] = "Close"; // untranslated
56
+ Blockly.Msg["CLOSE"] = "關閉";
49
57
  Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "收合含有警告的區塊。";
50
58
  Blockly.Msg["COLLAPSE_ALL"] = "收合區塊";
51
59
  Blockly.Msg["COLLAPSE_BLOCK"] = "收合區塊";
@@ -66,7 +74,7 @@ Blockly.Msg["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorper
66
74
  Blockly.Msg["COLOUR_RGB_RED"] = "紅";
67
75
  Blockly.Msg["COLOUR_RGB_TITLE"] = "顏色";
68
76
  Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "透過指定紅、綠、 藍色的值來建立一種顏色。所有的值必須介於 0 和 100 之間。";
69
- Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
77
+ Blockly.Msg["COMMAND_KEY"] = "⌘ Command";
70
78
  Blockly.Msg["CONTEXT_MENU_KEY"] = "≣ Menu"; // untranslated
71
79
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
72
80
  Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "中斷循環";
@@ -100,9 +108,9 @@ Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "重複直到";
100
108
  Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "重複,當";
101
109
  Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "當值為 false 時,執行一些陳述式。";
102
110
  Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "當值為 true 時,執行一些陳述式。";
103
- Blockly.Msg["CONTROL_KEY"] = "Ctrl"; // untranslated
104
- Blockly.Msg["COPY_SHORTCUT"] = "Copy"; // untranslated
105
- Blockly.Msg["CUT_SHORTCUT"] = "Cut"; // untranslated
111
+ Blockly.Msg["CONTROL_KEY"] = "Ctrl";
112
+ Blockly.Msg["COPY_SHORTCUT"] = "拷貝";
113
+ Blockly.Msg["CUT_SHORTCUT"] = "剪下";
106
114
  Blockly.Msg["DELETE_ALL_BLOCKS"] = "刪除全部 %1 個區塊?";
107
115
  Blockly.Msg["DELETE_BLOCK"] = "刪除區塊";
108
116
  Blockly.Msg["DELETE_KEY"] = "Delete"; // untranslated
@@ -114,7 +122,7 @@ Blockly.Msg["DIALOG_OK"] = "確定";
114
122
  Blockly.Msg["DISABLE_BLOCK"] = "停用區塊";
115
123
  Blockly.Msg["DUPLICATE_BLOCK"] = "再製";
116
124
  Blockly.Msg["DUPLICATE_COMMENT"] = "複製註解";
117
- Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents"; // untranslated
125
+ Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "編輯區塊內容";
118
126
  Blockly.Msg["ENABLE_BLOCK"] = "啟用區塊";
119
127
  Blockly.Msg["END_KEY"] = "End"; // untranslated
120
128
  Blockly.Msg["ENTER_KEY"] = "Enter"; // untranslated
@@ -122,21 +130,25 @@ Blockly.Msg["ESCAPE"] = "Esc"; // untranslated
122
130
  Blockly.Msg["EXPAND_ALL"] = "展開區塊";
123
131
  Blockly.Msg["EXPAND_BLOCK"] = "展開區塊";
124
132
  Blockly.Msg["EXTERNAL_INPUTS"] = "外部輸入";
133
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_CHECKED"] = "Checked"; // untranslated
134
+ Blockly.Msg["FIELD_LABEL_CHECKBOX_UNCHECKED"] = "Not checked"; // untranslated
125
135
  Blockly.Msg["FIELD_LABEL_EDIT_PREFIX"] = "Edit %1"; // untranslated
126
136
  Blockly.Msg["FIELD_LABEL_EMPTY"] = "empty"; // untranslated
137
+ Blockly.Msg["FIELD_LABEL_OPTION_INDEX"] = "Option %1"; // untranslated
138
+ Blockly.Msg["FIELD_LABEL_VARIABLE"] = "Variable '%1'"; // untranslated
127
139
  Blockly.Msg["HELP"] = "說明";
128
- Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
140
+ Blockly.Msg["HELP_PROMPT"] = "按下 %1 取得鍵盤控制說明";
129
141
  Blockly.Msg["HOME_KEY"] = "Home"; // untranslated
130
142
  Blockly.Msg["INLINE_INPUTS"] = "單行輸入";
131
143
  Blockly.Msg["INPUT_LABEL_INDEX"] = "input %1"; // untranslated
132
144
  Blockly.Msg["INSERT_KEY"] = "Insert"; // untranslated
133
145
  Blockly.Msg["KEYBOARD_NAV_BLOCK_NAVIGATION_HINT"] = "Use the right arrow key to navigate inside of blocks"; // untranslated
134
- Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "Use the arrow keys to move, then %1 to accept the position"; // untranslated
135
- Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "Copied. Press %1 to paste."; // untranslated
136
- Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "Cut. Press %1 to paste."; // untranslated
137
- Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "Hold %1 and use arrow keys to move freely, then %2 to accept the position"; // untranslated
146
+ Blockly.Msg["KEYBOARD_NAV_CONSTRAINED_MOVE_HINT"] = "使用箭頭鍵來移動,然後按下 %1 接受位置";
147
+ Blockly.Msg["KEYBOARD_NAV_COPIED_HINT"] = "已拷貝。按下 %1 貼上。";
148
+ Blockly.Msg["KEYBOARD_NAV_CUT_HINT"] = "已剪下。按下 %1 貼上。";
149
+ Blockly.Msg["KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT"] = "壓住 %1 並使用箭頭鍵來自由移動,然後按下 %2 接受位置";
138
150
  Blockly.Msg["KEYBOARD_NAV_WORKSPACE_NAVIGATION_HINT"] = "Use the arrow keys to navigate"; // untranslated
139
- Blockly.Msg["LINUX"] = "Linux"; // untranslated
151
+ Blockly.Msg["LINUX"] = "Linux";
140
152
  Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/RaspberryPiFoundation/blockly/wiki/Lists#create-empty-list"; // untranslated
141
153
  Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "建立空的清單";
142
154
  Blockly.Msg["LISTS_CREATE_EMPTY_TOOLTIP"] = "返回一個長度(項目數量)為 0 的清單,不包含任何資料記錄";
@@ -249,7 +261,7 @@ Blockly.Msg["LOGIC_TERNARY_HELPURL"] = "https://en.wikipedia.org/wiki/%3F:";
249
261
  Blockly.Msg["LOGIC_TERNARY_IF_FALSE"] = "如果為假";
250
262
  Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "如果為真";
251
263
  Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "檢查「測試」中的條件。如果條件為真,將返回「如果為真」的值;否則,返回「如果為假」的值。";
252
- Blockly.Msg["MAC_OS"] = "macOS"; // untranslated
264
+ Blockly.Msg["MAC_OS"] = "macOS";
253
265
  Blockly.Msg["MATH_ADDITION_SYMBOL"] = "+"; // untranslated
254
266
  Blockly.Msg["MATH_ARITHMETIC_HELPURL"] = "https://zh.wikipedia.org/wiki/算術";
255
267
  Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_ADD"] = "返回兩個數字的總和。";
@@ -336,18 +348,19 @@ Blockly.Msg["MATH_TRIG_TOOLTIP_ATAN"] = "返回指定數字的反正切值。";
336
348
  Blockly.Msg["MATH_TRIG_TOOLTIP_COS"] = "返回指定角度的餘弦值(非弧度)。";
337
349
  Blockly.Msg["MATH_TRIG_TOOLTIP_SIN"] = "返回指定角度的正弦值(非弧度)。";
338
350
  Blockly.Msg["MATH_TRIG_TOOLTIP_TAN"] = "返回指定角度的正切值(非弧度)。";
339
- Blockly.Msg["MOVE_BLOCK"] = "Move Block"; // untranslated
351
+ Blockly.Msg["MOVE_BLOCK"] = "移動區塊";
340
352
  Blockly.Msg["NEW_COLOUR_VARIABLE"] = "建立顏色變數…";
341
353
  Blockly.Msg["NEW_NUMBER_VARIABLE"] = "建立數值變數……";
342
354
  Blockly.Msg["NEW_STRING_VARIABLE"] = "建立字串變數……";
343
355
  Blockly.Msg["NEW_VARIABLE"] = "建立變數…";
344
356
  Blockly.Msg["NEW_VARIABLE_TITLE"] = "新變數名稱:";
345
357
  Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "新變數類型:";
346
- Blockly.Msg["OPTION_KEY"] = " Option"; // untranslated
358
+ Blockly.Msg["OPEN_TRASH"] = "Open trash"; // untranslated
359
+ Blockly.Msg["OPTION_KEY"] = "⌥ Option";
347
360
  Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
348
361
  Blockly.Msg["PAGE_DOWN_KEY"] = "Page Down"; // untranslated
349
362
  Blockly.Msg["PAGE_UP_KEY"] = "Page Up"; // untranslated
350
- Blockly.Msg["PASTE_SHORTCUT"] = "Paste"; // untranslated
363
+ Blockly.Msg["PASTE_SHORTCUT"] = "貼上";
351
364
  Blockly.Msg["PAUSE_KEY"] = "Pause"; // untranslated
352
365
  Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "允許陳述式";
353
366
  Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "與:";
@@ -380,19 +393,20 @@ Blockly.Msg["REDO"] = "重做";
380
393
  Blockly.Msg["REMOVE_COMMENT"] = "移除註解";
381
394
  Blockly.Msg["RENAME_VARIABLE"] = "重新命名變數...";
382
395
  Blockly.Msg["RENAME_VARIABLE_TITLE"] = "將所有「%1」變數重新命名為:";
396
+ Blockly.Msg["RESET_ZOOM"] = "Reset zoom"; // untranslated
383
397
  Blockly.Msg["SHIFT_KEY"] = "Shift"; // untranslated
384
398
  Blockly.Msg["SHORTCUTS_ABORT_MOVE"] = "Abort move"; // untranslated
385
399
  Blockly.Msg["SHORTCUTS_CLEANUP"] = "Clean up workspace"; // untranslated
386
- Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
400
+ Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "代碼導航";
387
401
  Blockly.Msg["SHORTCUTS_DELETE"] = "Delete"; // untranslated
388
402
  Blockly.Msg["SHORTCUTS_DISCONNECT"] = "Disconnect block"; // untranslated
389
403
  Blockly.Msg["SHORTCUTS_DUPLICATE"] = "Duplicate"; // untranslated
390
- Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
404
+ Blockly.Msg["SHORTCUTS_EDITING"] = "編輯";
391
405
  Blockly.Msg["SHORTCUTS_ESCAPE"] = "Exit"; // untranslated
392
406
  Blockly.Msg["SHORTCUTS_FINISH_MOVE"] = "Finish move"; // untranslated
393
407
  Blockly.Msg["SHORTCUTS_FOCUS_TOOLBOX"] = "Focus toolbox"; // untranslated
394
408
  Blockly.Msg["SHORTCUTS_FOCUS_WORKSPACE"] = "Focus workspace"; // untranslated
395
- Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
409
+ Blockly.Msg["SHORTCUTS_GENERAL"] = "一般";
396
410
  Blockly.Msg["SHORTCUTS_INFORMATION"] = "Announce information"; // untranslated
397
411
  Blockly.Msg["SHORTCUTS_MOVE_DOWN"] = "Move down"; // untranslated
398
412
  Blockly.Msg["SHORTCUTS_MOVE_LEFT"] = "Move left"; // untranslated
@@ -402,6 +416,7 @@ Blockly.Msg["SHORTCUTS_NEXT_STACK"] = "Next stack"; // untranslated
402
416
  Blockly.Msg["SHORTCUTS_PERFORM_ACTION"] = "Edit or confirm"; // untranslated
403
417
  Blockly.Msg["SHORTCUTS_PREVIOUS_STACK"] = "Previous stack"; // untranslated
404
418
  Blockly.Msg["SHORTCUTS_SHOW_CONTEXT_MENU"] = "Show menu"; // untranslated
419
+ Blockly.Msg["SHORTCUTS_SHOW_TOOLTIP"] = "Show tooltip"; // untranslated
405
420
  Blockly.Msg["SHORTCUTS_START_MOVE"] = "Start move"; // untranslated
406
421
  Blockly.Msg["SHORTCUTS_START_MOVE_STACK"] = "Start move stack"; // untranslated
407
422
  Blockly.Msg["SPACE_KEY"] = "Space"; // untranslated
@@ -476,7 +491,7 @@ Blockly.Msg["TEXT_TRIM_OPERATOR_RIGHT"] = "消除右側空格";
476
491
  Blockly.Msg["TEXT_TRIM_TOOLTIP"] = "複製這段文字,同時刪除兩端多餘的空格。";
477
492
  Blockly.Msg["TODAY"] = "今天";
478
493
  Blockly.Msg["UNDO"] = "還原";
479
- Blockly.Msg["UNKNOWN"] = "Unknown"; // untranslated
494
+ Blockly.Msg["UNKNOWN"] = "不明";
480
495
  Blockly.Msg["UNNAMED_KEY"] = "未命名";
481
496
  Blockly.Msg["VARIABLES_DEFAULT_NAME"] = "項目";
482
497
  Blockly.Msg["VARIABLES_GET_CREATE_SET"] = "建立「賦值 %1」";
@@ -489,14 +504,19 @@ Blockly.Msg["VARIABLES_SET_TOOLTIP"] = "設定此變數,好和輸入結果相
489
504
  Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "已存在變數「%1」。";
490
505
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "已存在名為「%1」,且用於其它類型「%2」的變數。";
491
506
  Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "已存在名為「%1」的變數,該變數作為程序「%2」的參數使用。";
492
- Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
493
- Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly工作區";
507
+ Blockly.Msg["WINDOWS"] = "Windows";
494
508
  Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "來說些事情...";
495
509
  Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_MANY"] = "%1 stacks of blocks%2 in workspace."; // untranslated
496
510
  Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ONE"] = "One stack of blocks%2 in workspace."; // untranslated
497
511
  Blockly.Msg["WORKSPACE_CONTENTS_BLOCKS_ZERO"] = "No blocks%2 in workspace."; // untranslated
498
512
  Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_MANY"] = " and %1 comments"; // untranslated
499
513
  Blockly.Msg["WORKSPACE_CONTENTS_COMMENTS_ONE"] = " and one comment"; // untranslated
514
+ Blockly.Msg["WORKSPACE_LABEL_1_STACK"] = "Blocks workspace. 1 stack of blocks"; // untranslated
515
+ Blockly.Msg["WORKSPACE_LABEL_FLYOUT_WORKSPACE"] = "%1 blocks"; // untranslated
516
+ Blockly.Msg["WORKSPACE_LABEL_MANY_STACKS"] = "Blocks workspace. %1 stacks of blocks"; // untranslated
517
+ Blockly.Msg["WORKSPACE_LABEL_MUTATOR_WORKSPACE"] = "Block editor workspace"; // untranslated
518
+ Blockly.Msg["ZOOM_IN"] = "Zoom in"; // untranslated
519
+ Blockly.Msg["ZOOM_OUT"] = "Zoom out"; // untranslated
500
520
  Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
501
521
  Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
502
522
  Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
package/msg/zh-hant.mjs CHANGED
@@ -417,7 +417,6 @@ export const {
417
417
  PROCEDURES_IFRETURN_HELPURL,
418
418
  PROCEDURES_IFRETURN_WARNING,
419
419
  WORKSPACE_COMMENT_DEFAULT_TEXT,
420
- WORKSPACE_ARIA_LABEL,
421
420
  COLLAPSED_WARNINGS_WARNING,
422
421
  DIALOG_OK,
423
422
  DIALOG_CANCEL,
@@ -474,10 +473,15 @@ export const {
474
473
  SHORTCUTS_PERFORM_ACTION,
475
474
  SHORTCUTS_DUPLICATE,
476
475
  SHORTCUTS_CLEANUP,
476
+ SHORTCUTS_SHOW_TOOLTIP,
477
477
  KEYBOARD_NAV_UNCONSTRAINED_MOVE_HINT,
478
478
  KEYBOARD_NAV_CONSTRAINED_MOVE_HINT,
479
479
  KEYBOARD_NAV_COPIED_HINT,
480
480
  KEYBOARD_NAV_CUT_HINT,
481
+ WORKSPACE_LABEL_1_STACK,
482
+ WORKSPACE_LABEL_MANY_STACKS,
483
+ WORKSPACE_LABEL_MUTATOR_WORKSPACE,
484
+ WORKSPACE_LABEL_FLYOUT_WORKSPACE,
481
485
  WORKSPACE_CONTENTS_BLOCKS_MANY,
482
486
  WORKSPACE_CONTENTS_BLOCKS_ONE,
483
487
  WORKSPACE_CONTENTS_BLOCKS_ZERO,
@@ -507,5 +511,21 @@ export const {
507
511
  ANNOUNCE_MOVE_CANCELED,
508
512
  FIELD_LABEL_EMPTY,
509
513
  ARIA_TYPE_FIELD_INPUT,
514
+ ARIA_TYPE_FIELD_TEXT_INPUT,
515
+ ARIA_TYPE_FIELD_NUMBER,
516
+ ARIA_TYPE_FIELD_DROPDOWN,
517
+ ARIA_TYPE_FIELD_IMAGE,
518
+ ARIA_TYPE_FIELD_CHECKBOX,
510
519
  FIELD_LABEL_EDIT_PREFIX,
520
+ OPEN_TRASH,
521
+ ZOOM_IN,
522
+ ZOOM_OUT,
523
+ RESET_ZOOM,
524
+ FIELD_LABEL_OPTION_INDEX,
525
+ FIELD_LABEL_CHECKBOX_CHECKED,
526
+ FIELD_LABEL_CHECKBOX_UNCHECKED,
527
+ FIELD_LABEL_VARIABLE,
528
+ ARIA_LABEL_BUTTON,
529
+ ARIA_LABEL_HEADING,
530
+ BUBBLE_LABEL_DEFAULT,
511
531
  } = zh_hant;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blockly",
3
- "version": "13.0.0-beta.1",
3
+ "version": "13.0.0-beta.2",
4
4
  "description": "Blockly is a library for building visual programming editors.",
5
5
  "keywords": [
6
6
  "blockly"
@@ -83,7 +83,7 @@
83
83
  "concurrently": "^9.0.1",
84
84
  "conventional-changelog-conventionalcommits": "^7.0.2",
85
85
  "conventional-recommended-bump": "^9.0.0",
86
- "eslint": "^9.15.0",
86
+ "eslint": "9.36.0",
87
87
  "eslint-config-google": "^0.14.0",
88
88
  "eslint-config-prettier": "^10.1.1",
89
89
  "eslint-plugin-jsdoc": "^52.0.2",
@@ -91,7 +91,7 @@
91
91
  "eslint-plugin-prettier": "^5.2.1",
92
92
  "glob": "^11.0.1",
93
93
  "globals": "^16.0.0",
94
- "google-closure-compiler": "^20260330.0.0",
94
+ "google-closure-compiler": "^20260427.0.0",
95
95
  "gulp": "^5.0.0",
96
96
  "gulp-concat": "^2.6.1",
97
97
  "gulp-gzip": "^1.4.2",
@@ -106,7 +106,7 @@
106
106
  "markdown-tables-to-json": "^0.1.7",
107
107
  "mocha": "^11.3.0",
108
108
  "patch-package": "^8.0.0",
109
- "prettier": "^3.3.3",
109
+ "prettier": "3.6.2",
110
110
  "prettier-plugin-organize-imports": "^4.0.0",
111
111
  "puppeteer-core": "^24.17.0",
112
112
  "readline-sync": "^1.4.10",