blockly 8.20220331.0-beta.0 → 9.0.0-beta.1

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 (735) hide show
  1. package/blockly.min.js +2000 -2269
  2. package/blockly_compressed.js +1495 -1994
  3. package/blockly_compressed.js.map +1 -1
  4. package/blocks.d.ts +10 -8
  5. package/blocks_compressed.js +189 -171
  6. package/blocks_compressed.js.map +1 -1
  7. package/closure/goog/base.d.ts +2 -0
  8. package/closure/goog/base_minimal.d.ts +19 -0
  9. package/closure/goog/goog.d.ts +26 -0
  10. package/core/any_aliases.d.ts +2 -0
  11. package/core/block.d.ts +871 -0
  12. package/core/block_animations.d.ts +38 -0
  13. package/core/block_drag_surface.d.ts +124 -0
  14. package/core/block_dragger.d.ts +158 -0
  15. package/core/block_svg.d.ts +656 -0
  16. package/core/blockly.d.ts +583 -0
  17. package/core/blockly_options.d.ts +71 -0
  18. package/core/blocks.d.ts +19 -0
  19. package/core/browser_events.d.ts +94 -0
  20. package/core/bubble.d.ts +309 -0
  21. package/core/bubble_dragger.d.ts +80 -0
  22. package/core/bump_objects.d.ts +38 -0
  23. package/core/clipboard.d.ts +46 -0
  24. package/core/comment.d.ts +123 -0
  25. package/core/common.d.ts +155 -0
  26. package/core/component_manager.d.ts +101 -0
  27. package/core/config.d.ts +24 -0
  28. package/core/connection.d.ts +262 -0
  29. package/core/connection_checker.d.ts +87 -0
  30. package/core/connection_db.d.ts +102 -0
  31. package/core/connection_type.d.ts +17 -0
  32. package/core/constants.d.ts +18 -0
  33. package/core/contextmenu.d.ts +90 -0
  34. package/core/contextmenu_items.d.ts +92 -0
  35. package/core/contextmenu_registry.d.ts +110 -0
  36. package/core/css.d.ts +27 -0
  37. package/core/delete_area.d.ts +51 -0
  38. package/core/dialog.d.ts +68 -0
  39. package/core/drag_target.d.ts +71 -0
  40. package/core/dropdowndiv.d.ts +187 -0
  41. package/core/events/events.d.ts +103 -0
  42. package/core/events/events_abstract.d.ts +58 -0
  43. package/core/events/events_block_base.d.ts +35 -0
  44. package/core/events/events_block_change.d.ts +62 -0
  45. package/core/events/events_block_create.d.ts +40 -0
  46. package/core/events/events_block_delete.d.ts +41 -0
  47. package/core/events/events_block_drag.d.ts +40 -0
  48. package/core/events/events_block_move.d.ts +58 -0
  49. package/core/events/events_bubble_open.d.ts +39 -0
  50. package/core/events/events_click.d.ts +40 -0
  51. package/core/events/events_comment_base.d.ts +44 -0
  52. package/core/events/events_comment_change.d.ts +49 -0
  53. package/core/events/events_comment_create.d.ts +40 -0
  54. package/core/events/events_comment_delete.d.ts +40 -0
  55. package/core/events/events_comment_move.d.ts +62 -0
  56. package/core/events/events_marker_move.d.ts +44 -0
  57. package/core/events/events_selected.d.ts +38 -0
  58. package/core/events/events_theme_change.d.ts +34 -0
  59. package/core/events/events_toolbox_item_select.d.ts +38 -0
  60. package/core/events/events_trashcan_open.d.ts +35 -0
  61. package/core/events/events_ui.d.ts +41 -0
  62. package/core/events/events_ui_base.d.ts +28 -0
  63. package/core/events/events_var_base.d.ts +35 -0
  64. package/core/events/events_var_create.d.ts +40 -0
  65. package/core/events/events_var_delete.d.ts +40 -0
  66. package/core/events/events_var_rename.d.ts +41 -0
  67. package/core/events/events_viewport.d.ts +43 -0
  68. package/core/events/utils.d.ts +315 -0
  69. package/core/events/workspace_events.d.ts +40 -0
  70. package/core/extensions.d.ts +117 -0
  71. package/core/field.d.ts +593 -0
  72. package/core/field_angle.d.ts +187 -0
  73. package/core/field_checkbox.d.ts +137 -0
  74. package/core/field_colour.d.ts +216 -0
  75. package/core/field_dropdown.d.ts +242 -0
  76. package/core/field_image.d.ts +145 -0
  77. package/core/field_label.d.ts +77 -0
  78. package/core/field_label_serializable.d.ts +45 -0
  79. package/core/field_multilineinput.d.ts +161 -0
  80. package/core/field_number.d.ts +172 -0
  81. package/core/field_registry.d.ts +51 -0
  82. package/core/field_textinput.d.ts +239 -0
  83. package/core/field_variable.d.ts +240 -0
  84. package/core/flyout_base.d.ts +505 -0
  85. package/core/flyout_button.d.ts +88 -0
  86. package/core/flyout_horizontal.d.ts +90 -0
  87. package/core/flyout_metrics_manager.d.ts +43 -0
  88. package/core/flyout_vertical.d.ts +91 -0
  89. package/core/generator.d.ts +224 -0
  90. package/core/gesture.d.ts +392 -0
  91. package/core/grid.d.ts +87 -0
  92. package/core/icon.d.ts +87 -0
  93. package/core/inject.d.ts +17 -0
  94. package/core/input.d.ts +143 -0
  95. package/core/input_types.d.ts +16 -0
  96. package/core/insertion_marker_manager.d.ts +230 -0
  97. package/core/interfaces/i_ast_node_location.d.ts +13 -0
  98. package/core/interfaces/i_ast_node_location_svg.d.ts +26 -0
  99. package/core/interfaces/i_ast_node_location_with_block.d.ts +21 -0
  100. package/core/interfaces/i_autohideable.d.ts +21 -0
  101. package/core/interfaces/i_block_dragger.d.ts +49 -0
  102. package/core/interfaces/i_bounded_element.d.ts +28 -0
  103. package/core/interfaces/i_bubble.d.ts +68 -0
  104. package/core/interfaces/i_collapsible_toolbox_item.d.ts +30 -0
  105. package/core/interfaces/i_component.d.ts +19 -0
  106. package/core/interfaces/i_connection_checker.d.ts +77 -0
  107. package/core/interfaces/i_contextmenu.d.ts +15 -0
  108. package/core/interfaces/i_copyable.d.ts +26 -0
  109. package/core/interfaces/i_deletable.d.ts +19 -0
  110. package/core/interfaces/i_delete_area.d.ts +28 -0
  111. package/core/interfaces/i_drag_target.d.ts +61 -0
  112. package/core/interfaces/i_draggable.d.ts +14 -0
  113. package/core/interfaces/i_flyout.d.ts +150 -0
  114. package/core/interfaces/i_keyboard_accessible.d.ts +21 -0
  115. package/core/interfaces/i_metrics_manager.d.ts +129 -0
  116. package/core/interfaces/i_movable.d.ts +19 -0
  117. package/core/interfaces/i_positionable.d.ts +31 -0
  118. package/core/interfaces/i_registrable.d.ts +13 -0
  119. package/core/interfaces/i_registrable_field.d.ts +19 -0
  120. package/core/interfaces/i_selectable.d.ts +20 -0
  121. package/core/interfaces/i_selectable_toolbox_item.d.ts +49 -0
  122. package/core/interfaces/i_serializer.d.ts +47 -0
  123. package/core/interfaces/i_styleable.d.ts +25 -0
  124. package/core/interfaces/i_toolbox.d.ts +96 -0
  125. package/core/interfaces/i_toolbox_item.d.ts +72 -0
  126. package/core/internal_constants.d.ts +46 -0
  127. package/core/keyboard_nav/ast_node.d.ts +266 -0
  128. package/core/keyboard_nav/basic_cursor.d.ts +99 -0
  129. package/core/keyboard_nav/cursor.d.ts +47 -0
  130. package/core/keyboard_nav/marker.d.ts +65 -0
  131. package/core/keyboard_nav/tab_navigate_cursor.d.ts +22 -0
  132. package/core/main.d.ts +12 -0
  133. package/core/marker_manager.d.ts +96 -0
  134. package/core/menu.d.ts +167 -0
  135. package/core/menuitem.d.ts +133 -0
  136. package/core/metrics_manager.d.ts +216 -0
  137. package/core/msg.d.ts +10 -0
  138. package/core/mutator.d.ts +140 -0
  139. package/core/names.d.ts +136 -0
  140. package/core/options.d.ts +143 -0
  141. package/core/positionable_helpers.d.ts +96 -0
  142. package/core/procedures.d.ts +125 -0
  143. package/core/registry.d.ts +148 -0
  144. package/core/rendered_connection.d.ts +212 -0
  145. package/core/renderers/common/block_rendering.d.ts +121 -0
  146. package/core/renderers/common/constants.d.ts +490 -0
  147. package/core/renderers/common/debug.d.ts +32 -0
  148. package/core/renderers/common/debugger.d.ts +131 -0
  149. package/core/renderers/common/drawer.d.ts +144 -0
  150. package/core/renderers/common/i_path_object.d.ts +132 -0
  151. package/core/renderers/common/info.d.ts +211 -0
  152. package/core/renderers/common/marker_svg.d.ts +249 -0
  153. package/core/renderers/common/path_object.d.ts +166 -0
  154. package/core/renderers/common/renderer.d.ts +178 -0
  155. package/core/renderers/geras/constants.d.ts +25 -0
  156. package/core/renderers/geras/drawer.d.ts +45 -0
  157. package/core/renderers/geras/geras.d.ts +12 -0
  158. package/core/renderers/geras/highlight_constants.d.ts +111 -0
  159. package/core/renderers/geras/highlighter.d.ts +109 -0
  160. package/core/renderers/geras/info.d.ts +48 -0
  161. package/core/renderers/geras/measurables/inline_input.d.ts +25 -0
  162. package/core/renderers/geras/measurables/statement_input.d.ts +25 -0
  163. package/core/renderers/geras/path_object.d.ts +51 -0
  164. package/core/renderers/geras/renderer.d.ts +79 -0
  165. package/core/renderers/measurables/base.d.ts +29 -0
  166. package/core/renderers/measurables/bottom_row.d.ts +67 -0
  167. package/core/renderers/measurables/connection.d.ts +27 -0
  168. package/core/renderers/measurables/external_value_input.d.ts +28 -0
  169. package/core/renderers/measurables/field.d.ts +31 -0
  170. package/core/renderers/measurables/hat.d.ts +22 -0
  171. package/core/renderers/measurables/icon.d.ts +28 -0
  172. package/core/renderers/measurables/in_row_spacer.d.ts +22 -0
  173. package/core/renderers/measurables/inline_input.d.ts +25 -0
  174. package/core/renderers/measurables/input_connection.d.ts +31 -0
  175. package/core/renderers/measurables/input_row.d.ts +33 -0
  176. package/core/renderers/measurables/jagged_edge.d.ts +21 -0
  177. package/core/renderers/measurables/next_connection.d.ts +24 -0
  178. package/core/renderers/measurables/output_connection.d.ts +27 -0
  179. package/core/renderers/measurables/previous_connection.d.ts +24 -0
  180. package/core/renderers/measurables/round_corner.d.ts +22 -0
  181. package/core/renderers/measurables/row.d.ts +163 -0
  182. package/core/renderers/measurables/spacer_row.d.ts +30 -0
  183. package/core/renderers/measurables/square_corner.d.ts +22 -0
  184. package/core/renderers/measurables/statement_input.d.ts +23 -0
  185. package/core/renderers/measurables/top_row.d.ts +60 -0
  186. package/core/renderers/measurables/types.d.ts +264 -0
  187. package/core/renderers/minimalist/constants.d.ts +16 -0
  188. package/core/renderers/minimalist/drawer.d.ts +23 -0
  189. package/core/renderers/minimalist/info.d.ts +33 -0
  190. package/core/renderers/minimalist/minimalist.d.ts +7 -0
  191. package/core/renderers/minimalist/renderer.d.ts +46 -0
  192. package/core/renderers/thrasos/info.d.ts +43 -0
  193. package/core/renderers/thrasos/renderer.d.ts +28 -0
  194. package/core/renderers/thrasos/thrasos.d.ts +5 -0
  195. package/core/renderers/zelos/constants.d.ts +194 -0
  196. package/core/renderers/zelos/drawer.d.ts +50 -0
  197. package/core/renderers/zelos/info.d.ts +93 -0
  198. package/core/renderers/zelos/marker_svg.d.ts +51 -0
  199. package/core/renderers/zelos/measurables/bottom_row.d.ts +29 -0
  200. package/core/renderers/zelos/measurables/inputs.d.ts +25 -0
  201. package/core/renderers/zelos/measurables/row_elements.d.ts +23 -0
  202. package/core/renderers/zelos/measurables/top_row.d.ts +31 -0
  203. package/core/renderers/zelos/path_object.d.ts +84 -0
  204. package/core/renderers/zelos/renderer.d.ts +82 -0
  205. package/core/renderers/zelos/zelos.d.ts +13 -0
  206. package/core/scrollbar.d.ts +309 -0
  207. package/core/scrollbar_pair.d.ts +119 -0
  208. package/core/serialization/blocks.d.ts +104 -0
  209. package/core/serialization/exceptions.d.ts +78 -0
  210. package/core/serialization/priorities.d.ts +18 -0
  211. package/core/serialization/registry.d.ts +23 -0
  212. package/core/serialization/variables.d.ts +16 -0
  213. package/core/serialization/workspaces.d.ts +31 -0
  214. package/core/shortcut_items.d.ts +71 -0
  215. package/core/shortcut_registry.d.ts +167 -0
  216. package/core/sprites.d.ts +17 -0
  217. package/core/theme/classic.d.ts +14 -0
  218. package/core/theme/themes.d.ts +9 -0
  219. package/core/theme/zelos.d.ts +13 -0
  220. package/core/theme.d.ts +153 -0
  221. package/core/theme_manager.d.ts +90 -0
  222. package/core/toolbox/category.d.ts +266 -0
  223. package/core/toolbox/collapsible_category.d.ts +98 -0
  224. package/core/toolbox/separator.d.ts +42 -0
  225. package/core/toolbox/toolbox.d.ts +400 -0
  226. package/core/toolbox/toolbox_item.d.ts +95 -0
  227. package/core/tooltip.d.ts +147 -0
  228. package/core/touch.d.ts +133 -0
  229. package/core/touch_gesture.d.ts +129 -0
  230. package/core/trashcan.d.ts +216 -0
  231. package/core/utils/aria.d.ts +71 -0
  232. package/core/utils/array.d.ts +16 -0
  233. package/core/utils/colour.d.ts +114 -0
  234. package/core/utils/coordinate.d.ts +82 -0
  235. package/core/utils/deprecation.d.ts +19 -0
  236. package/core/utils/dom.d.ts +185 -0
  237. package/core/utils/idgenerator.d.ts +35 -0
  238. package/core/utils/keycodes.d.ts +138 -0
  239. package/core/utils/math.d.ts +34 -0
  240. package/core/utils/metrics.d.ts +65 -0
  241. package/core/utils/object.d.ts +40 -0
  242. package/core/utils/parsing.d.ts +55 -0
  243. package/core/utils/rect.d.ts +40 -0
  244. package/core/utils/sentinel.d.ts +13 -0
  245. package/core/utils/size.d.ts +29 -0
  246. package/core/utils/string.d.ts +62 -0
  247. package/core/utils/style.d.ts +108 -0
  248. package/core/utils/svg.d.ts +71 -0
  249. package/core/utils/svg_math.d.ts +78 -0
  250. package/core/utils/svg_paths.d.ts +111 -0
  251. package/core/utils/toolbox.d.ts +214 -0
  252. package/core/utils/useragent.d.ts +22 -0
  253. package/core/utils/xml.d.ts +60 -0
  254. package/core/utils.d.ts +239 -0
  255. package/core/variable_map.d.ts +158 -0
  256. package/core/variable_model.d.ts +43 -0
  257. package/core/variables.d.ts +196 -0
  258. package/core/variables_dynamic.d.ts +58 -0
  259. package/core/warning.d.ts +55 -0
  260. package/core/widgetdiv.d.ts +78 -0
  261. package/core/workspace.d.ts +436 -0
  262. package/core/workspace_audio.d.ts +53 -0
  263. package/core/workspace_comment.d.ts +192 -0
  264. package/core/workspace_comment_svg.d.ts +372 -0
  265. package/core/workspace_drag_surface_svg.d.ts +74 -0
  266. package/core/workspace_dragger.d.ts +54 -0
  267. package/core/workspace_svg.d.ts +1032 -0
  268. package/core/xml.d.ts +132 -0
  269. package/core/zoom_controls.d.ts +140 -0
  270. package/core.d.ts +1 -9
  271. package/core.js +1 -2
  272. package/dart.d.ts +1 -9
  273. package/dart_compressed.js +387 -99
  274. package/dart_compressed.js.map +1 -1
  275. package/index.d.ts +4 -16
  276. package/javascript.d.ts +1 -9
  277. package/javascript_compressed.js +314 -104
  278. package/javascript_compressed.js.map +1 -1
  279. package/lua.d.ts +1 -9
  280. package/lua_compressed.js +399 -81
  281. package/lua_compressed.js.map +1 -1
  282. package/msg/ab.js +10 -6
  283. package/msg/ace.js +10 -6
  284. package/msg/af.js +10 -6
  285. package/msg/am.js +10 -6
  286. package/msg/ar.js +10 -6
  287. package/msg/ast.js +10 -6
  288. package/msg/az.js +12 -8
  289. package/msg/ba.js +10 -6
  290. package/msg/bcc.js +10 -6
  291. package/msg/be-tarask.js +10 -6
  292. package/msg/be.js +14 -10
  293. package/msg/bg.js +10 -6
  294. package/msg/bn.js +10 -6
  295. package/msg/br.js +10 -6
  296. package/msg/bs.js +10 -6
  297. package/msg/ca.js +10 -6
  298. package/msg/cdo.js +10 -6
  299. package/msg/cs.js +25 -21
  300. package/msg/da.js +10 -6
  301. package/msg/de.js +11 -7
  302. package/msg/diq.js +11 -7
  303. package/msg/dty.js +10 -6
  304. package/msg/ee.js +10 -6
  305. package/msg/el.js +10 -6
  306. package/msg/en-gb.js +10 -6
  307. package/msg/en.js +10 -6
  308. package/msg/eo.js +11 -7
  309. package/msg/es.js +11 -7
  310. package/msg/et.js +10 -6
  311. package/msg/eu.js +10 -6
  312. package/msg/fa.js +11 -7
  313. package/msg/fi.js +10 -6
  314. package/msg/fo.js +10 -6
  315. package/msg/fr.js +14 -10
  316. package/msg/frr.js +10 -6
  317. package/msg/gl.js +10 -6
  318. package/msg/gn.js +10 -6
  319. package/msg/gor.js +10 -6
  320. package/msg/ha.js +10 -6
  321. package/msg/hak.js +10 -6
  322. package/msg/he.js +11 -7
  323. package/msg/hi.js +10 -6
  324. package/msg/hr.js +12 -8
  325. package/msg/hrx.js +10 -6
  326. package/msg/hu.js +10 -6
  327. package/msg/hy.js +12 -8
  328. package/msg/ia.js +10 -6
  329. package/msg/id.js +22 -18
  330. package/msg/ig.js +10 -6
  331. package/msg/inh.js +24 -20
  332. package/msg/is.js +10 -6
  333. package/msg/it.js +10 -6
  334. package/msg/ja.js +17 -13
  335. package/msg/ka.js +10 -6
  336. package/msg/kab.js +10 -6
  337. package/msg/kbd-cyrl.js +10 -6
  338. package/msg/km.js +10 -6
  339. package/msg/kn.js +10 -6
  340. package/msg/ko.js +10 -6
  341. package/msg/ksh.js +10 -6
  342. package/msg/ku-latn.js +10 -6
  343. package/msg/ky.js +10 -6
  344. package/msg/la.js +10 -6
  345. package/msg/lb.js +10 -6
  346. package/msg/lki.js +10 -6
  347. package/msg/lo.js +10 -6
  348. package/msg/lrc.js +10 -6
  349. package/msg/lt.js +10 -6
  350. package/msg/lv.js +39 -35
  351. package/msg/mg.js +10 -6
  352. package/msg/mk.js +10 -6
  353. package/msg/ml.js +10 -6
  354. package/msg/mnw.js +10 -6
  355. package/msg/ms.js +10 -6
  356. package/msg/my.js +10 -6
  357. package/msg/mzn.js +10 -6
  358. package/msg/nb.js +10 -6
  359. package/msg/ne.js +10 -6
  360. package/msg/nl.js +10 -6
  361. package/msg/oc.js +10 -6
  362. package/msg/olo.js +10 -6
  363. package/msg/pa.js +13 -9
  364. package/msg/pl.js +10 -6
  365. package/msg/pms.js +10 -6
  366. package/msg/ps.js +10 -6
  367. package/msg/pt-br.js +10 -6
  368. package/msg/pt.js +10 -6
  369. package/msg/ro.js +10 -6
  370. package/msg/ru.js +10 -6
  371. package/msg/sc.js +10 -6
  372. package/msg/sco.js +10 -6
  373. package/msg/sd.js +10 -6
  374. package/msg/shn.js +10 -6
  375. package/msg/si.js +10 -6
  376. package/msg/sk.js +10 -6
  377. package/msg/skr-arab.js +10 -6
  378. package/msg/sl.js +10 -6
  379. package/msg/smn.js +440 -0
  380. package/msg/sq.js +10 -6
  381. package/msg/sr-latn.js +10 -6
  382. package/msg/sr.js +10 -6
  383. package/msg/sv.js +10 -6
  384. package/msg/sw.js +10 -6
  385. package/msg/ta.js +10 -6
  386. package/msg/tcy.js +10 -6
  387. package/msg/te.js +11 -7
  388. package/msg/th.js +10 -6
  389. package/msg/ti.js +10 -6
  390. package/msg/tl.js +10 -6
  391. package/msg/tlh.js +10 -6
  392. package/msg/tr.js +10 -6
  393. package/msg/ug-arab.js +10 -6
  394. package/msg/uk.js +10 -6
  395. package/msg/ur.js +10 -6
  396. package/msg/uz.js +10 -6
  397. package/msg/vi.js +10 -6
  398. package/msg/xmf.js +10 -6
  399. package/msg/yo.js +10 -6
  400. package/msg/yue.js +11 -7
  401. package/msg/zgh.js +10 -6
  402. package/msg/zh-hans.js +13 -9
  403. package/msg/zh-hant.js +13 -9
  404. package/package.json +8 -5
  405. package/php.d.ts +1 -9
  406. package/php_compressed.js +322 -93
  407. package/php_compressed.js.map +1 -1
  408. package/python.d.ts +1 -9
  409. package/python_compressed.js +237 -90
  410. package/python_compressed.js.map +1 -1
  411. package/blockly.d.ts +0 -25607
  412. package/blocks/blocks.js +0 -47
  413. package/blocks/colour.js +0 -119
  414. package/blocks/lists.js +0 -924
  415. package/blocks/logic.js +0 -657
  416. package/blocks/loops.js +0 -373
  417. package/blocks/math.js +0 -592
  418. package/blocks/procedures.js +0 -1194
  419. package/blocks/text.js +0 -992
  420. package/blocks/variables.js +0 -174
  421. package/blocks/variables_dynamic.js +0 -190
  422. package/core/block.js +0 -2212
  423. package/core/block_animations.js +0 -206
  424. package/core/block_drag_surface.js +0 -269
  425. package/core/block_dragger.js +0 -484
  426. package/core/block_svg.js +0 -1894
  427. package/core/blockly.js +0 -890
  428. package/core/blockly_options.js +0 -28
  429. package/core/blocks.js +0 -33
  430. package/core/browser_events.js +0 -284
  431. package/core/bubble.js +0 -985
  432. package/core/bubble_dragger.js +0 -298
  433. package/core/bump_objects.js +0 -180
  434. package/core/clipboard.js +0 -80
  435. package/core/comment.js +0 -448
  436. package/core/common.js +0 -265
  437. package/core/component_manager.js +0 -263
  438. package/core/config.js +0 -87
  439. package/core/connection.js +0 -742
  440. package/core/connection_checker.js +0 -312
  441. package/core/connection_db.js +0 -314
  442. package/core/connection_type.js +0 -36
  443. package/core/constants.js +0 -33
  444. package/core/contextmenu.js +0 -398
  445. package/core/contextmenu_items.js +0 -651
  446. package/core/contextmenu_registry.js +0 -178
  447. package/core/css.js +0 -568
  448. package/core/delete_area.js +0 -87
  449. package/core/dialog.js +0 -107
  450. package/core/drag_target.js +0 -98
  451. package/core/dropdowndiv.js +0 -754
  452. package/core/events/events.js +0 -147
  453. package/core/events/events_abstract.js +0 -133
  454. package/core/events/events_block_base.js +0 -70
  455. package/core/events/events_block_change.js +0 -179
  456. package/core/events/events_block_create.js +0 -127
  457. package/core/events/events_block_delete.js +0 -139
  458. package/core/events/events_block_drag.js +0 -89
  459. package/core/events/events_block_move.js +0 -202
  460. package/core/events/events_bubble_open.js +0 -90
  461. package/core/events/events_click.js +0 -87
  462. package/core/events/events_comment_base.js +0 -121
  463. package/core/events/events_comment_change.js +0 -105
  464. package/core/events/events_comment_create.js +0 -84
  465. package/core/events/events_comment_delete.js +0 -81
  466. package/core/events/events_comment_move.js +0 -157
  467. package/core/events/events_marker_move.js +0 -110
  468. package/core/events/events_selected.js +0 -83
  469. package/core/events/events_theme_change.js +0 -72
  470. package/core/events/events_toolbox_item_select.js +0 -84
  471. package/core/events/events_trashcan_open.js +0 -73
  472. package/core/events/events_ui.js +0 -88
  473. package/core/events/events_ui_base.js +0 -63
  474. package/core/events/events_var_base.js +0 -70
  475. package/core/events/events_var_create.js +0 -89
  476. package/core/events/events_var_delete.js +0 -89
  477. package/core/events/events_var_rename.js +0 -90
  478. package/core/events/events_viewport.js +0 -107
  479. package/core/events/utils.js +0 -600
  480. package/core/events/workspace_events.js +0 -93
  481. package/core/extensions.js +0 -523
  482. package/core/field.js +0 -1282
  483. package/core/field_angle.js +0 -591
  484. package/core/field_checkbox.js +0 -255
  485. package/core/field_colour.js +0 -717
  486. package/core/field_dropdown.js +0 -795
  487. package/core/field_image.js +0 -304
  488. package/core/field_label.js +0 -149
  489. package/core/field_label_serializable.js +0 -80
  490. package/core/field_multilineinput.js +0 -463
  491. package/core/field_number.js +0 -340
  492. package/core/field_registry.js +0 -80
  493. package/core/field_textinput.js +0 -619
  494. package/core/field_variable.js +0 -558
  495. package/core/flyout_base.js +0 -1254
  496. package/core/flyout_button.js +0 -356
  497. package/core/flyout_horizontal.js +0 -391
  498. package/core/flyout_metrics_manager.js +0 -106
  499. package/core/flyout_vertical.js +0 -395
  500. package/core/generator.js +0 -564
  501. package/core/gesture.js +0 -1026
  502. package/core/grid.js +0 -226
  503. package/core/icon.js +0 -225
  504. package/core/inject.js +0 -389
  505. package/core/input.js +0 -332
  506. package/core/input_types.js +0 -36
  507. package/core/insertion_marker_manager.js +0 -790
  508. package/core/interfaces/i_ast_node_location.js +0 -26
  509. package/core/interfaces/i_ast_node_location_svg.js +0 -45
  510. package/core/interfaces/i_ast_node_location_with_block.js +0 -41
  511. package/core/interfaces/i_autohideable.js +0 -40
  512. package/core/interfaces/i_block_dragger.js +0 -66
  513. package/core/interfaces/i_bounded_element.js +0 -45
  514. package/core/interfaces/i_bubble.js +0 -95
  515. package/core/interfaces/i_collapsible_toolbox_item.js +0 -53
  516. package/core/interfaces/i_component.js +0 -37
  517. package/core/interfaces/i_connection_checker.js +0 -104
  518. package/core/interfaces/i_contextmenu.js +0 -32
  519. package/core/interfaces/i_copyable.js +0 -49
  520. package/core/interfaces/i_deletable.js +0 -33
  521. package/core/interfaces/i_delete_area.js +0 -50
  522. package/core/interfaces/i_drag_target.js +0 -88
  523. package/core/interfaces/i_draggable.js +0 -31
  524. package/core/interfaces/i_flyout.js +0 -201
  525. package/core/interfaces/i_keyboard_accessible.js +0 -38
  526. package/core/interfaces/i_metrics_manager.js +0 -154
  527. package/core/interfaces/i_movable.js +0 -33
  528. package/core/interfaces/i_positionable.js +0 -51
  529. package/core/interfaces/i_registrable.js +0 -29
  530. package/core/interfaces/i_registrable_field.js +0 -39
  531. package/core/interfaces/i_selectable.js +0 -51
  532. package/core/interfaces/i_selectable_toolbox_item.js +0 -73
  533. package/core/interfaces/i_serializer.js +0 -77
  534. package/core/interfaces/i_styleable.js +0 -39
  535. package/core/interfaces/i_toolbox.js +0 -142
  536. package/core/interfaces/i_toolbox_item.js +0 -85
  537. package/core/internal_constants.js +0 -72
  538. package/core/keyboard_nav/ast_node.js +0 -741
  539. package/core/keyboard_nav/basic_cursor.js +0 -225
  540. package/core/keyboard_nav/cursor.js +0 -144
  541. package/core/keyboard_nav/marker.js +0 -134
  542. package/core/keyboard_nav/tab_navigate_cursor.js +0 -52
  543. package/core/marker_manager.js +0 -213
  544. package/core/menu.js +0 -482
  545. package/core/menuitem.js +0 -292
  546. package/core/metrics_manager.js +0 -495
  547. package/core/msg.js +0 -24
  548. package/core/mutator.js +0 -575
  549. package/core/names.js +0 -289
  550. package/core/options.js +0 -391
  551. package/core/positionable_helpers.js +0 -188
  552. package/core/procedures.js +0 -452
  553. package/core/registry.js +0 -384
  554. package/core/rendered_connection.js +0 -588
  555. package/core/renderers/common/block_rendering.js +0 -170
  556. package/core/renderers/common/constants.js +0 -1250
  557. package/core/renderers/common/debug.js +0 -67
  558. package/core/renderers/common/debugger.js +0 -457
  559. package/core/renderers/common/drawer.js +0 -475
  560. package/core/renderers/common/i_path_object.js +0 -162
  561. package/core/renderers/common/info.js +0 -775
  562. package/core/renderers/common/marker_svg.js +0 -721
  563. package/core/renderers/common/path_object.js +0 -283
  564. package/core/renderers/common/renderer.js +0 -305
  565. package/core/renderers/geras/constants.js +0 -73
  566. package/core/renderers/geras/drawer.js +0 -220
  567. package/core/renderers/geras/geras.js +0 -36
  568. package/core/renderers/geras/highlight_constants.js +0 -299
  569. package/core/renderers/geras/highlighter.js +0 -311
  570. package/core/renderers/geras/info.js +0 -488
  571. package/core/renderers/geras/measurables/inline_input.js +0 -58
  572. package/core/renderers/geras/measurables/statement_input.js +0 -57
  573. package/core/renderers/geras/path_object.js +0 -166
  574. package/core/renderers/geras/renderer.js +0 -149
  575. package/core/renderers/measurables/base.js +0 -64
  576. package/core/renderers/measurables/bottom_row.js +0 -138
  577. package/core/renderers/measurables/connection.js +0 -56
  578. package/core/renderers/measurables/external_value_input.js +0 -70
  579. package/core/renderers/measurables/field.js +0 -71
  580. package/core/renderers/measurables/hat.js +0 -50
  581. package/core/renderers/measurables/icon.js +0 -58
  582. package/core/renderers/measurables/in_row_spacer.js +0 -47
  583. package/core/renderers/measurables/inline_input.js +0 -80
  584. package/core/renderers/measurables/input_connection.js +0 -75
  585. package/core/renderers/measurables/input_row.js +0 -89
  586. package/core/renderers/measurables/jagged_edge.js +0 -46
  587. package/core/renderers/measurables/next_connection.js +0 -50
  588. package/core/renderers/measurables/output_connection.js +0 -61
  589. package/core/renderers/measurables/previous_connection.js +0 -50
  590. package/core/renderers/measurables/round_corner.js +0 -52
  591. package/core/renderers/measurables/row.js +0 -247
  592. package/core/renderers/measurables/spacer_row.js +0 -69
  593. package/core/renderers/measurables/square_corner.js +0 -50
  594. package/core/renderers/measurables/statement_input.js +0 -59
  595. package/core/renderers/measurables/top_row.js +0 -143
  596. package/core/renderers/measurables/types.js +0 -353
  597. package/core/renderers/minimalist/constants.js +0 -37
  598. package/core/renderers/minimalist/drawer.js +0 -42
  599. package/core/renderers/minimalist/info.js +0 -54
  600. package/core/renderers/minimalist/minimalist.js +0 -26
  601. package/core/renderers/minimalist/renderer.js +0 -80
  602. package/core/renderers/thrasos/info.js +0 -339
  603. package/core/renderers/thrasos/renderer.js +0 -53
  604. package/core/renderers/thrasos/thrasos.js +0 -22
  605. package/core/renderers/zelos/constants.js +0 -1005
  606. package/core/renderers/zelos/drawer.js +0 -250
  607. package/core/renderers/zelos/info.js +0 -624
  608. package/core/renderers/zelos/marker_svg.js +0 -179
  609. package/core/renderers/zelos/measurables/bottom_row.js +0 -66
  610. package/core/renderers/zelos/measurables/inputs.js +0 -57
  611. package/core/renderers/zelos/measurables/row_elements.js +0 -46
  612. package/core/renderers/zelos/measurables/top_row.js +0 -71
  613. package/core/renderers/zelos/path_object.js +0 -247
  614. package/core/renderers/zelos/renderer.js +0 -147
  615. package/core/renderers/zelos/zelos.js +0 -38
  616. package/core/scrollbar.js +0 -891
  617. package/core/scrollbar_pair.js +0 -329
  618. package/core/serialization/blocks.js +0 -699
  619. package/core/serialization/exceptions.js +0 -144
  620. package/core/serialization/priorities.js +0 -38
  621. package/core/serialization/registry.js +0 -45
  622. package/core/serialization/variables.js +0 -98
  623. package/core/serialization/workspaces.js +0 -103
  624. package/core/shortcut_items.js +0 -302
  625. package/core/shortcut_registry.js +0 -366
  626. package/core/sprites.js +0 -31
  627. package/core/theme/classic.js +0 -56
  628. package/core/theme/themes.js +0 -23
  629. package/core/theme/zelos.js +0 -94
  630. package/core/theme.js +0 -228
  631. package/core/theme_manager.js +0 -211
  632. package/core/toolbox/category.js +0 -751
  633. package/core/toolbox/collapsible_category.js +0 -311
  634. package/core/toolbox/separator.js +0 -133
  635. package/core/toolbox/toolbox.js +0 -1160
  636. package/core/toolbox/toolbox_item.js +0 -173
  637. package/core/tooltip.js +0 -541
  638. package/core/touch.js +0 -285
  639. package/core/touch_gesture.js +0 -333
  640. package/core/trashcan.js +0 -757
  641. package/core/utils/aria.js +0 -174
  642. package/core/utils/array.js +0 -34
  643. package/core/utils/colour.js +0 -288
  644. package/core/utils/coordinate.js +0 -138
  645. package/core/utils/deprecation.js +0 -41
  646. package/core/utils/dom.js +0 -430
  647. package/core/utils/global.js +0 -41
  648. package/core/utils/idgenerator.js +0 -83
  649. package/core/utils/keycodes.js +0 -172
  650. package/core/utils/math.js +0 -63
  651. package/core/utils/metrics.js +0 -154
  652. package/core/utils/object.js +0 -91
  653. package/core/utils/parsing.js +0 -261
  654. package/core/utils/rect.js +0 -75
  655. package/core/utils/sentinel.js +0 -25
  656. package/core/utils/size.js +0 -65
  657. package/core/utils/string.js +0 -305
  658. package/core/utils/style.js +0 -296
  659. package/core/utils/svg.js +0 -186
  660. package/core/utils/svg_math.js +0 -268
  661. package/core/utils/svg_paths.js +0 -149
  662. package/core/utils/toolbox.js +0 -459
  663. package/core/utils/useragent.js +0 -197
  664. package/core/utils/xml.js +0 -107
  665. package/core/utils.js +0 -383
  666. package/core/variable_map.js +0 -410
  667. package/core/variable_model.js +0 -96
  668. package/core/variables.js +0 -578
  669. package/core/variables_dynamic.js +0 -129
  670. package/core/warning.js +0 -175
  671. package/core/widgetdiv.js +0 -290
  672. package/core/workspace.js +0 -836
  673. package/core/workspace_audio.js +0 -169
  674. package/core/workspace_comment.js +0 -400
  675. package/core/workspace_comment_svg.js +0 -1224
  676. package/core/workspace_drag_surface_svg.js +0 -194
  677. package/core/workspace_dragger.js +0 -115
  678. package/core/workspace_svg.js +0 -2735
  679. package/core/xml.js +0 -1043
  680. package/core/zoom_controls.js +0 -507
  681. package/generators/dart/all.js +0 -25
  682. package/generators/dart/colour.js +0 -105
  683. package/generators/dart/lists.js +0 -431
  684. package/generators/dart/logic.js +0 -123
  685. package/generators/dart/loops.js +0 -161
  686. package/generators/dart/math.js +0 -446
  687. package/generators/dart/procedures.js +0 -105
  688. package/generators/dart/text.js +0 -338
  689. package/generators/dart/variables.js +0 -32
  690. package/generators/dart/variables_dynamic.js +0 -21
  691. package/generators/dart.js +0 -304
  692. package/generators/javascript/all.js +0 -25
  693. package/generators/javascript/colour.js +0 -85
  694. package/generators/javascript/lists.js +0 -405
  695. package/generators/javascript/logic.js +0 -127
  696. package/generators/javascript/loops.js +0 -180
  697. package/generators/javascript/math.js +0 -401
  698. package/generators/javascript/procedures.js +0 -110
  699. package/generators/javascript/text.js +0 -371
  700. package/generators/javascript/variables.js +0 -32
  701. package/generators/javascript/variables_dynamic.js +0 -21
  702. package/generators/javascript.js +0 -324
  703. package/generators/lua/all.js +0 -25
  704. package/generators/lua/colour.js +0 -71
  705. package/generators/lua/lists.js +0 -348
  706. package/generators/lua/logic.js +0 -112
  707. package/generators/lua/loops.js +0 -168
  708. package/generators/lua/math.js +0 -406
  709. package/generators/lua/procedures.js +0 -106
  710. package/generators/lua/text.js +0 -327
  711. package/generators/lua/variables.js +0 -31
  712. package/generators/lua/variables_dynamic.js +0 -21
  713. package/generators/lua.js +0 -207
  714. package/generators/php/all.js +0 -25
  715. package/generators/php/colour.js +0 -81
  716. package/generators/php/lists.js +0 -482
  717. package/generators/php/logic.js +0 -119
  718. package/generators/php/loops.js +0 -161
  719. package/generators/php/math.js +0 -349
  720. package/generators/php/procedures.js +0 -125
  721. package/generators/php/text.js +0 -255
  722. package/generators/php/variables.js +0 -32
  723. package/generators/php/variables_dynamic.js +0 -21
  724. package/generators/php.js +0 -304
  725. package/generators/python/all.js +0 -25
  726. package/generators/python/colour.js +0 -67
  727. package/generators/python/lists.js +0 -346
  728. package/generators/python/logic.js +0 -120
  729. package/generators/python/loops.js +0 -209
  730. package/generators/python/math.js +0 -373
  731. package/generators/python/procedures.js +0 -129
  732. package/generators/python/text.js +0 -291
  733. package/generators/python/variables.js +0 -32
  734. package/generators/python/variables_dynamic.js +0 -21
  735. package/generators/python.js +0 -334
