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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (858) hide show
  1. package/blockly.min.js +2421 -2688
  2. package/blockly_compressed.js +1499 -1994
  3. package/blockly_compressed.js.map +1 -1
  4. package/blocks/blocks.js +3 -2
  5. package/blocks/colour.js +3 -1
  6. package/blocks/lists.js +94 -22
  7. package/blocks/logic.js +14 -6
  8. package/blocks/loops.js +5 -3
  9. package/blocks/math.js +3 -1
  10. package/blocks/procedures.js +3 -1
  11. package/blocks/text.js +14 -6
  12. package/blocks/variables.js +3 -1
  13. package/blocks/variables_dynamic.js +3 -1
  14. package/blocks.d.ts +0 -2
  15. package/blocks_compressed.js +189 -171
  16. package/blocks_compressed.js.map +1 -1
  17. package/closure/goog/base.d.ts +1 -0
  18. package/closure/goog/base_minimal.d.ts +18 -0
  19. package/closure/goog/goog.d.ts +25 -0
  20. package/core/any_aliases.d.ts +1 -0
  21. package/core/any_aliases.ts +1 -0
  22. package/core/block.d.ts +779 -0
  23. package/core/{block.js → block.ts} +610 -719
  24. package/core/block_animations.d.ts +33 -0
  25. package/core/{block_animations.js → block_animations.ts} +75 -79
  26. package/core/block_drag_surface.d.ts +111 -0
  27. package/core/{block_drag_surface.js → block_drag_surface.ts} +85 -117
  28. package/core/block_dragger.d.ts +143 -0
  29. package/core/{block_dragger.js → block_dragger.ts} +139 -176
  30. package/core/block_svg.d.ts +588 -0
  31. package/core/{block_svg.js → block_svg.ts} +494 -630
  32. package/core/blockly.d.ts +562 -0
  33. package/core/blockly.js +1 -1
  34. package/core/blockly.ts +749 -0
  35. package/core/blockly_options.d.ts +69 -0
  36. package/core/blockly_options.ts +81 -0
  37. package/core/blocks.d.ts +17 -0
  38. package/core/{blocks.js → blocks.ts} +4 -8
  39. package/core/browser_events.d.ts +85 -0
  40. package/core/{browser_events.js → browser_events.ts} +98 -93
  41. package/core/bubble.d.ts +279 -0
  42. package/core/{bubble.js → bubble.ts} +277 -370
  43. package/core/bubble_dragger.d.ts +73 -0
  44. package/core/bubble_dragger.ts +229 -0
  45. package/core/bump_objects.d.ts +34 -0
  46. package/core/{bump_objects.js → bump_objects.ts} +54 -52
  47. package/core/clipboard.d.ts +42 -0
  48. package/core/clipboard.ts +91 -0
  49. package/core/comment.d.ts +113 -0
  50. package/core/{comment.js → comment.ts} +135 -185
  51. package/core/common.d.ts +129 -0
  52. package/core/{common.js → common.ts} +105 -82
  53. package/core/component_manager.d.ts +91 -0
  54. package/core/component_manager.ts +211 -0
  55. package/core/config.d.ts +23 -0
  56. package/core/{config.js → config.ts} +12 -19
  57. package/core/connection.d.ts +232 -0
  58. package/core/{connection.js → connection.ts} +187 -237
  59. package/core/connection_checker.d.ts +78 -0
  60. package/core/{connection_checker.js → connection_checker.ts} +66 -77
  61. package/core/connection_db.d.ts +91 -0
  62. package/core/{connection_db.js → connection_db.ts} +62 -87
  63. package/core/connection_type.d.ts +15 -0
  64. package/core/{connection_type.js → connection_type.ts} +8 -12
  65. package/core/constants.d.ts +15 -0
  66. package/core/{constants.js → constants.ts} +4 -8
  67. package/core/contextmenu.d.ts +80 -0
  68. package/core/{contextmenu.js → contextmenu.ts} +118 -153
  69. package/core/contextmenu_items.d.ts +77 -0
  70. package/core/contextmenu_items.ts +576 -0
  71. package/core/contextmenu_registry.d.ts +105 -0
  72. package/core/contextmenu_registry.ts +179 -0
  73. package/core/css.d.ts +24 -0
  74. package/core/{css.js → css.ts} +16 -24
  75. package/core/delete_area.d.ts +47 -0
  76. package/core/delete_area.ts +82 -0
  77. package/core/dialog.d.ts +61 -0
  78. package/core/dialog.ts +127 -0
  79. package/core/drag_target.d.ts +63 -0
  80. package/core/drag_target.ts +94 -0
  81. package/core/dropdowndiv.d.ts +155 -0
  82. package/core/{dropdowndiv.js → dropdowndiv.ts} +262 -333
  83. package/core/events/events.d.ts +102 -0
  84. package/core/events/events.ts +123 -0
  85. package/core/events/events_abstract.d.ts +51 -0
  86. package/core/events/events_abstract.ts +112 -0
  87. package/core/events/events_block_base.d.ts +31 -0
  88. package/core/events/events_block_base.ts +65 -0
  89. package/core/events/events_block_change.d.ts +55 -0
  90. package/core/events/{events_block_change.js → events_block_change.ts} +45 -48
  91. package/core/events/events_block_create.d.ts +35 -0
  92. package/core/events/{events_block_create.js → events_block_create.ts} +30 -35
  93. package/core/events/events_block_delete.d.ts +36 -0
  94. package/core/events/{events_block_delete.js → events_block_delete.ts} +34 -39
  95. package/core/events/events_block_drag.d.ts +36 -0
  96. package/core/events/events_block_drag.ts +82 -0
  97. package/core/events/events_block_move.d.ts +51 -0
  98. package/core/events/{events_block_move.js → events_block_move.ts} +54 -50
  99. package/core/events/events_bubble_open.d.ts +35 -0
  100. package/core/events/events_bubble_open.ts +82 -0
  101. package/core/events/events_click.d.ts +36 -0
  102. package/core/events/{events_click.js → events_click.ts} +27 -30
  103. package/core/events/events_comment_base.d.ts +39 -0
  104. package/core/events/events_comment_base.ts +107 -0
  105. package/core/events/events_comment_change.d.ts +43 -0
  106. package/core/events/{events_comment_change.js → events_comment_change.ts} +31 -28
  107. package/core/events/events_comment_create.d.ts +35 -0
  108. package/core/events/{events_comment_create.js → events_comment_create.ts} +24 -26
  109. package/core/events/events_comment_delete.d.ts +35 -0
  110. package/core/events/{events_comment_delete.js → events_comment_delete.ts} +20 -24
  111. package/core/events/events_comment_move.d.ts +55 -0
  112. package/core/events/{events_comment_move.js → events_comment_move.ts} +39 -42
  113. package/core/events/events_marker_move.d.ts +40 -0
  114. package/core/events/events_marker_move.ts +99 -0
  115. package/core/events/events_selected.d.ts +34 -0
  116. package/core/events/events_selected.ts +78 -0
  117. package/core/events/events_theme_change.d.ts +30 -0
  118. package/core/events/{events_theme_change.js → events_theme_change.ts} +19 -24
  119. package/core/events/events_toolbox_item_select.d.ts +34 -0
  120. package/core/events/events_toolbox_item_select.ts +79 -0
  121. package/core/events/events_trashcan_open.d.ts +31 -0
  122. package/core/events/events_trashcan_open.ts +68 -0
  123. package/core/events/events_ui.d.ts +37 -0
  124. package/core/events/{events_ui.js → events_ui.ts} +27 -26
  125. package/core/events/events_ui_base.d.ts +26 -0
  126. package/core/events/{events_ui_base.js → events_ui_base.ts} +17 -26
  127. package/core/events/events_var_base.d.ts +31 -0
  128. package/core/events/events_var_base.ts +65 -0
  129. package/core/events/events_var_create.d.ts +35 -0
  130. package/core/events/{events_var_create.js → events_var_create.ts} +24 -25
  131. package/core/events/events_var_delete.d.ts +35 -0
  132. package/core/events/{events_var_delete.js → events_var_delete.ts} +24 -25
  133. package/core/events/events_var_rename.d.ts +36 -0
  134. package/core/events/{events_var_rename.js → events_var_rename.ts} +25 -26
  135. package/core/events/events_viewport.d.ts +39 -0
  136. package/core/events/events_viewport.ts +100 -0
  137. package/core/events/utils.d.ts +272 -0
  138. package/core/events/{utils.js → utils.ts} +148 -219
  139. package/core/events/workspace_events.d.ts +36 -0
  140. package/core/events/workspace_events.ts +86 -0
  141. package/core/extensions.d.ts +107 -0
  142. package/core/{extensions.js → extensions.ts} +153 -172
  143. package/core/field.d.ts +534 -0
  144. package/core/{field.js → field.ts} +413 -489
  145. package/core/field_angle.d.ts +176 -0
  146. package/core/field_angle.ts +563 -0
  147. package/core/field_checkbox.d.ts +124 -0
  148. package/core/field_checkbox.ts +243 -0
  149. package/core/field_colour.d.ts +200 -0
  150. package/core/field_colour.ts +632 -0
  151. package/core/field_dropdown.d.ts +222 -0
  152. package/core/{field_dropdown.js → field_dropdown.ts} +277 -299
  153. package/core/field_image.d.ts +134 -0
  154. package/core/field_image.ts +282 -0
  155. package/core/field_label.d.ts +71 -0
  156. package/core/field_label.ts +152 -0
  157. package/core/field_label_serializable.d.ts +42 -0
  158. package/core/field_label_serializable.ts +76 -0
  159. package/core/field_multilineinput.d.ts +146 -0
  160. package/core/{field_multilineinput.js → field_multilineinput.ts} +166 -163
  161. package/core/field_number.d.ts +156 -0
  162. package/core/{field_number.js → field_number.ts} +110 -123
  163. package/core/field_registry.d.ts +45 -0
  164. package/core/{field_registry.js → field_registry.ts} +37 -30
  165. package/core/field_textinput.d.ts +219 -0
  166. package/core/field_textinput.ts +591 -0
  167. package/core/field_variable.d.ts +217 -0
  168. package/core/{field_variable.js → field_variable.ts} +174 -187
  169. package/core/flyout_base.d.ts +459 -0
  170. package/core/{flyout_base.js → flyout_base.ts} +429 -518
  171. package/core/flyout_button.d.ts +81 -0
  172. package/core/flyout_button.ts +292 -0
  173. package/core/flyout_horizontal.d.ts +82 -0
  174. package/core/{flyout_horizontal.js → flyout_horizontal.ts} +97 -107
  175. package/core/flyout_metrics_manager.d.ts +40 -0
  176. package/core/{flyout_metrics_manager.js → flyout_metrics_manager.ts} +22 -34
  177. package/core/flyout_vertical.d.ts +83 -0
  178. package/core/{flyout_vertical.js → flyout_vertical.ts} +106 -117
  179. package/core/generator.d.ts +205 -0
  180. package/core/{generator.js → generator.ts} +168 -193
  181. package/core/gesture.d.ts +357 -0
  182. package/core/{gesture.js → gesture.ts} +289 -369
  183. package/core/grid.d.ts +83 -0
  184. package/core/grid.ts +192 -0
  185. package/core/icon.d.ts +78 -0
  186. package/core/icon.ts +189 -0
  187. package/core/inject.d.ts +15 -0
  188. package/core/{inject.js → inject.ts} +101 -100
  189. package/core/input.d.ts +128 -0
  190. package/core/input.ts +309 -0
  191. package/core/input_types.d.ts +14 -0
  192. package/core/{input_types.js → input_types.ts} +8 -12
  193. package/core/insertion_marker_manager.d.ts +212 -0
  194. package/core/{insertion_marker_manager.js → insertion_marker_manager.ts} +234 -236
  195. package/core/interfaces/i_ast_node_location.d.ts +11 -0
  196. package/core/interfaces/{i_ast_node_location.js → i_ast_node_location.ts} +4 -7
  197. package/core/interfaces/i_ast_node_location_svg.d.ts +22 -0
  198. package/core/interfaces/i_ast_node_location_svg.ts +37 -0
  199. package/core/interfaces/i_ast_node_location_with_block.d.ts +18 -0
  200. package/core/interfaces/i_ast_node_location_with_block.ts +38 -0
  201. package/core/interfaces/i_autohideable.d.ts +18 -0
  202. package/core/interfaces/i_autohideable.ts +34 -0
  203. package/core/interfaces/i_block_dragger.d.ts +43 -0
  204. package/core/interfaces/i_block_dragger.ts +67 -0
  205. package/core/interfaces/i_bounded_element.d.ts +24 -0
  206. package/core/interfaces/i_bounded_element.ts +42 -0
  207. package/core/interfaces/i_bubble.d.ts +59 -0
  208. package/core/interfaces/i_bubble.ts +88 -0
  209. package/core/interfaces/i_collapsible_toolbox_item.d.ts +26 -0
  210. package/core/interfaces/i_collapsible_toolbox_item.ts +47 -0
  211. package/core/interfaces/i_component.d.ts +17 -0
  212. package/core/interfaces/{i_component.js → i_component.ts} +9 -14
  213. package/core/interfaces/i_connection_checker.d.ts +69 -0
  214. package/core/interfaces/i_connection_checker.ts +102 -0
  215. package/core/interfaces/i_contextmenu.d.ts +13 -0
  216. package/core/interfaces/i_contextmenu.ts +26 -0
  217. package/core/interfaces/i_copyable.d.ts +24 -0
  218. package/core/interfaces/i_copyable.ts +40 -0
  219. package/core/interfaces/i_deletable.d.ts +16 -0
  220. package/core/interfaces/{i_deletable.js → i_deletable.ts} +9 -13
  221. package/core/interfaces/i_delete_area.d.ts +25 -0
  222. package/core/interfaces/i_delete_area.ts +46 -0
  223. package/core/interfaces/i_drag_target.d.ts +53 -0
  224. package/core/interfaces/i_drag_target.ts +84 -0
  225. package/core/interfaces/i_draggable.d.ts +12 -0
  226. package/core/interfaces/{i_draggable.js → i_draggable.ts} +4 -10
  227. package/core/interfaces/i_flyout.d.ts +134 -0
  228. package/core/interfaces/i_flyout.ts +186 -0
  229. package/core/interfaces/i_keyboard_accessible.d.ts +18 -0
  230. package/core/interfaces/i_keyboard_accessible.ts +35 -0
  231. package/core/interfaces/i_metrics_manager.d.ts +117 -0
  232. package/core/interfaces/i_metrics_manager.ts +151 -0
  233. package/core/interfaces/i_movable.d.ts +16 -0
  234. package/core/interfaces/{i_movable.js → i_movable.ts} +9 -13
  235. package/core/interfaces/i_positionable.d.ts +27 -0
  236. package/core/interfaces/i_positionable.ts +50 -0
  237. package/core/interfaces/i_registrable.d.ts +11 -0
  238. package/core/interfaces/{i_registrable.js → i_registrable.ts} +3 -7
  239. package/core/interfaces/i_registrable_field.d.ts +17 -0
  240. package/core/interfaces/{i_registrable_field.js → i_registrable_field.ts} +8 -16
  241. package/core/interfaces/i_selectable.d.ts +18 -0
  242. package/core/interfaces/i_selectable.ts +34 -0
  243. package/core/interfaces/i_selectable_toolbox_item.d.ts +42 -0
  244. package/core/interfaces/i_selectable_toolbox_item.ts +64 -0
  245. package/core/interfaces/i_serializer.d.ts +42 -0
  246. package/core/interfaces/i_serializer.ts +65 -0
  247. package/core/interfaces/i_styleable.d.ts +21 -0
  248. package/core/interfaces/i_styleable.ts +35 -0
  249. package/core/interfaces/i_toolbox.d.ts +85 -0
  250. package/core/interfaces/i_toolbox.ts +127 -0
  251. package/core/interfaces/i_toolbox_item.d.ts +62 -0
  252. package/core/interfaces/i_toolbox_item.ts +84 -0
  253. package/core/internal_constants.d.ts +40 -0
  254. package/core/{internal_constants.js → internal_constants.ts} +13 -18
  255. package/core/keyboard_nav/ast_node.d.ts +239 -0
  256. package/core/keyboard_nav/{ast_node.js → ast_node.ts} +207 -231
  257. package/core/keyboard_nav/basic_cursor.d.ts +88 -0
  258. package/core/keyboard_nav/{basic_cursor.js → basic_cursor.ts} +55 -66
  259. package/core/keyboard_nav/cursor.d.ts +41 -0
  260. package/core/keyboard_nav/{cursor.js → cursor.ts} +25 -35
  261. package/core/keyboard_nav/marker.d.ts +58 -0
  262. package/core/keyboard_nav/{marker.js → marker.ts} +36 -55
  263. package/core/keyboard_nav/tab_navigate_cursor.d.ts +19 -0
  264. package/core/keyboard_nav/{tab_navigate_cursor.js → tab_navigate_cursor.ts} +11 -15
  265. package/core/main.d.ts +11 -0
  266. package/core/main.js +303 -0
  267. package/core/marker_manager.d.ts +85 -0
  268. package/core/marker_manager.ts +181 -0
  269. package/core/menu.d.ts +149 -0
  270. package/core/{menu.js → menu.ts} +141 -174
  271. package/core/menuitem.d.ts +118 -0
  272. package/core/menuitem.ts +240 -0
  273. package/core/metrics_manager.d.ts +201 -0
  274. package/core/{metrics_manager.js → metrics_manager.ts} +117 -156
  275. package/core/msg.d.ts +9 -0
  276. package/core/{msg.js → msg.ts} +4 -8
  277. package/core/mutator.d.ts +128 -0
  278. package/core/{mutator.js → mutator.ts} +196 -211
  279. package/core/names.d.ts +124 -0
  280. package/core/names.ts +267 -0
  281. package/core/options.d.ts +137 -0
  282. package/core/{options.js → options.ts} +147 -173
  283. package/core/positionable_helpers.d.ts +88 -0
  284. package/core/{positionable_helpers.js → positionable_helpers.ts} +63 -70
  285. package/core/procedures.d.ts +108 -0
  286. package/core/{procedures.js → procedures.ts} +143 -152
  287. package/core/registry.d.ts +137 -0
  288. package/core/registry.ts +339 -0
  289. package/core/rendered_connection.d.ts +191 -0
  290. package/core/{rendered_connection.js → rendered_connection.ts} +164 -184
  291. package/core/renderers/common/block_rendering.d.ts +114 -0
  292. package/core/renderers/common/block_rendering.ts +164 -0
  293. package/core/renderers/common/constants.d.ts +458 -0
  294. package/core/renderers/common/constants.ts +1124 -0
  295. package/core/renderers/common/debug.d.ts +28 -0
  296. package/core/renderers/common/{debug.js → debug.ts} +14 -20
  297. package/core/renderers/common/debugger.d.ts +120 -0
  298. package/core/renderers/common/{debugger.js → debugger.ts} +100 -124
  299. package/core/renderers/common/drawer.d.ts +132 -0
  300. package/core/renderers/common/{drawer.js → drawer.ts} +112 -137
  301. package/core/renderers/common/i_path_object.d.ts +117 -0
  302. package/core/renderers/common/i_path_object.ts +161 -0
  303. package/core/renderers/common/info.d.ts +194 -0
  304. package/core/renderers/common/{info.js → info.ts} +165 -222
  305. package/core/renderers/common/marker_svg.d.ts +220 -0
  306. package/core/renderers/common/marker_svg.ts +680 -0
  307. package/core/renderers/common/path_object.d.ts +146 -0
  308. package/core/renderers/common/path_object.ts +272 -0
  309. package/core/renderers/common/renderer.d.ts +157 -0
  310. package/core/renderers/common/renderer.ts +271 -0
  311. package/core/renderers/geras/constants.d.ts +23 -0
  312. package/core/renderers/geras/constants.ts +61 -0
  313. package/core/renderers/geras/drawer.d.ts +43 -0
  314. package/core/renderers/geras/{drawer.js → drawer.ts} +40 -84
  315. package/core/renderers/geras/geras.d.ts +11 -0
  316. package/core/renderers/geras/geras.ts +37 -0
  317. package/core/renderers/geras/highlight_constants.d.ts +108 -0
  318. package/core/renderers/geras/{highlight_constants.js → highlight_constants.ts} +107 -69
  319. package/core/renderers/geras/highlighter.d.ts +98 -0
  320. package/core/renderers/geras/{highlighter.js → highlighter.ts} +81 -86
  321. package/core/renderers/geras/info.d.ts +45 -0
  322. package/core/renderers/geras/{info.js → info.ts} +61 -99
  323. package/core/renderers/geras/measurables/inline_input.d.ts +23 -0
  324. package/core/renderers/geras/measurables/inline_input.ts +51 -0
  325. package/core/renderers/geras/measurables/statement_input.d.ts +23 -0
  326. package/core/renderers/geras/measurables/statement_input.ts +50 -0
  327. package/core/renderers/geras/path_object.d.ts +47 -0
  328. package/core/renderers/geras/{path_object.js → path_object.ts} +46 -74
  329. package/core/renderers/geras/renderer.d.ts +69 -0
  330. package/core/renderers/geras/renderer.ts +126 -0
  331. package/core/renderers/measurables/base.d.ts +27 -0
  332. package/core/renderers/measurables/base.ts +53 -0
  333. package/core/renderers/measurables/bottom_row.d.ts +61 -0
  334. package/core/renderers/measurables/bottom_row.ts +120 -0
  335. package/core/renderers/measurables/connection.d.ts +25 -0
  336. package/core/renderers/measurables/connection.ts +52 -0
  337. package/core/renderers/measurables/external_value_input.d.ts +27 -0
  338. package/core/renderers/measurables/external_value_input.ts +65 -0
  339. package/core/renderers/measurables/field.d.ts +30 -0
  340. package/core/renderers/measurables/field.ts +63 -0
  341. package/core/renderers/measurables/hat.d.ts +21 -0
  342. package/core/renderers/measurables/{hat.js → hat.ts} +12 -14
  343. package/core/renderers/measurables/icon.d.ts +26 -0
  344. package/core/renderers/measurables/{icon.js → icon.ts} +14 -18
  345. package/core/renderers/measurables/in_row_spacer.d.ts +21 -0
  346. package/core/renderers/measurables/in_row_spacer.ts +44 -0
  347. package/core/renderers/measurables/inline_input.d.ts +24 -0
  348. package/core/renderers/measurables/{inline_input.js → inline_input.ts} +22 -26
  349. package/core/renderers/measurables/input_connection.d.ts +29 -0
  350. package/core/renderers/measurables/input_connection.ts +66 -0
  351. package/core/renderers/measurables/input_row.d.ts +30 -0
  352. package/core/renderers/measurables/{input_row.js → input_row.ts} +24 -31
  353. package/core/renderers/measurables/jagged_edge.d.ts +20 -0
  354. package/core/renderers/measurables/{jagged_edge.js → jagged_edge.ts} +10 -13
  355. package/core/renderers/measurables/next_connection.d.ts +23 -0
  356. package/core/renderers/measurables/next_connection.ts +47 -0
  357. package/core/renderers/measurables/output_connection.d.ts +26 -0
  358. package/core/renderers/measurables/output_connection.ts +56 -0
  359. package/core/renderers/measurables/previous_connection.d.ts +23 -0
  360. package/core/renderers/measurables/previous_connection.ts +47 -0
  361. package/core/renderers/measurables/round_corner.d.ts +21 -0
  362. package/core/renderers/measurables/round_corner.ts +49 -0
  363. package/core/renderers/measurables/row.d.ts +141 -0
  364. package/core/renderers/measurables/row.ts +225 -0
  365. package/core/renderers/measurables/spacer_row.d.ts +29 -0
  366. package/core/renderers/measurables/spacer_row.ts +55 -0
  367. package/core/renderers/measurables/square_corner.d.ts +21 -0
  368. package/core/renderers/measurables/square_corner.ts +47 -0
  369. package/core/renderers/measurables/statement_input.d.ts +22 -0
  370. package/core/renderers/measurables/{statement_input.js → statement_input.ts} +14 -18
  371. package/core/renderers/measurables/top_row.d.ts +56 -0
  372. package/core/renderers/measurables/top_row.ts +122 -0
  373. package/core/renderers/measurables/types.d.ts +235 -0
  374. package/core/renderers/measurables/types.ts +332 -0
  375. package/core/renderers/minimalist/constants.d.ts +14 -0
  376. package/core/renderers/minimalist/{constants.js → constants.ts} +5 -10
  377. package/core/renderers/minimalist/drawer.d.ts +21 -0
  378. package/core/renderers/minimalist/drawer.ts +38 -0
  379. package/core/renderers/minimalist/info.d.ts +30 -0
  380. package/core/renderers/minimalist/info.ts +52 -0
  381. package/core/renderers/minimalist/minimalist.d.ts +6 -0
  382. package/core/renderers/minimalist/minimalist.ts +22 -0
  383. package/core/renderers/minimalist/renderer.d.ts +41 -0
  384. package/core/renderers/minimalist/renderer.ts +71 -0
  385. package/core/renderers/thrasos/info.d.ts +40 -0
  386. package/core/renderers/thrasos/{info.js → info.ts} +66 -67
  387. package/core/renderers/thrasos/renderer.d.ts +25 -0
  388. package/core/renderers/thrasos/renderer.ts +48 -0
  389. package/core/renderers/thrasos/thrasos.d.ts +4 -0
  390. package/core/renderers/thrasos/thrasos.ts +20 -0
  391. package/core/renderers/zelos/constants.d.ts +186 -0
  392. package/core/renderers/zelos/{constants.js → constants.ts} +294 -441
  393. package/core/renderers/zelos/drawer.d.ts +47 -0
  394. package/core/renderers/zelos/{drawer.js → drawer.ts} +73 -95
  395. package/core/renderers/zelos/info.d.ts +88 -0
  396. package/core/renderers/zelos/{info.js → info.ts} +111 -142
  397. package/core/renderers/zelos/marker_svg.d.ts +46 -0
  398. package/core/renderers/zelos/marker_svg.ts +151 -0
  399. package/core/renderers/zelos/measurables/bottom_row.d.ts +27 -0
  400. package/core/renderers/zelos/measurables/bottom_row.ts +53 -0
  401. package/core/renderers/zelos/measurables/inputs.d.ts +23 -0
  402. package/core/renderers/zelos/measurables/{inputs.js → inputs.ts} +14 -15
  403. package/core/renderers/zelos/measurables/row_elements.d.ts +21 -0
  404. package/core/renderers/zelos/measurables/row_elements.ts +45 -0
  405. package/core/renderers/zelos/measurables/top_row.d.ts +29 -0
  406. package/core/renderers/zelos/measurables/{top_row.js → top_row.ts} +14 -27
  407. package/core/renderers/zelos/path_object.d.ts +77 -0
  408. package/core/renderers/zelos/path_object.ts +215 -0
  409. package/core/renderers/zelos/renderer.d.ts +74 -0
  410. package/core/renderers/zelos/renderer.ts +142 -0
  411. package/core/renderers/zelos/zelos.d.ts +12 -0
  412. package/core/renderers/zelos/zelos.ts +39 -0
  413. package/core/scrollbar.d.ts +277 -0
  414. package/core/{scrollbar.js → scrollbar.ts} +307 -328
  415. package/core/scrollbar_pair.d.ts +105 -0
  416. package/core/{scrollbar_pair.js → scrollbar_pair.ts} +71 -79
  417. package/core/serialization/blocks.d.ts +98 -0
  418. package/core/serialization/{blocks.js → blocks.ts} +229 -228
  419. package/core/serialization/exceptions.d.ts +73 -0
  420. package/core/serialization/exceptions.ts +98 -0
  421. package/core/serialization/priorities.d.ts +15 -0
  422. package/core/serialization/{priorities.js → priorities.ts} +4 -10
  423. package/core/serialization/registry.d.ts +20 -0
  424. package/core/serialization/{registry.js → registry.ts} +11 -13
  425. package/core/serialization/variables.d.ts +14 -0
  426. package/core/serialization/{variables.js → variables.ts} +30 -32
  427. package/core/serialization/workspaces.d.ts +28 -0
  428. package/core/serialization/{workspaces.js → workspaces.ts} +30 -27
  429. package/core/shortcut_items.d.ts +61 -0
  430. package/core/{shortcut_items.js → shortcut_items.ts} +121 -157
  431. package/core/shortcut_registry.d.ts +151 -0
  432. package/core/shortcut_registry.ts +355 -0
  433. package/core/sprites.d.ts +19 -0
  434. package/core/{sprites.js → sprites.ts} +4 -6
  435. package/core/theme/classic.d.ts +12 -0
  436. package/core/theme/{classic.js → classic.ts} +5 -7
  437. package/core/theme/themes.d.ts +8 -0
  438. package/core/theme/themes.ts +22 -0
  439. package/core/theme/zelos.d.ts +11 -0
  440. package/core/theme/{zelos.js → zelos.ts} +4 -7
  441. package/core/theme.d.ts +142 -0
  442. package/core/theme.ts +221 -0
  443. package/core/theme_manager.d.ts +81 -0
  444. package/core/theme_manager.ts +186 -0
  445. package/core/toolbox/category.d.ts +239 -0
  446. package/core/toolbox/category.ts +679 -0
  447. package/core/toolbox/collapsible_category.d.ts +91 -0
  448. package/core/toolbox/collapsible_category.ts +273 -0
  449. package/core/toolbox/separator.d.ts +39 -0
  450. package/core/toolbox/separator.ts +105 -0
  451. package/core/toolbox/toolbox.d.ts +352 -0
  452. package/core/toolbox/{toolbox.js → toolbox.ts} +316 -432
  453. package/core/toolbox/toolbox_item.d.ts +85 -0
  454. package/core/toolbox/toolbox_item.ts +147 -0
  455. package/core/tooltip.d.ts +126 -0
  456. package/core/{tooltip.js → tooltip.ts} +136 -214
  457. package/core/touch.d.ts +121 -0
  458. package/core/touch.ts +306 -0
  459. package/core/touch_gesture.d.ts +115 -0
  460. package/core/{touch_gesture.js → touch_gesture.ts} +87 -125
  461. package/core/trashcan.d.ts +195 -0
  462. package/core/{trashcan.js → trashcan.ts} +226 -312
  463. package/core/utils/aria.d.ts +67 -0
  464. package/core/utils/{aria.js → aria.ts} +47 -61
  465. package/core/utils/array.d.ts +14 -0
  466. package/core/utils/{array.js → array.ts} +10 -12
  467. package/core/utils/colour.d.ts +103 -0
  468. package/core/utils/{colour.js → colour.ts} +60 -72
  469. package/core/utils/coordinate.d.ts +72 -0
  470. package/core/utils/coordinate.ts +124 -0
  471. package/core/utils/deprecation.d.ts +17 -0
  472. package/core/utils/{deprecation.js → deprecation.ts} +11 -11
  473. package/core/utils/dom.d.ts +165 -0
  474. package/core/utils/{dom.js → dom.ts} +125 -147
  475. package/core/utils/idgenerator.d.ts +25 -0
  476. package/core/utils/{idgenerator.js → idgenerator.ts} +15 -18
  477. package/core/utils/keycodes.d.ts +137 -0
  478. package/core/utils/keycodes.ts +169 -0
  479. package/core/utils/math.d.ts +30 -0
  480. package/core/utils/{math.js → math.ts} +17 -19
  481. package/core/utils/metrics.d.ts +64 -0
  482. package/core/utils/metrics.ts +97 -0
  483. package/core/utils/object.d.ts +35 -0
  484. package/core/utils/{object.js → object.ts} +30 -26
  485. package/core/utils/parsing.d.ts +50 -0
  486. package/core/utils/{parsing.js → parsing.ts} +50 -50
  487. package/core/utils/rect.d.ts +38 -0
  488. package/core/utils/{rect.js → rect.ts} +18 -31
  489. package/core/utils/sentinel.d.ts +11 -0
  490. package/core/utils/{sentinel.js → sentinel.ts} +3 -5
  491. package/core/utils/size.d.ts +27 -0
  492. package/core/utils/{size.js → size.ts} +12 -26
  493. package/core/utils/string.d.ts +55 -0
  494. package/core/utils/{string.js → string.ts} +64 -61
  495. package/core/utils/style.d.ts +127 -0
  496. package/core/utils/{style.js → style.ts} +102 -92
  497. package/core/utils/svg.d.ts +68 -0
  498. package/core/utils/svg.ts +88 -0
  499. package/core/utils/svg_math.d.ts +70 -0
  500. package/core/utils/{svg_math.js → svg_math.ts} +72 -71
  501. package/core/utils/svg_paths.d.ts +101 -0
  502. package/core/utils/{svg_paths.js → svg_paths.ts} +56 -65
  503. package/core/utils/toolbox.d.ts +193 -0
  504. package/core/utils/toolbox.ts +433 -0
  505. package/core/utils/useragent.d.ts +33 -0
  506. package/core/utils/useragent.ts +135 -0
  507. package/core/utils/xml.d.ts +52 -0
  508. package/core/utils/{xml.js → xml.ts} +26 -36
  509. package/core/utils.d.ts +217 -0
  510. package/core/utils.ts +428 -0
  511. package/core/variable_map.d.ts +141 -0
  512. package/core/{variable_map.js → variable_map.ts} +131 -149
  513. package/core/variable_model.d.ts +40 -0
  514. package/core/variable_model.ts +82 -0
  515. package/core/variables.d.ts +181 -0
  516. package/core/{variables.js → variables.ts} +206 -188
  517. package/core/variables_dynamic.d.ts +38 -0
  518. package/core/{variables_dynamic.js → variables_dynamic.ts} +47 -43
  519. package/core/warning.d.ts +50 -0
  520. package/core/{warning.js → warning.ts} +52 -66
  521. package/core/widgetdiv.d.ts +69 -0
  522. package/core/widgetdiv.ts +257 -0
  523. package/core/workspace.d.ts +386 -0
  524. package/core/workspace.ts +801 -0
  525. package/core/workspace_audio.d.ts +47 -0
  526. package/core/{workspace_audio.js → workspace_audio.ts} +47 -60
  527. package/core/workspace_comment.d.ts +170 -0
  528. package/core/workspace_comment.ts +398 -0
  529. package/core/workspace_comment_svg.d.ts +329 -0
  530. package/core/{workspace_comment_svg.js → workspace_comment_svg.ts} +347 -444
  531. package/core/workspace_drag_surface_svg.d.ts +68 -0
  532. package/core/{workspace_drag_surface_svg.js → workspace_drag_surface_svg.ts} +75 -82
  533. package/core/workspace_dragger.d.ts +48 -0
  534. package/core/workspace_dragger.ts +104 -0
  535. package/core/workspace_svg.d.ts +920 -0
  536. package/core/{workspace_svg.js → workspace_svg.ts} +855 -935
  537. package/core/xml.d.ts +117 -0
  538. package/core/{xml.js → xml.ts} +306 -326
  539. package/core/zoom_controls.d.ts +130 -0
  540. package/core/{zoom_controls.js → zoom_controls.ts} +185 -251
  541. package/core.d.ts +1 -3
  542. package/core.js +1 -2
  543. package/dart.d.ts +0 -3
  544. package/dart_compressed.js +387 -99
  545. package/dart_compressed.js.map +1 -1
  546. package/generators/dart/all.js +2 -0
  547. package/generators/dart/colour.js +1 -1
  548. package/generators/dart/lists.js +1 -1
  549. package/generators/dart/logic.js +1 -1
  550. package/generators/dart/loops.js +1 -1
  551. package/generators/dart/math.js +1 -1
  552. package/generators/dart/procedures.js +1 -1
  553. package/generators/dart/text.js +1 -1
  554. package/generators/dart/variables.js +1 -1
  555. package/generators/dart/variables_dynamic.js +1 -1
  556. package/generators/dart.js +1 -2
  557. package/generators/javascript/all.js +2 -0
  558. package/generators/javascript/colour.js +1 -1
  559. package/generators/javascript/lists.js +1 -1
  560. package/generators/javascript/logic.js +1 -1
  561. package/generators/javascript/loops.js +1 -1
  562. package/generators/javascript/math.js +4 -4
  563. package/generators/javascript/procedures.js +1 -1
  564. package/generators/javascript/text.js +2 -2
  565. package/generators/javascript/variables.js +1 -1
  566. package/generators/javascript/variables_dynamic.js +1 -1
  567. package/generators/javascript.js +1 -3
  568. package/generators/lua/all.js +2 -0
  569. package/generators/lua/colour.js +1 -1
  570. package/generators/lua/lists.js +1 -1
  571. package/generators/lua/logic.js +1 -1
  572. package/generators/lua/loops.js +1 -1
  573. package/generators/lua/math.js +1 -1
  574. package/generators/lua/procedures.js +1 -1
  575. package/generators/lua/text.js +1 -1
  576. package/generators/lua/variables.js +1 -1
  577. package/generators/lua/variables_dynamic.js +1 -1
  578. package/generators/lua.js +1 -2
  579. package/generators/php/all.js +2 -0
  580. package/generators/php/colour.js +1 -1
  581. package/generators/php/lists.js +1 -2
  582. package/generators/php/logic.js +1 -1
  583. package/generators/php/loops.js +1 -1
  584. package/generators/php/math.js +1 -1
  585. package/generators/php/procedures.js +1 -1
  586. package/generators/php/text.js +1 -1
  587. package/generators/php/variables.js +1 -1
  588. package/generators/php/variables_dynamic.js +1 -1
  589. package/generators/php.js +1 -2
  590. package/generators/python/all.js +2 -0
  591. package/generators/python/colour.js +3 -3
  592. package/generators/python/lists.js +1 -1
  593. package/generators/python/logic.js +1 -1
  594. package/generators/python/loops.js +4 -7
  595. package/generators/python/math.js +1 -1
  596. package/generators/python/procedures.js +1 -1
  597. package/generators/python/text.js +1 -1
  598. package/generators/python/variables.js +1 -1
  599. package/generators/python/variables_dynamic.js +1 -1
  600. package/generators/python.js +1 -2
  601. package/index.d.ts +2 -8
  602. package/javascript.d.ts +0 -3
  603. package/javascript_compressed.js +314 -104
  604. package/javascript_compressed.js.map +1 -1
  605. package/lua.d.ts +0 -3
  606. package/lua_compressed.js +399 -81
  607. package/lua_compressed.js.map +1 -1
  608. package/msg/ab.js +421 -421
  609. package/msg/ace.js +421 -421
  610. package/msg/af.js +421 -421
  611. package/msg/am.js +421 -421
  612. package/msg/ar.js +421 -421
  613. package/msg/ast.js +421 -421
  614. package/msg/az.js +421 -421
  615. package/msg/ba.js +421 -421
  616. package/msg/bcc.js +421 -421
  617. package/msg/be-tarask.js +421 -421
  618. package/msg/be.js +421 -421
  619. package/msg/bg.js +421 -421
  620. package/msg/bn.js +421 -421
  621. package/msg/br.js +421 -421
  622. package/msg/bs.js +421 -421
  623. package/msg/ca.js +421 -421
  624. package/msg/cdo.js +421 -421
  625. package/msg/cs.js +421 -421
  626. package/msg/da.js +421 -421
  627. package/msg/de.js +421 -421
  628. package/msg/diq.js +421 -421
  629. package/msg/dty.js +421 -421
  630. package/msg/ee.js +421 -421
  631. package/msg/el.js +421 -421
  632. package/msg/en-gb.js +421 -421
  633. package/msg/en.js +421 -421
  634. package/msg/eo.js +421 -421
  635. package/msg/es.js +421 -421
  636. package/msg/et.js +421 -421
  637. package/msg/eu.js +421 -421
  638. package/msg/fa.js +421 -421
  639. package/msg/fi.js +421 -421
  640. package/msg/fo.js +421 -421
  641. package/msg/fr.js +421 -421
  642. package/msg/frr.js +421 -421
  643. package/msg/gl.js +421 -421
  644. package/msg/gn.js +421 -421
  645. package/msg/gor.js +421 -421
  646. package/msg/ha.js +421 -421
  647. package/msg/hak.js +421 -421
  648. package/msg/he.js +421 -421
  649. package/msg/hi.js +421 -421
  650. package/msg/hr.js +421 -421
  651. package/msg/hrx.js +421 -421
  652. package/msg/hu.js +421 -421
  653. package/msg/hy.js +421 -421
  654. package/msg/ia.js +421 -421
  655. package/msg/id.js +421 -421
  656. package/msg/ig.js +421 -421
  657. package/msg/inh.js +421 -421
  658. package/msg/is.js +421 -421
  659. package/msg/it.js +421 -421
  660. package/msg/ja.js +421 -421
  661. package/msg/ka.js +421 -421
  662. package/msg/kab.js +421 -421
  663. package/msg/kbd-cyrl.js +421 -421
  664. package/msg/km.js +421 -421
  665. package/msg/kn.js +421 -421
  666. package/msg/ko.js +421 -421
  667. package/msg/ksh.js +421 -421
  668. package/msg/ku-latn.js +421 -421
  669. package/msg/ky.js +421 -421
  670. package/msg/la.js +421 -421
  671. package/msg/lb.js +421 -421
  672. package/msg/lki.js +421 -421
  673. package/msg/lo.js +421 -421
  674. package/msg/lrc.js +421 -421
  675. package/msg/lt.js +421 -421
  676. package/msg/lv.js +421 -421
  677. package/msg/mg.js +421 -421
  678. package/msg/mk.js +421 -421
  679. package/msg/ml.js +421 -421
  680. package/msg/mnw.js +421 -421
  681. package/msg/ms.js +421 -421
  682. package/msg/my.js +421 -421
  683. package/msg/mzn.js +421 -421
  684. package/msg/nb.js +421 -421
  685. package/msg/ne.js +421 -421
  686. package/msg/nl.js +421 -421
  687. package/msg/oc.js +421 -421
  688. package/msg/olo.js +421 -421
  689. package/msg/pa.js +421 -421
  690. package/msg/pl.js +421 -421
  691. package/msg/pms.js +421 -421
  692. package/msg/ps.js +421 -421
  693. package/msg/pt-br.js +421 -421
  694. package/msg/pt.js +421 -421
  695. package/msg/ro.js +421 -421
  696. package/msg/ru.js +421 -421
  697. package/msg/sc.js +421 -421
  698. package/msg/sco.js +421 -421
  699. package/msg/sd.js +421 -421
  700. package/msg/shn.js +421 -421
  701. package/msg/si.js +421 -421
  702. package/msg/sk.js +421 -421
  703. package/msg/skr-arab.js +421 -421
  704. package/msg/sl.js +421 -421
  705. package/msg/smn.js +421 -421
  706. package/msg/sq.js +421 -421
  707. package/msg/sr-latn.js +421 -421
  708. package/msg/sr.js +421 -421
  709. package/msg/sv.js +421 -421
  710. package/msg/sw.js +421 -421
  711. package/msg/ta.js +421 -421
  712. package/msg/tcy.js +421 -421
  713. package/msg/te.js +421 -421
  714. package/msg/th.js +421 -421
  715. package/msg/ti.js +421 -421
  716. package/msg/tl.js +421 -421
  717. package/msg/tlh.js +421 -421
  718. package/msg/tr.js +421 -421
  719. package/msg/ug-arab.js +421 -421
  720. package/msg/uk.js +421 -421
  721. package/msg/ur.js +421 -421
  722. package/msg/uz.js +421 -421
  723. package/msg/vi.js +421 -421
  724. package/msg/xmf.js +421 -421
  725. package/msg/yo.js +421 -421
  726. package/msg/yue.js +421 -421
  727. package/msg/zgh.js +421 -421
  728. package/msg/zh-hans.js +421 -421
  729. package/msg/zh-hant.js +421 -421
  730. package/package.json +5 -5
  731. package/php.d.ts +0 -3
  732. package/php_compressed.js +322 -93
  733. package/php_compressed.js.map +1 -1
  734. package/python.d.ts +0 -3
  735. package/python_compressed.js +237 -90
  736. package/python_compressed.js.map +1 -1
  737. package/blockly.d.ts +0 -26127
  738. package/core/blockly_options.js +0 -28
  739. package/core/bubble_dragger.js +0 -298
  740. package/core/clipboard.js +0 -80
  741. package/core/component_manager.js +0 -263
  742. package/core/contextmenu_items.js +0 -651
  743. package/core/contextmenu_registry.js +0 -178
  744. package/core/delete_area.js +0 -87
  745. package/core/dialog.js +0 -107
  746. package/core/drag_target.js +0 -98
  747. package/core/events/events.js +0 -147
  748. package/core/events/events_abstract.js +0 -133
  749. package/core/events/events_block_base.js +0 -70
  750. package/core/events/events_block_drag.js +0 -89
  751. package/core/events/events_bubble_open.js +0 -90
  752. package/core/events/events_comment_base.js +0 -121
  753. package/core/events/events_marker_move.js +0 -110
  754. package/core/events/events_selected.js +0 -83
  755. package/core/events/events_toolbox_item_select.js +0 -84
  756. package/core/events/events_trashcan_open.js +0 -73
  757. package/core/events/events_var_base.js +0 -70
  758. package/core/events/events_viewport.js +0 -107
  759. package/core/events/workspace_events.js +0 -93
  760. package/core/field_angle.js +0 -591
  761. package/core/field_checkbox.js +0 -255
  762. package/core/field_colour.js +0 -717
  763. package/core/field_image.js +0 -304
  764. package/core/field_label.js +0 -149
  765. package/core/field_label_serializable.js +0 -80
  766. package/core/field_textinput.js +0 -619
  767. package/core/flyout_button.js +0 -356
  768. package/core/grid.js +0 -226
  769. package/core/icon.js +0 -225
  770. package/core/input.js +0 -335
  771. package/core/interfaces/i_ast_node_location_svg.js +0 -45
  772. package/core/interfaces/i_ast_node_location_with_block.js +0 -41
  773. package/core/interfaces/i_autohideable.js +0 -40
  774. package/core/interfaces/i_block_dragger.js +0 -66
  775. package/core/interfaces/i_bounded_element.js +0 -45
  776. package/core/interfaces/i_bubble.js +0 -95
  777. package/core/interfaces/i_collapsible_toolbox_item.js +0 -53
  778. package/core/interfaces/i_connection_checker.js +0 -104
  779. package/core/interfaces/i_contextmenu.js +0 -32
  780. package/core/interfaces/i_copyable.js +0 -49
  781. package/core/interfaces/i_delete_area.js +0 -50
  782. package/core/interfaces/i_drag_target.js +0 -88
  783. package/core/interfaces/i_flyout.js +0 -201
  784. package/core/interfaces/i_keyboard_accessible.js +0 -38
  785. package/core/interfaces/i_metrics_manager.js +0 -154
  786. package/core/interfaces/i_positionable.js +0 -51
  787. package/core/interfaces/i_selectable.js +0 -51
  788. package/core/interfaces/i_selectable_toolbox_item.js +0 -73
  789. package/core/interfaces/i_serializer.js +0 -77
  790. package/core/interfaces/i_styleable.js +0 -39
  791. package/core/interfaces/i_toolbox.js +0 -142
  792. package/core/interfaces/i_toolbox_item.js +0 -85
  793. package/core/marker_manager.js +0 -213
  794. package/core/menuitem.js +0 -292
  795. package/core/names.js +0 -293
  796. package/core/registry.js +0 -384
  797. package/core/renderers/common/block_rendering.js +0 -170
  798. package/core/renderers/common/constants.js +0 -1250
  799. package/core/renderers/common/i_path_object.js +0 -162
  800. package/core/renderers/common/marker_svg.js +0 -721
  801. package/core/renderers/common/path_object.js +0 -283
  802. package/core/renderers/common/renderer.js +0 -305
  803. package/core/renderers/geras/constants.js +0 -73
  804. package/core/renderers/geras/geras.js +0 -36
  805. package/core/renderers/geras/measurables/inline_input.js +0 -58
  806. package/core/renderers/geras/measurables/statement_input.js +0 -57
  807. package/core/renderers/geras/renderer.js +0 -149
  808. package/core/renderers/measurables/base.js +0 -64
  809. package/core/renderers/measurables/bottom_row.js +0 -138
  810. package/core/renderers/measurables/connection.js +0 -56
  811. package/core/renderers/measurables/external_value_input.js +0 -70
  812. package/core/renderers/measurables/field.js +0 -71
  813. package/core/renderers/measurables/in_row_spacer.js +0 -47
  814. package/core/renderers/measurables/input_connection.js +0 -75
  815. package/core/renderers/measurables/next_connection.js +0 -50
  816. package/core/renderers/measurables/output_connection.js +0 -61
  817. package/core/renderers/measurables/previous_connection.js +0 -50
  818. package/core/renderers/measurables/round_corner.js +0 -52
  819. package/core/renderers/measurables/row.js +0 -247
  820. package/core/renderers/measurables/spacer_row.js +0 -69
  821. package/core/renderers/measurables/square_corner.js +0 -50
  822. package/core/renderers/measurables/top_row.js +0 -143
  823. package/core/renderers/measurables/types.js +0 -353
  824. package/core/renderers/minimalist/drawer.js +0 -42
  825. package/core/renderers/minimalist/info.js +0 -54
  826. package/core/renderers/minimalist/minimalist.js +0 -26
  827. package/core/renderers/minimalist/renderer.js +0 -80
  828. package/core/renderers/thrasos/renderer.js +0 -53
  829. package/core/renderers/thrasos/thrasos.js +0 -22
  830. package/core/renderers/zelos/marker_svg.js +0 -179
  831. package/core/renderers/zelos/measurables/bottom_row.js +0 -66
  832. package/core/renderers/zelos/measurables/row_elements.js +0 -46
  833. package/core/renderers/zelos/path_object.js +0 -247
  834. package/core/renderers/zelos/renderer.js +0 -147
  835. package/core/renderers/zelos/zelos.js +0 -38
  836. package/core/serialization/exceptions.js +0 -144
  837. package/core/shortcut_registry.js +0 -366
  838. package/core/theme/themes.js +0 -23
  839. package/core/theme.js +0 -228
  840. package/core/theme_manager.js +0 -211
  841. package/core/toolbox/category.js +0 -751
  842. package/core/toolbox/collapsible_category.js +0 -311
  843. package/core/toolbox/separator.js +0 -133
  844. package/core/toolbox/toolbox_item.js +0 -173
  845. package/core/touch.js +0 -285
  846. package/core/utils/coordinate.js +0 -138
  847. package/core/utils/global.js +0 -41
  848. package/core/utils/keycodes.js +0 -172
  849. package/core/utils/metrics.js +0 -154
  850. package/core/utils/svg.js +0 -186
  851. package/core/utils/toolbox.js +0 -459
  852. package/core/utils/useragent.js +0 -197
  853. package/core/utils.js +0 -383
  854. package/core/variable_model.js +0 -96
  855. package/core/widgetdiv.js +0 -290
  856. package/core/workspace.js +0 -836
  857. package/core/workspace_comment.js +0 -400
  858. package/core/workspace_dragger.js +0 -115
