blockly 13.0.0 → 13.1.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 (293) hide show
  1. package/README.md +42 -16
  2. package/blockly.min.js +1078 -1031
  3. package/blockly_compressed.js +945 -918
  4. package/blockly_compressed.js.map +1 -1
  5. package/blocks_compressed.js +85 -85
  6. package/blocks_compressed.js.map +1 -1
  7. package/core/block.d.ts +0 -8
  8. package/core/block_aria_composer.d.ts +13 -2
  9. package/core/block_svg.d.ts +13 -1
  10. package/core/blockly.d.ts +0 -4
  11. package/core/component_manager.d.ts +2 -0
  12. package/core/dragging/dragger.d.ts +5 -0
  13. package/core/field.d.ts +8 -2
  14. package/core/field_checkbox.d.ts +0 -1
  15. package/core/field_dropdown.d.ts +1 -1
  16. package/core/field_input.d.ts +0 -6
  17. package/core/field_label.d.ts +1 -0
  18. package/core/field_textinput.d.ts +0 -1
  19. package/core/field_variable.d.ts +0 -1
  20. package/core/gesture.d.ts +0 -7
  21. package/core/inputs/input.d.ts +0 -1
  22. package/core/procedures.d.ts +0 -1
  23. package/core/rendered_connection.d.ts +6 -0
  24. package/core/shortcut_items.d.ts +42 -1
  25. package/core/toolbox/collapsible_category.d.ts +2 -0
  26. package/core/trashcan.d.ts +2 -8
  27. package/core/utils/aria.d.ts +2 -2
  28. package/core/variable_map.d.ts +0 -7
  29. package/core/variable_model.d.ts +0 -6
  30. package/core/workspace.d.ts +0 -1
  31. package/core/workspace_focus_target.d.ts +46 -0
  32. package/core/workspace_svg.d.ts +36 -4
  33. package/core/zoom_controls.d.ts +0 -46
  34. package/dart_compressed.js +23 -23
  35. package/javascript_compressed.js +26 -26
  36. package/lua_compressed.js +41 -41
  37. package/msg/ab.js +22 -2
  38. package/msg/ab.mjs +20 -0
  39. package/msg/ace.js +22 -2
  40. package/msg/ace.mjs +20 -0
  41. package/msg/af.js +22 -2
  42. package/msg/af.mjs +20 -0
  43. package/msg/am.js +22 -2
  44. package/msg/am.mjs +20 -0
  45. package/msg/ar.js +30 -10
  46. package/msg/ar.mjs +20 -0
  47. package/msg/ast.js +22 -2
  48. package/msg/ast.mjs +20 -0
  49. package/msg/az.js +22 -2
  50. package/msg/az.mjs +20 -0
  51. package/msg/ba.js +22 -2
  52. package/msg/ba.mjs +20 -0
  53. package/msg/bcc.js +22 -2
  54. package/msg/bcc.mjs +20 -0
  55. package/msg/be-tarask.js +22 -2
  56. package/msg/be-tarask.mjs +20 -0
  57. package/msg/be.js +22 -2
  58. package/msg/be.mjs +20 -0
  59. package/msg/bg.js +24 -4
  60. package/msg/bg.mjs +20 -0
  61. package/msg/bn.js +22 -2
  62. package/msg/bn.mjs +20 -0
  63. package/msg/br.js +22 -2
  64. package/msg/br.mjs +20 -0
  65. package/msg/bs.js +22 -2
  66. package/msg/bs.mjs +20 -0
  67. package/msg/ca.js +27 -7
  68. package/msg/ca.mjs +20 -0
  69. package/msg/ce.js +22 -2
  70. package/msg/ce.mjs +20 -0
  71. package/msg/cs.js +22 -2
  72. package/msg/cs.mjs +20 -0
  73. package/msg/csb.js +22 -2
  74. package/msg/csb.mjs +20 -0
  75. package/msg/da.js +22 -2
  76. package/msg/da.mjs +20 -0
  77. package/msg/de.js +22 -2
  78. package/msg/de.mjs +20 -0
  79. package/msg/diq.js +22 -2
  80. package/msg/diq.mjs +20 -0
  81. package/msg/dtp.js +22 -2
  82. package/msg/dtp.mjs +20 -0
  83. package/msg/dty.js +22 -2
  84. package/msg/dty.mjs +20 -0
  85. package/msg/ee.js +22 -2
  86. package/msg/ee.mjs +20 -0
  87. package/msg/el.js +22 -2
  88. package/msg/el.mjs +20 -0
  89. package/msg/en-gb.js +22 -2
  90. package/msg/en-gb.mjs +20 -0
  91. package/msg/en.js +22 -2
  92. package/msg/en.mjs +20 -0
  93. package/msg/eo.js +22 -2
  94. package/msg/eo.mjs +20 -0
  95. package/msg/es.js +22 -2
  96. package/msg/es.mjs +20 -0
  97. package/msg/et.js +22 -2
  98. package/msg/et.mjs +20 -0
  99. package/msg/eu.js +22 -2
  100. package/msg/eu.mjs +20 -0
  101. package/msg/fa.js +22 -2
  102. package/msg/fa.mjs +20 -0
  103. package/msg/fi.js +22 -2
  104. package/msg/fi.mjs +20 -0
  105. package/msg/fo.js +22 -2
  106. package/msg/fo.mjs +20 -0
  107. package/msg/fr.js +24 -4
  108. package/msg/fr.mjs +20 -0
  109. package/msg/frr.js +22 -2
  110. package/msg/frr.mjs +20 -0
  111. package/msg/ga.js +238 -218
  112. package/msg/ga.mjs +20 -0
  113. package/msg/gl.js +184 -164
  114. package/msg/gl.mjs +20 -0
  115. package/msg/gn.js +22 -2
  116. package/msg/gn.mjs +20 -0
  117. package/msg/gor.js +22 -2
  118. package/msg/gor.mjs +20 -0
  119. package/msg/ha.js +22 -2
  120. package/msg/ha.mjs +20 -0
  121. package/msg/he.js +24 -4
  122. package/msg/he.mjs +20 -0
  123. package/msg/hi.js +22 -2
  124. package/msg/hi.mjs +20 -0
  125. package/msg/hr.js +22 -2
  126. package/msg/hr.mjs +20 -0
  127. package/msg/hrx.js +22 -2
  128. package/msg/hrx.mjs +20 -0
  129. package/msg/hsb.js +22 -2
  130. package/msg/hsb.mjs +20 -0
  131. package/msg/hu.js +32 -12
  132. package/msg/hu.mjs +20 -0
  133. package/msg/hy.js +22 -2
  134. package/msg/hy.mjs +20 -0
  135. package/msg/ia.js +22 -2
  136. package/msg/ia.mjs +20 -0
  137. package/msg/id.js +22 -2
  138. package/msg/id.mjs +20 -0
  139. package/msg/ig.js +22 -2
  140. package/msg/ig.mjs +20 -0
  141. package/msg/inh.js +22 -2
  142. package/msg/inh.mjs +20 -0
  143. package/msg/is.js +22 -2
  144. package/msg/is.mjs +20 -0
  145. package/msg/it.js +22 -2
  146. package/msg/it.mjs +20 -0
  147. package/msg/ja.js +22 -2
  148. package/msg/ja.mjs +20 -0
  149. package/msg/ka.js +22 -2
  150. package/msg/ka.mjs +20 -0
  151. package/msg/kab.js +22 -2
  152. package/msg/kab.mjs +20 -0
  153. package/msg/kbd-cyrl.js +22 -2
  154. package/msg/kbd-cyrl.mjs +20 -0
  155. package/msg/km.js +22 -2
  156. package/msg/km.mjs +20 -0
  157. package/msg/kn.js +22 -2
  158. package/msg/kn.mjs +20 -0
  159. package/msg/ko.js +23 -3
  160. package/msg/ko.mjs +20 -0
  161. package/msg/krc.js +22 -2
  162. package/msg/krc.mjs +20 -0
  163. package/msg/ksh.js +22 -2
  164. package/msg/ksh.mjs +20 -0
  165. package/msg/ku-latn.js +22 -2
  166. package/msg/ku-latn.mjs +20 -0
  167. package/msg/ky.js +22 -2
  168. package/msg/ky.mjs +20 -0
  169. package/msg/la.js +22 -2
  170. package/msg/la.mjs +20 -0
  171. package/msg/lb.js +27 -7
  172. package/msg/lb.mjs +20 -0
  173. package/msg/lki.js +22 -2
  174. package/msg/lki.mjs +20 -0
  175. package/msg/lo.js +22 -2
  176. package/msg/lo.mjs +20 -0
  177. package/msg/lrc.js +22 -2
  178. package/msg/lrc.mjs +20 -0
  179. package/msg/lt.js +22 -2
  180. package/msg/lt.mjs +20 -0
  181. package/msg/lv.js +22 -2
  182. package/msg/lv.mjs +20 -0
  183. package/msg/mg.js +22 -2
  184. package/msg/mg.mjs +20 -0
  185. package/msg/mk.js +22 -2
  186. package/msg/mk.mjs +20 -0
  187. package/msg/ml.js +22 -2
  188. package/msg/ml.mjs +20 -0
  189. package/msg/mnw.js +22 -2
  190. package/msg/mnw.mjs +20 -0
  191. package/msg/ms.js +22 -2
  192. package/msg/ms.mjs +20 -0
  193. package/msg/mt.js +22 -2
  194. package/msg/mt.mjs +20 -0
  195. package/msg/my.js +22 -2
  196. package/msg/my.mjs +20 -0
  197. package/msg/mzn.js +22 -2
  198. package/msg/mzn.mjs +20 -0
  199. package/msg/nb.js +22 -2
  200. package/msg/nb.mjs +20 -0
  201. package/msg/ne.js +22 -2
  202. package/msg/ne.mjs +20 -0
  203. package/msg/nl.js +150 -130
  204. package/msg/nl.mjs +20 -0
  205. package/msg/oc.js +22 -2
  206. package/msg/oc.mjs +20 -0
  207. package/msg/olo.js +22 -2
  208. package/msg/olo.mjs +20 -0
  209. package/msg/pa.js +22 -2
  210. package/msg/pa.mjs +20 -0
  211. package/msg/pl.js +22 -2
  212. package/msg/pl.mjs +20 -0
  213. package/msg/pms.js +116 -96
  214. package/msg/pms.mjs +20 -0
  215. package/msg/ps.js +22 -2
  216. package/msg/ps.mjs +20 -0
  217. package/msg/pt-br.js +22 -2
  218. package/msg/pt-br.mjs +20 -0
  219. package/msg/pt.js +22 -2
  220. package/msg/pt.mjs +20 -0
  221. package/msg/ro.js +22 -2
  222. package/msg/ro.mjs +20 -0
  223. package/msg/ru.js +22 -2
  224. package/msg/ru.mjs +20 -0
  225. package/msg/sc.js +22 -2
  226. package/msg/sc.mjs +20 -0
  227. package/msg/sco.js +22 -2
  228. package/msg/sco.mjs +20 -0
  229. package/msg/sd.js +22 -2
  230. package/msg/sd.mjs +20 -0
  231. package/msg/shn.js +22 -2
  232. package/msg/shn.mjs +20 -0
  233. package/msg/si.js +22 -2
  234. package/msg/si.mjs +20 -0
  235. package/msg/sk.js +235 -215
  236. package/msg/sk.mjs +20 -0
  237. package/msg/skr-arab.js +22 -2
  238. package/msg/skr-arab.mjs +20 -0
  239. package/msg/sl.js +22 -2
  240. package/msg/sl.mjs +20 -0
  241. package/msg/smn.js +22 -2
  242. package/msg/smn.mjs +20 -0
  243. package/msg/sq.js +22 -2
  244. package/msg/sq.mjs +20 -0
  245. package/msg/sr-latn.js +22 -2
  246. package/msg/sr-latn.mjs +20 -0
  247. package/msg/sr.js +22 -2
  248. package/msg/sr.mjs +20 -0
  249. package/msg/sv.js +22 -2
  250. package/msg/sv.mjs +20 -0
  251. package/msg/sw.js +22 -2
  252. package/msg/sw.mjs +20 -0
  253. package/msg/ta.js +22 -2
  254. package/msg/ta.mjs +20 -0
  255. package/msg/tcy.js +22 -2
  256. package/msg/tcy.mjs +20 -0
  257. package/msg/tdd.js +22 -2
  258. package/msg/tdd.mjs +20 -0
  259. package/msg/te.js +22 -2
  260. package/msg/te.mjs +20 -0
  261. package/msg/th.js +22 -2
  262. package/msg/th.mjs +20 -0
  263. package/msg/ti.js +22 -2
  264. package/msg/ti.mjs +20 -0
  265. package/msg/tl.js +22 -2
  266. package/msg/tl.mjs +20 -0
  267. package/msg/tlh.js +22 -2
  268. package/msg/tlh.mjs +20 -0
  269. package/msg/tr.js +36 -16
  270. package/msg/tr.mjs +20 -0
  271. package/msg/ug-arab.js +22 -2
  272. package/msg/ug-arab.mjs +20 -0
  273. package/msg/uk.js +22 -2
  274. package/msg/uk.mjs +20 -0
  275. package/msg/ur.js +22 -2
  276. package/msg/ur.mjs +20 -0
  277. package/msg/uz.js +22 -2
  278. package/msg/uz.mjs +20 -0
  279. package/msg/vi.js +22 -2
  280. package/msg/vi.mjs +20 -0
  281. package/msg/xmf.js +22 -2
  282. package/msg/xmf.mjs +20 -0
  283. package/msg/yo.js +22 -2
  284. package/msg/yo.mjs +20 -0
  285. package/msg/zgh.js +22 -2
  286. package/msg/zgh.mjs +20 -0
  287. package/msg/zh-hans.js +62 -42
  288. package/msg/zh-hans.mjs +20 -0
  289. package/msg/zh-hant.js +22 -2
  290. package/msg/zh-hant.mjs +20 -0
  291. package/package.json +12 -12
  292. package/php_compressed.js +21 -21
  293. package/python_compressed.js +27 -27
