blockly 11.0.0-beta.5 → 11.0.0-beta.7

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.
Files changed (139) hide show
  1. package/blockly.min.js +722 -763
  2. package/blockly_compressed.js +676 -680
  3. package/blockly_compressed.js.map +1 -1
  4. package/blocks_compressed.js +27 -29
  5. package/blocks_compressed.js.map +1 -1
  6. package/core/block.d.ts +12 -6
  7. package/core/block_svg.d.ts +28 -42
  8. package/core/blockly.d.ts +11 -51
  9. package/core/bubbles/bubble.d.ts +17 -2
  10. package/core/bubbles/mini_workspace_bubble.d.ts +1 -1
  11. package/core/bubbles/text_bubble.d.ts +1 -1
  12. package/core/bubbles/textinput_bubble.d.ts +1 -1
  13. package/core/clipboard.d.ts +0 -19
  14. package/core/comments/comment_view.d.ts +207 -0
  15. package/core/comments/rendered_workspace_comment.d.ts +75 -0
  16. package/core/comments/workspace_comment.d.ts +107 -0
  17. package/core/comments.d.ts +9 -0
  18. package/core/connection.d.ts +1 -1
  19. package/core/delete_area.d.ts +1 -2
  20. package/core/dragging/block_drag_strategy.d.ts +105 -0
  21. package/core/dragging/bubble_drag_strategy.d.ts +20 -0
  22. package/core/dragging/comment_drag_strategy.d.ts +20 -0
  23. package/core/dragging/dragger.d.ts +47 -0
  24. package/core/events/events.d.ts +3 -0
  25. package/core/events/events_click.d.ts +1 -1
  26. package/core/events/events_comment_base.d.ts +6 -1
  27. package/core/events/events_comment_change.d.ts +1 -1
  28. package/core/events/events_comment_collapse.d.ts +39 -0
  29. package/core/events/events_comment_create.d.ts +5 -1
  30. package/core/events/events_comment_delete.d.ts +5 -1
  31. package/core/events/events_comment_move.d.ts +17 -1
  32. package/core/events/utils.d.ts +2 -0
  33. package/core/field_dropdown.d.ts +1 -0
  34. package/core/field_image.d.ts +1 -1
  35. package/core/flyout_base.d.ts +17 -1
  36. package/core/flyout_button.d.ts +26 -1
  37. package/core/generator.d.ts +1 -1
  38. package/core/gesture.d.ts +25 -54
  39. package/core/grid.d.ts +9 -9
  40. package/core/icons/comment_icon.d.ts +8 -3
  41. package/core/icons/icon.d.ts +0 -6
  42. package/core/icons/icon_types.d.ts +2 -2
  43. package/core/icons/mutator_icon.d.ts +1 -16
  44. package/core/icons/warning_icon.d.ts +1 -1
  45. package/core/inputs/input.d.ts +10 -19
  46. package/core/{connection_previewers/insertion_marker_previewer.d.ts → insertion_marker_previewer.d.ts} +3 -3
  47. package/core/interfaces/i_comment_icon.d.ts +21 -0
  48. package/core/interfaces/i_deletable.d.ts +6 -0
  49. package/core/interfaces/i_delete_area.d.ts +1 -2
  50. package/core/interfaces/i_draggable.d.ts +47 -3
  51. package/core/interfaces/i_dragger.d.ts +32 -0
  52. package/core/interfaces/i_has_bubble.d.ts +1 -1
  53. package/core/interfaces/i_parameter_model.d.ts +7 -0
  54. package/core/interfaces/i_procedure_model.d.ts +7 -0
  55. package/core/interfaces/i_selectable.d.ts +5 -3
  56. package/core/internal_constants.d.ts +0 -7
  57. package/core/keyboard_nav/ast_node.d.ts +21 -2
  58. package/core/options.d.ts +1 -0
  59. package/core/registry.d.ts +2 -2
  60. package/core/renderers/common/drawer.d.ts +0 -7
  61. package/core/renderers/common/marker_svg.d.ts +7 -0
  62. package/core/renderers/measurables/icon.d.ts +0 -5
  63. package/core/serialization/priorities.d.ts +2 -0
  64. package/core/serialization/procedures.d.ts +28 -26
  65. package/core/serialization/workspace_comments.d.ts +45 -0
  66. package/core/serialization.d.ts +2 -1
  67. package/core/toolbox/toolbox.d.ts +1 -2
  68. package/core/utils/dom.d.ts +0 -9
  69. package/core/utils/keycodes.d.ts +32 -32
  70. package/core/utils/size.d.ts +10 -0
  71. package/core/utils/string.d.ts +0 -10
  72. package/core/workspace_comment_svg.d.ts +1 -2
  73. package/core/workspace_svg.d.ts +0 -27
  74. package/core/xml.d.ts +9 -3
  75. package/core-node.js +31 -0
  76. package/dart.d.ts +1 -24
  77. package/dart_compressed.js +22 -72
  78. package/dart_compressed.js.map +1 -1
  79. package/generators/dart/dart_generator.d.ts +17 -17
  80. package/generators/dart/text.d.ts +0 -1
  81. package/generators/javascript/javascript_generator.d.ts +34 -35
  82. package/generators/javascript/text.d.ts +0 -1
  83. package/generators/lua/lua_generator.d.ts +10 -10
  84. package/generators/lua/text.d.ts +0 -1
  85. package/generators/php/php_generator.d.ts +36 -36
  86. package/generators/php/text.d.ts +0 -1
  87. package/generators/python/python_generator.d.ts +20 -21
  88. package/generators/python/text.d.ts +0 -1
  89. package/index.js +19 -7
  90. package/javascript.d.ts +1 -41
  91. package/javascript_compressed.js +19 -54
  92. package/javascript_compressed.js.map +1 -1
  93. package/lua.d.ts +1 -18
  94. package/lua_compressed.js +24 -47
  95. package/lua_compressed.js.map +1 -1
  96. package/media/delete-icon.svg +1 -0
  97. package/media/foldout-icon.svg +1 -0
  98. package/media/resize-handle.svg +3 -0
  99. package/msg/ce.d.ts +8 -0
  100. package/msg/dtp.d.ts +8 -0
  101. package/msg/hsb.d.ts +8 -0
  102. package/msg/tdd.d.ts +8 -0
  103. package/package.json +46 -12
  104. package/php.d.ts +1 -43
  105. package/php_compressed.js +13 -46
  106. package/php_compressed.js.map +1 -1
  107. package/python.d.ts +1 -27
  108. package/python_compressed.js +21 -40
  109. package/python_compressed.js.map +1 -1
  110. package/blockly.js +0 -22
  111. package/blocks.js +0 -22
  112. package/browser.js +0 -30
  113. package/core/block_dragger.d.ts +0 -212
  114. package/core/bubble_dragger.d.ts +0 -77
  115. package/core/field_angle.d.ts +0 -208
  116. package/core/field_colour.d.ts +0 -243
  117. package/core/field_multilineinput.d.ts +0 -182
  118. package/core/interfaces/i_block_dragger.d.ts +0 -47
  119. package/core/renderers/minimalist/constants.d.ts +0 -21
  120. package/core/renderers/minimalist/drawer.d.ts +0 -26
  121. package/core/renderers/minimalist/info.d.ts +0 -35
  122. package/core/renderers/minimalist/minimalist.d.ts +0 -12
  123. package/core/renderers/minimalist/renderer.d.ts +0 -48
  124. package/core-browser.js +0 -26
  125. package/core.js +0 -26
  126. package/dart.js +0 -22
  127. package/generators/dart/colour.d.ts +0 -16
  128. package/generators/javascript/colour.d.ts +0 -16
  129. package/generators/lua/colour.d.ts +0 -16
  130. package/generators/php/colour.d.ts +0 -16
  131. package/generators/python/colour.d.ts +0 -16
  132. package/javascript.js +0 -23
  133. package/lua.js +0 -22
  134. package/msg/constants.d.ts +0 -14
  135. package/msg/qqq.d.ts +0 -14
  136. package/msg/synonyms.d.ts +0 -14
  137. package/node.js +0 -21
  138. package/php.js +0 -22
  139. package/python.js +0 -23