@@ -0,0 +1,400 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import '../events/events_toolbox_item_select.js';
7
+ import * as browserEvents from '../browser_events.js';
8
+ import { DeleteArea } from '../delete_area.js';
9
+ import type { IAutoHideable } from '../interfaces/i_autohideable.js';
10
+ import type { IDraggable } from '../interfaces/i_draggable.js';
11
+ import type { IFlyout } from '../interfaces/i_flyout.js';
12
+ import type { IKeyboardAccessible } from '../interfaces/i_keyboard_accessible.js';
13
+ import type { ISelectableToolboxItem } from '../interfaces/i_selectable_toolbox_item.js';
14
+ import type { IStyleable } from '../interfaces/i_styleable.js';
15
+ import type { IToolbox } from '../interfaces/i_toolbox.js';
16
+ import type { IToolboxItem } from '../interfaces/i_toolbox_item.js';
17
+ import type { KeyboardShortcut } from '../shortcut_registry.js';
18
+ import { Rect } from '../utils/rect.js';
19
+ import * as toolbox from '../utils/toolbox.js';
20
+ import type { WorkspaceSvg } from '../workspace_svg.js';
21
+ /**
22
+ * Class for a Toolbox.
23
+ * Creates the toolbox's DOM.
24
+ *
25
+ * @alias Blockly.Toolbox
26
+ */
27
+ export declare class Toolbox extends DeleteArea implements IAutoHideable, IKeyboardAccessible, IStyleable, IToolbox {
28
+ /**
29
+ * The unique id for this component that is used to register with the
30
+ * ComponentManager.
31
+ */
32
+ id: string;
33
+ protected toolboxDef_: toolbox.ToolboxInfo;
34
+ private readonly horizontalLayout_;
35
+ /** The html container for the toolbox. */
36
+ HtmlDiv: HTMLDivElement | null;
37
+ /** The html container for the contents of a toolbox. */
38
+ protected contentsDiv_: HTMLDivElement | null;
39
+ /** Whether the Toolbox is visible. */
40
+ protected isVisible_: boolean;
41
+ /** The list of items in the toolbox. */
42
+ protected contents_: IToolboxItem[];
43
+ /** The width of the toolbox. */
44
+ protected width_: number;
45
+ /** The height of the toolbox. */
46
+ protected height_: number;
47
+ RTL: boolean;
48
+ /** The flyout for the toolbox. */
49
+ private flyout_;
50
+ protected contentMap_: {
51
+ [key: string]: IToolboxItem;
52
+ };
53
+ toolboxPosition: toolbox.Position;
54
+ /** The currently selected item. */
55
+ protected selectedItem_: ISelectableToolboxItem | null;
56
+ /** The previously selected item. */
57
+ protected previouslySelectedItem_: ISelectableToolboxItem | null;
58
+ /**
59
+ * Array holding info needed to unbind event handlers.
60
+ * Used for disposing.
61
+ * Ex: [[node, name, func], [node, name, func]].
62
+ */
63
+ protected boundEvents_: browserEvents.Data[];
64
+ wouldDelete_: any;
65
+ /** The workspace this toolbox is on. */
66
+ protected readonly workspace_: WorkspaceSvg;
67
+ /** @param workspace The workspace in which to create new blocks. */
68
+ constructor(workspace: WorkspaceSvg);
69
+ /**
70
+ * Handles the given keyboard shortcut.
71
+ *
72
+ * @param _shortcut The shortcut to be handled.
73
+ * @returns True if the shortcut has been handled, false otherwise.
74
+ */
75
+ onShortcut(_shortcut: KeyboardShortcut): boolean;
76
+ /** Initializes the toolbox */
77
+ init(): void;
78
+ /**
79
+ * Creates the DOM for the toolbox.
80
+ *
81
+ * @param workspace The workspace this toolbox is on.
82
+ * @returns The HTML container for the toolbox.
83
+ */
84
+ protected createDom_(workspace: WorkspaceSvg): HTMLDivElement;
85
+ /**
86
+ * Creates the container div for the toolbox.
87
+ *
88
+ * @returns The HTML container for the toolbox.
89
+ */
90
+ protected createContainer_(): HTMLDivElement;
91
+ /**
92
+ * Creates the container for all the contents in the toolbox.
93
+ *
94
+ * @returns The HTML container for the toolbox contents.
95
+ */
96
+ protected createContentsContainer_(): HTMLDivElement;
97
+ /**
98
+ * Adds event listeners to the toolbox container div.
99
+ *
100
+ * @param container The HTML container for the toolbox.
101
+ * @param contentsContainer The HTML container for the contents of the
102
+ * toolbox.
103
+ */
104
+ protected attachEvents_(container: HTMLDivElement, contentsContainer: HTMLDivElement): void;
105
+ /**
106
+ * Handles on click events for when the toolbox or toolbox items are clicked.
107
+ *
108
+ * @param e Click event to handle.
109
+ */
110
+ protected onClick_(e: MouseEvent): void;
111
+ /**
112
+ * Handles key down events for the toolbox.
113
+ *
114
+ * @param e The key down event.
115
+ */
116
+ protected onKeyDown_(e: KeyboardEvent): void;
117
+ /**
118
+ * Creates the flyout based on the toolbox layout.
119
+ *
120
+ * @returns The flyout for the toolbox.
121
+ * @throws {Error} If missing a require for `Blockly.HorizontalFlyout`,
122
+ * `Blockly.VerticalFlyout`, and no flyout plugin is specified.
123
+ */
124
+ protected createFlyout_(): IFlyout;
125
+ /**
126
+ * Fills the toolbox with new toolbox items and removes any old contents.
127
+ *
128
+ * @param toolboxDef Object holding information for creating a toolbox.
129
+ * @internal
130
+ */
131
+ render(toolboxDef: toolbox.ToolboxInfo): void;
132
+ /**
133
+ * Adds all the toolbox items to the toolbox.
134
+ *
135
+ * @param toolboxDef Array holding objects containing information on the
136
+ * contents of the toolbox.
137
+ */
138
+ protected renderContents_(toolboxDef: toolbox.ToolboxItemInfo[]): void;
139
+ /**
140
+ * Creates and renders the toolbox item.
141
+ *
142
+ * @param toolboxItemDef Any information that can be used to create an item in
143
+ * the toolbox.
144
+ * @param fragment The document fragment to add the child toolbox elements to.
145
+ */
146
+ private createToolboxItem_;
147
+ /**
148
+ * Adds an item to the toolbox.
149
+ *
150
+ * @param toolboxItem The item in the toolbox.
151
+ */
152
+ protected addToolboxItem_(toolboxItem: IToolboxItem): void;
153
+ /**
154
+ * Gets the items in the toolbox.
155
+ *
156
+ * @returns The list of items in the toolbox.
157
+ */
158
+ getToolboxItems(): IToolboxItem[];
159
+ /**
160
+ * Adds a style on the toolbox. Usually used to change the cursor.
161
+ *
162
+ * @param style The name of the class to add.
163
+ * @internal
164
+ */
165
+ addStyle(style: string): void;
166
+ /**
167
+ * Removes a style from the toolbox. Usually used to change the cursor.
168
+ *
169
+ * @param style The name of the class to remove.
170
+ * @internal
171
+ */
172
+ removeStyle(style: string): void;
173
+ /**
174
+ * Returns the bounding rectangle of the drag target area in pixel units
175
+ * relative to viewport.
176
+ *
177
+ * @returns The component's bounding box. Null if drag target area should be
178
+ * ignored.
179
+ */
180
+ getClientRect(): Rect | null;
181
+ /**
182
+ * Returns whether the provided block or bubble would be deleted if dropped on
183
+ * this area.
184
+ * This method should check if the element is deletable and is always called
185
+ * before onDragEnter/onDragOver/onDragExit.
186
+ *
187
+ * @param element The block or bubble currently being dragged.
188
+ * @param _couldConnect Whether the element could could connect to another.
189
+ * @returns Whether the element provided would be deleted if dropped on this
190
+ * area.
191
+ */
192
+ wouldDelete(element: IDraggable, _couldConnect: boolean): boolean;
193
+ /**
194
+ * Handles when a cursor with a block or bubble enters this drag target.
195
+ *
196
+ * @param _dragElement The block or bubble currently being dragged.
197
+ */
198
+ onDragEnter(_dragElement: IDraggable): void;
199
+ /**
200
+ * Handles when a cursor with a block or bubble exits this drag target.
201
+ *
202
+ * @param _dragElement The block or bubble currently being dragged.
203
+ */
204
+ onDragExit(_dragElement: IDraggable): void;
205
+ /**
206
+ * Handles when a block or bubble is dropped on this component.
207
+ * Should not handle delete here.
208
+ *
209
+ * @param _dragElement The block or bubble currently being dragged.
210
+ */
211
+ onDrop(_dragElement: IDraggable): void;
212
+ /**
213
+ * Updates the internal wouldDelete_ state.
214
+ *
215
+ * @param wouldDelete The new value for the wouldDelete state.
216
+ */
217
+ protected updateWouldDelete_(wouldDelete: boolean): void;
218
+ /**
219
+ * Adds or removes the CSS style of the cursor over the toolbox based whether
220
+ * the block or bubble over it is expected to be deleted if dropped (using the
221
+ * internal this.wouldDelete_ property).
222
+ *
223
+ * @param addStyle Whether the style should be added or removed.
224
+ */
225
+ protected updateCursorDeleteStyle_(addStyle: boolean): void;
226
+ /**
227
+ * Gets the toolbox item with the given ID.
228
+ *
229
+ * @param id The ID of the toolbox item.
230
+ * @returns The toolbox item with the given ID, or null if no item exists.
231
+ */
232
+ getToolboxItemById(id: string): IToolboxItem | null;
233
+ /**
234
+ * Gets the width of the toolbox.
235
+ *
236
+ * @returns The width of the toolbox.
237
+ */
238
+ getWidth(): number;
239
+ /**
240
+ * Gets the height of the toolbox.
241
+ *
242
+ * @returns The width of the toolbox.
243
+ */
244
+ getHeight(): number;
245
+ /**
246
+ * Gets the toolbox flyout.
247
+ *
248
+ * @returns The toolbox flyout.
249
+ */
250
+ getFlyout(): IFlyout | null;
251
+ /**
252
+ * Gets the workspace for the toolbox.
253
+ *
254
+ * @returns The parent workspace for the toolbox.
255
+ */
256
+ getWorkspace(): WorkspaceSvg;
257
+ /**
258
+ * Gets the selected item.
259
+ *
260
+ * @returns The selected item, or null if no item is currently selected.
261
+ */
262
+ getSelectedItem(): ISelectableToolboxItem | null;
263
+ /**
264
+ * Gets the previously selected item.
265
+ *
266
+ * @returns The previously selected item, or null if no item was previously
267
+ * selected.
268
+ */
269
+ getPreviouslySelectedItem(): ISelectableToolboxItem | null;
270
+ /**
271
+ * Gets whether or not the toolbox is horizontal.
272
+ *
273
+ * @returns True if the toolbox is horizontal, false if the toolbox is
274
+ * vertical.
275
+ */
276
+ isHorizontal(): boolean;
277
+ /**
278
+ * Positions the toolbox based on whether it is a horizontal toolbox and
279
+ * whether the workspace is in rtl.
280
+ */
281
+ position(): void;
282
+ /**
283
+ * Handles resizing the toolbox when a toolbox item resizes.
284
+ *
285
+ * @internal
286
+ */
287
+ handleToolboxItemResize(): void;
288
+ /** Unhighlights any previously selected item. */
289
+ clearSelection(): void;
290
+ /**
291
+ * Updates the category colours and background colour of selected categories.
292
+ *
293
+ * @internal
294
+ */
295
+ refreshTheme(): void;
296
+ /**
297
+ * Updates the flyout's content without closing it. Should be used in
298
+ * response to a change in one of the dynamic categories, such as variables or
299
+ * procedures.
300
+ */
301
+ refreshSelection(): void;
302
+ /**
303
+ * Shows or hides the toolbox.
304
+ *
305
+ * @param isVisible True if toolbox should be visible.
306
+ */
307
+ setVisible(isVisible: boolean): void;
308
+ /**
309
+ * Hides the component. Called in WorkspaceSvg.hideChaff.
310
+ *
311
+ * @param onlyClosePopups Whether only popups should be closed.
312
+ * Flyouts should not be closed if this is true.
313
+ */
314
+ autoHide(onlyClosePopups: boolean): void;
315
+ /**
316
+ * Sets the given item as selected.
317
+ * No-op if the item is not selectable.
318
+ *
319
+ * @param newItem The toolbox item to select.
320
+ */
321
+ setSelectedItem(newItem: IToolboxItem | null): void;
322
+ /**
323
+ * Decides whether the old item should be deselected.
324
+ *
325
+ * @param oldItem The previously selected toolbox item.
326
+ * @param newItem The newly selected toolbox item.
327
+ * @returns True if the old item should be deselected, false otherwise.
328
+ */
329
+ protected shouldDeselectItem_(oldItem: ISelectableToolboxItem | null, newItem: ISelectableToolboxItem | null): boolean;
330
+ /**
331
+ * Decides whether the new item should be selected.
332
+ *
333
+ * @param oldItem The previously selected toolbox item.
334
+ * @param newItem The newly selected toolbox item.
335
+ * @returns True if the new item should be selected, false otherwise.
336
+ */
337
+ protected shouldSelectItem_(oldItem: ISelectableToolboxItem | null, newItem: ISelectableToolboxItem | null): boolean;
338
+ /**
339
+ * Deselects the given item, marks it as unselected, and updates aria state.
340
+ *
341
+ * @param item The previously selected toolbox item which should be
342
+ * deselected.
343
+ */
344
+ protected deselectItem_(item: ISelectableToolboxItem): void;
345
+ /**
346
+ * Selects the given item, marks it selected, and updates aria state.
347
+ *
348
+ * @param oldItem The previously selected toolbox item.
349
+ * @param newItem The newly selected toolbox item.
350
+ */
351
+ protected selectItem_(oldItem: ISelectableToolboxItem | null, newItem: ISelectableToolboxItem): void;
352
+ /**
353
+ * Selects the toolbox item by its position in the list of toolbox items.
354
+ *
355
+ * @param position The position of the item to select.
356
+ */
357
+ selectItemByPosition(position: number): void;
358
+ /**
359
+ * Decides whether to hide or show the flyout depending on the selected item.
360
+ *
361
+ * @param oldItem The previously selected toolbox item.
362
+ * @param newItem The newly selected toolbox item.
363
+ */
364
+ protected updateFlyout_(oldItem: ISelectableToolboxItem | null, newItem: ISelectableToolboxItem | null): void;
365
+ /**
366
+ * Emits an event when a new toolbox item is selected.
367
+ *
368
+ * @param oldItem The previously selected toolbox item.
369
+ * @param newItem The newly selected toolbox item.
370
+ */
371
+ private fireSelectEvent_;
372
+ /**
373
+ * Closes the current item if it is expanded, or selects the parent.
374
+ *
375
+ * @returns True if a parent category was selected, false otherwise.
376
+ */
377
+ private selectParent_;
378
+ /**
379
+ * Selects the first child of the currently selected item, or nothing if the
380
+ * toolbox item has no children.
381
+ *
382
+ * @returns True if a child category was selected, false otherwise.
383
+ */
384
+ private selectChild_;
385
+ /**
386
+ * Selects the next visible toolbox item.
387
+ *
388
+ * @returns True if a next category was selected, false otherwise.
389
+ */
390
+ private selectNext_;
391
+ /**
392
+ * Selects the previous visible toolbox item.
393
+ *
394
+ * @returns True if a previous category was selected, false otherwise.
395
+ */
396
+ private selectPrevious_;
397
+ /** Disposes of this toolbox. */
398
+ dispose(): void;
399
+ }
400
+ //# sourceMappingURL=toolbox.d.ts.map
@@ -0,0 +1,95 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2020 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { ICollapsibleToolboxItem } from '../interfaces/i_collapsible_toolbox_item.js';
7
+ import type { IToolbox } from '../interfaces/i_toolbox.js';
8
+ import type { IToolboxItem } from '../interfaces/i_toolbox_item.js';
9
+ import type * as toolbox from '../utils/toolbox.js';
10
+ import type { WorkspaceSvg } from '../workspace_svg.js';
11
+ /**
12
+ * Class for an item in the toolbox.
13
+ *
14
+ * @alias Blockly.ToolboxItem
15
+ */
16
+ export declare class ToolboxItem implements IToolboxItem {
17
+ protected id_: string;
18
+ protected parent_: ICollapsibleToolboxItem | null;
19
+ protected level_: number;
20
+ protected toolboxItemDef_: toolbox.ToolboxItemInfo | null;
21
+ protected workspace_: WorkspaceSvg;
22
+ /** The toolbox this category belongs to. */
23
+ protected readonly parentToolbox_: IToolbox;
24
+ /**
25
+ * @param toolboxItemDef The JSON defining the toolbox item.
26
+ * @param parentToolbox The toolbox that holds the toolbox item.
27
+ * @param opt_parent The parent toolbox item or null if the category does not
28
+ * have a parent.
29
+ */
30
+ constructor(toolboxItemDef: toolbox.ToolboxItemInfo, parentToolbox: IToolbox, opt_parent?: ICollapsibleToolboxItem);
31
+ /**
32
+ * Initializes the toolbox item.
33
+ * This includes creating the DOM and updating the state of any items based
34
+ * on the info object.
35
+ */
36
+ init(): void;
37
+ /**
38
+ * Gets the div for the toolbox item.
39
+ *
40
+ * @returns The div for the toolbox item.
41
+ */
42
+ getDiv(): Element | null;
43
+ /**
44
+ * Gets the HTML element that is clickable.
45
+ * The parent toolbox element receives clicks. The parent toolbox will add an
46
+ * ID to this element so it can pass the onClick event to the correct
47
+ * toolboxItem.
48
+ *
49
+ * @returns The HTML element that receives clicks, or null if this item should
50
+ * not receive clicks.
51
+ */
52
+ getClickTarget(): Element | null;
53
+ /**
54
+ * Gets a unique identifier for this toolbox item.
55
+ *
56
+ * @returns The ID for the toolbox item.
57
+ */
58
+ getId(): string;
59
+ /**
60
+ * Gets the parent if the toolbox item is nested.
61
+ *
62
+ * @returns The parent toolbox item, or null if this toolbox item is not
63
+ * nested.
64
+ */
65
+ getParent(): ICollapsibleToolboxItem | null;
66
+ /**
67
+ * Gets the nested level of the category.
68
+ *
69
+ * @returns The nested level of the category.
70
+ * @internal
71
+ */
72
+ getLevel(): number;
73
+ /**
74
+ * Whether the toolbox item is selectable.
75
+ *
76
+ * @returns True if the toolbox item can be selected.
77
+ */
78
+ isSelectable(): boolean;
79
+ /**
80
+ * Whether the toolbox item is collapsible.
81
+ *
82
+ * @returns True if the toolbox item is collapsible.
83
+ */
84
+ isCollapsible(): boolean;
85
+ /** Dispose of this toolbox item. No-op by default. */
86
+ dispose(): void;
87
+ /**
88
+ * Sets whether the category is visible or not.
89
+ * For a category to be visible its parent category must also be expanded.
90
+ *
91
+ * @param _isVisible True if category should be visible.
92
+ */
93
+ setVisible_(_isVisible: boolean): void;
94
+ }
95
+ //# sourceMappingURL=toolbox_item.d.ts.map
@@ -0,0 +1,147 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2011 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * A type which can define a tooltip.
8
+ * Either a string, an object containing a tooltip property, or a function which
9
+ * returns either a string, or another arbitrarily nested function which
10
+ * eventually unwinds to a string.
11
+ *
12
+ * @alias Blockly.Tooltip.TipInfo
13
+ */
14
+ export declare type TipInfo = string | {
15
+ tooltip: any;
16
+ } | (() => TipInfo | string | Function);
17
+ /**
18
+ * A function that renders custom tooltip UI.
19
+ * 1st parameter: the div element to render content into.
20
+ * 2nd parameter: the element being moused over (i.e., the element for which the
21
+ * tooltip should be shown).
22
+ *
23
+ * @alias Blockly.Tooltip.CustomTooltip
24
+ */
25
+ export declare type CustomTooltip = (p1: Element, p2: Element) => any;
26
+ /**
27
+ * Sets a custom function that will be called if present instead of the default
28
+ * tooltip UI.
29
+ *
30
+ * @param customFn A custom tooltip used to render an alternate tooltip UI.
31
+ * @alias Blockly.Tooltip.setCustomTooltip
32
+ */
33
+ export declare function setCustomTooltip(customFn: CustomTooltip): void;
34
+ /**
35
+ * Gets the custom tooltip function.
36
+ *
37
+ * @returns The custom tooltip function, if defined.
38
+ */
39
+ export declare function getCustomTooltip(): CustomTooltip | undefined;
40
+ /**
41
+ * Returns whether or not a tooltip is showing
42
+ *
43
+ * @returns True if a tooltip is showing
44
+ * @alias Blockly.Tooltip.isVisible
45
+ */
46
+ export declare function isVisible(): boolean;
47
+ /**
48
+ * Maximum width (in characters) of a tooltip.
49
+ *
50
+ * @alias Blockly.Tooltip.LIMIT
51
+ */
52
+ export declare const LIMIT = 50;
53
+ /**
54
+ * Horizontal offset between mouse cursor and tooltip.
55
+ *
56
+ * @alias Blockly.Tooltip.OFFSET_X
57
+ */
58
+ export declare const OFFSET_X = 0;
59
+ /**
60
+ * Vertical offset between mouse cursor and tooltip.
61
+ *
62
+ * @alias Blockly.Tooltip.OFFSET_Y
63
+ */
64
+ export declare const OFFSET_Y = 10;
65
+ /**
66
+ * Radius mouse can move before killing tooltip.
67
+ *
68
+ * @alias Blockly.Tooltip.RADIUS_OK
69
+ */
70
+ export declare const RADIUS_OK = 10;
71
+ /**
72
+ * Delay before tooltip appears.
73
+ *
74
+ * @alias Blockly.Tooltip.HOVER_MS
75
+ */
76
+ export declare const HOVER_MS = 750;
77
+ /**
78
+ * Horizontal padding between tooltip and screen edge.
79
+ *
80
+ * @alias Blockly.Tooltip.MARGINS
81
+ */
82
+ export declare const MARGINS = 5;
83
+ /**
84
+ * Returns the HTML tooltip container.
85
+ *
86
+ * @returns The HTML tooltip container.
87
+ * @alias Blockly.Tooltip.getDiv
88
+ */
89
+ export declare function getDiv(): HTMLDivElement | null;
90
+ /**
91
+ * Returns the tooltip text for the given element.
92
+ *
93
+ * @param object The object to get the tooltip text of.
94
+ * @returns The tooltip text of the element.
95
+ * @alias Blockly.Tooltip.getTooltipOfObject
96
+ */
97
+ export declare function getTooltipOfObject(object: any | null): string;
98
+ /**
99
+ * Create the tooltip div and inject it onto the page.
100
+ *
101
+ * @alias Blockly.Tooltip.createDom
102
+ */
103
+ export declare function createDom(): void;
104
+ /**
105
+ * Binds the required mouse events onto an SVG element.
106
+ *
107
+ * @param element SVG element onto which tooltip is to be bound.
108
+ * @alias Blockly.Tooltip.bindMouseEvents
109
+ */
110
+ export declare function bindMouseEvents(element: Element): void;
111
+ /**
112
+ * Unbinds tooltip mouse events from the SVG element.
113
+ *
114
+ * @param element SVG element onto which tooltip is bound.
115
+ * @alias Blockly.Tooltip.unbindMouseEvents
116
+ */
117
+ export declare function unbindMouseEvents(element: Element): void;
118
+ /**
119
+ * Dispose of the tooltip.
120
+ *
121
+ * @alias Blockly.Tooltip.dispose
122
+ * @internal
123
+ */
124
+ export declare function dispose(): void;
125
+ /**
126
+ * Hide the tooltip.
127
+ *
128
+ * @alias Blockly.Tooltip.hide
129
+ */
130
+ export declare function hide(): void;
131
+ /**
132
+ * Hide any in-progress tooltips and block showing new tooltips until the next
133
+ * call to unblock().
134
+ *
135
+ * @alias Blockly.Tooltip.block
136
+ * @internal
137
+ */
138
+ export declare function block(): void;
139
+ /**
140
+ * Unblock tooltips: allow them to be scheduled and shown according to their own
141
+ * logic.
142
+ *
143
+ * @alias Blockly.Tooltip.unblock
144
+ * @internal
145
+ */
146
+ export declare function unblock(): void;
147
+ //# sourceMappingURL=tooltip.d.ts.map