blockly 8.20220331.0-beta.1 → 9.0.0-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 (857) hide show
  1. package/blockly.min.js +2004 -2269
  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 +7 -6
  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 +10 -3
  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 -720
  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} +31 -44
  93. package/core/events/events_block_delete.d.ts +36 -0
  94. package/core/events/{events_block_delete.js → events_block_delete.ts} +35 -48
  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.js → input.ts} +96 -119
  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} +234 -227
  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 -4
  542. package/core.js +1 -2
  543. package/dart.d.ts +1 -4
  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 +3 -11
  602. package/javascript.d.ts +1 -4
  603. package/javascript_compressed.js +314 -104
  604. package/javascript_compressed.js.map +1 -1
  605. package/lua.d.ts +1 -4
  606. package/lua_compressed.js +399 -81
  607. package/lua_compressed.js.map +1 -1
  608. package/msg/ab.js +10 -6
  609. package/msg/ace.js +10 -6
  610. package/msg/af.js +10 -6
  611. package/msg/am.js +10 -6
  612. package/msg/ar.js +10 -6
  613. package/msg/ast.js +10 -6
  614. package/msg/az.js +12 -8
  615. package/msg/ba.js +10 -6
  616. package/msg/bcc.js +10 -6
  617. package/msg/be-tarask.js +10 -6
  618. package/msg/be.js +14 -10
  619. package/msg/bg.js +10 -6
  620. package/msg/bn.js +10 -6
  621. package/msg/br.js +10 -6
  622. package/msg/bs.js +10 -6
  623. package/msg/ca.js +10 -6
  624. package/msg/cdo.js +10 -6
  625. package/msg/cs.js +25 -21
  626. package/msg/da.js +10 -6
  627. package/msg/de.js +11 -7
  628. package/msg/diq.js +11 -7
  629. package/msg/dty.js +10 -6
  630. package/msg/ee.js +10 -6
  631. package/msg/el.js +10 -6
  632. package/msg/en-gb.js +10 -6
  633. package/msg/en.js +10 -6
  634. package/msg/eo.js +11 -7
  635. package/msg/es.js +11 -7
  636. package/msg/et.js +10 -6
  637. package/msg/eu.js +10 -6
  638. package/msg/fa.js +11 -7
  639. package/msg/fi.js +10 -6
  640. package/msg/fo.js +10 -6
  641. package/msg/fr.js +14 -10
  642. package/msg/frr.js +10 -6
  643. package/msg/gl.js +10 -6
  644. package/msg/gn.js +10 -6
  645. package/msg/gor.js +10 -6
  646. package/msg/ha.js +10 -6
  647. package/msg/hak.js +10 -6
  648. package/msg/he.js +11 -7
  649. package/msg/hi.js +10 -6
  650. package/msg/hr.js +12 -8
  651. package/msg/hrx.js +10 -6
  652. package/msg/hu.js +10 -6
  653. package/msg/hy.js +12 -8
  654. package/msg/ia.js +10 -6
  655. package/msg/id.js +22 -18
  656. package/msg/ig.js +10 -6
  657. package/msg/inh.js +24 -20
  658. package/msg/is.js +10 -6
  659. package/msg/it.js +10 -6
  660. package/msg/ja.js +17 -13
  661. package/msg/ka.js +10 -6
  662. package/msg/kab.js +10 -6
  663. package/msg/kbd-cyrl.js +10 -6
  664. package/msg/km.js +10 -6
  665. package/msg/kn.js +10 -6
  666. package/msg/ko.js +10 -6
  667. package/msg/ksh.js +10 -6
  668. package/msg/ku-latn.js +10 -6
  669. package/msg/ky.js +10 -6
  670. package/msg/la.js +10 -6
  671. package/msg/lb.js +10 -6
  672. package/msg/lki.js +10 -6
  673. package/msg/lo.js +10 -6
  674. package/msg/lrc.js +10 -6
  675. package/msg/lt.js +10 -6
  676. package/msg/lv.js +39 -35
  677. package/msg/mg.js +10 -6
  678. package/msg/mk.js +10 -6
  679. package/msg/ml.js +10 -6
  680. package/msg/mnw.js +10 -6
  681. package/msg/ms.js +10 -6
  682. package/msg/my.js +10 -6
  683. package/msg/mzn.js +10 -6
  684. package/msg/nb.js +10 -6
  685. package/msg/ne.js +10 -6
  686. package/msg/nl.js +10 -6
  687. package/msg/oc.js +10 -6
  688. package/msg/olo.js +10 -6
  689. package/msg/pa.js +13 -9
  690. package/msg/pl.js +10 -6
  691. package/msg/pms.js +10 -6
  692. package/msg/ps.js +10 -6
  693. package/msg/pt-br.js +10 -6
  694. package/msg/pt.js +10 -6
  695. package/msg/ro.js +10 -6
  696. package/msg/ru.js +10 -6
  697. package/msg/sc.js +10 -6
  698. package/msg/sco.js +10 -6
  699. package/msg/sd.js +10 -6
  700. package/msg/shn.js +10 -6
  701. package/msg/si.js +10 -6
  702. package/msg/sk.js +10 -6
  703. package/msg/skr-arab.js +10 -6
  704. package/msg/sl.js +10 -6
  705. package/msg/smn.js +440 -0
  706. package/msg/sq.js +10 -6
  707. package/msg/sr-latn.js +10 -6
  708. package/msg/sr.js +10 -6
  709. package/msg/sv.js +10 -6
  710. package/msg/sw.js +10 -6
  711. package/msg/ta.js +10 -6
  712. package/msg/tcy.js +10 -6
  713. package/msg/te.js +11 -7
  714. package/msg/th.js +10 -6
  715. package/msg/ti.js +10 -6
  716. package/msg/tl.js +10 -6
  717. package/msg/tlh.js +10 -6
  718. package/msg/tr.js +10 -6
  719. package/msg/ug-arab.js +10 -6
  720. package/msg/uk.js +10 -6
  721. package/msg/ur.js +10 -6
  722. package/msg/uz.js +10 -6
  723. package/msg/vi.js +10 -6
  724. package/msg/xmf.js +10 -6
  725. package/msg/yo.js +10 -6
  726. package/msg/yue.js +11 -7
  727. package/msg/zgh.js +10 -6
  728. package/msg/zh-hans.js +13 -9
  729. package/msg/zh-hant.js +13 -9
  730. package/package.json +5 -5
  731. package/php.d.ts +1 -4
  732. package/php_compressed.js +322 -93
  733. package/php_compressed.js.map +1 -1
  734. package/python.d.ts +1 -4
  735. package/python_compressed.js +237 -90
  736. package/python_compressed.js.map +1 -1
  737. package/blockly.d.ts +0 -25607
  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/interfaces/i_ast_node_location_svg.js +0 -45
  771. package/core/interfaces/i_ast_node_location_with_block.js +0 -41
  772. package/core/interfaces/i_autohideable.js +0 -40
  773. package/core/interfaces/i_block_dragger.js +0 -66
  774. package/core/interfaces/i_bounded_element.js +0 -45
  775. package/core/interfaces/i_bubble.js +0 -95
  776. package/core/interfaces/i_collapsible_toolbox_item.js +0 -53
  777. package/core/interfaces/i_connection_checker.js +0 -104
  778. package/core/interfaces/i_contextmenu.js +0 -32
  779. package/core/interfaces/i_copyable.js +0 -49
  780. package/core/interfaces/i_delete_area.js +0 -50
  781. package/core/interfaces/i_drag_target.js +0 -88
  782. package/core/interfaces/i_flyout.js +0 -201
  783. package/core/interfaces/i_keyboard_accessible.js +0 -38
  784. package/core/interfaces/i_metrics_manager.js +0 -154
  785. package/core/interfaces/i_positionable.js +0 -51
  786. package/core/interfaces/i_selectable.js +0 -51
  787. package/core/interfaces/i_selectable_toolbox_item.js +0 -73
  788. package/core/interfaces/i_serializer.js +0 -77
  789. package/core/interfaces/i_styleable.js +0 -39
  790. package/core/interfaces/i_toolbox.js +0 -142
  791. package/core/interfaces/i_toolbox_item.js +0 -85
  792. package/core/marker_manager.js +0 -213
  793. package/core/menuitem.js +0 -292
  794. package/core/names.js +0 -289
  795. package/core/registry.js +0 -384
  796. package/core/renderers/common/block_rendering.js +0 -170
  797. package/core/renderers/common/constants.js +0 -1250
  798. package/core/renderers/common/i_path_object.js +0 -162
  799. package/core/renderers/common/marker_svg.js +0 -721
  800. package/core/renderers/common/path_object.js +0 -283
  801. package/core/renderers/common/renderer.js +0 -305
  802. package/core/renderers/geras/constants.js +0 -73
  803. package/core/renderers/geras/geras.js +0 -36
  804. package/core/renderers/geras/measurables/inline_input.js +0 -58
  805. package/core/renderers/geras/measurables/statement_input.js +0 -57
  806. package/core/renderers/geras/renderer.js +0 -149
  807. package/core/renderers/measurables/base.js +0 -64
  808. package/core/renderers/measurables/bottom_row.js +0 -138
  809. package/core/renderers/measurables/connection.js +0 -56
  810. package/core/renderers/measurables/external_value_input.js +0 -70
  811. package/core/renderers/measurables/field.js +0 -71
  812. package/core/renderers/measurables/in_row_spacer.js +0 -47
  813. package/core/renderers/measurables/input_connection.js +0 -75
  814. package/core/renderers/measurables/next_connection.js +0 -50
  815. package/core/renderers/measurables/output_connection.js +0 -61
  816. package/core/renderers/measurables/previous_connection.js +0 -50
  817. package/core/renderers/measurables/round_corner.js +0 -52
  818. package/core/renderers/measurables/row.js +0 -247
  819. package/core/renderers/measurables/spacer_row.js +0 -69
  820. package/core/renderers/measurables/square_corner.js +0 -50
  821. package/core/renderers/measurables/top_row.js +0 -143
  822. package/core/renderers/measurables/types.js +0 -353
  823. package/core/renderers/minimalist/drawer.js +0 -42
  824. package/core/renderers/minimalist/info.js +0 -54
  825. package/core/renderers/minimalist/minimalist.js +0 -26
  826. package/core/renderers/minimalist/renderer.js +0 -80
  827. package/core/renderers/thrasos/renderer.js +0 -53
  828. package/core/renderers/thrasos/thrasos.js +0 -22
  829. package/core/renderers/zelos/marker_svg.js +0 -179
  830. package/core/renderers/zelos/measurables/bottom_row.js +0 -66
  831. package/core/renderers/zelos/measurables/row_elements.js +0 -46
  832. package/core/renderers/zelos/path_object.js +0 -247
  833. package/core/renderers/zelos/renderer.js +0 -147
  834. package/core/renderers/zelos/zelos.js +0 -38
  835. package/core/serialization/exceptions.js +0 -144
  836. package/core/shortcut_registry.js +0 -366
  837. package/core/theme/themes.js +0 -23
  838. package/core/theme.js +0 -228
  839. package/core/theme_manager.js +0 -211
  840. package/core/toolbox/category.js +0 -751
  841. package/core/toolbox/collapsible_category.js +0 -311
  842. package/core/toolbox/separator.js +0 -133
  843. package/core/toolbox/toolbox_item.js +0 -173
  844. package/core/touch.js +0 -285
  845. package/core/utils/coordinate.js +0 -138
  846. package/core/utils/global.js +0 -41
  847. package/core/utils/keycodes.js +0 -172
  848. package/core/utils/metrics.js +0 -154
  849. package/core/utils/svg.js +0 -186
  850. package/core/utils/toolbox.js +0 -459
  851. package/core/utils/useragent.js +0 -197
  852. package/core/utils.js +0 -383
  853. package/core/variable_model.js +0 -96
  854. package/core/widgetdiv.js +0 -290
  855. package/core/workspace.js +0 -836
  856. package/core/workspace_comment.js +0 -400
  857. package/core/workspace_dragger.js +0 -115
