blockly 8.0.4 → 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 +420 -420
- package/msg/ace.js +420 -420
- package/msg/af.js +420 -420
- package/msg/am.js +420 -420
- package/msg/ar.js +420 -420
- package/msg/ast.js +420 -420
- package/msg/az.js +420 -420
- package/msg/ba.js +420 -420
- package/msg/bcc.js +420 -420
- package/msg/be-tarask.js +420 -420
- package/msg/be.js +420 -420
- package/msg/bg.js +420 -420
- package/msg/bn.js +420 -420
- package/msg/br.js +420 -420
- package/msg/bs.js +420 -420
- package/msg/ca.js +420 -420
- package/msg/cdo.js +420 -420
- package/msg/cs.js +420 -420
- package/msg/da.js +420 -420
- package/msg/de.js +420 -420
- package/msg/diq.js +420 -420
- package/msg/dty.js +420 -420
- package/msg/ee.js +420 -420
- package/msg/el.js +420 -420
- package/msg/en-gb.js +420 -420
- package/msg/en.js +420 -420
- package/msg/eo.js +420 -420
- package/msg/es.js +420 -420
- package/msg/et.js +420 -420
- package/msg/eu.js +420 -420
- package/msg/fa.js +420 -420
- package/msg/fi.js +420 -420
- package/msg/fo.js +420 -420
- package/msg/fr.js +420 -420
- package/msg/frr.js +420 -420
- package/msg/gl.js +420 -420
- package/msg/gn.js +420 -420
- package/msg/gor.js +420 -420
- package/msg/ha.js +420 -420
- package/msg/hak.js +420 -420
- package/msg/he.js +420 -420
- package/msg/hi.js +420 -420
- package/msg/hr.js +420 -420
- package/msg/hrx.js +420 -420
- package/msg/hu.js +420 -420
- package/msg/hy.js +420 -420
- package/msg/ia.js +420 -420
- package/msg/id.js +420 -420
- package/msg/ig.js +420 -420
- package/msg/inh.js +420 -420
- package/msg/is.js +420 -420
- package/msg/it.js +420 -420
- package/msg/ja.js +420 -420
- package/msg/ka.js +420 -420
- package/msg/kab.js +420 -420
- package/msg/kbd-cyrl.js +420 -420
- package/msg/km.js +420 -420
- package/msg/kn.js +420 -420
- package/msg/ko.js +420 -420
- package/msg/ksh.js +420 -420
- package/msg/ku-latn.js +420 -420
- package/msg/ky.js +420 -420
- package/msg/la.js +420 -420
- package/msg/lb.js +420 -420
- package/msg/lki.js +420 -420
- package/msg/lo.js +420 -420
- package/msg/lrc.js +420 -420
- package/msg/lt.js +420 -420
- package/msg/lv.js +420 -420
- package/msg/mg.js +420 -420
- package/msg/mk.js +420 -420
- package/msg/ml.js +420 -420
- package/msg/mnw.js +420 -420
- package/msg/ms.js +420 -420
- package/msg/my.js +420 -420
- package/msg/mzn.js +420 -420
- package/msg/nb.js +420 -420
- package/msg/ne.js +420 -420
- package/msg/nl.js +420 -420
- package/msg/oc.js +420 -420
- package/msg/olo.js +420 -420
- package/msg/pa.js +420 -420
- package/msg/pl.js +420 -420
- package/msg/pms.js +420 -420
- package/msg/ps.js +420 -420
- package/msg/pt-br.js +420 -420
- package/msg/pt.js +420 -420
- package/msg/ro.js +420 -420
- package/msg/ru.js +420 -420
- package/msg/sc.js +420 -420
- package/msg/sco.js +420 -420
- package/msg/sd.js +420 -420
- package/msg/shn.js +420 -420
- package/msg/si.js +420 -420
- package/msg/sk.js +420 -420
- package/msg/skr-arab.js +420 -420
- package/msg/sl.js +420 -420
- package/msg/smn.js +420 -420
- package/msg/sq.js +420 -420
- package/msg/sr-latn.js +420 -420
- package/msg/sr.js +420 -420
- package/msg/sv.js +420 -420
- package/msg/sw.js +420 -420
- package/msg/ta.js +420 -420
- package/msg/tcy.js +420 -420
- package/msg/te.js +420 -420
- package/msg/th.js +420 -420
- package/msg/ti.js +420 -420
- package/msg/tl.js +420 -420
- package/msg/tlh.js +420 -420
- package/msg/tr.js +420 -420
- package/msg/ug-arab.js +420 -420
- package/msg/uk.js +420 -420
- package/msg/ur.js +420 -420
- package/msg/uz.js +420 -420
- package/msg/vi.js +420 -420
- package/msg/xmf.js +420 -420
- package/msg/yo.js +420 -420
- package/msg/yue.js +420 -420
- package/msg/zgh.js +420 -420
- package/msg/zh-hans.js +420 -420
- package/msg/zh-hant.js +420 -420
- 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,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2011 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { Metrics } from './utils/metrics.js';
|
|
7
|
+
import type { WorkspaceSvg } from './workspace_svg.js';
|
|
8
|
+
/**
|
|
9
|
+
* Class for a pair of scrollbars. Horizontal and vertical.
|
|
10
|
+
* @alias Blockly.ScrollbarPair
|
|
11
|
+
*/
|
|
12
|
+
export declare class ScrollbarPair {
|
|
13
|
+
private workspace;
|
|
14
|
+
hScroll: any;
|
|
15
|
+
vScroll: any;
|
|
16
|
+
corner_: any;
|
|
17
|
+
/** Previously recorded metrics from the workspace. */
|
|
18
|
+
private oldHostMetrics_;
|
|
19
|
+
/**
|
|
20
|
+
* @param workspace Workspace to bind the scrollbars to.
|
|
21
|
+
* @param addHorizontal Whether to add a horizontal scrollbar.
|
|
22
|
+
* Defaults to true.
|
|
23
|
+
* @param addVertical Whether to add a vertical scrollbar. Defaults to true.
|
|
24
|
+
* @param opt_class A class to be applied to these scrollbars.
|
|
25
|
+
* @param opt_margin The margin to apply to these scrollbars.
|
|
26
|
+
*/
|
|
27
|
+
constructor(workspace: WorkspaceSvg, addHorizontal?: boolean, addVertical?: boolean, opt_class?: string, opt_margin?: number);
|
|
28
|
+
/**
|
|
29
|
+
* Dispose of this pair of scrollbars.
|
|
30
|
+
* Unlink from all DOM elements to prevent memory leaks.
|
|
31
|
+
* @suppress {checkTypes}
|
|
32
|
+
*/
|
|
33
|
+
dispose(): void;
|
|
34
|
+
/**
|
|
35
|
+
* Recalculate both of the scrollbars' locations and lengths.
|
|
36
|
+
* Also reposition the corner rectangle.
|
|
37
|
+
*/
|
|
38
|
+
resize(): void;
|
|
39
|
+
/**
|
|
40
|
+
* Returns whether scrolling horizontally is enabled.
|
|
41
|
+
* @return True if horizontal scroll is enabled.
|
|
42
|
+
*/
|
|
43
|
+
canScrollHorizontally(): boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Returns whether scrolling vertically is enabled.
|
|
46
|
+
* @return True if vertical scroll is enabled.
|
|
47
|
+
*/
|
|
48
|
+
canScrollVertically(): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Record the origin of the workspace that the scrollbar is in, in pixels
|
|
51
|
+
* relative to the injection div origin. This is for times when the scrollbar
|
|
52
|
+
* is used in an object whose origin isn't the same as the main workspace
|
|
53
|
+
* (e.g. in a flyout.)
|
|
54
|
+
* @param x The x coordinate of the scrollbar's origin, in CSS pixels.
|
|
55
|
+
* @param y The y coordinate of the scrollbar's origin, in CSS pixels.
|
|
56
|
+
* @internal
|
|
57
|
+
*/
|
|
58
|
+
setOrigin(x: number, y: number): void;
|
|
59
|
+
/**
|
|
60
|
+
* Set the handles of both scrollbars.
|
|
61
|
+
* @param x The horizontal content displacement, relative to the view in
|
|
62
|
+
* pixels.
|
|
63
|
+
* @param y The vertical content displacement, relative to the view in pixels.
|
|
64
|
+
* @param updateMetrics Whether to update metrics on this set call.
|
|
65
|
+
* Defaults to true.
|
|
66
|
+
*/
|
|
67
|
+
set(x: number, y: number, updateMetrics: boolean): void;
|
|
68
|
+
/**
|
|
69
|
+
* Set the handle of the horizontal scrollbar to be at a certain position in
|
|
70
|
+
* CSS pixels relative to its parents.
|
|
71
|
+
* @param x Horizontal scroll value.
|
|
72
|
+
*/
|
|
73
|
+
setX(x: number): void;
|
|
74
|
+
/**
|
|
75
|
+
* Set the handle of the vertical scrollbar to be at a certain position in
|
|
76
|
+
* CSS pixels relative to its parents.
|
|
77
|
+
* @param y Vertical scroll value.
|
|
78
|
+
*/
|
|
79
|
+
setY(y: number): void;
|
|
80
|
+
/**
|
|
81
|
+
* Set whether this scrollbar's container is visible.
|
|
82
|
+
* @param visible Whether the container is visible.
|
|
83
|
+
*/
|
|
84
|
+
setContainerVisible(visible: boolean): void;
|
|
85
|
+
/**
|
|
86
|
+
* If any of the scrollbars are visible. Non-paired scrollbars may disappear
|
|
87
|
+
* when they aren't needed.
|
|
88
|
+
* @return True if visible.
|
|
89
|
+
*/
|
|
90
|
+
isVisible(): boolean;
|
|
91
|
+
/**
|
|
92
|
+
* Recalculates the scrollbars' locations within their path and length.
|
|
93
|
+
* This should be called when the contents of the workspace have changed.
|
|
94
|
+
* @param hostMetrics A data structure describing all the required dimensions,
|
|
95
|
+
* possibly fetched from the host object.
|
|
96
|
+
*/
|
|
97
|
+
resizeContent(hostMetrics: Metrics): void;
|
|
98
|
+
/**
|
|
99
|
+
* Recalculates the scrollbars' locations on the screen and path length.
|
|
100
|
+
* This should be called when the layout or size of the window has changed.
|
|
101
|
+
* @param hostMetrics A data structure describing all the required dimensions,
|
|
102
|
+
* possibly fetched from the host object.
|
|
103
|
+
*/
|
|
104
|
+
resizeView(hostMetrics: Metrics): void;
|
|
105
|
+
}
|
|
@@ -7,46 +7,45 @@
|
|
|
7
7
|
/**
|
|
8
8
|
* @fileoverview Object representing a pair of scrollbars.
|
|
9
9
|
*/
|
|
10
|
-
'use strict';
|
|
11
10
|
|
|
12
11
|
/**
|
|
13
12
|
* Object representing a pair of scrollbars.
|
|
14
13
|
* @class
|
|
15
14
|
*/
|
|
16
|
-
goog
|
|
15
|
+
import * as goog from '../closure/goog/goog.js';
|
|
16
|
+
goog.declareModuleId('Blockly.ScrollbarPair');
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
/* eslint-disable-next-line no-unused-vars */
|
|
25
|
-
const {WorkspaceSvg} = goog.requireType('Blockly.WorkspaceSvg');
|
|
18
|
+
import * as eventUtils from './events/utils.js';
|
|
19
|
+
import {Scrollbar} from './scrollbar.js';
|
|
20
|
+
import * as dom from './utils/dom.js';
|
|
21
|
+
import type {Metrics} from './utils/metrics.js';
|
|
22
|
+
import {Svg} from './utils/svg.js';
|
|
23
|
+
import type {WorkspaceSvg} from './workspace_svg.js';
|
|
26
24
|
|
|
27
25
|
|
|
28
26
|
/**
|
|
29
27
|
* Class for a pair of scrollbars. Horizontal and vertical.
|
|
30
28
|
* @alias Blockly.ScrollbarPair
|
|
31
29
|
*/
|
|
32
|
-
|
|
30
|
+
export class ScrollbarPair {
|
|
31
|
+
hScroll: AnyDuringMigration;
|
|
32
|
+
vScroll: AnyDuringMigration;
|
|
33
|
+
corner_: AnyDuringMigration;
|
|
34
|
+
|
|
35
|
+
/** Previously recorded metrics from the workspace. */
|
|
36
|
+
private oldHostMetrics_: Metrics|null = null;
|
|
37
|
+
|
|
33
38
|
/**
|
|
34
|
-
* @param
|
|
35
|
-
* @param
|
|
39
|
+
* @param workspace Workspace to bind the scrollbars to.
|
|
40
|
+
* @param addHorizontal Whether to add a horizontal scrollbar.
|
|
36
41
|
* Defaults to true.
|
|
37
|
-
* @param
|
|
38
|
-
*
|
|
39
|
-
* @param
|
|
40
|
-
* @param {number=} opt_margin The margin to apply to these scrollbars.
|
|
42
|
+
* @param addVertical Whether to add a vertical scrollbar. Defaults to true.
|
|
43
|
+
* @param opt_class A class to be applied to these scrollbars.
|
|
44
|
+
* @param opt_margin The margin to apply to these scrollbars.
|
|
41
45
|
*/
|
|
42
|
-
constructor(
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
* @type {!WorkspaceSvg}
|
|
46
|
-
* @private
|
|
47
|
-
*/
|
|
48
|
-
this.workspace_ = workspace;
|
|
49
|
-
|
|
46
|
+
constructor(
|
|
47
|
+
private workspace: WorkspaceSvg, addHorizontal?: boolean,
|
|
48
|
+
addVertical?: boolean, opt_class?: string, opt_margin?: number) {
|
|
50
49
|
addHorizontal = addHorizontal === undefined ? true : addHorizontal;
|
|
51
50
|
addVertical = addVertical === undefined ? true : addVertical;
|
|
52
51
|
const isPair = addHorizontal && addVertical;
|
|
@@ -61,22 +60,13 @@ const ScrollbarPair = class {
|
|
|
61
60
|
}
|
|
62
61
|
|
|
63
62
|
if (isPair) {
|
|
64
|
-
this.corner_ = dom.createSvgElement(
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
},
|
|
70
|
-
null);
|
|
63
|
+
this.corner_ = dom.createSvgElement(Svg.RECT, {
|
|
64
|
+
'height': Scrollbar.scrollbarThickness,
|
|
65
|
+
'width': Scrollbar.scrollbarThickness,
|
|
66
|
+
'class': 'blocklyScrollbarBackground',
|
|
67
|
+
});
|
|
71
68
|
dom.insertAfter(this.corner_, workspace.getBubbleCanvas());
|
|
72
69
|
}
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* Previously recorded metrics from the workspace.
|
|
76
|
-
* @type {?Metrics}
|
|
77
|
-
* @private
|
|
78
|
-
*/
|
|
79
|
-
this.oldHostMetrics_ = null;
|
|
80
70
|
}
|
|
81
71
|
|
|
82
72
|
/**
|
|
@@ -87,7 +77,9 @@ const ScrollbarPair = class {
|
|
|
87
77
|
dispose() {
|
|
88
78
|
dom.removeNode(this.corner_);
|
|
89
79
|
this.corner_ = null;
|
|
90
|
-
|
|
80
|
+
// AnyDuringMigration because: Type 'null' is not assignable to type
|
|
81
|
+
// 'WorkspaceSvg'.
|
|
82
|
+
this.workspace = null as AnyDuringMigration;
|
|
91
83
|
this.oldHostMetrics_ = null;
|
|
92
84
|
if (this.hScroll) {
|
|
93
85
|
this.hScroll.dispose();
|
|
@@ -105,7 +97,7 @@ const ScrollbarPair = class {
|
|
|
105
97
|
*/
|
|
106
98
|
resize() {
|
|
107
99
|
// Look up the host metrics once, and use for both scrollbars.
|
|
108
|
-
const hostMetrics = this.
|
|
100
|
+
const hostMetrics = this.workspace.getMetrics();
|
|
109
101
|
if (!hostMetrics) {
|
|
110
102
|
// Host element is likely not visible.
|
|
111
103
|
return;
|
|
@@ -150,7 +142,7 @@ const ScrollbarPair = class {
|
|
|
150
142
|
} finally {
|
|
151
143
|
eventUtils.enable();
|
|
152
144
|
}
|
|
153
|
-
this.
|
|
145
|
+
this.workspace.maybeFireViewportChangeEvent();
|
|
154
146
|
}
|
|
155
147
|
|
|
156
148
|
if (this.hScroll && this.vScroll) {
|
|
@@ -173,17 +165,17 @@ const ScrollbarPair = class {
|
|
|
173
165
|
|
|
174
166
|
/**
|
|
175
167
|
* Returns whether scrolling horizontally is enabled.
|
|
176
|
-
* @return
|
|
168
|
+
* @return True if horizontal scroll is enabled.
|
|
177
169
|
*/
|
|
178
|
-
canScrollHorizontally() {
|
|
170
|
+
canScrollHorizontally(): boolean {
|
|
179
171
|
return !!this.hScroll;
|
|
180
172
|
}
|
|
181
173
|
|
|
182
174
|
/**
|
|
183
175
|
* Returns whether scrolling vertically is enabled.
|
|
184
|
-
* @return
|
|
176
|
+
* @return True if vertical scroll is enabled.
|
|
185
177
|
*/
|
|
186
|
-
canScrollVertically() {
|
|
178
|
+
canScrollVertically(): boolean {
|
|
187
179
|
return !!this.vScroll;
|
|
188
180
|
}
|
|
189
181
|
|
|
@@ -192,13 +184,11 @@ const ScrollbarPair = class {
|
|
|
192
184
|
* relative to the injection div origin. This is for times when the scrollbar
|
|
193
185
|
* is used in an object whose origin isn't the same as the main workspace
|
|
194
186
|
* (e.g. in a flyout.)
|
|
195
|
-
* @param
|
|
196
|
-
*
|
|
197
|
-
* @
|
|
198
|
-
* pixels.
|
|
199
|
-
* @package
|
|
187
|
+
* @param x The x coordinate of the scrollbar's origin, in CSS pixels.
|
|
188
|
+
* @param y The y coordinate of the scrollbar's origin, in CSS pixels.
|
|
189
|
+
* @internal
|
|
200
190
|
*/
|
|
201
|
-
setOrigin(x, y) {
|
|
191
|
+
setOrigin(x: number, y: number) {
|
|
202
192
|
if (this.hScroll) {
|
|
203
193
|
this.hScroll.setOrigin(x, y);
|
|
204
194
|
}
|
|
@@ -209,15 +199,13 @@ const ScrollbarPair = class {
|
|
|
209
199
|
|
|
210
200
|
/**
|
|
211
201
|
* Set the handles of both scrollbars.
|
|
212
|
-
* @param
|
|
213
|
-
*
|
|
214
|
-
* @param
|
|
215
|
-
*
|
|
216
|
-
* pixels.
|
|
217
|
-
* @param {boolean} updateMetrics Whether to update metrics on this set call.
|
|
202
|
+
* @param x The horizontal content displacement, relative to the view in
|
|
203
|
+
* pixels.
|
|
204
|
+
* @param y The vertical content displacement, relative to the view in pixels.
|
|
205
|
+
* @param updateMetrics Whether to update metrics on this set call.
|
|
218
206
|
* Defaults to true.
|
|
219
207
|
*/
|
|
220
|
-
set(x, y, updateMetrics) {
|
|
208
|
+
set(x: number, y: number, updateMetrics: boolean) {
|
|
221
209
|
// This function is equivalent to:
|
|
222
210
|
// this.hScroll.set(x);
|
|
223
211
|
// this.vScroll.set(y);
|
|
@@ -235,21 +223,27 @@ const ScrollbarPair = class {
|
|
|
235
223
|
// Update metrics.
|
|
236
224
|
const xyRatio = {};
|
|
237
225
|
if (this.hScroll) {
|
|
238
|
-
|
|
226
|
+
// AnyDuringMigration because: Property 'x' does not exist on type
|
|
227
|
+
// '{}'.
|
|
228
|
+
(xyRatio as AnyDuringMigration).x = this.hScroll.getRatio_();
|
|
239
229
|
}
|
|
240
230
|
if (this.vScroll) {
|
|
241
|
-
|
|
231
|
+
// AnyDuringMigration because: Property 'y' does not exist on type
|
|
232
|
+
// '{}'.
|
|
233
|
+
(xyRatio as AnyDuringMigration).y = this.vScroll.getRatio_();
|
|
242
234
|
}
|
|
243
|
-
|
|
235
|
+
// AnyDuringMigration because: Argument of type '{}' is not assignable to
|
|
236
|
+
// parameter of type '{ x: number; y: number; }'.
|
|
237
|
+
this.workspace.setMetrics(xyRatio as AnyDuringMigration);
|
|
244
238
|
}
|
|
245
239
|
}
|
|
246
240
|
|
|
247
241
|
/**
|
|
248
242
|
* Set the handle of the horizontal scrollbar to be at a certain position in
|
|
249
243
|
* CSS pixels relative to its parents.
|
|
250
|
-
* @param
|
|
244
|
+
* @param x Horizontal scroll value.
|
|
251
245
|
*/
|
|
252
|
-
setX(x) {
|
|
246
|
+
setX(x: number) {
|
|
253
247
|
if (this.hScroll) {
|
|
254
248
|
this.hScroll.set(x, true);
|
|
255
249
|
}
|
|
@@ -258,9 +252,9 @@ const ScrollbarPair = class {
|
|
|
258
252
|
/**
|
|
259
253
|
* Set the handle of the vertical scrollbar to be at a certain position in
|
|
260
254
|
* CSS pixels relative to its parents.
|
|
261
|
-
* @param
|
|
255
|
+
* @param y Vertical scroll value.
|
|
262
256
|
*/
|
|
263
|
-
setY(y) {
|
|
257
|
+
setY(y: number) {
|
|
264
258
|
if (this.vScroll) {
|
|
265
259
|
this.vScroll.set(y, true);
|
|
266
260
|
}
|
|
@@ -268,9 +262,9 @@ const ScrollbarPair = class {
|
|
|
268
262
|
|
|
269
263
|
/**
|
|
270
264
|
* Set whether this scrollbar's container is visible.
|
|
271
|
-
* @param
|
|
265
|
+
* @param visible Whether the container is visible.
|
|
272
266
|
*/
|
|
273
|
-
setContainerVisible(visible) {
|
|
267
|
+
setContainerVisible(visible: boolean) {
|
|
274
268
|
if (this.hScroll) {
|
|
275
269
|
this.hScroll.setContainerVisible(visible);
|
|
276
270
|
}
|
|
@@ -282,9 +276,9 @@ const ScrollbarPair = class {
|
|
|
282
276
|
/**
|
|
283
277
|
* If any of the scrollbars are visible. Non-paired scrollbars may disappear
|
|
284
278
|
* when they aren't needed.
|
|
285
|
-
* @return
|
|
279
|
+
* @return True if visible.
|
|
286
280
|
*/
|
|
287
|
-
isVisible() {
|
|
281
|
+
isVisible(): boolean {
|
|
288
282
|
let isVisible = false;
|
|
289
283
|
if (this.hScroll) {
|
|
290
284
|
isVisible = this.hScroll.isVisible();
|
|
@@ -298,10 +292,10 @@ const ScrollbarPair = class {
|
|
|
298
292
|
/**
|
|
299
293
|
* Recalculates the scrollbars' locations within their path and length.
|
|
300
294
|
* This should be called when the contents of the workspace have changed.
|
|
301
|
-
* @param
|
|
302
|
-
*
|
|
295
|
+
* @param hostMetrics A data structure describing all the required dimensions,
|
|
296
|
+
* possibly fetched from the host object.
|
|
303
297
|
*/
|
|
304
|
-
resizeContent(hostMetrics) {
|
|
298
|
+
resizeContent(hostMetrics: Metrics) {
|
|
305
299
|
if (this.hScroll) {
|
|
306
300
|
this.hScroll.resizeContentHorizontal(hostMetrics);
|
|
307
301
|
}
|
|
@@ -313,10 +307,10 @@ const ScrollbarPair = class {
|
|
|
313
307
|
/**
|
|
314
308
|
* Recalculates the scrollbars' locations on the screen and path length.
|
|
315
309
|
* This should be called when the layout or size of the window has changed.
|
|
316
|
-
* @param
|
|
317
|
-
*
|
|
310
|
+
* @param hostMetrics A data structure describing all the required dimensions,
|
|
311
|
+
* possibly fetched from the host object.
|
|
318
312
|
*/
|
|
319
|
-
resizeView(hostMetrics) {
|
|
313
|
+
resizeView(hostMetrics: Metrics) {
|
|
320
314
|
if (this.hScroll) {
|
|
321
315
|
this.hScroll.resizeViewHorizontal(hostMetrics);
|
|
322
316
|
}
|
|
@@ -324,6 +318,4 @@ const ScrollbarPair = class {
|
|
|
324
318
|
this.vScroll.resizeViewVertical(hostMetrics);
|
|
325
319
|
}
|
|
326
320
|
}
|
|
327
|
-
}
|
|
328
|
-
|
|
329
|
-
exports.ScrollbarPair = ScrollbarPair;
|
|
321
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
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 { Connection } from '../connection.js';
|
|
8
|
+
import type { Workspace } from '../workspace.js';
|
|
9
|
+
/**
|
|
10
|
+
* Represents the state of a connection.
|
|
11
|
+
* @alias Blockly.serialization.blocks.ConnectionState
|
|
12
|
+
*/
|
|
13
|
+
export interface ConnectionState {
|
|
14
|
+
shadow: State | undefined;
|
|
15
|
+
block: State | undefined;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Represents the state of a given block.
|
|
19
|
+
* @alias Blockly.serialization.blocks.State
|
|
20
|
+
*/
|
|
21
|
+
export interface State {
|
|
22
|
+
type: string;
|
|
23
|
+
id?: string;
|
|
24
|
+
x?: number;
|
|
25
|
+
y?: number;
|
|
26
|
+
collapsed?: boolean;
|
|
27
|
+
enabled?: boolean;
|
|
28
|
+
inline?: boolean;
|
|
29
|
+
data?: string;
|
|
30
|
+
extraState?: any;
|
|
31
|
+
icons?: {
|
|
32
|
+
[key: string]: any;
|
|
33
|
+
};
|
|
34
|
+
fields?: {
|
|
35
|
+
[key: string]: any;
|
|
36
|
+
};
|
|
37
|
+
inputs?: {
|
|
38
|
+
[key: string]: ConnectionState;
|
|
39
|
+
};
|
|
40
|
+
next?: ConnectionState;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Returns the state of the given block as a plain JavaScript object.
|
|
44
|
+
* @param block The block to serialize.
|
|
45
|
+
* @param param1 addCoordinates: If true, the coordinates of the block are added
|
|
46
|
+
* to the serialized state. False by default. addinputBlocks: If true,
|
|
47
|
+
* children of the block which are connected to inputs will be serialized.
|
|
48
|
+
* True by default. addNextBlocks: If true, children of the block which are
|
|
49
|
+
* connected to the block's next connection (if it exists) will be
|
|
50
|
+
* serialized. True by default. doFullSerialization: If true, fields that
|
|
51
|
+
* normally just save a reference to some external state (eg variables) will
|
|
52
|
+
* instead serialize all of the info about that state. This supports
|
|
53
|
+
* deserializing the block into a workspace where that state doesn't yet
|
|
54
|
+
* exist. True by default.
|
|
55
|
+
* @return The serialized state of the block, or null if the block could not be
|
|
56
|
+
* serialied (eg it was an insertion marker).
|
|
57
|
+
* @alias Blockly.serialization.blocks.save
|
|
58
|
+
*/
|
|
59
|
+
export declare function save(block: Block, { addCoordinates, addInputBlocks, addNextBlocks, doFullSerialization }?: {
|
|
60
|
+
addCoordinates?: boolean;
|
|
61
|
+
addInputBlocks?: boolean;
|
|
62
|
+
addNextBlocks?: boolean;
|
|
63
|
+
doFullSerialization?: boolean;
|
|
64
|
+
}): State | null;
|
|
65
|
+
/**
|
|
66
|
+
* Loads the block represented by the given state into the given workspace.
|
|
67
|
+
* @param state The state of a block to deserialize into the workspace.
|
|
68
|
+
* @param workspace The workspace to add the block to.
|
|
69
|
+
* @param param1 recordUndo: If true, events triggered by this function will be
|
|
70
|
+
* undo-able by the user. False by default.
|
|
71
|
+
* @return The block that was just loaded.
|
|
72
|
+
* @alias Blockly.serialization.blocks.append
|
|
73
|
+
*/
|
|
74
|
+
export declare function append(state: State, workspace: Workspace, { recordUndo }?: {
|
|
75
|
+
recordUndo?: boolean;
|
|
76
|
+
}): Block;
|
|
77
|
+
/**
|
|
78
|
+
* Loads the block represented by the given state into the given workspace.
|
|
79
|
+
* This is defined internally so that the extra parameters don't clutter our
|
|
80
|
+
* external API.
|
|
81
|
+
* But it is exported so that other places within Blockly can call it directly
|
|
82
|
+
* with the extra parameters.
|
|
83
|
+
* @param state The state of a block to deserialize into the workspace.
|
|
84
|
+
* @param workspace The workspace to add the block to.
|
|
85
|
+
* @param param1 parentConnection: If provided, the system will attempt to
|
|
86
|
+
* connect the block to this connection after it is created. Undefined by
|
|
87
|
+
* default. isShadow: If true, the block will be set to a shadow block after
|
|
88
|
+
* it is created. False by default. recordUndo: If true, events triggered by
|
|
89
|
+
* this function will be undo-able by the user. False by default.
|
|
90
|
+
* @return The block that was just appended.
|
|
91
|
+
* @alias Blockly.serialization.blocks.appendInternal
|
|
92
|
+
* @internal
|
|
93
|
+
*/
|
|
94
|
+
export declare function appendInternal(state: State, workspace: Workspace, { parentConnection, isShadow, recordUndo }?: {
|
|
95
|
+
parentConnection?: Connection;
|
|
96
|
+
isShadow?: boolean;
|
|
97
|
+
recordUndo?: boolean;
|
|
98
|
+
}): Block;
|