@@ -12,25 +12,25 @@
12
12
  }
13
13
  }(this, function(__parent__) {
14
14
  var $=__parent__.__namespace__;
15
- var Cs=function(a,b){var c=0,d="";b.STATEMENT_PREFIX&&(d+=b.injectId(b.STATEMENT_PREFIX,a));do{var e=b.valueToCode(a,"IF"+c,Z.NONE)||"false";var f=b.statementToCode(a,"DO"+c);b.STATEMENT_SUFFIX&&(f=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT)+f);d+=(c>0?"else ":"")+"if ("+e+") {\n"+f+"}";c++}while(a.getInput("IF"+c));if(a.getInput("ELSE")||b.STATEMENT_SUFFIX)f=a.getInput("ELSE")?b.statementToCode(a,"ELSE"):"",b.STATEMENT_SUFFIX&&(f=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT)+
16
- f),d+=" else {\n"+f+"}";return d+"\n"},Ds=function(a,b){var c=a.getField("TIMES")?String(Number(a.getFieldValue("TIMES"))):b.valueToCode(a,"TIMES",Z.ASSIGNMENT)||"0";var d=b.statementToCode(a,"DO");d=b.addLoopTrap(d,a);a="";var e=b.nameDB_.getDistinctName("count",$.P.VARIABLE),f=c;c.match(/^\w+$/)||$.df(c)||(f=b.nameDB_.getDistinctName("repeat_end",$.P.VARIABLE),a+="var "+f+" = "+c+";\n");return a+("for (int "+e+" = 0; "+e+" < "+f+"; "+e+"++) {\n"+d+"}\n")},Es=function(a,b){var c=a.getFieldValue("OP");
15
+ var Ms=function(a,b){var c=0,d="";b.STATEMENT_PREFIX&&(d+=b.injectId(b.STATEMENT_PREFIX,a));do{var e=b.valueToCode(a,"IF"+c,Z.NONE)||"false";var f=b.statementToCode(a,"DO"+c);b.STATEMENT_SUFFIX&&(f=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT)+f);d+=(c>0?"else ":"")+"if ("+e+") {\n"+f+"}";c++}while(a.getInput("IF"+c));if(a.getInput("ELSE")||b.STATEMENT_SUFFIX)f=a.getInput("ELSE")?b.statementToCode(a,"ELSE"):"",b.STATEMENT_SUFFIX&&(f=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT)+
16
+ f),d+=" else {\n"+f+"}";return d+"\n"},Ns=function(a,b){var c=a.getField("TIMES")?String(Number(a.getFieldValue("TIMES"))):b.valueToCode(a,"TIMES",Z.ASSIGNMENT)||"0";var d=b.statementToCode(a,"DO");d=b.addLoopTrap(d,a);a="";var e=b.nameDB_.getDistinctName("count",$.P.VARIABLE),f=c;c.match(/^\w+$/)||$.yf(c)||(f=b.nameDB_.getDistinctName("repeat_end",$.P.VARIABLE),a+="var "+f+" = "+c+";\n");return a+("for (int "+e+" = 0; "+e+" < "+f+"; "+e+"++) {\n"+d+"}\n")},Os=function(a,b){var c=a.getFieldValue("OP");
17
17
  if(c==="NEG")return a=b.valueToCode(a,"NUM",Z.UNARY_PREFIX)||"0",a[0]==="-"&&(a=" "+a),["-"+a,Z.UNARY_PREFIX];b.definitions_.import_dart_math="import 'dart:math' as Math;";a=c==="ABS"||c.substring(0,5)==="ROUND"?b.valueToCode(a,"NUM",Z.UNARY_POSTFIX)||"0":c==="SIN"||c==="COS"||c==="TAN"?b.valueToCode(a,"NUM",Z.MULTIPLICATIVE)||"0":b.valueToCode(a,"NUM",Z.NONE)||"0";switch(c){case "ABS":var d=a+".abs()";break;case "ROOT":d="Math.sqrt("+a+")";break;case "LN":d="Math.log("+a+")";break;case "EXP":d="Math.exp("+
18
18
  a+")";break;case "POW10":d="Math.pow(10,"+a+")";break;case "ROUND":d=a+".round()";break;case "ROUNDUP":d=a+".ceil()";break;case "ROUNDDOWN":d=a+".floor()";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,Z.UNARY_POSTFIX];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";
19
- break;case "ATAN":d="Math.atan("+a+") / Math.pi * 180";break;default:throw Error("Unknown math operator: "+c);}return[d,Z.MULTIPLICATIVE]},Fs=function(a,b){var c=b.getProcedureName(a.getFieldValue("NAME")),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));var e="";b.INFINITE_LOOP_TRAP&&(e=b.prefixLines(b.injectId(b.INFINITE_LOOP_TRAP,a),b.INDENT));var f="";a.getInput("STACK")&&(f=b.statementToCode(a,
20
- "STACK"));var g="";a.getInput("RETURN")&&(g=b.valueToCode(a,"RETURN",Z.NONE)||"");var h="";f&&g&&(h=d);g&&(g=b.INDENT+"return "+g+";\n");var m=g?"dynamic":"void",z=[],E=a.getVarModels();for(let G=0;G<E.length;G++)z[G]=b.getVariableName(E[G].getId());d=m+" "+c+"("+z.join(", ")+") {\n"+d+e+f+h+g+"}";d=b.scrub_(a,d);b.definitions_["%"+c]=d;return null},Gs=function(a,b){b.definitions_.import_dart_html="import 'dart:html' as Html;";var c="Html.window.prompt("+(a.getField("TEXT")?b.quote_(a.getFieldValue("TEXT")):
21
- b.valueToCode(a,"TEXT",Z.NONE)||"''")+", '')";a.getFieldValue("TYPE")==="NUMBER"&&(b.definitions_.import_dart_math="import 'dart:math' as Math;",c="Math.parseDouble("+c+")");return[c,Z.UNARY_POSTFIX]},Hs=function(a,b){return[b.getVariableName(a.getFieldValue("VAR")),Z.ATOMIC]},Is=function(a,b){var c=b.valueToCode(a,"VALUE",Z.ASSIGNMENT)||"0";return b.getVariableName(a.getFieldValue("VAR"))+" = "+c+";\n"},Z,Js=Z||(Z={});Js[Js.ATOMIC=0]="ATOMIC";Js[Js.UNARY_POSTFIX=1]="UNARY_POSTFIX";
22
- Js[Js.UNARY_PREFIX=2]="UNARY_PREFIX";Js[Js.MULTIPLICATIVE=3]="MULTIPLICATIVE";Js[Js.ADDITIVE=4]="ADDITIVE";Js[Js.SHIFT=5]="SHIFT";Js[Js.BITWISE_AND=6]="BITWISE_AND";Js[Js.BITWISE_XOR=7]="BITWISE_XOR";Js[Js.BITWISE_OR=8]="BITWISE_OR";Js[Js.RELATIONAL=9]="RELATIONAL";Js[Js.EQUALITY=10]="EQUALITY";Js[Js.LOGICAL_AND=11]="LOGICAL_AND";Js[Js.LOGICAL_OR=12]="LOGICAL_OR";Js[Js.IF_NULL=13]="IF_NULL";Js[Js.CONDITIONAL=14]="CONDITIONAL";Js[Js.CASCADE=15]="CASCADE";Js[Js.ASSIGNMENT=16]="ASSIGNMENT";
23
- Js[Js.NONE=99]="NONE";
24
- var Ks=class extends $.Ip{constructor(a="Dart"){super(a);this.isInitialized=!1;for(let b in Z)a=Z[b],typeof a!=="string"&&(this["ORDER_"+b]=a);this.addReservedWords("assert,break,case,catch,class,const,continue,default,do,else,enum,extends,false,final,finally,for,if,in,is,new,null,rethrow,return,super,switch,this,throw,true,try,var,void,while,with,print,identityHashCode,identical,BidirectionalIterator,Comparable,double,Function,int,Invocation,Iterable,Iterator,List,Map,Match,num,Pattern,RegExp,Set,StackTrace,String,StringSink,Type,bool,DateTime,Deprecated,Duration,Expando,Null,Object,RuneIterator,Runes,Stopwatch,StringBuffer,Symbol,Uri,Comparator,AbstractClassInstantiationError,ArgumentError,AssertionError,CastError,ConcurrentModificationError,CyclicInitializationError,Error,Exception,FallThroughError,FormatException,IntegerDivisionByZeroException,NoSuchMethodError,NullThrownError,OutOfMemoryError,RangeError,StackOverflowError,StateError,TypeError,UnimplementedError,UnsupportedError")}init(a){super.init(a);this.nameDB_?
25
- this.nameDB_.reset():this.nameDB_=new $.aj(this.RESERVED_WORDS_);this.nameDB_.setVariableMap(a.getVariableMap());this.nameDB_.populateVariables(a);this.nameDB_.populateProcedures(a);var b=[],c=$.Bd(a);for(let d=0;d<c.length;d++)b.push(this.nameDB_.getName(c[d],$.P.DEVELOPER_VARIABLE));a=$.Ad(a);for(c=0;c<a.length;c++)b.push(this.nameDB_.getName(a[c].getId(),$.P.VARIABLE));b.length&&(this.definitions_.variables="var "+b.join(", ")+";");this.isInitialized=!0}finish(a){a&&(a=this.prefixLines(a,this.INDENT));
19
+ break;case "ATAN":d="Math.atan("+a+") / Math.pi * 180";break;default:throw Error("Unknown math operator: "+c);}return[d,Z.MULTIPLICATIVE]},Ps=function(a,b){var c=b.getProcedureName(a.getFieldValue("NAME")),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));var e="";b.INFINITE_LOOP_TRAP&&(e=b.prefixLines(b.injectId(b.INFINITE_LOOP_TRAP,a),b.INDENT));var f="";a.getInput("STACK")&&(f=b.statementToCode(a,
20
+ "STACK"));var g="";a.getInput("RETURN")&&(g=b.valueToCode(a,"RETURN",Z.NONE)||"");var h="";f&&g&&(h=d);g&&(g=b.INDENT+"return "+g+";\n");var m=g?"dynamic":"void",z=[],E=a.getVarModels();for(let H=0;H<E.length;H++)z[H]=b.getVariableName(E[H].getId());d=m+" "+c+"("+z.join(", ")+") {\n"+d+e+f+h+g+"}";d=b.scrub_(a,d);b.definitions_["%"+c]=d;return null},Qs=function(a,b){b.definitions_.import_dart_html="import 'dart:html' as Html;";var c="Html.window.prompt("+(a.getField("TEXT")?b.quote_(a.getFieldValue("TEXT")):
21
+ b.valueToCode(a,"TEXT",Z.NONE)||"''")+", '')";a.getFieldValue("TYPE")==="NUMBER"&&(b.definitions_.import_dart_math="import 'dart:math' as Math;",c="Math.parseDouble("+c+")");return[c,Z.UNARY_POSTFIX]},Rs=function(a,b){return[b.getVariableName(a.getFieldValue("VAR")),Z.ATOMIC]},Ss=function(a,b){var c=b.valueToCode(a,"VALUE",Z.ASSIGNMENT)||"0";return b.getVariableName(a.getFieldValue("VAR"))+" = "+c+";\n"},Z,Ts=Z||(Z={});Ts[Ts.ATOMIC=0]="ATOMIC";Ts[Ts.UNARY_POSTFIX=1]="UNARY_POSTFIX";
22
+ Ts[Ts.UNARY_PREFIX=2]="UNARY_PREFIX";Ts[Ts.MULTIPLICATIVE=3]="MULTIPLICATIVE";Ts[Ts.ADDITIVE=4]="ADDITIVE";Ts[Ts.SHIFT=5]="SHIFT";Ts[Ts.BITWISE_AND=6]="BITWISE_AND";Ts[Ts.BITWISE_XOR=7]="BITWISE_XOR";Ts[Ts.BITWISE_OR=8]="BITWISE_OR";Ts[Ts.RELATIONAL=9]="RELATIONAL";Ts[Ts.EQUALITY=10]="EQUALITY";Ts[Ts.LOGICAL_AND=11]="LOGICAL_AND";Ts[Ts.LOGICAL_OR=12]="LOGICAL_OR";Ts[Ts.IF_NULL=13]="IF_NULL";Ts[Ts.CONDITIONAL=14]="CONDITIONAL";Ts[Ts.CASCADE=15]="CASCADE";Ts[Ts.ASSIGNMENT=16]="ASSIGNMENT";
23
+ Ts[Ts.NONE=99]="NONE";
24
+ var Us=class extends $.Rp{constructor(a="Dart"){super(a);this.isInitialized=!1;for(let b in Z)a=Z[b],typeof a!=="string"&&(this["ORDER_"+b]=a);this.addReservedWords("assert,break,case,catch,class,const,continue,default,do,else,enum,extends,false,final,finally,for,if,in,is,new,null,rethrow,return,super,switch,this,throw,true,try,var,void,while,with,print,identityHashCode,identical,BidirectionalIterator,Comparable,double,Function,int,Invocation,Iterable,Iterator,List,Map,Match,num,Pattern,RegExp,Set,StackTrace,String,StringSink,Type,bool,DateTime,Deprecated,Duration,Expando,Null,Object,RuneIterator,Runes,Stopwatch,StringBuffer,Symbol,Uri,Comparator,AbstractClassInstantiationError,ArgumentError,AssertionError,CastError,ConcurrentModificationError,CyclicInitializationError,Error,Exception,FallThroughError,FormatException,IntegerDivisionByZeroException,NoSuchMethodError,NullThrownError,OutOfMemoryError,RangeError,StackOverflowError,StateError,TypeError,UnimplementedError,UnsupportedError")}init(a){super.init(a);this.nameDB_?
25
+ this.nameDB_.reset():this.nameDB_=new $.jj(this.RESERVED_WORDS_);this.nameDB_.setVariableMap(a.getVariableMap());this.nameDB_.populateVariables(a);this.nameDB_.populateProcedures(a);var b=[],c=$.Cd(a);for(let d=0;d<c.length;d++)b.push(this.nameDB_.getName(c[d],$.P.DEVELOPER_VARIABLE));a=$.Bd(a);for(c=0;c<a.length;c++)b.push(this.nameDB_.getName(a[c].getId(),$.P.VARIABLE));b.length&&(this.definitions_.variables="var "+b.join(", ")+";");this.isInitialized=!0}finish(a){a&&(a=this.prefixLines(a,this.INDENT));
26
26
  a="main() {\n"+a+"}";var b=[],c=[];for(let d in this.definitions_){let e=this.definitions_[d];e.match(/^import\s/)?b.push(e):c.push(e)}a=super.finish(a);this.isInitialized=!1;this.nameDB_.reset();return(b.join("\n")+"\n\n"+c.join("\n\n")).replace(/\n\n+/g,"\n\n").replace(/\n*$/,"\n\n\n")+a}scrubNakedValue(a){return a+";\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,
27
- b,c=!1){var d="";if(!a.outputConnection||!a.outputConnection.targetConnection){var e=a.getCommentText();e&&(e=$.cf(e,this.COMMENT_WRAP-3),d="getProcedureDef"in a?d+this.prefixLines(e+"\n","/// "):d+this.prefixLines(e+"\n","// "));for(let f=0;f<a.inputList.length;f++)a.inputList[f].type===$.he.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,
28
- b,c=0,d=!1,e=Z.NONE){a.workspace.options.oneBasedIndex&&c--;var f=a.workspace.options.oneBasedIndex?"1":"0",g=e;c?g=Z.ADDITIVE:d&&(g=Z.UNARY_PREFIX);a=this.valueToCode(a,b,g)||f;if(c===0&&!d)return a;if($.df(a))return a=String(Number(a)+c),d&&(a=String(-Number(a))),a;c>0?a=`${a} + ${c}`:c<0&&(a=`${a} - ${-c}`);d&&(a=c?`-(${a})`:`-${a}`);Math.floor(e)>=Math.floor(g)&&(a=`(${a})`);return a}};var Ls={};Ls.controls_if=Cs;Ls.controls_ifelse=Cs;Ls.logic_boolean=function(a){return[a.getFieldValue("BOOL")==="TRUE"?"true":"false",Z.ATOMIC]};Ls.logic_compare=function(a,b){var c={EQ:"==",NEQ:"!=",LT:"<",LTE:"<=",GT:">",GTE:">="}[a.getFieldValue("OP")],d=c==="=="||c==="!="?Z.EQUALITY:Z.RELATIONAL,e=b.valueToCode(a,"A",d)||"0";a=b.valueToCode(a,"B",d)||"0";return[e+" "+c+" "+a,d]};Ls.logic_negate=function(a,b){var c=Z.UNARY_PREFIX;return["!"+(b.valueToCode(a,"BOOL",c)||"true"),c]};
29
- Ls.logic_null=function(){return["null",Z.ATOMIC]};Ls.logic_operation=function(a,b){var c=a.getFieldValue("OP")==="AND"?"&&":"||",d=c==="&&"?Z.LOGICAL_AND:Z.LOGICAL_OR,e=b.valueToCode(a,"A",d);a=b.valueToCode(a,"B",d);e||a?(b=c==="&&"?"true":"false",e||(e=b),a||(a=b)):a=e="false";return[e+" "+c+" "+a,d]};
30
- Ls.logic_ternary=function(a,b){var c=b.valueToCode(a,"IF",Z.CONDITIONAL)||"false",d=b.valueToCode(a,"THEN",Z.CONDITIONAL)||"null";a=b.valueToCode(a,"ELSE",Z.CONDITIONAL)||"null";return[c+" ? "+d+" : "+a,Z.CONDITIONAL]};var Ms={controls_flow_statements:function(a,b){var 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){let d=a.getSurroundLoop();d&&!d.suppressPrefixSuffix&&(c+=b.injectId(b.STATEMENT_PREFIX,d))}switch(a.getFieldValue("FLOW")){case "BREAK":return c+"break;\n";case "CONTINUE":return c+"continue;\n"}throw Error("Unknown flow statement.");},controls_for:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR")),
31
- d=b.valueToCode(a,"FROM",Z.ASSIGNMENT)||"0",e=b.valueToCode(a,"TO",Z.ASSIGNMENT)||"0",f=b.valueToCode(a,"BY",Z.ASSIGNMENT)||"1",g=b.statementToCode(a,"DO");g=b.addLoopTrap(g,a);if($.df(d)&&$.df(e)&&$.df(f))b=Number(d)<=Number(e),a="for ("+c+" = "+d+"; "+c+(b?" <= ":" >= ")+e+"; "+c,c=Math.abs(Number(f)),a=c===1?a+(b?"++":"--"):a+((b?" += ":" -= ")+c),a+=") {\n"+g+"}\n";else{a="";let h=d;d.match(/^\w+$/)||$.df(d)||(h=b.nameDB_.getDistinctName(c+"_start",$.P.VARIABLE),a+="var "+h+" = "+d+";\n");d=e;
32
- e.match(/^\w+$/)||$.df(e)||(d=b.nameDB_.getDistinctName(c+"_end",$.P.VARIABLE),a+="var "+d+" = "+e+";\n");e=b.nameDB_.getDistinctName(c+"_inc",$.P.VARIABLE);a+="num "+e+" = ";a=$.df(f)?a+(Math.abs(Number(f))+";\n"):a+("("+f+").abs();\n");a+="if ("+h+" > "+d+") {\n";a+=b.INDENT+e+" = -"+e+";\n";a=a+"}\nfor ("+(c+" = "+h+"; "+e+" >= 0 ? "+c+" <= "+d+" : "+c+" >= "+d+"; "+c+" += "+e+") {\n"+g+"}\n")}return a},controls_forEach:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR")),d=b.valueToCode(a,
33
- "LIST",Z.ASSIGNMENT)||"[]",e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);return"for (var "+c+" in "+d+") {\n"+e+"}\n"}};Ms.controls_repeat=Ds;Ms.controls_repeat_ext=Ds;Ms.controls_whileUntil=function(a,b){var c=a.getFieldValue("MODE")==="UNTIL",d=b.valueToCode(a,"BOOL",c?Z.UNARY_PREFIX:Z.NONE)||"false",e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);c&&(d="!"+d);return"while ("+d+") {\n"+e+"}\n"};var Ns={math_arithmetic:function(a,b){var c={ADD:[" + ",Z.ADDITIVE],MINUS:[" - ",Z.ADDITIVE],MULTIPLY:[" * ",Z.MULTIPLICATIVE],DIVIDE:[" / ",Z.MULTIPLICATIVE],POWER:[null,Z.NONE]}[a.getFieldValue("OP")],d=c[0];c=c[1];var e=b.valueToCode(a,"A",c)||"0";a=b.valueToCode(a,"B",c)||"0";return d?[e+d+a,c]:(b.definitions_.import_dart_math="import 'dart:math' as Math;",["Math.pow("+e+", "+a+")",Z.UNARY_POSTFIX])},math_atan2:function(a,b){b.definitions_.import_dart_math="import 'dart:math' as Math;";var c=
27
+ b,c=!1){var d="";if(!a.outputConnection||!a.outputConnection.targetConnection){var e=a.getCommentText();e&&(e=$.xf(e,this.COMMENT_WRAP-3),d="getProcedureDef"in a?d+this.prefixLines(e+"\n","/// "):d+this.prefixLines(e+"\n","// "));for(let f=0;f<a.inputList.length;f++)a.inputList[f].type===$.ie.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,
28
+ b,c=0,d=!1,e=Z.NONE){a.workspace.options.oneBasedIndex&&c--;var f=a.workspace.options.oneBasedIndex?"1":"0",g=e;c?g=Z.ADDITIVE:d&&(g=Z.UNARY_PREFIX);a=this.valueToCode(a,b,g)||f;if(c===0&&!d)return a;if($.yf(a))return a=String(Number(a)+c),d&&(a=String(-Number(a))),a;c>0?a=`${a} + ${c}`:c<0&&(a=`${a} - ${-c}`);d&&(a=c?`-(${a})`:`-${a}`);Math.floor(e)>=Math.floor(g)&&(a=`(${a})`);return a}};var Vs={};Vs.controls_if=Ms;Vs.controls_ifelse=Ms;Vs.logic_boolean=function(a){return[a.getFieldValue("BOOL")==="TRUE"?"true":"false",Z.ATOMIC]};Vs.logic_compare=function(a,b){var c={EQ:"==",NEQ:"!=",LT:"<",LTE:"<=",GT:">",GTE:">="}[a.getFieldValue("OP")],d=c==="=="||c==="!="?Z.EQUALITY:Z.RELATIONAL,e=b.valueToCode(a,"A",d)||"0";a=b.valueToCode(a,"B",d)||"0";return[e+" "+c+" "+a,d]};Vs.logic_negate=function(a,b){var c=Z.UNARY_PREFIX;return["!"+(b.valueToCode(a,"BOOL",c)||"true"),c]};
29
+ Vs.logic_null=function(){return["null",Z.ATOMIC]};Vs.logic_operation=function(a,b){var c=a.getFieldValue("OP")==="AND"?"&&":"||",d=c==="&&"?Z.LOGICAL_AND:Z.LOGICAL_OR,e=b.valueToCode(a,"A",d);a=b.valueToCode(a,"B",d);e||a?(b=c==="&&"?"true":"false",e||(e=b),a||(a=b)):a=e="false";return[e+" "+c+" "+a,d]};
30
+ Vs.logic_ternary=function(a,b){var c=b.valueToCode(a,"IF",Z.CONDITIONAL)||"false",d=b.valueToCode(a,"THEN",Z.CONDITIONAL)||"null";a=b.valueToCode(a,"ELSE",Z.CONDITIONAL)||"null";return[c+" ? "+d+" : "+a,Z.CONDITIONAL]};var Ws={controls_flow_statements:function(a,b){var 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){let d=a.getSurroundLoop();d&&!d.suppressPrefixSuffix&&(c+=b.injectId(b.STATEMENT_PREFIX,d))}switch(a.getFieldValue("FLOW")){case "BREAK":return c+"break;\n";case "CONTINUE":return c+"continue;\n"}throw Error("Unknown flow statement.");},controls_for:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR")),
31
+ d=b.valueToCode(a,"FROM",Z.ASSIGNMENT)||"0",e=b.valueToCode(a,"TO",Z.ASSIGNMENT)||"0",f=b.valueToCode(a,"BY",Z.ASSIGNMENT)||"1",g=b.statementToCode(a,"DO");g=b.addLoopTrap(g,a);if($.yf(d)&&$.yf(e)&&$.yf(f))b=Number(d)<=Number(e),a="for ("+c+" = "+d+"; "+c+(b?" <= ":" >= ")+e+"; "+c,c=Math.abs(Number(f)),a=c===1?a+(b?"++":"--"):a+((b?" += ":" -= ")+c),a+=") {\n"+g+"}\n";else{a="";let h=d;d.match(/^\w+$/)||$.yf(d)||(h=b.nameDB_.getDistinctName(c+"_start",$.P.VARIABLE),a+="var "+h+" = "+d+";\n");d=e;
32
+ e.match(/^\w+$/)||$.yf(e)||(d=b.nameDB_.getDistinctName(c+"_end",$.P.VARIABLE),a+="var "+d+" = "+e+";\n");e=b.nameDB_.getDistinctName(c+"_inc",$.P.VARIABLE);a+="num "+e+" = ";a=$.yf(f)?a+(Math.abs(Number(f))+";\n"):a+("("+f+").abs();\n");a+="if ("+h+" > "+d+") {\n";a+=b.INDENT+e+" = -"+e+";\n";a=a+"}\nfor ("+(c+" = "+h+"; "+e+" >= 0 ? "+c+" <= "+d+" : "+c+" >= "+d+"; "+c+" += "+e+") {\n"+g+"}\n")}return a},controls_forEach:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR")),d=b.valueToCode(a,
33
+ "LIST",Z.ASSIGNMENT)||"[]",e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);return"for (var "+c+" in "+d+") {\n"+e+"}\n"}};Ws.controls_repeat=Ns;Ws.controls_repeat_ext=Ns;Ws.controls_whileUntil=function(a,b){var c=a.getFieldValue("MODE")==="UNTIL",d=b.valueToCode(a,"BOOL",c?Z.UNARY_PREFIX:Z.NONE)||"false",e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);c&&(d="!"+d);return"while ("+d+") {\n"+e+"}\n"};var Xs={math_arithmetic:function(a,b){var c={ADD:[" + ",Z.ADDITIVE],MINUS:[" - ",Z.ADDITIVE],MULTIPLY:[" * ",Z.MULTIPLICATIVE],DIVIDE:[" / ",Z.MULTIPLICATIVE],POWER:[null,Z.NONE]}[a.getFieldValue("OP")],d=c[0];c=c[1];var e=b.valueToCode(a,"A",c)||"0";a=b.valueToCode(a,"B",c)||"0";return d?[e+d+a,c]:(b.definitions_.import_dart_math="import 'dart:math' as Math;",["Math.pow("+e+", "+a+")",Z.UNARY_POSTFIX])},math_atan2:function(a,b){b.definitions_.import_dart_math="import 'dart:math' as Math;";var c=
34
34
  b.valueToCode(a,"X",Z.NONE)||"0";return["Math.atan2("+(b.valueToCode(a,"Y",Z.NONE)||"0")+", "+c+") / Math.pi * 180",Z.MULTIPLICATIVE]},math_change:function(a,b){var c=b.valueToCode(a,"DELTA",Z.ADDITIVE)||"0";a=b.getVariableName(a.getFieldValue("VAR"));return a+" = ("+a+" is num ? "+a+" : 0) + "+c+";\n"},math_constant:function(a,b){var c={PI:["Math.pi",Z.UNARY_POSTFIX],E:["Math.e",Z.UNARY_POSTFIX],GOLDEN_RATIO:["(1 + Math.sqrt(5)) / 2",Z.MULTIPLICATIVE],SQRT2:["Math.sqrt2",Z.UNARY_POSTFIX],SQRT1_2:["Math.sqrt1_2",
35
35
  Z.UNARY_POSTFIX],INFINITY:["double.infinity",Z.ATOMIC]};a=a.getFieldValue("CONSTANT");a!=="INFINITY"&&(b.definitions_.import_dart_math="import 'dart:math' as Math;");return c[a]},math_constrain:function(a,b){b.definitions_.import_dart_math="import 'dart:math' as Math;";var c=b.valueToCode(a,"VALUE",Z.NONE)||"0",d=b.valueToCode(a,"LOW",Z.NONE)||"0";a=b.valueToCode(a,"HIGH",Z.NONE)||"double.infinity";return["Math.min(Math.max("+c+", "+d+"), "+a+")",Z.UNARY_POSTFIX]},math_modulo:function(a,b){var c=
36
36
  b.valueToCode(a,"DIVIDEND",Z.MULTIPLICATIVE)||"0";a=b.valueToCode(a,"DIVISOR",Z.MULTIPLICATIVE)||"0";return[c+" % "+a,Z.MULTIPLICATIVE]},math_number:function(a){a=Number(a.getFieldValue("NUM"));return a===Infinity?["double.infinity",Z.UNARY_POSTFIX]:a===-Infinity?["-double.infinity",Z.UNARY_PREFIX]:[String(a),a<0?Z.UNARY_PREFIX:Z.ATOMIC]},math_number_property:function(a,b){var c={EVEN:[" % 2 == 0",Z.MULTIPLICATIVE,Z.EQUALITY],ODD:[" % 2 == 1",Z.MULTIPLICATIVE,Z.EQUALITY],WHOLE:[" % 1 == 0",Z.MULTIPLICATIVE,
@@ -156,8 +156,8 @@ int ${b.FUNCTION_NAME_PLACEHOLDER_}(num a, num b) {
156
156
  }
157
157
  return new Math.Random().nextInt(b - a + 1) + a;
158
158
  }
159
- `)+"("+c+", "+a+")",Z.UNARY_POSTFIX]}};Ns.math_round=Es;Ns.math_single=Es;Ns.math_trig=Es;var Os={procedures_callnoreturn:function(a,b){return b.forBlock.procedures_callreturn(a,b)[0]+";\n"},procedures_callreturn:function(a,b){var c=b.getProcedureName(a.getFieldValue("NAME")),d=[],e=a.getVarModels();for(let f=0;f<e.length;f++)d[f]=b.valueToCode(a,"ARG"+f,Z.NONE)||"null";return[c+"("+d.join(", ")+")",Z.UNARY_POSTFIX]}};Os.procedures_defnoreturn=Fs;Os.procedures_defreturn=Fs;
160
- Os.procedures_ifreturn=function(a,b){var c="if ("+(b.valueToCode(a,"CONDITION",Z.NONE)||"false")+") {\n";b.STATEMENT_SUFFIX&&(c+=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT));a.hasReturnValue_?(a=b.valueToCode(a,"VALUE",Z.NONE)||"null",c+=b.INDENT+"return "+a+";\n"):c+=b.INDENT+"return;\n";return c+"}\n"};var Ps={text:function(a,b){return[b.quote_(a.getFieldValue("TEXT")),Z.ATOMIC]},text_append:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR"));a=b.valueToCode(a,"TEXT",Z.NONE)||"''";return c+" = ["+c+", "+a+"].join();\n"},text_changeCase:function(a,b){var c={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=b.valueToCode(a,"TEXT",c?Z.UNARY_POSTFIX:Z.NONE)||"''";return[c?a+c:b.provideFunction_("text_toTitleCase",`
159
+ `)+"("+c+", "+a+")",Z.UNARY_POSTFIX]}};Xs.math_round=Os;Xs.math_single=Os;Xs.math_trig=Os;var Ys={procedures_callnoreturn:function(a,b){return b.forBlock.procedures_callreturn(a,b)[0]+";\n"},procedures_callreturn:function(a,b){var c=b.getProcedureName(a.getFieldValue("NAME")),d=[],e=a.getVarModels();for(let f=0;f<e.length;f++)d[f]=b.valueToCode(a,"ARG"+f,Z.NONE)||"null";return[c+"("+d.join(", ")+")",Z.UNARY_POSTFIX]}};Ys.procedures_defnoreturn=Ps;Ys.procedures_defreturn=Ps;
160
+ Ys.procedures_ifreturn=function(a,b){var c="if ("+(b.valueToCode(a,"CONDITION",Z.NONE)||"false")+") {\n";b.STATEMENT_SUFFIX&&(c+=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT));a.hasReturnValue_?(a=b.valueToCode(a,"VALUE",Z.NONE)||"null",c+=b.INDENT+"return "+a+";\n"):c+=b.INDENT+"return;\n";return c+"}\n"};var Zs={text:function(a,b){return[b.quote_(a.getFieldValue("TEXT")),Z.ATOMIC]},text_append:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR"));a=b.valueToCode(a,"TEXT",Z.NONE)||"''";return c+" = ["+c+", "+a+"].join();\n"},text_changeCase:function(a,b){var c={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=b.valueToCode(a,"TEXT",c?Z.UNARY_POSTFIX:Z.NONE)||"''";return[c?a+c:b.provideFunction_("text_toTitleCase",`
161
161
  String ${b.FUNCTION_NAME_PLACEHOLDER_}(String str) {
162
162
  RegExp exp = new RegExp(r'\\b');
163
163
  List<String> list = str.split(exp);
@@ -217,10 +217,10 @@ String ${b.FUNCTION_NAME_PLACEHOLDER_}(String text, String where1, num at1, Stri
217
217
  return text.substring(at1, at2);
218
218
  }
219
219
  `)+"("+f+", '"+c+"', "+g+", '"+d+"', "+a+")";return[b,Z.UNARY_POSTFIX]},text_indexOf:function(a,b){var c=a.getFieldValue("END")==="FIRST"?"indexOf":"lastIndexOf",d=b.valueToCode(a,"FIND",Z.NONE)||"''";b=(b.valueToCode(a,"VALUE",Z.UNARY_POSTFIX)||"''")+"."+c+"("+d+")";return a.workspace.options.oneBasedIndex?[b+" + 1",Z.ADDITIVE]:[b,Z.UNARY_POSTFIX]},text_isEmpty:function(a,b){return[(b.valueToCode(a,"VALUE",Z.UNARY_POSTFIX)||"''")+".isEmpty",Z.UNARY_POSTFIX]},text_join:function(a,b){switch(a.itemCount_){case 0:return["''",
220
- Z.ATOMIC];case 1:return[(b.valueToCode(a,"ADD0",Z.UNARY_POSTFIX)||"''")+".toString()",Z.UNARY_POSTFIX];default:let c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,Z.NONE)||"''";return["["+c.join(",")+"].join()",Z.UNARY_POSTFIX]}},text_length:function(a,b){return[(b.valueToCode(a,"VALUE",Z.UNARY_POSTFIX)||"''")+".length",Z.UNARY_POSTFIX]},text_print:function(a,b){return"print("+(b.valueToCode(a,"TEXT",Z.NONE)||"''")+");\n"}};Ps.text_prompt=Gs;Ps.text_prompt_ext=Gs;
221
- Ps.text_replace=function(a,b){var c=b.valueToCode(a,"TEXT",Z.UNARY_POSTFIX)||"''",d=b.valueToCode(a,"FROM",Z.NONE)||"''";a=b.valueToCode(a,"TO",Z.NONE)||"''";return[c+".replaceAll("+d+", "+a+")",Z.UNARY_POSTFIX]};Ps.text_reverse=function(a,b){return["new String.fromCharCodes("+(b.valueToCode(a,"TEXT",Z.UNARY_POSTFIX)||"''")+".runes.toList().reversed)",Z.UNARY_PREFIX]};
222
- Ps.text_trim=function(a,b){var c={LEFT:".replaceFirst(new RegExp(r'^\\s+'), '')",RIGHT:".replaceFirst(new RegExp(r'\\s+$'), '')",BOTH:".trim()"}[a.getFieldValue("MODE")];return[(b.valueToCode(a,"TEXT",Z.UNARY_POSTFIX)||"''")+c,Z.UNARY_POSTFIX]};var Qs={};Qs.variables_get=Hs;Qs.variables_set=Is;var Rs={};Rs.variables_get_dynamic=Hs;Rs.variables_set_dynamic=Is;var Ss=new Ks;Ss.addReservedWords("Html,Math");
223
- var Ts=Object.assign({},{lists_create_empty:function(){return["[]",Z.ATOMIC]},lists_create_with:function(a,b){var c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,Z.NONE)||"null";return["["+c.join(", ")+"]",Z.ATOMIC]},lists_getIndex:function(a,b){function c(){var g=b.nameDB_.getDistinctName("tmp_list",$.P.VARIABLE),h="List "+g+" = "+f+";\n";f=g;return h}var d=a.getFieldValue("MODE")||"GET",e=a.getFieldValue("WHERE")||"FROM_START",f=b.valueToCode(a,"VALUE",e==="RANDOM"||
220
+ Z.ATOMIC];case 1:return[(b.valueToCode(a,"ADD0",Z.UNARY_POSTFIX)||"''")+".toString()",Z.UNARY_POSTFIX];default:let c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,Z.NONE)||"''";return["["+c.join(",")+"].join()",Z.UNARY_POSTFIX]}},text_length:function(a,b){return[(b.valueToCode(a,"VALUE",Z.UNARY_POSTFIX)||"''")+".length",Z.UNARY_POSTFIX]},text_print:function(a,b){return"print("+(b.valueToCode(a,"TEXT",Z.NONE)||"''")+");\n"}};Zs.text_prompt=Qs;Zs.text_prompt_ext=Qs;
221
+ Zs.text_replace=function(a,b){var c=b.valueToCode(a,"TEXT",Z.UNARY_POSTFIX)||"''",d=b.valueToCode(a,"FROM",Z.NONE)||"''";a=b.valueToCode(a,"TO",Z.NONE)||"''";return[c+".replaceAll("+d+", "+a+")",Z.UNARY_POSTFIX]};Zs.text_reverse=function(a,b){return["new String.fromCharCodes("+(b.valueToCode(a,"TEXT",Z.UNARY_POSTFIX)||"''")+".runes.toList().reversed)",Z.UNARY_PREFIX]};
222
+ Zs.text_trim=function(a,b){var c={LEFT:".replaceFirst(new RegExp(r'^\\s+'), '')",RIGHT:".replaceFirst(new RegExp(r'\\s+$'), '')",BOTH:".trim()"}[a.getFieldValue("MODE")];return[(b.valueToCode(a,"TEXT",Z.UNARY_POSTFIX)||"''")+c,Z.UNARY_POSTFIX]};var $s={};$s.variables_get=Rs;$s.variables_set=Ss;var at={};at.variables_get_dynamic=Rs;at.variables_set_dynamic=Ss;var bt=new Us;bt.addReservedWords("Html,Math");
223
+ var ct=Object.assign({},{lists_create_empty:function(){return["[]",Z.ATOMIC]},lists_create_with:function(a,b){var c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,Z.NONE)||"null";return["["+c.join(", ")+"]",Z.ATOMIC]},lists_getIndex:function(a,b){function c(){var g=b.nameDB_.getDistinctName("tmp_list",$.P.VARIABLE),h="List "+g+" = "+f+";\n";f=g;return h}var d=a.getFieldValue("MODE")||"GET",e=a.getFieldValue("WHERE")||"FROM_START",f=b.valueToCode(a,"VALUE",e==="RANDOM"||
224
224
  e==="FROM_END"?Z.NONE:Z.UNARY_POSTFIX)||"[]";if((e!=="RANDOM"||d!=="REMOVE")&&e!=="FROM_END"||f.match(/^\w+$/))switch(e){case "FIRST":if(d==="GET")return[f+".first",Z.UNARY_POSTFIX];if(d==="GET_REMOVE")return[f+".removeAt(0)",Z.UNARY_POSTFIX];if(d==="REMOVE")return f+".removeAt(0);\n";break;case "LAST":if(d==="GET")return[f+".last",Z.UNARY_POSTFIX];if(d==="GET_REMOVE")return[f+".removeLast()",Z.UNARY_POSTFIX];if(d==="REMOVE")return f+".removeLast();\n";break;case "FROM_START":a=b.getAdjusted(a,"AT");
225
225
  if(d==="GET")return[f+"["+a+"]",Z.UNARY_POSTFIX];if(d==="GET_REMOVE")return[f+".removeAt("+a+")",Z.UNARY_POSTFIX];if(d==="REMOVE")return f+".removeAt("+a+");\n";break;case "FROM_END":a=b.getAdjusted(a,"AT",1,!1,Z.ADDITIVE);if(d==="GET")return[f+"["+f+".length - "+a+"]",Z.UNARY_POSTFIX];if(d==="GET_REMOVE"||d==="REMOVE"){a=f+".removeAt("+f+".length - "+a+")";if(d==="GET_REMOVE")return[a,Z.UNARY_POSTFIX];if(d==="REMOVE")return a+";\n"}break;case "RANDOM":b.definitions_.import_dart_math="import 'dart:math' as Math;";
226
226
  if(d==="REMOVE")return d=b.nameDB_.getDistinctName("tmp_x",$.P.VARIABLE),"int "+d+" = new Math.Random().nextInt("+f+".length);\n"+(f+".removeAt("+d+");\n");if(d==="GET")return[b.provideFunction_("lists_get_random_item",`
@@ -280,7 +280,7 @@ List ${b.FUNCTION_NAME_PLACEHOLDER_}(List list, String type, int direction) {
280
280
  list.sort(compare);
281
281
  return list;
282
282
  }
283
- `)+"("+c+', "'+a+'", '+d+")",Z.UNARY_POSTFIX]},lists_split:function(a,b){var c=b.valueToCode(a,"INPUT",Z.UNARY_POSTFIX);b=b.valueToCode(a,"DELIM",Z.NONE)||"''";a=a.getFieldValue("MODE");if(a==="SPLIT")c||(c="''"),a="split";else if(a==="JOIN")c||(c="[]"),a="join";else throw Error("Unknown mode: "+a);return[c+"."+a+"("+b+")",Z.UNARY_POSTFIX]}},Ls,Ms,Ns,Os,Ps,Qs,Rs);for(let a in Ts)Ss.forBlock[a]=Ts[a];var Us={};Us.DartGenerator=Ks;Us.Order=Z;Us.dartGenerator=Ss;$.__chunk_dart=Us;
283
+ `)+"("+c+', "'+a+'", '+d+")",Z.UNARY_POSTFIX]},lists_split:function(a,b){var c=b.valueToCode(a,"INPUT",Z.UNARY_POSTFIX);b=b.valueToCode(a,"DELIM",Z.NONE)||"''";a=a.getFieldValue("MODE");if(a==="SPLIT")c||(c="''"),a="split";else if(a==="JOIN")c||(c="[]"),a="join";else throw Error("Unknown mode: "+a);return[c+"."+a+"("+b+")",Z.UNARY_POSTFIX]}},Vs,Ws,Xs,Ys,Zs,$s,at);for(let a in ct)bt.forBlock[a]=ct[a];var dt={};dt.DartGenerator=Us;dt.Order=Z;dt.dartGenerator=bt;$.__chunk_dart=dt;
284
284
  $.__chunk_dart.__namespace__=$;
