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
|
@@ -8,19 +8,19 @@
|
|
|
8
8
|
* @fileoverview The class representing a marker.
|
|
9
9
|
* Used primarily for keyboard navigation to show a marked location.
|
|
10
10
|
*/
|
|
11
|
-
'use strict';
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
13
|
* The class representing a marker.
|
|
15
14
|
* Used primarily for keyboard navigation to show a marked location.
|
|
16
15
|
* @class
|
|
17
16
|
*/
|
|
18
|
-
goog
|
|
17
|
+
import * as goog from '../../closure/goog/goog.js';
|
|
18
|
+
goog.declareModuleId('Blockly.Marker');
|
|
19
19
|
|
|
20
20
|
/* eslint-disable-next-line no-unused-vars */
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
import type {MarkerSvg} from '../renderers/common/marker_svg.js';
|
|
22
|
+
|
|
23
|
+
import type {ASTNode} from './ast_node.js';
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
/**
|
|
@@ -28,63 +28,50 @@ const {MarkerSvg} = goog.requireType('Blockly.blockRendering.MarkerSvg');
|
|
|
28
28
|
* This is used in keyboard navigation to save a location in the Blockly AST.
|
|
29
29
|
* @alias Blockly.Marker
|
|
30
30
|
*/
|
|
31
|
-
class Marker {
|
|
31
|
+
export class Marker {
|
|
32
|
+
/** The colour of the marker. */
|
|
33
|
+
colour: string|null = null;
|
|
34
|
+
|
|
35
|
+
/** The current location of the marker. */
|
|
36
|
+
// AnyDuringMigration because: Type 'null' is not assignable to type
|
|
37
|
+
// 'ASTNode'.
|
|
38
|
+
private curNode_: ASTNode = null as AnyDuringMigration;
|
|
39
|
+
|
|
32
40
|
/**
|
|
33
|
-
*
|
|
41
|
+
* The object in charge of drawing the visual representation of the current
|
|
42
|
+
* node.
|
|
34
43
|
*/
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
* @type {ASTNode}
|
|
45
|
-
* @private
|
|
46
|
-
*/
|
|
47
|
-
this.curNode_ = null;
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* The object in charge of drawing the visual representation of the current
|
|
51
|
-
* node.
|
|
52
|
-
* @type {MarkerSvg}
|
|
53
|
-
* @private
|
|
54
|
-
*/
|
|
55
|
-
this.drawer_ = null;
|
|
56
|
-
|
|
57
|
-
/**
|
|
58
|
-
* The type of the marker.
|
|
59
|
-
* @type {string}
|
|
60
|
-
*/
|
|
61
|
-
this.type = 'marker';
|
|
62
|
-
}
|
|
44
|
+
// AnyDuringMigration because: Type 'null' is not assignable to type
|
|
45
|
+
// 'MarkerSvg'.
|
|
46
|
+
private drawer_: MarkerSvg = null as AnyDuringMigration;
|
|
47
|
+
|
|
48
|
+
/** The type of the marker. */
|
|
49
|
+
type = 'marker';
|
|
50
|
+
|
|
51
|
+
/** Constructs a new Marker instance. */
|
|
52
|
+
constructor() {}
|
|
63
53
|
|
|
64
54
|
/**
|
|
65
55
|
* Sets the object in charge of drawing the marker.
|
|
66
|
-
* @param
|
|
67
|
-
* drawing the marker.
|
|
56
|
+
* @param drawer The object in charge of drawing the marker.
|
|
68
57
|
*/
|
|
69
|
-
setDrawer(drawer) {
|
|
58
|
+
setDrawer(drawer: MarkerSvg) {
|
|
70
59
|
this.drawer_ = drawer;
|
|
71
60
|
}
|
|
72
61
|
|
|
73
62
|
/**
|
|
74
63
|
* Get the current drawer for the marker.
|
|
75
|
-
* @return
|
|
76
|
-
* the marker.
|
|
64
|
+
* @return The object in charge of drawing the marker.
|
|
77
65
|
*/
|
|
78
|
-
getDrawer() {
|
|
66
|
+
getDrawer(): MarkerSvg {
|
|
79
67
|
return this.drawer_;
|
|
80
68
|
}
|
|
81
69
|
|
|
82
70
|
/**
|
|
83
71
|
* Gets the current location of the marker.
|
|
84
|
-
* @return
|
|
85
|
-
* is on.
|
|
72
|
+
* @return The current field, connection, or block the marker is on.
|
|
86
73
|
*/
|
|
87
|
-
getCurNode() {
|
|
74
|
+
getCurNode(): ASTNode {
|
|
88
75
|
return this.curNode_;
|
|
89
76
|
}
|
|
90
77
|
|
|
@@ -92,9 +79,9 @@ class Marker {
|
|
|
92
79
|
* Set the location of the marker and call the update method.
|
|
93
80
|
* Setting isStack to true will only work if the newLocation is the top most
|
|
94
81
|
* output or previous connection on a stack.
|
|
95
|
-
* @param
|
|
82
|
+
* @param newNode The new location of the marker.
|
|
96
83
|
*/
|
|
97
|
-
setCurNode(newNode) {
|
|
84
|
+
setCurNode(newNode: ASTNode) {
|
|
98
85
|
const oldNode = this.curNode_;
|
|
99
86
|
this.curNode_ = newNode;
|
|
100
87
|
if (this.drawer_) {
|
|
@@ -104,7 +91,7 @@ class Marker {
|
|
|
104
91
|
|
|
105
92
|
/**
|
|
106
93
|
* Redraw the current marker.
|
|
107
|
-
* @
|
|
94
|
+
* @internal
|
|
108
95
|
*/
|
|
109
96
|
draw() {
|
|
110
97
|
if (this.drawer_) {
|
|
@@ -112,23 +99,17 @@ class Marker {
|
|
|
112
99
|
}
|
|
113
100
|
}
|
|
114
101
|
|
|
115
|
-
/**
|
|
116
|
-
* Hide the marker SVG.
|
|
117
|
-
*/
|
|
102
|
+
/** Hide the marker SVG. */
|
|
118
103
|
hide() {
|
|
119
104
|
if (this.drawer_) {
|
|
120
105
|
this.drawer_.hide();
|
|
121
106
|
}
|
|
122
107
|
}
|
|
123
108
|
|
|
124
|
-
/**
|
|
125
|
-
* Dispose of this marker.
|
|
126
|
-
*/
|
|
109
|
+
/** Dispose of this marker. */
|
|
127
110
|
dispose() {
|
|
128
111
|
if (this.getDrawer()) {
|
|
129
112
|
this.getDrawer().dispose();
|
|
130
113
|
}
|
|
131
114
|
}
|
|
132
115
|
}
|
|
133
|
-
|
|
134
|
-
exports.Marker = Marker;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2019 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ASTNode } from './ast_node.js';
|
|
7
|
+
import { BasicCursor } from './basic_cursor.js';
|
|
8
|
+
/**
|
|
9
|
+
* A cursor for navigating between tab navigable fields.
|
|
10
|
+
* @alias Blockly.TabNavigateCursor
|
|
11
|
+
*/
|
|
12
|
+
export declare class TabNavigateCursor extends BasicCursor {
|
|
13
|
+
/**
|
|
14
|
+
* Skip all nodes except for tab navigable fields.
|
|
15
|
+
* @param node The AST node to check whether it is valid.
|
|
16
|
+
* @return True if the node should be visited, false otherwise.
|
|
17
|
+
*/
|
|
18
|
+
validNode_(node: ASTNode | null): boolean;
|
|
19
|
+
}
|
|
@@ -8,38 +8,36 @@
|
|
|
8
8
|
* @fileoverview The class representing a cursor that is used to navigate
|
|
9
9
|
* between tab navigable fields.
|
|
10
10
|
*/
|
|
11
|
-
'use strict';
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
13
|
* The class representing a cursor that is used to navigate
|
|
15
14
|
* between tab navigable fields.
|
|
16
15
|
* @class
|
|
17
16
|
*/
|
|
18
|
-
goog
|
|
17
|
+
import * as goog from '../../closure/goog/goog.js';
|
|
18
|
+
goog.declareModuleId('Blockly.TabNavigateCursor');
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
import type {Field} from '../field.js';
|
|
21
|
+
|
|
22
|
+
import {ASTNode} from './ast_node.js';
|
|
23
|
+
import {BasicCursor} from './basic_cursor.js';
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
/**
|
|
27
27
|
* A cursor for navigating between tab navigable fields.
|
|
28
|
-
* @extends {BasicCursor}
|
|
29
28
|
* @alias Blockly.TabNavigateCursor
|
|
30
29
|
*/
|
|
31
|
-
class TabNavigateCursor extends BasicCursor {
|
|
30
|
+
export class TabNavigateCursor extends BasicCursor {
|
|
32
31
|
/**
|
|
33
32
|
* Skip all nodes except for tab navigable fields.
|
|
34
|
-
* @param
|
|
35
|
-
* @return
|
|
36
|
-
* @override
|
|
33
|
+
* @param node The AST node to check whether it is valid.
|
|
34
|
+
* @return True if the node should be visited, false otherwise.
|
|
37
35
|
*/
|
|
38
|
-
validNode_(node) {
|
|
36
|
+
override validNode_(node: ASTNode|null): boolean {
|
|
39
37
|
let isValid = false;
|
|
40
38
|
const type = node && node.getType();
|
|
41
39
|
if (node) {
|
|
42
|
-
const location =
|
|
40
|
+
const location = node.getLocation() as Field;
|
|
43
41
|
if (type === ASTNode.types.FIELD && location &&
|
|
44
42
|
location.isTabNavigable() && location.isClickable()) {
|
|
45
43
|
isValid = true;
|
|
@@ -48,5 +46,3 @@ class TabNavigateCursor extends BasicCursor {
|
|
|
48
46
|
return isValid;
|
|
49
47
|
}
|
|
50
48
|
}
|
|
51
|
-
|
|
52
|
-
exports.TabNavigateCursor = TabNavigateCursor;
|
package/core/main.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
declare const Blockly: any;
|
|
2
|
+
declare const ContextMenu: any;
|
|
3
|
+
declare const Events: any;
|
|
4
|
+
declare const Msg: any;
|
|
5
|
+
declare const Tooltip: any;
|
|
6
|
+
declare const WidgetDiv: any;
|
|
7
|
+
declare const colour: any;
|
|
8
|
+
declare const common: any;
|
|
9
|
+
declare const deprecation: any;
|
|
10
|
+
declare const dialog: any;
|
|
11
|
+
declare const eventUtils: any;
|
package/core/main.js
ADDED
|
@@ -0,0 +1,303 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @fileoverview The entrypoint for blockly_compressed.js. Provides
|
|
9
|
+
* various backwards-compatibility hacks. Not used when loading
|
|
10
|
+
* in uncompiled (uncompressed) mode via bootstrap.js.
|
|
11
|
+
*/
|
|
12
|
+
'use strict';
|
|
13
|
+
|
|
14
|
+
goog.module('Blockly.main');
|
|
15
|
+
|
|
16
|
+
const Blockly = goog.require('Blockly');
|
|
17
|
+
const ContextMenu = goog.require('Blockly.ContextMenu');
|
|
18
|
+
const Events = goog.require('Blockly.Events');
|
|
19
|
+
const Msg = goog.require('Blockly.Msg');
|
|
20
|
+
const Tooltip = goog.require('Blockly.Tooltip');
|
|
21
|
+
const WidgetDiv = goog.require('Blockly.WidgetDiv');
|
|
22
|
+
const colour = goog.require('Blockly.utils.colour');
|
|
23
|
+
const common = goog.require('Blockly.common');
|
|
24
|
+
const deprecation = goog.require('Blockly.utils.deprecation');
|
|
25
|
+
const dialog = goog.require('Blockly.dialog');
|
|
26
|
+
const eventUtils = goog.require('Blockly.Events.utils');
|
|
27
|
+
|
|
28
|
+
/*
|
|
29
|
+
* Aliased functions and properties that used to be on the Blockly namespace.
|
|
30
|
+
* Everything in this section is deprecated. Both external and internal code
|
|
31
|
+
* should avoid using these functions and use the designated replacements.
|
|
32
|
+
* Everything in this section will be removed in a future version of Blockly.
|
|
33
|
+
*/
|
|
34
|
+
|
|
35
|
+
// Add accessors for properties on Blockly that have now been deprecated.
|
|
36
|
+
Object.defineProperties(Blockly, {
|
|
37
|
+
/**
|
|
38
|
+
* Wrapper to window.alert() that app developers may override to
|
|
39
|
+
* provide alternatives to the modal browser window.
|
|
40
|
+
* @name Blockly.alert
|
|
41
|
+
* @type {!function(string, function()=)}
|
|
42
|
+
* @deprecated Use Blockly.dialog.alert / .setAlert() instead.
|
|
43
|
+
* (December 2021)
|
|
44
|
+
* @suppress {checkTypes}
|
|
45
|
+
*/
|
|
46
|
+
alert: {
|
|
47
|
+
set: function(newAlert) {
|
|
48
|
+
deprecation.warn('Blockly.alert', 'December 2021', 'December 2022');
|
|
49
|
+
dialog.setAlert(newAlert);
|
|
50
|
+
},
|
|
51
|
+
get: function() {
|
|
52
|
+
deprecation.warn(
|
|
53
|
+
'Blockly.alert', 'December 2021', 'December 2022',
|
|
54
|
+
'Blockly.dialog.alert()');
|
|
55
|
+
return dialog.alert;
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
/**
|
|
59
|
+
* Wrapper to window.confirm() that app developers may override to
|
|
60
|
+
* provide alternatives to the modal browser window.
|
|
61
|
+
* @name Blockly.confirm
|
|
62
|
+
* @type {!function(string, function()=)}
|
|
63
|
+
* @deprecated Use Blockly.dialog.confirm / .setConfirm() instead.
|
|
64
|
+
* (December 2021)
|
|
65
|
+
* @suppress {checkTypes}
|
|
66
|
+
*/
|
|
67
|
+
confirm: {
|
|
68
|
+
set: function(newConfirm) {
|
|
69
|
+
deprecation.warn('Blockly.confirm', 'December 2021', 'December 2022');
|
|
70
|
+
dialog.setConfirm(newConfirm);
|
|
71
|
+
},
|
|
72
|
+
get: function() {
|
|
73
|
+
deprecation.warn(
|
|
74
|
+
'Blockly.confirm', 'December 2021', 'December 2022',
|
|
75
|
+
'Blockly.dialog.confirm()');
|
|
76
|
+
return dialog.confirm;
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
/**
|
|
80
|
+
* The main workspace most recently used.
|
|
81
|
+
* Set by Blockly.WorkspaceSvg.prototype.markFocused
|
|
82
|
+
* @name Blockly.mainWorkspace
|
|
83
|
+
* @type {Workspace}
|
|
84
|
+
* @suppress {checkTypes}
|
|
85
|
+
*/
|
|
86
|
+
mainWorkspace: {
|
|
87
|
+
set: function(x) {
|
|
88
|
+
deprecation.warn(
|
|
89
|
+
'Blockly.mainWorkspace', 'August 2022', 'September 2022',
|
|
90
|
+
'Blockly.getMainWorkspace');
|
|
91
|
+
common.setMainWorkspace(x);
|
|
92
|
+
},
|
|
93
|
+
get: function() {
|
|
94
|
+
deprecation.warn(
|
|
95
|
+
'Blockly.mainWorkspace', 'August 2022', 'September 2022',
|
|
96
|
+
'Blockly.getMainWorkspace');
|
|
97
|
+
return common.getMainWorkspace();
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
/**
|
|
101
|
+
* Wrapper to window.prompt() that app developers may override to
|
|
102
|
+
* provide alternatives to the modal browser window. Built-in
|
|
103
|
+
* browser prompts are often used for better text input experience
|
|
104
|
+
* on mobile device. We strongly recommend testing mobile when
|
|
105
|
+
* overriding this.
|
|
106
|
+
* @name Blockly.prompt
|
|
107
|
+
* @type {!function(string, string, function()=)}
|
|
108
|
+
* @deprecated Use Blockly.dialog.prompt / .setPrompt() instead.
|
|
109
|
+
* (December 2021)
|
|
110
|
+
* @suppress {checkTypes}
|
|
111
|
+
*/
|
|
112
|
+
prompt: {
|
|
113
|
+
set: function(newPrompt) {
|
|
114
|
+
deprecation.warn('Blockly.prompt', 'December 2021', 'December 2022');
|
|
115
|
+
dialog.setPrompt(newPrompt);
|
|
116
|
+
},
|
|
117
|
+
get: function() {
|
|
118
|
+
deprecation.warn(
|
|
119
|
+
'Blockly.prompt', 'December 2021', 'December 2022',
|
|
120
|
+
'Blockly.dialog.prompt()');
|
|
121
|
+
return dialog.prompt;
|
|
122
|
+
},
|
|
123
|
+
},
|
|
124
|
+
/**
|
|
125
|
+
* Currently selected block.
|
|
126
|
+
* @name Blockly.selected
|
|
127
|
+
* @type {?ICopyable}
|
|
128
|
+
* @suppress {checkTypes}
|
|
129
|
+
*/
|
|
130
|
+
selected: {
|
|
131
|
+
get: function() {
|
|
132
|
+
deprecation.warn(
|
|
133
|
+
'Blockly.selected', 'August 2022', 'September 2022',
|
|
134
|
+
'Blockly.getSelected');
|
|
135
|
+
return common.getSelected();
|
|
136
|
+
},
|
|
137
|
+
set: function(newSelection) {
|
|
138
|
+
deprecation.warn(
|
|
139
|
+
'Blockly.selected', 'August 2022', 'September 2022',
|
|
140
|
+
'Blockly.getSelected');
|
|
141
|
+
common.setSelected(newSelection);
|
|
142
|
+
},
|
|
143
|
+
},
|
|
144
|
+
/**
|
|
145
|
+
* The richness of block colours, regardless of the hue.
|
|
146
|
+
* Must be in the range of 0 (inclusive) to 1 (exclusive).
|
|
147
|
+
* @name Blockly.HSV_SATURATION
|
|
148
|
+
* @type {number}
|
|
149
|
+
* @suppress {checkTypes}
|
|
150
|
+
*/
|
|
151
|
+
HSV_SATURATION: {
|
|
152
|
+
get: function() {
|
|
153
|
+
return colour.getHsvSaturation();
|
|
154
|
+
},
|
|
155
|
+
set: function(newValue) {
|
|
156
|
+
colour.setHsvSaturation(newValue);
|
|
157
|
+
},
|
|
158
|
+
},
|
|
159
|
+
/**
|
|
160
|
+
* The intensity of block colours, regardless of the hue.
|
|
161
|
+
* Must be in the range of 0 (inclusive) to 1 (exclusive).
|
|
162
|
+
* @name Blockly.HSV_VALUE
|
|
163
|
+
* @type {number}
|
|
164
|
+
* @suppress {checkTypes}
|
|
165
|
+
*/
|
|
166
|
+
HSV_VALUE: {
|
|
167
|
+
get: function() {
|
|
168
|
+
return colour.getHsvValue();
|
|
169
|
+
},
|
|
170
|
+
set: function(newValue) {
|
|
171
|
+
colour.setHsvValue(newValue);
|
|
172
|
+
},
|
|
173
|
+
},
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
// Add accessors for properties on Blockly.ContextMenu that have now
|
|
177
|
+
// been deprecated.
|
|
178
|
+
Object.defineProperties(ContextMenu, {
|
|
179
|
+
/**
|
|
180
|
+
* Which block is the context menu attached to?
|
|
181
|
+
* @name Blockly.ContextMenu.currentBlock
|
|
182
|
+
* @type {Block}
|
|
183
|
+
* @deprecated Use Blockly.Tooltip.getCurrentBlock() /
|
|
184
|
+
* .setCurrentBlock() instead. (September 2021)
|
|
185
|
+
* @suppress {checkTypes}
|
|
186
|
+
*/
|
|
187
|
+
currentBlock: {
|
|
188
|
+
get: function() {
|
|
189
|
+
deprecation.warn(
|
|
190
|
+
'Blockly.ContextMenu.currentBlock', 'September 2021',
|
|
191
|
+
'September 2022', 'Blockly.Tooltip.getCurrentBlock()');
|
|
192
|
+
return ContextMenu.getCurrentBlock();
|
|
193
|
+
},
|
|
194
|
+
set: function(block) {
|
|
195
|
+
deprecation.warn(
|
|
196
|
+
'Blockly.ContextMenu.currentBlock', 'September 2021',
|
|
197
|
+
'September 2022', 'Blockly.Tooltip.setCurrentBlock(block)');
|
|
198
|
+
ContextMenu.setCurrentBlock(block);
|
|
199
|
+
},
|
|
200
|
+
},
|
|
201
|
+
});
|
|
202
|
+
|
|
203
|
+
// Add accessors for properties on Blockly.Events that have now been
|
|
204
|
+
// deprecated.
|
|
205
|
+
Object.defineProperties(Events, {
|
|
206
|
+
/**
|
|
207
|
+
* Sets whether the next event should be added to the undo stack.
|
|
208
|
+
* @name Blockly.Evenents.recordUndo
|
|
209
|
+
* @type {boolean}
|
|
210
|
+
* @deprecated Use Blockly.Events.getRecordUndo() and
|
|
211
|
+
* .setRecordUndo(). (September 2021)
|
|
212
|
+
* @suppress {checkTypes}
|
|
213
|
+
*/
|
|
214
|
+
recordUndo: {
|
|
215
|
+
get: function() {
|
|
216
|
+
deprecation.warn(
|
|
217
|
+
'Blockly.Events.recordUndo', 'September 2021', 'September 2022',
|
|
218
|
+
'Blockly.Events.getRecordUndo()');
|
|
219
|
+
return eventUtils.getRecordUndo();
|
|
220
|
+
},
|
|
221
|
+
set: function(record) {
|
|
222
|
+
deprecation.warn(
|
|
223
|
+
'Blockly.Events.recordUndo', 'September 2021', 'September 2022',
|
|
224
|
+
'Blockly.Events.setRecordUndo()');
|
|
225
|
+
eventUtils.setRecordUndo(record);
|
|
226
|
+
},
|
|
227
|
+
},
|
|
228
|
+
});
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
// Add accessors for properties on Blockly.Tooltip that have now been
|
|
232
|
+
// deprecated.
|
|
233
|
+
Object.defineProperties(Tooltip, {
|
|
234
|
+
/**
|
|
235
|
+
* Is a tooltip currently showing?
|
|
236
|
+
* @name Blockly.Tooltip.visible
|
|
237
|
+
* @type {boolean}
|
|
238
|
+
* @deprecated Use Blockly.Tooltip.isVisible() instead. (September
|
|
239
|
+
* 2021)
|
|
240
|
+
* @suppress {checkTypes}
|
|
241
|
+
*/
|
|
242
|
+
visible: {
|
|
243
|
+
get: function() {
|
|
244
|
+
deprecation.warn(
|
|
245
|
+
'Blockly.Tooltip.visible', 'September 2021', 'September 2022',
|
|
246
|
+
'Blockly.Tooltip.isVisible()');
|
|
247
|
+
return Tooltip.isVisible();
|
|
248
|
+
},
|
|
249
|
+
},
|
|
250
|
+
/**
|
|
251
|
+
* The HTML container. Set once by createDom.
|
|
252
|
+
* @name Blockly.Tooltip.DIV
|
|
253
|
+
* @type {HTMLDivElement}
|
|
254
|
+
* @deprecated Use Blockly.Tooltip.getDiv() and .setDiv().
|
|
255
|
+
* (September 2021)
|
|
256
|
+
* @suppress {checkTypes}
|
|
257
|
+
*/
|
|
258
|
+
DIV: {
|
|
259
|
+
get: function() {
|
|
260
|
+
deprecation.warn(
|
|
261
|
+
'Blockly.Tooltip.DIV', 'September 2021', 'September 2022',
|
|
262
|
+
'Blockly.Tooltip.getDiv()');
|
|
263
|
+
return Tooltip.getDiv();
|
|
264
|
+
},
|
|
265
|
+
},
|
|
266
|
+
});
|
|
267
|
+
|
|
268
|
+
// Add accessors for properties on Blockly.WidgetDiv that have now been
|
|
269
|
+
// deprecated.
|
|
270
|
+
Object.defineProperties(WidgetDiv, {
|
|
271
|
+
/**
|
|
272
|
+
* The HTML container for popup overlays (e.g. editor widgets).
|
|
273
|
+
* @name Blockly.WidgetDiv.DIV
|
|
274
|
+
* @type {?Element}
|
|
275
|
+
* @deprecated Use Blockly.WidgetDiv.getDiv() and .setDiv().
|
|
276
|
+
* (September 2021)
|
|
277
|
+
* @suppress {checkTypes}
|
|
278
|
+
*/
|
|
279
|
+
DIV: {
|
|
280
|
+
get: function() {
|
|
281
|
+
deprecation.warn(
|
|
282
|
+
'Blockly.WidgetDiv.DIV', 'September 2021', 'September 2022',
|
|
283
|
+
'Blockly.WidgetDiv.getDiv()');
|
|
284
|
+
return WidgetDiv.getDiv();
|
|
285
|
+
},
|
|
286
|
+
},
|
|
287
|
+
});
|
|
288
|
+
|
|
289
|
+
// If Blockly is compiled with ADVANCED_COMPILATION and/or loaded as a
|
|
290
|
+
// CJS or ES module there will not be a Blockly global variable
|
|
291
|
+
// created. This can cause problems because a very common way of
|
|
292
|
+
// loading translations is to use a <script> tag to load one of
|
|
293
|
+
// msg/js/*.js, which consists of lines like:
|
|
294
|
+
//
|
|
295
|
+
// Blockly.Msg["ADD_COMMENT"] = "Add Comment";
|
|
296
|
+
// Blockly.Msg["CLEAN_UP"] = "Clean up Blocks";
|
|
297
|
+
//
|
|
298
|
+
// This obviously only works if Blockly.Msg is the Msg export from the
|
|
299
|
+
// Blockly.Msg module - so make sure it is, but only if there is not
|
|
300
|
+
// yet a Blockly global variable.
|
|
301
|
+
if (!('Blockly' in globalThis)) {
|
|
302
|
+
globalThis['Blockly'] = {'Msg': Msg};
|
|
303
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2019 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { Cursor } from './keyboard_nav/cursor.js';
|
|
7
|
+
import type { Marker } from './keyboard_nav/marker.js';
|
|
8
|
+
import type { WorkspaceSvg } from './workspace_svg.js';
|
|
9
|
+
/**
|
|
10
|
+
* Class to manage the multiple markers and the cursor on a workspace.
|
|
11
|
+
* @alias Blockly.MarkerManager
|
|
12
|
+
*/
|
|
13
|
+
export declare class MarkerManager {
|
|
14
|
+
private readonly workspace;
|
|
15
|
+
/** The name of the local marker. */
|
|
16
|
+
static readonly LOCAL_MARKER = "local_marker_1";
|
|
17
|
+
/** The cursor. */
|
|
18
|
+
private cursor_;
|
|
19
|
+
/** The cursor's SVG element. */
|
|
20
|
+
private cursorSvg_;
|
|
21
|
+
/** The map of markers for the workspace. */
|
|
22
|
+
private markers;
|
|
23
|
+
/** The marker's SVG element. */
|
|
24
|
+
private markerSvg_;
|
|
25
|
+
/**
|
|
26
|
+
* @param workspace The workspace for the marker manager.
|
|
27
|
+
* @internal
|
|
28
|
+
*/
|
|
29
|
+
constructor(workspace: WorkspaceSvg);
|
|
30
|
+
/**
|
|
31
|
+
* Register the marker by adding it to the map of markers.
|
|
32
|
+
* @param id A unique identifier for the marker.
|
|
33
|
+
* @param marker The marker to register.
|
|
34
|
+
*/
|
|
35
|
+
registerMarker(id: string, marker: Marker): void;
|
|
36
|
+
/**
|
|
37
|
+
* Unregister the marker by removing it from the map of markers.
|
|
38
|
+
* @param id The ID of the marker to unregister.
|
|
39
|
+
*/
|
|
40
|
+
unregisterMarker(id: string): void;
|
|
41
|
+
/**
|
|
42
|
+
* Get the cursor for the workspace.
|
|
43
|
+
* @return The cursor for this workspace.
|
|
44
|
+
*/
|
|
45
|
+
getCursor(): Cursor | null;
|
|
46
|
+
/**
|
|
47
|
+
* Get a single marker that corresponds to the given ID.
|
|
48
|
+
* @param id A unique identifier for the marker.
|
|
49
|
+
* @return The marker that corresponds to the given ID, or null if none
|
|
50
|
+
* exists.
|
|
51
|
+
*/
|
|
52
|
+
getMarker(id: string): Marker | null;
|
|
53
|
+
/**
|
|
54
|
+
* Sets the cursor and initializes the drawer for use with keyboard
|
|
55
|
+
* navigation.
|
|
56
|
+
* @param cursor The cursor used to move around this workspace.
|
|
57
|
+
*/
|
|
58
|
+
setCursor(cursor: Cursor): void;
|
|
59
|
+
/**
|
|
60
|
+
* Add the cursor SVG to this workspace SVG group.
|
|
61
|
+
* @param cursorSvg The SVG root of the cursor to be added to the workspace
|
|
62
|
+
* SVG group.
|
|
63
|
+
* @internal
|
|
64
|
+
*/
|
|
65
|
+
setCursorSvg(cursorSvg: SVGElement | null): void;
|
|
66
|
+
/**
|
|
67
|
+
* Add the marker SVG to this workspaces SVG group.
|
|
68
|
+
* @param markerSvg The SVG root of the marker to be added to the workspace
|
|
69
|
+
* SVG group.
|
|
70
|
+
* @internal
|
|
71
|
+
*/
|
|
72
|
+
setMarkerSvg(markerSvg: SVGElement | null): void;
|
|
73
|
+
/**
|
|
74
|
+
* Redraw the attached cursor SVG if needed.
|
|
75
|
+
* @internal
|
|
76
|
+
*/
|
|
77
|
+
updateMarkers(): void;
|
|
78
|
+
/**
|
|
79
|
+
* Dispose of the marker manager.
|
|
80
|
+
* Go through and delete all markers associated with this marker manager.
|
|
81
|
+
* @suppress {checkTypes}
|
|
82
|
+
* @internal
|
|
83
|
+
*/
|
|
84
|
+
dispose(): void;
|
|
85
|
+
}
|