blockly 9.0.0-beta.0 → 9.0.0-beta.2
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 +830 -810
- package/blockly_compressed.js +821 -801
- package/blockly_compressed.js.map +1 -1
- package/blocks.d.ts +0 -5
- package/blocks_compressed.js +9 -9
- package/blocks_compressed.js.map +1 -1
- package/closure/goog/base.d.ts +1 -0
- package/closure/goog/base_minimal.d.ts +1 -0
- package/closure/goog/goog.d.ts +1 -0
- package/core/any_aliases.d.ts +1 -0
- package/core/block.d.ts +156 -53
- package/core/block_animations.d.ts +5 -0
- package/core/block_drag_surface.d.ts +18 -5
- package/core/block_dragger.d.ts +20 -5
- package/core/block_svg.d.ts +92 -24
- package/core/blockly.d.ts +31 -10
- package/core/blockly_options.d.ts +2 -0
- package/core/blocks.d.ts +2 -0
- package/core/browser_events.d.ts +16 -7
- package/core/bubble.d.ts +42 -12
- package/core/bubble_dragger.d.ts +9 -2
- package/core/bump_objects.d.ts +6 -2
- package/core/clipboard.d.ts +6 -2
- package/core/comment.d.ts +13 -3
- package/core/common.d.ts +35 -9
- package/core/component_manager.d.ts +16 -6
- package/core/config.d.ts +1 -0
- package/core/connection.d.ts +48 -18
- package/core/connection_checker.d.ts +16 -7
- package/core/connection_db.d.ts +17 -6
- package/core/connection_type.d.ts +2 -0
- package/core/constants.d.ts +3 -0
- package/core/contextmenu.d.ts +15 -5
- package/core/contextmenu_items.d.ts +15 -0
- package/core/contextmenu_registry.d.ts +12 -7
- package/core/css.d.ts +3 -0
- package/core/delete_area.d.ts +5 -1
- package/core/dialog.d.ts +14 -7
- package/core/drag_target.d.ts +10 -2
- package/core/dropdowndiv.d.ts +42 -10
- package/core/events/events.d.ts +51 -24
- package/core/events/events_abstract.d.ts +18 -7
- package/core/events/events_block_base.d.ts +13 -7
- package/core/events/events_block_change.d.ts +24 -11
- package/core/events/events_block_create.d.ts +18 -7
- package/core/events/events_block_delete.d.ts +20 -8
- package/core/events/events_block_drag.d.ts +14 -4
- package/core/events/events_block_move.d.ts +25 -12
- package/core/events/events_bubble_open.d.ts +21 -6
- package/core/events/events_click.d.ts +20 -6
- package/core/events/events_comment_base.d.ts +13 -6
- package/core/events/events_comment_change.d.ts +17 -7
- package/core/events/events_comment_create.d.ts +13 -5
- package/core/events/events_comment_delete.d.ts +4 -11
- package/core/events/events_comment_move.d.ts +19 -8
- package/core/events/events_marker_move.d.ts +16 -5
- package/core/events/events_selected.d.ts +14 -5
- package/core/events/events_theme_change.d.ts +11 -3
- package/core/events/events_toolbox_item_select.d.ts +14 -5
- package/core/events/events_trashcan_open.d.ts +11 -3
- package/core/events/events_ui.d.ts +5 -1
- package/core/events/events_ui_base.d.ts +2 -0
- package/core/events/events_var_base.d.ts +13 -7
- package/core/events/events_var_create.d.ts +15 -6
- package/core/events/events_var_delete.d.ts +15 -6
- package/core/events/events_var_rename.d.ts +15 -6
- package/core/events/events_viewport.d.ts +14 -3
- package/core/events/utils.d.ts +50 -7
- package/core/events/workspace_events.d.ts +11 -6
- package/core/extensions.d.ts +14 -4
- package/core/field.d.ts +93 -36
- package/core/field_angle.d.ts +14 -3
- package/core/field_checkbox.d.ts +20 -7
- package/core/field_colour.d.ts +22 -6
- package/core/field_dropdown.d.ts +28 -8
- package/core/field_image.d.ts +15 -4
- package/core/field_label.d.ts +8 -2
- package/core/field_label_serializable.d.ts +4 -1
- package/core/field_multilineinput.d.ts +21 -6
- package/core/field_number.d.ts +22 -6
- package/core/field_registry.d.ts +8 -2
- package/core/field_textinput.d.ts +28 -8
- package/core/field_variable.d.ts +36 -13
- package/core/flyout_base.d.ts +70 -24
- package/core/flyout_button.d.ts +12 -5
- package/core/flyout_horizontal.d.ts +14 -6
- package/core/flyout_metrics_manager.d.ts +6 -3
- package/core/flyout_vertical.d.ts +14 -6
- package/core/generator.d.ts +39 -20
- package/core/gesture.d.ts +56 -22
- package/core/grid.d.ts +20 -16
- package/core/icon.d.ts +18 -5
- package/core/inject.d.ts +3 -1
- package/core/input.d.ts +25 -10
- package/core/input_types.d.ts +2 -0
- package/core/insertion_marker_manager.d.ts +27 -9
- package/core/interfaces/i_ast_node_location.d.ts +2 -0
- package/core/interfaces/i_ast_node_location_svg.d.ts +4 -0
- package/core/interfaces/i_ast_node_location_with_block.d.ts +4 -1
- package/core/interfaces/i_autohideable.d.ts +3 -0
- package/core/interfaces/i_block_dragger.d.ts +7 -1
- package/core/interfaces/i_bounded_element.d.ts +5 -1
- package/core/interfaces/i_bubble.d.ts +11 -2
- package/core/interfaces/i_collapsible_toolbox_item.d.ts +6 -2
- package/core/interfaces/i_component.d.ts +3 -1
- package/core/interfaces/i_connection_checker.d.ts +14 -6
- package/core/interfaces/i_contextmenu.d.ts +2 -0
- package/core/interfaces/i_copyable.d.ts +3 -1
- package/core/interfaces/i_deletable.d.ts +4 -1
- package/core/interfaces/i_delete_area.d.ts +4 -1
- package/core/interfaces/i_drag_target.d.ts +10 -2
- package/core/interfaces/i_draggable.d.ts +2 -0
- package/core/interfaces/i_flyout.d.ts +27 -11
- package/core/interfaces/i_keyboard_accessible.d.ts +4 -1
- package/core/interfaces/i_metrics_manager.d.ts +24 -12
- package/core/interfaces/i_movable.d.ts +4 -1
- package/core/interfaces/i_positionable.d.ts +5 -1
- package/core/interfaces/i_registrable.d.ts +2 -0
- package/core/interfaces/i_registrable_field.d.ts +2 -0
- package/core/interfaces/i_selectable.d.ts +2 -0
- package/core/interfaces/i_selectable_toolbox_item.d.ts +10 -3
- package/core/interfaces/i_serializer.d.ts +6 -1
- package/core/interfaces/i_styleable.d.ts +4 -0
- package/core/interfaces/i_toolbox.d.ts +17 -6
- package/core/interfaces/i_toolbox_item.d.ts +17 -7
- package/core/internal_constants.d.ts +6 -0
- package/core/keyboard_nav/ast_node.d.ts +55 -28
- package/core/keyboard_nav/basic_cursor.d.ts +20 -9
- package/core/keyboard_nav/cursor.d.ts +11 -5
- package/core/keyboard_nav/marker.d.ts +9 -2
- package/core/keyboard_nav/tab_navigate_cursor.d.ts +4 -1
- package/core/main.d.ts +1 -0
- package/core/marker_manager.d.ts +13 -2
- package/core/menu.d.ts +25 -6
- package/core/menuitem.d.ts +22 -7
- package/core/metrics_manager.d.ts +30 -15
- package/core/msg.d.ts +15 -0
- package/core/mutator.d.ts +20 -8
- package/core/names.d.ts +20 -8
- package/core/options.d.ts +12 -6
- package/core/positionable_helpers.d.ts +11 -3
- package/core/procedures.d.ts +27 -10
- package/core/registry.d.ts +19 -8
- package/core/rendered_connection.d.ts +29 -7
- package/core/renderers/common/block_rendering.d.ts +9 -2
- package/core/renderers/common/constants.d.ts +57 -18
- package/core/renderers/common/debug.d.ts +5 -1
- package/core/renderers/common/debugger.d.ts +12 -1
- package/core/renderers/common/drawer.d.ts +16 -3
- package/core/renderers/common/i_path_object.d.ts +37 -16
- package/core/renderers/common/info.d.ts +28 -11
- package/core/renderers/common/marker_svg.d.ts +42 -11
- package/core/renderers/common/path_object.d.ts +23 -3
- package/core/renderers/common/renderer.d.ts +33 -12
- package/core/renderers/geras/constants.d.ts +6 -2
- package/core/renderers/geras/drawer.d.ts +4 -1
- package/core/renderers/geras/geras.d.ts +3 -2
- package/core/renderers/geras/highlight_constants.d.ts +9 -6
- package/core/renderers/geras/highlighter.d.ts +12 -1
- package/core/renderers/geras/info.d.ts +4 -1
- package/core/renderers/geras/measurables/inline_input.d.ts +2 -0
- package/core/renderers/geras/measurables/statement_input.d.ts +2 -0
- package/core/renderers/geras/path_object.d.ts +4 -1
- package/core/renderers/geras/renderer.d.ts +16 -6
- package/core/renderers/measurables/base.d.ts +2 -0
- package/core/renderers/measurables/bottom_row.d.ts +9 -3
- package/core/renderers/measurables/connection.d.ts +2 -0
- package/core/renderers/measurables/external_value_input.d.ts +2 -1
- package/core/renderers/measurables/field.d.ts +2 -1
- package/core/renderers/measurables/hat.d.ts +2 -1
- package/core/renderers/measurables/icon.d.ts +4 -1
- package/core/renderers/measurables/in_row_spacer.d.ts +2 -1
- package/core/renderers/measurables/inline_input.d.ts +2 -1
- package/core/renderers/measurables/input_connection.d.ts +2 -0
- package/core/renderers/measurables/input_row.d.ts +4 -1
- package/core/renderers/measurables/jagged_edge.d.ts +2 -1
- package/core/renderers/measurables/next_connection.d.ts +2 -1
- package/core/renderers/measurables/output_connection.d.ts +2 -1
- package/core/renderers/measurables/previous_connection.d.ts +2 -1
- package/core/renderers/measurables/round_corner.d.ts +2 -1
- package/core/renderers/measurables/row.d.ts +30 -8
- package/core/renderers/measurables/spacer_row.d.ts +2 -1
- package/core/renderers/measurables/square_corner.d.ts +2 -1
- package/core/renderers/measurables/statement_input.d.ts +2 -1
- package/core/renderers/measurables/top_row.d.ts +7 -4
- package/core/renderers/measurables/types.d.ts +54 -25
- package/core/renderers/minimalist/constants.d.ts +2 -0
- package/core/renderers/minimalist/drawer.d.ts +2 -0
- package/core/renderers/minimalist/info.d.ts +5 -1
- package/core/renderers/minimalist/minimalist.d.ts +2 -1
- package/core/renderers/minimalist/renderer.d.ts +8 -3
- package/core/renderers/thrasos/info.d.ts +5 -4
- package/core/renderers/thrasos/renderer.d.ts +4 -1
- package/core/renderers/thrasos/thrasos.d.ts +2 -1
- package/core/renderers/zelos/constants.d.ts +31 -44
- package/core/renderers/zelos/drawer.d.ts +3 -0
- package/core/renderers/zelos/info.d.ts +10 -5
- package/core/renderers/zelos/marker_svg.d.ts +5 -0
- package/core/renderers/zelos/measurables/bottom_row.d.ts +2 -0
- package/core/renderers/zelos/measurables/inputs.d.ts +2 -1
- package/core/renderers/zelos/measurables/row_elements.d.ts +2 -0
- package/core/renderers/zelos/measurables/top_row.d.ts +2 -0
- package/core/renderers/zelos/path_object.d.ts +9 -2
- package/core/renderers/zelos/renderer.d.ts +14 -6
- package/core/renderers/zelos/zelos.d.ts +3 -2
- package/core/scrollbar.d.ts +41 -9
- package/core/scrollbar_pair.d.ts +20 -6
- package/core/serialization/blocks.d.ts +10 -4
- package/core/serialization/exceptions.d.ts +5 -0
- package/core/serialization/priorities.d.ts +3 -0
- package/core/serialization/registry.d.ts +3 -0
- package/core/serialization/variables.d.ts +2 -0
- package/core/serialization/workspaces.d.ts +4 -1
- package/core/shortcut_items.d.ts +10 -0
- package/core/shortcut_registry.d.ts +25 -9
- package/core/sprites.d.ts +2 -4
- package/core/theme/classic.d.ts +2 -0
- package/core/theme/themes.d.ts +1 -0
- package/core/theme/zelos.d.ts +2 -0
- package/core/theme.d.ts +41 -30
- package/core/theme_manager.d.ts +10 -1
- package/core/toolbox/category.d.ts +60 -32
- package/core/toolbox/collapsible_category.d.ts +10 -3
- package/core/toolbox/separator.d.ts +4 -1
- package/core/toolbox/toolbox.d.ts +71 -23
- package/core/toolbox/toolbox_item.d.ts +17 -7
- package/core/tooltip.d.ts +22 -1
- package/core/touch.d.ts +18 -6
- package/core/touch_gesture.d.ts +19 -4
- package/core/trashcan.d.ts +27 -6
- package/core/utils/aria.d.ts +4 -0
- package/core/utils/array.d.ts +4 -2
- package/core/utils/colour.d.ts +24 -13
- package/core/utils/coordinate.d.ts +19 -9
- package/core/utils/deprecation.d.ts +6 -4
- package/core/utils/dom.d.ts +37 -18
- package/core/utils/idgenerator.d.ts +14 -4
- package/core/utils/keycodes.d.ts +1 -0
- package/core/utils/math.d.ts +7 -3
- package/core/utils/metrics.d.ts +1 -0
- package/core/utils/object.d.ts +7 -2
- package/core/utils/parsing.d.ts +9 -4
- package/core/utils/rect.d.ts +5 -3
- package/core/utils/sentinel.d.ts +2 -0
- package/core/utils/size.d.ts +4 -2
- package/core/utils/string.d.ts +13 -6
- package/core/utils/style.d.ts +14 -33
- package/core/utils/svg.d.ts +5 -2
- package/core/utils/svg_math.d.ts +15 -7
- package/core/utils/svg_paths.d.ts +20 -10
- package/core/utils/toolbox.d.ts +26 -5
- package/core/utils/useragent.d.ts +1 -12
- package/core/utils/xml.d.ts +13 -5
- package/core/utils.d.ts +43 -21
- package/core/variable_map.d.ts +26 -9
- package/core/variable_model.d.ts +5 -2
- package/core/variables.d.ts +33 -18
- package/core/variables_dynamic.d.ts +25 -5
- package/core/warning.d.ts +8 -3
- package/core/widgetdiv.d.ts +15 -6
- package/core/workspace.d.ts +80 -30
- package/core/workspace_audio.d.ts +6 -0
- package/core/workspace_comment.d.ts +33 -11
- package/core/workspace_comment_svg.d.ts +52 -9
- package/core/workspace_drag_surface_svg.d.ts +20 -14
- package/core/workspace_dragger.d.ts +6 -0
- package/core/workspace_svg.d.ts +174 -62
- package/core/xml.d.ts +26 -11
- package/core/zoom_controls.d.ts +17 -7
- package/core-browser.js +0 -6
- package/core.d.ts +0 -5
- package/core.js +0 -6
- package/dart.d.ts +1 -7
- package/dart_compressed.js.map +1 -1
- package/index.d.ts +2 -6
- package/javascript.d.ts +1 -7
- package/javascript_compressed.js.map +1 -1
- package/lua.d.ts +1 -7
- package/lua_compressed.js.map +1 -1
- package/msg/ab.d.ts +8 -0
- package/msg/ace.d.ts +8 -0
- package/msg/af.d.ts +8 -0
- package/msg/am.d.ts +8 -0
- package/msg/ar.d.ts +8 -0
- package/msg/ast.d.ts +8 -0
- package/msg/az.d.ts +8 -0
- package/msg/ba.d.ts +8 -0
- package/msg/bcc.d.ts +8 -0
- package/msg/be-tarask.d.ts +8 -0
- package/msg/be.d.ts +8 -0
- package/msg/bg.d.ts +8 -0
- package/msg/bn.d.ts +8 -0
- package/msg/br.d.ts +8 -0
- package/msg/bs.d.ts +8 -0
- package/msg/ca.d.ts +8 -0
- package/msg/cdo.d.ts +8 -0
- package/msg/constants.d.ts +16 -0
- package/msg/cs.d.ts +8 -0
- package/msg/da.d.ts +8 -0
- package/msg/de.d.ts +8 -0
- package/msg/diq.d.ts +8 -0
- package/msg/dty.d.ts +8 -0
- package/msg/ee.d.ts +8 -0
- package/msg/el.d.ts +8 -0
- package/msg/en-gb.d.ts +8 -0
- package/msg/en.d.ts +8 -0
- package/msg/eo.d.ts +8 -0
- package/msg/es.d.ts +8 -0
- package/msg/et.d.ts +8 -0
- package/msg/eu.d.ts +8 -0
- package/msg/fa.d.ts +8 -0
- package/msg/fi.d.ts +8 -0
- package/msg/fo.d.ts +8 -0
- package/msg/fr.d.ts +8 -0
- package/msg/frr.d.ts +8 -0
- package/msg/gl.d.ts +8 -0
- package/msg/gn.d.ts +8 -0
- package/msg/gor.d.ts +8 -0
- package/msg/ha.d.ts +8 -0
- package/msg/hak.d.ts +8 -0
- package/msg/he.d.ts +8 -0
- package/msg/hi.d.ts +8 -0
- package/msg/hr.d.ts +8 -0
- package/msg/hrx.d.ts +8 -0
- package/msg/hu.d.ts +8 -0
- package/msg/hy.d.ts +8 -0
- package/msg/ia.d.ts +8 -0
- package/msg/id.d.ts +8 -0
- package/msg/ig.d.ts +8 -0
- package/msg/inh.d.ts +8 -0
- package/msg/is.d.ts +8 -0
- package/msg/it.d.ts +8 -0
- package/msg/ja.d.ts +8 -0
- package/msg/ka.d.ts +8 -0
- package/msg/kab.d.ts +8 -0
- package/msg/kbd-cyrl.d.ts +8 -0
- package/msg/km.d.ts +8 -0
- package/msg/kn.d.ts +8 -0
- package/msg/ko.d.ts +8 -0
- package/msg/ksh.d.ts +8 -0
- package/msg/ku-latn.d.ts +8 -0
- package/msg/ky.d.ts +8 -0
- package/msg/la.d.ts +8 -0
- package/msg/lb.d.ts +8 -0
- package/msg/lki.d.ts +8 -0
- package/msg/lo.d.ts +8 -0
- package/msg/lrc.d.ts +8 -0
- package/msg/lt.d.ts +8 -0
- package/msg/lv.d.ts +8 -0
- package/msg/mg.d.ts +8 -0
- package/msg/mk.d.ts +8 -0
- package/msg/ml.d.ts +8 -0
- package/msg/mnw.d.ts +8 -0
- package/msg/ms.d.ts +8 -0
- package/msg/msg.d.ts +429 -432
- package/msg/my.d.ts +8 -0
- package/msg/mzn.d.ts +8 -0
- package/msg/nb.d.ts +8 -0
- package/msg/ne.d.ts +8 -0
- package/msg/nl.d.ts +8 -0
- package/msg/oc.d.ts +8 -0
- package/msg/olo.d.ts +8 -0
- package/msg/pa.d.ts +8 -0
- package/msg/pl.d.ts +8 -0
- package/msg/pms.d.ts +8 -0
- package/msg/ps.d.ts +8 -0
- package/msg/pt-br.d.ts +8 -0
- package/msg/pt.d.ts +8 -0
- package/msg/qqq.d.ts +16 -0
- package/msg/ro.d.ts +8 -0
- package/msg/ru.d.ts +8 -0
- package/msg/sc.d.ts +8 -0
- package/msg/sco.d.ts +8 -0
- package/msg/sd.d.ts +8 -0
- package/msg/shn.d.ts +8 -0
- package/msg/si.d.ts +8 -0
- package/msg/sk.d.ts +8 -0
- package/msg/skr-arab.d.ts +8 -0
- package/msg/sl.d.ts +8 -0
- package/msg/smn.d.ts +8 -0
- package/msg/sq.d.ts +8 -0
- package/msg/sr-latn.d.ts +8 -0
- package/msg/sr.d.ts +8 -0
- package/msg/sv.d.ts +8 -0
- package/msg/sw.d.ts +8 -0
- package/msg/synonyms.d.ts +16 -0
- package/msg/ta.d.ts +8 -0
- package/msg/tcy.d.ts +8 -0
- package/msg/te.d.ts +8 -0
- package/msg/th.d.ts +8 -0
- package/msg/ti.d.ts +8 -0
- package/msg/tl.d.ts +8 -0
- package/msg/tlh.d.ts +8 -0
- package/msg/tr.d.ts +8 -0
- package/msg/ug-arab.d.ts +8 -0
- package/msg/uk.d.ts +8 -0
- package/msg/ur.d.ts +8 -0
- package/msg/uz.d.ts +8 -0
- package/msg/vi.d.ts +8 -0
- package/msg/xmf.d.ts +8 -0
- package/msg/yo.d.ts +8 -0
- package/msg/yue.d.ts +8 -0
- package/msg/zgh.d.ts +8 -0
- package/msg/zh-hans.d.ts +8 -0
- package/msg/zh-hant.d.ts +8 -0
- package/package.json +6 -3
- package/php.d.ts +1 -7
- package/php_compressed.js.map +1 -1
- package/python.d.ts +1 -7
- package/python_compressed.js.map +1 -1
- package/blocks/blocks.js +0 -48
- package/blocks/colour.js +0 -121
- package/blocks/lists.js +0 -996
- package/blocks/logic.js +0 -665
- package/blocks/loops.js +0 -375
- package/blocks/math.js +0 -594
- package/blocks/procedures.js +0 -1196
- package/blocks/text.js +0 -1000
- package/blocks/variables.js +0 -176
- package/blocks/variables_dynamic.js +0 -192
- package/core/any_aliases.ts +0 -1
- package/core/block.ts +0 -2102
- package/core/block_animations.ts +0 -202
- package/core/block_drag_surface.ts +0 -237
- package/core/block_dragger.ts +0 -447
- package/core/block_svg.ts +0 -1758
- package/core/blockly.js +0 -890
- package/core/blockly.ts +0 -749
- package/core/blockly_options.ts +0 -81
- package/core/blocks.ts +0 -29
- package/core/browser_events.ts +0 -289
- package/core/bubble.ts +0 -892
- package/core/bubble_dragger.ts +0 -229
- package/core/bump_objects.ts +0 -182
- package/core/clipboard.ts +0 -91
- package/core/comment.ts +0 -398
- package/core/common.ts +0 -288
- package/core/component_manager.ts +0 -211
- package/core/config.ts +0 -80
- package/core/connection.ts +0 -692
- package/core/connection_checker.ts +0 -301
- package/core/connection_db.ts +0 -289
- package/core/connection_type.ts +0 -32
- package/core/constants.ts +0 -29
- package/core/contextmenu.ts +0 -363
- package/core/contextmenu_items.ts +0 -576
- package/core/contextmenu_registry.ts +0 -179
- package/core/css.ts +0 -560
- package/core/delete_area.ts +0 -82
- package/core/dialog.ts +0 -127
- package/core/drag_target.ts +0 -94
- package/core/dropdowndiv.ts +0 -683
- package/core/events/events.ts +0 -123
- package/core/events/events_abstract.ts +0 -112
- package/core/events/events_block_base.ts +0 -65
- package/core/events/events_block_change.ts +0 -176
- package/core/events/events_block_create.ts +0 -114
- package/core/events/events_block_delete.ts +0 -126
- package/core/events/events_block_drag.ts +0 -82
- package/core/events/events_block_move.ts +0 -206
- package/core/events/events_bubble_open.ts +0 -82
- package/core/events/events_click.ts +0 -84
- package/core/events/events_comment_base.ts +0 -107
- package/core/events/events_comment_change.ts +0 -108
- package/core/events/events_comment_create.ts +0 -82
- package/core/events/events_comment_delete.ts +0 -77
- package/core/events/events_comment_move.ts +0 -154
- package/core/events/events_marker_move.ts +0 -99
- package/core/events/events_selected.ts +0 -78
- package/core/events/events_theme_change.ts +0 -67
- package/core/events/events_toolbox_item_select.ts +0 -79
- package/core/events/events_trashcan_open.ts +0 -68
- package/core/events/events_ui.ts +0 -89
- package/core/events/events_ui_base.ts +0 -54
- package/core/events/events_var_base.ts +0 -65
- package/core/events/events_var_create.ts +0 -88
- package/core/events/events_var_delete.ts +0 -88
- package/core/events/events_var_rename.ts +0 -89
- package/core/events/events_viewport.ts +0 -100
- package/core/events/utils.ts +0 -529
- package/core/events/workspace_events.ts +0 -86
- package/core/extensions.ts +0 -504
- package/core/field.ts +0 -1206
- package/core/field_angle.ts +0 -563
- package/core/field_checkbox.ts +0 -243
- package/core/field_colour.ts +0 -632
- package/core/field_dropdown.ts +0 -773
- package/core/field_image.ts +0 -282
- package/core/field_label.ts +0 -152
- package/core/field_label_serializable.ts +0 -76
- package/core/field_multilineinput.ts +0 -466
- package/core/field_number.ts +0 -327
- package/core/field_registry.ts +0 -87
- package/core/field_textinput.ts +0 -591
- package/core/field_variable.ts +0 -545
- package/core/flyout_base.ts +0 -1165
- package/core/flyout_button.ts +0 -292
- package/core/flyout_horizontal.ts +0 -381
- package/core/flyout_metrics_manager.ts +0 -94
- package/core/flyout_vertical.ts +0 -384
- package/core/generator.ts +0 -539
- package/core/gesture.ts +0 -946
- package/core/grid.ts +0 -192
- package/core/icon.ts +0 -189
- package/core/inject.ts +0 -390
- package/core/input.ts +0 -309
- package/core/input_types.ts +0 -32
- package/core/insertion_marker_manager.ts +0 -788
- package/core/interfaces/i_ast_node_location.ts +0 -23
- package/core/interfaces/i_ast_node_location_svg.ts +0 -37
- package/core/interfaces/i_ast_node_location_with_block.ts +0 -38
- package/core/interfaces/i_autohideable.ts +0 -34
- package/core/interfaces/i_block_dragger.ts +0 -67
- package/core/interfaces/i_bounded_element.ts +0 -42
- package/core/interfaces/i_bubble.ts +0 -88
- package/core/interfaces/i_collapsible_toolbox_item.ts +0 -47
- package/core/interfaces/i_component.ts +0 -32
- package/core/interfaces/i_connection_checker.ts +0 -102
- package/core/interfaces/i_contextmenu.ts +0 -26
- package/core/interfaces/i_copyable.ts +0 -40
- package/core/interfaces/i_deletable.ts +0 -29
- package/core/interfaces/i_delete_area.ts +0 -46
- package/core/interfaces/i_drag_target.ts +0 -84
- package/core/interfaces/i_draggable.ts +0 -25
- package/core/interfaces/i_flyout.ts +0 -186
- package/core/interfaces/i_keyboard_accessible.ts +0 -35
- package/core/interfaces/i_metrics_manager.ts +0 -151
- package/core/interfaces/i_movable.ts +0 -29
- package/core/interfaces/i_positionable.ts +0 -50
- package/core/interfaces/i_registrable.ts +0 -25
- package/core/interfaces/i_registrable_field.ts +0 -31
- package/core/interfaces/i_selectable.ts +0 -34
- package/core/interfaces/i_selectable_toolbox_item.ts +0 -64
- package/core/interfaces/i_serializer.ts +0 -65
- package/core/interfaces/i_styleable.ts +0 -35
- package/core/interfaces/i_toolbox.ts +0 -127
- package/core/interfaces/i_toolbox_item.ts +0 -84
- package/core/internal_constants.ts +0 -67
- package/core/keyboard_nav/ast_node.ts +0 -717
- package/core/keyboard_nav/basic_cursor.ts +0 -214
- package/core/keyboard_nav/cursor.ts +0 -134
- package/core/keyboard_nav/marker.ts +0 -115
- package/core/keyboard_nav/tab_navigate_cursor.ts +0 -48
- package/core/main.js +0 -303
- package/core/marker_manager.ts +0 -181
- package/core/menu.ts +0 -449
- package/core/menuitem.ts +0 -240
- package/core/metrics_manager.ts +0 -456
- package/core/msg.ts +0 -20
- package/core/mutator.ts +0 -560
- package/core/names.ts +0 -267
- package/core/options.ts +0 -365
- package/core/positionable_helpers.ts +0 -181
- package/core/procedures.ts +0 -443
- package/core/registry.ts +0 -339
- package/core/rendered_connection.ts +0 -568
- package/core/renderers/common/block_rendering.ts +0 -164
- package/core/renderers/common/constants.ts +0 -1124
- package/core/renderers/common/debug.ts +0 -61
- package/core/renderers/common/debugger.ts +0 -433
- package/core/renderers/common/drawer.ts +0 -450
- package/core/renderers/common/i_path_object.ts +0 -161
- package/core/renderers/common/info.ts +0 -718
- package/core/renderers/common/marker_svg.ts +0 -680
- package/core/renderers/common/path_object.ts +0 -272
- package/core/renderers/common/renderer.ts +0 -271
- package/core/renderers/geras/constants.ts +0 -61
- package/core/renderers/geras/drawer.ts +0 -176
- package/core/renderers/geras/geras.ts +0 -37
- package/core/renderers/geras/highlight_constants.ts +0 -337
- package/core/renderers/geras/highlighter.ts +0 -306
- package/core/renderers/geras/info.ts +0 -450
- package/core/renderers/geras/measurables/inline_input.ts +0 -51
- package/core/renderers/geras/measurables/statement_input.ts +0 -50
- package/core/renderers/geras/path_object.ts +0 -138
- package/core/renderers/geras/renderer.ts +0 -126
- package/core/renderers/measurables/base.ts +0 -53
- package/core/renderers/measurables/bottom_row.ts +0 -120
- package/core/renderers/measurables/connection.ts +0 -52
- package/core/renderers/measurables/external_value_input.ts +0 -65
- package/core/renderers/measurables/field.ts +0 -63
- package/core/renderers/measurables/hat.ts +0 -48
- package/core/renderers/measurables/icon.ts +0 -54
- package/core/renderers/measurables/in_row_spacer.ts +0 -44
- package/core/renderers/measurables/inline_input.ts +0 -76
- package/core/renderers/measurables/input_connection.ts +0 -66
- package/core/renderers/measurables/input_row.ts +0 -82
- package/core/renderers/measurables/jagged_edge.ts +0 -43
- package/core/renderers/measurables/next_connection.ts +0 -47
- package/core/renderers/measurables/output_connection.ts +0 -56
- package/core/renderers/measurables/previous_connection.ts +0 -47
- package/core/renderers/measurables/round_corner.ts +0 -49
- package/core/renderers/measurables/row.ts +0 -225
- package/core/renderers/measurables/spacer_row.ts +0 -55
- package/core/renderers/measurables/square_corner.ts +0 -47
- package/core/renderers/measurables/statement_input.ts +0 -55
- package/core/renderers/measurables/top_row.ts +0 -122
- package/core/renderers/measurables/types.ts +0 -332
- package/core/renderers/minimalist/constants.ts +0 -32
- package/core/renderers/minimalist/drawer.ts +0 -38
- package/core/renderers/minimalist/info.ts +0 -52
- package/core/renderers/minimalist/minimalist.ts +0 -22
- package/core/renderers/minimalist/renderer.ts +0 -71
- package/core/renderers/thrasos/info.ts +0 -338
- package/core/renderers/thrasos/renderer.ts +0 -48
- package/core/renderers/thrasos/thrasos.ts +0 -20
- package/core/renderers/zelos/constants.ts +0 -858
- package/core/renderers/zelos/drawer.ts +0 -228
- package/core/renderers/zelos/info.ts +0 -593
- package/core/renderers/zelos/marker_svg.ts +0 -151
- package/core/renderers/zelos/measurables/bottom_row.ts +0 -53
- package/core/renderers/zelos/measurables/inputs.ts +0 -56
- package/core/renderers/zelos/measurables/row_elements.ts +0 -45
- package/core/renderers/zelos/measurables/top_row.ts +0 -58
- package/core/renderers/zelos/path_object.ts +0 -215
- package/core/renderers/zelos/renderer.ts +0 -142
- package/core/renderers/zelos/zelos.ts +0 -39
- package/core/scrollbar.ts +0 -870
- package/core/scrollbar_pair.ts +0 -321
- package/core/serialization/blocks.ts +0 -706
- package/core/serialization/exceptions.ts +0 -98
- package/core/serialization/priorities.ts +0 -32
- package/core/serialization/registry.ts +0 -43
- package/core/serialization/variables.ts +0 -96
- package/core/serialization/workspaces.ts +0 -106
- package/core/shortcut_items.ts +0 -266
- package/core/shortcut_registry.ts +0 -355
- package/core/sprites.ts +0 -29
- package/core/theme/classic.ts +0 -54
- package/core/theme/themes.ts +0 -22
- package/core/theme/zelos.ts +0 -91
- package/core/theme.ts +0 -221
- package/core/theme_manager.ts +0 -186
- package/core/toolbox/category.ts +0 -679
- package/core/toolbox/collapsible_category.ts +0 -273
- package/core/toolbox/separator.ts +0 -105
- package/core/toolbox/toolbox.ts +0 -1044
- package/core/toolbox/toolbox_item.ts +0 -147
- package/core/tooltip.ts +0 -463
- package/core/touch.ts +0 -306
- package/core/touch_gesture.ts +0 -295
- package/core/trashcan.ts +0 -671
- package/core/utils/aria.ts +0 -160
- package/core/utils/array.ts +0 -32
- package/core/utils/colour.ts +0 -276
- package/core/utils/coordinate.ts +0 -124
- package/core/utils/deprecation.ts +0 -41
- package/core/utils/dom.ts +0 -408
- package/core/utils/idgenerator.ts +0 -80
- package/core/utils/keycodes.ts +0 -169
- package/core/utils/math.ts +0 -61
- package/core/utils/metrics.ts +0 -97
- package/core/utils/object.ts +0 -95
- package/core/utils/parsing.ts +0 -261
- package/core/utils/rect.ts +0 -62
- package/core/utils/sentinel.ts +0 -23
- package/core/utils/size.ts +0 -51
- package/core/utils/string.ts +0 -308
- package/core/utils/style.ts +0 -306
- package/core/utils/svg.ts +0 -88
- package/core/utils/svg_math.ts +0 -269
- package/core/utils/svg_paths.ts +0 -140
- package/core/utils/toolbox.ts +0 -433
- package/core/utils/useragent.ts +0 -135
- package/core/utils/xml.ts +0 -97
- package/core/utils.ts +0 -428
- package/core/variable_map.ts +0 -392
- package/core/variable_model.ts +0 -82
- package/core/variables.ts +0 -596
- package/core/variables_dynamic.ts +0 -133
- package/core/warning.ts +0 -161
- package/core/widgetdiv.ts +0 -257
- package/core/workspace.ts +0 -801
- package/core/workspace_audio.ts +0 -156
- package/core/workspace_comment.ts +0 -398
- package/core/workspace_comment_svg.ts +0 -1127
- package/core/workspace_drag_surface_svg.ts +0 -187
- package/core/workspace_dragger.ts +0 -104
- package/core/workspace_svg.ts +0 -2655
- package/core/xml.ts +0 -1023
- package/core/zoom_controls.ts +0 -441
- package/generators/dart/all.js +0 -27
- 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 -303
- package/generators/javascript/all.js +0 -27
- 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 -322
- package/generators/lua/all.js +0 -27
- 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 -206
- package/generators/php/all.js +0 -27
- package/generators/php/colour.js +0 -81
- package/generators/php/lists.js +0 -481
- 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 -303
- package/generators/python/all.js +0 -27
- 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 -206
- 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 -333
package/core/utils/aria.ts
DELETED
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2019 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* @fileoverview ARIA-related constants and utilities.
|
|
9
|
-
* These methods are not specific to Blockly, and could be factored out into
|
|
10
|
-
* a JavaScript framework such as Closure.
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* ARIA-related constants and utilities.
|
|
15
|
-
* These methods are not specific to Blockly, and could be factored out into
|
|
16
|
-
* a JavaScript framework such as Closure.
|
|
17
|
-
* @namespace Blockly.utils.aria
|
|
18
|
-
*/
|
|
19
|
-
import * as goog from '../../closure/goog/goog.js';
|
|
20
|
-
goog.declareModuleId('Blockly.utils.aria');
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
/** ARIA states/properties prefix. */
|
|
24
|
-
const ARIA_PREFIX = 'aria-';
|
|
25
|
-
|
|
26
|
-
/** ARIA role attribute. */
|
|
27
|
-
const ROLE_ATTRIBUTE = 'role';
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* ARIA role values.
|
|
31
|
-
* Copied from Closure's goog.a11y.aria.Role
|
|
32
|
-
* @alias Blockly.utils.aria.Role
|
|
33
|
-
*/
|
|
34
|
-
export enum Role {
|
|
35
|
-
// ARIA role for an interactive control of tabular data.
|
|
36
|
-
GRID = 'grid',
|
|
37
|
-
|
|
38
|
-
// ARIA role for a cell in a grid.
|
|
39
|
-
GRIDCELL = 'gridcell',
|
|
40
|
-
// ARIA role for a group of related elements like tree item siblings.
|
|
41
|
-
GROUP = 'group',
|
|
42
|
-
|
|
43
|
-
// ARIA role for a listbox.
|
|
44
|
-
LISTBOX = 'listbox',
|
|
45
|
-
|
|
46
|
-
// ARIA role for a popup menu.
|
|
47
|
-
MENU = 'menu',
|
|
48
|
-
|
|
49
|
-
// ARIA role for menu item elements.
|
|
50
|
-
MENUITEM = 'menuitem',
|
|
51
|
-
// ARIA role for a checkbox box element inside a menu.
|
|
52
|
-
MENUITEMCHECKBOX = 'menuitemcheckbox',
|
|
53
|
-
// ARIA role for option items that are children of combobox, listbox, menu,
|
|
54
|
-
// radiogroup, or tree elements.
|
|
55
|
-
OPTION = 'option',
|
|
56
|
-
// ARIA role for ignorable cosmetic elements with no semantic significance.
|
|
57
|
-
PRESENTATION = 'presentation',
|
|
58
|
-
|
|
59
|
-
// ARIA role for a row of cells in a grid.
|
|
60
|
-
ROW = 'row',
|
|
61
|
-
// ARIA role for a tree.
|
|
62
|
-
TREE = 'tree',
|
|
63
|
-
|
|
64
|
-
// ARIA role for a tree item that sometimes may be expanded or collapsed.
|
|
65
|
-
TREEITEM = 'treeitem'
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* ARIA states and properties.
|
|
70
|
-
* Copied from Closure's goog.a11y.aria.State
|
|
71
|
-
* @alias Blockly.utils.aria.State
|
|
72
|
-
*/
|
|
73
|
-
export enum State {
|
|
74
|
-
// ARIA property for setting the currently active descendant of an element,
|
|
75
|
-
// for example the selected item in a list box. Value: ID of an element.
|
|
76
|
-
ACTIVEDESCENDANT = 'activedescendant',
|
|
77
|
-
// ARIA property defines the total number of columns in a table, grid, or
|
|
78
|
-
// treegrid.
|
|
79
|
-
// Value: integer.
|
|
80
|
-
COLCOUNT = 'colcount',
|
|
81
|
-
// ARIA state for a disabled item. Value: one of {true, false}.
|
|
82
|
-
DISABLED = 'disabled',
|
|
83
|
-
|
|
84
|
-
// ARIA state for setting whether the element like a tree node is expanded.
|
|
85
|
-
// Value: one of {true, false, undefined}.
|
|
86
|
-
EXPANDED = 'expanded',
|
|
87
|
-
|
|
88
|
-
// ARIA state indicating that the entered value does not conform. Value:
|
|
89
|
-
// one of {false, true, 'grammar', 'spelling'}
|
|
90
|
-
INVALID = 'invalid',
|
|
91
|
-
|
|
92
|
-
// ARIA property that provides a label to override any other text, value, or
|
|
93
|
-
// contents used to describe this element. Value: string.
|
|
94
|
-
LABEL = 'label',
|
|
95
|
-
// ARIA property for setting the element which labels another element.
|
|
96
|
-
// Value: space-separated IDs of elements.
|
|
97
|
-
LABELLEDBY = 'labelledby',
|
|
98
|
-
|
|
99
|
-
// ARIA property for setting the level of an element in the hierarchy.
|
|
100
|
-
// Value: integer.
|
|
101
|
-
LEVEL = 'level',
|
|
102
|
-
// ARIA property indicating if the element is horizontal or vertical.
|
|
103
|
-
// Value: one of {'vertical', 'horizontal'}.
|
|
104
|
-
ORIENTATION = 'orientation',
|
|
105
|
-
|
|
106
|
-
// ARIA property that defines an element's number of position in a list.
|
|
107
|
-
// Value: integer.
|
|
108
|
-
POSINSET = 'posinset',
|
|
109
|
-
|
|
110
|
-
// ARIA property defines the total number of rows in a table, grid, or
|
|
111
|
-
// treegrid.
|
|
112
|
-
// Value: integer.
|
|
113
|
-
ROWCOUNT = 'rowcount',
|
|
114
|
-
|
|
115
|
-
// ARIA state for setting the currently selected item in the list.
|
|
116
|
-
// Value: one of {true, false, undefined}.
|
|
117
|
-
SELECTED = 'selected',
|
|
118
|
-
// ARIA property defining the number of items in a list. Value: integer.
|
|
119
|
-
SETSIZE = 'setsize',
|
|
120
|
-
|
|
121
|
-
// ARIA property for slider maximum value. Value: number.
|
|
122
|
-
VALUEMAX = 'valuemax',
|
|
123
|
-
|
|
124
|
-
// ARIA property for slider minimum value. Value: number.
|
|
125
|
-
VALUEMIN = 'valuemin'
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
/**
|
|
129
|
-
* Sets the role of an element.
|
|
130
|
-
*
|
|
131
|
-
* Similar to Closure's goog.a11y.aria
|
|
132
|
-
*
|
|
133
|
-
* @param element DOM node to set role of.
|
|
134
|
-
* @param roleName Role name.
|
|
135
|
-
* @alias Blockly.utils.aria.setRole
|
|
136
|
-
*/
|
|
137
|
-
export function setRole(element: Element, roleName: Role) {
|
|
138
|
-
element.setAttribute(ROLE_ATTRIBUTE, roleName);
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
/**
|
|
142
|
-
* Sets the state or property of an element.
|
|
143
|
-
* Copied from Closure's goog.a11y.aria
|
|
144
|
-
* @param element DOM node where we set state.
|
|
145
|
-
* @param stateName State attribute being set.
|
|
146
|
-
* Automatically adds prefix 'aria-' to the state name if the attribute is
|
|
147
|
-
* not an extra attribute.
|
|
148
|
-
* @param value Value for the state attribute.
|
|
149
|
-
* @alias Blockly.utils.aria.setState
|
|
150
|
-
*/
|
|
151
|
-
export function setState(
|
|
152
|
-
element: Element, stateName: State, value: string|boolean|number|string[]) {
|
|
153
|
-
if (Array.isArray(value)) {
|
|
154
|
-
value = value.join(' ');
|
|
155
|
-
}
|
|
156
|
-
const attrStateName = ARIA_PREFIX + stateName;
|
|
157
|
-
// AnyDuringMigration because: Argument of type 'string | number | boolean'
|
|
158
|
-
// is not assignable to parameter of type 'string'.
|
|
159
|
-
element.setAttribute(attrStateName, value as AnyDuringMigration);
|
|
160
|
-
}
|
package/core/utils/array.ts
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2021 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* @fileoverview Utility methods related to arrays.
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
/** @namespace Blockly.utils.array */
|
|
12
|
-
import * as goog from '../../closure/goog/goog.js';
|
|
13
|
-
goog.declareModuleId('Blockly.utils.array');
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Removes the first occurrence of a particular value from an array.
|
|
18
|
-
* @param arr Array from which to remove value.
|
|
19
|
-
* @param value Value to remove.
|
|
20
|
-
* @return True if an element was removed.
|
|
21
|
-
* @alias Blockly.array.removeElem
|
|
22
|
-
* @internal
|
|
23
|
-
*/
|
|
24
|
-
export function removeElem(
|
|
25
|
-
arr: AnyDuringMigration[], value: AnyDuringMigration): boolean {
|
|
26
|
-
const i = arr.indexOf(value);
|
|
27
|
-
if (i === -1) {
|
|
28
|
-
return false;
|
|
29
|
-
}
|
|
30
|
-
arr.splice(i, 1);
|
|
31
|
-
return true;
|
|
32
|
-
}
|
package/core/utils/colour.ts
DELETED
|
@@ -1,276 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2019 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* @fileoverview Utility methods for colour manipulation.
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Utility methods for colour manipulation.
|
|
13
|
-
* @namespace Blockly.utils.colour
|
|
14
|
-
*/
|
|
15
|
-
import * as goog from '../../closure/goog/goog.js';
|
|
16
|
-
goog.declareModuleId('Blockly.utils.colour');
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* The richness of block colours, regardless of the hue.
|
|
21
|
-
* Must be in the range of 0 (inclusive) to 1 (exclusive).
|
|
22
|
-
* @alias Blockly.utils.colour.hsvSaturation
|
|
23
|
-
*/
|
|
24
|
-
let hsvSaturation = 0.45;
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Get the richness of block colours, regardless of the hue.
|
|
28
|
-
* @alias Blockly.utils.colour.getHsvSaturation
|
|
29
|
-
* @return The current richness.
|
|
30
|
-
* @internal
|
|
31
|
-
*/
|
|
32
|
-
export function getHsvSaturation(): number {
|
|
33
|
-
return hsvSaturation;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* Set the richness of block colours, regardless of the hue.
|
|
38
|
-
* @param newSaturation The new richness, in the range of 0 (inclusive) to 1
|
|
39
|
-
* (exclusive)
|
|
40
|
-
* @alias Blockly.utils.colour.setHsvSaturation
|
|
41
|
-
* @internal
|
|
42
|
-
*/
|
|
43
|
-
export function setHsvSaturation(newSaturation: number) {
|
|
44
|
-
hsvSaturation = newSaturation;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* The intensity of block colours, regardless of the hue.
|
|
49
|
-
* Must be in the range of 0 (inclusive) to 1 (exclusive).
|
|
50
|
-
* @alias Blockly.utils.colour.hsvValue
|
|
51
|
-
*/
|
|
52
|
-
let hsvValue = 0.65;
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Get the intensity of block colours, regardless of the hue.
|
|
56
|
-
* @alias Blockly.utils.colour.getHsvValue
|
|
57
|
-
* @return The current intensity.
|
|
58
|
-
* @internal
|
|
59
|
-
*/
|
|
60
|
-
export function getHsvValue(): number {
|
|
61
|
-
return hsvValue;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* Set the intensity of block colours, regardless of the hue.
|
|
66
|
-
* @param newValue The new intensity, in the range of 0 (inclusive) to 1
|
|
67
|
-
* (exclusive)
|
|
68
|
-
* @alias Blockly.utils.colour.setHsvValue
|
|
69
|
-
* @internal
|
|
70
|
-
*/
|
|
71
|
-
export function setHsvValue(newValue: number) {
|
|
72
|
-
hsvValue = newValue;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* Parses a colour from a string.
|
|
77
|
-
* .parse('red') -> '#ff0000'
|
|
78
|
-
* .parse('#f00') -> '#ff0000'
|
|
79
|
-
* .parse('#ff0000') -> '#ff0000'
|
|
80
|
-
* .parse('0xff0000') -> '#ff0000'
|
|
81
|
-
* .parse('rgb(255, 0, 0)') -> '#ff0000'
|
|
82
|
-
* @param str Colour in some CSS format.
|
|
83
|
-
* @return A string containing a hex representation of the colour, or null if
|
|
84
|
-
* can't be parsed.
|
|
85
|
-
* @alias Blockly.utils.colour.parse
|
|
86
|
-
*/
|
|
87
|
-
export function parse(str: string|number): string|null {
|
|
88
|
-
str = String(str).toLowerCase().trim();
|
|
89
|
-
let hex = names[str];
|
|
90
|
-
if (hex) {
|
|
91
|
-
// e.g. 'red'
|
|
92
|
-
return hex;
|
|
93
|
-
}
|
|
94
|
-
hex = str.substring(0, 2) === '0x' ? '#' + str.substring(2) : str;
|
|
95
|
-
hex = hex[0] === '#' ? hex : '#' + hex;
|
|
96
|
-
if (/^#[0-9a-f]{6}$/.test(hex)) {
|
|
97
|
-
// e.g. '#00ff88'
|
|
98
|
-
return hex;
|
|
99
|
-
}
|
|
100
|
-
if (/^#[0-9a-f]{3}$/.test(hex)) {
|
|
101
|
-
// e.g. '#0f8'
|
|
102
|
-
return ['#', hex[1], hex[1], hex[2], hex[2], hex[3], hex[3]].join('');
|
|
103
|
-
}
|
|
104
|
-
const rgb = str.match(/^(?:rgb)?\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/);
|
|
105
|
-
if (rgb) {
|
|
106
|
-
// e.g. 'rgb(0, 128, 255)'
|
|
107
|
-
const r = Number(rgb[1]);
|
|
108
|
-
const g = Number(rgb[2]);
|
|
109
|
-
const b = Number(rgb[3]);
|
|
110
|
-
if (r >= 0 && r < 256 && g >= 0 && g < 256 && b >= 0 && b < 256) {
|
|
111
|
-
return rgbToHex(r, g, b);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
return null;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
/**
|
|
118
|
-
* Converts a colour from RGB to hex representation.
|
|
119
|
-
* @param r Amount of red, int between 0 and 255.
|
|
120
|
-
* @param g Amount of green, int between 0 and 255.
|
|
121
|
-
* @param b Amount of blue, int between 0 and 255.
|
|
122
|
-
* @return Hex representation of the colour.
|
|
123
|
-
* @alias Blockly.utils.colour.rgbToHex
|
|
124
|
-
*/
|
|
125
|
-
export function rgbToHex(r: number, g: number, b: number): string {
|
|
126
|
-
const rgb = r << 16 | g << 8 | b;
|
|
127
|
-
if (r < 0x10) {
|
|
128
|
-
return '#' + (0x1000000 | rgb).toString(16).substr(1);
|
|
129
|
-
}
|
|
130
|
-
return '#' + rgb.toString(16);
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/**
|
|
134
|
-
* Converts a colour to RGB.
|
|
135
|
-
* @param colour String representing colour in any colour format ('#ff0000',
|
|
136
|
-
* 'red', '0xff000', etc).
|
|
137
|
-
* @return RGB representation of the colour.
|
|
138
|
-
* @alias Blockly.utils.colour.hexToRgb
|
|
139
|
-
*/
|
|
140
|
-
export function hexToRgb(colour: string): number[] {
|
|
141
|
-
const hex = parse(colour);
|
|
142
|
-
if (!hex) {
|
|
143
|
-
return [0, 0, 0];
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
const rgb = parseInt(hex.substr(1), 16);
|
|
147
|
-
const r = rgb >> 16;
|
|
148
|
-
const g = rgb >> 8 & 255;
|
|
149
|
-
const b = rgb & 255;
|
|
150
|
-
|
|
151
|
-
return [r, g, b];
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
/**
|
|
155
|
-
* Converts an HSV triplet to hex representation.
|
|
156
|
-
* @param h Hue value in [0, 360].
|
|
157
|
-
* @param s Saturation value in [0, 1].
|
|
158
|
-
* @param v Brightness in [0, 255].
|
|
159
|
-
* @return Hex representation of the colour.
|
|
160
|
-
* @alias Blockly.utils.colour.hsvToHex
|
|
161
|
-
*/
|
|
162
|
-
export function hsvToHex(h: number, s: number, v: number): string {
|
|
163
|
-
let red = 0;
|
|
164
|
-
let green = 0;
|
|
165
|
-
let blue = 0;
|
|
166
|
-
if (s === 0) {
|
|
167
|
-
red = v;
|
|
168
|
-
green = v;
|
|
169
|
-
blue = v;
|
|
170
|
-
} else {
|
|
171
|
-
const sextant = Math.floor(h / 60);
|
|
172
|
-
const remainder = h / 60 - sextant;
|
|
173
|
-
const val1 = v * (1 - s);
|
|
174
|
-
const val2 = v * (1 - s * remainder);
|
|
175
|
-
const val3 = v * (1 - s * (1 - remainder));
|
|
176
|
-
switch (sextant) {
|
|
177
|
-
case 1:
|
|
178
|
-
red = val2;
|
|
179
|
-
green = v;
|
|
180
|
-
blue = val1;
|
|
181
|
-
break;
|
|
182
|
-
case 2:
|
|
183
|
-
red = val1;
|
|
184
|
-
green = v;
|
|
185
|
-
blue = val3;
|
|
186
|
-
break;
|
|
187
|
-
case 3:
|
|
188
|
-
red = val1;
|
|
189
|
-
green = val2;
|
|
190
|
-
blue = v;
|
|
191
|
-
break;
|
|
192
|
-
case 4:
|
|
193
|
-
red = val3;
|
|
194
|
-
green = val1;
|
|
195
|
-
blue = v;
|
|
196
|
-
break;
|
|
197
|
-
case 5:
|
|
198
|
-
red = v;
|
|
199
|
-
green = val1;
|
|
200
|
-
blue = val2;
|
|
201
|
-
break;
|
|
202
|
-
case 6:
|
|
203
|
-
case 0:
|
|
204
|
-
red = v;
|
|
205
|
-
green = val3;
|
|
206
|
-
blue = val1;
|
|
207
|
-
break;
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
return rgbToHex(Math.floor(red), Math.floor(green), Math.floor(blue));
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
/**
|
|
214
|
-
* Blend two colours together, using the specified factor to indicate the
|
|
215
|
-
* weight given to the first colour.
|
|
216
|
-
* @param colour1 First colour.
|
|
217
|
-
* @param colour2 Second colour.
|
|
218
|
-
* @param factor The weight to be given to colour1 over colour2.
|
|
219
|
-
* Values should be in the range [0, 1].
|
|
220
|
-
* @return Combined colour represented in hex.
|
|
221
|
-
* @alias Blockly.utils.colour.blend
|
|
222
|
-
*/
|
|
223
|
-
export function blend(colour1: string, colour2: string, factor: number): string|
|
|
224
|
-
null {
|
|
225
|
-
const hex1 = parse(colour1);
|
|
226
|
-
if (!hex1) {
|
|
227
|
-
return null;
|
|
228
|
-
}
|
|
229
|
-
const hex2 = parse(colour2);
|
|
230
|
-
if (!hex2) {
|
|
231
|
-
return null;
|
|
232
|
-
}
|
|
233
|
-
const rgb1 = hexToRgb(hex1);
|
|
234
|
-
const rgb2 = hexToRgb(hex2);
|
|
235
|
-
const r = Math.round(rgb2[0] + factor * (rgb1[0] - rgb2[0]));
|
|
236
|
-
const g = Math.round(rgb2[1] + factor * (rgb1[1] - rgb2[1]));
|
|
237
|
-
const b = Math.round(rgb2[2] + factor * (rgb1[2] - rgb2[2]));
|
|
238
|
-
return rgbToHex(r, g, b);
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
/**
|
|
242
|
-
* A map that contains the 16 basic colour keywords as defined by W3C:
|
|
243
|
-
* https://www.w3.org/TR/2018/REC-css-color-3-20180619/#html4
|
|
244
|
-
* The keys of this map are the lowercase "readable" names of the colours,
|
|
245
|
-
* while the values are the "hex" values.
|
|
246
|
-
*
|
|
247
|
-
* @alias Blockly.utils.colour.names
|
|
248
|
-
*/
|
|
249
|
-
export const names: {[key: string]: string} = {
|
|
250
|
-
'aqua': '#00ffff',
|
|
251
|
-
'black': '#000000',
|
|
252
|
-
'blue': '#0000ff',
|
|
253
|
-
'fuchsia': '#ff00ff',
|
|
254
|
-
'gray': '#808080',
|
|
255
|
-
'green': '#008000',
|
|
256
|
-
'lime': '#00ff00',
|
|
257
|
-
'maroon': '#800000',
|
|
258
|
-
'navy': '#000080',
|
|
259
|
-
'olive': '#808000',
|
|
260
|
-
'purple': '#800080',
|
|
261
|
-
'red': '#ff0000',
|
|
262
|
-
'silver': '#c0c0c0',
|
|
263
|
-
'teal': '#008080',
|
|
264
|
-
'white': '#ffffff',
|
|
265
|
-
'yellow': '#ffff00',
|
|
266
|
-
};
|
|
267
|
-
|
|
268
|
-
/**
|
|
269
|
-
* Convert a hue (HSV model) into an RGB hex triplet.
|
|
270
|
-
* @param hue Hue on a colour wheel (0-360).
|
|
271
|
-
* @return RGB code, e.g. '#5ba65b'.
|
|
272
|
-
* @alias Blockly.utils.colour.hueToHex
|
|
273
|
-
*/
|
|
274
|
-
export function hueToHex(hue: number): string {
|
|
275
|
-
return hsvToHex(hue, hsvSaturation, hsvValue * 255);
|
|
276
|
-
}
|
package/core/utils/coordinate.ts
DELETED
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2019 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* @fileoverview Utility methods for coordinate manipulation.
|
|
9
|
-
* These methods are not specific to Blockly, and could be factored out into
|
|
10
|
-
* a JavaScript framework such as Closure.
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Utility methods for coordinate manipulation.
|
|
15
|
-
* These methods are not specific to Blockly, and could be factored out into
|
|
16
|
-
* a JavaScript framework such as Closure.
|
|
17
|
-
* @class
|
|
18
|
-
*/
|
|
19
|
-
import * as goog from '../../closure/goog/goog.js';
|
|
20
|
-
goog.declareModuleId('Blockly.utils.Coordinate');
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Class for representing coordinates and positions.
|
|
25
|
-
* @alias Blockly.utils.Coordinate
|
|
26
|
-
*/
|
|
27
|
-
export class Coordinate {
|
|
28
|
-
/**
|
|
29
|
-
* @param x Left.
|
|
30
|
-
* @param y Top.
|
|
31
|
-
*/
|
|
32
|
-
constructor(public x: number, public y: number) {}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Creates a new copy of this coordinate.
|
|
36
|
-
* @return A copy of this coordinate.
|
|
37
|
-
*/
|
|
38
|
-
clone(): Coordinate {
|
|
39
|
-
return new Coordinate(this.x, this.y);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Scales this coordinate by the given scale factor.
|
|
44
|
-
* @param s The scale factor to use for both x and y dimensions.
|
|
45
|
-
* @return This coordinate after scaling.
|
|
46
|
-
*/
|
|
47
|
-
scale(s: number): Coordinate {
|
|
48
|
-
this.x *= s;
|
|
49
|
-
this.y *= s;
|
|
50
|
-
return this;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* Translates this coordinate by the given offsets.
|
|
55
|
-
* respectively.
|
|
56
|
-
* @param tx The value to translate x by.
|
|
57
|
-
* @param ty The value to translate y by.
|
|
58
|
-
* @return This coordinate after translating.
|
|
59
|
-
*/
|
|
60
|
-
translate(tx: number, ty: number): Coordinate {
|
|
61
|
-
this.x += tx;
|
|
62
|
-
this.y += ty;
|
|
63
|
-
return this;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
/**
|
|
67
|
-
* Compares coordinates for equality.
|
|
68
|
-
* @param a A Coordinate.
|
|
69
|
-
* @param b A Coordinate.
|
|
70
|
-
* @return True iff the coordinates are equal, or if both are null.
|
|
71
|
-
*/
|
|
72
|
-
static equals(a: Coordinate|null, b: Coordinate|null): boolean {
|
|
73
|
-
if (a === b) {
|
|
74
|
-
return true;
|
|
75
|
-
}
|
|
76
|
-
if (!a || !b) {
|
|
77
|
-
return false;
|
|
78
|
-
}
|
|
79
|
-
return a.x === b.x && a.y === b.y;
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* Returns the distance between two coordinates.
|
|
84
|
-
* @param a A Coordinate.
|
|
85
|
-
* @param b A Coordinate.
|
|
86
|
-
* @return The distance between `a` and `b`.
|
|
87
|
-
*/
|
|
88
|
-
static distance(a: Coordinate, b: Coordinate): number {
|
|
89
|
-
const dx = a.x - b.x;
|
|
90
|
-
const dy = a.y - b.y;
|
|
91
|
-
return Math.sqrt(dx * dx + dy * dy);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
/**
|
|
95
|
-
* Returns the magnitude of a coordinate.
|
|
96
|
-
* @param a A Coordinate.
|
|
97
|
-
* @return The distance between the origin and `a`.
|
|
98
|
-
*/
|
|
99
|
-
static magnitude(a: Coordinate): number {
|
|
100
|
-
return Math.sqrt(a.x * a.x + a.y * a.y);
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
/**
|
|
104
|
-
* Returns the difference between two coordinates as a new
|
|
105
|
-
* Coordinate.
|
|
106
|
-
* @param a An x/y coordinate.
|
|
107
|
-
* @param b An x/y coordinate.
|
|
108
|
-
* @return A Coordinate representing the difference between `a` and `b`.
|
|
109
|
-
*/
|
|
110
|
-
static difference(a: Coordinate|SVGPoint, b: Coordinate|SVGPoint):
|
|
111
|
-
Coordinate {
|
|
112
|
-
return new Coordinate(a.x - b.x, a.y - b.y);
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
/**
|
|
116
|
-
* Returns the sum of two coordinates as a new Coordinate.
|
|
117
|
-
* @param a An x/y coordinate.
|
|
118
|
-
* @param b An x/y coordinate.
|
|
119
|
-
* @return A Coordinate representing the sum of the two coordinates.
|
|
120
|
-
*/
|
|
121
|
-
static sum(a: Coordinate|SVGPoint, b: Coordinate|SVGPoint): Coordinate {
|
|
122
|
-
return new Coordinate(a.x + b.x, a.y + b.y);
|
|
123
|
-
}
|
|
124
|
-
}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2020 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* @fileoverview Helper function for warning developers about deprecations.
|
|
9
|
-
* This method is not specific to Blockly.
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Helper function for warning developers about deprecations.
|
|
14
|
-
* This method is not specific to Blockly.
|
|
15
|
-
* @namespace Blockly.utils.deprecation
|
|
16
|
-
*/
|
|
17
|
-
import * as goog from '../../closure/goog/goog.js';
|
|
18
|
-
goog.declareModuleId('Blockly.utils.deprecation');
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Warn developers that a function or property is deprecated.
|
|
23
|
-
* @param name The name of the function or property.
|
|
24
|
-
* @param deprecationDate The date of deprecation.
|
|
25
|
-
* Prefer 'month yyyy' or 'quarter yyyy' format.
|
|
26
|
-
* @param deletionDate The date of deletion, in the same format as the
|
|
27
|
-
* deprecation date.
|
|
28
|
-
* @param opt_use The name of a function or property to use instead, if any.
|
|
29
|
-
* @alias Blockly.utils.deprecation.warn
|
|
30
|
-
* @internal
|
|
31
|
-
*/
|
|
32
|
-
export function warn(
|
|
33
|
-
name: string, deprecationDate: string, deletionDate: string,
|
|
34
|
-
opt_use?: string) {
|
|
35
|
-
let msg = name + ' was deprecated on ' + deprecationDate +
|
|
36
|
-
' and will be deleted on ' + deletionDate + '.';
|
|
37
|
-
if (opt_use) {
|
|
38
|
-
msg += '\nUse ' + opt_use + ' instead.';
|
|
39
|
-
}
|
|
40
|
-
console.warn(msg);
|
|
41
|
-
}
|