@@ -0,0 +1,398 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2017 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ /**
8
+ * @fileoverview Object representing a code comment on the workspace.
9
+ */
10
+
11
+ /**
12
+ * Object representing a code comment on the workspace.
13
+ * @class
14
+ */
15
+ import * as goog from '../closure/goog/goog.js';
16
+ goog.declareModuleId('Blockly.WorkspaceComment');
17
+
18
+ // Unused import preserved for side-effects. Remove if unneeded.
19
+ // import './events/events_comment_change.js';
20
+ // Unused import preserved for side-effects. Remove if unneeded.
21
+ // import './events/events_comment_create.js';
22
+ // Unused import preserved for side-effects. Remove if unneeded.
23
+ // import './events/events_comment_delete.js';
24
+
25
+ import type {CommentMove} from './events/events_comment_move.js';
26
+ import * as eventUtils from './events/utils.js';
27
+ import {Coordinate} from './utils/coordinate.js';
28
+ import * as idGenerator from './utils/idgenerator.js';
29
+ import * as xml from './utils/xml.js';
30
+ import type {Workspace} from './workspace.js';
31
+
32
+
33
+ /**
34
+ * Class for a workspace comment.
35
+ * @alias Blockly.WorkspaceComment
36
+ */
37
+ export class WorkspaceComment {
38
+ id: string;
39
+ protected xy_: Coordinate;
40
+ protected height_: number;
41
+ protected width_: number;
42
+ protected RTL: boolean;
43
+
44
+ private deletable_ = true;
45
+
46
+ private movable_ = true;
47
+
48
+ private editable_ = true;
49
+ protected content_: string;
50
+
51
+ /** Whether this comment has been disposed. */
52
+ protected disposed_ = false;
53
+ /** @internal */
54
+ isComment = true;
55
+
56
+ /**
57
+ * @param workspace The block's workspace.
58
+ * @param content The content of this workspace comment.
59
+ * @param height Height of the comment.
60
+ * @param width Width of the comment.
61
+ * @param opt_id Optional ID. Use this ID if provided, otherwise create a new
62
+ * ID.
63
+ */
64
+ constructor(
65
+ public workspace: Workspace, content: string, height: number,
66
+ width: number, opt_id?: string) {
67
+ this.id = opt_id && !workspace.getCommentById(opt_id) ?
68
+ opt_id :
69
+ idGenerator.genUid();
70
+
71
+ workspace.addTopComment(this);
72
+
73
+ /**
74
+ * The comment's position in workspace units. (0, 0) is at the workspace's
75
+ * origin; scale does not change this value.
76
+ */
77
+ this.xy_ = new Coordinate(0, 0);
78
+
79
+ /**
80
+ * The comment's height in workspace units. Scale does not change this
81
+ * value.
82
+ */
83
+ this.height_ = height;
84
+
85
+ /**
86
+ * The comment's width in workspace units. Scale does not change this
87
+ * value.
88
+ */
89
+ this.width_ = width;
90
+
91
+ this.RTL = workspace.RTL;
92
+
93
+ this.content_ = content;
94
+
95
+ WorkspaceComment.fireCreateEvent(this);
96
+ }
97
+
98
+ /**
99
+ * Dispose of this comment.
100
+ * @internal
101
+ */
102
+ dispose() {
103
+ if (this.disposed_) {
104
+ return;
105
+ }
106
+
107
+ if (eventUtils.isEnabled()) {
108
+ eventUtils.fire(new (eventUtils.get(eventUtils.COMMENT_DELETE))!(this));
109
+ }
110
+ // Remove from the list of top comments and the comment database.
111
+ this.workspace.removeTopComment(this);
112
+ this.disposed_ = true;
113
+ }
114
+
115
+ // Height, width, x, and y are all stored on even non-rendered comments, to
116
+ // preserve state if you pass the contents through a headless workspace.
117
+
118
+ /**
119
+ * Get comment height.
120
+ * @return Comment height.
121
+ * @internal
122
+ */
123
+ getHeight(): number {
124
+ return this.height_;
125
+ }
126
+
127
+ /**
128
+ * Set comment height.
129
+ * @param height Comment height.
130
+ * @internal
131
+ */
132
+ setHeight(height: number) {
133
+ this.height_ = height;
134
+ }
135
+
136
+ /**
137
+ * Get comment width.
138
+ * @return Comment width.
139
+ * @internal
140
+ */
141
+ getWidth(): number {
142
+ return this.width_;
143
+ }
144
+
145
+ /**
146
+ * Set comment width.
147
+ * @param width comment width.
148
+ * @internal
149
+ */
150
+ setWidth(width: number) {
151
+ this.width_ = width;
152
+ }
153
+
154
+ /**
155
+ * Get stored location.
156
+ * @return The comment's stored location.
157
+ * This is not valid if the comment is currently being dragged.
158
+ * @internal
159
+ */
160
+ getXY(): Coordinate {
161
+ return new Coordinate(this.xy_.x, this.xy_.y);
162
+ }
163
+
164
+ /**
165
+ * Move a comment by a relative offset.
166
+ * @param dx Horizontal offset, in workspace units.
167
+ * @param dy Vertical offset, in workspace units.
168
+ * @internal
169
+ */
170
+ moveBy(dx: number, dy: number) {
171
+ const event =
172
+ new (eventUtils.get(eventUtils.COMMENT_MOVE))!(this) as CommentMove;
173
+ this.xy_.translate(dx, dy);
174
+ event.recordNew();
175
+ eventUtils.fire(event);
176
+ }
177
+
178
+ /**
179
+ * Get whether this comment is deletable or not.
180
+ * @return True if deletable.
181
+ * @internal
182
+ */
183
+ isDeletable(): boolean {
184
+ return this.deletable_ &&
185
+ !(this.workspace && this.workspace.options.readOnly);
186
+ }
187
+
188
+ /**
189
+ * Set whether this comment is deletable or not.
190
+ * @param deletable True if deletable.
191
+ * @internal
192
+ */
193
+ setDeletable(deletable: boolean) {
194
+ this.deletable_ = deletable;
195
+ }
196
+
197
+ /**
198
+ * Get whether this comment is movable or not.
199
+ * @return True if movable.
200
+ * @internal
201
+ */
202
+ isMovable(): boolean {
203
+ return this.movable_ &&
204
+ !(this.workspace && this.workspace.options.readOnly);
205
+ }
206
+
207
+ /**
208
+ * Set whether this comment is movable or not.
209
+ * @param movable True if movable.
210
+ * @internal
211
+ */
212
+ setMovable(movable: boolean) {
213
+ this.movable_ = movable;
214
+ }
215
+
216
+ /**
217
+ * Get whether this comment is editable or not.
218
+ * @return True if editable.
219
+ */
220
+ isEditable(): boolean {
221
+ return this.editable_ &&
222
+ !(this.workspace && this.workspace.options.readOnly);
223
+ }
224
+
225
+ /**
226
+ * Set whether this comment is editable or not.
227
+ * @param editable True if editable.
228
+ */
229
+ setEditable(editable: boolean) {
230
+ this.editable_ = editable;
231
+ }
232
+
233
+ /**
234
+ * Returns this comment's text.
235
+ * @return Comment text.
236
+ * @internal
237
+ */
238
+ getContent(): string {
239
+ return this.content_;
240
+ }
241
+
242
+ /**
243
+ * Set this comment's content.
244
+ * @param content Comment content.
245
+ * @internal
246
+ */
247
+ setContent(content: string) {
248
+ if (this.content_ !== content) {
249
+ eventUtils.fire(new (eventUtils.get(eventUtils.COMMENT_CHANGE))!
250
+ (this, this.content_, content));
251
+ this.content_ = content;
252
+ }
253
+ }
254
+
255
+ /**
256
+ * Encode a comment subtree as XML with XY coordinates.
257
+ * @param opt_noId True if the encoder should skip the comment ID.
258
+ * @return Tree of XML elements.
259
+ * @internal
260
+ */
261
+ toXmlWithXY(opt_noId?: boolean): Element {
262
+ const element = this.toXml(opt_noId);
263
+ // AnyDuringMigration because: Argument of type 'number' is not assignable
264
+ // to parameter of type 'string'.
265
+ element.setAttribute('x', Math.round(this.xy_.x) as AnyDuringMigration);
266
+ // AnyDuringMigration because: Argument of type 'number' is not assignable
267
+ // to parameter of type 'string'.
268
+ element.setAttribute('y', Math.round(this.xy_.y) as AnyDuringMigration);
269
+ // AnyDuringMigration because: Argument of type 'number' is not assignable
270
+ // to parameter of type 'string'.
271
+ element.setAttribute('h', this.height_ as AnyDuringMigration);
272
+ // AnyDuringMigration because: Argument of type 'number' is not assignable
273
+ // to parameter of type 'string'.
274
+ element.setAttribute('w', this.width_ as AnyDuringMigration);
275
+ return element;
276
+ }
277
+
278
+ /**
279
+ * Encode a comment subtree as XML, but don't serialize the XY coordinates.
280
+ * This method avoids some expensive metrics-related calls that are made in
281
+ * toXmlWithXY().
282
+ * @param opt_noId True if the encoder should skip the comment ID.
283
+ * @return Tree of XML elements.
284
+ * @internal
285
+ */
286
+ toXml(opt_noId?: boolean): Element {
287
+ const commentElement = xml.createElement('comment');
288
+ if (!opt_noId) {
289
+ commentElement.id = this.id;
290
+ }
291
+ commentElement.textContent = this.getContent();
292
+ return commentElement;
293
+ }
294
+
295
+ /**
296
+ * Fire a create event for the given workspace comment, if comments are
297
+ * enabled.
298
+ * @param comment The comment that was just created.
299
+ * @internal
300
+ */
301
+ static fireCreateEvent(comment: WorkspaceComment) {
302
+ if (eventUtils.isEnabled()) {
303
+ const existingGroup = eventUtils.getGroup();
304
+ if (!existingGroup) {
305
+ eventUtils.setGroup(true);
306
+ }
307
+ try {
308
+ eventUtils.fire(new (eventUtils.get(eventUtils.COMMENT_CREATE))!
309
+ (comment));
310
+ } finally {
311
+ if (!existingGroup) {
312
+ eventUtils.setGroup(false);
313
+ }
314
+ }
315
+ }
316
+ }
317
+
318
+ /**
319
+ * Decode an XML comment tag and create a comment on the workspace.
320
+ * @param xmlComment XML comment element.
321
+ * @param workspace The workspace.
322
+ * @return The created workspace comment.
323
+ * @internal
324
+ */
325
+ static fromXml(xmlComment: Element, workspace: Workspace): WorkspaceComment {
326
+ const info = WorkspaceComment.parseAttributes(xmlComment);
327
+
328
+ const comment =
329
+ new WorkspaceComment(workspace, info.content, info.h, info.w, info.id);
330
+
331
+ // AnyDuringMigration because: Argument of type 'string | null' is not
332
+ // assignable to parameter of type 'string'.
333
+ const commentX =
334
+ parseInt(xmlComment.getAttribute('x') as AnyDuringMigration, 10);
335
+ // AnyDuringMigration because: Argument of type 'string | null' is not
336
+ // assignable to parameter of type 'string'.
337
+ const commentY =
338
+ parseInt(xmlComment.getAttribute('y') as AnyDuringMigration, 10);
339
+ if (!isNaN(commentX) && !isNaN(commentY)) {
340
+ comment.moveBy(commentX, commentY);
341
+ }
342
+
343
+ WorkspaceComment.fireCreateEvent(comment);
344
+ return comment;
345
+ }
346
+
347
+ /**
348
+ * Decode an XML comment tag and return the results in an object.
349
+ * @param xml XML comment element.
350
+ * @return An object containing the id, size, position, and comment string.
351
+ * @internal
352
+ */
353
+ static parseAttributes(xml: Element): {
354
+ id: string,
355
+ w: number,
356
+ h: number,
357
+ x: number,
358
+ y: number,
359
+ content: string
360
+ } {
361
+ const xmlH = xml.getAttribute('h');
362
+ const xmlW = xml.getAttribute('w');
363
+
364
+ return {
365
+ // @type {string}
366
+ // AnyDuringMigration because: Type 'string | null' is not assignable to
367
+ // type 'string'.
368
+ id: xml.getAttribute('id') as
369
+ AnyDuringMigration, // The height of the comment in workspace units,
370
+ // or 100 if not specified.
371
+ // @type {number}
372
+ h: xmlH ? parseInt(xmlH, 10) :
373
+ 100, // The width of the comment in workspace units, or 100 if
374
+ // not specified.
375
+ // @type {number}
376
+ w: xmlW ? parseInt(xmlW, 10) :
377
+ 100, // The x position of the comment in workspace coordinates,
378
+ // or NaN if not
379
+ // specified in the XML.
380
+ // @type {number}
381
+ // AnyDuringMigration because: Argument of type 'string | null' is not
382
+ // assignable to parameter of type 'string'.
383
+ x: parseInt(
384
+ xml.getAttribute('x') as AnyDuringMigration,
385
+ 10), // The y position of the comment in workspace coordinates, or
386
+ // NaN if not
387
+ // specified in the XML.
388
+ // @type {number}
389
+ // AnyDuringMigration because: Argument of type 'string | null' is not
390
+ // assignable to parameter of type 'string'.
391
+ y: parseInt(
392
+ xml.getAttribute('y') as AnyDuringMigration, 10), // @type {string}
393
+ // AnyDuringMigration because: Type 'string | null' is not assignable to
394
+ // type 'string'.
395
+ content: xml.textContent as AnyDuringMigration,
396
+ };
397
+ }
398
+ }