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
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2019 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Inherit the prototype methods from one constructor into another.
8
+ * @param childCtor Child class.
9
+ * @param parentCtor Parent class.
10
+ * @suppress {strictMissingProperties} superClass_ is not defined on Function.
11
+ * @alias Blockly.utils.object.inherits
12
+ */
13
+ export declare function inherits(childCtor: Function, parentCtor: Function): void;
14
+ /**
15
+ * Copies all the members of a source object to a target object.
16
+ * @param target Target.
17
+ * @param source Source.
18
+ * @alias Blockly.utils.object.mixin
19
+ */
20
+ export declare function mixin(target: any, source: any): void;
21
+ /**
22
+ * Complete a deep merge of all members of a source object with a target object.
23
+ * @param target Target.
24
+ * @param source Source.
25
+ * @return The resulting object.
26
+ * @alias Blockly.utils.object.deepMerge
27
+ */
28
+ export declare function deepMerge(target: any, source: any): any;
29
+ /**
30
+ * Returns an array of a given object's own enumerable property values.
31
+ * @param obj Object containing values.
32
+ * @return Array of values.
33
+ * @alias Blockly.utils.object.values
34
+ */
35
+ export declare function values(obj: any): any[];
@@ -7,27 +7,31 @@
7
7
  /**
8
8
  * @fileoverview Utility methods for objects.
9
9
  */
10
- 'use strict';
11
10
 
12
11
  /**
13
12
  * Utility methods for objects.
14
13
  * @namespace Blockly.utils.object
15
14
  */
16
- goog.module('Blockly.utils.object');
15
+ import * as goog from '../../closure/goog/goog.js';
16
+ goog.declareModuleId('Blockly.utils.object');
17
+
18
+ import * as deprecation from './deprecation.js';
17
19
 
18
20
 
19
21
  /**
20
22
  * Inherit the prototype methods from one constructor into another.
21
- * @param {!Function} childCtor Child class.
22
- * @param {!Function} parentCtor Parent class.
23
+ * @param childCtor Child class.
24
+ * @param parentCtor Parent class.
23
25
  * @suppress {strictMissingProperties} superClass_ is not defined on Function.
24
26
  * @alias Blockly.utils.object.inherits
25
27
  */
