blockly 8.0.4 → 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 +420 -420
  609. package/msg/ace.js +420 -420
  610. package/msg/af.js +420 -420
  611. package/msg/am.js +420 -420
  612. package/msg/ar.js +420 -420
  613. package/msg/ast.js +420 -420
  614. package/msg/az.js +420 -420
  615. package/msg/ba.js +420 -420
  616. package/msg/bcc.js +420 -420
  617. package/msg/be-tarask.js +420 -420
  618. package/msg/be.js +420 -420
  619. package/msg/bg.js +420 -420
  620. package/msg/bn.js +420 -420
  621. package/msg/br.js +420 -420
  622. package/msg/bs.js +420 -420
  623. package/msg/ca.js +420 -420
  624. package/msg/cdo.js +420 -420
  625. package/msg/cs.js +420 -420
  626. package/msg/da.js +420 -420
  627. package/msg/de.js +420 -420
  628. package/msg/diq.js +420 -420
  629. package/msg/dty.js +420 -420
  630. package/msg/ee.js +420 -420
  631. package/msg/el.js +420 -420
  632. package/msg/en-gb.js +420 -420
  633. package/msg/en.js +420 -420
  634. package/msg/eo.js +420 -420
  635. package/msg/es.js +420 -420
  636. package/msg/et.js +420 -420
  637. package/msg/eu.js +420 -420
  638. package/msg/fa.js +420 -420
  639. package/msg/fi.js +420 -420
  640. package/msg/fo.js +420 -420
  641. package/msg/fr.js +420 -420
  642. package/msg/frr.js +420 -420
  643. package/msg/gl.js +420 -420
  644. package/msg/gn.js +420 -420
  645. package/msg/gor.js +420 -420
  646. package/msg/ha.js +420 -420
  647. package/msg/hak.js +420 -420
  648. package/msg/he.js +420 -420
  649. package/msg/hi.js +420 -420
  650. package/msg/hr.js +420 -420
  651. package/msg/hrx.js +420 -420
  652. package/msg/hu.js +420 -420
  653. package/msg/hy.js +420 -420
  654. package/msg/ia.js +420 -420
  655. package/msg/id.js +420 -420
  656. package/msg/ig.js +420 -420
  657. package/msg/inh.js +420 -420
  658. package/msg/is.js +420 -420
  659. package/msg/it.js +420 -420
  660. package/msg/ja.js +420 -420
  661. package/msg/ka.js +420 -420
  662. package/msg/kab.js +420 -420
  663. package/msg/kbd-cyrl.js +420 -420
  664. package/msg/km.js +420 -420
  665. package/msg/kn.js +420 -420
  666. package/msg/ko.js +420 -420
  667. package/msg/ksh.js +420 -420
  668. package/msg/ku-latn.js +420 -420
  669. package/msg/ky.js +420 -420
  670. package/msg/la.js +420 -420
  671. package/msg/lb.js +420 -420
  672. package/msg/lki.js +420 -420
  673. package/msg/lo.js +420 -420
  674. package/msg/lrc.js +420 -420
  675. package/msg/lt.js +420 -420
  676. package/msg/lv.js +420 -420
  677. package/msg/mg.js +420 -420
  678. package/msg/mk.js +420 -420
  679. package/msg/ml.js +420 -420
  680. package/msg/mnw.js +420 -420
  681. package/msg/ms.js +420 -420
  682. package/msg/my.js +420 -420
  683. package/msg/mzn.js +420 -420
  684. package/msg/nb.js +420 -420
  685. package/msg/ne.js +420 -420
  686. package/msg/nl.js +420 -420
  687. package/msg/oc.js +420 -420
  688. package/msg/olo.js +420 -420
  689. package/msg/pa.js +420 -420
  690. package/msg/pl.js +420 -420
  691. package/msg/pms.js +420 -420
  692. package/msg/ps.js +420 -420
  693. package/msg/pt-br.js +420 -420
  694. package/msg/pt.js +420 -420
  695. package/msg/ro.js +420 -420
  696. package/msg/ru.js +420 -420
  697. package/msg/sc.js +420 -420
  698. package/msg/sco.js +420 -420
  699. package/msg/sd.js +420 -420
  700. package/msg/shn.js +420 -420
  701. package/msg/si.js +420 -420
  702. package/msg/sk.js +420 -420
  703. package/msg/skr-arab.js +420 -420
  704. package/msg/sl.js +420 -420
  705. package/msg/smn.js +420 -420
  706. package/msg/sq.js +420 -420
  707. package/msg/sr-latn.js +420 -420
  708. package/msg/sr.js +420 -420
  709. package/msg/sv.js +420 -420
  710. package/msg/sw.js +420 -420
  711. package/msg/ta.js +420 -420
  712. package/msg/tcy.js +420 -420
  713. package/msg/te.js +420 -420
  714. package/msg/th.js +420 -420
  715. package/msg/ti.js +420 -420
  716. package/msg/tl.js +420 -420
  717. package/msg/tlh.js +420 -420
  718. package/msg/tr.js +420 -420
  719. package/msg/ug-arab.js +420 -420
  720. package/msg/uk.js +420 -420
  721. package/msg/ur.js +420 -420
  722. package/msg/uz.js +420 -420
  723. package/msg/vi.js +420 -420
  724. package/msg/xmf.js +420 -420
  725. package/msg/yo.js +420 -420
  726. package/msg/yue.js +420 -420
  727. package/msg/zgh.js +420 -420
  728. package/msg/zh-hans.js +420 -420
  729. package/msg/zh-hant.js +420 -420
  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
