blockly 12.0.0-beta.4 → 12.0.0-beta.6
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 +715 -664
- package/blockly.mjs +11 -1
- package/blockly_compressed.js +679 -661
- package/blockly_compressed.js.map +1 -1
- package/blocks_compressed.js +3 -3
- package/blocks_compressed.js.map +1 -1
- package/core/block.d.ts +1 -16
- package/core/block_svg.d.ts +19 -31
- package/core/blockly.d.ts +15 -7
- package/core/bubbles/bubble.d.ts +22 -3
- package/core/bubbles/textinput_bubble.d.ts +3 -5
- package/core/comments/rendered_workspace_comment.d.ts +11 -0
- package/core/common.d.ts +19 -7
- package/core/connection.d.ts +3 -2
- package/core/contextmenu_registry.d.ts +11 -9
- package/core/dialog.d.ts +36 -16
- package/core/events/events.d.ts +0 -2
- package/core/events/predicates.d.ts +0 -3
- package/core/events/utils.d.ts +1 -5
- package/core/field.d.ts +28 -30
- package/core/field_dropdown.d.ts +17 -3
- package/core/field_image.d.ts +0 -2
- package/core/field_input.d.ts +9 -0
- package/core/field_variable.d.ts +0 -2
- package/core/flyout_base.d.ts +25 -1
- package/core/flyout_button.d.ts +15 -13
- package/core/flyout_item.d.ts +3 -9
- package/core/flyout_navigator.d.ts +11 -0
- package/core/flyout_separator.d.ts +20 -1
- package/core/focus_manager.d.ts +86 -14
- package/core/icons/comment_icon.d.ts +3 -0
- package/core/icons/icon.d.ts +13 -0
- package/core/icons/mutator_icon.d.ts +3 -0
- package/core/icons/warning_icon.d.ts +3 -0
- package/core/interfaces/i_autohideable.d.ts +2 -0
- package/core/interfaces/i_bubble.d.ts +2 -1
- package/core/interfaces/i_flyout.d.ts +2 -1
- package/core/interfaces/i_focusable_node.d.ts +71 -8
- package/core/interfaces/i_focusable_tree.d.ts +67 -0
- package/core/interfaces/i_has_bubble.d.ts +13 -0
- package/core/interfaces/i_icon.d.ts +2 -1
- package/core/interfaces/i_navigation_policy.d.ts +63 -0
- package/core/interfaces/i_selectable.d.ts +7 -1
- package/core/interfaces/i_toolbox.d.ts +2 -1
- package/core/interfaces/i_toolbox_item.d.ts +2 -1
- package/core/keyboard_nav/block_navigation_policy.d.ts +59 -0
- package/core/keyboard_nav/connection_navigation_policy.d.ts +67 -0
- package/core/keyboard_nav/field_navigation_policy.d.ts +56 -0
- package/core/keyboard_nav/flyout_button_navigation_policy.d.ts +56 -0
- package/core/keyboard_nav/flyout_navigation_policy.d.ts +65 -0
- package/core/keyboard_nav/flyout_separator_navigation_policy.d.ts +33 -0
- package/core/keyboard_nav/line_cursor.d.ts +24 -185
- package/core/keyboard_nav/marker.d.ts +17 -29
- package/core/keyboard_nav/workspace_navigation_policy.d.ts +56 -0
- package/core/layer_manager.d.ts +3 -2
- package/core/marker_manager.d.ts +0 -26
- package/core/navigator.d.ts +65 -0
- package/core/rendered_connection.d.ts +24 -1
- package/core/renderers/common/block_rendering.d.ts +1 -2
- package/core/renderers/common/drawer.d.ts +1 -1
- package/core/renderers/common/i_path_object.d.ts +1 -25
- package/core/renderers/common/path_object.d.ts +1 -26
- package/core/renderers/common/renderer.d.ts +0 -11
- package/core/renderers/zelos/drawer.d.ts +1 -1
- package/core/renderers/zelos/renderer.d.ts +0 -11
- package/core/renderers/zelos/zelos.d.ts +1 -2
- package/core/shortcut_registry.d.ts +7 -2
- package/core/toast.d.ts +74 -0
- package/core/toolbox/toolbox.d.ts +25 -1
- package/core/toolbox/toolbox_item.d.ts +11 -0
- package/core/utils/aria.d.ts +5 -2
- package/core/utils/object.d.ts +3 -0
- package/core/variable_map.d.ts +11 -6
- package/core/variables.d.ts +3 -1
- package/core/workspace.d.ts +11 -11
- package/core/workspace_dragger.d.ts +5 -0
- package/core/workspace_svg.d.ts +99 -48
- package/index.mjs +11 -1
- package/msg/ab.js +33 -0
- package/msg/ab.mjs +33 -0
- package/msg/ace.js +33 -0
- package/msg/ace.mjs +33 -0
- package/msg/af.js +33 -0
- package/msg/af.mjs +33 -0
- package/msg/am.js +33 -0
- package/msg/am.mjs +33 -0
- package/msg/ar.js +33 -0
- package/msg/ar.mjs +33 -0
- package/msg/ast.js +33 -0
- package/msg/ast.mjs +33 -0
- package/msg/az.js +33 -0
- package/msg/az.mjs +33 -0
- package/msg/ba.js +33 -0
- package/msg/ba.mjs +33 -0
- package/msg/bcc.js +33 -0
- package/msg/bcc.mjs +33 -0
- package/msg/be-tarask.js +33 -0
- package/msg/be-tarask.mjs +33 -0
- package/msg/be.js +33 -0
- package/msg/be.mjs +33 -0
- package/msg/bg.js +33 -0
- package/msg/bg.mjs +33 -0
- package/msg/bn.js +33 -0
- package/msg/bn.mjs +33 -0
- package/msg/br.js +33 -0
- package/msg/br.mjs +33 -0
- package/msg/bs.js +33 -0
- package/msg/bs.mjs +33 -0
- package/msg/ca.js +33 -0
- package/msg/ca.mjs +33 -0
- package/msg/cdo.js +33 -0
- package/msg/cdo.mjs +33 -0
- package/msg/ce.js +33 -0
- package/msg/ce.mjs +33 -0
- package/msg/cs.js +33 -0
- package/msg/cs.mjs +33 -0
- package/msg/da.js +33 -0
- package/msg/da.mjs +33 -0
- package/msg/de.js +33 -0
- package/msg/de.mjs +33 -0
- package/msg/diq.js +33 -0
- package/msg/diq.mjs +33 -0
- package/msg/dtp.js +33 -0
- package/msg/dtp.mjs +33 -0
- package/msg/dty.js +33 -0
- package/msg/dty.mjs +33 -0
- package/msg/ee.js +33 -0
- package/msg/ee.mjs +33 -0
- package/msg/el.js +33 -0
- package/msg/el.mjs +33 -0
- package/msg/en-gb.js +33 -0
- package/msg/en-gb.mjs +33 -0
- package/msg/en.js +33 -0
- package/msg/en.mjs +33 -0
- package/msg/eo.js +33 -0
- package/msg/eo.mjs +33 -0
- package/msg/es.js +33 -0
- package/msg/es.mjs +33 -0
- package/msg/et.js +33 -0
- package/msg/et.mjs +33 -0
- package/msg/eu.js +33 -0
- package/msg/eu.mjs +33 -0
- package/msg/fa.js +33 -0
- package/msg/fa.mjs +33 -0
- package/msg/fi.js +33 -0
- package/msg/fi.mjs +33 -0
- package/msg/fo.js +33 -0
- package/msg/fo.mjs +33 -0
- package/msg/fr.js +33 -0
- package/msg/fr.mjs +33 -0
- package/msg/frr.js +33 -0
- package/msg/frr.mjs +33 -0
- package/msg/gl.js +33 -0
- package/msg/gl.mjs +33 -0
- package/msg/gn.js +33 -0
- package/msg/gn.mjs +33 -0
- package/msg/gor.js +33 -0
- package/msg/gor.mjs +33 -0
- package/msg/ha.js +33 -0
- package/msg/ha.mjs +33 -0
- package/msg/hak.js +33 -0
- package/msg/hak.mjs +33 -0
- package/msg/he.js +33 -0
- package/msg/he.mjs +33 -0
- package/msg/hi.js +33 -0
- package/msg/hi.mjs +33 -0
- package/msg/hr.js +33 -0
- package/msg/hr.mjs +33 -0
- package/msg/hrx.js +33 -0
- package/msg/hrx.mjs +33 -0
- package/msg/hsb.js +33 -0
- package/msg/hsb.mjs +33 -0
- package/msg/hu.js +33 -0
- package/msg/hu.mjs +33 -0
- package/msg/hy.js +33 -0
- package/msg/hy.mjs +33 -0
- package/msg/ia.js +33 -0
- package/msg/ia.mjs +33 -0
- package/msg/id.js +33 -0
- package/msg/id.mjs +33 -0
- package/msg/ig.js +33 -0
- package/msg/ig.mjs +33 -0
- package/msg/inh.js +33 -0
- package/msg/inh.mjs +33 -0
- package/msg/is.js +33 -0
- package/msg/is.mjs +33 -0
- package/msg/it.js +33 -0
- package/msg/it.mjs +33 -0
- package/msg/ja.js +33 -0
- package/msg/ja.mjs +33 -0
- package/msg/ka.js +33 -0
- package/msg/ka.mjs +33 -0
- package/msg/kab.js +33 -0
- package/msg/kab.mjs +33 -0
- package/msg/kbd-cyrl.js +33 -0
- package/msg/kbd-cyrl.mjs +33 -0
- package/msg/km.js +33 -0
- package/msg/km.mjs +33 -0
- package/msg/kn.js +33 -0
- package/msg/kn.mjs +33 -0
- package/msg/ko.js +33 -0
- package/msg/ko.mjs +33 -0
- package/msg/ksh.js +33 -0
- package/msg/ksh.mjs +33 -0
- package/msg/ku-latn.js +33 -0
- package/msg/ku-latn.mjs +33 -0
- package/msg/ky.js +33 -0
- package/msg/ky.mjs +33 -0
- package/msg/la.js +33 -0
- package/msg/la.mjs +33 -0
- package/msg/lb.js +33 -0
- package/msg/lb.mjs +33 -0
- package/msg/lki.js +33 -0
- package/msg/lki.mjs +33 -0
- package/msg/lo.js +33 -0
- package/msg/lo.mjs +33 -0
- package/msg/lrc.js +33 -0
- package/msg/lrc.mjs +33 -0
- package/msg/lt.js +33 -0
- package/msg/lt.mjs +33 -0
- package/msg/lv.js +33 -0
- package/msg/lv.mjs +33 -0
- package/msg/mg.js +33 -0
- package/msg/mg.mjs +33 -0
- package/msg/mk.js +33 -0
- package/msg/mk.mjs +33 -0
- package/msg/ml.js +33 -0
- package/msg/ml.mjs +33 -0
- package/msg/mnw.js +33 -0
- package/msg/mnw.mjs +33 -0
- package/msg/ms.js +33 -0
- package/msg/ms.mjs +33 -0
- package/msg/my.js +33 -0
- package/msg/my.mjs +33 -0
- package/msg/mzn.js +33 -0
- package/msg/mzn.mjs +33 -0
- package/msg/nb.js +33 -0
- package/msg/nb.mjs +33 -0
- package/msg/ne.js +33 -0
- package/msg/ne.mjs +33 -0
- package/msg/nl.js +33 -0
- package/msg/nl.mjs +33 -0
- package/msg/oc.js +33 -0
- package/msg/oc.mjs +33 -0
- package/msg/olo.js +33 -0
- package/msg/olo.mjs +33 -0
- package/msg/pa.js +33 -0
- package/msg/pa.mjs +33 -0
- package/msg/pl.js +33 -0
- package/msg/pl.mjs +33 -0
- package/msg/pms.js +33 -0
- package/msg/pms.mjs +33 -0
- package/msg/ps.js +33 -0
- package/msg/ps.mjs +33 -0
- package/msg/pt-br.js +33 -0
- package/msg/pt-br.mjs +33 -0
- package/msg/pt.js +33 -0
- package/msg/pt.mjs +33 -0
- package/msg/ro.js +33 -0
- package/msg/ro.mjs +33 -0
- package/msg/ru.js +33 -0
- package/msg/ru.mjs +33 -0
- package/msg/sc.js +33 -0
- package/msg/sc.mjs +33 -0
- package/msg/sco.js +33 -0
- package/msg/sco.mjs +33 -0
- package/msg/sd.js +33 -0
- package/msg/sd.mjs +33 -0
- package/msg/shn.js +33 -0
- package/msg/shn.mjs +33 -0
- package/msg/si.js +33 -0
- package/msg/si.mjs +33 -0
- package/msg/sk.js +33 -0
- package/msg/sk.mjs +33 -0
- package/msg/skr-arab.js +33 -0
- package/msg/skr-arab.mjs +33 -0
- package/msg/sl.js +33 -0
- package/msg/sl.mjs +33 -0
- package/msg/smn.js +33 -0
- package/msg/smn.mjs +33 -0
- package/msg/sq.js +33 -0
- package/msg/sq.mjs +33 -0
- package/msg/sr-latn.js +33 -0
- package/msg/sr-latn.mjs +33 -0
- package/msg/sr.js +33 -0
- package/msg/sr.mjs +33 -0
- package/msg/sv.js +33 -0
- package/msg/sv.mjs +33 -0
- package/msg/sw.js +33 -0
- package/msg/sw.mjs +33 -0
- package/msg/ta.js +33 -0
- package/msg/ta.mjs +33 -0
- package/msg/tcy.js +33 -0
- package/msg/tcy.mjs +33 -0
- package/msg/tdd.js +33 -0
- package/msg/tdd.mjs +33 -0
- package/msg/te.js +33 -0
- package/msg/te.mjs +33 -0
- package/msg/th.js +33 -0
- package/msg/th.mjs +33 -0
- package/msg/ti.js +33 -0
- package/msg/ti.mjs +33 -0
- package/msg/tl.js +33 -0
- package/msg/tl.mjs +33 -0
- package/msg/tlh.js +33 -0
- package/msg/tlh.mjs +33 -0
- package/msg/tr.js +33 -0
- package/msg/tr.mjs +33 -0
- package/msg/ug-arab.js +33 -0
- package/msg/ug-arab.mjs +33 -0
- package/msg/uk.js +33 -0
- package/msg/uk.mjs +33 -0
- package/msg/ur.js +33 -0
- package/msg/ur.mjs +33 -0
- package/msg/uz.js +33 -0
- package/msg/uz.mjs +33 -0
- package/msg/vi.js +33 -0
- package/msg/vi.mjs +33 -0
- package/msg/xmf.js +33 -0
- package/msg/xmf.mjs +33 -0
- package/msg/yo.js +33 -0
- package/msg/yo.mjs +33 -0
- package/msg/zgh.js +33 -0
- package/msg/zgh.mjs +33 -0
- package/msg/zh-hans.js +33 -0
- package/msg/zh-hans.mjs +33 -0
- package/msg/zh-hant.js +33 -0
- package/msg/zh-hant.mjs +33 -0
- package/package.json +4 -4
- package/core/events/events_marker_move.d.ts +0 -69
- package/core/interfaces/i_ast_node_location.d.ts +0 -11
- package/core/interfaces/i_ast_node_location_svg.d.ts +0 -24
- package/core/interfaces/i_ast_node_location_with_block.d.ts +0 -19
- package/core/keyboard_nav/ast_node.d.ts +0 -297
- package/core/renderers/common/marker_svg.d.ts +0 -256
- package/core/renderers/zelos/marker_svg.d.ts +0 -49
package/core/workspace_svg.d.ts
CHANGED
|
@@ -20,18 +20,19 @@ import { ContextMenuOption } from './contextmenu_registry.js';
|
|
|
20
20
|
import type { FlyoutButton } from './flyout_button.js';
|
|
21
21
|
import { Gesture } from './gesture.js';
|
|
22
22
|
import { Grid } from './grid.js';
|
|
23
|
-
import type { IASTNodeLocationSvg } from './interfaces/i_ast_node_location_svg.js';
|
|
24
23
|
import type { IBoundedElement } from './interfaces/i_bounded_element.js';
|
|
25
24
|
import { IContextMenu } from './interfaces/i_contextmenu.js';
|
|
26
25
|
import type { IDragTarget } from './interfaces/i_drag_target.js';
|
|
27
26
|
import type { IFlyout } from './interfaces/i_flyout.js';
|
|
27
|
+
import { type IFocusableNode } from './interfaces/i_focusable_node.js';
|
|
28
|
+
import type { IFocusableTree } from './interfaces/i_focusable_tree.js';
|
|
28
29
|
import type { IMetricsManager } from './interfaces/i_metrics_manager.js';
|
|
29
30
|
import type { IToolbox } from './interfaces/i_toolbox.js';
|
|
30
|
-
import type { IVariableModel, IVariableState } from './interfaces/i_variable_model.js';
|
|
31
31
|
import type { LineCursor } from './keyboard_nav/line_cursor.js';
|
|
32
32
|
import type { Marker } from './keyboard_nav/marker.js';
|
|
33
33
|
import { LayerManager } from './layer_manager.js';
|
|
34
34
|
import { MarkerManager } from './marker_manager.js';
|
|
35
|
+
import { Navigator } from './navigator.js';
|
|
35
36
|
import { Options } from './options.js';
|
|
36
37
|
import type { Renderer } from './renderers/common/renderer.js';
|
|
37
38
|
import type { ScrollbarPair } from './scrollbar_pair.js';
|
|
@@ -51,7 +52,7 @@ import { ZoomControls } from './zoom_controls.js';
|
|
|
51
52
|
* Class for a workspace. This is an onscreen area with optional trashcan,
|
|
52
53
|
* scrollbars, bubbles, and dragging.
|
|
53
54
|
*/
|
|
54
|
-
export declare class WorkspaceSvg extends Workspace implements
|
|
55
|
+
export declare class WorkspaceSvg extends Workspace implements IContextMenu, IFocusableNode, IFocusableTree {
|
|
55
56
|
/**
|
|
56
57
|
* A wrapper function called when a resize event occurs.
|
|
57
58
|
* You can pass the result to `eventHandling.unbind`.
|
|
@@ -235,6 +236,8 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
235
236
|
private cachedParentSvg;
|
|
236
237
|
/** True if keyboard accessibility mode is on, false otherwise. */
|
|
237
238
|
keyboardAccessibilityMode: boolean;
|
|
239
|
+
/** True iff a keyboard-initiated move ("drag") is in progress. */
|
|
240
|
+
keyboardMoveInProgress: boolean;
|
|
238
241
|
/** The list of top-level bounded elements on the workspace. */
|
|
239
242
|
private topBoundedElements;
|
|
240
243
|
/** The recorded drag targets. */
|
|
@@ -246,6 +249,11 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
246
249
|
svgBlockCanvas_: SVGElement;
|
|
247
250
|
svgBubbleCanvas_: SVGElement;
|
|
248
251
|
zoomControls_: ZoomControls | null;
|
|
252
|
+
/**
|
|
253
|
+
* Navigator that handles moving focus between items in this workspace in
|
|
254
|
+
* response to keyboard navigation commands.
|
|
255
|
+
*/
|
|
256
|
+
private navigator;
|
|
249
257
|
/**
|
|
250
258
|
* @param options Dictionary of options.
|
|
251
259
|
*/
|
|
@@ -275,22 +283,6 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
275
283
|
* @returns The component manager.
|
|
276
284
|
*/
|
|
277
285
|
getComponentManager(): ComponentManager;
|
|
278
|
-
/**
|
|
279
|
-
* Add the cursor SVG to this workspaces SVG group.
|
|
280
|
-
*
|
|
281
|
-
* @param cursorSvg The SVG root of the cursor to be added to the workspace
|
|
282
|
-
* SVG group.
|
|
283
|
-
* @internal
|
|
284
|
-
*/
|
|
285
|
-
setCursorSvg(cursorSvg: SVGElement): void;
|
|
286
|
-
/**
|
|
287
|
-
* Add the marker SVG to this workspaces SVG group.
|
|
288
|
-
*
|
|
289
|
-
* @param markerSvg The SVG root of the marker to be added to the workspace
|
|
290
|
-
* SVG group.
|
|
291
|
-
* @internal
|
|
292
|
-
*/
|
|
293
|
-
setMarkerSvg(markerSvg: SVGElement): void;
|
|
294
286
|
/**
|
|
295
287
|
* Get the marker with the given ID.
|
|
296
288
|
*
|
|
@@ -443,6 +435,13 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
443
435
|
* @internal
|
|
444
436
|
*/
|
|
445
437
|
addZoomControls(): void;
|
|
438
|
+
/**
|
|
439
|
+
* Creates a new set of options from this workspace's options with just the
|
|
440
|
+
* values that are relevant to a flyout.
|
|
441
|
+
*
|
|
442
|
+
* @returns A subset of this workspace's options.
|
|
443
|
+
*/
|
|
444
|
+
copyOptionsForFlyout(): Options;
|
|
446
445
|
/**
|
|
447
446
|
* Add a flyout element in an element with the given tag name.
|
|
448
447
|
*
|
|
@@ -574,38 +573,17 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
574
573
|
*/
|
|
575
574
|
highlightBlock(id: string | null, opt_state?: boolean): void;
|
|
576
575
|
/**
|
|
577
|
-
*
|
|
576
|
+
* Handles any necessary updates when a variable changes.
|
|
578
577
|
*
|
|
579
578
|
* @internal
|
|
580
579
|
*/
|
|
581
|
-
|
|
582
|
-
/**
|
|
583
|
-
* Rename a variable by updating its name in the variable map. Update the
|
|
584
|
-
* flyout to show the renamed variable immediately.
|
|
585
|
-
*
|
|
586
|
-
* @param id ID of the variable to rename.
|
|
587
|
-
* @param newName New variable name.
|
|
588
|
-
*/
|
|
589
|
-
renameVariableById(id: string, newName: string): void;
|
|
580
|
+
private variableChangeCallback;
|
|
590
581
|
/**
|
|
591
|
-
*
|
|
592
|
-
* immediately that the variable is deleted.
|
|
593
|
-
*
|
|
594
|
-
* @param id ID of variable to delete.
|
|
595
|
-
*/
|
|
596
|
-
deleteVariableById(id: string): void;
|
|
597
|
-
/**
|
|
598
|
-
* Create a new variable with the given name. Update the flyout to show the
|
|
599
|
-
* new variable immediately.
|
|
582
|
+
* Refresh the toolbox unless there's a drag in progress.
|
|
600
583
|
*
|
|
601
|
-
* @
|
|
602
|
-
* @param opt_type The type of the variable like 'int' or 'string'.
|
|
603
|
-
* Does not need to be unique. Field_variable can filter variables based
|
|
604
|
-
* on their type. This will default to '' which is a specific type.
|
|
605
|
-
* @param opt_id The unique ID of the variable. This will default to a UUID.
|
|
606
|
-
* @returns The newly created variable.
|
|
584
|
+
* @internal
|
|
607
585
|
*/
|
|
608
|
-
|
|
586
|
+
refreshToolboxSelection(): void;
|
|
609
587
|
/** Make a list of all the delete areas for this workspace. */
|
|
610
588
|
recordDragTargets(): void;
|
|
611
589
|
/**
|
|
@@ -655,9 +633,36 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
655
633
|
*/
|
|
656
634
|
moveDrag(e: PointerEvent): Coordinate;
|
|
657
635
|
/**
|
|
658
|
-
*
|
|
636
|
+
* Indicate whether a keyboard move is in progress or not.
|
|
637
|
+
*
|
|
638
|
+
* Should be called with true when a keyboard move of an IDraggable
|
|
639
|
+
* is starts, and false when it finishes or is aborted.
|
|
640
|
+
*
|
|
641
|
+
* N.B.: This method is experimental and internal-only. It is
|
|
642
|
+
* intended only to called only from the keyboard navigation plugin.
|
|
643
|
+
* Its signature and behaviour may be modified, or the method
|
|
644
|
+
* removed, at an time without notice and without being treated
|
|
645
|
+
* as a breaking change.
|
|
646
|
+
*
|
|
647
|
+
* TODO(#8960): Delete this.
|
|
659
648
|
*
|
|
660
|
-
* @
|
|
649
|
+
* @internal
|
|
650
|
+
* @param inProgress Is a keyboard-initated move in progress?
|
|
651
|
+
*/
|
|
652
|
+
setKeyboardMoveInProgress(inProgress: boolean): void;
|
|
653
|
+
/**
|
|
654
|
+
* Returns true iff the user is currently engaged in a drag gesture,
|
|
655
|
+
* or if a keyboard-initated move is in progress.
|
|
656
|
+
*
|
|
657
|
+
* Dragging gestures normally entail moving a block or other item on
|
|
658
|
+
* the workspace, or scrolling the flyout/workspace.
|
|
659
|
+
*
|
|
660
|
+
* Keyboard-initated movements are implemnted using the dragging
|
|
661
|
+
* infrastructure and are intended to emulate (a subset of) drag
|
|
662
|
+
* gestures and so should typically be treated as if they were a
|
|
663
|
+
* gesture-based drag.
|
|
664
|
+
*
|
|
665
|
+
* @returns True iff a drag gesture or keyboard move is in porgress.
|
|
661
666
|
*/
|
|
662
667
|
isDragging(): boolean;
|
|
663
668
|
/**
|
|
@@ -938,7 +943,17 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
938
943
|
removeToolboxCategoryCallback(key: string): void;
|
|
939
944
|
/**
|
|
940
945
|
* Look up the gesture that is tracking this touch stream on this workspace.
|
|
941
|
-
*
|
|
946
|
+
*
|
|
947
|
+
* Returns the gesture in progress, except:
|
|
948
|
+
*
|
|
949
|
+
* - If there is a keyboard-initiate move in progress then null will
|
|
950
|
+
* be returned - after calling event.preventDefault() and
|
|
951
|
+
* event.stopPropagation() to ensure the pointer event is ignored.
|
|
952
|
+
* - If there is a gesture in progress but event.type is
|
|
953
|
+
* 'pointerdown' then the in-progress gesture will be cancelled;
|
|
954
|
+
* this will result in null being returned.
|
|
955
|
+
* - If no gesutre is in progress but event is a pointerdown then a
|
|
956
|
+
* new gesture will be created and returned.
|
|
942
957
|
*
|
|
943
958
|
* @param e Pointer event.
|
|
944
959
|
* @returns The gesture that is tracking this touch stream, or null if no
|
|
@@ -1018,6 +1033,42 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
1018
1033
|
* the workspace's viewport.
|
|
1019
1034
|
*/
|
|
1020
1035
|
scrollBoundsIntoView(bounds: Rect, padding?: number): void;
|
|
1036
|
+
/** See IFocusableNode.getFocusableElement. */
|
|
1037
|
+
getFocusableElement(): HTMLElement | SVGElement;
|
|
1038
|
+
/** See IFocusableNode.getFocusableTree. */
|
|
1039
|
+
getFocusableTree(): IFocusableTree;
|
|
1040
|
+
/** See IFocusableNode.onNodeFocus. */
|
|
1041
|
+
onNodeFocus(): void;
|
|
1042
|
+
/** See IFocusableNode.onNodeBlur. */
|
|
1043
|
+
onNodeBlur(): void;
|
|
1044
|
+
/** See IFocusableNode.canBeFocused. */
|
|
1045
|
+
canBeFocused(): boolean;
|
|
1046
|
+
/** See IFocusableTree.getRootFocusableNode. */
|
|
1047
|
+
getRootFocusableNode(): IFocusableNode;
|
|
1048
|
+
/** See IFocusableTree.getRestoredFocusableNode. */
|
|
1049
|
+
getRestoredFocusableNode(previousNode: IFocusableNode | null): IFocusableNode | null;
|
|
1050
|
+
/** See IFocusableTree.getNestedTrees. */
|
|
1051
|
+
getNestedTrees(): Array<IFocusableTree>;
|
|
1052
|
+
/** See IFocusableTree.lookUpFocusableNode. */
|
|
1053
|
+
lookUpFocusableNode(id: string): IFocusableNode | null;
|
|
1054
|
+
/** See IFocusableTree.onTreeFocus. */
|
|
1055
|
+
onTreeFocus(_node: IFocusableNode, _previousTree: IFocusableTree | null): void;
|
|
1056
|
+
/** See IFocusableTree.onTreeBlur. */
|
|
1057
|
+
onTreeBlur(nextTree: IFocusableTree | null): void;
|
|
1058
|
+
/**
|
|
1059
|
+
* Returns an object responsible for coordinating movement of focus between
|
|
1060
|
+
* items on this workspace in response to keyboard navigation commands.
|
|
1061
|
+
*
|
|
1062
|
+
* @returns This workspace's Navigator instance.
|
|
1063
|
+
*/
|
|
1064
|
+
getNavigator(): Navigator;
|
|
1065
|
+
/**
|
|
1066
|
+
* Sets the Navigator instance used by this workspace.
|
|
1067
|
+
*
|
|
1068
|
+
* @param newNavigator A Navigator object to coordinate movement between
|
|
1069
|
+
* elements on the workspace.
|
|
1070
|
+
*/
|
|
1071
|
+
setNavigator(newNavigator: Navigator): void;
|
|
1021
1072
|
}
|
|
1022
1073
|
/**
|
|
1023
1074
|
* Size the workspace when the contents change. This also updates
|
package/index.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import Blockly from './index.js';
|
|
2
2
|
export const {
|
|
3
|
-
ASTNode,
|
|
4
3
|
Block,
|
|
5
4
|
BlockFlyoutInflater,
|
|
5
|
+
BlockNavigationPolicy,
|
|
6
6
|
BlockSvg,
|
|
7
7
|
Blocks,
|
|
8
8
|
ButtonFlyoutInflater,
|
|
@@ -15,6 +15,7 @@ export const {
|
|
|
15
15
|
Connection,
|
|
16
16
|
ConnectionChecker,
|
|
17
17
|
ConnectionDB,
|
|
18
|
+
ConnectionNavigationPolicy,
|
|
18
19
|
ConnectionType,
|
|
19
20
|
ContextMenu,
|
|
20
21
|
ContextMenuItems,
|
|
@@ -32,15 +33,21 @@ export const {
|
|
|
32
33
|
FieldImage,
|
|
33
34
|
FieldLabel,
|
|
34
35
|
FieldLabelSerializable,
|
|
36
|
+
FieldNavigationPolicy,
|
|
35
37
|
FieldNumber,
|
|
36
38
|
FieldTextInput,
|
|
37
39
|
FieldVariable,
|
|
38
40
|
Flyout,
|
|
39
41
|
FlyoutButton,
|
|
42
|
+
FlyoutButtonNavigationPolicy,
|
|
40
43
|
FlyoutItem,
|
|
41
44
|
FlyoutMetricsManager,
|
|
45
|
+
FlyoutNavigationPolicy,
|
|
46
|
+
FlyoutNavigator,
|
|
42
47
|
FlyoutSeparator,
|
|
48
|
+
FlyoutSeparatorNavigationPolicy,
|
|
43
49
|
FocusManager,
|
|
50
|
+
FocusableTreeTraverser,
|
|
44
51
|
Generator,
|
|
45
52
|
Gesture,
|
|
46
53
|
Grid,
|
|
@@ -58,6 +65,7 @@ export const {
|
|
|
58
65
|
Msg,
|
|
59
66
|
NEXT_STATEMENT,
|
|
60
67
|
Names,
|
|
68
|
+
Navigator,
|
|
61
69
|
OPPOSITE_TYPE,
|
|
62
70
|
OUTPUT_VALUE,
|
|
63
71
|
Options,
|
|
@@ -78,6 +86,7 @@ export const {
|
|
|
78
86
|
Theme,
|
|
79
87
|
ThemeManager,
|
|
80
88
|
Themes,
|
|
89
|
+
Toast,
|
|
81
90
|
Toolbox,
|
|
82
91
|
ToolboxCategory,
|
|
83
92
|
ToolboxItem,
|
|
@@ -98,6 +107,7 @@ export const {
|
|
|
98
107
|
Workspace,
|
|
99
108
|
WorkspaceAudio,
|
|
100
109
|
WorkspaceDragger,
|
|
110
|
+
WorkspaceNavigationPolicy,
|
|
101
111
|
WorkspaceSvg,
|
|
102
112
|
Xml,
|
|
103
113
|
ZoomControls,
|
package/msg/ab.js
CHANGED
|
@@ -17,10 +17,14 @@
|
|
|
17
17
|
|
|
18
18
|
var Blockly = Blockly || { Msg: Object.create(null) };
|
|
19
19
|
|
|
20
|
+
Blockly.Msg["ABORT_MOVE"] = "Abort move"; // untranslated
|
|
20
21
|
Blockly.Msg["ADD_COMMENT"] = "Иацҵатәуп ахцәажәара";
|
|
22
|
+
Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
|
|
21
23
|
Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Can't delete the variable '%1' because it's part of the definition of the function '%2'"; // untranslated
|
|
22
24
|
Blockly.Msg["CHANGE_VALUE_TITLE"] = "Ишәыԥсах аҵакы";
|
|
25
|
+
Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
|
|
23
26
|
Blockly.Msg["CLEAN_UP"] = "Иқәгатәуп аблокқәа";
|
|
27
|
+
Blockly.Msg["CLOSE"] = "Close"; // untranslated
|
|
24
28
|
Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "Collapsed blocks contain warnings."; // untranslated
|
|
25
29
|
Blockly.Msg["COLLAPSE_ALL"] = "Иеикәрҳәтәуп Аблокқәа";
|
|
26
30
|
Blockly.Msg["COLLAPSE_BLOCK"] = "Иеикәрҳәтәуп Аблокқәа";
|
|
@@ -41,6 +45,7 @@ Blockly.Msg["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorper
|
|
|
41
45
|
Blockly.Msg["COLOUR_RGB_RED"] = "аҟаԥшь";
|
|
42
46
|
Blockly.Msg["COLOUR_RGB_TITLE"] = "аԥштәы аҟынтәи";
|
|
43
47
|
Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100."; // untranslated
|
|
48
|
+
Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
|
|
44
49
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
|
|
45
50
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "ацикл иҭыҵтәуп";
|
|
46
51
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "ииастәуп ацикл анаҩстәи ашьаҿахьы";
|
|
@@ -73,8 +78,13 @@ Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "инагӡалатәуп а
|
|
|
73
78
|
Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "инагӡалатәуп акәзар";
|
|
74
79
|
Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "Аҭагылазаашьа мцнаҵы, инанагӡалоит акомандақәа.";
|
|
75
80
|
Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "Аҭагылазаашьа иашанаҵ, инанагӡалоит акомандақәа.";
|
|
81
|
+
Blockly.Msg["CONTROL_KEY"] = "Ctrl"; // untranslated
|
|
82
|
+
Blockly.Msg["COPY_SHORTCUT"] = "Copy (%1)"; // untranslated
|
|
83
|
+
Blockly.Msg["CUT_SHORTCUT"] = "Cut (%1)"; // untranslated
|
|
76
84
|
Blockly.Msg["DELETE_ALL_BLOCKS"] = "Ианыхтәуп аблокқәа (%1) зегьы?";
|
|
77
85
|
Blockly.Msg["DELETE_BLOCK"] = "Ианыхтәуп аблок";
|
|
86
|
+
Blockly.Msg["DELETE_KEY"] = "Del"; // untranslated
|
|
87
|
+
Blockly.Msg["DELETE_SHORTCUT"] = "Delete block (%1)"; // untranslated
|
|
78
88
|
Blockly.Msg["DELETE_VARIABLE"] = "Ианыхтәуп аҽеиҭак '%1'";
|
|
79
89
|
Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "Delete %1 uses of the '%2' variable?"; // untranslated
|
|
80
90
|
Blockly.Msg["DELETE_X_BLOCKS"] = "Ианыхтәуп %1 блокк";
|
|
@@ -83,12 +93,17 @@ Blockly.Msg["DIALOG_OK"] = "OK";
|
|
|
83
93
|
Blockly.Msg["DISABLE_BLOCK"] = "Иаҿыхтәуп Аблок";
|
|
84
94
|
Blockly.Msg["DUPLICATE_BLOCK"] = "Акопиа ахыхтәуп";
|
|
85
95
|
Blockly.Msg["DUPLICATE_COMMENT"] = "Duplicate Comment"; // untranslated
|
|
96
|
+
Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents (%1)"; // untranslated
|
|
86
97
|
Blockly.Msg["ENABLE_BLOCK"] = "Иаҿыхтәуп Аблокқәа";
|
|
87
98
|
Blockly.Msg["EXPAND_ALL"] = "Иаарԥштәуп Аблокқәа";
|
|
88
99
|
Blockly.Msg["EXPAND_BLOCK"] = "Иаарԥштәуп Аблокқәа";
|
|
89
100
|
Blockly.Msg["EXTERNAL_INPUTS"] = "External Inputs"; // untranslated
|
|
101
|
+
Blockly.Msg["FINISH_MOVE"] = "Finish move"; // untranslated
|
|
90
102
|
Blockly.Msg["HELP"] = "Ацхыраара";
|
|
103
|
+
Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
|
|
91
104
|
Blockly.Msg["INLINE_INPUTS"] = "Inline Inputs"; // untranslated
|
|
105
|
+
Blockly.Msg["INSERT_BLOCK"] = "Insert Block (%1)"; // untranslated
|
|
106
|
+
Blockly.Msg["LINUX"] = "Linux"; // untranslated
|
|
92
107
|
Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
|
|
93
108
|
Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "иаԥцатәуп иҭацәу ахьӡынҵа";
|
|
94
109
|
Blockly.Msg["LISTS_CREATE_EMPTY_TOOLTIP"] = "Returns a list, of length 0, containing no data records"; // untranslated
|
|
@@ -201,6 +216,7 @@ Blockly.Msg["LOGIC_TERNARY_HELPURL"] = "https://en.wikipedia.org/wiki/%3F:"; //
|
|
|
201
216
|
Blockly.Msg["LOGIC_TERNARY_IF_FALSE"] = "амц акәзар";
|
|
202
217
|
Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "аиаша акәзар";
|
|
203
218
|
Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
|
|
219
|
+
Blockly.Msg["MAC_OS"] = "macOS"; // untranslated
|
|
204
220
|
Blockly.Msg["MATH_ADDITION_SYMBOL"] = "+"; // untranslated
|
|
205
221
|
Blockly.Msg["MATH_ARITHMETIC_HELPURL"] = "https://ab.wikipedia.org/wiki/Арифметика";
|
|
206
222
|
Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_ADD"] = "Иҳанаҭоит ҩ-хыԥхьаӡарак реицҵалыҵ.";
|
|
@@ -287,13 +303,24 @@ Blockly.Msg["MATH_TRIG_TOOLTIP_ATAN"] = "Иҳанаҭоит арктангенс
|
|
|
287
303
|
Blockly.Msg["MATH_TRIG_TOOLTIP_COS"] = "Иҳанаҭоит акосинус градусла.";
|
|
288
304
|
Blockly.Msg["MATH_TRIG_TOOLTIP_SIN"] = "Иҳанаҭоит асинус градусла.";
|
|
289
305
|
Blockly.Msg["MATH_TRIG_TOOLTIP_TAN"] = "Иҳанаҭоит атангенс градусла.";
|
|
306
|
+
Blockly.Msg["MOVE_BLOCK"] = "Move Block (%1)"; // untranslated
|
|
307
|
+
Blockly.Msg["MOVE_DOWN_CONSTRAINED"] = "Move down constrained"; // untranslated
|
|
308
|
+
Blockly.Msg["MOVE_DOWN_UNCONSTRAINED"] = "Move down, unconstrained"; // untranslated
|
|
309
|
+
Blockly.Msg["MOVE_LEFT_CONSTRAINED"] = "Move left, constrained"; // untranslated
|
|
310
|
+
Blockly.Msg["MOVE_LEFT_UNCONSTRAINED"] = "Move left, unconstrained"; // untranslated
|
|
311
|
+
Blockly.Msg["MOVE_RIGHT_CONSTRAINED"] = "Move right constrained"; // untranslated
|
|
312
|
+
Blockly.Msg["MOVE_RIGHT_UNCONSTRAINED"] = "Move right, unconstrained"; // untranslated
|
|
313
|
+
Blockly.Msg["MOVE_UP_CONSTRAINED"] = "Move up, constrained"; // untranslated
|
|
314
|
+
Blockly.Msg["MOVE_UP_UNCONSTRAINED"] = "Move up unconstrained"; // untranslated
|
|
290
315
|
Blockly.Msg["NEW_COLOUR_VARIABLE"] = "Create colour variable..."; // untranslated
|
|
291
316
|
Blockly.Msg["NEW_NUMBER_VARIABLE"] = "Create number variable..."; // untranslated
|
|
292
317
|
Blockly.Msg["NEW_STRING_VARIABLE"] = "Create string variable..."; // untranslated
|
|
293
318
|
Blockly.Msg["NEW_VARIABLE"] = "Иаԥҵатәуп аҽеиҭак";
|
|
294
319
|
Blockly.Msg["NEW_VARIABLE_TITLE"] = "Аҽеиҭак ахьӡ ҿыц:";
|
|
295
320
|
Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "New variable type:"; // untranslated
|
|
321
|
+
Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
|
|
296
322
|
Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
|
|
323
|
+
Blockly.Msg["PASTE_SHORTCUT"] = "Paste (%1)"; // untranslated
|
|
297
324
|
Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "аоператорқәа азин рыҭара";
|
|
298
325
|
Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "аҟынтәи:";
|
|
299
326
|
Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://ru.wikipedia.org/wiki/Ацхыраагӡатә программа";
|
|
@@ -325,6 +352,10 @@ Blockly.Msg["REDO"] = "Аиҭаҟаҵара";
|
|
|
325
352
|
Blockly.Msg["REMOVE_COMMENT"] = "Ианыхтәуп ахцәажәара";
|
|
326
353
|
Blockly.Msg["RENAME_VARIABLE"] = "Аҽеиҭак ахьӡ ԥсахтәуп";
|
|
327
354
|
Blockly.Msg["RENAME_VARIABLE_TITLE"] = "Аҽеиҭакқәа'%1' зегь рыхьӡ ԥсахтәуп аҟны:";
|
|
355
|
+
Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
|
|
356
|
+
Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
|
|
357
|
+
Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
|
|
358
|
+
Blockly.Msg["START_MOVE"] = "Start move"; // untranslated
|
|
328
359
|
Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
|
|
329
360
|
Blockly.Msg["TEXT_APPEND_TITLE"] = "%1 ахьы иацҵатәуп атеқст %2";
|
|
330
361
|
Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "Иацҵатәуп атеқст аҽеиҭак «%1» ахь.";
|
|
@@ -395,6 +426,7 @@ Blockly.Msg["TEXT_TRIM_OPERATOR_RIGHT"] = "trim spaces from right side of"; //
|
|
|
395
426
|
Blockly.Msg["TEXT_TRIM_TOOLTIP"] = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
|
|
396
427
|
Blockly.Msg["TODAY"] = "Иахьа";
|
|
397
428
|
Blockly.Msg["UNDO"] = "Иаҟәыхтәуп";
|
|
429
|
+
Blockly.Msg["UNKNOWN"] = "Unknown"; // untranslated
|
|
398
430
|
Blockly.Msg["UNNAMED_KEY"] = "unnamed"; // untranslated
|
|
399
431
|
Blockly.Msg["VARIABLES_DEFAULT_NAME"] = "аелемент";
|
|
400
432
|
Blockly.Msg["VARIABLES_GET_CREATE_SET"] = "Иаԥҵатәуп аблок \"иаҭатәуп %1\" азы";
|
|
@@ -407,6 +439,7 @@ Blockly.Msg["VARIABLES_SET_TOOLTIP"] = "Sets this variable to be equal to the in
|
|
|
407
439
|
Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "Аҽеиҭак ахьӡ '%1' змоу ыҟоуп.";
|
|
408
440
|
Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "A variable named '%1' already exists for another type: '%2'."; // untranslated
|
|
409
441
|
Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "A variable named '%1' already exists as a parameter in the procedure '%2'."; // untranslated
|
|
442
|
+
Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
|
|
410
443
|
Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly Workspace"; // untranslated
|
|
411
444
|
Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Say something..."; // untranslated
|
|
412
445
|
Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
|
package/msg/ab.mjs
CHANGED
|
@@ -22,6 +22,7 @@ export const {
|
|
|
22
22
|
DELETE_X_BLOCKS,
|
|
23
23
|
DELETE_ALL_BLOCKS,
|
|
24
24
|
CLEAN_UP,
|
|
25
|
+
CLOSE,
|
|
25
26
|
COLLAPSE_BLOCK,
|
|
26
27
|
COLLAPSE_ALL,
|
|
27
28
|
EXPAND_BLOCK,
|
|
@@ -420,4 +421,36 @@ export const {
|
|
|
420
421
|
COLLAPSED_WARNINGS_WARNING,
|
|
421
422
|
DIALOG_OK,
|
|
422
423
|
DIALOG_CANCEL,
|
|
424
|
+
DELETE_SHORTCUT,
|
|
425
|
+
DELETE_KEY,
|
|
426
|
+
EDIT_BLOCK_CONTENTS,
|
|
427
|
+
INSERT_BLOCK,
|
|
428
|
+
START_MOVE,
|
|
429
|
+
FINISH_MOVE,
|
|
430
|
+
ABORT_MOVE,
|
|
431
|
+
MOVE_LEFT_CONSTRAINED,
|
|
432
|
+
MOVE_RIGHT_CONSTRAINED,
|
|
433
|
+
MOVE_UP_CONSTRAINED,
|
|
434
|
+
MOVE_DOWN_CONSTRAINED,
|
|
435
|
+
MOVE_LEFT_UNCONSTRAINED,
|
|
436
|
+
MOVE_RIGHT_UNCONSTRAINED,
|
|
437
|
+
MOVE_UP_UNCONSTRAINED,
|
|
438
|
+
MOVE_DOWN_UNCONSTRAINED,
|
|
439
|
+
MOVE_BLOCK,
|
|
440
|
+
WINDOWS,
|
|
441
|
+
MAC_OS,
|
|
442
|
+
CHROME_OS,
|
|
443
|
+
LINUX,
|
|
444
|
+
UNKNOWN,
|
|
445
|
+
CONTROL_KEY,
|
|
446
|
+
COMMAND_KEY,
|
|
447
|
+
OPTION_KEY,
|
|
448
|
+
ALT_KEY,
|
|
449
|
+
CUT_SHORTCUT,
|
|
450
|
+
COPY_SHORTCUT,
|
|
451
|
+
PASTE_SHORTCUT,
|
|
452
|
+
HELP_PROMPT,
|
|
453
|
+
SHORTCUTS_GENERAL,
|
|
454
|
+
SHORTCUTS_EDITING,
|
|
455
|
+
SHORTCUTS_CODE_NAVIGATION,
|
|
423
456
|
} = ab;
|
package/msg/ace.js
CHANGED
|
@@ -17,10 +17,14 @@
|
|
|
17
17
|
|
|
18
18
|
var Blockly = Blockly || { Msg: Object.create(null) };
|
|
19
19
|
|
|
20
|
+
Blockly.Msg["ABORT_MOVE"] = "Abort move"; // untranslated
|
|
20
21
|
Blockly.Msg["ADD_COMMENT"] = "Add Comment"; // untranslated
|
|
22
|
+
Blockly.Msg["ALT_KEY"] = "Alt"; // untranslated
|
|
21
23
|
Blockly.Msg["CANNOT_DELETE_VARIABLE_PROCEDURE"] = "Can't delete the variable '%1' because it's part of the definition of the function '%2'"; // untranslated
|
|
22
24
|
Blockly.Msg["CHANGE_VALUE_TITLE"] = "Change value:"; // untranslated
|
|
25
|
+
Blockly.Msg["CHROME_OS"] = "ChromeOS"; // untranslated
|
|
23
26
|
Blockly.Msg["CLEAN_UP"] = "Clean up Blocks"; // untranslated
|
|
27
|
+
Blockly.Msg["CLOSE"] = "Close"; // untranslated
|
|
24
28
|
Blockly.Msg["COLLAPSED_WARNINGS_WARNING"] = "Collapsed blocks contain warnings."; // untranslated
|
|
25
29
|
Blockly.Msg["COLLAPSE_ALL"] = "Collapse Blocks"; // untranslated
|
|
26
30
|
Blockly.Msg["COLLAPSE_BLOCK"] = "Collapse Block"; // untranslated
|
|
@@ -41,6 +45,7 @@ Blockly.Msg["COLOUR_RGB_HELPURL"] = "https://www.december.com/html/spec/colorper
|
|
|
41
45
|
Blockly.Msg["COLOUR_RGB_RED"] = "red"; // untranslated
|
|
42
46
|
Blockly.Msg["COLOUR_RGB_TITLE"] = "colour with"; // untranslated
|
|
43
47
|
Blockly.Msg["COLOUR_RGB_TOOLTIP"] = "Create a colour with the specified amount of red, green, and blue. All values must be between 0 and 100."; // untranslated
|
|
48
|
+
Blockly.Msg["COMMAND_KEY"] = "⌘ Command"; // untranslated
|
|
44
49
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_HELPURL"] = "https://github.com/google/blockly/wiki/Loops#loop-termination-blocks"; // untranslated
|
|
45
50
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK"] = "break out of loop"; // untranslated
|
|
46
51
|
Blockly.Msg["CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE"] = "continue with next iteration of loop"; // untranslated
|
|
@@ -73,8 +78,13 @@ Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_UNTIL"] = "repeat until"; // untransl
|
|
|
73
78
|
Blockly.Msg["CONTROLS_WHILEUNTIL_OPERATOR_WHILE"] = "repeat while"; // untranslated
|
|
74
79
|
Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL"] = "While a value is false, then do some statements."; // untranslated
|
|
75
80
|
Blockly.Msg["CONTROLS_WHILEUNTIL_TOOLTIP_WHILE"] = "While a value is true, then do some statements."; // untranslated
|
|
81
|
+
Blockly.Msg["CONTROL_KEY"] = "Ctrl"; // untranslated
|
|
82
|
+
Blockly.Msg["COPY_SHORTCUT"] = "Copy (%1)"; // untranslated
|
|
83
|
+
Blockly.Msg["CUT_SHORTCUT"] = "Cut (%1)"; // untranslated
|
|
76
84
|
Blockly.Msg["DELETE_ALL_BLOCKS"] = "Delete all %1 blocks?"; // untranslated
|
|
77
85
|
Blockly.Msg["DELETE_BLOCK"] = "Delete Block"; // untranslated
|
|
86
|
+
Blockly.Msg["DELETE_KEY"] = "Del"; // untranslated
|
|
87
|
+
Blockly.Msg["DELETE_SHORTCUT"] = "Delete block (%1)"; // untranslated
|
|
78
88
|
Blockly.Msg["DELETE_VARIABLE"] = "Delete the '%1' variable"; // untranslated
|
|
79
89
|
Blockly.Msg["DELETE_VARIABLE_CONFIRMATION"] = "Delete %1 uses of the '%2' variable?"; // untranslated
|
|
80
90
|
Blockly.Msg["DELETE_X_BLOCKS"] = "Delete %1 Blocks"; // untranslated
|
|
@@ -83,12 +93,17 @@ Blockly.Msg["DIALOG_OK"] = "Ka got";
|
|
|
83
93
|
Blockly.Msg["DISABLE_BLOCK"] = "Disable Block"; // untranslated
|
|
84
94
|
Blockly.Msg["DUPLICATE_BLOCK"] = "Duplicate"; // untranslated
|
|
85
95
|
Blockly.Msg["DUPLICATE_COMMENT"] = "Duplicate Comment"; // untranslated
|
|
96
|
+
Blockly.Msg["EDIT_BLOCK_CONTENTS"] = "Edit Block contents (%1)"; // untranslated
|
|
86
97
|
Blockly.Msg["ENABLE_BLOCK"] = "Enable Block"; // untranslated
|
|
87
98
|
Blockly.Msg["EXPAND_ALL"] = "Expand Blocks"; // untranslated
|
|
88
99
|
Blockly.Msg["EXPAND_BLOCK"] = "Expand Block"; // untranslated
|
|
89
100
|
Blockly.Msg["EXTERNAL_INPUTS"] = "External Inputs"; // untranslated
|
|
101
|
+
Blockly.Msg["FINISH_MOVE"] = "Finish move"; // untranslated
|
|
90
102
|
Blockly.Msg["HELP"] = "Help"; // untranslated
|
|
103
|
+
Blockly.Msg["HELP_PROMPT"] = "Press %1 for help on keyboard controls"; // untranslated
|
|
91
104
|
Blockly.Msg["INLINE_INPUTS"] = "Inline Inputs"; // untranslated
|
|
105
|
+
Blockly.Msg["INSERT_BLOCK"] = "Insert Block (%1)"; // untranslated
|
|
106
|
+
Blockly.Msg["LINUX"] = "Linux"; // untranslated
|
|
92
107
|
Blockly.Msg["LISTS_CREATE_EMPTY_HELPURL"] = "https://github.com/google/blockly/wiki/Lists#create-empty-list"; // untranslated
|
|
93
108
|
Blockly.Msg["LISTS_CREATE_EMPTY_TITLE"] = "create empty list"; // untranslated
|
|
94
109
|
Blockly.Msg["LISTS_CREATE_EMPTY_TOOLTIP"] = "Returns a list, of length 0, containing no data records"; // untranslated
|
|
@@ -201,6 +216,7 @@ Blockly.Msg["LOGIC_TERNARY_HELPURL"] = "https://en.wikipedia.org/wiki/%3F:"; //
|
|
|
201
216
|
Blockly.Msg["LOGIC_TERNARY_IF_FALSE"] = "if false"; // untranslated
|
|
202
217
|
Blockly.Msg["LOGIC_TERNARY_IF_TRUE"] = "if true"; // untranslated
|
|
203
218
|
Blockly.Msg["LOGIC_TERNARY_TOOLTIP"] = "Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; // untranslated
|
|
219
|
+
Blockly.Msg["MAC_OS"] = "macOS"; // untranslated
|
|
204
220
|
Blockly.Msg["MATH_ADDITION_SYMBOL"] = "+"; // untranslated
|
|
205
221
|
Blockly.Msg["MATH_ARITHMETIC_HELPURL"] = "https://en.wikipedia.org/wiki/Arithmetic"; // untranslated
|
|
206
222
|
Blockly.Msg["MATH_ARITHMETIC_TOOLTIP_ADD"] = "Return the sum of the two numbers."; // untranslated
|
|
@@ -287,13 +303,24 @@ Blockly.Msg["MATH_TRIG_TOOLTIP_ATAN"] = "Return the arctangent of a number."; /
|
|
|
287
303
|
Blockly.Msg["MATH_TRIG_TOOLTIP_COS"] = "Return the cosine of a degree (not radian)."; // untranslated
|
|
288
304
|
Blockly.Msg["MATH_TRIG_TOOLTIP_SIN"] = "Return the sine of a degree (not radian)."; // untranslated
|
|
289
305
|
Blockly.Msg["MATH_TRIG_TOOLTIP_TAN"] = "Return the tangent of a degree (not radian)."; // untranslated
|
|
306
|
+
Blockly.Msg["MOVE_BLOCK"] = "Move Block (%1)"; // untranslated
|
|
307
|
+
Blockly.Msg["MOVE_DOWN_CONSTRAINED"] = "Move down constrained"; // untranslated
|
|
308
|
+
Blockly.Msg["MOVE_DOWN_UNCONSTRAINED"] = "Move down, unconstrained"; // untranslated
|
|
309
|
+
Blockly.Msg["MOVE_LEFT_CONSTRAINED"] = "Move left, constrained"; // untranslated
|
|
310
|
+
Blockly.Msg["MOVE_LEFT_UNCONSTRAINED"] = "Move left, unconstrained"; // untranslated
|
|
311
|
+
Blockly.Msg["MOVE_RIGHT_CONSTRAINED"] = "Move right constrained"; // untranslated
|
|
312
|
+
Blockly.Msg["MOVE_RIGHT_UNCONSTRAINED"] = "Move right, unconstrained"; // untranslated
|
|
313
|
+
Blockly.Msg["MOVE_UP_CONSTRAINED"] = "Move up, constrained"; // untranslated
|
|
314
|
+
Blockly.Msg["MOVE_UP_UNCONSTRAINED"] = "Move up unconstrained"; // untranslated
|
|
290
315
|
Blockly.Msg["NEW_COLOUR_VARIABLE"] = "Create colour variable..."; // untranslated
|
|
291
316
|
Blockly.Msg["NEW_NUMBER_VARIABLE"] = "Create number variable..."; // untranslated
|
|
292
317
|
Blockly.Msg["NEW_STRING_VARIABLE"] = "Create string variable..."; // untranslated
|
|
293
318
|
Blockly.Msg["NEW_VARIABLE"] = "Create variable..."; // untranslated
|
|
294
319
|
Blockly.Msg["NEW_VARIABLE_TITLE"] = "New variable name:"; // untranslated
|
|
295
320
|
Blockly.Msg["NEW_VARIABLE_TYPE_TITLE"] = "New variable type:"; // untranslated
|
|
321
|
+
Blockly.Msg["OPTION_KEY"] = "⌥ Option"; // untranslated
|
|
296
322
|
Blockly.Msg["ORDINAL_NUMBER_SUFFIX"] = ""; // untranslated
|
|
323
|
+
Blockly.Msg["PASTE_SHORTCUT"] = "Paste (%1)"; // untranslated
|
|
297
324
|
Blockly.Msg["PROCEDURES_ALLOW_STATEMENTS"] = "allow statements"; // untranslated
|
|
298
325
|
Blockly.Msg["PROCEDURES_BEFORE_PARAMS"] = "with:"; // untranslated
|
|
299
326
|
Blockly.Msg["PROCEDURES_CALLNORETURN_HELPURL"] = "https://en.wikipedia.org/wiki/Subroutine"; // untranslated
|
|
@@ -325,6 +352,10 @@ Blockly.Msg["REDO"] = "Redo"; // untranslated
|
|
|
325
352
|
Blockly.Msg["REMOVE_COMMENT"] = "Remove Comment"; // untranslated
|
|
326
353
|
Blockly.Msg["RENAME_VARIABLE"] = "Rename variable..."; // untranslated
|
|
327
354
|
Blockly.Msg["RENAME_VARIABLE_TITLE"] = "Rename all '%1' variables to:"; // untranslated
|
|
355
|
+
Blockly.Msg["SHORTCUTS_CODE_NAVIGATION"] = "Code navigation"; // untranslated
|
|
356
|
+
Blockly.Msg["SHORTCUTS_EDITING"] = "Editing"; // untranslated
|
|
357
|
+
Blockly.Msg["SHORTCUTS_GENERAL"] = "General"; // untranslated
|
|
358
|
+
Blockly.Msg["START_MOVE"] = "Start move"; // untranslated
|
|
328
359
|
Blockly.Msg["TEXT_APPEND_HELPURL"] = "https://github.com/google/blockly/wiki/Text#text-modification"; // untranslated
|
|
329
360
|
Blockly.Msg["TEXT_APPEND_TITLE"] = "to %1 append text %2"; // untranslated
|
|
330
361
|
Blockly.Msg["TEXT_APPEND_TOOLTIP"] = "Append some text to variable '%1'."; // untranslated
|
|
@@ -395,6 +426,7 @@ Blockly.Msg["TEXT_TRIM_OPERATOR_RIGHT"] = "trim spaces from right side of"; //
|
|
|
395
426
|
Blockly.Msg["TEXT_TRIM_TOOLTIP"] = "Return a copy of the text with spaces removed from one or both ends."; // untranslated
|
|
396
427
|
Blockly.Msg["TODAY"] = "Today"; // untranslated
|
|
397
428
|
Blockly.Msg["UNDO"] = "Undo"; // untranslated
|
|
429
|
+
Blockly.Msg["UNKNOWN"] = "Unknown"; // untranslated
|
|
398
430
|
Blockly.Msg["UNNAMED_KEY"] = "unnamed"; // untranslated
|
|
399
431
|
Blockly.Msg["VARIABLES_DEFAULT_NAME"] = "item"; // untranslated
|
|
400
432
|
Blockly.Msg["VARIABLES_GET_CREATE_SET"] = "Create 'set %1'"; // untranslated
|
|
@@ -407,6 +439,7 @@ Blockly.Msg["VARIABLES_SET_TOOLTIP"] = "Sets this variable to be equal to the in
|
|
|
407
439
|
Blockly.Msg["VARIABLE_ALREADY_EXISTS"] = "A variable named '%1' already exists."; // untranslated
|
|
408
440
|
Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE"] = "A variable named '%1' already exists for another type: '%2'."; // untranslated
|
|
409
441
|
Blockly.Msg["VARIABLE_ALREADY_EXISTS_FOR_A_PARAMETER"] = "A variable named '%1' already exists as a parameter in the procedure '%2'."; // untranslated
|
|
442
|
+
Blockly.Msg["WINDOWS"] = "Windows"; // untranslated
|
|
410
443
|
Blockly.Msg["WORKSPACE_ARIA_LABEL"] = "Blockly Workspace"; // untranslated
|
|
411
444
|
Blockly.Msg["WORKSPACE_COMMENT_DEFAULT_TEXT"] = "Say something..."; // untranslated
|
|
412
445
|
Blockly.Msg["CONTROLS_FOREACH_INPUT_DO"] = Blockly.Msg["CONTROLS_REPEAT_INPUT_DO"];
|
package/msg/ace.mjs
CHANGED
|
@@ -22,6 +22,7 @@ export const {
|
|
|
22
22
|
DELETE_X_BLOCKS,
|
|
23
23
|
DELETE_ALL_BLOCKS,
|
|
24
24
|
CLEAN_UP,
|
|
25
|
+
CLOSE,
|
|
25
26
|
COLLAPSE_BLOCK,
|
|
26
27
|
COLLAPSE_ALL,
|
|
27
28
|
EXPAND_BLOCK,
|
|
@@ -420,4 +421,36 @@ export const {
|
|
|
420
421
|
COLLAPSED_WARNINGS_WARNING,
|
|
421
422
|
DIALOG_OK,
|
|
422
423
|
DIALOG_CANCEL,
|
|
424
|
+
DELETE_SHORTCUT,
|
|
425
|
+
DELETE_KEY,
|
|
426
|
+
EDIT_BLOCK_CONTENTS,
|
|
427
|
+
INSERT_BLOCK,
|
|
428
|
+
START_MOVE,
|
|
429
|
+
FINISH_MOVE,
|
|
430
|
+
ABORT_MOVE,
|
|
431
|
+
MOVE_LEFT_CONSTRAINED,
|
|
432
|
+
MOVE_RIGHT_CONSTRAINED,
|
|
433
|
+
MOVE_UP_CONSTRAINED,
|
|
434
|
+
MOVE_DOWN_CONSTRAINED,
|
|
435
|
+
MOVE_LEFT_UNCONSTRAINED,
|
|
436
|
+
MOVE_RIGHT_UNCONSTRAINED,
|
|
437
|
+
MOVE_UP_UNCONSTRAINED,
|
|
438
|
+
MOVE_DOWN_UNCONSTRAINED,
|
|
439
|
+
MOVE_BLOCK,
|
|
440
|
+
WINDOWS,
|
|
441
|
+
MAC_OS,
|
|
442
|
+
CHROME_OS,
|
|
443
|
+
LINUX,
|
|
444
|
+
UNKNOWN,
|
|
445
|
+
CONTROL_KEY,
|
|
446
|
+
COMMAND_KEY,
|
|
447
|
+
OPTION_KEY,
|
|
448
|
+
ALT_KEY,
|
|
449
|
+
CUT_SHORTCUT,
|
|
450
|
+
COPY_SHORTCUT,
|
|
451
|
+
PASTE_SHORTCUT,
|
|
452
|
+
HELP_PROMPT,
|
|
453
|
+
SHORTCUTS_GENERAL,
|
|
454
|
+
SHORTCUTS_EDITING,
|
|
455
|
+
SHORTCUTS_CODE_NAVIGATION,
|
|
423
456
|
} = ace;
|