blockly 8.20220331.0-beta.0 → 9.0.0-beta.1
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 +2000 -2269
- package/blockly_compressed.js +1495 -1994
- package/blockly_compressed.js.map +1 -1
- package/blocks.d.ts +10 -8
- package/blocks_compressed.js +189 -171
- package/blocks_compressed.js.map +1 -1
- package/closure/goog/base.d.ts +2 -0
- package/closure/goog/base_minimal.d.ts +19 -0
- package/closure/goog/goog.d.ts +26 -0
- package/core/any_aliases.d.ts +2 -0
- package/core/block.d.ts +871 -0
- package/core/block_animations.d.ts +38 -0
- package/core/block_drag_surface.d.ts +124 -0
- package/core/block_dragger.d.ts +158 -0
- package/core/block_svg.d.ts +656 -0
- package/core/blockly.d.ts +583 -0
- package/core/blockly_options.d.ts +71 -0
- package/core/blocks.d.ts +19 -0
- package/core/browser_events.d.ts +94 -0
- package/core/bubble.d.ts +309 -0
- package/core/bubble_dragger.d.ts +80 -0
- package/core/bump_objects.d.ts +38 -0
- package/core/clipboard.d.ts +46 -0
- package/core/comment.d.ts +123 -0
- package/core/common.d.ts +155 -0
- package/core/component_manager.d.ts +101 -0
- package/core/config.d.ts +24 -0
- package/core/connection.d.ts +262 -0
- package/core/connection_checker.d.ts +87 -0
- package/core/connection_db.d.ts +102 -0
- package/core/connection_type.d.ts +17 -0
- package/core/constants.d.ts +18 -0
- package/core/contextmenu.d.ts +90 -0
- package/core/contextmenu_items.d.ts +92 -0
- package/core/contextmenu_registry.d.ts +110 -0
- package/core/css.d.ts +27 -0
- package/core/delete_area.d.ts +51 -0
- package/core/dialog.d.ts +68 -0
- package/core/drag_target.d.ts +71 -0
- package/core/dropdowndiv.d.ts +187 -0
- package/core/events/events.d.ts +103 -0
- package/core/events/events_abstract.d.ts +58 -0
- package/core/events/events_block_base.d.ts +35 -0
- package/core/events/events_block_change.d.ts +62 -0
- package/core/events/events_block_create.d.ts +40 -0
- package/core/events/events_block_delete.d.ts +41 -0
- package/core/events/events_block_drag.d.ts +40 -0
- package/core/events/events_block_move.d.ts +58 -0
- package/core/events/events_bubble_open.d.ts +39 -0
- package/core/events/events_click.d.ts +40 -0
- package/core/events/events_comment_base.d.ts +44 -0
- package/core/events/events_comment_change.d.ts +49 -0
- package/core/events/events_comment_create.d.ts +40 -0
- package/core/events/events_comment_delete.d.ts +40 -0
- package/core/events/events_comment_move.d.ts +62 -0
- package/core/events/events_marker_move.d.ts +44 -0
- package/core/events/events_selected.d.ts +38 -0
- package/core/events/events_theme_change.d.ts +34 -0
- package/core/events/events_toolbox_item_select.d.ts +38 -0
- package/core/events/events_trashcan_open.d.ts +35 -0
- package/core/events/events_ui.d.ts +41 -0
- package/core/events/events_ui_base.d.ts +28 -0
- package/core/events/events_var_base.d.ts +35 -0
- package/core/events/events_var_create.d.ts +40 -0
- package/core/events/events_var_delete.d.ts +40 -0
- package/core/events/events_var_rename.d.ts +41 -0
- package/core/events/events_viewport.d.ts +43 -0
- package/core/events/utils.d.ts +315 -0
- package/core/events/workspace_events.d.ts +40 -0
- package/core/extensions.d.ts +117 -0
- package/core/field.d.ts +593 -0
- package/core/field_angle.d.ts +187 -0
- package/core/field_checkbox.d.ts +137 -0
- package/core/field_colour.d.ts +216 -0
- package/core/field_dropdown.d.ts +242 -0
- package/core/field_image.d.ts +145 -0
- package/core/field_label.d.ts +77 -0
- package/core/field_label_serializable.d.ts +45 -0
- package/core/field_multilineinput.d.ts +161 -0
- package/core/field_number.d.ts +172 -0
- package/core/field_registry.d.ts +51 -0
- package/core/field_textinput.d.ts +239 -0
- package/core/field_variable.d.ts +240 -0
- package/core/flyout_base.d.ts +505 -0
- package/core/flyout_button.d.ts +88 -0
- package/core/flyout_horizontal.d.ts +90 -0
- package/core/flyout_metrics_manager.d.ts +43 -0
- package/core/flyout_vertical.d.ts +91 -0
- package/core/generator.d.ts +224 -0
- package/core/gesture.d.ts +392 -0
- package/core/grid.d.ts +87 -0
- package/core/icon.d.ts +87 -0
- package/core/inject.d.ts +17 -0
- package/core/input.d.ts +143 -0
- package/core/input_types.d.ts +16 -0
- package/core/insertion_marker_manager.d.ts +230 -0
- package/core/interfaces/i_ast_node_location.d.ts +13 -0
- package/core/interfaces/i_ast_node_location_svg.d.ts +26 -0
- package/core/interfaces/i_ast_node_location_with_block.d.ts +21 -0
- package/core/interfaces/i_autohideable.d.ts +21 -0
- package/core/interfaces/i_block_dragger.d.ts +49 -0
- package/core/interfaces/i_bounded_element.d.ts +28 -0
- package/core/interfaces/i_bubble.d.ts +68 -0
- package/core/interfaces/i_collapsible_toolbox_item.d.ts +30 -0
- package/core/interfaces/i_component.d.ts +19 -0
- package/core/interfaces/i_connection_checker.d.ts +77 -0
- package/core/interfaces/i_contextmenu.d.ts +15 -0
- package/core/interfaces/i_copyable.d.ts +26 -0
- package/core/interfaces/i_deletable.d.ts +19 -0
- package/core/interfaces/i_delete_area.d.ts +28 -0
- package/core/interfaces/i_drag_target.d.ts +61 -0
- package/core/interfaces/i_draggable.d.ts +14 -0
- package/core/interfaces/i_flyout.d.ts +150 -0
- package/core/interfaces/i_keyboard_accessible.d.ts +21 -0
- package/core/interfaces/i_metrics_manager.d.ts +129 -0
- package/core/interfaces/i_movable.d.ts +19 -0
- package/core/interfaces/i_positionable.d.ts +31 -0
- package/core/interfaces/i_registrable.d.ts +13 -0
- package/core/interfaces/i_registrable_field.d.ts +19 -0
- package/core/interfaces/i_selectable.d.ts +20 -0
- package/core/interfaces/i_selectable_toolbox_item.d.ts +49 -0
- package/core/interfaces/i_serializer.d.ts +47 -0
- package/core/interfaces/i_styleable.d.ts +25 -0
- package/core/interfaces/i_toolbox.d.ts +96 -0
- package/core/interfaces/i_toolbox_item.d.ts +72 -0
- package/core/internal_constants.d.ts +46 -0
- package/core/keyboard_nav/ast_node.d.ts +266 -0
- package/core/keyboard_nav/basic_cursor.d.ts +99 -0
- package/core/keyboard_nav/cursor.d.ts +47 -0
- package/core/keyboard_nav/marker.d.ts +65 -0
- package/core/keyboard_nav/tab_navigate_cursor.d.ts +22 -0
- package/core/main.d.ts +12 -0
- package/core/marker_manager.d.ts +96 -0
- package/core/menu.d.ts +167 -0
- package/core/menuitem.d.ts +133 -0
- package/core/metrics_manager.d.ts +216 -0
- package/core/msg.d.ts +10 -0
- package/core/mutator.d.ts +140 -0
- package/core/names.d.ts +136 -0
- package/core/options.d.ts +143 -0
- package/core/positionable_helpers.d.ts +96 -0
- package/core/procedures.d.ts +125 -0
- package/core/registry.d.ts +148 -0
- package/core/rendered_connection.d.ts +212 -0
- package/core/renderers/common/block_rendering.d.ts +121 -0
- package/core/renderers/common/constants.d.ts +490 -0
- package/core/renderers/common/debug.d.ts +32 -0
- package/core/renderers/common/debugger.d.ts +131 -0
- package/core/renderers/common/drawer.d.ts +144 -0
- package/core/renderers/common/i_path_object.d.ts +132 -0
- package/core/renderers/common/info.d.ts +211 -0
- package/core/renderers/common/marker_svg.d.ts +249 -0
- package/core/renderers/common/path_object.d.ts +166 -0
- package/core/renderers/common/renderer.d.ts +178 -0
- package/core/renderers/geras/constants.d.ts +25 -0
- package/core/renderers/geras/drawer.d.ts +45 -0
- package/core/renderers/geras/geras.d.ts +12 -0
- package/core/renderers/geras/highlight_constants.d.ts +111 -0
- package/core/renderers/geras/highlighter.d.ts +109 -0
- package/core/renderers/geras/info.d.ts +48 -0
- package/core/renderers/geras/measurables/inline_input.d.ts +25 -0
- package/core/renderers/geras/measurables/statement_input.d.ts +25 -0
- package/core/renderers/geras/path_object.d.ts +51 -0
- package/core/renderers/geras/renderer.d.ts +79 -0
- package/core/renderers/measurables/base.d.ts +29 -0
- package/core/renderers/measurables/bottom_row.d.ts +67 -0
- package/core/renderers/measurables/connection.d.ts +27 -0
- package/core/renderers/measurables/external_value_input.d.ts +28 -0
- package/core/renderers/measurables/field.d.ts +31 -0
- package/core/renderers/measurables/hat.d.ts +22 -0
- package/core/renderers/measurables/icon.d.ts +28 -0
- package/core/renderers/measurables/in_row_spacer.d.ts +22 -0
- package/core/renderers/measurables/inline_input.d.ts +25 -0
- package/core/renderers/measurables/input_connection.d.ts +31 -0
- package/core/renderers/measurables/input_row.d.ts +33 -0
- package/core/renderers/measurables/jagged_edge.d.ts +21 -0
- package/core/renderers/measurables/next_connection.d.ts +24 -0
- package/core/renderers/measurables/output_connection.d.ts +27 -0
- package/core/renderers/measurables/previous_connection.d.ts +24 -0
- package/core/renderers/measurables/round_corner.d.ts +22 -0
- package/core/renderers/measurables/row.d.ts +163 -0
- package/core/renderers/measurables/spacer_row.d.ts +30 -0
- package/core/renderers/measurables/square_corner.d.ts +22 -0
- package/core/renderers/measurables/statement_input.d.ts +23 -0
- package/core/renderers/measurables/top_row.d.ts +60 -0
- package/core/renderers/measurables/types.d.ts +264 -0
- package/core/renderers/minimalist/constants.d.ts +16 -0
- package/core/renderers/minimalist/drawer.d.ts +23 -0
- package/core/renderers/minimalist/info.d.ts +33 -0
- package/core/renderers/minimalist/minimalist.d.ts +7 -0
- package/core/renderers/minimalist/renderer.d.ts +46 -0
- package/core/renderers/thrasos/info.d.ts +43 -0
- package/core/renderers/thrasos/renderer.d.ts +28 -0
- package/core/renderers/thrasos/thrasos.d.ts +5 -0
- package/core/renderers/zelos/constants.d.ts +194 -0
- package/core/renderers/zelos/drawer.d.ts +50 -0
- package/core/renderers/zelos/info.d.ts +93 -0
- package/core/renderers/zelos/marker_svg.d.ts +51 -0
- package/core/renderers/zelos/measurables/bottom_row.d.ts +29 -0
- package/core/renderers/zelos/measurables/inputs.d.ts +25 -0
- package/core/renderers/zelos/measurables/row_elements.d.ts +23 -0
- package/core/renderers/zelos/measurables/top_row.d.ts +31 -0
- package/core/renderers/zelos/path_object.d.ts +84 -0
- package/core/renderers/zelos/renderer.d.ts +82 -0
- package/core/renderers/zelos/zelos.d.ts +13 -0
- package/core/scrollbar.d.ts +309 -0
- package/core/scrollbar_pair.d.ts +119 -0
- package/core/serialization/blocks.d.ts +104 -0
- package/core/serialization/exceptions.d.ts +78 -0
- package/core/serialization/priorities.d.ts +18 -0
- package/core/serialization/registry.d.ts +23 -0
- package/core/serialization/variables.d.ts +16 -0
- package/core/serialization/workspaces.d.ts +31 -0
- package/core/shortcut_items.d.ts +71 -0
- package/core/shortcut_registry.d.ts +167 -0
- package/core/sprites.d.ts +17 -0
- package/core/theme/classic.d.ts +14 -0
- package/core/theme/themes.d.ts +9 -0
- package/core/theme/zelos.d.ts +13 -0
- package/core/theme.d.ts +153 -0
- package/core/theme_manager.d.ts +90 -0
- package/core/toolbox/category.d.ts +266 -0
- package/core/toolbox/collapsible_category.d.ts +98 -0
- package/core/toolbox/separator.d.ts +42 -0
- package/core/toolbox/toolbox.d.ts +400 -0
- package/core/toolbox/toolbox_item.d.ts +95 -0
- package/core/tooltip.d.ts +147 -0
- package/core/touch.d.ts +133 -0
- package/core/touch_gesture.d.ts +129 -0
- package/core/trashcan.d.ts +216 -0
- package/core/utils/aria.d.ts +71 -0
- package/core/utils/array.d.ts +16 -0
- package/core/utils/colour.d.ts +114 -0
- package/core/utils/coordinate.d.ts +82 -0
- package/core/utils/deprecation.d.ts +19 -0
- package/core/utils/dom.d.ts +185 -0
- package/core/utils/idgenerator.d.ts +35 -0
- package/core/utils/keycodes.d.ts +138 -0
- package/core/utils/math.d.ts +34 -0
- package/core/utils/metrics.d.ts +65 -0
- package/core/utils/object.d.ts +40 -0
- package/core/utils/parsing.d.ts +55 -0
- package/core/utils/rect.d.ts +40 -0
- package/core/utils/sentinel.d.ts +13 -0
- package/core/utils/size.d.ts +29 -0
- package/core/utils/string.d.ts +62 -0
- package/core/utils/style.d.ts +108 -0
- package/core/utils/svg.d.ts +71 -0
- package/core/utils/svg_math.d.ts +78 -0
- package/core/utils/svg_paths.d.ts +111 -0
- package/core/utils/toolbox.d.ts +214 -0
- package/core/utils/useragent.d.ts +22 -0
- package/core/utils/xml.d.ts +60 -0
- package/core/utils.d.ts +239 -0
- package/core/variable_map.d.ts +158 -0
- package/core/variable_model.d.ts +43 -0
- package/core/variables.d.ts +196 -0
- package/core/variables_dynamic.d.ts +58 -0
- package/core/warning.d.ts +55 -0
- package/core/widgetdiv.d.ts +78 -0
- package/core/workspace.d.ts +436 -0
- package/core/workspace_audio.d.ts +53 -0
- package/core/workspace_comment.d.ts +192 -0
- package/core/workspace_comment_svg.d.ts +372 -0
- package/core/workspace_drag_surface_svg.d.ts +74 -0
- package/core/workspace_dragger.d.ts +54 -0
- package/core/workspace_svg.d.ts +1032 -0
- package/core/xml.d.ts +132 -0
- package/core/zoom_controls.d.ts +140 -0
- package/core.d.ts +1 -9
- package/core.js +1 -2
- package/dart.d.ts +1 -9
- package/dart_compressed.js +387 -99
- package/dart_compressed.js.map +1 -1
- package/index.d.ts +4 -16
- package/javascript.d.ts +1 -9
- package/javascript_compressed.js +314 -104
- package/javascript_compressed.js.map +1 -1
- package/lua.d.ts +1 -9
- package/lua_compressed.js +399 -81
- package/lua_compressed.js.map +1 -1
- package/msg/ab.js +10 -6
- package/msg/ace.js +10 -6
- package/msg/af.js +10 -6
- package/msg/am.js +10 -6
- package/msg/ar.js +10 -6
- package/msg/ast.js +10 -6
- package/msg/az.js +12 -8
- package/msg/ba.js +10 -6
- package/msg/bcc.js +10 -6
- package/msg/be-tarask.js +10 -6
- package/msg/be.js +14 -10
- package/msg/bg.js +10 -6
- package/msg/bn.js +10 -6
- package/msg/br.js +10 -6
- package/msg/bs.js +10 -6
- package/msg/ca.js +10 -6
- package/msg/cdo.js +10 -6
- package/msg/cs.js +25 -21
- package/msg/da.js +10 -6
- package/msg/de.js +11 -7
- package/msg/diq.js +11 -7
- package/msg/dty.js +10 -6
- package/msg/ee.js +10 -6
- package/msg/el.js +10 -6
- package/msg/en-gb.js +10 -6
- package/msg/en.js +10 -6
- package/msg/eo.js +11 -7
- package/msg/es.js +11 -7
- package/msg/et.js +10 -6
- package/msg/eu.js +10 -6
- package/msg/fa.js +11 -7
- package/msg/fi.js +10 -6
- package/msg/fo.js +10 -6
- package/msg/fr.js +14 -10
- package/msg/frr.js +10 -6
- package/msg/gl.js +10 -6
- package/msg/gn.js +10 -6
- package/msg/gor.js +10 -6
- package/msg/ha.js +10 -6
- package/msg/hak.js +10 -6
- package/msg/he.js +11 -7
- package/msg/hi.js +10 -6
- package/msg/hr.js +12 -8
- package/msg/hrx.js +10 -6
- package/msg/hu.js +10 -6
- package/msg/hy.js +12 -8
- package/msg/ia.js +10 -6
- package/msg/id.js +22 -18
- package/msg/ig.js +10 -6
- package/msg/inh.js +24 -20
- package/msg/is.js +10 -6
- package/msg/it.js +10 -6
- package/msg/ja.js +17 -13
- package/msg/ka.js +10 -6
- package/msg/kab.js +10 -6
- package/msg/kbd-cyrl.js +10 -6
- package/msg/km.js +10 -6
- package/msg/kn.js +10 -6
- package/msg/ko.js +10 -6
- package/msg/ksh.js +10 -6
- package/msg/ku-latn.js +10 -6
- package/msg/ky.js +10 -6
- package/msg/la.js +10 -6
- package/msg/lb.js +10 -6
- package/msg/lki.js +10 -6
- package/msg/lo.js +10 -6
- package/msg/lrc.js +10 -6
- package/msg/lt.js +10 -6
- package/msg/lv.js +39 -35
- package/msg/mg.js +10 -6
- package/msg/mk.js +10 -6
- package/msg/ml.js +10 -6
- package/msg/mnw.js +10 -6
- package/msg/ms.js +10 -6
- package/msg/my.js +10 -6
- package/msg/mzn.js +10 -6
- package/msg/nb.js +10 -6
- package/msg/ne.js +10 -6
- package/msg/nl.js +10 -6
- package/msg/oc.js +10 -6
- package/msg/olo.js +10 -6
- package/msg/pa.js +13 -9
- package/msg/pl.js +10 -6
- package/msg/pms.js +10 -6
- package/msg/ps.js +10 -6
- package/msg/pt-br.js +10 -6
- package/msg/pt.js +10 -6
- package/msg/ro.js +10 -6
- package/msg/ru.js +10 -6
- package/msg/sc.js +10 -6
- package/msg/sco.js +10 -6
- package/msg/sd.js +10 -6
- package/msg/shn.js +10 -6
- package/msg/si.js +10 -6
- package/msg/sk.js +10 -6
- package/msg/skr-arab.js +10 -6
- package/msg/sl.js +10 -6
- package/msg/smn.js +440 -0
- package/msg/sq.js +10 -6
- package/msg/sr-latn.js +10 -6
- package/msg/sr.js +10 -6
- package/msg/sv.js +10 -6
- package/msg/sw.js +10 -6
- package/msg/ta.js +10 -6
- package/msg/tcy.js +10 -6
- package/msg/te.js +11 -7
- package/msg/th.js +10 -6
- package/msg/ti.js +10 -6
- package/msg/tl.js +10 -6
- package/msg/tlh.js +10 -6
- package/msg/tr.js +10 -6
- package/msg/ug-arab.js +10 -6
- package/msg/uk.js +10 -6
- package/msg/ur.js +10 -6
- package/msg/uz.js +10 -6
- package/msg/vi.js +10 -6
- package/msg/xmf.js +10 -6
- package/msg/yo.js +10 -6
- package/msg/yue.js +11 -7
- package/msg/zgh.js +10 -6
- package/msg/zh-hans.js +13 -9
- package/msg/zh-hant.js +13 -9
- package/package.json +8 -5
- package/php.d.ts +1 -9
- package/php_compressed.js +322 -93
- package/php_compressed.js.map +1 -1
- package/python.d.ts +1 -9
- package/python_compressed.js +237 -90
- package/python_compressed.js.map +1 -1
- package/blockly.d.ts +0 -25607
- package/blocks/blocks.js +0 -47
- package/blocks/colour.js +0 -119
- package/blocks/lists.js +0 -924
- package/blocks/logic.js +0 -657
- package/blocks/loops.js +0 -373
- package/blocks/math.js +0 -592
- package/blocks/procedures.js +0 -1194
- package/blocks/text.js +0 -992
- package/blocks/variables.js +0 -174
- package/blocks/variables_dynamic.js +0 -190
- package/core/block.js +0 -2212
- package/core/block_animations.js +0 -206
- package/core/block_drag_surface.js +0 -269
- package/core/block_dragger.js +0 -484
- package/core/block_svg.js +0 -1894
- package/core/blockly.js +0 -890
- package/core/blockly_options.js +0 -28
- package/core/blocks.js +0 -33
- package/core/browser_events.js +0 -284
- package/core/bubble.js +0 -985
- package/core/bubble_dragger.js +0 -298
- package/core/bump_objects.js +0 -180
- package/core/clipboard.js +0 -80
- package/core/comment.js +0 -448
- package/core/common.js +0 -265
- package/core/component_manager.js +0 -263
- package/core/config.js +0 -87
- package/core/connection.js +0 -742
- package/core/connection_checker.js +0 -312
- package/core/connection_db.js +0 -314
- package/core/connection_type.js +0 -36
- package/core/constants.js +0 -33
- package/core/contextmenu.js +0 -398
- package/core/contextmenu_items.js +0 -651
- package/core/contextmenu_registry.js +0 -178
- package/core/css.js +0 -568
- package/core/delete_area.js +0 -87
- package/core/dialog.js +0 -107
- package/core/drag_target.js +0 -98
- package/core/dropdowndiv.js +0 -754
- 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_change.js +0 -179
- package/core/events/events_block_create.js +0 -127
- package/core/events/events_block_delete.js +0 -139
- package/core/events/events_block_drag.js +0 -89
- package/core/events/events_block_move.js +0 -202
- package/core/events/events_bubble_open.js +0 -90
- package/core/events/events_click.js +0 -87
- package/core/events/events_comment_base.js +0 -121
- package/core/events/events_comment_change.js +0 -105
- package/core/events/events_comment_create.js +0 -84
- package/core/events/events_comment_delete.js +0 -81
- package/core/events/events_comment_move.js +0 -157
- package/core/events/events_marker_move.js +0 -110
- package/core/events/events_selected.js +0 -83
- package/core/events/events_theme_change.js +0 -72
- package/core/events/events_toolbox_item_select.js +0 -84
- package/core/events/events_trashcan_open.js +0 -73
- package/core/events/events_ui.js +0 -88
- package/core/events/events_ui_base.js +0 -63
- package/core/events/events_var_base.js +0 -70
- package/core/events/events_var_create.js +0 -89
- package/core/events/events_var_delete.js +0 -89
- package/core/events/events_var_rename.js +0 -90
- package/core/events/events_viewport.js +0 -107
- package/core/events/utils.js +0 -600
- package/core/events/workspace_events.js +0 -93
- package/core/extensions.js +0 -523
- package/core/field.js +0 -1282
- package/core/field_angle.js +0 -591
- package/core/field_checkbox.js +0 -255
- package/core/field_colour.js +0 -717
- package/core/field_dropdown.js +0 -795
- 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_multilineinput.js +0 -463
- package/core/field_number.js +0 -340
- package/core/field_registry.js +0 -80
- package/core/field_textinput.js +0 -619
- package/core/field_variable.js +0 -558
- package/core/flyout_base.js +0 -1254
- package/core/flyout_button.js +0 -356
- package/core/flyout_horizontal.js +0 -391
- package/core/flyout_metrics_manager.js +0 -106
- package/core/flyout_vertical.js +0 -395
- package/core/generator.js +0 -564
- package/core/gesture.js +0 -1026
- package/core/grid.js +0 -226
- package/core/icon.js +0 -225
- package/core/inject.js +0 -389
- package/core/input.js +0 -332
- package/core/input_types.js +0 -36
- package/core/insertion_marker_manager.js +0 -790
- package/core/interfaces/i_ast_node_location.js +0 -26
- 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_component.js +0 -37
- 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_deletable.js +0 -33
- package/core/interfaces/i_delete_area.js +0 -50
- package/core/interfaces/i_drag_target.js +0 -88
- package/core/interfaces/i_draggable.js +0 -31
- 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_movable.js +0 -33
- package/core/interfaces/i_positionable.js +0 -51
- package/core/interfaces/i_registrable.js +0 -29
- package/core/interfaces/i_registrable_field.js +0 -39
- 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/internal_constants.js +0 -72
- package/core/keyboard_nav/ast_node.js +0 -741
- package/core/keyboard_nav/basic_cursor.js +0 -225
- package/core/keyboard_nav/cursor.js +0 -144
- package/core/keyboard_nav/marker.js +0 -134
- package/core/keyboard_nav/tab_navigate_cursor.js +0 -52
- package/core/marker_manager.js +0 -213
- package/core/menu.js +0 -482
- package/core/menuitem.js +0 -292
- package/core/metrics_manager.js +0 -495
- package/core/msg.js +0 -24
- package/core/mutator.js +0 -575
- package/core/names.js +0 -289
- package/core/options.js +0 -391
- package/core/positionable_helpers.js +0 -188
- package/core/procedures.js +0 -452
- package/core/registry.js +0 -384
- package/core/rendered_connection.js +0 -588
- package/core/renderers/common/block_rendering.js +0 -170
- package/core/renderers/common/constants.js +0 -1250
- package/core/renderers/common/debug.js +0 -67
- package/core/renderers/common/debugger.js +0 -457
- package/core/renderers/common/drawer.js +0 -475
- package/core/renderers/common/i_path_object.js +0 -162
- package/core/renderers/common/info.js +0 -775
- 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/drawer.js +0 -220
- package/core/renderers/geras/geras.js +0 -36
- package/core/renderers/geras/highlight_constants.js +0 -299
- package/core/renderers/geras/highlighter.js +0 -311
- package/core/renderers/geras/info.js +0 -488
- package/core/renderers/geras/measurables/inline_input.js +0 -58
- package/core/renderers/geras/measurables/statement_input.js +0 -57
- package/core/renderers/geras/path_object.js +0 -166
- 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/hat.js +0 -50
- package/core/renderers/measurables/icon.js +0 -58
- package/core/renderers/measurables/in_row_spacer.js +0 -47
- package/core/renderers/measurables/inline_input.js +0 -80
- package/core/renderers/measurables/input_connection.js +0 -75
- package/core/renderers/measurables/input_row.js +0 -89
- package/core/renderers/measurables/jagged_edge.js +0 -46
- 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/statement_input.js +0 -59
- package/core/renderers/measurables/top_row.js +0 -143
- package/core/renderers/measurables/types.js +0 -353
- package/core/renderers/minimalist/constants.js +0 -37
- 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/info.js +0 -339
- package/core/renderers/thrasos/renderer.js +0 -53
- package/core/renderers/thrasos/thrasos.js +0 -22
- package/core/renderers/zelos/constants.js +0 -1005
- package/core/renderers/zelos/drawer.js +0 -250
- package/core/renderers/zelos/info.js +0 -624
- package/core/renderers/zelos/marker_svg.js +0 -179
- package/core/renderers/zelos/measurables/bottom_row.js +0 -66
- package/core/renderers/zelos/measurables/inputs.js +0 -57
- package/core/renderers/zelos/measurables/row_elements.js +0 -46
- package/core/renderers/zelos/measurables/top_row.js +0 -71
- 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/scrollbar.js +0 -891
- package/core/scrollbar_pair.js +0 -329
- package/core/serialization/blocks.js +0 -699
- package/core/serialization/exceptions.js +0 -144
- package/core/serialization/priorities.js +0 -38
- package/core/serialization/registry.js +0 -45
- package/core/serialization/variables.js +0 -98
- package/core/serialization/workspaces.js +0 -103
- package/core/shortcut_items.js +0 -302
- package/core/shortcut_registry.js +0 -366
- package/core/sprites.js +0 -31
- package/core/theme/classic.js +0 -56
- package/core/theme/themes.js +0 -23
- package/core/theme/zelos.js +0 -94
- 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.js +0 -1160
- package/core/toolbox/toolbox_item.js +0 -173
- package/core/tooltip.js +0 -541
- package/core/touch.js +0 -285
- package/core/touch_gesture.js +0 -333
- package/core/trashcan.js +0 -757
- package/core/utils/aria.js +0 -174
- package/core/utils/array.js +0 -34
- package/core/utils/colour.js +0 -288
- package/core/utils/coordinate.js +0 -138
- package/core/utils/deprecation.js +0 -41
- package/core/utils/dom.js +0 -430
- package/core/utils/global.js +0 -41
- package/core/utils/idgenerator.js +0 -83
- package/core/utils/keycodes.js +0 -172
- package/core/utils/math.js +0 -63
- package/core/utils/metrics.js +0 -154
- package/core/utils/object.js +0 -91
- package/core/utils/parsing.js +0 -261
- package/core/utils/rect.js +0 -75
- package/core/utils/sentinel.js +0 -25
- package/core/utils/size.js +0 -65
- package/core/utils/string.js +0 -305
- package/core/utils/style.js +0 -296
- package/core/utils/svg.js +0 -186
- package/core/utils/svg_math.js +0 -268
- package/core/utils/svg_paths.js +0 -149
- package/core/utils/toolbox.js +0 -459
- package/core/utils/useragent.js +0 -197
- package/core/utils/xml.js +0 -107
- package/core/utils.js +0 -383
- package/core/variable_map.js +0 -410
- package/core/variable_model.js +0 -96
- package/core/variables.js +0 -578
- package/core/variables_dynamic.js +0 -129
- package/core/warning.js +0 -175
- package/core/widgetdiv.js +0 -290
- package/core/workspace.js +0 -836
- package/core/workspace_audio.js +0 -169
- package/core/workspace_comment.js +0 -400
- package/core/workspace_comment_svg.js +0 -1224
- package/core/workspace_drag_surface_svg.js +0 -194
- package/core/workspace_dragger.js +0 -115
- package/core/workspace_svg.js +0 -2735
- package/core/xml.js +0 -1043
- package/core/zoom_controls.js +0 -507
- package/generators/dart/all.js +0 -25
- package/generators/dart/colour.js +0 -105
- package/generators/dart/lists.js +0 -431
- package/generators/dart/logic.js +0 -123
- package/generators/dart/loops.js +0 -161
- package/generators/dart/math.js +0 -446
- package/generators/dart/procedures.js +0 -105
- package/generators/dart/text.js +0 -338
- package/generators/dart/variables.js +0 -32
- package/generators/dart/variables_dynamic.js +0 -21
- package/generators/dart.js +0 -304
- package/generators/javascript/all.js +0 -25
- package/generators/javascript/colour.js +0 -85
- package/generators/javascript/lists.js +0 -405
- package/generators/javascript/logic.js +0 -127
- package/generators/javascript/loops.js +0 -180
- package/generators/javascript/math.js +0 -401
- package/generators/javascript/procedures.js +0 -110
- package/generators/javascript/text.js +0 -371
- package/generators/javascript/variables.js +0 -32
- package/generators/javascript/variables_dynamic.js +0 -21
- package/generators/javascript.js +0 -324
- package/generators/lua/all.js +0 -25
- package/generators/lua/colour.js +0 -71
- package/generators/lua/lists.js +0 -348
- package/generators/lua/logic.js +0 -112
- package/generators/lua/loops.js +0 -168
- package/generators/lua/math.js +0 -406
- package/generators/lua/procedures.js +0 -106
- package/generators/lua/text.js +0 -327
- package/generators/lua/variables.js +0 -31
- package/generators/lua/variables_dynamic.js +0 -21
- package/generators/lua.js +0 -207
- package/generators/php/all.js +0 -25
- package/generators/php/colour.js +0 -81
- package/generators/php/lists.js +0 -482
- package/generators/php/logic.js +0 -119
- package/generators/php/loops.js +0 -161
- package/generators/php/math.js +0 -349
- package/generators/php/procedures.js +0 -125
- package/generators/php/text.js +0 -255
- package/generators/php/variables.js +0 -32
- package/generators/php/variables_dynamic.js +0 -21
- package/generators/php.js +0 -304
- package/generators/python/all.js +0 -25
- package/generators/python/colour.js +0 -67
- package/generators/python/lists.js +0 -346
- package/generators/python/logic.js +0 -120
- package/generators/python/loops.js +0 -209
- package/generators/python/math.js +0 -373
- package/generators/python/procedures.js +0 -129
- package/generators/python/text.js +0 -291
- package/generators/python/variables.js +0 -32
- package/generators/python/variables_dynamic.js +0 -21
- package/generators/python.js +0 -334
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2019 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import '../../events/events_marker_move.js';
|
|
7
|
+
import type { IASTNodeLocationSvg } from '../../interfaces/i_ast_node_location_svg.js';
|
|
8
|
+
import { ASTNode } from '../../keyboard_nav/ast_node.js';
|
|
9
|
+
import type { Marker } from '../../keyboard_nav/marker.js';
|
|
10
|
+
import type { RenderedConnection } from '../../rendered_connection.js';
|
|
11
|
+
import type { WorkspaceSvg } from '../../workspace_svg.js';
|
|
12
|
+
import type { ConstantProvider, Notch, PuzzleTab } from './constants.js';
|
|
13
|
+
/**
|
|
14
|
+
* Class for a marker.
|
|
15
|
+
*
|
|
16
|
+
* @alias Blockly.blockRendering.MarkerSvg
|
|
17
|
+
*/
|
|
18
|
+
export declare class MarkerSvg {
|
|
19
|
+
private readonly workspace;
|
|
20
|
+
private readonly marker;
|
|
21
|
+
/**
|
|
22
|
+
* The workspace, field, or block that the marker SVG element should be
|
|
23
|
+
* attached to.
|
|
24
|
+
*/
|
|
25
|
+
private parent_;
|
|
26
|
+
/** The current SVG element for the marker. */
|
|
27
|
+
currentMarkerSvg: Element | null;
|
|
28
|
+
colour_: string;
|
|
29
|
+
/** The root SVG group containing the marker. */
|
|
30
|
+
protected markerSvg_: SVGGElement | null;
|
|
31
|
+
protected svgGroup_: SVGGElement | null;
|
|
32
|
+
protected markerBlock_: SVGPathElement | null;
|
|
33
|
+
protected markerInput_: SVGPathElement | null;
|
|
34
|
+
protected markerSvgLine_: SVGRectElement | null;
|
|
35
|
+
protected markerSvgRect_: SVGRectElement | null;
|
|
36
|
+
/** The constants necessary to draw the marker. */
|
|
37
|
+
protected constants_: ConstantProvider;
|
|
38
|
+
/**
|
|
39
|
+
* @param workspace The workspace the marker belongs to.
|
|
40
|
+
* @param constants The constants for the renderer.
|
|
41
|
+
* @param marker The marker to draw.
|
|
42
|
+
*/
|
|
43
|
+
constructor(workspace: WorkspaceSvg, constants: ConstantProvider, marker: Marker);
|
|
44
|
+
/**
|
|
45
|
+
* Return the root node of the SVG or null if none exists.
|
|
46
|
+
*
|
|
47
|
+
* @returns The root SVG node.
|
|
48
|
+
*/
|
|
49
|
+
getSvgRoot(): SVGElement;
|
|
50
|
+
/**
|
|
51
|
+
* Get the marker.
|
|
52
|
+
*
|
|
53
|
+
* @returns The marker to draw for.
|
|
54
|
+
*/
|
|
55
|
+
getMarker(): Marker;
|
|
56
|
+
/**
|
|
57
|
+
* True if the marker should be drawn as a cursor, false otherwise.
|
|
58
|
+
* A cursor is drawn as a flashing line. A marker is drawn as a solid line.
|
|
59
|
+
*
|
|
60
|
+
* @returns True if the marker is a cursor, false otherwise.
|
|
61
|
+
*/
|
|
62
|
+
isCursor(): boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Create the DOM element for the marker.
|
|
65
|
+
*
|
|
66
|
+
* @returns The marker controls SVG group.
|
|
67
|
+
* @internal
|
|
68
|
+
*/
|
|
69
|
+
createDom(): SVGElement;
|
|
70
|
+
/**
|
|
71
|
+
* Attaches the SVG root of the marker to the SVG group of the parent.
|
|
72
|
+
*
|
|
73
|
+
* @param newParent The workspace, field, or block that the marker SVG element
|
|
74
|
+
* should be attached to.
|
|
75
|
+
*/
|
|
76
|
+
protected setParent_(newParent: IASTNodeLocationSvg): void;
|
|
77
|
+
/**
|
|
78
|
+
* Update the marker.
|
|
79
|
+
*
|
|
80
|
+
* @param oldNode The previous node the marker was on or null.
|
|
81
|
+
* @param curNode The node that we want to draw the marker for.
|
|
82
|
+
*/
|
|
83
|
+
draw(oldNode: ASTNode, curNode: ASTNode): void;
|
|
84
|
+
/**
|
|
85
|
+
* Update the marker's visible state based on the type of curNode..
|
|
86
|
+
*
|
|
87
|
+
* @param curNode The node that we want to draw the marker for.
|
|
88
|
+
*/
|
|
89
|
+
protected showAtLocation_(curNode: ASTNode): void;
|
|
90
|
+
/**************************
|
|
91
|
+
* Display
|
|
92
|
+
**************************/
|
|
93
|
+
/**
|
|
94
|
+
* Show the marker as a combination of the previous connection and block,
|
|
95
|
+
* the output connection and block, or just the block.
|
|
96
|
+
*
|
|
97
|
+
* @param curNode The node to draw the marker for.
|
|
98
|
+
*/
|
|
99
|
+
private showWithBlockPrevOutput_;
|
|
100
|
+
/**
|
|
101
|
+
* Position and display the marker for a block.
|
|
102
|
+
*
|
|
103
|
+
* @param curNode The node to draw the marker for.
|
|
104
|
+
*/
|
|
105
|
+
protected showWithBlock_(curNode: ASTNode): void;
|
|
106
|
+
/**
|
|
107
|
+
* Position and display the marker for a previous connection.
|
|
108
|
+
*
|
|
109
|
+
* @param curNode The node to draw the marker for.
|
|
110
|
+
*/
|
|
111
|
+
protected showWithPrevious_(curNode: ASTNode): void;
|
|
112
|
+
/**
|
|
113
|
+
* Position and display the marker for an output connection.
|
|
114
|
+
*
|
|
115
|
+
* @param curNode The node to draw the marker for.
|
|
116
|
+
*/
|
|
117
|
+
protected showWithOutput_(curNode: ASTNode): void;
|
|
118
|
+
/**
|
|
119
|
+
* Position and display the marker for a workspace coordinate.
|
|
120
|
+
* This is a horizontal line.
|
|
121
|
+
*
|
|
122
|
+
* @param curNode The node to draw the marker for.
|
|
123
|
+
*/
|
|
124
|
+
protected showWithCoordinates_(curNode: ASTNode): void;
|
|
125
|
+
/**
|
|
126
|
+
* Position and display the marker for a field.
|
|
127
|
+
* This is a box around the field.
|
|
128
|
+
*
|
|
129
|
+
* @param curNode The node to draw the marker for.
|
|
130
|
+
*/
|
|
131
|
+
protected showWithField_(curNode: ASTNode): void;
|
|
132
|
+
/**
|
|
133
|
+
* Position and display the marker for an input.
|
|
134
|
+
* This is a puzzle piece.
|
|
135
|
+
*
|
|
136
|
+
* @param curNode The node to draw the marker for.
|
|
137
|
+
*/
|
|
138
|
+
protected showWithInput_(curNode: ASTNode): void;
|
|
139
|
+
/**
|
|
140
|
+
* Position and display the marker for a next connection.
|
|
141
|
+
* This is a horizontal line.
|
|
142
|
+
*
|
|
143
|
+
* @param curNode The node to draw the marker for.
|
|
144
|
+
*/
|
|
145
|
+
protected showWithNext_(curNode: ASTNode): void;
|
|
146
|
+
/**
|
|
147
|
+
* Position and display the marker for a stack.
|
|
148
|
+
* This is a box with extra padding around the entire stack of blocks.
|
|
149
|
+
*
|
|
150
|
+
* @param curNode The node to draw the marker for.
|
|
151
|
+
*/
|
|
152
|
+
protected showWithStack_(curNode: ASTNode): void;
|
|
153
|
+
/** Show the current marker. */
|
|
154
|
+
protected showCurrent_(): void;
|
|
155
|
+
/**************************
|
|
156
|
+
* Position
|
|
157
|
+
**************************/
|
|
158
|
+
/**
|
|
159
|
+
* Position the marker for a block.
|
|
160
|
+
* Displays an outline of the top half of a rectangle around a block.
|
|
161
|
+
*
|
|
162
|
+
* @param width The width of the block.
|
|
163
|
+
* @param markerOffset The extra padding for around the block.
|
|
164
|
+
* @param markerHeight The height of the marker.
|
|
165
|
+
*/
|
|
166
|
+
protected positionBlock_(width: number, markerOffset: number, markerHeight: number): void;
|
|
167
|
+
/**
|
|
168
|
+
* Position the marker for an input connection.
|
|
169
|
+
* Displays a filled in puzzle piece.
|
|
170
|
+
*
|
|
171
|
+
* @param connection The connection to position marker around.
|
|
172
|
+
*/
|
|
173
|
+
protected positionInput_(connection: RenderedConnection): void;
|
|
174
|
+
/**
|
|
175
|
+
* Move and show the marker at the specified coordinate in workspace units.
|
|
176
|
+
* Displays a horizontal line.
|
|
177
|
+
*
|
|
178
|
+
* @param x The new x, in workspace units.
|
|
179
|
+
* @param y The new y, in workspace units.
|
|
180
|
+
* @param width The new width, in workspace units.
|
|
181
|
+
*/
|
|
182
|
+
protected positionLine_(x: number, y: number, width: number): void;
|
|
183
|
+
/**
|
|
184
|
+
* Position the marker for an output connection.
|
|
185
|
+
* Displays a puzzle outline and the top and bottom path.
|
|
186
|
+
*
|
|
187
|
+
* @param width The width of the block.
|
|
188
|
+
* @param height The height of the block.
|
|
189
|
+
* @param connectionShape The shape object for the connection.
|
|
190
|
+
*/
|
|
191
|
+
protected positionOutput_(width: number, height: number, connectionShape: Notch | PuzzleTab): void;
|
|
192
|
+
/**
|
|
193
|
+
* Position the marker for a previous connection.
|
|
194
|
+
* Displays a half rectangle with a notch in the top to represent the previous
|
|
195
|
+
* connection.
|
|
196
|
+
*
|
|
197
|
+
* @param width The width of the block.
|
|
198
|
+
* @param markerOffset The offset of the marker from around the block.
|
|
199
|
+
* @param markerHeight The height of the marker.
|
|
200
|
+
* @param connectionShape The shape object for the connection.
|
|
201
|
+
*/
|
|
202
|
+
protected positionPrevious_(width: number, markerOffset: number, markerHeight: number, connectionShape: Notch | PuzzleTab): void;
|
|
203
|
+
/**
|
|
204
|
+
* Move and show the marker at the specified coordinate in workspace units.
|
|
205
|
+
* Displays a filled in rectangle.
|
|
206
|
+
*
|
|
207
|
+
* @param x The new x, in workspace units.
|
|
208
|
+
* @param y The new y, in workspace units.
|
|
209
|
+
* @param width The new width, in workspace units.
|
|
210
|
+
* @param height The new height, in workspace units.
|
|
211
|
+
*/
|
|
212
|
+
protected positionRect_(x: number, y: number, width: number, height: number): void;
|
|
213
|
+
/**
|
|
214
|
+
* Flip the SVG paths in RTL.
|
|
215
|
+
*
|
|
216
|
+
* @param markerSvg The marker that we want to flip.
|
|
217
|
+
*/
|
|
218
|
+
private flipRtl_;
|
|
219
|
+
/** Hide the marker. */
|
|
220
|
+
hide(): void;
|
|
221
|
+
/**
|
|
222
|
+
* Fire event for the marker or marker.
|
|
223
|
+
*
|
|
224
|
+
* @param oldNode The old node the marker used to be on.
|
|
225
|
+
* @param curNode The new node the marker is currently on.
|
|
226
|
+
*/
|
|
227
|
+
private fireMarkerEvent_;
|
|
228
|
+
/**
|
|
229
|
+
* Get the properties to make a marker blink.
|
|
230
|
+
*
|
|
231
|
+
* @returns The object holding attributes to make the marker blink.
|
|
232
|
+
*/
|
|
233
|
+
protected getBlinkProperties_(): any;
|
|
234
|
+
/**
|
|
235
|
+
* Create the marker SVG.
|
|
236
|
+
*
|
|
237
|
+
* @returns The SVG node created.
|
|
238
|
+
*/
|
|
239
|
+
protected createDomInternal_(): Element;
|
|
240
|
+
/**
|
|
241
|
+
* Apply the marker's colour.
|
|
242
|
+
*
|
|
243
|
+
* @param _curNode The node that we want to draw the marker for.
|
|
244
|
+
*/
|
|
245
|
+
protected applyColour_(_curNode: ASTNode): void;
|
|
246
|
+
/** Dispose of this marker. */
|
|
247
|
+
dispose(): void;
|
|
248
|
+
}
|
|
249
|
+
//# sourceMappingURL=marker_svg.d.ts.map
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2019 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { BlockSvg } from '../../block_svg.js';
|
|
7
|
+
import type { Connection } from '../../connection.js';
|
|
8
|
+
import type { BlockStyle } from '../../theme.js';
|
|
9
|
+
import type { ConstantProvider } from './constants.js';
|
|
10
|
+
import type { IPathObject } from './i_path_object.js';
|
|
11
|
+
/**
|
|
12
|
+
* An object that handles creating and setting each of the SVG elements
|
|
13
|
+
* used by the renderer.
|
|
14
|
+
*
|
|
15
|
+
* @alias Blockly.blockRendering.PathObject
|
|
16
|
+
*/
|
|
17
|
+
export declare class PathObject implements IPathObject {
|
|
18
|
+
svgRoot: any;
|
|
19
|
+
/** @internal */
|
|
20
|
+
svgPath: SVGElement;
|
|
21
|
+
/**
|
|
22
|
+
* Holds the cursors svg element when the cursor is attached to the block.
|
|
23
|
+
* This is null if there is no cursor on the block.
|
|
24
|
+
*
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
cursorSvg: SVGElement;
|
|
28
|
+
/**
|
|
29
|
+
* Holds the markers svg element when the marker is attached to the block.
|
|
30
|
+
* This is null if there is no marker on the block.
|
|
31
|
+
*
|
|
32
|
+
* @internal
|
|
33
|
+
*/
|
|
34
|
+
markerSvg: SVGElement;
|
|
35
|
+
/** @internal */
|
|
36
|
+
constants: ConstantProvider;
|
|
37
|
+
/** @internal */
|
|
38
|
+
style: BlockStyle;
|
|
39
|
+
/**
|
|
40
|
+
* @param root The root SVG element.
|
|
41
|
+
* @param style The style object to use for colouring.
|
|
42
|
+
* @param constants The renderer's constants.
|
|
43
|
+
* @internal
|
|
44
|
+
*/
|
|
45
|
+
constructor(root: SVGElement, style: BlockStyle, constants: ConstantProvider);
|
|
46
|
+
/**
|
|
47
|
+
* Set the path generated by the renderer onto the respective SVG element.
|
|
48
|
+
*
|
|
49
|
+
* @param pathString The path.
|
|
50
|
+
* @internal
|
|
51
|
+
*/
|
|
52
|
+
setPath(pathString: string): void;
|
|
53
|
+
/**
|
|
54
|
+
* Flip the SVG paths in RTL.
|
|
55
|
+
*
|
|
56
|
+
* @internal
|
|
57
|
+
*/
|
|
58
|
+
flipRTL(): void;
|
|
59
|
+
/**
|
|
60
|
+
* Add the cursor SVG to this block's SVG group.
|
|
61
|
+
*
|
|
62
|
+
* @param cursorSvg The SVG root of the cursor to be added to the block SVG
|
|
63
|
+
* group.
|
|
64
|
+
* @internal
|
|
65
|
+
*/
|
|
66
|
+
setCursorSvg(cursorSvg: SVGElement): void;
|
|
67
|
+
/**
|
|
68
|
+
* Add the marker SVG to this block's SVG group.
|
|
69
|
+
*
|
|
70
|
+
* @param markerSvg The SVG root of the marker to be added to the block SVG
|
|
71
|
+
* group.
|
|
72
|
+
* @internal
|
|
73
|
+
*/
|
|
74
|
+
setMarkerSvg(markerSvg: SVGElement): void;
|
|
75
|
+
/**
|
|
76
|
+
* Apply the stored colours to the block's path, taking into account whether
|
|
77
|
+
* the paths belong to a shadow block.
|
|
78
|
+
*
|
|
79
|
+
* @param block The source block.
|
|
80
|
+
* @internal
|
|
81
|
+
*/
|
|
82
|
+
applyColour(block: BlockSvg): void;
|
|
83
|
+
/**
|
|
84
|
+
* Set the style.
|
|
85
|
+
*
|
|
86
|
+
* @param blockStyle The block style to use.
|
|
87
|
+
* @internal
|
|
88
|
+
*/
|
|
89
|
+
setStyle(blockStyle: BlockStyle): void;
|
|
90
|
+
/**
|
|
91
|
+
* Add or remove the given CSS class on the path object's root SVG element.
|
|
92
|
+
*
|
|
93
|
+
* @param className The name of the class to add or remove
|
|
94
|
+
* @param add True if the class should be added. False if it should be
|
|
95
|
+
* removed.
|
|
96
|
+
*/
|
|
97
|
+
protected setClass_(className: string, add: boolean): void;
|
|
98
|
+
/**
|
|
99
|
+
* Set whether the block shows a highlight or not. Block highlighting is
|
|
100
|
+
* often used to visually mark blocks currently being executed.
|
|
101
|
+
*
|
|
102
|
+
* @param enable True if highlighted.
|
|
103
|
+
* @internal
|
|
104
|
+
*/
|
|
105
|
+
updateHighlighted(enable: boolean): void;
|
|
106
|
+
/**
|
|
107
|
+
* Updates the look of the block to reflect a shadow state.
|
|
108
|
+
*
|
|
109
|
+
* @param shadow True if the block is a shadow block.
|
|
110
|
+
*/
|
|
111
|
+
protected updateShadow_(shadow: boolean): void;
|
|
112
|
+
/**
|
|
113
|
+
* Updates the look of the block to reflect a disabled state.
|
|
114
|
+
*
|
|
115
|
+
* @param disabled True if disabled.
|
|
116
|
+
*/
|
|
117
|
+
protected updateDisabled_(disabled: boolean): void;
|
|
118
|
+
/**
|
|
119
|
+
* Add or remove styling showing that a block is selected.
|
|
120
|
+
*
|
|
121
|
+
* @param enable True if selection is enabled, false otherwise.
|
|
122
|
+
* @internal
|
|
123
|
+
*/
|
|
124
|
+
updateSelected(enable: boolean): void;
|
|
125
|
+
/**
|
|
126
|
+
* Add or remove styling showing that a block is dragged over a delete area.
|
|
127
|
+
*
|
|
128
|
+
* @param enable True if the block is being dragged over a delete area, false
|
|
129
|
+
* otherwise.
|
|
130
|
+
* @internal
|
|
131
|
+
*/
|
|
132
|
+
updateDraggingDelete(enable: boolean): void;
|
|
133
|
+
/**
|
|
134
|
+
* Add or remove styling showing that a block is an insertion marker.
|
|
135
|
+
*
|
|
136
|
+
* @param enable True if the block is an insertion marker, false otherwise.
|
|
137
|
+
* @internal
|
|
138
|
+
*/
|
|
139
|
+
updateInsertionMarker(enable: boolean): void;
|
|
140
|
+
/**
|
|
141
|
+
* Add or remove styling showing that a block is movable.
|
|
142
|
+
*
|
|
143
|
+
* @param enable True if the block is movable, false otherwise.
|
|
144
|
+
* @internal
|
|
145
|
+
*/
|
|
146
|
+
updateMovable(enable: boolean): void;
|
|
147
|
+
/**
|
|
148
|
+
* Add or remove styling that shows that if the dragging block is dropped,
|
|
149
|
+
* this block will be replaced. If a shadow block, it will disappear.
|
|
150
|
+
* Otherwise it will bump.
|
|
151
|
+
*
|
|
152
|
+
* @param enable True if styling should be added.
|
|
153
|
+
* @internal
|
|
154
|
+
*/
|
|
155
|
+
updateReplacementFade(enable: boolean): void;
|
|
156
|
+
/**
|
|
157
|
+
* Add or remove styling that shows that if the dragging block is dropped,
|
|
158
|
+
* this block will be connected to the input.
|
|
159
|
+
*
|
|
160
|
+
* @param _conn The connection on the input to highlight.
|
|
161
|
+
* @param _enable True if styling should be added.
|
|
162
|
+
* @internal
|
|
163
|
+
*/
|
|
164
|
+
updateShapeForInputHighlight(_conn: Connection, _enable: boolean): void;
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=path_object.d.ts.map
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2019 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { BlockSvg } from '../../block_svg.js';
|
|
7
|
+
import { Connection } from '../../connection.js';
|
|
8
|
+
import { PreviewType } from '../../insertion_marker_manager.js';
|
|
9
|
+
import type { IRegistrable } from '../../interfaces/i_registrable.js';
|
|
10
|
+
import type { Marker } from '../../keyboard_nav/marker.js';
|
|
11
|
+
import type { RenderedConnection } from '../../rendered_connection.js';
|
|
12
|
+
import type { BlockStyle, Theme } from '../../theme.js';
|
|
13
|
+
import type { WorkspaceSvg } from '../../workspace_svg.js';
|
|
14
|
+
import { ConstantProvider } from './constants.js';
|
|
15
|
+
import { Debug } from './debugger.js';
|
|
16
|
+
import { Drawer } from './drawer.js';
|
|
17
|
+
import type { IPathObject } from './i_path_object.js';
|
|
18
|
+
import { RenderInfo } from './info.js';
|
|
19
|
+
import { MarkerSvg } from './marker_svg.js';
|
|
20
|
+
/**
|
|
21
|
+
* The base class for a block renderer.
|
|
22
|
+
*
|
|
23
|
+
* @alias Blockly.blockRendering.Renderer
|
|
24
|
+
*/
|
|
25
|
+
export declare class Renderer implements IRegistrable {
|
|
26
|
+
/** The renderer's constant provider. */
|
|
27
|
+
protected constants_: ConstantProvider;
|
|
28
|
+
/** @internal */
|
|
29
|
+
name: string;
|
|
30
|
+
/**
|
|
31
|
+
* Rendering constant overrides, passed in through options.
|
|
32
|
+
*
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
35
|
+
overrides: object | null;
|
|
36
|
+
/**
|
|
37
|
+
* @param name The renderer name.
|
|
38
|
+
* @internal
|
|
39
|
+
*/
|
|
40
|
+
constructor(name: string);
|
|
41
|
+
/**
|
|
42
|
+
* Gets the class name that identifies this renderer.
|
|
43
|
+
*
|
|
44
|
+
* @returns The CSS class name.
|
|
45
|
+
* @internal
|
|
46
|
+
*/
|
|
47
|
+
getClassName(): string;
|
|
48
|
+
/**
|
|
49
|
+
* Initialize the renderer.
|
|
50
|
+
*
|
|
51
|
+
* @param theme The workspace theme object.
|
|
52
|
+
* @param opt_rendererOverrides Rendering constant overrides.
|
|
53
|
+
* @internal
|
|
54
|
+
*/
|
|
55
|
+
init(theme: Theme, opt_rendererOverrides?: {
|
|
56
|
+
[rendererConstant: string]: any;
|
|
57
|
+
}): void;
|
|
58
|
+
/**
|
|
59
|
+
* Create any DOM elements that this renderer needs.
|
|
60
|
+
*
|
|
61
|
+
* @param svg The root of the workspace's SVG.
|
|
62
|
+
* @param theme The workspace theme object.
|
|
63
|
+
* @internal
|
|
64
|
+
*/
|
|
65
|
+
createDom(svg: SVGElement, theme: Theme): void;
|
|
66
|
+
/**
|
|
67
|
+
* Refresh the renderer after a theme change.
|
|
68
|
+
*
|
|
69
|
+
* @param svg The root of the workspace's SVG.
|
|
70
|
+
* @param theme The workspace theme object.
|
|
71
|
+
* @internal
|
|
72
|
+
*/
|
|
73
|
+
refreshDom(svg: SVGElement, theme: Theme): void;
|
|
74
|
+
/**
|
|
75
|
+
* Dispose of this renderer.
|
|
76
|
+
* Delete all DOM elements that this renderer and its constants created.
|
|
77
|
+
*
|
|
78
|
+
* @internal
|
|
79
|
+
*/
|
|
80
|
+
dispose(): void;
|
|
81
|
+
/**
|
|
82
|
+
* Create a new instance of the renderer's constant provider.
|
|
83
|
+
*
|
|
84
|
+
* @returns The constant provider.
|
|
85
|
+
*/
|
|
86
|
+
protected makeConstants_(): ConstantProvider;
|
|
87
|
+
/**
|
|
88
|
+
* Create a new instance of the renderer's render info object.
|
|
89
|
+
*
|
|
90
|
+
* @param block The block to measure.
|
|
91
|
+
* @returns The render info object.
|
|
92
|
+
*/
|
|
93
|
+
protected makeRenderInfo_(block: BlockSvg): RenderInfo;
|
|
94
|
+
/**
|
|
95
|
+
* Create a new instance of the renderer's drawer.
|
|
96
|
+
*
|
|
97
|
+
* @param block The block to render.
|
|
98
|
+
* @param info An object containing all information needed to render this
|
|
99
|
+
* block.
|
|
100
|
+
* @returns The drawer.
|
|
101
|
+
*/
|
|
102
|
+
protected makeDrawer_(block: BlockSvg, info: RenderInfo): Drawer;
|
|
103
|
+
/**
|
|
104
|
+
* Create a new instance of the renderer's debugger.
|
|
105
|
+
*
|
|
106
|
+
* @returns The renderer debugger.
|
|
107
|
+
* @suppress {strictModuleDepCheck} Debug renderer only included in
|
|
108
|
+
* playground.
|
|
109
|
+
*/
|
|
110
|
+
protected makeDebugger_(): Debug;
|
|
111
|
+
/**
|
|
112
|
+
* Create a new instance of the renderer's marker drawer.
|
|
113
|
+
*
|
|
114
|
+
* @param workspace The workspace the marker belongs to.
|
|
115
|
+
* @param marker The marker.
|
|
116
|
+
* @returns The object in charge of drawing the marker.
|
|
117
|
+
* @internal
|
|
118
|
+
*/
|
|
119
|
+
makeMarkerDrawer(workspace: WorkspaceSvg, marker: Marker): MarkerSvg;
|
|
120
|
+
/**
|
|
121
|
+
* Create a new instance of a renderer path object.
|
|
122
|
+
*
|
|
123
|
+
* @param root The root SVG element.
|
|
124
|
+
* @param style The style object to use for colouring.
|
|
125
|
+
* @returns The renderer path object.
|
|
126
|
+
* @internal
|
|
127
|
+
*/
|
|
128
|
+
makePathObject(root: SVGElement, style: BlockStyle): IPathObject;
|
|
129
|
+
/**
|
|
130
|
+
* Get the current renderer's constant provider. We assume that when this is
|
|
131
|
+
* called, the renderer has already been initialized.
|
|
132
|
+
*
|
|
133
|
+
* @returns The constant provider.
|
|
134
|
+
* @internal
|
|
135
|
+
*/
|
|
136
|
+
getConstants(): ConstantProvider;
|
|
137
|
+
/**
|
|
138
|
+
* Determine whether or not to highlight a connection.
|
|
139
|
+
*
|
|
140
|
+
* @param _conn The connection to determine whether or not to highlight.
|
|
141
|
+
* @returns True if we should highlight the connection.
|
|
142
|
+
* @internal
|
|
143
|
+
*/
|
|
144
|
+
shouldHighlightConnection(_conn: Connection): boolean;
|
|
145
|
+
/**
|
|
146
|
+
* Checks if an orphaned block can connect to the "end" of the topBlock's
|
|
147
|
+
* block-clump. If the clump is a row the end is the last input. If the clump
|
|
148
|
+
* is a stack, the end is the last next connection. If the clump is neither,
|
|
149
|
+
* then this returns false.
|
|
150
|
+
*
|
|
151
|
+
* @param topBlock The top block of the block clump we want to try and connect
|
|
152
|
+
* to.
|
|
153
|
+
* @param orphanBlock The orphan block that wants to find a home.
|
|
154
|
+
* @param localType The type of the connection being dragged.
|
|
155
|
+
* @returns Whether there is a home for the orphan or not.
|
|
156
|
+
* @internal
|
|
157
|
+
*/
|
|
158
|
+
orphanCanConnectAtEnd(topBlock: BlockSvg, orphanBlock: BlockSvg, localType: number): boolean;
|
|
159
|
+
/**
|
|
160
|
+
* Chooses a connection preview method based on the available connection, the
|
|
161
|
+
* current dragged connection, and the block being dragged.
|
|
162
|
+
*
|
|
163
|
+
* @param closest The available connection.
|
|
164
|
+
* @param local The connection currently being dragged.
|
|
165
|
+
* @param topBlock The block currently being dragged.
|
|
166
|
+
* @returns The preview type to display.
|
|
167
|
+
* @internal
|
|
168
|
+
*/
|
|
169
|
+
getConnectionPreviewMethod(closest: RenderedConnection, local: RenderedConnection, topBlock: BlockSvg): PreviewType;
|
|
170
|
+
/**
|
|
171
|
+
* Render the block.
|
|
172
|
+
*
|
|
173
|
+
* @param block The block to render.
|
|
174
|
+
* @internal
|
|
175
|
+
*/
|
|
176
|
+
render(block: BlockSvg): void;
|
|
177
|
+
}
|
|
178
|
+
//# sourceMappingURL=renderer.d.ts.map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2019 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ConstantProvider as BaseConstantProvider } from '../common/constants.js';
|
|
7
|
+
/**
|
|
8
|
+
* An object that provides constants for rendering blocks in Geras mode.
|
|
9
|
+
*
|
|
10
|
+
* @alias Blockly.geras.ConstantProvider
|
|
11
|
+
*/
|
|
12
|
+
export declare class ConstantProvider extends BaseConstantProvider {
|
|
13
|
+
FIELD_TEXT_BASELINE_CENTER: boolean;
|
|
14
|
+
DARK_PATH_OFFSET: number;
|
|
15
|
+
/**
|
|
16
|
+
* The maximum width of a bottom row that follows a statement input and has
|
|
17
|
+
* inputs inline.
|
|
18
|
+
*/
|
|
19
|
+
MAX_BOTTOM_WIDTH: number;
|
|
20
|
+
STATEMENT_BOTTOM_SPACER: any;
|
|
21
|
+
/** @internal */
|
|
22
|
+
constructor();
|
|
23
|
+
getCSS_(selector: string): string[];
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2019 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { BlockSvg } from '../../block_svg.js';
|
|
7
|
+
import { Drawer as BaseDrawer } from '../common/drawer.js';
|
|
8
|
+
import type { Row } from '../measurables/row.js';
|
|
9
|
+
import type { ConstantProvider } from './constants.js';
|
|
10
|
+
import type { RenderInfo } from './info.js';
|
|
11
|
+
import type { InlineInput } from './measurables/inline_input.js';
|
|
12
|
+
/**
|
|
13
|
+
* An object that draws a block based on the given rendering information.
|
|
14
|
+
*
|
|
15
|
+
* @alias Blockly.geras.Drawer
|
|
16
|
+
*/
|
|
17
|
+
export declare class Drawer extends BaseDrawer {
|
|
18
|
+
highlighter_: any;
|
|
19
|
+
constants_: ConstantProvider;
|
|
20
|
+
/**
|
|
21
|
+
* @param block The block to render.
|
|
22
|
+
* @param info An object containing all information needed to render this
|
|
23
|
+
* block.
|
|
24
|
+
* @internal
|
|
25
|
+
*/
|
|
26
|
+
constructor(block: BlockSvg, info: RenderInfo);
|
|
27
|
+
draw(): void;
|
|
28
|
+
drawTop_(): void;
|
|
29
|
+
drawJaggedEdge_(row: Row): void;
|
|
30
|
+
drawValueInput_(row: Row): void;
|
|
31
|
+
drawStatementInput_(row: Row): void;
|
|
32
|
+
drawRightSideRow_(row: Row): void;
|
|
33
|
+
drawBottom_(): void;
|
|
34
|
+
/**
|
|
35
|
+
* Add steps for the left side of the block, which may include an output
|
|
36
|
+
* connection
|
|
37
|
+
*/
|
|
38
|
+
protected drawLeft_(): void;
|
|
39
|
+
drawInlineInput_(input: InlineInput): void;
|
|
40
|
+
positionInlineInputConnection_(input: InlineInput): void;
|
|
41
|
+
positionStatementInputConnection_(row: Row): void;
|
|
42
|
+
positionExternalValueConnection_(row: Row): void;
|
|
43
|
+
positionNextConnection_(): void;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=drawer.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** @file Re-exports of Blockly.geras.* modules. */
|
|
2
|
+
import { ConstantProvider } from './constants.js';
|
|
3
|
+
import { Drawer } from './drawer.js';
|
|
4
|
+
import { HighlightConstantProvider } from './highlight_constants.js';
|
|
5
|
+
import { Highlighter } from './highlighter.js';
|
|
6
|
+
import { RenderInfo } from './info.js';
|
|
7
|
+
import { InlineInput } from './measurables/inline_input.js';
|
|
8
|
+
import { StatementInput } from './measurables/statement_input.js';
|
|
9
|
+
import { PathObject } from './path_object.js';
|
|
10
|
+
import { Renderer } from './renderer.js';
|
|
11
|
+
export { ConstantProvider, Drawer, HighlightConstantProvider, Highlighter, InlineInput, PathObject, Renderer, RenderInfo, StatementInput, };
|
|
12
|
+
//# sourceMappingURL=geras.d.ts.map
|