@@ -7,109 +7,79 @@
7
7
  /**
8
8
  * @fileoverview Functionality for the right-click context menus.
9
9
  */
10
- 'use strict';
11
10
 
12
11
  /**
13
12
  * Functionality for the right-click context menus.
14
13
  * @namespace Blockly.ContextMenu
15
14
  */
16
- goog.module('Blockly.ContextMenu');
15
+ import * as goog from '../closure/goog/goog.js';
16
+ goog.declareModuleId('Blockly.ContextMenu');
17
17
 
18
- const WidgetDiv = goog.require('Blockly.WidgetDiv');
19
- const Xml = goog.require('Blockly.Xml');
20
- const aria = goog.require('Blockly.utils.aria');
21
- const browserEvents = goog.require('Blockly.browserEvents');
22
- const clipboard = goog.require('Blockly.clipboard');
23
- const deprecation = goog.require('Blockly.utils.deprecation');
24
- const dom = goog.require('Blockly.utils.dom');
25
- const eventUtils = goog.require('Blockly.Events.utils');
26
- const userAgent = goog.require('Blockly.utils.userAgent');
27
- const svgMath = goog.require('Blockly.utils.svgMath');
28
- /* eslint-disable-next-line no-unused-vars */
29
- const {Block} = goog.requireType('Blockly.Block');
30
- /* eslint-disable-next-line no-unused-vars */
31
- const {BlockSvg} = goog.requireType('Blockly.BlockSvg');
32
- const {config} = goog.require('Blockly.config');
33
- const {Coordinate} = goog.require('Blockly.utils.Coordinate');
34
- const {MenuItem} = goog.require('Blockly.MenuItem');
35
- const {Menu} = goog.require('Blockly.Menu');
36
- const {Msg} = goog.require('Blockly.Msg');
37
- const {Rect} = goog.require('Blockly.utils.Rect');
38
- /* eslint-disable-next-line no-unused-vars */
39
- const {WorkspaceCommentSvg} = goog.requireType('Blockly.WorkspaceCommentSvg');
40
- /* eslint-disable-next-line no-unused-vars */
41
- const {WorkspaceSvg} = goog.requireType('Blockly.WorkspaceSvg');
42
- /** @suppress {extraRequire} */
43
- goog.require('Blockly.Events.BlockCreate');
18
+ import type {Block} from './block.js';
19
+ import type {BlockSvg} from './block_svg.js';
20
+ import * as browserEvents from './browser_events.js';
21
+ import * as clipboard from './clipboard.js';
22
+ import {config} from './config.js';
23
+ import type {ContextMenuOption, ContextMenuRegistry, LegacyContextMenuOption} from './contextmenu_registry.js';
24
+ import * as BlockCreate from './events/events_block_create.js';
25
+ import * as eventUtils from './events/utils.js';
26
+ import {Menu} from './menu.js';
27
+ import {MenuItem} from './menuitem.js';
28
+ import {Msg} from './msg.js';
29
+ import * as aria from './utils/aria.js';
30
+ import {Coordinate} from './utils/coordinate.js';
31
+ import * as deprecation from './utils/deprecation.js';
32
+ import * as dom from './utils/dom.js';
33
+ import {Rect} from './utils/rect.js';
34
+ import * as svgMath from './utils/svg_math.js';
35
+ import * as userAgent from './utils/useragent.js';
36
+ import * as WidgetDiv from './widgetdiv.js';
37
+ import {WorkspaceCommentSvg} from './workspace_comment_svg.js';
38
+ import type {WorkspaceSvg} from './workspace_svg.js';
39
+ import * as Xml from './xml.js';
44
40
 
