blockly 9.0.0-beta.0 → 9.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (608) hide show
  1. package/blockly.min.js +401 -405
  2. package/blockly_compressed.js +398 -402
  3. package/blockly_compressed.js.map +1 -1
  4. package/blocks.d.ts +0 -5
  5. package/blocks_compressed.js +3 -3
  6. package/blocks_compressed.js.map +1 -1
  7. package/closure/goog/base.d.ts +1 -0
  8. package/closure/goog/base_minimal.d.ts +1 -0
  9. package/closure/goog/goog.d.ts +1 -0
  10. package/core/any_aliases.d.ts +1 -0
  11. package/core/block.d.ts +145 -53
  12. package/core/block_animations.d.ts +5 -0
  13. package/core/block_drag_surface.d.ts +18 -5
  14. package/core/block_dragger.d.ts +20 -5
  15. package/core/block_svg.d.ts +89 -21
  16. package/core/blockly.d.ts +29 -8
  17. package/core/blockly_options.d.ts +2 -0
  18. package/core/blocks.d.ts +2 -0
  19. package/core/browser_events.d.ts +16 -7
  20. package/core/bubble.d.ts +42 -12
  21. package/core/bubble_dragger.d.ts +9 -2
  22. package/core/bump_objects.d.ts +6 -2
  23. package/core/clipboard.d.ts +6 -2
  24. package/core/comment.d.ts +13 -3
  25. package/core/common.d.ts +35 -9
  26. package/core/component_manager.d.ts +16 -6
  27. package/core/config.d.ts +1 -0
  28. package/core/connection.d.ts +48 -18
  29. package/core/connection_checker.d.ts +16 -7
  30. package/core/connection_db.d.ts +17 -6
  31. package/core/connection_type.d.ts +2 -0
  32. package/core/constants.d.ts +3 -0
  33. package/core/contextmenu.d.ts +15 -5
  34. package/core/contextmenu_items.d.ts +15 -0
  35. package/core/contextmenu_registry.d.ts +12 -7
  36. package/core/css.d.ts +3 -0
  37. package/core/delete_area.d.ts +5 -1
  38. package/core/dialog.d.ts +14 -7
  39. package/core/drag_target.d.ts +10 -2
  40. package/core/dropdowndiv.d.ts +42 -10
  41. package/core/events/events.d.ts +1 -0
  42. package/core/events/events_abstract.d.ts +10 -3
  43. package/core/events/events_block_base.d.ts +5 -1
  44. package/core/events/events_block_change.d.ts +10 -3
  45. package/core/events/events_block_create.d.ts +6 -1
  46. package/core/events/events_block_delete.d.ts +6 -1
  47. package/core/events/events_block_drag.d.ts +5 -1
  48. package/core/events/events_block_move.d.ts +10 -3
  49. package/core/events/events_bubble_open.d.ts +6 -2
  50. package/core/events/events_click.d.ts +5 -1
  51. package/core/events/events_comment_base.d.ts +6 -1
  52. package/core/events/events_comment_change.d.ts +8 -2
  53. package/core/events/events_comment_create.d.ts +6 -1
  54. package/core/events/events_comment_delete.d.ts +6 -1
  55. package/core/events/events_comment_move.d.ts +9 -2
  56. package/core/events/events_marker_move.d.ts +5 -1
  57. package/core/events/events_selected.d.ts +5 -1
  58. package/core/events/events_theme_change.d.ts +5 -1
  59. package/core/events/events_toolbox_item_select.d.ts +5 -1
  60. package/core/events/events_trashcan_open.d.ts +5 -1
  61. package/core/events/events_ui.d.ts +5 -1
  62. package/core/events/events_ui_base.d.ts +2 -0
  63. package/core/events/events_var_base.d.ts +5 -1
  64. package/core/events/events_var_create.d.ts +6 -1
  65. package/core/events/events_var_delete.d.ts +6 -1
  66. package/core/events/events_var_rename.d.ts +6 -1
  67. package/core/events/events_viewport.d.ts +5 -1
  68. package/core/events/utils.d.ts +50 -7
  69. package/core/events/workspace_events.d.ts +5 -1
  70. package/core/extensions.d.ts +14 -4
  71. package/core/field.d.ts +93 -34
  72. package/core/field_angle.d.ts +14 -3
  73. package/core/field_checkbox.d.ts +20 -7
  74. package/core/field_colour.d.ts +22 -6
  75. package/core/field_dropdown.d.ts +28 -8
  76. package/core/field_image.d.ts +15 -4
  77. package/core/field_label.d.ts +8 -2
  78. package/core/field_label_serializable.d.ts +4 -1
  79. package/core/field_multilineinput.d.ts +21 -6
  80. package/core/field_number.d.ts +22 -6
  81. package/core/field_registry.d.ts +8 -2
  82. package/core/field_textinput.d.ts +28 -8
  83. package/core/field_variable.d.ts +36 -13
  84. package/core/flyout_base.d.ts +70 -24
  85. package/core/flyout_button.d.ts +12 -5
  86. package/core/flyout_horizontal.d.ts +14 -6
  87. package/core/flyout_metrics_manager.d.ts +6 -3
  88. package/core/flyout_vertical.d.ts +14 -6
  89. package/core/generator.d.ts +39 -20
  90. package/core/gesture.d.ts +48 -13
  91. package/core/grid.d.ts +19 -15
  92. package/core/icon.d.ts +12 -3
  93. package/core/inject.d.ts +3 -1
  94. package/core/input.d.ts +25 -10
  95. package/core/input_types.d.ts +2 -0
  96. package/core/insertion_marker_manager.d.ts +27 -9
  97. package/core/interfaces/i_ast_node_location.d.ts +2 -0
  98. package/core/interfaces/i_ast_node_location_svg.d.ts +4 -0
  99. package/core/interfaces/i_ast_node_location_with_block.d.ts +4 -1
  100. package/core/interfaces/i_autohideable.d.ts +3 -0
  101. package/core/interfaces/i_block_dragger.d.ts +7 -1
  102. package/core/interfaces/i_bounded_element.d.ts +5 -1
  103. package/core/interfaces/i_bubble.d.ts +11 -2
  104. package/core/interfaces/i_collapsible_toolbox_item.d.ts +6 -2
  105. package/core/interfaces/i_component.d.ts +2 -0
  106. package/core/interfaces/i_connection_checker.d.ts +14 -6
  107. package/core/interfaces/i_contextmenu.d.ts +2 -0
  108. package/core/interfaces/i_copyable.d.ts +3 -1
  109. package/core/interfaces/i_deletable.d.ts +4 -1
  110. package/core/interfaces/i_delete_area.d.ts +4 -1
  111. package/core/interfaces/i_drag_target.d.ts +10 -2
  112. package/core/interfaces/i_draggable.d.ts +2 -0
  113. package/core/interfaces/i_flyout.d.ts +27 -11
  114. package/core/interfaces/i_keyboard_accessible.d.ts +4 -1
  115. package/core/interfaces/i_metrics_manager.d.ts +24 -12
  116. package/core/interfaces/i_movable.d.ts +4 -1
  117. package/core/interfaces/i_positionable.d.ts +5 -1
  118. package/core/interfaces/i_registrable.d.ts +2 -0
  119. package/core/interfaces/i_registrable_field.d.ts +2 -0
  120. package/core/interfaces/i_selectable.d.ts +2 -0
  121. package/core/interfaces/i_selectable_toolbox_item.d.ts +10 -3
  122. package/core/interfaces/i_serializer.d.ts +6 -1
  123. package/core/interfaces/i_styleable.d.ts +4 -0
  124. package/core/interfaces/i_toolbox.d.ts +17 -6
  125. package/core/interfaces/i_toolbox_item.d.ts +17 -7
  126. package/core/internal_constants.d.ts +6 -0
  127. package/core/keyboard_nav/ast_node.d.ts +55 -28
  128. package/core/keyboard_nav/basic_cursor.d.ts +20 -9
  129. package/core/keyboard_nav/cursor.d.ts +11 -5
  130. package/core/keyboard_nav/marker.d.ts +9 -2
  131. package/core/keyboard_nav/tab_navigate_cursor.d.ts +4 -1
  132. package/core/main.d.ts +1 -0
  133. package/core/marker_manager.d.ts +13 -2
  134. package/core/menu.d.ts +23 -5
  135. package/core/menuitem.d.ts +22 -7
  136. package/core/metrics_manager.d.ts +30 -15
  137. package/core/msg.d.ts +1 -0
  138. package/core/mutator.d.ts +19 -7
  139. package/core/names.d.ts +20 -8
  140. package/core/options.d.ts +12 -6
  141. package/core/positionable_helpers.d.ts +11 -3
  142. package/core/procedures.d.ts +27 -10
  143. package/core/registry.d.ts +19 -8
  144. package/core/rendered_connection.d.ts +28 -7
  145. package/core/renderers/common/block_rendering.d.ts +9 -2
  146. package/core/renderers/common/constants.d.ts +49 -17
  147. package/core/renderers/common/debug.d.ts +5 -1
  148. package/core/renderers/common/debugger.d.ts +12 -1
  149. package/core/renderers/common/drawer.d.ts +12 -0
  150. package/core/renderers/common/i_path_object.d.ts +15 -0
  151. package/core/renderers/common/info.d.ts +25 -8
  152. package/core/renderers/common/marker_svg.d.ts +35 -6
  153. package/core/renderers/common/path_object.d.ts +20 -0
  154. package/core/renderers/common/renderer.d.ts +33 -12
  155. package/core/renderers/geras/constants.d.ts +2 -0
  156. package/core/renderers/geras/drawer.d.ts +2 -0
  157. package/core/renderers/geras/geras.d.ts +3 -2
  158. package/core/renderers/geras/highlight_constants.d.ts +9 -6
  159. package/core/renderers/geras/highlighter.d.ts +12 -1
  160. package/core/renderers/geras/info.d.ts +4 -1
  161. package/core/renderers/geras/measurables/inline_input.d.ts +2 -0
  162. package/core/renderers/geras/measurables/statement_input.d.ts +2 -0
  163. package/core/renderers/geras/path_object.d.ts +4 -0
  164. package/core/renderers/geras/renderer.d.ts +16 -6
  165. package/core/renderers/measurables/base.d.ts +2 -0
  166. package/core/renderers/measurables/bottom_row.d.ts +9 -3
  167. package/core/renderers/measurables/connection.d.ts +2 -0
  168. package/core/renderers/measurables/external_value_input.d.ts +2 -1
  169. package/core/renderers/measurables/field.d.ts +2 -1
  170. package/core/renderers/measurables/hat.d.ts +2 -1
  171. package/core/renderers/measurables/icon.d.ts +3 -1
  172. package/core/renderers/measurables/in_row_spacer.d.ts +2 -1
  173. package/core/renderers/measurables/inline_input.d.ts +2 -1
  174. package/core/renderers/measurables/input_connection.d.ts +2 -0
  175. package/core/renderers/measurables/input_row.d.ts +4 -1
  176. package/core/renderers/measurables/jagged_edge.d.ts +2 -1
  177. package/core/renderers/measurables/next_connection.d.ts +2 -1
  178. package/core/renderers/measurables/output_connection.d.ts +2 -1
  179. package/core/renderers/measurables/previous_connection.d.ts +2 -1
  180. package/core/renderers/measurables/round_corner.d.ts +2 -1
  181. package/core/renderers/measurables/row.d.ts +27 -5
  182. package/core/renderers/measurables/spacer_row.d.ts +2 -1
  183. package/core/renderers/measurables/square_corner.d.ts +2 -1
  184. package/core/renderers/measurables/statement_input.d.ts +2 -1
  185. package/core/renderers/measurables/top_row.d.ts +7 -3
  186. package/core/renderers/measurables/types.d.ts +54 -25
  187. package/core/renderers/minimalist/constants.d.ts +2 -0
  188. package/core/renderers/minimalist/drawer.d.ts +2 -0
  189. package/core/renderers/minimalist/info.d.ts +4 -1
  190. package/core/renderers/minimalist/minimalist.d.ts +2 -1
  191. package/core/renderers/minimalist/renderer.d.ts +8 -3
  192. package/core/renderers/thrasos/info.d.ts +4 -1
  193. package/core/renderers/thrasos/renderer.d.ts +4 -1
  194. package/core/renderers/thrasos/thrasos.d.ts +2 -1
  195. package/core/renderers/zelos/constants.d.ts +11 -3
  196. package/core/renderers/zelos/drawer.d.ts +3 -0
  197. package/core/renderers/zelos/info.d.ts +10 -5
  198. package/core/renderers/zelos/marker_svg.d.ts +5 -0
  199. package/core/renderers/zelos/measurables/bottom_row.d.ts +2 -0
  200. package/core/renderers/zelos/measurables/inputs.d.ts +2 -0
  201. package/core/renderers/zelos/measurables/row_elements.d.ts +2 -0
  202. package/core/renderers/zelos/measurables/top_row.d.ts +2 -0
  203. package/core/renderers/zelos/path_object.d.ts +8 -1
  204. package/core/renderers/zelos/renderer.d.ts +14 -6
  205. package/core/renderers/zelos/zelos.d.ts +3 -2
  206. package/core/scrollbar.d.ts +41 -9
  207. package/core/scrollbar_pair.d.ts +20 -6
  208. package/core/serialization/blocks.d.ts +10 -4
  209. package/core/serialization/exceptions.d.ts +5 -0
  210. package/core/serialization/priorities.d.ts +3 -0
  211. package/core/serialization/registry.d.ts +3 -0
  212. package/core/serialization/variables.d.ts +2 -0
  213. package/core/serialization/workspaces.d.ts +4 -1
  214. package/core/shortcut_items.d.ts +10 -0
  215. package/core/shortcut_registry.d.ts +25 -9
  216. package/core/sprites.d.ts +2 -4
  217. package/core/theme/classic.d.ts +2 -0
  218. package/core/theme/themes.d.ts +1 -0
  219. package/core/theme/zelos.d.ts +2 -0
  220. package/core/theme.d.ts +14 -3
  221. package/core/theme_manager.d.ts +10 -1
  222. package/core/toolbox/category.d.ts +42 -15
  223. package/core/toolbox/collapsible_category.d.ts +10 -3
  224. package/core/toolbox/separator.d.ts +4 -1
  225. package/core/toolbox/toolbox.d.ts +70 -22
  226. package/core/toolbox/toolbox_item.d.ts +17 -7
  227. package/core/tooltip.d.ts +22 -1
  228. package/core/touch.d.ts +18 -6
  229. package/core/touch_gesture.d.ts +16 -2
  230. package/core/trashcan.d.ts +27 -6
  231. package/core/utils/aria.d.ts +4 -0
  232. package/core/utils/array.d.ts +4 -2
  233. package/core/utils/colour.d.ts +24 -13
  234. package/core/utils/coordinate.d.ts +18 -8
  235. package/core/utils/deprecation.d.ts +6 -4
  236. package/core/utils/dom.d.ts +32 -12
  237. package/core/utils/idgenerator.d.ts +13 -3
  238. package/core/utils/keycodes.d.ts +1 -0
  239. package/core/utils/math.d.ts +7 -3
  240. package/core/utils/metrics.d.ts +1 -0
  241. package/core/utils/object.d.ts +7 -2
  242. package/core/utils/parsing.d.ts +9 -4
  243. package/core/utils/rect.d.ts +5 -3
  244. package/core/utils/sentinel.d.ts +2 -0
  245. package/core/utils/size.d.ts +4 -2
  246. package/core/utils/string.d.ts +13 -6
  247. package/core/utils/style.d.ts +14 -33
  248. package/core/utils/svg.d.ts +5 -2
  249. package/core/utils/svg_math.d.ts +15 -7
  250. package/core/utils/svg_paths.d.ts +20 -10
  251. package/core/utils/toolbox.d.ts +26 -5
  252. package/core/utils/useragent.d.ts +1 -12
  253. package/core/utils/xml.d.ts +13 -5
  254. package/core/utils.d.ts +43 -21
  255. package/core/variable_map.d.ts +26 -9
  256. package/core/variable_model.d.ts +5 -2
  257. package/core/variables.d.ts +33 -18
  258. package/core/variables_dynamic.d.ts +25 -5
  259. package/core/warning.d.ts +8 -3
  260. package/core/widgetdiv.d.ts +15 -6
  261. package/core/workspace.d.ts +80 -30
  262. package/core/workspace_audio.d.ts +6 -0
  263. package/core/workspace_comment.d.ts +33 -11
  264. package/core/workspace_comment_svg.d.ts +52 -9
  265. package/core/workspace_drag_surface_svg.d.ts +20 -14
  266. package/core/workspace_dragger.d.ts +6 -0
  267. package/core/workspace_svg.d.ts +174 -62
  268. package/core/xml.d.ts +26 -11
  269. package/core/zoom_controls.d.ts +16 -6
  270. package/core.d.ts +0 -5
  271. package/dart.d.ts +0 -5
  272. package/dart_compressed.js.map +1 -1
  273. package/index.d.ts +2 -6
  274. package/javascript.d.ts +0 -5
  275. package/javascript_compressed.js.map +1 -1
  276. package/lua.d.ts +0 -5
  277. package/lua_compressed.js.map +1 -1
  278. package/package.json +6 -3
  279. package/php.d.ts +0 -5
  280. package/php_compressed.js.map +1 -1
  281. package/python.d.ts +0 -5
  282. package/python_compressed.js.map +1 -1
  283. package/blocks/blocks.js +0 -48
  284. package/blocks/colour.js +0 -121
  285. package/blocks/lists.js +0 -996
  286. package/blocks/logic.js +0 -665
  287. package/blocks/loops.js +0 -375
  288. package/blocks/math.js +0 -594
  289. package/blocks/procedures.js +0 -1196
  290. package/blocks/text.js +0 -1000
  291. package/blocks/variables.js +0 -176
  292. package/blocks/variables_dynamic.js +0 -192
  293. package/core/any_aliases.ts +0 -1
  294. package/core/block.ts +0 -2102
  295. package/core/block_animations.ts +0 -202
  296. package/core/block_drag_surface.ts +0 -237
  297. package/core/block_dragger.ts +0 -447
  298. package/core/block_svg.ts +0 -1758
  299. package/core/blockly.js +0 -890
  300. package/core/blockly.ts +0 -749
  301. package/core/blockly_options.ts +0 -81
  302. package/core/blocks.ts +0 -29
  303. package/core/browser_events.ts +0 -289
  304. package/core/bubble.ts +0 -892
  305. package/core/bubble_dragger.ts +0 -229
  306. package/core/bump_objects.ts +0 -182
  307. package/core/clipboard.ts +0 -91
  308. package/core/comment.ts +0 -398
  309. package/core/common.ts +0 -288
  310. package/core/component_manager.ts +0 -211
  311. package/core/config.ts +0 -80
  312. package/core/connection.ts +0 -692
  313. package/core/connection_checker.ts +0 -301
  314. package/core/connection_db.ts +0 -289
  315. package/core/connection_type.ts +0 -32
  316. package/core/constants.ts +0 -29
  317. package/core/contextmenu.ts +0 -363
  318. package/core/contextmenu_items.ts +0 -576
  319. package/core/contextmenu_registry.ts +0 -179
  320. package/core/css.ts +0 -560
  321. package/core/delete_area.ts +0 -82
  322. package/core/dialog.ts +0 -127
  323. package/core/drag_target.ts +0 -94
  324. package/core/dropdowndiv.ts +0 -683
  325. package/core/events/events.ts +0 -123
  326. package/core/events/events_abstract.ts +0 -112
  327. package/core/events/events_block_base.ts +0 -65
  328. package/core/events/events_block_change.ts +0 -176
  329. package/core/events/events_block_create.ts +0 -114
  330. package/core/events/events_block_delete.ts +0 -126
  331. package/core/events/events_block_drag.ts +0 -82
  332. package/core/events/events_block_move.ts +0 -206
  333. package/core/events/events_bubble_open.ts +0 -82
  334. package/core/events/events_click.ts +0 -84
  335. package/core/events/events_comment_base.ts +0 -107
  336. package/core/events/events_comment_change.ts +0 -108
  337. package/core/events/events_comment_create.ts +0 -82
  338. package/core/events/events_comment_delete.ts +0 -77
  339. package/core/events/events_comment_move.ts +0 -154
  340. package/core/events/events_marker_move.ts +0 -99
  341. package/core/events/events_selected.ts +0 -78
  342. package/core/events/events_theme_change.ts +0 -67
  343. package/core/events/events_toolbox_item_select.ts +0 -79
  344. package/core/events/events_trashcan_open.ts +0 -68
  345. package/core/events/events_ui.ts +0 -89
  346. package/core/events/events_ui_base.ts +0 -54
  347. package/core/events/events_var_base.ts +0 -65
  348. package/core/events/events_var_create.ts +0 -88
  349. package/core/events/events_var_delete.ts +0 -88
  350. package/core/events/events_var_rename.ts +0 -89
  351. package/core/events/events_viewport.ts +0 -100
  352. package/core/events/utils.ts +0 -529
  353. package/core/events/workspace_events.ts +0 -86
  354. package/core/extensions.ts +0 -504
  355. package/core/field.ts +0 -1206
  356. package/core/field_angle.ts +0 -563
  357. package/core/field_checkbox.ts +0 -243
  358. package/core/field_colour.ts +0 -632
  359. package/core/field_dropdown.ts +0 -773
  360. package/core/field_image.ts +0 -282
  361. package/core/field_label.ts +0 -152
  362. package/core/field_label_serializable.ts +0 -76
  363. package/core/field_multilineinput.ts +0 -466
  364. package/core/field_number.ts +0 -327
  365. package/core/field_registry.ts +0 -87
  366. package/core/field_textinput.ts +0 -591
  367. package/core/field_variable.ts +0 -545
  368. package/core/flyout_base.ts +0 -1165
  369. package/core/flyout_button.ts +0 -292
  370. package/core/flyout_horizontal.ts +0 -381
  371. package/core/flyout_metrics_manager.ts +0 -94
  372. package/core/flyout_vertical.ts +0 -384
  373. package/core/generator.ts +0 -539
  374. package/core/gesture.ts +0 -946
  375. package/core/grid.ts +0 -192
  376. package/core/icon.ts +0 -189
  377. package/core/inject.ts +0 -390
  378. package/core/input.ts +0 -309
  379. package/core/input_types.ts +0 -32
  380. package/core/insertion_marker_manager.ts +0 -788
  381. package/core/interfaces/i_ast_node_location.ts +0 -23
  382. package/core/interfaces/i_ast_node_location_svg.ts +0 -37
  383. package/core/interfaces/i_ast_node_location_with_block.ts +0 -38
  384. package/core/interfaces/i_autohideable.ts +0 -34
  385. package/core/interfaces/i_block_dragger.ts +0 -67
  386. package/core/interfaces/i_bounded_element.ts +0 -42
  387. package/core/interfaces/i_bubble.ts +0 -88
  388. package/core/interfaces/i_collapsible_toolbox_item.ts +0 -47
  389. package/core/interfaces/i_component.ts +0 -32
  390. package/core/interfaces/i_connection_checker.ts +0 -102
  391. package/core/interfaces/i_contextmenu.ts +0 -26
  392. package/core/interfaces/i_copyable.ts +0 -40
  393. package/core/interfaces/i_deletable.ts +0 -29
  394. package/core/interfaces/i_delete_area.ts +0 -46
  395. package/core/interfaces/i_drag_target.ts +0 -84
  396. package/core/interfaces/i_draggable.ts +0 -25
  397. package/core/interfaces/i_flyout.ts +0 -186
  398. package/core/interfaces/i_keyboard_accessible.ts +0 -35
  399. package/core/interfaces/i_metrics_manager.ts +0 -151
  400. package/core/interfaces/i_movable.ts +0 -29
  401. package/core/interfaces/i_positionable.ts +0 -50
  402. package/core/interfaces/i_registrable.ts +0 -25
  403. package/core/interfaces/i_registrable_field.ts +0 -31
  404. package/core/interfaces/i_selectable.ts +0 -34
  405. package/core/interfaces/i_selectable_toolbox_item.ts +0 -64
  406. package/core/interfaces/i_serializer.ts +0 -65
  407. package/core/interfaces/i_styleable.ts +0 -35
  408. package/core/interfaces/i_toolbox.ts +0 -127
  409. package/core/interfaces/i_toolbox_item.ts +0 -84
  410. package/core/internal_constants.ts +0 -67
  411. package/core/keyboard_nav/ast_node.ts +0 -717
  412. package/core/keyboard_nav/basic_cursor.ts +0 -214
  413. package/core/keyboard_nav/cursor.ts +0 -134
  414. package/core/keyboard_nav/marker.ts +0 -115
  415. package/core/keyboard_nav/tab_navigate_cursor.ts +0 -48
  416. package/core/main.js +0 -303
  417. package/core/marker_manager.ts +0 -181
  418. package/core/menu.ts +0 -449
  419. package/core/menuitem.ts +0 -240
  420. package/core/metrics_manager.ts +0 -456
  421. package/core/msg.ts +0 -20
  422. package/core/mutator.ts +0 -560
  423. package/core/names.ts +0 -267
  424. package/core/options.ts +0 -365
  425. package/core/positionable_helpers.ts +0 -181
  426. package/core/procedures.ts +0 -443
  427. package/core/registry.ts +0 -339
  428. package/core/rendered_connection.ts +0 -568
  429. package/core/renderers/common/block_rendering.ts +0 -164
  430. package/core/renderers/common/constants.ts +0 -1124
  431. package/core/renderers/common/debug.ts +0 -61
  432. package/core/renderers/common/debugger.ts +0 -433
  433. package/core/renderers/common/drawer.ts +0 -450
  434. package/core/renderers/common/i_path_object.ts +0 -161
  435. package/core/renderers/common/info.ts +0 -718
  436. package/core/renderers/common/marker_svg.ts +0 -680
  437. package/core/renderers/common/path_object.ts +0 -272
  438. package/core/renderers/common/renderer.ts +0 -271
  439. package/core/renderers/geras/constants.ts +0 -61
  440. package/core/renderers/geras/drawer.ts +0 -176
  441. package/core/renderers/geras/geras.ts +0 -37
  442. package/core/renderers/geras/highlight_constants.ts +0 -337
  443. package/core/renderers/geras/highlighter.ts +0 -306
  444. package/core/renderers/geras/info.ts +0 -450
  445. package/core/renderers/geras/measurables/inline_input.ts +0 -51
  446. package/core/renderers/geras/measurables/statement_input.ts +0 -50
  447. package/core/renderers/geras/path_object.ts +0 -138
  448. package/core/renderers/geras/renderer.ts +0 -126
  449. package/core/renderers/measurables/base.ts +0 -53
  450. package/core/renderers/measurables/bottom_row.ts +0 -120
  451. package/core/renderers/measurables/connection.ts +0 -52
  452. package/core/renderers/measurables/external_value_input.ts +0 -65
  453. package/core/renderers/measurables/field.ts +0 -63
  454. package/core/renderers/measurables/hat.ts +0 -48
  455. package/core/renderers/measurables/icon.ts +0 -54
  456. package/core/renderers/measurables/in_row_spacer.ts +0 -44
  457. package/core/renderers/measurables/inline_input.ts +0 -76
  458. package/core/renderers/measurables/input_connection.ts +0 -66
  459. package/core/renderers/measurables/input_row.ts +0 -82
  460. package/core/renderers/measurables/jagged_edge.ts +0 -43
  461. package/core/renderers/measurables/next_connection.ts +0 -47
  462. package/core/renderers/measurables/output_connection.ts +0 -56
  463. package/core/renderers/measurables/previous_connection.ts +0 -47
  464. package/core/renderers/measurables/round_corner.ts +0 -49
  465. package/core/renderers/measurables/row.ts +0 -225
  466. package/core/renderers/measurables/spacer_row.ts +0 -55
  467. package/core/renderers/measurables/square_corner.ts +0 -47
  468. package/core/renderers/measurables/statement_input.ts +0 -55
  469. package/core/renderers/measurables/top_row.ts +0 -122
  470. package/core/renderers/measurables/types.ts +0 -332
  471. package/core/renderers/minimalist/constants.ts +0 -32
  472. package/core/renderers/minimalist/drawer.ts +0 -38
  473. package/core/renderers/minimalist/info.ts +0 -52
  474. package/core/renderers/minimalist/minimalist.ts +0 -22
  475. package/core/renderers/minimalist/renderer.ts +0 -71
  476. package/core/renderers/thrasos/info.ts +0 -338
  477. package/core/renderers/thrasos/renderer.ts +0 -48
  478. package/core/renderers/thrasos/thrasos.ts +0 -20
  479. package/core/renderers/zelos/constants.ts +0 -858
  480. package/core/renderers/zelos/drawer.ts +0 -228
  481. package/core/renderers/zelos/info.ts +0 -593
  482. package/core/renderers/zelos/marker_svg.ts +0 -151
  483. package/core/renderers/zelos/measurables/bottom_row.ts +0 -53
  484. package/core/renderers/zelos/measurables/inputs.ts +0 -56
  485. package/core/renderers/zelos/measurables/row_elements.ts +0 -45
  486. package/core/renderers/zelos/measurables/top_row.ts +0 -58
  487. package/core/renderers/zelos/path_object.ts +0 -215
  488. package/core/renderers/zelos/renderer.ts +0 -142
  489. package/core/renderers/zelos/zelos.ts +0 -39
  490. package/core/scrollbar.ts +0 -870
  491. package/core/scrollbar_pair.ts +0 -321
  492. package/core/serialization/blocks.ts +0 -706
  493. package/core/serialization/exceptions.ts +0 -98
  494. package/core/serialization/priorities.ts +0 -32
  495. package/core/serialization/registry.ts +0 -43
  496. package/core/serialization/variables.ts +0 -96
  497. package/core/serialization/workspaces.ts +0 -106
  498. package/core/shortcut_items.ts +0 -266
  499. package/core/shortcut_registry.ts +0 -355
  500. package/core/sprites.ts +0 -29
  501. package/core/theme/classic.ts +0 -54
  502. package/core/theme/themes.ts +0 -22
  503. package/core/theme/zelos.ts +0 -91
  504. package/core/theme.ts +0 -221
  505. package/core/theme_manager.ts +0 -186
  506. package/core/toolbox/category.ts +0 -679
  507. package/core/toolbox/collapsible_category.ts +0 -273
  508. package/core/toolbox/separator.ts +0 -105
  509. package/core/toolbox/toolbox.ts +0 -1044
  510. package/core/toolbox/toolbox_item.ts +0 -147
  511. package/core/tooltip.ts +0 -463
  512. package/core/touch.ts +0 -306
  513. package/core/touch_gesture.ts +0 -295
  514. package/core/trashcan.ts +0 -671
  515. package/core/utils/aria.ts +0 -160
  516. package/core/utils/array.ts +0 -32
  517. package/core/utils/colour.ts +0 -276
  518. package/core/utils/coordinate.ts +0 -124
  519. package/core/utils/deprecation.ts +0 -41
  520. package/core/utils/dom.ts +0 -408
  521. package/core/utils/idgenerator.ts +0 -80
  522. package/core/utils/keycodes.ts +0 -169
  523. package/core/utils/math.ts +0 -61
  524. package/core/utils/metrics.ts +0 -97
  525. package/core/utils/object.ts +0 -95
  526. package/core/utils/parsing.ts +0 -261
  527. package/core/utils/rect.ts +0 -62
  528. package/core/utils/sentinel.ts +0 -23
  529. package/core/utils/size.ts +0 -51
  530. package/core/utils/string.ts +0 -308
  531. package/core/utils/style.ts +0 -306
  532. package/core/utils/svg.ts +0 -88
  533. package/core/utils/svg_math.ts +0 -269
  534. package/core/utils/svg_paths.ts +0 -140
  535. package/core/utils/toolbox.ts +0 -433
  536. package/core/utils/useragent.ts +0 -135
  537. package/core/utils/xml.ts +0 -97
  538. package/core/utils.ts +0 -428
  539. package/core/variable_map.ts +0 -392
  540. package/core/variable_model.ts +0 -82
  541. package/core/variables.ts +0 -596
  542. package/core/variables_dynamic.ts +0 -133
  543. package/core/warning.ts +0 -161
  544. package/core/widgetdiv.ts +0 -257
  545. package/core/workspace.ts +0 -801
  546. package/core/workspace_audio.ts +0 -156
  547. package/core/workspace_comment.ts +0 -398
  548. package/core/workspace_comment_svg.ts +0 -1127
  549. package/core/workspace_drag_surface_svg.ts +0 -187
  550. package/core/workspace_dragger.ts +0 -104
  551. package/core/workspace_svg.ts +0 -2655
  552. package/core/xml.ts +0 -1023
  553. package/core/zoom_controls.ts +0 -441
  554. package/generators/dart/all.js +0 -27
  555. package/generators/dart/colour.js +0 -105
  556. package/generators/dart/lists.js +0 -431
  557. package/generators/dart/logic.js +0 -123
  558. package/generators/dart/loops.js +0 -161
  559. package/generators/dart/math.js +0 -446
  560. package/generators/dart/procedures.js +0 -105
  561. package/generators/dart/text.js +0 -338
  562. package/generators/dart/variables.js +0 -32
  563. package/generators/dart/variables_dynamic.js +0 -21
  564. package/generators/dart.js +0 -303
  565. package/generators/javascript/all.js +0 -27
  566. package/generators/javascript/colour.js +0 -85
  567. package/generators/javascript/lists.js +0 -405
  568. package/generators/javascript/logic.js +0 -127
  569. package/generators/javascript/loops.js +0 -180
  570. package/generators/javascript/math.js +0 -401
  571. package/generators/javascript/procedures.js +0 -110
  572. package/generators/javascript/text.js +0 -371
  573. package/generators/javascript/variables.js +0 -32
  574. package/generators/javascript/variables_dynamic.js +0 -21
  575. package/generators/javascript.js +0 -322
  576. package/generators/lua/all.js +0 -27
  577. package/generators/lua/colour.js +0 -71
  578. package/generators/lua/lists.js +0 -348
  579. package/generators/lua/logic.js +0 -112
  580. package/generators/lua/loops.js +0 -168
  581. package/generators/lua/math.js +0 -406
  582. package/generators/lua/procedures.js +0 -106
  583. package/generators/lua/text.js +0 -327
  584. package/generators/lua/variables.js +0 -31
  585. package/generators/lua/variables_dynamic.js +0 -21
  586. package/generators/lua.js +0 -206
  587. package/generators/php/all.js +0 -27
  588. package/generators/php/colour.js +0 -81
  589. package/generators/php/lists.js +0 -481
  590. package/generators/php/logic.js +0 -119
  591. package/generators/php/loops.js +0 -161
  592. package/generators/php/math.js +0 -349
  593. package/generators/php/procedures.js +0 -125
  594. package/generators/php/text.js +0 -255
  595. package/generators/php/variables.js +0 -32
  596. package/generators/php/variables_dynamic.js +0 -21
  597. package/generators/php.js +0 -303
  598. package/generators/python/all.js +0 -27
  599. package/generators/python/colour.js +0 -67
  600. package/generators/python/lists.js +0 -346
  601. package/generators/python/logic.js +0 -120
  602. package/generators/python/loops.js +0 -206
  603. package/generators/python/math.js +0 -373
  604. package/generators/python/procedures.js +0 -129
  605. package/generators/python/text.js +0 -291
  606. package/generators/python/variables.js +0 -32
  607. package/generators/python/variables_dynamic.js +0 -21
  608. package/generators/python.js +0 -333