26
- const inherits = function(childCtor, parentCtor) {
28
+ export function inherits(childCtor: Function, parentCtor: Function) {
27
29
  // Set a .superClass_ property so that methods can call parent methods
28
30
  // without hard-coding the parent class name.
29
31
  // Could be replaced by ES6's super().
30
- childCtor.superClass_ = parentCtor.prototype;
32
+ // AnyDuringMigration because: Property 'superClass_' does not exist on type
33
+ // 'Function'.
34
+ (childCtor as AnyDuringMigration).superClass_ = parentCtor.prototype;
31
35
 
32
36
  // Link the child class to the parent class so that static methods inherit.
33
37
  Object.setPrototypeOf(childCtor, parentCtor);
@@ -36,32 +40,34 @@ const inherits = function(childCtor, parentCtor) {
36
40
  // of the parent class.
37
41
  childCtor.prototype = Object.create(parentCtor.prototype);
38
42
  childCtor.prototype.constructor = childCtor;
39
- // Alternatively, one could use this instead:
40
- // Object.setPrototypeOf(childCtor.prototype, parentCtor.prototype);
41
- };
42
- exports.inherits = inherits;
43
+ }
44
+ // Alternatively, one could use this instead:
45
+ // Object.setPrototypeOf(childCtor.prototype, parentCtor.prototype);
43
46
 
44
47
  /**
45
48
  * Copies all the members of a source object to a target object.
46
- * @param {!Object} target Target.
47
- * @param {!Object} source Source.
49
+ * @param target Target.
50
+ * @param source Source.
48
51
  * @alias Blockly.utils.object.mixin
49
52
  */
50
- const mixin = function(target, source) {
53
+ export function mixin(target: AnyDuringMigration, source: AnyDuringMigration) {
54
+ deprecation.warn(
55
+ 'Blockly.utils.object.mixin', 'May 2022', 'May 2023', 'Object.assign');
51
56
  for (const x in source) {
52
57
  target[x] = source[x];
53
58
  }
54
- };
55
- exports.mixin = mixin;
59
+ }
56
60
 
57
61
  /**
58
62
  * Complete a deep merge of all members of a source object with a target object.
59
- * @param {!Object} target Target.
60
- * @param {!Object} source Source.
61
- * @return {!Object} The resulting object.
63
+ * @param target Target.
64
+ * @param source Source.
65
+ * @return The resulting object.
62
66
  * @alias Blockly.utils.object.deepMerge
63
67
  */
64
- const deepMerge = function(target, source) {
68
+ export function deepMerge(
69
+ target: AnyDuringMigration,
70
+ source: AnyDuringMigration): AnyDuringMigration {
65
71
  for (const x in source) {
66
72
  if (source[x] !== null && typeof source[x] === 'object') {
67
73
  target[x] = deepMerge(target[x] || Object.create(null), source[x]);
@@ -70,16 +76,15 @@ const deepMerge = function(target, source) {
70
76
  }
71
77
  }
72
78
  return target;
73
- };
74
- exports.deepMerge = deepMerge;
79
+ }
75
80
 
76
81
  /**
77
82
  * Returns an array of a given object's own enumerable property values.
78
- * @param {!Object} obj Object containing values.
79
- * @return {!Array} Array of values.
83
+ * @param obj Object containing values.
84
+ * @return Array of values.
80
85
  * @alias Blockly.utils.object.values
81
86
  */
82
- const values = function(obj) {
87
+ export function values(obj: AnyDuringMigration): AnyDuringMigration[] {
83
88
  if (Object.values) {
84
89
  return Object.values(obj);
85
90
  }
@@ -87,5 +92,4 @@ const values = function(obj) {
87
92
  return Object.keys(obj).map(function(e) {
88
93
  return obj[e];
89
94
  });
90
- };
91
- exports.values = values;
95
+ }
@@ -0,0 +1,50 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Parse a string with any number of interpolation tokens (%1, %2, ...).
8
+ * It will also replace string table references (e.g., %{bky_my_msg} and
9
+ * %{BKY_MY_MSG} will both be replaced with the value in
10
+ * Msg['MY_MSG']). Percentage sign characters '%' may be self-escaped
11
+ * (e.g., '%%').
12
+ * @param message Text which might contain string table references and
13
+ * interpolation tokens.
14
+ * @return Array of strings and numbers.
15
+ * @alias Blockly.utils.parsing.tokenizeInterpolation
16
+ */
17
+ export declare function tokenizeInterpolation(message: string): (string | number)[];
18
+ /**
19
+ * Replaces string table references in a message, if the message is a string.
20
+ * For example, "%{bky_my_msg}" and "%{BKY_MY_MSG}" will both be replaced with
21
+ * the value in Msg['MY_MSG'].
22
+ * @param message Message, which may be a string that contains
23
+ * string table references.
24
+ * @return String with message references replaced.
25
+ * @alias Blockly.utils.parsing.replaceMessageReferences
26
+ */
27
+ export declare function replaceMessageReferences(message: string | any): string;
28
+ /**
29
+ * Validates that any %{MSG_KEY} references in the message refer to keys of
30
+ * the Msg string table.
31
+ * @param message Text which might contain string table references.
32
+ * @return True if all message references have matching values.
33
+ * Otherwise, false.
34
+ * @alias Blockly.utils.parsing.checkMessageReferences
35
+ */
36
+ export declare function checkMessageReferences(message: string): boolean;
37
+ /**
38
+ * Parse a block colour from a number or string, as provided in a block
39
+ * definition.
40
+ * @param colour HSV hue value (0 to 360), #RRGGBB string,
41
+ * or a message reference string pointing to one of those two values.
42
+ * @return An object containing the colour as
43
+ * a #RRGGBB string, and the hue if the input was an HSV hue value.
44
+ * @throws {Error} If the colour cannot be parsed.
45
+ * @alias Blockly.utils.parsing.parseBlockColour
46
+ */
47
+ export declare function parseBlockColour(colour: number | string): {
48
+ hue: number | null;
49
+ hex: string;
50
+ };
@@ -7,50 +7,51 @@
7
7
  /**
8
8
  * @fileoverview Utility methods related to block and message parsing.
9
9
  */
10
- 'use strict';
11
10
 
12
11
  /**
13
12
  * @namespace Blockly.utils.parsing
14
13
  */
15
- goog.module('Blockly.utils.parsing');
14
+ import * as goog from '../../closure/goog/goog.js';
15
+ goog.declareModuleId('Blockly.utils.parsing');
16
16
 
17
- const colourUtils = goog.require('Blockly.utils.colour');
18
- const stringUtils = goog.require('Blockly.utils.string');
19
- const {Msg} = goog.require('Blockly.Msg');
17
+ import {Msg} from '../msg.js';
18
+
19
+ import * as colourUtils from './colour.js';
20
20
 
21
21
 
22
22
  /**
23
23
  * Internal implementation of the message reference and interpolation token
24
24
  * parsing used by tokenizeInterpolation() and replaceMessageReferences().
25
- * @param {string} message Text which might contain string table references and
25
+ * @param message Text which might contain string table references and
26
26
  * interpolation tokens.
27
- * @param {boolean} parseInterpolationTokens Option to parse numeric
27
+ * @param parseInterpolationTokens Option to parse numeric
28
28
  * interpolation tokens (%1, %2, ...) when true.
29
- * @return {!Array<string|number>} Array of strings and numbers.
29
+ * @return Array of strings and numbers.
30
30
  */
31
- const tokenizeInterpolationInternal = function(
32
- message, parseInterpolationTokens) {
31
+ function tokenizeInterpolationInternal(
32
+ message: string, parseInterpolationTokens: boolean): (string|number)[] {
33
33
  const tokens = [];
34
34
  const chars = message.split('');
35
- chars.push(''); // End marker.
35
+ chars.push( // End marker.
36
+ '');
36
37
  // Parse the message with a finite state machine.
37
38
  // 0 - Base case.
38
39
  // 1 - % found.
39
40
  // 2 - Digit found.
40
41
  // 3 - Message ref found.
41
42
  let state = 0;
42
- const buffer = [];
43
+ const buffer = new Array<string>();
43
44
  let number = null;
44
45
  for (let i = 0; i < chars.length; i++) {
45
46
  const c = chars[i];
46
- if (state === 0) {
47
+ if (state === 0) { // Start escape.
47
48
  if (c === '%') {
48
49
  const text = buffer.join('');
49
50
  if (text) {
50
51
  tokens.push(text);
51
52
  }
52
53
  buffer.length = 0;
53
- state = 1; // Start escape.
54
+ state = 1;
54
55
  } else {
55
56
  buffer.push(c); // Regular char.
56
57
  }
@@ -76,7 +77,7 @@ const tokenizeInterpolationInternal = function(
76
77
  if ('0' <= c && c <= '9') {
77
78
  number += c; // Multi-digit number.
78
79
  } else {
79
- tokens.push(parseInt(number, 10));
80
+ tokens.push(parseInt(number ?? '', 10));
80
81
  i--; // Parse this char again.
81
82
  state = 0;
82
83
  }
@@ -94,16 +95,16 @@ const tokenizeInterpolationInternal = function(
94
95
  // Found a valid string key. Attempt case insensitive match.
95
96
  const keyUpper = rawKey.toUpperCase();
96
97
 
97
- // BKY_ is the prefix used to namespace the strings used in Blockly
98
- // core files and the predefined blocks in ../blocks/.
98
+ // BKY_ is the prefix used to namespace the strings used in
99
+ // Blockly core files and the predefined blocks in ../blocks/.
99
100
  // These strings are defined in ../msgs/ files.
100
- const bklyKey = stringUtils.startsWith(keyUpper, 'BKY_') ?
101
- keyUpper.substring(4) :
102
- null;
101
+ const bklyKey =
102
+ keyUpper.startsWith('BKY_') ? keyUpper.substring(4) : null;
103
103
  if (bklyKey && bklyKey in Msg) {
104
104
  const rawValue = Msg[bklyKey];
105
105
  if (typeof rawValue === 'string') {
106
- // Attempt to dereference substrings, too, appending to the end.
106
+ // Attempt to dereference substrings, too, appending to the
107
+ // end.
107
108
  Array.prototype.push.apply(
108
109
  tokens,
109
110
  tokenizeInterpolationInternal(
@@ -140,7 +141,7 @@ const tokenizeInterpolationInternal = function(
140
141
  buffer.length = 0;
141
142
  for (let i = 0; i < tokens.length; i++) {
142
143
  if (typeof tokens[i] === 'string') {
143
- buffer.push(tokens[i]);
144
+ buffer.push(tokens[i] as string);
144
145
  } else {
145
146
  text = buffer.join('');
146
147
  if (text) {
@@ -157,7 +158,7 @@ const tokenizeInterpolationInternal = function(
157
158
  buffer.length = 0;
158
159
 
159
160
  return mergedTokens;
160
- };
161
+ }
161
162
 
162
163
  /**
163
164
  * Parse a string with any number of interpolation tokens (%1, %2, ...).
@@ -165,26 +166,26 @@ const tokenizeInterpolationInternal = function(
165
166
  * %{BKY_MY_MSG} will both be replaced with the value in
166
167
  * Msg['MY_MSG']). Percentage sign characters '%' may be self-escaped
167
168
  * (e.g., '%%').
168
- * @param {string} message Text which might contain string table references and
169
+ * @param message Text which might contain string table references and
169
170
  * interpolation tokens.
170
- * @return {!Array<string|number>} Array of strings and numbers.
171
+ * @return Array of strings and numbers.
171
172
  * @alias Blockly.utils.parsing.tokenizeInterpolation
172
173
  */
173
- const tokenizeInterpolation = function(message) {
174
+ export function tokenizeInterpolation(message: string): (string|number)[] {
174
175
  return tokenizeInterpolationInternal(message, true);
175
- };
176
- exports.tokenizeInterpolation = tokenizeInterpolation;
176
+ }
177
177
 
178
178
  /**
179
179
  * Replaces string table references in a message, if the message is a string.
180
180
  * For example, "%{bky_my_msg}" and "%{BKY_MY_MSG}" will both be replaced with
181
181
  * the value in Msg['MY_MSG'].
182
- * @param {string|?} message Message, which may be a string that contains
182
+ * @param message Message, which may be a string that contains
183
183
  * string table references.
184
- * @return {string} String with message references replaced.
184
+ * @return String with message references replaced.
185
185
  * @alias Blockly.utils.parsing.replaceMessageReferences
186
186
  */
187
- const replaceMessageReferences = function(message) {
187
+ export function replaceMessageReferences(message: string|
188
+ AnyDuringMigration): string {
188
189
  if (typeof message !== 'string') {
189
190
  return message;
190
191
  }
@@ -192,50 +193,50 @@ const replaceMessageReferences = function(message) {
192
193
  // When parseInterpolationTokens === false, interpolatedResult should be at
193
194
  // most length 1.
194
195
  return interpolatedResult.length ? String(interpolatedResult[0]) : '';
195
- };
196
- exports.replaceMessageReferences = replaceMessageReferences;
196
+ }
197
197
 
198
198
  /**
199
199
  * Validates that any %{MSG_KEY} references in the message refer to keys of
200
200
  * the Msg string table.
201
- * @param {string} message Text which might contain string table references.
202
- * @return {boolean} True if all message references have matching values.
201
+ * @param message Text which might contain string table references.
202
+ * @return True if all message references have matching values.
203
203
  * Otherwise, false.
204
204
  * @alias Blockly.utils.parsing.checkMessageReferences
205
205
  */
206
- const checkMessageReferences = function(message) {
206
+ export function checkMessageReferences(message: string): boolean {
207
207
  let validSoFar = true;
208
208
 
209
209
  const msgTable = Msg;
210
-
211
210
  // TODO (#1169): Implement support for other string tables,
212
211
  // prefixes other than BKY_.
213
212
  const m = message.match(/%{BKY_[A-Z]\w*}/ig);
214
- for (let i = 0; i < m.length; i++) {
215
- const msgKey = m[i].toUpperCase();
216
- if (msgTable[msgKey.slice(6, -1)] === undefined) {
217
- console.warn('No message string for ' + m[i] + ' in ' + message);
218
- validSoFar = false; // Continue to report other errors.
213
+ if (m) {
214
+ for (let i = 0; i < m.length; i++) {
215
+ const msgKey = m[i].toUpperCase();
216
+ if (msgTable[msgKey.slice(6, -1)] === undefined) {
217
+ console.warn('No message string for ' + m[i] + ' in ' + message);
218
+ validSoFar = false; // Continue to report other errors.
219
+ }
219
220
  }
220
221
  }
221
222
 
222
223
  return validSoFar;
223
- };
224
- exports.checkMessageReferences = checkMessageReferences;
224
+ }
225
225
 
226
226
  /**
227
227
  * Parse a block colour from a number or string, as provided in a block
228
228
  * definition.
229
- * @param {number|string} colour HSV hue value (0 to 360), #RRGGBB string,
229
+ * @param colour HSV hue value (0 to 360), #RRGGBB string,
230
230
  * or a message reference string pointing to one of those two values.
231
- * @return {{hue: ?number, hex: string}} An object containing the colour as
231
+ * @return An object containing the colour as
232
232
  * a #RRGGBB string, and the hue if the input was an HSV hue value.
233
233
  * @throws {Error} If the colour cannot be parsed.
234
234
  * @alias Blockly.utils.parsing.parseBlockColour
235
235
  */
236
- const parseBlockColour = function(colour) {
236
+ export function parseBlockColour(colour: number|
237
+ string): {hue: number|null, hex: string} {
237
238
  const dereferenced =
238
- (typeof colour === 'string') ? replaceMessageReferences(colour) : colour;
239
+ typeof colour === 'string' ? replaceMessageReferences(colour) : colour;
239
240
 
240
241
  const hue = Number(dereferenced);
241
242
  if (!isNaN(hue) && 0 <= hue && hue <= 360) {
@@ -257,5 +258,4 @@ const parseBlockColour = function(colour) {
257
258
  throw Error(errorMsg);
258
259
  }
259
260
  }
260
- };
261
- exports.parseBlockColour = parseBlockColour;
261
+ }
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2019 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Class for representing rectangular regions.
8
+ * @alias Blockly.utils.Rect
9
+ */
10
+ export declare class Rect {
11
+ top: number;
12
+ bottom: number;
13
+ left: number;
14
+ right: number;
15
+ /**
16
+ * @param top Top.
17
+ * @param bottom Bottom.
18
+ * @param left Left.
19
+ * @param right Right.
20
+ * @struct
21
+ */
22
+ constructor(top: number, bottom: number, left: number, right: number);
23
+ /**
24
+ * Tests whether this rectangle contains a x/y coordinate.
25
+ *
26
+ * @param x The x coordinate to test for containment.
27
+ * @param y The y coordinate to test for containment.
28
+ * @return Whether this rectangle contains given coordinate.
29
+ */
30
+ contains(x: number, y: number): boolean;
31
+ /**
32
+ * Tests whether this rectangle intersects the provided rectangle.
33
+ * Assumes that the coordinate system increases going down and left.
34
+ * @param other The other rectangle to check for intersection with.
35
+ * @return Whether this rectangle intersects the provided rectangle.
36
+ */
37
+ intersects(other: Rect): boolean;
38
+ }
@@ -9,7 +9,6 @@
9
9
  * These methods are not specific to Blockly, and could be factored out into
10
10
  * a JavaScript framework such as Closure.
11
11
  */
12
- 'use strict';
13
12
 
14
13
  /**
15
14
  * Utility methods for rectangle manipulation.
@@ -17,43 +16,34 @@
17
16
  * a JavaScript framework such as Closure.
18
17
  * @class
19
18
  */
20
- goog.module('Blockly.utils.Rect');
19
+ import * as goog from '../../closure/goog/goog.js';
20
+ goog.declareModuleId('Blockly.utils.Rect');
21
21
 
22
22
 
23
23
  /**
24
24
  * Class for representing rectangular regions.
25
25
  * @alias Blockly.utils.Rect
26
26
  */
27
- const Rect = class {
27
+ export class Rect {
28
28
  /**
29
- * @param {number} top Top.
30
- * @param {number} bottom Bottom.
31
- * @param {number} left Left.
32
- * @param {number} right Right.
29
+ * @param top Top.
30
+ * @param bottom Bottom.
31
+ * @param left Left.
32
+ * @param right Right.
33
33
  * @struct
34
34
  */
35
- constructor(top, bottom, left, right) {
36
- /** @type {number} */
37
- this.top = top;
38
-
39
- /** @type {number} */
40
- this.bottom = bottom;
41
-
42
- /** @type {number} */
43
- this.left = left;
44
-
45
- /** @type {number} */
46
- this.right = right;
47
- }
35
+ constructor(
36
+ public top: number, public bottom: number, public left: number,
37
+ public right: number) {}
48
38
 
49
39
  /**
50
40
  * Tests whether this rectangle contains a x/y coordinate.
51
41
  *
52
- * @param {number} x The x coordinate to test for containment.
53
- * @param {number} y The y coordinate to test for containment.
54
- * @return {boolean} Whether this rectangle contains given coordinate.
42
+ * @param x The x coordinate to test for containment.
43
+ * @param y The y coordinate to test for containment.
44
+ * @return Whether this rectangle contains given coordinate.
55
45
  */
56
- contains(x, y) {
46
+ contains(x: number, y: number): boolean {
57
47
  return x >= this.left && x <= this.right && y >= this.top &&
58
48
  y <= this.bottom;
59
49
  }
@@ -61,15 +51,12 @@ const Rect = class {
61
51
  /**
62
52
  * Tests whether this rectangle intersects the provided rectangle.
63
53
  * Assumes that the coordinate system increases going down and left.
64
- * @param {!Rect} other The other rectangle to check for
65
- * intersection with.
66
- * @return {boolean} Whether this rectangle intersects the provided rectangle.
54
+ * @param other The other rectangle to check for intersection with.
55
+ * @return Whether this rectangle intersects the provided rectangle.
67
56
  */
68
- intersects(other) {
57
+ intersects(other: Rect): boolean {
69
58
  return !(
70
59
  this.left > other.right || this.right < other.left ||
71
60
  this.top > other.bottom || this.bottom < other.top);
72
61
  }
73
- };
74
-
75
- exports.Rect = Rect;
62
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * A type used to create flag values.
8
+ * @alias Blockly.utils.Sentinel
9
+ */
10
+ export declare class Sentinel {
11
+ }
@@ -7,19 +7,17 @@
7
7
  /**
8
8
  * @fileoverview A type used to create flag values (e.g. SKIP_SETUP).
9
9
  */
10
- 'use strict';
11
10
 
12
11
  /**
13
12
  * A type used to create flag values.
14
13
  * @class
15
14
  */
16
- goog.module('Blockly.utils.Sentinel');
15
+ import * as goog from '../../closure/goog/goog.js';
16
+ goog.declareModuleId('Blockly.utils.Sentinel');
17
17
 
18
18
 
19
19
  /**
20
20
  * A type used to create flag values.
21
21
  * @alias Blockly.utils.Sentinel
22
22
  */
23
- class Sentinel {}
24
-
25
- exports.Sentinel = Sentinel;
23
+ export class Sentinel {}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2019 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Class for representing sizes consisting of a width and height.
8
+ * @alias Blockly.utils.Size
9
+ */
10
+ export declare class Size {
11
+ width: number;
12
+ height: number;
13
+ /**
14
+ * @param width Width.
15
+ * @param height Height.
16
+ * @struct
17
+ */
18
+ constructor(width: number, height: number);
19
+ /**
20
+ * Compares sizes for equality.
21
+ * @param a A Size.
22
+ * @param b A Size.
23
+ * @return True iff the sizes have equal widths and equal heights, or if both
24
+ * are null.
25
+ */
26
+ static equals(a: Size | null, b: Size | null): boolean;
27
+ }