45
41
 
46
42
  /**
47
43
  * Which block is the context menu attached to?
48
- * @type {?Block}
49
44
  */
50
- let currentBlock = null;
45
+ let currentBlock: Block|null = null;
46
+
47
+ let dummyOwner = {};
51
48
 
52
49
  /**
53
50
  * Gets the block the context menu is currently attached to.
54
- * @return {?Block} The block the context menu is attached to.
51
+ * @return The block the context menu is attached to.
55
52
  * @alias Blockly.ContextMenu.getCurrentBlock
56
53
  */
57
- const getCurrentBlock = function() {
54
+ export function getCurrentBlock(): Block|null {
58
55
  return currentBlock;
59
- };
60
- exports.getCurrentBlock = getCurrentBlock;
56
+ }
61
57
 
62
58
  /**
63
59
  * Sets the block the context menu is currently attached to.
64
- * @param {?Block} block The block the context menu is attached to.
60
+ * @param block The block the context menu is attached to.
65
61
  * @alias Blockly.ContextMenu.setCurrentBlock
66
62
  */
67
- const setCurrentBlock = function(block) {
63
+ export function setCurrentBlock(block: Block|null) {
68
64
  currentBlock = block;
69
- };
70
- exports.setCurrentBlock = setCurrentBlock;
71
-
72
- // Add JS accessors for backwards compatibility.
73
- Object.defineProperties(exports, {
74
- /**
75
- * Which block is the context menu attached to?
76
- * @name Blockly.ContextMenu.currentBlock
77
- * @type {Block}
78
- * @deprecated Use Blockly.Tooltip.getCurrentBlock() /
79
- * .setCurrentBlock() instead. (September 2021)
80
- * @suppress {checkTypes}
81
- */
82
- currentBlock: {
83
- get: function() {
84
- deprecation.warn(
85
- 'Blockly.ContextMenu.currentBlock', 'September 2021',
86
- 'September 2022', 'Blockly.Tooltip.getCurrentBlock()');
87
- return getCurrentBlock();
88
- },
89
- set: function(block) {
90
- deprecation.warn(
91
- 'Blockly.ContextMenu.currentBlock', 'September 2021',
92
- 'September 2022', 'Blockly.Tooltip.setCurrentBlock(block)');
93
- setCurrentBlock(block);
94
- },
95
- },
96
- });
65
+ }
97
66
 
98
67
  /**
99
68
  * Menu object.
100
- * @type {Menu}
101
69
  */
102
- let menu_ = null;
70
+ let menu_: Menu|null = null;
103
71
 
104
72
  /**
105
73
  * Construct the menu based on the list of options and show the menu.
106
- * @param {!Event} e Mouse event.
107
- * @param {!Array<!Object>} options Array of menu options.
108
- * @param {boolean} rtl True if RTL, false if LTR.
74
+ * @param e Mouse event.
75
+ * @param options Array of menu options.
76
+ * @param rtl True if RTL, false if LTR.
109
77
  * @alias Blockly.ContextMenu.show
110
78
  */
