blockly 9.2.1 → 9.3.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 (299) hide show
  1. package/blockly.min.js +1615 -1509
  2. package/blockly_compressed.js +1249 -1136
  3. package/blockly_compressed.js.map +1 -1
  4. package/blocks_compressed.js +166 -173
  5. package/blocks_compressed.js.map +1 -1
  6. package/core/any_aliases.d.ts +5 -0
  7. package/core/block.d.ts +49 -17
  8. package/core/block_animations.d.ts +0 -4
  9. package/core/block_dragger.d.ts +1 -6
  10. package/core/block_svg.d.ts +58 -8
  11. package/core/blockly.d.ts +27 -58
  12. package/core/blockly_options.d.ts +0 -2
  13. package/core/blocks.d.ts +0 -2
  14. package/core/browser_events.d.ts +0 -9
  15. package/core/bubble.d.ts +0 -2
  16. package/core/bubble_dragger.d.ts +0 -2
  17. package/core/bump_objects.d.ts +0 -3
  18. package/core/clipboard.d.ts +0 -3
  19. package/core/comment.d.ts +6 -10
  20. package/core/common.d.ts +0 -12
  21. package/core/component_manager.d.ts +0 -2
  22. package/core/connection.d.ts +19 -6
  23. package/core/connection_checker.d.ts +1 -3
  24. package/core/connection_db.d.ts +0 -2
  25. package/core/connection_type.d.ts +0 -2
  26. package/core/constants.d.ts +0 -4
  27. package/core/contextmenu.d.ts +0 -11
  28. package/core/contextmenu_items.d.ts +0 -27
  29. package/core/contextmenu_registry.d.ts +0 -2
  30. package/core/css.d.ts +0 -2
  31. package/core/delete_area.d.ts +0 -2
  32. package/core/dialog.d.ts +0 -6
  33. package/core/drag_target.d.ts +0 -2
  34. package/core/events/events.d.ts +2 -22
  35. package/core/events/events_abstract.d.ts +7 -3
  36. package/core/events/events_block_base.d.ts +2 -3
  37. package/core/events/events_block_change.d.ts +9 -3
  38. package/core/events/events_block_create.d.ts +6 -4
  39. package/core/events/events_block_delete.d.ts +7 -4
  40. package/core/events/events_block_drag.d.ts +7 -3
  41. package/core/events/events_block_move.d.ts +20 -3
  42. package/core/events/events_bubble_open.d.ts +3 -2
  43. package/core/events/events_click.d.ts +6 -3
  44. package/core/events/events_comment_base.d.ts +1 -2
  45. package/core/events/events_comment_change.d.ts +3 -3
  46. package/core/events/events_comment_create.d.ts +2 -3
  47. package/core/events/events_comment_delete.d.ts +2 -3
  48. package/core/events/events_comment_move.d.ts +4 -4
  49. package/core/events/events_marker_move.d.ts +10 -3
  50. package/core/events/events_selected.d.ts +6 -2
  51. package/core/events/events_theme_change.d.ts +2 -3
  52. package/core/events/events_toolbox_item_select.d.ts +3 -3
  53. package/core/events/events_trashcan_open.d.ts +5 -3
  54. package/core/events/events_ui.d.ts +0 -1
  55. package/core/events/events_ui_base.d.ts +0 -2
  56. package/core/events/events_var_base.d.ts +1 -2
  57. package/core/events/events_var_create.d.ts +3 -3
  58. package/core/events/events_var_delete.d.ts +4 -2
  59. package/core/events/events_var_rename.d.ts +4 -2
  60. package/core/events/events_viewport.d.ts +13 -2
  61. package/core/events/utils.d.ts +0 -89
  62. package/core/events/workspace_events.d.ts +2 -6
  63. package/core/extensions.d.ts +0 -8
  64. package/core/field.d.ts +55 -21
  65. package/core/field_angle.d.ts +61 -51
  66. package/core/field_checkbox.d.ts +34 -15
  67. package/core/field_colour.d.ts +56 -46
  68. package/core/field_dropdown.d.ts +35 -19
  69. package/core/field_image.d.ts +10 -14
  70. package/core/field_input.d.ts +39 -25
  71. package/core/field_label.d.ts +7 -10
  72. package/core/field_label_serializable.d.ts +4 -6
  73. package/core/field_multilineinput.d.ts +36 -14
  74. package/core/field_number.d.ts +27 -19
  75. package/core/field_registry.d.ts +0 -3
  76. package/core/field_textinput.d.ts +36 -8
  77. package/core/field_variable.d.ts +30 -18
  78. package/core/flyout_base.d.ts +5 -6
  79. package/core/flyout_button.d.ts +2 -2
  80. package/core/flyout_horizontal.d.ts +0 -2
  81. package/core/flyout_metrics_manager.d.ts +0 -2
  82. package/core/flyout_vertical.d.ts +0 -2
  83. package/core/generator.d.ts +0 -1
  84. package/core/gesture.d.ts +5 -18
  85. package/core/grid.d.ts +0 -2
  86. package/core/icon.d.ts +0 -2
  87. package/core/inject.d.ts +0 -1
  88. package/core/input.d.ts +0 -3
  89. package/core/input_types.d.ts +0 -2
  90. package/core/insertion_marker_manager.d.ts +6 -6
  91. package/core/interfaces/i_ast_node_location.d.ts +0 -2
  92. package/core/interfaces/i_ast_node_location_svg.d.ts +0 -2
  93. package/core/interfaces/i_ast_node_location_with_block.d.ts +0 -2
  94. package/core/interfaces/i_autohideable.d.ts +0 -2
  95. package/core/interfaces/i_block_dragger.d.ts +0 -2
  96. package/core/interfaces/i_bounded_element.d.ts +0 -2
  97. package/core/interfaces/i_bubble.d.ts +0 -2
  98. package/core/interfaces/i_collapsible_toolbox_item.d.ts +0 -2
  99. package/core/interfaces/i_component.d.ts +0 -2
  100. package/core/interfaces/i_connection_checker.d.ts +0 -2
  101. package/core/interfaces/i_contextmenu.d.ts +0 -1
  102. package/core/interfaces/i_copyable.d.ts +3 -2
  103. package/core/interfaces/i_deletable.d.ts +0 -2
  104. package/core/interfaces/i_delete_area.d.ts +0 -2
  105. package/core/interfaces/i_drag_target.d.ts +0 -2
  106. package/core/interfaces/i_draggable.d.ts +0 -2
  107. package/core/interfaces/i_flyout.d.ts +0 -2
  108. package/core/interfaces/i_keyboard_accessible.d.ts +0 -2
  109. package/core/interfaces/i_legacy_procedure_blocks.d.ts +34 -0
  110. package/core/interfaces/i_metrics_manager.d.ts +8 -8
  111. package/core/interfaces/i_movable.d.ts +0 -2
  112. package/core/interfaces/i_positionable.d.ts +0 -2
  113. package/core/interfaces/i_procedure_block.d.ts +3 -0
  114. package/core/interfaces/i_procedure_model.d.ts +0 -5
  115. package/core/interfaces/i_registrable.d.ts +0 -2
  116. package/core/interfaces/i_selectable.d.ts +0 -2
  117. package/core/interfaces/i_selectable_toolbox_item.d.ts +4 -2
  118. package/core/interfaces/i_serializer.d.ts +0 -2
  119. package/core/interfaces/i_styleable.d.ts +0 -2
  120. package/core/interfaces/i_toolbox.d.ts +0 -2
  121. package/core/interfaces/i_toolbox_item.d.ts +0 -2
  122. package/core/interfaces/i_variable_backed_parameter_model.d.ts +17 -0
  123. package/core/internal_constants.d.ts +0 -5
  124. package/core/keyboard_nav/ast_node.d.ts +0 -3
  125. package/core/keyboard_nav/basic_cursor.d.ts +0 -3
  126. package/core/keyboard_nav/cursor.d.ts +0 -3
  127. package/core/keyboard_nav/marker.d.ts +0 -2
  128. package/core/keyboard_nav/tab_navigate_cursor.d.ts +0 -2
  129. package/core/marker_manager.d.ts +0 -2
  130. package/core/menu.d.ts +0 -2
  131. package/core/menuitem.d.ts +0 -2
  132. package/core/metrics_manager.d.ts +8 -8
  133. package/core/mutator.d.ts +0 -2
  134. package/core/names.d.ts +0 -3
  135. package/core/{procedures/observable_procedure_map.d.ts → observable_procedure_map.d.ts} +4 -5
  136. package/core/options.d.ts +0 -2
  137. package/core/positionable_helpers.d.ts +0 -7
  138. package/core/procedures.d.ts +7 -28
  139. package/core/registry.d.ts +0 -11
  140. package/core/render_management.d.ts +15 -0
  141. package/core/rendered_connection.d.ts +22 -9
  142. package/core/renderers/common/block_rendering.d.ts +0 -3
  143. package/core/renderers/common/constants.d.ts +6 -51
  144. package/core/renderers/common/debug.d.ts +0 -3
  145. package/core/renderers/common/debugger.d.ts +9 -23
  146. package/core/renderers/common/drawer.d.ts +0 -5
  147. package/core/renderers/common/i_path_object.d.ts +0 -17
  148. package/core/renderers/common/info.d.ts +2 -12
  149. package/core/renderers/common/marker_svg.d.ts +2 -4
  150. package/core/renderers/common/path_object.d.ts +0 -24
  151. package/core/renderers/common/renderer.d.ts +5 -20
  152. package/core/renderers/geras/constants.d.ts +0 -5
  153. package/core/renderers/geras/drawer.d.ts +2 -4
  154. package/core/renderers/geras/highlight_constants.d.ts +6 -17
  155. package/core/renderers/geras/highlighter.d.ts +0 -13
  156. package/core/renderers/geras/info.d.ts +2 -5
  157. package/core/renderers/geras/measurables/inline_input.d.ts +0 -3
  158. package/core/renderers/geras/measurables/statement_input.d.ts +0 -3
  159. package/core/renderers/geras/path_object.d.ts +0 -8
  160. package/core/renderers/geras/renderer.d.ts +5 -7
  161. package/core/renderers/measurables/base.d.ts +0 -3
  162. package/core/renderers/measurables/bottom_row.d.ts +0 -9
  163. package/core/renderers/measurables/connection.d.ts +0 -3
  164. package/core/renderers/measurables/external_value_input.d.ts +0 -3
  165. package/core/renderers/measurables/field.d.ts +0 -3
  166. package/core/renderers/measurables/hat.d.ts +0 -3
  167. package/core/renderers/measurables/icon.d.ts +2 -5
  168. package/core/renderers/measurables/in_row_spacer.d.ts +0 -3
  169. package/core/renderers/measurables/inline_input.d.ts +1 -4
  170. package/core/renderers/measurables/input_connection.d.ts +1 -4
  171. package/core/renderers/measurables/input_row.d.ts +0 -7
  172. package/core/renderers/measurables/jagged_edge.d.ts +2 -5
  173. package/core/renderers/measurables/next_connection.d.ts +0 -3
  174. package/core/renderers/measurables/output_connection.d.ts +0 -3
  175. package/core/renderers/measurables/previous_connection.d.ts +0 -3
  176. package/core/renderers/measurables/round_corner.d.ts +0 -3
  177. package/core/renderers/measurables/row.d.ts +0 -39
  178. package/core/renderers/measurables/spacer_row.d.ts +0 -3
  179. package/core/renderers/measurables/square_corner.d.ts +0 -3
  180. package/core/renderers/measurables/statement_input.d.ts +0 -3
  181. package/core/renderers/measurables/top_row.d.ts +0 -6
  182. package/core/renderers/measurables/types.d.ts +0 -31
  183. package/core/renderers/minimalist/constants.d.ts +2 -4
  184. package/core/renderers/minimalist/drawer.d.ts +0 -3
  185. package/core/renderers/minimalist/info.d.ts +0 -4
  186. package/core/renderers/minimalist/renderer.d.ts +0 -3
  187. package/core/renderers/thrasos/info.d.ts +0 -4
  188. package/core/renderers/thrasos/renderer.d.ts +3 -3
  189. package/core/renderers/zelos/constants.d.ts +3 -17
  190. package/core/renderers/zelos/drawer.d.ts +0 -3
  191. package/core/renderers/zelos/info.d.ts +0 -4
  192. package/core/renderers/zelos/marker_svg.d.ts +0 -2
  193. package/core/renderers/zelos/measurables/bottom_row.d.ts +0 -3
  194. package/core/renderers/zelos/measurables/inputs.d.ts +0 -3
  195. package/core/renderers/zelos/measurables/row_elements.d.ts +0 -3
  196. package/core/renderers/zelos/measurables/top_row.d.ts +0 -3
  197. package/core/renderers/zelos/path_object.d.ts +0 -9
  198. package/core/renderers/zelos/renderer.d.ts +3 -5
  199. package/core/scrollbar.d.ts +0 -2
  200. package/core/scrollbar_pair.d.ts +0 -2
  201. package/core/serialization/blocks.d.ts +3 -9
  202. package/core/serialization/exceptions.d.ts +0 -8
  203. package/core/serialization/priorities.d.ts +0 -4
  204. package/core/serialization/procedures.d.ts +0 -7
  205. package/core/serialization/registry.d.ts +0 -2
  206. package/core/serialization/variables.d.ts +0 -4
  207. package/core/serialization/workspaces.d.ts +0 -2
  208. package/core/shortcut_items.d.ts +0 -17
  209. package/core/shortcut_registry.d.ts +0 -2
  210. package/core/sprites.d.ts +0 -2
  211. package/core/theme/classic.d.ts +0 -2
  212. package/core/theme/zelos.d.ts +0 -2
  213. package/core/theme.d.ts +0 -2
  214. package/core/theme_manager.d.ts +3 -6
  215. package/core/toolbox/category.d.ts +5 -7
  216. package/core/toolbox/collapsible_category.d.ts +0 -4
  217. package/core/toolbox/separator.d.ts +0 -2
  218. package/core/toolbox/toolbox.d.ts +2 -5
  219. package/core/toolbox/toolbox_item.d.ts +0 -2
  220. package/core/tooltip.d.ts +0 -29
  221. package/core/touch.d.ts +0 -13
  222. package/core/trashcan.d.ts +0 -2
  223. package/core/utils/aria.d.ts +0 -6
  224. package/core/utils/array.d.ts +0 -1
  225. package/core/utils/colour.d.ts +0 -12
  226. package/core/utils/coordinate.d.ts +0 -2
  227. package/core/utils/deprecation.d.ts +0 -1
  228. package/core/utils/dom.d.ts +0 -25
  229. package/core/utils/idgenerator.d.ts +0 -2
  230. package/core/utils/keycodes.d.ts +0 -2
  231. package/core/utils/math.d.ts +0 -3
  232. package/core/utils/metrics.d.ts +0 -1
  233. package/core/utils/object.d.ts +0 -4
  234. package/core/utils/parsing.d.ts +0 -4
  235. package/core/utils/rect.d.ts +0 -2
  236. package/core/utils/size.d.ts +0 -2
  237. package/core/utils/string.d.ts +0 -6
  238. package/core/utils/style.d.ts +0 -8
  239. package/core/utils/svg.d.ts +0 -2
  240. package/core/utils/svg_math.d.ts +0 -6
  241. package/core/utils/svg_paths.d.ts +0 -8
  242. package/core/utils/toolbox.d.ts +2 -35
  243. package/core/utils/useragent.d.ts +0 -8
  244. package/core/utils/xml.d.ts +9 -8
  245. package/core/utils.d.ts +0 -12
  246. package/core/variable_map.d.ts +1 -3
  247. package/core/variable_model.d.ts +0 -1
  248. package/core/variables.d.ts +13 -17
  249. package/core/variables_dynamic.d.ts +0 -4
  250. package/core/warning.d.ts +0 -2
  251. package/core/widgetdiv.d.ts +0 -10
  252. package/core/workspace.d.ts +3 -3
  253. package/core/workspace_audio.d.ts +0 -2
  254. package/core/workspace_comment.d.ts +1 -3
  255. package/core/workspace_comment_svg.d.ts +1 -3
  256. package/core/workspace_dragger.d.ts +0 -2
  257. package/core/workspace_svg.d.ts +4 -7
  258. package/core/xml.d.ts +1 -13
  259. package/core/zoom_controls.d.ts +4 -15
  260. package/dart_compressed.js +199 -199
  261. package/dart_compressed.js.map +1 -1
  262. package/javascript_compressed.js +168 -168
  263. package/javascript_compressed.js.map +1 -1
  264. package/lua_compressed.js +211 -211
  265. package/lua_compressed.js.map +1 -1
  266. package/msg/bn.js +2 -2
  267. package/msg/bs.js +7 -7
  268. package/msg/de.js +1 -1
  269. package/msg/fi.js +1 -1
  270. package/msg/fr.js +3 -3
  271. package/msg/ia.js +5 -5
  272. package/msg/kn.js +5 -5
  273. package/msg/ko.js +1 -1
  274. package/msg/lb.js +22 -22
  275. package/msg/sd.js +9 -9
  276. package/msg/skr-arab.js +2 -2
  277. package/msg/sl.js +18 -18
  278. package/msg/sw.js +1 -1
  279. package/msg/zh-hans.js +6 -6
  280. package/msg/zh-hant.js +2 -2
  281. package/package.json +9 -9
  282. package/php_compressed.js +185 -185
  283. package/php_compressed.js.map +1 -1
  284. package/python_compressed.js +138 -138
  285. package/python_compressed.js.map +1 -1
  286. package/core/events/events_procedure_base.d.ts +0 -26
  287. package/core/events/events_procedure_change_return.d.ts +0 -40
  288. package/core/events/events_procedure_create.d.ts +0 -34
  289. package/core/events/events_procedure_delete.d.ts +0 -32
  290. package/core/events/events_procedure_enable.d.ts +0 -34
  291. package/core/events/events_procedure_parameter_base.d.ts +0 -26
  292. package/core/events/events_procedure_parameter_create.d.ts +0 -42
  293. package/core/events/events_procedure_parameter_delete.d.ts +0 -41
  294. package/core/events/events_procedure_parameter_rename.d.ts +0 -36
  295. package/core/events/events_procedure_rename.d.ts +0 -35
  296. package/core/procedures/observable_parameter_model.d.ts +0 -62
  297. package/core/procedures/observable_procedure_model.d.ts +0 -75
  298. package/core/procedures/update_procedures.d.ts +0 -13
  299. package/core/utils/sentinel.d.ts +0 -13
