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
|
@@ -8,21 +8,20 @@
|
|
|
8
8
|
* @fileoverview The class extends Gesture to support pinch to zoom
|
|
9
9
|
* for both pointer and touch events.
|
|
10
10
|
*/
|
|
11
|
-
'use strict';
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
13
|
* The class extends Gesture to support pinch to zoom
|
|
15
14
|
* for both pointer and touch events.
|
|
16
15
|
* @class
|
|
17
16
|
*/
|
|
18
|
-
goog
|
|
17
|
+
import * as goog from '../closure/goog/goog.js';
|
|
18
|
+
goog.declareModuleId('Blockly.TouchGesture');
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const {WorkspaceSvg} = goog.requireType('Blockly.WorkspaceSvg');
|
|
20
|
+
import * as browserEvents from './browser_events.js';
|
|
21
|
+
import {Gesture} from './gesture.js';
|
|
22
|
+
import * as Touch from './touch.js';
|
|
23
|
+
import {Coordinate} from './utils/coordinate.js';
|
|
24
|
+
import type {WorkspaceSvg} from './workspace_svg.js';
|
|
26
25
|
|
|
27
26
|
|
|
28
27
|
/*
|
|
@@ -30,88 +29,53 @@ const {WorkspaceSvg} = goog.requireType('Blockly.WorkspaceSvg');
|
|
|
30
29
|
* events. "End" refers to touchend, mouseup, and pointerend events.
|
|
31
30
|
*/
|
|
32
31
|
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* A multiplier used to convert the gesture scale to a zoom in delta.
|
|
36
|
-
* @const
|
|
37
|
-
*/
|
|
32
|
+
/** A multiplier used to convert the gesture scale to a zoom in delta. */
|
|
38
33
|
const ZOOM_IN_MULTIPLIER = 5;
|
|
39
34
|
|
|
40
|
-
/**
|
|
41
|
-
* A multiplier used to convert the gesture scale to a zoom out delta.
|
|
42
|
-
* @const
|
|
43
|
-
*/
|
|
35
|
+
/** A multiplier used to convert the gesture scale to a zoom out delta. */
|
|
44
36
|
const ZOOM_OUT_MULTIPLIER = 6;
|
|
45
37
|
|
|
46
38
|
/**
|
|
47
39
|
* Class for one gesture.
|
|
48
|
-
* @extends {Gesture}
|
|
49
40
|
* @alias Blockly.TouchGesture
|
|
50
41
|
*/
|
|
51
|
-
class TouchGesture extends Gesture {
|
|
52
|
-
/**
|
|
53
|
-
|
|
54
|
-
* @param {!WorkspaceSvg} creatorWorkspace The workspace that created
|
|
55
|
-
* this gesture and has a reference to it.
|
|
56
|
-
*/
|
|
57
|
-
constructor(e, creatorWorkspace) {
|
|
58
|
-
super(e, creatorWorkspace);
|
|
42
|
+
export class TouchGesture extends Gesture {
|
|
43
|
+
/** Boolean for whether or not this gesture is a multi-touch gesture. */
|
|
44
|
+
private isMultiTouch_ = false;
|
|
59
45
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
* @type {boolean}
|
|
63
|
-
* @private
|
|
64
|
-
*/
|
|
65
|
-
this.isMultiTouch_ = false;
|
|
46
|
+
/** A map of cached points used for tracking multi-touch gestures. */
|
|
47
|
+
private cachedPoints = new Map<string, Coordinate|null>();
|
|
66
48
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* This is the ratio between the starting distance between the touch points
|
|
76
|
-
* and the most recent distance between the touch points.
|
|
77
|
-
* Scales between 0 and 1 mean the most recent zoom was a zoom out.
|
|
78
|
-
* Scales above 1.0 mean the most recent zoom was a zoom in.
|
|
79
|
-
* @type {number}
|
|
80
|
-
* @private
|
|
81
|
-
*/
|
|
82
|
-
this.previousScale_ = 0;
|
|
49
|
+
/**
|
|
50
|
+
* This is the ratio between the starting distance between the touch points
|
|
51
|
+
* and the most recent distance between the touch points.
|
|
52
|
+
* Scales between 0 and 1 mean the most recent zoom was a zoom out.
|
|
53
|
+
* Scales above 1.0 mean the most recent zoom was a zoom in.
|
|
54
|
+
*/
|
|
55
|
+
private previousScale_ = 0;
|
|
83
56
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
* @type {number}
|
|
87
|
-
* @private
|
|
88
|
-
*/
|
|
89
|
-
this.startDistance_ = 0;
|
|
57
|
+
/** The starting distance between two touch points. */
|
|
58
|
+
private startDistance_ = 0;
|
|
90
59
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
*/
|
|
98
|
-
this.onStartWrapper_ = null;
|
|
60
|
+
/**
|
|
61
|
+
* A handle to use to unbind the second touch start or pointer down listener
|
|
62
|
+
* at the end of a drag.
|
|
63
|
+
* Opaque data returned from Blockly.bindEventWithChecks_.
|
|
64
|
+
*/
|
|
65
|
+
private onStartWrapper_: browserEvents.Data|null = null;
|
|
99
66
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
*/
|
|
105
|
-
this.isPinchZoomEnabled_ = null;
|
|
106
|
-
}
|
|
67
|
+
/** Boolean for whether or not the workspace supports pinch-zoom. */
|
|
68
|
+
private isPinchZoomEnabled_: boolean|null = null;
|
|
69
|
+
override onMoveWrapper_: AnyDuringMigration;
|
|
70
|
+
override onUpWrapper_: AnyDuringMigration;
|
|
107
71
|
|
|
108
72
|
/**
|
|
109
73
|
* Start a gesture: update the workspace to indicate that a gesture is in
|
|
110
74
|
* progress and bind mousemove and mouseup handlers.
|
|
111
|
-
* @param
|
|
112
|
-
* @
|
|
75
|
+
* @param e A mouse down, touch start or pointer down event.
|
|
76
|
+
* @internal
|
|
113
77
|
*/
|
|
114
|
-
doStart(e) {
|
|
78
|
+
override doStart(e: MouseEvent) {
|
|
115
79
|
this.isPinchZoomEnabled_ = this.startWorkspace_.options.zoomOptions &&
|
|
116
80
|
this.startWorkspace_.options.zoomOptions.pinch;
|
|
117
81
|
super.doStart(e);
|
|
@@ -127,10 +91,10 @@ class TouchGesture extends Gesture {
|
|
|
127
91
|
* opt_noCaptureIdentifier.
|
|
128
92
|
* In addition, binding a second mouse down event to detect multi-touch
|
|
129
93
|
* events.
|
|
130
|
-
* @param
|
|
131
|
-
* @
|
|
94
|
+
* @param e A mouse down or touch start event.
|
|
95
|
+
* @internal
|
|
132
96
|
*/
|
|
133
|
-
bindMouseEvents(e) {
|
|
97
|
+
override bindMouseEvents(e: Event) {
|
|
134
98
|
this.onStartWrapper_ = browserEvents.conditionalBind(
|
|
135
99
|
document, 'mousedown', null, this.handleStart.bind(this),
|
|
136
100
|
/* opt_noCaptureIdentifier */ true);
|
|
@@ -147,10 +111,10 @@ class TouchGesture extends Gesture {
|
|
|
147
111
|
|
|
148
112
|
/**
|
|
149
113
|
* Handle a mouse down, touch start, or pointer down event.
|
|
150
|
-
* @param
|
|
151
|
-
* @
|
|
114
|
+
* @param e A mouse down, touch start, or pointer down event.
|
|
115
|
+
* @internal
|
|
152
116
|
*/
|
|
153
|
-
handleStart(e) {
|
|
117
|
+
handleStart(e: Event) {
|
|
154
118
|
if (this.isDragging()) {
|
|
155
119
|
// A drag has already started, so this can no longer be a pinch-zoom.
|
|
156
120
|
return;
|
|
@@ -166,10 +130,10 @@ class TouchGesture extends Gesture {
|
|
|
166
130
|
|
|
167
131
|
/**
|
|
168
132
|
* Handle a mouse move, touch move, or pointer move event.
|
|
169
|
-
* @param
|
|
170
|
-
* @
|
|
133
|
+
* @param e A mouse move, touch move, or pointer move event.
|
|
134
|
+
* @internal
|
|
171
135
|
*/
|
|
172
|
-
handleMove(e) {
|
|
136
|
+
override handleMove(e: MouseEvent) {
|
|
173
137
|
if (this.isDragging()) {
|
|
174
138
|
// We are in the middle of a drag, only handle the relevant events
|
|
175
139
|
if (Touch.shouldHandleEvent(e)) {
|
|
@@ -189,10 +153,10 @@ class TouchGesture extends Gesture {
|
|
|
189
153
|
|
|
190
154
|
/**
|
|
191
155
|
* Handle a mouse up, touch end, or pointer up event.
|
|
192
|
-
* @param
|
|
193
|
-
* @
|
|
156
|
+
* @param e A mouse up, touch end, or pointer up event.
|
|
157
|
+
* @internal
|
|
194
158
|
*/
|
|
195
|
-
handleUp(e) {
|
|
159
|
+
override handleUp(e: Event) {
|
|
196
160
|
if (Touch.isTouchEvent(e) && !this.isDragging()) {
|
|
197
161
|
this.handleTouchEnd(e);
|
|
198
162
|
}
|
|
@@ -211,18 +175,18 @@ class TouchGesture extends Gesture {
|
|
|
211
175
|
|
|
212
176
|
/**
|
|
213
177
|
* Whether this gesture is part of a multi-touch gesture.
|
|
214
|
-
* @return
|
|
215
|
-
* @
|
|
178
|
+
* @return Whether this gesture is part of a multi-touch gesture.
|
|
179
|
+
* @internal
|
|
216
180
|
*/
|
|
217
|
-
isMultiTouch() {
|
|
181
|
+
isMultiTouch(): boolean {
|
|
218
182
|
return this.isMultiTouch_;
|
|
219
183
|
}
|
|
220
184
|
|
|
221
185
|
/**
|
|
222
186
|
* Sever all links from this object.
|
|
223
|
-
* @
|
|
187
|
+
* @internal
|
|
224
188
|
*/
|
|
225
|
-
dispose() {
|
|
189
|
+
override dispose() {
|
|
226
190
|
super.dispose();
|
|
227
191
|
|
|
228
192
|
if (this.onStartWrapper_) {
|
|
@@ -233,20 +197,18 @@ class TouchGesture extends Gesture {
|
|
|
233
197
|
/**
|
|
234
198
|
* Handle a touch start or pointer down event and keep track of current
|
|
235
199
|
* pointers.
|
|
236
|
-
* @param
|
|
237
|
-
* @
|
|
200
|
+
* @param e A touch start, or pointer down event.
|
|
201
|
+
* @internal
|
|
238
202
|
*/
|
|
239
|
-
handleTouchStart(e) {
|
|
203
|
+
handleTouchStart(e: Event) {
|
|
240
204
|
const pointerId = Touch.getTouchIdentifierFromEvent(e);
|
|
241
205
|
// store the pointerId in the current list of pointers
|
|
242
|
-
this.
|
|
243
|
-
const pointers =
|
|
206
|
+
this.cachedPoints.set(pointerId, this.getTouchPoint(e));
|
|
207
|
+
const pointers = Array.from(this.cachedPoints.keys());
|
|
244
208
|
// If two pointers are down, store info
|
|
245
209
|
if (pointers.length === 2) {
|
|
246
|
-
const point0 =
|
|
247
|
-
|
|
248
|
-
const point1 =
|
|
249
|
-
/** @type {!Coordinate} */ (this.cachedPoints_[pointers[1]]);
|
|
210
|
+
const point0 = (this.cachedPoints.get(pointers[0]))!;
|
|
211
|
+
const point1 = (this.cachedPoints.get(pointers[1]))!;
|
|
250
212
|
this.startDistance_ = Coordinate.distance(point0, point1);
|
|
251
213
|
this.isMultiTouch_ = true;
|
|
252
214
|
e.preventDefault();
|
|
@@ -256,16 +218,15 @@ class TouchGesture extends Gesture {
|
|
|
256
218
|
/**
|
|
257
219
|
* Handle a touch move or pointer move event and zoom in/out if two pointers
|
|
258
220
|
* are on the screen.
|
|
259
|
-
* @param
|
|
260
|
-
* @
|
|
221
|
+
* @param e A touch move, or pointer move event.
|
|
222
|
+
* @internal
|
|
261
223
|
*/
|
|
262
|
-
handleTouchMove(e) {
|
|
224
|
+
handleTouchMove(e: MouseEvent) {
|
|
263
225
|
const pointerId = Touch.getTouchIdentifierFromEvent(e);
|
|
264
226
|
// Update the cache
|
|
265
|
-
this.
|
|
227
|
+
this.cachedPoints.set(pointerId, this.getTouchPoint(e));
|
|
266
228
|
|
|
267
|
-
|
|
268
|
-
if (this.isPinchZoomEnabled_ && pointers.length === 2) {
|
|
229
|
+
if (this.isPinchZoomEnabled_ && this.cachedPoints.size === 2) {
|
|
269
230
|
this.handlePinch_(e);
|
|
270
231
|
} else {
|
|
271
232
|
super.handleMove(e);
|
|
@@ -274,14 +235,13 @@ class TouchGesture extends Gesture {
|
|
|
274
235
|
|
|
275
236
|
/**
|
|
276
237
|
* Handle pinch zoom gesture.
|
|
277
|
-
* @param
|
|
278
|
-
* @private
|
|
238
|
+
* @param e A touch move, or pointer move event.
|
|
279
239
|
*/
|
|
280
|
-
handlePinch_(e) {
|
|
281
|
-
const pointers =
|
|
240
|
+
private handlePinch_(e: MouseEvent) {
|
|
241
|
+
const pointers = Array.from(this.cachedPoints.keys());
|
|
282
242
|
// Calculate the distance between the two pointers
|
|
283
|
-
const point0 =
|
|
284
|
-
const point1 =
|
|
243
|
+
const point0 = (this.cachedPoints.get(pointers[0]))!;
|
|
244
|
+
const point1 = (this.cachedPoints.get(pointers[1]))!;
|
|
285
245
|
const moveDistance = Coordinate.distance(point0, point1);
|
|
286
246
|
const scale = moveDistance / this.startDistance_;
|
|
287
247
|
|
|
@@ -300,34 +260,36 @@ class TouchGesture extends Gesture {
|
|
|
300
260
|
|
|
301
261
|
/**
|
|
302
262
|
* Handle a touch end or pointer end event and end the gesture.
|
|
303
|
-
* @param
|
|
304
|
-
* @
|
|
263
|
+
* @param e A touch end, or pointer end event.
|
|
264
|
+
* @internal
|
|
305
265
|
*/
|
|
306
|
-
handleTouchEnd(e) {
|
|
266
|
+
handleTouchEnd(e: Event) {
|
|
307
267
|
const pointerId = Touch.getTouchIdentifierFromEvent(e);
|
|
308
|
-
if (this.
|
|
309
|
-
|
|
268
|
+
if (this.cachedPoints.has(pointerId)) {
|
|
269
|
+
this.cachedPoints.delete(pointerId);
|
|
310
270
|
}
|
|
311
|
-
if (
|
|
312
|
-
this.
|
|
271
|
+
if (this.cachedPoints.size < 2) {
|
|
272
|
+
this.cachedPoints.clear();
|
|
313
273
|
this.previousScale_ = 0;
|
|
314
274
|
}
|
|
315
275
|
}
|
|
316
276
|
|
|
317
277
|
/**
|
|
318
278
|
* Helper function returning the current touch point coordinate.
|
|
319
|
-
* @param
|
|
320
|
-
* @return
|
|
321
|
-
* @
|
|
279
|
+
* @param e A touch or pointer event.
|
|
280
|
+
* @return The current touch point coordinate
|
|
281
|
+
* @internal
|
|
322
282
|
*/
|
|
323
|
-
getTouchPoint(e) {
|
|
283
|
+
getTouchPoint(e: Event): Coordinate|null {
|
|
324
284
|
if (!this.startWorkspace_) {
|
|
325
285
|
return null;
|
|
326
286
|
}
|
|
287
|
+
// TODO(#6097): Make types accurate, possibly by refactoring touch handling.
|
|
288
|
+
const typelessEvent = e as AnyDuringMigration;
|
|
327
289
|
return new Coordinate(
|
|
328
|
-
|
|
329
|
-
|
|
290
|
+
typelessEvent.changedTouches ? typelessEvent.changedTouches[0].pageX :
|
|
291
|
+
typelessEvent.pageX,
|
|
292
|
+
typelessEvent.changedTouches ? typelessEvent.changedTouches[0].pageY :
|
|
293
|
+
typelessEvent.pageY);
|
|
330
294
|
}
|
|
331
295
|
}
|
|
332
|
-
|
|
333
|
-
exports.TouchGesture = TouchGesture;
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2011 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import './events/events_trashcan_open.js';
|
|
7
|
+
import { DeleteArea } from './delete_area.js';
|
|
8
|
+
import type { IAutoHideable } from './interfaces/i_autohideable.js';
|
|
9
|
+
import type { IDraggable } from './interfaces/i_draggable.js';
|
|
10
|
+
import type { IFlyout } from './interfaces/i_flyout.js';
|
|
11
|
+
import type { IPositionable } from './interfaces/i_positionable.js';
|
|
12
|
+
import type { UiMetrics } from './metrics_manager.js';
|
|
13
|
+
import { Rect } from './utils/rect.js';
|
|
14
|
+
import type { WorkspaceSvg } from './workspace_svg.js';
|
|
15
|
+
/**
|
|
16
|
+
* Class for a trash can.
|
|
17
|
+
* @alias Blockly.Trashcan
|
|
18
|
+
*/
|
|
19
|
+
export declare class Trashcan extends DeleteArea implements IAutoHideable, IPositionable {
|
|
20
|
+
private workspace;
|
|
21
|
+
/**
|
|
22
|
+
* The unique id for this component that is used to register with the
|
|
23
|
+
* ComponentManager.
|
|
24
|
+
*/
|
|
25
|
+
id: string;
|
|
26
|
+
/**
|
|
27
|
+
* A list of JSON (stored as strings) representing blocks in the trashcan.
|
|
28
|
+
*/
|
|
29
|
+
private readonly contents_;
|
|
30
|
+
/**
|
|
31
|
+
* The trashcan flyout.
|
|
32
|
+
* @internal
|
|
33
|
+
*/
|
|
34
|
+
flyout: IFlyout | null;
|
|
35
|
+
/** Current open/close state of the lid. */
|
|
36
|
+
isLidOpen: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* The minimum openness of the lid. Used to indicate if the trashcan
|
|
39
|
+
* contains blocks.
|
|
40
|
+
*/
|
|
41
|
+
private minOpenness_;
|
|
42
|
+
/** The SVG group containing the trash can. */
|
|
43
|
+
private svgGroup_;
|
|
44
|
+
/** The SVG image element of the trash can lid. */
|
|
45
|
+
private svgLid_;
|
|
46
|
+
/** Task ID of opening/closing animation. */
|
|
47
|
+
private lidTask_;
|
|
48
|
+
/** Current state of lid opening (0.0 = closed, 1.0 = open). */
|
|
49
|
+
private lidOpen_;
|
|
50
|
+
/** Left coordinate of the trash can. */
|
|
51
|
+
private left_;
|
|
52
|
+
/** Top coordinate of the trash can. */
|
|
53
|
+
private top_;
|
|
54
|
+
/** Whether this trash can has been initialized. */
|
|
55
|
+
private initialized_;
|
|
56
|
+
/** @param workspace The workspace to sit in. */
|
|
57
|
+
constructor(workspace: WorkspaceSvg);
|
|
58
|
+
/**
|
|
59
|
+
* Create the trash can elements.
|
|
60
|
+
* @return The trash can's SVG group.
|
|
61
|
+
*/
|
|
62
|
+
createDom(): SVGElement;
|
|
63
|
+
/** Initializes the trash can. */
|
|
64
|
+
init(): void;
|
|
65
|
+
/**
|
|
66
|
+
* Dispose of this trash can.
|
|
67
|
+
* Unlink from all DOM elements to prevent memory leaks.
|
|
68
|
+
* @suppress {checkTypes}
|
|
69
|
+
*/
|
|
70
|
+
dispose(): void;
|
|
71
|
+
/**
|
|
72
|
+
* Whether the trashcan has contents.
|
|
73
|
+
* @return True if the trashcan has contents.
|
|
74
|
+
*/
|
|
75
|
+
private hasContents_;
|
|
76
|
+
/**
|
|
77
|
+
* Returns true if the trashcan contents-flyout is currently open.
|
|
78
|
+
* @return True if the trashcan contents-flyout is currently open.
|
|
79
|
+
*/
|
|
80
|
+
contentsIsOpen(): boolean;
|
|
81
|
+
/** Opens the trashcan flyout. */
|
|
82
|
+
openFlyout(): void;
|
|
83
|
+
/** Closes the trashcan flyout. */
|
|
84
|
+
closeFlyout(): void;
|
|
85
|
+
/**
|
|
86
|
+
* Hides the component. Called in WorkspaceSvg.hideChaff.
|
|
87
|
+
* @param onlyClosePopups Whether only popups should be closed.
|
|
88
|
+
* Flyouts should not be closed if this is true.
|
|
89
|
+
*/
|
|
90
|
+
autoHide(onlyClosePopups: boolean): void;
|
|
91
|
+
/**
|
|
92
|
+
* Empties the trashcan's contents. If the contents-flyout is currently open
|
|
93
|
+
* it will be closed.
|
|
94
|
+
*/
|
|
95
|
+
emptyContents(): void;
|
|
96
|
+
/**
|
|
97
|
+
* Positions the trashcan.
|
|
98
|
+
* It is positioned in the opposite corner to the corner the
|
|
99
|
+
* categories/toolbox starts at.
|
|
100
|
+
* @param metrics The workspace metrics.
|
|
101
|
+
* @param savedPositions List of rectangles that are already on the workspace.
|
|
102
|
+
*/
|
|
103
|
+
position(metrics: UiMetrics, savedPositions: Rect[]): void;
|
|
104
|
+
/**
|
|
105
|
+
* Returns the bounding rectangle of the UI element in pixel units relative to
|
|
106
|
+
* the Blockly injection div.
|
|
107
|
+
* @return The UI elements's bounding box. Null if bounding box should be
|
|
108
|
+
* ignored by other UI elements.
|
|
109
|
+
*/
|
|
110
|
+
getBoundingRectangle(): Rect | null;
|
|
111
|
+
/**
|
|
112
|
+
* Returns the bounding rectangle of the drag target area in pixel units
|
|
113
|
+
* relative to viewport.
|
|
114
|
+
* @return The component's bounding box. Null if drag target area should be
|
|
115
|
+
* ignored.
|
|
116
|
+
*/
|
|
117
|
+
getClientRect(): Rect | null;
|
|
118
|
+
/**
|
|
119
|
+
* Handles when a cursor with a block or bubble is dragged over this drag
|
|
120
|
+
* target.
|
|
121
|
+
* @param _dragElement The block or bubble currently being dragged.
|
|
122
|
+
*/
|
|
123
|
+
onDragOver(_dragElement: IDraggable): void;
|
|
124
|
+
/**
|
|
125
|
+
* Handles when a cursor with a block or bubble exits this drag target.
|
|
126
|
+
* @param _dragElement The block or bubble currently being dragged.
|
|
127
|
+
*/
|
|
128
|
+
onDragExit(_dragElement: IDraggable): void;
|
|
129
|
+
/**
|
|
130
|
+
* Handles when a block or bubble is dropped on this component.
|
|
131
|
+
* Should not handle delete here.
|
|
132
|
+
* @param _dragElement The block or bubble currently being dragged.
|
|
133
|
+
*/
|
|
134
|
+
onDrop(_dragElement: IDraggable): void;
|
|
135
|
+
/**
|
|
136
|
+
* Flip the lid open or shut.
|
|
137
|
+
* @param state True if open.
|
|
138
|
+
* @internal
|
|
139
|
+
*/
|
|
140
|
+
setLidOpen(state: boolean): void;
|
|
141
|
+
/** Rotate the lid open or closed by one step. Then wait and recurse. */
|
|
142
|
+
private animateLid_;
|
|
143
|
+
/**
|
|
144
|
+
* Set the angle of the trashcan's lid.
|
|
145
|
+
* @param lidAngle The angle at which to set the lid.
|
|
146
|
+
*/
|
|
147
|
+
private setLidAngle_;
|
|
148
|
+
/**
|
|
149
|
+
* Sets the minimum openness of the trashcan lid. If the lid is currently
|
|
150
|
+
* closed, this will update lid's position.
|
|
151
|
+
* @param newMin The new minimum openness of the lid. Should be between 0
|
|
152
|
+
* and 1.
|
|
153
|
+
*/
|
|
154
|
+
private setMinOpenness_;
|
|
155
|
+
/**
|
|
156
|
+
* Flip the lid shut.
|
|
157
|
+
* Called externally after a drag.
|
|
158
|
+
*/
|
|
159
|
+
closeLid(): void;
|
|
160
|
+
/** Inspect the contents of the trash. */
|
|
161
|
+
click(): void;
|
|
162
|
+
/**
|
|
163
|
+
* Fires a UI event for trashcan flyout open or close.
|
|
164
|
+
* @param trashcanOpen Whether the flyout is opening.
|
|
165
|
+
*/
|
|
166
|
+
private fireUiEvent_;
|
|
167
|
+
/**
|
|
168
|
+
* Prevents a workspace scroll and click event if the trashcan has blocks.
|
|
169
|
+
* @param e A mouse down event.
|
|
170
|
+
*/
|
|
171
|
+
private blockMouseDownWhenOpenable_;
|
|
172
|
+
/**
|
|
173
|
+
* Indicate that the trashcan can be clicked (by opening it) if it has blocks.
|
|
174
|
+
*/
|
|
175
|
+
private mouseOver_;
|
|
176
|
+
/**
|
|
177
|
+
* Close the lid of the trashcan if it was open (Vis. it was indicating it had
|
|
178
|
+
* blocks).
|
|
179
|
+
*/
|
|
180
|
+
private mouseOut_;
|
|
181
|
+
/**
|
|
182
|
+
* Handle a BLOCK_DELETE event. Adds deleted blocks oldXml to the content
|
|
183
|
+
* array.
|
|
184
|
+
* @param event Workspace event.
|
|
185
|
+
*/
|
|
186
|
+
private onDelete_;
|
|
187
|
+
/**
|
|
188
|
+
* Converts JSON representing a block into text that can be stored in the
|
|
189
|
+
* content array.
|
|
190
|
+
* @param json A JSON representation of a block's state.
|
|
191
|
+
* @return A BlockInfo object corresponding to the JSON, cleaned of all
|
|
192
|
+
* unnecessary attributes.
|
|
193
|
+
*/
|
|
194
|
+
private cleanBlockJson_;
|
|
195
|
+
}
|