blockly 8.0.4-beta.0 → 8.0.5-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blockly.min.js +2421 -2688
- package/blockly_compressed.js +1499 -1994
- package/blockly_compressed.js.map +1 -1
- package/blocks/blocks.js +3 -2
- package/blocks/colour.js +3 -1
- package/blocks/lists.js +94 -22
- package/blocks/logic.js +14 -6
- package/blocks/loops.js +5 -3
- package/blocks/math.js +3 -1
- package/blocks/procedures.js +3 -1
- package/blocks/text.js +14 -6
- package/blocks/variables.js +3 -1
- package/blocks/variables_dynamic.js +3 -1
- package/blocks.d.ts +0 -2
- package/blocks_compressed.js +189 -171
- package/blocks_compressed.js.map +1 -1
- package/closure/goog/base.d.ts +1 -0
- package/closure/goog/base_minimal.d.ts +18 -0
- package/closure/goog/goog.d.ts +25 -0
- package/core/any_aliases.d.ts +1 -0
- package/core/any_aliases.ts +1 -0
- package/core/block.d.ts +779 -0
- package/core/{block.js → block.ts} +610 -719
- package/core/block_animations.d.ts +33 -0
- package/core/{block_animations.js → block_animations.ts} +75 -79
- package/core/block_drag_surface.d.ts +111 -0
- package/core/{block_drag_surface.js → block_drag_surface.ts} +85 -117
- package/core/block_dragger.d.ts +143 -0
- package/core/{block_dragger.js → block_dragger.ts} +139 -176
- package/core/block_svg.d.ts +588 -0
- package/core/{block_svg.js → block_svg.ts} +494 -630
- package/core/blockly.d.ts +562 -0
- package/core/blockly.js +1 -1
- package/core/blockly.ts +749 -0
- package/core/blockly_options.d.ts +69 -0
- package/core/blockly_options.ts +81 -0
- package/core/blocks.d.ts +17 -0
- package/core/{blocks.js → blocks.ts} +4 -8
- package/core/browser_events.d.ts +85 -0
- package/core/{browser_events.js → browser_events.ts} +98 -93
- package/core/bubble.d.ts +279 -0
- package/core/{bubble.js → bubble.ts} +277 -370
- package/core/bubble_dragger.d.ts +73 -0
- package/core/bubble_dragger.ts +229 -0
- package/core/bump_objects.d.ts +34 -0
- package/core/{bump_objects.js → bump_objects.ts} +54 -52
- package/core/clipboard.d.ts +42 -0
- package/core/clipboard.ts +91 -0
- package/core/comment.d.ts +113 -0
- package/core/{comment.js → comment.ts} +135 -185
- package/core/common.d.ts +129 -0
- package/core/{common.js → common.ts} +105 -82
- package/core/component_manager.d.ts +91 -0
- package/core/component_manager.ts +211 -0
- package/core/config.d.ts +23 -0
- package/core/{config.js → config.ts} +12 -19
- package/core/connection.d.ts +232 -0
- package/core/{connection.js → connection.ts} +187 -237
- package/core/connection_checker.d.ts +78 -0
- package/core/{connection_checker.js → connection_checker.ts} +66 -77
- package/core/connection_db.d.ts +91 -0
- package/core/{connection_db.js → connection_db.ts} +62 -87
- package/core/connection_type.d.ts +15 -0
- package/core/{connection_type.js → connection_type.ts} +8 -12
- package/core/constants.d.ts +15 -0
- package/core/{constants.js → constants.ts} +4 -8
- package/core/contextmenu.d.ts +80 -0
- package/core/{contextmenu.js → contextmenu.ts} +118 -153
- package/core/contextmenu_items.d.ts +77 -0
- package/core/contextmenu_items.ts +576 -0
- package/core/contextmenu_registry.d.ts +105 -0
- package/core/contextmenu_registry.ts +179 -0
- package/core/css.d.ts +24 -0
- package/core/{css.js → css.ts} +16 -24
- package/core/delete_area.d.ts +47 -0
- package/core/delete_area.ts +82 -0
- package/core/dialog.d.ts +61 -0
- package/core/dialog.ts +127 -0
- package/core/drag_target.d.ts +63 -0
- package/core/drag_target.ts +94 -0
- package/core/dropdowndiv.d.ts +155 -0
- package/core/{dropdowndiv.js → dropdowndiv.ts} +262 -333
- package/core/events/events.d.ts +102 -0
- package/core/events/events.ts +123 -0
- package/core/events/events_abstract.d.ts +51 -0
- package/core/events/events_abstract.ts +112 -0
- package/core/events/events_block_base.d.ts +31 -0
- package/core/events/events_block_base.ts +65 -0
- package/core/events/events_block_change.d.ts +55 -0
- package/core/events/{events_block_change.js → events_block_change.ts} +45 -48
- package/core/events/events_block_create.d.ts +35 -0
- package/core/events/{events_block_create.js → events_block_create.ts} +30 -35
- package/core/events/events_block_delete.d.ts +36 -0
- package/core/events/{events_block_delete.js → events_block_delete.ts} +34 -39
- package/core/events/events_block_drag.d.ts +36 -0
- package/core/events/events_block_drag.ts +82 -0
- package/core/events/events_block_move.d.ts +51 -0
- package/core/events/{events_block_move.js → events_block_move.ts} +54 -50
- package/core/events/events_bubble_open.d.ts +35 -0
- package/core/events/events_bubble_open.ts +82 -0
- package/core/events/events_click.d.ts +36 -0
- package/core/events/{events_click.js → events_click.ts} +27 -30
- package/core/events/events_comment_base.d.ts +39 -0
- package/core/events/events_comment_base.ts +107 -0
- package/core/events/events_comment_change.d.ts +43 -0
- package/core/events/{events_comment_change.js → events_comment_change.ts} +31 -28
- package/core/events/events_comment_create.d.ts +35 -0
- package/core/events/{events_comment_create.js → events_comment_create.ts} +24 -26
- package/core/events/events_comment_delete.d.ts +35 -0
- package/core/events/{events_comment_delete.js → events_comment_delete.ts} +20 -24
- package/core/events/events_comment_move.d.ts +55 -0
- package/core/events/{events_comment_move.js → events_comment_move.ts} +39 -42
- package/core/events/events_marker_move.d.ts +40 -0
- package/core/events/events_marker_move.ts +99 -0
- package/core/events/events_selected.d.ts +34 -0
- package/core/events/events_selected.ts +78 -0
- package/core/events/events_theme_change.d.ts +30 -0
- package/core/events/{events_theme_change.js → events_theme_change.ts} +19 -24
- package/core/events/events_toolbox_item_select.d.ts +34 -0
- package/core/events/events_toolbox_item_select.ts +79 -0
- package/core/events/events_trashcan_open.d.ts +31 -0
- package/core/events/events_trashcan_open.ts +68 -0
- package/core/events/events_ui.d.ts +37 -0
- package/core/events/{events_ui.js → events_ui.ts} +27 -26
- package/core/events/events_ui_base.d.ts +26 -0
- package/core/events/{events_ui_base.js → events_ui_base.ts} +17 -26
- package/core/events/events_var_base.d.ts +31 -0
- package/core/events/events_var_base.ts +65 -0
- package/core/events/events_var_create.d.ts +35 -0
- package/core/events/{events_var_create.js → events_var_create.ts} +24 -25
- package/core/events/events_var_delete.d.ts +35 -0
- package/core/events/{events_var_delete.js → events_var_delete.ts} +24 -25
- package/core/events/events_var_rename.d.ts +36 -0
- package/core/events/{events_var_rename.js → events_var_rename.ts} +25 -26
- package/core/events/events_viewport.d.ts +39 -0
- package/core/events/events_viewport.ts +100 -0
- package/core/events/utils.d.ts +272 -0
- package/core/events/{utils.js → utils.ts} +148 -219
- package/core/events/workspace_events.d.ts +36 -0
- package/core/events/workspace_events.ts +86 -0
- package/core/extensions.d.ts +107 -0
- package/core/{extensions.js → extensions.ts} +153 -172
- package/core/field.d.ts +534 -0
- package/core/{field.js → field.ts} +413 -489
- package/core/field_angle.d.ts +176 -0
- package/core/field_angle.ts +563 -0
- package/core/field_checkbox.d.ts +124 -0
- package/core/field_checkbox.ts +243 -0
- package/core/field_colour.d.ts +200 -0
- package/core/field_colour.ts +632 -0
- package/core/field_dropdown.d.ts +222 -0
- package/core/{field_dropdown.js → field_dropdown.ts} +277 -299
- package/core/field_image.d.ts +134 -0
- package/core/field_image.ts +282 -0
- package/core/field_label.d.ts +71 -0
- package/core/field_label.ts +152 -0
- package/core/field_label_serializable.d.ts +42 -0
- package/core/field_label_serializable.ts +76 -0
- package/core/field_multilineinput.d.ts +146 -0
- package/core/{field_multilineinput.js → field_multilineinput.ts} +166 -163
- package/core/field_number.d.ts +156 -0
- package/core/{field_number.js → field_number.ts} +110 -123
- package/core/field_registry.d.ts +45 -0
- package/core/{field_registry.js → field_registry.ts} +37 -30
- package/core/field_textinput.d.ts +219 -0
- package/core/field_textinput.ts +591 -0
- package/core/field_variable.d.ts +217 -0
- package/core/{field_variable.js → field_variable.ts} +174 -187
- package/core/flyout_base.d.ts +459 -0
- package/core/{flyout_base.js → flyout_base.ts} +429 -518
- package/core/flyout_button.d.ts +81 -0
- package/core/flyout_button.ts +292 -0
- package/core/flyout_horizontal.d.ts +82 -0
- package/core/{flyout_horizontal.js → flyout_horizontal.ts} +97 -107
- package/core/flyout_metrics_manager.d.ts +40 -0
- package/core/{flyout_metrics_manager.js → flyout_metrics_manager.ts} +22 -34
- package/core/flyout_vertical.d.ts +83 -0
- package/core/{flyout_vertical.js → flyout_vertical.ts} +106 -117
- package/core/generator.d.ts +205 -0
- package/core/{generator.js → generator.ts} +168 -193
- package/core/gesture.d.ts +357 -0
- package/core/{gesture.js → gesture.ts} +289 -369
- package/core/grid.d.ts +83 -0
- package/core/grid.ts +192 -0
- package/core/icon.d.ts +78 -0
- package/core/icon.ts +189 -0
- package/core/inject.d.ts +15 -0
- package/core/{inject.js → inject.ts} +101 -100
- package/core/input.d.ts +128 -0
- package/core/input.ts +309 -0
- package/core/input_types.d.ts +14 -0
- package/core/{input_types.js → input_types.ts} +8 -12
- package/core/insertion_marker_manager.d.ts +212 -0
- package/core/{insertion_marker_manager.js → insertion_marker_manager.ts} +234 -236
- package/core/interfaces/i_ast_node_location.d.ts +11 -0
- package/core/interfaces/{i_ast_node_location.js → i_ast_node_location.ts} +4 -7
- package/core/interfaces/i_ast_node_location_svg.d.ts +22 -0
- package/core/interfaces/i_ast_node_location_svg.ts +37 -0
- package/core/interfaces/i_ast_node_location_with_block.d.ts +18 -0
- package/core/interfaces/i_ast_node_location_with_block.ts +38 -0
- package/core/interfaces/i_autohideable.d.ts +18 -0
- package/core/interfaces/i_autohideable.ts +34 -0
- package/core/interfaces/i_block_dragger.d.ts +43 -0
- package/core/interfaces/i_block_dragger.ts +67 -0
- package/core/interfaces/i_bounded_element.d.ts +24 -0
- package/core/interfaces/i_bounded_element.ts +42 -0
- package/core/interfaces/i_bubble.d.ts +59 -0
- package/core/interfaces/i_bubble.ts +88 -0
- package/core/interfaces/i_collapsible_toolbox_item.d.ts +26 -0
- package/core/interfaces/i_collapsible_toolbox_item.ts +47 -0
- package/core/interfaces/i_component.d.ts +17 -0
- package/core/interfaces/{i_component.js → i_component.ts} +9 -14
- package/core/interfaces/i_connection_checker.d.ts +69 -0
- package/core/interfaces/i_connection_checker.ts +102 -0
- package/core/interfaces/i_contextmenu.d.ts +13 -0
- package/core/interfaces/i_contextmenu.ts +26 -0
- package/core/interfaces/i_copyable.d.ts +24 -0
- package/core/interfaces/i_copyable.ts +40 -0
- package/core/interfaces/i_deletable.d.ts +16 -0
- package/core/interfaces/{i_deletable.js → i_deletable.ts} +9 -13
- package/core/interfaces/i_delete_area.d.ts +25 -0
- package/core/interfaces/i_delete_area.ts +46 -0
- package/core/interfaces/i_drag_target.d.ts +53 -0
- package/core/interfaces/i_drag_target.ts +84 -0
- package/core/interfaces/i_draggable.d.ts +12 -0
- package/core/interfaces/{i_draggable.js → i_draggable.ts} +4 -10
- package/core/interfaces/i_flyout.d.ts +134 -0
- package/core/interfaces/i_flyout.ts +186 -0
- package/core/interfaces/i_keyboard_accessible.d.ts +18 -0
- package/core/interfaces/i_keyboard_accessible.ts +35 -0
- package/core/interfaces/i_metrics_manager.d.ts +117 -0
- package/core/interfaces/i_metrics_manager.ts +151 -0
- package/core/interfaces/i_movable.d.ts +16 -0
- package/core/interfaces/{i_movable.js → i_movable.ts} +9 -13
- package/core/interfaces/i_positionable.d.ts +27 -0
- package/core/interfaces/i_positionable.ts +50 -0
- package/core/interfaces/i_registrable.d.ts +11 -0
- package/core/interfaces/{i_registrable.js → i_registrable.ts} +3 -7
- package/core/interfaces/i_registrable_field.d.ts +17 -0
- package/core/interfaces/{i_registrable_field.js → i_registrable_field.ts} +8 -16
- package/core/interfaces/i_selectable.d.ts +18 -0
- package/core/interfaces/i_selectable.ts +34 -0
- package/core/interfaces/i_selectable_toolbox_item.d.ts +42 -0
- package/core/interfaces/i_selectable_toolbox_item.ts +64 -0
- package/core/interfaces/i_serializer.d.ts +42 -0
- package/core/interfaces/i_serializer.ts +65 -0
- package/core/interfaces/i_styleable.d.ts +21 -0
- package/core/interfaces/i_styleable.ts +35 -0
- package/core/interfaces/i_toolbox.d.ts +85 -0
- package/core/interfaces/i_toolbox.ts +127 -0
- package/core/interfaces/i_toolbox_item.d.ts +62 -0
- package/core/interfaces/i_toolbox_item.ts +84 -0
- package/core/internal_constants.d.ts +40 -0
- package/core/{internal_constants.js → internal_constants.ts} +13 -18
- package/core/keyboard_nav/ast_node.d.ts +239 -0
- package/core/keyboard_nav/{ast_node.js → ast_node.ts} +207 -231
- package/core/keyboard_nav/basic_cursor.d.ts +88 -0
- package/core/keyboard_nav/{basic_cursor.js → basic_cursor.ts} +55 -66
- package/core/keyboard_nav/cursor.d.ts +41 -0
- package/core/keyboard_nav/{cursor.js → cursor.ts} +25 -35
- package/core/keyboard_nav/marker.d.ts +58 -0
- package/core/keyboard_nav/{marker.js → marker.ts} +36 -55
- package/core/keyboard_nav/tab_navigate_cursor.d.ts +19 -0
- package/core/keyboard_nav/{tab_navigate_cursor.js → tab_navigate_cursor.ts} +11 -15
- package/core/main.d.ts +11 -0
- package/core/main.js +303 -0
- package/core/marker_manager.d.ts +85 -0
- package/core/marker_manager.ts +181 -0
- package/core/menu.d.ts +149 -0
- package/core/{menu.js → menu.ts} +141 -174
- package/core/menuitem.d.ts +118 -0
- package/core/menuitem.ts +240 -0
- package/core/metrics_manager.d.ts +201 -0
- package/core/{metrics_manager.js → metrics_manager.ts} +117 -156
- package/core/msg.d.ts +9 -0
- package/core/{msg.js → msg.ts} +4 -8
- package/core/mutator.d.ts +128 -0
- package/core/{mutator.js → mutator.ts} +196 -211
- package/core/names.d.ts +124 -0
- package/core/names.ts +267 -0
- package/core/options.d.ts +137 -0
- package/core/{options.js → options.ts} +147 -173
- package/core/positionable_helpers.d.ts +88 -0
- package/core/{positionable_helpers.js → positionable_helpers.ts} +63 -70
- package/core/procedures.d.ts +108 -0
- package/core/{procedures.js → procedures.ts} +143 -152
- package/core/registry.d.ts +137 -0
- package/core/registry.ts +339 -0
- package/core/rendered_connection.d.ts +191 -0
- package/core/{rendered_connection.js → rendered_connection.ts} +164 -184
- package/core/renderers/common/block_rendering.d.ts +114 -0
- package/core/renderers/common/block_rendering.ts +164 -0
- package/core/renderers/common/constants.d.ts +458 -0
- package/core/renderers/common/constants.ts +1124 -0
- package/core/renderers/common/debug.d.ts +28 -0
- package/core/renderers/common/{debug.js → debug.ts} +14 -20
- package/core/renderers/common/debugger.d.ts +120 -0
- package/core/renderers/common/{debugger.js → debugger.ts} +100 -124
- package/core/renderers/common/drawer.d.ts +132 -0
- package/core/renderers/common/{drawer.js → drawer.ts} +112 -137
- package/core/renderers/common/i_path_object.d.ts +117 -0
- package/core/renderers/common/i_path_object.ts +161 -0
- package/core/renderers/common/info.d.ts +194 -0
- package/core/renderers/common/{info.js → info.ts} +165 -222
- package/core/renderers/common/marker_svg.d.ts +220 -0
- package/core/renderers/common/marker_svg.ts +680 -0
- package/core/renderers/common/path_object.d.ts +146 -0
- package/core/renderers/common/path_object.ts +272 -0
- package/core/renderers/common/renderer.d.ts +157 -0
- package/core/renderers/common/renderer.ts +271 -0
- package/core/renderers/geras/constants.d.ts +23 -0
- package/core/renderers/geras/constants.ts +61 -0
- package/core/renderers/geras/drawer.d.ts +43 -0
- package/core/renderers/geras/{drawer.js → drawer.ts} +40 -84
- package/core/renderers/geras/geras.d.ts +11 -0
- package/core/renderers/geras/geras.ts +37 -0
- package/core/renderers/geras/highlight_constants.d.ts +108 -0
- package/core/renderers/geras/{highlight_constants.js → highlight_constants.ts} +107 -69
- package/core/renderers/geras/highlighter.d.ts +98 -0
- package/core/renderers/geras/{highlighter.js → highlighter.ts} +81 -86
- package/core/renderers/geras/info.d.ts +45 -0
- package/core/renderers/geras/{info.js → info.ts} +61 -99
- package/core/renderers/geras/measurables/inline_input.d.ts +23 -0
- package/core/renderers/geras/measurables/inline_input.ts +51 -0
- package/core/renderers/geras/measurables/statement_input.d.ts +23 -0
- package/core/renderers/geras/measurables/statement_input.ts +50 -0
- package/core/renderers/geras/path_object.d.ts +47 -0
- package/core/renderers/geras/{path_object.js → path_object.ts} +46 -74
- package/core/renderers/geras/renderer.d.ts +69 -0
- package/core/renderers/geras/renderer.ts +126 -0
- package/core/renderers/measurables/base.d.ts +27 -0
- package/core/renderers/measurables/base.ts +53 -0
- package/core/renderers/measurables/bottom_row.d.ts +61 -0
- package/core/renderers/measurables/bottom_row.ts +120 -0
- package/core/renderers/measurables/connection.d.ts +25 -0
- package/core/renderers/measurables/connection.ts +52 -0
- package/core/renderers/measurables/external_value_input.d.ts +27 -0
- package/core/renderers/measurables/external_value_input.ts +65 -0
- package/core/renderers/measurables/field.d.ts +30 -0
- package/core/renderers/measurables/field.ts +63 -0
- package/core/renderers/measurables/hat.d.ts +21 -0
- package/core/renderers/measurables/{hat.js → hat.ts} +12 -14
- package/core/renderers/measurables/icon.d.ts +26 -0
- package/core/renderers/measurables/{icon.js → icon.ts} +14 -18
- package/core/renderers/measurables/in_row_spacer.d.ts +21 -0
- package/core/renderers/measurables/in_row_spacer.ts +44 -0
- package/core/renderers/measurables/inline_input.d.ts +24 -0
- package/core/renderers/measurables/{inline_input.js → inline_input.ts} +22 -26
- package/core/renderers/measurables/input_connection.d.ts +29 -0
- package/core/renderers/measurables/input_connection.ts +66 -0
- package/core/renderers/measurables/input_row.d.ts +30 -0
- package/core/renderers/measurables/{input_row.js → input_row.ts} +24 -31
- package/core/renderers/measurables/jagged_edge.d.ts +20 -0
- package/core/renderers/measurables/{jagged_edge.js → jagged_edge.ts} +10 -13
- package/core/renderers/measurables/next_connection.d.ts +23 -0
- package/core/renderers/measurables/next_connection.ts +47 -0
- package/core/renderers/measurables/output_connection.d.ts +26 -0
- package/core/renderers/measurables/output_connection.ts +56 -0
- package/core/renderers/measurables/previous_connection.d.ts +23 -0
- package/core/renderers/measurables/previous_connection.ts +47 -0
- package/core/renderers/measurables/round_corner.d.ts +21 -0
- package/core/renderers/measurables/round_corner.ts +49 -0
- package/core/renderers/measurables/row.d.ts +141 -0
- package/core/renderers/measurables/row.ts +225 -0
- package/core/renderers/measurables/spacer_row.d.ts +29 -0
- package/core/renderers/measurables/spacer_row.ts +55 -0
- package/core/renderers/measurables/square_corner.d.ts +21 -0
- package/core/renderers/measurables/square_corner.ts +47 -0
- package/core/renderers/measurables/statement_input.d.ts +22 -0
- package/core/renderers/measurables/{statement_input.js → statement_input.ts} +14 -18
- package/core/renderers/measurables/top_row.d.ts +56 -0
- package/core/renderers/measurables/top_row.ts +122 -0
- package/core/renderers/measurables/types.d.ts +235 -0
- package/core/renderers/measurables/types.ts +332 -0
- package/core/renderers/minimalist/constants.d.ts +14 -0
- package/core/renderers/minimalist/{constants.js → constants.ts} +5 -10
- package/core/renderers/minimalist/drawer.d.ts +21 -0
- package/core/renderers/minimalist/drawer.ts +38 -0
- package/core/renderers/minimalist/info.d.ts +30 -0
- package/core/renderers/minimalist/info.ts +52 -0
- package/core/renderers/minimalist/minimalist.d.ts +6 -0
- package/core/renderers/minimalist/minimalist.ts +22 -0
- package/core/renderers/minimalist/renderer.d.ts +41 -0
- package/core/renderers/minimalist/renderer.ts +71 -0
- package/core/renderers/thrasos/info.d.ts +40 -0
- package/core/renderers/thrasos/{info.js → info.ts} +66 -67
- package/core/renderers/thrasos/renderer.d.ts +25 -0
- package/core/renderers/thrasos/renderer.ts +48 -0
- package/core/renderers/thrasos/thrasos.d.ts +4 -0
- package/core/renderers/thrasos/thrasos.ts +20 -0
- package/core/renderers/zelos/constants.d.ts +186 -0
- package/core/renderers/zelos/{constants.js → constants.ts} +294 -441
- package/core/renderers/zelos/drawer.d.ts +47 -0
- package/core/renderers/zelos/{drawer.js → drawer.ts} +73 -95
- package/core/renderers/zelos/info.d.ts +88 -0
- package/core/renderers/zelos/{info.js → info.ts} +111 -142
- package/core/renderers/zelos/marker_svg.d.ts +46 -0
- package/core/renderers/zelos/marker_svg.ts +151 -0
- package/core/renderers/zelos/measurables/bottom_row.d.ts +27 -0
- package/core/renderers/zelos/measurables/bottom_row.ts +53 -0
- package/core/renderers/zelos/measurables/inputs.d.ts +23 -0
- package/core/renderers/zelos/measurables/{inputs.js → inputs.ts} +14 -15
- package/core/renderers/zelos/measurables/row_elements.d.ts +21 -0
- package/core/renderers/zelos/measurables/row_elements.ts +45 -0
- package/core/renderers/zelos/measurables/top_row.d.ts +29 -0
- package/core/renderers/zelos/measurables/{top_row.js → top_row.ts} +14 -27
- package/core/renderers/zelos/path_object.d.ts +77 -0
- package/core/renderers/zelos/path_object.ts +215 -0
- package/core/renderers/zelos/renderer.d.ts +74 -0
- package/core/renderers/zelos/renderer.ts +142 -0
- package/core/renderers/zelos/zelos.d.ts +12 -0
- package/core/renderers/zelos/zelos.ts +39 -0
- package/core/scrollbar.d.ts +277 -0
- package/core/{scrollbar.js → scrollbar.ts} +307 -328
- package/core/scrollbar_pair.d.ts +105 -0
- package/core/{scrollbar_pair.js → scrollbar_pair.ts} +71 -79
- package/core/serialization/blocks.d.ts +98 -0
- package/core/serialization/{blocks.js → blocks.ts} +229 -228
- package/core/serialization/exceptions.d.ts +73 -0
- package/core/serialization/exceptions.ts +98 -0
- package/core/serialization/priorities.d.ts +15 -0
- package/core/serialization/{priorities.js → priorities.ts} +4 -10
- package/core/serialization/registry.d.ts +20 -0
- package/core/serialization/{registry.js → registry.ts} +11 -13
- package/core/serialization/variables.d.ts +14 -0
- package/core/serialization/{variables.js → variables.ts} +30 -32
- package/core/serialization/workspaces.d.ts +28 -0
- package/core/serialization/{workspaces.js → workspaces.ts} +30 -27
- package/core/shortcut_items.d.ts +61 -0
- package/core/{shortcut_items.js → shortcut_items.ts} +121 -157
- package/core/shortcut_registry.d.ts +151 -0
- package/core/shortcut_registry.ts +355 -0
- package/core/sprites.d.ts +19 -0
- package/core/{sprites.js → sprites.ts} +4 -6
- package/core/theme/classic.d.ts +12 -0
- package/core/theme/{classic.js → classic.ts} +5 -7
- package/core/theme/themes.d.ts +8 -0
- package/core/theme/themes.ts +22 -0
- package/core/theme/zelos.d.ts +11 -0
- package/core/theme/{zelos.js → zelos.ts} +4 -7
- package/core/theme.d.ts +142 -0
- package/core/theme.ts +221 -0
- package/core/theme_manager.d.ts +81 -0
- package/core/theme_manager.ts +186 -0
- package/core/toolbox/category.d.ts +239 -0
- package/core/toolbox/category.ts +679 -0
- package/core/toolbox/collapsible_category.d.ts +91 -0
- package/core/toolbox/collapsible_category.ts +273 -0
- package/core/toolbox/separator.d.ts +39 -0
- package/core/toolbox/separator.ts +105 -0
- package/core/toolbox/toolbox.d.ts +352 -0
- package/core/toolbox/{toolbox.js → toolbox.ts} +316 -432
- package/core/toolbox/toolbox_item.d.ts +85 -0
- package/core/toolbox/toolbox_item.ts +147 -0
- package/core/tooltip.d.ts +126 -0
- package/core/{tooltip.js → tooltip.ts} +136 -214
- package/core/touch.d.ts +121 -0
- package/core/touch.ts +306 -0
- package/core/touch_gesture.d.ts +115 -0
- package/core/{touch_gesture.js → touch_gesture.ts} +87 -125
- package/core/trashcan.d.ts +195 -0
- package/core/{trashcan.js → trashcan.ts} +226 -312
- package/core/utils/aria.d.ts +67 -0
- package/core/utils/{aria.js → aria.ts} +47 -61
- package/core/utils/array.d.ts +14 -0
- package/core/utils/{array.js → array.ts} +10 -12
- package/core/utils/colour.d.ts +103 -0
- package/core/utils/{colour.js → colour.ts} +60 -72
- package/core/utils/coordinate.d.ts +72 -0
- package/core/utils/coordinate.ts +124 -0
- package/core/utils/deprecation.d.ts +17 -0
- package/core/utils/{deprecation.js → deprecation.ts} +11 -11
- package/core/utils/dom.d.ts +165 -0
- package/core/utils/{dom.js → dom.ts} +125 -147
- package/core/utils/idgenerator.d.ts +25 -0
- package/core/utils/{idgenerator.js → idgenerator.ts} +15 -18
- package/core/utils/keycodes.d.ts +137 -0
- package/core/utils/keycodes.ts +169 -0
- package/core/utils/math.d.ts +30 -0
- package/core/utils/{math.js → math.ts} +17 -19
- package/core/utils/metrics.d.ts +64 -0
- package/core/utils/metrics.ts +97 -0
- package/core/utils/object.d.ts +35 -0
- package/core/utils/{object.js → object.ts} +30 -26
- package/core/utils/parsing.d.ts +50 -0
- package/core/utils/{parsing.js → parsing.ts} +50 -50
- package/core/utils/rect.d.ts +38 -0
- package/core/utils/{rect.js → rect.ts} +18 -31
- package/core/utils/sentinel.d.ts +11 -0
- package/core/utils/{sentinel.js → sentinel.ts} +3 -5
- package/core/utils/size.d.ts +27 -0
- package/core/utils/{size.js → size.ts} +12 -26
- package/core/utils/string.d.ts +55 -0
- package/core/utils/{string.js → string.ts} +64 -61
- package/core/utils/style.d.ts +127 -0
- package/core/utils/{style.js → style.ts} +102 -92
- package/core/utils/svg.d.ts +68 -0
- package/core/utils/svg.ts +88 -0
- package/core/utils/svg_math.d.ts +70 -0
- package/core/utils/{svg_math.js → svg_math.ts} +72 -71
- package/core/utils/svg_paths.d.ts +101 -0
- package/core/utils/{svg_paths.js → svg_paths.ts} +56 -65
- package/core/utils/toolbox.d.ts +193 -0
- package/core/utils/toolbox.ts +433 -0
- package/core/utils/useragent.d.ts +33 -0
- package/core/utils/useragent.ts +135 -0
- package/core/utils/xml.d.ts +52 -0
- package/core/utils/{xml.js → xml.ts} +26 -36
- package/core/utils.d.ts +217 -0
- package/core/utils.ts +428 -0
- package/core/variable_map.d.ts +141 -0
- package/core/{variable_map.js → variable_map.ts} +131 -149
- package/core/variable_model.d.ts +40 -0
- package/core/variable_model.ts +82 -0
- package/core/variables.d.ts +181 -0
- package/core/{variables.js → variables.ts} +206 -188
- package/core/variables_dynamic.d.ts +38 -0
- package/core/{variables_dynamic.js → variables_dynamic.ts} +47 -43
- package/core/warning.d.ts +50 -0
- package/core/{warning.js → warning.ts} +52 -66
- package/core/widgetdiv.d.ts +69 -0
- package/core/widgetdiv.ts +257 -0
- package/core/workspace.d.ts +386 -0
- package/core/workspace.ts +801 -0
- package/core/workspace_audio.d.ts +47 -0
- package/core/{workspace_audio.js → workspace_audio.ts} +47 -60
- package/core/workspace_comment.d.ts +170 -0
- package/core/workspace_comment.ts +398 -0
- package/core/workspace_comment_svg.d.ts +329 -0
- package/core/{workspace_comment_svg.js → workspace_comment_svg.ts} +347 -444
- package/core/workspace_drag_surface_svg.d.ts +68 -0
- package/core/{workspace_drag_surface_svg.js → workspace_drag_surface_svg.ts} +75 -82
- package/core/workspace_dragger.d.ts +48 -0
- package/core/workspace_dragger.ts +104 -0
- package/core/workspace_svg.d.ts +920 -0
- package/core/{workspace_svg.js → workspace_svg.ts} +855 -935
- package/core/xml.d.ts +117 -0
- package/core/{xml.js → xml.ts} +306 -326
- package/core/zoom_controls.d.ts +130 -0
- package/core/{zoom_controls.js → zoom_controls.ts} +185 -251
- package/core.d.ts +1 -3
- package/core.js +1 -2
- package/dart.d.ts +0 -3
- package/dart_compressed.js +387 -99
- package/dart_compressed.js.map +1 -1
- package/generators/dart/all.js +2 -0
- package/generators/dart/colour.js +1 -1
- package/generators/dart/lists.js +1 -1
- package/generators/dart/logic.js +1 -1
- package/generators/dart/loops.js +1 -1
- package/generators/dart/math.js +1 -1
- package/generators/dart/procedures.js +1 -1
- package/generators/dart/text.js +1 -1
- package/generators/dart/variables.js +1 -1
- package/generators/dart/variables_dynamic.js +1 -1
- package/generators/dart.js +1 -2
- package/generators/javascript/all.js +2 -0
- package/generators/javascript/colour.js +1 -1
- package/generators/javascript/lists.js +1 -1
- package/generators/javascript/logic.js +1 -1
- package/generators/javascript/loops.js +1 -1
- package/generators/javascript/math.js +4 -4
- package/generators/javascript/procedures.js +1 -1
- package/generators/javascript/text.js +2 -2
- package/generators/javascript/variables.js +1 -1
- package/generators/javascript/variables_dynamic.js +1 -1
- package/generators/javascript.js +1 -3
- package/generators/lua/all.js +2 -0
- package/generators/lua/colour.js +1 -1
- package/generators/lua/lists.js +1 -1
- package/generators/lua/logic.js +1 -1
- package/generators/lua/loops.js +1 -1
- package/generators/lua/math.js +1 -1
- package/generators/lua/procedures.js +1 -1
- package/generators/lua/text.js +1 -1
- package/generators/lua/variables.js +1 -1
- package/generators/lua/variables_dynamic.js +1 -1
- package/generators/lua.js +1 -2
- package/generators/php/all.js +2 -0
- package/generators/php/colour.js +1 -1
- package/generators/php/lists.js +1 -2
- package/generators/php/logic.js +1 -1
- package/generators/php/loops.js +1 -1
- package/generators/php/math.js +1 -1
- package/generators/php/procedures.js +1 -1
- package/generators/php/text.js +1 -1
- package/generators/php/variables.js +1 -1
- package/generators/php/variables_dynamic.js +1 -1
- package/generators/php.js +1 -2
- package/generators/python/all.js +2 -0
- package/generators/python/colour.js +3 -3
- package/generators/python/lists.js +1 -1
- package/generators/python/logic.js +1 -1
- package/generators/python/loops.js +4 -7
- package/generators/python/math.js +1 -1
- package/generators/python/procedures.js +1 -1
- package/generators/python/text.js +1 -1
- package/generators/python/variables.js +1 -1
- package/generators/python/variables_dynamic.js +1 -1
- package/generators/python.js +1 -2
- package/index.d.ts +2 -8
- package/javascript.d.ts +0 -3
- package/javascript_compressed.js +314 -104
- package/javascript_compressed.js.map +1 -1
- package/lua.d.ts +0 -3
- package/lua_compressed.js +399 -81
- package/lua_compressed.js.map +1 -1
- package/msg/ab.js +421 -421
- package/msg/ace.js +421 -421
- package/msg/af.js +421 -421
- package/msg/am.js +421 -421
- package/msg/ar.js +421 -421
- package/msg/ast.js +421 -421
- package/msg/az.js +421 -421
- package/msg/ba.js +421 -421
- package/msg/bcc.js +421 -421
- package/msg/be-tarask.js +421 -421
- package/msg/be.js +421 -421
- package/msg/bg.js +421 -421
- package/msg/bn.js +421 -421
- package/msg/br.js +421 -421
- package/msg/bs.js +421 -421
- package/msg/ca.js +421 -421
- package/msg/cdo.js +421 -421
- package/msg/cs.js +421 -421
- package/msg/da.js +421 -421
- package/msg/de.js +421 -421
- package/msg/diq.js +421 -421
- package/msg/dty.js +421 -421
- package/msg/ee.js +421 -421
- package/msg/el.js +421 -421
- package/msg/en-gb.js +421 -421
- package/msg/en.js +421 -421
- package/msg/eo.js +421 -421
- package/msg/es.js +421 -421
- package/msg/et.js +421 -421
- package/msg/eu.js +421 -421
- package/msg/fa.js +421 -421
- package/msg/fi.js +421 -421
- package/msg/fo.js +421 -421
- package/msg/fr.js +421 -421
- package/msg/frr.js +421 -421
- package/msg/gl.js +421 -421
- package/msg/gn.js +421 -421
- package/msg/gor.js +421 -421
- package/msg/ha.js +421 -421
- package/msg/hak.js +421 -421
- package/msg/he.js +421 -421
- package/msg/hi.js +421 -421
- package/msg/hr.js +421 -421
- package/msg/hrx.js +421 -421
- package/msg/hu.js +421 -421
- package/msg/hy.js +421 -421
- package/msg/ia.js +421 -421
- package/msg/id.js +421 -421
- package/msg/ig.js +421 -421
- package/msg/inh.js +421 -421
- package/msg/is.js +421 -421
- package/msg/it.js +421 -421
- package/msg/ja.js +421 -421
- package/msg/ka.js +421 -421
- package/msg/kab.js +421 -421
- package/msg/kbd-cyrl.js +421 -421
- package/msg/km.js +421 -421
- package/msg/kn.js +421 -421
- package/msg/ko.js +421 -421
- package/msg/ksh.js +421 -421
- package/msg/ku-latn.js +421 -421
- package/msg/ky.js +421 -421
- package/msg/la.js +421 -421
- package/msg/lb.js +421 -421
- package/msg/lki.js +421 -421
- package/msg/lo.js +421 -421
- package/msg/lrc.js +421 -421
- package/msg/lt.js +421 -421
- package/msg/lv.js +421 -421
- package/msg/mg.js +421 -421
- package/msg/mk.js +421 -421
- package/msg/ml.js +421 -421
- package/msg/mnw.js +421 -421
- package/msg/ms.js +421 -421
- package/msg/my.js +421 -421
- package/msg/mzn.js +421 -421
- package/msg/nb.js +421 -421
- package/msg/ne.js +421 -421
- package/msg/nl.js +421 -421
- package/msg/oc.js +421 -421
- package/msg/olo.js +421 -421
- package/msg/pa.js +421 -421
- package/msg/pl.js +421 -421
- package/msg/pms.js +421 -421
- package/msg/ps.js +421 -421
- package/msg/pt-br.js +421 -421
- package/msg/pt.js +421 -421
- package/msg/ro.js +421 -421
- package/msg/ru.js +421 -421
- package/msg/sc.js +421 -421
- package/msg/sco.js +421 -421
- package/msg/sd.js +421 -421
- package/msg/shn.js +421 -421
- package/msg/si.js +421 -421
- package/msg/sk.js +421 -421
- package/msg/skr-arab.js +421 -421
- package/msg/sl.js +421 -421
- package/msg/smn.js +421 -421
- package/msg/sq.js +421 -421
- package/msg/sr-latn.js +421 -421
- package/msg/sr.js +421 -421
- package/msg/sv.js +421 -421
- package/msg/sw.js +421 -421
- package/msg/ta.js +421 -421
- package/msg/tcy.js +421 -421
- package/msg/te.js +421 -421
- package/msg/th.js +421 -421
- package/msg/ti.js +421 -421
- package/msg/tl.js +421 -421
- package/msg/tlh.js +421 -421
- package/msg/tr.js +421 -421
- package/msg/ug-arab.js +421 -421
- package/msg/uk.js +421 -421
- package/msg/ur.js +421 -421
- package/msg/uz.js +421 -421
- package/msg/vi.js +421 -421
- package/msg/xmf.js +421 -421
- package/msg/yo.js +421 -421
- package/msg/yue.js +421 -421
- package/msg/zgh.js +421 -421
- package/msg/zh-hans.js +421 -421
- package/msg/zh-hant.js +421 -421
- package/package.json +5 -5
- package/php.d.ts +0 -3
- package/php_compressed.js +322 -93
- package/php_compressed.js.map +1 -1
- package/python.d.ts +0 -3
- package/python_compressed.js +237 -90
- package/python_compressed.js.map +1 -1
- package/blockly.d.ts +0 -26127
- package/core/blockly_options.js +0 -28
- package/core/bubble_dragger.js +0 -298
- package/core/clipboard.js +0 -80
- package/core/component_manager.js +0 -263
- package/core/contextmenu_items.js +0 -651
- package/core/contextmenu_registry.js +0 -178
- package/core/delete_area.js +0 -87
- package/core/dialog.js +0 -107
- package/core/drag_target.js +0 -98
- package/core/events/events.js +0 -147
- package/core/events/events_abstract.js +0 -133
- package/core/events/events_block_base.js +0 -70
- package/core/events/events_block_drag.js +0 -89
- package/core/events/events_bubble_open.js +0 -90
- package/core/events/events_comment_base.js +0 -121
- package/core/events/events_marker_move.js +0 -110
- package/core/events/events_selected.js +0 -83
- package/core/events/events_toolbox_item_select.js +0 -84
- package/core/events/events_trashcan_open.js +0 -73
- package/core/events/events_var_base.js +0 -70
- package/core/events/events_viewport.js +0 -107
- package/core/events/workspace_events.js +0 -93
- package/core/field_angle.js +0 -591
- package/core/field_checkbox.js +0 -255
- package/core/field_colour.js +0 -717
- package/core/field_image.js +0 -304
- package/core/field_label.js +0 -149
- package/core/field_label_serializable.js +0 -80
- package/core/field_textinput.js +0 -619
- package/core/flyout_button.js +0 -356
- package/core/grid.js +0 -226
- package/core/icon.js +0 -225
- package/core/input.js +0 -335
- package/core/interfaces/i_ast_node_location_svg.js +0 -45
- package/core/interfaces/i_ast_node_location_with_block.js +0 -41
- package/core/interfaces/i_autohideable.js +0 -40
- package/core/interfaces/i_block_dragger.js +0 -66
- package/core/interfaces/i_bounded_element.js +0 -45
- package/core/interfaces/i_bubble.js +0 -95
- package/core/interfaces/i_collapsible_toolbox_item.js +0 -53
- package/core/interfaces/i_connection_checker.js +0 -104
- package/core/interfaces/i_contextmenu.js +0 -32
- package/core/interfaces/i_copyable.js +0 -49
- package/core/interfaces/i_delete_area.js +0 -50
- package/core/interfaces/i_drag_target.js +0 -88
- package/core/interfaces/i_flyout.js +0 -201
- package/core/interfaces/i_keyboard_accessible.js +0 -38
- package/core/interfaces/i_metrics_manager.js +0 -154
- package/core/interfaces/i_positionable.js +0 -51
- package/core/interfaces/i_selectable.js +0 -51
- package/core/interfaces/i_selectable_toolbox_item.js +0 -73
- package/core/interfaces/i_serializer.js +0 -77
- package/core/interfaces/i_styleable.js +0 -39
- package/core/interfaces/i_toolbox.js +0 -142
- package/core/interfaces/i_toolbox_item.js +0 -85
- package/core/marker_manager.js +0 -213
- package/core/menuitem.js +0 -292
- package/core/names.js +0 -293
- package/core/registry.js +0 -384
- package/core/renderers/common/block_rendering.js +0 -170
- package/core/renderers/common/constants.js +0 -1250
- package/core/renderers/common/i_path_object.js +0 -162
- package/core/renderers/common/marker_svg.js +0 -721
- package/core/renderers/common/path_object.js +0 -283
- package/core/renderers/common/renderer.js +0 -305
- package/core/renderers/geras/constants.js +0 -73
- package/core/renderers/geras/geras.js +0 -36
- package/core/renderers/geras/measurables/inline_input.js +0 -58
- package/core/renderers/geras/measurables/statement_input.js +0 -57
- package/core/renderers/geras/renderer.js +0 -149
- package/core/renderers/measurables/base.js +0 -64
- package/core/renderers/measurables/bottom_row.js +0 -138
- package/core/renderers/measurables/connection.js +0 -56
- package/core/renderers/measurables/external_value_input.js +0 -70
- package/core/renderers/measurables/field.js +0 -71
- package/core/renderers/measurables/in_row_spacer.js +0 -47
- package/core/renderers/measurables/input_connection.js +0 -75
- package/core/renderers/measurables/next_connection.js +0 -50
- package/core/renderers/measurables/output_connection.js +0 -61
- package/core/renderers/measurables/previous_connection.js +0 -50
- package/core/renderers/measurables/round_corner.js +0 -52
- package/core/renderers/measurables/row.js +0 -247
- package/core/renderers/measurables/spacer_row.js +0 -69
- package/core/renderers/measurables/square_corner.js +0 -50
- package/core/renderers/measurables/top_row.js +0 -143
- package/core/renderers/measurables/types.js +0 -353
- package/core/renderers/minimalist/drawer.js +0 -42
- package/core/renderers/minimalist/info.js +0 -54
- package/core/renderers/minimalist/minimalist.js +0 -26
- package/core/renderers/minimalist/renderer.js +0 -80
- package/core/renderers/thrasos/renderer.js +0 -53
- package/core/renderers/thrasos/thrasos.js +0 -22
- package/core/renderers/zelos/marker_svg.js +0 -179
- package/core/renderers/zelos/measurables/bottom_row.js +0 -66
- package/core/renderers/zelos/measurables/row_elements.js +0 -46
- package/core/renderers/zelos/path_object.js +0 -247
- package/core/renderers/zelos/renderer.js +0 -147
- package/core/renderers/zelos/zelos.js +0 -38
- package/core/serialization/exceptions.js +0 -144
- package/core/shortcut_registry.js +0 -366
- package/core/theme/themes.js +0 -23
- package/core/theme.js +0 -228
- package/core/theme_manager.js +0 -211
- package/core/toolbox/category.js +0 -751
- package/core/toolbox/collapsible_category.js +0 -311
- package/core/toolbox/separator.js +0 -133
- package/core/toolbox/toolbox_item.js +0 -173
- package/core/touch.js +0 -285
- package/core/utils/coordinate.js +0 -138
- package/core/utils/global.js +0 -41
- package/core/utils/keycodes.js +0 -172
- package/core/utils/metrics.js +0 -154
- package/core/utils/svg.js +0 -186
- package/core/utils/toolbox.js +0 -459
- package/core/utils/useragent.js +0 -197
- package/core/utils.js +0 -383
- package/core/variable_model.js +0 -96
- package/core/widgetdiv.js +0 -290
- package/core/workspace.js +0 -836
- package/core/workspace_comment.js +0 -400
- package/core/workspace_dragger.js +0 -115
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2021 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { Block } from '../block.js';
|
|
7
|
+
import type { State } from './blocks.js';
|
|
8
|
+
/** @alias Blockly.serialization.exceptions.DeserializationError */
|
|
9
|
+
export declare class DeserializationError extends Error {
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Represents an error where the serialized state is expected to provide a
|
|
13
|
+
* block type, but it is not provided.
|
|
14
|
+
* @alias Blockly.serialization.exceptions.MissingBlockType
|
|
15
|
+
*/
|
|
16
|
+
export declare class MissingBlockType extends DeserializationError {
|
|
17
|
+
state: State;
|
|
18
|
+
/**
|
|
19
|
+
* @param state The state object which is missing the block type.
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
constructor(state: State);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Represents an error where deserialization encountered a block that did
|
|
26
|
+
* not have a connection that was defined in the serialized state.
|
|
27
|
+
* @alias Blockly.serialization.exceptions.MissingConnection
|
|
28
|
+
*/
|
|
29
|
+
export declare class MissingConnection extends DeserializationError {
|
|
30
|
+
block: Block;
|
|
31
|
+
state: State;
|
|
32
|
+
/**
|
|
33
|
+
* @param connection The name of the connection that is missing. E.g.
|
|
34
|
+
* 'IF0', or 'next'.
|
|
35
|
+
* @param block The block missing the connection.
|
|
36
|
+
* @param state The state object containing the bad connection.
|
|
37
|
+
* @internal
|
|
38
|
+
*/
|
|
39
|
+
constructor(connection: string, block: Block, state: State);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Represents an error where deserialization tried to connect two connections
|
|
43
|
+
* that were not compatible.
|
|
44
|
+
* @alias Blockly.serialization.exceptions.BadConnectionCheck
|
|
45
|
+
*/
|
|
46
|
+
export declare class BadConnectionCheck extends DeserializationError {
|
|
47
|
+
childBlock: Block;
|
|
48
|
+
childState: State;
|
|
49
|
+
/**
|
|
50
|
+
* @param reason The reason the connections were not compatible.
|
|
51
|
+
* @param childConnection The name of the incompatible child connection. E.g.
|
|
52
|
+
* 'output' or 'previous'.
|
|
53
|
+
* @param childBlock The child block that could not connect to its parent.
|
|
54
|
+
* @param childState The state object representing the child block.
|
|
55
|
+
* @internal
|
|
56
|
+
*/
|
|
57
|
+
constructor(reason: string, childConnection: string, childBlock: Block, childState: State);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Represents an error where deserialization encountered a real block as it
|
|
61
|
+
* was deserializing children of a shadow.
|
|
62
|
+
* This is an error because it is an invariant of Blockly that shadow blocks
|
|
63
|
+
* do not have real children.
|
|
64
|
+
* @alias Blockly.serialization.exceptions.RealChildOfShadow
|
|
65
|
+
*/
|
|
66
|
+
export declare class RealChildOfShadow extends DeserializationError {
|
|
67
|
+
state: State;
|
|
68
|
+
/**
|
|
69
|
+
* @param state The state object representing the real block.
|
|
70
|
+
* @internal
|
|
71
|
+
*/
|
|
72
|
+
constructor(state: State);
|
|
73
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2021 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @fileoverview Contains custom errors thrown by the serialization system.
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Contains custom errors thrown by the serialization system.
|
|
13
|
+
* @namespace Blockly.serialization.exceptions
|
|
14
|
+
*/
|
|
15
|
+
import * as goog from '../../closure/goog/goog.js';
|
|
16
|
+
goog.declareModuleId('Blockly.serialization.exceptions');
|
|
17
|
+
|
|
18
|
+
import type {Block} from '../block.js';
|
|
19
|
+
import type {State} from './blocks.js';
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
/** @alias Blockly.serialization.exceptions.DeserializationError */
|
|
23
|
+
export class DeserializationError extends Error {}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Represents an error where the serialized state is expected to provide a
|
|
27
|
+
* block type, but it is not provided.
|
|
28
|
+
* @alias Blockly.serialization.exceptions.MissingBlockType
|
|
29
|
+
*/
|
|
30
|
+
export class MissingBlockType extends DeserializationError {
|
|
31
|
+
/**
|
|
32
|
+
* @param state The state object which is missing the block type.
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
35
|
+
constructor(public state: State) {
|
|
36
|
+
super(`Expected to find a 'type' property, defining the block type`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Represents an error where deserialization encountered a block that did
|
|
42
|
+
* not have a connection that was defined in the serialized state.
|
|
43
|
+
* @alias Blockly.serialization.exceptions.MissingConnection
|
|
44
|
+
*/
|
|
45
|
+
export class MissingConnection extends DeserializationError {
|
|
46
|
+
/**
|
|
47
|
+
* @param connection The name of the connection that is missing. E.g.
|
|
48
|
+
* 'IF0', or 'next'.
|
|
49
|
+
* @param block The block missing the connection.
|
|
50
|
+
* @param state The state object containing the bad connection.
|
|
51
|
+
* @internal
|
|
52
|
+
*/
|
|
53
|
+
constructor(connection: string, public block: Block, public state: State) {
|
|
54
|
+
super(`The block ${block.toDevString()} is missing a(n) ${connection}
|
|
55
|
+
connection`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Represents an error where deserialization tried to connect two connections
|
|
61
|
+
* that were not compatible.
|
|
62
|
+
* @alias Blockly.serialization.exceptions.BadConnectionCheck
|
|
63
|
+
*/
|
|
64
|
+
export class BadConnectionCheck extends DeserializationError {
|
|
65
|
+
/**
|
|
66
|
+
* @param reason The reason the connections were not compatible.
|
|
67
|
+
* @param childConnection The name of the incompatible child connection. E.g.
|
|
68
|
+
* 'output' or 'previous'.
|
|
69
|
+
* @param childBlock The child block that could not connect to its parent.
|
|
70
|
+
* @param childState The state object representing the child block.
|
|
71
|
+
* @internal
|
|
72
|
+
*/
|
|
73
|
+
constructor(
|
|
74
|
+
reason: string, childConnection: string, public childBlock: Block,
|
|
75
|
+
public childState: State) {
|
|
76
|
+
super(`The block ${childBlock.toDevString()} could not connect its
|
|
77
|
+
${childConnection} to its parent, because: ${reason}`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Represents an error where deserialization encountered a real block as it
|
|
83
|
+
* was deserializing children of a shadow.
|
|
84
|
+
* This is an error because it is an invariant of Blockly that shadow blocks
|
|
85
|
+
* do not have real children.
|
|
86
|
+
* @alias Blockly.serialization.exceptions.RealChildOfShadow
|
|
87
|
+
*/
|
|
88
|
+
export class RealChildOfShadow extends DeserializationError {
|
|
89
|
+
/**
|
|
90
|
+
* @param state The state object representing the real block.
|
|
91
|
+
* @internal
|
|
92
|
+
*/
|
|
93
|
+
constructor(public state: State) {
|
|
94
|
+
super(`Encountered a real block which is defined as a child of a shadow
|
|
95
|
+
block. It is an invariant of Blockly that shadow blocks only have shadow
|
|
96
|
+
children`);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2021 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* The priority for deserializing variables.
|
|
8
|
+
* @alias Blockly.serialization.priorities.VARIABLES
|
|
9
|
+
*/
|
|
10
|
+
export declare const VARIABLES = 100;
|
|
11
|
+
/**
|
|
12
|
+
* The priority for deserializing blocks.
|
|
13
|
+
* @alias Blockly.serialization.priorities.BLOCKS
|
|
14
|
+
*/
|
|
15
|
+
export declare const BLOCKS = 50;
|
|
@@ -10,29 +10,23 @@
|
|
|
10
10
|
* serializers. Higher priorities are deserialized first.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
-
'use strict';
|
|
14
|
-
|
|
15
13
|
/**
|
|
16
14
|
* The top level namespace for priorities of plugin serializers.
|
|
17
15
|
* Includes constants for the priorities of different plugin serializers. Higher
|
|
18
16
|
* priorities are deserialized first.
|
|
19
17
|
* @namespace Blockly.serialization.priorities
|
|
20
18
|
*/
|
|
21
|
-
goog
|
|
19
|
+
import * as goog from '../../closure/goog/goog.js';
|
|
20
|
+
goog.declareModuleId('Blockly.serialization.priorities');
|
|
22
21
|
|
|
23
22
|
|
|
24
23
|
/**
|
|
25
24
|
* The priority for deserializing variables.
|
|
26
|
-
* @type {number}
|
|
27
|
-
* @const
|
|
28
25
|
* @alias Blockly.serialization.priorities.VARIABLES
|
|
29
26
|
*/
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
export const VARIABLES = 100;
|
|
32
28
|
/**
|
|
33
29
|
* The priority for deserializing blocks.
|
|
34
|
-
* @type {number}
|
|
35
|
-
* @const
|
|
36
30
|
* @alias Blockly.serialization.priorities.BLOCKS
|
|
37
31
|
*/
|
|
38
|
-
|
|
32
|
+
export const BLOCKS = 50;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2021 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { ISerializer } from '../interfaces/i_serializer.js';
|
|
7
|
+
/**
|
|
8
|
+
* Registers the given serializer so that it can be used for serialization and
|
|
9
|
+
* deserialization.
|
|
10
|
+
* @param name The name of the serializer to register.
|
|
11
|
+
* @param serializer The serializer to register.
|
|
12
|
+
* @alias Blockly.serialization.registry.register
|
|
13
|
+
*/
|
|
14
|
+
export declare function register(name: string, serializer: ISerializer): void;
|
|
15
|
+
/**
|
|
16
|
+
* Unregisters the serializer associated with the given name.
|
|
17
|
+
* @param name The name of the serializer to unregister.
|
|
18
|
+
* @alias Blockly.serialization.registry.unregister
|
|
19
|
+
*/
|
|
20
|
+
export declare function unregister(name: string): void;
|
|
@@ -8,38 +8,36 @@
|
|
|
8
8
|
* @fileoverview Contains functions registering serializers (eg blocks,
|
|
9
9
|
* variables, plugins, etc).
|
|
10
10
|
*/
|
|
11
|
-
'use strict';
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
13
|
* Contains functions registering serializers (eg blocks, variables, plugins,
|
|
15
14
|
* etc).
|
|
16
15
|
* @namespace Blockly.serialization.registry
|
|
17
16
|
*/
|
|
18
|
-
goog
|
|
17
|
+
import * as goog from '../../closure/goog/goog.js';
|
|
18
|
+
goog.declareModuleId('Blockly.serialization.registry');
|
|
19
19
|
|
|
20
|
-
const registry = goog.require('Blockly.registry');
|
|
21
20
|
// eslint-disable-next-line no-unused-vars
|
|
22
|
-
|
|
21
|
+
import type {ISerializer} from '../interfaces/i_serializer.js';
|
|
22
|
+
import * as registry from '../registry.js';
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
/**
|
|
26
26
|
* Registers the given serializer so that it can be used for serialization and
|
|
27
27
|
* deserialization.
|
|
28
|
-
* @param
|
|
29
|
-
* @param
|
|
28
|
+
* @param name The name of the serializer to register.
|
|
29
|
+
* @param serializer The serializer to register.
|
|
30
30
|
* @alias Blockly.serialization.registry.register
|
|
31
31
|
*/
|
|
32
|
-
|
|
32
|
+
export function register(name: string, serializer: ISerializer) {
|
|
33
33
|
registry.register(registry.Type.SERIALIZER, name, serializer);
|
|
34
|
-
}
|
|
35
|
-
exports.register = register;
|
|
34
|
+
}
|
|
36
35
|
|
|
37
36
|
/**
|
|
38
37
|
* Unregisters the serializer associated with the given name.
|
|
39
|
-
* @param
|
|
38
|
+
* @param name The name of the serializer to unregister.
|
|
40
39
|
* @alias Blockly.serialization.registry.unregister
|
|
41
40
|
*/
|
|
42
|
-
|
|
41
|
+
export function unregister(name: string) {
|
|
43
42
|
registry.unregister(registry.Type.SERIALIZER, name);
|
|
44
|
-
}
|
|
45
|
-
exports.unregister = unregister;
|
|
43
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2021 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Represents the state of a given variable.
|
|
8
|
+
* @alias Blockly.serialization.variables.State
|
|
9
|
+
*/
|
|
10
|
+
export interface State {
|
|
11
|
+
name: string;
|
|
12
|
+
id: string;
|
|
13
|
+
type: string | undefined;
|
|
14
|
+
}
|
|
@@ -8,57 +8,52 @@
|
|
|
8
8
|
* @fileoverview Handles serializing variables to plain JavaScript objects, only
|
|
9
9
|
* containing state.
|
|
10
10
|
*/
|
|
11
|
-
'use strict';
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
13
|
* Handles serializing variables to plain JavaScript objects, only containing
|
|
15
14
|
* state.
|
|
16
15
|
* @namespace Blockly.serialization.variables
|
|
17
16
|
*/
|
|
18
|
-
goog
|
|
17
|
+
import * as goog from '../../closure/goog/goog.js';
|
|
18
|
+
goog.declareModuleId('Blockly.serialization.variables');
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const {Workspace} = goog.requireType('Blockly.Workspace');
|
|
20
|
+
import type {ISerializer} from '../interfaces/i_serializer.js';
|
|
21
|
+
import type {Workspace} from '../workspace.js';
|
|
22
|
+
|
|
23
|
+
import * as priorities from './priorities.js';
|
|
24
|
+
import * as serializationRegistry from './registry.js';
|
|
26
25
|
|
|
27
26
|
|
|
28
27
|
/**
|
|
29
28
|
* Represents the state of a given variable.
|
|
30
|
-
* @typedef {{
|
|
31
|
-
* name: string,
|
|
32
|
-
* id: string,
|
|
33
|
-
* type: (string|undefined)
|
|
34
|
-
* }}
|
|
35
29
|
* @alias Blockly.serialization.variables.State
|
|
36
30
|
*/
|
|
37
|
-
|
|
38
|
-
|
|
31
|
+
export interface State {
|
|
32
|
+
name: string;
|
|
33
|
+
id: string;
|
|
34
|
+
type: string|undefined;
|
|
35
|
+
}
|
|
39
36
|
|
|
40
37
|
/**
|
|
41
38
|
* Serializer for saving and loading variable state.
|
|
42
|
-
* @implements {ISerializer}
|
|
43
39
|
* @alias Blockly.serialization.variables.VariableSerializer
|
|
44
40
|
*/
|
|
45
|
-
class VariableSerializer {
|
|
41
|
+
class VariableSerializer implements ISerializer {
|
|
42
|
+
priority: number;
|
|
43
|
+
|
|
46
44
|
/* eslint-disable-next-line require-jsdoc */
|
|
47
45
|
constructor() {
|
|
48
|
-
/**
|
|
49
|
-
* The priority for deserializing variables.
|
|
50
|
-
* @type {number}
|
|
51
|
-
*/
|
|
46
|
+
/** The priority for deserializing variables. */
|
|
52
47
|
this.priority = priorities.VARIABLES;
|
|
53
48
|
}
|
|
54
49
|
|
|
55
50
|
/**
|
|
56
51
|
* Serializes the variables of the given workspace.
|
|
57
|
-
* @param
|
|
58
|
-
* @return
|
|
59
|
-
*
|
|
52
|
+
* @param workspace The workspace to save the variables of.
|
|
53
|
+
* @return The state of the workspace's variables, or null if there are no
|
|
54
|
+
* variables.
|
|
60
55
|
*/
|
|
61
|
-
save(workspace) {
|
|
56
|
+
save(workspace: Workspace): State[]|null {
|
|
62
57
|
const variableStates = [];
|
|
63
58
|
for (const variable of workspace.getAllVariables()) {
|
|
64
59
|
const state = {
|
|
@@ -66,20 +61,23 @@ class VariableSerializer {
|
|
|
66
61
|
'id': variable.getId(),
|
|
67
62
|
};
|
|
68
63
|
if (variable.type) {
|
|
69
|
-
state['type'] = variable.type;
|
|
64
|
+
(state as AnyDuringMigration)['type'] = variable.type;
|
|
70
65
|
}
|
|
71
66
|
variableStates.push(state);
|
|
72
67
|
}
|
|
73
|
-
|
|
68
|
+
// AnyDuringMigration because: Type '{ name: string; id: string; }[] |
|
|
69
|
+
// null' is not assignable to type 'State[] | null'.
|
|
70
|
+
return (variableStates.length ? variableStates : null) as
|
|
71
|
+
AnyDuringMigration;
|
|
74
72
|
}
|
|
75
73
|
|
|
76
74
|
/**
|
|
77
75
|
* Deserializes the variable defined by the given state into the given
|
|
78
76
|
* workspace.
|
|
79
|
-
* @param
|
|
80
|
-
* @param
|
|
77
|
+
* @param state The state of the variables to deserialize.
|
|
78
|
+
* @param workspace The workspace to deserialize into.
|
|
81
79
|
*/
|
|
82
|
-
load(state, workspace) {
|
|
80
|
+
load(state: State[], workspace: Workspace) {
|
|
83
81
|
for (const varState of state) {
|
|
84
82
|
workspace.createVariable(
|
|
85
83
|
varState['name'], varState['type'], varState['id']);
|
|
@@ -88,9 +86,9 @@ class VariableSerializer {
|
|
|
88
86
|
|
|
89
87
|
/**
|
|
90
88
|
* Disposes of any variables that exist on the workspace.
|
|
91
|
-
* @param
|
|
89
|
+
* @param workspace The workspace to clear the variables of.
|
|
92
90
|
*/
|
|
93
|
-
clear(workspace) {
|
|
91
|
+
clear(workspace: Workspace) {
|
|
94
92
|
workspace.getVariableMap().clear();
|
|
95
93
|
}
|
|
96
94
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2021 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { Workspace } from '../workspace.js';
|
|
7
|
+
/**
|
|
8
|
+
* Returns the state of the workspace as a plain JavaScript object.
|
|
9
|
+
* @param workspace The workspace to serialize.
|
|
10
|
+
* @return The serialized state of the workspace.
|
|
11
|
+
* @alias Blockly.serialization.workspaces.save
|
|
12
|
+
*/
|
|
13
|
+
export declare function save(workspace: Workspace): {
|
|
14
|
+
[key: string]: any;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Loads the variable represented by the given state into the given workspace.
|
|
18
|
+
* @param state The state of the workspace to deserialize into the workspace.
|
|
19
|
+
* @param workspace The workspace to add the new state to.
|
|
20
|
+
* @param param1 recordUndo: If true, events triggered by this function will be
|
|
21
|
+
* undo-able by the user. False by default.
|
|
22
|
+
* @alias Blockly.serialization.workspaces.load
|
|
23
|
+
*/
|
|
24
|
+
export declare function load(state: {
|
|
25
|
+
[key: string]: any;
|
|
26
|
+
}, workspace: Workspace, { recordUndo }?: {
|
|
27
|
+
recordUndo?: boolean;
|
|
28
|
+
}): void;
|
|
@@ -8,60 +8,63 @@
|
|
|
8
8
|
* @fileoverview Contains top-level functions for serializing workspaces to
|
|
9
9
|
* plain JavaScript objects.
|
|
10
10
|
*/
|
|
11
|
-
'use strict';
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
13
|
* Contains top-level functions for serializing workspaces to plain JavaScript
|
|
15
14
|
* objects.
|
|
16
15
|
* @namespace Blockly.serialization.workspaces
|
|
17
16
|
*/
|
|
18
|
-
goog
|
|
17
|
+
import * as goog from '../../closure/goog/goog.js';
|
|
18
|
+
goog.declareModuleId('Blockly.serialization.workspaces');
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
import * as eventUtils from '../events/utils.js';
|
|
21
|
+
import type {ISerializer} from '../interfaces/i_serializer.js';
|
|
22
|
+
import * as registry from '../registry.js';
|
|
23
|
+
import * as dom from '../utils/dom.js';
|
|
23
24
|
// eslint-disable-next-line no-unused-vars
|
|
24
|
-
|
|
25
|
-
|
|
25
|
+
import type {Workspace} from '../workspace.js';
|
|
26
|
+
import {WorkspaceSvg} from '../workspace_svg.js';
|
|
26
27
|
|
|
27
28
|
|
|
28
29
|
/**
|
|
29
30
|
* Returns the state of the workspace as a plain JavaScript object.
|
|
30
|
-
* @param
|
|
31
|
-
* @return
|
|
31
|
+
* @param workspace The workspace to serialize.
|
|
32
|
+
* @return The serialized state of the workspace.
|
|
32
33
|
* @alias Blockly.serialization.workspaces.save
|
|
33
34
|
*/
|
|
34
|
-
|
|
35
|
+
export function save(workspace: Workspace):
|
|
36
|
+
{[key: string]: AnyDuringMigration} {
|
|
35
37
|
const state = Object.create(null);
|
|
36
38
|
const serializerMap = registry.getAllItems(registry.Type.SERIALIZER, true);
|
|
37
39
|
for (const key in serializerMap) {
|
|
38
|
-
const save = serializerMap[key]
|
|
40
|
+
const save = (serializerMap[key] as ISerializer)?.save(workspace);
|
|
39
41
|
if (save) {
|
|
40
42
|
state[key] = save;
|
|
41
43
|
}
|
|
42
44
|
}
|
|
43
45
|
return state;
|
|
44
|
-
}
|
|
45
|
-
exports.save = save;
|
|
46
|
+
}
|
|
46
47
|
|
|
47
48
|
/**
|
|
48
49
|
* Loads the variable represented by the given state into the given workspace.
|
|
49
|
-
* @param
|
|
50
|
-
*
|
|
51
|
-
* @param
|
|
52
|
-
*
|
|
53
|
-
* recordUndo: If true, events triggered by this function will be undo-able
|
|
54
|
-
* by the user. False by default.
|
|
50
|
+
* @param state The state of the workspace to deserialize into the workspace.
|
|
51
|
+
* @param workspace The workspace to add the new state to.
|
|
52
|
+
* @param param1 recordUndo: If true, events triggered by this function will be
|
|
53
|
+
* undo-able by the user. False by default.
|
|
55
54
|
* @alias Blockly.serialization.workspaces.load
|
|
56
55
|
*/
|
|
57
|
-
|
|
56
|
+
export function load(
|
|
57
|
+
state: {[key: string]: AnyDuringMigration}, workspace: Workspace,
|
|
58
|
+
{recordUndo = false}: {recordUndo?: boolean} = {}) {
|
|
58
59
|
const serializerMap = registry.getAllItems(registry.Type.SERIALIZER, true);
|
|
59
60
|
if (!serializerMap) {
|
|
60
61
|
return;
|
|
61
62
|
}
|
|
62
63
|
|
|
63
64
|
const deserializers = Object.entries(serializerMap)
|
|
64
|
-
.sort(
|
|
65
|
+
.sort(
|
|
66
|
+
(a, b) => (b[1] as ISerializer)!.priority -
|
|
67
|
+
(a[1] as ISerializer)!.priority);
|
|
65
68
|
|
|
66
69
|
const prevRecordUndo = eventUtils.getRecordUndo();
|
|
67
70
|
eventUtils.setRecordUndo(recordUndo);
|
|
@@ -78,15 +81,15 @@ const load = function(state, workspace, {recordUndo = false} = {}) {
|
|
|
78
81
|
// We want to trigger clearing in reverse priority order so plugins don't end
|
|
79
82
|
// up missing dependencies.
|
|
80
83
|
for (const [, deserializer] of deserializers.reverse()) {
|
|
81
|
-
deserializer
|
|
84
|
+
(deserializer as ISerializer)?.clear(workspace);
|
|
82
85
|
}
|
|
83
86
|
|
|
84
87
|
// reverse() is destructive, so we have to re-reverse to correct the order.
|
|
85
88
|
for (let [name, deserializer] of deserializers.reverse()) {
|
|
86
|
-
name =
|
|
89
|
+
name = name;
|
|
87
90
|
const pluginState = state[name];
|
|
88
91
|
if (pluginState) {
|
|
89
|
-
deserializer
|
|
92
|
+
(deserializer as ISerializer)?.load(state[name], workspace);
|
|
90
93
|
}
|
|
91
94
|
}
|
|
92
95
|
|
|
@@ -95,9 +98,9 @@ const load = function(state, workspace, {recordUndo = false} = {}) {
|
|
|
95
98
|
}
|
|
96
99
|
dom.stopTextWidthCache();
|
|
97
100
|
|
|
98
|
-
eventUtils.fire(new (eventUtils.get(eventUtils.FINISHED_LOADING))
|
|
101
|
+
eventUtils.fire(new (eventUtils.get(eventUtils.FINISHED_LOADING))!
|
|
102
|
+
(workspace));
|
|
99
103
|
|
|
100
104
|
eventUtils.setGroup(existingGroup);
|
|
101
105
|
eventUtils.setRecordUndo(prevRecordUndo);
|
|
102
|
-
}
|
|
103
|
-
exports.load = load;
|
|
106
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2020 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Object holding the names of the default shortcut items.
|
|
8
|
+
* @alias Blockly.ShortcutItems.names
|
|
9
|
+
*/
|
|
10
|
+
export declare enum names {
|
|
11
|
+
ESCAPE = "escape",
|
|
12
|
+
DELETE = "delete",
|
|
13
|
+
COPY = "copy",
|
|
14
|
+
CUT = "cut",
|
|
15
|
+
PASTE = "paste",
|
|
16
|
+
UNDO = "undo",
|
|
17
|
+
REDO = "redo"
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Keyboard shortcut to hide chaff on escape.
|
|
21
|
+
* @alias Blockly.ShortcutItems.registerEscape
|
|
22
|
+
*/
|
|
23
|
+
export declare function registerEscape(): void;
|
|
24
|
+
/**
|
|
25
|
+
* Keyboard shortcut to delete a block on delete or backspace
|
|
26
|
+
* @alias Blockly.ShortcutItems.registerDelete
|
|
27
|
+
*/
|
|
28
|
+
export declare function registerDelete(): void;
|
|
29
|
+
/**
|
|
30
|
+
* Keyboard shortcut to copy a block on ctrl+c, cmd+c, or alt+c.
|
|
31
|
+
* @alias Blockly.ShortcutItems.registerCopy
|
|
32
|
+
*/
|
|
33
|
+
export declare function registerCopy(): void;
|
|
34
|
+
/**
|
|
35
|
+
* Keyboard shortcut to copy and delete a block on ctrl+x, cmd+x, or alt+x.
|
|
36
|
+
* @alias Blockly.ShortcutItems.registerCut
|
|
37
|
+
*/
|
|
38
|
+
export declare function registerCut(): void;
|
|
39
|
+
/**
|
|
40
|
+
* Keyboard shortcut to paste a block on ctrl+v, cmd+v, or alt+v.
|
|
41
|
+
* @alias Blockly.ShortcutItems.registerPaste
|
|
42
|
+
*/
|
|
43
|
+
export declare function registerPaste(): void;
|
|
44
|
+
/**
|
|
45
|
+
* Keyboard shortcut to undo the previous action on ctrl+z, cmd+z, or alt+z.
|
|
46
|
+
* @alias Blockly.ShortcutItems.registerUndo
|
|
47
|
+
*/
|
|
48
|
+
export declare function registerUndo(): void;
|
|
49
|
+
/**
|
|
50
|
+
* Keyboard shortcut to redo the previous action on ctrl+shift+z, cmd+shift+z,
|
|
51
|
+
* or alt+shift+z.
|
|
52
|
+
* @alias Blockly.ShortcutItems.registerRedo
|
|
53
|
+
*/
|
|
54
|
+
export declare function registerRedo(): void;
|
|
55
|
+
/**
|
|
56
|
+
* Registers all default keyboard shortcut item. This should be called once per
|
|
57
|
+
* instance of KeyboardShortcutRegistry.
|
|
58
|
+
* @alias Blockly.ShortcutItems.registerDefaultShortcuts
|
|
59
|
+
* @internal
|
|
60
|
+
*/
|
|
61
|
+
export declare function registerDefaultShortcuts(): void;
|