@@ -0,0 +1,749 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2011 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ /**
8
+ * @fileoverview The top level namespace used to access the Blockly library.
9
+ */
10
+
11
+ /**
12
+ * The top level namespace used to access the Blockly library.
13
+ * @namespace Blockly
14
+ */
15
+ import * as goog from '../closure/goog/goog.js';
16
+ goog.declareModuleId('Blockly');
17
+
18
+ // Unused import preserved for side-effects. Remove if unneeded.
19
+ import './events/events_block_create.js';
20
+ // Unused import preserved for side-effects. Remove if unneeded.
21
+ import './events/workspace_events.js';
22
+ // Unused import preserved for side-effects. Remove if unneeded.
23
+ import './events/events_ui.js';
24
+ // Unused import preserved for side-effects. Remove if unneeded.
25
+ import './events/events_ui_base.js';
26
+ // Unused import preserved for side-effects. Remove if unneeded.
27
+ import './events/events_var_create.js';
28
+
29
+ import {Block} from './block.js';
30
+ import * as blockAnimations from './block_animations.js';
31
+ import {BlockDragSurfaceSvg} from './block_drag_surface.js';
32
+ import {BlockDragger} from './block_dragger.js';
33
+ import {BlockSvg} from './block_svg.js';
34
+ import {BlocklyOptions} from './blockly_options.js';
35
+ import {Blocks} from './blocks.js';
36
+ import * as browserEvents from './browser_events.js';
37
+ import {Bubble} from './bubble.js';
38
+ import {BubbleDragger} from './bubble_dragger.js';
39
+ import * as bumpObjects from './bump_objects.js';
40
+ import * as clipboard from './clipboard.js';
41
+ import {Comment} from './comment.js';
42
+ import * as common from './common.js';
43
+ import {ComponentManager} from './component_manager.js';
44
+ import {config} from './config.js';
45
+ import {Connection} from './connection.js';
46
+ import {ConnectionChecker} from './connection_checker.js';
47
+ import {ConnectionDB} from './connection_db.js';
48
+ import {ConnectionType} from './connection_type.js';
49
+ import * as ContextMenu from './contextmenu.js';
50
+ import * as ContextMenuItems from './contextmenu_items.js';
51
+ import {ContextMenuRegistry} from './contextmenu_registry.js';
52
+ import * as Css from './css.js';
53
+ import {DeleteArea} from './delete_area.js';
54
+ import * as dialog from './dialog.js';
55
+ import {DragTarget} from './drag_target.js';
56
+ import * as dropDownDiv from './dropdowndiv.js';
57
+ import * as Events from './events/events.js';
58
+ import * as Extensions from './extensions.js';
59
+ import {Field} from './field.js';
60
+ import {FieldAngle} from './field_angle.js';
61
+ import {FieldCheckbox} from './field_checkbox.js';
62
+ import {FieldColour} from './field_colour.js';
63
+ import {FieldDropdown} from './field_dropdown.js';
64
+ import {FieldImage} from './field_image.js';
65
+ import {FieldLabel} from './field_label.js';
66
+ import {FieldLabelSerializable} from './field_label_serializable.js';
67
+ import {FieldMultilineInput} from './field_multilineinput.js';
68
+ import {FieldNumber} from './field_number.js';
69
+ import * as fieldRegistry from './field_registry.js';
70
+ import {FieldTextInput} from './field_textinput.js';
71
+ import {FieldVariable} from './field_variable.js';
72
+ import {Flyout} from './flyout_base.js';
73
+ import {FlyoutButton} from './flyout_button.js';
74
+ import {HorizontalFlyout} from './flyout_horizontal.js';
75
+ import {FlyoutMetricsManager} from './flyout_metrics_manager.js';
76
+ import {VerticalFlyout} from './flyout_vertical.js';
77
+ import {Generator} from './generator.js';
78
+ import {Gesture} from './gesture.js';
79
+ import {Grid} from './grid.js';
80
+ import {Icon} from './icon.js';
81
+ import {inject} from './inject.js';
82
+ import {Align, Input} from './input.js';
83
+ import {inputTypes} from './input_types.js';
84
+ import {InsertionMarkerManager} from './insertion_marker_manager.js';
85
+ import {IASTNodeLocation} from './interfaces/i_ast_node_location.js';
86
+ import {IASTNodeLocationSvg} from './interfaces/i_ast_node_location_svg.js';
87
+ import {IASTNodeLocationWithBlock} from './interfaces/i_ast_node_location_with_block.js';
88
+ import {IAutoHideable} from './interfaces/i_autohideable.js';
89
+ import {IBlockDragger} from './interfaces/i_block_dragger.js';
90
+ import {IBoundedElement} from './interfaces/i_bounded_element.js';
91
+ import {IBubble} from './interfaces/i_bubble.js';
92
+ import {ICollapsibleToolboxItem} from './interfaces/i_collapsible_toolbox_item.js';
93
+ import {IComponent} from './interfaces/i_component.js';
94
+ import {IConnectionChecker} from './interfaces/i_connection_checker.js';
95
+ import {IContextMenu} from './interfaces/i_contextmenu.js';
96
+ import {ICopyable} from './interfaces/i_copyable.js';
97
+ import {IDeletable} from './interfaces/i_deletable.js';
98
+ import {IDeleteArea} from './interfaces/i_delete_area.js';
99
+ import {IDragTarget} from './interfaces/i_drag_target.js';
100
+ import {IDraggable} from './interfaces/i_draggable.js';
101
+ import {IFlyout} from './interfaces/i_flyout.js';
102
+ import {IKeyboardAccessible} from './interfaces/i_keyboard_accessible.js';
103
+ import {IMetricsManager} from './interfaces/i_metrics_manager.js';
104
+ import {IMovable} from './interfaces/i_movable.js';
105
+ import {IPositionable} from './interfaces/i_positionable.js';
106
+ import {IRegistrable} from './interfaces/i_registrable.js';
107
+ import {IRegistrableField} from './interfaces/i_registrable_field.js';
108
+ import {ISelectable} from './interfaces/i_selectable.js';
109
+ import {ISelectableToolboxItem} from './interfaces/i_selectable_toolbox_item.js';
110
+ import {ISerializer as SerializerInterface} from './interfaces/i_serializer.js';
111
+ import {IStyleable} from './interfaces/i_styleable.js';
112
+ import {IToolbox} from './interfaces/i_toolbox.js';
113
+ import {IToolboxItem} from './interfaces/i_toolbox_item.js';
114
+ import * as internalConstants from './internal_constants.js';
115
+ import {ASTNode} from './keyboard_nav/ast_node.js';
116
+ import {BasicCursor} from './keyboard_nav/basic_cursor.js';
117
+ import {Cursor} from './keyboard_nav/cursor.js';
118
+ import {Marker} from './keyboard_nav/marker.js';
119
+ import {TabNavigateCursor} from './keyboard_nav/tab_navigate_cursor.js';
120
+ import {MarkerManager} from './marker_manager.js';
121
+ import {Menu} from './menu.js';
122
+ import {MenuItem} from './menuitem.js';
123
+ import {MetricsManager} from './metrics_manager.js';
124
+ import {Msg} from './msg.js';
125
+ import {Mutator} from './mutator.js';
126
+ import {Names} from './names.js';
127
+ import {Options} from './options.js';
128
+ import * as uiPosition from './positionable_helpers.js';
129
+ import * as Procedures from './procedures.js';
130
+ import * as registry from './registry.js';
131
+ import {RenderedConnection} from './rendered_connection.js';
132
+ import * as blockRendering from './renderers/common/block_rendering.js';
133
+ import * as constants from './constants.js';
134
+ import * as geras from './renderers/geras/geras.js';
135
+ import * as minimalist from './renderers/minimalist/minimalist.js';
136
+ import * as thrasos from './renderers/thrasos/thrasos.js';
137
+ import * as zelos from './renderers/zelos/zelos.js';
138
+ import {Scrollbar} from './scrollbar.js';
139
+ import {ScrollbarPair} from './scrollbar_pair.js';
140
+ import * as serializationBlocks from './serialization/blocks.js';
141
+ import * as serializationExceptions from './serialization/exceptions.js';
142
+ import * as serializationPriorities from './serialization/priorities.js';
143
+ import * as serializationRegistry from './serialization/registry.js';
144
+ import * as serializationVariables from './serialization/variables.js';
145
+ import * as serializationWorkspaces from './serialization/workspaces.js';
146
+ import * as ShortcutItems from './shortcut_items.js';
147
+ import {ShortcutRegistry} from './shortcut_registry.js';
148
+ import {Theme} from './theme.js';
149
+ import * as Themes from './theme/themes.js';
150
+ import {ThemeManager} from './theme_manager.js';
151
+ import {ToolboxCategory} from './toolbox/category.js';
152
+ import {CollapsibleToolboxCategory} from './toolbox/collapsible_category.js';
153
+ import {ToolboxSeparator} from './toolbox/separator.js';
154
+ import {Toolbox} from './toolbox/toolbox.js';
155
+ import {ToolboxItem} from './toolbox/toolbox_item.js';
156
+ import * as Tooltip from './tooltip.js';
157
+ import * as Touch from './touch.js';
158
+ import {TouchGesture} from './touch_gesture.js';
159
+ import {Trashcan} from './trashcan.js';
160
+ import * as utils from './utils.js';
161
+ import * as colour from './utils/colour.js';
162
+ import * as deprecation from './utils/deprecation.js';
163
+ import * as svgMath from './utils/svg_math.js';
164
+ import * as toolbox from './utils/toolbox.js';
165
+ import {VariableMap} from './variable_map.js';
166
+ import {VariableModel} from './variable_model.js';
167
+ import * as Variables from './variables.js';
168
+ import * as VariablesDynamic from './variables_dynamic.js';
169
+ import {Warning} from './warning.js';
170
+ import * as WidgetDiv from './widgetdiv.js';
171
+ import {Workspace} from './workspace.js';
172
+ import {WorkspaceAudio} from './workspace_audio.js';
173
+ import {WorkspaceComment} from './workspace_comment.js';
174
+ import {WorkspaceCommentSvg} from './workspace_comment_svg.js';
175
+ import {WorkspaceDragSurfaceSvg} from './workspace_drag_surface_svg.js';
176
+ import {WorkspaceDragger} from './workspace_dragger.js';
177
+ import {resizeSvgContents as realResizeSvgContents, WorkspaceSvg} from './workspace_svg.js';
178
+ import * as Xml from './xml.js';
179
+ import {ZoomControls} from './zoom_controls.js';
180
+
181
+
182
+ /**
183
+ * Blockly core version.
184
+ * This constant is overridden by the build script (npm run build) to the value
185
+ * of the version in package.json. This is done by the Closure Compiler in the
186
+ * buildCompressed gulp task.
187
+ * For local builds, you can pass --define='Blockly.VERSION=X.Y.Z' to the
188
+ * compiler to override this constant.
189
+ * @define {string}
190
+ * @alias Blockly.VERSION
191
+ */
192
+ export const VERSION = 'uncompiled';
193
+
194
+ /*
195
+ * Top-level functions and properties on the Blockly namespace.
196
+ * These are used only in external code. Do not reference these
197
+ * from internal code as importing from this file can cause circular
198
+ * dependencies. Do not add new functions here. There is probably a better
199
+ * namespace to put new functions on.
200
+ */
201
+
202
+ /*
203
+ * Aliases for input alignments used in block defintions.
204
+ */
205
+
206
+ /**
207
+ * @see Blockly.Input.Align.LEFT
208
+ * @alias Blockly.ALIGN_LEFT
209
+ */
210
+ export const ALIGN_LEFT = Align.LEFT;
211
+
212
+ /**
213
+ * @see Blockly.Input.Align.CENTRE
214
+ * @alias Blockly.ALIGN_CENTRE
215
+ */
216
+ export const ALIGN_CENTRE = Align.CENTRE;
217
+
218
+ /**
219
+ * @see Blockly.Input.Align.RIGHT
220
+ * @alias Blockly.ALIGN_RIGHT
221
+ */
222
+ export const ALIGN_RIGHT = Align.RIGHT;
223
+ /*
224
+ * Aliases for constants used for connection and input types.
225
+ */
226
+
227
+ /**
228
+ * @see ConnectionType.INPUT_VALUE
229
+ * @alias Blockly.INPUT_VALUE
230
+ */
231
+ export const INPUT_VALUE = ConnectionType.INPUT_VALUE;
232
+
233
+ /**
234
+ * @see ConnectionType.OUTPUT_VALUE
235
+ * @alias Blockly.OUTPUT_VALUE
236
+ */
237
+ export const OUTPUT_VALUE = ConnectionType.OUTPUT_VALUE;
238
+
239
+ /**
240
+ * @see ConnectionType.NEXT_STATEMENT
241
+ * @alias Blockly.NEXT_STATEMENT
242
+ */
243
+ export const NEXT_STATEMENT = ConnectionType.NEXT_STATEMENT;
244
+
245
+ /**
246
+ * @see ConnectionType.PREVIOUS_STATEMENT
247
+ * @alias Blockly.PREVIOUS_STATEMENT
248
+ */
249
+ export const PREVIOUS_STATEMENT = ConnectionType.PREVIOUS_STATEMENT;
250
+
251
+ /**
252
+ * @see inputTypes.DUMMY_INPUT
253
+ * @alias Blockly.DUMMY_INPUT
254
+ */
255
+ export const DUMMY_INPUT = inputTypes.DUMMY;
256
+
257
+ /** Aliases for toolbox positions. */
258
+
259
+ /**
260
+ * @see toolbox.Position.TOP
261
+ * @alias Blockly.TOOLBOX_AT_TOP
262
+ */
263
+ export const TOOLBOX_AT_TOP = toolbox.Position.TOP;
264
+
265
+ /**
266
+ * @see toolbox.Position.BOTTOM
267
+ * @alias Blockly.TOOLBOX_AT_BOTTOM
268
+ */
269
+ export const TOOLBOX_AT_BOTTOM = toolbox.Position.BOTTOM;
270
+
271
+ /**
272
+ * @see toolbox.Position.LEFT
273
+ * @alias Blockly.TOOLBOX_AT_LEFT
274
+ */
275
+ export const TOOLBOX_AT_LEFT = toolbox.Position.LEFT;
276
+
277
+ /**
278
+ * @see toolbox.Position.RIGHT
279
+ * @alias Blockly.TOOLBOX_AT_RIGHT
280
+ */
281
+ export const TOOLBOX_AT_RIGHT = toolbox.Position.RIGHT;
282
+
283
+ /*
284
+ * Other aliased functions.
285
+ */
286
+
287
+ /**
288
+ * Size the SVG image to completely fill its container. Call this when the view
289
+ * actually changes sizes (e.g. on a window resize/device orientation change).
290
+ * See workspace.resizeContents to resize the workspace when the contents
291
+ * change (e.g. when a block is added or removed).
292
+ * Record the height/width of the SVG image.
293
+ * @param workspace Any workspace in the SVG.
294
+ * @see Blockly.common.svgResize
295
+ * @alias Blockly.svgResize
296
+ */
297
+ export const svgResize = common.svgResize;
298
+
299
+ /**
300
+ * Close tooltips, context menus, dropdown selections, etc.
301
+ * @param opt_onlyClosePopups Whether only popups should be closed.
302
+ * @see Blockly.WorkspaceSvg.hideChaff
303
+ * @alias Blockly.hideChaff
304
+ */
305
+ export function hideChaff(opt_onlyClosePopups?: boolean) {
306
+ (common.getMainWorkspace() as WorkspaceSvg).hideChaff(opt_onlyClosePopups);
307
+ }
308
+
309
+ /**
310
+ * Returns the main workspace. Returns the last used main workspace (based on
311
+ * focus). Try not to use this function, particularly if there are multiple
312
+ * Blockly instances on a page.
313
+ * @see Blockly.common.getMainWorkspace
314
+ * @alias Blockly.getMainWorkspace
315
+ */
316
+ export const getMainWorkspace = common.getMainWorkspace;
317
+
318
+ /**
319
+ * Returns the currently selected copyable object.
320
+ * @alias Blockly.common.getSelected
321
+ */
322
+ export const getSelected = common.getSelected;
323
+
324
+ /**
325
+ * Define blocks from an array of JSON block definitions, as might be generated
326
+ * by the Blockly Developer Tools.
327
+ * @param jsonArray An array of JSON block definitions.
328
+ * @see Blockly.common.defineBlocksWithJsonArray
329
+ * @alias Blockly.defineBlocksWithJsonArray
330
+ */
331
+ export const defineBlocksWithJsonArray = common.defineBlocksWithJsonArray;
332
+
333
+ /**
334
+ * Set the parent container. This is the container element that the WidgetDiv,
335
+ * dropDownDiv, and Tooltip are rendered into the first time `Blockly.inject`
336
+ * is called.
337
+ * This method is a NOP if called after the first ``Blockly.inject``.
338
+ * @param container The container element.
339
+ * @see Blockly.common.setParentContainer
340
+ * @alias Blockly.setParentContainer
341
+ */
342
+ export const setParentContainer = common.setParentContainer;
343
+
344
+ /**
345
+ * Returns the dimensions of the specified SVG image.
346
+ * @param svg SVG image.
347
+ * @return Contains width and height properties.
348
+ * @deprecated Use workspace.setCachedParentSvgSize. (2021 March 5)
349
+ * @see Blockly.WorkspaceSvg.setCachedParentSvgSize
350
+ * @alias Blockly.svgSize
351
+ */
352
+ export const svgSize = svgMath.svgSize;
353
+
354
+ /**
355
+ * Size the workspace when the contents change. This also updates
356
+ * scrollbars accordingly.
357
+ * @param workspace The workspace to resize.
358
+ * @deprecated Use workspace.resizeContents. (2021 December)
359
+ * @see Blockly.WorkspaceSvg.resizeContents
360
+ * @alias Blockly.resizeSvgContents
361
+ */
362
+ function resizeSvgContentsLocal(workspace: WorkspaceSvg) {
363
+ deprecation.warn(
364
+ 'Blockly.resizeSvgContents', 'December 2021', 'December 2022',
365
+ 'Blockly.WorkspaceSvg.resizeSvgContents');
366
+ realResizeSvgContents(workspace);
367
+ }
368
+ export const resizeSvgContents = resizeSvgContentsLocal;
369
+
370
+ /**
371
+ * Copy a block or workspace comment onto the local clipboard.
372
+ * @param toCopy Block or Workspace Comment to be copied.
373
+ * @deprecated Use Blockly.clipboard.copy(). (2021 December)
374
+ * @see Blockly.clipboard.copy
375
+ * @alias Blockly.copy
376
+ */
377
+ export function copy(toCopy: ICopyable) {
378
+ deprecation.warn(
379
+ 'Blockly.copy', 'December 2021', 'December 2022',
380
+ 'Blockly.clipboard.copy');
381
+ clipboard.copy(toCopy);
382
+ }
383
+
384
+ /**
385
+ * Paste a block or workspace comment on to the main workspace.
386
+ * @return True if the paste was successful, false otherwise.
387
+ * @deprecated Use Blockly.clipboard.paste(). (2021 December)
388
+ * @see Blockly.clipboard.paste
389
+ * @alias Blockly.paste
390
+ */
391
+ export function paste(): boolean {
392
+ deprecation.warn(
393
+ 'Blockly.paste', 'December 2021', 'December 2022',
394
+ 'Blockly.clipboard.paste');
395
+ return !!clipboard.paste();
396
+ }
397
+
398
+ /**
399
+ * Duplicate this block and its children, or a workspace comment.
400
+ * @param toDuplicate Block or Workspace Comment to be copied.
401
+ * @deprecated Use Blockly.clipboard.duplicate(). (2021 December)
402
+ * @see Blockly.clipboard.duplicate
403
+ * @alias Blockly.duplicate
404
+ */
405
+ export function duplicate(toDuplicate: ICopyable) {
406
+ deprecation.warn(
407
+ 'Blockly.duplicate', 'December 2021', 'December 2022',
408
+ 'Blockly.clipboard.duplicate');
409
+ clipboard.duplicate(toDuplicate);
410
+ }
411
+
412
+ /**
413
+ * Is the given string a number (includes negative and decimals).
414
+ * @param str Input string.
415
+ * @return True if number, false otherwise.
416
+ * @deprecated Use Blockly.utils.string.isNumber(str). (2021 December)
417
+ * @see Blockly.utils.string.isNumber
418
+ * @alias Blockly.isNumber
419
+ */
420
+ export function isNumber(str: string): boolean {
421
+ deprecation.warn(
422
+ 'Blockly.isNumber', 'December 2021', 'December 2022',
423
+ 'Blockly.utils.string.isNumber');
424
+ return utils.string.isNumber(str);
425
+ }
426
+
427
+ /**
428
+ * Convert a hue (HSV model) into an RGB hex triplet.
429
+ * @param hue Hue on a colour wheel (0-360).
430
+ * @return RGB code, e.g. '#5ba65b'.
431
+ * @deprecated Use Blockly.utils.colour.hueToHex(). (2021 December)
432
+ * @see Blockly.utils.colour.hueToHex
433
+ * @alias Blockly.hueToHex
434
+ */
435
+ export function hueToHex(hue: number): string {
436
+ deprecation.warn(
437
+ 'Blockly.hueToHex', 'December 2021', 'December 2022',
438
+ 'Blockly.utils.colour.hueToHex');
439
+ return colour.hueToHex(hue);
440
+ }
441
+
442
+ /**
443
+ * Bind an event handler that should be called regardless of whether it is part
444
+ * of the active touch stream.
445
+ * Use this for events that are not part of a multi-part gesture (e.g.
446
+ * mouseover for tooltips).
447
+ * @param node Node upon which to listen.
448
+ * @param name Event name to listen to (e.g. 'mousedown').
449
+ * @param thisObject The value of 'this' in the function.
450
+ * @param func Function to call when event is triggered.
451
+ * @return Opaque data that can be passed to unbindEvent_.
452
+ * @deprecated Use Blockly.browserEvents.bind(). (December 2021)
453
+ * @see Blockly.browserEvents.bind
454
+ * @alias Blockly.bindEvent_
455
+ */
456
+ export function bindEvent_(
457
+ node: EventTarget, name: string, thisObject: Object|null,
458
+ func: Function): browserEvents.Data {
459
+ deprecation.warn(
460
+ 'Blockly.bindEvent_', 'December 2021', 'December 2022',
461
+ 'Blockly.browserEvents.bind');
462
+ return browserEvents.bind(node, name, thisObject, func);
463
+ }
464
+
465
+ /**
466
+ * Unbind one or more events event from a function call.
467
+ * @param bindData Opaque data from bindEvent_.
468
+ * This list is emptied during the course of calling this function.
469
+ * @return The function call.
470
+ * @deprecated Use Blockly.browserEvents.unbind(). (December 2021)
471
+ * @see browserEvents.unbind
472
+ * @alias Blockly.unbindEvent_
473
+ */
474
+ export function unbindEvent_(bindData: browserEvents.Data): Function {
475
+ deprecation.warn(
476
+ 'Blockly.unbindEvent_', 'December 2021', 'December 2022',
477
+ 'Blockly.browserEvents.unbind');
478
+ return browserEvents.unbind(bindData);
479
+ }
480
+
481
+ /**
482
+ * Bind an event handler that can be ignored if it is not part of the active
483
+ * touch stream.
484
+ * Use this for events that either start or continue a multi-part gesture (e.g.
485
+ * mousedown or mousemove, which may be part of a drag or click).
486
+ * @param node Node upon which to listen.
487
+ * @param name Event name to listen to (e.g. 'mousedown').
488
+ * @param thisObject The value of 'this' in the function.
489
+ * @param func Function to call when event is triggered.
490
+ * @param opt_noCaptureIdentifier True if triggering on this event should not
491
+ * block execution of other event handlers on this touch or other
492
+ * simultaneous touches. False by default.
493
+ * @param opt_noPreventDefault True if triggering on this event should prevent
494
+ * the default handler. False by default. If opt_noPreventDefault is
495
+ * provided, opt_noCaptureIdentifier must also be provided.
496
+ * @return Opaque data that can be passed to unbindEvent_.
497
+ * @deprecated Use Blockly.browserEvents.conditionalBind(). (December 2021)
498
+ * @see browserEvents.conditionalBind
499
+ * @alias Blockly.bindEventWithChecks_
500
+ */
501
+ export function bindEventWithChecks_(
502
+ node: EventTarget, name: string, thisObject: Object|null, func: Function,
503
+ opt_noCaptureIdentifier?: boolean,
504
+ opt_noPreventDefault?: boolean): browserEvents.Data {
505
+ deprecation.warn(
506
+ 'Blockly.bindEventWithChecks_', 'December 2021', 'December 2022',
507
+ 'Blockly.browserEvents.conditionalBind');
508
+ return browserEvents.conditionalBind(
509
+ node, name, thisObject, func, opt_noCaptureIdentifier,
510
+ opt_noPreventDefault);
511
+ }
512
+
513
+ // Aliases to allow external code to access these values for legacy reasons.
514
+ export const COLLAPSE_CHARS = internalConstants.COLLAPSE_CHARS;
515
+ export const DRAG_STACK = internalConstants.DRAG_STACK;
516
+ export const OPPOSITE_TYPE = internalConstants.OPPOSITE_TYPE;
517
+ export const RENAME_VARIABLE_ID = internalConstants.RENAME_VARIABLE_ID;
518
+ export const DELETE_VARIABLE_ID = internalConstants.DELETE_VARIABLE_ID;
519
+ export const COLLAPSED_INPUT_NAME = constants.COLLAPSED_INPUT_NAME;
520
+ export const COLLAPSED_FIELD_NAME = constants.COLLAPSED_FIELD_NAME;
521
+
522
+ /**
523
+ * String for use in the "custom" attribute of a category in toolbox XML.
524
+ * This string indicates that the category should be dynamically populated with
525
+ * variable blocks.
526
+ * @alias Blockly.VARIABLE_CATEGORY_NAME
527
+ */
528
+ export const VARIABLE_CATEGORY_NAME: string = Variables.CATEGORY_NAME;
529
+
530
+ /**
531
+ * String for use in the "custom" attribute of a category in toolbox XML.
532
+ * This string indicates that the category should be dynamically populated with
533
+ * variable blocks.
534
+ * @alias Blockly.VARIABLE_DYNAMIC_CATEGORY_NAME
535
+ */
536
+ export const VARIABLE_DYNAMIC_CATEGORY_NAME: string =
537
+ VariablesDynamic.CATEGORY_NAME;
538
+ /**
539
+ * String for use in the "custom" attribute of a category in toolbox XML.
540
+ * This string indicates that the category should be dynamically populated with
541
+ * procedure blocks.
542
+ * @alias Blockly.PROCEDURE_CATEGORY_NAME
543
+ */
544
+ export const PROCEDURE_CATEGORY_NAME: string = Procedures.CATEGORY_NAME;
545
+
546
+ // Context for why we need to monkey-patch in these functions (internal):
547
+ // https://docs.google.com/document/d/1MbO0LEA-pAyx1ErGLJnyUqTLrcYTo-5zga9qplnxeXo/edit?usp=sharing&resourcekey=0-5h_32-i-dHwHjf_9KYEVKg
548
+
549
+ // clang-format off
550
+ Workspace.prototype.newBlock =
551
+ function(prototypeName: string, opt_id?: string): Block {
552
+ return new Block(this, prototypeName, opt_id);
553
+ }
554
+
555
+ WorkspaceSvg.prototype.newBlock =
556
+ function(prototypeName: string, opt_id?: string): BlockSvg {
557
+ return new BlockSvg(this, prototypeName, opt_id);
558
+ }
559
+
560
+ WorkspaceSvg.newTrashcan = function(workspace: WorkspaceSvg): Trashcan {
561
+ return new Trashcan(workspace);
562
+ }
563
+
564
+ WorkspaceCommentSvg.prototype.showContextMenu =
565
+ function(this: WorkspaceCommentSvg, e: Event) {
566
+ if (this.workspace.options.readOnly) {
567
+ return;
568
+ }
569
+ // Save the current workspace comment in a variable for use in closures.
570
+ const comment = this;
571
+ const menuOptions = [];
572
+
573
+ if (this.isDeletable() && this.isMovable()) {
574
+ menuOptions.push(ContextMenu.commentDuplicateOption(comment));
575
+ menuOptions.push(ContextMenu.commentDeleteOption(comment));
576
+ }
577
+
578
+ ContextMenu.show(e, menuOptions, this.RTL);
579
+ }
580
+
581
+ Mutator.prototype.newWorkspaceSvg =
582
+ function(options: Options): WorkspaceSvg {
583
+ return new WorkspaceSvg(options);
584
+ }
585
+
586
+ Names.prototype.populateProcedures =
587
+ function(this: Names, workspace: Workspace) {
588
+ let procedures = Procedures.allProcedures(workspace);
589
+ // Flatten the return vs no-return procedure lists.
590
+ let flattenedProcedures: AnyDuringMigration[][] =
591
+ procedures[0].concat(procedures[1]);
592
+ for (let i = 0; i < flattenedProcedures.length; i++) {
593
+ this.getName(flattenedProcedures[i][0], Names.NameType.PROCEDURE);
594
+ }
595
+ }
596
+ // clang-format on
597
+
598
+
599
+ // Re-export submodules that no longer declareLegacyNamespace.
600
+ export {browserEvents};
601
+ export {ContextMenu};
602
+ export {ContextMenuItems};
603
+ export {Css};
604
+ export {Events};
605
+ export {Extensions};
606
+ export {Procedures};
607
+ export {ShortcutItems};
608
+ export {Themes};
609
+ export {Tooltip};
610
+ export {Touch};
611
+ export {Variables};
612
+ export {VariablesDynamic};
613
+ export {WidgetDiv};
614
+ export {Xml};
615
+ export {blockAnimations};
616
+ export {blockRendering};
617
+ export {bumpObjects};
618
+ export {clipboard};
619
+ export {common};
620
+ export {constants};
621
+ export {dialog};
622
+ export {fieldRegistry};
623
+ export {geras};
624
+ export {minimalist};
625
+ export {registry};
626
+ export {thrasos};
627
+ export {uiPosition};
628
+ export {utils};
629
+ export {zelos};
630
+ export {ASTNode};
631
+ export {BasicCursor};
632
+ export {Block};
633
+ export {BlocklyOptions};
634
+ export {BlockDragger};
635
+ export {BlockDragSurfaceSvg};
636
+ export {BlockSvg};
637
+ export {Blocks};
638
+ export {Bubble};
639
+ export {BubbleDragger};
640
+ export {CollapsibleToolboxCategory};
641
+ export {Comment};
642
+ export {ComponentManager};
643
+ export {Connection};
644
+ export {ConnectionType};
645
+ export {ConnectionChecker};
646
+ export {ConnectionDB};
647
+ export {ContextMenuRegistry};
648
+ export {Cursor};
649
+ export {DeleteArea};
650
+ export {DragTarget};
651
+ export const DropDownDiv = dropDownDiv;
652
+ export {Field};
653
+ export {FieldAngle};
654
+ export {FieldCheckbox};
655
+ export {FieldColour};
656
+ export {FieldDropdown};
657
+ export {FieldImage};
658
+ export {FieldLabel};
659
+ export {FieldLabelSerializable};
660
+ export {FieldMultilineInput};
661
+ export {FieldNumber};
662
+ export {FieldTextInput};
663
+ export {FieldVariable};
664
+ export {Flyout};
665
+ export {FlyoutButton};
666
+ export {FlyoutMetricsManager};
667
+ export {Generator};
668
+ export {Gesture};
669
+ export {Grid};
670
+ export {HorizontalFlyout};
671
+ export {IASTNodeLocation};
672
+ export {IASTNodeLocationSvg};
673
+ export {IASTNodeLocationWithBlock};
674
+ export {IAutoHideable};
675
+ export {IBlockDragger};
676
+ export {IBoundedElement};
677
+ export {IBubble};
678
+ export {ICollapsibleToolboxItem};
679
+ export {IComponent};
680
+ export {IConnectionChecker};
681
+ export {IContextMenu};
682
+ export {Icon};
683
+ export {ICopyable};
684
+ export {IDeletable};
685
+ export {IDeleteArea};
686
+ export {IDragTarget};
687
+ export {IDraggable};
688
+ export {IFlyout};
689
+ export {IKeyboardAccessible};
690
+ export {IMetricsManager};
691
+ export {IMovable};
692
+ export {Input};
693
+ export {InsertionMarkerManager};
694
+ export {IPositionable};
695
+ export {IRegistrable};
696
+ export {IRegistrableField};
697
+ export {ISelectable};
698
+ export {ISelectableToolboxItem};
699
+ export {IStyleable};
700
+ export {IToolbox};
701
+ export {IToolboxItem};
702
+ export {Marker};
703
+ export {MarkerManager};
704
+ export {Menu};
705
+ export {MenuItem};
706
+ export {MetricsManager};
707
+ export {Mutator};
708
+ export {Msg};
709
+ export {Names};
710
+ export {Options};
711
+ export {RenderedConnection};
712
+ export {Scrollbar};
713
+ export {ScrollbarPair};
714
+ export {ShortcutRegistry};
715
+ export {TabNavigateCursor};
716
+ export {Theme};
717
+ export {ThemeManager};
718
+ export {Toolbox};
719
+ export {ToolboxCategory};
720
+ export {ToolboxItem};
721
+ export {ToolboxSeparator};
722
+ export {TouchGesture};
723
+ export {Trashcan};
724
+ export {VariableMap};
725
+ export {VariableModel};
726
+ export {VerticalFlyout};
727
+ export {Warning};
728
+ export {Workspace};
729
+ export {WorkspaceAudio};
730
+ export {WorkspaceComment};
731
+ export {WorkspaceCommentSvg};
732
+ export {WorkspaceDragSurfaceSvg};
733
+ export {WorkspaceDragger};
734
+ export {WorkspaceSvg};
735
+ export {ZoomControls};
736
+ export {config};
737
+ /** @deprecated Use Blockly.ConnectionType instead. */
738
+ export const connectionTypes = ConnectionType;
739
+ export {inject};
740
+ export {inputTypes};
741
+ export namespace serialization {
742
+ export const blocks = serializationBlocks;
743
+ export const exceptions = serializationExceptions;
744
+ export const priorities = serializationPriorities;
745
+ export const registry = serializationRegistry;
746
+ export const variables = serializationVariables;
747
+ export const workspaces = serializationWorkspaces;
748
+ export type ISerializer = SerializerInterface;
749
+ };