blockly 12.0.0-beta.4 → 12.0.0-beta.5
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 +552 -494
- package/blockly.mjs +10 -0
- package/blockly_compressed.js +517 -492
- package/blockly_compressed.js.map +1 -1
- package/blocks_compressed.js +2 -2
- package/blocks_compressed.js.map +1 -1
- package/core/block_svg.d.ts +36 -20
- package/core/blockly.d.ts +13 -1
- package/core/connection.d.ts +2 -0
- package/core/contextmenu_registry.d.ts +11 -9
- package/core/dialog.d.ts +36 -16
- package/core/field.d.ts +29 -31
- package/core/field_checkbox.d.ts +9 -0
- package/core/field_dropdown.d.ts +19 -2
- package/core/field_image.d.ts +9 -0
- package/core/field_label.d.ts +9 -0
- package/core/field_number.d.ts +9 -0
- package/core/field_textinput.d.ts +9 -0
- package/core/flyout_base.d.ts +23 -1
- package/core/flyout_button.d.ts +30 -7
- package/core/flyout_item.d.ts +3 -9
- package/core/flyout_separator.d.ts +18 -1
- package/core/focus_manager.d.ts +82 -14
- package/core/interfaces/i_ast_node_location_svg.d.ts +0 -12
- package/core/interfaces/i_autohideable.d.ts +2 -0
- package/core/interfaces/i_flyout.d.ts +2 -1
- package/core/interfaces/i_focusable_node.d.ts +31 -2
- package/core/interfaces/i_focusable_tree.d.ts +67 -0
- package/core/interfaces/i_navigable.d.ts +30 -0
- package/core/interfaces/i_navigation_policy.d.ts +42 -0
- package/core/interfaces/i_toolbox.d.ts +2 -1
- package/core/interfaces/i_toolbox_item.d.ts +2 -1
- package/core/keyboard_nav/ast_node.d.ts +1 -113
- package/core/keyboard_nav/block_navigation_policy.d.ts +56 -0
- package/core/keyboard_nav/connection_navigation_policy.d.ts +53 -0
- package/core/keyboard_nav/field_navigation_policy.d.ts +42 -0
- package/core/keyboard_nav/flyout_button_navigation_policy.d.ts +42 -0
- package/core/keyboard_nav/flyout_navigation_policy.d.ts +51 -0
- package/core/keyboard_nav/flyout_separator_navigation_policy.d.ts +19 -0
- package/core/keyboard_nav/line_cursor.d.ts +32 -103
- package/core/keyboard_nav/marker.d.ts +20 -29
- package/core/keyboard_nav/workspace_navigation_policy.d.ts +42 -0
- package/core/marker_manager.d.ts +0 -26
- package/core/navigator.d.ts +65 -0
- package/core/rendered_connection.d.ts +35 -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 +23 -1
- package/core/toolbox/toolbox_item.d.ts +9 -0
- package/core/utils/aria.d.ts +5 -2
- package/core/variable_map.d.ts +4 -4
- package/core/variables.d.ts +3 -1
- package/core/workspace.d.ts +10 -9
- package/core/workspace_svg.d.ts +103 -47
- package/index.mjs +10 -0
- 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/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
|
@@ -25,13 +25,16 @@ import type { IBoundedElement } from './interfaces/i_bounded_element.js';
|
|
|
25
25
|
import { IContextMenu } from './interfaces/i_contextmenu.js';
|
|
26
26
|
import type { IDragTarget } from './interfaces/i_drag_target.js';
|
|
27
27
|
import type { IFlyout } from './interfaces/i_flyout.js';
|
|
28
|
+
import { type IFocusableNode } from './interfaces/i_focusable_node.js';
|
|
29
|
+
import type { IFocusableTree } from './interfaces/i_focusable_tree.js';
|
|
28
30
|
import type { IMetricsManager } from './interfaces/i_metrics_manager.js';
|
|
31
|
+
import type { INavigable } from './interfaces/i_navigable.js';
|
|
29
32
|
import type { IToolbox } from './interfaces/i_toolbox.js';
|
|
30
|
-
import type { IVariableModel, IVariableState } from './interfaces/i_variable_model.js';
|
|
31
33
|
import type { LineCursor } from './keyboard_nav/line_cursor.js';
|
|
32
34
|
import type { Marker } from './keyboard_nav/marker.js';
|
|
33
35
|
import { LayerManager } from './layer_manager.js';
|
|
34
36
|
import { MarkerManager } from './marker_manager.js';
|
|
37
|
+
import { Navigator } from './navigator.js';
|
|
35
38
|
import { Options } from './options.js';
|
|
36
39
|
import type { Renderer } from './renderers/common/renderer.js';
|
|
37
40
|
import type { ScrollbarPair } from './scrollbar_pair.js';
|
|
@@ -51,7 +54,7 @@ import { ZoomControls } from './zoom_controls.js';
|
|
|
51
54
|
* Class for a workspace. This is an onscreen area with optional trashcan,
|
|
52
55
|
* scrollbars, bubbles, and dragging.
|
|
53
56
|
*/
|
|
54
|
-
export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationSvg, IContextMenu {
|
|
57
|
+
export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationSvg, IContextMenu, IFocusableNode, IFocusableTree, INavigable<WorkspaceSvg> {
|
|
55
58
|
/**
|
|
56
59
|
* A wrapper function called when a resize event occurs.
|
|
57
60
|
* You can pass the result to `eventHandling.unbind`.
|
|
@@ -235,6 +238,8 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
235
238
|
private cachedParentSvg;
|
|
236
239
|
/** True if keyboard accessibility mode is on, false otherwise. */
|
|
237
240
|
keyboardAccessibilityMode: boolean;
|
|
241
|
+
/** True iff a keyboard-initiated move ("drag") is in progress. */
|
|
242
|
+
keyboardMoveInProgress: boolean;
|
|
238
243
|
/** The list of top-level bounded elements on the workspace. */
|
|
239
244
|
private topBoundedElements;
|
|
240
245
|
/** The recorded drag targets. */
|
|
@@ -246,6 +251,11 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
246
251
|
svgBlockCanvas_: SVGElement;
|
|
247
252
|
svgBubbleCanvas_: SVGElement;
|
|
248
253
|
zoomControls_: ZoomControls | null;
|
|
254
|
+
/**
|
|
255
|
+
* Navigator that handles moving focus between items in this workspace in
|
|
256
|
+
* response to keyboard navigation commands.
|
|
257
|
+
*/
|
|
258
|
+
private navigator;
|
|
249
259
|
/**
|
|
250
260
|
* @param options Dictionary of options.
|
|
251
261
|
*/
|
|
@@ -275,22 +285,6 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
275
285
|
* @returns The component manager.
|
|
276
286
|
*/
|
|
277
287
|
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
288
|
/**
|
|
295
289
|
* Get the marker with the given ID.
|
|
296
290
|
*
|
|
@@ -443,6 +437,13 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
443
437
|
* @internal
|
|
444
438
|
*/
|
|
445
439
|
addZoomControls(): void;
|
|
440
|
+
/**
|
|
441
|
+
* Creates a new set of options from this workspace's options with just the
|
|
442
|
+
* values that are relevant to a flyout.
|
|
443
|
+
*
|
|
444
|
+
* @returns A subset of this workspace's options.
|
|
445
|
+
*/
|
|
446
|
+
copyOptionsForFlyout(): Options;
|
|
446
447
|
/**
|
|
447
448
|
* Add a flyout element in an element with the given tag name.
|
|
448
449
|
*
|
|
@@ -574,38 +575,17 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
574
575
|
*/
|
|
575
576
|
highlightBlock(id: string | null, opt_state?: boolean): void;
|
|
576
577
|
/**
|
|
577
|
-
*
|
|
578
|
+
* Handles any necessary updates when a variable changes.
|
|
578
579
|
*
|
|
579
580
|
* @internal
|
|
580
581
|
*/
|
|
581
|
-
|
|
582
|
+
private variableChangeCallback;
|
|
582
583
|
/**
|
|
583
|
-
*
|
|
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;
|
|
590
|
-
/**
|
|
591
|
-
* Delete a variable by the passed in ID. Update the flyout to show
|
|
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.
|
|
584
|
+
* Refresh the toolbox unless there's a drag in progress.
|
|
600
585
|
*
|
|
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.
|
|
586
|
+
* @internal
|
|
607
587
|
*/
|
|
608
|
-
|
|
588
|
+
refreshToolboxSelection(): void;
|
|
609
589
|
/** Make a list of all the delete areas for this workspace. */
|
|
610
590
|
recordDragTargets(): void;
|
|
611
591
|
/**
|
|
@@ -655,9 +635,36 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
655
635
|
*/
|
|
656
636
|
moveDrag(e: PointerEvent): Coordinate;
|
|
657
637
|
/**
|
|
658
|
-
*
|
|
638
|
+
* Indicate whether a keyboard move is in progress or not.
|
|
639
|
+
*
|
|
640
|
+
* Should be called with true when a keyboard move of an IDraggable
|
|
641
|
+
* is starts, and false when it finishes or is aborted.
|
|
642
|
+
*
|
|
643
|
+
* N.B.: This method is experimental and internal-only. It is
|
|
644
|
+
* intended only to called only from the keyboard navigation plugin.
|
|
645
|
+
* Its signature and behaviour may be modified, or the method
|
|
646
|
+
* removed, at an time without notice and without being treated
|
|
647
|
+
* as a breaking change.
|
|
648
|
+
*
|
|
649
|
+
* TODO(#8960): Delete this.
|
|
650
|
+
*
|
|
651
|
+
* @internal
|
|
652
|
+
* @param inProgress Is a keyboard-initated move in progress?
|
|
653
|
+
*/
|
|
654
|
+
setKeyboardMoveInProgress(inProgress: boolean): void;
|
|
655
|
+
/**
|
|
656
|
+
* Returns true iff the user is currently engaged in a drag gesture,
|
|
657
|
+
* or if a keyboard-initated move is in progress.
|
|
658
|
+
*
|
|
659
|
+
* Dragging gestures normally entail moving a block or other item on
|
|
660
|
+
* the workspace, or scrolling the flyout/workspace.
|
|
661
|
+
*
|
|
662
|
+
* Keyboard-initated movements are implemnted using the dragging
|
|
663
|
+
* infrastructure and are intended to emulate (a subset of) drag
|
|
664
|
+
* gestures and so should typically be treated as if they were a
|
|
665
|
+
* gesture-based drag.
|
|
659
666
|
*
|
|
660
|
-
* @returns True
|
|
667
|
+
* @returns True iff a drag gesture or keyboard move is in porgress.
|
|
661
668
|
*/
|
|
662
669
|
isDragging(): boolean;
|
|
663
670
|
/**
|
|
@@ -938,7 +945,17 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
938
945
|
removeToolboxCategoryCallback(key: string): void;
|
|
939
946
|
/**
|
|
940
947
|
* Look up the gesture that is tracking this touch stream on this workspace.
|
|
941
|
-
*
|
|
948
|
+
*
|
|
949
|
+
* Returns the gesture in progress, except:
|
|
950
|
+
*
|
|
951
|
+
* - If there is a keyboard-initiate move in progress then null will
|
|
952
|
+
* be returned - after calling event.preventDefault() and
|
|
953
|
+
* event.stopPropagation() to ensure the pointer event is ignored.
|
|
954
|
+
* - If there is a gesture in progress but event.type is
|
|
955
|
+
* 'pointerdown' then the in-progress gesture will be cancelled;
|
|
956
|
+
* this will result in null being returned.
|
|
957
|
+
* - If no gesutre is in progress but event is a pointerdown then a
|
|
958
|
+
* new gesture will be created and returned.
|
|
942
959
|
*
|
|
943
960
|
* @param e Pointer event.
|
|
944
961
|
* @returns The gesture that is tracking this touch stream, or null if no
|
|
@@ -1018,6 +1035,45 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
|
|
|
1018
1035
|
* the workspace's viewport.
|
|
1019
1036
|
*/
|
|
1020
1037
|
scrollBoundsIntoView(bounds: Rect, padding?: number): void;
|
|
1038
|
+
/** See IFocusableNode.getFocusableElement. */
|
|
1039
|
+
getFocusableElement(): HTMLElement | SVGElement;
|
|
1040
|
+
/** See IFocusableNode.getFocusableTree. */
|
|
1041
|
+
getFocusableTree(): IFocusableTree;
|
|
1042
|
+
/** See IFocusableNode.onNodeFocus. */
|
|
1043
|
+
onNodeFocus(): void;
|
|
1044
|
+
/** See IFocusableNode.onNodeBlur. */
|
|
1045
|
+
onNodeBlur(): void;
|
|
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 the class of this workspace.
|
|
1060
|
+
*
|
|
1061
|
+
* @returns WorkspaceSvg.
|
|
1062
|
+
*/
|
|
1063
|
+
getClass(): typeof WorkspaceSvg;
|
|
1064
|
+
/**
|
|
1065
|
+
* Returns whether or not this workspace is keyboard-navigable.
|
|
1066
|
+
*
|
|
1067
|
+
* @returns True.
|
|
1068
|
+
*/
|
|
1069
|
+
isNavigable(): boolean;
|
|
1070
|
+
/**
|
|
1071
|
+
* Returns an object responsible for coordinating movement of focus between
|
|
1072
|
+
* items on this workspace in response to keyboard navigation commands.
|
|
1073
|
+
*
|
|
1074
|
+
* @returns This workspace's Navigator instance.
|
|
1075
|
+
*/
|
|
1076
|
+
getNavigator(): Navigator;
|
|
1021
1077
|
}
|
|
1022
1078
|
/**
|
|
1023
1079
|
* Size the workspace when the contents change. This also updates
|
package/index.mjs
CHANGED
|
@@ -3,6 +3,7 @@ export const {
|
|
|
3
3
|
ASTNode,
|
|
4
4
|
Block,
|
|
5
5
|
BlockFlyoutInflater,
|
|
6
|
+
BlockNavigationPolicy,
|
|
6
7
|
BlockSvg,
|
|
7
8
|
Blocks,
|
|
8
9
|
ButtonFlyoutInflater,
|
|
@@ -15,6 +16,7 @@ export const {
|
|
|
15
16
|
Connection,
|
|
16
17
|
ConnectionChecker,
|
|
17
18
|
ConnectionDB,
|
|
19
|
+
ConnectionNavigationPolicy,
|
|
18
20
|
ConnectionType,
|
|
19
21
|
ContextMenu,
|
|
20
22
|
ContextMenuItems,
|
|
@@ -32,15 +34,20 @@ export const {
|
|
|
32
34
|
FieldImage,
|
|
33
35
|
FieldLabel,
|
|
34
36
|
FieldLabelSerializable,
|
|
37
|
+
FieldNavigationPolicy,
|
|
35
38
|
FieldNumber,
|
|
36
39
|
FieldTextInput,
|
|
37
40
|
FieldVariable,
|
|
38
41
|
Flyout,
|
|
39
42
|
FlyoutButton,
|
|
43
|
+
FlyoutButtonNavigationPolicy,
|
|
40
44
|
FlyoutItem,
|
|
41
45
|
FlyoutMetricsManager,
|
|
46
|
+
FlyoutNavigationPolicy,
|
|
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;
|