@@ -10,7 +10,6 @@
10
10
  */
11
11
  import './events/events_selected.js';
12
12
  import type { IBoundedElement } from './interfaces/i_bounded_element.js';
13
- import type { IBubble } from './interfaces/i_bubble.js';
14
13
  import type { ICopyable } from './interfaces/i_copyable.js';
15
14
  import { Coordinate } from './utils/coordinate.js';
16
15
  import { Rect } from './utils/rect.js';
@@ -20,7 +19,7 @@ import { WorkspaceCommentCopyData } from './clipboard/workspace_comment_paster.j
20
19
  /**
21
20
  * Class for a workspace comment's SVG representation.
22
21
  */
23
- export declare class WorkspaceCommentSvg extends WorkspaceComment implements IBoundedElement, IBubble, ICopyable<WorkspaceCommentCopyData> {
22
+ export declare class WorkspaceCommentSvg extends WorkspaceComment implements IBoundedElement, ICopyable<WorkspaceCommentCopyData> {
24
23
  /**
25
24
  * The width and height to use to size a workspace comment when it is first
26
25
  * added, before it has been edited by the user.
@@ -20,7 +20,6 @@ import { Gesture } from './gesture.js';
20
20
  import { Grid } from './grid.js';
21
21
  import type { IASTNodeLocationSvg } from './interfaces/i_ast_node_location_svg.js';
22
22
  import type { IBoundedElement } from './interfaces/i_bounded_element.js';
23
- import type { ICopyData, ICopyable } from './interfaces/i_copyable.js';
24
23
  import type { IDragTarget } from './interfaces/i_drag_target.js';
25
24
  import type { IFlyout } from './interfaces/i_flyout.js';
26
25
  import type { IMetricsManager } from './interfaces/i_metrics_manager.js';
@@ -576,32 +575,6 @@ export declare class WorkspaceSvg extends Workspace implements IASTNodeLocationS
576
575
  * highlight/unhighlight the specified block.
577
576
  */
578
577
  highlightBlock(id: string | null, opt_state?: boolean): void;
579
- /**
580
- * Pastes the provided block or workspace comment onto the workspace.
581
- * Does not check whether there is remaining capacity for the object, that
582
- * should be done before calling this method.
583
- *
584
- * @param state The representation of the thing to paste.
585
- * @returns The pasted thing, or null if the paste was not successful.
586
- * @deprecated v10. Use `Blockly.clipboard.paste` instead. To be removed in
587
- * v11.
588
- */
589
- paste(state: any | Element | DocumentFragment): ICopyable<ICopyData> | null;
590
- /**
591
- * Paste the provided block onto the workspace.
592
- *
593
- * @param xmlBlock XML block element.
594
- * @param jsonBlock JSON block representation.
595
- * @returns The pasted block.
596
- */
597
- private pasteBlock_;
598
- /**
599
- * Paste the provided comment onto the workspace.
600
- *
601
- * @param xmlComment XML workspace comment element.
602
- * @returns The pasted workspace comment.
603
- */
604
- private pasteWorkspaceComment_;
605
578
  /**
606
579
  * Refresh the toolbox unless there's a drag in progress.
607
580
  *
package/core/xml.d.ts CHANGED
@@ -6,15 +6,19 @@
6
6
  import type { Block } from './block.js';
7
7
  import type { VariableModel } from './variable_model.js';
8
8
  import type { Workspace } from './workspace.js';
9
- import type { WorkspaceSvg } from './workspace_svg.js';
9
+ import { WorkspaceSvg } from './workspace_svg.js';
10
+ import { WorkspaceComment } from './comments/workspace_comment.js';
10
11
  /**
11
12
  * Encode a block tree as XML.
12
13
  *
13
14
  * @param workspace The workspace containing blocks.
14
- * @param opt_noId True if the encoder should skip the block IDs.
15
+ * @param skipId True if the encoder should skip the block IDs. False by
16
+ * default.
15
17
  * @returns XML DOM element.
16
18
  */
17
- export declare function workspaceToDom(workspace: Workspace, opt_noId?: boolean): Element;
19
+ export declare function workspaceToDom(workspace: Workspace, skipId?: boolean): Element;
20
+ /** Serializes the given workspace comment to XML. */
21
+ export declare function saveWorkspaceComment(comment: WorkspaceComment, skipId?: boolean): Element;
18
22
  /**
19
23
  * Encode a list of variables as XML.
20
24
  *
@@ -73,6 +77,8 @@ export declare function clearWorkspaceAndLoadFromXml(xml: Element, workspace: Wo
73
77
  * @returns An array containing new block IDs.
74
78
  */
75
79
  export declare function domToWorkspace(xml: Element, workspace: Workspace): string[];
80
+ /** Deserializes the given comment state into the given workspace. */
81
+ export declare function loadWorkspaceComment(elem: Element, workspace: Workspace): WorkspaceComment;
76
82
  /**
77
83
  * Decode an XML DOM and create blocks on the workspace. Position the new
78
84
  * blocks immediately below prior blocks, aligned by their starting edge.
package/core-node.js ADDED
@@ -0,0 +1,31 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2019 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+
7
+ /**
8
+ * @file Blockly core module wrapper for node.js. This module loads
9
+ * blockly_compressed.js and jsdom, then calls
10
+ * Blockly.utils.xml.injectDependencies to supply needed XML-handling
11
+ * functions to Blocky.
12
+ *
13
+ * Note that, unlike index.js, this file does not get a UMD wrapper.
14
+ * This is because it is only used in node.js environments and so is
15
+ * guaranteed to be loaded as a CJS module.
16
+ */
17
+
18
+ /* eslint-disable */
19
+ 'use strict';
20
+
21
+ const Blockly = require('./blockly_compressed.js');
22
+ const {JSDOM} = require('jsdom');
23
+
24
+ // Override textToDomDocument and provide node.js alternatives to
25
+ // DOMParser and XMLSerializer.
26
+ if (typeof globalThis.document !== 'object') {
27
+ const {window} = new JSDOM(`<!DOCTYPE html>`);
28
+ Blockly.utils.xml.injectDependencies(window);
29
+ }
30
+
31
+ module.exports = Blockly;
package/dart.d.ts CHANGED
@@ -4,27 +4,4 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- export enum Order {
8
- ATOMIC = 0, // 0 "" ...
9
- UNARY_POSTFIX = 1, // expr++ expr-- () [] . ?.
10
- UNARY_PREFIX = 2, // -expr !expr ~expr ++expr --expr
11
- MULTIPLICATIVE = 3, // * / % ~/
12
- ADDITIVE = 4, // + -
13
- SHIFT = 5, // << >>
14
- BITWISE_AND = 6, // &
15
- BITWISE_XOR = 7, // ^
16
- BITWISE_OR = 8, // |
17
- RELATIONAL = 9, // >= > <= < as is is!
18
- EQUALITY = 10, // == !=
19
- LOGICAL_AND = 11, // &&
20
- LOGICAL_OR = 12, // ||
21
- IF_NULL = 13, // ??
22
- CONDITIONAL = 14, // expr ? expr : expr
23
- CASCADE = 15, // ..
24
- ASSIGNMENT = 16, // = *= /= ~/= %= += -= <<= >>= &= ^= |=
25
- NONE = 99, // (...)
26
- }
27
-
28
- export declare const dartGenerator: any;
29
-
30
- export {DartGenerator} from './generators/dart';
7
+ export * from './generators/dart';
@@ -12,64 +12,14 @@
12
12
  }
13
13
  }(this, function(__parent__) {
14
14
  var $=__parent__.__namespace__;
15
- var colour_picker$$module$build$src$generators$dart$colour=function(a,b){return[b.quote_(a.getFieldValue("COLOUR")),Order$$module$build$src$generators$dart$dart_generator.ATOMIC]},colour_random$$module$build$src$generators$dart$colour=function(a,b){b.definitions_.import_dart_math="import 'dart:math' as Math;";return[b.provideFunction_("colour_random",`
16
- String ${b.FUNCTION_NAME_PLACEHOLDER_}() {
17
- String hex = '0123456789abcdef';
18
- var rnd = new Math.Random();
19
- return '#\${hex[rnd.nextInt(16)]}\${hex[rnd.nextInt(16)]}'
20
- '\${hex[rnd.nextInt(16)]}\${hex[rnd.nextInt(16)]}'
21
- '\${hex[rnd.nextInt(16)]}\${hex[rnd.nextInt(16)]}';
22
- }
23
- `)+"()",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},colour_rgb$$module$build$src$generators$dart$colour=function(a,b){const c=b.valueToCode(a,"RED",Order$$module$build$src$generators$dart$dart_generator.NONE)||0,d=b.valueToCode(a,"GREEN",Order$$module$build$src$generators$dart$dart_generator.NONE)||0;a=b.valueToCode(a,"BLUE",Order$$module$build$src$generators$dart$dart_generator.NONE)||0;b.definitions_.import_dart_math="import 'dart:math' as Math;";return[b.provideFunction_("colour_rgb",
24
- `
25
- String ${b.FUNCTION_NAME_PLACEHOLDER_}(num r, num g, num b) {
26
- num rn = (Math.max(Math.min(r, 100), 0) * 2.55).round();
27
- String rs = rn.toInt().toRadixString(16);
28
- rs = '0$rs';
29
- rs = rs.substring(rs.length - 2);
30
- num gn = (Math.max(Math.min(g, 100), 0) * 2.55).round();
31
- String gs = gn.toInt().toRadixString(16);
32
- gs = '0$gs';
33
- gs = gs.substring(gs.length - 2);
34
- num bn = (Math.max(Math.min(b, 100), 0) * 2.55).round();
35
- String bs = bn.toInt().toRadixString(16);
36
- bs = '0$bs';
37
- bs = bs.substring(bs.length - 2);
38
- return '#$rs$gs$bs';
39
- }
40
- `)+"("+c+", "+d+", "+a+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},colour_blend$$module$build$src$generators$dart$colour=function(a,b){const c=b.valueToCode(a,"COLOUR1",Order$$module$build$src$generators$dart$dart_generator.NONE)||"'#000000'",d=b.valueToCode(a,"COLOUR2",Order$$module$build$src$generators$dart$dart_generator.NONE)||"'#000000'";a=b.valueToCode(a,"RATIO",Order$$module$build$src$generators$dart$dart_generator.NONE)||.5;b.definitions_.import_dart_math="import 'dart:math' as Math;";
41
- return[b.provideFunction_("colour_blend",`
42
- String ${b.FUNCTION_NAME_PLACEHOLDER_}(String c1, String c2, num ratio) {
43
- ratio = Math.max(Math.min(ratio, 1), 0);
44
- int r1 = int.parse('0x\${c1.substring(1, 3)}');
45
- int g1 = int.parse('0x\${c1.substring(3, 5)}');
46
- int b1 = int.parse('0x\${c1.substring(5, 7)}');
47
- int r2 = int.parse('0x\${c2.substring(1, 3)}');
48
- int g2 = int.parse('0x\${c2.substring(3, 5)}');
49
- int b2 = int.parse('0x\${c2.substring(5, 7)}');
50
- num rn = (r1 * (1 - ratio) + r2 * ratio).round();
51
- String rs = rn.toInt().toRadixString(16);
52
- num gn = (g1 * (1 - ratio) + g2 * ratio).round();
53
- String gs = gn.toInt().toRadixString(16);
54
- num bn = (b1 * (1 - ratio) + b2 * ratio).round();
55
- String bs = bn.toInt().toRadixString(16);
56
- rs = '0$rs';
57
- rs = rs.substring(rs.length - 2);
58
- gs = '0$gs';
59
- gs = gs.substring(gs.length - 2);
60
- bs = '0$bs';
61
- bs = bs.substring(bs.length - 2);
62
- return '#$rs$gs$bs';
63
- }
64
- `)+"("+c+", "+d+", "+a+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},lists_create_empty$$module$build$src$generators$dart$lists=function(a,b){return["[]",Order$$module$build$src$generators$dart$dart_generator.ATOMIC]},lists_create_with$$module$build$src$generators$dart$lists=function(a,b){const c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,Order$$module$build$src$generators$dart$dart_generator.NONE)||"null";return["["+c.join(", ")+"]",
65
- Order$$module$build$src$generators$dart$dart_generator.ATOMIC]},lists_repeat$$module$build$src$generators$dart$lists=function(a,b){const c=b.valueToCode(a,"ITEM",Order$$module$build$src$generators$dart$dart_generator.NONE)||"null";return["new List.filled("+(b.valueToCode(a,"NUM",Order$$module$build$src$generators$dart$dart_generator.NONE)||"0")+", "+c+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},lists_length$$module$build$src$generators$dart$lists=function(a,b){return[(b.valueToCode(a,
66
- "VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"[]")+".length",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},lists_isEmpty$$module$build$src$generators$dart$lists=function(a,b){return[(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"[]")+".isEmpty",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},lists_indexOf$$module$build$src$generators$dart$lists=function(a,b){const c=
67
- "FIRST"===a.getFieldValue("END")?"indexOf":"lastIndexOf",d=b.valueToCode(a,"FIND",Order$$module$build$src$generators$dart$dart_generator.NONE)||"''";b=(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"[]")+"."+c+"("+d+")";return a.workspace.options.oneBasedIndex?[b+" + 1",Order$$module$build$src$generators$dart$dart_generator.ADDITIVE]:[b,Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},lists_getIndex$$module$build$src$generators$dart$lists=
68
- function(a,b){function c(){const g=b.nameDB_.getDistinctName("tmp_list",$.NameType$$module$build$src$core$names.VARIABLE),h="List "+g+" = "+f+";\n";f=g;return h}var d=a.getFieldValue("MODE")||"GET";const e=a.getFieldValue("WHERE")||"FROM_START";let f=b.valueToCode(a,"VALUE","RANDOM"===e||"FROM_END"===e?Order$$module$build$src$generators$dart$dart_generator.NONE:Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"[]";if(("RANDOM"!==e||"REMOVE"!==d)&&"FROM_END"!==e||f.match(/^\w+$/))switch(e){case "FIRST":if("GET"===
69
- d)return[f+".first",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("GET_REMOVE"===d)return[f+".removeAt(0)",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("REMOVE"===d)return f+".removeAt(0);\n";break;case "LAST":if("GET"===d)return[f+".last",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("GET_REMOVE"===d)return[f+".removeLast()",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("REMOVE"===d)return f+
70
- ".removeLast();\n";break;case "FROM_START":a=b.getAdjusted(a,"AT");if("GET"===d)return[f+"["+a+"]",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("GET_REMOVE"===d)return[f+".removeAt("+a+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("REMOVE"===d)return f+".removeAt("+a+");\n";break;case "FROM_END":a=b.getAdjusted(a,"AT",1,!1,Order$$module$build$src$generators$dart$dart_generator.ADDITIVE);if("GET"===d)return[f+"["+f+".length - "+a+"]",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];
71
- if("GET_REMOVE"===d||"REMOVE"===d){a=f+".removeAt("+f+".length - "+a+")";if("GET_REMOVE"===d)return[a,Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("REMOVE"===d)return a+";\n"}break;case "RANDOM":b.definitions_.import_dart_math="import 'dart:math' as Math;";if("REMOVE"===d)return d=b.nameDB_.getDistinctName("tmp_x",$.NameType$$module$build$src$core$names.VARIABLE),"int "+d+" = new Math.Random().nextInt("+f+".length);\n"+(f+".removeAt("+d+");\n");if("GET"===d)return[b.provideFunction_("lists_get_random_item",
72
- `
15
+ var lists_create_empty$$module$build$src$generators$dart$lists=function(a,b){return["[]",Order$$module$build$src$generators$dart$dart_generator.ATOMIC]},lists_create_with$$module$build$src$generators$dart$lists=function(a,b){const c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,Order$$module$build$src$generators$dart$dart_generator.NONE)||"null";return["["+c.join(", ")+"]",Order$$module$build$src$generators$dart$dart_generator.ATOMIC]},lists_repeat$$module$build$src$generators$dart$lists=
16
+ function(a,b){const c=b.valueToCode(a,"ITEM",Order$$module$build$src$generators$dart$dart_generator.NONE)||"null";return["new List.filled("+(b.valueToCode(a,"NUM",Order$$module$build$src$generators$dart$dart_generator.NONE)||"0")+", "+c+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},lists_length$$module$build$src$generators$dart$lists=function(a,b){return[(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"[]")+".length",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},
17
+ lists_isEmpty$$module$build$src$generators$dart$lists=function(a,b){return[(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"[]")+".isEmpty",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},lists_indexOf$$module$build$src$generators$dart$lists=function(a,b){const c="FIRST"===a.getFieldValue("END")?"indexOf":"lastIndexOf",d=b.valueToCode(a,"FIND",Order$$module$build$src$generators$dart$dart_generator.NONE)||"''";b=(b.valueToCode(a,
18
+ "VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"[]")+"."+c+"("+d+")";return a.workspace.options.oneBasedIndex?[b+" + 1",Order$$module$build$src$generators$dart$dart_generator.ADDITIVE]:[b,Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},lists_getIndex$$module$build$src$generators$dart$lists=function(a,b){function c(){const g=b.nameDB_.getDistinctName("tmp_list",$.NameType$$module$build$src$core$names.VARIABLE),h="List "+g+" = "+f+";\n";f=g;return h}
19
+ var d=a.getFieldValue("MODE")||"GET";const e=a.getFieldValue("WHERE")||"FROM_START";let f=b.valueToCode(a,"VALUE","RANDOM"===e||"FROM_END"===e?Order$$module$build$src$generators$dart$dart_generator.NONE:Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"[]";if(("RANDOM"!==e||"REMOVE"!==d)&&"FROM_END"!==e||f.match(/^\w+$/))switch(e){case "FIRST":if("GET"===d)return[f+".first",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("GET_REMOVE"===d)return[f+".removeAt(0)",
20
+ Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("REMOVE"===d)return f+".removeAt(0);\n";break;case "LAST":if("GET"===d)return[f+".last",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("GET_REMOVE"===d)return[f+".removeLast()",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("REMOVE"===d)return f+".removeLast();\n";break;case "FROM_START":a=b.getAdjusted(a,"AT");if("GET"===d)return[f+"["+a+"]",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];
21
+ if("GET_REMOVE"===d)return[f+".removeAt("+a+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("REMOVE"===d)return f+".removeAt("+a+");\n";break;case "FROM_END":a=b.getAdjusted(a,"AT",1,!1,Order$$module$build$src$generators$dart$dart_generator.ADDITIVE);if("GET"===d)return[f+"["+f+".length - "+a+"]",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];if("GET_REMOVE"===d||"REMOVE"===d){a=f+".removeAt("+f+".length - "+a+")";if("GET_REMOVE"===d)return[a,Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];
22
+ if("REMOVE"===d)return a+";\n"}break;case "RANDOM":b.definitions_.import_dart_math="import 'dart:math' as Math;";if("REMOVE"===d)return d=b.nameDB_.getDistinctName("tmp_x",$.NameType$$module$build$src$core$names.VARIABLE),"int "+d+" = new Math.Random().nextInt("+f+".length);\n"+(f+".removeAt("+d+");\n");if("GET"===d)return[b.provideFunction_("lists_get_random_item",`
73
23
  dynamic ${b.FUNCTION_NAME_PLACEHOLDER_}(List my_list) {
74
24
  int x = new Math.Random().nextInt(my_list.length);
75
25
  return my_list[x];
@@ -276,19 +226,19 @@ int ${b.FUNCTION_NAME_PLACEHOLDER_}(num a, num b) {
276
226
  }
277
227
  `)+"("+c+", "+a+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},math_random_float$$module$build$src$generators$dart$math=function(a,b){b.definitions_.import_dart_math="import 'dart:math' as Math;";return["new Math.Random().nextDouble()",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},math_atan2$$module$build$src$generators$dart$math=function(a,b){b.definitions_.import_dart_math="import 'dart:math' as Math;";const c=b.valueToCode(a,"X",Order$$module$build$src$generators$dart$dart_generator.NONE)||
278
228
  "0";return["Math.atan2("+(b.valueToCode(a,"Y",Order$$module$build$src$generators$dart$dart_generator.NONE)||"0")+", "+c+") / Math.pi * 180",Order$$module$build$src$generators$dart$dart_generator.MULTIPLICATIVE]},procedures_defreturn$$module$build$src$generators$dart$procedures=function(a,b){const c=b.getProcedureName(a.getFieldValue("NAME"));var d="";b.STATEMENT_PREFIX&&(d+=b.injectId(b.STATEMENT_PREFIX,a));b.STATEMENT_SUFFIX&&(d+=b.injectId(b.STATEMENT_SUFFIX,a));d&&(d=b.prefixLines(d,b.INDENT));
279
- let e="";b.INFINITE_LOOP_TRAP&&(e=b.prefixLines(b.injectId(b.INFINITE_LOOP_TRAP,a),b.INDENT));const f=b.statementToCode(a,"STACK");let g=b.valueToCode(a,"RETURN",Order$$module$build$src$generators$dart$dart_generator.NONE)||"",h="";f&&g&&(h=d);g&&(g=b.INDENT+"return "+g+";\n");const k=g?"dynamic":"void",l=[],m=a.getVars();for(let n=0;n<m.length;n++)l[n]=b.getVariableName(m[n]);d=k+" "+c+"("+l.join(", ")+") {\n"+d+e+f+h+g+"}";d=b.scrub_(a,d);b.definitions_["%"+c]=d;return null},procedures_callreturn$$module$build$src$generators$dart$procedures=
280
- function(a,b){const c=b.getProcedureName(a.getFieldValue("NAME")),d=[],e=a.getVars();for(let f=0;f<e.length;f++)d[f]=b.valueToCode(a,"ARG"+f,Order$$module$build$src$generators$dart$dart_generator.NONE)||"null";return[c+"("+d.join(", ")+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},procedures_callnoreturn$$module$build$src$generators$dart$procedures=function(a,b){return b.forBlock.procedures_callreturn(a,b)[0]+";\n"},procedures_ifreturn$$module$build$src$generators$dart$procedures=
281
- function(a,b){let c="if ("+(b.valueToCode(a,"CONDITION",Order$$module$build$src$generators$dart$dart_generator.NONE)||"false")+") {\n";b.STATEMENT_SUFFIX&&(c+=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT));a.hasReturnValue_?(a=b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.NONE)||"null",c+=b.INDENT+"return "+a+";\n"):c+=b.INDENT+"return;\n";return c+"}\n"},text$$module$build$src$generators$dart$text=function(a,b){return[b.quote_(a.getFieldValue("TEXT")),
282
- Order$$module$build$src$generators$dart$dart_generator.ATOMIC]},text_multiline$$module$build$src$generators$dart$text=function(a,b){a=b.multiline_quote_(a.getFieldValue("TEXT"));b=-1!==a.indexOf("+")?Order$$module$build$src$generators$dart$dart_generator.ADDITIVE:Order$$module$build$src$generators$dart$dart_generator.ATOMIC;return[a,b]},text_join$$module$build$src$generators$dart$text=function(a,b){switch(a.itemCount_){case 0:return["''",Order$$module$build$src$generators$dart$dart_generator.ATOMIC];
283
- case 1:return[(b.valueToCode(a,"ADD0",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"''")+".toString()",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];default:const c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,Order$$module$build$src$generators$dart$dart_generator.NONE)||"''";return["["+c.join(",")+"].join()",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]}},text_append$$module$build$src$generators$dart$text=
284
- function(a,b){const c=b.getVariableName(a.getFieldValue("VAR"));a=b.valueToCode(a,"TEXT",Order$$module$build$src$generators$dart$dart_generator.NONE)||"''";return c+" = ["+c+", "+a+"].join();\n"},text_length$$module$build$src$generators$dart$text=function(a,b){return[(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"''")+".length",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},text_isEmpty$$module$build$src$generators$dart$text=
285
- function(a,b){return[(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"''")+".isEmpty",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},text_indexOf$$module$build$src$generators$dart$text=function(a,b){const c="FIRST"===a.getFieldValue("END")?"indexOf":"lastIndexOf",d=b.valueToCode(a,"FIND",Order$$module$build$src$generators$dart$dart_generator.NONE)||"''";b=(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||
286
- "''")+"."+c+"("+d+")";return a.workspace.options.oneBasedIndex?[b+" + 1",Order$$module$build$src$generators$dart$dart_generator.ADDITIVE]:[b,Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},text_charAt$$module$build$src$generators$dart$text=function(a,b){const c=a.getFieldValue("WHERE")||"FROM_START",d=b.valueToCode(a,"VALUE","FIRST"===c||"FROM_START"===c?Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX:Order$$module$build$src$generators$dart$dart_generator.NONE)||
287
- "''";switch(c){case "FIRST":return[d+"[0]",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];case "FROM_START":return a=b.getAdjusted(a,"AT"),[d+"["+a+"]",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];case "LAST":case "FROM_END":return a=b.getAdjusted(a,"AT",1),[b.provideFunction_("text_get_from_end",`
229
+ let e="";b.INFINITE_LOOP_TRAP&&(e=b.prefixLines(b.injectId(b.INFINITE_LOOP_TRAP,a),b.INDENT));let f="";a.getInput("STACK")&&(f=b.statementToCode(a,"STACK"));let g="";a.getInput("RETURN")&&(g=b.valueToCode(a,"RETURN",Order$$module$build$src$generators$dart$dart_generator.NONE)||"");let h="";f&&g&&(h=d);g&&(g=b.INDENT+"return "+g+";\n");const k=g?"dynamic":"void",l=[],m=a.getVars();for(let n=0;n<m.length;n++)l[n]=b.getVariableName(m[n]);d=k+" "+c+"("+l.join(", ")+") {\n"+d+e+f+h+g+"}";d=b.scrub_(a,
230
+ d);b.definitions_["%"+c]=d;return null},procedures_callreturn$$module$build$src$generators$dart$procedures=function(a,b){const c=b.getProcedureName(a.getFieldValue("NAME")),d=[],e=a.getVars();for(let f=0;f<e.length;f++)d[f]=b.valueToCode(a,"ARG"+f,Order$$module$build$src$generators$dart$dart_generator.NONE)||"null";return[c+"("+d.join(", ")+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},procedures_callnoreturn$$module$build$src$generators$dart$procedures=function(a,b){return b.forBlock.procedures_callreturn(a,
231
+ b)[0]+";\n"},procedures_ifreturn$$module$build$src$generators$dart$procedures=function(a,b){let c="if ("+(b.valueToCode(a,"CONDITION",Order$$module$build$src$generators$dart$dart_generator.NONE)||"false")+") {\n";b.STATEMENT_SUFFIX&&(c+=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT));a.hasReturnValue_?(a=b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.NONE)||"null",c+=b.INDENT+"return "+a+";\n"):c+=b.INDENT+"return;\n";return c+"}\n"},text$$module$build$src$generators$dart$text=
232
+ function(a,b){return[b.quote_(a.getFieldValue("TEXT")),Order$$module$build$src$generators$dart$dart_generator.ATOMIC]},text_join$$module$build$src$generators$dart$text=function(a,b){switch(a.itemCount_){case 0:return["''",Order$$module$build$src$generators$dart$dart_generator.ATOMIC];case 1:return[(b.valueToCode(a,"ADD0",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"''")+".toString()",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];default:const c=Array(a.itemCount_);
233
+ for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,Order$$module$build$src$generators$dart$dart_generator.NONE)||"''";return["["+c.join(",")+"].join()",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]}},text_append$$module$build$src$generators$dart$text=function(a,b){const c=b.getVariableName(a.getFieldValue("VAR"));a=b.valueToCode(a,"TEXT",Order$$module$build$src$generators$dart$dart_generator.NONE)||"''";return c+" = ["+c+", "+a+"].join();\n"},text_length$$module$build$src$generators$dart$text=
234
+ function(a,b){return[(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"''")+".length",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},text_isEmpty$$module$build$src$generators$dart$text=function(a,b){return[(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"''")+".isEmpty",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},text_indexOf$$module$build$src$generators$dart$text=
235
+ function(a,b){const c="FIRST"===a.getFieldValue("END")?"indexOf":"lastIndexOf",d=b.valueToCode(a,"FIND",Order$$module$build$src$generators$dart$dart_generator.NONE)||"''";b=(b.valueToCode(a,"VALUE",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX)||"''")+"."+c+"("+d+")";return a.workspace.options.oneBasedIndex?[b+" + 1",Order$$module$build$src$generators$dart$dart_generator.ADDITIVE]:[b,Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX]},text_charAt$$module$build$src$generators$dart$text=
236
+ function(a,b){const c=a.getFieldValue("WHERE")||"FROM_START",d=b.valueToCode(a,"VALUE","FIRST"===c||"FROM_START"===c?Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX:Order$$module$build$src$generators$dart$dart_generator.NONE)||"''";switch(c){case "FIRST":return[d+"[0]",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];case "FROM_START":return a=b.getAdjusted(a,"AT"),[d+"["+a+"]",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];case "LAST":case "FROM_END":return a=
237
+ "LAST"===c?1:b.getAdjusted(a,"AT",1),[`${b.provideFunction_("text_get_from_end",`
288
238
  String ${b.FUNCTION_NAME_PLACEHOLDER_}(String text, num x) {
289
239
  return text[text.length - x];
290
240
  }
291
- `)+"("+d+", "+a+")",Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];case "RANDOM":return b.definitions_.import_dart_math="import 'dart:math' as Math;",[b.provideFunction_("text_random_letter",`
241
+ `)}(${d}, ${a})`,Order$$module$build$src$generators$dart$dart_generator.UNARY_POSTFIX];case "RANDOM":return b.definitions_.import_dart_math="import 'dart:math' as Math;",[b.provideFunction_("text_random_letter",`
292
242
  String ${b.FUNCTION_NAME_PLACEHOLDER_}(String text) {
293
243
  int x = new Math.Random().nextInt(text.length);
294
244
  return text[x];
@@ -358,7 +308,7 @@ $.NameType$$module$build$src$core$names.VARIABLE));b.length&&(this.definitions_.
358
308
  ";\n"}quote_(a){a=a.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n").replace(/\$/g,"\\$").replace(/'/g,"\\'");return"'"+a+"'"}multiline_quote_(a){return a.split(/\n/g).map(this.quote_).join(" + '\\n' + \n")}scrub_(a,b,c=!1){let d="";if(!a.outputConnection||!a.outputConnection.targetConnection){var e=a.getCommentText();e&&(e=$.wrap$$module$build$src$core$utils$string(e,this.COMMENT_WRAP-3),d=a.getProcedureDef?d+this.prefixLines(e+"\n","/// "):d+this.prefixLines(e+"\n","// "));for(let f=0;f<a.inputList.length;f++)a.inputList[f].type===
359
309
  $.inputTypes$$module$build$src$core$inputs$input_types.VALUE&&(e=a.inputList[f].connection.targetBlock())&&(e=this.allNestedComments(e))&&(d+=this.prefixLines(e,"// "))}a=a.nextConnection&&a.nextConnection.targetBlock();c=c?"":this.blockToCode(a);return d+b+c}getAdjusted(a,b,c=0,d=!1,e=Order$$module$build$src$generators$dart$dart_generator.NONE){a.workspace.options.oneBasedIndex&&c--;const f=a.workspace.options.oneBasedIndex?"1":"0";let g=e;c?g=Order$$module$build$src$generators$dart$dart_generator.ADDITIVE:
360
310
  d&&(g=Order$$module$build$src$generators$dart$dart_generator.UNARY_PREFIX);a=this.valueToCode(a,b,g)||f;if(0===c&&!d)return a;if($.isNumber$$module$build$src$core$utils$string(a))return a=String(Number(a)+c),d&&(a=String(-Number(a))),a;0<c?a=`${a} + ${c}`:0>c&&(a=`${a} - ${-c}`);d&&(a=c?`-(${a})`:`-${a}`);Math.floor(e)>=Math.floor(g)&&(a=`(${a})`);return a}},module$build$src$generators$dart$dart_generator={};module$build$src$generators$dart$dart_generator.DartGenerator=DartGenerator$$module$build$src$generators$dart$dart_generator;
361
- module$build$src$generators$dart$dart_generator.Order=Order$$module$build$src$generators$dart$dart_generator;var module$build$src$generators$dart$colour={};module$build$src$generators$dart$colour.colour_blend=colour_blend$$module$build$src$generators$dart$colour;module$build$src$generators$dart$colour.colour_picker=colour_picker$$module$build$src$generators$dart$colour;module$build$src$generators$dart$colour.colour_random=colour_random$$module$build$src$generators$dart$colour;module$build$src$generators$dart$colour.colour_rgb=colour_rgb$$module$build$src$generators$dart$colour;var module$build$src$generators$dart$lists={};module$build$src$generators$dart$lists.lists_create_empty=lists_create_empty$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_create_with=lists_create_with$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_getIndex=lists_getIndex$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_getSublist=lists_getSublist$$module$build$src$generators$dart$lists;
311
+ module$build$src$generators$dart$dart_generator.Order=Order$$module$build$src$generators$dart$dart_generator;var module$build$src$generators$dart$lists={};module$build$src$generators$dart$lists.lists_create_empty=lists_create_empty$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_create_with=lists_create_with$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_getIndex=lists_getIndex$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_getSublist=lists_getSublist$$module$build$src$generators$dart$lists;
362
312
  module$build$src$generators$dart$lists.lists_indexOf=lists_indexOf$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_isEmpty=lists_isEmpty$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_length=lists_length$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_repeat=lists_repeat$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_reverse=lists_reverse$$module$build$src$generators$dart$lists;
363
313
  module$build$src$generators$dart$lists.lists_setIndex=lists_setIndex$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_sort=lists_sort$$module$build$src$generators$dart$lists;module$build$src$generators$dart$lists.lists_split=lists_split$$module$build$src$generators$dart$lists;var controls_ifelse$$module$build$src$generators$dart$logic=controls_if$$module$build$src$generators$dart$logic,module$build$src$generators$dart$logic={};module$build$src$generators$dart$logic.controls_if=controls_if$$module$build$src$generators$dart$logic;module$build$src$generators$dart$logic.controls_ifelse=controls_if$$module$build$src$generators$dart$logic;module$build$src$generators$dart$logic.logic_boolean=logic_boolean$$module$build$src$generators$dart$logic;
364
314
  module$build$src$generators$dart$logic.logic_compare=logic_compare$$module$build$src$generators$dart$logic;module$build$src$generators$dart$logic.logic_negate=logic_negate$$module$build$src$generators$dart$logic;module$build$src$generators$dart$logic.logic_null=logic_null$$module$build$src$generators$dart$logic;module$build$src$generators$dart$logic.logic_operation=logic_operation$$module$build$src$generators$dart$logic;module$build$src$generators$dart$logic.logic_ternary=logic_ternary$$module$build$src$generators$dart$logic;var controls_repeat$$module$build$src$generators$dart$loops=controls_repeat_ext$$module$build$src$generators$dart$loops,module$build$src$generators$dart$loops={};module$build$src$generators$dart$loops.controls_flow_statements=controls_flow_statements$$module$build$src$generators$dart$loops;module$build$src$generators$dart$loops.controls_for=controls_for$$module$build$src$generators$dart$loops;module$build$src$generators$dart$loops.controls_forEach=controls_forEach$$module$build$src$generators$dart$loops;
@@ -368,9 +318,9 @@ module$build$src$generators$dart$math.math_number_property=math_number_property$
368
318
  module$build$src$generators$dart$math.math_single=math_single$$module$build$src$generators$dart$math;module$build$src$generators$dart$math.math_trig=math_single$$module$build$src$generators$dart$math;var procedures_defnoreturn$$module$build$src$generators$dart$procedures=procedures_defreturn$$module$build$src$generators$dart$procedures,module$build$src$generators$dart$procedures={};module$build$src$generators$dart$procedures.procedures_callnoreturn=procedures_callnoreturn$$module$build$src$generators$dart$procedures;module$build$src$generators$dart$procedures.procedures_callreturn=procedures_callreturn$$module$build$src$generators$dart$procedures;
369
319
  module$build$src$generators$dart$procedures.procedures_defnoreturn=procedures_defreturn$$module$build$src$generators$dart$procedures;module$build$src$generators$dart$procedures.procedures_defreturn=procedures_defreturn$$module$build$src$generators$dart$procedures;module$build$src$generators$dart$procedures.procedures_ifreturn=procedures_ifreturn$$module$build$src$generators$dart$procedures;var text_prompt$$module$build$src$generators$dart$text=text_prompt_ext$$module$build$src$generators$dart$text,module$build$src$generators$dart$text={};module$build$src$generators$dart$text.text=text$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_append=text_append$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_changeCase=text_changeCase$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_charAt=text_charAt$$module$build$src$generators$dart$text;
370
320
  module$build$src$generators$dart$text.text_count=text_count$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_getSubstring=text_getSubstring$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_indexOf=text_indexOf$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_isEmpty=text_isEmpty$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_join=text_join$$module$build$src$generators$dart$text;
371
- module$build$src$generators$dart$text.text_length=text_length$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_multiline=text_multiline$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_print=text_print$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_prompt=text_prompt_ext$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_prompt_ext=text_prompt_ext$$module$build$src$generators$dart$text;
372
- module$build$src$generators$dart$text.text_replace=text_replace$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_reverse=text_reverse$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_trim=text_trim$$module$build$src$generators$dart$text;var module$build$src$generators$dart$variables={};module$build$src$generators$dart$variables.variables_get=variables_get$$module$build$src$generators$dart$variables;module$build$src$generators$dart$variables.variables_set=variables_set$$module$build$src$generators$dart$variables;var module$build$src$generators$dart$variables_dynamic={};module$build$src$generators$dart$variables_dynamic.variables_get_dynamic=variables_get$$module$build$src$generators$dart$variables;module$build$src$generators$dart$variables_dynamic.variables_set_dynamic=variables_set$$module$build$src$generators$dart$variables;var dartGenerator$$module$build$src$generators$dart=new DartGenerator$$module$build$src$generators$dart$dart_generator;dartGenerator$$module$build$src$generators$dart.addReservedWords("Html,Math");
373
- var generators$$module$build$src$generators$dart=Object.assign({},module$build$src$generators$dart$colour,module$build$src$generators$dart$lists,module$build$src$generators$dart$logic,module$build$src$generators$dart$loops,module$build$src$generators$dart$math,module$build$src$generators$dart$procedures,module$build$src$generators$dart$text,module$build$src$generators$dart$variables,module$build$src$generators$dart$variables_dynamic);
321
+ module$build$src$generators$dart$text.text_length=text_length$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_print=text_print$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_prompt=text_prompt_ext$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_prompt_ext=text_prompt_ext$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_replace=text_replace$$module$build$src$generators$dart$text;
322
+ module$build$src$generators$dart$text.text_reverse=text_reverse$$module$build$src$generators$dart$text;module$build$src$generators$dart$text.text_trim=text_trim$$module$build$src$generators$dart$text;var module$build$src$generators$dart$variables={};module$build$src$generators$dart$variables.variables_get=variables_get$$module$build$src$generators$dart$variables;module$build$src$generators$dart$variables.variables_set=variables_set$$module$build$src$generators$dart$variables;var module$build$src$generators$dart$variables_dynamic={};module$build$src$generators$dart$variables_dynamic.variables_get_dynamic=variables_get$$module$build$src$generators$dart$variables;module$build$src$generators$dart$variables_dynamic.variables_set_dynamic=variables_set$$module$build$src$generators$dart$variables;var dartGenerator$$module$build$src$generators$dart=new DartGenerator$$module$build$src$generators$dart$dart_generator;dartGenerator$$module$build$src$generators$dart.addReservedWords("Html,Math");
323
+ var generators$$module$build$src$generators$dart=Object.assign({},module$build$src$generators$dart$lists,module$build$src$generators$dart$logic,module$build$src$generators$dart$loops,module$build$src$generators$dart$math,module$build$src$generators$dart$procedures,module$build$src$generators$dart$text,module$build$src$generators$dart$variables,module$build$src$generators$dart$variables_dynamic);
374
324
  for(const a in generators$$module$build$src$generators$dart)dartGenerator$$module$build$src$generators$dart.forBlock[a]=generators$$module$build$src$generators$dart[a];var module$build$src$generators$dart={};module$build$src$generators$dart.DartGenerator=DartGenerator$$module$build$src$generators$dart$dart_generator;module$build$src$generators$dart.Order=Order$$module$build$src$generators$dart$dart_generator;module$build$src$generators$dart.dartGenerator=dartGenerator$$module$build$src$generators$dart;
375
325
  module$build$src$generators$dart.__namespace__=$;
376
326
  return module$build$src$generators$dart;