blockly 10.3.0-beta.0 → 11.0.0-beta.0

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 (221) hide show
  1. package/README.md +48 -34
  2. package/blockly.min.js +270 -258
  3. package/blockly_compressed.js +232 -224
  4. package/blockly_compressed.js.map +1 -1
  5. package/blocks_compressed.js.map +1 -1
  6. package/core/block.d.ts +2 -0
  7. package/core/block_dragger.d.ts +7 -3
  8. package/core/block_svg.d.ts +11 -13
  9. package/core/events/events_block_field_intermediate_change.d.ts +6 -0
  10. package/core/field.d.ts +18 -0
  11. package/core/field_input.d.ts +6 -1
  12. package/core/flyout_base.d.ts +9 -1
  13. package/core/gesture.d.ts +2 -2
  14. package/core/icons/comment_icon.d.ts +1 -0
  15. package/core/icons/icon.d.ts +19 -0
  16. package/core/icons/mutator_icon.d.ts +1 -0
  17. package/core/icons/warning_icon.d.ts +1 -0
  18. package/core/interfaces/i_icon.d.ts +8 -0
  19. package/core/interfaces/i_rendered_element.d.ts +19 -0
  20. package/core/layer_manager.d.ts +74 -0
  21. package/core/layers.d.ts +18 -0
  22. package/core/rendered_connection.d.ts +0 -6
  23. package/core/serialization/blocks.d.ts +2 -1
  24. package/core/workspace_svg.d.ts +14 -1
  25. package/dart.d.ts +1 -22
  26. package/dart_compressed.js +14 -11
  27. package/dart_compressed.js.map +1 -1
  28. package/generators/dart/colour.d.ts +16 -0
  29. package/generators/dart/dart_generator.d.ts +100 -0
  30. package/generators/dart/lists.d.ts +24 -0
  31. package/generators/dart/logic.d.ts +20 -0
  32. package/generators/dart/loops.d.ts +14 -0
  33. package/generators/dart/math.d.ts +26 -0
  34. package/generators/dart/procedures.d.ts +17 -0
  35. package/generators/dart/text.d.ts +29 -0
  36. package/generators/dart/variables.d.ts +14 -0
  37. package/generators/dart/variables_dynamic.d.ts +10 -0
  38. package/generators/dart.d.ts +18 -0
  39. package/generators/javascript/colour.d.ts +16 -0
  40. package/generators/javascript/javascript_generator.d.ts +120 -0
  41. package/generators/javascript/lists.d.ts +24 -0
  42. package/generators/javascript/logic.d.ts +20 -0
  43. package/generators/javascript/loops.d.ts +14 -0
  44. package/generators/javascript/math.d.ts +26 -0
  45. package/generators/javascript/procedures.d.ts +17 -0
  46. package/generators/javascript/text.d.ts +29 -0
  47. package/generators/javascript/variables.d.ts +14 -0
  48. package/generators/javascript/variables_dynamic.d.ts +10 -0
  49. package/generators/javascript.d.ts +18 -0
  50. package/generators/lua/colour.d.ts +16 -0
  51. package/generators/lua/lists.d.ts +24 -0
  52. package/generators/lua/logic.d.ts +20 -0
  53. package/generators/lua/loops.d.ts +14 -0
  54. package/generators/lua/lua_generator.d.ts +85 -0
  55. package/generators/lua/math.d.ts +26 -0
  56. package/generators/lua/procedures.d.ts +17 -0
  57. package/generators/lua/text.d.ts +29 -0
  58. package/generators/lua/variables.d.ts +14 -0
  59. package/generators/lua/variables_dynamic.d.ts +10 -0
  60. package/generators/lua.d.ts +16 -0
  61. package/generators/php/colour.d.ts +16 -0
  62. package/generators/php/lists.d.ts +21 -0
  63. package/generators/php/logic.d.ts +20 -0
  64. package/generators/php/loops.d.ts +14 -0
  65. package/generators/php/math.d.ts +26 -0
  66. package/generators/php/php_generator.d.ts +118 -0
  67. package/generators/php/procedures.d.ts +14 -0
  68. package/generators/php/text.d.ts +29 -0
  69. package/generators/php/variables.d.ts +14 -0
  70. package/generators/php/variables_dynamic.d.ts +10 -0
  71. package/generators/php.d.ts +18 -0
  72. package/generators/python/colour.d.ts +16 -0
  73. package/generators/python/lists.d.ts +21 -0
  74. package/generators/python/logic.d.ts +20 -0
  75. package/generators/python/loops.d.ts +14 -0
  76. package/generators/python/math.d.ts +26 -0
  77. package/generators/python/procedures.d.ts +14 -0
  78. package/generators/python/python_generator.d.ts +108 -0
  79. package/generators/python/text.d.ts +26 -0
  80. package/generators/python/variables.d.ts +14 -0
  81. package/generators/python/variables_dynamic.d.ts +10 -0
  82. package/generators/python.d.ts +18 -0
  83. package/javascript.d.ts +1 -39
  84. package/javascript_compressed.js +37 -34
  85. package/javascript_compressed.js.map +1 -1
  86. package/lua.d.ts +1 -16
  87. package/lua_compressed.js +14 -13
  88. package/lua_compressed.js.map +1 -1
  89. package/msg/ab.js +2 -1
  90. package/msg/ace.js +1 -0
  91. package/msg/af.js +1 -0
  92. package/msg/am.js +1 -0
  93. package/msg/ar.js +8 -7
  94. package/msg/ast.js +2 -1
  95. package/msg/az.js +2 -1
  96. package/msg/ba.js +5 -4
  97. package/msg/bcc.js +6 -5
  98. package/msg/be-tarask.js +1 -0
  99. package/msg/be.js +1 -0
  100. package/msg/bg.js +4 -3
  101. package/msg/bn.js +1 -0
  102. package/msg/br.js +3 -2
  103. package/msg/bs.js +1 -0
  104. package/msg/ca.js +1 -0
  105. package/msg/cdo.js +1 -0
  106. package/msg/ce.js +441 -0
  107. package/msg/cs.js +1 -0
  108. package/msg/da.js +1 -0
  109. package/msg/de.js +3 -2
  110. package/msg/diq.js +5 -4
  111. package/msg/dtp.js +441 -0
  112. package/msg/dty.js +2 -1
  113. package/msg/ee.js +3 -2
  114. package/msg/el.js +2 -1
  115. package/msg/en-gb.js +1 -0
  116. package/msg/en.js +1 -0
  117. package/msg/eo.js +1 -0
  118. package/msg/es.js +1 -0
  119. package/msg/et.js +1 -0
  120. package/msg/eu.js +1 -0
  121. package/msg/fa.js +5 -4
  122. package/msg/fi.js +1 -0
  123. package/msg/fo.js +1 -0
  124. package/msg/fr.js +2 -1
  125. package/msg/frr.js +1 -0
  126. package/msg/gl.js +2 -1
  127. package/msg/gn.js +2 -1
  128. package/msg/gor.js +1 -0
  129. package/msg/ha.js +1 -0
  130. package/msg/hak.js +1 -0
  131. package/msg/he.js +3 -2
  132. package/msg/hi.js +1 -0
  133. package/msg/hr.js +2 -1
  134. package/msg/hrx.js +1 -0
  135. package/msg/hsb.js +441 -0
  136. package/msg/hu.js +1 -0
  137. package/msg/hy.js +9 -8
  138. package/msg/ia.js +1 -0
  139. package/msg/id.js +5 -4
  140. package/msg/ig.js +1 -0
  141. package/msg/inh.js +1 -0
  142. package/msg/is.js +1 -0
  143. package/msg/it.js +2 -1
  144. package/msg/ja.js +1 -0
  145. package/msg/ka.js +1 -0
  146. package/msg/kab.js +5 -4
  147. package/msg/kbd-cyrl.js +1 -0
  148. package/msg/km.js +10 -9
  149. package/msg/kn.js +31 -30
  150. package/msg/ko.js +2 -1
  151. package/msg/ksh.js +1 -0
  152. package/msg/ku-latn.js +1 -0
  153. package/msg/ky.js +4 -3
  154. package/msg/la.js +1 -0
  155. package/msg/lb.js +1 -0
  156. package/msg/lki.js +5 -4
  157. package/msg/lo.js +2 -1
  158. package/msg/lrc.js +1 -0
  159. package/msg/lt.js +5 -4
  160. package/msg/lv.js +1 -0
  161. package/msg/mg.js +1 -0
  162. package/msg/mk.js +2 -1
  163. package/msg/ml.js +1 -0
  164. package/msg/mnw.js +2 -1
  165. package/msg/ms.js +2 -1
  166. package/msg/my.js +2 -1
  167. package/msg/mzn.js +1 -0
  168. package/msg/nb.js +1 -0
  169. package/msg/ne.js +3 -2
  170. package/msg/nl.js +2 -1
  171. package/msg/oc.js +1 -0
  172. package/msg/olo.js +1 -0
  173. package/msg/pa.js +1 -0
  174. package/msg/pl.js +3 -2
  175. package/msg/pms.js +1 -0
  176. package/msg/ps.js +1 -0
  177. package/msg/pt-br.js +1 -0
  178. package/msg/pt.js +17 -16
  179. package/msg/ro.js +2 -1
  180. package/msg/ru.js +7 -6
  181. package/msg/sc.js +2 -1
  182. package/msg/sco.js +1 -0
  183. package/msg/sd.js +1 -0
  184. package/msg/shn.js +2 -1
  185. package/msg/si.js +1 -0
  186. package/msg/sk.js +1 -0
  187. package/msg/skr-arab.js +2 -1
  188. package/msg/sl.js +1 -0
  189. package/msg/smn.js +1 -0
  190. package/msg/sq.js +17 -16
  191. package/msg/sr-latn.js +3 -2
  192. package/msg/sr.js +2 -1
  193. package/msg/sv.js +1 -0
  194. package/msg/sw.js +1 -0
  195. package/msg/ta.js +13 -12
  196. package/msg/tcy.js +6 -5
  197. package/msg/tdd.js +2 -1
  198. package/msg/te.js +2 -1
  199. package/msg/th.js +2 -1
  200. package/msg/ti.js +1 -0
  201. package/msg/tl.js +2 -1
  202. package/msg/tlh.js +1 -0
  203. package/msg/tr.js +2 -1
  204. package/msg/ug-arab.js +15 -14
  205. package/msg/uk.js +3 -2
  206. package/msg/ur.js +5 -4
  207. package/msg/uz.js +1 -0
  208. package/msg/vi.js +2 -1
  209. package/msg/xmf.js +1 -0
  210. package/msg/yo.js +2 -1
  211. package/msg/yue.js +1 -0
  212. package/msg/zgh.js +1 -0
  213. package/msg/zh-hans.js +2 -1
  214. package/msg/zh-hant.js +1 -0
  215. package/package.json +2 -2
  216. package/php.d.ts +1 -41
  217. package/php_compressed.js +26 -22
  218. package/php_compressed.js.map +1 -1
  219. package/python.d.ts +1 -25
  220. package/python_compressed.js +14 -12
  221. package/python_compressed.js.map +1 -1
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2012 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Block } from '../../core/block.js';
7
+ import type { PythonGenerator } from './python_generator.js';
8
+ export declare function controls_repeat_ext(block: Block, generator: PythonGenerator): string;
9
+ export declare const controls_repeat: typeof controls_repeat_ext;
10
+ export declare function controls_whileUntil(block: Block, generator: PythonGenerator): string;
11
+ export declare function controls_for(block: Block, generator: PythonGenerator): string;
12
+ export declare function controls_forEach(block: Block, generator: PythonGenerator): string;
13
+ export declare function controls_flow_statements(block: Block, generator: PythonGenerator): string;
14
+ //# sourceMappingURL=loops.d.ts.map
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2012 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * @file Generating Python for math blocks.
8
+ */
9
+ import type { Block } from '../../core/block.js';
10
+ import type { PythonGenerator } from './python_generator.js';
11
+ import { Order } from './python_generator.js';
12
+ export declare function math_number(block: Block, generator: PythonGenerator): [string, Order];
13
+ export declare function math_arithmetic(block: Block, generator: PythonGenerator): [string, Order];
14
+ export declare function math_single(block: Block, generator: PythonGenerator): [string, Order];
15
+ export declare function math_constant(block: Block, generator: PythonGenerator): [string, Order];
16
+ export declare function math_number_property(block: Block, generator: PythonGenerator): [string, Order];
17
+ export declare function math_change(block: Block, generator: PythonGenerator): string;
18
+ export declare const math_round: typeof math_single;
19
+ export declare const math_trig: typeof math_single;
20
+ export declare function math_on_list(block: Block, generator: PythonGenerator): [string, Order];
21
+ export declare function math_modulo(block: Block, generator: PythonGenerator): [string, Order];
22
+ export declare function math_constrain(block: Block, generator: PythonGenerator): [string, Order];
23
+ export declare function math_random_int(block: Block, generator: PythonGenerator): [string, Order];
24
+ export declare function math_random_float(block: Block, generator: PythonGenerator): [string, Order];
25
+ export declare function math_atan2(block: Block, generator: PythonGenerator): [string, Order];
26
+ //# sourceMappingURL=math.d.ts.map
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2012 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Block } from '../../core/block.js';
7
+ import { Order } from './python_generator.js';
8
+ import type { PythonGenerator } from './python_generator.js';
9
+ export declare function procedures_defreturn(block: Block, generator: PythonGenerator): null;
10
+ export declare const procedures_defnoreturn: typeof procedures_defreturn;
11
+ export declare function procedures_callreturn(block: Block, generator: PythonGenerator): [string, Order];
12
+ export declare function procedures_callnoreturn(block: Block, generator: PythonGenerator): string;
13
+ export declare function procedures_ifreturn(block: Block, generator: PythonGenerator): string;
14
+ //# sourceMappingURL=procedures.d.ts.map
@@ -0,0 +1,108 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2012 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Block } from '../../core/block.js';
7
+ import { CodeGenerator } from '../../core/generator.js';
8
+ import type { Workspace } from '../../core/workspace.js';
9
+ /**
10
+ * Order of operation ENUMs.
11
+ * http://docs.python.org/reference/expressions.html#summary
12
+ */
13
+ export declare enum Order {
14
+ ATOMIC = 0,
15
+ COLLECTION = 1,
16
+ STRING_CONVERSION = 1,
17
+ MEMBER = 2.1,
18
+ FUNCTION_CALL = 2.2,
19
+ EXPONENTIATION = 3,
20
+ UNARY_SIGN = 4,
21
+ BITWISE_NOT = 4,
22
+ MULTIPLICATIVE = 5,
23
+ ADDITIVE = 6,
24
+ BITWISE_SHIFT = 7,
25
+ BITWISE_AND = 8,
26
+ BITWISE_XOR = 9,
27
+ BITWISE_OR = 10,
28
+ RELATIONAL = 11,
29
+ LOGICAL_NOT = 12,
30
+ LOGICAL_AND = 13,
31
+ LOGICAL_OR = 14,
32
+ CONDITIONAL = 15,
33
+ LAMBDA = 16,
34
+ NONE = 99
35
+ }
36
+ /**
37
+ * PythonScript code generator class.
38
+ */
39
+ export declare class PythonGenerator extends CodeGenerator {
40
+ /** List of outer-inner pairings that do NOT require parentheses. */
41
+ ORDER_OVERRIDES: [Order, Order][];
42
+ /**
43
+ * Empty loops or conditionals are not allowed in Python.
44
+ */
45
+ PASS: string;
46
+ /** @param name Name of the language the generator is for. */
47
+ constructor(name?: string);
48
+ /**
49
+ * Initialise the database of variable names.
50
+ *
51
+ * @param workspace Workspace to generate code from.
52
+ */
53
+ init(workspace: Workspace): void;
54
+ /**
55
+ * Prepend the generated code with import statements and variable definitions.
56
+ *
57
+ * @param code Generated code.
58
+ * @returns Completed code.
59
+ */
60
+ finish(code: string): string;
61
+ /**
62
+ * Naked values are top-level blocks with outputs that aren't plugged into
63
+ * anything.
64
+ *
65
+ * @param line Line of generated code.
66
+ * @returns Legal line of code.
67
+ */
68
+ scrubNakedValue(line: string): string;
69
+ /**
70
+ * Encode a string as a properly escaped Python string, complete with quotes.
71
+ *
72
+ * @param string Text to encode.
73
+ * @returns Python string.
74
+ */
75
+ quote_(string: string): string;
76
+ /**
77
+ * Encode a string as a properly escaped multiline Python string, complete
78
+ * with quotes.
79
+ *
80
+ * @param string Text to encode.
81
+ * @returns Python string.
82
+ */
83
+ multiline_quote_(string: string): string;
84
+ /**
85
+ * Common tasks for generating Python from blocks.
86
+ * Handles comments for the specified block and any connected value blocks.
87
+ * Calls any statements following this block.
88
+ *
89
+ * @param block The current block.
90
+ * @param code The Python code created for this block.
91
+ * @param thisOnly True to generate code for only this statement.
92
+ * @returns Python code with comments and subsequent blocks added.
93
+
94
+ */
95
+ scrub_(block: Block, code: string, thisOnly?: boolean): string;
96
+ /**
97
+ * Gets a property and adjusts the value, taking into account indexing.
98
+ * If a static int, casts to an integer, otherwise returns a code string.
99
+ *
100
+ * @param block The block.
101
+ * @param atId The ID of the input block to get (and adjust) the value of.
102
+ * @param delta Value to add.
103
+ * @param negate Whether to negate the value.
104
+ * @returns The adjusted value or code that evaluates to it.
105
+ */
106
+ getAdjustedInt(block: Block, atId: string, delta?: number, negate?: boolean): string | number;
107
+ }
108
+ //# sourceMappingURL=python_generator.d.ts.map
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2012 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Block } from '../../core/block.js';
7
+ import { Order } from './python_generator.js';
8
+ import type { PythonGenerator } from './python_generator.js';
9
+ export declare function text(block: Block, generator: PythonGenerator): [string, Order];
10
+ export declare function text_multiline(block: Block, generator: PythonGenerator): [string, Order];
11
+ export declare function text_join(block: Block, generator: PythonGenerator): [string, Order];
12
+ export declare function text_append(block: Block, generator: PythonGenerator): string;
13
+ export declare function text_length(block: Block, generator: PythonGenerator): [string, Order];
14
+ export declare function text_isEmpty(block: Block, generator: PythonGenerator): [string, Order];
15
+ export declare function text_indexOf(block: Block, generator: PythonGenerator): [string, Order];
16
+ export declare function text_charAt(block: Block, generator: PythonGenerator): [string, Order];
17
+ export declare function text_getSubstring(block: Block, generator: PythonGenerator): [string, Order];
18
+ export declare function text_changeCase(block: Block, generator: PythonGenerator): [string, Order];
19
+ export declare function text_trim(block: Block, generator: PythonGenerator): [string, Order];
20
+ export declare function text_print(block: Block, generator: PythonGenerator): string;
21
+ export declare function text_prompt_ext(block: Block, generator: PythonGenerator): [string, Order];
22
+ export declare const text_prompt: typeof text_prompt_ext;
23
+ export declare function text_count(block: Block, generator: PythonGenerator): [string, Order];
24
+ export declare function text_replace(block: Block, generator: PythonGenerator): [string, Order];
25
+ export declare function text_reverse(block: Block, generator: PythonGenerator): [string, Order];
26
+ //# sourceMappingURL=text.d.ts.map
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2012 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * @file Generating Python for variable blocks.
8
+ */
9
+ import type { Block } from '../../core/block.js';
10
+ import type { PythonGenerator } from './python_generator.js';
11
+ import { Order } from './python_generator.js';
12
+ export declare function variables_get(block: Block, generator: PythonGenerator): [string, Order];
13
+ export declare function variables_set(block: Block, generator: PythonGenerator): string;
14
+ //# sourceMappingURL=variables.d.ts.map
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2018 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * @file Generating Python for dynamic variable blocks.
8
+ */
9
+ export { variables_get as variables_get_dynamic, variables_set as variables_set_dynamic, } from './variables.js';
10
+ //# sourceMappingURL=variables_dynamic.d.ts.map
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2021 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * @file Instantiate a PythonGenerator and populate it with the
8
+ * complete set of block generator functions for Python. This is the
9
+ * entrypoint for python_compressed.js.
10
+ */
11
+ import { PythonGenerator } from './python/python_generator.js';
12
+ export * from './python/python_generator.js';
13
+ /**
14
+ * Python code generator instance.
15
+ * @type {!PythonGenerator}
16
+ */
17
+ export declare const pythonGenerator: PythonGenerator;
18
+ //# sourceMappingURL=python.d.ts.map
package/javascript.d.ts CHANGED
@@ -4,42 +4,4 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- export enum Order {
8
- ATOMIC = 0, // 0 "" ...
9
- NEW = 1.1, // new
10
- MEMBER = 1.2, // . []
11
- FUNCTION_CALL = 2, // ()
12
- INCREMENT = 3, // ++
13
- DECREMENT = 3, // --
14
- BITWISE_NOT = 4.1, // ~
15
- UNARY_PLUS = 4.2, // +
16
- UNARY_NEGATION = 4.3, // -
17
- LOGICAL_NOT = 4.4, // !
18
- TYPEOF = 4.5, // typeof
19
- VOID = 4.6, // void
20
- DELETE = 4.7, // delete
21
- AWAIT = 4.8, // await
22
- EXPONENTIATION = 5.0, // **
23
- MULTIPLICATION = 5.1, // *
24
- DIVISION = 5.2, // /
25
- MODULUS = 5.3, // %
26
- SUBTRACTION = 6.1, // -
27
- ADDITION = 6.2, // +
28
- BITWISE_SHIFT = 7, // << >> >>>
29
- RELATIONAL = 8, // < <= > >=
30
- IN = 8, // in
31
- INSTANCEOF = 8, // instanceof
32
- EQUALITY = 9, // == != === !==
33
- BITWISE_AND = 10, // &
34
- BITWISE_XOR = 11, // ^
35
- BITWISE_OR = 12, // |
36
- LOGICAL_AND = 13, // &&
37
- LOGICAL_OR = 14, // ||
38
- CONDITIONAL = 15, // ?:
39
- ASSIGNMENT = 16, // = += -= **= *= /= %= <<= >>= ...
40
- YIELD = 17, // yield
41
- COMMA = 18, // ,
42
- NONE = 99, // (...)
43
- }
44
-
45
- export declare const javascriptGenerator: any;
7
+ export * from 'generators/javascript';
@@ -73,15 +73,15 @@ function ${b.FUNCTION_NAME_PLACEHOLDER_}(list, remove) {
73
73
  `)+"("+e+", "+("GET"!==c)+")";if("GET"===c||"GET_REMOVE"===c)return[e,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL];if("REMOVE"===c)return e+";\n"}throw Error("Unhandled combination (lists_getIndex).");},lists_setIndex$$module$build$src$generators$javascript$lists=function(a,b){function c(){if(d.match(/^\w+$/))return"";const h=b.nameDB_.getDistinctName("tmpList",$.NameType$$module$build$src$core$names.VARIABLE),k="var "+h+" = "+d+";\n";d=h;return k}let d=b.valueToCode(a,
74
74
  "LIST",Order$$module$build$src$generators$javascript$javascript_generator.MEMBER)||"[]";const e=a.getFieldValue("MODE")||"GET";var f=a.getFieldValue("WHERE")||"FROM_START";const g=b.valueToCode(a,"TO",Order$$module$build$src$generators$javascript$javascript_generator.ASSIGNMENT)||"null";switch(f){case "FIRST":if("SET"===e)return d+"[0] = "+g+";\n";if("INSERT"===e)return d+".unshift("+g+");\n";break;case "LAST":if("SET"===e)return c()+(d+"["+d+".length - 1] = "+g+";\n");if("INSERT"===e)return d+".push("+
75
75
  g+");\n";break;case "FROM_START":a=b.getAdjusted(a,"AT");if("SET"===e)return d+"["+a+"] = "+g+";\n";if("INSERT"===e)return d+".splice("+a+", 0, "+g+");\n";break;case "FROM_END":a=b.getAdjusted(a,"AT",1,!1,Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION);f=c();if("SET"===e)return f+(d+"["+d+".length - "+a+"] = "+g+";\n");if("INSERT"===e)return f+(d+".splice("+d+".length - "+a+", 0, "+g+");\n");break;case "RANDOM":a=c();f=b.nameDB_.getDistinctName("tmpX",$.NameType$$module$build$src$core$names.VARIABLE);
76
- a+="var "+f+" = Math.floor(Math.random() * "+d+".length);\n";if("SET"===e)return a+(d+"["+f+"] = "+g+";\n");if("INSERT"===e)return a+(d+".splice("+f+", 0, "+g+");\n")}throw Error("Unhandled combination (lists_setIndex).");},lists_getSublist$$module$build$src$generators$javascript$lists=function(a,b){var c=b.valueToCode(a,"LIST",Order$$module$build$src$generators$javascript$javascript_generator.MEMBER)||"[]",d=a.getFieldValue("WHERE1");const e=a.getFieldValue("WHERE2");if("FIRST"===d&&"LAST"===e)c+=
77
- ".slice(0)";else if(c.match(/^\w+$/)||"FROM_END"!==d&&"FROM_START"===e){switch(d){case "FROM_START":d=b.getAdjusted(a,"AT1");break;case "FROM_END":d=b.getAdjusted(a,"AT1",1,!1,Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION);d=c+".length - "+d;break;case "FIRST":d="0";break;default:throw Error("Unhandled option (lists_getSublist).");}switch(e){case "FROM_START":b=b.getAdjusted(a,"AT2",1);break;case "FROM_END":b=b.getAdjusted(a,"AT2",0,!1,Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION);
78
- b=c+".length - "+b;break;case "LAST":b=c+".length";break;default:throw Error("Unhandled option (lists_getSublist).");}c=c+".slice("+d+", "+b+")"}else{const f=b.getAdjusted(a,"AT1");a=b.getAdjusted(a,"AT2");const g={FIRST:"First",LAST:"Last",FROM_START:"FromStart",FROM_END:"FromEnd"};c=b.provideFunction_("subsequence"+g[d]+g[e],`
79
- function ${b.FUNCTION_NAME_PLACEHOLDER_}(sequence${"FROM_END"===d||"FROM_START"===d?", at1":""}${"FROM_END"===e||"FROM_START"===e?", at2":""}) {
80
- var start = ${getSubstringIndex$$module$build$src$generators$javascript$lists("sequence",d,"at1")};
81
- var end = ${getSubstringIndex$$module$build$src$generators$javascript$lists("sequence",e,"at2")} + 1;
76
+ a+="var "+f+" = Math.floor(Math.random() * "+d+".length);\n";if("SET"===e)return a+(d+"["+f+"] = "+g+";\n");if("INSERT"===e)return a+(d+".splice("+f+", 0, "+g+");\n")}throw Error("Unhandled combination (lists_setIndex).");},lists_getSublist$$module$build$src$generators$javascript$lists=function(a,b){var c={FIRST:"First",LAST:"Last",FROM_START:"FromStart",FROM_END:"FromEnd"},d=b.valueToCode(a,"LIST",Order$$module$build$src$generators$javascript$javascript_generator.MEMBER)||"[]";const e=a.getFieldValue("WHERE1"),
77
+ f=a.getFieldValue("WHERE2");if("FIRST"===e&&"LAST"===f)d+=".slice(0)";else if(d.match(/^\w+$/)||"FROM_END"!==e&&"FROM_START"===f){switch(e){case "FROM_START":c=b.getAdjusted(a,"AT1");break;case "FROM_END":c=b.getAdjusted(a,"AT1",1,!1,Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION);c=d+".length - "+c;break;case "FIRST":c="0";break;default:throw Error("Unhandled option (lists_getSublist).");}switch(f){case "FROM_START":b=b.getAdjusted(a,"AT2",1);break;case "FROM_END":b=
78
+ b.getAdjusted(a,"AT2",0,!1,Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION);b=d+".length - "+b;break;case "LAST":b=d+".length";break;default:throw Error("Unhandled option (lists_getSublist).");}d=d+".slice("+c+", "+b+")"}else{const g=b.getAdjusted(a,"AT1");a=b.getAdjusted(a,"AT2");d=b.provideFunction_("subsequence"+c[e]+c[f],`
79
+ function ${b.FUNCTION_NAME_PLACEHOLDER_}(sequence${"FROM_END"===e||"FROM_START"===e?", at1":""}${"FROM_END"===f||"FROM_START"===f?", at2":""}) {
80
+ var start = ${getSubstringIndex$$module$build$src$generators$javascript$lists("sequence",e,"at1")};
81
+ var end = ${getSubstringIndex$$module$build$src$generators$javascript$lists("sequence",f,"at2")} + 1;
82
82
  return sequence.slice(start, end);
83
83
  }
84
- `)+"("+c+("FROM_END"===d||"FROM_START"===d?", "+f:"")+("FROM_END"===e||"FROM_START"===e?", "+a:"")+")"}return[c,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]},lists_sort$$module$build$src$generators$javascript$lists=function(a,b){const c=b.valueToCode(a,"LIST",Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL)||"[]",d="1"===a.getFieldValue("DIRECTION")?1:-1;a=a.getFieldValue("TYPE");b=b.provideFunction_("listsGetSortCompare",`
84
+ `)+"("+d+("FROM_END"===e||"FROM_START"===e?", "+g:"")+("FROM_END"===f||"FROM_START"===f?", "+a:"")+")"}return[d,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]},lists_sort$$module$build$src$generators$javascript$lists=function(a,b){const c=b.valueToCode(a,"LIST",Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL)||"[]",d="1"===a.getFieldValue("DIRECTION")?1:-1;a=a.getFieldValue("TYPE");b=b.provideFunction_("listsGetSortCompare",`
85
85
  function ${b.FUNCTION_NAME_PLACEHOLDER_}(type, direction) {
86
86
  var compareFuncs = {
87
87
  'NUMERIC': function(a, b) {
@@ -105,12 +105,12 @@ b){let c;c=a.getField("TIMES")?String(Number(a.getFieldValue("TIMES"))):b.valueT
105
105
  "var "+f+" = "+c+";\n");return a+("for (var "+e+" = 0; "+e+" < "+f+"; "+e+"++) {\n"+d+"}\n")},controls_whileUntil$$module$build$src$generators$javascript$loops=function(a,b){const c="UNTIL"===a.getFieldValue("MODE");let d=b.valueToCode(a,"BOOL",c?Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_NOT:Order$$module$build$src$generators$javascript$javascript_generator.NONE)||"false",e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);c&&(d="!"+d);return"while ("+d+") {\n"+e+"}\n"},
106
106
  controls_for$$module$build$src$generators$javascript$loops=function(a,b){var c=b.getVariableName(a.getFieldValue("VAR")),d=b.valueToCode(a,"FROM",Order$$module$build$src$generators$javascript$javascript_generator.ASSIGNMENT)||"0",e=b.valueToCode(a,"TO",Order$$module$build$src$generators$javascript$javascript_generator.ASSIGNMENT)||"0";const f=b.valueToCode(a,"BY",Order$$module$build$src$generators$javascript$javascript_generator.ASSIGNMENT)||"1";let g=b.statementToCode(a,"DO");g=b.addLoopTrap(g,a);
107
107
  if($.isNumber$$module$build$src$core$utils$string(d)&&$.isNumber$$module$build$src$core$utils$string(e)&&$.isNumber$$module$build$src$core$utils$string(f))b=Number(d)<=Number(e),a="for ("+c+" = "+d+"; "+c+(b?" <= ":" >= ")+e+"; "+c,c=Math.abs(Number(f)),a=1===c?a+(b?"++":"--"):a+((b?" += ":" -= ")+c),a+=") {\n"+g+"}\n";else{a="";let h=d;d.match(/^\w+$/)||$.isNumber$$module$build$src$core$utils$string(d)||(h=b.nameDB_.getDistinctName(c+"_start",$.NameType$$module$build$src$core$names.VARIABLE),a+=
108
- "var "+h+" = "+d+";\n");d=e;e.match(/^\w+$/)||$.isNumber$$module$build$src$core$utils$string(e)||(d=b.nameDB_.getDistinctName(c+"_end",$.NameType$$module$build$src$core$names.VARIABLE),a+="var "+d+" = "+e+";\n");e=b.nameDB_.getDistinctName(c+"_inc",$.NameType$$module$build$src$core$names.VARIABLE);a+="var "+e+" = ";a=$.isNumber$$module$build$src$core$utils$string(f)?a+(Math.abs(f)+";\n"):a+("Math.abs("+f+");\n");a+="if ("+h+" > "+d+") {\n";a+=b.INDENT+e+" = -"+e+";\n";a=a+"}\nfor ("+(c+" = "+h+"; "+
109
- e+" >= 0 ? "+c+" <= "+d+" : "+c+" >= "+d+"; "+c+" += "+e+") {\n"+g+"}\n")}return a},controls_forEach$$module$build$src$generators$javascript$loops=function(a,b){const c=b.getVariableName(a.getFieldValue("VAR"));var d=b.valueToCode(a,"LIST",Order$$module$build$src$generators$javascript$javascript_generator.ASSIGNMENT)||"[]";let e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);a="";let f=d;d.match(/^\w+$/)||(f=b.nameDB_.getDistinctName(c+"_list",$.NameType$$module$build$src$core$names.VARIABLE),a+=
110
- "var "+f+" = "+d+";\n");d=b.nameDB_.getDistinctName(c+"_index",$.NameType$$module$build$src$core$names.VARIABLE);e=b.INDENT+c+" = "+f+"["+d+"];\n"+e;return a+("for (var "+d+" in "+f+") {\n"+e+"}\n")},controls_flow_statements$$module$build$src$generators$javascript$loops=function(a,b){let c="";b.STATEMENT_PREFIX&&(c+=b.injectId(b.STATEMENT_PREFIX,a));b.STATEMENT_SUFFIX&&(c+=b.injectId(b.STATEMENT_SUFFIX,a));if(b.STATEMENT_PREFIX){const d=a.getSurroundLoop();d&&!d.suppressPrefixSuffix&&(c+=b.injectId(b.STATEMENT_PREFIX,
111
- d))}switch(a.getFieldValue("FLOW")){case "BREAK":return c+"break;\n";case "CONTINUE":return c+"continue;\n"}throw Error("Unknown flow statement.");},math_number$$module$build$src$generators$javascript$math=function(a,b){a=Number(a.getFieldValue("NUM"));return[a,0<=a?Order$$module$build$src$generators$javascript$javascript_generator.ATOMIC:Order$$module$build$src$generators$javascript$javascript_generator.UNARY_NEGATION]},math_arithmetic$$module$build$src$generators$javascript$math=function(a,b){var c=
112
- {ADD:[" + ",Order$$module$build$src$generators$javascript$javascript_generator.ADDITION],MINUS:[" - ",Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION],MULTIPLY:[" * ",Order$$module$build$src$generators$javascript$javascript_generator.MULTIPLICATION],DIVIDE:[" / ",Order$$module$build$src$generators$javascript$javascript_generator.DIVISION],POWER:[null,Order$$module$build$src$generators$javascript$javascript_generator.NONE]}[a.getFieldValue("OP")];const d=c[0];c=c[1];
113
- const e=b.valueToCode(a,"A",c)||"0";a=b.valueToCode(a,"B",c)||"0";return d?[e+d+a,c]:["Math.pow("+e+", "+a+")",Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]},math_single$$module$build$src$generators$javascript$math=function(a,b){const c=a.getFieldValue("OP");let d;if("NEG"===c)return a=b.valueToCode(a,"NUM",Order$$module$build$src$generators$javascript$javascript_generator.UNARY_NEGATION)||"0","-"===a[0]&&(a=" "+a),["-"+a,Order$$module$build$src$generators$javascript$javascript_generator.UNARY_NEGATION];
108
+ "var "+h+" = "+d+";\n");d=e;e.match(/^\w+$/)||$.isNumber$$module$build$src$core$utils$string(e)||(d=b.nameDB_.getDistinctName(c+"_end",$.NameType$$module$build$src$core$names.VARIABLE),a+="var "+d+" = "+e+";\n");e=b.nameDB_.getDistinctName(c+"_inc",$.NameType$$module$build$src$core$names.VARIABLE);a+="var "+e+" = ";a=$.isNumber$$module$build$src$core$utils$string(f)?a+(Math.abs(Number(f))+";\n"):a+("Math.abs("+f+");\n");a+="if ("+h+" > "+d+") {\n";a+=b.INDENT+e+" = -"+e+";\n";a=a+"}\nfor ("+(c+" = "+
109
+ h+"; "+e+" >= 0 ? "+c+" <= "+d+" : "+c+" >= "+d+"; "+c+" += "+e+") {\n"+g+"}\n")}return a},controls_forEach$$module$build$src$generators$javascript$loops=function(a,b){const c=b.getVariableName(a.getFieldValue("VAR"));var d=b.valueToCode(a,"LIST",Order$$module$build$src$generators$javascript$javascript_generator.ASSIGNMENT)||"[]";let e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);a="";let f=d;d.match(/^\w+$/)||(f=b.nameDB_.getDistinctName(c+"_list",$.NameType$$module$build$src$core$names.VARIABLE),
110
+ a+="var "+f+" = "+d+";\n");d=b.nameDB_.getDistinctName(c+"_index",$.NameType$$module$build$src$core$names.VARIABLE);e=b.INDENT+c+" = "+f+"["+d+"];\n"+e;return a+("for (var "+d+" in "+f+") {\n"+e+"}\n")},controls_flow_statements$$module$build$src$generators$javascript$loops=function(a,b){let c="";b.STATEMENT_PREFIX&&(c+=b.injectId(b.STATEMENT_PREFIX,a));b.STATEMENT_SUFFIX&&(c+=b.injectId(b.STATEMENT_SUFFIX,a));if(b.STATEMENT_PREFIX){const d=a.getSurroundLoop();d&&!d.suppressPrefixSuffix&&(c+=b.injectId(b.STATEMENT_PREFIX,
111
+ d))}switch(a.getFieldValue("FLOW")){case "BREAK":return c+"break;\n";case "CONTINUE":return c+"continue;\n"}throw Error("Unknown flow statement.");},math_number$$module$build$src$generators$javascript$math=function(a,b){a=Number(a.getFieldValue("NUM"));return[String(a),0<=a?Order$$module$build$src$generators$javascript$javascript_generator.ATOMIC:Order$$module$build$src$generators$javascript$javascript_generator.UNARY_NEGATION]},math_arithmetic$$module$build$src$generators$javascript$math=function(a,
112
+ b){var c={ADD:[" + ",Order$$module$build$src$generators$javascript$javascript_generator.ADDITION],MINUS:[" - ",Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION],MULTIPLY:[" * ",Order$$module$build$src$generators$javascript$javascript_generator.MULTIPLICATION],DIVIDE:[" / ",Order$$module$build$src$generators$javascript$javascript_generator.DIVISION],POWER:[null,Order$$module$build$src$generators$javascript$javascript_generator.NONE]}[a.getFieldValue("OP")];const d=c[0];
113
+ c=c[1];const e=b.valueToCode(a,"A",c)||"0";a=b.valueToCode(a,"B",c)||"0";return d?[e+d+a,c]:["Math.pow("+e+", "+a+")",Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]},math_single$$module$build$src$generators$javascript$math=function(a,b){const c=a.getFieldValue("OP");let d;if("NEG"===c)return a=b.valueToCode(a,"NUM",Order$$module$build$src$generators$javascript$javascript_generator.UNARY_NEGATION)||"0","-"===a[0]&&(a=" "+a),["-"+a,Order$$module$build$src$generators$javascript$javascript_generator.UNARY_NEGATION];
114
114
  a="SIN"===c||"COS"===c||"TAN"===c?b.valueToCode(a,"NUM",Order$$module$build$src$generators$javascript$javascript_generator.DIVISION)||"0":b.valueToCode(a,"NUM",Order$$module$build$src$generators$javascript$javascript_generator.NONE)||"0";switch(c){case "ABS":d="Math.abs("+a+")";break;case "ROOT":d="Math.sqrt("+a+")";break;case "LN":d="Math.log("+a+")";break;case "EXP":d="Math.exp("+a+")";break;case "POW10":d="Math.pow(10,"+a+")";break;case "ROUND":d="Math.round("+a+")";break;case "ROUNDUP":d="Math.ceil("+
115
115
  a+")";break;case "ROUNDDOWN":d="Math.floor("+a+")";break;case "SIN":d="Math.sin("+a+" / 180 * Math.PI)";break;case "COS":d="Math.cos("+a+" / 180 * Math.PI)";break;case "TAN":d="Math.tan("+a+" / 180 * Math.PI)"}if(d)return[d,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL];switch(c){case "LOG10":d="Math.log("+a+") / Math.log(10)";break;case "ASIN":d="Math.asin("+a+") / Math.PI * 180";break;case "ACOS":d="Math.acos("+a+") / Math.PI * 180";break;case "ATAN":d="Math.atan("+
116
116
  a+") / Math.PI * 180";break;default:throw Error("Unknown math operator: "+c);}return[d,Order$$module$build$src$generators$javascript$javascript_generator.DIVISION]},math_constant$$module$build$src$generators$javascript$math=function(a,b){return{PI:["Math.PI",Order$$module$build$src$generators$javascript$javascript_generator.MEMBER],E:["Math.E",Order$$module$build$src$generators$javascript$javascript_generator.MEMBER],GOLDEN_RATIO:["(1 + Math.sqrt(5)) / 2",Order$$module$build$src$generators$javascript$javascript_generator.DIVISION],
@@ -228,15 +228,15 @@ function ${b.FUNCTION_NAME_PLACEHOLDER_}(text) {
228
228
  var x = Math.floor(Math.random() * text.length);
229
229
  return text[x];
230
230
  }
231
- `)+"("+d+")",Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]}throw Error("Unhandled option (text_charAt).");},text_getSubstring$$module$build$src$generators$javascript$text=function(a,b){var c=a.getFieldValue("WHERE1");const d=a.getFieldValue("WHERE2");var e="FROM_END"!==c&&"LAST"!==c&&"FROM_END"!==d&&"LAST"!==d,f=b.valueToCode(a,"STRING",e?Order$$module$build$src$generators$javascript$javascript_generator.MEMBER:Order$$module$build$src$generators$javascript$javascript_generator.NONE)||
232
- "''";if("FIRST"===c&&"LAST"===d)return[f,Order$$module$build$src$generators$javascript$javascript_generator.NONE];if(f.match(/^'?\w+'?$/)||e){switch(c){case "FROM_START":c=b.getAdjusted(a,"AT1");break;case "FROM_END":c=b.getAdjusted(a,"AT1",1,!1,Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION);c=f+".length - "+c;break;case "FIRST":c="0";break;default:throw Error("Unhandled option (text_getSubstring).");}switch(d){case "FROM_START":b=b.getAdjusted(a,"AT2",1);break;case "FROM_END":b=
233
- b.getAdjusted(a,"AT2",0,!1,Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION);b=f+".length - "+b;break;case "LAST":b=f+".length";break;default:throw Error("Unhandled option (text_getSubstring).");}f=f+".slice("+c+", "+b+")"}else{e=b.getAdjusted(a,"AT1");a=b.getAdjusted(a,"AT2");const g={FIRST:"First",LAST:"Last",FROM_START:"FromStart",FROM_END:"FromEnd"};f=b.provideFunction_("subsequence"+g[c]+g[d],`
234
- function ${b.FUNCTION_NAME_PLACEHOLDER_}(sequence${"FROM_END"===c||"FROM_START"===c?", at1":""}${"FROM_END"===d||"FROM_START"===d?", at2":""}) {
235
- var start = ${getSubstringIndex$$module$build$src$generators$javascript$text("sequence",c,"at1")};
236
- var end = ${getSubstringIndex$$module$build$src$generators$javascript$text("sequence",d,"at2")} + 1;
231
+ `)+"("+d+")",Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]}throw Error("Unhandled option (text_charAt).");},text_getSubstring$$module$build$src$generators$javascript$text=function(a,b){var c={FIRST:"First",LAST:"Last",FROM_START:"FromStart",FROM_END:"FromEnd"};const d=a.getFieldValue("WHERE1"),e=a.getFieldValue("WHERE2");var f="FROM_END"!==d&&"LAST"!==d&&"FROM_END"!==e&&"LAST"!==e,g=b.valueToCode(a,"STRING",f?Order$$module$build$src$generators$javascript$javascript_generator.MEMBER:
232
+ Order$$module$build$src$generators$javascript$javascript_generator.NONE)||"''";if("FIRST"===d&&"LAST"===e)return[g,Order$$module$build$src$generators$javascript$javascript_generator.NONE];if(g.match(/^'?\w+'?$/)||f){switch(d){case "FROM_START":c=b.getAdjusted(a,"AT1");break;case "FROM_END":c=b.getAdjusted(a,"AT1",1,!1,Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION);c=g+".length - "+c;break;case "FIRST":c="0";break;default:throw Error("Unhandled option (text_getSubstring).");
233
+ }switch(e){case "FROM_START":b=b.getAdjusted(a,"AT2",1);break;case "FROM_END":b=b.getAdjusted(a,"AT2",0,!1,Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION);b=g+".length - "+b;break;case "LAST":b=g+".length";break;default:throw Error("Unhandled option (text_getSubstring).");}g=g+".slice("+c+", "+b+")"}else f=b.getAdjusted(a,"AT1"),a=b.getAdjusted(a,"AT2"),g=b.provideFunction_("subsequence"+c[d]+c[e],`
234
+ function ${b.FUNCTION_NAME_PLACEHOLDER_}(sequence${"FROM_END"===d||"FROM_START"===d?", at1":""}${"FROM_END"===e||"FROM_START"===e?", at2":""}) {
235
+ var start = ${getSubstringIndex$$module$build$src$generators$javascript$text("sequence",d,"at1")};
236
+ var end = ${getSubstringIndex$$module$build$src$generators$javascript$text("sequence",e,"at2")} + 1;
237
237
  return sequence.slice(start, end);
238
238
  }
239
- `)+"("+f+("FROM_END"===c||"FROM_START"===c?", "+e:"")+("FROM_END"===d||"FROM_START"===d?", "+a:"")+")"}return[f,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]},text_changeCase$$module$build$src$generators$javascript$text=function(a,b){const c={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=b.valueToCode(a,"TEXT",c?Order$$module$build$src$generators$javascript$javascript_generator.MEMBER:Order$$module$build$src$generators$javascript$javascript_generator.NONE)||
239
+ `)+"("+g+("FROM_END"===d||"FROM_START"===d?", "+f:"")+("FROM_END"===e||"FROM_START"===e?", "+a:"")+")";return[g,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]},text_changeCase$$module$build$src$generators$javascript$text=function(a,b){const c={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=b.valueToCode(a,"TEXT",c?Order$$module$build$src$generators$javascript$javascript_generator.MEMBER:Order$$module$build$src$generators$javascript$javascript_generator.NONE)||
240
240
  "''";return[c?a+c:b.provideFunction_("textToTitleCase",`
241
241
  function ${b.FUNCTION_NAME_PLACEHOLDER_}(str) {
242
242
  return str.replace(/\\S+/g,
@@ -260,17 +260,20 @@ function ${b.FUNCTION_NAME_PLACEHOLDER_}(haystack, needle, replacement) {
260
260
  return haystack.replace(new RegExp(needle, 'g'), replacement);
261
261
  }
262
262
  `)+"("+c+", "+d+", "+a+")",Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]},text_reverse$$module$build$src$generators$javascript$text=function(a,b){return[(b.valueToCode(a,"TEXT",Order$$module$build$src$generators$javascript$javascript_generator.MEMBER)||"''")+".split('').reverse().join('')",Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL]},variables_get$$module$build$src$generators$javascript$variables=function(a,b){return[b.getVariableName(a.getFieldValue("VAR")),
263
- Order$$module$build$src$generators$javascript$javascript_generator.ATOMIC]},variables_set$$module$build$src$generators$javascript$variables=function(a,b){const c=b.valueToCode(a,"VALUE",Order$$module$build$src$generators$javascript$javascript_generator.ASSIGNMENT)||"0";return b.getVariableName(a.getFieldValue("VAR"))+" = "+c+";\n"},Order$$module$build$src$generators$javascript$javascript_generator={ATOMIC:0,NEW:1.1,MEMBER:1.2,FUNCTION_CALL:2,INCREMENT:3,DECREMENT:3,BITWISE_NOT:4.1,UNARY_PLUS:4.2,
264
- UNARY_NEGATION:4.3,LOGICAL_NOT:4.4,TYPEOF:4.5,VOID:4.6,DELETE:4.7,AWAIT:4.8,EXPONENTIATION:5,MULTIPLICATION:5.1,DIVISION:5.2,MODULUS:5.3,SUBTRACTION:6.1,ADDITION:6.2,BITWISE_SHIFT:7,RELATIONAL:8,IN:8,INSTANCEOF:8,EQUALITY:9,BITWISE_AND:10,BITWISE_XOR:11,BITWISE_OR:12,LOGICAL_AND:13,LOGICAL_OR:14,CONDITIONAL:15,ASSIGNMENT:16,YIELD:17,COMMA:18,NONE:99},JavascriptGenerator$$module$build$src$generators$javascript$javascript_generator=class extends $.CodeGenerator$$module$build$src$core$generator{constructor(a){super(null!=
265
- a?a:"JavaScript");this.ORDER_OVERRIDES=[[Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL,Order$$module$build$src$generators$javascript$javascript_generator.MEMBER],[Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL],[Order$$module$build$src$generators$javascript$javascript_generator.MEMBER,Order$$module$build$src$generators$javascript$javascript_generator.MEMBER],
266
- [Order$$module$build$src$generators$javascript$javascript_generator.MEMBER,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL],[Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_NOT,Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_NOT],[Order$$module$build$src$generators$javascript$javascript_generator.MULTIPLICATION,Order$$module$build$src$generators$javascript$javascript_generator.MULTIPLICATION],[Order$$module$build$src$generators$javascript$javascript_generator.ADDITION,
267
- Order$$module$build$src$generators$javascript$javascript_generator.ADDITION],[Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_AND,Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_AND],[Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_OR,Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_OR]];this.isInitialized=!1;for(const b in Order$$module$build$src$generators$javascript$javascript_generator)this["ORDER_"+
268
- b]=Order$$module$build$src$generators$javascript$javascript_generator[b];this.addReservedWords("break,case,catch,class,const,continue,debugger,default,delete,do,else,export,extends,finally,for,function,if,import,in,instanceof,new,return,super,switch,this,throw,try,typeof,var,void,while,with,yield,enum,implements,interface,let,package,private,protected,public,static,await,null,true,false,arguments,"+Object.getOwnPropertyNames(globalThis).join(","))}init(a){super.init(a);this.nameDB_?this.nameDB_.reset():
269
- this.nameDB_=new $.Names$$module$build$src$core$names(this.RESERVED_WORDS_);this.nameDB_.setVariableMap(a.getVariableMap());this.nameDB_.populateVariables(a);this.nameDB_.populateProcedures(a);const b=[];var c=$.allDeveloperVariables$$module$build$src$core$variables(a);for(let d=0;d<c.length;d++)b.push(this.nameDB_.getName(c[d],$.NameType$$module$build$src$core$names.DEVELOPER_VARIABLE));a=$.allUsedVarModels$$module$build$src$core$variables(a);for(c=0;c<a.length;c++)b.push(this.nameDB_.getName(a[c].getId(),
270
- $.NameType$$module$build$src$core$names.VARIABLE));b.length&&(this.definitions_.variables="var "+b.join(", ")+";");this.isInitialized=!0}finish(a){const b=Object.values(this.definitions_);super.finish(a);this.isInitialized=!1;this.nameDB_.reset();return b.join("\n\n")+"\n\n\n"+a}scrubNakedValue(a){return a+";\n"}quote_(a){a=a.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n").replace(/'/g,"\\'");return"'"+a+"'"}multiline_quote_(a){return a.split(/\n/g).map(this.quote_).join(" + '\\n' +\n")}scrub_(a,b,c){let d=
271
- "";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+=this.prefixLines(e+"\n","// "));for(let f=0;f<a.inputList.length;f++)a.inputList[f].type===$.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);
272
- return d+b+c}getAdjusted(a,b,c,d,e){c=c||0;e=e||this.ORDER_NONE;a.workspace.options.oneBasedIndex&&c--;const f=a.workspace.options.oneBasedIndex?"1":"0";let g,h=e;0<c?g=h=this.ORDER_ADDITION:0>c?g=h=this.ORDER_SUBTRACTION:d&&(g=h=this.ORDER_UNARY_NEGATION);a=this.valueToCode(a,b,h)||f;$.isNumber$$module$build$src$core$utils$string(a)?(a=Number(a)+c,d&&(a=-a)):(0<c?a=a+" + "+c:0>c&&(a=a+" - "+-c),d&&(a=c?"-("+a+")":"-"+a),g=Math.floor(g),e=Math.floor(e),g&&e>=g&&(a="("+a+")"));return a}},module$build$src$generators$javascript$javascript_generator=
273
- {};module$build$src$generators$javascript$javascript_generator.JavascriptGenerator=JavascriptGenerator$$module$build$src$generators$javascript$javascript_generator;module$build$src$generators$javascript$javascript_generator.Order=Order$$module$build$src$generators$javascript$javascript_generator;var module$build$src$generators$javascript$colour={};module$build$src$generators$javascript$colour.colour_blend=colour_blend$$module$build$src$generators$javascript$colour;module$build$src$generators$javascript$colour.colour_picker=colour_picker$$module$build$src$generators$javascript$colour;module$build$src$generators$javascript$colour.colour_random=colour_random$$module$build$src$generators$javascript$colour;module$build$src$generators$javascript$colour.colour_rgb=colour_rgb$$module$build$src$generators$javascript$colour;var getSubstringIndex$$module$build$src$generators$javascript$lists=function(a,b,c){return"FIRST"===b?"0":"FROM_END"===b?a+".length - 1 - "+c:"LAST"===b?a+".length - 1":c},module$build$src$generators$javascript$lists={};module$build$src$generators$javascript$lists.lists_create_empty=lists_create_empty$$module$build$src$generators$javascript$lists;module$build$src$generators$javascript$lists.lists_create_with=lists_create_with$$module$build$src$generators$javascript$lists;
263
+ Order$$module$build$src$generators$javascript$javascript_generator.ATOMIC]},variables_set$$module$build$src$generators$javascript$variables=function(a,b){const c=b.valueToCode(a,"VALUE",Order$$module$build$src$generators$javascript$javascript_generator.ASSIGNMENT)||"0";return b.getVariableName(a.getFieldValue("VAR"))+" = "+c+";\n"},Order$$module$build$src$generators$javascript$javascript_generator;
264
+ (function(a){a[a.ATOMIC=0]="ATOMIC";a[a.NEW=1.1]="NEW";a[a.MEMBER=1.2]="MEMBER";a[a.FUNCTION_CALL=2]="FUNCTION_CALL";a[a.INCREMENT=3]="INCREMENT";a[a.DECREMENT=3]="DECREMENT";a[a.BITWISE_NOT=4.1]="BITWISE_NOT";a[a.UNARY_PLUS=4.2]="UNARY_PLUS";a[a.UNARY_NEGATION=4.3]="UNARY_NEGATION";a[a.LOGICAL_NOT=4.4]="LOGICAL_NOT";a[a.TYPEOF=4.5]="TYPEOF";a[a.VOID=4.6]="VOID";a[a.DELETE=4.7]="DELETE";a[a.AWAIT=4.8]="AWAIT";a[a.EXPONENTIATION=5]="EXPONENTIATION";a[a.MULTIPLICATION=5.1]="MULTIPLICATION";a[a.DIVISION=
265
+ 5.2]="DIVISION";a[a.MODULUS=5.3]="MODULUS";a[a.SUBTRACTION=6.1]="SUBTRACTION";a[a.ADDITION=6.2]="ADDITION";a[a.BITWISE_SHIFT=7]="BITWISE_SHIFT";a[a.RELATIONAL=8]="RELATIONAL";a[a.IN=8]="IN";a[a.INSTANCEOF=8]="INSTANCEOF";a[a.EQUALITY=9]="EQUALITY";a[a.BITWISE_AND=10]="BITWISE_AND";a[a.BITWISE_XOR=11]="BITWISE_XOR";a[a.BITWISE_OR=12]="BITWISE_OR";a[a.LOGICAL_AND=13]="LOGICAL_AND";a[a.LOGICAL_OR=14]="LOGICAL_OR";a[a.CONDITIONAL=15]="CONDITIONAL";a[a.ASSIGNMENT=16]="ASSIGNMENT";a[a.YIELD=17]="YIELD";
266
+ a[a.COMMA=18]="COMMA";a[a.NONE=99]="NONE"})(Order$$module$build$src$generators$javascript$javascript_generator||(Order$$module$build$src$generators$javascript$javascript_generator={}));
267
+ var JavascriptGenerator$$module$build$src$generators$javascript$javascript_generator=class extends $.CodeGenerator$$module$build$src$core$generator{constructor(a="JavaScript"){super(a);this.ORDER_OVERRIDES=[[Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL,Order$$module$build$src$generators$javascript$javascript_generator.MEMBER],[Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL],
268
+ [Order$$module$build$src$generators$javascript$javascript_generator.MEMBER,Order$$module$build$src$generators$javascript$javascript_generator.MEMBER],[Order$$module$build$src$generators$javascript$javascript_generator.MEMBER,Order$$module$build$src$generators$javascript$javascript_generator.FUNCTION_CALL],[Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_NOT,Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_NOT],[Order$$module$build$src$generators$javascript$javascript_generator.MULTIPLICATION,
269
+ Order$$module$build$src$generators$javascript$javascript_generator.MULTIPLICATION],[Order$$module$build$src$generators$javascript$javascript_generator.ADDITION,Order$$module$build$src$generators$javascript$javascript_generator.ADDITION],[Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_AND,Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_AND],[Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_OR,Order$$module$build$src$generators$javascript$javascript_generator.LOGICAL_OR]];
270
+ this.isInitialized=!1;for(const b in Order$$module$build$src$generators$javascript$javascript_generator)a=Order$$module$build$src$generators$javascript$javascript_generator[b],"string"!==typeof a&&(this["ORDER_"+b]=a);this.addReservedWords("break,case,catch,class,const,continue,debugger,default,delete,do,else,export,extends,finally,for,function,if,import,in,instanceof,new,return,super,switch,this,throw,try,typeof,var,void,while,with,yield,enum,implements,interface,let,package,private,protected,public,static,await,null,true,false,arguments,"+
271
+ Object.getOwnPropertyNames(globalThis).join(","))}init(a){super.init(a);this.nameDB_?this.nameDB_.reset():this.nameDB_=new $.Names$$module$build$src$core$names(this.RESERVED_WORDS_);this.nameDB_.setVariableMap(a.getVariableMap());this.nameDB_.populateVariables(a);this.nameDB_.populateProcedures(a);const b=[];var c=$.allDeveloperVariables$$module$build$src$core$variables(a);for(let d=0;d<c.length;d++)b.push(this.nameDB_.getName(c[d],$.NameType$$module$build$src$core$names.DEVELOPER_VARIABLE));a=$.allUsedVarModels$$module$build$src$core$variables(a);
272
+ for(c=0;c<a.length;c++)b.push(this.nameDB_.getName(a[c].getId(),$.NameType$$module$build$src$core$names.VARIABLE));b.length&&(this.definitions_.variables="var "+b.join(", ")+";");this.isInitialized=!0}finish(a){const b=Object.values(this.definitions_);super.finish(a);this.isInitialized=!1;this.nameDB_.reset();return b.join("\n\n")+"\n\n\n"+a}scrubNakedValue(a){return a+";\n"}quote_(a){a=a.replace(/\\/g,"\\\\").replace(/\n/g,"\\\n").replace(/'/g,"\\'");return"'"+a+"'"}multiline_quote_(a){return a.split(/\n/g).map(this.quote_).join(" + '\\n' +\n")}scrub_(a,
273
+ 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+=this.prefixLines(e+"\n","// "));for(let f=0;f<a.inputList.length;f++)a.inputList[f].type===$.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);
274
+ return d+b+c}getAdjusted(a,b,c=0,d=!1,e=Order$$module$build$src$generators$javascript$javascript_generator.NONE){a.workspace.options.oneBasedIndex&&c--;const f=a.workspace.options.oneBasedIndex?"1":"0";let g=e;0<c?g=Order$$module$build$src$generators$javascript$javascript_generator.ADDITION:0>c?g=Order$$module$build$src$generators$javascript$javascript_generator.SUBTRACTION:d&&(g=Order$$module$build$src$generators$javascript$javascript_generator.UNARY_NEGATION);a=this.valueToCode(a,b,g)||f;if(0===
275
+ 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$javascript$javascript_generator={};module$build$src$generators$javascript$javascript_generator.JavascriptGenerator=JavascriptGenerator$$module$build$src$generators$javascript$javascript_generator;
276
+ module$build$src$generators$javascript$javascript_generator.Order=Order$$module$build$src$generators$javascript$javascript_generator;var module$build$src$generators$javascript$colour={};module$build$src$generators$javascript$colour.colour_blend=colour_blend$$module$build$src$generators$javascript$colour;module$build$src$generators$javascript$colour.colour_picker=colour_picker$$module$build$src$generators$javascript$colour;module$build$src$generators$javascript$colour.colour_random=colour_random$$module$build$src$generators$javascript$colour;module$build$src$generators$javascript$colour.colour_rgb=colour_rgb$$module$build$src$generators$javascript$colour;var getSubstringIndex$$module$build$src$generators$javascript$lists=function(a,b,c){return"FIRST"===b?"0":"FROM_END"===b?a+".length - 1 - "+c:"LAST"===b?a+".length - 1":c},module$build$src$generators$javascript$lists={};module$build$src$generators$javascript$lists.lists_create_empty=lists_create_empty$$module$build$src$generators$javascript$lists;module$build$src$generators$javascript$lists.lists_create_with=lists_create_with$$module$build$src$generators$javascript$lists;
274
277
  module$build$src$generators$javascript$lists.lists_getIndex=lists_getIndex$$module$build$src$generators$javascript$lists;module$build$src$generators$javascript$lists.lists_getSublist=lists_getSublist$$module$build$src$generators$javascript$lists;module$build$src$generators$javascript$lists.lists_indexOf=lists_indexOf$$module$build$src$generators$javascript$lists;module$build$src$generators$javascript$lists.lists_isEmpty=lists_isEmpty$$module$build$src$generators$javascript$lists;
275
278
  module$build$src$generators$javascript$lists.lists_length=lists_length$$module$build$src$generators$javascript$lists;module$build$src$generators$javascript$lists.lists_repeat=lists_repeat$$module$build$src$generators$javascript$lists;module$build$src$generators$javascript$lists.lists_reverse=lists_reverse$$module$build$src$generators$javascript$lists;module$build$src$generators$javascript$lists.lists_setIndex=lists_setIndex$$module$build$src$generators$javascript$lists;
276
279
  module$build$src$generators$javascript$lists.lists_sort=lists_sort$$module$build$src$generators$javascript$lists;module$build$src$generators$javascript$lists.lists_split=lists_split$$module$build$src$generators$javascript$lists;var controls_ifelse$$module$build$src$generators$javascript$logic=controls_if$$module$build$src$generators$javascript$logic,module$build$src$generators$javascript$logic={};module$build$src$generators$javascript$logic.controls_if=controls_if$$module$build$src$generators$javascript$logic;module$build$src$generators$javascript$logic.controls_ifelse=controls_if$$module$build$src$generators$javascript$logic;module$build$src$generators$javascript$logic.logic_boolean=logic_boolean$$module$build$src$generators$javascript$logic;
@@ -285,9 +288,9 @@ module$build$src$generators$javascript$procedures.procedures_defnoreturn=procedu
285
288
  module$build$src$generators$javascript$text.text_changeCase=text_changeCase$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_charAt=text_charAt$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_count=text_count$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_getSubstring=text_getSubstring$$module$build$src$generators$javascript$text;
286
289
  module$build$src$generators$javascript$text.text_indexOf=text_indexOf$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_isEmpty=text_isEmpty$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_join=text_join$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_length=text_length$$module$build$src$generators$javascript$text;
287
290
  module$build$src$generators$javascript$text.text_multiline=text_multiline$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_print=text_print$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_prompt=text_prompt_ext$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_prompt_ext=text_prompt_ext$$module$build$src$generators$javascript$text;
288
- module$build$src$generators$javascript$text.text_replace=text_replace$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_reverse=text_reverse$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_trim=text_trim$$module$build$src$generators$javascript$text;var module$build$src$generators$javascript$variables={};module$build$src$generators$javascript$variables.variables_get=variables_get$$module$build$src$generators$javascript$variables;module$build$src$generators$javascript$variables.variables_set=variables_set$$module$build$src$generators$javascript$variables;var module$build$src$generators$javascript$variables_dynamic={};module$build$src$generators$javascript$variables_dynamic.variables_get_dynamic=variables_get$$module$build$src$generators$javascript$variables;module$build$src$generators$javascript$variables_dynamic.variables_set_dynamic=variables_set$$module$build$src$generators$javascript$variables;var javascriptGenerator$$module$build$src$generators$javascript=new JavascriptGenerator$$module$build$src$generators$javascript$javascript_generator;
289
- Object.assign(javascriptGenerator$$module$build$src$generators$javascript.forBlock,module$build$src$generators$javascript$colour,module$build$src$generators$javascript$lists,module$build$src$generators$javascript$logic,module$build$src$generators$javascript$loops,module$build$src$generators$javascript$math,module$build$src$generators$javascript$procedures,module$build$src$generators$javascript$text,module$build$src$generators$javascript$variables,module$build$src$generators$javascript$variables_dynamic);
290
- var module$build$src$generators$javascript={};module$build$src$generators$javascript.JavascriptGenerator=JavascriptGenerator$$module$build$src$generators$javascript$javascript_generator;module$build$src$generators$javascript.Order=Order$$module$build$src$generators$javascript$javascript_generator;module$build$src$generators$javascript.javascriptGenerator=javascriptGenerator$$module$build$src$generators$javascript;
291
+ module$build$src$generators$javascript$text.text_replace=text_replace$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_reverse=text_reverse$$module$build$src$generators$javascript$text;module$build$src$generators$javascript$text.text_trim=text_trim$$module$build$src$generators$javascript$text;var module$build$src$generators$javascript$variables={};module$build$src$generators$javascript$variables.variables_get=variables_get$$module$build$src$generators$javascript$variables;module$build$src$generators$javascript$variables.variables_set=variables_set$$module$build$src$generators$javascript$variables;var module$build$src$generators$javascript$variables_dynamic={};module$build$src$generators$javascript$variables_dynamic.variables_get_dynamic=variables_get$$module$build$src$generators$javascript$variables;module$build$src$generators$javascript$variables_dynamic.variables_set_dynamic=variables_set$$module$build$src$generators$javascript$variables;var javascriptGenerator$$module$build$src$generators$javascript=new JavascriptGenerator$$module$build$src$generators$javascript$javascript_generator,generators$$module$build$src$generators$javascript=Object.assign({},module$build$src$generators$javascript$colour,module$build$src$generators$javascript$lists,module$build$src$generators$javascript$logic,module$build$src$generators$javascript$loops,module$build$src$generators$javascript$math,module$build$src$generators$javascript$procedures,module$build$src$generators$javascript$text,
292
+ module$build$src$generators$javascript$variables,module$build$src$generators$javascript$variables_dynamic);for(const a in generators$$module$build$src$generators$javascript)javascriptGenerator$$module$build$src$generators$javascript.forBlock[a]=generators$$module$build$src$generators$javascript[a];var module$build$src$generators$javascript={};module$build$src$generators$javascript.JavascriptGenerator=JavascriptGenerator$$module$build$src$generators$javascript$javascript_generator;
293
+ module$build$src$generators$javascript.Order=Order$$module$build$src$generators$javascript$javascript_generator;module$build$src$generators$javascript.javascriptGenerator=javascriptGenerator$$module$build$src$generators$javascript;
291
294
  module$build$src$generators$javascript.__namespace__=$;
292
295
  return module$build$src$generators$javascript;
293
296
  }));