blockly 8.0.4-beta.0 → 8.0.5-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (858) hide show
  1. package/blockly.min.js +2421 -2688
  2. package/blockly_compressed.js +1499 -1994
  3. package/blockly_compressed.js.map +1 -1
  4. package/blocks/blocks.js +3 -2
  5. package/blocks/colour.js +3 -1
  6. package/blocks/lists.js +94 -22
  7. package/blocks/logic.js +14 -6
  8. package/blocks/loops.js +5 -3
  9. package/blocks/math.js +3 -1
  10. package/blocks/procedures.js +3 -1
  11. package/blocks/text.js +14 -6
  12. package/blocks/variables.js +3 -1
  13. package/blocks/variables_dynamic.js +3 -1
  14. package/blocks.d.ts +0 -2
  15. package/blocks_compressed.js +189 -171
  16. package/blocks_compressed.js.map +1 -1
  17. package/closure/goog/base.d.ts +1 -0
  18. package/closure/goog/base_minimal.d.ts +18 -0
  19. package/closure/goog/goog.d.ts +25 -0
  20. package/core/any_aliases.d.ts +1 -0
  21. package/core/any_aliases.ts +1 -0
  22. package/core/block.d.ts +779 -0
  23. package/core/{block.js → block.ts} +610 -719
  24. package/core/block_animations.d.ts +33 -0
  25. package/core/{block_animations.js → block_animations.ts} +75 -79
  26. package/core/block_drag_surface.d.ts +111 -0
  27. package/core/{block_drag_surface.js → block_drag_surface.ts} +85 -117
  28. package/core/block_dragger.d.ts +143 -0
  29. package/core/{block_dragger.js → block_dragger.ts} +139 -176
  30. package/core/block_svg.d.ts +588 -0
  31. package/core/{block_svg.js → block_svg.ts} +494 -630
  32. package/core/blockly.d.ts +562 -0
  33. package/core/blockly.js +1 -1
  34. package/core/blockly.ts +749 -0
  35. package/core/blockly_options.d.ts +69 -0
  36. package/core/blockly_options.ts +81 -0
  37. package/core/blocks.d.ts +17 -0
  38. package/core/{blocks.js → blocks.ts} +4 -8
  39. package/core/browser_events.d.ts +85 -0
  40. package/core/{browser_events.js → browser_events.ts} +98 -93
  41. package/core/bubble.d.ts +279 -0
  42. package/core/{bubble.js → bubble.ts} +277 -370
  43. package/core/bubble_dragger.d.ts +73 -0
  44. package/core/bubble_dragger.ts +229 -0
  45. package/core/bump_objects.d.ts +34 -0
  46. package/core/{bump_objects.js → bump_objects.ts} +54 -52
  47. package/core/clipboard.d.ts +42 -0
  48. package/core/clipboard.ts +91 -0
  49. package/core/comment.d.ts +113 -0
  50. package/core/{comment.js → comment.ts} +135 -185
  51. package/core/common.d.ts +129 -0
  52. package/core/{common.js → common.ts} +105 -82
  53. package/core/component_manager.d.ts +91 -0
  54. package/core/component_manager.ts +211 -0
  55. package/core/config.d.ts +23 -0
  56. package/core/{config.js → config.ts} +12 -19
  57. package/core/connection.d.ts +232 -0
  58. package/core/{connection.js → connection.ts} +187 -237
  59. package/core/connection_checker.d.ts +78 -0
  60. package/core/{connection_checker.js → connection_checker.ts} +66 -77
  61. package/core/connection_db.d.ts +91 -0
  62. package/core/{connection_db.js → connection_db.ts} +62 -87
  63. package/core/connection_type.d.ts +15 -0
  64. package/core/{connection_type.js → connection_type.ts} +8 -12
  65. package/core/constants.d.ts +15 -0
  66. package/core/{constants.js → constants.ts} +4 -8
  67. package/core/contextmenu.d.ts +80 -0
  68. package/core/{contextmenu.js → contextmenu.ts} +118 -153
  69. package/core/contextmenu_items.d.ts +77 -0
  70. package/core/contextmenu_items.ts +576 -0
  71. package/core/contextmenu_registry.d.ts +105 -0
  72. package/core/contextmenu_registry.ts +179 -0
  73. package/core/css.d.ts +24 -0
  74. package/core/{css.js → css.ts} +16 -24
  75. package/core/delete_area.d.ts +47 -0
  76. package/core/delete_area.ts +82 -0
  77. package/core/dialog.d.ts +61 -0
  78. package/core/dialog.ts +127 -0
  79. package/core/drag_target.d.ts +63 -0
  80. package/core/drag_target.ts +94 -0
  81. package/core/dropdowndiv.d.ts +155 -0
  82. package/core/{dropdowndiv.js → dropdowndiv.ts} +262 -333
  83. package/core/events/events.d.ts +102 -0
  84. package/core/events/events.ts +123 -0
  85. package/core/events/events_abstract.d.ts +51 -0
  86. package/core/events/events_abstract.ts +112 -0
  87. package/core/events/events_block_base.d.ts +31 -0
  88. package/core/events/events_block_base.ts +65 -0
  89. package/core/events/events_block_change.d.ts +55 -0
  90. package/core/events/{events_block_change.js → events_block_change.ts} +45 -48
  91. package/core/events/events_block_create.d.ts +35 -0
  92. package/core/events/{events_block_create.js → events_block_create.ts} +30 -35
  93. package/core/events/events_block_delete.d.ts +36 -0
  94. package/core/events/{events_block_delete.js → events_block_delete.ts} +34 -39
  95. package/core/events/events_block_drag.d.ts +36 -0
  96. package/core/events/events_block_drag.ts +82 -0
  97. package/core/events/events_block_move.d.ts +51 -0
  98. package/core/events/{events_block_move.js → events_block_move.ts} +54 -50
  99. package/core/events/events_bubble_open.d.ts +35 -0
  100. package/core/events/events_bubble_open.ts +82 -0
  101. package/core/events/events_click.d.ts +36 -0
  102. package/core/events/{events_click.js → events_click.ts} +27 -30
  103. package/core/events/events_comment_base.d.ts +39 -0
  104. package/core/events/events_comment_base.ts +107 -0
  105. package/core/events/events_comment_change.d.ts +43 -0
  106. package/core/events/{events_comment_change.js → events_comment_change.ts} +31 -28
  107. package/core/events/events_comment_create.d.ts +35 -0
  108. package/core/events/{events_comment_create.js → events_comment_create.ts} +24 -26
  109. package/core/events/events_comment_delete.d.ts +35 -0
  110. package/core/events/{events_comment_delete.js → events_comment_delete.ts} +20 -24
  111. package/core/events/events_comment_move.d.ts +55 -0
  112. package/core/events/{events_comment_move.js → events_comment_move.ts} +39 -42
  113. package/core/events/events_marker_move.d.ts +40 -0
  114. package/core/events/events_marker_move.ts +99 -0
  115. package/core/events/events_selected.d.ts +34 -0
  116. package/core/events/events_selected.ts +78 -0
  117. package/core/events/events_theme_change.d.ts +30 -0
  118. package/core/events/{events_theme_change.js → events_theme_change.ts} +19 -24
  119. package/core/events/events_toolbox_item_select.d.ts +34 -0
  120. package/core/events/events_toolbox_item_select.ts +79 -0
  121. package/core/events/events_trashcan_open.d.ts +31 -0
  122. package/core/events/events_trashcan_open.ts +68 -0
  123. package/core/events/events_ui.d.ts +37 -0
  124. package/core/events/{events_ui.js → events_ui.ts} +27 -26
  125. package/core/events/events_ui_base.d.ts +26 -0
  126. package/core/events/{events_ui_base.js → events_ui_base.ts} +17 -26
  127. package/core/events/events_var_base.d.ts +31 -0
  128. package/core/events/events_var_base.ts +65 -0
  129. package/core/events/events_var_create.d.ts +35 -0
  130. package/core/events/{events_var_create.js → events_var_create.ts} +24 -25
  131. package/core/events/events_var_delete.d.ts +35 -0
  132. package/core/events/{events_var_delete.js → events_var_delete.ts} +24 -25
  133. package/core/events/events_var_rename.d.ts +36 -0
  134. package/core/events/{events_var_rename.js → events_var_rename.ts} +25 -26
  135. package/core/events/events_viewport.d.ts +39 -0
  136. package/core/events/events_viewport.ts +100 -0
  137. package/core/events/utils.d.ts +272 -0
  138. package/core/events/{utils.js → utils.ts} +148 -219
  139. package/core/events/workspace_events.d.ts +36 -0
  140. package/core/events/workspace_events.ts +86 -0
  141. package/core/extensions.d.ts +107 -0
  142. package/core/{extensions.js → extensions.ts} +153 -172
  143. package/core/field.d.ts +534 -0
  144. package/core/{field.js → field.ts} +413 -489
  145. package/core/field_angle.d.ts +176 -0
  146. package/core/field_angle.ts +563 -0
  147. package/core/field_checkbox.d.ts +124 -0
  148. package/core/field_checkbox.ts +243 -0
  149. package/core/field_colour.d.ts +200 -0
  150. package/core/field_colour.ts +632 -0
  151. package/core/field_dropdown.d.ts +222 -0
  152. package/core/{field_dropdown.js → field_dropdown.ts} +277 -299
  153. package/core/field_image.d.ts +134 -0
  154. package/core/field_image.ts +282 -0
  155. package/core/field_label.d.ts +71 -0
  156. package/core/field_label.ts +152 -0
  157. package/core/field_label_serializable.d.ts +42 -0
  158. package/core/field_label_serializable.ts +76 -0
  159. package/core/field_multilineinput.d.ts +146 -0
  160. package/core/{field_multilineinput.js → field_multilineinput.ts} +166 -163
  161. package/core/field_number.d.ts +156 -0
  162. package/core/{field_number.js → field_number.ts} +110 -123
  163. package/core/field_registry.d.ts +45 -0
  164. package/core/{field_registry.js → field_registry.ts} +37 -30
  165. package/core/field_textinput.d.ts +219 -0
  166. package/core/field_textinput.ts +591 -0
  167. package/core/field_variable.d.ts +217 -0
  168. package/core/{field_variable.js → field_variable.ts} +174 -187
  169. package/core/flyout_base.d.ts +459 -0
  170. package/core/{flyout_base.js → flyout_base.ts} +429 -518
  171. package/core/flyout_button.d.ts +81 -0
  172. package/core/flyout_button.ts +292 -0
  173. package/core/flyout_horizontal.d.ts +82 -0
  174. package/core/{flyout_horizontal.js → flyout_horizontal.ts} +97 -107
  175. package/core/flyout_metrics_manager.d.ts +40 -0
  176. package/core/{flyout_metrics_manager.js → flyout_metrics_manager.ts} +22 -34
  177. package/core/flyout_vertical.d.ts +83 -0
  178. package/core/{flyout_vertical.js → flyout_vertical.ts} +106 -117
  179. package/core/generator.d.ts +205 -0
  180. package/core/{generator.js → generator.ts} +168 -193
  181. package/core/gesture.d.ts +357 -0
  182. package/core/{gesture.js → gesture.ts} +289 -369
  183. package/core/grid.d.ts +83 -0
  184. package/core/grid.ts +192 -0
  185. package/core/icon.d.ts +78 -0
  186. package/core/icon.ts +189 -0
  187. package/core/inject.d.ts +15 -0
  188. package/core/{inject.js → inject.ts} +101 -100
  189. package/core/input.d.ts +128 -0
  190. package/core/input.ts +309 -0
  191. package/core/input_types.d.ts +14 -0
  192. package/core/{input_types.js → input_types.ts} +8 -12
  193. package/core/insertion_marker_manager.d.ts +212 -0
  194. package/core/{insertion_marker_manager.js → insertion_marker_manager.ts} +234 -236
  195. package/core/interfaces/i_ast_node_location.d.ts +11 -0
  196. package/core/interfaces/{i_ast_node_location.js → i_ast_node_location.ts} +4 -7
  197. package/core/interfaces/i_ast_node_location_svg.d.ts +22 -0
  198. package/core/interfaces/i_ast_node_location_svg.ts +37 -0
  199. package/core/interfaces/i_ast_node_location_with_block.d.ts +18 -0
  200. package/core/interfaces/i_ast_node_location_with_block.ts +38 -0
  201. package/core/interfaces/i_autohideable.d.ts +18 -0
  202. package/core/interfaces/i_autohideable.ts +34 -0
  203. package/core/interfaces/i_block_dragger.d.ts +43 -0
  204. package/core/interfaces/i_block_dragger.ts +67 -0
  205. package/core/interfaces/i_bounded_element.d.ts +24 -0
  206. package/core/interfaces/i_bounded_element.ts +42 -0
  207. package/core/interfaces/i_bubble.d.ts +59 -0
  208. package/core/interfaces/i_bubble.ts +88 -0
  209. package/core/interfaces/i_collapsible_toolbox_item.d.ts +26 -0
  210. package/core/interfaces/i_collapsible_toolbox_item.ts +47 -0
  211. package/core/interfaces/i_component.d.ts +17 -0
  212. package/core/interfaces/{i_component.js → i_component.ts} +9 -14
  213. package/core/interfaces/i_connection_checker.d.ts +69 -0
  214. package/core/interfaces/i_connection_checker.ts +102 -0
  215. package/core/interfaces/i_contextmenu.d.ts +13 -0
  216. package/core/interfaces/i_contextmenu.ts +26 -0
  217. package/core/interfaces/i_copyable.d.ts +24 -0
  218. package/core/interfaces/i_copyable.ts +40 -0
  219. package/core/interfaces/i_deletable.d.ts +16 -0
  220. package/core/interfaces/{i_deletable.js → i_deletable.ts} +9 -13
  221. package/core/interfaces/i_delete_area.d.ts +25 -0
  222. package/core/interfaces/i_delete_area.ts +46 -0
  223. package/core/interfaces/i_drag_target.d.ts +53 -0
  224. package/core/interfaces/i_drag_target.ts +84 -0
  225. package/core/interfaces/i_draggable.d.ts +12 -0
  226. package/core/interfaces/{i_draggable.js → i_draggable.ts} +4 -10
  227. package/core/interfaces/i_flyout.d.ts +134 -0
  228. package/core/interfaces/i_flyout.ts +186 -0
  229. package/core/interfaces/i_keyboard_accessible.d.ts +18 -0
  230. package/core/interfaces/i_keyboard_accessible.ts +35 -0
  231. package/core/interfaces/i_metrics_manager.d.ts +117 -0
  232. package/core/interfaces/i_metrics_manager.ts +151 -0
  233. package/core/interfaces/i_movable.d.ts +16 -0
  234. package/core/interfaces/{i_movable.js → i_movable.ts} +9 -13
  235. package/core/interfaces/i_positionable.d.ts +27 -0
  236. package/core/interfaces/i_positionable.ts +50 -0
  237. package/core/interfaces/i_registrable.d.ts +11 -0
  238. package/core/interfaces/{i_registrable.js → i_registrable.ts} +3 -7
  239. package/core/interfaces/i_registrable_field.d.ts +17 -0
  240. package/core/interfaces/{i_registrable_field.js → i_registrable_field.ts} +8 -16
  241. package/core/interfaces/i_selectable.d.ts +18 -0
  242. package/core/interfaces/i_selectable.ts +34 -0
  243. package/core/interfaces/i_selectable_toolbox_item.d.ts +42 -0
  244. package/core/interfaces/i_selectable_toolbox_item.ts +64 -0
  245. package/core/interfaces/i_serializer.d.ts +42 -0
  246. package/core/interfaces/i_serializer.ts +65 -0
  247. package/core/interfaces/i_styleable.d.ts +21 -0
  248. package/core/interfaces/i_styleable.ts +35 -0
  249. package/core/interfaces/i_toolbox.d.ts +85 -0
  250. package/core/interfaces/i_toolbox.ts +127 -0
  251. package/core/interfaces/i_toolbox_item.d.ts +62 -0
  252. package/core/interfaces/i_toolbox_item.ts +84 -0
  253. package/core/internal_constants.d.ts +40 -0
  254. package/core/{internal_constants.js → internal_constants.ts} +13 -18
  255. package/core/keyboard_nav/ast_node.d.ts +239 -0
  256. package/core/keyboard_nav/{ast_node.js → ast_node.ts} +207 -231
  257. package/core/keyboard_nav/basic_cursor.d.ts +88 -0
  258. package/core/keyboard_nav/{basic_cursor.js → basic_cursor.ts} +55 -66
  259. package/core/keyboard_nav/cursor.d.ts +41 -0
  260. package/core/keyboard_nav/{cursor.js → cursor.ts} +25 -35
  261. package/core/keyboard_nav/marker.d.ts +58 -0
  262. package/core/keyboard_nav/{marker.js → marker.ts} +36 -55
  263. package/core/keyboard_nav/tab_navigate_cursor.d.ts +19 -0
  264. package/core/keyboard_nav/{tab_navigate_cursor.js → tab_navigate_cursor.ts} +11 -15
  265. package/core/main.d.ts +11 -0
  266. package/core/main.js +303 -0
  267. package/core/marker_manager.d.ts +85 -0
  268. package/core/marker_manager.ts +181 -0
  269. package/core/menu.d.ts +149 -0
  270. package/core/{menu.js → menu.ts} +141 -174
  271. package/core/menuitem.d.ts +118 -0
  272. package/core/menuitem.ts +240 -0
  273. package/core/metrics_manager.d.ts +201 -0
  274. package/core/{metrics_manager.js → metrics_manager.ts} +117 -156
  275. package/core/msg.d.ts +9 -0
  276. package/core/{msg.js → msg.ts} +4 -8
  277. package/core/mutator.d.ts +128 -0
  278. package/core/{mutator.js → mutator.ts} +196 -211
  279. package/core/names.d.ts +124 -0
  280. package/core/names.ts +267 -0
  281. package/core/options.d.ts +137 -0
  282. package/core/{options.js → options.ts} +147 -173
  283. package/core/positionable_helpers.d.ts +88 -0
  284. package/core/{positionable_helpers.js → positionable_helpers.ts} +63 -70
  285. package/core/procedures.d.ts +108 -0
  286. package/core/{procedures.js → procedures.ts} +143 -152
  287. package/core/registry.d.ts +137 -0
  288. package/core/registry.ts +339 -0
  289. package/core/rendered_connection.d.ts +191 -0
  290. package/core/{rendered_connection.js → rendered_connection.ts} +164 -184
  291. package/core/renderers/common/block_rendering.d.ts +114 -0
  292. package/core/renderers/common/block_rendering.ts +164 -0
  293. package/core/renderers/common/constants.d.ts +458 -0
  294. package/core/renderers/common/constants.ts +1124 -0
  295. package/core/renderers/common/debug.d.ts +28 -0
  296. package/core/renderers/common/{debug.js → debug.ts} +14 -20
  297. package/core/renderers/common/debugger.d.ts +120 -0
  298. package/core/renderers/common/{debugger.js → debugger.ts} +100 -124
  299. package/core/renderers/common/drawer.d.ts +132 -0
  300. package/core/renderers/common/{drawer.js → drawer.ts} +112 -137
  301. package/core/renderers/common/i_path_object.d.ts +117 -0
  302. package/core/renderers/common/i_path_object.ts +161 -0
  303. package/core/renderers/common/info.d.ts +194 -0
  304. package/core/renderers/common/{info.js → info.ts} +165 -222
  305. package/core/renderers/common/marker_svg.d.ts +220 -0
  306. package/core/renderers/common/marker_svg.ts +680 -0
  307. package/core/renderers/common/path_object.d.ts +146 -0
  308. package/core/renderers/common/path_object.ts +272 -0
  309. package/core/renderers/common/renderer.d.ts +157 -0
  310. package/core/renderers/common/renderer.ts +271 -0
  311. package/core/renderers/geras/constants.d.ts +23 -0
  312. package/core/renderers/geras/constants.ts +61 -0
  313. package/core/renderers/geras/drawer.d.ts +43 -0
  314. package/core/renderers/geras/{drawer.js → drawer.ts} +40 -84
  315. package/core/renderers/geras/geras.d.ts +11 -0
  316. package/core/renderers/geras/geras.ts +37 -0
  317. package/core/renderers/geras/highlight_constants.d.ts +108 -0
  318. package/core/renderers/geras/{highlight_constants.js → highlight_constants.ts} +107 -69
  319. package/core/renderers/geras/highlighter.d.ts +98 -0
  320. package/core/renderers/geras/{highlighter.js → highlighter.ts} +81 -86
  321. package/core/renderers/geras/info.d.ts +45 -0
  322. package/core/renderers/geras/{info.js → info.ts} +61 -99
  323. package/core/renderers/geras/measurables/inline_input.d.ts +23 -0
  324. package/core/renderers/geras/measurables/inline_input.ts +51 -0
  325. package/core/renderers/geras/measurables/statement_input.d.ts +23 -0
  326. package/core/renderers/geras/measurables/statement_input.ts +50 -0
  327. package/core/renderers/geras/path_object.d.ts +47 -0
  328. package/core/renderers/geras/{path_object.js → path_object.ts} +46 -74
  329. package/core/renderers/geras/renderer.d.ts +69 -0
  330. package/core/renderers/geras/renderer.ts +126 -0
  331. package/core/renderers/measurables/base.d.ts +27 -0
  332. package/core/renderers/measurables/base.ts +53 -0
  333. package/core/renderers/measurables/bottom_row.d.ts +61 -0
  334. package/core/renderers/measurables/bottom_row.ts +120 -0
  335. package/core/renderers/measurables/connection.d.ts +25 -0
  336. package/core/renderers/measurables/connection.ts +52 -0
  337. package/core/renderers/measurables/external_value_input.d.ts +27 -0
  338. package/core/renderers/measurables/external_value_input.ts +65 -0
  339. package/core/renderers/measurables/field.d.ts +30 -0
  340. package/core/renderers/measurables/field.ts +63 -0
  341. package/core/renderers/measurables/hat.d.ts +21 -0
  342. package/core/renderers/measurables/{hat.js → hat.ts} +12 -14
  343. package/core/renderers/measurables/icon.d.ts +26 -0
  344. package/core/renderers/measurables/{icon.js → icon.ts} +14 -18
  345. package/core/renderers/measurables/in_row_spacer.d.ts +21 -0
  346. package/core/renderers/measurables/in_row_spacer.ts +44 -0
  347. package/core/renderers/measurables/inline_input.d.ts +24 -0
  348. package/core/renderers/measurables/{inline_input.js → inline_input.ts} +22 -26
  349. package/core/renderers/measurables/input_connection.d.ts +29 -0
  350. package/core/renderers/measurables/input_connection.ts +66 -0
  351. package/core/renderers/measurables/input_row.d.ts +30 -0
  352. package/core/renderers/measurables/{input_row.js → input_row.ts} +24 -31
  353. package/core/renderers/measurables/jagged_edge.d.ts +20 -0
  354. package/core/renderers/measurables/{jagged_edge.js → jagged_edge.ts} +10 -13
  355. package/core/renderers/measurables/next_connection.d.ts +23 -0
  356. package/core/renderers/measurables/next_connection.ts +47 -0
  357. package/core/renderers/measurables/output_connection.d.ts +26 -0
  358. package/core/renderers/measurables/output_connection.ts +56 -0
  359. package/core/renderers/measurables/previous_connection.d.ts +23 -0
  360. package/core/renderers/measurables/previous_connection.ts +47 -0
  361. package/core/renderers/measurables/round_corner.d.ts +21 -0
  362. package/core/renderers/measurables/round_corner.ts +49 -0
  363. package/core/renderers/measurables/row.d.ts +141 -0
  364. package/core/renderers/measurables/row.ts +225 -0
  365. package/core/renderers/measurables/spacer_row.d.ts +29 -0
  366. package/core/renderers/measurables/spacer_row.ts +55 -0
  367. package/core/renderers/measurables/square_corner.d.ts +21 -0
  368. package/core/renderers/measurables/square_corner.ts +47 -0
  369. package/core/renderers/measurables/statement_input.d.ts +22 -0
  370. package/core/renderers/measurables/{statement_input.js → statement_input.ts} +14 -18
  371. package/core/renderers/measurables/top_row.d.ts +56 -0
  372. package/core/renderers/measurables/top_row.ts +122 -0
  373. package/core/renderers/measurables/types.d.ts +235 -0
  374. package/core/renderers/measurables/types.ts +332 -0
  375. package/core/renderers/minimalist/constants.d.ts +14 -0
  376. package/core/renderers/minimalist/{constants.js → constants.ts} +5 -10
  377. package/core/renderers/minimalist/drawer.d.ts +21 -0
  378. package/core/renderers/minimalist/drawer.ts +38 -0
  379. package/core/renderers/minimalist/info.d.ts +30 -0
  380. package/core/renderers/minimalist/info.ts +52 -0
  381. package/core/renderers/minimalist/minimalist.d.ts +6 -0
  382. package/core/renderers/minimalist/minimalist.ts +22 -0
  383. package/core/renderers/minimalist/renderer.d.ts +41 -0
  384. package/core/renderers/minimalist/renderer.ts +71 -0
  385. package/core/renderers/thrasos/info.d.ts +40 -0
  386. package/core/renderers/thrasos/{info.js → info.ts} +66 -67
  387. package/core/renderers/thrasos/renderer.d.ts +25 -0
  388. package/core/renderers/thrasos/renderer.ts +48 -0
  389. package/core/renderers/thrasos/thrasos.d.ts +4 -0
  390. package/core/renderers/thrasos/thrasos.ts +20 -0
  391. package/core/renderers/zelos/constants.d.ts +186 -0
  392. package/core/renderers/zelos/{constants.js → constants.ts} +294 -441
  393. package/core/renderers/zelos/drawer.d.ts +47 -0
  394. package/core/renderers/zelos/{drawer.js → drawer.ts} +73 -95
  395. package/core/renderers/zelos/info.d.ts +88 -0
  396. package/core/renderers/zelos/{info.js → info.ts} +111 -142
  397. package/core/renderers/zelos/marker_svg.d.ts +46 -0
  398. package/core/renderers/zelos/marker_svg.ts +151 -0
  399. package/core/renderers/zelos/measurables/bottom_row.d.ts +27 -0
  400. package/core/renderers/zelos/measurables/bottom_row.ts +53 -0
  401. package/core/renderers/zelos/measurables/inputs.d.ts +23 -0
  402. package/core/renderers/zelos/measurables/{inputs.js → inputs.ts} +14 -15
  403. package/core/renderers/zelos/measurables/row_elements.d.ts +21 -0
  404. package/core/renderers/zelos/measurables/row_elements.ts +45 -0
  405. package/core/renderers/zelos/measurables/top_row.d.ts +29 -0
  406. package/core/renderers/zelos/measurables/{top_row.js → top_row.ts} +14 -27
  407. package/core/renderers/zelos/path_object.d.ts +77 -0
  408. package/core/renderers/zelos/path_object.ts +215 -0
  409. package/core/renderers/zelos/renderer.d.ts +74 -0
  410. package/core/renderers/zelos/renderer.ts +142 -0
  411. package/core/renderers/zelos/zelos.d.ts +12 -0
  412. package/core/renderers/zelos/zelos.ts +39 -0
  413. package/core/scrollbar.d.ts +277 -0
  414. package/core/{scrollbar.js → scrollbar.ts} +307 -328
  415. package/core/scrollbar_pair.d.ts +105 -0
  416. package/core/{scrollbar_pair.js → scrollbar_pair.ts} +71 -79
  417. package/core/serialization/blocks.d.ts +98 -0
  418. package/core/serialization/{blocks.js → blocks.ts} +229 -228
  419. package/core/serialization/exceptions.d.ts +73 -0
  420. package/core/serialization/exceptions.ts +98 -0
  421. package/core/serialization/priorities.d.ts +15 -0
  422. package/core/serialization/{priorities.js → priorities.ts} +4 -10
  423. package/core/serialization/registry.d.ts +20 -0
  424. package/core/serialization/{registry.js → registry.ts} +11 -13
  425. package/core/serialization/variables.d.ts +14 -0
  426. package/core/serialization/{variables.js → variables.ts} +30 -32
  427. package/core/serialization/workspaces.d.ts +28 -0
  428. package/core/serialization/{workspaces.js → workspaces.ts} +30 -27
  429. package/core/shortcut_items.d.ts +61 -0
  430. package/core/{shortcut_items.js → shortcut_items.ts} +121 -157
  431. package/core/shortcut_registry.d.ts +151 -0
  432. package/core/shortcut_registry.ts +355 -0
  433. package/core/sprites.d.ts +19 -0
  434. package/core/{sprites.js → sprites.ts} +4 -6
  435. package/core/theme/classic.d.ts +12 -0
  436. package/core/theme/{classic.js → classic.ts} +5 -7
  437. package/core/theme/themes.d.ts +8 -0
  438. package/core/theme/themes.ts +22 -0
  439. package/core/theme/zelos.d.ts +11 -0
  440. package/core/theme/{zelos.js → zelos.ts} +4 -7
  441. package/core/theme.d.ts +142 -0
  442. package/core/theme.ts +221 -0
  443. package/core/theme_manager.d.ts +81 -0
  444. package/core/theme_manager.ts +186 -0
  445. package/core/toolbox/category.d.ts +239 -0
  446. package/core/toolbox/category.ts +679 -0
  447. package/core/toolbox/collapsible_category.d.ts +91 -0
  448. package/core/toolbox/collapsible_category.ts +273 -0
  449. package/core/toolbox/separator.d.ts +39 -0
  450. package/core/toolbox/separator.ts +105 -0
  451. package/core/toolbox/toolbox.d.ts +352 -0
  452. package/core/toolbox/{toolbox.js → toolbox.ts} +316 -432
  453. package/core/toolbox/toolbox_item.d.ts +85 -0
  454. package/core/toolbox/toolbox_item.ts +147 -0
  455. package/core/tooltip.d.ts +126 -0
  456. package/core/{tooltip.js → tooltip.ts} +136 -214
  457. package/core/touch.d.ts +121 -0
  458. package/core/touch.ts +306 -0
  459. package/core/touch_gesture.d.ts +115 -0
  460. package/core/{touch_gesture.js → touch_gesture.ts} +87 -125
  461. package/core/trashcan.d.ts +195 -0
  462. package/core/{trashcan.js → trashcan.ts} +226 -312
  463. package/core/utils/aria.d.ts +67 -0
  464. package/core/utils/{aria.js → aria.ts} +47 -61
  465. package/core/utils/array.d.ts +14 -0
  466. package/core/utils/{array.js → array.ts} +10 -12
  467. package/core/utils/colour.d.ts +103 -0
  468. package/core/utils/{colour.js → colour.ts} +60 -72
  469. package/core/utils/coordinate.d.ts +72 -0
  470. package/core/utils/coordinate.ts +124 -0
  471. package/core/utils/deprecation.d.ts +17 -0
  472. package/core/utils/{deprecation.js → deprecation.ts} +11 -11
  473. package/core/utils/dom.d.ts +165 -0
  474. package/core/utils/{dom.js → dom.ts} +125 -147
  475. package/core/utils/idgenerator.d.ts +25 -0
  476. package/core/utils/{idgenerator.js → idgenerator.ts} +15 -18
  477. package/core/utils/keycodes.d.ts +137 -0
  478. package/core/utils/keycodes.ts +169 -0
  479. package/core/utils/math.d.ts +30 -0
  480. package/core/utils/{math.js → math.ts} +17 -19
  481. package/core/utils/metrics.d.ts +64 -0
  482. package/core/utils/metrics.ts +97 -0
  483. package/core/utils/object.d.ts +35 -0
  484. package/core/utils/{object.js → object.ts} +30 -26
  485. package/core/utils/parsing.d.ts +50 -0
  486. package/core/utils/{parsing.js → parsing.ts} +50 -50
  487. package/core/utils/rect.d.ts +38 -0
  488. package/core/utils/{rect.js → rect.ts} +18 -31
  489. package/core/utils/sentinel.d.ts +11 -0
  490. package/core/utils/{sentinel.js → sentinel.ts} +3 -5
  491. package/core/utils/size.d.ts +27 -0
  492. package/core/utils/{size.js → size.ts} +12 -26
  493. package/core/utils/string.d.ts +55 -0
  494. package/core/utils/{string.js → string.ts} +64 -61
  495. package/core/utils/style.d.ts +127 -0
  496. package/core/utils/{style.js → style.ts} +102 -92
  497. package/core/utils/svg.d.ts +68 -0
  498. package/core/utils/svg.ts +88 -0
  499. package/core/utils/svg_math.d.ts +70 -0
  500. package/core/utils/{svg_math.js → svg_math.ts} +72 -71
  501. package/core/utils/svg_paths.d.ts +101 -0
  502. package/core/utils/{svg_paths.js → svg_paths.ts} +56 -65
  503. package/core/utils/toolbox.d.ts +193 -0
  504. package/core/utils/toolbox.ts +433 -0
  505. package/core/utils/useragent.d.ts +33 -0
  506. package/core/utils/useragent.ts +135 -0
  507. package/core/utils/xml.d.ts +52 -0
  508. package/core/utils/{xml.js → xml.ts} +26 -36
  509. package/core/utils.d.ts +217 -0
  510. package/core/utils.ts +428 -0
  511. package/core/variable_map.d.ts +141 -0
  512. package/core/{variable_map.js → variable_map.ts} +131 -149
  513. package/core/variable_model.d.ts +40 -0
  514. package/core/variable_model.ts +82 -0
  515. package/core/variables.d.ts +181 -0
  516. package/core/{variables.js → variables.ts} +206 -188
  517. package/core/variables_dynamic.d.ts +38 -0
  518. package/core/{variables_dynamic.js → variables_dynamic.ts} +47 -43
  519. package/core/warning.d.ts +50 -0
  520. package/core/{warning.js → warning.ts} +52 -66
  521. package/core/widgetdiv.d.ts +69 -0
  522. package/core/widgetdiv.ts +257 -0
  523. package/core/workspace.d.ts +386 -0
  524. package/core/workspace.ts +801 -0
  525. package/core/workspace_audio.d.ts +47 -0
  526. package/core/{workspace_audio.js → workspace_audio.ts} +47 -60
  527. package/core/workspace_comment.d.ts +170 -0
  528. package/core/workspace_comment.ts +398 -0
  529. package/core/workspace_comment_svg.d.ts +329 -0
  530. package/core/{workspace_comment_svg.js → workspace_comment_svg.ts} +347 -444
  531. package/core/workspace_drag_surface_svg.d.ts +68 -0
  532. package/core/{workspace_drag_surface_svg.js → workspace_drag_surface_svg.ts} +75 -82
  533. package/core/workspace_dragger.d.ts +48 -0
  534. package/core/workspace_dragger.ts +104 -0
  535. package/core/workspace_svg.d.ts +920 -0
  536. package/core/{workspace_svg.js → workspace_svg.ts} +855 -935
  537. package/core/xml.d.ts +117 -0
  538. package/core/{xml.js → xml.ts} +306 -326
  539. package/core/zoom_controls.d.ts +130 -0
  540. package/core/{zoom_controls.js → zoom_controls.ts} +185 -251
  541. package/core.d.ts +1 -3
  542. package/core.js +1 -2
  543. package/dart.d.ts +0 -3
  544. package/dart_compressed.js +387 -99
  545. package/dart_compressed.js.map +1 -1
  546. package/generators/dart/all.js +2 -0
  547. package/generators/dart/colour.js +1 -1
  548. package/generators/dart/lists.js +1 -1
  549. package/generators/dart/logic.js +1 -1
  550. package/generators/dart/loops.js +1 -1
  551. package/generators/dart/math.js +1 -1
  552. package/generators/dart/procedures.js +1 -1
  553. package/generators/dart/text.js +1 -1
  554. package/generators/dart/variables.js +1 -1
  555. package/generators/dart/variables_dynamic.js +1 -1
  556. package/generators/dart.js +1 -2
  557. package/generators/javascript/all.js +2 -0
  558. package/generators/javascript/colour.js +1 -1
  559. package/generators/javascript/lists.js +1 -1
  560. package/generators/javascript/logic.js +1 -1
  561. package/generators/javascript/loops.js +1 -1
  562. package/generators/javascript/math.js +4 -4
  563. package/generators/javascript/procedures.js +1 -1
  564. package/generators/javascript/text.js +2 -2
  565. package/generators/javascript/variables.js +1 -1
  566. package/generators/javascript/variables_dynamic.js +1 -1
  567. package/generators/javascript.js +1 -3
  568. package/generators/lua/all.js +2 -0
  569. package/generators/lua/colour.js +1 -1
  570. package/generators/lua/lists.js +1 -1
  571. package/generators/lua/logic.js +1 -1
  572. package/generators/lua/loops.js +1 -1
  573. package/generators/lua/math.js +1 -1
  574. package/generators/lua/procedures.js +1 -1
  575. package/generators/lua/text.js +1 -1
  576. package/generators/lua/variables.js +1 -1
  577. package/generators/lua/variables_dynamic.js +1 -1
  578. package/generators/lua.js +1 -2
  579. package/generators/php/all.js +2 -0
  580. package/generators/php/colour.js +1 -1
  581. package/generators/php/lists.js +1 -2
  582. package/generators/php/logic.js +1 -1
  583. package/generators/php/loops.js +1 -1
  584. package/generators/php/math.js +1 -1
  585. package/generators/php/procedures.js +1 -1
  586. package/generators/php/text.js +1 -1
  587. package/generators/php/variables.js +1 -1
  588. package/generators/php/variables_dynamic.js +1 -1
  589. package/generators/php.js +1 -2
  590. package/generators/python/all.js +2 -0
  591. package/generators/python/colour.js +3 -3
  592. package/generators/python/lists.js +1 -1
  593. package/generators/python/logic.js +1 -1
  594. package/generators/python/loops.js +4 -7
  595. package/generators/python/math.js +1 -1
  596. package/generators/python/procedures.js +1 -1
  597. package/generators/python/text.js +1 -1
  598. package/generators/python/variables.js +1 -1
  599. package/generators/python/variables_dynamic.js +1 -1
  600. package/generators/python.js +1 -2
  601. package/index.d.ts +2 -8
  602. package/javascript.d.ts +0 -3
  603. package/javascript_compressed.js +314 -104
  604. package/javascript_compressed.js.map +1 -1
  605. package/lua.d.ts +0 -3
  606. package/lua_compressed.js +399 -81
  607. package/lua_compressed.js.map +1 -1
  608. package/msg/ab.js +421 -421
  609. package/msg/ace.js +421 -421
  610. package/msg/af.js +421 -421
  611. package/msg/am.js +421 -421
  612. package/msg/ar.js +421 -421
  613. package/msg/ast.js +421 -421
  614. package/msg/az.js +421 -421
  615. package/msg/ba.js +421 -421
  616. package/msg/bcc.js +421 -421
  617. package/msg/be-tarask.js +421 -421
  618. package/msg/be.js +421 -421
  619. package/msg/bg.js +421 -421
  620. package/msg/bn.js +421 -421
  621. package/msg/br.js +421 -421
  622. package/msg/bs.js +421 -421
  623. package/msg/ca.js +421 -421
  624. package/msg/cdo.js +421 -421
  625. package/msg/cs.js +421 -421
  626. package/msg/da.js +421 -421
  627. package/msg/de.js +421 -421
  628. package/msg/diq.js +421 -421
  629. package/msg/dty.js +421 -421
  630. package/msg/ee.js +421 -421
  631. package/msg/el.js +421 -421
  632. package/msg/en-gb.js +421 -421
  633. package/msg/en.js +421 -421
  634. package/msg/eo.js +421 -421
  635. package/msg/es.js +421 -421
  636. package/msg/et.js +421 -421
  637. package/msg/eu.js +421 -421
  638. package/msg/fa.js +421 -421
  639. package/msg/fi.js +421 -421
  640. package/msg/fo.js +421 -421
  641. package/msg/fr.js +421 -421
  642. package/msg/frr.js +421 -421
  643. package/msg/gl.js +421 -421
  644. package/msg/gn.js +421 -421
  645. package/msg/gor.js +421 -421
  646. package/msg/ha.js +421 -421
  647. package/msg/hak.js +421 -421
  648. package/msg/he.js +421 -421
  649. package/msg/hi.js +421 -421
  650. package/msg/hr.js +421 -421
  651. package/msg/hrx.js +421 -421
  652. package/msg/hu.js +421 -421
  653. package/msg/hy.js +421 -421
  654. package/msg/ia.js +421 -421
  655. package/msg/id.js +421 -421
  656. package/msg/ig.js +421 -421
  657. package/msg/inh.js +421 -421
  658. package/msg/is.js +421 -421
  659. package/msg/it.js +421 -421
  660. package/msg/ja.js +421 -421
  661. package/msg/ka.js +421 -421
  662. package/msg/kab.js +421 -421
  663. package/msg/kbd-cyrl.js +421 -421
  664. package/msg/km.js +421 -421
  665. package/msg/kn.js +421 -421
  666. package/msg/ko.js +421 -421
  667. package/msg/ksh.js +421 -421
  668. package/msg/ku-latn.js +421 -421
  669. package/msg/ky.js +421 -421
  670. package/msg/la.js +421 -421
  671. package/msg/lb.js +421 -421
  672. package/msg/lki.js +421 -421
  673. package/msg/lo.js +421 -421
  674. package/msg/lrc.js +421 -421
  675. package/msg/lt.js +421 -421
  676. package/msg/lv.js +421 -421
  677. package/msg/mg.js +421 -421
  678. package/msg/mk.js +421 -421
  679. package/msg/ml.js +421 -421
  680. package/msg/mnw.js +421 -421
  681. package/msg/ms.js +421 -421
  682. package/msg/my.js +421 -421
  683. package/msg/mzn.js +421 -421
  684. package/msg/nb.js +421 -421
  685. package/msg/ne.js +421 -421
  686. package/msg/nl.js +421 -421
  687. package/msg/oc.js +421 -421
  688. package/msg/olo.js +421 -421
  689. package/msg/pa.js +421 -421
  690. package/msg/pl.js +421 -421
  691. package/msg/pms.js +421 -421
  692. package/msg/ps.js +421 -421
  693. package/msg/pt-br.js +421 -421
  694. package/msg/pt.js +421 -421
  695. package/msg/ro.js +421 -421
  696. package/msg/ru.js +421 -421
  697. package/msg/sc.js +421 -421
  698. package/msg/sco.js +421 -421
  699. package/msg/sd.js +421 -421
  700. package/msg/shn.js +421 -421
  701. package/msg/si.js +421 -421
  702. package/msg/sk.js +421 -421
  703. package/msg/skr-arab.js +421 -421
  704. package/msg/sl.js +421 -421
  705. package/msg/smn.js +421 -421
  706. package/msg/sq.js +421 -421
  707. package/msg/sr-latn.js +421 -421
  708. package/msg/sr.js +421 -421
  709. package/msg/sv.js +421 -421
  710. package/msg/sw.js +421 -421
  711. package/msg/ta.js +421 -421
  712. package/msg/tcy.js +421 -421
  713. package/msg/te.js +421 -421
  714. package/msg/th.js +421 -421
  715. package/msg/ti.js +421 -421
  716. package/msg/tl.js +421 -421
  717. package/msg/tlh.js +421 -421
  718. package/msg/tr.js +421 -421
  719. package/msg/ug-arab.js +421 -421
  720. package/msg/uk.js +421 -421
  721. package/msg/ur.js +421 -421
  722. package/msg/uz.js +421 -421
  723. package/msg/vi.js +421 -421
  724. package/msg/xmf.js +421 -421
  725. package/msg/yo.js +421 -421
  726. package/msg/yue.js +421 -421
  727. package/msg/zgh.js +421 -421
  728. package/msg/zh-hans.js +421 -421
  729. package/msg/zh-hant.js +421 -421
  730. package/package.json +5 -5
  731. package/php.d.ts +0 -3
  732. package/php_compressed.js +322 -93
  733. package/php_compressed.js.map +1 -1
  734. package/python.d.ts +0 -3
  735. package/python_compressed.js +237 -90
  736. package/python_compressed.js.map +1 -1
  737. package/blockly.d.ts +0 -26127
  738. package/core/blockly_options.js +0 -28
  739. package/core/bubble_dragger.js +0 -298
  740. package/core/clipboard.js +0 -80
  741. package/core/component_manager.js +0 -263
  742. package/core/contextmenu_items.js +0 -651
  743. package/core/contextmenu_registry.js +0 -178
  744. package/core/delete_area.js +0 -87
  745. package/core/dialog.js +0 -107
  746. package/core/drag_target.js +0 -98
  747. package/core/events/events.js +0 -147
  748. package/core/events/events_abstract.js +0 -133
  749. package/core/events/events_block_base.js +0 -70
  750. package/core/events/events_block_drag.js +0 -89
  751. package/core/events/events_bubble_open.js +0 -90
  752. package/core/events/events_comment_base.js +0 -121
  753. package/core/events/events_marker_move.js +0 -110
  754. package/core/events/events_selected.js +0 -83
  755. package/core/events/events_toolbox_item_select.js +0 -84
  756. package/core/events/events_trashcan_open.js +0 -73
  757. package/core/events/events_var_base.js +0 -70
  758. package/core/events/events_viewport.js +0 -107
  759. package/core/events/workspace_events.js +0 -93
  760. package/core/field_angle.js +0 -591
  761. package/core/field_checkbox.js +0 -255
  762. package/core/field_colour.js +0 -717
  763. package/core/field_image.js +0 -304
  764. package/core/field_label.js +0 -149
  765. package/core/field_label_serializable.js +0 -80
  766. package/core/field_textinput.js +0 -619
  767. package/core/flyout_button.js +0 -356
  768. package/core/grid.js +0 -226
  769. package/core/icon.js +0 -225
  770. package/core/input.js +0 -335
  771. package/core/interfaces/i_ast_node_location_svg.js +0 -45
  772. package/core/interfaces/i_ast_node_location_with_block.js +0 -41
  773. package/core/interfaces/i_autohideable.js +0 -40
  774. package/core/interfaces/i_block_dragger.js +0 -66
  775. package/core/interfaces/i_bounded_element.js +0 -45
  776. package/core/interfaces/i_bubble.js +0 -95
  777. package/core/interfaces/i_collapsible_toolbox_item.js +0 -53
  778. package/core/interfaces/i_connection_checker.js +0 -104
  779. package/core/interfaces/i_contextmenu.js +0 -32
  780. package/core/interfaces/i_copyable.js +0 -49
  781. package/core/interfaces/i_delete_area.js +0 -50
  782. package/core/interfaces/i_drag_target.js +0 -88
  783. package/core/interfaces/i_flyout.js +0 -201
  784. package/core/interfaces/i_keyboard_accessible.js +0 -38
  785. package/core/interfaces/i_metrics_manager.js +0 -154
  786. package/core/interfaces/i_positionable.js +0 -51
  787. package/core/interfaces/i_selectable.js +0 -51
  788. package/core/interfaces/i_selectable_toolbox_item.js +0 -73
  789. package/core/interfaces/i_serializer.js +0 -77
  790. package/core/interfaces/i_styleable.js +0 -39
  791. package/core/interfaces/i_toolbox.js +0 -142
  792. package/core/interfaces/i_toolbox_item.js +0 -85
  793. package/core/marker_manager.js +0 -213
  794. package/core/menuitem.js +0 -292
  795. package/core/names.js +0 -293
  796. package/core/registry.js +0 -384
  797. package/core/renderers/common/block_rendering.js +0 -170
  798. package/core/renderers/common/constants.js +0 -1250
  799. package/core/renderers/common/i_path_object.js +0 -162
  800. package/core/renderers/common/marker_svg.js +0 -721
  801. package/core/renderers/common/path_object.js +0 -283
  802. package/core/renderers/common/renderer.js +0 -305
  803. package/core/renderers/geras/constants.js +0 -73
  804. package/core/renderers/geras/geras.js +0 -36
  805. package/core/renderers/geras/measurables/inline_input.js +0 -58
  806. package/core/renderers/geras/measurables/statement_input.js +0 -57
  807. package/core/renderers/geras/renderer.js +0 -149
  808. package/core/renderers/measurables/base.js +0 -64
  809. package/core/renderers/measurables/bottom_row.js +0 -138
  810. package/core/renderers/measurables/connection.js +0 -56
  811. package/core/renderers/measurables/external_value_input.js +0 -70
  812. package/core/renderers/measurables/field.js +0 -71
  813. package/core/renderers/measurables/in_row_spacer.js +0 -47
  814. package/core/renderers/measurables/input_connection.js +0 -75
  815. package/core/renderers/measurables/next_connection.js +0 -50
  816. package/core/renderers/measurables/output_connection.js +0 -61
  817. package/core/renderers/measurables/previous_connection.js +0 -50
  818. package/core/renderers/measurables/round_corner.js +0 -52
  819. package/core/renderers/measurables/row.js +0 -247
  820. package/core/renderers/measurables/spacer_row.js +0 -69
  821. package/core/renderers/measurables/square_corner.js +0 -50
  822. package/core/renderers/measurables/top_row.js +0 -143
  823. package/core/renderers/measurables/types.js +0 -353
  824. package/core/renderers/minimalist/drawer.js +0 -42
  825. package/core/renderers/minimalist/info.js +0 -54
  826. package/core/renderers/minimalist/minimalist.js +0 -26
  827. package/core/renderers/minimalist/renderer.js +0 -80
  828. package/core/renderers/thrasos/renderer.js +0 -53
  829. package/core/renderers/thrasos/thrasos.js +0 -22
  830. package/core/renderers/zelos/marker_svg.js +0 -179
  831. package/core/renderers/zelos/measurables/bottom_row.js +0 -66
  832. package/core/renderers/zelos/measurables/row_elements.js +0 -46
  833. package/core/renderers/zelos/path_object.js +0 -247
  834. package/core/renderers/zelos/renderer.js +0 -147
  835. package/core/renderers/zelos/zelos.js +0 -38
  836. package/core/serialization/exceptions.js +0 -144
  837. package/core/shortcut_registry.js +0 -366
  838. package/core/theme/themes.js +0 -23
  839. package/core/theme.js +0 -228
  840. package/core/theme_manager.js +0 -211
  841. package/core/toolbox/category.js +0 -751
  842. package/core/toolbox/collapsible_category.js +0 -311
  843. package/core/toolbox/separator.js +0 -133
  844. package/core/toolbox/toolbox_item.js +0 -173
  845. package/core/touch.js +0 -285
  846. package/core/utils/coordinate.js +0 -138
  847. package/core/utils/global.js +0 -41
  848. package/core/utils/keycodes.js +0 -172
  849. package/core/utils/metrics.js +0 -154
  850. package/core/utils/svg.js +0 -186
  851. package/core/utils/toolbox.js +0 -459
  852. package/core/utils/useragent.js +0 -197
  853. package/core/utils.js +0 -383
  854. package/core/variable_model.js +0 -96
  855. package/core/widgetdiv.js +0 -290
  856. package/core/workspace.js +0 -836
  857. package/core/workspace_comment.js +0 -400
  858. package/core/workspace_dragger.js +0 -115