285
285
  return $.__chunk_dart;
286
286
  }));
@@ -12,26 +12,26 @@
12
12
  }
13
13
  }(this, function(__parent__) {
14
14
  var $=__parent__.__namespace__;
15
- var Zq=function(a,b,c){return b==="FIRST"?"0":b==="FROM_END"?a+".length - 1 - "+c:b==="LAST"?a+".length - 1":c},$q=function(a,b){var c=0,d="";b.STATEMENT_PREFIX&&(d+=b.injectId(b.STATEMENT_PREFIX,a));do{let e=b.valueToCode(a,"IF"+c,S.NONE)||"false",f=b.statementToCode(a,"DO"+c);b.STATEMENT_SUFFIX&&(f=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT)+f);d+=(c>0?" else ":"")+"if ("+e+") {\n"+f+"}";c++}while(a.getInput("IF"+c));if(a.getInput("ELSE")||b.STATEMENT_SUFFIX)c=a.getInput("ELSE")?b.statementToCode(a,
16
- "ELSE"):"",b.STATEMENT_SUFFIX&&(c=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT)+c),d+=" else {\n"+c+"}";return d+"\n"},ar=function(a,b){var c=a.getField("TIMES")?String(Number(a.getFieldValue("TIMES"))):b.valueToCode(a,"TIMES",S.ASSIGNMENT)||"0";var d=b.statementToCode(a,"DO");d=b.addLoopTrap(d,a);a="";var e=b.nameDB_.getDistinctName("count",$.P.VARIABLE),f=c;c.match(/^\w+$/)||$.df(c)||(f=b.nameDB_.getDistinctName("repeat_end",$.P.VARIABLE),a+="var "+f+" = "+c+";\n");return a+("for (var "+
17
- e+" = 0; "+e+" < "+f+"; "+e+"++) {\n"+d+"}\n")},br=function(a,b){var c=a.getFieldValue("OP");if(c==="NEG")return a=b.valueToCode(a,"NUM",S.UNARY_NEGATION)||"0",a[0]==="-"&&(a=" "+a),["-"+a,S.UNARY_NEGATION];a=c==="SIN"||c==="COS"||c==="TAN"?b.valueToCode(a,"NUM",S.DIVISION)||"0":b.valueToCode(a,"NUM",S.NONE)||"0";switch(c){case "ABS":var 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,"+
15
+ var ir=function(a,b,c){return b==="FIRST"?"0":b==="FROM_END"?a+".length - 1 - "+c:b==="LAST"?a+".length - 1":c},jr=function(a,b){var c=0,d="";b.STATEMENT_PREFIX&&(d+=b.injectId(b.STATEMENT_PREFIX,a));do{let e=b.valueToCode(a,"IF"+c,S.NONE)||"false",f=b.statementToCode(a,"DO"+c);b.STATEMENT_SUFFIX&&(f=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT)+f);d+=(c>0?" else ":"")+"if ("+e+") {\n"+f+"}";c++}while(a.getInput("IF"+c));if(a.getInput("ELSE")||b.STATEMENT_SUFFIX)c=a.getInput("ELSE")?b.statementToCode(a,
16
+ "ELSE"):"",b.STATEMENT_SUFFIX&&(c=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT)+c),d+=" else {\n"+c+"}";return d+"\n"},kr=function(a,b){var c=a.getField("TIMES")?String(Number(a.getFieldValue("TIMES"))):b.valueToCode(a,"TIMES",S.ASSIGNMENT)||"0";var d=b.statementToCode(a,"DO");d=b.addLoopTrap(d,a);a="";var e=b.nameDB_.getDistinctName("count",$.P.VARIABLE),f=c;c.match(/^\w+$/)||$.yf(c)||(f=b.nameDB_.getDistinctName("repeat_end",$.P.VARIABLE),a+="var "+f+" = "+c+";\n");return a+("for (var "+
17
+ e+" = 0; "+e+" < "+f+"; "+e+"++) {\n"+d+"}\n")},lr=function(a,b){var c=a.getFieldValue("OP");if(c==="NEG")return a=b.valueToCode(a,"NUM",S.UNARY_NEGATION)||"0",a[0]==="-"&&(a=" "+a),["-"+a,S.UNARY_NEGATION];a=c==="SIN"||c==="COS"||c==="TAN"?b.valueToCode(a,"NUM",S.DIVISION)||"0":b.valueToCode(a,"NUM",S.NONE)||"0";switch(c){case "ABS":var 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,"+
18
18
  a+")";break;case "ROUND":d="Math.round("+a+")";break;case "ROUNDUP":d="Math.ceil("+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,S.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=
19
- "Math.atan("+a+") / Math.PI * 180";break;default:throw Error("Unknown math operator: "+c);}return[d,S.DIVISION]},cr=function(a,b){var c=b.getProcedureName(a.getFieldValue("NAME")),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));var e="";b.INFINITE_LOOP_TRAP&&(e=b.prefixLines(b.injectId(b.INFINITE_LOOP_TRAP,a),b.INDENT));var f="";a.getInput("STACK")&&(f=b.statementToCode(a,"STACK"));var g="";a.getInput("RETURN")&&
20
- (g=b.valueToCode(a,"RETURN",S.NONE)||"");var h="";f&&g&&(h=d);g&&(g=b.INDENT+"return "+g+";\n");var m=[],z=a.getVarModels();for(let E=0;E<z.length;E++)m[E]=b.getVariableName(z[E].getId());d="function "+c+"("+m.join(", ")+") {\n"+d+e+f+h+g+"}";d=b.scrub_(a,d);b.definitions_["%"+c]=d;return null},er=function(a){return dr.test(a)?[a,S.ATOMIC]:["String("+a+")",S.FUNCTION_CALL]},fr=function(a,b,c){return b==="FIRST"?"0":b==="FROM_END"?a+".length - 1 - "+c:b==="LAST"?a+".length - 1":c},gr=function(a,b){b=
21
- "window.prompt("+(a.getField("TEXT")?b.quote_(a.getFieldValue("TEXT")):b.valueToCode(a,"TEXT",S.NONE)||"''")+")";a.getFieldValue("TYPE")==="NUMBER"&&(b="Number("+b+")");return[b,S.FUNCTION_CALL]},hr=function(a,b){return[b.getVariableName(a.getFieldValue("VAR")),S.ATOMIC]},ir=function(a,b){var c=b.valueToCode(a,"VALUE",S.ASSIGNMENT)||"0";return b.getVariableName(a.getFieldValue("VAR"))+" = "+c+";\n"},S,T=S||(S={});T[T.ATOMIC=0]="ATOMIC";T[T.NEW=1.1]="NEW";T[T.MEMBER=1.2]="MEMBER";
19
+ "Math.atan("+a+") / Math.PI * 180";break;default:throw Error("Unknown math operator: "+c);}return[d,S.DIVISION]},mr=function(a,b){var c=b.getProcedureName(a.getFieldValue("NAME")),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));var e="";b.INFINITE_LOOP_TRAP&&(e=b.prefixLines(b.injectId(b.INFINITE_LOOP_TRAP,a),b.INDENT));var f="";a.getInput("STACK")&&(f=b.statementToCode(a,"STACK"));var g="";a.getInput("RETURN")&&
20
+ (g=b.valueToCode(a,"RETURN",S.NONE)||"");var h="";f&&g&&(h=d);g&&(g=b.INDENT+"return "+g+";\n");var m=[],z=a.getVarModels();for(let E=0;E<z.length;E++)m[E]=b.getVariableName(z[E].getId());d="function "+c+"("+m.join(", ")+") {\n"+d+e+f+h+g+"}";d=b.scrub_(a,d);b.definitions_["%"+c]=d;return null},or=function(a){return nr.test(a)?[a,S.ATOMIC]:["String("+a+")",S.FUNCTION_CALL]},pr=function(a,b,c){return b==="FIRST"?"0":b==="FROM_END"?a+".length - 1 - "+c:b==="LAST"?a+".length - 1":c},qr=function(a,b){b=
21
+ "window.prompt("+(a.getField("TEXT")?b.quote_(a.getFieldValue("TEXT")):b.valueToCode(a,"TEXT",S.NONE)||"''")+")";a.getFieldValue("TYPE")==="NUMBER"&&(b="Number("+b+")");return[b,S.FUNCTION_CALL]},rr=function(a,b){return[b.getVariableName(a.getFieldValue("VAR")),S.ATOMIC]},sr=function(a,b){var c=b.valueToCode(a,"VALUE",S.ASSIGNMENT)||"0";return b.getVariableName(a.getFieldValue("VAR"))+" = "+c+";\n"},S,T=S||(S={});T[T.ATOMIC=0]="ATOMIC";T[T.NEW=1.1]="NEW";T[T.MEMBER=1.2]="MEMBER";
22
22
  T[T.FUNCTION_CALL=2]="FUNCTION_CALL";T[T.INCREMENT=3]="INCREMENT";T[T.DECREMENT=3]="DECREMENT";T[T.BITWISE_NOT=4.1]="BITWISE_NOT";T[T.UNARY_PLUS=4.2]="UNARY_PLUS";T[T.UNARY_NEGATION=4.3]="UNARY_NEGATION";T[T.LOGICAL_NOT=4.4]="LOGICAL_NOT";T[T.TYPEOF=4.5]="TYPEOF";T[T.VOID=4.6]="VOID";T[T.DELETE=4.7]="DELETE";T[T.AWAIT=4.8]="AWAIT";T[T.EXPONENTIATION=5]="EXPONENTIATION";T[T.MULTIPLICATION=5.1]="MULTIPLICATION";T[T.DIVISION=5.2]="DIVISION";T[T.MODULUS=5.3]="MODULUS";T[T.SUBTRACTION=6.1]="SUBTRACTION";