111
- const show = function(e, options, rtl) {
112
- WidgetDiv.show(exports, rtl, dispose);
79
+ export function show(
80
+ e: Event, options: (ContextMenuOption|LegacyContextMenuOption)[],
81
+ rtl: boolean) {
82
+ WidgetDiv.show(dummyOwner, rtl, dispose);
113
83
  if (!options.length) {
114
84
  hide();
115
85
  return;
@@ -124,22 +94,22 @@ const show = function(e, options, rtl) {
124
94
  menu.focus();
125
95
  }, 1);
126
96
  currentBlock = null; // May be set by Blockly.Block.
127
- };
128
- exports.show = show;
97
+ }
129
98
 
130
99
  /**
131
100
  * Create the context menu object and populate it with the given options.
132
- * @param {!Array<!Object>} options Array of menu options.
133
- * @param {boolean} rtl True if RTL, false if LTR.
134
- * @return {!Menu} The menu that will be shown on right click.
135
- * @private
101
+ * @param options Array of menu options.
102
+ * @param rtl True if RTL, false if LTR.
103
+ * @return The menu that will be shown on right click.
136
104
  */
137
- const populate_ = function(options, rtl) {
105
+ function populate_(
106
+ options: (ContextMenuOption|LegacyContextMenuOption)[],
107
+ rtl: boolean): Menu {
138
108
  /* Here's what one option object looks like:
139
- {text: 'Make It So',
140
- enabled: true,
141
- callback: Blockly.MakeItSo}
142
- */
109
+ {text: 'Make It So',
110
+ enabled: true,
111
+ callback: Blockly.MakeItSo}
112
+ */
143
113
  const menu = new Menu();
144
114
  menu.setRole(aria.Role.MENU);
145
115
  for (let i = 0; i < options.length; i++) {
@@ -150,35 +120,38 @@ const populate_ = function(options, rtl) {
150
120
  menu.addChild(menuItem);
151
121
  menuItem.setEnabled(option.enabled);
152
122
  if (option.enabled) {
153
- const actionHandler = function(_menuItem) {
154
- // TODO: Create a type for option that can be used in an @this tag.
155
- /* eslint-disable-next-line no-invalid-this */
156
- const option = this;
123
+ const actionHandler = function() {
157
124
  hide();
158
- option.callback(option.scope);
125
+ // If .scope does not exist on the option, then the callback will not
126
+ // be expecting a scope parameter, so there should be no problems. Just
127
+ // assume it is a ContextMenuOption and we'll pass undefined if it's
128
+ // not.
129
+ option.callback((option as ContextMenuOption).scope);
159
130
  };
160
- menuItem.onAction(actionHandler, option);
131
+ menuItem.onAction(actionHandler, {});
161
132
  }
162
133
  }
163
134
  return menu;
164
- };
135
+ }
165
136
 
166
137
  /**
167
138
  * Add the menu to the page and position it correctly.
168
- * @param {!Menu} menu The menu to add and position.
169
- * @param {!Event} e Mouse event for the right click that is making the context
139
+ * @param menu The menu to add and position.
140
+ * @param e Mouse event for the right click that is making the context
170
141
  * menu appear.
171
- * @param {boolean} rtl True if RTL, false if LTR.
172
- * @private
142
+ * @param rtl True if RTL, false if LTR.
173
143
  */
174
- const position_ = function(menu, e, rtl) {
144
+ function position_(menu: Menu, e: Event, rtl: boolean) {
175
145
  // Record windowSize and scrollOffset before adding menu.
176
146
  const viewportBBox = svgMath.getViewportBBox();
147
+ const mouseEvent = e as MouseEvent;
177
148
  // This one is just a point, but we'll pretend that it's a rect so we can use
178
149
  // some helper functions.
179
150
  const anchorBBox = new Rect(
180
- e.clientY + viewportBBox.top, e.clientY + viewportBBox.top,
181
- e.clientX + viewportBBox.left, e.clientX + viewportBBox.left);
151
+ mouseEvent.clientY + viewportBBox.top,
152
+ mouseEvent.clientY + viewportBBox.top,
153
+ mouseEvent.clientX + viewportBBox.left,
154
+ mouseEvent.clientX + viewportBBox.left);
182
155
 
183
156
  createWidget_(menu);
184
157
  const menuSize = menu.getSize();
@@ -195,77 +168,70 @@ const position_ = function(menu, e, rtl) {
195
168
  // correctly. Otherwise it will cause a page scroll to get the misplaced menu
196
169
  // in view. See issue #1329.
197
170
  menu.focus();
198
- };
171
+ }
199
172
 
200
173
  /**
201
174
  * Create and render the menu widget inside Blockly's widget div.
202
- * @param {!Menu} menu The menu to add to the widget div.
203
- * @private
175
+ * @param menu The menu to add to the widget div.
204
176
  */
205
- const createWidget_ = function(menu) {
177
+ function createWidget_(menu: Menu) {
206
178
  const div = WidgetDiv.getDiv();
207
179
  if (!div) {
208
180
  throw Error('Attempting to create a context menu when widget div is null');
209
181
  }
210
182
  menu.render(div);
211
183
  const menuDom = menu.getElement();
212
- dom.addClass(
213
- /** @type {!Element} */ (menuDom), 'blocklyContextMenu');
184
+ dom.addClass((menuDom as Element), 'blocklyContextMenu');
214
185
  // Prevent system context menu when right-clicking a Blockly context menu.
215
186
  browserEvents.conditionalBind(
216
- /** @type {!EventTarget} */ (menuDom), 'contextmenu', null,
217
- haltPropagation);
187
+ (menuDom as EventTarget), 'contextmenu', null, haltPropagation);
218
188
  // Focus only after the initial render to avoid issue #1329.
219
189
  menu.focus();
220
- };
221
-
190
+ }
222
191
  /**
223
192
  * Halts the propagation of the event without doing anything else.
224
- * @param {!Event} e An event.
193
+ * @param e An event.
225
194
  */
226
- const haltPropagation = function(e) {
195
+ function haltPropagation(e: Event) {
227
196
  // This event has been handled. No need to bubble up to the document.
228
197
  e.preventDefault();
229
198
  e.stopPropagation();
230
- };
199
+ }
231
200
 
232
201
  /**
233
202
  * Hide the context menu.
234
203
  * @alias Blockly.ContextMenu.hide
235
204
  */
236
- const hide = function() {
237
- WidgetDiv.hideIfOwner(exports);
205
+ export function hide() {
206
+ WidgetDiv.hideIfOwner(dummyOwner);
238
207
  currentBlock = null;
239
- };
240
- exports.hide = hide;
208
+ }
241
209
 
242
210
  /**
243
211
  * Dispose of the menu.
244
212
  * @alias Blockly.ContextMenu.dispose
245
213
  */
246
- const dispose = function() {
214
+ export function dispose() {
247
215
  if (menu_) {
248
216
  menu_.dispose();
249
217
  menu_ = null;
250
218
  }
251
- };
252
- exports.dispose = dispose;
219
+ }
253
220
 
254
221
  /**
255
222
  * Create a callback function that creates and configures a block,
256
223
  * then places the new block next to the original.
257
- * @param {!Block} block Original block.
258
- * @param {!Element} xml XML representation of new block.
259
- * @return {!Function} Function that creates a block.
224
+ * @param block Original block.
225
+ * @param xml XML representation of new block.
226
+ * @return Function that creates a block.
260
227
  * @alias Blockly.ContextMenu.callbackFactory
261
228
  */
262
- const callbackFactory = function(block, xml) {
263
- return function() {
229
+ export function callbackFactory(block: Block, xml: Element): Function {
230
+ return () => {
264
231
  eventUtils.disable();
265
232
  let newBlock;
266
233
  try {
267
- newBlock =
268
- /** @type {!BlockSvg} */ (Xml.domToBlock(xml, block.workspace));
234
+ newBlock = Xml.domToBlock(xml, block.workspace!) as BlockSvg;
269
235
  // Move the new block next to the old block.
270
236
  const xy = block.getRelativeToSurfaceXY();
271
237
  if (block.RTL) {
@@ -279,24 +245,25 @@ const callbackFactory = function(block, xml) {
279
245
  eventUtils.enable();
280
246
  }
281
247
  if (eventUtils.isEnabled() && !newBlock.isShadow()) {
282
- eventUtils.fire(new (eventUtils.get(eventUtils.BLOCK_CREATE))(newBlock));
248
+ eventUtils.fire(new (eventUtils.get(eventUtils.BLOCK_CREATE))!(newBlock));
283
249
  }
284
250
  newBlock.select();
285
251
  };
286
- };
287
- exports.callbackFactory = callbackFactory;
252
+ }
288
253
 
289
254
  // Helper functions for creating context menu options.
290
255
 
291
256
  /**
292
257
  * Make a context menu option for deleting the current workspace comment.
293
- * @param {!WorkspaceCommentSvg} comment The workspace comment where the
258
+ * @param comment The workspace comment where the
294
259
  * right-click originated.
295
- * @return {!Object} A menu option, containing text, enabled, and a callback.
260
+ * @return A menu option,
261
+ * containing text, enabled, and a callback.
296
262
  * @alias Blockly.ContextMenu.commentDeleteOption
297
- * @package
263
+ * @internal
298
264
  */
299
- const commentDeleteOption = function(comment) {
265
+ export function commentDeleteOption(comment: WorkspaceCommentSvg):
266
+ LegacyContextMenuOption {
300
267
  const deleteOption = {
301
268
  text: Msg['REMOVE_COMMENT'],
302
269
  enabled: true,
@@ -307,18 +274,19 @@ const commentDeleteOption = function(comment) {
307
274
  },
308
275
  };
309
276
  return deleteOption;
310
- };
311
- exports.commentDeleteOption = commentDeleteOption;
277
+ }
312
278
 
313
279
  /**
314
280
  * Make a context menu option for duplicating the current workspace comment.
315
- * @param {!WorkspaceCommentSvg} comment The workspace comment where the
281
+ * @param comment The workspace comment where the
316
282
  * right-click originated.
317
- * @return {!Object} A menu option, containing text, enabled, and a callback.
283
+ * @return A menu option,
284
+ * containing text, enabled, and a callback.
318
285
  * @alias Blockly.ContextMenu.commentDuplicateOption
319
- * @package
286
+ * @internal
320
287
  */
321
- const commentDuplicateOption = function(comment) {
288
+ export function commentDuplicateOption(comment: WorkspaceCommentSvg):
289
+ LegacyContextMenuOption {
322
290
  const duplicateOption = {
323
291
  text: Msg['DUPLICATE_COMMENT'],
324
292
  enabled: true,
@@ -327,28 +295,24 @@ const commentDuplicateOption = function(comment) {
327
295
  },
328
296
  };
329
297
  return duplicateOption;
330
- };
331
- exports.commentDuplicateOption = commentDuplicateOption;
298
+ }
332
299
 
333
300
  /**
334
301
  * Make a context menu option for adding a comment on the workspace.
335
- * @param {!WorkspaceSvg} ws The workspace where the right-click
302
+ * @param ws The workspace where the right-click
336
303
  * originated.
337
- * @param {!Event} e The right-click mouse event.
338
- * @return {!Object} A menu option, containing text, enabled, and a callback.
339
- * @package
304
+ * @param e The right-click mouse event.
305
+ * @return A menu option, containing text, enabled, and a callback.
340
306
  * @suppress {strictModuleDepCheck,checkTypes} Suppress checks while workspace
341
307
  * comments are not bundled in.
342
308
  * @alias Blockly.ContextMenu.workspaceCommentOption
309
+ * @internal
343
310
  */
344
- const workspaceCommentOption = function(ws, e) {
345
- const {WorkspaceCommentSvg} = goog.module.get('Blockly.WorkspaceCommentSvg');
346
- if (!WorkspaceCommentSvg) {
347
- throw Error('Missing require for Blockly.WorkspaceCommentSvg');
348
- }
311
+ export function workspaceCommentOption(
312
+ ws: WorkspaceSvg, e: Event): ContextMenuOption {
349
313
  // Helper function to create and position a comment correctly based on the
350
314
  // location of the mouse event.
351
- const addWsComment = function() {
315
+ function addWsComment() {
352
316
  const comment = new WorkspaceCommentSvg(
353
317
  ws, Msg['WORKSPACE_COMMENT_DEFAULT_TEXT'],
354
318
  WorkspaceCommentSvg.DEFAULT_SIZE, WorkspaceCommentSvg.DEFAULT_SIZE);
@@ -360,8 +324,10 @@ const workspaceCommentOption = function(ws, e) {
360
324
  const boundingRect = injectionDiv.getBoundingClientRect();
361
325
 
362
326
  // The client coordinates offset by the injection div's upper left corner.
327
+ const mouseEvent = e as MouseEvent;
363
328
  const clientOffsetPixels = new Coordinate(
364
- e.clientX - boundingRect.left, e.clientY - boundingRect.top);
329
+ mouseEvent.clientX - boundingRect.left,
330
+ mouseEvent.clientY - boundingRect.top);
365
331
 
366
332
  // The offset in pixels between the main workspace's origin and the upper
367
333
  // left corner of the injection div.
@@ -382,17 +348,16 @@ const workspaceCommentOption = function(ws, e) {
382
348
  comment.render();
383
349
  comment.select();
384
350
  }
385
- };
351
+ }
386
352
 
387
353
  const wsCommentOption = {
388
354
  // Foreign objects don't work in IE. Don't let the user create comments
389
355
  // that they won't be able to edit.
390
356
  enabled: !userAgent.IE,
391
- };
357
+ } as ContextMenuOption;
392
358
  wsCommentOption.text = Msg['ADD_COMMENT'];
393
359
  wsCommentOption.callback = function() {
394
360
  addWsComment();
395
361
  };
396
362
  return wsCommentOption;
397
- };
398
- exports.workspaceCommentOption = workspaceCommentOption;
363
+ }
@@ -0,0 +1,77 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Option to undo previous action.
8
+ * @alias Blockly.ContextMenuItems.registerUndo
9
+ */
10
+ export declare function registerUndo(): void;
11
+ /**
12
+ * Option to redo previous action.
13
+ * @alias Blockly.ContextMenuItems.registerRedo
14
+ */
15
+ export declare function registerRedo(): void;
16
+ /**
17
+ * Option to clean up blocks.
18
+ * @alias Blockly.ContextMenuItems.registerCleanup
19
+ */
20
+ export declare function registerCleanup(): void;
21
+ /**
22
+ * Option to collapse all blocks.
23
+ * @alias Blockly.ContextMenuItems.registerCollapse
24
+ */
25
+ export declare function registerCollapse(): void;
26
+ /**
27
+ * Option to expand all blocks.
28
+ * @alias Blockly.ContextMenuItems.registerExpand
29
+ */
30
+ export declare function registerExpand(): void;
31
+ /**
32
+ * Option to delete all blocks.
33
+ * @alias Blockly.ContextMenuItems.registerDeleteAll
34
+ */
35
+ export declare function registerDeleteAll(): void;
36
+ /**
37
+ * Option to duplicate a block.
38
+ * @alias Blockly.ContextMenuItems.registerDuplicate
39
+ */
40
+ export declare function registerDuplicate(): void;
41
+ /**
42
+ * Option to add or remove block-level comment.
43
+ * @alias Blockly.ContextMenuItems.registerComment
44
+ */
45
+ export declare function registerComment(): void;
46
+ /**
47
+ * Option to inline variables.
48
+ * @alias Blockly.ContextMenuItems.registerInline
49
+ */
50
+ export declare function registerInline(): void;
51
+ /**
52
+ * Option to collapse or expand a block.
53
+ * @alias Blockly.ContextMenuItems.registerCollapseExpandBlock
54
+ */
55
+ export declare function registerCollapseExpandBlock(): void;
56
+ /**
57
+ * Option to disable or enable a block.
58
+ * @alias Blockly.ContextMenuItems.registerDisable
59
+ */
60
+ export declare function registerDisable(): void;
61
+ /**
62
+ * Option to delete a block.
63
+ * @alias Blockly.ContextMenuItems.registerDelete
64
+ */
65
+ export declare function registerDelete(): void;
66
+ /**
67
+ * Option to open help for a block.
68
+ * @alias Blockly.ContextMenuItems.registerHelp
69
+ */
70
+ export declare function registerHelp(): void;
71
+ /**
72
+ * Registers all default context menu items. This should be called once per
73
+ * instance of ContextMenuRegistry.
74
+ * @alias Blockly.ContextMenuItems.registerDefaultOptions
75
+ * @internal
76
+ */
77
+ export declare function registerDefaultOptions(): void;