package/msg/pt.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable */
2
2
  ;(function(root, factory) {
3
3
  if (typeof define === 'function' && define.amd) { // AMD
4
- define(['Blockly'], factory);
4
+ define([], factory);
5
5
  } else if (typeof exports === 'object') { // Node.js
6
6
  module.exports = factory();
7
7
  } else { // Browser
@@ -15,426 +15,426 @@
15
15
 
16
16
  'use strict';
17
17
 
18
- const messages = Object.create(null);
18
+ var Blockly = Blockly || { Msg: Object.create(null) };
19
19
 
20
- messages["ADD_COMMENT"] = "Adicionar Comentário";
21
- messages["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Não se pode eliminar a variável '%1' porque faz parte da definição da função '%2'";
22
- messages["CHANGE_VALUE_TITLE"] = "Alterar valor:";
23
- messages["CLEAN_UP"] = "Limpar Blocos";
24
- messages["COLLAPSED_WARNINGS_WARNING"] = "Os blocos ocultados contêm avisos.";
25
- messages["COLLAPSE_ALL"] = "Ocultar Blocos";
26
- messages["COLLAPSE_BLOCK"] = "Ocultar Bloco";
27
- messages["COLOUR_BLEND_COLOUR1"] = "cor 1";
28
- messages["COLOUR_BLEND_COLOUR2"] = "cor 2";
29
- messages["COLOUR_BLEND_HELPURL"] = "https://meyerweb.com/eric/tools/color-blend/#:::rgbp";
30
- messages["COLOUR_BLEND_RATIO"] = "proporção";
31
- messages["COLOUR_BLEND_TITLE"] = "misturar";
32
- messages["COLOUR_BLEND_TOOLTIP"] = "Mistura duas cores com a proporção indicada (0.0 - 1.0).";
33
- messages["COLOUR_PICKER_HELPURL"] = "http://pt.wikipedia.org/wiki/Cor";
34
- messages["COLOUR_PICKER_TOOLTIP"] = "Escolha uma cor da paleta de cores.";
35
- messages["COLOUR_RANDOM_HELPURL"] = "http://randomcolour.com"; // untranslated
36
- messages["COLOUR_RANDOM_TITLE"] = "cor aleatória";
37
- messages["COLOUR_RANDOM_TOOLTIP"] = "Escolha uma cor aleatoriamente.";
38
- messages["COLOUR_RGB_BLUE"] = "azul";
39
- messages["COLOUR_RGB_GREEN"] = "verde";
40
- messages["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorpercompact.html";
41
- messages["COLOUR_RGB_RED"] = "vermelho";
42
- messages["COLOUR_RGB_TITLE"] = "pinte com";
43
- messages["COLOUR_RGB_TOOLTIP"] = "Cria uma cor de acordo com a quantidade especificada de vermelho, verde e azul. Todos os valores devem estar entre 0 e 100.";
44
- messages["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
45
- messages["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "sair do ciclo";
46
- messages["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "continuar com a próxima iteração do ciclo";
47
- messages["CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK"] = "Sair do ciclo que está contido.";
48
- messages["CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE"] = "Ignorar o resto deste ciclo, e continuar com a próxima iteração.";
49
- messages["CONTROLS_FLOW_STATEMENTS_WARNING"] = "Aviso: Este bloco só pode ser usado dentro de um ciclo.";
50
- messages["CONTROLS_FOREACH_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
51
- messages["CONTROLS_FOREACH_TITLE"] = "para cada item %1 na lista %2";
52
- messages["CONTROLS_FOREACH_TOOLTIP"] = "Para cada item numa lista, define a variável \"%1\" para o item e então faz algumas instruções.";
53
- messages["CONTROLS_FOR_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
54
- messages["CONTROLS_FOR_TITLE"] = "contar com %1 de %2 até %3 por %4";
55
- messages["CONTROLS_FOR_TOOLTIP"] = "Faz com que a variável \"%1\" assuma os valores desde o número inicial até ao número final, contando de acordo com o intervalo especificado e executa os blocos especificados.";
56
- messages["CONTROLS_IF_ELSEIF_TOOLTIP"] = "Acrescente uma condição ao bloco se.";
57
- messages["CONTROLS_IF_ELSE_TOOLTIP"] = "Acrescente uma condição de excepação final para o bloco se.";
58
- messages["CONTROLS_IF_HELPURL"] = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
59
- messages["CONTROLS_IF_IF_TOOLTIP"] = "Acrescente, remova ou reordene secções para reconfigurar este bloco se.";
60
- messages["CONTROLS_IF_MSG_ELSE"] = "senão";
61
- messages["CONTROLS_IF_MSG_ELSEIF"] = "senão se";
62
- messages["CONTROLS_IF_MSG_IF"] = "se";
63
- messages["CONTROLS_IF_TOOLTIP_1"] = "Se um valor é verdadeiro, então realize alguns passos.";
64
- messages["CONTROLS_IF_TOOLTIP_2"] = "Se um valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, realize o segundo bloco de instruções";
65
- messages["CONTROLS_IF_TOOLTIP_3"] = "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções.";
66
- messages["CONTROLS_IF_TOOLTIP_4"] = "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções. Se nenhum dos blocos for verdadeiro, realize o último bloco de instruções.";
67
- messages["CONTROLS_REPEAT_HELPURL"] = "http://pt.wikipedia.org/wiki/Estrutura_de_repeti%C3%A7%C3%A3o#Repeti.C3.A7.C3.A3o_com_vari.C3.A1vel_de_controle";
68
- messages["CONTROLS_REPEAT_INPUT_DO"] = "faça";
69
- messages["CONTROLS_REPEAT_TITLE"] = "repetir %1 vez";
70
- messages["CONTROLS_REPEAT_TOOLTIP"] = "Faça algumas instruções várias vezes.";
71
- messages["CONTROLS_WHILEUNTIL_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
72
- messages["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "repetir até";
73
- messages["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "repetir enquanto";
74
- messages["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "Enquanto um valor for falso, então faça algumas instruções.";
75
- messages["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "Enquanto um valor for verdadeiro, então faça algumas instruções.";
76
- messages["DELETE_ALL_BLOCKS"] = "Eliminar todos os %1 blocos?";
77
- messages["DELETE_BLOCK"] = "Eliminar Bloco";
78
- messages["DELETE_VARIABLE"] = "Eliminar a variável '%1'";
79
- messages["DELETE_VARIABLE_CONFIRMATION"] = "Eliminar %1 utilizações da variável '%2'?";
80
- messages["DELETE_X_BLOCKS"] = "Eliminar %1 Blocos";
81
- messages["DIALOG_CANCEL"] = "Cancelar";
82
- messages["DIALOG_OK"] = "OK";
83
- messages["DISABLE_BLOCK"] = "Desativar Bloco";
84
- messages["DUPLICATE_BLOCK"] = "Duplicar";
85
- messages["DUPLICATE_COMMENT"] = "Duplicar comentário";
86
- messages["ENABLE_BLOCK"] = "Ativar Bloco";
87
- messages["EXPAND_ALL"] = "Expandir Blocos";
88
- messages["EXPAND_BLOCK"] = "Expandir Bloco";
89
- messages["EXTERNAL_INPUTS"] = "Entradas Externas";
90
- messages["HELP"] = "Ajuda";
91
- messages["INLINE_INPUTS"] = "Entradas Em Linhas";
92
- messages["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
93
- messages["LISTS_CREATE_EMPTY_TITLE"] = "criar lista vazia";
94
- messages["LISTS_CREATE_EMPTY_TOOLTIP"] = "Retorna uma lista, de tamanho 0, contendo nenhum registo";
95
- messages["LISTS_CREATE_WITH_CONTAINER_TITLE_ADD"] = "lista";
96
- messages["LISTS_CREATE_WITH_CONTAINER_TOOLTIP"] = "Acrescente, remova ou reordene as seções para reconfigurar este bloco lista.";
97
- messages["LISTS_CREATE_WITH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
98
- messages["LISTS_CREATE_WITH_INPUT_WITH"] = "criar lista com";
99
- messages["LISTS_CREATE_WITH_ITEM_TOOLTIP"] = "Acrescenta um item à lista.";
100
- messages["LISTS_CREATE_WITH_TOOLTIP"] = "Cria uma lista com qualquer número de itens.";
101
- messages["LISTS_GET_INDEX_FIRST"] = "primeiro";
102
- messages["LISTS_GET_INDEX_FROM_END"] = "# a partir do final";
103
- messages["LISTS_GET_INDEX_FROM_START"] = "#";
104
- messages["LISTS_GET_INDEX_GET"] = "obter";
105
- messages["LISTS_GET_INDEX_GET_REMOVE"] = "obter e remover";
106
- messages["LISTS_GET_INDEX_LAST"] = "último";
107
- messages["LISTS_GET_INDEX_RANDOM"] = "aleatório";
108
- messages["LISTS_GET_INDEX_REMOVE"] = "remover";
109
- messages["LISTS_GET_INDEX_TAIL"] = ""; // untranslated
110
- messages["LISTS_GET_INDEX_TOOLTIP_GET_FIRST"] = "Retorna o primeiro item de uma lista.";
111
- messages["LISTS_GET_INDEX_TOOLTIP_GET_FROM"] = "Retorna o item na posição especificada da lista.";
112
- messages["LISTS_GET_INDEX_TOOLTIP_GET_LAST"] = "Retorna o último item de uma lista.";
113
- messages["LISTS_GET_INDEX_TOOLTIP_GET_RANDOM"] = "Retorna um item aleatório de uma lista.";
114
- messages["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST"] = "Remove e retorna o primeiro item de uma lista.";
115
- messages["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM"] = "Remove e retorna o item na posição especificada de uma lista.";
116
- messages["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST"] = "Remove e retorna o último item de uma lista.";
117
- messages["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM"] = "Remove e retorna um item aleatório de uma lista.";
118
- messages["LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST"] = "Remove o primeiro item de uma lista.";
119
- messages["LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM"] = "Remove o item de uma posição especifica da lista.";
120
- messages["LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST"] = "Remove o último item de uma lista.";
121
- messages["LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM"] = "Remove um item aleatório de uma lista.";
122
- messages["LISTS_GET_SUBLIST_END_FROM_END"] = "até #, a partir do final";
123
- messages["LISTS_GET_SUBLIST_END_FROM_START"] = "até #";
124
- messages["LISTS_GET_SUBLIST_END_LAST"] = "para o último";
125
- messages["LISTS_GET_SUBLIST_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
126
- messages["LISTS_GET_SUBLIST_START_FIRST"] = "obtem sublista da primeira lista";
127
- messages["LISTS_GET_SUBLIST_START_FROM_END"] = "obtem sublista de # a partir do final";
128
- messages["LISTS_GET_SUBLIST_START_FROM_START"] = "obtem sublista de #";
129
- messages["LISTS_GET_SUBLIST_TAIL"] = ""; // untranslated
130
- messages["LISTS_GET_SUBLIST_TOOLTIP"] = "Cria uma cópia da porção especificada de uma lista.";
131
- messages["LISTS_INDEX_FROM_END_TOOLTIP"] = "%1 é o último item.";
132
- messages["LISTS_INDEX_FROM_START_TOOLTIP"] = "%1 é o primeiro item.";
133
- messages["LISTS_INDEX_OF_FIRST"] = "encontre a primeira ocorrência do item";
134
- messages["LISTS_INDEX_OF_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
135
- messages["LISTS_INDEX_OF_LAST"] = "encontre a última ocorrência do item";
136
- messages["LISTS_INDEX_OF_TOOLTIP"] = "Retorna a posição da primeira/última ocorrência do item na lista. Retorna %1 se o item não for encontrado.";
137
- messages["LISTS_INLIST"] = "na lista";
138
- messages["LISTS_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
139
- messages["LISTS_ISEMPTY_TITLE"] = "%1 está vazia";
140
- messages["LISTS_ISEMPTY_TOOLTIP"] = "Retona verdadeiro se a lista estiver vazia.";
141
- messages["LISTS_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
142
- messages["LISTS_LENGTH_TITLE"] = "tamanho de %1";
143
- messages["LISTS_LENGTH_TOOLTIP"] = "Retorna o tamanho de uma lista.";
144
- messages["LISTS_REPEAT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
145
- messages["LISTS_REPEAT_TITLE"] = "criar lista com o item %1 repetido %2 vezes";
146
- messages["LISTS_REPEAT_TOOLTIP"] = "Cria uma lista constituída por um dado valor repetido o número de vezes especificado.";
147
- messages["LISTS_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#reversing-a-list";
148
- messages["LISTS_REVERSE_MESSAGE0"] = "inverter %1";
149
- messages["LISTS_REVERSE_TOOLTIP"] = "Inverter uma cópia da lista.";
150
- messages["LISTS_SET_INDEX_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
151
- messages["LISTS_SET_INDEX_INPUT_TO"] = "como";
152
- messages["LISTS_SET_INDEX_INSERT"] = "inserir em";
153
- messages["LISTS_SET_INDEX_SET"] = "definir";
154
- messages["LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST"] = "Insere o item no início da lista.";
155
- messages["LISTS_SET_INDEX_TOOLTIP_INSERT_FROM"] = "Insere o item numa posição especificada numa lista.";
156
- messages["LISTS_SET_INDEX_TOOLTIP_INSERT_LAST"] = "Insere o item no final da lista.";
157
- messages["LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM"] = "Insere o item numa posição aleatória de uma lista.";
158
- messages["LISTS_SET_INDEX_TOOLTIP_SET_FIRST"] = "Define o primeiro item de uma lista.";
159
- messages["LISTS_SET_INDEX_TOOLTIP_SET_FROM"] = "Define o item na posição especificada de uma lista.";
160
- messages["LISTS_SET_INDEX_TOOLTIP_SET_LAST"] = "Define o último item de uma lista.";
161
- messages["LISTS_SET_INDEX_TOOLTIP_SET_RANDOM"] = "Define um item aleatório de uma lista.";
162
- messages["LISTS_SORT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
163
- messages["LISTS_SORT_ORDER_ASCENDING"] = "ascendente";
164
- messages["LISTS_SORT_ORDER_DESCENDING"] = "descendente";
165
- messages["LISTS_SORT_TITLE"] = "ordenar %1 %2 %3";
166
- messages["LISTS_SORT_TOOLTIP"] = "Ordenar uma cópia de uma lista.";
167
- messages["LISTS_SORT_TYPE_IGNORECASE"] = "alfabética, ignorar maiúsculas/minúsculas";
168
- messages["LISTS_SORT_TYPE_NUMERIC"] = "numérica";
169
- messages["LISTS_SORT_TYPE_TEXT"] = "alfabética";
170
- messages["LISTS_SPLIT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
171
- messages["LISTS_SPLIT_LIST_FROM_TEXT"] = "fazer lista a partir de texto";
172
- messages["LISTS_SPLIT_TEXT_FROM_LIST"] = "fazer texto a partir da lista";
173
- messages["LISTS_SPLIT_TOOLTIP_JOIN"] = "Juntar uma lista de textos num único texto, separado por um delimitador.";
174
- messages["LISTS_SPLIT_TOOLTIP_SPLIT"] = "Dividir o texto numa lista de textos, separando-o em cada delimitador.";
175
- messages["LISTS_SPLIT_WITH_DELIMITER"] = "com delimitador";
176
- messages["LOGIC_BOOLEAN_FALSE"] = "falso";
177
- messages["LOGIC_BOOLEAN_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
178
- messages["LOGIC_BOOLEAN_TOOLTIP"] = "Retorna verdadeiro ou falso.";
179
- messages["LOGIC_BOOLEAN_TRUE"] = "verdadeiro";
180
- messages["LOGIC_COMPARE_HELPURL"] = "http://pt.wikipedia.org/wiki/Inequa%C3%A7%C3%A3o";
181
- messages["LOGIC_COMPARE_TOOLTIP_EQ"] = "Retorna verdadeiro se ambas as entradas forem iguais entre si.";
182
- messages["LOGIC_COMPARE_TOOLTIP_GT"] = "Retorna verdadeiro se a primeira entrada for maior que a segunda entrada.";
183
- messages["LOGIC_COMPARE_TOOLTIP_GTE"] = "Retorna verdadeiro se a primeira entrada for maior ou igual à segunda entrada.";
184
- messages["LOGIC_COMPARE_TOOLTIP_LT"] = "Retorna verdadeiro se a primeira entrada for menor que a segunda entrada.";
185
- messages["LOGIC_COMPARE_TOOLTIP_LTE"] = "Retorna verdadeiro se a primeira entrada for menor ou igual à segunda entrada.";
186
- messages["LOGIC_COMPARE_TOOLTIP_NEQ"] = "Retorna verdadeiro se ambas as entradas forem diferentes entre si.";
187
- messages["LOGIC_NEGATE_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
188
- messages["LOGIC_NEGATE_TITLE"] = "não %1";
189
- messages["LOGIC_NEGATE_TOOLTIP"] = "Retorna verdadeiro se a entrada for falsa. Retorna falso se a entrada for verdadeira.";
190
- messages["LOGIC_NULL"] = "nulo";
191
- messages["LOGIC_NULL_HELPURL"] = "http://en.wikipedia.org/wiki/Nullable_type";
192
- messages["LOGIC_NULL_TOOLTIP"] = "Retorna nulo.";
193
- messages["LOGIC_OPERATION_AND"] = "e";
194
- messages["LOGIC_OPERATION_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
195
- messages["LOGIC_OPERATION_OR"] = "ou";
196
- messages["LOGIC_OPERATION_TOOLTIP_AND"] = "Retorna verdadeiro se ambas as entradas forem verdadeiras.";
197
- messages["LOGIC_OPERATION_TOOLTIP_OR"] = "Retorna verdadeiro se pelo menos uma das estradas for verdadeira.";
198
- messages["LOGIC_TERNARY_CONDITION"] = "teste";
199
- messages["LOGIC_TERNARY_HELPURL"] = "http://en.wikipedia.org/wiki/%3F:";
200
- messages["LOGIC_TERNARY_IF_FALSE"] = "se falso";
201
- messages["LOGIC_TERNARY_IF_TRUE"] = "se verdadeiro";
202
- messages["LOGIC_TERNARY_TOOLTIP"] = "Avalia a condição em \"teste\". Se a condição for verdadeira retorna o valor \"se verdadeiro\", senão retorna o valor \"se falso\".";
203
- messages["MATH_ADDITION_SYMBOL"] = "+";
204
- messages["MATH_ARITHMETIC_HELPURL"] = "http://pt.wikipedia.org/wiki/Aritm%C3%A9tica";
205
- messages["MATH_ARITHMETIC_TOOLTIP_ADD"] = "Retorna a soma de dois números.";
206
- messages["MATH_ARITHMETIC_TOOLTIP_DIVIDE"] = "Retorna o quociente da divisão de dois números.";
207
- messages["MATH_ARITHMETIC_TOOLTIP_MINUS"] = "Retorna a diferença de dois números.";
208
- messages["MATH_ARITHMETIC_TOOLTIP_MULTIPLY"] = "Retorna o produto de dois números.";
209
- messages["MATH_ARITHMETIC_TOOLTIP_POWER"] = "Retorna o primeiro número elevado à potência do segundo número.";
210
- messages["MATH_ATAN2_HELPURL"] = "https://en.wikipedia.org/wiki/Atan2";
211
- messages["MATH_ATAN2_TITLE"] = "atan2 de X:%1 Y:%2";
212
- messages["MATH_ATAN2_TOOLTIP"] = "Devolver o arco tangente do ponto (X, Y) em graus entre -180 e 180.";
213
- messages["MATH_CHANGE_HELPURL"] = "http://pt.wikipedia.org/wiki/Adi%C3%A7%C3%A3o";
214
- messages["MATH_CHANGE_TITLE"] = "alterar %1 por %2";
215
- messages["MATH_CHANGE_TOOLTIP"] = "Soma um número à variável \"%1\".";
216
- messages["MATH_CONSTANT_HELPURL"] = "http://pt.wikipedia.org/wiki/Anexo:Lista_de_constantes_matem%C3%A1ticas";
217
- messages["MATH_CONSTANT_TOOLTIP"] = "Retorna uma das constantes comuns: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ou ∞ (infinito).";
218
- messages["MATH_CONSTRAIN_HELPURL"] = "https://en.wikipedia.org/wiki/Clamping_(graphics)"; // untranslated
219
- messages["MATH_CONSTRAIN_TITLE"] = "restringe %1 inferior %2 superior %3";
220
- messages["MATH_CONSTRAIN_TOOLTIP"] = "Restringe um número entre os limites especificados (inclusive).";
221
- messages["MATH_DIVISION_SYMBOL"] = "÷";
222
- messages["MATH_IS_DIVISIBLE_BY"] = "é divisível por";
223
- messages["MATH_IS_EVEN"] = "é par";
224
- messages["MATH_IS_NEGATIVE"] = "é negativo";
225
- messages["MATH_IS_ODD"] = "é impar";
226
- messages["MATH_IS_POSITIVE"] = "é positivo";
227
- messages["MATH_IS_PRIME"] = "é primo";
228
- messages["MATH_IS_TOOLTIP"] = "Verifica se um número é par, impar, primo, inteiro, positivo, negativo, ou se é divisível por outro número. Retorna verdadeiro ou falso.";
229
- messages["MATH_IS_WHOLE"] = "é inteiro";
230
- messages["MATH_MODULO_HELPURL"] = "http://pt.wikipedia.org/wiki/Opera%C3%A7%C3%A3o_m%C3%B3dulo";
231
- messages["MATH_MODULO_TITLE"] = "resto da divisão de %1 ÷ %2";
232
- messages["MATH_MODULO_TOOLTIP"] = "Retorna o resto da divisão de dois números.";
233
- messages["MATH_MULTIPLICATION_SYMBOL"] = "×";
234
- messages["MATH_NUMBER_HELPURL"] = "http://pt.wikipedia.org/wiki/N%C3%BAmero";
235
- messages["MATH_NUMBER_TOOLTIP"] = "Um número.";
236
- messages["MATH_ONLIST_HELPURL"] = ""; // untranslated
237
- messages["MATH_ONLIST_OPERATOR_AVERAGE"] = "média de uma lista";
238
- messages["MATH_ONLIST_OPERATOR_MAX"] = "maior de uma lista";
239
- messages["MATH_ONLIST_OPERATOR_MEDIAN"] = "mediana de uma lista";
240
- messages["MATH_ONLIST_OPERATOR_MIN"] = "menor de uma lista";
241
- messages["MATH_ONLIST_OPERATOR_MODE"] = "moda de uma lista";
242
- messages["MATH_ONLIST_OPERATOR_RANDOM"] = "item aleatório de uma lista";
243
- messages["MATH_ONLIST_OPERATOR_STD_DEV"] = "desvio padrão de uma lista";
244
- messages["MATH_ONLIST_OPERATOR_SUM"] = "soma da lista";
245
- messages["MATH_ONLIST_TOOLTIP_AVERAGE"] = "Retorna a média aritmética dos valores números da lista.";
246
- messages["MATH_ONLIST_TOOLTIP_MAX"] = "Retorna o maior número da lista.";
247
- messages["MATH_ONLIST_TOOLTIP_MEDIAN"] = "Retorna a mediana da lista.";
248
- messages["MATH_ONLIST_TOOLTIP_MIN"] = "Retorna o menor número da lista.";
249
- messages["MATH_ONLIST_TOOLTIP_MODE"] = "Retorna a lista de item(ns) mais comum(ns) da lista.";
250
- messages["MATH_ONLIST_TOOLTIP_RANDOM"] = "Retorna um elemento aleatório da lista.";
251
- messages["MATH_ONLIST_TOOLTIP_STD_DEV"] = "Retorna o desvio padrão dos números da lista.";
252
- messages["MATH_ONLIST_TOOLTIP_SUM"] = "Retorna a soma de todos os números da lista.";
253
- messages["MATH_POWER_SYMBOL"] = "^";
254
- messages["MATH_RANDOM_FLOAT_HELPURL"] = "http://pt.wikipedia.org/wiki/N%C3%BAmero_aleat%C3%B3rio";
255
- messages["MATH_RANDOM_FLOAT_TITLE_RANDOM"] = "fração aleatória";
256
- messages["MATH_RANDOM_FLOAT_TOOLTIP"] = "Insere uma fração aleatória entre 0.0 (inclusive) e 1.0 (exclusive).";
257
- messages["MATH_RANDOM_INT_HELPURL"] = "http://pt.wikipedia.org/wiki/N%C3%BAmero_aleat%C3%B3rio";
258
- messages["MATH_RANDOM_INT_TITLE"] = "inteiro aleatório entre %1 e %2";
259
- messages["MATH_RANDOM_INT_TOOLTIP"] = "Retorna um número inteiro entre os dois limites especificados, inclusive.";
260
- messages["MATH_ROUND_HELPURL"] = "http://pt.wikipedia.org/wiki/Arredondamento";
261
- messages["MATH_ROUND_OPERATOR_ROUND"] = "arredonda";
262
- messages["MATH_ROUND_OPERATOR_ROUNDDOWN"] = "arredonda para baixo";
263
- messages["MATH_ROUND_OPERATOR_ROUNDUP"] = "arredonda para cima";
264
- messages["MATH_ROUND_TOOLTIP"] = "Arredonda um número para cima ou para baixo.";
265
- messages["MATH_SINGLE_HELPURL"] = "http://pt.wikipedia.org/wiki/Raiz_quadrada";
266
- messages["MATH_SINGLE_OP_ABSOLUTE"] = "absoluto";
267
- messages["MATH_SINGLE_OP_ROOT"] = "raíz quadrada";
268
- messages["MATH_SINGLE_TOOLTIP_ABS"] = "Retorna o valor absoluto de um número.";
269
- messages["MATH_SINGLE_TOOLTIP_EXP"] = "Retorna o número e elevado à potência de um número.";
270
- messages["MATH_SINGLE_TOOLTIP_LN"] = "Retorna o logarítmo natural de um número.";
271
- messages["MATH_SINGLE_TOOLTIP_LOG10"] = "Retorna o logarítmo em base 10 de um número.";
272
- messages["MATH_SINGLE_TOOLTIP_NEG"] = "Retorna o oposto de um número.";
273
- messages["MATH_SINGLE_TOOLTIP_POW10"] = "Retorna 10 elevado à potência de um número.";
274
- messages["MATH_SINGLE_TOOLTIP_ROOT"] = "Retorna a raiz quadrada de um número.";
275
- messages["MATH_SUBTRACTION_SYMBOL"] = "-";
276
- messages["MATH_TRIG_ACOS"] = "acos";
277
- messages["MATH_TRIG_ASIN"] = "asin";
278
- messages["MATH_TRIG_ATAN"] = "atan";
279
- messages["MATH_TRIG_COS"] = "cos";
280
- messages["MATH_TRIG_HELPURL"] = "http://pt.wikipedia.org/wiki/Fun%C3%A7%C3%A3o_trigonom%C3%A9trica";
281
- messages["MATH_TRIG_SIN"] = "sin";
282
- messages["MATH_TRIG_TAN"] = "tan";
283
- messages["MATH_TRIG_TOOLTIP_ACOS"] = "Retorna o arco cosseno de um número.";
284
- messages["MATH_TRIG_TOOLTIP_ASIN"] = "Retorna o arco seno de um número.";
285
- messages["MATH_TRIG_TOOLTIP_ATAN"] = "Retorna o arco tangente de um número.";
286
- messages["MATH_TRIG_TOOLTIP_COS"] = "Retorna o cosseno de um grau (não radiano).";
287
- messages["MATH_TRIG_TOOLTIP_SIN"] = "Retorna o seno de um grau (não radiano).";
288
- messages["MATH_TRIG_TOOLTIP_TAN"] = "Retorna a tangente de um grau (não radiano).";
289
- messages["NEW_COLOUR_VARIABLE"] = "Criar variável colorida...";
290
- messages["NEW_NUMBER_VARIABLE"] = "Criar variável numérica...";
291
- messages["NEW_STRING_VARIABLE"] = "Criar variável de segmentos de texto...";
292
- messages["NEW_VARIABLE"] = "Criar variável…";
293
- messages["NEW_VARIABLE_TITLE"] = "Nome da nova variável:";
294
- messages["NEW_VARIABLE_TYPE_TITLE"] = "Tipo da nova variável:";
295
- messages["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
296
- messages["PROCEDURES_ALLOW_STATEMENTS"] = "permitir declarações";
297
- messages["PROCEDURES_BEFORE_PARAMS"] = "com:";
298
- messages["PROCEDURES_CALLNORETURN_HELPURL"] = "https://pt.wikipedia.org/wiki/Sub-rotina";
299
- messages["PROCEDURES_CALLNORETURN_TOOLTIP"] = "Executa a função \"%1\".";
300
- messages["PROCEDURES_CALLRETURN_HELPURL"] = "https://pt.wikipedia.org/wiki/Sub-rotina";
301
- messages["PROCEDURES_CALLRETURN_TOOLTIP"] = "Executa a função \"%1\" e usa o seu retorno.";
302
- messages["PROCEDURES_CALL_BEFORE_PARAMS"] = "com:";
303
- messages["PROCEDURES_CREATE_DO"] = "Criar \"%1\"";
304
- messages["PROCEDURES_DEFNORETURN_COMMENT"] = "Descreva esta função...";
305
- messages["PROCEDURES_DEFNORETURN_DO"] = ""; // untranslated
306
- messages["PROCEDURES_DEFNORETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine";
307
- messages["PROCEDURES_DEFNORETURN_PROCEDURE"] = "faz algo";
308
- messages["PROCEDURES_DEFNORETURN_TITLE"] = "para";
309
- messages["PROCEDURES_DEFNORETURN_TOOLTIP"] = "Cria uma função que não tem retorno.";
310
- messages["PROCEDURES_DEFRETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine";
311
- messages["PROCEDURES_DEFRETURN_RETURN"] = "retorna";
312
- messages["PROCEDURES_DEFRETURN_TOOLTIP"] = "Cria uma função que possui um valor de retorno.";
313
- messages["PROCEDURES_DEF_DUPLICATE_WARNING"] = "Aviso: Esta função tem parâmetros duplicados.";
314
- messages["PROCEDURES_HIGHLIGHT_DEF"] = "Destacar definição da função";
315
- messages["PROCEDURES_IFRETURN_HELPURL"] = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
316
- messages["PROCEDURES_IFRETURN_TOOLTIP"] = "se o valor é verdadeiro, então retorna um segundo valor.";
317
- messages["PROCEDURES_IFRETURN_WARNING"] = "Aviso: Este bloco só pode ser utilizado dentro da definição de uma função.";
318
- messages["PROCEDURES_MUTATORARG_TITLE"] = "nome da entrada:";
319
- messages["PROCEDURES_MUTATORARG_TOOLTIP"] = "Adicionar uma entrada para a função.";
320
- messages["PROCEDURES_MUTATORCONTAINER_TITLE"] = "entradas";
321
- messages["PROCEDURES_MUTATORCONTAINER_TOOLTIP"] = "Adicionar, remover ou reordenar as entradas para esta função.";
322
- messages["REDO"] = "Refazer";
323
- messages["REMOVE_COMMENT"] = "Remover Comentário";
324
- messages["RENAME_VARIABLE"] = "Renomear variável...";
325
- messages["RENAME_VARIABLE_TITLE"] = "Renomear todas as variáveis '%1' para:";
326
- messages["TEXT_APPEND_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
327
- messages["TEXT_APPEND_TITLE"] = "para %1 acrescentar texto %2";
328
- messages["TEXT_APPEND_TOOLTIP"] = "Acrescentar um pedaço de texto à variável \"%1\".";
329
- messages["TEXT_CHANGECASE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
330
- messages["TEXT_CHANGECASE_OPERATOR_LOWERCASE"] = "para minúsculas";
331
- messages["TEXT_CHANGECASE_OPERATOR_TITLECASE"] = "para Iniciais Maiúsculas";
332
- messages["TEXT_CHANGECASE_OPERATOR_UPPERCASE"] = "para MAIÚSCULAS";
333
- messages["TEXT_CHANGECASE_TOOLTIP"] = "Retorna uma cópia do texto em formato diferente.";
334
- messages["TEXT_CHARAT_FIRST"] = "obter primeira letra";
335
- messages["TEXT_CHARAT_FROM_END"] = "obter letra nº a partir do final";
336
- messages["TEXT_CHARAT_FROM_START"] = "obter letra nº";
337
- messages["TEXT_CHARAT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
338
- messages["TEXT_CHARAT_LAST"] = "obter última letra";
339
- messages["TEXT_CHARAT_RANDOM"] = "obter letra aleatória";
340
- messages["TEXT_CHARAT_TAIL"] = ""; // untranslated
341
- messages["TEXT_CHARAT_TITLE"] = "no texto %1 %2";
342
- messages["TEXT_CHARAT_TOOLTIP"] = "Retorna a letra na posição especificada.";
343
- messages["TEXT_COUNT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#counting-substrings";
344
- messages["TEXT_COUNT_MESSAGE0"] = "contar %1 em %2";
345
- messages["TEXT_COUNT_TOOLTIP"] = "Conte quantas vezes um certo texto aparece dentro de algum outro texto.";
346
- messages["TEXT_CREATE_JOIN_ITEM_TOOLTIP"] = "Acrescentar um item ao texto.";
347
- messages["TEXT_CREATE_JOIN_TITLE_JOIN"] = "unir";
348
- messages["TEXT_CREATE_JOIN_TOOLTIP"] = "Acrescenta, remove ou reordena seções para reconfigurar este bloco de texto.";
349
- messages["TEXT_GET_SUBSTRING_END_FROM_END"] = "até letra nº a partir do final";
350
- messages["TEXT_GET_SUBSTRING_END_FROM_START"] = "até letra nº";
351
- messages["TEXT_GET_SUBSTRING_END_LAST"] = "até última letra";
352
- messages["TEXT_GET_SUBSTRING_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
353
- messages["TEXT_GET_SUBSTRING_INPUT_IN_TEXT"] = "no texto";
354
- messages["TEXT_GET_SUBSTRING_START_FIRST"] = "obter subsequência a partir da primeira letra";
355
- messages["TEXT_GET_SUBSTRING_START_FROM_END"] = "obter subsequência de tamanho # a partir do final";
356
- messages["TEXT_GET_SUBSTRING_START_FROM_START"] = "obter subsequência de tamanho #";
357
- messages["TEXT_GET_SUBSTRING_TAIL"] = ""; // untranslated
358
- messages["TEXT_GET_SUBSTRING_TOOLTIP"] = "Retorna a parte especificada do texto.";
359
- messages["TEXT_INDEXOF_HELPURL"] = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
360
- messages["TEXT_INDEXOF_OPERATOR_FIRST"] = "primeira ocorrência do texto";
361
- messages["TEXT_INDEXOF_OPERATOR_LAST"] = "última ocorrência do texto";
362
- messages["TEXT_INDEXOF_TITLE"] = "no texto %1 %2 %3";
363
- messages["TEXT_INDEXOF_TOOLTIP"] = "Retorna a posição da primeira/última ocorrência do primeiro texto no segundo texto. Retorna %1 se o texto não for encontrado.";
364
- messages["TEXT_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
365
- messages["TEXT_ISEMPTY_TITLE"] = "%1 está vazio";
366
- messages["TEXT_ISEMPTY_TOOLTIP"] = "Retorna verdadeiro se o texto fornecido estiver vazio.";
367
- messages["TEXT_JOIN_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
368
- messages["TEXT_JOIN_TITLE_CREATEWITH"] = "criar texto com";
369
- messages["TEXT_JOIN_TOOLTIP"] = "Criar um pedaço de texto juntando qualquer número de itens.";
370
- messages["TEXT_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
371
- messages["TEXT_LENGTH_TITLE"] = "tamanho de %1";
372
- messages["TEXT_LENGTH_TOOLTIP"] = "Devolve o número de letras (incluindo espaços) do texto fornecido.";
373
- messages["TEXT_PRINT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
374
- messages["TEXT_PRINT_TITLE"] = "imprime %1";
375
- messages["TEXT_PRINT_TOOLTIP"] = "Imprime o texto, número ou outro valor especificado.";
376
- messages["TEXT_PROMPT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
377
- messages["TEXT_PROMPT_TOOLTIP_NUMBER"] = "Pede ao utilizador um número.";
378
- messages["TEXT_PROMPT_TOOLTIP_TEXT"] = "Pede ao utilizador um texto.";
379
- messages["TEXT_PROMPT_TYPE_NUMBER"] = "pede um número com a mensagem";
380
- messages["TEXT_PROMPT_TYPE_TEXT"] = "Pede um texto com a mensagem";
381
- messages["TEXT_REPLACE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#replacing-substrings";
382
- messages["TEXT_REPLACE_MESSAGE0"] = "substituir %1 por %2 em %3";
383
- messages["TEXT_REPLACE_TOOLTIP"] = "Substituir todas as ocorrências de um certo texto dentro de algum outro texto.";
384
- messages["TEXT_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#reversing-text";
385
- messages["TEXT_REVERSE_MESSAGE0"] = "inverter %1";
386
- messages["TEXT_REVERSE_TOOLTIP"] = "Inverte a ordem dos caracteres no texto.";
387
- messages["TEXT_TEXT_HELPURL"] = "http://pt.wikipedia.org/wiki/Cadeia_de_caracteres";
388
- messages["TEXT_TEXT_TOOLTIP"] = "Uma letra, palavra ou linha de texto.";
389
- messages["TEXT_TRIM_HELPURL"] = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
390
- messages["TEXT_TRIM_OPERATOR_BOTH"] = "remover espaços de ambos os lados";
391
- messages["TEXT_TRIM_OPERATOR_LEFT"] = "remover espaços à esquerda de";
392
- messages["TEXT_TRIM_OPERATOR_RIGHT"] = "remover espaços à direita";
393
- messages["TEXT_TRIM_TOOLTIP"] = "Retorna uma cópia do texto com os espaços removidos de uma ou ambas as extremidades.";
394
- messages["TODAY"] = "Hoje";
395
- messages["UNDO"] = "Desfazer";
396
- messages["UNNAMED_KEY"] = "sem nome";
397
- messages["VARIABLES_DEFAULT_NAME"] = "item";
398
- messages["VARIABLES_GET_CREATE_SET"] = "Criar \"definir %1\"";
399
- messages["VARIABLES_GET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
400
- messages["VARIABLES_GET_TOOLTIP"] = "Retorna o valor desta variável.";
401
- messages["VARIABLES_SET"] = "definir %1 para %2";
402
- messages["VARIABLES_SET_CREATE_GET"] = "Criar \"obter %1\"";
403
- messages["VARIABLES_SET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
404
- messages["VARIABLES_SET_TOOLTIP"] = "Define esta variável para o valor inserido.";
405
- messages["VARIABLE_ALREADY_EXISTS"] = "Já existe uma variável com o nome de '%1'.";
406
- messages["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "Já existe uma variável chamada '%1' para outra do tipo: '%2'.";
407
- messages["WORKSPACE_ARIA_LABEL"] = "Espaço de trabalho de Blockly";
408
- messages["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Diz algo...";
409
- messages["CONTROLS_FOREACH_INPUT_DO"] = messages["CONTROLS_REPEAT_INPUT_DO"];
410
- messages["CONTROLS_FOR_INPUT_DO"] = messages["CONTROLS_REPEAT_INPUT_DO"];
411
- messages["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = messages["CONTROLS_IF_MSG_ELSEIF"];
412
- messages["CONTROLS_IF_ELSE_TITLE_ELSE"] = messages["CONTROLS_IF_MSG_ELSE"];
413
- messages["CONTROLS_IF_IF_TITLE_IF"] = messages["CONTROLS_IF_MSG_IF"];
414
- messages["CONTROLS_IF_MSG_THEN"] = messages["CONTROLS_REPEAT_INPUT_DO"];
415
- messages["CONTROLS_WHILEUNTIL_INPUT_DO"] = messages["CONTROLS_REPEAT_INPUT_DO"];
416
- messages["LISTS_CREATE_WITH_ITEM_TITLE"] = messages["VARIABLES_DEFAULT_NAME"];
417
- messages["LISTS_GET_INDEX_HELPURL"] = messages["LISTS_INDEX_OF_HELPURL"];
418
- messages["LISTS_GET_INDEX_INPUT_IN_LIST"] = messages["LISTS_INLIST"];
419
- messages["LISTS_GET_SUBLIST_INPUT_IN_LIST"] = messages["LISTS_INLIST"];
420
- messages["LISTS_INDEX_OF_INPUT_IN_LIST"] = messages["LISTS_INLIST"];
421
- messages["LISTS_SET_INDEX_INPUT_IN_LIST"] = messages["LISTS_INLIST"];
422
- messages["MATH_CHANGE_TITLE_ITEM"] = messages["VARIABLES_DEFAULT_NAME"];
423
- messages["PROCEDURES_DEFRETURN_COMMENT"] = messages["PROCEDURES_DEFNORETURN_COMMENT"];
424
- messages["PROCEDURES_DEFRETURN_DO"] = messages["PROCEDURES_DEFNORETURN_DO"];
425
- messages["PROCEDURES_DEFRETURN_PROCEDURE"] = messages["PROCEDURES_DEFNORETURN_PROCEDURE"];
426
- messages["PROCEDURES_DEFRETURN_TITLE"] = messages["PROCEDURES_DEFNORETURN_TITLE"];
427
- messages["TEXT_APPEND_VARIABLE"] = messages["VARIABLES_DEFAULT_NAME"];
428
- messages["TEXT_CREATE_JOIN_ITEM_TITLE_ITEM"] = messages["VARIABLES_DEFAULT_NAME"];
20
+ Blockly.Msg["ADD_COMMENT"] = "Adicionar Comentário";
21
+ Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Não se pode eliminar a variável '%1' porque faz parte da definição da função '%2'";
22
+ Blockly.Msg["CHANGE_VALUE_TITLE"] = "Alterar valor:";
23
+ Blockly.Msg["CLEAN_UP"] = "Limpar Blocos";
24
+ Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "Os blocos ocultados contêm avisos.";
25
+ Blockly.Msg["COLLAPSE_ALL"] = "Ocultar Blocos";
26
+ Blockly.Msg["COLLAPSE_BLOCK"] = "Ocultar Bloco";
27
+ Blockly.Msg["COLOUR_BLEND_COLOUR1"] = "cor 1";
28
+ Blockly.Msg["COLOUR_BLEND_COLOUR2"] = "cor 2";
29
+ Blockly.Msg["COLOUR_BLEND_HELPURL"] = "https://meyerweb.com/eric/tools/color-blend/#:::rgbp";
30
+ Blockly.Msg["COLOUR_BLEND_RATIO"] = "proporção";
31
+ Blockly.Msg["COLOUR_BLEND_TITLE"] = "misturar";
32
+ Blockly.Msg["COLOUR_BLEND_TOOLTIP"] = "Mistura duas cores com a proporção indicada (0.0 - 1.0).";
33
+ Blockly.Msg["COLOUR_PICKER_HELPURL"] = "http://pt.wikipedia.org/wiki/Cor";
34
+ Blockly.Msg["COLOUR_PICKER_TOOLTIP"] = "Escolha uma cor da paleta de cores.";
35
+ Blockly.Msg["COLOUR_RANDOM_HELPURL"] = "http://randomcolour.com"; // untranslated
36
+ Blockly.Msg["COLOUR_RANDOM_TITLE"] = "cor aleatória";
37
+ Blockly.Msg["COLOUR_RANDOM_TOOLTIP"] = "Escolha uma cor aleatoriamente.";
38
+ Blockly.Msg["COLOUR_RGB_BLUE"] = "azul";
39
+ Blockly.Msg["COLOUR_RGB_GREEN"] = "verde";
40
+ Blockly.Msg["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorpercompact.html";
41
+ Blockly.Msg["COLOUR_RGB_RED"] = "vermelho";
42
+ Blockly.Msg["COLOUR_RGB_TITLE"] = "pinte com";
43
+ Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "Cria uma cor de acordo com a quantidade especificada de vermelho, verde e azul. Todos os valores devem estar entre 0 e 100.";
44
+ Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
45
+ Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "sair do ciclo";
46
+ Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "continuar com a próxima iteração do ciclo";
47
+ Blockly.Msg["CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK"] = "Sair do ciclo que está contido.";
48
+ Blockly.Msg["CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE"] = "Ignorar o resto deste ciclo, e continuar com a próxima iteração.";
49
+ Blockly.Msg["CONTROLS_FLOW_STATEMENTS_WARNING"] = "Aviso: Este bloco só pode ser usado dentro de um ciclo.";
50
+ Blockly.Msg["CONTROLS_FOREACH_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#for-each"; // untranslated
51
+ Blockly.Msg["CONTROLS_FOREACH_TITLE"] = "para cada item %1 na lista %2";
52
+ Blockly.Msg["CONTROLS_FOREACH_TOOLTIP"] = "Para cada item numa lista, define a variável \"%1\" para o item e então faz algumas instruções.";
53
+ Blockly.Msg["CONTROLS_FOR_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#count-with"; // untranslated
54
+ Blockly.Msg["CONTROLS_FOR_TITLE"] = "contar com %1 de %2 até %3 por %4";
55
+ Blockly.Msg["CONTROLS_FOR_TOOLTIP"] = "Faz com que a variável \"%1\" assuma os valores desde o número inicial até ao número final, contando de acordo com o intervalo especificado e executa os blocos especificados.";
56
+ Blockly.Msg["CONTROLS_IF_ELSEIF_TOOLTIP"] = "Acrescente uma condição ao bloco se.";
57
+ Blockly.Msg["CONTROLS_IF_ELSE_TOOLTIP"] = "Acrescente uma condição de excepação final para o bloco se.";
58
+ Blockly.Msg["CONTROLS_IF_HELPURL"] = "https://github.com/google/blockly/wiki/IfElse"; // untranslated
59
+ Blockly.Msg["CONTROLS_IF_IF_TOOLTIP"] = "Acrescente, remova ou reordene secções para reconfigurar este bloco se.";
60
+ Blockly.Msg["CONTROLS_IF_MSG_ELSE"] = "senão";
61
+ Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"] = "senão se";
62
+ Blockly.Msg["CONTROLS_IF_MSG_IF"] = "se";
63
+ Blockly.Msg["CONTROLS_IF_TOOLTIP_1"] = "Se um valor é verdadeiro, então realize alguns passos.";
64
+ Blockly.Msg["CONTROLS_IF_TOOLTIP_2"] = "Se um valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, realize o segundo bloco de instruções";
65
+ Blockly.Msg["CONTROLS_IF_TOOLTIP_3"] = "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções.";
66
+ Blockly.Msg["CONTROLS_IF_TOOLTIP_4"] = "Se o primeiro valor é verdadeiro, então realize o primeiro bloco de instruções. Senão, se o segundo valor é verdadeiro, realize o segundo bloco de instruções. Se nenhum dos blocos for verdadeiro, realize o último bloco de instruções.";
67
+ Blockly.Msg["CONTROLS_REPEAT_HELPURL"] = "http://pt.wikipedia.org/wiki/Estrutura_de_repeti%C3%A7%C3%A3o#Repeti.C3.A7.C3.A3o_com_vari.C3.A1vel_de_controle";
68
+ Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"] = "faça";
69
+ Blockly.Msg["CONTROLS_REPEAT_TITLE"] = "repetir %1 vez";
70
+ Blockly.Msg["CONTROLS_REPEAT_TOOLTIP"] = "Faça algumas instruções várias vezes.";
71
+ Blockly.Msg["CONTROLS_WHILEUNTIL_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#repeat"; // untranslated
72
+ Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "repetir até";
73
+ Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "repetir enquanto";
74
+ Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "Enquanto um valor for falso, então faça algumas instruções.";
75
+ Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "Enquanto um valor for verdadeiro, então faça algumas instruções.";
76
+ Blockly.Msg["DELETE_ALL_BLOCKS"] = "Eliminar todos os %1 blocos?";
77
+ Blockly.Msg["DELETE_BLOCK"] = "Eliminar Bloco";
78
+ Blockly.Msg["DELETE_VARIABLE"] = "Eliminar a variável '%1'";
79
+ Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "Eliminar %1 utilizações da variável '%2'?";
80
+ Blockly.Msg["DELETE_X_BLOCKS"] = "Eliminar %1 Blocos";
81
+ Blockly.Msg["DIALOG_CANCEL"] = "Cancelar";
82
+ Blockly.Msg["DIALOG_OK"] = "OK";
83
+ Blockly.Msg["DISABLE_BLOCK"] = "Desativar Bloco";
84
+ Blockly.Msg["DUPLICATE_BLOCK"] = "Duplicar";
85
+ Blockly.Msg["DUPLICATE_COMMENT"] = "Duplicar comentário";
86
+ Blockly.Msg["ENABLE_BLOCK"] = "Ativar Bloco";
87
+ Blockly.Msg["EXPAND_ALL"] = "Expandir Blocos";
88
+ Blockly.Msg["EXPAND_BLOCK"] = "Expandir Bloco";
89
+ Blockly.Msg["EXTERNAL_INPUTS"] = "Entradas Externas";
90
+ Blockly.Msg["HELP"] = "Ajuda";
91
+ Blockly.Msg["INLINE_INPUTS"] = "Entradas Em Linhas";
92
+ Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-empty-list";
93
+ Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "criar lista vazia";
94
+ Blockly.Msg["LISTS_CREATE_EMPTY_TOOLTIP"] = "Retorna uma lista, de tamanho 0, contendo nenhum registo";
95
+ Blockly.Msg["LISTS_CREATE_WITH_CONTAINER_TITLE_ADD"] = "lista";
96
+ Blockly.Msg["LISTS_CREATE_WITH_CONTAINER_TOOLTIP"] = "Acrescente, remova ou reordene as seções para reconfigurar este bloco lista.";
97
+ Blockly.Msg["LISTS_CREATE_WITH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
98
+ Blockly.Msg["LISTS_CREATE_WITH_INPUT_WITH"] = "criar lista com";
99
+ Blockly.Msg["LISTS_CREATE_WITH_ITEM_TOOLTIP"] = "Acrescenta um item à lista.";
100
+ Blockly.Msg["LISTS_CREATE_WITH_TOOLTIP"] = "Cria uma lista com qualquer número de itens.";
101
+ Blockly.Msg["LISTS_GET_INDEX_FIRST"] = "primeiro";
102
+ Blockly.Msg["LISTS_GET_INDEX_FROM_END"] = "# a partir do final";
103
+ Blockly.Msg["LISTS_GET_INDEX_FROM_START"] = "#";
104
+ Blockly.Msg["LISTS_GET_INDEX_GET"] = "obter";
105
+ Blockly.Msg["LISTS_GET_INDEX_GET_REMOVE"] = "obter e remover";
106
+ Blockly.Msg["LISTS_GET_INDEX_LAST"] = "último";
107
+ Blockly.Msg["LISTS_GET_INDEX_RANDOM"] = "aleatório";
108
+ Blockly.Msg["LISTS_GET_INDEX_REMOVE"] = "remover";
109
+ Blockly.Msg["LISTS_GET_INDEX_TAIL"] = ""; // untranslated
110
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_FIRST"] = "Retorna o primeiro item de uma lista.";
111
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_FROM"] = "Retorna o item na posição especificada da lista.";
112
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_LAST"] = "Retorna o último item de uma lista.";
113
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_RANDOM"] = "Retorna um item aleatório de uma lista.";
114
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST"] = "Remove e retorna o primeiro item de uma lista.";
115
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM"] = "Remove e retorna o item na posição especificada de uma lista.";
116
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST"] = "Remove e retorna o último item de uma lista.";
117
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM"] = "Remove e retorna um item aleatório de uma lista.";
118
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST"] = "Remove o primeiro item de uma lista.";
119
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM"] = "Remove o item de uma posição especifica da lista.";
120
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST"] = "Remove o último item de uma lista.";
121
+ Blockly.Msg["LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM"] = "Remove um item aleatório de uma lista.";
122
+ Blockly.Msg["LISTS_GET_SUBLIST_END_FROM_END"] = "até #, a partir do final";
123
+ Blockly.Msg["LISTS_GET_SUBLIST_END_FROM_START"] = "até #";
124
+ Blockly.Msg["LISTS_GET_SUBLIST_END_LAST"] = "para o último";
125
+ Blockly.Msg["LISTS_GET_SUBLIST_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-a-sublist"; // untranslated
126
+ Blockly.Msg["LISTS_GET_SUBLIST_START_FIRST"] = "obtem sublista da primeira lista";
127
+ Blockly.Msg["LISTS_GET_SUBLIST_START_FROM_END"] = "obtem sublista de # a partir do final";
128
+ Blockly.Msg["LISTS_GET_SUBLIST_START_FROM_START"] = "obtem sublista de #";
129
+ Blockly.Msg["LISTS_GET_SUBLIST_TAIL"] = ""; // untranslated
130
+ Blockly.Msg["LISTS_GET_SUBLIST_TOOLTIP"] = "Cria uma cópia da porção especificada de uma lista.";
131
+ Blockly.Msg["LISTS_INDEX_FROM_END_TOOLTIP"] = "%1 é o último item.";
132
+ Blockly.Msg["LISTS_INDEX_FROM_START_TOOLTIP"] = "%1 é o primeiro item.";
133
+ Blockly.Msg["LISTS_INDEX_OF_FIRST"] = "encontre a primeira ocorrência do item";
134
+ Blockly.Msg["LISTS_INDEX_OF_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list"; // untranslated
135
+ Blockly.Msg["LISTS_INDEX_OF_LAST"] = "encontre a última ocorrência do item";
136
+ Blockly.Msg["LISTS_INDEX_OF_TOOLTIP"] = "Retorna a posição da primeira/última ocorrência do item na lista. Retorna %1 se o item não for encontrado.";
137
+ Blockly.Msg["LISTS_INLIST"] = "na lista";
138
+ Blockly.Msg["LISTS_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#is-empty"; // untranslated
139
+ Blockly.Msg["LISTS_ISEMPTY_TITLE"] = "%1 está vazia";
140
+ Blockly.Msg["LISTS_ISEMPTY_TOOLTIP"] = "Retona verdadeiro se a lista estiver vazia.";
141
+ Blockly.Msg["LISTS_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#length-of"; // untranslated
142
+ Blockly.Msg["LISTS_LENGTH_TITLE"] = "tamanho de %1";
143
+ Blockly.Msg["LISTS_LENGTH_TOOLTIP"] = "Retorna o tamanho de uma lista.";
144
+ Blockly.Msg["LISTS_REPEAT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-list-with"; // untranslated
145
+ Blockly.Msg["LISTS_REPEAT_TITLE"] = "criar lista com o item %1 repetido %2 vezes";
146
+ Blockly.Msg["LISTS_REPEAT_TOOLTIP"] = "Cria uma lista constituída por um dado valor repetido o número de vezes especificado.";
147
+ Blockly.Msg["LISTS_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#reversing-a-list";
148
+ Blockly.Msg["LISTS_REVERSE_MESSAGE0"] = "inverter %1";
149
+ Blockly.Msg["LISTS_REVERSE_TOOLTIP"] = "Inverter uma cópia da lista.";
150
+ Blockly.Msg["LISTS_SET_INDEX_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#in-list--set"; // untranslated
151
+ Blockly.Msg["LISTS_SET_INDEX_INPUT_TO"] = "como";
152
+ Blockly.Msg["LISTS_SET_INDEX_INSERT"] = "inserir em";
153
+ Blockly.Msg["LISTS_SET_INDEX_SET"] = "definir";
154
+ Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST"] = "Insere o item no início da lista.";
155
+ Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_INSERT_FROM"] = "Insere o item numa posição especificada numa lista.";
156
+ Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_INSERT_LAST"] = "Insere o item no final da lista.";
157
+ Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM"] = "Insere o item numa posição aleatória de uma lista.";
158
+ Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_FIRST"] = "Define o primeiro item de uma lista.";
159
+ Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_FROM"] = "Define o item na posição especificada de uma lista.";
160
+ Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_LAST"] = "Define o último item de uma lista.";
161
+ Blockly.Msg["LISTS_SET_INDEX_TOOLTIP_SET_RANDOM"] = "Define um item aleatório de uma lista.";
162
+ Blockly.Msg["LISTS_SORT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#sorting-a-list";
163
+ Blockly.Msg["LISTS_SORT_ORDER_ASCENDING"] = "ascendente";
164
+ Blockly.Msg["LISTS_SORT_ORDER_DESCENDING"] = "descendente";
165
+ Blockly.Msg["LISTS_SORT_TITLE"] = "ordenar %1 %2 %3";
166
+ Blockly.Msg["LISTS_SORT_TOOLTIP"] = "Ordenar uma cópia de uma lista.";
167
+ Blockly.Msg["LISTS_SORT_TYPE_IGNORECASE"] = "alfabética, ignorar maiúsculas/minúsculas";
168
+ Blockly.Msg["LISTS_SORT_TYPE_NUMERIC"] = "numérica";
169
+ Blockly.Msg["LISTS_SORT_TYPE_TEXT"] = "alfabética";
170
+ Blockly.Msg["LISTS_SPLIT_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; // untranslated
171
+ Blockly.Msg["LISTS_SPLIT_LIST_FROM_TEXT"] = "fazer lista a partir de texto";
172
+ Blockly.Msg["LISTS_SPLIT_TEXT_FROM_LIST"] = "fazer texto a partir da lista";
173
+ Blockly.Msg["LISTS_SPLIT_TOOLTIP_JOIN"] = "Juntar uma lista de textos num único texto, separado por um delimitador.";
174
+ Blockly.Msg["LISTS_SPLIT_TOOLTIP_SPLIT"] = "Dividir o texto numa lista de textos, separando-o em cada delimitador.";
175
+ Blockly.Msg["LISTS_SPLIT_WITH_DELIMITER"] = "com delimitador";
176
+ Blockly.Msg["LOGIC_BOOLEAN_FALSE"] = "falso";
177
+ Blockly.Msg["LOGIC_BOOLEAN_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#values"; // untranslated
178
+ Blockly.Msg["LOGIC_BOOLEAN_TOOLTIP"] = "Retorna verdadeiro ou falso.";
179
+ Blockly.Msg["LOGIC_BOOLEAN_TRUE"] = "verdadeiro";
180
+ Blockly.Msg["LOGIC_COMPARE_HELPURL"] = "http://pt.wikipedia.org/wiki/Inequa%C3%A7%C3%A3o";
181
+ Blockly.Msg["LOGIC_COMPARE_TOOLTIP_EQ"] = "Retorna verdadeiro se ambas as entradas forem iguais entre si.";
182
+ Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GT"] = "Retorna verdadeiro se a primeira entrada for maior que a segunda entrada.";
183
+ Blockly.Msg["LOGIC_COMPARE_TOOLTIP_GTE"] = "Retorna verdadeiro se a primeira entrada for maior ou igual à segunda entrada.";
184
+ Blockly.Msg["LOGIC_COMPARE_TOOLTIP_LT"] = "Retorna verdadeiro se a primeira entrada for menor que a segunda entrada.";
185
+ Blockly.Msg["LOGIC_COMPARE_TOOLTIP_LTE"] = "Retorna verdadeiro se a primeira entrada for menor ou igual à segunda entrada.";
186
+ Blockly.Msg["LOGIC_COMPARE_TOOLTIP_NEQ"] = "Retorna verdadeiro se ambas as entradas forem diferentes entre si.";
187
+ Blockly.Msg["LOGIC_NEGATE_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#not"; // untranslated
188
+ Blockly.Msg["LOGIC_NEGATE_TITLE"] = "não %1";
189
+ Blockly.Msg["LOGIC_NEGATE_TOOLTIP"] = "Retorna verdadeiro se a entrada for falsa. Retorna falso se a entrada for verdadeira.";
190
+ Blockly.Msg["LOGIC_NULL"] = "nulo";
191
+ Blockly.Msg["LOGIC_NULL_HELPURL"] = "http://en.wikipedia.org/wiki/Nullable_type";
192
+ Blockly.Msg["LOGIC_NULL_TOOLTIP"] = "Retorna nulo.";
193
+ Blockly.Msg["LOGIC_OPERATION_AND"] = "e";
194
+ Blockly.Msg["LOGIC_OPERATION_HELPURL"] = "https://github.com/google/blockly/wiki/Logic#logical-operations"; // untranslated
195
+ Blockly.Msg["LOGIC_OPERATION_OR"] = "ou";
196
+ Blockly.Msg["LOGIC_OPERATION_TOOLTIP_AND"] = "Retorna verdadeiro se ambas as entradas forem verdadeiras.";
197
+ Blockly.Msg["LOGIC_OPERATION_TOOLTIP_OR"] = "Retorna verdadeiro se pelo menos uma das estradas for verdadeira.";
198
+ Blockly.Msg["LOGIC_TERNARY_CONDITION"] = "teste";
199
+ Blockly.Msg["LOGIC_TERNARY_HELPURL"] = "http://en.wikipedia.org/wiki/%3F:";
200
+ Blockly.Msg["LOGIC_TERNARY_IF_FALSE"] = "se falso";
201
+ Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "se verdadeiro";
202
+ Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "Avalia a condição em \"teste\". Se a condição for verdadeira retorna o valor \"se verdadeiro\", senão retorna o valor \"se falso\".";
203
+ Blockly.Msg["MATH_ADDITION_SYMBOL"] = "+";
204
+ Blockly.Msg["MATH_ARITHMETIC_HELPURL"] = "http://pt.wikipedia.org/wiki/Aritm%C3%A9tica";
205
+ Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_ADD"] = "Retorna a soma de dois números.";
206
+ Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_DIVIDE"] = "Retorna o quociente da divisão de dois números.";
207
+ Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_MINUS"] = "Retorna a diferença de dois números.";
208
+ Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_MULTIPLY"] = "Retorna o produto de dois números.";
209
+ Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_POWER"] = "Retorna o primeiro número elevado à potência do segundo número.";
210
+ Blockly.Msg["MATH_ATAN2_HELPURL"] = "https://en.wikipedia.org/wiki/Atan2";
211
+ Blockly.Msg["MATH_ATAN2_TITLE"] = "atan2 de X:%1 Y:%2";
212
+ Blockly.Msg["MATH_ATAN2_TOOLTIP"] = "Devolver o arco tangente do ponto (X, Y) em graus entre -180 e 180.";
213
+ Blockly.Msg["MATH_CHANGE_HELPURL"] = "http://pt.wikipedia.org/wiki/Adi%C3%A7%C3%A3o";
214
+ Blockly.Msg["MATH_CHANGE_TITLE"] = "alterar %1 por %2";
215
+ Blockly.Msg["MATH_CHANGE_TOOLTIP"] = "Soma um número à variável \"%1\".";
216
+ Blockly.Msg["MATH_CONSTANT_HELPURL"] = "http://pt.wikipedia.org/wiki/Anexo:Lista_de_constantes_matem%C3%A1ticas";
217
+ Blockly.Msg["MATH_CONSTANT_TOOLTIP"] = "Retorna uma das constantes comuns: π (3.141…), e (2.718…), φ (1.618…), sqrt(2) (1.414…), sqrt(½) (0.707…), ou ∞ (infinito).";
218
+ Blockly.Msg["MATH_CONSTRAIN_HELPURL"] = "https://en.wikipedia.org/wiki/Clamping_(graphics)"; // untranslated
219
+ Blockly.Msg["MATH_CONSTRAIN_TITLE"] = "restringe %1 inferior %2 superior %3";
220
+ Blockly.Msg["MATH_CONSTRAIN_TOOLTIP"] = "Restringe um número entre os limites especificados (inclusive).";
221
+ Blockly.Msg["MATH_DIVISION_SYMBOL"] = "÷";
222
+ Blockly.Msg["MATH_IS_DIVISIBLE_BY"] = "é divisível por";
223
+ Blockly.Msg["MATH_IS_EVEN"] = "é par";
224
+ Blockly.Msg["MATH_IS_NEGATIVE"] = "é negativo";
225
+ Blockly.Msg["MATH_IS_ODD"] = "é impar";
226
+ Blockly.Msg["MATH_IS_POSITIVE"] = "é positivo";
227
+ Blockly.Msg["MATH_IS_PRIME"] = "é primo";
228
+ Blockly.Msg["MATH_IS_TOOLTIP"] = "Verifica se um número é par, impar, primo, inteiro, positivo, negativo, ou se é divisível por outro número. Retorna verdadeiro ou falso.";
229
+ Blockly.Msg["MATH_IS_WHOLE"] = "é inteiro";
230
+ Blockly.Msg["MATH_MODULO_HELPURL"] = "http://pt.wikipedia.org/wiki/Opera%C3%A7%C3%A3o_m%C3%B3dulo";
231
+ Blockly.Msg["MATH_MODULO_TITLE"] = "resto da divisão de %1 ÷ %2";
232
+ Blockly.Msg["MATH_MODULO_TOOLTIP"] = "Retorna o resto da divisão de dois números.";
233
+ Blockly.Msg["MATH_MULTIPLICATION_SYMBOL"] = "×";
234
+ Blockly.Msg["MATH_NUMBER_HELPURL"] = "http://pt.wikipedia.org/wiki/N%C3%BAmero";
235
+ Blockly.Msg["MATH_NUMBER_TOOLTIP"] = "Um número.";
236
+ Blockly.Msg["MATH_ONLIST_HELPURL"] = ""; // untranslated
237
+ Blockly.Msg["MATH_ONLIST_OPERATOR_AVERAGE"] = "média de uma lista";
238
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MAX"] = "maior de uma lista";
239
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MEDIAN"] = "mediana de uma lista";
240
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MIN"] = "menor de uma lista";
241
+ Blockly.Msg["MATH_ONLIST_OPERATOR_MODE"] = "moda de uma lista";
242
+ Blockly.Msg["MATH_ONLIST_OPERATOR_RANDOM"] = "item aleatório de uma lista";
243
+ Blockly.Msg["MATH_ONLIST_OPERATOR_STD_DEV"] = "desvio padrão de uma lista";
244
+ Blockly.Msg["MATH_ONLIST_OPERATOR_SUM"] = "soma da lista";
245
+ Blockly.Msg["MATH_ONLIST_TOOLTIP_AVERAGE"] = "Retorna a média aritmética dos valores números da lista.";
246
+ Blockly.Msg["MATH_ONLIST_TOOLTIP_MAX"] = "Retorna o maior número da lista.";
247
+ Blockly.Msg["MATH_ONLIST_TOOLTIP_MEDIAN"] = "Retorna a mediana da lista.";
248
+ Blockly.Msg["MATH_ONLIST_TOOLTIP_MIN"] = "Retorna o menor número da lista.";
249
+ Blockly.Msg["MATH_ONLIST_TOOLTIP_MODE"] = "Retorna a lista de item(ns) mais comum(ns) da lista.";
250
+ Blockly.Msg["MATH_ONLIST_TOOLTIP_RANDOM"] = "Retorna um elemento aleatório da lista.";
251
+ Blockly.Msg["MATH_ONLIST_TOOLTIP_STD_DEV"] = "Retorna o desvio padrão dos números da lista.";
252
+ Blockly.Msg["MATH_ONLIST_TOOLTIP_SUM"] = "Retorna a soma de todos os números da lista.";
253
+ Blockly.Msg["MATH_POWER_SYMBOL"] = "^";
254
+ Blockly.Msg["MATH_RANDOM_FLOAT_HELPURL"] = "http://pt.wikipedia.org/wiki/N%C3%BAmero_aleat%C3%B3rio";
255
+ Blockly.Msg["MATH_RANDOM_FLOAT_TITLE_RANDOM"] = "fração aleatória";
256
+ Blockly.Msg["MATH_RANDOM_FLOAT_TOOLTIP"] = "Insere uma fração aleatória entre 0.0 (inclusive) e 1.0 (exclusive).";
257
+ Blockly.Msg["MATH_RANDOM_INT_HELPURL"] = "http://pt.wikipedia.org/wiki/N%C3%BAmero_aleat%C3%B3rio";
258
+ Blockly.Msg["MATH_RANDOM_INT_TITLE"] = "inteiro aleatório entre %1 e %2";
259
+ Blockly.Msg["MATH_RANDOM_INT_TOOLTIP"] = "Retorna um número inteiro entre os dois limites especificados, inclusive.";
260
+ Blockly.Msg["MATH_ROUND_HELPURL"] = "http://pt.wikipedia.org/wiki/Arredondamento";
261
+ Blockly.Msg["MATH_ROUND_OPERATOR_ROUND"] = "arredonda";
262
+ Blockly.Msg["MATH_ROUND_OPERATOR_ROUNDDOWN"] = "arredonda para baixo";
263
+ Blockly.Msg["MATH_ROUND_OPERATOR_ROUNDUP"] = "arredonda para cima";
264
+ Blockly.Msg["MATH_ROUND_TOOLTIP"] = "Arredonda um número para cima ou para baixo.";
265
+ Blockly.Msg["MATH_SINGLE_HELPURL"] = "http://pt.wikipedia.org/wiki/Raiz_quadrada";
266
+ Blockly.Msg["MATH_SINGLE_OP_ABSOLUTE"] = "absoluto";
267
+ Blockly.Msg["MATH_SINGLE_OP_ROOT"] = "raíz quadrada";
268
+ Blockly.Msg["MATH_SINGLE_TOOLTIP_ABS"] = "Retorna o valor absoluto de um número.";
269
+ Blockly.Msg["MATH_SINGLE_TOOLTIP_EXP"] = "Retorna o número e elevado à potência de um número.";
270
+ Blockly.Msg["MATH_SINGLE_TOOLTIP_LN"] = "Retorna o logarítmo natural de um número.";
271
+ Blockly.Msg["MATH_SINGLE_TOOLTIP_LOG10"] = "Retorna o logarítmo em base 10 de um número.";
272
+ Blockly.Msg["MATH_SINGLE_TOOLTIP_NEG"] = "Retorna o oposto de um número.";
273
+ Blockly.Msg["MATH_SINGLE_TOOLTIP_POW10"] = "Retorna 10 elevado à potência de um número.";
274
+ Blockly.Msg["MATH_SINGLE_TOOLTIP_ROOT"] = "Retorna a raiz quadrada de um número.";
275
+ Blockly.Msg["MATH_SUBTRACTION_SYMBOL"] = "-";
276
+ Blockly.Msg["MATH_TRIG_ACOS"] = "acos";
277
+ Blockly.Msg["MATH_TRIG_ASIN"] = "asin";
278
+ Blockly.Msg["MATH_TRIG_ATAN"] = "atan";
279
+ Blockly.Msg["MATH_TRIG_COS"] = "cos";
280
+ Blockly.Msg["MATH_TRIG_HELPURL"] = "http://pt.wikipedia.org/wiki/Fun%C3%A7%C3%A3o_trigonom%C3%A9trica";
281
+ Blockly.Msg["MATH_TRIG_SIN"] = "sin";
282
+ Blockly.Msg["MATH_TRIG_TAN"] = "tan";
283
+ Blockly.Msg["MATH_TRIG_TOOLTIP_ACOS"] = "Retorna o arco cosseno de um número.";
284
+ Blockly.Msg["MATH_TRIG_TOOLTIP_ASIN"] = "Retorna o arco seno de um número.";
285
+ Blockly.Msg["MATH_TRIG_TOOLTIP_ATAN"] = "Retorna o arco tangente de um número.";
286
+ Blockly.Msg["MATH_TRIG_TOOLTIP_COS"] = "Retorna o cosseno de um grau (não radiano).";
287
+ Blockly.Msg["MATH_TRIG_TOOLTIP_SIN"] = "Retorna o seno de um grau (não radiano).";
288
+ Blockly.Msg["MATH_TRIG_TOOLTIP_TAN"] = "Retorna a tangente de um grau (não radiano).";
289
+ Blockly.Msg["NEW_COLOUR_VARIABLE"] = "Criar variável colorida...";
290
+ Blockly.Msg["NEW_NUMBER_VARIABLE"] = "Criar variável numérica...";
291
+ Blockly.Msg["NEW_STRING_VARIABLE"] = "Criar variável de segmentos de texto...";
292
+ Blockly.Msg["NEW_VARIABLE"] = "Criar variável…";
293
+ Blockly.Msg["NEW_VARIABLE_TITLE"] = "Nome da nova variável:";
294
+ Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "Tipo da nova variável:";
295
+ Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
296
+ Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "permitir declarações";
297
+ Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "com:";
298
+ Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://pt.wikipedia.org/wiki/Sub-rotina";
299
+ Blockly.Msg["PROCEDURES_CALLNORETURN_TOOLTIP"] = "Executa a função \"%1\".";
300
+ Blockly.Msg["PROCEDURES_CALLRETURN_HELPURL"] = "https://pt.wikipedia.org/wiki/Sub-rotina";
301
+ Blockly.Msg["PROCEDURES_CALLRETURN_TOOLTIP"] = "Executa a função \"%1\" e usa o seu retorno.";
302
+ Blockly.Msg["PROCEDURES_CALL_BEFORE_PARAMS"] = "com:";
303
+ Blockly.Msg["PROCEDURES_CREATE_DO"] = "Criar \"%1\"";
304
+ Blockly.Msg["PROCEDURES_DEFNORETURN_COMMENT"] = "Descreva esta função...";
305
+ Blockly.Msg["PROCEDURES_DEFNORETURN_DO"] = ""; // untranslated
306
+ Blockly.Msg["PROCEDURES_DEFNORETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine";
307
+ Blockly.Msg["PROCEDURES_DEFNORETURN_PROCEDURE"] = "faz algo";
308
+ Blockly.Msg["PROCEDURES_DEFNORETURN_TITLE"] = "para";
309
+ Blockly.Msg["PROCEDURES_DEFNORETURN_TOOLTIP"] = "Cria uma função que não tem retorno.";
310
+ Blockly.Msg["PROCEDURES_DEFRETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine";
311
+ Blockly.Msg["PROCEDURES_DEFRETURN_RETURN"] = "retorna";
312
+ Blockly.Msg["PROCEDURES_DEFRETURN_TOOLTIP"] = "Cria uma função que possui um valor de retorno.";
313
+ Blockly.Msg["PROCEDURES_DEF_DUPLICATE_WARNING"] = "Aviso: Esta função tem parâmetros duplicados.";
314
+ Blockly.Msg["PROCEDURES_HIGHLIGHT_DEF"] = "Destacar definição da função";
315
+ Blockly.Msg["PROCEDURES_IFRETURN_HELPURL"] = "http://c2.com/cgi/wiki?GuardClause"; // untranslated
316
+ Blockly.Msg["PROCEDURES_IFRETURN_TOOLTIP"] = "se o valor é verdadeiro, então retorna um segundo valor.";
317
+ Blockly.Msg["PROCEDURES_IFRETURN_WARNING"] = "Aviso: Este bloco só pode ser utilizado dentro da definição de uma função.";
318
+ Blockly.Msg["PROCEDURES_MUTATORARG_TITLE"] = "nome da entrada:";
319
+ Blockly.Msg["PROCEDURES_MUTATORARG_TOOLTIP"] = "Adicionar uma entrada para a função.";
320
+ Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TITLE"] = "entradas";
321
+ Blockly.Msg["PROCEDURES_MUTATORCONTAINER_TOOLTIP"] = "Adicionar, remover ou reordenar as entradas para esta função.";
322
+ Blockly.Msg["REDO"] = "Refazer";
323
+ Blockly.Msg["REMOVE_COMMENT"] = "Remover Comentário";
324
+ Blockly.Msg["RENAME_VARIABLE"] = "Renomear variável...";
325
+ Blockly.Msg["RENAME_VARIABLE_TITLE"] = "Renomear todas as variáveis '%1' para:";
326
+ Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
327
+ Blockly.Msg["TEXT_APPEND_TITLE"] = "para %1 acrescentar texto %2";
328
+ Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "Acrescentar um pedaço de texto à variável \"%1\".";
329
+ Blockly.Msg["TEXT_CHANGECASE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#adjusting-text-case"; // untranslated
330
+ Blockly.Msg["TEXT_CHANGECASE_OPERATOR_LOWERCASE"] = "para minúsculas";
331
+ Blockly.Msg["TEXT_CHANGECASE_OPERATOR_TITLECASE"] = "para Iniciais Maiúsculas";
332
+ Blockly.Msg["TEXT_CHANGECASE_OPERATOR_UPPERCASE"] = "para MAIÚSCULAS";
333
+ Blockly.Msg["TEXT_CHANGECASE_TOOLTIP"] = "Retorna uma cópia do texto em formato diferente.";
334
+ Blockly.Msg["TEXT_CHARAT_FIRST"] = "obter primeira letra";
335
+ Blockly.Msg["TEXT_CHARAT_FROM_END"] = "obter letra nº a partir do final";
336
+ Blockly.Msg["TEXT_CHARAT_FROM_START"] = "obter letra nº";
337
+ Blockly.Msg["TEXT_CHARAT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated
338
+ Blockly.Msg["TEXT_CHARAT_LAST"] = "obter última letra";
339
+ Blockly.Msg["TEXT_CHARAT_RANDOM"] = "obter letra aleatória";
340
+ Blockly.Msg["TEXT_CHARAT_TAIL"] = ""; // untranslated
341
+ Blockly.Msg["TEXT_CHARAT_TITLE"] = "no texto %1 %2";
342
+ Blockly.Msg["TEXT_CHARAT_TOOLTIP"] = "Retorna a letra na posição especificada.";
343
+ Blockly.Msg["TEXT_COUNT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#counting-substrings";
344
+ Blockly.Msg["TEXT_COUNT_MESSAGE0"] = "contar %1 em %2";
345
+ Blockly.Msg["TEXT_COUNT_TOOLTIP"] = "Conte quantas vezes um certo texto aparece dentro de algum outro texto.";
346
+ Blockly.Msg["TEXT_CREATE_JOIN_ITEM_TOOLTIP"] = "Acrescentar um item ao texto.";
347
+ Blockly.Msg["TEXT_CREATE_JOIN_TITLE_JOIN"] = "unir";
348
+ Blockly.Msg["TEXT_CREATE_JOIN_TOOLTIP"] = "Acrescenta, remove ou reordena seções para reconfigurar este bloco de texto.";
349
+ Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_END"] = "até letra nº a partir do final";
350
+ Blockly.Msg["TEXT_GET_SUBSTRING_END_FROM_START"] = "até letra nº";
351
+ Blockly.Msg["TEXT_GET_SUBSTRING_END_LAST"] = "até última letra";
352
+ Blockly.Msg["TEXT_GET_SUBSTRING_HELPURL"] = "https://github.com/google/blockly/wiki/Text#extracting-a-region-of-text"; // untranslated
353
+ Blockly.Msg["TEXT_GET_SUBSTRING_INPUT_IN_TEXT"] = "no texto";
354
+ Blockly.Msg["TEXT_GET_SUBSTRING_START_FIRST"] = "obter subsequência a partir da primeira letra";
355
+ Blockly.Msg["TEXT_GET_SUBSTRING_START_FROM_END"] = "obter subsequência de tamanho # a partir do final";
356
+ Blockly.Msg["TEXT_GET_SUBSTRING_START_FROM_START"] = "obter subsequência de tamanho #";
357
+ Blockly.Msg["TEXT_GET_SUBSTRING_TAIL"] = ""; // untranslated
358
+ Blockly.Msg["TEXT_GET_SUBSTRING_TOOLTIP"] = "Retorna a parte especificada do texto.";
359
+ Blockly.Msg["TEXT_INDEXOF_HELPURL"] = "https://github.com/google/blockly/wiki/Text#finding-text"; // untranslated
360
+ Blockly.Msg["TEXT_INDEXOF_OPERATOR_FIRST"] = "primeira ocorrência do texto";
361
+ Blockly.Msg["TEXT_INDEXOF_OPERATOR_LAST"] = "última ocorrência do texto";
362
+ Blockly.Msg["TEXT_INDEXOF_TITLE"] = "no texto %1 %2 %3";
363
+ Blockly.Msg["TEXT_INDEXOF_TOOLTIP"] = "Retorna a posição da primeira/última ocorrência do primeiro texto no segundo texto. Retorna %1 se o texto não for encontrado.";
364
+ Blockly.Msg["TEXT_ISEMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Text#checking-for-empty-text"; // untranslated
365
+ Blockly.Msg["TEXT_ISEMPTY_TITLE"] = "%1 está vazio";
366
+ Blockly.Msg["TEXT_ISEMPTY_TOOLTIP"] = "Retorna verdadeiro se o texto fornecido estiver vazio.";
367
+ Blockly.Msg["TEXT_JOIN_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-creation"; // untranslated
368
+ Blockly.Msg["TEXT_JOIN_TITLE_CREATEWITH"] = "criar texto com";
369
+ Blockly.Msg["TEXT_JOIN_TOOLTIP"] = "Criar um pedaço de texto juntando qualquer número de itens.";
370
+ Blockly.Msg["TEXT_LENGTH_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
371
+ Blockly.Msg["TEXT_LENGTH_TITLE"] = "tamanho de %1";
372
+ Blockly.Msg["TEXT_LENGTH_TOOLTIP"] = "Devolve o número de letras (incluindo espaços) do texto fornecido.";
373
+ Blockly.Msg["TEXT_PRINT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#printing-text"; // untranslated
374
+ Blockly.Msg["TEXT_PRINT_TITLE"] = "imprime %1";
375
+ Blockly.Msg["TEXT_PRINT_TOOLTIP"] = "Imprime o texto, número ou outro valor especificado.";
376
+ Blockly.Msg["TEXT_PROMPT_HELPURL"] = "https://github.com/google/blockly/wiki/Text#getting-input-from-the-user"; // untranslated
377
+ Blockly.Msg["TEXT_PROMPT_TOOLTIP_NUMBER"] = "Pede ao utilizador um número.";
378
+ Blockly.Msg["TEXT_PROMPT_TOOLTIP_TEXT"] = "Pede ao utilizador um texto.";
379
+ Blockly.Msg["TEXT_PROMPT_TYPE_NUMBER"] = "pede um número com a mensagem";
380
+ Blockly.Msg["TEXT_PROMPT_TYPE_TEXT"] = "Pede um texto com a mensagem";
381
+ Blockly.Msg["TEXT_REPLACE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#replacing-substrings";
382
+ Blockly.Msg["TEXT_REPLACE_MESSAGE0"] = "substituir %1 por %2 em %3";
383
+ Blockly.Msg["TEXT_REPLACE_TOOLTIP"] = "Substituir todas as ocorrências de um certo texto dentro de algum outro texto.";
384
+ Blockly.Msg["TEXT_REVERSE_HELPURL"] = "https://github.com/google/blockly/wiki/Text#reversing-text";
385
+ Blockly.Msg["TEXT_REVERSE_MESSAGE0"] = "inverter %1";
386
+ Blockly.Msg["TEXT_REVERSE_TOOLTIP"] = "Inverte a ordem dos caracteres no texto.";
387
+ Blockly.Msg["TEXT_TEXT_HELPURL"] = "http://pt.wikipedia.org/wiki/Cadeia_de_caracteres";
388
+ Blockly.Msg["TEXT_TEXT_TOOLTIP"] = "Uma letra, palavra ou linha de texto.";
389
+ Blockly.Msg["TEXT_TRIM_HELPURL"] = "https://github.com/google/blockly/wiki/Text#trimming-removing-spaces"; // untranslated
390
+ Blockly.Msg["TEXT_TRIM_OPERATOR_BOTH"] = "remover espaços de ambos os lados";
391
+ Blockly.Msg["TEXT_TRIM_OPERATOR_LEFT"] = "remover espaços à esquerda de";
392
+ Blockly.Msg["TEXT_TRIM_OPERATOR_RIGHT"] = "remover espaços à direita";
393
+ Blockly.Msg["TEXT_TRIM_TOOLTIP"] = "Retorna uma cópia do texto com os espaços removidos de uma ou ambas as extremidades.";
394
+ Blockly.Msg["TODAY"] = "Hoje";
395
+ Blockly.Msg["UNDO"] = "Desfazer";
396
+ Blockly.Msg["UNNAMED_KEY"] = "sem nome";
397
+ Blockly.Msg["VARIABLES_DEFAULT_NAME"] = "item";
398
+ Blockly.Msg["VARIABLES_GET_CREATE_SET"] = "Criar \"definir %1\"";
399
+ Blockly.Msg["VARIABLES_GET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#get"; // untranslated
400
+ Blockly.Msg["VARIABLES_GET_TOOLTIP"] = "Retorna o valor desta variável.";
401
+ Blockly.Msg["VARIABLES_SET"] = "definir %1 para %2";
402
+ Blockly.Msg["VARIABLES_SET_CREATE_GET"] = "Criar \"obter %1\"";
403
+ Blockly.Msg["VARIABLES_SET_HELPURL"] = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated
404
+ Blockly.Msg["VARIABLES_SET_TOOLTIP"] = "Define esta variável para o valor inserido.";
405
+ Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "Já existe uma variável com o nome de '%1'.";
406
+ Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "Já existe uma variável chamada '%1' para outra do tipo: '%2'.";
407
+ Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Espaço de trabalho de Blockly";
408
+ Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Diz algo...";
409
+ Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
410
+ Blockly.Msg["CONTROLS_FOR_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
411
+ Blockly.Msg["CONTROLS_IF_ELSEIF_TITLE_ELSEIF"] = Blockly.Msg["CONTROLS_IF_MSG_ELSEIF"];
412
+ Blockly.Msg["CONTROLS_IF_ELSE_TITLE_ELSE"] = Blockly.Msg["CONTROLS_IF_MSG_ELSE"];
413
+ Blockly.Msg["CONTROLS_IF_IF_TITLE_IF"] = Blockly.Msg["CONTROLS_IF_MSG_IF"];
414
+ Blockly.Msg["CONTROLS_IF_MSG_THEN"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
415
+ Blockly.Msg["CONTROLS_WHILEUNTIL_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
416
+ Blockly.Msg["LISTS_CREATE_WITH_ITEM_TITLE"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
417
+ Blockly.Msg["LISTS_GET_INDEX_HELPURL"] = Blockly.Msg["LISTS_INDEX_OF_HELPURL"];
418
+ Blockly.Msg["LISTS_GET_INDEX_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
419
+ Blockly.Msg["LISTS_GET_SUBLIST_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
420
+ Blockly.Msg["LISTS_INDEX_OF_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
421
+ Blockly.Msg["LISTS_SET_INDEX_INPUT_IN_LIST"] = Blockly.Msg["LISTS_INLIST"];
422
+ Blockly.Msg["MATH_CHANGE_TITLE_ITEM"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
423
+ Blockly.Msg["PROCEDURES_DEFRETURN_COMMENT"] = Blockly.Msg["PROCEDURES_DEFNORETURN_COMMENT"];
424
+ Blockly.Msg["PROCEDURES_DEFRETURN_DO"] = Blockly.Msg["PROCEDURES_DEFNORETURN_DO"];
425
+ Blockly.Msg["PROCEDURES_DEFRETURN_PROCEDURE"] = Blockly.Msg["PROCEDURES_DEFNORETURN_PROCEDURE"];
426
+ Blockly.Msg["PROCEDURES_DEFRETURN_TITLE"] = Blockly.Msg["PROCEDURES_DEFNORETURN_TITLE"];
427
+ Blockly.Msg["TEXT_APPEND_VARIABLE"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
428
+ Blockly.Msg["TEXT_CREATE_JOIN_ITEM_TITLE_ITEM"] = Blockly.Msg["VARIABLES_DEFAULT_NAME"];
429
429
 
430
- messages["MATH_HUE"] = "230";
431
- messages["LOOPS_HUE"] = "120";
432
- messages["LISTS_HUE"] = "260";
433
- messages["LOGIC_HUE"] = "210";
434
- messages["VARIABLES_HUE"] = "330";
435
- messages["TEXTS_HUE"] = "160";
436
- messages["PROCEDURES_HUE"] = "290";
437
- messages["COLOUR_HUE"] = "20";
438
- messages["VARIABLES_DYNAMIC_HUE"] = "310";
439
- return messages;
430
+ Blockly.Msg["MATH_HUE"] = "230";
431
+ Blockly.Msg["LOOPS_HUE"] = "120";
432
+ Blockly.Msg["LISTS_HUE"] = "260";
433
+ Blockly.Msg["LOGIC_HUE"] = "210";
434
+ Blockly.Msg["VARIABLES_HUE"] = "330";
435
+ Blockly.Msg["TEXTS_HUE"] = "160";
436
+ Blockly.Msg["PROCEDURES_HUE"] = "290";
437
+ Blockly.Msg["COLOUR_HUE"] = "20";
438
+ Blockly.Msg["VARIABLES_DYNAMIC_HUE"] = "310";
439
+ return Blockly.Msg;
440
440
  }));