23
23
  T[T.ADDITION=6.2]="ADDITION";T[T.BITWISE_SHIFT=7]="BITWISE_SHIFT";T[T.RELATIONAL=8]="RELATIONAL";T[T.IN=8]="IN";T[T.INSTANCEOF=8]="INSTANCEOF";T[T.EQUALITY=9]="EQUALITY";T[T.BITWISE_AND=10]="BITWISE_AND";T[T.BITWISE_XOR=11]="BITWISE_XOR";T[T.BITWISE_OR=12]="BITWISE_OR";T[T.LOGICAL_AND=13]="LOGICAL_AND";T[T.LOGICAL_OR=14]="LOGICAL_OR";T[T.CONDITIONAL=15]="CONDITIONAL";T[T.ASSIGNMENT=16]="ASSIGNMENT";T[T.YIELD=17]="YIELD";T[T.COMMA=18]="COMMA";T[T.NONE=99]="NONE";
24
- var jr=class extends $.Ip{constructor(a="JavaScript"){super(a);this.ORDER_OVERRIDES=[[S.FUNCTION_CALL,S.MEMBER],[S.FUNCTION_CALL,S.FUNCTION_CALL],[S.MEMBER,S.MEMBER],[S.MEMBER,S.FUNCTION_CALL],[S.LOGICAL_NOT,S.LOGICAL_NOT],[S.MULTIPLICATION,S.MULTIPLICATION],[S.ADDITION,S.ADDITION],[S.LOGICAL_AND,S.LOGICAL_AND],[S.LOGICAL_OR,S.LOGICAL_OR]];this.isInitialized=!1;for(let b in S)a=S[b],typeof a!=="string"&&(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,"+
25
- Object.getOwnPropertyNames(globalThis).join(","))}init(a){super.init(a);this.nameDB_?this.nameDB_.reset():this.nameDB_=new $.aj(this.RESERVED_WORDS_);this.nameDB_.setVariableMap(a.getVariableMap());this.nameDB_.populateVariables(a);this.nameDB_.populateProcedures(a);var b=[],c=$.Bd(a);for(let d=0;d<c.length;d++)b.push(this.nameDB_.getName(c[d],$.P.DEVELOPER_VARIABLE));a=$.Ad(a);for(c=0;c<a.length;c++)b.push(this.nameDB_.getName(a[c].getId(),$.P.VARIABLE));b.length&&(this.definitions_.variables="var "+
24
+ var tr=class extends $.Rp{constructor(a="JavaScript"){super(a);this.ORDER_OVERRIDES=[[S.FUNCTION_CALL,S.MEMBER],[S.FUNCTION_CALL,S.FUNCTION_CALL],[S.MEMBER,S.MEMBER],[S.MEMBER,S.FUNCTION_CALL],[S.LOGICAL_NOT,S.LOGICAL_NOT],[S.MULTIPLICATION,S.MULTIPLICATION],[S.ADDITION,S.ADDITION],[S.LOGICAL_AND,S.LOGICAL_AND],[S.LOGICAL_OR,S.LOGICAL_OR]];this.isInitialized=!1;for(let b in S)a=S[b],typeof a!=="string"&&(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,"+
25
+ Object.getOwnPropertyNames(globalThis).join(","))}init(a){super.init(a);this.nameDB_?this.nameDB_.reset():this.nameDB_=new $.jj(this.RESERVED_WORDS_);this.nameDB_.setVariableMap(a.getVariableMap());this.nameDB_.populateVariables(a);this.nameDB_.populateProcedures(a);var b=[],c=$.Cd(a);for(let d=0;d<c.length;d++)b.push(this.nameDB_.getName(c[d],$.P.DEVELOPER_VARIABLE));a=$.Bd(a);for(c=0;c<a.length;c++)b.push(this.nameDB_.getName(a[c].getId(),$.P.VARIABLE));b.length&&(this.definitions_.variables="var "+
26
26
  b.join(", ")+";");this.isInitialized=!0}finish(a){var 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=!1){var d="";if(!a.outputConnection||!a.outputConnection.targetConnection){var e=a.getCommentText();
27
- e&&(e=$.cf(e,this.COMMENT_WRAP-3),d+=this.prefixLines(e+"\n","// "));for(let f=0;f<a.inputList.length;f++)a.inputList[f].type===$.he.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=S.NONE){a.workspace.options.oneBasedIndex&&c--;var f=a.workspace.options.oneBasedIndex?"1":"0",g=e;c>0?g=S.ADDITION:c<0?g=S.SUBTRACTION:
28
- d&&(g=S.UNARY_NEGATION);a=this.valueToCode(a,b,g)||f;if(c===0&&!d)return a;if($.df(a))return a=String(Number(a)+c),d&&(a=String(-Number(a))),a;c>0?a=`${a} + ${c}`:c<0&&(a=`${a} - ${-c}`);d&&(a=c?`-(${a})`:`-${a}`);Math.floor(e)>=Math.floor(g)&&(a=`(${a})`);return a}};var kr={};kr.controls_if=$q;kr.controls_ifelse=$q;kr.logic_boolean=function(a){return[a.getFieldValue("BOOL")==="TRUE"?"true":"false",S.ATOMIC]};kr.logic_compare=function(a,b){var c={EQ:"==",NEQ:"!=",LT:"<",LTE:"<=",GT:">",GTE:">="}[a.getFieldValue("OP")],d=c==="=="||c==="!="?S.EQUALITY:S.RELATIONAL,e=b.valueToCode(a,"A",d)||"0";a=b.valueToCode(a,"B",d)||"0";return[e+" "+c+" "+a,d]};kr.logic_negate=function(a,b){var c=S.LOGICAL_NOT;return["!"+(b.valueToCode(a,"BOOL",c)||"true"),c]};
29
- kr.logic_null=function(){return["null",S.ATOMIC]};kr.logic_operation=function(a,b){var c=a.getFieldValue("OP")==="AND"?"&&":"||",d=c==="&&"?S.LOGICAL_AND:S.LOGICAL_OR,e=b.valueToCode(a,"A",d);a=b.valueToCode(a,"B",d);e||a?(b=c==="&&"?"true":"false",e||(e=b),a||(a=b)):a=e="false";return[e+" "+c+" "+a,d]};
30
- kr.logic_ternary=function(a,b){var c=b.valueToCode(a,"IF",S.CONDITIONAL)||"false",d=b.valueToCode(a,"THEN",S.CONDITIONAL)||"null";a=b.valueToCode(a,"ELSE",S.CONDITIONAL)||"null";return[c+" ? "+d+" : "+a,S.CONDITIONAL]};var lr={controls_flow_statements:function(a,b){var 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){let d=a.getSurroundLoop();d&&!d.suppressPrefixSuffix&&(c+=b.injectId(b.STATEMENT_PREFIX,d))}switch(a.getFieldValue("FLOW")){case "BREAK":return c+"break;\n";case "CONTINUE":return c+"continue;\n"}throw Error("Unknown flow statement.");},controls_for:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR")),
31
- d=b.valueToCode(a,"FROM",S.ASSIGNMENT)||"0",e=b.valueToCode(a,"TO",S.ASSIGNMENT)||"0",f=b.valueToCode(a,"BY",S.ASSIGNMENT)||"1",g=b.statementToCode(a,"DO");g=b.addLoopTrap(g,a);if($.df(d)&&$.df(e)&&$.df(f))b=Number(d)<=Number(e),a="for ("+c+" = "+d+"; "+c+(b?" <= ":" >= ")+e+"; "+c,c=Math.abs(Number(f)),a=c===1?a+(b?"++":"--"):a+((b?" += ":" -= ")+c),a+=") {\n"+g+"}\n";else{a="";let h=d;d.match(/^\w+$/)||$.df(d)||(h=b.nameDB_.getDistinctName(c+"_start",$.P.VARIABLE),a+="var "+h+" = "+d+";\n");d=e;
32
- e.match(/^\w+$/)||$.df(e)||(d=b.nameDB_.getDistinctName(c+"_end",$.P.VARIABLE),a+="var "+d+" = "+e+";\n");e=b.nameDB_.getDistinctName(c+"_inc",$.P.VARIABLE);a+="var "+e+" = ";a=$.df(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+" = "+h+"; "+e+" >= 0 ? "+c+" <= "+d+" : "+c+" >= "+d+"; "+c+" += "+e+") {\n"+g+"}\n")}return a},controls_forEach:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR")),d=b.valueToCode(a,
33
- "LIST",S.ASSIGNMENT)||"[]",e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);a="";var f=d;d.match(/^\w+$/)||(f=b.nameDB_.getDistinctName(c+"_list",$.P.VARIABLE),a+="var "+f+" = "+d+";\n");d=b.nameDB_.getDistinctName(c+"_index",$.P.VARIABLE);e=b.INDENT+c+" = "+f+"["+d+"];\n"+e;return a+("for (var "+d+" in "+f+") {\n"+e+"}\n")}};lr.controls_repeat=ar;lr.controls_repeat_ext=ar;
34
- lr.controls_whileUntil=function(a,b){var c=a.getFieldValue("MODE")==="UNTIL",d=b.valueToCode(a,"BOOL",c?S.LOGICAL_NOT:S.NONE)||"false",e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);c&&(d="!"+d);return"while ("+d+") {\n"+e+"}\n"};var mr={math_arithmetic:function(a,b){var c={ADD:[" + ",S.ADDITION],MINUS:[" - ",S.SUBTRACTION],MULTIPLY:[" * ",S.MULTIPLICATION],DIVIDE:[" / ",S.DIVISION],POWER:[null,S.NONE]}[a.getFieldValue("OP")],d=c[0];c=c[1];var e=b.valueToCode(a,"A",c)||"0";a=b.valueToCode(a,"B",c)||"0";return d?[e+d+a,c]:["Math.pow("+e+", "+a+")",S.FUNCTION_CALL]},math_atan2:function(a,b){var c=b.valueToCode(a,"X",S.NONE)||"0";return["Math.atan2("+(b.valueToCode(a,"Y",S.NONE)||"0")+", "+c+") / Math.PI * 180",S.DIVISION]},
27
+ e&&(e=$.xf(e,this.COMMENT_WRAP-3),d+=this.prefixLines(e+"\n","// "));for(let f=0;f<a.inputList.length;f++)a.inputList[f].type===$.ie.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=S.NONE){a.workspace.options.oneBasedIndex&&c--;var f=a.workspace.options.oneBasedIndex?"1":"0",g=e;c>0?g=S.ADDITION:c<0?g=S.SUBTRACTION:
28
+ d&&(g=S.UNARY_NEGATION);a=this.valueToCode(a,b,g)||f;if(c===0&&!d)return a;if($.yf(a))return a=String(Number(a)+c),d&&(a=String(-Number(a))),a;c>0?a=`${a} + ${c}`:c<0&&(a=`${a} - ${-c}`);d&&(a=c?`-(${a})`:`-${a}`);Math.floor(e)>=Math.floor(g)&&(a=`(${a})`);return a}};var ur={};ur.controls_if=jr;ur.controls_ifelse=jr;ur.logic_boolean=function(a){return[a.getFieldValue("BOOL")==="TRUE"?"true":"false",S.ATOMIC]};ur.logic_compare=function(a,b){var c={EQ:"==",NEQ:"!=",LT:"<",LTE:"<=",GT:">",GTE:">="}[a.getFieldValue("OP")],d=c==="=="||c==="!="?S.EQUALITY:S.RELATIONAL,e=b.valueToCode(a,"A",d)||"0";a=b.valueToCode(a,"B",d)||"0";return[e+" "+c+" "+a,d]};ur.logic_negate=function(a,b){var c=S.LOGICAL_NOT;return["!"+(b.valueToCode(a,"BOOL",c)||"true"),c]};
29
+ ur.logic_null=function(){return["null",S.ATOMIC]};ur.logic_operation=function(a,b){var c=a.getFieldValue("OP")==="AND"?"&&":"||",d=c==="&&"?S.LOGICAL_AND:S.LOGICAL_OR,e=b.valueToCode(a,"A",d);a=b.valueToCode(a,"B",d);e||a?(b=c==="&&"?"true":"false",e||(e=b),a||(a=b)):a=e="false";return[e+" "+c+" "+a,d]};
30
+ ur.logic_ternary=function(a,b){var c=b.valueToCode(a,"IF",S.CONDITIONAL)||"false",d=b.valueToCode(a,"THEN",S.CONDITIONAL)||"null";a=b.valueToCode(a,"ELSE",S.CONDITIONAL)||"null";return[c+" ? "+d+" : "+a,S.CONDITIONAL]};var vr={controls_flow_statements:function(a,b){var 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){let d=a.getSurroundLoop();d&&!d.suppressPrefixSuffix&&(c+=b.injectId(b.STATEMENT_PREFIX,d))}switch(a.getFieldValue("FLOW")){case "BREAK":return c+"break;\n";case "CONTINUE":return c+"continue;\n"}throw Error("Unknown flow statement.");},controls_for:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR")),
31
+ d=b.valueToCode(a,"FROM",S.ASSIGNMENT)||"0",e=b.valueToCode(a,"TO",S.ASSIGNMENT)||"0",f=b.valueToCode(a,"BY",S.ASSIGNMENT)||"1",g=b.statementToCode(a,"DO");g=b.addLoopTrap(g,a);if($.yf(d)&&$.yf(e)&&$.yf(f))b=Number(d)<=Number(e),a="for ("+c+" = "+d+"; "+c+(b?" <= ":" >= ")+e+"; "+c,c=Math.abs(Number(f)),a=c===1?a+(b?"++":"--"):a+((b?" += ":" -= ")+c),a+=") {\n"+g+"}\n";else{a="";let h=d;d.match(/^\w+$/)||$.yf(d)||(h=b.nameDB_.getDistinctName(c+"_start",$.P.VARIABLE),a+="var "+h+" = "+d+";\n");d=e;
32
+ e.match(/^\w+$/)||$.yf(e)||(d=b.nameDB_.getDistinctName(c+"_end",$.P.VARIABLE),a+="var "+d+" = "+e+";\n");e=b.nameDB_.getDistinctName(c+"_inc",$.P.VARIABLE);a+="var "+e+" = ";a=$.yf(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+" = "+h+"; "+e+" >= 0 ? "+c+" <= "+d+" : "+c+" >= "+d+"; "+c+" += "+e+") {\n"+g+"}\n")}return a},controls_forEach:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR")),d=b.valueToCode(a,
33
+ "LIST",S.ASSIGNMENT)||"[]",e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);a="";var f=d;d.match(/^\w+$/)||(f=b.nameDB_.getDistinctName(c+"_list",$.P.VARIABLE),a+="var "+f+" = "+d+";\n");d=b.nameDB_.getDistinctName(c+"_index",$.P.VARIABLE);e=b.INDENT+c+" = "+f+"["+d+"];\n"+e;return a+("for (var "+d+" in "+f+") {\n"+e+"}\n")}};vr.controls_repeat=kr;vr.controls_repeat_ext=kr;
34
+ vr.controls_whileUntil=function(a,b){var c=a.getFieldValue("MODE")==="UNTIL",d=b.valueToCode(a,"BOOL",c?S.LOGICAL_NOT:S.NONE)||"false",e=b.statementToCode(a,"DO");e=b.addLoopTrap(e,a);c&&(d="!"+d);return"while ("+d+") {\n"+e+"}\n"};var wr={math_arithmetic:function(a,b){var c={ADD:[" + ",S.ADDITION],MINUS:[" - ",S.SUBTRACTION],MULTIPLY:[" * ",S.MULTIPLICATION],DIVIDE:[" / ",S.DIVISION],POWER:[null,S.NONE]}[a.getFieldValue("OP")],d=c[0];c=c[1];var e=b.valueToCode(a,"A",c)||"0";a=b.valueToCode(a,"B",c)||"0";return d?[e+d+a,c]:["Math.pow("+e+", "+a+")",S.FUNCTION_CALL]},math_atan2:function(a,b){var c=b.valueToCode(a,"X",S.NONE)||"0";return["Math.atan2("+(b.valueToCode(a,"Y",S.NONE)||"0")+", "+c+") / Math.PI * 180",S.DIVISION]},
35
35
  math_change:function(a,b){var c=b.valueToCode(a,"DELTA",S.ADDITION)||"0";a=b.getVariableName(a.getFieldValue("VAR"));return a+" = (typeof "+a+" === 'number' ? "+a+" : 0) + "+c+";\n"},math_constant:function(a){return{PI:["Math.PI",S.MEMBER],E:["Math.E",S.MEMBER],GOLDEN_RATIO:["(1 + Math.sqrt(5)) / 2",S.DIVISION],SQRT2:["Math.SQRT2",S.MEMBER],SQRT1_2:["Math.SQRT1_2",S.MEMBER],INFINITY:["Infinity",S.ATOMIC]}[a.getFieldValue("CONSTANT")]},math_constrain:function(a,b){var c=b.valueToCode(a,"VALUE",S.NONE)||
36
36
  "0",d=b.valueToCode(a,"LOW",S.NONE)||"0";a=b.valueToCode(a,"HIGH",S.NONE)||"Infinity";return["Math.min(Math.max("+c+", "+d+"), "+a+")",S.FUNCTION_CALL]},math_modulo:function(a,b){var c=b.valueToCode(a,"DIVIDEND",S.MODULUS)||"0";a=b.valueToCode(a,"DIVISOR",S.MODULUS)||"0";return[c+" % "+a,S.MODULUS]},math_number:function(a){a=Number(a.getFieldValue("NUM"));return[String(a),a>=0?S.ATOMIC:S.UNARY_NEGATION]},math_number_property:function(a,b){var c={EVEN:[" % 2 === 0",S.MODULUS,S.EQUALITY],ODD:[" % 2 === 1",
37
37
  S.MODULUS,S.EQUALITY],WHOLE:[" % 1 === 0",S.MODULUS,S.EQUALITY],POSITIVE:[" > 0",S.RELATIONAL,S.RELATIONAL],NEGATIVE:[" < 0",S.RELATIONAL,S.RELATIONAL],DIVISIBLE_BY:[null,S.MODULUS,S.EQUALITY],PRIME:[null,S.NONE,S.FUNCTION_CALL]},d=a.getFieldValue("PROPERTY"),[e,f,g]=c[d];c=b.valueToCode(a,"NUMBER_TO_CHECK",f)||"0";d==="PRIME"?a=b.provideFunction_("mathIsPrime",`
@@ -125,8 +125,8 @@ function ${b.FUNCTION_NAME_PLACEHOLDER_}(a, b) {
125
125
  }
126
126
  return Math.floor(Math.random() * (b - a + 1) + a);
127
127
  }
128
- `)+"("+c+", "+a+")",S.FUNCTION_CALL]}};mr.math_round=br;mr.math_single=br;mr.math_trig=br;var nr={procedures_callnoreturn:function(a,b){return b.forBlock.procedures_callreturn(a,b)[0]+";\n"},procedures_callreturn:function(a,b){var c=b.getProcedureName(a.getFieldValue("NAME")),d=[],e=a.getVarModels();for(let f=0;f<e.length;f++)d[f]=b.valueToCode(a,"ARG"+f,S.NONE)||"null";return[c+"("+d.join(", ")+")",S.FUNCTION_CALL]}};nr.procedures_defnoreturn=cr;nr.procedures_defreturn=cr;
129
- nr.procedures_ifreturn=function(a,b){var c="if ("+(b.valueToCode(a,"CONDITION",S.NONE)||"false")+") {\n";b.STATEMENT_SUFFIX&&(c+=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT));a.hasReturnValue_?(a=b.valueToCode(a,"VALUE",S.NONE)||"null",c+=b.INDENT+"return "+a+";\n"):c+=b.INDENT+"return;\n";return c+"}\n"};var dr=/^\s*'([^']|\\')*'\s*$/,or={text:function(a,b){return[b.quote_(a.getFieldValue("TEXT")),S.ATOMIC]},text_append:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR"));a=b.valueToCode(a,"TEXT",S.NONE)||"''";return c+" += "+er(a)[0]+";\n"},text_changeCase:function(a,b){var c={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=b.valueToCode(a,"TEXT",c?S.MEMBER:S.NONE)||"''";return[c?a+c:b.provideFunction_("textToTitleCase",`
128
+ `)+"("+c+", "+a+")",S.FUNCTION_CALL]}};wr.math_round=lr;wr.math_single=lr;wr.math_trig=lr;var xr={procedures_callnoreturn:function(a,b){return b.forBlock.procedures_callreturn(a,b)[0]+";\n"},procedures_callreturn:function(a,b){var c=b.getProcedureName(a.getFieldValue("NAME")),d=[],e=a.getVarModels();for(let f=0;f<e.length;f++)d[f]=b.valueToCode(a,"ARG"+f,S.NONE)||"null";return[c+"("+d.join(", ")+")",S.FUNCTION_CALL]}};xr.procedures_defnoreturn=mr;xr.procedures_defreturn=mr;
129
+ xr.procedures_ifreturn=function(a,b){var c="if ("+(b.valueToCode(a,"CONDITION",S.NONE)||"false")+") {\n";b.STATEMENT_SUFFIX&&(c+=b.prefixLines(b.injectId(b.STATEMENT_SUFFIX,a),b.INDENT));a.hasReturnValue_?(a=b.valueToCode(a,"VALUE",S.NONE)||"null",c+=b.INDENT+"return "+a+";\n"):c+=b.INDENT+"return;\n";return c+"}\n"};var nr=/^\s*'([^']|\\')*'\s*$/,yr={text:function(a,b){return[b.quote_(a.getFieldValue("TEXT")),S.ATOMIC]},text_append:function(a,b){var c=b.getVariableName(a.getFieldValue("VAR"));a=b.valueToCode(a,"TEXT",S.NONE)||"''";return c+" += "+or(a)[0]+";\n"},text_changeCase:function(a,b){var c={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=b.valueToCode(a,"TEXT",c?S.MEMBER:S.NONE)||"''";return[c?a+c:b.provideFunction_("textToTitleCase",`
130
130
  function ${b.FUNCTION_NAME_PLACEHOLDER_}(str) {
131
131
  return str.replace(/\\S+/g,
132
132
  function(txt) {return txt[0].toUpperCase() + txt.substring(1).toLowerCase();});
@@ -148,19 +148,19 @@ function ${b.FUNCTION_NAME_PLACEHOLDER_}(haystack, needle) {
148
148
  `)+"("+c+", "+a+")",S.FUNCTION_CALL]},text_getSubstring:function(a,b){var c={FIRST:"First",LAST:"Last",FROM_START:"FromStart",FROM_END:"FromEnd"},d=a.getFieldValue("WHERE1"),e=a.getFieldValue("WHERE2"),f=d!=="FROM_END"&&d!=="LAST"&&e!=="FROM_END"&&e!=="LAST",g=b.valueToCode(a,"STRING",f?S.MEMBER:S.NONE)||"''";if(d==="FIRST"&&e==="LAST")return[g,S.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,S.SUBTRACTION);
149
149
  c=g+".length - "+c;break;case "FIRST":c="0";break;default:throw Error("Unhandled option (text_getSubstring).");}switch(e){case "FROM_START":b=b.getAdjusted(a,"AT2",1);break;case "FROM_END":b=b.getAdjusted(a,"AT2",0,!1,S.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],`
150
150
  function ${b.FUNCTION_NAME_PLACEHOLDER_}(sequence${d==="FROM_END"||d==="FROM_START"?", at1":""}${e==="FROM_END"||e==="FROM_START"?", at2":""}) {
151
- var start = ${fr("sequence",d,"at1")};
152
- var end = ${fr("sequence",e,"at2")} + 1;
151
+ var start = ${pr("sequence",d,"at1")};
152
+ var end = ${pr("sequence",e,"at2")} + 1;
153
153
  return sequence.slice(start, end);
154
154
  }
155
155
  `)+"("+g+(d==="FROM_END"||d==="FROM_START"?", "+f:"")+(e==="FROM_END"||e==="FROM_START"?", "+a:"")+")";return[g,S.FUNCTION_CALL]},text_indexOf:function(a,b){var c=a.getFieldValue("END")==="FIRST"?"indexOf":"lastIndexOf",d=b.valueToCode(a,"FIND",S.NONE)||"''";b=(b.valueToCode(a,"VALUE",S.MEMBER)||"''")+"."+c+"("+d+")";return a.workspace.options.oneBasedIndex?[b+" + 1",S.ADDITION]:[b,S.FUNCTION_CALL]},text_isEmpty:function(a,b){return["!"+(b.valueToCode(a,"VALUE",S.MEMBER)||"''")+".length",S.LOGICAL_NOT]},
156
- text_join:function(a,b){switch(a.itemCount_){case 0:return["''",S.ATOMIC];case 1:return a=b.valueToCode(a,"ADD0",S.NONE)||"''",er(a);case 2:var c=b.valueToCode(a,"ADD0",S.NONE)||"''";a=b.valueToCode(a,"ADD1",S.NONE)||"''";return[er(c)[0]+" + "+er(a)[0],S.ADDITION];default:c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,S.NONE)||"''";return["["+c.join(",")+"].join('')",S.FUNCTION_CALL]}},text_length:function(a,b){return[(b.valueToCode(a,"VALUE",S.MEMBER)||"''")+".length",
157
- S.MEMBER]},text_print:function(a,b){return"window.alert("+(b.valueToCode(a,"TEXT",S.NONE)||"''")+");\n"}};or.text_prompt=gr;or.text_prompt_ext=gr;or.text_replace=function(a,b){var c=b.valueToCode(a,"TEXT",S.NONE)||"''",d=b.valueToCode(a,"FROM",S.NONE)||"''";a=b.valueToCode(a,"TO",S.NONE)||"''";return[b.provideFunction_("textReplace",`
156
+ text_join:function(a,b){switch(a.itemCount_){case 0:return["''",S.ATOMIC];case 1:return a=b.valueToCode(a,"ADD0",S.NONE)||"''",or(a);case 2:var c=b.valueToCode(a,"ADD0",S.NONE)||"''";a=b.valueToCode(a,"ADD1",S.NONE)||"''";return[or(c)[0]+" + "+or(a)[0],S.ADDITION];default:c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,S.NONE)||"''";return["["+c.join(",")+"].join('')",S.FUNCTION_CALL]}},text_length:function(a,b){return[(b.valueToCode(a,"VALUE",S.MEMBER)||"''")+".length",
157
+ S.MEMBER]},text_print:function(a,b){return"window.alert("+(b.valueToCode(a,"TEXT",S.NONE)||"''")+");\n"}};yr.text_prompt=qr;yr.text_prompt_ext=qr;yr.text_replace=function(a,b){var c=b.valueToCode(a,"TEXT",S.NONE)||"''",d=b.valueToCode(a,"FROM",S.NONE)||"''";a=b.valueToCode(a,"TO",S.NONE)||"''";return[b.provideFunction_("textReplace",`
158
158
  function ${b.FUNCTION_NAME_PLACEHOLDER_}(haystack, needle, replacement) {
159
159
  needle = needle.replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g, '\\\\$1')
160
160
  .replace(/\\x08/g, '\\\\x08');
161
161
  return haystack.replace(new RegExp(needle, 'g'), replacement);
162
162
  }
163
- `)+"("+c+", "+d+", "+a+")",S.FUNCTION_CALL]};or.text_reverse=function(a,b){return[(b.valueToCode(a,"TEXT",S.MEMBER)||"''")+".split('').reverse().join('')",S.FUNCTION_CALL]};or.text_trim=function(a,b){var c={LEFT:".replace(/^[\\s\\xa0]+/, '')",RIGHT:".replace(/[\\s\\xa0]+$/, '')",BOTH:".trim()"}[a.getFieldValue("MODE")];return[(b.valueToCode(a,"TEXT",S.MEMBER)||"''")+c,S.FUNCTION_CALL]};var pr={};pr.variables_get=hr;pr.variables_set=ir;var qr={};qr.variables_get_dynamic=hr;qr.variables_set_dynamic=ir;var rr=new jr,sr=Object.assign({},{lists_create_empty:function(){return["[]",S.ATOMIC]},lists_create_with:function(a,b){var c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,S.NONE)||"null";return["["+c.join(", ")+"]",S.ATOMIC]},lists_getIndex:function(a,b){var c=a.getFieldValue("MODE")||"GET",d=a.getFieldValue("WHERE")||"FROM_START",e=b.valueToCode(a,"VALUE",d==="RANDOM"?S.NONE:S.MEMBER)||"[]";switch(d){case "FIRST":if(c==="GET")return[e+"[0]",S.MEMBER];if(c==="GET_REMOVE")return[e+
163
+ `)+"("+c+", "+d+", "+a+")",S.FUNCTION_CALL]};yr.text_reverse=function(a,b){return[(b.valueToCode(a,"TEXT",S.MEMBER)||"''")+".split('').reverse().join('')",S.FUNCTION_CALL]};yr.text_trim=function(a,b){var c={LEFT:".replace(/^[\\s\\xa0]+/, '')",RIGHT:".replace(/[\\s\\xa0]+$/, '')",BOTH:".trim()"}[a.getFieldValue("MODE")];return[(b.valueToCode(a,"TEXT",S.MEMBER)||"''")+c,S.FUNCTION_CALL]};var zr={};zr.variables_get=rr;zr.variables_set=sr;var Ar={};Ar.variables_get_dynamic=rr;Ar.variables_set_dynamic=sr;var Br=new tr,Cr=Object.assign({},{lists_create_empty:function(){return["[]",S.ATOMIC]},lists_create_with:function(a,b){var c=Array(a.itemCount_);for(let d=0;d<a.itemCount_;d++)c[d]=b.valueToCode(a,"ADD"+d,S.NONE)||"null";return["["+c.join(", ")+"]",S.ATOMIC]},lists_getIndex:function(a,b){var c=a.getFieldValue("MODE")||"GET",d=a.getFieldValue("WHERE")||"FROM_START",e=b.valueToCode(a,"VALUE",d==="RANDOM"?S.NONE:S.MEMBER)||"[]";switch(d){case "FIRST":if(c==="GET")return[e+"[0]",S.MEMBER];if(c==="GET_REMOVE")return[e+
164
164
  ".shift()",S.MEMBER];if(c==="REMOVE")return e+".shift();\n";break;case "LAST":if(c==="GET")return[e+".slice(-1)[0]",S.MEMBER];if(c==="GET_REMOVE")return[e+".pop()",S.MEMBER];if(c==="REMOVE")return e+".pop();\n";break;case "FROM_START":a=b.getAdjusted(a,"AT");if(c==="GET")return[e+"["+a+"]",S.MEMBER];if(c==="GET_REMOVE")return[e+".splice("+a+", 1)[0]",S.FUNCTION_CALL];if(c==="REMOVE")return e+".splice("+a+", 1);\n";break;case "FROM_END":a=b.getAdjusted(a,"AT",1,!0);if(c==="GET")return[e+".slice("+
165
165
  a+")[0]",S.FUNCTION_CALL];if(c==="GET_REMOVE")return[e+".splice("+a+", 1)[0]",S.FUNCTION_CALL];if(c==="REMOVE")return e+".splice("+a+", 1);";break;case "RANDOM":e=b.provideFunction_("listsGetRandomItem",`
166
166
  function ${b.FUNCTION_NAME_PLACEHOLDER_}(list, remove) {
@@ -175,8 +175,8 @@ function ${b.FUNCTION_NAME_PLACEHOLDER_}(list, remove) {
175
175
  b.getAdjusted(a,"AT1");break;case "FROM_END":c=b.getAdjusted(a,"AT1",1,!1,S.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=b.getAdjusted(a,"AT2",0,!1,S.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{let g=b.getAdjusted(a,"AT1");a=
176
176
  b.getAdjusted(a,"AT2");d=b.provideFunction_("subsequence"+c[e]+c[f],`
177
177
  function ${b.FUNCTION_NAME_PLACEHOLDER_}(sequence${e==="FROM_END"||e==="FROM_START"?", at1":""}${f==="FROM_END"||f==="FROM_START"?", at2":""}) {
178
- var start = ${Zq("sequence",e,"at1")};
179
- var end = ${Zq("sequence",f,"at2")} + 1;
178
+ var start = ${ir("sequence",e,"at1")};
179
+ var end = ${ir("sequence",f,"at2")} + 1;
180
180
  return sequence.slice(start, end);
181
181
  }
182
182
  `)+"("+d+(e==="FROM_END"||e==="FROM_START"?", "+g:"")+(f==="FROM_END"||f==="FROM_START"?", "+a:"")+")"}return[d,S.FUNCTION_CALL]},lists_indexOf:function(a,b){var c=a.getFieldValue("END")==="FIRST"?"indexOf":"lastIndexOf",d=b.valueToCode(a,"FIND",S.NONE)||"''";b=(b.valueToCode(a,"VALUE",S.MEMBER)||"[]")+"."+c+"("+d+")";return a.workspace.options.oneBasedIndex?[b+" + 1",S.ADDITION]:[b,S.FUNCTION_CALL]},lists_isEmpty:function(a,b){return["!"+(b.valueToCode(a,"VALUE",S.MEMBER)||"[]")+".length",S.LOGICAL_NOT]},
@@ -204,7 +204,7 @@ function ${b.FUNCTION_NAME_PLACEHOLDER_}(type, direction) {
204
204
  var compare = compareFuncs[type];
205
205
  return function(a, b) { return compare(a, b) * direction; };
206
206
  }
207
- `);return[c+".slice().sort("+b+'("'+a+'", '+d+"))",S.FUNCTION_CALL]},lists_split:function(a,b){var c=b.valueToCode(a,"INPUT",S.MEMBER);b=b.valueToCode(a,"DELIM",S.NONE)||"''";a=a.getFieldValue("MODE");if(a==="SPLIT")c||(c="''"),a="split";else if(a==="JOIN")c||(c="[]"),a="join";else throw Error("Unknown mode: "+a);return[c+"."+a+"("+b+")",S.FUNCTION_CALL]}},kr,lr,mr,nr,or,pr,qr);for(let a in sr)rr.forBlock[a]=sr[a];var tr={};tr.JavascriptGenerator=jr;tr.Order=S;tr.javascriptGenerator=rr;$.__chunk_javascript=tr;
207
+ `);return[c+".slice().sort("+b+'("'+a+'", '+d+"))",S.FUNCTION_CALL]},lists_split:function(a,b){var c=b.valueToCode(a,"INPUT",S.MEMBER);b=b.valueToCode(a,"DELIM",S.NONE)||"''";a=a.getFieldValue("MODE");if(a==="SPLIT")c||(c="''"),a="split";else if(a==="JOIN")c||(c="[]"),a="join";else throw Error("Unknown mode: "+a);return[c+"."+a+"("+b+")",S.FUNCTION_CALL]}},ur,vr,wr,xr,yr,zr,Ar);for(let a in Cr)Br.forBlock[a]=Cr[a];var Dr={};Dr.JavascriptGenerator=tr;Dr.Order=S;Dr.javascriptGenerator=Br;$.__chunk_javascript=Dr;
208
208
  $.__chunk_javascript.__namespace__=$;
209
209
  return $.__chunk_javascript;
210
210
  }));