@@ -1 +1 @@
1
- {"version":3,"sources":["generators/dart.js","generators/dart/variables.js","generators/dart/variables_dynamic.js","generators/dart/text.js","generators/dart/procedures.js","generators/dart/math.js","generators/dart/loops.js","generators/dart/logic.js","generators/dart/lists.js","generators/dart/colour.js","generators/dart/all.js"],"names":["Variables","stringUtils","Generator","Names","NameType","inputTypes","Dart","addReservedWords","ORDER_ATOMIC","ORDER_UNARY_POSTFIX","ORDER_UNARY_PREFIX","ORDER_MULTIPLICATIVE","ORDER_ADDITIVE","ORDER_SHIFT","ORDER_BITWISE_AND","ORDER_BITWISE_XOR","ORDER_BITWISE_OR","ORDER_RELATIONAL","ORDER_EQUALITY","ORDER_LOGICAL_AND","ORDER_LOGICAL_OR","ORDER_IF_NULL","ORDER_CONDITIONAL","ORDER_CASCADE","ORDER_ASSIGNMENT","ORDER_NONE","isInitialized","init","Dart.init","workspace","Object","getPrototypeOf","call","nameDB_","reset","RESERVED_WORDS_","setVariableMap","getVariableMap","populateVariables","populateProcedures","defvars","devVarList","allDeveloperVariables","i","length","push","getName","DEVELOPER_VARIABLE","variables","allUsedVarModels","getId","VARIABLE","definitions_","join","finish","Dart.finish","code","prefixLines","INDENT","imports","definitions","name","def","match","replace","scrubNakedValue","Dart.scrubNakedValue","line","quote_","Dart.quote_","string","multiline_quote_","Dart.multiline_quote_","split","map","lines","scrub_","Dart.scrub_","block","opt_thisOnly","commentCode","outputConnection","targetConnection","comment","getCommentText","wrap","COMMENT_WRAP","getProcedureDef","inputList","type","VALUE","childBlock","connection","targetBlock","allNestedComments","nextBlock","nextConnection","nextCode","blockToCode","getAdjusted","Dart.getAdjusted","atId","opt_delta","opt_negate","opt_order","delta","order","options","oneBasedIndex","defaultAtIndex","outerOrder","innerOrder","at","valueToCode","isNumber","parseInt","Math","floor","getFieldValue","argument0","varName","indexOf","itemCount_","elements","Array","value","operator","substring","where","text","textOrder","provideFunction_","functionName","FUNCTION_NAME_PLACEHOLDER_","Error","where1","where2","requiresLengthCall","at1","at2","OPERATORS","getField","msg","sub","from","to","funcName","PROCEDURE","xfix1","STATEMENT_PREFIX","injectId","STATEMENT_SUFFIX","loopTrap","INFINITE_LOOP_TRAP","branch","statementToCode","returnValue","xfix2","returnType","args","getVars","tuple","hasReturnValue_","Number","Infinity","argument1","arg","CONSTANTS","constant","PROPERTIES","dropdownProperty","suffix","inputOrder","outputOrder","numberToCheck","divisor","func","list","argument2","repeats","String","addLoopTrap","loopVar","getDistinctName","endVar","until","variable0","increment","up","step","abs","startVar","incVar","xfix","loop","getSurroundLoop","suppressPrefixSuffix","n","branchCode","conditionCode","getInput","defaultArgument","value_if","value_then","value_else","element","item","cacheList","listVar","mode","listOrder","xVar","direction","sortFunctionName","input","delimiter","red","green","blue","c1","c2","ratio","exports","moduleExports"],"mappings":"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","file":"dart_compressed.js","sourceRoot":"./"}
1
+ {"version":3,"sources":["generators/dart.js","generators/dart/variables.js","generators/dart/variables_dynamic.js","generators/dart/text.js","generators/dart/procedures.js","generators/dart/math.js","generators/dart/loops.js","generators/dart/logic.js","generators/dart/lists.js","generators/dart/colour.js","generators/dart/all.js"],"names":["Variables","stringUtils","Generator","Names","NameType","inputTypes","Dart","addReservedWords","ORDER_ATOMIC","ORDER_UNARY_POSTFIX","ORDER_UNARY_PREFIX","ORDER_MULTIPLICATIVE","ORDER_ADDITIVE","ORDER_SHIFT","ORDER_BITWISE_AND","ORDER_BITWISE_XOR","ORDER_BITWISE_OR","ORDER_RELATIONAL","ORDER_EQUALITY","ORDER_LOGICAL_AND","ORDER_LOGICAL_OR","ORDER_IF_NULL","ORDER_CONDITIONAL","ORDER_CASCADE","ORDER_ASSIGNMENT","ORDER_NONE","isInitialized","init","Dart.init","workspace","Object","getPrototypeOf","call","nameDB_","reset","RESERVED_WORDS_","setVariableMap","getVariableMap","populateVariables","populateProcedures","defvars","devVarList","allDeveloperVariables","i","length","push","getName","DEVELOPER_VARIABLE","variables","allUsedVarModels","getId","VARIABLE","definitions_","join","finish","Dart.finish","code","prefixLines","INDENT","imports","definitions","name","def","match","replace","scrubNakedValue","Dart.scrubNakedValue","line","quote_","Dart.quote_","string","multiline_quote_","Dart.multiline_quote_","split","map","lines","scrub_","Dart.scrub_","block","opt_thisOnly","commentCode","outputConnection","targetConnection","comment","getCommentText","wrap","COMMENT_WRAP","getProcedureDef","inputList","type","VALUE","childBlock","connection","targetBlock","allNestedComments","nextBlock","nextConnection","nextCode","blockToCode","getAdjusted","Dart.getAdjusted","atId","opt_delta","opt_negate","opt_order","delta","order","options","oneBasedIndex","defaultAtIndex","outerOrder","innerOrder","at","valueToCode","isNumber","parseInt","Math","floor","getFieldValue","argument0","varName","indexOf","itemCount_","elements","Array","value","operator","substring","where","text","textOrder","provideFunction_","functionName","FUNCTION_NAME_PLACEHOLDER_","Error","where1","where2","requiresLengthCall","at1","at2","OPERATORS","getField","msg","sub","from","to","funcName","PROCEDURE","xfix1","STATEMENT_PREFIX","injectId","STATEMENT_SUFFIX","loopTrap","INFINITE_LOOP_TRAP","branch","statementToCode","returnValue","xfix2","returnType","args","getVars","tuple","hasReturnValue_","Number","Infinity","argument1","arg","CONSTANTS","constant","PROPERTIES","dropdownProperty","suffix","inputOrder","outputOrder","numberToCheck","divisor","func","list","argument2","repeats","String","addLoopTrap","loopVar","getDistinctName","endVar","until","variable0","increment","up","step","abs","startVar","incVar","xfix","loop","getSurroundLoop","suppressPrefixSuffix","n","branchCode","conditionCode","getInput","defaultArgument","value_if","value_then","value_else","element","item","cacheList","listVar","mode","listOrder","xVar","direction","sortFunctionName","input","delimiter","red","green","blue","c1","c2","ratio","exports","moduleExports"],"mappings":"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","file":"dart_compressed.js","sourcesContent":["/**\n * @license\n * Copyright 2014 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Helper functions for generating Dart for blocks.\n * @suppress {checkTypes|globalThis}\n */\n'use strict';\n\ngoog.module('Blockly.Dart');\n\nconst Variables = goog.require('Blockly.Variables');\nconst stringUtils = goog.require('Blockly.utils.string');\nconst {Block} = goog.requireType('Blockly.Block');\nconst {Generator} = goog.require('Blockly.Generator');\nconst {Names, NameType} = goog.require('Blockly.Names');\nconst {Workspace} = goog.requireType('Blockly.Workspace');\nconst {inputTypes} = goog.require('Blockly.inputTypes');\n\n\n/**\n * Dart code generator.\n * @type {!Generator}\n */\nconst Dart = new Generator('Dart');\n\n/**\n * List of illegal variable names.\n * This is not intended to be a security feature. Blockly is 100% client-side,\n * so bypassing this list is trivial. This is intended to prevent users from\n * accidentally clobbering a built-in object or function.\n */\nDart.addReservedWords(\n // https://www.dartlang.org/docs/spec/latest/dart-language-specification.pdf\n // Section 16.1.1\n 'assert,break,case,catch,class,const,continue,default,do,else,enum,' +\n 'extends,false,final,finally,for,if,in,is,new,null,rethrow,return,super,' +\n 'switch,this,throw,true,try,var,void,while,with,' +\n // https://api.dartlang.org/dart_core.html\n 'print,identityHashCode,identical,BidirectionalIterator,Comparable,' +\n 'double,Function,int,Invocation,Iterable,Iterator,List,Map,Match,num,' +\n 'Pattern,RegExp,Set,StackTrace,String,StringSink,Type,bool,DateTime,' +\n 'Deprecated,Duration,Expando,Null,Object,RuneIterator,Runes,Stopwatch,' +\n 'StringBuffer,Symbol,Uri,Comparator,AbstractClassInstantiationError,' +\n 'ArgumentError,AssertionError,CastError,ConcurrentModificationError,' +\n 'CyclicInitializationError,Error,Exception,FallThroughError,' +\n 'FormatException,IntegerDivisionByZeroException,NoSuchMethodError,' +\n 'NullThrownError,OutOfMemoryError,RangeError,StackOverflowError,' +\n 'StateError,TypeError,UnimplementedError,UnsupportedError'\n);\n\n/**\n * Order of operation ENUMs.\n * https://dart.dev/guides/language/language-tour#operators\n */\nDart.ORDER_ATOMIC = 0; // 0 \"\" ...\nDart.ORDER_UNARY_POSTFIX = 1; // expr++ expr-- () [] . ?.\nDart.ORDER_UNARY_PREFIX = 2; // -expr !expr ~expr ++expr --expr\nDart.ORDER_MULTIPLICATIVE = 3; // * / % ~/\nDart.ORDER_ADDITIVE = 4; // + -\nDart.ORDER_SHIFT = 5; // << >>\nDart.ORDER_BITWISE_AND = 6; // &\nDart.ORDER_BITWISE_XOR = 7; // ^\nDart.ORDER_BITWISE_OR = 8; // |\nDart.ORDER_RELATIONAL = 9; // >= > <= < as is is!\nDart.ORDER_EQUALITY = 10; // == !=\nDart.ORDER_LOGICAL_AND = 11; // &&\nDart.ORDER_LOGICAL_OR = 12; // ||\nDart.ORDER_IF_NULL = 13; // ??\nDart.ORDER_CONDITIONAL = 14; // expr ? expr : expr\nDart.ORDER_CASCADE = 15; // ..\nDart.ORDER_ASSIGNMENT = 16; // = *= /= ~/= %= += -= <<= >>= &= ^= |=\nDart.ORDER_NONE = 99; // (...)\n\n/**\n * Whether the init method has been called.\n * @type {?boolean}\n */\nDart.isInitialized = false;\n\n/**\n * Initialise the database of variable names.\n * @param {!Workspace} workspace Workspace to generate code from.\n */\nDart.init = function(workspace) {\n // Call Blockly.Generator's init.\n Object.getPrototypeOf(this).init.call(this);\n\n if (!this.nameDB_) {\n this.nameDB_ = new Names(this.RESERVED_WORDS_);\n } else {\n this.nameDB_.reset();\n }\n\n this.nameDB_.setVariableMap(workspace.getVariableMap());\n this.nameDB_.populateVariables(workspace);\n this.nameDB_.populateProcedures(workspace);\n\n const defvars = [];\n // Add developer variables (not created or named by the user).\n const devVarList = Variables.allDeveloperVariables(workspace);\n for (let i = 0; i < devVarList.length; i++) {\n defvars.push(this.nameDB_.getName(devVarList[i],\n NameType.DEVELOPER_VARIABLE));\n }\n\n // Add user variables, but only ones that are being used.\n const variables = Variables.allUsedVarModels(workspace);\n for (let i = 0; i < variables.length; i++) {\n defvars.push(this.nameDB_.getName(variables[i].getId(),\n NameType.VARIABLE));\n }\n\n // Declare all of the variables.\n if (defvars.length) {\n this.definitions_['variables'] =\n 'var ' + defvars.join(', ') + ';';\n }\n this.isInitialized = true;\n};\n\n/**\n * Prepend the generated code with import statements and variable definitions.\n * @param {string} code Generated code.\n * @return {string} Completed code.\n */\nDart.finish = function(code) {\n // Indent every line.\n if (code) {\n code = this.prefixLines(code, this.INDENT);\n }\n code = 'main() {\\n' + code + '}';\n\n // Convert the definitions dictionary into a list.\n const imports = [];\n const definitions = [];\n for (let name in this.definitions_) {\n const def = this.definitions_[name];\n if (def.match(/^import\\s/)) {\n imports.push(def);\n } else {\n definitions.push(def);\n }\n }\n // Call Blockly.Generator's finish.\n code = Object.getPrototypeOf(this).finish.call(this, code);\n this.isInitialized = false;\n\n this.nameDB_.reset();\n const allDefs = imports.join('\\n') + '\\n\\n' + definitions.join('\\n\\n');\n return allDefs.replace(/\\n\\n+/g, '\\n\\n').replace(/\\n*$/, '\\n\\n\\n') + code;\n};\n\n/**\n * Naked values are top-level blocks with outputs that aren't plugged into\n * anything. A trailing semicolon is needed to make this legal.\n * @param {string} line Line of generated code.\n * @return {string} Legal line of code.\n */\nDart.scrubNakedValue = function(line) {\n return line + ';\\n';\n};\n\n/**\n * Encode a string as a properly escaped Dart string, complete with quotes.\n * @param {string} string Text to encode.\n * @return {string} Dart string.\n * @protected\n */\nDart.quote_ = function(string) {\n // Can't use goog.string.quote since $ must also be escaped.\n string = string.replace(/\\\\/g, '\\\\\\\\')\n .replace(/\\n/g, '\\\\\\n')\n .replace(/\\$/g, '\\\\$')\n .replace(/'/g, '\\\\\\'');\n return '\\'' + string + '\\'';\n};\n\n/**\n * Encode a string as a properly escaped multiline Dart string, complete with\n * quotes.\n * @param {string} string Text to encode.\n * @return {string} Dart string.\n * @protected\n */\nDart.multiline_quote_ = function (string) {\n const lines = string.split(/\\n/g).map(this.quote_);\n // Join with the following, plus a newline:\n // + '\\n' +\n return lines.join(' + \\'\\\\n\\' + \\n');\n};\n\n/**\n * Common tasks for generating Dart from blocks.\n * Handles comments for the specified block and any connected value blocks.\n * Calls any statements following this block.\n * @param {!Block} block The current block.\n * @param {string} code The Dart code created for this block.\n * @param {boolean=} opt_thisOnly True to generate code for only this statement.\n * @return {string} Dart code with comments and subsequent blocks added.\n * @protected\n */\nDart.scrub_ = function(block, code, opt_thisOnly) {\n let commentCode = '';\n // Only collect comments for blocks that aren't inline.\n if (!block.outputConnection || !block.outputConnection.targetConnection) {\n // Collect comment for this block.\n let comment = block.getCommentText();\n if (comment) {\n comment = stringUtils.wrap(comment, this.COMMENT_WRAP - 3);\n if (block.getProcedureDef) {\n // Use documentation comment for function comments.\n commentCode += this.prefixLines(comment + '\\n', '/// ');\n } else {\n commentCode += this.prefixLines(comment + '\\n', '// ');\n }\n }\n // Collect comments for all value arguments.\n // Don't collect comments for nested statements.\n for (let i = 0; i < block.inputList.length; i++) {\n if (block.inputList[i].type === inputTypes.VALUE) {\n const childBlock = block.inputList[i].connection.targetBlock();\n if (childBlock) {\n comment = this.allNestedComments(childBlock);\n if (comment) {\n commentCode += this.prefixLines(comment, '// ');\n }\n }\n }\n }\n }\n const nextBlock = block.nextConnection && block.nextConnection.targetBlock();\n const nextCode = opt_thisOnly ? '' : this.blockToCode(nextBlock);\n return commentCode + code + nextCode;\n};\n\n/**\n * Gets a property and adjusts the value while taking into account indexing.\n * @param {!Block} block The block.\n * @param {string} atId The property ID of the element to get.\n * @param {number=} opt_delta Value to add.\n * @param {boolean=} opt_negate Whether to negate the value.\n * @param {number=} opt_order The highest order acting on this value.\n * @return {string|number}\n */\nDart.getAdjusted = function(block, atId, opt_delta, opt_negate,\n opt_order) {\n let delta = opt_delta || 0;\n let order = opt_order || this.ORDER_NONE;\n if (block.workspace.options.oneBasedIndex) {\n delta--;\n }\n const defaultAtIndex = block.workspace.options.oneBasedIndex ? '1' : '0';\n\n /** @type {number} */\n let outerOrder;\n let innerOrder;\n if (delta) {\n outerOrder = this.ORDER_ADDITIVE;\n innerOrder = this.ORDER_ADDITIVE;\n } else if (opt_negate) {\n outerOrder = this.ORDER_UNARY_PREFIX;\n innerOrder = this.ORDER_UNARY_PREFIX;\n } else {\n outerOrder = order;\n }\n\n /** @type {string|number} */\n let at = this.valueToCode(block, atId, outerOrder) || defaultAtIndex;\n\n if (stringUtils.isNumber(at)) {\n // If the index is a naked number, adjust it right now.\n at = parseInt(at, 10) + delta;\n if (opt_negate) {\n at = -at;\n }\n } else {\n // If the index is dynamic, adjust it in code.\n if (delta > 0) {\n at = at + ' + ' + delta;\n } else if (delta < 0) {\n at = at + ' - ' + -delta;\n }\n if (opt_negate) {\n if (delta) {\n at = '-(' + at + ')';\n } else {\n at = '-' + at;\n }\n }\n innerOrder = Math.floor(innerOrder);\n order = Math.floor(order);\n if (innerOrder && order >= innerOrder) {\n at = '(' + at + ')';\n }\n }\n return at;\n};\n\nexports.dartGenerator = Dart;\n","/**\n * @license\n * Copyright 2014 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Generating Dart for variable blocks.\n */\n'use strict';\n\ngoog.module('Blockly.Dart.variables');\n\nconst {NameType} = goog.require('Blockly.Names');\nconst {dartGenerator: Dart} = goog.require('Blockly.Dart');\n\n\nDart['variables_get'] = function(block) {\n // Variable getter.\n const code =\n Dart.nameDB_.getName(block.getFieldValue('VAR'), NameType.VARIABLE);\n return [code, Dart.ORDER_ATOMIC];\n};\n\nDart['variables_set'] = function(block) {\n // Variable setter.\n const argument0 =\n Dart.valueToCode(block, 'VALUE', Dart.ORDER_ASSIGNMENT) || '0';\n const varName =\n Dart.nameDB_.getName(block.getFieldValue('VAR'), NameType.VARIABLE);\n return varName + ' = ' + argument0 + ';\\n';\n};\n","/**\n * @license\n * Copyright 2018 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Generating Dart for dynamic variable blocks.\n */\n'use strict';\n\ngoog.module('Blockly.Dart.variablesDynamic');\n\nconst {dartGenerator: Dart} = goog.require('Blockly.Dart');\n/** @suppress {extraRequire} */\ngoog.require('Blockly.Dart.variables');\n\n\n// Dart is dynamically typed.\nDart['variables_get_dynamic'] = Dart['variables_get'];\nDart['variables_set_dynamic'] = Dart['variables_set'];\n","/**\n * @license\n * Copyright 2014 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Generating Dart for text blocks.\n */\n'use strict';\n\ngoog.module('Blockly.Dart.texts');\n\nconst {NameType} = goog.require('Blockly.Names');\nconst {dartGenerator: Dart} = goog.require('Blockly.Dart');\n\n\nDart.addReservedWords('Html,Math');\n\nDart['text'] = function(block) {\n // Text value.\n const code = Dart.quote_(block.getFieldValue('TEXT'));\n return [code, Dart.ORDER_ATOMIC];\n};\n\nDart['text_multiline'] = function(block) {\n // Text value.\n const code = Dart.multiline_quote_(block.getFieldValue('TEXT'));\n const order =\n code.indexOf('+') !== -1 ? Dart.ORDER_ADDITIVE : Dart.ORDER_ATOMIC;\n return [code, order];\n};\n\nDart['text_join'] = function(block) {\n // Create a string made up of any number of elements of any type.\n switch (block.itemCount_) {\n case 0:\n return [\"''\", Dart.ORDER_ATOMIC];\n case 1: {\n const element =\n Dart.valueToCode(block, 'ADD0', Dart.ORDER_UNARY_POSTFIX) || \"''\";\n const code = element + '.toString()';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n default: {\n const elements = new Array(block.itemCount_);\n for (let i = 0; i < block.itemCount_; i++) {\n elements[i] =\n Dart.valueToCode(block, 'ADD' + i, Dart.ORDER_NONE) || \"''\";\n }\n const code = '[' + elements.join(',') + '].join()';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n }\n};\n\nDart['text_append'] = function(block) {\n // Append to a variable in place.\n const varName =\n Dart.nameDB_.getName(block.getFieldValue('VAR'), NameType.VARIABLE);\n const value = Dart.valueToCode(block, 'TEXT', Dart.ORDER_NONE) || \"''\";\n return varName + ' = [' + varName + ', ' + value + '].join();\\n';\n};\n\nDart['text_length'] = function(block) {\n // String or array length.\n const text =\n Dart.valueToCode(block, 'VALUE', Dart.ORDER_UNARY_POSTFIX) || \"''\";\n return [text + '.length', Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['text_isEmpty'] = function(block) {\n // Is the string null or array empty?\n const text =\n Dart.valueToCode(block, 'VALUE', Dart.ORDER_UNARY_POSTFIX) || \"''\";\n return [text + '.isEmpty', Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['text_indexOf'] = function(block) {\n // Search the text for a substring.\n const operator =\n block.getFieldValue('END') === 'FIRST' ? 'indexOf' : 'lastIndexOf';\n const substring = Dart.valueToCode(block, 'FIND', Dart.ORDER_NONE) || \"''\";\n const text =\n Dart.valueToCode(block, 'VALUE', Dart.ORDER_UNARY_POSTFIX) || \"''\";\n const code = text + '.' + operator + '(' + substring + ')';\n if (block.workspace.options.oneBasedIndex) {\n return [code + ' + 1', Dart.ORDER_ADDITIVE];\n }\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['text_charAt'] = function(block) {\n // Get letter at index.\n // Note: Until January 2013 this block did not have the WHERE input.\n const where = block.getFieldValue('WHERE') || 'FROM_START';\n const textOrder = (where === 'FIRST' || where === 'FROM_START') ?\n Dart.ORDER_UNARY_POSTFIX :\n Dart.ORDER_NONE;\n const text = Dart.valueToCode(block, 'VALUE', textOrder) || \"''\";\n let at;\n switch (where) {\n case 'FIRST': {\n const code = text + '[0]';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n case 'FROM_START': {\n at = Dart.getAdjusted(block, 'AT');\n const code = text + '[' + at + ']';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n case 'LAST':\n at = 1;\n // Fall through.\n case 'FROM_END': {\n at = Dart.getAdjusted(block, 'AT', 1);\n const functionName = Dart.provideFunction_('text_get_from_end', `\nString ${Dart.FUNCTION_NAME_PLACEHOLDER_}(String text, num x) {\n return text[text.length - x];\n}\n`);\n const code = functionName + '(' + text + ', ' + at + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n case 'RANDOM': {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n const functionName = Dart.provideFunction_('text_random_letter', `\nString ${Dart.FUNCTION_NAME_PLACEHOLDER_}(String text) {\n int x = new Math.Random().nextInt(text.length);\n return text[x];\n}\n`);\n const code = functionName + '(' + text + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n }\n throw Error('Unhandled option (text_charAt).');\n};\n\nDart['text_getSubstring'] = function(block) {\n // Get substring.\n const where1 = block.getFieldValue('WHERE1');\n const where2 = block.getFieldValue('WHERE2');\n const requiresLengthCall = (where1 !== 'FROM_END' && where2 === 'FROM_START');\n const textOrder =\n requiresLengthCall ? Dart.ORDER_UNARY_POSTFIX : Dart.ORDER_NONE;\n const text = Dart.valueToCode(block, 'STRING', textOrder) || \"''\";\n let code;\n if (where1 === 'FIRST' && where2 === 'LAST') {\n code = text;\n return [code, Dart.ORDER_NONE];\n } else if (text.match(/^'?\\w+'?$/) || requiresLengthCall) {\n // If the text is a variable or literal or doesn't require a call for\n // length, don't generate a helper function.\n let at1;\n switch (where1) {\n case 'FROM_START':\n at1 = Dart.getAdjusted(block, 'AT1');\n break;\n case 'FROM_END':\n at1 = Dart.getAdjusted(block, 'AT1', 1, false, Dart.ORDER_ADDITIVE);\n at1 = text + '.length - ' + at1;\n break;\n case 'FIRST':\n at1 = '0';\n break;\n default:\n throw Error('Unhandled option (text_getSubstring).');\n }\n let at2;\n switch (where2) {\n case 'FROM_START':\n at2 = Dart.getAdjusted(block, 'AT2', 1);\n break;\n case 'FROM_END':\n at2 = Dart.getAdjusted(block, 'AT2', 0, false, Dart.ORDER_ADDITIVE);\n at2 = text + '.length - ' + at2;\n break;\n case 'LAST':\n break;\n default:\n throw Error('Unhandled option (text_getSubstring).');\n }\n\n if (where2 === 'LAST') {\n code = text + '.substring(' + at1 + ')';\n } else {\n code = text + '.substring(' + at1 + ', ' + at2 + ')';\n }\n } else {\n const at1 = Dart.getAdjusted(block, 'AT1');\n const at2 = Dart.getAdjusted(block, 'AT2');\n const functionName = Dart.provideFunction_('text_get_substring', `\nString ${Dart.FUNCTION_NAME_PLACEHOLDER_}(String text, String where1, num at1, String where2, num at2) {\n int getAt(String where, num at) {\n if (where == 'FROM_END') {\n at = text.length - 1 - at;\n } else if (where == 'FIRST') {\n at = 0;\n } else if (where == 'LAST') {\n at = text.length - 1;\n } else if (where != 'FROM_START') {\n throw 'Unhandled option (text_getSubstring).';\n }\n return at;\n }\n at1 = getAt(where1, at1);\n at2 = getAt(where2, at2) + 1;\n return text.substring(at1, at2);\n}\n`);\n code = functionName + '(' + text + ', \\'' + where1 + '\\', ' + at1 + ', \\'' +\n where2 + '\\', ' + at2 + ')';\n }\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['text_changeCase'] = function(block) {\n // Change capitalization.\n const OPERATORS = {\n 'UPPERCASE': '.toUpperCase()',\n 'LOWERCASE': '.toLowerCase()',\n 'TITLECASE': null\n };\n const operator = OPERATORS[block.getFieldValue('CASE')];\n const textOrder = operator ? Dart.ORDER_UNARY_POSTFIX : Dart.ORDER_NONE;\n const text = Dart.valueToCode(block, 'TEXT', textOrder) || \"''\";\n let code;\n if (operator) {\n // Upper and lower case are functions built into Dart.\n code = text + operator;\n } else {\n // Title case is not a native Dart function. Define one.\n const functionName = Dart.provideFunction_('text_toTitleCase', `\nString ${Dart.FUNCTION_NAME_PLACEHOLDER_}(String str) {\n RegExp exp = new RegExp(r'\\\\b');\n List<String> list = str.split(exp);\n final title = new StringBuffer();\n for (String part in list) {\n if (part.length > 0) {\n title.write(part[0].toUpperCase());\n if (part.length > 0) {\n title.write(part.substring(1).toLowerCase());\n }\n }\n }\n return title.toString();\n}\n`);\n code = functionName + '(' + text + ')';\n }\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['text_trim'] = function(block) {\n // Trim spaces.\n const OPERATORS = {\n 'LEFT': '.replaceFirst(new RegExp(r\\'^\\\\s+\\'), \\'\\')',\n 'RIGHT': '.replaceFirst(new RegExp(r\\'\\\\s+$\\'), \\'\\')',\n 'BOTH': '.trim()'\n };\n const operator = OPERATORS[block.getFieldValue('MODE')];\n const text =\n Dart.valueToCode(block, 'TEXT', Dart.ORDER_UNARY_POSTFIX) || \"''\";\n return [text + operator, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['text_print'] = function(block) {\n // Print statement.\n const msg = Dart.valueToCode(block, 'TEXT', Dart.ORDER_NONE) || \"''\";\n return 'print(' + msg + ');\\n';\n};\n\nDart['text_prompt_ext'] = function(block) {\n // Prompt function.\n Dart.definitions_['import_dart_html'] = 'import \\'dart:html\\' as Html;';\n let msg;\n if (block.getField('TEXT')) {\n // Internal message.\n msg = Dart.quote_(block.getFieldValue('TEXT'));\n } else {\n // External message.\n msg = Dart.valueToCode(block, 'TEXT', Dart.ORDER_NONE) || \"''\";\n }\n let code = 'Html.window.prompt(' + msg + ', \\'\\')';\n const toNumber = block.getFieldValue('TYPE') === 'NUMBER';\n if (toNumber) {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n code = 'Math.parseDouble(' + code + ')';\n }\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['text_prompt'] = Dart['text_prompt_ext'];\n\nDart['text_count'] = function(block) {\n const text = Dart.valueToCode(block, 'TEXT', Dart.ORDER_NONE) || \"''\";\n const sub = Dart.valueToCode(block, 'SUB', Dart.ORDER_NONE) || \"''\";\n // Substring count is not a native Dart function. Define one.\n const functionName = Dart.provideFunction_('text_count', `\nint ${Dart.FUNCTION_NAME_PLACEHOLDER_}(String haystack, String needle) {\n if (needle.length == 0) {\n return haystack.length + 1;\n }\n int index = 0;\n int count = 0;\n while (index != -1) {\n index = haystack.indexOf(needle, index);\n if (index != -1) {\n count++;\n index += needle.length;\n }\n }\n return count;\n}\n`);\n const code = functionName + '(' + text + ', ' + sub + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['text_replace'] = function(block) {\n const text =\n Dart.valueToCode(block, 'TEXT', Dart.ORDER_UNARY_POSTFIX) || \"''\";\n const from = Dart.valueToCode(block, 'FROM', Dart.ORDER_NONE) || \"''\";\n const to = Dart.valueToCode(block, 'TO', Dart.ORDER_NONE) || \"''\";\n const code = text + '.replaceAll(' + from + ', ' + to + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['text_reverse'] = function(block) {\n // There isn't a sensible way to do this in Dart. See:\n // http://stackoverflow.com/a/21613700/3529104\n // Implementing something is possibly better than not implementing anything?\n const text =\n Dart.valueToCode(block, 'TEXT', Dart.ORDER_UNARY_POSTFIX) || \"''\";\n const code = 'new String.fromCharCodes(' + text + '.runes.toList().reversed)';\n return [code, Dart.ORDER_UNARY_PREFIX];\n};\n","/**\n * @license\n * Copyright 2014 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Generating Dart for procedure blocks.\n */\n'use strict';\n\ngoog.module('Blockly.Dart.procedures');\n\nconst {NameType} = goog.require('Blockly.Names');\nconst {dartGenerator: Dart} = goog.require('Blockly.Dart');\n\n\nDart['procedures_defreturn'] = function(block) {\n // Define a procedure with a return value.\n const funcName =\n Dart.nameDB_.getName(block.getFieldValue('NAME'), NameType.PROCEDURE);\n let xfix1 = '';\n if (Dart.STATEMENT_PREFIX) {\n xfix1 += Dart.injectId(Dart.STATEMENT_PREFIX, block);\n }\n if (Dart.STATEMENT_SUFFIX) {\n xfix1 += Dart.injectId(Dart.STATEMENT_SUFFIX, block);\n }\n if (xfix1) {\n xfix1 = Dart.prefixLines(xfix1, Dart.INDENT);\n }\n let loopTrap = '';\n if (Dart.INFINITE_LOOP_TRAP) {\n loopTrap = Dart.prefixLines(\n Dart.injectId(Dart.INFINITE_LOOP_TRAP, block), Dart.INDENT);\n }\n const branch = Dart.statementToCode(block, 'STACK');\n let returnValue = Dart.valueToCode(block, 'RETURN', Dart.ORDER_NONE) || '';\n let xfix2 = '';\n if (branch && returnValue) {\n // After executing the function body, revisit this block for the return.\n xfix2 = xfix1;\n }\n if (returnValue) {\n returnValue = Dart.INDENT + 'return ' + returnValue + ';\\n';\n }\n const returnType = returnValue ? 'dynamic' : 'void';\n const args = [];\n const variables = block.getVars();\n for (let i = 0; i < variables.length; i++) {\n args[i] = Dart.nameDB_.getName(variables[i], NameType.VARIABLE);\n }\n let code = returnType + ' ' + funcName + '(' + args.join(', ') + ') {\\n' +\n xfix1 + loopTrap + branch + xfix2 + returnValue + '}';\n code = Dart.scrub_(block, code);\n // Add % so as not to collide with helper functions in definitions list.\n Dart.definitions_['%' + funcName] = code;\n return null;\n};\n\n// Defining a procedure without a return value uses the same generator as\n// a procedure with a return value.\nDart['procedures_defnoreturn'] = Dart['procedures_defreturn'];\n\nDart['procedures_callreturn'] = function(block) {\n // Call a procedure with a return value.\n const funcName =\n Dart.nameDB_.getName(block.getFieldValue('NAME'), NameType.PROCEDURE);\n const args = [];\n const variables = block.getVars();\n for (let i = 0; i < variables.length; i++) {\n args[i] = Dart.valueToCode(block, 'ARG' + i, Dart.ORDER_NONE) || 'null';\n }\n let code = funcName + '(' + args.join(', ') + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['procedures_callnoreturn'] = function(block) {\n // Call a procedure with no return value.\n // Generated code is for a function call as a statement is the same as a\n // function call as a value, with the addition of line ending.\n const tuple = Dart['procedures_callreturn'](block);\n return tuple[0] + ';\\n';\n};\n\nDart['procedures_ifreturn'] = function(block) {\n // Conditionally return value from a procedure.\n const condition =\n Dart.valueToCode(block, 'CONDITION', Dart.ORDER_NONE) || 'false';\n let code = 'if (' + condition + ') {\\n';\n if (Dart.STATEMENT_SUFFIX) {\n // Inject any statement suffix here since the regular one at the end\n // will not get executed if the return is triggered.\n code += Dart.prefixLines(\n Dart.injectId(Dart.STATEMENT_SUFFIX, block), Dart.INDENT);\n }\n if (block.hasReturnValue_) {\n const value = Dart.valueToCode(block, 'VALUE', Dart.ORDER_NONE) || 'null';\n code += Dart.INDENT + 'return ' + value + ';\\n';\n } else {\n code += Dart.INDENT + 'return;\\n';\n }\n code += '}\\n';\n return code;\n};\n","/**\n * @license\n * Copyright 2014 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Generating Dart for math blocks.\n */\n'use strict';\n\ngoog.module('Blockly.Dart.math');\n\nconst {NameType} = goog.require('Blockly.Names');\nconst {dartGenerator: Dart} = goog.require('Blockly.Dart');\n\n\nDart.addReservedWords('Math');\n\nDart['math_number'] = function(block) {\n // Numeric value.\n let code = Number(block.getFieldValue('NUM'));\n let order;\n if (code === Infinity) {\n code = 'double.infinity';\n order = Dart.ORDER_UNARY_POSTFIX;\n } else if (code === -Infinity) {\n code = '-double.infinity';\n order = Dart.ORDER_UNARY_PREFIX;\n } else {\n // -4.abs() returns -4 in Dart due to strange order of operation choices.\n // -4 is actually an operator and a number. Reflect this in the order.\n order = code < 0 ? Dart.ORDER_UNARY_PREFIX : Dart.ORDER_ATOMIC;\n }\n return [code, order];\n};\n\nDart['math_arithmetic'] = function(block) {\n // Basic arithmetic operators, and power.\n const OPERATORS = {\n 'ADD': [' + ', Dart.ORDER_ADDITIVE],\n 'MINUS': [' - ', Dart.ORDER_ADDITIVE],\n 'MULTIPLY': [' * ', Dart.ORDER_MULTIPLICATIVE],\n 'DIVIDE': [' / ', Dart.ORDER_MULTIPLICATIVE],\n 'POWER': [null, Dart.ORDER_NONE], // Handle power separately.\n };\n const tuple = OPERATORS[block.getFieldValue('OP')];\n const operator = tuple[0];\n const order = tuple[1];\n const argument0 = Dart.valueToCode(block, 'A', order) || '0';\n const argument1 = Dart.valueToCode(block, 'B', order) || '0';\n let code;\n // Power in Dart requires a special case since it has no operator.\n if (!operator) {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n code = 'Math.pow(' + argument0 + ', ' + argument1 + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n code = argument0 + operator + argument1;\n return [code, order];\n};\n\nDart['math_single'] = function(block) {\n // Math operators with single operand.\n const operator = block.getFieldValue('OP');\n let code;\n let arg;\n if (operator === 'NEG') {\n // Negation is a special case given its different operator precedence.\n arg = Dart.valueToCode(block, 'NUM', Dart.ORDER_UNARY_PREFIX) || '0';\n if (arg[0] === '-') {\n // --3 is not legal in Dart.\n arg = ' ' + arg;\n }\n code = '-' + arg;\n return [code, Dart.ORDER_UNARY_PREFIX];\n }\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n if (operator === 'ABS' || operator.substring(0, 5) === 'ROUND') {\n arg = Dart.valueToCode(block, 'NUM', Dart.ORDER_UNARY_POSTFIX) || '0';\n } else if (operator === 'SIN' || operator === 'COS' || operator === 'TAN') {\n arg = Dart.valueToCode(block, 'NUM', Dart.ORDER_MULTIPLICATIVE) || '0';\n } else {\n arg = Dart.valueToCode(block, 'NUM', Dart.ORDER_NONE) || '0';\n }\n // First, handle cases which generate values that don't need parentheses\n // wrapping the code.\n switch (operator) {\n case 'ABS':\n code = arg + '.abs()';\n break;\n case 'ROOT':\n code = 'Math.sqrt(' + arg + ')';\n break;\n case 'LN':\n code = 'Math.log(' + arg + ')';\n break;\n case 'EXP':\n code = 'Math.exp(' + arg + ')';\n break;\n case 'POW10':\n code = 'Math.pow(10,' + arg + ')';\n break;\n case 'ROUND':\n code = arg + '.round()';\n break;\n case 'ROUNDUP':\n code = arg + '.ceil()';\n break;\n case 'ROUNDDOWN':\n code = arg + '.floor()';\n break;\n case 'SIN':\n code = 'Math.sin(' + arg + ' / 180 * Math.pi)';\n break;\n case 'COS':\n code = 'Math.cos(' + arg + ' / 180 * Math.pi)';\n break;\n case 'TAN':\n code = 'Math.tan(' + arg + ' / 180 * Math.pi)';\n break;\n }\n if (code) {\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n // Second, handle cases which generate values that may need parentheses\n // wrapping the code.\n switch (operator) {\n case 'LOG10':\n code = 'Math.log(' + arg + ') / Math.log(10)';\n break;\n case 'ASIN':\n code = 'Math.asin(' + arg + ') / Math.pi * 180';\n break;\n case 'ACOS':\n code = 'Math.acos(' + arg + ') / Math.pi * 180';\n break;\n case 'ATAN':\n code = 'Math.atan(' + arg + ') / Math.pi * 180';\n break;\n default:\n throw Error('Unknown math operator: ' + operator);\n }\n return [code, Dart.ORDER_MULTIPLICATIVE];\n};\n\nDart['math_constant'] = function(block) {\n // Constants: PI, E, the Golden Ratio, sqrt(2), 1/sqrt(2), INFINITY.\n const CONSTANTS = {\n 'PI': ['Math.pi', Dart.ORDER_UNARY_POSTFIX],\n 'E': ['Math.e', Dart.ORDER_UNARY_POSTFIX],\n 'GOLDEN_RATIO': ['(1 + Math.sqrt(5)) / 2', Dart.ORDER_MULTIPLICATIVE],\n 'SQRT2': ['Math.sqrt2', Dart.ORDER_UNARY_POSTFIX],\n 'SQRT1_2': ['Math.sqrt1_2', Dart.ORDER_UNARY_POSTFIX],\n 'INFINITY': ['double.infinity', Dart.ORDER_ATOMIC],\n };\n const constant = block.getFieldValue('CONSTANT');\n if (constant !== 'INFINITY') {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n }\n return CONSTANTS[constant];\n};\n\nDart['math_number_property'] = function(block) {\n // Check if a number is even, odd, prime, whole, positive, or negative\n // or if it is divisible by certain number. Returns true or false.\n const PROPERTIES = {\n 'EVEN': [' % 2 == 0', Dart.ORDER_MULTIPLICATIVE, Dart.ORDER_EQUALITY],\n 'ODD': [' % 2 == 1', Dart.ORDER_MULTIPLICATIVE, Dart.ORDER_EQUALITY],\n 'WHOLE': [' % 1 == 0', Dart.ORDER_MULTIPLICATIVE, Dart.ORDER_EQUALITY],\n 'POSITIVE': [' > 0', Dart.ORDER_RELATIONAL, Dart.ORDER_RELATIONAL],\n 'NEGATIVE': [' < 0', Dart.ORDER_RELATIONAL, Dart.ORDER_RELATIONAL],\n 'DIVISIBLE_BY': [null, Dart.ORDER_MULTIPLICATIVE, Dart.ORDER_EQUALITY],\n 'PRIME': [null, Dart.ORDER_NONE, Dart.ORDER_UNARY_POSTFIX],\n };\n const dropdownProperty = block.getFieldValue('PROPERTY');\n const [suffix, inputOrder, outputOrder] = PROPERTIES[dropdownProperty];\n const numberToCheck = Dart.valueToCode(block, 'NUMBER_TO_CHECK',\n inputOrder) || '0';\n let code;\n if (dropdownProperty === 'PRIME') {\n // Prime is a special case as it is not a one-liner test.\n Dart.definitions_['import_dart_math'] =\n 'import \\'dart:math\\' as Math;';\n const functionName = Dart.provideFunction_('math_isPrime', `\nbool ${Dart.FUNCTION_NAME_PLACEHOLDER_}(n) {\n // https://en.wikipedia.org/wiki/Primality_test#Naive_methods\n if (n == 2 || n == 3) {\n return true;\n }\n // False if n is null, negative, is 1, or not whole.\n // And false if n is divisible by 2 or 3.\n if (n == null || n <= 1 || n % 1 != 0 || n % 2 == 0 || n % 3 == 0) {\n return false;\n }\n // Check all the numbers of form 6k +/- 1, up to sqrt(n).\n for (var x = 6; x <= Math.sqrt(n) + 1; x += 6) {\n if (n % (x - 1) == 0 || n % (x + 1) == 0) {\n return false;\n }\n }\n return true;\n}\n`);\n code = functionName + '(' + numberToCheck + ')';\n } else if (dropdownProperty === 'DIVISIBLE_BY') {\n const divisor = Dart.valueToCode(block, 'DIVISOR',\n Dart.ORDER_MULTIPLICATIVE) || '0';\n if (divisor === '0') {\n return ['false', Dart.ORDER_ATOMIC];\n }\n code = numberToCheck + ' % ' + divisor + ' == 0';\n } else {\n code = numberToCheck + suffix;\n }\n return [code, outputOrder];\n};\n\nDart['math_change'] = function(block) {\n // Add to a variable in place.\n const argument0 =\n Dart.valueToCode(block, 'DELTA', Dart.ORDER_ADDITIVE) || '0';\n const varName =\n Dart.nameDB_.getName(block.getFieldValue('VAR'), NameType.VARIABLE);\n return varName + ' = (' + varName + ' is num ? ' + varName + ' : 0) + ' +\n argument0 + ';\\n';\n};\n\n// Rounding functions have a single operand.\nDart['math_round'] = Dart['math_single'];\n// Trigonometry functions have a single operand.\nDart['math_trig'] = Dart['math_single'];\n\nDart['math_on_list'] = function(block) {\n // Math functions for lists.\n const func = block.getFieldValue('OP');\n const list = Dart.valueToCode(block, 'LIST', Dart.ORDER_NONE) || '[]';\n let code;\n switch (func) {\n case 'SUM': {\n const functionName = Dart.provideFunction_('math_sum', `\nnum ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List<num> myList) {\n num sumVal = 0;\n myList.forEach((num entry) {sumVal += entry;});\n return sumVal;\n}\n`);\n code = functionName + '(' + list + ')';\n break;\n }\n case 'MIN': {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n const functionName = Dart.provideFunction_('math_min', `\nnum ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List<num> myList) {\n if (myList.isEmpty) return null;\n num minVal = myList[0];\n myList.forEach((num entry) {minVal = Math.min(minVal, entry);});\n return minVal;\n}\n`);\n code = functionName + '(' + list + ')';\n break;\n }\n case 'MAX': {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n const functionName = Dart.provideFunction_('math_max', `\nnum ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List<num> myList) {\n if (myList.isEmpty) return null;\n num maxVal = myList[0];\n myList.forEach((num entry) {maxVal = Math.max(maxVal, entry);});\n return maxVal;\n}\n`);\n code = functionName + '(' + list + ')';\n break;\n }\n case 'AVERAGE': {\n // This operation exclude null and values that are not int or float:\n // math_mean([null,null,\"aString\",1,9]) -> 5.0\n const functionName = Dart.provideFunction_('math_mean', `\nnum ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List myList) {\n // First filter list for numbers only.\n List localList = new List.from(myList);\n localList.removeWhere((a) => a is! num);\n if (localList.isEmpty) return null;\n num sumVal = 0;\n localList.forEach((var entry) {sumVal += entry;});\n return sumVal / localList.length;\n}\n`);\n code = functionName + '(' + list + ')';\n break;\n }\n case 'MEDIAN': {\n const functionName = Dart.provideFunction_('math_median', `\nnum ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List myList) {\n // First filter list for numbers only, then sort, then return middle value\n // or the average of two middle values if list has an even number of elements.\n List localList = new List.from(myList);\n localList.removeWhere((a) => a is! num);\n if (localList.isEmpty) return null;\n localList.sort((a, b) => (a - b));\n int index = localList.length ~/ 2;\n if (localList.length % 2 == 1) {\n return localList[index];\n } else {\n return (localList[index - 1] + localList[index]) / 2;\n }\n}\n`);\n code = functionName + '(' + list + ')';\n break;\n }\n case 'MODE': {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n // As a list of numbers can contain more than one mode,\n // the returned result is provided as an array.\n // Mode of [3, 'x', 'x', 1, 1, 2, '3'] -> ['x', 1]\n const functionName = Dart.provideFunction_('math_modes', `\nList ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List values) {\n List modes = [];\n List counts = [];\n int maxCount = 0;\n for (int i = 0; i < values.length; i++) {\n var value = values[i];\n bool found = false;\n int thisCount;\n for (int j = 0; j < counts.length; j++) {\n if (counts[j][0] == value) {\n thisCount = ++counts[j][1];\n found = true;\n break;\n }\n }\n if (!found) {\n counts.add([value, 1]);\n thisCount = 1;\n }\n maxCount = Math.max(thisCount, maxCount);\n }\n for (int j = 0; j < counts.length; j++) {\n if (counts[j][1] == maxCount) {\n modes.add(counts[j][0]);\n }\n }\n return modes;\n}\n`);\n code = functionName + '(' + list + ')';\n break;\n }\n case 'STD_DEV': {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n const functionName = Dart.provideFunction_('math_standard_deviation', `\nnum ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List myList) {\n // First filter list for numbers only.\n List numbers = new List.from(myList);\n numbers.removeWhere((a) => a is! num);\n if (numbers.isEmpty) return null;\n num n = numbers.length;\n num sum = 0;\n numbers.forEach((x) => sum += x);\n num mean = sum / n;\n num sumSquare = 0;\n numbers.forEach((x) => sumSquare += Math.pow(x - mean, 2));\n return Math.sqrt(sumSquare / n);\n}\n`);\n code = functionName + '(' + list + ')';\n break;\n }\n case 'RANDOM': {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n const functionName = Dart.provideFunction_('math_random_item', `\ndynamic ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List myList) {\n int x = new Math.Random().nextInt(myList.length);\n return myList[x];\n}\n`);\n code = functionName + '(' + list + ')';\n break;\n }\n default:\n throw Error('Unknown operator: ' + func);\n }\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['math_modulo'] = function(block) {\n // Remainder computation.\n const argument0 =\n Dart.valueToCode(block, 'DIVIDEND', Dart.ORDER_MULTIPLICATIVE) || '0';\n const argument1 =\n Dart.valueToCode(block, 'DIVISOR', Dart.ORDER_MULTIPLICATIVE) || '0';\n const code = argument0 + ' % ' + argument1;\n return [code, Dart.ORDER_MULTIPLICATIVE];\n};\n\nDart['math_constrain'] = function(block) {\n // Constrain a number between two limits.\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n const argument0 = Dart.valueToCode(block, 'VALUE', Dart.ORDER_NONE) || '0';\n const argument1 = Dart.valueToCode(block, 'LOW', Dart.ORDER_NONE) || '0';\n const argument2 =\n Dart.valueToCode(block, 'HIGH', Dart.ORDER_NONE) || 'double.infinity';\n const code = 'Math.min(Math.max(' + argument0 + ', ' + argument1 + '), ' +\n argument2 + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['math_random_int'] = function(block) {\n // Random integer between [X] and [Y].\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n const argument0 = Dart.valueToCode(block, 'FROM', Dart.ORDER_NONE) || '0';\n const argument1 = Dart.valueToCode(block, 'TO', Dart.ORDER_NONE) || '0';\n const functionName = Dart.provideFunction_('math_random_int', `\nint ${Dart.FUNCTION_NAME_PLACEHOLDER_}(num a, num b) {\n if (a > b) {\n // Swap a and b to ensure a is smaller.\n num c = a;\n a = b;\n b = c;\n }\n return new Math.Random().nextInt(b - a + 1) + a;\n}\n`);\n const code = functionName + '(' + argument0 + ', ' + argument1 + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['math_random_float'] = function(block) {\n // Random fraction between 0 and 1.\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n return ['new Math.Random().nextDouble()', Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['math_atan2'] = function(block) {\n // Arctangent of point (X, Y) in degrees from -180 to 180.\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n const argument0 = Dart.valueToCode(block, 'X', Dart.ORDER_NONE) || '0';\n const argument1 = Dart.valueToCode(block, 'Y', Dart.ORDER_NONE) || '0';\n return [\n 'Math.atan2(' + argument1 + ', ' + argument0 + ') / Math.pi * 180',\n Dart.ORDER_MULTIPLICATIVE\n ];\n};\n","/**\n * @license\n * Copyright 2014 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Generating Dart for loop blocks.\n */\n'use strict';\n\ngoog.module('Blockly.Dart.loops');\n\nconst {dartGenerator: Dart} = goog.require('Blockly.Dart');\nconst stringUtils = goog.require('Blockly.utils.string');\nconst {NameType} = goog.require('Blockly.Names');\n\n\nDart['controls_repeat_ext'] = function(block) {\n let repeats;\n // Repeat n times.\n if (block.getField('TIMES')) {\n // Internal number.\n repeats = String(Number(block.getFieldValue('TIMES')));\n } else {\n // External number.\n repeats = Dart.valueToCode(block, 'TIMES', Dart.ORDER_ASSIGNMENT) || '0';\n }\n let branch = Dart.statementToCode(block, 'DO');\n branch = Dart.addLoopTrap(branch, block);\n let code = '';\n const loopVar = Dart.nameDB_.getDistinctName('count', NameType.VARIABLE);\n let endVar = repeats;\n if (!repeats.match(/^\\w+$/) && !stringUtils.isNumber(repeats)) {\n endVar = Dart.nameDB_.getDistinctName('repeat_end', NameType.VARIABLE);\n code += 'var ' + endVar + ' = ' + repeats + ';\\n';\n }\n code += 'for (int ' + loopVar + ' = 0; ' + loopVar + ' < ' + endVar + '; ' +\n loopVar + '++) {\\n' + branch + '}\\n';\n return code;\n};\n\nDart['controls_repeat'] = Dart['controls_repeat_ext'];\n\nDart['controls_whileUntil'] = function(block) {\n // Do while/until loop.\n const until = block.getFieldValue('MODE') === 'UNTIL';\n let argument0 =\n Dart.valueToCode(\n block, 'BOOL', until ? Dart.ORDER_UNARY_PREFIX : Dart.ORDER_NONE) ||\n 'false';\n let branch = Dart.statementToCode(block, 'DO');\n branch = Dart.addLoopTrap(branch, block);\n if (until) {\n argument0 = '!' + argument0;\n }\n return 'while (' + argument0 + ') {\\n' + branch + '}\\n';\n};\n\nDart['controls_for'] = function(block) {\n // For loop.\n const variable0 =\n Dart.nameDB_.getName(block.getFieldValue('VAR'), NameType.VARIABLE);\n const argument0 =\n Dart.valueToCode(block, 'FROM', Dart.ORDER_ASSIGNMENT) || '0';\n const argument1 = Dart.valueToCode(block, 'TO', Dart.ORDER_ASSIGNMENT) || '0';\n const increment = Dart.valueToCode(block, 'BY', Dart.ORDER_ASSIGNMENT) || '1';\n let branch = Dart.statementToCode(block, 'DO');\n branch = Dart.addLoopTrap(branch, block);\n let code;\n if (stringUtils.isNumber(argument0) && stringUtils.isNumber(argument1) &&\n stringUtils.isNumber(increment)) {\n // All arguments are simple numbers.\n const up = Number(argument0) <= Number(argument1);\n code = 'for (' + variable0 + ' = ' + argument0 + '; ' + variable0 +\n (up ? ' <= ' : ' >= ') + argument1 + '; ' + variable0;\n const step = Math.abs(Number(increment));\n if (step === 1) {\n code += up ? '++' : '--';\n } else {\n code += (up ? ' += ' : ' -= ') + step;\n }\n code += ') {\\n' + branch + '}\\n';\n } else {\n code = '';\n // Cache non-trivial values to variables to prevent repeated look-ups.\n let startVar = argument0;\n if (!argument0.match(/^\\w+$/) && !stringUtils.isNumber(argument0)) {\n startVar =\n Dart.nameDB_.getDistinctName(variable0 + '_start', NameType.VARIABLE);\n code += 'var ' + startVar + ' = ' + argument0 + ';\\n';\n }\n let endVar = argument1;\n if (!argument1.match(/^\\w+$/) && !stringUtils.isNumber(argument1)) {\n endVar =\n Dart.nameDB_.getDistinctName(variable0 + '_end', NameType.VARIABLE);\n code += 'var ' + endVar + ' = ' + argument1 + ';\\n';\n }\n // Determine loop direction at start, in case one of the bounds\n // changes during loop execution.\n const incVar =\n Dart.nameDB_.getDistinctName(variable0 + '_inc', NameType.VARIABLE);\n code += 'num ' + incVar + ' = ';\n if (stringUtils.isNumber(increment)) {\n code += Math.abs(increment) + ';\\n';\n } else {\n code += '(' + increment + ').abs();\\n';\n }\n code += 'if (' + startVar + ' > ' + endVar + ') {\\n';\n code += Dart.INDENT + incVar + ' = -' + incVar + ';\\n';\n code += '}\\n';\n code += 'for (' + variable0 + ' = ' + startVar + '; ' + incVar +\n ' >= 0 ? ' + variable0 + ' <= ' + endVar + ' : ' + variable0 +\n ' >= ' + endVar + '; ' + variable0 + ' += ' + incVar + ') {\\n' +\n branch + '}\\n';\n }\n return code;\n};\n\nDart['controls_forEach'] = function(block) {\n // For each loop.\n const variable0 =\n Dart.nameDB_.getName(block.getFieldValue('VAR'), NameType.VARIABLE);\n const argument0 =\n Dart.valueToCode(block, 'LIST', Dart.ORDER_ASSIGNMENT) || '[]';\n let branch = Dart.statementToCode(block, 'DO');\n branch = Dart.addLoopTrap(branch, block);\n const code =\n 'for (var ' + variable0 + ' in ' + argument0 + ') {\\n' + branch + '}\\n';\n return code;\n};\n\nDart['controls_flow_statements'] = function(block) {\n // Flow statements: continue, break.\n let xfix = '';\n if (Dart.STATEMENT_PREFIX) {\n // Automatic prefix insertion is switched off for this block. Add manually.\n xfix += Dart.injectId(Dart.STATEMENT_PREFIX, block);\n }\n if (Dart.STATEMENT_SUFFIX) {\n // Inject any statement suffix here since the regular one at the end\n // will not get executed if the break/continue is triggered.\n xfix += Dart.injectId(Dart.STATEMENT_SUFFIX, block);\n }\n if (Dart.STATEMENT_PREFIX) {\n const loop = block.getSurroundLoop();\n if (loop && !loop.suppressPrefixSuffix) {\n // Inject loop's statement prefix here since the regular one at the end\n // of the loop will not get executed if 'continue' is triggered.\n // In the case of 'break', a prefix is needed due to the loop's suffix.\n xfix += Dart.injectId(Dart.STATEMENT_PREFIX, loop);\n }\n }\n switch (block.getFieldValue('FLOW')) {\n case 'BREAK':\n return xfix + 'break;\\n';\n case 'CONTINUE':\n return xfix + 'continue;\\n';\n }\n throw Error('Unknown flow statement.');\n};\n","/**\n * @license\n * Copyright 2014 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Generating Dart for logic blocks.\n */\n'use strict';\n\ngoog.module('Blockly.Dart.logic');\n\nconst {dartGenerator: Dart} = goog.require('Blockly.Dart');\n\n\nDart['controls_if'] = function(block) {\n // If/elseif/else condition.\n let n = 0;\n let code = '', branchCode, conditionCode;\n if (Dart.STATEMENT_PREFIX) {\n // Automatic prefix insertion is switched off for this block. Add manually.\n code += Dart.injectId(Dart.STATEMENT_PREFIX, block);\n }\n do {\n conditionCode =\n Dart.valueToCode(block, 'IF' + n, Dart.ORDER_NONE) || 'false';\n branchCode = Dart.statementToCode(block, 'DO' + n);\n if (Dart.STATEMENT_SUFFIX) {\n branchCode =\n Dart.prefixLines(\n Dart.injectId(Dart.STATEMENT_SUFFIX, block), Dart.INDENT) +\n branchCode;\n }\n code += (n > 0 ? 'else ' : '') + 'if (' + conditionCode + ') {\\n' +\n branchCode + '}';\n n++;\n } while (block.getInput('IF' + n));\n\n if (block.getInput('ELSE') || Dart.STATEMENT_SUFFIX) {\n branchCode = Dart.statementToCode(block, 'ELSE');\n if (Dart.STATEMENT_SUFFIX) {\n branchCode =\n Dart.prefixLines(\n Dart.injectId(Dart.STATEMENT_SUFFIX, block), Dart.INDENT) +\n branchCode;\n }\n code += ' else {\\n' + branchCode + '}';\n }\n return code + '\\n';\n};\n\nDart['controls_ifelse'] = Dart['controls_if'];\n\nDart['logic_compare'] = function(block) {\n // Comparison operator.\n const OPERATORS =\n {'EQ': '==', 'NEQ': '!=', 'LT': '<', 'LTE': '<=', 'GT': '>', 'GTE': '>='};\n const operator = OPERATORS[block.getFieldValue('OP')];\n const order = (operator === '==' || operator === '!=') ?\n Dart.ORDER_EQUALITY :\n Dart.ORDER_RELATIONAL;\n const argument0 = Dart.valueToCode(block, 'A', order) || '0';\n const argument1 = Dart.valueToCode(block, 'B', order) || '0';\n const code = argument0 + ' ' + operator + ' ' + argument1;\n return [code, order];\n};\n\nDart['logic_operation'] = function(block) {\n // Operations 'and', 'or'.\n const operator = (block.getFieldValue('OP') === 'AND') ? '&&' : '||';\n const order =\n (operator === '&&') ? Dart.ORDER_LOGICAL_AND : Dart.ORDER_LOGICAL_OR;\n let argument0 = Dart.valueToCode(block, 'A', order);\n let argument1 = Dart.valueToCode(block, 'B', order);\n if (!argument0 && !argument1) {\n // If there are no arguments, then the return value is false.\n argument0 = 'false';\n argument1 = 'false';\n } else {\n // Single missing arguments have no effect on the return value.\n const defaultArgument = (operator === '&&') ? 'true' : 'false';\n if (!argument0) {\n argument0 = defaultArgument;\n }\n if (!argument1) {\n argument1 = defaultArgument;\n }\n }\n const code = argument0 + ' ' + operator + ' ' + argument1;\n return [code, order];\n};\n\nDart['logic_negate'] = function(block) {\n // Negation.\n const order = Dart.ORDER_UNARY_PREFIX;\n const argument0 = Dart.valueToCode(block, 'BOOL', order) || 'true';\n const code = '!' + argument0;\n return [code, order];\n};\n\nDart['logic_boolean'] = function(block) {\n // Boolean values true and false.\n const code = (block.getFieldValue('BOOL') === 'TRUE') ? 'true' : 'false';\n return [code, Dart.ORDER_ATOMIC];\n};\n\nDart['logic_null'] = function(block) {\n // Null data type.\n return ['null', Dart.ORDER_ATOMIC];\n};\n\nDart['logic_ternary'] = function(block) {\n // Ternary operator.\n const value_if =\n Dart.valueToCode(block, 'IF', Dart.ORDER_CONDITIONAL) || 'false';\n const value_then =\n Dart.valueToCode(block, 'THEN', Dart.ORDER_CONDITIONAL) || 'null';\n const value_else =\n Dart.valueToCode(block, 'ELSE', Dart.ORDER_CONDITIONAL) || 'null';\n const code = value_if + ' ? ' + value_then + ' : ' + value_else;\n return [code, Dart.ORDER_CONDITIONAL];\n};\n","/**\n * @license\n * Copyright 2014 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Generating Dart for list blocks.\n */\n'use strict';\n\ngoog.module('Blockly.Dart.lists');\n\nconst {NameType} = goog.require('Blockly.Names');\nconst {dartGenerator: Dart} = goog.require('Blockly.Dart');\n\n\nDart.addReservedWords('Math');\n\nDart['lists_create_empty'] = function(block) {\n // Create an empty list.\n return ['[]', Dart.ORDER_ATOMIC];\n};\n\nDart['lists_create_with'] = function(block) {\n // Create a list with any number of elements of any type.\n const elements = new Array(block.itemCount_);\n for (let i = 0; i < block.itemCount_; i++) {\n elements[i] = Dart.valueToCode(block, 'ADD' + i, Dart.ORDER_NONE) || 'null';\n }\n const code = '[' + elements.join(', ') + ']';\n return [code, Dart.ORDER_ATOMIC];\n};\n\nDart['lists_repeat'] = function(block) {\n // Create a list with one element repeated.\n const element = Dart.valueToCode(block, 'ITEM', Dart.ORDER_NONE) || 'null';\n const repeatCount = Dart.valueToCode(block, 'NUM', Dart.ORDER_NONE) || '0';\n const code = 'new List.filled(' + repeatCount + ', ' + element + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['lists_length'] = function(block) {\n // String or array length.\n const list =\n Dart.valueToCode(block, 'VALUE', Dart.ORDER_UNARY_POSTFIX) || '[]';\n return [list + '.length', Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['lists_isEmpty'] = function(block) {\n // Is the string null or array empty?\n const list =\n Dart.valueToCode(block, 'VALUE', Dart.ORDER_UNARY_POSTFIX) || '[]';\n return [list + '.isEmpty', Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['lists_indexOf'] = function(block) {\n // Find an item in the list.\n const operator =\n block.getFieldValue('END') === 'FIRST' ? 'indexOf' : 'lastIndexOf';\n const item = Dart.valueToCode(block, 'FIND', Dart.ORDER_NONE) || \"''\";\n const list =\n Dart.valueToCode(block, 'VALUE', Dart.ORDER_UNARY_POSTFIX) || '[]';\n const code = list + '.' + operator + '(' + item + ')';\n if (block.workspace.options.oneBasedIndex) {\n return [code + ' + 1', Dart.ORDER_ADDITIVE];\n }\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['lists_getIndex'] = function(block) {\n // Get element at index.\n // Note: Until January 2013 this block did not have MODE or WHERE inputs.\n const mode = block.getFieldValue('MODE') || 'GET';\n const where = block.getFieldValue('WHERE') || 'FROM_START';\n const listOrder = (where === 'RANDOM' || where === 'FROM_END') ?\n Dart.ORDER_NONE :\n Dart.ORDER_UNARY_POSTFIX;\n let list = Dart.valueToCode(block, 'VALUE', listOrder) || '[]';\n // Cache non-trivial values to variables to prevent repeated look-ups.\n // Closure, which accesses and modifies 'list'.\n function cacheList() {\n const listVar = Dart.nameDB_.getDistinctName('tmp_list', NameType.VARIABLE);\n const code = 'List ' + listVar + ' = ' + list + ';\\n';\n list = listVar;\n return code;\n }\n // If `list` would be evaluated more than once (which is the case for\n // RANDOM REMOVE and FROM_END) and is non-trivial, make sure to access it\n // only once.\n if (((where === 'RANDOM' && mode === 'REMOVE') || where === 'FROM_END') &&\n !list.match(/^\\w+$/)) {\n // `list` is an expression, so we may not evaluate it more than once.\n if (where === 'RANDOM') {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n // We can use multiple statements.\n let code = cacheList();\n const xVar = Dart.nameDB_.getDistinctName('tmp_x', NameType.VARIABLE);\n code += 'int ' + xVar + ' = new Math.Random().nextInt(' + list +\n '.length);\\n';\n code += list + '.removeAt(' + xVar + ');\\n';\n return code;\n } else { // where === 'FROM_END'\n if (mode === 'REMOVE') {\n // We can use multiple statements.\n const at = Dart.getAdjusted(block, 'AT', 1, false, Dart.ORDER_ADDITIVE);\n let code = cacheList();\n code += list + '.removeAt(' + list + '.length' +\n ' - ' + at + ');\\n';\n return code;\n\n } else if (mode === 'GET') {\n const at = Dart.getAdjusted(block, 'AT', 1);\n // We need to create a procedure to avoid reevaluating values.\n const functionName = Dart.provideFunction_('lists_get_from_end', `\ndynamic ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List my_list, num x) {\n x = my_list.length - x;\n return my_list[x];\n}\n`);\n const code = functionName + '(' + list + ', ' + at + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'GET_REMOVE') {\n const at = Dart.getAdjusted(block, 'AT', 1);\n // We need to create a procedure to avoid reevaluating values.\n const functionName = Dart.provideFunction_('lists_remove_from_end', `\ndynamic ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List my_list, num x) {\n x = my_list.length - x;\n return my_list.removeAt(x);\n}\n`);\n const code = functionName + '(' + list + ', ' + at + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n }\n } else {\n // Either `list` is a simple variable, or we only need to refer to `list`\n // once.\n switch (where) {\n case 'FIRST':\n if (mode === 'GET') {\n const code = list + '.first';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'GET_REMOVE') {\n const code = list + '.removeAt(0)';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'REMOVE') {\n return list + '.removeAt(0);\\n';\n }\n break;\n case 'LAST':\n if (mode === 'GET') {\n const code = list + '.last';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'GET_REMOVE') {\n const code = list + '.removeLast()';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'REMOVE') {\n return list + '.removeLast();\\n';\n }\n break;\n case 'FROM_START': {\n const at = Dart.getAdjusted(block, 'AT');\n if (mode === 'GET') {\n const code = list + '[' + at + ']';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'GET_REMOVE') {\n const code = list + '.removeAt(' + at + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'REMOVE') {\n return list + '.removeAt(' + at + ');\\n';\n }\n break;\n }\n case 'FROM_END': {\n const at = Dart.getAdjusted(block, 'AT', 1, false, Dart.ORDER_ADDITIVE);\n if (mode === 'GET') {\n const code = list + '[' + list + '.length - ' + at + ']';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'GET_REMOVE' || mode === 'REMOVE') {\n const code = list + '.removeAt(' + list + '.length - ' + at + ')';\n if (mode === 'GET_REMOVE') {\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'REMOVE') {\n return code + ';\\n';\n }\n }\n break;\n }\n case 'RANDOM':\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n if (mode === 'REMOVE') {\n // We can use multiple statements.\n const xVar = Dart.nameDB_.getDistinctName('tmp_x', NameType.VARIABLE);\n let code = 'int ' + xVar + ' = new Math.Random().nextInt(' + list +\n '.length);\\n';\n code += list + '.removeAt(' + xVar + ');\\n';\n return code;\n } else if (mode === 'GET') {\n const functionName = Dart.provideFunction_('lists_get_random_item', `\ndynamic ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List my_list) {\n int x = new Math.Random().nextInt(my_list.length);\n return my_list[x];\n}\n`);\n const code = functionName + '(' + list + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n } else if (mode === 'GET_REMOVE') {\n const functionName =\n Dart.provideFunction_('lists_remove_random_item', `\ndynamic ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List my_list) {\n int x = new Math.Random().nextInt(my_list.length);\n return my_list.removeAt(x);\n}\n`);\n const code = functionName + '(' + list + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n }\n break;\n }\n }\n throw Error('Unhandled combination (lists_getIndex).');\n};\n\nDart['lists_setIndex'] = function(block) {\n // Set element at index.\n // Note: Until February 2013 this block did not have MODE or WHERE inputs.\n const mode = block.getFieldValue('MODE') || 'GET';\n const where = block.getFieldValue('WHERE') || 'FROM_START';\n let list = Dart.valueToCode(block, 'LIST', Dart.ORDER_UNARY_POSTFIX) || '[]';\n const value = Dart.valueToCode(block, 'TO', Dart.ORDER_ASSIGNMENT) || 'null';\n // Cache non-trivial values to variables to prevent repeated look-ups.\n // Closure, which accesses and modifies 'list'.\n function cacheList() {\n if (list.match(/^\\w+$/)) {\n return '';\n }\n const listVar = Dart.nameDB_.getDistinctName('tmp_list', NameType.VARIABLE);\n const code = 'List ' + listVar + ' = ' + list + ';\\n';\n list = listVar;\n return code;\n }\n switch (where) {\n case 'FIRST':\n if (mode === 'SET') {\n return list + '[0] = ' + value + ';\\n';\n } else if (mode === 'INSERT') {\n return list + '.insert(0, ' + value + ');\\n';\n }\n break;\n case 'LAST':\n if (mode === 'SET') {\n let code = cacheList();\n code += list + '[' + list + '.length - 1] = ' + value + ';\\n';\n return code;\n } else if (mode === 'INSERT') {\n return list + '.add(' + value + ');\\n';\n }\n break;\n case 'FROM_START': {\n const at = Dart.getAdjusted(block, 'AT');\n if (mode === 'SET') {\n return list + '[' + at + '] = ' + value + ';\\n';\n } else if (mode === 'INSERT') {\n return list + '.insert(' + at + ', ' + value + ');\\n';\n }\n break;\n }\n case 'FROM_END': {\n const at = Dart.getAdjusted(block, 'AT', 1, false, Dart.ORDER_ADDITIVE);\n let code = cacheList();\n if (mode === 'SET') {\n code += list + '[' + list + '.length - ' + at + '] = ' + value + ';\\n';\n return code;\n } else if (mode === 'INSERT') {\n code += list + '.insert(' + list + '.length - ' + at + ', ' + value +\n ');\\n';\n return code;\n }\n break;\n }\n case 'RANDOM': {\n Dart.definitions_['import_dart_math'] = 'import \\'dart:math\\' as Math;';\n let code = cacheList();\n const xVar = Dart.nameDB_.getDistinctName('tmp_x', NameType.VARIABLE);\n code += 'int ' + xVar + ' = new Math.Random().nextInt(' + list +\n '.length);\\n';\n if (mode === 'SET') {\n code += list + '[' + xVar + '] = ' + value + ';\\n';\n return code;\n } else if (mode === 'INSERT') {\n code += list + '.insert(' + xVar + ', ' + value + ');\\n';\n return code;\n }\n break;\n }\n }\n throw Error('Unhandled combination (lists_setIndex).');\n};\n\nDart['lists_getSublist'] = function(block) {\n // Get sublist.\n const list =\n Dart.valueToCode(block, 'LIST', Dart.ORDER_UNARY_POSTFIX) || '[]';\n const where1 = block.getFieldValue('WHERE1');\n const where2 = block.getFieldValue('WHERE2');\n let code;\n if (list.match(/^\\w+$/) ||\n (where1 !== 'FROM_END' && where2 === 'FROM_START')) {\n // If the list is a is a variable or doesn't require a call for length,\n // don't generate a helper function.\n let at1;\n switch (where1) {\n case 'FROM_START':\n at1 = Dart.getAdjusted(block, 'AT1');\n break;\n case 'FROM_END':\n at1 = Dart.getAdjusted(block, 'AT1', 1, false, Dart.ORDER_ADDITIVE);\n at1 = list + '.length - ' + at1;\n break;\n case 'FIRST':\n at1 = '0';\n break;\n default:\n throw Error('Unhandled option (lists_getSublist).');\n }\n let at2;\n switch (where2) {\n case 'FROM_START':\n at2 = Dart.getAdjusted(block, 'AT2', 1);\n break;\n case 'FROM_END':\n at2 = Dart.getAdjusted(block, 'AT2', 0, false, Dart.ORDER_ADDITIVE);\n at2 = list + '.length - ' + at2;\n break;\n case 'LAST':\n // There is no second index if LAST option is chosen.\n break;\n default:\n throw Error('Unhandled option (lists_getSublist).');\n }\n if (where2 === 'LAST') {\n code = list + '.sublist(' + at1 + ')';\n } else {\n code = list + '.sublist(' + at1 + ', ' + at2 + ')';\n }\n } else {\n const at1 = Dart.getAdjusted(block, 'AT1');\n const at2 = Dart.getAdjusted(block, 'AT2');\n const functionName = Dart.provideFunction_('lists_get_sublist', `\nList ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List list, String where1, num at1, String where2, num at2) {\n int getAt(String where, num at) {\n if (where == 'FROM_END') {\n at = list.length - 1 - at;\n } else if (where == 'FIRST') {\n at = 0;\n } else if (where == 'LAST') {\n at = list.length - 1;\n } else if (where != 'FROM_START') {\n throw 'Unhandled option (lists_getSublist).';\n }\n return at;\n }\n at1 = getAt(where1, at1);\n at2 = getAt(where2, at2) + 1;\n return list.sublist(at1, at2);\n}\n`);\n code = functionName + '(' + list + ', \\'' + where1 + '\\', ' + at1 + ', \\'' +\n where2 + '\\', ' + at2 + ')';\n }\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['lists_sort'] = function(block) {\n // Block for sorting a list.\n const list = Dart.valueToCode(block, 'LIST', Dart.ORDER_NONE) || '[]';\n const direction = block.getFieldValue('DIRECTION') === '1' ? 1 : -1;\n const type = block.getFieldValue('TYPE');\n const sortFunctionName = Dart.provideFunction_('lists_sort', `\nList ${Dart.FUNCTION_NAME_PLACEHOLDER_}(List list, String type, int direction) {\n var compareFuncs = {\n 'NUMERIC': (a, b) => (direction * a.compareTo(b)).toInt(),\n 'TEXT': (a, b) => direction * a.toString().compareTo(b.toString()),\n 'IGNORE_CASE':\n (a, b) => direction *\n a.toString().toLowerCase().compareTo(b.toString().toLowerCase())\n };\n list = new List.from(list);\n var compare = compareFuncs[type];\n list.sort(compare);\n return list;\n}\n`);\n return [\n sortFunctionName + '(' + list + ', ' +\n '\"' + type + '\", ' + direction + ')',\n Dart.ORDER_UNARY_POSTFIX\n ];\n};\n\nDart['lists_split'] = function(block) {\n // Block for splitting text into a list, or joining a list into text.\n let input = Dart.valueToCode(block, 'INPUT', Dart.ORDER_UNARY_POSTFIX);\n const delimiter = Dart.valueToCode(block, 'DELIM', Dart.ORDER_NONE) || \"''\";\n const mode = block.getFieldValue('MODE');\n let functionName;\n if (mode === 'SPLIT') {\n if (!input) {\n input = \"''\";\n }\n functionName = 'split';\n } else if (mode === 'JOIN') {\n if (!input) {\n input = '[]';\n }\n functionName = 'join';\n } else {\n throw Error('Unknown mode: ' + mode);\n }\n const code = input + '.' + functionName + '(' + delimiter + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['lists_reverse'] = function(block) {\n // Block for reversing a list.\n const list = Dart.valueToCode(block, 'LIST', Dart.ORDER_NONE) || '[]';\n // XXX What should the operator precedence be for a `new`?\n const code = 'new List.from(' + list + '.reversed)';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n","/**\n * @license\n * Copyright 2014 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Generating Dart for colour blocks.\n */\n'use strict';\n\ngoog.module('Blockly.Dart.colour');\n\nconst {dartGenerator: Dart} = goog.require('Blockly.Dart');\n\n\nDart.addReservedWords('Math');\n\nDart['colour_picker'] = function(block) {\n // Colour picker.\n const code = Dart.quote_(block.getFieldValue('COLOUR'));\n return [code, Dart.ORDER_ATOMIC];\n};\n\nDart['colour_random'] = function(block) {\n // Generate a random colour.\n Dart.definitions_['import_dart_math'] = \"import 'dart:math' as Math;\";\n const functionName = Dart.provideFunction_('colour_random', `\nString ${Dart.FUNCTION_NAME_PLACEHOLDER_}() {\n String hex = '0123456789abcdef';\n var rnd = new Math.Random();\n return '#\\${hex[rnd.nextInt(16)]}\\${hex[rnd.nextInt(16)]}'\n '\\${hex[rnd.nextInt(16)]}\\${hex[rnd.nextInt(16)]}'\n '\\${hex[rnd.nextInt(16)]}\\${hex[rnd.nextInt(16)]}';\n}\n`);\n const code = functionName + '()';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['colour_rgb'] = function(block) {\n // Compose a colour from RGB components expressed as percentages.\n const red = Dart.valueToCode(block, 'RED',\n Dart.ORDER_NONE) || 0;\n const green = Dart.valueToCode(block, 'GREEN',\n Dart.ORDER_NONE) || 0;\n const blue = Dart.valueToCode(block, 'BLUE',\n Dart.ORDER_NONE) || 0;\n\n Dart.definitions_['import_dart_math'] = \"import 'dart:math' as Math;\";\n const functionName = Dart.provideFunction_('colour_rgb', `\nString ${Dart.FUNCTION_NAME_PLACEHOLDER_}(num r, num g, num b) {\n num rn = (Math.max(Math.min(r, 100), 0) * 2.55).round();\n String rs = rn.toInt().toRadixString(16);\n rs = '0$rs';\n rs = rs.substring(rs.length - 2);\n num gn = (Math.max(Math.min(g, 100), 0) * 2.55).round();\n String gs = gn.toInt().toRadixString(16);\n gs = '0$gs';\n gs = gs.substring(gs.length - 2);\n num bn = (Math.max(Math.min(b, 100), 0) * 2.55).round();\n String bs = bn.toInt().toRadixString(16);\n bs = '0$bs';\n bs = bs.substring(bs.length - 2);\n return '#$rs$gs$bs';\n}\n`);\n const code = functionName + '(' + red + ', ' + green + ', ' + blue + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n\nDart['colour_blend'] = function(block) {\n // Blend two colours together.\n const c1 = Dart.valueToCode(block, 'COLOUR1', Dart.ORDER_NONE) || \"'#000000'\";\n const c2 = Dart.valueToCode(block, 'COLOUR2', Dart.ORDER_NONE) || \"'#000000'\";\n const ratio = Dart.valueToCode(block, 'RATIO', Dart.ORDER_NONE) || 0.5;\n\n Dart.definitions_['import_dart_math'] = \"import 'dart:math' as Math;\";\n const functionName = Dart.provideFunction_('colour_blend', `\nString ${Dart.FUNCTION_NAME_PLACEHOLDER_}(String c1, String c2, num ratio) {\n ratio = Math.max(Math.min(ratio, 1), 0);\n int r1 = int.parse('0x\\${c1.substring(1, 3)}');\n int g1 = int.parse('0x\\${c1.substring(3, 5)}');\n int b1 = int.parse('0x\\${c1.substring(5, 7)}');\n int r2 = int.parse('0x\\${c2.substring(1, 3)}');\n int g2 = int.parse('0x\\${c2.substring(3, 5)}');\n int b2 = int.parse('0x\\${c2.substring(5, 7)}');\n num rn = (r1 * (1 - ratio) + r2 * ratio).round();\n String rs = rn.toInt().toRadixString(16);\n num gn = (g1 * (1 - ratio) + g2 * ratio).round();\n String gs = gn.toInt().toRadixString(16);\n num bn = (b1 * (1 - ratio) + b2 * ratio).round();\n String bs = bn.toInt().toRadixString(16);\n rs = '0$rs';\n rs = rs.substring(rs.length - 2);\n gs = '0$gs';\n gs = gs.substring(gs.length - 2);\n bs = '0$bs';\n bs = bs.substring(bs.length - 2);\n return '#$rs$gs$bs';\n}\n`);\n const code = functionName + '(' + c1 + ', ' + c2 + ', ' + ratio + ')';\n return [code, Dart.ORDER_UNARY_POSTFIX];\n};\n","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * @fileoverview Complete helper functions for generating Dart for\n * blocks. This is the entrypoint for dart_compressed.js.\n * @suppress {extraRequire}\n */\n'use strict';\n\ngoog.module('Blockly.Dart.all');\n\nconst moduleExports = goog.require('Blockly.Dart');\ngoog.require('Blockly.Dart.colour');\ngoog.require('Blockly.Dart.lists');\ngoog.require('Blockly.Dart.logic');\ngoog.require('Blockly.Dart.loops');\ngoog.require('Blockly.Dart.math');\ngoog.require('Blockly.Dart.procedures');\ngoog.require('Blockly.Dart.texts');\ngoog.require('Blockly.Dart.variables');\ngoog.require('Blockly.Dart.variablesDynamic');\n\nexports = moduleExports;\n"]}
package/index.d.ts CHANGED
@@ -4,11 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- /**
8
- * @fileoverview Type definitions for Blockly.
9
- * @author samelh@google.com (Sam El-Husseini)
10
- */
11
-
7
+ import * as libraryBlocks from './blocks'; // Handcrafted file.
12
8
  export * from './core/blockly';
13
- export * as libraryBlocks from './blocks'; // Handcrafted file.
9
+ export {libraryBlocks};
14
10
  export const JavaScript: any;
package/javascript.d.ts CHANGED
@@ -4,10 +4,5 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- /**
8
- * @fileoverview Type definitions for the JavaScript generator.
9
- * @author samelh@google.com (Sam El-Husseini)
10
- */
11
-
12
7
  declare const javascript: any;
13
8
  export = javascript;