@@ -1,2 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
1
6
  type any = any;
2
7
  //# sourceMappingURL=any_aliases.d.ts.map
package/core/block.d.ts CHANGED
@@ -22,8 +22,6 @@ import type { Workspace } from './workspace.js';
22
22
  /**
23
23
  * Class for one block.
24
24
  * Not normally called directly, workspace.newBlock() is preferred.
25
- *
26
- * @alias Blockly.Block
27
25
  */
28
26
  export declare class Block implements IASTNodeLocation, IDeletable {
29
27
  /**
@@ -31,7 +29,7 @@ export declare class Block implements IASTNodeLocation, IDeletable {
31
29
  * changes. This is usually only called from the constructor, the block type
32
30
  * initializer function, or an extension initializer function.
33
31
  */
34
- onchange?: ((p1: Abstract) => any) | null;
32
+ onchange?: ((p1: Abstract) => void) | null;
35
33
  /** The language-neutral ID given to the collapsed input. */
36
34
  static readonly COLLAPSED_INPUT_NAME: string;
37
35
  /** The language-neutral ID given to the collapsed field. */
@@ -57,7 +55,7 @@ export declare class Block implements IASTNodeLocation, IDeletable {
57
55
  /** Name of the block style. */
58
56
  protected styleName_: string;
59
57
  /** An optional method called during initialization. */
60
- init?: (() => any) | null;
58
+ init?: (() => void);
61
59
  /** An optional method called during disposal. */
62
60
  destroy?: (() => void);
63
61
  /**
@@ -65,25 +63,25 @@ export declare class Block implements IASTNodeLocation, IDeletable {
65
63
  * mutation state to XML. This must be coupled with defining
66
64
  * `domToMutation`.
67
65
  */
68
- mutationToDom?: ((...p1: any[]) => Element) | null;
66
+ mutationToDom?: (...p1: any[]) => Element;
69
67
  /**
70
68
  * An optional deserialization method for defining how to deserialize the
71
69
  * mutation state from XML. This must be coupled with defining
72
70
  * `mutationToDom`.
73
71
  */
74
- domToMutation?: ((p1: Element) => any) | null;
72
+ domToMutation?: (p1: Element) => void;
75
73
  /**
76
74
  * An optional serialization method for defining how to serialize the
77
75
  * block's extra state (eg mutation state) to something JSON compatible.
78
76
  * This must be coupled with defining `loadExtraState`.
79
77
  */
80
- saveExtraState?: (() => any) | null;
78
+ saveExtraState?: () => any;
81
79
  /**
82
80
  * An optional serialization method for defining how to deserialize the
83
81
  * block's extra state (eg mutation state) from something JSON compatible.
84
82
  * This must be coupled with defining `saveExtraState`.
85
83
  */
86
- loadExtraState?: ((p1: any) => any) | null;
84
+ loadExtraState?: (p1: any) => void;
87
85
  /**
88
86
  * An optional property for suppressing adding STATEMENT_PREFIX and
89
87
  * STATEMENT_SUFFIX to generated code.
@@ -95,21 +93,21 @@ export declare class Block implements IASTNodeLocation, IDeletable {
95
93
  * shown to the user, but are declared as global variables in the generated
96
94
  * code.
97
95
  */
98
- getDeveloperVariables?: (() => string[]);
96
+ getDeveloperVariables?: () => string[];
99
97
  /**
100
98
  * An optional function that reconfigures the block based on the contents of
101
99
  * the mutator dialog.
102
100
  */
103
- compose?: ((p1: Block) => void);
101
+ compose?: (p1: Block) => void;
104
102
  /**
105
103
  * An optional function that populates the mutator's dialog with
106
104
  * this block's components.
107
105
  */
108
- decompose?: ((p1: Workspace) => Block);
106
+ decompose?: (p1: Workspace) => Block;
109
107
  id: string;
110
- outputConnection: Connection;
111
- nextConnection: Connection;
112
- previousConnection: Connection;
108
+ outputConnection: Connection | null;
109
+ nextConnection: Connection | null;
110
+ previousConnection: Connection | null;
113
111
  inputList: Input[];
114
112
  inputsInline?: boolean;
115
113
  private disabled;
@@ -147,7 +145,7 @@ export declare class Block implements IASTNodeLocation, IDeletable {
147
145
  /**
148
146
  * String for block help, or function that returns a URL. Null for no help.
149
147
  */
150
- helpUrl: string | Function;
148
+ helpUrl: string | Function | null;
151
149
  /** A bound callback function to use when the parent workspace changes. */
152
150
  private onchangeWrapper_;
153
151
  /**
@@ -179,6 +177,11 @@ export declare class Block implements IASTNodeLocation, IDeletable {
179
177
  * @suppress {checkTypes}
180
178
  */
181
179
  dispose(healStack: boolean): void;
180
+ /**
181
+ * Disposes of this block without doing things required by the top block.
182
+ * E.g. does not fire events, unplug the block, etc.
183
+ */
184
+ protected disposeInternal(): void;
182
185
  /**
183
186
  * Returns true if the block is either in the process of being disposed, or
184
187
  * is disposed.
@@ -348,6 +351,12 @@ export declare class Block implements IASTNodeLocation, IDeletable {
348
351
  * @returns True if deletable.
349
352
  */
350
353
  isDeletable(): boolean;
354
+ /**
355
+ * Return whether this block's own deletable property is true or false.
356
+ *
357
+ * @returns True if the block's deletable property is true, false otherwise.
358
+ */
359
+ isOwnDeletable(): boolean;
351
360
  /**
352
361
  * Set whether this block is deletable or not.
353
362
  *
@@ -358,8 +367,16 @@ export declare class Block implements IASTNodeLocation, IDeletable {
358
367
  * Get whether this block is movable or not.
359
368
  *
360
369
  * @returns True if movable.
370
+ * @internal
361
371
  */
362
372
  isMovable(): boolean;
373
+ /**
374
+ * Return whether this block's own movable property is true or false.
375
+ *
376
+ * @returns True if the block's movable property is true, false otherwise.
377
+ * @internal
378
+ */
379
+ isOwnMovable(): boolean;
363
380
  /**
364
381
  * Set whether this block is movable or not.
365
382
  *
@@ -406,8 +423,15 @@ export declare class Block implements IASTNodeLocation, IDeletable {
406
423
  * Get whether this block is editable or not.
407
424
  *
408
425
  * @returns True if editable.
426
+ * @internal
409
427
  */
410
428
  isEditable(): boolean;
429
+ /**
430
+ * Return whether this block's own editable property is true or false.
431
+ *
432
+ * @returns True if the block's editable property is true, false otherwise.
433
+ */
434
+ isOwnEditable(): boolean;
411
435
  /**
412
436
  * Set whether this block is editable or not.
413
437
  *
@@ -492,7 +516,7 @@ export declare class Block implements IASTNodeLocation, IDeletable {
492
516
  * @param onchangeFn The callback to call when the block's workspace changes.
493
517
  * @throws {Error} if onchangeFn is not falsey and not a function.
494
518
  */
495
- setOnChange(onchangeFn: (p1: Abstract) => any): void;
519
+ setOnChange(onchangeFn: (p1: Abstract) => void): void;
496
520
  /**
497
521
  * Returns the named field from a block.
498
522
  *
@@ -627,11 +651,19 @@ export declare class Block implements IASTNodeLocation, IDeletable {
627
651
  * Create a human-readable text representation of this block and any children.
628
652
  *
629
653
  * @param opt_maxLength Truncate the string to this length.
630
- * @param opt_emptyToken The placeholder string used to denote an empty field.
654
+ * @param opt_emptyToken The placeholder string used to denote an empty input.
631
655
  * If not specified, '?' is used.
632
656
  * @returns Text of block.
633
657
  */
634
658
  toString(opt_maxLength?: number, opt_emptyToken?: string): string;
659
+ /**
660
+ * Converts this block into string tokens.
661
+ *
662
+ * @param emptyToken The token to use in place of an empty input.
663
+ * Defaults to '?'.
664
+ * @returns The array of string tokens representing this block.
665
+ */
666
+ private toTokens;
635
667
  /**
636
668
  * Shortcut for appending a value input row.
637
669
  *
@@ -8,7 +8,6 @@ import type { BlockSvg } from './block_svg.js';
8
8
  * Play some UI effects (sound, animation) when disposing of a block.
9
9
  *
10
10
  * @param block The block being disposed of.
11
- * @alias Blockly.blockAnimations.disposeUiEffect
12
11
  * @internal
13
12
  */
14
13
  export declare function disposeUiEffect(block: BlockSvg): void;
@@ -16,7 +15,6 @@ export declare function disposeUiEffect(block: BlockSvg): void;
16
15
  * Play some UI effects (sound, ripple) after a connection has been established.
17
16
  *
18
17
  * @param block The block being connected.
19
- * @alias Blockly.blockAnimations.connectionUiEffect
20
18
  * @internal
21
19
  */
22
20
  export declare function connectionUiEffect(block: BlockSvg): void;
@@ -24,14 +22,12 @@ export declare function connectionUiEffect(block: BlockSvg): void;
24
22
  * Play some UI effects (sound, animation) when disconnecting a block.
25
23
  *
26
24
  * @param block The block being disconnected.
27
- * @alias Blockly.blockAnimations.disconnectUiEffect
28
25
  * @internal
29
26
  */
30
27
  export declare function disconnectUiEffect(block: BlockSvg): void;
31
28
  /**
32
29
  * Stop the disconnect UI animation immediately.
33
30
  *
34
- * @alias Blockly.blockAnimations.disconnectUiStop
35
31
  * @internal
36
32
  */
37
33
  export declare function disconnectUiStop(): void;
@@ -13,8 +13,6 @@ import type { WorkspaceSvg } from './workspace_svg.js';
13
13
  /**
14
14
  * Class for a block dragger. It moves blocks around the workspace when they
15
15
  * are being dragged by a mouse or touch.
16
- *
17
- * @alias Blockly.BlockDragger
18
16
  */
19
17
  export declare class BlockDragger implements IBlockDragger {
20
18
  /** The top block in the stack that is being dragged. */
@@ -103,11 +101,8 @@ export declare class BlockDragger implements IBlockDragger {
103
101
  protected maybeDeleteBlock_(): boolean;
104
102
  /**
105
103
  * Updates the necessary information to place a block at a certain location.
106
- *
107
- * @param delta The change in location from where the block started the drag
108
- * to where it ended the drag.
109
104
  */
110
- protected updateBlockAfterMove_(delta: Coordinate): void;
105
+ protected updateBlockAfterMove_(): void;
111
106
  /** Fire a UI event at the end of a block drag. */
112
107
  protected fireDragEndEvent_(): void;
113
108
  /**
@@ -28,8 +28,6 @@ import type { WorkspaceSvg } from './workspace_svg.js';
28
28
  /**
29
29
  * Class for a block's SVG representation.
30
30
  * Not normally called directly, workspace.newBlock() is preferred.
31
- *
32
- * @alias Blockly.BlockSvg
33
31
  */
34
32
  export declare class BlockSvg extends Block implements IASTNodeLocationSvg, IBoundedElement, ICopyable, IDraggable {
35
33
  /**
@@ -43,9 +41,9 @@ export declare class BlockSvg extends Block implements IASTNodeLocationSvg, IBou
43
41
  * the block.
44
42
  */
45
43
  static readonly COLLAPSED_WARNING_ID = "TEMP_COLLAPSED_WARNING_";
46
- decompose?: ((p1: Workspace) => BlockSvg);
47
- saveConnections?: ((p1: BlockSvg) => any);
48
- customContextMenu?: ((p1: Array<ContextMenuOption | LegacyContextMenuOption>) => any) | null;
44
+ decompose?: (p1: Workspace) => BlockSvg;
45
+ saveConnections?: (p1: BlockSvg) => void;
46
+ customContextMenu?: (p1: Array<ContextMenuOption | LegacyContextMenuOption>) => void;
49
47
  /**
50
48
  * An property used internally to reference the block's rendering debugger.
51
49
  *
@@ -78,6 +76,7 @@ export declare class BlockSvg extends Block implements IASTNodeLocationSvg, IBou
78
76
  /** @internal */
79
77
  pathObject: IPathObject;
80
78
  rendered: boolean;
79
+ private visuallyDisabled;
81
80
  /**
82
81
  * Is this block currently rendering? Used to stop recursive render calls
83
82
  * from actually triggering a re-render.
@@ -90,6 +89,20 @@ export declare class BlockSvg extends Block implements IASTNodeLocationSvg, IBou
90
89
  nextConnection: RenderedConnection;
91
90
  previousConnection: RenderedConnection;
92
91
  private readonly useDragSurface_;
92
+ private translation;
93
+ /**
94
+ * The ID of the setTimeout callback for bumping neighbours, or 0 if no bump
95
+ * is currently scheduled.
96
+ */
97
+ private bumpNeighboursPid;
98
+ /**
99
+ * The location of the top left of this block (in workspace coordinates)
100
+ * relative to either its parent block, or the workspace origin if it has no
101
+ * parent.
102
+ *
103
+ * @internal
104
+ */
105
+ relativeCoords: Coordinate;
93
106
  /**
94
107
  * @param workspace The block's workspace.
95
108
  * @param prototypeName Name of the language object containing type-specific
@@ -163,6 +176,12 @@ export declare class BlockSvg extends Block implements IASTNodeLocationSvg, IBou
163
176
  * @param y The y coordinate of the translation in workspace units.
164
177
  */
165
178
  translate(x: number, y: number): void;
179
+ /**
180
+ * Returns the SVG translation of this block.
181
+ *
182
+ * @internal
183
+ */
184
+ getTranslation(): string;
166
185
  /**
167
186
  * Move this block to its workspace's drag surface, accounting for
168
187
  * positioning. Generally should be called at the same time as
@@ -319,6 +338,11 @@ export declare class BlockSvg extends Block implements IASTNodeLocationSvg, IBou
319
338
  * @suppress {checkTypes}
320
339
  */
321
340
  dispose(healStack?: boolean, animate?: boolean): void;
341
+ /**
342
+ * Disposes of this block without doing things required by the top block.
343
+ * E.g. does trigger UI effects, remove nodes, etc.
344
+ */
345
+ disposeInternal(): void;
322
346
  /**
323
347
  * Delete a block and hide chaff when doing so. The block will not be deleted
324
348
  * if it's in a flyout. This is called from the context menu and keyboard
@@ -508,7 +532,7 @@ export declare class BlockSvg extends Block implements IASTNodeLocationSvg, IBou
508
532
  *
509
533
  * @param all If true, return all connections even hidden ones.
510
534
  * Otherwise, for a non-rendered block return an empty list, and for a
511
- * collapsed block don't return inputs connections.
535
+ * collapsed block don't return inputs connections.
512
536
  * @returns Array of connections.
513
537
  * @internal
514
538
  */
@@ -599,20 +623,46 @@ export declare class BlockSvg extends Block implements IASTNodeLocationSvg, IBou
599
623
  */
600
624
  getChildren(ordered: boolean): BlockSvg[];
601
625
  /**
602
- * Lays out and reflows a block based on its contents and settings.
626
+ * Triggers a rerender after a delay to allow for batching.
627
+ *
628
+ * @internal
629
+ */
630
+ queueRender(): void;
631
+ /**
632
+ * Immediately lays out and reflows a block based on its contents and
633
+ * settings.
603
634
  *
604
635
  * @param opt_bubble If false, just render this block.
605
636
  * If true, also render block's parent, grandparent, etc. Defaults to true.
606
637
  */
607
638
  render(opt_bubble?: boolean): void;
639
+ /**
640
+ * Renders this block in a way that's compatible with the more efficient
641
+ * render management system.
642
+ *
643
+ * @internal
644
+ */
645
+ renderEfficiently(): void;
646
+ /**
647
+ * Tightens all children of this block so they are snuggly rendered against
648
+ * their parent connections.
649
+ *
650
+ * Does not update connection locations, so that they can be updated more
651
+ * efficiently by the render management system.
652
+ *
653
+ * @internal
654
+ */
655
+ tightenChildrenEfficiently(): void;
608
656
  /** Redraw any attached marker or cursor svgs if needed. */
609
657
  protected updateMarkers_(): void;
610
658
  /**
611
659
  * Update all of the connections on this block with the new locations
612
660
  * calculated during rendering. Also move all of the connected blocks based
613
661
  * on the new connection locations.
662
+ *
663
+ * @internal
614
664
  */
615
- private updateConnectionLocations_;
665
+ updateConnectionLocations(): void;
616
666
  /**
617
667
  * Add the cursor SVG to this block's SVG group.
618
668
  *
package/core/blockly.d.ts CHANGED
@@ -38,19 +38,19 @@ import { DragTarget } from './drag_target.js';
38
38
  import * as dropDownDiv from './dropdowndiv.js';
39
39
  import * as Events from './events/events.js';
40
40
  import * as Extensions from './extensions.js';
41
- import { Field, FieldValidator } from './field.js';
42
- import { FieldAngle, FieldAngleValidator } from './field_angle.js';
43
- import { FieldCheckbox, FieldCheckboxValidator } from './field_checkbox.js';
44
- import { FieldColour, FieldColourValidator } from './field_colour.js';
45
- import { FieldDropdown, FieldDropdownValidator, MenuGenerator, MenuGeneratorFunction, MenuOption } from './field_dropdown.js';
46
- import { FieldImage } from './field_image.js';
47
- import { FieldLabel } from './field_label.js';
41
+ import { Field, FieldConfig, FieldValidator, UnattachedFieldError } from './field.js';
42
+ import { FieldAngle, FieldAngleConfig, FieldAngleFromJsonConfig, FieldAngleValidator } from './field_angle.js';
43
+ import { FieldCheckbox, FieldCheckboxConfig, FieldCheckboxFromJsonConfig, FieldCheckboxValidator } from './field_checkbox.js';
44
+ import { FieldColour, FieldColourConfig, FieldColourFromJsonConfig, FieldColourValidator } from './field_colour.js';
45
+ import { FieldDropdown, FieldDropdownConfig, FieldDropdownFromJsonConfig, FieldDropdownValidator, MenuGenerator, MenuGeneratorFunction, MenuOption } from './field_dropdown.js';
46
+ import { FieldImage, FieldImageConfig, FieldImageFromJsonConfig } from './field_image.js';
47
+ import { FieldLabel, FieldLabelConfig, FieldLabelFromJsonConfig } from './field_label.js';
48
48
  import { FieldLabelSerializable } from './field_label_serializable.js';
49
- import { FieldMultilineInput, FieldMultilineInputValidator } from './field_multilineinput.js';
50
- import { FieldNumber, FieldNumberValidator } from './field_number.js';
49
+ import { FieldMultilineInput, FieldMultilineInputConfig, FieldMultilineInputFromJsonConfig, FieldMultilineInputValidator } from './field_multilineinput.js';
50
+ import { FieldNumber, FieldNumberConfig, FieldNumberFromJsonConfig, FieldNumberValidator } from './field_number.js';
51
51
  import * as fieldRegistry from './field_registry.js';
52
- import { FieldTextInput, FieldTextInputValidator } from './field_textinput.js';
53
- import { FieldVariable, FieldVariableValidator } from './field_variable.js';
52
+ import { FieldTextInput, FieldTextInputConfig, FieldTextInputFromJsonConfig, FieldTextInputValidator } from './field_textinput.js';
53
+ import { FieldVariable, FieldVariableConfig, FieldVariableFromJsonConfig, FieldVariableValidator } from './field_variable.js';
54
54
  import { Flyout } from './flyout_base.js';
55
55
  import { FlyoutButton } from './flyout_button.js';
56
56
  import { HorizontalFlyout } from './flyout_horizontal.js';
@@ -84,6 +84,7 @@ import { IFlyout } from './interfaces/i_flyout.js';
84
84
  import { IKeyboardAccessible } from './interfaces/i_keyboard_accessible.js';
85
85
  import { IMetricsManager } from './interfaces/i_metrics_manager.js';
86
86
  import { IMovable } from './interfaces/i_movable.js';
87
+ import { IObservable, isObservable } from './interfaces/i_observable.js';
87
88
  import { IPositionable } from './interfaces/i_positionable.js';
88
89
  import { IRegistrable } from './interfaces/i_registrable.js';
89
90
  import { ISelectable } from './interfaces/i_selectable.js';
@@ -91,6 +92,7 @@ import { ISelectableToolboxItem } from './interfaces/i_selectable_toolbox_item.j
91
92
  import { IStyleable } from './interfaces/i_styleable.js';
92
93
  import { IToolbox } from './interfaces/i_toolbox.js';
93
94
  import { IToolboxItem } from './interfaces/i_toolbox_item.js';
95
+ import { IVariableBackedParameterModel, isVariableBackedParameterModel } from './interfaces/i_variable_backed_parameter_model.js';
94
96
  import { ASTNode } from './keyboard_nav/ast_node.js';
95
97
  import { BasicCursor } from './keyboard_nav/basic_cursor.js';
96
98
  import { Cursor } from './keyboard_nav/cursor.js';
@@ -155,68 +157,55 @@ import { ZoomControls } from './zoom_controls.js';
155
157
  * compiler to override this constant.
156
158
  *
157
159
  * @define {string}
158
- * @alias Blockly.VERSION
159
160
  */
160
161
  export declare const VERSION = "uncompiled";
161
162
  /**
162
163
  * @see Blockly.Input.Align.LEFT
163
- * @alias Blockly.ALIGN_LEFT
164
164
  */
165
165
  export declare const ALIGN_LEFT = Input.Align.LEFT;
166
166
  /**
167
167
  * @see Blockly.Input.Align.CENTRE
168
- * @alias Blockly.ALIGN_CENTRE
169
168
  */
170
169
  export declare const ALIGN_CENTRE = Input.Align.CENTRE;
171
170
  /**
172
171
  * @see Blockly.Input.Align.RIGHT
173
- * @alias Blockly.ALIGN_RIGHT
174
172
  */
175
173
  export declare const ALIGN_RIGHT = Input.Align.RIGHT;
176
174
  /**
177
175
  * @see ConnectionType.INPUT_VALUE
178
- * @alias Blockly.INPUT_VALUE
179
176
  */
180
177
  export declare const INPUT_VALUE = ConnectionType.INPUT_VALUE;
181
178
  /**
182
179
  * @see ConnectionType.OUTPUT_VALUE
183
- * @alias Blockly.OUTPUT_VALUE
184
180
  */
185
181
  export declare const OUTPUT_VALUE = ConnectionType.OUTPUT_VALUE;
186
182
  /**
187
183
  * @see ConnectionType.NEXT_STATEMENT
188
- * @alias Blockly.NEXT_STATEMENT
189
184
  */
190
185
  export declare const NEXT_STATEMENT = ConnectionType.NEXT_STATEMENT;
191
186
  /**
192
187
  * @see ConnectionType.PREVIOUS_STATEMENT
193
- * @alias Blockly.PREVIOUS_STATEMENT
194
188
  */
195
189
  export declare const PREVIOUS_STATEMENT = ConnectionType.PREVIOUS_STATEMENT;
196
190
  /**
197
191
  * @see inputTypes.DUMMY_INPUT
198
- * @alias Blockly.DUMMY_INPUT
199
192
  */
200
- export declare const DUMMY_INPUT: inputTypes;
193
+ export declare const DUMMY_INPUT = inputTypes.DUMMY;
201
194
  /** Aliases for toolbox positions. */
202
195
  /**
203
196
  * @see toolbox.Position.TOP
204
- * @alias Blockly.TOOLBOX_AT_TOP
205
197
  */
206
198
  export declare const TOOLBOX_AT_TOP = utils.toolbox.Position.TOP;
207
199
  /**
208
200
  * @see toolbox.Position.BOTTOM
209
- * @alias Blockly.TOOLBOX_AT_BOTTOM
210
201
  */
211
202
  export declare const TOOLBOX_AT_BOTTOM = utils.toolbox.Position.BOTTOM;
212
203
  /**
213
204
  * @see toolbox.Position.LEFT
214
- * @alias Blockly.TOOLBOX_AT_LEFT
215
205
  */
216
206
  export declare const TOOLBOX_AT_LEFT = utils.toolbox.Position.LEFT;
217
207
  /**
218
208
  * @see toolbox.Position.RIGHT
219
- * @alias Blockly.TOOLBOX_AT_RIGHT
220
209
  */
221
210
  export declare const TOOLBOX_AT_RIGHT = utils.toolbox.Position.RIGHT;
222
211
  /**
@@ -228,7 +217,6 @@ export declare const TOOLBOX_AT_RIGHT = utils.toolbox.Position.RIGHT;
228
217
  *
229
218
  * @param workspace Any workspace in the SVG.
230
219
  * @see Blockly.common.svgResize
231
- * @alias Blockly.svgResize
232
220
  */
233
221
  export declare const svgResize: typeof common.svgResize;
234
222
  /**
@@ -236,7 +224,6 @@ export declare const svgResize: typeof common.svgResize;
236
224
  *
237
225
  * @param opt_onlyClosePopups Whether only popups should be closed.
238
226
  * @see Blockly.WorkspaceSvg.hideChaff
239
- * @alias Blockly.hideChaff
240
227
  */
241
228
  export declare function hideChaff(opt_onlyClosePopups?: boolean): void;
242
229
  /**
@@ -245,13 +232,10 @@ export declare function hideChaff(opt_onlyClosePopups?: boolean): void;
245
232
  * Blockly instances on a page.
246
233
  *
247
234
  * @see Blockly.common.getMainWorkspace
248
- * @alias Blockly.getMainWorkspace
249
235
  */
250
236
  export declare const getMainWorkspace: typeof common.getMainWorkspace;
251
237
  /**
252
238
  * Returns the currently selected copyable object.
253
- *
254
- * @alias Blockly.common.getSelected
255
239
  */
256
240
  export declare const getSelected: typeof common.getSelected;
257
241
  /**
@@ -260,7 +244,6 @@ export declare const getSelected: typeof common.getSelected;
260
244
  *
261
245
  * @param jsonArray An array of JSON block definitions.
262
246
  * @see Blockly.common.defineBlocksWithJsonArray
263
- * @alias Blockly.defineBlocksWithJsonArray
264
247
  */
265
248
  export declare const defineBlocksWithJsonArray: typeof common.defineBlocksWithJsonArray;
266
249
  /**
@@ -271,7 +254,6 @@ export declare const defineBlocksWithJsonArray: typeof common.defineBlocksWithJs
271
254
  *
272
255
  * @param container The container element.
273
256
  * @see Blockly.common.setParentContainer
274
- * @alias Blockly.setParentContainer
275
257
  */
276
258
  export declare const setParentContainer: typeof common.setParentContainer;
277
259
  /**
@@ -281,7 +263,6 @@ export declare const setParentContainer: typeof common.setParentContainer;
281
263
  * @param workspace The workspace to resize.
282
264
  * @deprecated Use **workspace.resizeContents** instead.
283
265
  * @see Blockly.WorkspaceSvg.resizeContents
284
- * @alias Blockly.resizeSvgContents
285
266
  */
286
267
  declare function resizeSvgContentsLocal(workspace: WorkspaceSvg): void;
287
268
  export declare const resizeSvgContents: typeof resizeSvgContentsLocal;
@@ -291,7 +272,6 @@ export declare const resizeSvgContents: typeof resizeSvgContentsLocal;
291
272
  * @param toCopy Block or Workspace Comment to be copied.
292
273
  * @deprecated Use **Blockly.clipboard.copy** instead.
293
274
  * @see Blockly.clipboard.copy
294
- * @alias Blockly.copy
295
275
  */
296
276
  export declare function copy(toCopy: ICopyable): void;
297
277
  /**
@@ -300,7 +280,6 @@ export declare function copy(toCopy: ICopyable): void;
300
280
  * @returns True if the paste was successful, false otherwise.
301
281
  * @deprecated Use **Blockly.clipboard.paste** instead.
302
282
  * @see Blockly.clipboard.paste
303
- * @alias Blockly.paste
304
283
  */
305
284
  export declare function paste(): boolean;
306
285
  /**
@@ -309,7 +288,6 @@ export declare function paste(): boolean;
309
288
  * @param toDuplicate Block or Workspace Comment to be copied.
310
289
  * @deprecated Use **Blockly.clipboard.duplicate** instead.
311
290
  * @see Blockly.clipboard.duplicate
312
- * @alias Blockly.duplicate
313
291
  */
314
292
  export declare function duplicate(toDuplicate: ICopyable): void;
315
293
  /**
@@ -319,7 +297,6 @@ export declare function duplicate(toDuplicate: ICopyable): void;
319
297
  * @returns True if number, false otherwise.
320
298
  * @deprecated Use **Blockly.utils.string.isNumber** instead.
321
299
  * @see Blockly.utils.string.isNumber
322
- * @alias Blockly.isNumber
323
300
  */
324
301
  export declare function isNumber(str: string): boolean;
325
302
  /**
@@ -329,7 +306,6 @@ export declare function isNumber(str: string): boolean;
329
306
  * @returns RGB code, e.g. '#5ba65b'.
330
307
  * @deprecated Use **Blockly.utils.colour.hueToHex** instead.
331
308
  * @see Blockly.utils.colour.hueToHex
332
- * @alias Blockly.hueToHex
333
309
  */
334
310
  export declare function hueToHex(hue: number): string;
335
311
  /**
@@ -345,7 +321,6 @@ export declare function hueToHex(hue: number): string;
345
321
  * @returns Opaque data that can be passed to unbindEvent_.
346
322
  * @deprecated Use **Blockly.browserEvents.bind** instead.
347
323
  * @see Blockly.browserEvents.bind
348
- * @alias Blockly.bindEvent_
349
324
  */
350
325
  export declare function bindEvent_(node: EventTarget, name: string, thisObject: Object | null, func: Function): browserEvents.Data;
351
326
  /**
@@ -356,7 +331,6 @@ export declare function bindEvent_(node: EventTarget, name: string, thisObject:
356
331
  * @returns The function call.
357
332
  * @deprecated Use **Blockly.browserEvents.unbind** instead.
358
333
  * @see browserEvents.unbind
359
- * @alias Blockly.unbindEvent_
360
334
  */
361
335
  export declare function unbindEvent_(bindData: browserEvents.Data): Function;
362
336
  /**
@@ -376,7 +350,6 @@ export declare function unbindEvent_(bindData: browserEvents.Data): Function;
376
350
  * @returns Opaque data that can be passed to unbindEvent_.
377
351
  * @deprecated Use **Blockly.browserEvents.conditionalBind** instead.
378
352
  * @see browserEvents.conditionalBind
379
- * @alias Blockly.bindEventWithChecks_
380
353
  */
381
354
  export declare function bindEventWithChecks_(node: EventTarget, name: string, thisObject: Object | null, func: Function, opt_noCaptureIdentifier?: boolean, _opt_noPreventDefault?: boolean): browserEvents.Data;
382
355
  export declare const COLLAPSE_CHARS = 30;
@@ -390,24 +363,18 @@ export declare const COLLAPSED_FIELD_NAME = "_TEMP_COLLAPSED_FIELD";
390
363
  * String for use in the "custom" attribute of a category in toolbox XML.
391
364
  * This string indicates that the category should be dynamically populated with
392
365
  * variable blocks.
393
- *
394
- * @alias Blockly.VARIABLE_CATEGORY_NAME
395
366
  */
396
367
  export declare const VARIABLE_CATEGORY_NAME: string;
397
368
  /**
398
369
  * String for use in the "custom" attribute of a category in toolbox XML.
399
370
  * This string indicates that the category should be dynamically populated with
400
371
  * variable blocks.
401
- *
402
- * @alias Blockly.VARIABLE_DYNAMIC_CATEGORY_NAME
403
372
  */
404
373
  export declare const VARIABLE_DYNAMIC_CATEGORY_NAME: string;
405
374
  /**
406
375
  * String for use in the "custom" attribute of a category in toolbox XML.
407
376
  * This string indicates that the category should be dynamically populated with
408
377
  * procedure blocks.
409
- *
410
- * @alias Blockly.PROCEDURE_CATEGORY_NAME
411
378
  */
412
379
  export declare const PROCEDURE_CATEGORY_NAME: string;
413
380
  export { browserEvents };
@@ -463,18 +430,18 @@ export { Cursor };
463
430
  export { DeleteArea };
464
431
  export { DragTarget };
465
432
  export declare const DropDownDiv: typeof dropDownDiv;
466
- export { Field, FieldValidator };
467
- export { FieldAngle, FieldAngleValidator };
468
- export { FieldCheckbox, FieldCheckboxValidator };
469
- export { FieldColour, FieldColourValidator };
470
- export { FieldDropdown, FieldDropdownValidator, MenuGenerator, MenuGeneratorFunction, MenuOption, };
471
- export { FieldImage };
472
- export { FieldLabel };
433
+ export { Field, FieldConfig, FieldValidator, UnattachedFieldError };
434
+ export { FieldAngle, FieldAngleConfig, FieldAngleFromJsonConfig, FieldAngleValidator, };
435
+ export { FieldCheckbox, FieldCheckboxConfig, FieldCheckboxFromJsonConfig, FieldCheckboxValidator, };
436
+ export { FieldColour, FieldColourConfig, FieldColourFromJsonConfig, FieldColourValidator, };
437
+ export { FieldDropdown, FieldDropdownConfig, FieldDropdownFromJsonConfig, FieldDropdownValidator, MenuGenerator, MenuGeneratorFunction, MenuOption, };
438
+ export { FieldImage, FieldImageConfig, FieldImageFromJsonConfig };
439
+ export { FieldLabel, FieldLabelConfig, FieldLabelFromJsonConfig };
473
440
  export { FieldLabelSerializable };
474
- export { FieldMultilineInput, FieldMultilineInputValidator };
475
- export { FieldNumber, FieldNumberValidator };
476
- export { FieldTextInput, FieldTextInputValidator };
477
- export { FieldVariable, FieldVariableValidator };
441
+ export { FieldMultilineInput, FieldMultilineInputConfig, FieldMultilineInputFromJsonConfig, FieldMultilineInputValidator, };
442
+ export { FieldNumber, FieldNumberConfig, FieldNumberFromJsonConfig, FieldNumberValidator, };
443
+ export { FieldTextInput, FieldTextInputConfig, FieldTextInputFromJsonConfig, FieldTextInputValidator, };
444
+ export { FieldVariable, FieldVariableConfig, FieldVariableFromJsonConfig, FieldVariableValidator, };
478
445
  export { Flyout };
479
446
  export { FlyoutButton };
480
447
  export { FlyoutMetricsManager };
@@ -507,6 +474,7 @@ export { IMetricsManager };
507
474
  export { IMovable };
508
475
  export { Input };
509
476
  export { InsertionMarkerManager };
477
+ export { IObservable, isObservable };
510
478
  export { IPositionable };
511
479
  export { IRegistrable };
512
480
  export { ISelectable };
@@ -514,6 +482,7 @@ export { ISelectableToolboxItem };
514
482
  export { IStyleable };
515
483
  export { IToolbox };
516
484
  export { IToolboxItem };
485
+ export { IVariableBackedParameterModel, isVariableBackedParameterModel };
517
486
  export { Marker };
518
487
  export { MarkerManager };
519
488
  export { Menu };
@@ -8,8 +8,6 @@ import type { WorkspaceSvg } from './workspace_svg.js';
8
8
  import type { ToolboxDefinition } from './utils/toolbox.js';
9
9
  /**
10
10
  * Blockly options.
11
- *
12
- * @alias Blockly.BlocklyOptions
13
11
  */
14
12
  export interface BlocklyOptions {
15
13
  collapse?: boolean;