blockly 12.3.0 → 12.4.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 (1636) hide show
  1. package/.prettierignore +30 -0
  2. package/.prettierrc.js +15 -0
  3. package/api-extractor.json +390 -0
  4. package/appengine/.gcloudignore +20 -0
  5. package/appengine/README.txt +42 -0
  6. package/appengine/add_timestamps.py +69 -0
  7. package/appengine/app.yaml +106 -0
  8. package/appengine/apple-touch-icon.png +0 -0
  9. package/appengine/blockly_compressed.js +11 -0
  10. package/appengine/expiration.py +52 -0
  11. package/appengine/favicon.ico +0 -0
  12. package/appengine/index.yaml +11 -0
  13. package/appengine/main.py +39 -0
  14. package/appengine/redirect.html +107 -0
  15. package/appengine/requirements.txt +1 -0
  16. package/appengine/robots.txt +2 -0
  17. package/appengine/storage.js +190 -0
  18. package/appengine/storage.py +125 -0
  19. package/blocks/blocks.ts +44 -0
  20. package/blocks/lists.ts +1065 -0
  21. package/blocks/logic.ts +712 -0
  22. package/blocks/loops.ts +408 -0
  23. package/blocks/math.ts +591 -0
  24. package/blocks/procedures.ts +1366 -0
  25. package/blocks/text.ts +1001 -0
  26. package/blocks/variables.ts +181 -0
  27. package/blocks/variables_dynamic.ts +192 -0
  28. package/core/any_aliases.ts +8 -0
  29. package/core/block.ts +2511 -0
  30. package/core/block_animations.ts +233 -0
  31. package/core/block_flyout_inflater.ts +283 -0
  32. package/core/block_svg.ts +1873 -0
  33. package/core/blockly.ts +644 -0
  34. package/core/blockly_options.ts +71 -0
  35. package/core/blocks.ts +18 -0
  36. package/core/browser_events.ts +256 -0
  37. package/core/bubbles/bubble.ts +732 -0
  38. package/core/bubbles/mini_workspace_bubble.ts +292 -0
  39. package/core/bubbles/text_bubble.ts +112 -0
  40. package/core/bubbles/textinput_bubble.ts +296 -0
  41. package/core/bubbles.ts +12 -0
  42. package/core/bump_objects.ts +188 -0
  43. package/core/button_flyout_inflater.ts +76 -0
  44. package/core/clipboard/block_paster.ts +154 -0
  45. package/core/clipboard/registry.ts +31 -0
  46. package/core/clipboard/workspace_comment_paster.ts +95 -0
  47. package/core/clipboard.ts +197 -0
  48. package/core/comments/collapse_comment_bar_button.ts +102 -0
  49. package/core/comments/comment_bar_button.ts +105 -0
  50. package/core/comments/comment_editor.ts +220 -0
  51. package/core/comments/comment_view.ts +773 -0
  52. package/core/comments/delete_comment_bar_button.ts +106 -0
  53. package/core/comments/rendered_workspace_comment.ts +361 -0
  54. package/core/comments/workspace_comment.ts +247 -0
  55. package/core/comments.ts +13 -0
  56. package/core/common.ts +347 -0
  57. package/core/component_manager.ts +247 -0
  58. package/core/config.ts +65 -0
  59. package/core/connection.ts +807 -0
  60. package/core/connection_checker.ts +348 -0
  61. package/core/connection_db.ts +297 -0
  62. package/core/connection_type.ts +21 -0
  63. package/core/constants.ts +23 -0
  64. package/core/contextmenu.ts +295 -0
  65. package/core/contextmenu_items.ts +684 -0
  66. package/core/contextmenu_registry.ts +278 -0
  67. package/core/css.ts +518 -0
  68. package/core/delete_area.ts +77 -0
  69. package/core/dialog.ts +167 -0
  70. package/core/drag_target.ts +97 -0
  71. package/core/dragging/block_drag_strategy.ts +523 -0
  72. package/core/dragging/bubble_drag_strategy.ts +49 -0
  73. package/core/dragging/comment_drag_strategy.ts +92 -0
  74. package/core/dragging/dragger.ts +174 -0
  75. package/core/dragging.ts +12 -0
  76. package/core/dropdowndiv.ts +792 -0
  77. package/core/events/events.ts +109 -0
  78. package/core/events/events_abstract.ts +129 -0
  79. package/core/events/events_block_base.ts +87 -0
  80. package/core/events/events_block_change.ts +259 -0
  81. package/core/events/events_block_create.ts +185 -0
  82. package/core/events/events_block_delete.ts +182 -0
  83. package/core/events/events_block_drag.ts +116 -0
  84. package/core/events/events_block_field_intermediate_change.ts +166 -0
  85. package/core/events/events_block_move.ts +306 -0
  86. package/core/events/events_bubble_open.ts +121 -0
  87. package/core/events/events_click.ts +110 -0
  88. package/core/events/events_comment_base.ts +126 -0
  89. package/core/events/events_comment_change.ts +156 -0
  90. package/core/events/events_comment_collapse.ts +103 -0
  91. package/core/events/events_comment_create.ts +114 -0
  92. package/core/events/events_comment_delete.ts +113 -0
  93. package/core/events/events_comment_drag.ts +99 -0
  94. package/core/events/events_comment_move.ts +206 -0
  95. package/core/events/events_comment_resize.ts +169 -0
  96. package/core/events/events_selected.ts +97 -0
  97. package/core/events/events_theme_change.ts +84 -0
  98. package/core/events/events_toolbox_item_select.ts +96 -0
  99. package/core/events/events_trashcan_open.ts +87 -0
  100. package/core/events/events_ui_base.ts +47 -0
  101. package/core/events/events_var_base.ts +88 -0
  102. package/core/events/events_var_create.ts +131 -0
  103. package/core/events/events_var_delete.ts +124 -0
  104. package/core/events/events_var_rename.ts +133 -0
  105. package/core/events/events_var_type_change.ts +122 -0
  106. package/core/events/events_viewport.ts +149 -0
  107. package/core/events/predicates.ts +166 -0
  108. package/core/events/type.ts +87 -0
  109. package/core/events/utils.ts +455 -0
  110. package/core/events/workspace_events.ts +46 -0
  111. package/core/extensions.ts +497 -0
  112. package/core/field.ts +1445 -0
  113. package/core/field_checkbox.ts +266 -0
  114. package/core/field_dropdown.ts +907 -0
  115. package/core/field_image.ts +307 -0
  116. package/core/field_input.ts +826 -0
  117. package/core/field_label.ts +150 -0
  118. package/core/field_label_serializable.ts +73 -0
  119. package/core/field_number.ts +381 -0
  120. package/core/field_registry.ts +115 -0
  121. package/core/field_textinput.ts +125 -0
  122. package/core/field_variable.ts +654 -0
  123. package/core/flyout_base.ts +1013 -0
  124. package/core/flyout_button.ts +447 -0
  125. package/core/flyout_horizontal.ts +375 -0
  126. package/core/flyout_item.ts +33 -0
  127. package/core/flyout_metrics_manager.ts +90 -0
  128. package/core/flyout_navigator.ts +24 -0
  129. package/core/flyout_separator.ts +94 -0
  130. package/core/flyout_vertical.ts +354 -0
  131. package/core/focus_manager.ts +675 -0
  132. package/core/generator.ts +611 -0
  133. package/core/gesture.ts +1190 -0
  134. package/core/grid.ts +267 -0
  135. package/core/icons/comment_icon.ts +429 -0
  136. package/core/icons/exceptions.ts +23 -0
  137. package/core/icons/icon.ts +204 -0
  138. package/core/icons/icon_types.ts +32 -0
  139. package/core/icons/mutator_icon.ts +360 -0
  140. package/core/icons/registry.ts +33 -0
  141. package/core/icons/warning_icon.ts +226 -0
  142. package/core/icons.ts +24 -0
  143. package/core/inject.ts +332 -0
  144. package/core/inputs/align.ts +14 -0
  145. package/core/inputs/dummy_input.ts +26 -0
  146. package/core/inputs/end_row_input.ts +31 -0
  147. package/core/inputs/input.ts +317 -0
  148. package/core/inputs/input_types.ts +27 -0
  149. package/core/inputs/statement_input.ts +34 -0
  150. package/core/inputs/value_input.ts +30 -0
  151. package/core/inputs.ts +23 -0
  152. package/core/insertion_marker_previewer.ts +268 -0
  153. package/core/interfaces/i_autohideable.ts +27 -0
  154. package/core/interfaces/i_bounded_element.ts +31 -0
  155. package/core/interfaces/i_bubble.ts +64 -0
  156. package/core/interfaces/i_collapsible_toolbox_item.ts +33 -0
  157. package/core/interfaces/i_comment_icon.ts +47 -0
  158. package/core/interfaces/i_component.ts +19 -0
  159. package/core/interfaces/i_connection_checker.ts +101 -0
  160. package/core/interfaces/i_connection_previewer.ts +50 -0
  161. package/core/interfaces/i_contextmenu.ts +21 -0
  162. package/core/interfaces/i_copyable.ts +39 -0
  163. package/core/interfaces/i_deletable.ts +35 -0
  164. package/core/interfaces/i_delete_area.ts +28 -0
  165. package/core/interfaces/i_drag_target.ts +67 -0
  166. package/core/interfaces/i_draggable.ts +73 -0
  167. package/core/interfaces/i_dragger.ts +35 -0
  168. package/core/interfaces/i_flyout.ts +190 -0
  169. package/core/interfaces/i_flyout_inflater.ts +51 -0
  170. package/core/interfaces/i_focusable_node.ts +120 -0
  171. package/core/interfaces/i_focusable_tree.ts +144 -0
  172. package/core/interfaces/i_has_bubble.ts +37 -0
  173. package/core/interfaces/i_icon.ts +116 -0
  174. package/core/interfaces/i_keyboard_accessible.ts +22 -0
  175. package/core/interfaces/i_legacy_procedure_blocks.ts +51 -0
  176. package/core/interfaces/i_metrics_manager.ts +150 -0
  177. package/core/interfaces/i_movable.ts +19 -0
  178. package/core/interfaces/i_navigation_policy.ts +69 -0
  179. package/core/interfaces/i_observable.ts +28 -0
  180. package/core/interfaces/i_parameter_model.ts +51 -0
  181. package/core/interfaces/i_paster.ts +25 -0
  182. package/core/interfaces/i_positionable.ts +33 -0
  183. package/core/interfaces/i_procedure_block.ts +29 -0
  184. package/core/interfaces/i_procedure_map.ts +18 -0
  185. package/core/interfaces/i_procedure_model.ts +71 -0
  186. package/core/interfaces/i_registrable.ts +12 -0
  187. package/core/interfaces/i_rendered_element.ts +19 -0
  188. package/core/interfaces/i_selectable.ts +41 -0
  189. package/core/interfaces/i_selectable_toolbox_item.ts +63 -0
  190. package/core/interfaces/i_serializable.ts +32 -0
  191. package/core/interfaces/i_serializer.ts +51 -0
  192. package/core/interfaces/i_styleable.ts +26 -0
  193. package/core/interfaces/i_toolbox.ts +121 -0
  194. package/core/interfaces/i_toolbox_item.ts +83 -0
  195. package/core/interfaces/i_variable_backed_parameter_model.ts +23 -0
  196. package/core/interfaces/i_variable_map.ts +65 -0
  197. package/core/interfaces/i_variable_model.ts +57 -0
  198. package/core/internal_constants.ts +47 -0
  199. package/core/keyboard_nav/block_comment_navigation_policy.ts +76 -0
  200. package/core/keyboard_nav/block_navigation_policy.ts +213 -0
  201. package/core/keyboard_nav/comment_bar_button_navigation_policy.ts +88 -0
  202. package/core/keyboard_nav/comment_editor_navigation_policy.ts +54 -0
  203. package/core/keyboard_nav/connection_navigation_policy.ts +155 -0
  204. package/core/keyboard_nav/field_navigation_policy.ts +85 -0
  205. package/core/keyboard_nav/flyout_button_navigation_policy.ts +76 -0
  206. package/core/keyboard_nav/flyout_navigation_policy.ts +111 -0
  207. package/core/keyboard_nav/flyout_separator_navigation_policy.ts +53 -0
  208. package/core/keyboard_nav/icon_navigation_policy.ts +93 -0
  209. package/core/keyboard_nav/line_cursor.ts +414 -0
  210. package/core/keyboard_nav/marker.ts +86 -0
  211. package/core/keyboard_nav/workspace_comment_navigation_policy.ts +77 -0
  212. package/core/keyboard_nav/workspace_navigation_policy.ts +77 -0
  213. package/core/keyboard_navigation_controller.ts +63 -0
  214. package/core/label_flyout_inflater.ts +75 -0
  215. package/core/layer_manager.ts +229 -0
  216. package/core/layers.ts +17 -0
  217. package/core/main.ts +31 -0
  218. package/core/marker_manager.ts +116 -0
  219. package/core/menu.ts +486 -0
  220. package/core/menu_separator.ts +38 -0
  221. package/core/menuitem.ts +289 -0
  222. package/core/metrics_manager.ts +486 -0
  223. package/core/msg.ts +27 -0
  224. package/core/names.ts +275 -0
  225. package/core/navigator.ts +123 -0
  226. package/core/observable_procedure_map.ts +66 -0
  227. package/core/options.ts +377 -0
  228. package/core/positionable_helpers.ts +186 -0
  229. package/core/procedures.ts +622 -0
  230. package/core/registry.ts +400 -0
  231. package/core/render_management.ts +193 -0
  232. package/core/rendered_connection.ts +690 -0
  233. package/core/renderers/common/block_rendering.ts +122 -0
  234. package/core/renderers/common/constants.ts +1226 -0
  235. package/core/renderers/common/drawer.ts +511 -0
  236. package/core/renderers/common/i_path_object.ts +109 -0
  237. package/core/renderers/common/info.ts +768 -0
  238. package/core/renderers/common/path_object.ts +260 -0
  239. package/core/renderers/common/renderer.ts +236 -0
  240. package/core/renderers/geras/constants.ts +42 -0
  241. package/core/renderers/geras/drawer.ts +166 -0
  242. package/core/renderers/geras/geras.ts +31 -0
  243. package/core/renderers/geras/highlight_constants.ts +342 -0
  244. package/core/renderers/geras/highlighter.ts +312 -0
  245. package/core/renderers/geras/info.ts +476 -0
  246. package/core/renderers/geras/measurables/inline_input.ts +36 -0
  247. package/core/renderers/geras/measurables/statement_input.ts +35 -0
  248. package/core/renderers/geras/path_object.ts +121 -0
  249. package/core/renderers/geras/renderer.ts +127 -0
  250. package/core/renderers/measurables/base.ts +40 -0
  251. package/core/renderers/measurables/bottom_row.ts +103 -0
  252. package/core/renderers/measurables/connection.ts +41 -0
  253. package/core/renderers/measurables/external_value_input.ts +51 -0
  254. package/core/renderers/measurables/field.ts +48 -0
  255. package/core/renderers/measurables/hat.ts +32 -0
  256. package/core/renderers/measurables/icon.ts +40 -0
  257. package/core/renderers/measurables/in_row_spacer.ts +36 -0
  258. package/core/renderers/measurables/inline_input.ts +61 -0
  259. package/core/renderers/measurables/input_connection.ts +56 -0
  260. package/core/renderers/measurables/input_row.ts +62 -0
  261. package/core/renderers/measurables/jagged_edge.ts +35 -0
  262. package/core/renderers/measurables/next_connection.ts +41 -0
  263. package/core/renderers/measurables/output_connection.ts +42 -0
  264. package/core/renderers/measurables/previous_connection.ts +41 -0
  265. package/core/renderers/measurables/round_corner.ts +41 -0
  266. package/core/renderers/measurables/row.ts +190 -0
  267. package/core/renderers/measurables/spacer_row.ts +43 -0
  268. package/core/renderers/measurables/square_corner.ts +39 -0
  269. package/core/renderers/measurables/statement_input.ts +47 -0
  270. package/core/renderers/measurables/top_row.ts +108 -0
  271. package/core/renderers/measurables/types.ts +362 -0
  272. package/core/renderers/thrasos/info.ts +327 -0
  273. package/core/renderers/thrasos/renderer.ts +39 -0
  274. package/core/renderers/thrasos/thrasos.ts +14 -0
  275. package/core/renderers/zelos/constants.ts +913 -0
  276. package/core/renderers/zelos/drawer.ts +272 -0
  277. package/core/renderers/zelos/info.ts +651 -0
  278. package/core/renderers/zelos/measurables/bottom_row.ts +44 -0
  279. package/core/renderers/zelos/measurables/inputs.ts +40 -0
  280. package/core/renderers/zelos/measurables/row_elements.ts +29 -0
  281. package/core/renderers/zelos/measurables/top_row.ts +50 -0
  282. package/core/renderers/zelos/path_object.ts +209 -0
  283. package/core/renderers/zelos/renderer.ts +91 -0
  284. package/core/renderers/zelos/zelos.ts +31 -0
  285. package/core/scrollbar.ts +898 -0
  286. package/core/scrollbar_pair.ts +349 -0
  287. package/core/separator_flyout_inflater.ts +83 -0
  288. package/core/serialization/blocks.ts +834 -0
  289. package/core/serialization/exceptions.ts +112 -0
  290. package/core/serialization/priorities.ts +25 -0
  291. package/core/serialization/procedures.ts +158 -0
  292. package/core/serialization/registry.ts +30 -0
  293. package/core/serialization/variables.ts +69 -0
  294. package/core/serialization/workspace_comments.ts +143 -0
  295. package/core/serialization/workspaces.ts +94 -0
  296. package/core/serialization.ts +32 -0
  297. package/core/shortcut_items.ts +405 -0
  298. package/core/shortcut_registry.ts +451 -0
  299. package/core/sprites.ts +15 -0
  300. package/core/theme/classic.ts +40 -0
  301. package/core/theme/themes.ts +12 -0
  302. package/core/theme/zelos.ts +80 -0
  303. package/core/theme.ts +232 -0
  304. package/core/theme_manager.ts +192 -0
  305. package/core/toast.ts +219 -0
  306. package/core/toolbox/category.ts +746 -0
  307. package/core/toolbox/collapsible_category.ts +287 -0
  308. package/core/toolbox/separator.ts +108 -0
  309. package/core/toolbox/toolbox.ts +1210 -0
  310. package/core/toolbox/toolbox_item.ts +181 -0
  311. package/core/tooltip.ts +466 -0
  312. package/core/touch.ts +155 -0
  313. package/core/trashcan.ts +730 -0
  314. package/core/utils/aria.ts +158 -0
  315. package/core/utils/array.ts +24 -0
  316. package/core/utils/colour.ts +265 -0
  317. package/core/utils/coordinate.ts +129 -0
  318. package/core/utils/deprecation.ts +47 -0
  319. package/core/utils/dom.ts +356 -0
  320. package/core/utils/drag.ts +74 -0
  321. package/core/utils/focusable_tree_traverser.ts +126 -0
  322. package/core/utils/idgenerator.ts +70 -0
  323. package/core/utils/keycodes.ts +154 -0
  324. package/core/utils/math.ts +50 -0
  325. package/core/utils/metrics.ts +86 -0
  326. package/core/utils/object.ts +33 -0
  327. package/core/utils/parsing.ts +286 -0
  328. package/core/utils/rect.ts +142 -0
  329. package/core/utils/size.ts +62 -0
  330. package/core/utils/string.ts +289 -0
  331. package/core/utils/style.ts +219 -0
  332. package/core/utils/svg.ts +84 -0
  333. package/core/utils/svg_math.ts +207 -0
  334. package/core/utils/svg_paths.ts +133 -0
  335. package/core/utils/toolbox.ts +417 -0
  336. package/core/utils/useragent.ts +86 -0
  337. package/core/utils/xml.ts +165 -0
  338. package/core/utils.ts +59 -0
  339. package/core/variable_map.ts +476 -0
  340. package/core/variable_model.ts +150 -0
  341. package/core/variables.ts +931 -0
  342. package/core/variables_dynamic.ts +230 -0
  343. package/core/widgetdiv.ts +349 -0
  344. package/core/workspace.ts +994 -0
  345. package/core/workspace_audio.ts +137 -0
  346. package/core/workspace_dragger.ts +81 -0
  347. package/core/workspace_svg.ts +2954 -0
  348. package/core/xml.ts +1126 -0
  349. package/core/zoom_controls.ts +495 -0
  350. package/demos/blockfactory/analytics.js +195 -0
  351. package/demos/blockfactory/app_controller.js +726 -0
  352. package/demos/blockfactory/block_definition_extractor.js +742 -0
  353. package/demos/blockfactory/block_exporter_controller.js +311 -0
  354. package/demos/blockfactory/block_exporter_tools.js +212 -0
  355. package/demos/blockfactory/block_exporter_view.js +101 -0
  356. package/demos/blockfactory/block_library_controller.js +325 -0
  357. package/demos/blockfactory/block_library_storage.js +149 -0
  358. package/demos/blockfactory/block_library_view.js +178 -0
  359. package/demos/blockfactory/block_option.js +151 -0
  360. package/demos/blockfactory/blocks.js +920 -0
  361. package/demos/blockfactory/cp.css +46 -0
  362. package/demos/blockfactory/cp.js +179 -0
  363. package/demos/blockfactory/factory.css +586 -0
  364. package/demos/blockfactory/factory.js +338 -0
  365. package/demos/blockfactory/factory_utils.js +1036 -0
  366. package/demos/blockfactory/icon.png +0 -0
  367. package/demos/blockfactory/index.html +767 -0
  368. package/demos/blockfactory/link.png +0 -0
  369. package/demos/blockfactory/standard_categories.js +384 -0
  370. package/demos/blockfactory/workspacefactory/wfactory_controller.js +1332 -0
  371. package/demos/blockfactory/workspacefactory/wfactory_generator.js +224 -0
  372. package/demos/blockfactory/workspacefactory/wfactory_init.js +541 -0
  373. package/demos/blockfactory/workspacefactory/wfactory_model.js +548 -0
  374. package/demos/blockfactory/workspacefactory/wfactory_view.js +424 -0
  375. package/demos/code/code.js +626 -0
  376. package/demos/code/icon.png +0 -0
  377. package/demos/code/icons.png +0 -0
  378. package/demos/code/index.html +359 -0
  379. package/demos/code/msg/ar.js +24 -0
  380. package/demos/code/msg/be-tarask.js +24 -0
  381. package/demos/code/msg/br.js +24 -0
  382. package/demos/code/msg/ca.js +24 -0
  383. package/demos/code/msg/cs.js +24 -0
  384. package/demos/code/msg/da.js +24 -0
  385. package/demos/code/msg/de.js +24 -0
  386. package/demos/code/msg/el.js +24 -0
  387. package/demos/code/msg/en.js +24 -0
  388. package/demos/code/msg/es.js +24 -0
  389. package/demos/code/msg/et.js +24 -0
  390. package/demos/code/msg/fa.js +24 -0
  391. package/demos/code/msg/fr.js +24 -0
  392. package/demos/code/msg/he.js +24 -0
  393. package/demos/code/msg/hr.js +24 -0
  394. package/demos/code/msg/hrx.js +24 -0
  395. package/demos/code/msg/hu.js +24 -0
  396. package/demos/code/msg/ia.js +24 -0
  397. package/demos/code/msg/is.js +24 -0
  398. package/demos/code/msg/it.js +24 -0
  399. package/demos/code/msg/ja.js +24 -0
  400. package/demos/code/msg/kab.js +24 -0
  401. package/demos/code/msg/ko.js +24 -0
  402. package/demos/code/msg/mk.js +24 -0
  403. package/demos/code/msg/ms.js +24 -0
  404. package/demos/code/msg/nb.js +24 -0
  405. package/demos/code/msg/nl.js +24 -0
  406. package/demos/code/msg/oc.js +24 -0
  407. package/demos/code/msg/pl.js +24 -0
  408. package/demos/code/msg/pms.js +24 -0
  409. package/demos/code/msg/pt-br.js +24 -0
  410. package/demos/code/msg/ro.js +24 -0
  411. package/demos/code/msg/ru.js +24 -0
  412. package/demos/code/msg/sc.js +24 -0
  413. package/demos/code/msg/sk.js +24 -0
  414. package/demos/code/msg/sr.js +24 -0
  415. package/demos/code/msg/sv.js +24 -0
  416. package/demos/code/msg/ta.js +24 -0
  417. package/demos/code/msg/th.js +24 -0
  418. package/demos/code/msg/tlh.js +24 -0
  419. package/demos/code/msg/tr.js +24 -0
  420. package/demos/code/msg/uk.js +24 -0
  421. package/demos/code/msg/vi.js +24 -0
  422. package/demos/code/msg/zh-hans.js +24 -0
  423. package/demos/code/msg/zh-hant.js +24 -0
  424. package/demos/code/style.css +184 -0
  425. package/demos/index.html +68 -0
  426. package/demos/storage/icon.png +0 -0
  427. package/demos/storage/index.html +104 -0
  428. package/eslint.config.mjs +314 -0
  429. package/generators/dart/dart_generator.ts +321 -0
  430. package/generators/dart/lists.ts +525 -0
  431. package/generators/dart/logic.ts +157 -0
  432. package/generators/dart/loops.ts +217 -0
  433. package/generators/dart/math.ts +559 -0
  434. package/generators/dart/procedures.ts +138 -0
  435. package/generators/dart/text.ts +405 -0
  436. package/generators/dart/variables.ts +32 -0
  437. package/generators/dart/variables_dynamic.ts +17 -0
  438. package/generators/dart.ts +50 -0
  439. package/generators/javascript/javascript_generator.ts +346 -0
  440. package/generators/javascript/lists.ts +465 -0
  441. package/generators/javascript/logic.ts +155 -0
  442. package/generators/javascript/loops.ts +245 -0
  443. package/generators/javascript/math.ts +450 -0
  444. package/generators/javascript/procedures.ts +142 -0
  445. package/generators/javascript/text.ts +418 -0
  446. package/generators/javascript/variables.ts +32 -0
  447. package/generators/javascript/variables_dynamic.ts +17 -0
  448. package/generators/javascript.ts +46 -0
  449. package/generators/lua/lists.ts +445 -0
  450. package/generators/lua/logic.ts +144 -0
  451. package/generators/lua/loops.ts +192 -0
  452. package/generators/lua/lua_generator.ts +225 -0
  453. package/generators/lua/math.ts +473 -0
  454. package/generators/lua/procedures.ts +144 -0
  455. package/generators/lua/text.ts +380 -0
  456. package/generators/lua/variables.ts +31 -0
  457. package/generators/lua/variables_dynamic.ts +17 -0
  458. package/generators/lua.ts +44 -0
  459. package/generators/php/lists.ts +585 -0
  460. package/generators/php/logic.ts +157 -0
  461. package/generators/php/loops.ts +218 -0
  462. package/generators/php/math.ts +408 -0
  463. package/generators/php/php_generator.ts +320 -0
  464. package/generators/php/procedures.ts +159 -0
  465. package/generators/php/text.ts +315 -0
  466. package/generators/php/variables.ts +32 -0
  467. package/generators/php/variables_dynamic.ts +17 -0
  468. package/generators/php.ts +46 -0
  469. package/generators/python/lists.ts +398 -0
  470. package/generators/python/logic.ts +152 -0
  471. package/generators/python/loops.ts +251 -0
  472. package/generators/python/math.ts +434 -0
  473. package/generators/python/procedures.ts +159 -0
  474. package/generators/python/python_generator.ts +355 -0
  475. package/generators/python/text.ts +338 -0
  476. package/generators/python/variables.ts +31 -0
  477. package/generators/python/variables_dynamic.ts +17 -0
  478. package/generators/python.ts +51 -0
  479. package/gulpfile.mjs +100 -0
  480. package/jsconfig.json +7 -0
  481. package/msg/json/README.md +33 -0
  482. package/msg/json/ab.json +222 -0
  483. package/msg/json/ace.json +7 -0
  484. package/msg/json/af.json +34 -0
  485. package/msg/json/am.json +30 -0
  486. package/msg/json/ar.json +355 -0
  487. package/msg/json/ast.json +10 -0
  488. package/msg/json/az.json +334 -0
  489. package/msg/json/ba.json +211 -0
  490. package/msg/json/bcc.json +290 -0
  491. package/msg/json/be-tarask.json +335 -0
  492. package/msg/json/be.json +326 -0
  493. package/msg/json/bg.json +347 -0
  494. package/msg/json/bn.json +189 -0
  495. package/msg/json/br.json +334 -0
  496. package/msg/json/bs.json +166 -0
  497. package/msg/json/ca.json +341 -0
  498. package/msg/json/cdo.json +6 -0
  499. package/msg/json/ce.json +328 -0
  500. package/msg/json/constants.json +12 -0
  501. package/msg/json/cs.json +344 -0
  502. package/msg/json/da.json +346 -0
  503. package/msg/json/de.json +369 -0
  504. package/msg/json/diq.json +264 -0
  505. package/msg/json/dtp.json +198 -0
  506. package/msg/json/dty.json +97 -0
  507. package/msg/json/ee.json +160 -0
  508. package/msg/json/el.json +356 -0
  509. package/msg/json/en-gb.json +199 -0
  510. package/msg/json/en.json +423 -0
  511. package/msg/json/eo.json +337 -0
  512. package/msg/json/es.json +361 -0
  513. package/msg/json/et.json +335 -0
  514. package/msg/json/eu.json +219 -0
  515. package/msg/json/fa.json +342 -0
  516. package/msg/json/fi.json +350 -0
  517. package/msg/json/fo.json +46 -0
  518. package/msg/json/fr.json +374 -0
  519. package/msg/json/frr.json +6 -0
  520. package/msg/json/gl.json +338 -0
  521. package/msg/json/gn.json +54 -0
  522. package/msg/json/gor.json +87 -0
  523. package/msg/json/ha.json +313 -0
  524. package/msg/json/hak.json +17 -0
  525. package/msg/json/he.json +355 -0
  526. package/msg/json/hi.json +318 -0
  527. package/msg/json/hr.json +337 -0
  528. package/msg/json/hrx.json +287 -0
  529. package/msg/json/hsb.json +128 -0
  530. package/msg/json/hu.json +349 -0
  531. package/msg/json/hy.json +337 -0
  532. package/msg/json/ia.json +337 -0
  533. package/msg/json/id.json +338 -0
  534. package/msg/json/ig.json +323 -0
  535. package/msg/json/inh.json +80 -0
  536. package/msg/json/is.json +331 -0
  537. package/msg/json/it.json +346 -0
  538. package/msg/json/ja.json +362 -0
  539. package/msg/json/ka.json +14 -0
  540. package/msg/json/kab.json +323 -0
  541. package/msg/json/kbd-cyrl.json +84 -0
  542. package/msg/json/km.json +29 -0
  543. package/msg/json/kn.json +333 -0
  544. package/msg/json/ko.json +377 -0
  545. package/msg/json/ksh.json +43 -0
  546. package/msg/json/ku-latn.json +41 -0
  547. package/msg/json/ky.json +71 -0
  548. package/msg/json/la.json +6 -0
  549. package/msg/json/lb.json +156 -0
  550. package/msg/json/lki.json +282 -0
  551. package/msg/json/lo.json +92 -0
  552. package/msg/json/lrc.json +123 -0
  553. package/msg/json/lt.json +321 -0
  554. package/msg/json/lv.json +324 -0
  555. package/msg/json/mg.json +58 -0
  556. package/msg/json/mk.json +178 -0
  557. package/msg/json/ml.json +35 -0
  558. package/msg/json/mnw.json +90 -0
  559. package/msg/json/ms.json +300 -0
  560. package/msg/json/my.json +57 -0
  561. package/msg/json/mzn.json +6 -0
  562. package/msg/json/nb.json +331 -0
  563. package/msg/json/ne.json +247 -0
  564. package/msg/json/nl.json +358 -0
  565. package/msg/json/oc.json +194 -0
  566. package/msg/json/olo.json +37 -0
  567. package/msg/json/pa.json +75 -0
  568. package/msg/json/pl.json +358 -0
  569. package/msg/json/pms.json +325 -0
  570. package/msg/json/ps.json +50 -0
  571. package/msg/json/pt-br.json +371 -0
  572. package/msg/json/pt.json +360 -0
  573. package/msg/json/qqq.json +430 -0
  574. package/msg/json/ro.json +333 -0
  575. package/msg/json/ru.json +363 -0
  576. package/msg/json/sc.json +283 -0
  577. package/msg/json/sco.json +11 -0
  578. package/msg/json/sd.json +158 -0
  579. package/msg/json/shn.json +109 -0
  580. package/msg/json/si.json +16 -0
  581. package/msg/json/sk.json +339 -0
  582. package/msg/json/skr-arab.json +117 -0
  583. package/msg/json/sl.json +355 -0
  584. package/msg/json/smn.json +133 -0
  585. package/msg/json/sq.json +343 -0
  586. package/msg/json/sr-latn.json +324 -0
  587. package/msg/json/sr.json +349 -0
  588. package/msg/json/sv.json +350 -0
  589. package/msg/json/sw.json +12 -0
  590. package/msg/json/synonyms.json +22 -0
  591. package/msg/json/ta.json +306 -0
  592. package/msg/json/tcy.json +316 -0
  593. package/msg/json/tdd.json +110 -0
  594. package/msg/json/te.json +101 -0
  595. package/msg/json/th.json +333 -0
  596. package/msg/json/ti.json +50 -0
  597. package/msg/json/tl.json +149 -0
  598. package/msg/json/tlh.json +179 -0
  599. package/msg/json/tr.json +370 -0
  600. package/msg/json/ug-arab.json +180 -0
  601. package/msg/json/uk.json +346 -0
  602. package/msg/json/ur.json +118 -0
  603. package/msg/json/uz.json +36 -0
  604. package/msg/json/vi.json +345 -0
  605. package/msg/json/xmf.json +99 -0
  606. package/msg/json/yo.json +316 -0
  607. package/msg/json/zgh.json +83 -0
  608. package/msg/json/zh-hans.json +374 -0
  609. package/msg/json/zh-hant.json +362 -0
  610. package/msg/messages.js +1695 -0
  611. package/package.json +37 -5
  612. package/scripts/gulpfiles/appengine_tasks.mjs +189 -0
  613. package/scripts/gulpfiles/build_tasks.mjs +753 -0
  614. package/scripts/gulpfiles/config.mjs +40 -0
  615. package/scripts/gulpfiles/docs_tasks.mjs +146 -0
  616. package/scripts/gulpfiles/git_tasks.mjs +167 -0
  617. package/scripts/gulpfiles/helper_tasks.mjs +25 -0
  618. package/scripts/gulpfiles/package_tasks.mjs +257 -0
  619. package/scripts/gulpfiles/release_tasks.mjs +174 -0
  620. package/scripts/gulpfiles/test_tasks.mjs +409 -0
  621. package/scripts/helpers.js +74 -0
  622. package/scripts/i18n/common.py +233 -0
  623. package/scripts/i18n/create_messages.py +167 -0
  624. package/scripts/i18n/dedup_json.py +72 -0
  625. package/scripts/i18n/js_to_json.py +135 -0
  626. package/scripts/i18n/tests.py +46 -0
  627. package/scripts/migration/renamings.json5 +1599 -0
  628. package/scripts/package/index.js +23 -0
  629. package/scripts/package/templates/umd-msg.template +16 -0
  630. package/scripts/package/templates/umd.template +13 -0
  631. package/scripts/themes/blockStyles_example.json +11 -0
  632. package/scripts/themes/create_blockStyles.py +184 -0
  633. package/scripts/tsick.js +86 -0
  634. package/tests/browser/.mocharc.js +7 -0
  635. package/tests/browser/test/basic_block_factory_test.mjs +44 -0
  636. package/tests/browser/test/basic_block_test.mjs +38 -0
  637. package/tests/browser/test/basic_playground_test.mjs +461 -0
  638. package/tests/browser/test/block_undo_test.mjs +50 -0
  639. package/tests/browser/test/clipboard_test.mjs +611 -0
  640. package/tests/browser/test/delete_blocks_test.mjs +217 -0
  641. package/tests/browser/test/extensive_test.mjs +191 -0
  642. package/tests/browser/test/field_edits_test.mjs +61 -0
  643. package/tests/browser/test/hooks.mjs +23 -0
  644. package/tests/browser/test/mutator_test.mjs +87 -0
  645. package/tests/browser/test/procedure_test.mjs +109 -0
  646. package/tests/browser/test/test_setup.mjs +623 -0
  647. package/tests/browser/test/toolbox_drag_test.mjs +219 -0
  648. package/tests/browser/test/workspace_comment_test.mjs +220 -0
  649. package/tests/compile/index.html +43 -0
  650. package/tests/compile/main.js +53 -0
  651. package/tests/compile/test_blocks.js +47 -0
  652. package/tests/compile/webdriver.js +81 -0
  653. package/tests/generators/functions.xml +561 -0
  654. package/tests/generators/golden/generated.dart +1604 -0
  655. package/tests/generators/golden/generated.js +1552 -0
  656. package/tests/generators/golden/generated.lua +1828 -0
  657. package/tests/generators/golden/generated.php +1611 -0
  658. package/tests/generators/golden/generated.py +1407 -0
  659. package/tests/generators/index.html +408 -0
  660. package/tests/generators/lists.xml +8675 -0
  661. package/tests/generators/logic.xml +1019 -0
  662. package/tests/generators/loops1.xml +345 -0
  663. package/tests/generators/loops2.xml +891 -0
  664. package/tests/generators/loops3.xml +735 -0
  665. package/tests/generators/math.xml +2077 -0
  666. package/tests/generators/text.xml +4651 -0
  667. package/tests/generators/unittest.js +103 -0
  668. package/tests/generators/unittest_dart.js +163 -0
  669. package/tests/generators/unittest_javascript.js +167 -0
  670. package/tests/generators/unittest_lua.js +165 -0
  671. package/tests/generators/unittest_php.js +154 -0
  672. package/tests/generators/unittest_python.js +138 -0
  673. package/tests/generators/variables.xml +68 -0
  674. package/tests/generators/webdriver.js +123 -0
  675. package/tests/media/200px.png +0 -0
  676. package/tests/media/30px.png +0 -0
  677. package/tests/media/50px.png +0 -0
  678. package/tests/media/a.png +0 -0
  679. package/tests/media/arrow.png +0 -0
  680. package/tests/media/b.png +0 -0
  681. package/tests/media/c.png +0 -0
  682. package/tests/media/d.png +0 -0
  683. package/tests/media/e.png +0 -0
  684. package/tests/media/f.png +0 -0
  685. package/tests/media/g.png +0 -0
  686. package/tests/media/h.png +0 -0
  687. package/tests/media/i.png +0 -0
  688. package/tests/media/j.png +0 -0
  689. package/tests/media/k.png +0 -0
  690. package/tests/media/l.png +0 -0
  691. package/tests/media/m.png +0 -0
  692. package/tests/migration/renamings.schema.json +59 -0
  693. package/tests/migration/validate-renamings.mjs +63 -0
  694. package/tests/mocha/.mocharc.js +6 -0
  695. package/tests/mocha/block_json_test.js +777 -0
  696. package/tests/mocha/block_test.js +2949 -0
  697. package/tests/mocha/blocks/lists_test.js +238 -0
  698. package/tests/mocha/blocks/logic_ternary_test.js +320 -0
  699. package/tests/mocha/blocks/loops_test.js +56 -0
  700. package/tests/mocha/blocks/procedures_test.js +2509 -0
  701. package/tests/mocha/blocks/variables_test.js +345 -0
  702. package/tests/mocha/clipboard_test.js +263 -0
  703. package/tests/mocha/comment_deserialization_test.js +122 -0
  704. package/tests/mocha/comment_test.js +215 -0
  705. package/tests/mocha/comment_view_test.js +188 -0
  706. package/tests/mocha/connection_checker_test.js +694 -0
  707. package/tests/mocha/connection_db_test.js +363 -0
  708. package/tests/mocha/connection_test.js +3738 -0
  709. package/tests/mocha/contextmenu_items_test.js +653 -0
  710. package/tests/mocha/contextmenu_test.js +73 -0
  711. package/tests/mocha/cursor_test.js +922 -0
  712. package/tests/mocha/dialog_test.js +168 -0
  713. package/tests/mocha/dropdowndiv_test.js +458 -0
  714. package/tests/mocha/event_block_change_test.js +126 -0
  715. package/tests/mocha/event_block_create_test.js +109 -0
  716. package/tests/mocha/event_block_delete_test.js +55 -0
  717. package/tests/mocha/event_block_drag_test.js +36 -0
  718. package/tests/mocha/event_block_field_intermediate_change_test.js +67 -0
  719. package/tests/mocha/event_block_move_test.js +39 -0
  720. package/tests/mocha/event_bubble_open_test.js +42 -0
  721. package/tests/mocha/event_click_test.js +40 -0
  722. package/tests/mocha/event_comment_change_test.js +39 -0
  723. package/tests/mocha/event_comment_collapse_test.js +34 -0
  724. package/tests/mocha/event_comment_create_test.js +38 -0
  725. package/tests/mocha/event_comment_delete_test.js +38 -0
  726. package/tests/mocha/event_comment_drag_test.js +35 -0
  727. package/tests/mocha/event_comment_move_test.js +40 -0
  728. package/tests/mocha/event_comment_resize_test.js +38 -0
  729. package/tests/mocha/event_selected_test.js +41 -0
  730. package/tests/mocha/event_test.js +1668 -0
  731. package/tests/mocha/event_theme_change_test.js +36 -0
  732. package/tests/mocha/event_toolbox_item_select_test.js +64 -0
  733. package/tests/mocha/event_trashcan_open_test.js +36 -0
  734. package/tests/mocha/event_var_create_test.js +54 -0
  735. package/tests/mocha/event_var_delete_test.js +54 -0
  736. package/tests/mocha/event_var_rename_test.js +39 -0
  737. package/tests/mocha/event_var_type_change_test.js +43 -0
  738. package/tests/mocha/event_viewport_test.js +39 -0
  739. package/tests/mocha/extensions_test.js +613 -0
  740. package/tests/mocha/field_checkbox_test.js +299 -0
  741. package/tests/mocha/field_colour_test.js +395 -0
  742. package/tests/mocha/field_dropdown_test.js +328 -0
  743. package/tests/mocha/field_image_test.js +351 -0
  744. package/tests/mocha/field_label_serializable_test.js +252 -0
  745. package/tests/mocha/field_label_test.js +226 -0
  746. package/tests/mocha/field_number_test.js +505 -0
  747. package/tests/mocha/field_registry_test.js +115 -0
  748. package/tests/mocha/field_test.js +821 -0
  749. package/tests/mocha/field_textinput_test.js +593 -0
  750. package/tests/mocha/field_variable_test.js +644 -0
  751. package/tests/mocha/flyout_test.js +650 -0
  752. package/tests/mocha/focus_manager_test.js +5979 -0
  753. package/tests/mocha/focusable_tree_traverser_test.js +602 -0
  754. package/tests/mocha/generator_test.js +233 -0
  755. package/tests/mocha/gesture_test.js +133 -0
  756. package/tests/mocha/icon_test.js +431 -0
  757. package/tests/mocha/index.html +354 -0
  758. package/tests/mocha/input_test.js +296 -0
  759. package/tests/mocha/insertion_marker_test.js +432 -0
  760. package/tests/mocha/jso_deserialization_test.js +848 -0
  761. package/tests/mocha/jso_serialization_test.js +1068 -0
  762. package/tests/mocha/json_test.js +303 -0
  763. package/tests/mocha/keyboard_navigation_controller_test.js +37 -0
  764. package/tests/mocha/layering_test.js +104 -0
  765. package/tests/mocha/menu_item_test.js +176 -0
  766. package/tests/mocha/metrics_test.js +671 -0
  767. package/tests/mocha/mutator_test.js +87 -0
  768. package/tests/mocha/names_test.js +97 -0
  769. package/tests/mocha/navigation_test.js +876 -0
  770. package/tests/mocha/old_workspace_comment_test.js +256 -0
  771. package/tests/mocha/procedure_map_test.js +52 -0
  772. package/tests/mocha/rect_test.js +1668 -0
  773. package/tests/mocha/registry_test.js +281 -0
  774. package/tests/mocha/render_management_test.js +127 -0
  775. package/tests/mocha/serializer_test.js +2100 -0
  776. package/tests/mocha/shortcut_items_test.js +563 -0
  777. package/tests/mocha/shortcut_registry_test.js +533 -0
  778. package/tests/mocha/test_helpers/block_definitions.js +204 -0
  779. package/tests/mocha/test_helpers/code_generation.js +114 -0
  780. package/tests/mocha/test_helpers/common.js +106 -0
  781. package/tests/mocha/test_helpers/events.js +290 -0
  782. package/tests/mocha/test_helpers/fields.js +310 -0
  783. package/tests/mocha/test_helpers/icon_mocks.js +130 -0
  784. package/tests/mocha/test_helpers/procedures.js +304 -0
  785. package/tests/mocha/test_helpers/serialization.js +124 -0
  786. package/tests/mocha/test_helpers/setup_teardown.js +232 -0
  787. package/tests/mocha/test_helpers/toolbox_definitions.js +269 -0
  788. package/tests/mocha/test_helpers/user_input.js +62 -0
  789. package/tests/mocha/test_helpers/variables.js +27 -0
  790. package/tests/mocha/test_helpers/warnings.js +83 -0
  791. package/tests/mocha/test_helpers/workspace.js +1659 -0
  792. package/tests/mocha/theme_test.js +307 -0
  793. package/tests/mocha/toast_test.js +129 -0
  794. package/tests/mocha/toolbox_test.js +821 -0
  795. package/tests/mocha/tooltip_test.js +276 -0
  796. package/tests/mocha/touch_test.js +109 -0
  797. package/tests/mocha/trashcan_test.js +376 -0
  798. package/tests/mocha/utils_test.js +557 -0
  799. package/tests/mocha/variable_map_test.js +470 -0
  800. package/tests/mocha/variable_model_test.js +85 -0
  801. package/tests/mocha/webdriver.js +110 -0
  802. package/tests/mocha/widget_div_test.js +427 -0
  803. package/tests/mocha/workspace_comment_test.js +197 -0
  804. package/tests/mocha/workspace_svg_test.js +922 -0
  805. package/tests/mocha/workspace_test.js +24 -0
  806. package/tests/mocha/xml_test.js +893 -0
  807. package/tests/mocha/zoom_controls_test.js +81 -0
  808. package/tests/multi_playground.html +482 -0
  809. package/tests/node/.mocharc.js +6 -0
  810. package/tests/node/run_node_test.mjs +191 -0
  811. package/tests/playground.html +1280 -0
  812. package/tests/playgrounds/advanced_playground.html +188 -0
  813. package/tests/playgrounds/iframe.html +40 -0
  814. package/tests/playgrounds/screenshot.js +123 -0
  815. package/tests/scripts/check_metadata.sh +170 -0
  816. package/tests/scripts/load.mjs +140 -0
  817. package/tests/scripts/setup_linux_env.sh +7 -0
  818. package/tests/scripts/update_metadata.sh +46 -0
  819. package/tests/themes/test_themes.js +62 -0
  820. package/tests/typescript/README.md +4 -0
  821. package/tests/typescript/src/field/different_user_input.ts +81 -0
  822. package/tests/typescript/src/generators/dart.ts +24 -0
  823. package/tests/typescript/src/generators/javascript.ts +28 -0
  824. package/tests/typescript/src/generators/lua.ts +24 -0
  825. package/tests/typescript/src/generators/php.ts +24 -0
  826. package/tests/typescript/src/generators/python.ts +24 -0
  827. package/tests/typescript/src/generators.ts +33 -0
  828. package/tests/typescript/src/msg.ts +20 -0
  829. package/tests/typescript/tsconfig.json +20 -0
  830. package/tests/xml/README.txt +11 -0
  831. package/tests/xml/blockly.xsd +178 -0
  832. package/tests/xml/invalid.xml +6 -0
  833. package/tests/xml/toolbox.xml +311 -0
  834. package/tests/xml/workspace.xml +114 -0
  835. package/tsconfig.json +37 -0
  836. package/tsdoc.json +25 -0
  837. package/typings/README.md +5 -0
  838. package/typings/templates/blockly-header.template +11 -0
  839. package/typings/templates/blockly-interfaces.template +83 -0
  840. package/typings/templates/msg.template +15 -0
  841. package/typings/tsconfig.json +23 -0
  842. package/blockly.min.js +0 -2740
  843. package/blockly.mjs +0 -163
  844. package/blockly_compressed.js +0 -1814
  845. package/blockly_compressed.js.map +0 -1
  846. package/blocks.js +0 -4
  847. package/blocks.mjs +0 -12
  848. package/blocks_compressed.js +0 -193
  849. package/blocks_compressed.js.map +0 -1
  850. package/core/any_aliases.d.ts +0 -7
  851. package/core/block.d.ts +0 -1006
  852. package/core/block_animations.d.ts +0 -34
  853. package/core/block_flyout_inflater.d.ts +0 -94
  854. package/core/block_svg.d.ts +0 -733
  855. package/core/blockly.d.ts +0 -286
  856. package/core/blockly_options.d.ts +0 -70
  857. package/core/blocks.d.ts +0 -17
  858. package/core/browser_events.d.ts +0 -82
  859. package/core/bubbles/bubble.d.ts +0 -228
  860. package/core/bubbles/mini_workspace_bubble.d.ts +0 -84
  861. package/core/bubbles/text_bubble.d.ts +0 -38
  862. package/core/bubbles/textinput_bubble.d.ts +0 -102
  863. package/core/bubbles.d.ts +0 -11
  864. package/core/bump_objects.d.ts +0 -37
  865. package/core/button_flyout_inflater.d.ts +0 -42
  866. package/core/clipboard/block_paster.d.ts +0 -34
  867. package/core/clipboard/registry.d.ts +0 -21
  868. package/core/clipboard/workspace_comment_paster.d.ts +0 -19
  869. package/core/clipboard.d.ts +0 -103
  870. package/core/comments/collapse_comment_bar_button.d.ts +0 -52
  871. package/core/comments/comment_bar_button.d.ts +0 -62
  872. package/core/comments/comment_editor.d.ts +0 -62
  873. package/core/comments/comment_view.d.ts +0 -213
  874. package/core/comments/delete_comment_bar_button.d.ts +0 -52
  875. package/core/comments/rendered_workspace_comment.d.ts +0 -121
  876. package/core/comments/workspace_comment.d.ts +0 -107
  877. package/core/comments.d.ts +0 -13
  878. package/core/common.d.ts +0 -163
  879. package/core/component_manager.d.ts +0 -112
  880. package/core/config.d.ts +0 -24
  881. package/core/connection.d.ts +0 -291
  882. package/core/connection_checker.d.ts +0 -85
  883. package/core/connection_db.d.ts +0 -100
  884. package/core/connection_type.d.ts +0 -15
  885. package/core/constants.d.ts +0 -19
  886. package/core/contextmenu.d.ts +0 -53
  887. package/core/contextmenu_items.d.ts +0 -73
  888. package/core/contextmenu_registry.d.ts +0 -173
  889. package/core/css.d.ts +0 -25
  890. package/core/delete_area.d.ts +0 -48
  891. package/core/dialog.d.ts +0 -82
  892. package/core/drag_target.d.ts +0 -75
  893. package/core/dragging/block_drag_strategy.d.ts +0 -121
  894. package/core/dragging/bubble_drag_strategy.d.ts +0 -20
  895. package/core/dragging/comment_drag_strategy.d.ts +0 -26
  896. package/core/dragging/dragger.d.ts +0 -49
  897. package/core/dragging.d.ts +0 -11
  898. package/core/dropdowndiv.d.ts +0 -208
  899. package/core/events/events.d.ts +0 -72
  900. package/core/events/events_abstract.d.ts +0 -72
  901. package/core/events/events_block_base.d.ts +0 -46
  902. package/core/events/events_block_change.d.ts +0 -100
  903. package/core/events/events_block_create.d.ts +0 -59
  904. package/core/events/events_block_delete.d.ts +0 -62
  905. package/core/events/events_block_drag.d.ts +0 -61
  906. package/core/events/events_block_field_intermediate_change.d.ts +0 -71
  907. package/core/events/events_block_move.d.ts +0 -115
  908. package/core/events/events_bubble_open.d.ts +0 -62
  909. package/core/events/events_click.d.ts +0 -64
  910. package/core/events/events_comment_base.d.ts +0 -55
  911. package/core/events/events_comment_change.d.ts +0 -64
  912. package/core/events/events_comment_collapse.d.ts +0 -40
  913. package/core/events/events_comment_create.d.ts +0 -57
  914. package/core/events/events_comment_delete.d.ts +0 -57
  915. package/core/events/events_comment_drag.d.ts +0 -51
  916. package/core/events/events_comment_move.d.ts +0 -93
  917. package/core/events/events_comment_resize.d.ts +0 -68
  918. package/core/events/events_selected.d.ts +0 -53
  919. package/core/events/events_theme_change.d.ts +0 -43
  920. package/core/events/events_toolbox_item_select.d.ts +0 -49
  921. package/core/events/events_trashcan_open.d.ts +0 -47
  922. package/core/events/events_ui_base.d.ts +0 -32
  923. package/core/events/events_var_base.d.ts +0 -46
  924. package/core/events/events_var_create.d.ts +0 -55
  925. package/core/events/events_var_delete.d.ts +0 -50
  926. package/core/events/events_var_rename.d.ts +0 -51
  927. package/core/events/events_var_type_change.d.ts +0 -55
  928. package/core/events/events_viewport.d.ts +0 -67
  929. package/core/events/predicates.d.ts +0 -87
  930. package/core/events/type.d.ts +0 -81
  931. package/core/events/utils.d.ts +0 -211
  932. package/core/events/workspace_events.d.ts +0 -23
  933. package/core/extensions.d.ts +0 -99
  934. package/core/field.d.ts +0 -724
  935. package/core/field_checkbox.d.ts +0 -156
  936. package/core/field_dropdown.d.ts +0 -295
  937. package/core/field_image.d.ts +0 -148
  938. package/core/field_input.d.ts +0 -293
  939. package/core/field_label.d.ts +0 -80
  940. package/core/field_label_serializable.d.ts +0 -50
  941. package/core/field_number.d.ts +0 -194
  942. package/core/field_registry.d.ts +0 -83
  943. package/core/field_textinput.d.ts +0 -78
  944. package/core/field_variable.d.ts +0 -261
  945. package/core/flyout_base.d.ts +0 -455
  946. package/core/flyout_button.d.ts +0 -139
  947. package/core/flyout_horizontal.d.ts +0 -87
  948. package/core/flyout_item.d.ts +0 -26
  949. package/core/flyout_metrics_manager.d.ts +0 -46
  950. package/core/flyout_navigator.d.ts +0 -11
  951. package/core/flyout_separator.d.ts +0 -64
  952. package/core/flyout_vertical.d.ts +0 -88
  953. package/core/focus_manager.d.ts +0 -266
  954. package/core/generator.d.ts +0 -279
  955. package/core/gesture.d.ts +0 -454
  956. package/core/grid.d.ts +0 -124
  957. package/core/icons/comment_icon.d.ts +0 -134
  958. package/core/icons/exceptions.d.ts +0 -17
  959. package/core/icons/icon.d.ts +0 -82
  960. package/core/icons/icon_types.d.ts +0 -25
  961. package/core/icons/mutator_icon.d.ts +0 -96
  962. package/core/icons/registry.d.ts +0 -23
  963. package/core/icons/warning_icon.d.ts +0 -77
  964. package/core/icons.d.ts +0 -14
  965. package/core/inject.d.ts +0 -16
  966. package/core/inputs/align.d.ts +0 -14
  967. package/core/inputs/dummy_input.d.ts +0 -20
  968. package/core/inputs/end_row_input.d.ts +0 -25
  969. package/core/inputs/input.d.ts +0 -147
  970. package/core/inputs/input_types.d.ts +0 -16
  971. package/core/inputs/statement_input.d.ts +0 -22
  972. package/core/inputs/value_input.d.ts +0 -20
  973. package/core/inputs.d.ts +0 -14
  974. package/core/insertion_marker_previewer.d.ts +0 -67
  975. package/core/interfaces/i_autohideable.d.ts +0 -21
  976. package/core/interfaces/i_bounded_element.d.ts +0 -27
  977. package/core/interfaces/i_bubble.d.ts +0 -55
  978. package/core/interfaces/i_collapsible_toolbox_item.d.ts +0 -28
  979. package/core/interfaces/i_comment_icon.d.ts +0 -24
  980. package/core/interfaces/i_component.d.ts +0 -17
  981. package/core/interfaces/i_connection_checker.d.ts +0 -75
  982. package/core/interfaces/i_connection_previewer.d.ts +0 -39
  983. package/core/interfaces/i_contextmenu.d.ts +0 -14
  984. package/core/interfaces/i_copyable.d.ts +0 -30
  985. package/core/interfaces/i_deletable.d.ts +0 -23
  986. package/core/interfaces/i_delete_area.d.ts +0 -25
  987. package/core/interfaces/i_drag_target.d.ts +0 -59
  988. package/core/interfaces/i_draggable.d.ts +0 -56
  989. package/core/interfaces/i_dragger.d.ts +0 -32
  990. package/core/interfaces/i_flyout.d.ts +0 -159
  991. package/core/interfaces/i_flyout_inflater.d.ts +0 -48
  992. package/core/interfaces/i_focusable_node.d.ts +0 -105
  993. package/core/interfaces/i_focusable_tree.d.ts +0 -125
  994. package/core/interfaces/i_has_bubble.d.ts +0 -27
  995. package/core/interfaces/i_icon.d.ts +0 -84
  996. package/core/interfaces/i_keyboard_accessible.d.ts +0 -19
  997. package/core/interfaces/i_legacy_procedure_blocks.d.ts +0 -34
  998. package/core/interfaces/i_metrics_manager.d.ts +0 -129
  999. package/core/interfaces/i_movable.d.ts +0 -17
  1000. package/core/interfaces/i_navigation_policy.d.ts +0 -63
  1001. package/core/interfaces/i_observable.d.ts +0 -21
  1002. package/core/interfaces/i_parameter_model.d.ts +0 -44
  1003. package/core/interfaces/i_paster.d.ts +0 -15
  1004. package/core/interfaces/i_positionable.d.ts +0 -29
  1005. package/core/interfaces/i_procedure_block.d.ts +0 -16
  1006. package/core/interfaces/i_procedure_map.d.ts +0 -16
  1007. package/core/interfaces/i_procedure_model.d.ts +0 -59
  1008. package/core/interfaces/i_registrable.d.ts +0 -11
  1009. package/core/interfaces/i_rendered_element.d.ts +0 -16
  1010. package/core/interfaces/i_selectable.d.ts +0 -26
  1011. package/core/interfaces/i_selectable_toolbox_item.d.ts +0 -51
  1012. package/core/interfaces/i_serializable.d.ts +0 -24
  1013. package/core/interfaces/i_serializer.d.ts +0 -45
  1014. package/core/interfaces/i_styleable.d.ts +0 -23
  1015. package/core/interfaces/i_toolbox.d.ts +0 -102
  1016. package/core/interfaces/i_toolbox_item.d.ts +0 -71
  1017. package/core/interfaces/i_variable_backed_parameter_model.d.ts +0 -17
  1018. package/core/interfaces/i_variable_map.d.ts +0 -48
  1019. package/core/interfaces/i_variable_model.d.ts +0 -36
  1020. package/core/internal_constants.d.ts +0 -34
  1021. package/core/keyboard_nav/block_comment_navigation_policy.d.ts +0 -56
  1022. package/core/keyboard_nav/block_navigation_policy.d.ts +0 -84
  1023. package/core/keyboard_nav/comment_bar_button_navigation_policy.d.ts +0 -56
  1024. package/core/keyboard_nav/comment_editor_navigation_policy.d.ts +0 -34
  1025. package/core/keyboard_nav/connection_navigation_policy.d.ts +0 -67
  1026. package/core/keyboard_nav/field_navigation_policy.d.ts +0 -56
  1027. package/core/keyboard_nav/flyout_button_navigation_policy.d.ts +0 -56
  1028. package/core/keyboard_nav/flyout_navigation_policy.d.ts +0 -65
  1029. package/core/keyboard_nav/flyout_separator_navigation_policy.d.ts +0 -33
  1030. package/core/keyboard_nav/icon_navigation_policy.d.ts +0 -56
  1031. package/core/keyboard_nav/line_cursor.d.ts +0 -187
  1032. package/core/keyboard_nav/marker.d.ts +0 -53
  1033. package/core/keyboard_nav/workspace_comment_navigation_policy.d.ts +0 -56
  1034. package/core/keyboard_nav/workspace_navigation_policy.d.ts +0 -56
  1035. package/core/keyboard_navigation_controller.d.ts +0 -48
  1036. package/core/label_flyout_inflater.d.ts +0 -42
  1037. package/core/layer_manager.d.ts +0 -86
  1038. package/core/layers.d.ts +0 -16
  1039. package/core/main.d.ts +0 -7
  1040. package/core/marker_manager.d.ts +0 -72
  1041. package/core/menu.d.ts +0 -170
  1042. package/core/menu_separator.d.ts +0 -25
  1043. package/core/menuitem.d.ts +0 -139
  1044. package/core/metrics_manager.d.ts +0 -221
  1045. package/core/msg.d.ts +0 -24
  1046. package/core/names.d.ts +0 -139
  1047. package/core/navigator.d.ts +0 -65
  1048. package/core/observable_procedure_map.d.ts +0 -34
  1049. package/core/options.d.ts +0 -148
  1050. package/core/positionable_helpers.d.ts +0 -89
  1051. package/core/procedures.d.ts +0 -108
  1052. package/core/registry.d.ts +0 -158
  1053. package/core/render_management.d.ts +0 -34
  1054. package/core/rendered_connection.d.ts +0 -263
  1055. package/core/renderers/common/block_rendering.d.ts +0 -63
  1056. package/core/renderers/common/constants.d.ts +0 -454
  1057. package/core/renderers/common/drawer.d.ts +0 -156
  1058. package/core/renderers/common/i_path_object.d.ts +0 -88
  1059. package/core/renderers/common/info.d.ts +0 -201
  1060. package/core/renderers/common/path_object.d.ts +0 -130
  1061. package/core/renderers/common/renderer.d.ts +0 -141
  1062. package/core/renderers/geras/constants.d.ts +0 -22
  1063. package/core/renderers/geras/drawer.d.ts +0 -44
  1064. package/core/renderers/geras/geras.d.ts +0 -17
  1065. package/core/renderers/geras/highlight_constants.d.ts +0 -100
  1066. package/core/renderers/geras/highlighter.d.ts +0 -96
  1067. package/core/renderers/geras/info.d.ts +0 -45
  1068. package/core/renderers/geras/measurables/inline_input.d.ts +0 -22
  1069. package/core/renderers/geras/measurables/statement_input.d.ts +0 -22
  1070. package/core/renderers/geras/path_object.d.ts +0 -42
  1071. package/core/renderers/geras/renderer.d.ts +0 -77
  1072. package/core/renderers/measurables/base.d.ts +0 -26
  1073. package/core/renderers/measurables/bottom_row.d.ts +0 -58
  1074. package/core/renderers/measurables/connection.d.ts +0 -25
  1075. package/core/renderers/measurables/external_value_input.d.ts +0 -25
  1076. package/core/renderers/measurables/field.d.ts +0 -28
  1077. package/core/renderers/measurables/hat.d.ts +0 -19
  1078. package/core/renderers/measurables/icon.d.ts +0 -25
  1079. package/core/renderers/measurables/in_row_spacer.d.ts +0 -20
  1080. package/core/renderers/measurables/inline_input.d.ts +0 -22
  1081. package/core/renderers/measurables/input_connection.d.ts +0 -28
  1082. package/core/renderers/measurables/input_row.d.ts +0 -26
  1083. package/core/renderers/measurables/jagged_edge.d.ts +0 -19
  1084. package/core/renderers/measurables/next_connection.d.ts +0 -22
  1085. package/core/renderers/measurables/output_connection.d.ts +0 -24
  1086. package/core/renderers/measurables/previous_connection.d.ts +0 -22
  1087. package/core/renderers/measurables/round_corner.d.ts +0 -20
  1088. package/core/renderers/measurables/row.d.ts +0 -124
  1089. package/core/renderers/measurables/spacer_row.d.ts +0 -27
  1090. package/core/renderers/measurables/square_corner.d.ts +0 -20
  1091. package/core/renderers/measurables/statement_input.d.ts +0 -21
  1092. package/core/renderers/measurables/top_row.d.ts +0 -53
  1093. package/core/renderers/measurables/types.d.ts +0 -258
  1094. package/core/renderers/thrasos/info.d.ts +0 -37
  1095. package/core/renderers/thrasos/renderer.d.ts +0 -28
  1096. package/core/renderers/thrasos/thrasos.d.ts +0 -10
  1097. package/core/renderers/zelos/constants.d.ts +0 -165
  1098. package/core/renderers/zelos/drawer.d.ts +0 -51
  1099. package/core/renderers/zelos/info.d.ts +0 -89
  1100. package/core/renderers/zelos/measurables/bottom_row.d.ts +0 -26
  1101. package/core/renderers/zelos/measurables/inputs.d.ts +0 -21
  1102. package/core/renderers/zelos/measurables/row_elements.d.ts +0 -20
  1103. package/core/renderers/zelos/measurables/top_row.d.ts +0 -28
  1104. package/core/renderers/zelos/path_object.d.ts +0 -76
  1105. package/core/renderers/zelos/renderer.d.ts +0 -64
  1106. package/core/renderers/zelos/zelos.d.ts +0 -17
  1107. package/core/scrollbar.d.ts +0 -348
  1108. package/core/scrollbar_pair.d.ts +0 -121
  1109. package/core/separator_flyout_inflater.d.ts +0 -57
  1110. package/core/serialization/blocks.d.ts +0 -138
  1111. package/core/serialization/exceptions.d.ts +0 -81
  1112. package/core/serialization/priorities.d.ts +0 -20
  1113. package/core/serialization/procedures.d.ts +0 -97
  1114. package/core/serialization/registry.d.ts +0 -21
  1115. package/core/serialization/variables.d.ts +0 -38
  1116. package/core/serialization/workspace_comments.d.ts +0 -45
  1117. package/core/serialization/workspaces.d.ts +0 -29
  1118. package/core/serialization.d.ts +0 -19
  1119. package/core/shortcut_items.d.ts +0 -54
  1120. package/core/shortcut_registry.d.ts +0 -236
  1121. package/core/sprites.d.ts +0 -15
  1122. package/core/theme/classic.d.ts +0 -12
  1123. package/core/theme/themes.d.ts +0 -9
  1124. package/core/theme/zelos.d.ts +0 -11
  1125. package/core/theme.d.ts +0 -151
  1126. package/core/theme_manager.d.ts +0 -92
  1127. package/core/toast.d.ts +0 -74
  1128. package/core/toolbox/category.d.ts +0 -265
  1129. package/core/toolbox/collapsible_category.d.ts +0 -99
  1130. package/core/toolbox/separator.d.ts +0 -40
  1131. package/core/toolbox/toolbox.d.ts +0 -417
  1132. package/core/toolbox/toolbox_item.d.ts +0 -109
  1133. package/core/tooltip.d.ts +0 -118
  1134. package/core/touch.d.ts +0 -72
  1135. package/core/trashcan.d.ts +0 -212
  1136. package/core/utils/aria.d.ts +0 -69
  1137. package/core/utils/array.d.ts +0 -15
  1138. package/core/utils/colour.d.ts +0 -102
  1139. package/core/utils/coordinate.d.ts +0 -87
  1140. package/core/utils/deprecation.d.ts +0 -18
  1141. package/core/utils/dom.d.ts +0 -154
  1142. package/core/utils/drag.d.ts +0 -33
  1143. package/core/utils/focusable_tree_traverser.d.ts +0 -53
  1144. package/core/utils/idgenerator.d.ts +0 -33
  1145. package/core/utils/keycodes.d.ts +0 -136
  1146. package/core/utils/math.d.ts +0 -31
  1147. package/core/utils/metrics.d.ts +0 -64
  1148. package/core/utils/object.d.ts +0 -17
  1149. package/core/utils/parsing.d.ts +0 -52
  1150. package/core/utils/rect.d.ts +0 -82
  1151. package/core/utils/size.d.ts +0 -44
  1152. package/core/utils/string.d.ts +0 -46
  1153. package/core/utils/style.d.ts +0 -89
  1154. package/core/utils/svg.d.ts +0 -75
  1155. package/core/utils/svg_math.d.ts +0 -64
  1156. package/core/utils/svg_paths.d.ts +0 -103
  1157. package/core/utils/toolbox.d.ts +0 -180
  1158. package/core/utils/useragent.d.ts +0 -14
  1159. package/core/utils/xml.d.ts +0 -96
  1160. package/core/utils.d.ts +0 -31
  1161. package/core/variable_map.d.ts +0 -164
  1162. package/core/variable_model.d.ts +0 -73
  1163. package/core/variables.d.ts +0 -238
  1164. package/core/variables_dynamic.d.ts +0 -56
  1165. package/core/widgetdiv.d.ts +0 -87
  1166. package/core/workspace.d.ts +0 -482
  1167. package/core/workspace_audio.d.ts +0 -61
  1168. package/core/workspace_dragger.d.ts +0 -54
  1169. package/core/workspace_svg.d.ts +0 -1103
  1170. package/core/xml.d.ts +0 -127
  1171. package/core/zoom_controls.d.ts +0 -134
  1172. package/core.js +0 -4
  1173. package/dart.js +0 -4
  1174. package/dart.mjs +0 -6
  1175. package/dart_compressed.js +0 -330
  1176. package/dart_compressed.js.map +0 -1
  1177. package/generators/dart/dart_generator.d.ts +0 -104
  1178. package/generators/dart/lists.d.ts +0 -21
  1179. package/generators/dart/logic.d.ts +0 -20
  1180. package/generators/dart/loops.d.ts +0 -14
  1181. package/generators/dart/math.d.ts +0 -26
  1182. package/generators/dart/procedures.d.ts +0 -14
  1183. package/generators/dart/text.d.ts +0 -25
  1184. package/generators/dart/variables.d.ts +0 -14
  1185. package/generators/dart/variables_dynamic.d.ts +0 -10
  1186. package/generators/dart.d.ts +0 -18
  1187. package/generators/javascript/javascript_generator.d.ts +0 -123
  1188. package/generators/javascript/lists.d.ts +0 -21
  1189. package/generators/javascript/logic.d.ts +0 -20
  1190. package/generators/javascript/loops.d.ts +0 -14
  1191. package/generators/javascript/math.d.ts +0 -26
  1192. package/generators/javascript/procedures.d.ts +0 -14
  1193. package/generators/javascript/text.d.ts +0 -25
  1194. package/generators/javascript/variables.d.ts +0 -14
  1195. package/generators/javascript/variables_dynamic.d.ts +0 -10
  1196. package/generators/javascript.d.ts +0 -18
  1197. package/generators/lua/lists.d.ts +0 -21
  1198. package/generators/lua/logic.d.ts +0 -20
  1199. package/generators/lua/loops.d.ts +0 -14
  1200. package/generators/lua/lua_generator.d.ts +0 -91
  1201. package/generators/lua/math.d.ts +0 -26
  1202. package/generators/lua/procedures.d.ts +0 -14
  1203. package/generators/lua/text.d.ts +0 -25
  1204. package/generators/lua/variables.d.ts +0 -14
  1205. package/generators/lua/variables_dynamic.d.ts +0 -10
  1206. package/generators/lua.d.ts +0 -12
  1207. package/generators/php/lists.d.ts +0 -21
  1208. package/generators/php/logic.d.ts +0 -20
  1209. package/generators/php/loops.d.ts +0 -14
  1210. package/generators/php/math.d.ts +0 -26
  1211. package/generators/php/php_generator.d.ts +0 -122
  1212. package/generators/php/procedures.d.ts +0 -14
  1213. package/generators/php/text.d.ts +0 -25
  1214. package/generators/php/variables.d.ts +0 -14
  1215. package/generators/php/variables_dynamic.d.ts +0 -10
  1216. package/generators/php.d.ts +0 -13
  1217. package/generators/python/lists.d.ts +0 -21
  1218. package/generators/python/logic.d.ts +0 -20
  1219. package/generators/python/loops.d.ts +0 -14
  1220. package/generators/python/math.d.ts +0 -26
  1221. package/generators/python/procedures.d.ts +0 -14
  1222. package/generators/python/python_generator.d.ts +0 -111
  1223. package/generators/python/text.d.ts +0 -25
  1224. package/generators/python/variables.d.ts +0 -14
  1225. package/generators/python/variables_dynamic.d.ts +0 -10
  1226. package/generators/python.d.ts +0 -13
  1227. package/index.js +0 -36
  1228. package/index.mjs +0 -163
  1229. package/javascript.js +0 -4
  1230. package/javascript.mjs +0 -6
  1231. package/javascript_compressed.js +0 -264
  1232. package/javascript_compressed.js.map +0 -1
  1233. package/lua.js +0 -4
  1234. package/lua.mjs +0 -6
  1235. package/lua_compressed.js +0 -373
  1236. package/lua_compressed.js.map +0 -1
  1237. package/media/click.ogg +0 -0
  1238. package/media/click.wav +0 -0
  1239. package/media/delete.ogg +0 -0
  1240. package/media/delete.wav +0 -0
  1241. package/media/disconnect.ogg +0 -0
  1242. package/media/disconnect.wav +0 -0
  1243. package/msg/ab.js +0 -466
  1244. package/msg/ab.mjs +0 -446
  1245. package/msg/ace.js +0 -466
  1246. package/msg/ace.mjs +0 -446
  1247. package/msg/af.js +0 -466
  1248. package/msg/af.mjs +0 -446
  1249. package/msg/am.js +0 -466
  1250. package/msg/am.mjs +0 -446
  1251. package/msg/ar.js +0 -466
  1252. package/msg/ar.mjs +0 -446
  1253. package/msg/ast.js +0 -466
  1254. package/msg/ast.mjs +0 -446
  1255. package/msg/az.js +0 -466
  1256. package/msg/az.mjs +0 -446
  1257. package/msg/ba.js +0 -466
  1258. package/msg/ba.mjs +0 -446
  1259. package/msg/bcc.js +0 -466
  1260. package/msg/bcc.mjs +0 -446
  1261. package/msg/be-tarask.js +0 -466
  1262. package/msg/be-tarask.mjs +0 -446
  1263. package/msg/be.js +0 -466
  1264. package/msg/be.mjs +0 -446
  1265. package/msg/bg.js +0 -466
  1266. package/msg/bg.mjs +0 -446
  1267. package/msg/bn.js +0 -466
  1268. package/msg/bn.mjs +0 -446
  1269. package/msg/br.js +0 -466
  1270. package/msg/br.mjs +0 -446
  1271. package/msg/bs.js +0 -466
  1272. package/msg/bs.mjs +0 -446
  1273. package/msg/ca.js +0 -466
  1274. package/msg/ca.mjs +0 -446
  1275. package/msg/cdo.js +0 -466
  1276. package/msg/cdo.mjs +0 -446
  1277. package/msg/ce.js +0 -466
  1278. package/msg/ce.mjs +0 -446
  1279. package/msg/cs.js +0 -466
  1280. package/msg/cs.mjs +0 -446
  1281. package/msg/da.js +0 -466
  1282. package/msg/da.mjs +0 -446
  1283. package/msg/de.js +0 -466
  1284. package/msg/de.mjs +0 -446
  1285. package/msg/diq.js +0 -466
  1286. package/msg/diq.mjs +0 -446
  1287. package/msg/dtp.js +0 -466
  1288. package/msg/dtp.mjs +0 -446
  1289. package/msg/dty.js +0 -466
  1290. package/msg/dty.mjs +0 -446
  1291. package/msg/ee.js +0 -466
  1292. package/msg/ee.mjs +0 -446
  1293. package/msg/el.js +0 -466
  1294. package/msg/el.mjs +0 -446
  1295. package/msg/en-gb.js +0 -466
  1296. package/msg/en-gb.mjs +0 -446
  1297. package/msg/en.js +0 -466
  1298. package/msg/en.mjs +0 -446
  1299. package/msg/eo.js +0 -466
  1300. package/msg/eo.mjs +0 -446
  1301. package/msg/es.js +0 -466
  1302. package/msg/es.mjs +0 -446
  1303. package/msg/et.js +0 -466
  1304. package/msg/et.mjs +0 -446
  1305. package/msg/eu.js +0 -466
  1306. package/msg/eu.mjs +0 -446
  1307. package/msg/fa.js +0 -466
  1308. package/msg/fa.mjs +0 -446
  1309. package/msg/fi.js +0 -466
  1310. package/msg/fi.mjs +0 -446
  1311. package/msg/fo.js +0 -466
  1312. package/msg/fo.mjs +0 -446
  1313. package/msg/fr.js +0 -466
  1314. package/msg/fr.mjs +0 -446
  1315. package/msg/frr.js +0 -466
  1316. package/msg/frr.mjs +0 -446
  1317. package/msg/gl.js +0 -466
  1318. package/msg/gl.mjs +0 -446
  1319. package/msg/gn.js +0 -466
  1320. package/msg/gn.mjs +0 -446
  1321. package/msg/gor.js +0 -466
  1322. package/msg/gor.mjs +0 -446
  1323. package/msg/ha.js +0 -466
  1324. package/msg/ha.mjs +0 -446
  1325. package/msg/hak.js +0 -466
  1326. package/msg/hak.mjs +0 -446
  1327. package/msg/he.js +0 -466
  1328. package/msg/he.mjs +0 -446
  1329. package/msg/hi.js +0 -466
  1330. package/msg/hi.mjs +0 -446
  1331. package/msg/hr.js +0 -466
  1332. package/msg/hr.mjs +0 -446
  1333. package/msg/hrx.js +0 -466
  1334. package/msg/hrx.mjs +0 -446
  1335. package/msg/hsb.js +0 -466
  1336. package/msg/hsb.mjs +0 -446
  1337. package/msg/hu.js +0 -466
  1338. package/msg/hu.mjs +0 -446
  1339. package/msg/hy.js +0 -466
  1340. package/msg/hy.mjs +0 -446
  1341. package/msg/ia.js +0 -466
  1342. package/msg/ia.mjs +0 -446
  1343. package/msg/id.js +0 -466
  1344. package/msg/id.mjs +0 -446
  1345. package/msg/ig.js +0 -466
  1346. package/msg/ig.mjs +0 -446
  1347. package/msg/inh.js +0 -466
  1348. package/msg/inh.mjs +0 -446
  1349. package/msg/is.js +0 -466
  1350. package/msg/is.mjs +0 -446
  1351. package/msg/it.js +0 -466
  1352. package/msg/it.mjs +0 -446
  1353. package/msg/ja.js +0 -466
  1354. package/msg/ja.mjs +0 -446
  1355. package/msg/ka.js +0 -466
  1356. package/msg/ka.mjs +0 -446
  1357. package/msg/kab.js +0 -466
  1358. package/msg/kab.mjs +0 -446
  1359. package/msg/kbd-cyrl.js +0 -466
  1360. package/msg/kbd-cyrl.mjs +0 -446
  1361. package/msg/km.js +0 -466
  1362. package/msg/km.mjs +0 -446
  1363. package/msg/kn.js +0 -466
  1364. package/msg/kn.mjs +0 -446
  1365. package/msg/ko.js +0 -466
  1366. package/msg/ko.mjs +0 -446
  1367. package/msg/ksh.js +0 -466
  1368. package/msg/ksh.mjs +0 -446
  1369. package/msg/ku-latn.js +0 -466
  1370. package/msg/ku-latn.mjs +0 -446
  1371. package/msg/ky.js +0 -466
  1372. package/msg/ky.mjs +0 -446
  1373. package/msg/la.js +0 -466
  1374. package/msg/la.mjs +0 -446
  1375. package/msg/lb.js +0 -466
  1376. package/msg/lb.mjs +0 -446
  1377. package/msg/lki.js +0 -466
  1378. package/msg/lki.mjs +0 -446
  1379. package/msg/lo.js +0 -466
  1380. package/msg/lo.mjs +0 -446
  1381. package/msg/lrc.js +0 -466
  1382. package/msg/lrc.mjs +0 -446
  1383. package/msg/lt.js +0 -466
  1384. package/msg/lt.mjs +0 -446
  1385. package/msg/lv.js +0 -466
  1386. package/msg/lv.mjs +0 -446
  1387. package/msg/mg.js +0 -466
  1388. package/msg/mg.mjs +0 -446
  1389. package/msg/mk.js +0 -466
  1390. package/msg/mk.mjs +0 -446
  1391. package/msg/ml.js +0 -466
  1392. package/msg/ml.mjs +0 -446
  1393. package/msg/mnw.js +0 -466
  1394. package/msg/mnw.mjs +0 -446
  1395. package/msg/ms.js +0 -466
  1396. package/msg/ms.mjs +0 -446
  1397. package/msg/my.js +0 -466
  1398. package/msg/my.mjs +0 -446
  1399. package/msg/mzn.js +0 -466
  1400. package/msg/mzn.mjs +0 -446
  1401. package/msg/nb.js +0 -466
  1402. package/msg/nb.mjs +0 -446
  1403. package/msg/ne.js +0 -466
  1404. package/msg/ne.mjs +0 -446
  1405. package/msg/nl.js +0 -466
  1406. package/msg/nl.mjs +0 -446
  1407. package/msg/oc.js +0 -466
  1408. package/msg/oc.mjs +0 -446
  1409. package/msg/olo.js +0 -466
  1410. package/msg/olo.mjs +0 -446
  1411. package/msg/pa.js +0 -466
  1412. package/msg/pa.mjs +0 -446
  1413. package/msg/pl.js +0 -466
  1414. package/msg/pl.mjs +0 -446
  1415. package/msg/pms.js +0 -466
  1416. package/msg/pms.mjs +0 -446
  1417. package/msg/ps.js +0 -466
  1418. package/msg/ps.mjs +0 -446
  1419. package/msg/pt-br.js +0 -466
  1420. package/msg/pt-br.mjs +0 -446
  1421. package/msg/pt.js +0 -466
  1422. package/msg/pt.mjs +0 -446
  1423. package/msg/ro.js +0 -466
  1424. package/msg/ro.mjs +0 -446
  1425. package/msg/ru.js +0 -466
  1426. package/msg/ru.mjs +0 -446
  1427. package/msg/sc.js +0 -466
  1428. package/msg/sc.mjs +0 -446
  1429. package/msg/sco.js +0 -466
  1430. package/msg/sco.mjs +0 -446
  1431. package/msg/sd.js +0 -466
  1432. package/msg/sd.mjs +0 -446
  1433. package/msg/shn.js +0 -466
  1434. package/msg/shn.mjs +0 -446
  1435. package/msg/si.js +0 -466
  1436. package/msg/si.mjs +0 -446
  1437. package/msg/sk.js +0 -466
  1438. package/msg/sk.mjs +0 -446
  1439. package/msg/skr-arab.js +0 -466
  1440. package/msg/skr-arab.mjs +0 -446
  1441. package/msg/sl.js +0 -466
  1442. package/msg/sl.mjs +0 -446
  1443. package/msg/smn.js +0 -466
  1444. package/msg/smn.mjs +0 -446
  1445. package/msg/sq.js +0 -466
  1446. package/msg/sq.mjs +0 -446
  1447. package/msg/sr-latn.js +0 -466
  1448. package/msg/sr-latn.mjs +0 -446
  1449. package/msg/sr.js +0 -466
  1450. package/msg/sr.mjs +0 -446
  1451. package/msg/sv.js +0 -466
  1452. package/msg/sv.mjs +0 -446
  1453. package/msg/sw.js +0 -466
  1454. package/msg/sw.mjs +0 -446
  1455. package/msg/ta.js +0 -466
  1456. package/msg/ta.mjs +0 -446
  1457. package/msg/tcy.js +0 -466
  1458. package/msg/tcy.mjs +0 -446
  1459. package/msg/tdd.js +0 -466
  1460. package/msg/tdd.mjs +0 -446
  1461. package/msg/te.js +0 -466
  1462. package/msg/te.mjs +0 -446
  1463. package/msg/th.js +0 -466
  1464. package/msg/th.mjs +0 -446
  1465. package/msg/ti.js +0 -466
  1466. package/msg/ti.mjs +0 -446
  1467. package/msg/tl.js +0 -466
  1468. package/msg/tl.mjs +0 -446
  1469. package/msg/tlh.js +0 -466
  1470. package/msg/tlh.mjs +0 -446
  1471. package/msg/tr.js +0 -466
  1472. package/msg/tr.mjs +0 -446
  1473. package/msg/ug-arab.js +0 -466
  1474. package/msg/ug-arab.mjs +0 -446
  1475. package/msg/uk.js +0 -466
  1476. package/msg/uk.mjs +0 -446
  1477. package/msg/ur.js +0 -466
  1478. package/msg/ur.mjs +0 -446
  1479. package/msg/uz.js +0 -466
  1480. package/msg/uz.mjs +0 -446
  1481. package/msg/vi.js +0 -466
  1482. package/msg/vi.mjs +0 -446
  1483. package/msg/xmf.js +0 -466
  1484. package/msg/xmf.mjs +0 -446
  1485. package/msg/yo.js +0 -466
  1486. package/msg/yo.mjs +0 -446
  1487. package/msg/zgh.js +0 -466
  1488. package/msg/zgh.mjs +0 -446
  1489. package/msg/zh-hans.js +0 -466
  1490. package/msg/zh-hans.mjs +0 -446
  1491. package/msg/zh-hant.js +0 -466
  1492. package/msg/zh-hant.mjs +0 -446
  1493. package/php.js +0 -4
  1494. package/php.mjs +0 -6
  1495. package/php_compressed.js +0 -283
  1496. package/php_compressed.js.map +0 -1
  1497. package/python.js +0 -4
  1498. package/python.mjs +0 -6
  1499. package/python_compressed.js +0 -208
  1500. package/python_compressed.js.map +0 -1
  1501. /package/{README.md → scripts/package/README.md} +0 -0
  1502. /package/{core-node.js → scripts/package/core-node.js} +0 -0
  1503. /package/{blocks.d.ts → typings/blocks.d.ts} +0 -0
  1504. /package/{core.d.ts → typings/core.d.ts} +0 -0
  1505. /package/{dart.d.ts → typings/dart.d.ts} +0 -0
  1506. /package/{index.d.ts → typings/index.d.ts} +0 -0
  1507. /package/{javascript.d.ts → typings/javascript.d.ts} +0 -0
  1508. /package/{lua.d.ts → typings/lua.d.ts} +0 -0
  1509. /package/{msg → typings/msg}/ab.d.ts +0 -0
  1510. /package/{msg → typings/msg}/ace.d.ts +0 -0
  1511. /package/{msg → typings/msg}/af.d.ts +0 -0
  1512. /package/{msg → typings/msg}/am.d.ts +0 -0
  1513. /package/{msg → typings/msg}/ar.d.ts +0 -0
  1514. /package/{msg → typings/msg}/ast.d.ts +0 -0
  1515. /package/{msg → typings/msg}/az.d.ts +0 -0
  1516. /package/{msg → typings/msg}/ba.d.ts +0 -0
  1517. /package/{msg → typings/msg}/bcc.d.ts +0 -0
  1518. /package/{msg → typings/msg}/be-tarask.d.ts +0 -0
  1519. /package/{msg → typings/msg}/be.d.ts +0 -0
  1520. /package/{msg → typings/msg}/bg.d.ts +0 -0
  1521. /package/{msg → typings/msg}/bn.d.ts +0 -0
  1522. /package/{msg → typings/msg}/br.d.ts +0 -0
  1523. /package/{msg → typings/msg}/bs.d.ts +0 -0
  1524. /package/{msg → typings/msg}/ca.d.ts +0 -0
  1525. /package/{msg → typings/msg}/cdo.d.ts +0 -0
  1526. /package/{msg → typings/msg}/ce.d.ts +0 -0
  1527. /package/{msg → typings/msg}/cs.d.ts +0 -0
  1528. /package/{msg → typings/msg}/da.d.ts +0 -0
  1529. /package/{msg → typings/msg}/de.d.ts +0 -0
  1530. /package/{msg → typings/msg}/diq.d.ts +0 -0
  1531. /package/{msg → typings/msg}/dtp.d.ts +0 -0
  1532. /package/{msg → typings/msg}/dty.d.ts +0 -0
  1533. /package/{msg → typings/msg}/ee.d.ts +0 -0
  1534. /package/{msg → typings/msg}/el.d.ts +0 -0
  1535. /package/{msg → typings/msg}/en-gb.d.ts +0 -0
  1536. /package/{msg → typings/msg}/en.d.ts +0 -0
  1537. /package/{msg → typings/msg}/eo.d.ts +0 -0
  1538. /package/{msg → typings/msg}/es.d.ts +0 -0
  1539. /package/{msg → typings/msg}/et.d.ts +0 -0
  1540. /package/{msg → typings/msg}/eu.d.ts +0 -0
  1541. /package/{msg → typings/msg}/fa.d.ts +0 -0
  1542. /package/{msg → typings/msg}/fi.d.ts +0 -0
  1543. /package/{msg → typings/msg}/fo.d.ts +0 -0
  1544. /package/{msg → typings/msg}/fr.d.ts +0 -0
  1545. /package/{msg → typings/msg}/frr.d.ts +0 -0
  1546. /package/{msg → typings/msg}/gl.d.ts +0 -0
  1547. /package/{msg → typings/msg}/gn.d.ts +0 -0
  1548. /package/{msg → typings/msg}/gor.d.ts +0 -0
  1549. /package/{msg → typings/msg}/ha.d.ts +0 -0
  1550. /package/{msg → typings/msg}/hak.d.ts +0 -0
  1551. /package/{msg → typings/msg}/he.d.ts +0 -0
  1552. /package/{msg → typings/msg}/hi.d.ts +0 -0
  1553. /package/{msg → typings/msg}/hr.d.ts +0 -0
  1554. /package/{msg → typings/msg}/hrx.d.ts +0 -0
  1555. /package/{msg → typings/msg}/hsb.d.ts +0 -0
  1556. /package/{msg → typings/msg}/hu.d.ts +0 -0
  1557. /package/{msg → typings/msg}/hy.d.ts +0 -0
  1558. /package/{msg → typings/msg}/ia.d.ts +0 -0
  1559. /package/{msg → typings/msg}/id.d.ts +0 -0
  1560. /package/{msg → typings/msg}/ig.d.ts +0 -0
  1561. /package/{msg → typings/msg}/inh.d.ts +0 -0
  1562. /package/{msg → typings/msg}/is.d.ts +0 -0
  1563. /package/{msg → typings/msg}/it.d.ts +0 -0
  1564. /package/{msg → typings/msg}/ja.d.ts +0 -0
  1565. /package/{msg → typings/msg}/ka.d.ts +0 -0
  1566. /package/{msg → typings/msg}/kab.d.ts +0 -0
  1567. /package/{msg → typings/msg}/kbd-cyrl.d.ts +0 -0
  1568. /package/{msg → typings/msg}/km.d.ts +0 -0
  1569. /package/{msg → typings/msg}/kn.d.ts +0 -0
  1570. /package/{msg → typings/msg}/ko.d.ts +0 -0
  1571. /package/{msg → typings/msg}/ksh.d.ts +0 -0
  1572. /package/{msg → typings/msg}/ku-latn.d.ts +0 -0
  1573. /package/{msg → typings/msg}/ky.d.ts +0 -0
  1574. /package/{msg → typings/msg}/la.d.ts +0 -0
  1575. /package/{msg → typings/msg}/lb.d.ts +0 -0
  1576. /package/{msg → typings/msg}/lki.d.ts +0 -0
  1577. /package/{msg → typings/msg}/lo.d.ts +0 -0
  1578. /package/{msg → typings/msg}/lrc.d.ts +0 -0
  1579. /package/{msg → typings/msg}/lt.d.ts +0 -0
  1580. /package/{msg → typings/msg}/lv.d.ts +0 -0
  1581. /package/{msg → typings/msg}/mg.d.ts +0 -0
  1582. /package/{msg → typings/msg}/mk.d.ts +0 -0
  1583. /package/{msg → typings/msg}/ml.d.ts +0 -0
  1584. /package/{msg → typings/msg}/mnw.d.ts +0 -0
  1585. /package/{msg → typings/msg}/ms.d.ts +0 -0
  1586. /package/{msg → typings/msg}/msg.d.ts +0 -0
  1587. /package/{msg → typings/msg}/my.d.ts +0 -0
  1588. /package/{msg → typings/msg}/mzn.d.ts +0 -0
  1589. /package/{msg → typings/msg}/nb.d.ts +0 -0
  1590. /package/{msg → typings/msg}/ne.d.ts +0 -0
  1591. /package/{msg → typings/msg}/nl.d.ts +0 -0
  1592. /package/{msg → typings/msg}/oc.d.ts +0 -0
  1593. /package/{msg → typings/msg}/olo.d.ts +0 -0
  1594. /package/{msg → typings/msg}/pa.d.ts +0 -0
  1595. /package/{msg → typings/msg}/pl.d.ts +0 -0
  1596. /package/{msg → typings/msg}/pms.d.ts +0 -0
  1597. /package/{msg → typings/msg}/ps.d.ts +0 -0
  1598. /package/{msg → typings/msg}/pt-br.d.ts +0 -0
  1599. /package/{msg → typings/msg}/pt.d.ts +0 -0
  1600. /package/{msg → typings/msg}/ro.d.ts +0 -0
  1601. /package/{msg → typings/msg}/ru.d.ts +0 -0
  1602. /package/{msg → typings/msg}/sc.d.ts +0 -0
  1603. /package/{msg → typings/msg}/sco.d.ts +0 -0
  1604. /package/{msg → typings/msg}/sd.d.ts +0 -0
  1605. /package/{msg → typings/msg}/shn.d.ts +0 -0
  1606. /package/{msg → typings/msg}/si.d.ts +0 -0
  1607. /package/{msg → typings/msg}/sk.d.ts +0 -0
  1608. /package/{msg → typings/msg}/skr-arab.d.ts +0 -0
  1609. /package/{msg → typings/msg}/sl.d.ts +0 -0
  1610. /package/{msg → typings/msg}/smn.d.ts +0 -0
  1611. /package/{msg → typings/msg}/sq.d.ts +0 -0
  1612. /package/{msg → typings/msg}/sr-latn.d.ts +0 -0
  1613. /package/{msg → typings/msg}/sr.d.ts +0 -0
  1614. /package/{msg → typings/msg}/sv.d.ts +0 -0
  1615. /package/{msg → typings/msg}/sw.d.ts +0 -0
  1616. /package/{msg → typings/msg}/ta.d.ts +0 -0
  1617. /package/{msg → typings/msg}/tcy.d.ts +0 -0
  1618. /package/{msg → typings/msg}/tdd.d.ts +0 -0
  1619. /package/{msg → typings/msg}/te.d.ts +0 -0
  1620. /package/{msg → typings/msg}/th.d.ts +0 -0
  1621. /package/{msg → typings/msg}/ti.d.ts +0 -0
  1622. /package/{msg → typings/msg}/tl.d.ts +0 -0
  1623. /package/{msg → typings/msg}/tlh.d.ts +0 -0
  1624. /package/{msg → typings/msg}/tr.d.ts +0 -0
  1625. /package/{msg → typings/msg}/ug-arab.d.ts +0 -0
  1626. /package/{msg → typings/msg}/uk.d.ts +0 -0
  1627. /package/{msg → typings/msg}/ur.d.ts +0 -0
  1628. /package/{msg → typings/msg}/uz.d.ts +0 -0
  1629. /package/{msg → typings/msg}/vi.d.ts +0 -0
  1630. /package/{msg → typings/msg}/xmf.d.ts +0 -0
  1631. /package/{msg → typings/msg}/yo.d.ts +0 -0
  1632. /package/{msg → typings/msg}/zgh.d.ts +0 -0
  1633. /package/{msg → typings/msg}/zh-hans.d.ts +0 -0
  1634. /package/{msg → typings/msg}/zh-hant.d.ts +0 -0
  1635. /package/{php.d.ts → typings/php.d.ts} +0 -0
  1636. /package/{python.d.ts → typings/python.d.ts} +0 -0
@@ -0,0 +1,190 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ // Former goog.module ID: Blockly.IFlyout
8
+
9
+ import type {BlockSvg} from '../block_svg.js';
10
+ import type {FlyoutItem} from '../flyout_item.js';
11
+ import type {Coordinate} from '../utils/coordinate.js';
12
+ import type {Svg} from '../utils/svg.js';
13
+ import type {FlyoutDefinition} from '../utils/toolbox.js';
14
+ import type {WorkspaceSvg} from '../workspace_svg.js';
15
+ import {IFocusableTree} from './i_focusable_tree.js';
16
+ import type {IRegistrable} from './i_registrable.js';
17
+
18
+ /**
19
+ * Interface for a flyout.
20
+ */
21
+ export interface IFlyout extends IRegistrable, IFocusableTree {
22
+ /** Whether the flyout is laid out horizontally or not. */
23
+ horizontalLayout: boolean;
24
+
25
+ /** Is RTL vs LTR. */
26
+ RTL: boolean;
27
+
28
+ /** The target workspace */
29
+ targetWorkspace: WorkspaceSvg | null;
30
+
31
+ /** Margin around the edges of the blocks in the flyout. */
32
+ readonly MARGIN: number;
33
+
34
+ /** Does the flyout automatically close when a block is created? */
35
+ autoClose: boolean;
36
+
37
+ /** Corner radius of the flyout background. */
38
+ readonly CORNER_RADIUS: number;
39
+
40
+ /**
41
+ * Creates the flyout's DOM. Only needs to be called once. The flyout can
42
+ * either exist as its own svg element or be a g element nested inside a
43
+ * separate svg element.
44
+ *
45
+ * @param tagName The type of tag to put the flyout in. This should be <svg>
46
+ * or <g>.
47
+ * @returns The flyout's SVG group.
48
+ */
49
+ createDom(
50
+ tagName: string | Svg<SVGSVGElement> | Svg<SVGGElement>,
51
+ ): SVGElement;
52
+
53
+ /**
54
+ * Initializes the flyout.
55
+ *
56
+ * @param targetWorkspace The workspace in which to create new blocks.
57
+ */
58
+ init(targetWorkspace: WorkspaceSvg): void;
59
+
60
+ /**
61
+ * Dispose of this flyout.
62
+ * Unlink from all DOM elements to prevent memory leaks.
63
+ */
64
+ dispose(): void;
65
+
66
+ /**
67
+ * Get the width of the flyout.
68
+ *
69
+ * @returns The width of the flyout.
70
+ */
71
+ getWidth(): number;
72
+
73
+ /**
74
+ * Get the height of the flyout.
75
+ *
76
+ * @returns The height of the flyout.
77
+ */
78
+ getHeight(): number;
79
+
80
+ /**
81
+ * Get the workspace inside the flyout.
82
+ *
83
+ * @returns The workspace inside the flyout.
84
+ */
85
+ getWorkspace(): WorkspaceSvg;
86
+
87
+ /**
88
+ * Is the flyout visible?
89
+ *
90
+ * @returns True if visible.
91
+ */
92
+ isVisible(): boolean;
93
+
94
+ /**
95
+ * Set whether the flyout is visible. A value of true does not necessarily
96
+ * mean that the flyout is shown. It could be hidden because its container is
97
+ * hidden.
98
+ *
99
+ * @param visible True if visible.
100
+ */
101
+ setVisible(visible: boolean): void;
102
+
103
+ /**
104
+ * Set whether this flyout's container is visible.
105
+ *
106
+ * @param visible Whether the container is visible.
107
+ */
108
+ setContainerVisible(visible: boolean): void;
109
+
110
+ /** Hide and empty the flyout. */
111
+ hide(): void;
112
+
113
+ /**
114
+ * Show and populate the flyout.
115
+ *
116
+ * @param flyoutDef Contents to display in the flyout. This is either an array
117
+ * of Nodes, a NodeList, a toolbox definition, or a string with the name
118
+ * of the dynamic category.
119
+ */
120
+ show(flyoutDef: FlyoutDefinition | string): void;
121
+
122
+ /**
123
+ * Returns the list of flyout items currently present in the flyout.
124
+ * The `show` method parses the flyout definition into a list of actual
125
+ * flyout items. This method should return those concrete items, which
126
+ * may be used for e.g. keyboard navigation.
127
+ *
128
+ * @returns List of flyout items.
129
+ */
130
+ getContents(): FlyoutItem[];
131
+
132
+ /**
133
+ * Create a copy of this block on the workspace.
134
+ *
135
+ * @param originalBlock The block to copy from the flyout.
136
+ * @returns The newly created block.
137
+ * @throws {Error} if something went wrong with deserialization.
138
+ */
139
+ createBlock(originalBlock: BlockSvg): BlockSvg;
140
+
141
+ /** Reflow blocks and their mats. */
142
+ reflow(): void;
143
+
144
+ /**
145
+ * @returns True if this flyout may be scrolled with a scrollbar or by
146
+ * dragging.
147
+ */
148
+ isScrollable(): boolean;
149
+
150
+ /**
151
+ * Calculates the x coordinate for the flyout position.
152
+ *
153
+ * @returns X coordinate.
154
+ */
155
+ getX(): number;
156
+
157
+ /**
158
+ * Calculates the y coordinate for the flyout position.
159
+ *
160
+ * @returns Y coordinate.
161
+ */
162
+ getY(): number;
163
+
164
+ /** Position the flyout. */
165
+ position(): void;
166
+
167
+ /**
168
+ * Determine if a drag delta is toward the workspace, based on the position
169
+ * and orientation of the flyout. This is used in determineDragIntention_ to
170
+ * determine if a new block should be created or if the flyout should scroll.
171
+ *
172
+ * @param currentDragDeltaXY How far the pointer has moved from the position
173
+ * at mouse down, in pixel units.
174
+ * @returns True if the drag is toward the workspace.
175
+ */
176
+ isDragTowardWorkspace(currentDragDeltaXY: Coordinate): boolean;
177
+
178
+ /**
179
+ * Does this flyout allow you to create a new instance of the given block?
180
+ * Used for deciding if a block can be "dragged out of" the flyout.
181
+ *
182
+ * @param block The block to copy from the flyout.
183
+ * @returns True if you can create a new instance of the block, false
184
+ * otherwise.
185
+ */
186
+ isBlockCreatable(block: BlockSvg): boolean;
187
+
188
+ /** Scroll the flyout to the beginning of its contents. */
189
+ scrollToStart(): void;
190
+ }
@@ -0,0 +1,51 @@
1
+ import type {FlyoutItem} from '../flyout_item.js';
2
+ import type {IFlyout} from './i_flyout.js';
3
+
4
+ export interface IFlyoutInflater {
5
+ /**
6
+ * Loads the object represented by the given state onto the workspace.
7
+ *
8
+ * Note that this method's interface is identical to that in ISerializer, to
9
+ * allow for code reuse.
10
+ *
11
+ * @param state A JSON representation of an element to inflate on the flyout.
12
+ * @param flyout The flyout on whose workspace the inflated element
13
+ * should be created. If the inflated element is an `IRenderedElement` it
14
+ * itself or the inflater should append it to the workspace; the flyout
15
+ * will not do so itself. The flyout is responsible for positioning the
16
+ * element, however.
17
+ * @returns The newly inflated flyout element.
18
+ */
19
+ load(state: object, flyout: IFlyout): FlyoutItem;
20
+
21
+ /**
22
+ * Returns the amount of spacing that should follow the element corresponding
23
+ * to the given JSON representation.
24
+ *
25
+ * @param state A JSON representation of the element preceding the gap.
26
+ * @param defaultGap The default gap for elements in this flyout.
27
+ * @returns The gap that should follow the given element.
28
+ */
29
+ gapForItem(state: object, defaultGap: number): number;
30
+
31
+ /**
32
+ * Disposes of the given element.
33
+ *
34
+ * If the element in question resides on the flyout workspace, it should remove
35
+ * itself. Implementers are not otherwise required to fully dispose of the
36
+ * element; it may be e.g. cached for performance purposes.
37
+ *
38
+ * @param element The flyout element to dispose of.
39
+ */
40
+ disposeItem(item: FlyoutItem): void;
41
+
42
+ /**
43
+ * Returns the type of items that this inflater is responsible for inflating.
44
+ * This should be the same as the name under which this inflater registers
45
+ * itself, as well as the value returned by `getType()` on the `FlyoutItem`
46
+ * objects returned by `load()`.
47
+ *
48
+ * @returns The type of items this inflater creates.
49
+ */
50
+ getType(): string;
51
+ }
@@ -0,0 +1,120 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ import type {IFocusableTree} from './i_focusable_tree.js';
8
+
9
+ /** Represents anything that can have input focus. */
10
+ export interface IFocusableNode {
11
+ /**
12
+ * Returns the DOM element that can be explicitly requested to receive focus.
13
+ *
14
+ * IMPORTANT: Please note that this element is expected to have a visual
15
+ * presence on the page as it will both be explicitly focused and have its
16
+ * style changed depending on its current focus state (i.e. blurred, actively
17
+ * focused, and passively focused). The element will have one of two styles
18
+ * attached (where no style indicates blurred/not focused):
19
+ * - blocklyActiveFocus
20
+ * - blocklyPassiveFocus
21
+ *
22
+ * The returned element must also have a valid ID specified, and this ID
23
+ * should be unique across the entire page. Failing to have a properly unique
24
+ * ID could result in trying to focus one node (such as via a mouse click)
25
+ * leading to another node with the same ID actually becoming focused by
26
+ * FocusManager.
27
+ *
28
+ * The returned element must be visible if the node is ever focused via
29
+ * FocusManager.focusNode() or FocusManager.focusTree(). It's allowed for an
30
+ * element to be hidden until onNodeFocus() is called, or become hidden with a
31
+ * call to onNodeBlur().
32
+ *
33
+ * It's expected the actual returned element will not change for the lifetime
34
+ * of the node (that is, its properties can change but a new element should
35
+ * never be returned). Also, the returned element will have its tabindex
36
+ * overwritten throughout the lifecycle of this node and FocusManager.
37
+ *
38
+ * If a node requires the ability to be focused directly without first being
39
+ * focused via FocusManager then it must set its own tab index.
40
+ *
41
+ * @returns The HTMLElement or SVGElement which can both receive focus and be
42
+ * visually represented as actively or passively focused for this node.
43
+ */
44
+ getFocusableElement(): HTMLElement | SVGElement;
45
+
46
+ /**
47
+ * Returns the closest parent tree of this node (in cases where a tree has
48
+ * distinct trees underneath it), which represents the tree to which this node
49
+ * belongs.
50
+ *
51
+ * @returns The node's IFocusableTree.
52
+ */
53
+ getFocusableTree(): IFocusableTree;
54
+
55
+ /**
56
+ * Called when this node receives active focus.
57
+ *
58
+ * Note that it's fine for implementations to change visibility modifiers, but
59
+ * they should avoid the following:
60
+ * - Creating or removing DOM elements (including via the renderer or drawer).
61
+ * - Affecting focus via DOM focus() calls or the FocusManager.
62
+ *
63
+ * Implementations may consider scrolling themselves into view here; that is
64
+ * not handled by the focus manager.
65
+ */
66
+ onNodeFocus(): void;
67
+
68
+ /**
69
+ * Called when this node loses active focus. It may still have passive focus.
70
+ *
71
+ * This has the same implementation restrictions as onNodeFocus().
72
+ */
73
+ onNodeBlur(): void;
74
+
75
+ /**
76
+ * Indicates whether this node allows focus. If this returns false then none
77
+ * of the other IFocusableNode methods will be called.
78
+ *
79
+ * Note that special care must be taken if implementations of this function
80
+ * dynamically change their return value value over the lifetime of the node
81
+ * as certain environment conditions could affect the focusability of this
82
+ * node's DOM element (such as whether the element has a positive or zero
83
+ * tabindex). Also, changing from a true to a false value while the node holds
84
+ * focus will not immediately change the current focus of the node nor
85
+ * FocusManager's internal state, and thus may result in some of the node's
86
+ * functions being called later on when defocused (since it was previously
87
+ * considered focusable at the time of being focused).
88
+ *
89
+ * Implementations should generally always return true here unless there are
90
+ * circumstances under which this node should be skipped for focus
91
+ * considerations. Examples may include being disabled, read-only, a purely
92
+ * visual decoration, or a node with no visual representation that must
93
+ * implement this interface (e.g. due to a parent interface extending it).
94
+ * Keep in mind accessibility best practices when determining whether a node
95
+ * should be focusable since even disabled and read-only elements are still
96
+ * often relevant to providing organizational context to users (particularly
97
+ * when using a screen reader).
98
+ *
99
+ * @returns Whether this node can be focused by FocusManager.
100
+ */
101
+ canBeFocused(): boolean;
102
+ }
103
+
104
+ /**
105
+ * Determines whether the provided object fulfills the contract of
106
+ * IFocusableNode.
107
+ *
108
+ * @param obj The object to test.
109
+ * @returns Whether the provided object can be used as an IFocusableNode.
110
+ */
111
+ export function isFocusableNode(obj: any): obj is IFocusableNode {
112
+ return (
113
+ obj &&
114
+ typeof obj.getFocusableElement === 'function' &&
115
+ typeof obj.getFocusableTree === 'function' &&
116
+ typeof obj.onNodeFocus === 'function' &&
117
+ typeof obj.onNodeBlur === 'function' &&
118
+ typeof obj.canBeFocused === 'function'
119
+ );
120
+ }
@@ -0,0 +1,144 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ import type {IFocusableNode} from './i_focusable_node.js';
8
+
9
+ /**
10
+ * Represents a tree of focusable elements with its own active/passive focus
11
+ * context.
12
+ *
13
+ * Note that focus is handled by FocusManager, and tree implementations can have
14
+ * at most one IFocusableNode focused at one time. If the tree itself has focus,
15
+ * then the tree's focused node is considered 'active' ('passive' if another
16
+ * tree has focus).
17
+ *
18
+ * Focus is shared between one or more trees, where each tree can have exactly
19
+ * one active or passive node (and only one active node can exist on the whole
20
+ * page at any given time). The idea of passive focus is to provide context to
21
+ * users on where their focus will be restored upon navigating back to a
22
+ * previously focused tree.
23
+ *
24
+ * Note that if the tree's current focused node (passive or active) is needed,
25
+ * FocusableTreeTraverser.findFocusedNode can be used.
26
+ *
27
+ * Note that if specific nodes are needed to be retrieved for this tree, either
28
+ * use lookUpFocusableNode or FocusableTreeTraverser.findFocusableNodeFor.
29
+ */
30
+ export interface IFocusableTree {
31
+ /**
32
+ * Returns the top-level focusable node of the tree.
33
+ *
34
+ * It's expected that the returned node will be focused in cases where
35
+ * FocusManager wants to focus a tree in a situation where it does not
36
+ * currently have a focused node.
37
+ */
38
+ getRootFocusableNode(): IFocusableNode;
39
+
40
+ /**
41
+ * Returns the IFocusableNode of this tree that should receive active focus
42
+ * when the tree itself has focus returned to it.
43
+ *
44
+ * There are some very important notes to consider about a tree's focus
45
+ * lifecycle when implementing a version of this method that doesn't return
46
+ * null:
47
+ * 1. A null previousNode does not guarantee first-time focus state as nodes
48
+ * can be deleted.
49
+ * 2. This method is only used when the tree itself is focused, either through
50
+ * tab navigation or via FocusManager.focusTree(). In many cases, the
51
+ * previously focused node will be directly focused instead which will
52
+ * bypass this method.
53
+ * 3. The default behavior (i.e. returning null here) involves either
54
+ * restoring the previous node (previousNode) or focusing the tree's root.
55
+ * 4. The provided node may sometimes no longer be valid, such as in the case
56
+ * an attempt is made to focus a node that has been recently removed from
57
+ * its parent tree. Implementations can check for the validity of the node
58
+ * in order to specialize the node to which focus should fall back.
59
+ *
60
+ * This method is largely intended to provide tree implementations with the
61
+ * means of specifying a better default node than their root.
62
+ *
63
+ * @param previousNode The node that previously held passive focus for this
64
+ * tree, or null if the tree hasn't yet been focused.
65
+ * @returns The IFocusableNode that should now receive focus, or null if
66
+ * default behavior should be used, instead.
67
+ */
68
+ getRestoredFocusableNode(
69
+ previousNode: IFocusableNode | null,
70
+ ): IFocusableNode | null;
71
+
72
+ /**
73
+ * Returns all directly nested trees under this tree.
74
+ *
75
+ * Note that the returned list of trees doesn't need to be stable, however all
76
+ * returned trees *do* need to be registered with FocusManager. Additionally,
77
+ * this must return actual nested trees as omitting a nested tree will affect
78
+ * how focus changes map to a specific node and its tree, potentially leading
79
+ * to user confusion.
80
+ */
81
+ getNestedTrees(): Array<IFocusableTree>;
82
+
83
+ /**
84
+ * Returns the IFocusableNode corresponding to the specified element ID, or
85
+ * null if there's no exact node within this tree with that ID or if the ID
86
+ * corresponds to the root of the tree.
87
+ *
88
+ * This will never match against nested trees.
89
+ *
90
+ * @param id The ID of the node's focusable HTMLElement or SVGElement.
91
+ */
92
+ lookUpFocusableNode(id: string): IFocusableNode | null;
93
+
94
+ /**
95
+ * Called when a node of this tree has received active focus.
96
+ *
97
+ * Note that a null previousTree does not necessarily indicate that this is
98
+ * the first time Blockly is receiving focus. In fact, few assumptions can be
99
+ * made about previous focus state as a previous null tree simply indicates
100
+ * that Blockly did not hold active focus prior to this tree becoming focused
101
+ * (which can happen due to focus exiting the Blockly injection div, or for
102
+ * other cases like ephemeral focus).
103
+ *
104
+ * See IFocusableNode.onNodeFocus() as implementations have the same
105
+ * restrictions as with that method.
106
+ *
107
+ * @param node The node receiving active focus.
108
+ * @param previousTree The previous tree that held active focus, or null if
109
+ * none.
110
+ */
111
+ onTreeFocus(node: IFocusableNode, previousTree: IFocusableTree | null): void;
112
+
113
+ /**
114
+ * Called when the previously actively focused node of this tree is now
115
+ * passively focused and there is no other active node of this tree taking its
116
+ * place.
117
+ *
118
+ * This has the same implementation restrictions and considerations as
119
+ * onTreeFocus().
120
+ *
121
+ * @param nextTree The next tree receiving active focus, or null if none (such
122
+ * as in the case that Blockly is entirely losing DOM focus).
123
+ */
124
+ onTreeBlur(nextTree: IFocusableTree | null): void;
125
+ }
126
+
127
+ /**
128
+ * Determines whether the provided object fulfills the contract of
129
+ * IFocusableTree.
130
+ *
131
+ * @param obj The object to test.
132
+ * @returns Whether the provided object can be used as an IFocusableTree.
133
+ */
134
+ export function isFocusableTree(obj: any): obj is IFocusableTree {
135
+ return (
136
+ obj &&
137
+ typeof obj.getRootFocusableNode === 'function' &&
138
+ typeof obj.getRestoredFocusableNode === 'function' &&
139
+ typeof obj.getNestedTrees === 'function' &&
140
+ typeof obj.lookUpFocusableNode === 'function' &&
141
+ typeof obj.onTreeFocus === 'function' &&
142
+ typeof obj.onTreeBlur === 'function'
143
+ );
144
+ }
@@ -0,0 +1,37 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ import type {IBubble} from './i_bubble';
8
+
9
+ export interface IHasBubble {
10
+ /** @returns True if the bubble is currently open, false otherwise. */
11
+ bubbleIsVisible(): boolean;
12
+
13
+ /** Sets whether the bubble is open or not. */
14
+ setBubbleVisible(visible: boolean): Promise<void>;
15
+
16
+ /**
17
+ * Returns the current IBubble that implementations are managing, or null if
18
+ * there isn't one.
19
+ *
20
+ * Note that this cannot be expected to return null if bubbleIsVisible()
21
+ * returns false, i.e., the nullability of the returned bubble does not
22
+ * necessarily imply visibility.
23
+ *
24
+ * @returns The current IBubble maintained by implementations, or null if
25
+ * there is not one.
26
+ */
27
+ getBubble(): IBubble | null;
28
+ }
29
+
30
+ /** Type guard that checks whether the given object is a IHasBubble. */
31
+ export function hasBubble(obj: any): obj is IHasBubble {
32
+ return (
33
+ typeof obj.bubbleIsVisible === 'function' &&
34
+ typeof obj.setBubbleVisible === 'function' &&
35
+ typeof obj.getBubble === 'function'
36
+ );
37
+ }
@@ -0,0 +1,116 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ import type {IconType} from '../icons/icon_types.js';
8
+ import type {Coordinate} from '../utils/coordinate.js';
9
+ import type {Size} from '../utils/size.js';
10
+ import {IFocusableNode, isFocusableNode} from './i_focusable_node.js';
11
+
12
+ export interface IIcon extends IFocusableNode {
13
+ /**
14
+ * @returns the IconType representing the type of the icon. This value should
15
+ * also be used to register the icon via `Blockly.icons.registry.register`.
16
+ */
17
+ getType(): IconType<IIcon>;
18
+
19
+ /**
20
+ * Creates the SVG elements for the icon that will live on the block.
21
+ *
22
+ * @param pointerdownListener An event listener that must be attached to the
23
+ * root SVG element by the implementation of `initView`. Used by Blockly's
24
+ * gesture system to properly handle clicks and drags.
25
+ */
26
+ initView(pointerdownListener: (e: PointerEvent) => void): void;
27
+
28
+ /**
29
+ * Disposes of any elements of the icon.
30
+ *
31
+ * @remarks
32
+ *
33
+ * In particular, if this icon is currently showing a bubble, this should be
34
+ * used to hide it.
35
+ */
36
+ dispose(): void;
37
+
38
+ /**
39
+ * @returns the "weight" of the icon, which determines the static order which
40
+ * icons should be rendered in. More positive numbers are rendered farther
41
+ * toward the end of the block.
42
+ */
43
+ getWeight(): number;
44
+
45
+ /** @returns The dimensions of the icon for use in rendering. */
46
+ getSize(): Size;
47
+
48
+ /** Updates the icon's color when the block's color changes.. */
49
+ applyColour(): void;
50
+
51
+ /** Hides the icon when it is part of an insertion marker. */
52
+ hideForInsertionMarker(): void;
53
+
54
+ /** Updates the icon's editability when the block's editability changes. */
55
+ updateEditable(): void;
56
+
57
+ /**
58
+ * Updates the icon's collapsed-ness/view when the block's collapsed-ness
59
+ * changes.
60
+ */
61
+ updateCollapsed(): void;
62
+
63
+ /**
64
+ * @returns Whether this icon is shown when the block is collapsed. Used
65
+ * to allow renderers to account for padding.
66
+ */
67
+ isShownWhenCollapsed(): boolean;
68
+
69
+ /**
70
+ * Notifies the icon where it is relative to its block's top-start, in
71
+ * workspace units.
72
+ */
73
+ setOffsetInBlock(offset: Coordinate): void;
74
+
75
+ /**
76
+ * Notifies the icon that it has changed locations.
77
+ *
78
+ * @param blockOrigin The location of this icon's block's top-start corner
79
+ * in workspace coordinates.
80
+ */
81
+ onLocationChange(blockOrigin: Coordinate): void;
82
+
83
+ /**
84
+ * Notifies the icon that it has been clicked.
85
+ */
86
+ onClick(): void;
87
+
88
+ /**
89
+ * Check whether the icon should be clickable while the block is in a flyout.
90
+ * If this function is not defined, the icon will be clickable in all flyouts.
91
+ *
92
+ * @param autoClosingFlyout true if the containing flyout is an auto-closing one.
93
+ * @returns Whether the icon should be clickable while the block is in a flyout.
94
+ */
95
+ isClickableInFlyout?(autoClosingFlyout: boolean): boolean;
96
+ }
97
+
98
+ /** Type guard that checks whether the given object is an IIcon. */
99
+ export function isIcon(obj: any): obj is IIcon {
100
+ return (
101
+ isFocusableNode(obj) &&
102
+ typeof (obj as IIcon).getType === 'function' &&
103
+ typeof (obj as IIcon).initView === 'function' &&
104
+ typeof (obj as IIcon).dispose === 'function' &&
105
+ typeof (obj as IIcon).getWeight === 'function' &&
106
+ typeof (obj as IIcon).getSize === 'function' &&
107
+ typeof (obj as IIcon).applyColour === 'function' &&
108
+ typeof (obj as IIcon).hideForInsertionMarker === 'function' &&
109
+ typeof (obj as IIcon).updateEditable === 'function' &&
110
+ typeof (obj as IIcon).updateCollapsed === 'function' &&
111
+ typeof (obj as IIcon).isShownWhenCollapsed === 'function' &&
112
+ typeof (obj as IIcon).setOffsetInBlock === 'function' &&
113
+ typeof (obj as IIcon).onLocationChange === 'function' &&
114
+ typeof (obj as IIcon).onClick === 'function'
115
+ );
116
+ }
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ // Former goog.module ID: Blockly.IKeyboardAccessible
8
+
9
+ import {KeyboardShortcut} from '../shortcut_registry.js';
10
+
11
+ /**
12
+ * An interface for an object that handles keyboard shortcuts.
13
+ */
14
+ export interface IKeyboardAccessible {
15
+ /**
16
+ * Handles the given keyboard shortcut.
17
+ *
18
+ * @param shortcut The shortcut to be handled.
19
+ * @returns True if the shortcut has been handled, false otherwise.
20
+ */
21
+ onShortcut(shortcut: KeyboardShortcut): boolean;
22
+ }