From d6e415ea7406d332a8ebdb4086ca5d17b43545b5 Mon Sep 17 00:00:00 2001 From: alschmiedt Date: Thu, 31 Mar 2022 08:30:20 -0700 Subject: [PATCH] release: rebuild --- blockly_compressed.js | 1333 +++++++++++++++++----------------- blockly_compressed.js.map | 2 +- blocks_compressed.js | 287 ++++---- blocks_compressed.js.map | 2 +- dart_compressed.js | 83 +-- dart_compressed.js.map | 2 +- javascript_compressed.js | 76 +- javascript_compressed.js.map | 2 +- lua_compressed.js | 81 +-- lua_compressed.js.map | 2 +- php_compressed.js | 80 +- php_compressed.js.map | 2 +- python_compressed.js | 51 +- python_compressed.js.map | 2 +- 14 files changed, 1002 insertions(+), 1003 deletions(-) diff --git a/blockly_compressed.js b/blockly_compressed.js index 5397c2f95..6b95d5457 100644 --- a/blockly_compressed.js +++ b/blockly_compressed.js @@ -7,76 +7,89 @@ } else if (typeof exports === 'object') { // Node.js module.exports = factory(); } else { // Browser - root.Blockly = factory(); + var factoryExports = factory(); + root.Blockly = factoryExports; } }(this, function() { -const $={}; +var $={}; /* Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.createTemplateTagFirstArg=function(a){return a.raw=a};$jscomp.createTemplateTagFirstArgWithRaw=function(a,b){a.raw=b;return a};$jscomp.arrayIteratorImpl=function(a){var b=0;return function(){return b>>0,$jscomp.propertyToPolyfillSymbol[e]=$jscomp.IS_SYMBOL_NATIVE? -$jscomp.global.Symbol(e):$jscomp.POLYFILL_PREFIX+c+"$"+e),$jscomp.defineProperty(d,$jscomp.propertyToPolyfillSymbol[e],{configurable:!0,writable:!0,value:b})))};$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c=f}},"es6","es3");$jscomp.initSymbol=function(){}; -$jscomp.polyfill("Symbol",function(a){if(a)return a;var b=function(f,g){this.$jscomp$symbol$id_=f;$jscomp.defineProperty(this,"description",{configurable:!0,writable:!0,value:g})};b.prototype.toString=function(){return this.$jscomp$symbol$id_};var c="jscomp_symbol_"+(1E9*Math.random()>>>0)+"_",d=0,e=function(f){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new b(c+(f||"")+"_"+d++,f)};return e},"es6","es3"); -$jscomp.polyfill("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;cc&&(c=Math.max(0,e+c));if(null==d||d>e)d=e;d=Number(d);0>d&&(d=Math.max(0,e+d));for(c=Number(c||0);cc&&(c=Math.max(c+e,0));c>>/g,a),module$exports$Blockly$Css.content="",a=document.createElement("style"),a.id="blockly-common-style",b=document.createTextNode(b),a.appendChild(b),document.head.insertBefore(a,document.head.firstChild)))};module$exports$Blockly$Css.content='\n .blocklySvg {\n background-color: #fff;\n outline: none;\n overflow: hidden; /* IE overflows by default. */\n position: absolute;\n display: block;\n }\n\n .blocklyWidgetDiv {\n display: none;\n position: absolute;\n z-index: 99999; /* big value for bootstrap3 compatibility */\n }\n\n .injectionDiv {\n height: 100%;\n position: relative;\n overflow: hidden; /* So blocks in drag surface disappear at edges */\n touch-action: none;\n }\n\n .blocklyNonSelectable {\n user-select: none;\n -ms-user-select: none;\n -webkit-user-select: none;\n }\n\n .blocklyWsDragSurface {\n display: none;\n position: absolute;\n top: 0;\n left: 0;\n }\n\n /* Added as a separate rule with multiple classes to make it more specific\n than a bootstrap rule that selects svg:root. See issue #1275 for context.\n */\n .blocklyWsDragSurface.blocklyOverflowVisible {\n overflow: visible;\n }\n\n .blocklyBlockDragSurface {\n display: none;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow: visible !important;\n z-index: 50; /* Display below toolbox, but above everything else. */\n }\n\n .blocklyBlockCanvas.blocklyCanvasTransitioning,\n .blocklyBubbleCanvas.blocklyCanvasTransitioning {\n transition: transform .5s;\n }\n\n .blocklyTooltipDiv {\n background-color: #ffffc7;\n border: 1px solid #ddc;\n box-shadow: 4px 4px 20px 1px rgba(0,0,0,.15);\n color: #000;\n display: none;\n font: 9pt sans-serif;\n opacity: .9;\n padding: 2px;\n position: absolute;\n z-index: 100000; /* big value for bootstrap3 compatibility */\n }\n\n .blocklyDropDownDiv {\n position: absolute;\n left: 0;\n top: 0;\n z-index: 1000;\n display: none;\n border: 1px solid;\n border-color: #dadce0;\n background-color: #fff;\n border-radius: 2px;\n padding: 4px;\n box-shadow: 0 0 3px 1px rgba(0,0,0,.3);\n }\n\n .blocklyDropDownDiv.blocklyFocused {\n box-shadow: 0 0 6px 1px rgba(0,0,0,.3);\n }\n\n .blocklyDropDownContent {\n max-height: 300px; // @todo: spec for maximum height.\n overflow: auto;\n overflow-x: hidden;\n position: relative;\n }\n\n .blocklyDropDownArrow {\n position: absolute;\n left: 0;\n top: 0;\n width: 16px;\n height: 16px;\n z-index: -1;\n background-color: inherit;\n border-color: inherit;\n }\n\n .blocklyDropDownButton {\n display: inline-block;\n float: left;\n padding: 0;\n margin: 4px;\n border-radius: 4px;\n outline: none;\n border: 1px solid;\n transition: box-shadow .1s;\n cursor: pointer;\n }\n\n .blocklyArrowTop {\n border-top: 1px solid;\n border-left: 1px solid;\n border-top-left-radius: 4px;\n border-color: inherit;\n }\n\n .blocklyArrowBottom {\n border-bottom: 1px solid;\n border-right: 1px solid;\n border-bottom-right-radius: 4px;\n border-color: inherit;\n }\n\n .blocklyResizeSE {\n cursor: se-resize;\n fill: #aaa;\n }\n\n .blocklyResizeSW {\n cursor: sw-resize;\n fill: #aaa;\n }\n\n .blocklyResizeLine {\n stroke: #515A5A;\n stroke-width: 1;\n }\n\n .blocklyHighlightedConnectionPath {\n fill: none;\n stroke: #fc3;\n stroke-width: 4px;\n }\n\n .blocklyPathLight {\n fill: none;\n stroke-linecap: round;\n stroke-width: 1;\n }\n\n .blocklySelected>.blocklyPathLight {\n display: none;\n }\n\n .blocklyDraggable {\n /* backup for browsers (e.g. IE11) that don\'t support grab */\n cursor: url("<<>>/handopen.cur"), auto;\n cursor: grab;\n cursor: -webkit-grab;\n }\n\n /* backup for browsers (e.g. IE11) that don\'t support grabbing */\n .blocklyDragging {\n /* backup for browsers (e.g. IE11) that don\'t support grabbing */\n cursor: url("<<>>/handclosed.cur"), auto;\n cursor: grabbing;\n cursor: -webkit-grabbing;\n }\n\n /* Changes cursor on mouse down. Not effective in Firefox because of\n https://bugzilla.mozilla.org/show_bug.cgi?id=771241 */\n .blocklyDraggable:active {\n /* backup for browsers (e.g. IE11) that don\'t support grabbing */\n cursor: url("<<>>/handclosed.cur"), auto;\n cursor: grabbing;\n cursor: -webkit-grabbing;\n }\n\n /* Change the cursor on the whole drag surface in case the mouse gets\n ahead of block during a drag. This way the cursor is still a closed hand.\n */\n .blocklyBlockDragSurface .blocklyDraggable {\n /* backup for browsers (e.g. IE11) that don\'t support grabbing */\n cursor: url("<<>>/handclosed.cur"), auto;\n cursor: grabbing;\n cursor: -webkit-grabbing;\n }\n\n .blocklyDragging.blocklyDraggingDelete {\n cursor: url("<<>>/handdelete.cur"), auto;\n }\n\n .blocklyDragging>.blocklyPath,\n .blocklyDragging>.blocklyPathLight {\n fill-opacity: .8;\n stroke-opacity: .8;\n }\n\n .blocklyDragging>.blocklyPathDark {\n display: none;\n }\n\n .blocklyDisabled>.blocklyPath {\n fill-opacity: .5;\n stroke-opacity: .5;\n }\n\n .blocklyDisabled>.blocklyPathLight,\n .blocklyDisabled>.blocklyPathDark {\n display: none;\n }\n\n .blocklyInsertionMarker>.blocklyPath,\n .blocklyInsertionMarker>.blocklyPathLight,\n .blocklyInsertionMarker>.blocklyPathDark {\n fill-opacity: .2;\n stroke: none;\n }\n\n .blocklyMultilineText {\n font-family: monospace;\n }\n\n .blocklyNonEditableText>text {\n pointer-events: none;\n }\n\n .blocklyFlyout {\n position: absolute;\n z-index: 20;\n }\n\n .blocklyText text {\n cursor: default;\n }\n\n /*\n Don\'t allow users to select text. It gets annoying when trying to\n drag a block and selected text moves instead.\n */\n .blocklySvg text,\n .blocklyBlockDragSurface text {\n user-select: none;\n -ms-user-select: none;\n -webkit-user-select: none;\n cursor: inherit;\n }\n\n .blocklyHidden {\n display: none;\n }\n\n .blocklyFieldDropdown:not(.blocklyHidden) {\n display: block;\n }\n\n .blocklyIconGroup {\n cursor: default;\n }\n\n .blocklyIconGroup:not(:hover),\n .blocklyIconGroupReadonly {\n opacity: .6;\n }\n\n .blocklyIconShape {\n fill: #00f;\n stroke: #fff;\n stroke-width: 1px;\n }\n\n .blocklyIconSymbol {\n fill: #fff;\n }\n\n .blocklyMinimalBody {\n margin: 0;\n padding: 0;\n }\n\n .blocklyHtmlInput {\n border: none;\n border-radius: 4px;\n height: 100%;\n margin: 0;\n outline: none;\n padding: 0;\n width: 100%;\n text-align: center;\n display: block;\n box-sizing: border-box;\n }\n\n /* Edge and IE introduce a close icon when the input value is longer than a\n certain length. This affects our sizing calculations of the text input.\n Hiding the close icon to avoid that. */\n .blocklyHtmlInput::-ms-clear {\n display: none;\n }\n\n .blocklyMainBackground {\n stroke-width: 1;\n stroke: #c6c6c6; /* Equates to #ddd due to border being off-pixel. */\n }\n\n .blocklyMutatorBackground {\n fill: #fff;\n stroke: #ddd;\n stroke-width: 1;\n }\n\n .blocklyFlyoutBackground {\n fill: #ddd;\n fill-opacity: .8;\n }\n\n .blocklyMainWorkspaceScrollbar {\n z-index: 20;\n }\n\n .blocklyFlyoutScrollbar {\n z-index: 30;\n }\n\n .blocklyScrollbarHorizontal,\n .blocklyScrollbarVertical {\n position: absolute;\n outline: none;\n }\n\n .blocklyScrollbarBackground {\n opacity: 0;\n }\n\n .blocklyScrollbarHandle {\n fill: #ccc;\n }\n\n .blocklyScrollbarBackground:hover+.blocklyScrollbarHandle,\n .blocklyScrollbarHandle:hover {\n fill: #bbb;\n }\n\n /* Darken flyout scrollbars due to being on a grey background. */\n /* By contrast, workspace scrollbars are on a white background. */\n .blocklyFlyout .blocklyScrollbarHandle {\n fill: #bbb;\n }\n\n .blocklyFlyout .blocklyScrollbarBackground:hover+.blocklyScrollbarHandle,\n .blocklyFlyout .blocklyScrollbarHandle:hover {\n fill: #aaa;\n }\n\n .blocklyInvalidInput {\n background: #faa;\n }\n\n .blocklyVerticalMarker {\n stroke-width: 3px;\n fill: rgba(255,255,255,.5);\n pointer-events: none;\n }\n\n .blocklyComputeCanvas {\n position: absolute;\n width: 0;\n height: 0;\n }\n\n .blocklyNoPointerEvents {\n pointer-events: none;\n }\n\n .blocklyContextMenu {\n border-radius: 4px;\n max-height: 100%;\n }\n\n .blocklyDropdownMenu {\n border-radius: 2px;\n padding: 0 !important;\n }\n\n .blocklyDropdownMenu .blocklyMenuItem {\n /* 28px on the left for icon or checkbox. */\n padding-left: 28px;\n }\n\n /* BiDi override for the resting state. */\n .blocklyDropdownMenu .blocklyMenuItemRtl {\n /* Flip left/right padding for BiDi. */\n padding-left: 5px;\n padding-right: 28px;\n }\n\n .blocklyWidgetDiv .blocklyMenu {\n background: #fff;\n border: 1px solid transparent;\n box-shadow: 0 0 3px 1px rgba(0,0,0,.3);\n font: normal 13px Arial, sans-serif;\n margin: 0;\n outline: none;\n padding: 4px 0;\n position: absolute;\n overflow-y: auto;\n overflow-x: hidden;\n max-height: 100%;\n z-index: 20000; /* Arbitrary, but some apps depend on it... */\n }\n\n .blocklyWidgetDiv .blocklyMenu.blocklyFocused {\n box-shadow: 0 0 6px 1px rgba(0,0,0,.3);\n }\n\n .blocklyDropDownDiv .blocklyMenu {\n background: inherit; /* Compatibility with gapi, reset from goog-menu */\n border: inherit; /* Compatibility with gapi, reset from goog-menu */\n font: normal 13px "Helvetica Neue", Helvetica, sans-serif;\n outline: none;\n position: relative; /* Compatibility with gapi, reset from goog-menu */\n z-index: 20000; /* Arbitrary, but some apps depend on it... */\n }\n\n /* State: resting. */\n .blocklyMenuItem {\n border: none;\n color: #000;\n cursor: pointer;\n list-style: none;\n margin: 0;\n /* 7em on the right for shortcut. */\n min-width: 7em;\n padding: 6px 15px;\n white-space: nowrap;\n }\n\n /* State: disabled. */\n .blocklyMenuItemDisabled {\n color: #ccc;\n cursor: inherit;\n }\n\n /* State: hover. */\n .blocklyMenuItemHighlight {\n background-color: rgba(0,0,0,.1);\n }\n\n /* State: selected/checked. */\n .blocklyMenuItemCheckbox {\n height: 16px;\n position: absolute;\n width: 16px;\n }\n\n .blocklyMenuItemSelected .blocklyMenuItemCheckbox {\n background: url(<<>>/sprites.png) no-repeat -48px -16px;\n float: left;\n margin-left: -24px;\n position: static; /* Scroll with the menu. */\n }\n\n .blocklyMenuItemRtl .blocklyMenuItemCheckbox {\n float: right;\n margin-right: -24px;\n }\n';var module$contents$Blockly$utils$string_wrapLine,module$contents$Blockly$utils$string_wrapScore,module$contents$Blockly$utils$string_wrapMutate,module$contents$Blockly$utils$string_wrapToText; +$.$jscomp=$.$jscomp||{};$.$jscomp.scope={};$.$jscomp.createTemplateTagFirstArg=function(a){return a.raw=a};$.$jscomp.createTemplateTagFirstArgWithRaw=function(a,b){a.raw=b;return a};$.$jscomp.arrayIteratorImpl=function(a){var b=0;return function(){return b>>0,$.$jscomp.propertyToPolyfillSymbol[e]= +$.$jscomp.IS_SYMBOL_NATIVE?$.$jscomp.global.Symbol(e):$.$jscomp.POLYFILL_PREFIX+c+"$"+e),$.$jscomp.defineProperty(d,$.$jscomp.propertyToPolyfillSymbol[e],{configurable:!0,writable:!0,value:b})))};$.$jscomp.assign=$.$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c=f}},"es6","es3");$.$jscomp.initSymbol=function(){}; +$.$jscomp.polyfill("Symbol",function(a){if(a)return a;var b=function(f,g){this.$jscomp$symbol$id_=f;$.$jscomp.defineProperty(this,"description",{configurable:!0,writable:!0,value:g})};b.prototype.toString=function(){return this.$jscomp$symbol$id_};var c="jscomp_symbol_"+(1E9*Math.random()>>>0)+"_",d=0,e=function(f){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new b(c+(f||"")+"_"+d++,f)};return e},"es6","es3"); +$.$jscomp.polyfill("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;cc&&(c=Math.max(0,e+c));if(null==d||d>e)d=e;d=Number(d);0>d&&(d=Math.max(0,e+d));for(c=Number(c||0);c>>/g,a),module$exports$Blockly$Css.content="",a=document.createElement("style"),a.id="blockly-common-style",b=document.createTextNode(b),a.appendChild(b),document.head.insertBefore(a,document.head.firstChild)))};module$exports$Blockly$Css.content='\n.blocklySvg {\n background-color: #fff;\n outline: none;\n overflow: hidden; /* IE overflows by default. */\n position: absolute;\n display: block;\n}\n\n.blocklyWidgetDiv {\n display: none;\n position: absolute;\n z-index: 99999; /* big value for bootstrap3 compatibility */\n}\n\n.injectionDiv {\n height: 100%;\n position: relative;\n overflow: hidden; /* So blocks in drag surface disappear at edges */\n touch-action: none;\n}\n\n.blocklyNonSelectable {\n user-select: none;\n -ms-user-select: none;\n -webkit-user-select: none;\n}\n\n.blocklyWsDragSurface {\n display: none;\n position: absolute;\n top: 0;\n left: 0;\n}\n\n/* Added as a separate rule with multiple classes to make it more specific\n than a bootstrap rule that selects svg:root. See issue #1275 for context.\n*/\n.blocklyWsDragSurface.blocklyOverflowVisible {\n overflow: visible;\n}\n\n.blocklyBlockDragSurface {\n display: none;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow: visible !important;\n z-index: 50; /* Display below toolbox, but above everything else. */\n}\n\n.blocklyBlockCanvas.blocklyCanvasTransitioning,\n.blocklyBubbleCanvas.blocklyCanvasTransitioning {\n transition: transform .5s;\n}\n\n.blocklyTooltipDiv {\n background-color: #ffffc7;\n border: 1px solid #ddc;\n box-shadow: 4px 4px 20px 1px rgba(0,0,0,.15);\n color: #000;\n display: none;\n font: 9pt sans-serif;\n opacity: .9;\n padding: 2px;\n position: absolute;\n z-index: 100000; /* big value for bootstrap3 compatibility */\n}\n\n.blocklyDropDownDiv {\n position: absolute;\n left: 0;\n top: 0;\n z-index: 1000;\n display: none;\n border: 1px solid;\n border-color: #dadce0;\n background-color: #fff;\n border-radius: 2px;\n padding: 4px;\n box-shadow: 0 0 3px 1px rgba(0,0,0,.3);\n}\n\n.blocklyDropDownDiv.blocklyFocused {\n box-shadow: 0 0 6px 1px rgba(0,0,0,.3);\n}\n\n.blocklyDropDownContent {\n max-height: 300px; // @todo: spec for maximum height.\n overflow: auto;\n overflow-x: hidden;\n position: relative;\n}\n\n.blocklyDropDownArrow {\n position: absolute;\n left: 0;\n top: 0;\n width: 16px;\n height: 16px;\n z-index: -1;\n background-color: inherit;\n border-color: inherit;\n}\n\n.blocklyDropDownButton {\n display: inline-block;\n float: left;\n padding: 0;\n margin: 4px;\n border-radius: 4px;\n outline: none;\n border: 1px solid;\n transition: box-shadow .1s;\n cursor: pointer;\n}\n\n.blocklyArrowTop {\n border-top: 1px solid;\n border-left: 1px solid;\n border-top-left-radius: 4px;\n border-color: inherit;\n}\n\n.blocklyArrowBottom {\n border-bottom: 1px solid;\n border-right: 1px solid;\n border-bottom-right-radius: 4px;\n border-color: inherit;\n}\n\n.blocklyResizeSE {\n cursor: se-resize;\n fill: #aaa;\n}\n\n.blocklyResizeSW {\n cursor: sw-resize;\n fill: #aaa;\n}\n\n.blocklyResizeLine {\n stroke: #515A5A;\n stroke-width: 1;\n}\n\n.blocklyHighlightedConnectionPath {\n fill: none;\n stroke: #fc3;\n stroke-width: 4px;\n}\n\n.blocklyPathLight {\n fill: none;\n stroke-linecap: round;\n stroke-width: 1;\n}\n\n.blocklySelected>.blocklyPathLight {\n display: none;\n}\n\n.blocklyDraggable {\n /* backup for browsers (e.g. IE11) that don\'t support grab */\n cursor: url("<<>>/handopen.cur"), auto;\n cursor: grab;\n cursor: -webkit-grab;\n}\n\n /* backup for browsers (e.g. IE11) that don\'t support grabbing */\n.blocklyDragging {\n /* backup for browsers (e.g. IE11) that don\'t support grabbing */\n cursor: url("<<>>/handclosed.cur"), auto;\n cursor: grabbing;\n cursor: -webkit-grabbing;\n}\n\n /* Changes cursor on mouse down. Not effective in Firefox because of\n https://bugzilla.mozilla.org/show_bug.cgi?id=771241 */\n.blocklyDraggable:active {\n /* backup for browsers (e.g. IE11) that don\'t support grabbing */\n cursor: url("<<>>/handclosed.cur"), auto;\n cursor: grabbing;\n cursor: -webkit-grabbing;\n}\n\n/* Change the cursor on the whole drag surface in case the mouse gets\n ahead of block during a drag. This way the cursor is still a closed hand.\n */\n.blocklyBlockDragSurface .blocklyDraggable {\n /* backup for browsers (e.g. IE11) that don\'t support grabbing */\n cursor: url("<<>>/handclosed.cur"), auto;\n cursor: grabbing;\n cursor: -webkit-grabbing;\n}\n\n.blocklyDragging.blocklyDraggingDelete {\n cursor: url("<<>>/handdelete.cur"), auto;\n}\n\n.blocklyDragging>.blocklyPath,\n.blocklyDragging>.blocklyPathLight {\n fill-opacity: .8;\n stroke-opacity: .8;\n}\n\n.blocklyDragging>.blocklyPathDark {\n display: none;\n}\n\n.blocklyDisabled>.blocklyPath {\n fill-opacity: .5;\n stroke-opacity: .5;\n}\n\n.blocklyDisabled>.blocklyPathLight,\n.blocklyDisabled>.blocklyPathDark {\n display: none;\n}\n\n.blocklyInsertionMarker>.blocklyPath,\n.blocklyInsertionMarker>.blocklyPathLight,\n.blocklyInsertionMarker>.blocklyPathDark {\n fill-opacity: .2;\n stroke: none;\n}\n\n.blocklyMultilineText {\n font-family: monospace;\n}\n\n.blocklyNonEditableText>text {\n pointer-events: none;\n}\n\n.blocklyFlyout {\n position: absolute;\n z-index: 20;\n}\n\n.blocklyText text {\n cursor: default;\n}\n\n/*\n Don\'t allow users to select text. It gets annoying when trying to\n drag a block and selected text moves instead.\n*/\n.blocklySvg text,\n.blocklyBlockDragSurface text {\n user-select: none;\n -ms-user-select: none;\n -webkit-user-select: none;\n cursor: inherit;\n}\n\n.blocklyHidden {\n display: none;\n}\n\n.blocklyFieldDropdown:not(.blocklyHidden) {\n display: block;\n}\n\n.blocklyIconGroup {\n cursor: default;\n}\n\n.blocklyIconGroup:not(:hover),\n.blocklyIconGroupReadonly {\n opacity: .6;\n}\n\n.blocklyIconShape {\n fill: #00f;\n stroke: #fff;\n stroke-width: 1px;\n}\n\n.blocklyIconSymbol {\n fill: #fff;\n}\n\n.blocklyMinimalBody {\n margin: 0;\n padding: 0;\n}\n\n.blocklyHtmlInput {\n border: none;\n border-radius: 4px;\n height: 100%;\n margin: 0;\n outline: none;\n padding: 0;\n width: 100%;\n text-align: center;\n display: block;\n box-sizing: border-box;\n}\n\n/* Edge and IE introduce a close icon when the input value is longer than a\n certain length. This affects our sizing calculations of the text input.\n Hiding the close icon to avoid that. */\n.blocklyHtmlInput::-ms-clear {\n display: none;\n}\n\n.blocklyMainBackground {\n stroke-width: 1;\n stroke: #c6c6c6; /* Equates to #ddd due to border being off-pixel. */\n}\n\n.blocklyMutatorBackground {\n fill: #fff;\n stroke: #ddd;\n stroke-width: 1;\n}\n\n.blocklyFlyoutBackground {\n fill: #ddd;\n fill-opacity: .8;\n}\n\n.blocklyMainWorkspaceScrollbar {\n z-index: 20;\n}\n\n.blocklyFlyoutScrollbar {\n z-index: 30;\n}\n\n.blocklyScrollbarHorizontal,\n.blocklyScrollbarVertical {\n position: absolute;\n outline: none;\n}\n\n.blocklyScrollbarBackground {\n opacity: 0;\n}\n\n.blocklyScrollbarHandle {\n fill: #ccc;\n}\n\n.blocklyScrollbarBackground:hover+.blocklyScrollbarHandle,\n.blocklyScrollbarHandle:hover {\n fill: #bbb;\n}\n\n/* Darken flyout scrollbars due to being on a grey background. */\n/* By contrast, workspace scrollbars are on a white background. */\n.blocklyFlyout .blocklyScrollbarHandle {\n fill: #bbb;\n}\n\n.blocklyFlyout .blocklyScrollbarBackground:hover+.blocklyScrollbarHandle,\n.blocklyFlyout .blocklyScrollbarHandle:hover {\n fill: #aaa;\n}\n\n.blocklyInvalidInput {\n background: #faa;\n}\n\n.blocklyVerticalMarker {\n stroke-width: 3px;\n fill: rgba(255,255,255,.5);\n pointer-events: none;\n}\n\n.blocklyComputeCanvas {\n position: absolute;\n width: 0;\n height: 0;\n}\n\n.blocklyNoPointerEvents {\n pointer-events: none;\n}\n\n.blocklyContextMenu {\n border-radius: 4px;\n max-height: 100%;\n}\n\n.blocklyDropdownMenu {\n border-radius: 2px;\n padding: 0 !important;\n}\n\n.blocklyDropdownMenu .blocklyMenuItem {\n /* 28px on the left for icon or checkbox. */\n padding-left: 28px;\n}\n\n/* BiDi override for the resting state. */\n.blocklyDropdownMenu .blocklyMenuItemRtl {\n /* Flip left/right padding for BiDi. */\n padding-left: 5px;\n padding-right: 28px;\n}\n\n.blocklyWidgetDiv .blocklyMenu {\n background: #fff;\n border: 1px solid transparent;\n box-shadow: 0 0 3px 1px rgba(0,0,0,.3);\n font: normal 13px Arial, sans-serif;\n margin: 0;\n outline: none;\n padding: 4px 0;\n position: absolute;\n overflow-y: auto;\n overflow-x: hidden;\n max-height: 100%;\n z-index: 20000; /* Arbitrary, but some apps depend on it... */\n}\n\n.blocklyWidgetDiv .blocklyMenu.blocklyFocused {\n box-shadow: 0 0 6px 1px rgba(0,0,0,.3);\n}\n\n.blocklyDropDownDiv .blocklyMenu {\n background: inherit; /* Compatibility with gapi, reset from goog-menu */\n border: inherit; /* Compatibility with gapi, reset from goog-menu */\n font: normal 13px "Helvetica Neue", Helvetica, sans-serif;\n outline: none;\n position: relative; /* Compatibility with gapi, reset from goog-menu */\n z-index: 20000; /* Arbitrary, but some apps depend on it... */\n}\n\n/* State: resting. */\n.blocklyMenuItem {\n border: none;\n color: #000;\n cursor: pointer;\n list-style: none;\n margin: 0;\n /* 7em on the right for shortcut. */\n min-width: 7em;\n padding: 6px 15px;\n white-space: nowrap;\n}\n\n/* State: disabled. */\n.blocklyMenuItemDisabled {\n color: #ccc;\n cursor: inherit;\n}\n\n/* State: hover. */\n.blocklyMenuItemHighlight {\n background-color: rgba(0,0,0,.1);\n}\n\n/* State: selected/checked. */\n.blocklyMenuItemCheckbox {\n height: 16px;\n position: absolute;\n width: 16px;\n}\n\n.blocklyMenuItemSelected .blocklyMenuItemCheckbox {\n background: url(<<>>/sprites.png) no-repeat -48px -16px;\n float: left;\n margin-left: -24px;\n position: static; /* Scroll with the menu. */\n}\n\n.blocklyMenuItemRtl .blocklyMenuItemCheckbox {\n float: right;\n margin-right: -24px;\n}\n';var module$contents$Blockly$utils$string_wrapLine,module$contents$Blockly$utils$string_wrapScore,module$contents$Blockly$utils$string_wrapMutate,module$contents$Blockly$utils$string_wrapToText; $.module$exports$Blockly$utils$string={startsWith:function(a,b){return 0===a.lastIndexOf(b,0)},shortestStringLength:function(a){return a.length?a.reduce(function(b,c){return b.lengthb&&(b=c[d].length);var e=-Infinity,f=1;do{d=e;var g=a;a=[];e=c.length/f;for(var h=1,k=0;kd);return g}; module$contents$Blockly$utils$string_wrapScore=function(a,b,c){for(var d=[0],e=[],f=0;fd&&(d=h,e=g)}return e?module$contents$Blockly$utils$string_wrapMutate(a,e,c):b};module$contents$Blockly$utils$string_wrapToText=function(a,b){for(var c=[],d=0;dmodule$exports$Blockly$Tooltip.RADIUS_OK&&(0,module$exports$Blockly$Tooltip.hide)()}else module$contents$Blockly$Tooltip_poisonedElement!==module$contents$Blockly$Tooltip_element&&(clearTimeout(module$contents$Blockly$Tooltip_showPid),module$contents$Blockly$Tooltip_lastX=a.pageX,module$contents$Blockly$Tooltip_lastY=a.pageY,module$contents$Blockly$Tooltip_showPid=setTimeout(module$contents$Blockly$Tooltip_show, module$exports$Blockly$Tooltip.HOVER_MS))};module$exports$Blockly$Tooltip.dispose=function(){module$contents$Blockly$Tooltip_poisonedElement=module$contents$Blockly$Tooltip_element=null;(0,module$exports$Blockly$Tooltip.hide)()};module$exports$Blockly$Tooltip.hide=function(){module$contents$Blockly$Tooltip_visible&&(module$contents$Blockly$Tooltip_visible=!1,module$contents$Blockly$Tooltip_DIV&&(module$contents$Blockly$Tooltip_DIV.style.display="none"));module$contents$Blockly$Tooltip_showPid&&clearTimeout(module$contents$Blockly$Tooltip_showPid)}; module$exports$Blockly$Tooltip.block=function(){(0,module$exports$Blockly$Tooltip.hide)();module$contents$Blockly$Tooltip_blocked=!0};module$exports$Blockly$Tooltip.unblock=function(){module$contents$Blockly$Tooltip_blocked=!1}; -var module$contents$Blockly$Tooltip_show=function(){if(!module$contents$Blockly$Tooltip_blocked&&(module$contents$Blockly$Tooltip_poisonedElement=module$contents$Blockly$Tooltip_element,module$contents$Blockly$Tooltip_DIV)){module$contents$Blockly$Tooltip_DIV.textContent="";var a=(0,module$exports$Blockly$Tooltip.getTooltipOfObject)(module$contents$Blockly$Tooltip_element);a=(0,$.module$exports$Blockly$utils$string.wrap)(a,module$exports$Blockly$Tooltip.LIMIT);a=a.split("\n");for(var b=0;bc+window.scrollY&&(e-=module$contents$Blockly$Tooltip_DIV.offsetHeight+2*module$exports$Blockly$Tooltip.OFFSET_Y);a?d=Math.max(module$exports$Blockly$Tooltip.MARGINS-window.scrollX,d):d+module$contents$Blockly$Tooltip_DIV.offsetWidth>b+window.scrollX-2*module$exports$Blockly$Tooltip.MARGINS&& -(d=b-module$contents$Blockly$Tooltip_DIV.offsetWidth-2*module$exports$Blockly$Tooltip.MARGINS);module$contents$Blockly$Tooltip_DIV.style.top=e+"px";module$contents$Blockly$Tooltip_DIV.style.left=d+"px"}};var module$exports$Blockly$utils$dom={SVG_NS:"http://www.w3.org/2000/svg",HTML_NS:"http://www.w3.org/1999/xhtml",XLINK_NS:"http://www.w3.org/1999/xlink",NodeType:{ELEMENT_NODE:1,TEXT_NODE:3,COMMENT_NODE:8,DOCUMENT_POSITION_CONTAINED_BY:16}},module$contents$Blockly$utils$dom_cacheWidths=null,module$contents$Blockly$utils$dom_cacheReference=0,module$contents$Blockly$utils$dom_canvasContext=null; +var module$contents$Blockly$Tooltip_renderContent=function(){module$contents$Blockly$Tooltip_DIV&&module$contents$Blockly$Tooltip_element&&("function"===typeof module$contents$Blockly$Tooltip_customTooltip?module$contents$Blockly$Tooltip_customTooltip(module$contents$Blockly$Tooltip_DIV,module$contents$Blockly$Tooltip_element):module$contents$Blockly$Tooltip_renderDefaultContent())},module$contents$Blockly$Tooltip_renderDefaultContent=function(){var a=(0,module$exports$Blockly$Tooltip.getTooltipOfObject)(module$contents$Blockly$Tooltip_element); +a=(0,$.module$exports$Blockly$utils$string.wrap)(a,module$exports$Blockly$Tooltip.LIMIT);a=a.split("\n");for(var b=0;bc+window.scrollY&&(e-=module$contents$Blockly$Tooltip_DIV.offsetHeight+2*module$exports$Blockly$Tooltip.OFFSET_Y);a?d=Math.max(module$exports$Blockly$Tooltip.MARGINS-window.scrollX,d):d+module$contents$Blockly$Tooltip_DIV.offsetWidth>b+window.scrollX-2*module$exports$Blockly$Tooltip.MARGINS&&(d=b-module$contents$Blockly$Tooltip_DIV.offsetWidth- +2*module$exports$Blockly$Tooltip.MARGINS);return{x:d,y:e}},module$contents$Blockly$Tooltip_show=function(){if(!module$contents$Blockly$Tooltip_blocked&&(module$contents$Blockly$Tooltip_poisonedElement=module$contents$Blockly$Tooltip_element,module$contents$Blockly$Tooltip_DIV)){module$contents$Blockly$Tooltip_DIV.textContent="";module$contents$Blockly$Tooltip_renderContent();var a=module$contents$Blockly$Tooltip_element.RTL;module$contents$Blockly$Tooltip_DIV.style.direction=a?"rtl":"ltr";module$contents$Blockly$Tooltip_DIV.style.display= +"block";module$contents$Blockly$Tooltip_visible=!0;a=module$contents$Blockly$Tooltip_getPosition(a);var b=a.y;module$contents$Blockly$Tooltip_DIV.style.left=a.x+"px";module$contents$Blockly$Tooltip_DIV.style.top=b+"px"}};var module$exports$Blockly$utils$dom={SVG_NS:"http://www.w3.org/2000/svg",HTML_NS:"http://www.w3.org/1999/xhtml",XLINK_NS:"http://www.w3.org/1999/xlink",NodeType:{ELEMENT_NODE:1,TEXT_NODE:3,COMMENT_NODE:8,DOCUMENT_POSITION_CONTAINED_BY:16}},module$contents$Blockly$utils$dom_cacheWidths=null,module$contents$Blockly$utils$dom_cacheReference=0,module$contents$Blockly$utils$dom_canvasContext=null; module$exports$Blockly$utils$dom.createSvgElement=function(a,b,c){a=document.createElementNS(module$exports$Blockly$utils$dom.SVG_NS,String(a));for(var d in b)a.setAttribute(d,b[d]);document.body.runtimeStyle&&(a.runtimeStyle=a.currentStyle=a.style);c&&c.appendChild(a);return a};module$exports$Blockly$utils$dom.addClass=function(a,b){var c=a.getAttribute("class")||"";if(-1!==(" "+c+" ").indexOf(" "+b+" "))return!1;c&&(c+=" ");a.setAttribute("class",c+b);return!0}; module$exports$Blockly$utils$dom.removeClasses=function(a,b){b=b.split(" ");for(var c=0;cb.oldScale&&(0,module$exports$Blockly$bumpObjects.bumpTopObjectsIntoBounds)(a)}}},module$contents$Blockly$bumpObjects_extractObjectFromEvent=function(a,b){var c=null;switch(b.type){case module$exports$Blockly$Events$utils.CREATE:case module$exports$Blockly$Events$utils.MOVE:(c=a.getBlockById(b.blockId))&&(c=c.getRootBlock());break;case module$exports$Blockly$Events$utils.COMMENT_CREATE:case module$exports$Blockly$Events$utils.COMMENT_MOVE:c= -a.getCommentById(b.commentId)}return c};module$exports$Blockly$bumpObjects.bumpTopObjectsIntoBounds=function(a){var b=a.getMetricsManager();if(b.hasFixedEdges()&&!a.isDragging()){b=b.getScrollMetrics(!0);for(var c=a.getTopBoundedElements(),d=0,e;e=c[d];d++)(0,module$exports$Blockly$bumpObjects.bumpIntoBounds)(a,b,e)}};var module$exports$Blockly$utils$Coordinate={Coordinate:function(a,b){this.x=a;this.y=b}};module$exports$Blockly$utils$Coordinate.Coordinate.equals=function(a,b){return a===b?!0:a&&b?a.x===b.x&&a.y===b.y:!1};module$exports$Blockly$utils$Coordinate.Coordinate.distance=function(a,b){var c=a.x-b.x;a=a.y-b.y;return Math.sqrt(c*c+a*a)};module$exports$Blockly$utils$Coordinate.Coordinate.magnitude=function(a){return Math.sqrt(a.x*a.x+a.y*a.y)}; -module$exports$Blockly$utils$Coordinate.Coordinate.difference=function(a,b){return new module$exports$Blockly$utils$Coordinate.Coordinate(a.x-b.x,a.y-b.y)};module$exports$Blockly$utils$Coordinate.Coordinate.sum=function(a,b){return new module$exports$Blockly$utils$Coordinate.Coordinate(a.x+b.x,a.y+b.y)};module$exports$Blockly$utils$Coordinate.Coordinate.prototype.clone=function(){return new module$exports$Blockly$utils$Coordinate.Coordinate(this.x,this.y)}; -module$exports$Blockly$utils$Coordinate.Coordinate.prototype.scale=function(a){this.x*=a;this.y*=a;return this};module$exports$Blockly$utils$Coordinate.Coordinate.prototype.translate=function(a,b){this.x+=a;this.y+=b;return this};var module$exports$Blockly$utils$Size={Size:function(a,b){this.width=a;this.height=b}};module$exports$Blockly$utils$Size.Size.equals=function(a,b){return a===b?!0:a&&b?a.width===b.width&&a.height===b.height:!1};var module$exports$Blockly$utils$style={getSize:function(a){if("none"!==module$contents$Blockly$utils$style_getStyle(a,"display"))return module$contents$Blockly$utils$style_getSizeWithDisplay(a);var b=a.style,c=b.display,d=b.visibility,e=b.position;b.visibility="hidden";b.position="absolute";b.display="inline";var f=a.offsetWidth;a=a.offsetHeight;b.display=c;b.position=e;b.visibility=d;return new module$exports$Blockly$utils$Size.Size(f,a)}},module$contents$Blockly$utils$style_getSizeWithDisplay= +a.getCommentById(b.commentId)}return c};module$exports$Blockly$bumpObjects.bumpTopObjectsIntoBounds=function(a){var b=a.getMetricsManager();if(b.hasFixedEdges()&&!a.isDragging()){b=b.getScrollMetrics(!0);for(var c=a.getTopBoundedElements(),d=0,e;e=c[d];d++)(0,module$exports$Blockly$bumpObjects.bumpIntoBounds)(a,b,e)}};var module$exports$Blockly$utils$Coordinate={Coordinate:function(a,b){this.x=a;this.y=b}};module$exports$Blockly$utils$Coordinate.Coordinate.prototype.clone=function(){return new module$exports$Blockly$utils$Coordinate.Coordinate(this.x,this.y)};module$exports$Blockly$utils$Coordinate.Coordinate.prototype.scale=function(a){this.x*=a;this.y*=a;return this};module$exports$Blockly$utils$Coordinate.Coordinate.prototype.translate=function(a,b){this.x+=a;this.y+=b;return this}; +module$exports$Blockly$utils$Coordinate.Coordinate.equals=function(a,b){return a===b?!0:a&&b?a.x===b.x&&a.y===b.y:!1};module$exports$Blockly$utils$Coordinate.Coordinate.distance=function(a,b){var c=a.x-b.x;a=a.y-b.y;return Math.sqrt(c*c+a*a)};module$exports$Blockly$utils$Coordinate.Coordinate.magnitude=function(a){return Math.sqrt(a.x*a.x+a.y*a.y)}; +module$exports$Blockly$utils$Coordinate.Coordinate.difference=function(a,b){return new module$exports$Blockly$utils$Coordinate.Coordinate(a.x-b.x,a.y-b.y)};module$exports$Blockly$utils$Coordinate.Coordinate.sum=function(a,b){return new module$exports$Blockly$utils$Coordinate.Coordinate(a.x+b.x,a.y+b.y)};var module$exports$Blockly$utils$Size={Size:function(a,b){this.width=a;this.height=b}};module$exports$Blockly$utils$Size.Size.equals=function(a,b){return a===b?!0:a&&b?a.width===b.width&&a.height===b.height:!1};var module$exports$Blockly$utils$style={getSize:function(a){if("none"!==module$contents$Blockly$utils$style_getStyle(a,"display"))return module$contents$Blockly$utils$style_getSizeWithDisplay(a);var b=a.style,c=b.display,d=b.visibility,e=b.position;b.visibility="hidden";b.position="absolute";b.display="inline";var f=a.offsetWidth;a=a.offsetHeight;b.display=c;b.position=e;b.visibility=d;return new module$exports$Blockly$utils$Size.Size(f,a)}},module$contents$Blockly$utils$style_getSizeWithDisplay= function(a){return new module$exports$Blockly$utils$Size.Size(a.offsetWidth,a.offsetHeight)},module$contents$Blockly$utils$style_getStyle=function(a,b){return(0,module$exports$Blockly$utils$style.getComputedStyle)(a,b)||(0,module$exports$Blockly$utils$style.getCascadedStyle)(a,b)||a.style&&a.style[b]}; module$exports$Blockly$utils$style.getComputedStyle=function(a,b){return document.defaultView&&document.defaultView.getComputedStyle&&(a=document.defaultView.getComputedStyle(a,null))?a[b]||a.getPropertyValue(b)||"":""};module$exports$Blockly$utils$style.getCascadedStyle=function(a,b){return a.currentStyle?a.currentStyle[b]:null}; module$exports$Blockly$utils$style.getPageOffset=function(a){var b=new module$exports$Blockly$utils$Coordinate.Coordinate(0,0);a=a.getBoundingClientRect();var c=document.documentElement;c=new module$exports$Blockly$utils$Coordinate.Coordinate(window.pageXOffset||c.scrollLeft,window.pageYOffset||c.scrollTop);b.x=a.left+c.x;b.y=a.top+c.y;return b}; @@ -149,7 +163,33 @@ module$exports$Blockly$utils$style.getViewportPageOffset=function(){var a=docume module$exports$Blockly$utils$style.getBorderBox=function(a){var b=(0,module$exports$Blockly$utils$style.getComputedStyle)(a,"borderLeftWidth"),c=(0,module$exports$Blockly$utils$style.getComputedStyle)(a,"borderRightWidth"),d=(0,module$exports$Blockly$utils$style.getComputedStyle)(a,"borderTopWidth");a=(0,module$exports$Blockly$utils$style.getComputedStyle)(a,"borderBottomWidth");return{top:parseFloat(d),right:parseFloat(c),bottom:parseFloat(a),left:parseFloat(b)}}; module$exports$Blockly$utils$style.scrollIntoContainerView=function(a,b,c){a=(0,module$exports$Blockly$utils$style.getContainerOffsetToScrollInto)(a,b,c);b.scrollLeft=a.x;b.scrollTop=a.y}; module$exports$Blockly$utils$style.getContainerOffsetToScrollInto=function(a,b,c){var d=(0,module$exports$Blockly$utils$style.getPageOffset)(a),e=(0,module$exports$Blockly$utils$style.getPageOffset)(b),f=(0,module$exports$Blockly$utils$style.getBorderBox)(b),g=d.x-e.x-f.left;d=d.y-e.y-f.top;e=module$contents$Blockly$utils$style_getSizeWithDisplay(a);a=b.clientWidth-e.width;e=b.clientHeight-e.height;f=b.scrollLeft;b=b.scrollTop;c?(f+=g-a/2,b+=d-e/2):(f+=Math.min(g,Math.max(g-a,0)),b+=Math.min(d,Math.max(d- -e,0)));return new module$exports$Blockly$utils$Coordinate.Coordinate(f,b)};var module$exports$Blockly$utils$Rect={Rect:function(a,b,c,d){this.top=a;this.bottom=b;this.left=c;this.right=d}};module$exports$Blockly$utils$Rect.Rect.prototype.contains=function(a,b){return a>=this.left&&a<=this.right&&b>=this.top&&b<=this.bottom};module$exports$Blockly$utils$Rect.Rect.prototype.intersects=function(a){return!(this.left>a.right||this.righta.bottom||this.bottom=this.left&&a<=this.right&&b>=this.top&&b<=this.bottom};module$exports$Blockly$utils$Rect.Rect.prototype.intersects=function(a){return!(this.left>a.right||this.righta.bottom||this.bottome.top?module$contents$Blockly$dropDownDiv_getPositionAboveMetrics(c,d,e,f):b+f.heightdocument.documentElement.clientTop?module$contents$Blockly$dropDownDiv_getPositionAboveMetrics(c,d,e,f):module$contents$Blockly$dropDownDiv_getPositionTopOfPageMetrics(a,e,f)}; +var module$contents$Blockly$dropDownDiv_getPositionBelowMetrics=function(a,b,c,d){a=(0,module$exports$Blockly$dropDownDiv.getPositionX)(a,c.left,c.right,d.width);return{initialX:a.divX,initialY:b,finalX:a.divX,finalY:b+module$exports$Blockly$dropDownDiv.PADDING_Y,arrowX:a.arrowX,arrowY:-(module$exports$Blockly$dropDownDiv.ARROW_SIZE/2+module$exports$Blockly$dropDownDiv.BORDER_SIZE),arrowAtTop:!0,arrowVisible:!0}},module$contents$Blockly$dropDownDiv_getPositionAboveMetrics=function(a,b,c,d){a=(0,module$exports$Blockly$dropDownDiv.getPositionX)(a, +c.left,c.right,d.width);return{initialX:a.divX,initialY:b-d.height,finalX:a.divX,finalY:b-d.height-module$exports$Blockly$dropDownDiv.PADDING_Y,arrowX:a.arrowX,arrowY:d.height-2*module$exports$Blockly$dropDownDiv.BORDER_SIZE-module$exports$Blockly$dropDownDiv.ARROW_SIZE/2,arrowAtTop:!1,arrowVisible:!0}},module$contents$Blockly$dropDownDiv_getPositionTopOfPageMetrics=function(a,b,c){a=(0,module$exports$Blockly$dropDownDiv.getPositionX)(a,b.left,b.right,c.width);return{initialX:a.divX,initialY:0,finalX:a.divX, +finalY:0,arrowAtTop:null,arrowX:null,arrowY:null,arrowVisible:!1}};module$exports$Blockly$dropDownDiv.getPositionX=function(a,b,c,d){b=(0,module$exports$Blockly$utils$math.clamp)(b,a-d/2,c-d);a=a-module$exports$Blockly$dropDownDiv.ARROW_SIZE/2-b;c=module$exports$Blockly$dropDownDiv.ARROW_HORIZONTAL_PADDING;a=(0,module$exports$Blockly$utils$math.clamp)(c,a,d-c-module$exports$Blockly$dropDownDiv.ARROW_SIZE);return{arrowX:a,divX:b}};module$exports$Blockly$dropDownDiv.isVisible=function(){return!!module$contents$Blockly$dropDownDiv_owner}; +module$exports$Blockly$dropDownDiv.hideIfOwner=function(a,b){return module$contents$Blockly$dropDownDiv_owner===a?(b?(0,module$exports$Blockly$dropDownDiv.hideWithoutAnimation)():(0,module$exports$Blockly$dropDownDiv.hide)(),!0):!1}; +module$exports$Blockly$dropDownDiv.hide=function(){module$contents$Blockly$dropDownDiv_div.style.transform="translate(0, 0)";module$contents$Blockly$dropDownDiv_div.style.opacity=0;module$contents$Blockly$dropDownDiv_animateOutTimer=setTimeout(function(){(0,module$exports$Blockly$dropDownDiv.hideWithoutAnimation)()},1E3*module$exports$Blockly$dropDownDiv.ANIMATION_TIME);module$contents$Blockly$dropDownDiv_onHide&&(module$contents$Blockly$dropDownDiv_onHide(),module$contents$Blockly$dropDownDiv_onHide= +null)}; +module$exports$Blockly$dropDownDiv.hideWithoutAnimation=function(){(0,module$exports$Blockly$dropDownDiv.isVisible)()&&(module$contents$Blockly$dropDownDiv_animateOutTimer&&clearTimeout(module$contents$Blockly$dropDownDiv_animateOutTimer),module$contents$Blockly$dropDownDiv_div.style.transform="",module$contents$Blockly$dropDownDiv_div.style.left="",module$contents$Blockly$dropDownDiv_div.style.top="",module$contents$Blockly$dropDownDiv_div.style.opacity=0,module$contents$Blockly$dropDownDiv_div.style.display="none", +module$contents$Blockly$dropDownDiv_div.style.backgroundColor="",module$contents$Blockly$dropDownDiv_div.style.borderColor="",module$contents$Blockly$dropDownDiv_onHide&&(module$contents$Blockly$dropDownDiv_onHide(),module$contents$Blockly$dropDownDiv_onHide=null),(0,module$exports$Blockly$dropDownDiv.clearContent)(),module$contents$Blockly$dropDownDiv_owner=null,module$contents$Blockly$dropDownDiv_renderedClassName&&((0,module$exports$Blockly$utils$dom.removeClass)(module$contents$Blockly$dropDownDiv_div, +module$contents$Blockly$dropDownDiv_renderedClassName),module$contents$Blockly$dropDownDiv_renderedClassName=""),module$contents$Blockly$dropDownDiv_themeClassName&&((0,module$exports$Blockly$utils$dom.removeClass)(module$contents$Blockly$dropDownDiv_div,module$contents$Blockly$dropDownDiv_themeClassName),module$contents$Blockly$dropDownDiv_themeClassName=""),(0,$.module$exports$Blockly$common.getMainWorkspace)().markFocused())}; +var module$contents$Blockly$dropDownDiv_positionInternal=function(a,b,c,d){a=module$exports$Blockly$dropDownDiv.TEST_ONLY.getPositionMetrics(a,b,c,d);a.arrowVisible?(module$contents$Blockly$dropDownDiv_arrow.style.display="",module$contents$Blockly$dropDownDiv_arrow.style.transform="translate("+a.arrowX+"px,"+a.arrowY+"px) rotate(45deg)",module$contents$Blockly$dropDownDiv_arrow.setAttribute("class",a.arrowAtTop?"blocklyDropDownArrow blocklyArrowTop":"blocklyDropDownArrow blocklyArrowBottom")):module$contents$Blockly$dropDownDiv_arrow.style.display= +"none";b=Math.floor(a.initialX);c=Math.floor(a.initialY);d=Math.floor(a.finalX);var e=Math.floor(a.finalY);module$contents$Blockly$dropDownDiv_div.style.left=b+"px";module$contents$Blockly$dropDownDiv_div.style.top=c+"px";module$contents$Blockly$dropDownDiv_div.style.display="block";module$contents$Blockly$dropDownDiv_div.style.opacity=1;module$contents$Blockly$dropDownDiv_div.style.transform="translate("+(d-b)+"px,"+(e-c)+"px)";return!!a.arrowAtTop}; +module$exports$Blockly$dropDownDiv.repositionForWindowResize=function(){if(module$contents$Blockly$dropDownDiv_owner){var a=module$contents$Blockly$dropDownDiv_owner,b=a.getSourceBlock();a=module$contents$Blockly$dropDownDiv_positionToField?module$contents$Blockly$dropDownDiv_getScaledBboxOfField(a):module$contents$Blockly$dropDownDiv_getScaledBboxOfBlock(b);b=a.left+(a.right-a.left)/2;module$contents$Blockly$dropDownDiv_positionInternal(b,a.bottom,b,a.top)}else(0,module$exports$Blockly$dropDownDiv.hide)()};var module$exports$Blockly$utils$svgMath={},module$contents$Blockly$utils$svgMath_XY_REGEX=/translate\(\s*([-+\d.e]+)([ ,]\s*([-+\d.e]+)\s*)?/,module$contents$Blockly$utils$svgMath_XY_STYLE_REGEX=/transform:\s*translate(?:3d)?\(\s*([-+\d.e]+)\s*px([ ,]\s*([-+\d.e]+)\s*px)?/; module$exports$Blockly$utils$svgMath.getRelativeXY=function(a){var b=new module$exports$Blockly$utils$Coordinate.Coordinate(0,0),c=a.getAttribute("x");c&&(b.x=parseInt(c,10));if(c=a.getAttribute("y"))b.y=parseInt(c,10);if(c=(c=a.getAttribute("transform"))&&c.match(module$contents$Blockly$utils$svgMath_XY_REGEX))b.x+=Number(c[1]),c[3]&&(b.y+=Number(c[3]));(a=a.getAttribute("style"))&&-1e.top?module$contents$Blockly$DropDownDiv_getPositionAboveMetrics(c,d,e,f):b+f.heightdocument.documentElement.clientTop?module$contents$Blockly$DropDownDiv_getPositionAboveMetrics(c,d,e,f):module$contents$Blockly$DropDownDiv_getPositionTopOfPageMetrics(a,e,f)}; -var module$contents$Blockly$DropDownDiv_getPositionBelowMetrics=function(a,b,c,d){a=module$exports$Blockly$DropDownDiv.DropDownDiv.getPositionX(a,c.left,c.right,d.width);return{initialX:a.divX,initialY:b,finalX:a.divX,finalY:b+module$exports$Blockly$DropDownDiv.DropDownDiv.PADDING_Y,arrowX:a.arrowX,arrowY:-(module$exports$Blockly$DropDownDiv.DropDownDiv.ARROW_SIZE/2+module$exports$Blockly$DropDownDiv.DropDownDiv.BORDER_SIZE),arrowAtTop:!0,arrowVisible:!0}},module$contents$Blockly$DropDownDiv_getPositionAboveMetrics= -function(a,b,c,d){a=module$exports$Blockly$DropDownDiv.DropDownDiv.getPositionX(a,c.left,c.right,d.width);return{initialX:a.divX,initialY:b-d.height,finalX:a.divX,finalY:b-d.height-module$exports$Blockly$DropDownDiv.DropDownDiv.PADDING_Y,arrowX:a.arrowX,arrowY:d.height-2*module$exports$Blockly$DropDownDiv.DropDownDiv.BORDER_SIZE-module$exports$Blockly$DropDownDiv.DropDownDiv.ARROW_SIZE/2,arrowAtTop:!1,arrowVisible:!0}},module$contents$Blockly$DropDownDiv_getPositionTopOfPageMetrics=function(a,b,c){a= -module$exports$Blockly$DropDownDiv.DropDownDiv.getPositionX(a,b.left,b.right,c.width);return{initialX:a.divX,initialY:0,finalX:a.divX,finalY:0,arrowAtTop:null,arrowX:null,arrowY:null,arrowVisible:!1}}; -module$exports$Blockly$DropDownDiv.DropDownDiv.getPositionX=function(a,b,c,d){b=(0,module$exports$Blockly$utils$math.clamp)(b,a-d/2,c-d);a=a-module$exports$Blockly$DropDownDiv.DropDownDiv.ARROW_SIZE/2-b;c=module$exports$Blockly$DropDownDiv.DropDownDiv.ARROW_HORIZONTAL_PADDING;a=(0,module$exports$Blockly$utils$math.clamp)(c,a,d-c-module$exports$Blockly$DropDownDiv.DropDownDiv.ARROW_SIZE);return{arrowX:a,divX:b}};module$exports$Blockly$DropDownDiv.DropDownDiv.isVisible=function(){return!!module$exports$Blockly$DropDownDiv.DropDownDiv.owner_}; -module$exports$Blockly$DropDownDiv.DropDownDiv.hideIfOwner=function(a,b){return module$exports$Blockly$DropDownDiv.DropDownDiv.owner_===a?(b?module$exports$Blockly$DropDownDiv.DropDownDiv.hideWithoutAnimation():module$exports$Blockly$DropDownDiv.DropDownDiv.hide(),!0):!1}; -module$exports$Blockly$DropDownDiv.DropDownDiv.hide=function(){module$exports$Blockly$DropDownDiv.DropDownDiv.DIV_.style.transform="translate(0, 0)";module$exports$Blockly$DropDownDiv.DropDownDiv.DIV_.style.opacity=0;module$exports$Blockly$DropDownDiv.DropDownDiv.animateOutTimer_=setTimeout(function(){module$exports$Blockly$DropDownDiv.DropDownDiv.hideWithoutAnimation()},1E3*module$exports$Blockly$DropDownDiv.DropDownDiv.ANIMATION_TIME);module$exports$Blockly$DropDownDiv.DropDownDiv.onHide_&&(module$exports$Blockly$DropDownDiv.DropDownDiv.onHide_(), -module$exports$Blockly$DropDownDiv.DropDownDiv.onHide_=null)}; -module$exports$Blockly$DropDownDiv.DropDownDiv.hideWithoutAnimation=function(){if(module$exports$Blockly$DropDownDiv.DropDownDiv.isVisible()){module$exports$Blockly$DropDownDiv.DropDownDiv.animateOutTimer_&&clearTimeout(module$exports$Blockly$DropDownDiv.DropDownDiv.animateOutTimer_);var a=module$exports$Blockly$DropDownDiv.DropDownDiv.DIV_;a.style.transform="";a.style.left="";a.style.top="";a.style.opacity=0;a.style.display="none";a.style.backgroundColor="";a.style.borderColor="";module$exports$Blockly$DropDownDiv.DropDownDiv.onHide_&& -(module$exports$Blockly$DropDownDiv.DropDownDiv.onHide_(),module$exports$Blockly$DropDownDiv.DropDownDiv.onHide_=null);module$exports$Blockly$DropDownDiv.DropDownDiv.clearContent();module$exports$Blockly$DropDownDiv.DropDownDiv.owner_=null;module$exports$Blockly$DropDownDiv.DropDownDiv.rendererClassName_&&((0,module$exports$Blockly$utils$dom.removeClass)(a,module$exports$Blockly$DropDownDiv.DropDownDiv.rendererClassName_),module$exports$Blockly$DropDownDiv.DropDownDiv.rendererClassName_="");module$exports$Blockly$DropDownDiv.DropDownDiv.themeClassName_&& -((0,module$exports$Blockly$utils$dom.removeClass)(a,module$exports$Blockly$DropDownDiv.DropDownDiv.themeClassName_),module$exports$Blockly$DropDownDiv.DropDownDiv.themeClassName_="");(0,$.module$exports$Blockly$common.getMainWorkspace)().markFocused()}}; -var module$contents$Blockly$DropDownDiv_positionInternal=function(a,b,c,d){a=module$contents$Blockly$DropDownDiv_internal.getPositionMetrics(a,b,c,d);a.arrowVisible?(module$exports$Blockly$DropDownDiv.DropDownDiv.arrow_.style.display="",module$exports$Blockly$DropDownDiv.DropDownDiv.arrow_.style.transform="translate("+a.arrowX+"px,"+a.arrowY+"px) rotate(45deg)",module$exports$Blockly$DropDownDiv.DropDownDiv.arrow_.setAttribute("class",a.arrowAtTop?"blocklyDropDownArrow blocklyArrowTop":"blocklyDropDownArrow blocklyArrowBottom")): -module$exports$Blockly$DropDownDiv.DropDownDiv.arrow_.style.display="none";b=Math.floor(a.initialX);c=Math.floor(a.initialY);d=Math.floor(a.finalX);var e=Math.floor(a.finalY),f=module$exports$Blockly$DropDownDiv.DropDownDiv.DIV_;f.style.left=b+"px";f.style.top=c+"px";f.style.display="block";f.style.opacity=1;f.style.transform="translate("+(d-b)+"px,"+(e-c)+"px)";return!!a.arrowAtTop}; -module$exports$Blockly$DropDownDiv.DropDownDiv.repositionForWindowResize=function(){if(module$exports$Blockly$DropDownDiv.DropDownDiv.owner_){var a=module$exports$Blockly$DropDownDiv.DropDownDiv.owner_,b=a.getSourceBlock();a=module$exports$Blockly$DropDownDiv.DropDownDiv.positionToField_?module$contents$Blockly$DropDownDiv_getScaledBboxOfField(a):module$contents$Blockly$DropDownDiv_getScaledBboxOfBlock(b);b=a.left+(a.right-a.left)/2;module$contents$Blockly$DropDownDiv_positionInternal(b,a.bottom, -b,a.top)}else module$exports$Blockly$DropDownDiv.DropDownDiv.hide()};module$exports$Blockly$DropDownDiv.DropDownDiv.TEST_ONLY=module$contents$Blockly$DropDownDiv_internal;var module$exports$Blockly$Grid={Grid:function(a,b){this.gridPattern_=a;this.spacing_=b.spacing;this.length_=b.length;this.line2_=(this.line1_=a.firstChild)&&this.line1_.nextSibling;this.snapToGrid_=b.snap}};module$exports$Blockly$Grid.Grid.prototype.scale_=1;module$exports$Blockly$Grid.Grid.prototype.dispose=function(){this.gridPattern_=null};module$exports$Blockly$Grid.Grid.prototype.shouldSnap=function(){return this.snapToGrid_};module$exports$Blockly$Grid.Grid.prototype.getSpacing=function(){return this.spacing_}; +module$exports$Blockly$BlockDragSurfaceSvg.BlockDragSurfaceSvg.prototype.clearAndHide=function(a){var b=this.getCurrentBlock();b&&(a?a.appendChild(b):this.dragGroup_.removeChild(b));this.SVG_.style.display="none";if(this.dragGroup_.childNodes.length)throw Error("Drag group was not cleared.");this.surfaceXY_=null};var module$exports$Blockly$Grid={Grid:function(a,b){this.scale_=1;this.gridPattern_=a;this.spacing_=b.spacing;this.length_=b.length;this.line2_=(this.line1_=a.firstChild)&&this.line1_.nextSibling;this.snapToGrid_=b.snap}};module$exports$Blockly$Grid.Grid.prototype.dispose=function(){this.gridPattern_=null};module$exports$Blockly$Grid.Grid.prototype.shouldSnap=function(){return this.snapToGrid_};module$exports$Blockly$Grid.Grid.prototype.getSpacing=function(){return this.spacing_}; module$exports$Blockly$Grid.Grid.prototype.getPatternId=function(){return this.gridPattern_.id};module$exports$Blockly$Grid.Grid.prototype.update=function(a){this.scale_=a;var b=this.spacing_*a||100;this.gridPattern_.setAttribute("width",b);this.gridPattern_.setAttribute("height",b);b=Math.floor(this.spacing_/2)+.5;var c=b-this.length_/2,d=b+this.length_/2;b*=a;c*=a;d*=a;this.setLineAttributes_(this.line1_,a,c,d,b,b);this.setLineAttributes_(this.line2_,a,b,b,c,d)}; module$exports$Blockly$Grid.Grid.prototype.setLineAttributes_=function(a,b,c,d,e,f){a&&(a.setAttribute("stroke-width",b),a.setAttribute("x1",c),a.setAttribute("y1",e),a.setAttribute("x2",d),a.setAttribute("y2",f))};module$exports$Blockly$Grid.Grid.prototype.moveTo=function(a,b){this.gridPattern_.setAttribute("x",a);this.gridPattern_.setAttribute("y",b);(module$exports$Blockly$utils$userAgent.IE||module$exports$Blockly$utils$userAgent.EDGE)&&this.update(this.scale_)}; module$exports$Blockly$Grid.Grid.createDom=function(a,b,c){a=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.PATTERN,{id:"blocklyGridPattern"+a,patternUnits:"userSpaceOnUse"},c);0f&&(f=k.x)}d=d-g+10;c=b.RTL?c-f:c-e;for(e=0;ef&&(f=k.x)}d=d-g+10;c=b.RTL?c-f:c-e;for(e=0;e=a||isNaN(a)?0:Math.min(a,this.scrollbarLength_)};module$exports$Blockly$Scrollbar.Scrollbar.prototype.setHandleLength_=function(a){this.handleLength_=a;this.svgHandle_.setAttribute(this.lengthAttribute_,this.handleLength_)}; module$exports$Blockly$Scrollbar.Scrollbar.prototype.constrainHandlePosition_=function(a){return a=0>=a||isNaN(a)?0:Math.min(a,this.scrollbarLength_-this.handleLength_)};module$exports$Blockly$Scrollbar.Scrollbar.prototype.setHandlePosition=function(a){this.handlePosition_=a;this.svgHandle_.setAttribute(this.positionAttribute_,this.handlePosition_)}; @@ -283,7 +292,9 @@ module$exports$Blockly$Scrollbar.Scrollbar.onMouseMoveWrapper_=(0,module$exports module$exports$Blockly$Scrollbar.Scrollbar.prototype.onMouseUpHandle_=function(){this.workspace_.resetDragSurface();(0,module$exports$Blockly$Touch.clearTouchIdentifier)();this.cleanUp_()}; module$exports$Blockly$Scrollbar.Scrollbar.prototype.cleanUp_=function(){this.workspace_.hideChaff(!0);module$exports$Blockly$Scrollbar.Scrollbar.onMouseUpWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(module$exports$Blockly$Scrollbar.Scrollbar.onMouseUpWrapper_),module$exports$Blockly$Scrollbar.Scrollbar.onMouseUpWrapper_=null);module$exports$Blockly$Scrollbar.Scrollbar.onMouseMoveWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(module$exports$Blockly$Scrollbar.Scrollbar.onMouseMoveWrapper_), module$exports$Blockly$Scrollbar.Scrollbar.onMouseMoveWrapper_=null)};module$exports$Blockly$Scrollbar.Scrollbar.prototype.getRatio_=function(){var a=this.handlePosition_/(this.scrollbarLength_-this.handleLength_);isNaN(a)&&(a=0);return a};module$exports$Blockly$Scrollbar.Scrollbar.prototype.updateMetrics_=function(){var a=this.getRatio_(),b={};this.horizontal_?b.x=a:b.y=a;this.workspace_.setMetrics(b)}; -module$exports$Blockly$Scrollbar.Scrollbar.prototype.set=function(a,b){this.setHandlePosition(this.constrainHandlePosition_(a*this.ratio));(b||void 0===b)&&this.updateMetrics_()};module$exports$Blockly$Scrollbar.Scrollbar.prototype.setOrigin=function(a,b){this.origin_=new module$exports$Blockly$utils$Coordinate.Coordinate(a,b)};var module$exports$Blockly$ScrollbarPair={ScrollbarPair:function(a,b,c,d,e){this.workspace_=a;b=void 0===b?!0:b;c=void 0===c?!0:c;var f=b&&c;b&&(this.hScroll=new module$exports$Blockly$Scrollbar.Scrollbar(a,!0,f,d,e));c&&(this.vScroll=new module$exports$Blockly$Scrollbar.Scrollbar(a,!1,f,d,e));f&&(this.corner_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{height:module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness,width:module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness, +module$exports$Blockly$Scrollbar.Scrollbar.prototype.set=function(a,b){this.setHandlePosition(this.constrainHandlePosition_(a*this.ratio));(b||void 0===b)&&this.updateMetrics_()};module$exports$Blockly$Scrollbar.Scrollbar.prototype.setOrigin=function(a,b){this.origin_=new module$exports$Blockly$utils$Coordinate.Coordinate(a,b)}; +module$exports$Blockly$Scrollbar.Scrollbar.metricsAreEquivalent_=function(a,b){return a.viewWidth===b.viewWidth&&a.viewHeight===b.viewHeight&&a.viewLeft===b.viewLeft&&a.viewTop===b.viewTop&&a.absoluteTop===b.absoluteTop&&a.absoluteLeft===b.absoluteLeft&&a.scrollWidth===b.scrollWidth&&a.scrollHeight===b.scrollHeight&&a.scrollLeft===b.scrollLeft&&a.scrollTop===b.scrollTop};module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness=15; +module$exports$Blockly$Touch.TOUCH_ENABLED&&(module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness=25);module$exports$Blockly$Scrollbar.Scrollbar.DEFAULT_SCROLLBAR_MARGIN=.5;var module$exports$Blockly$ScrollbarPair={ScrollbarPair:function(a,b,c,d,e){this.workspace_=a;b=void 0===b?!0:b;c=void 0===c?!0:c;var f=b&&c;b&&(this.hScroll=new module$exports$Blockly$Scrollbar.Scrollbar(a,!0,f,d,e));c&&(this.vScroll=new module$exports$Blockly$Scrollbar.Scrollbar(a,!1,f,d,e));f&&(this.corner_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{height:module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness,width:module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness, "class":"blocklyScrollbarBackground"},null),(0,module$exports$Blockly$utils$dom.insertAfter)(this.corner_,a.getBubbleCanvas()));this.oldHostMetrics_=null}};module$exports$Blockly$ScrollbarPair.ScrollbarPair.prototype.dispose=function(){(0,module$exports$Blockly$utils$dom.removeNode)(this.corner_);this.oldHostMetrics_=this.workspace_=this.corner_=null;this.hScroll&&(this.hScroll.dispose(),this.hScroll=null);this.vScroll&&(this.vScroll.dispose(),this.vScroll=null)}; module$exports$Blockly$ScrollbarPair.ScrollbarPair.prototype.resize=function(){var a=this.workspace_.getMetrics();if(a){var b=!1,c=!1;this.oldHostMetrics_&&this.oldHostMetrics_.viewWidth===a.viewWidth&&this.oldHostMetrics_.viewHeight===a.viewHeight&&this.oldHostMetrics_.absoluteTop===a.absoluteTop&&this.oldHostMetrics_.absoluteLeft===a.absoluteLeft?(this.oldHostMetrics_&&this.oldHostMetrics_.scrollWidth===a.scrollWidth&&this.oldHostMetrics_.viewLeft===a.viewLeft&&this.oldHostMetrics_.scrollLeft=== a.scrollLeft||(b=!0),this.oldHostMetrics_&&this.oldHostMetrics_.scrollHeight===a.scrollHeight&&this.oldHostMetrics_.viewTop===a.viewTop&&this.oldHostMetrics_.scrollTop===a.scrollTop||(c=!0)):c=b=!0;if(b||c){try{(0,module$exports$Blockly$Events$utils.disable)(),this.hScroll&&b&&this.hScroll.resize(a),this.vScroll&&c&&this.vScroll.resize(a)}finally{(0,module$exports$Blockly$Events$utils.enable)()}this.workspace_.maybeFireViewportChangeEvent()}this.hScroll&&this.vScroll&&(this.oldHostMetrics_&&this.oldHostMetrics_.viewWidth=== @@ -293,8 +304,8 @@ module$exports$Blockly$ScrollbarPair.ScrollbarPair.prototype.set=function(a,b,c) module$exports$Blockly$ScrollbarPair.ScrollbarPair.prototype.setY=function(a){this.vScroll&&this.vScroll.set(a,!0)};module$exports$Blockly$ScrollbarPair.ScrollbarPair.prototype.setContainerVisible=function(a){this.hScroll&&this.hScroll.setContainerVisible(a);this.vScroll&&this.vScroll.setContainerVisible(a)};module$exports$Blockly$ScrollbarPair.ScrollbarPair.prototype.isVisible=function(){var a=!1;this.hScroll&&(a=this.hScroll.isVisible());this.vScroll&&(a=a||this.vScroll.isVisible());return a}; module$exports$Blockly$ScrollbarPair.ScrollbarPair.prototype.resizeContent=function(a){this.hScroll&&this.hScroll.resizeContentHorizontal(a);this.vScroll&&this.vScroll.resizeContentVertical(a)};module$exports$Blockly$ScrollbarPair.ScrollbarPair.prototype.resizeView=function(a){this.hScroll&&this.hScroll.resizeViewHorizontal(a);this.vScroll&&this.vScroll.resizeViewVertical(a)};var module$exports$Blockly$utils$KeyCodes={KeyCodes:{WIN_KEY_FF_LINUX:0,MAC_ENTER:3,BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PLUS_SIGN:43,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,FF_SEMICOLON:59,FF_EQUALS:61,FF_DASH:173,FF_HASH:163,QUESTION_MARK:63,AT_SIGN:64,A:65,B:66,C:67,D:68,E:69,F:70,G:71, H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,META:91,WIN_KEY_RIGHT:92,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,NUMLOCK:144,SCROLL_LOCK:145,FIRST_MEDIA_KEY:166,LAST_MEDIA_KEY:183,SEMICOLON:186, -DASH:189,EQUALS:187,COMMA:188,PERIOD:190,SLASH:191,APOSTROPHE:192,TILDE:192,SINGLE_QUOTE:222,OPEN_SQUARE_BRACKET:219,BACKSLASH:220,CLOSE_SQUARE_BRACKET:221,WIN_KEY:224,MAC_FF_META:224,MAC_WK_CMD_LEFT:91,MAC_WK_CMD_RIGHT:93,WIN_IME:229,VK_NONAME:252,PHANTOM:255}};var module$exports$Blockly$ShortcutRegistry={ShortcutRegistry:function(){module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.registry=this;this.registry_=Object.create(null);this.keyMap_=Object.create(null)}};module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.modifierKeys={Shift:module$exports$Blockly$utils$KeyCodes.KeyCodes.SHIFT,Control:module$exports$Blockly$utils$KeyCodes.KeyCodes.CTRL,Alt:module$exports$Blockly$utils$KeyCodes.KeyCodes.ALT,Meta:module$exports$Blockly$utils$KeyCodes.KeyCodes.META}; -module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.prototype.register=function(a,b){if(this.registry_[a.name]&&!b)throw Error('Shortcut with name "'+a.name+'" already exists.');this.registry_[a.name]=a};module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.prototype.unregister=function(a){if(!this.registry_[a])return console.warn('Keyboard shortcut with name "'+a+'" not found.'),!1;this.removeAllKeyMappings(a);delete this.registry_[a];return!0}; +DASH:189,EQUALS:187,COMMA:188,PERIOD:190,SLASH:191,APOSTROPHE:192,TILDE:192,SINGLE_QUOTE:222,OPEN_SQUARE_BRACKET:219,BACKSLASH:220,CLOSE_SQUARE_BRACKET:221,WIN_KEY:224,MAC_FF_META:224,MAC_WK_CMD_LEFT:91,MAC_WK_CMD_RIGHT:93,WIN_IME:229,VK_NONAME:252,PHANTOM:255}};var module$exports$Blockly$ShortcutRegistry={ShortcutRegistry:function(){this.reset()}};module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.prototype.reset=function(){this.registry_=Object.create(null);this.keyMap_=Object.create(null)};module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.prototype.register=function(a,b){if(this.registry_[a.name]&&!b)throw Error('Shortcut with name "'+a.name+'" already exists.');this.registry_[a.name]=a}; +module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.prototype.unregister=function(a){if(!this.registry_[a])return console.warn('Keyboard shortcut with name "'+a+'" not found.'),!1;this.removeAllKeyMappings(a);delete this.registry_[a];return!0}; module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.prototype.addKeyMapping=function(a,b,c){a=String(a);var d=this.keyMap_[a];if(d&&!c)throw Error('Shortcut with name "'+b+'" collides with shortcuts '+d.toString());d&&c?d.unshift(b):this.keyMap_[a]=[b]}; module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.prototype.removeKeyMapping=function(a,b,c){var d=this.keyMap_[a];if(!d&&!c)return console.warn('No keyboard shortcut with name "'+b+'" registered with key code "'+a+'"'),!1;var e=d.indexOf(b);if(-1b.indexOf(d))throw Error(d+" is not a valid modifier key.");}; -module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.prototype.createSerializedKey=function(a,b){var c="";if(b){this.checkModifiers_(b);for(var d in module$exports$Blockly$ShortcutRegistry.ShortcutRegistry.modifierKeys)-1a&&0<=b&&256>b&&0<=c&&256>c)? (0,module$exports$Blockly$utils$colour.rgbToHex)(a,b,c):null};module$exports$Blockly$utils$colour.rgbToHex=function(a,b,c){b=a<<16|b<<8|c;return 16>a?"#"+(16777216|b).toString(16).substr(1):"#"+b.toString(16)};module$exports$Blockly$utils$colour.hexToRgb=function(a){a=(0,module$exports$Blockly$utils$colour.parse)(a);if(!a)return[0,0,0];a=parseInt(a.substr(1),16);return[a>>16,a>>8&255,a&255]}; @@ -405,8 +417,8 @@ this.FIELD_COLOUR_FULL_BLOCK=this.FIELD_TEXTINPUT_BOX_SHADOW=!1;this.FIELD_COLOU "#4286f4";this.CURSOR_WS_WIDTH=100;this.WS_CURSOR_HEIGHT=5;this.CURSOR_STACK_PADDING=10;this.CURSOR_BLOCK_PADDING=2;this.CURSOR_STROKE_WIDTH=4;this.FULL_BLOCK_FIELDS=!1;this.INSERTION_MARKER_COLOUR="#000000";this.INSERTION_MARKER_OPACITY=.2;this.SHAPES={PUZZLE:1,NOTCH:2}}}; module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.init=function(){this.JAGGED_TEETH=this.makeJaggedTeeth();this.NOTCH=this.makeNotch();this.START_HAT=this.makeStartHat();this.PUZZLE_TAB=this.makePuzzleTab();this.INSIDE_CORNERS=this.makeInsideCorners();this.OUTSIDE_CORNERS=this.makeOutsideCorners()}; module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.setTheme=function(a){this.blockStyles=Object.create(null);var b=a.blockStyles,c;for(c in b)this.blockStyles[c]=this.validatedBlockStyle_(b[c]);this.setDynamicProperties_(a)};module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.setDynamicProperties_=function(a){this.setFontConstants_(a);this.setComponentConstants_(a);this.ADD_START_HATS=null!==a.startHats?a.startHats:this.ADD_START_HATS}; -module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.setFontConstants_=function(a){this.FIELD_TEXT_FONTFAMILY=a.fontStyle&&void 0!==a.fontStyle.family?a.fontStyle.family:this.FIELD_TEXT_FONTFAMILY;this.FIELD_TEXT_FONTWEIGHT=a.fontStyle&&void 0!==a.fontStyle.weight?a.fontStyle.weight:this.FIELD_TEXT_FONTWEIGHT;this.FIELD_TEXT_FONTSIZE=a.fontStyle&&void 0!==a.fontStyle.size?a.fontStyle.size:this.FIELD_TEXT_FONTSIZE;a=(0,module$exports$Blockly$utils$dom.measureFontMetrics)("Hg", -this.FIELD_TEXT_FONTSIZE+"pt",this.FIELD_TEXT_FONTWEIGHT,this.FIELD_TEXT_FONTFAMILY);this.FIELD_TEXT_HEIGHT=a.height;this.FIELD_TEXT_BASELINE=a.baseline}; +module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.setFontConstants_=function(a){a.fontStyle&&a.fontStyle.family&&(this.FIELD_TEXT_FONTFAMILY=a.fontStyle.family);a.fontStyle&&a.fontStyle.weight&&(this.FIELD_TEXT_FONTWEIGHT=a.fontStyle.weight);a.fontStyle&&a.fontStyle.size&&(this.FIELD_TEXT_FONTSIZE=a.fontStyle.size);a=(0,module$exports$Blockly$utils$dom.measureFontMetrics)("Hg",this.FIELD_TEXT_FONTSIZE+"pt",this.FIELD_TEXT_FONTWEIGHT,this.FIELD_TEXT_FONTFAMILY);this.FIELD_TEXT_HEIGHT= +a.height;this.FIELD_TEXT_BASELINE=a.baseline}; module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.setComponentConstants_=function(a){this.CURSOR_COLOUR=a.getComponentStyle("cursorColour")||this.CURSOR_COLOUR;this.MARKER_COLOUR=a.getComponentStyle("markerColour")||this.MARKER_COLOUR;this.INSERTION_MARKER_COLOUR=a.getComponentStyle("insertionMarkerColour")||this.INSERTION_MARKER_COLOUR;this.INSERTION_MARKER_OPACITY=Number(a.getComponentStyle("insertionMarkerOpacity"))||this.INSERTION_MARKER_OPACITY}; module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.getBlockStyleForColour=function(a){var b="auto_"+a;this.blockStyles[b]||(this.blockStyles[b]=this.createBlockStyle_(a));return{style:this.blockStyles[b],name:b}};module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.getBlockStyle=function(a){return this.blockStyles[a||""]||(a&&0===a.indexOf("auto_")?this.getBlockStyleForColour(a.substring(5)).style:this.createBlockStyle_("#000000"))}; module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.createBlockStyle_=function(a){return this.validatedBlockStyle_({colourPrimary:a})}; @@ -432,15 +444,14 @@ module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototyp module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.injectCSS_=function(a,b){b=this.getCSS_(b);a="blockly-renderer-style-"+a;this.cssNode_=document.getElementById(a);var c=b.join("\n");this.cssNode_?this.cssNode_.firstChild.textContent=c:(b=document.createElement("style"),b.id=a,a=document.createTextNode(c),b.appendChild(a),document.head.insertBefore(b,document.head.firstChild),this.cssNode_=b)}; module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.getCSS_=function(a){return[a+" .blocklyText, ",a+" .blocklyFlyoutLabelText {","font: "+this.FIELD_TEXT_FONTWEIGHT+" "+this.FIELD_TEXT_FONTSIZE+"pt "+this.FIELD_TEXT_FONTFAMILY+";","}",a+" .blocklyText {","fill: #fff;","}",a+" .blocklyNonEditableText>rect,",a+" .blocklyEditableText>rect {","fill: "+this.FIELD_BORDER_RECT_COLOUR+";","fill-opacity: .6;","stroke: none;","}",a+" .blocklyNonEditableText>text,",a+" .blocklyEditableText>text {", "fill: #000;","}",a+" .blocklyFlyoutLabelText {","fill: #000;","}",a+" .blocklyText.blocklyBubbleText {","fill: #000;","}",a+" .blocklyEditableText:not(.editing):hover>rect {","stroke: #fff;","stroke-width: 2;","}",a+" .blocklyHtmlInput {","font-family: "+this.FIELD_TEXT_FONTFAMILY+";","font-weight: "+this.FIELD_TEXT_FONTWEIGHT+";","}",a+" .blocklySelected>.blocklyPath {","stroke: #fc3;","stroke-width: 3px;","}",a+" .blocklyHighlightedConnectionPath {","stroke: #fc3;","}",a+" .blocklyReplaceable .blocklyPath {", -"fill-opacity: .5;","}",a+" .blocklyReplaceable .blocklyPathLight,",a+" .blocklyReplaceable .blocklyPathDark {","display: none;","}",a+" .blocklyInsertionMarker>.blocklyPath {","fill-opacity: "+this.INSERTION_MARKER_OPACITY+";","stroke: none;","}"]};var module$exports$Blockly$fieldRegistry={register:function(a,b){(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.FIELD,a,b)},unregister:function(a){(0,module$exports$Blockly$registry.unregister)(module$exports$Blockly$registry.Type.FIELD,a)},fromJson:function(a){var b=(0,module$exports$Blockly$registry.getObject)(module$exports$Blockly$registry.Type.FIELD,a.type);return b?b.fromJson(a):(console.warn("Blockly could not create a field of type "+a.type+". The field is probably not being registered. This could be because the file is not loaded, the field does not register itself (Issue #1584), or the registration is not being reached."), -null)}};var module$exports$Blockly$IASTNodeLocation={IASTNodeLocation:function(){}};var module$exports$Blockly$IASTNodeLocationSvg={IASTNodeLocationSvg:function(){}};var module$exports$Blockly$IASTNodeLocationWithBlock={IASTNodeLocationWithBlock:function(){}};var module$exports$Blockly$IKeyboardAccessible={IKeyboardAccessible:function(){}};var module$exports$Blockly$IRegistrable={IRegistrable:function(){}};var module$exports$Blockly$MarkerManager={MarkerManager:function(a){this.cursorSvg_=this.cursor_=null;this.markers_=Object.create(null);this.workspace_=a}};module$exports$Blockly$MarkerManager.MarkerManager.LOCAL_MARKER="local_marker_1"; -module$exports$Blockly$MarkerManager.MarkerManager.prototype.registerMarker=function(a,b){this.markers_[a]&&this.unregisterMarker(a);b.setDrawer(this.workspace_.getRenderer().makeMarkerDrawer(this.workspace_,b));this.setMarkerSvg(b.getDrawer().createDom());this.markers_[a]=b}; +"fill-opacity: .5;","}",a+" .blocklyReplaceable .blocklyPathLight,",a+" .blocklyReplaceable .blocklyPathDark {","display: none;","}",a+" .blocklyInsertionMarker>.blocklyPath {","fill-opacity: "+this.INSERTION_MARKER_OPACITY+";","stroke: none;","}"]};var module$exports$Blockly$blockRendering$Field={Field:function(a,b,c){module$exports$Blockly$blockRendering$Measurable.Measurable.call(this,a);this.field=b;this.isEditable=b.EDITABLE;this.flipRtl=b.getFlipRtl();this.type|=module$exports$Blockly$blockRendering$Types.Types.FIELD;a=this.field.getSize();this.height=a.height;this.width=a.width;this.parentInput=c}};$.$jscomp.inherits(module$exports$Blockly$blockRendering$Field.Field,module$exports$Blockly$blockRendering$Measurable.Measurable);var module$exports$Blockly$fieldRegistry={register:function(a,b){(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.FIELD,a,b)},unregister:function(a){(0,module$exports$Blockly$registry.unregister)(module$exports$Blockly$registry.Type.FIELD,a)},fromJson:function(a){var b=(0,module$exports$Blockly$registry.getObject)(module$exports$Blockly$registry.Type.FIELD,a.type);return b?b.fromJson(a):(console.warn("Blockly could not create a field of type "+a.type+". The field is probably not being registered. This could be because the file is not loaded, the field does not register itself (Issue #1584), or the registration is not being reached."), +null)}};var module$exports$Blockly$IASTNodeLocation={IASTNodeLocation:function(){}};var module$exports$Blockly$IASTNodeLocationSvg={IASTNodeLocationSvg:function(){}};var module$exports$Blockly$IASTNodeLocationWithBlock={IASTNodeLocationWithBlock:function(){}};var module$exports$Blockly$IKeyboardAccessible={IKeyboardAccessible:function(){}};var module$exports$Blockly$IRegistrable={IRegistrable:function(){}};var module$exports$Blockly$MarkerManager={MarkerManager:function(a){this.cursorSvg_=this.cursor_=null;this.markers_=Object.create(null);this.workspace_=a;this.markerSvg_=null}};module$exports$Blockly$MarkerManager.MarkerManager.prototype.registerMarker=function(a,b){this.markers_[a]&&this.unregisterMarker(a);b.setDrawer(this.workspace_.getRenderer().makeMarkerDrawer(this.workspace_,b));this.setMarkerSvg(b.getDrawer().createDom());this.markers_[a]=b}; module$exports$Blockly$MarkerManager.MarkerManager.prototype.unregisterMarker=function(a){var b=this.markers_[a];if(b)b.dispose(),delete this.markers_[a];else throw Error("Marker with ID "+a+" does not exist. Can only unregister markers that exist.");};module$exports$Blockly$MarkerManager.MarkerManager.prototype.getCursor=function(){return this.cursor_};module$exports$Blockly$MarkerManager.MarkerManager.prototype.getMarker=function(a){return this.markers_[a]||null}; module$exports$Blockly$MarkerManager.MarkerManager.prototype.setCursor=function(a){this.cursor_&&this.cursor_.getDrawer()&&this.cursor_.getDrawer().dispose();if(this.cursor_=a)a=this.workspace_.getRenderer().makeMarkerDrawer(this.workspace_,this.cursor_),this.cursor_.setDrawer(a),this.setCursorSvg(this.cursor_.getDrawer().createDom())}; module$exports$Blockly$MarkerManager.MarkerManager.prototype.setCursorSvg=function(a){a?(this.workspace_.getBlockCanvas().appendChild(a),this.cursorSvg_=a):this.cursorSvg_=null};module$exports$Blockly$MarkerManager.MarkerManager.prototype.setMarkerSvg=function(a){a?this.workspace_.getBlockCanvas()&&(this.cursorSvg_?this.workspace_.getBlockCanvas().insertBefore(a,this.cursorSvg_):this.workspace_.getBlockCanvas().appendChild(a)):this.markerSvg_=null}; -module$exports$Blockly$MarkerManager.MarkerManager.prototype.updateMarkers=function(){this.workspace_.keyboardAccessibilityMode&&this.cursorSvg_&&this.workspace_.getCursor().draw()};module$exports$Blockly$MarkerManager.MarkerManager.prototype.dispose=function(){for(var a=Object.keys(this.markers_),b=0,c;c=a[b];b++)this.unregisterMarker(c);this.markers_=null;this.cursor_&&(this.cursor_.dispose(),this.cursor_=null)};var module$exports$Blockly$Events$BlockChange={BlockChange:function(a,b,c,d,e){module$exports$Blockly$Events$BlockChange.BlockChange.superClass_.constructor.call(this,a);a&&(this.element="undefined"===typeof b?"":b,this.name="undefined"===typeof c?"":c,this.oldValue="undefined"===typeof d?"":d,this.newValue="undefined"===typeof e?"":e)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$Events$BlockChange.BlockChange,module$exports$Blockly$Events$BlockBase.BlockBase); -module$exports$Blockly$Events$BlockChange.BlockChange.prototype.type=module$exports$Blockly$Events$utils.CHANGE;module$exports$Blockly$Events$BlockChange.BlockChange.prototype.toJson=function(){var a=module$exports$Blockly$Events$BlockChange.BlockChange.superClass_.toJson.call(this);a.element=this.element;this.name&&(a.name=this.name);a.oldValue=this.oldValue;a.newValue=this.newValue;return a}; -module$exports$Blockly$Events$BlockChange.BlockChange.prototype.fromJson=function(a){module$exports$Blockly$Events$BlockChange.BlockChange.superClass_.fromJson.call(this,a);this.element=a.element;this.name=a.name;this.oldValue=a.oldValue;this.newValue=a.newValue};module$exports$Blockly$Events$BlockChange.BlockChange.prototype.isNull=function(){return this.oldValue===this.newValue}; +module$exports$Blockly$MarkerManager.MarkerManager.prototype.updateMarkers=function(){this.workspace_.keyboardAccessibilityMode&&this.cursorSvg_&&this.workspace_.getCursor().draw()};module$exports$Blockly$MarkerManager.MarkerManager.prototype.dispose=function(){for(var a=Object.keys(this.markers_),b=0,c;c=a[b];b++)this.unregisterMarker(c);this.markers_=null;this.cursor_&&(this.cursor_.dispose(),this.cursor_=null)};module$exports$Blockly$MarkerManager.MarkerManager.LOCAL_MARKER="local_marker_1";var module$exports$Blockly$utils$Sentinel={Sentinel:function(){}};var module$exports$Blockly$Events$BlockChange={BlockChange:function(a,b,c,d,e){module$exports$Blockly$Events$BlockBase.BlockBase.call(this,a);this.type=module$exports$Blockly$Events$utils.CHANGE;a&&(this.element="undefined"===typeof b?"":b,this.name="undefined"===typeof c?"":c,this.oldValue="undefined"===typeof d?"":d,this.newValue="undefined"===typeof e?"":e)}};$.$jscomp.inherits(module$exports$Blockly$Events$BlockChange.BlockChange,module$exports$Blockly$Events$BlockBase.BlockBase); +module$exports$Blockly$Events$BlockChange.BlockChange.prototype.toJson=function(){var a=module$exports$Blockly$Events$BlockBase.BlockBase.prototype.toJson.call(this);a.element=this.element;this.name&&(a.name=this.name);a.oldValue=this.oldValue;a.newValue=this.newValue;return a}; +module$exports$Blockly$Events$BlockChange.BlockChange.prototype.fromJson=function(a){module$exports$Blockly$Events$BlockBase.BlockBase.prototype.fromJson.call(this,a);this.element=a.element;this.name=a.name;this.oldValue=a.oldValue;this.newValue=a.newValue};module$exports$Blockly$Events$BlockChange.BlockChange.prototype.isNull=function(){return this.oldValue===this.newValue}; module$exports$Blockly$Events$BlockChange.BlockChange.prototype.run=function(a){var b=this.getEventWorkspace_().getBlockById(this.blockId);if(b)switch(b.mutator&&b.mutator.setVisible(!1),a=a?this.newValue:this.oldValue,this.element){case "field":(b=b.getField(this.name))?b.setValue(a):console.warn("Can't set non-existent field: "+this.name);break;case "comment":b.setCommentText(a||null);break;case "collapsed":b.setCollapsed(!!a);break;case "disabled":b.setEnabled(!a);break;case "inline":b.setInputsInline(!!a); break;case "mutation":var c=module$exports$Blockly$Events$BlockChange.BlockChange.getExtraBlockState_(b);b.loadExtraState?b.loadExtraState(JSON.parse(a||"{}")):b.domToMutation&&b.domToMutation((0,$.module$exports$Blockly$Xml.textToDom)(a||""));(0,module$exports$Blockly$Events$utils.fire)(new module$exports$Blockly$Events$BlockChange.BlockChange(b,"mutation",null,c,a));break;default:console.warn("Unknown change type: "+this.element)}else console.warn("Can't change non-existent block: "+ this.blockId)};module$exports$Blockly$Events$BlockChange.BlockChange.getExtraBlockState_=function(a){return a.saveExtraState?(a=a.saveExtraState())?JSON.stringify(a):"":a.mutationToDom?(a=a.mutationToDom())?(0,$.module$exports$Blockly$Xml.domToText)(a):"":""};(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.EVENT,module$exports$Blockly$Events$utils.CHANGE,module$exports$Blockly$Events$BlockChange.BlockChange);var module$exports$Blockly$blockAnimations={},module$contents$Blockly$blockAnimations_disconnectPid=0,module$contents$Blockly$blockAnimations_disconnectGroup=null; @@ -450,7 +461,9 @@ module$exports$Blockly$blockAnimations.connectionUiEffect=function(a){var b=a.wo new Date,c)}};var module$contents$Blockly$blockAnimations_connectionUiStep=function(a,b,c){var d=(new Date-b)/150;1a.workspace.scale)){var b=a.getHeightWidth().height;b=Math.atan(10/b)/Math.PI*180;a.RTL||(b*=-1);module$contents$Blockly$blockAnimations_disconnectUiStep(a.getSvgRoot(),b,new Date)}}; var module$contents$Blockly$blockAnimations_disconnectUiStep=function(a,b,c){var d=(new Date-c)/200;11'),d.appendChild(c),b.push(d));if($.module$exports$Blockly$blocks.Blocks.variables_get)for(a.sort(module$exports$Blockly$VariableModel.VariableModel.compareByName), +$.module$exports$Blockly$Variables.flyoutCategoryBlocks=function(a){a=a.getVariablesOfType("");var b=[];if(01'),d.appendChild(c),b.push(d));if(module$exports$Blockly$blocks.Blocks.variables_get)for(a.sort(module$exports$Blockly$VariableModel.VariableModel.compareByName), c=0;d=a[c];c++){var e=(0,$.module$exports$Blockly$utils$xml.createElement)("block");e.setAttribute("type","variables_get");e.setAttribute("gap",8);e.appendChild((0,$.module$exports$Blockly$Variables.generateVariableFieldDom)(d));b.push(e)}}return b};$.module$exports$Blockly$Variables.VAR_LETTER_OPTIONS="ijkmnopqrstuvwxyzabcdefgh"; $.module$exports$Blockly$Variables.generateUniqueName=function(a){return(0,$.module$exports$Blockly$Variables.generateUniqueNameFromOptions)($.module$exports$Blockly$Variables.VAR_LETTER_OPTIONS.charAt(0),a.getAllVariableNames())}; $.module$exports$Blockly$Variables.generateUniqueNameFromOptions=function(a,b){if(!b.length)return a;for(var c=$.module$exports$Blockly$Variables.VAR_LETTER_OPTIONS,d="",e=c.indexOf(a);;){for(var f=!1,g=0;gc||b.getSourceBlock().isInsertionMarker())return!1;switch(b.type){case $.module$exports$Blockly$ConnectionType.ConnectionType.PREVIOUS_STATEMENT:return this.canConnectToPrevious_(a,b);case $.module$exports$Blockly$ConnectionType.ConnectionType.OUTPUT_VALUE:if(b.isConnected()&&!b.targetBlock().isInsertionMarker()||a.isConnected())return!1;break;case $.module$exports$Blockly$ConnectionType.ConnectionType.INPUT_VALUE:if(b.isConnected()&& !b.targetBlock().isMovable()&&!b.targetBlock().isShadow())return!1;break;case $.module$exports$Blockly$ConnectionType.ConnectionType.NEXT_STATEMENT:if(b.isConnected()&&!a.getSourceBlock().nextConnection&&!b.targetBlock().isShadow()&&b.targetBlock().nextConnection)return!1;break;default:return!1}return-1!==$.module$exports$Blockly$common.draggingConnections.indexOf(b)?!1:!0}; module$exports$Blockly$ConnectionChecker.ConnectionChecker.prototype.canConnectToPrevious_=function(a,b){if(a.targetConnection||-1!==$.module$exports$Blockly$common.draggingConnections.indexOf(b))return!1;if(!b.targetConnection)return!0;a=b.targetBlock();return a.isInsertionMarker()?!a.getPreviousBlock():!1};(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.CONNECTION_CHECKER,module$exports$Blockly$registry.DEFAULT,module$exports$Blockly$ConnectionChecker.ConnectionChecker);var module$exports$Blockly$Workspace={},module$contents$Blockly$Workspace_WorkspaceDB_=Object.create(null); -module$exports$Blockly$Workspace.Workspace=function(a){this.id=(0,module$exports$Blockly$utils$idGenerator.genUid)();module$contents$Blockly$Workspace_WorkspaceDB_[this.id]=this;this.options=a||new module$exports$Blockly$Options.Options({});this.RTL=!!this.options.RTL;this.horizontalLayout=!!this.options.horizontalLayout;this.toolboxPosition=this.options.toolboxPosition;this.connectionChecker=new ((0,module$exports$Blockly$registry.getClassFromOptions)(module$exports$Blockly$registry.Type.CONNECTION_CHECKER, -this.options,!0))(this);this.topBlocks_=[];this.topComments_=[];this.commentDB_=Object.create(null);this.listeners_=[];this.undoStack_=[];this.redoStack_=[];this.blockDB_=Object.create(null);this.typedBlocksDB_=Object.create(null);this.variableMap_=new module$exports$Blockly$VariableMap.VariableMap(this);this.potentialVariableMap_=null};module$exports$Blockly$Workspace.Workspace.prototype.rendered=!1;module$exports$Blockly$Workspace.Workspace.prototype.isClearing=!1; -module$exports$Blockly$Workspace.Workspace.prototype.MAX_UNDO=1024;module$exports$Blockly$Workspace.Workspace.prototype.connectionDBList=null;module$exports$Blockly$Workspace.Workspace.prototype.dispose=function(){this.listeners_.length=0;this.clear();delete module$contents$Blockly$Workspace_WorkspaceDB_[this.id]};module$exports$Blockly$Workspace.Workspace.SCAN_ANGLE=3; -module$exports$Blockly$Workspace.Workspace.prototype.sortObjects_=function(a,b){a=a.getRelativeToSurfaceXY();b=b.getRelativeToSurfaceXY();return a.y+module$exports$Blockly$Workspace.Workspace.prototype.sortObjects_.offset*a.x-(b.y+module$exports$Blockly$Workspace.Workspace.prototype.sortObjects_.offset*b.x)};module$exports$Blockly$Workspace.Workspace.prototype.addTopBlock=function(a){this.topBlocks_.push(a)}; -module$exports$Blockly$Workspace.Workspace.prototype.removeTopBlock=function(a){if(!(0,module$exports$Blockly$utils$array.removeElem)(this.topBlocks_,a))throw Error("Block not present in workspace's list of top-most blocks.");}; +module$exports$Blockly$Workspace.Workspace=function(a){this.id=(0,module$exports$Blockly$utils$idGenerator.genUid)();module$contents$Blockly$Workspace_WorkspaceDB_[this.id]=this;this.options=a||new module$exports$Blockly$Options.Options({});this.RTL=!!this.options.RTL;this.horizontalLayout=!!this.options.horizontalLayout;this.toolboxPosition=this.options.toolboxPosition;this.isClearing=this.isMutator=this.isFlyout=this.rendered=!1;this.MAX_UNDO=1024;this.connectionDBList=null;this.connectionChecker= +new ((0,module$exports$Blockly$registry.getClassFromOptions)(module$exports$Blockly$registry.Type.CONNECTION_CHECKER,this.options,!0))(this);this.topBlocks_=[];this.topComments_=[];this.commentDB_=Object.create(null);this.listeners_=[];this.undoStack_=[];this.redoStack_=[];this.blockDB_=Object.create(null);this.typedBlocksDB_=Object.create(null);this.variableMap_=new module$exports$Blockly$VariableMap.VariableMap(this);this.potentialVariableMap_=null}; +module$exports$Blockly$Workspace.Workspace.prototype.dispose=function(){this.listeners_.length=0;this.clear();delete module$contents$Blockly$Workspace_WorkspaceDB_[this.id]};module$exports$Blockly$Workspace.Workspace.prototype.sortObjects_=function(a,b){a=a.getRelativeToSurfaceXY();b=b.getRelativeToSurfaceXY();return a.y+module$exports$Blockly$Workspace.Workspace.prototype.sortObjects_.offset*a.x-(b.y+module$exports$Blockly$Workspace.Workspace.prototype.sortObjects_.offset*b.x)}; +module$exports$Blockly$Workspace.Workspace.prototype.addTopBlock=function(a){this.topBlocks_.push(a)};module$exports$Blockly$Workspace.Workspace.prototype.removeTopBlock=function(a){if(!(0,module$exports$Blockly$utils$array.removeElem)(this.topBlocks_,a))throw Error("Block not present in workspace's list of top-most blocks.");}; module$exports$Blockly$Workspace.Workspace.prototype.getTopBlocks=function(a){var b=[].concat(this.topBlocks_);a&&1this.MAX_UNDO&&0<=this.MAX_UNDO;)this.undoStack_.shift();for(var b=0;bb-$.module$exports$Blockly$internalConstants.CURRENT_CONNECTION_PREFERENCE)}if(this.localConnection_|| +module$exports$Blockly$InsertionMarkerManager.InsertionMarkerManager.prototype.shouldUpdatePreviews_=function(a,b){var c=a.local,d=a.closest;a=a.radius;if(c&&d){if(this.localConnection_&&this.closestConnection_){if(this.closestConnection_===d&&this.localConnection_===c)return!1;c=this.localConnection_.x+b.x-this.closestConnection_.x;b=this.localConnection_.y+b.y-this.closestConnection_.y;b=Math.sqrt(c*c+b*b);return!(d&&a>b-$.module$exports$Blockly$config.config.currentConnectionPreference)}if(this.localConnection_|| this.closestConnection_)console.error("Only one of localConnection_ and closestConnection_ was set.");else return!0}else return!(!this.localConnection_||!this.closestConnection_);console.error("Returning true from shouldUpdatePreviews, but it's not clear why.");return!0}; -module$exports$Blockly$InsertionMarkerManager.InsertionMarkerManager.prototype.getCandidate_=function(a){for(var b=this.getStartRadius_(),c=null,d=null,e=0;e(this.flyout_?$.module$exports$Blockly$internalConstants.FLYOUT_DRAG_RADIUS:$.module$exports$Blockly$internalConstants.DRAG_RADIUS)}; +module$exports$Blockly$Gesture.Gesture.prototype.updateDragDelta_=function(a){this.currentDragDeltaXY_=module$exports$Blockly$utils$Coordinate.Coordinate.difference(a,this.mouseDownXY_);return this.hasExceededDragRadius_?!1:this.hasExceededDragRadius_=module$exports$Blockly$utils$Coordinate.Coordinate.magnitude(this.currentDragDeltaXY_)>(this.flyout_?$.module$exports$Blockly$config.config.flyoutDragRadius:$.module$exports$Blockly$config.config.dragRadius)}; module$exports$Blockly$Gesture.Gesture.prototype.updateIsDraggingFromFlyout_=function(){return this.targetBlock_&&this.flyout_.isBlockCreatable_(this.targetBlock_)?!this.flyout_.isScrollable()||this.flyout_.isDragTowardWorkspace(this.currentDragDeltaXY_)?(this.startWorkspace_=this.flyout_.targetWorkspace,this.startWorkspace_.updateScreenCalculationsIfScrolled(),(0,module$exports$Blockly$Events$utils.getGroup)()||(0,module$exports$Blockly$Events$utils.setGroup)(!0),this.startBlock_=null,this.targetBlock_= this.flyout_.createBlock(this.targetBlock_),this.targetBlock_.select(),!0):!1:!1};module$exports$Blockly$Gesture.Gesture.prototype.updateIsDraggingBubble_=function(){if(!this.startBubble_)return!1;this.isDraggingBubble_=!0;this.startDraggingBubble_();return!0}; module$exports$Blockly$Gesture.Gesture.prototype.updateIsDraggingBlock_=function(){if(!this.targetBlock_)return!1;this.flyout_?this.isDraggingBlock_=this.updateIsDraggingFromFlyout_():this.targetBlock_.isMovable()&&(this.isDraggingBlock_=!0);return this.isDraggingBlock_?(this.startDraggingBlock_(),!0):!1}; @@ -691,9 +701,8 @@ module$exports$Blockly$Gesture.Gesture.prototype.setStartBlock=function(a){this. module$exports$Blockly$Gesture.Gesture.prototype.setStartWorkspace_=function(a){this.startWorkspace_||(this.startWorkspace_=a)};module$exports$Blockly$Gesture.Gesture.prototype.setStartFlyout_=function(a){this.flyout_||(this.flyout_=a)};module$exports$Blockly$Gesture.Gesture.prototype.isBubbleClick_=function(){return!!this.startBubble_&&!this.hasExceededDragRadius_};module$exports$Blockly$Gesture.Gesture.prototype.isBlockClick_=function(){return!!this.startBlock_&&!this.hasExceededDragRadius_&&!this.isFieldClick_()}; module$exports$Blockly$Gesture.Gesture.prototype.isFieldClick_=function(){return(this.startField_?this.startField_.isClickable():!1)&&!this.hasExceededDragRadius_&&(!this.flyout_||!this.flyout_.autoClose)};module$exports$Blockly$Gesture.Gesture.prototype.isWorkspaceClick_=function(){return!this.startBlock_&&!this.startBubble_&&!this.startField_&&!this.hasExceededDragRadius_}; module$exports$Blockly$Gesture.Gesture.prototype.isDragging=function(){return this.isDraggingWorkspace_||this.isDraggingBlock_||this.isDraggingBubble_};module$exports$Blockly$Gesture.Gesture.prototype.hasStarted=function(){return this.hasStarted_};module$exports$Blockly$Gesture.Gesture.prototype.getInsertionMarkers=function(){return this.blockDragger_?this.blockDragger_.getInsertionMarkers():[]}; -module$exports$Blockly$Gesture.Gesture.prototype.getCurrentDragger=function(){return this.isDraggingBlock_?this.blockDragger_:this.isDraggingWorkspace_?this.workspaceDragger_:this.isDraggingBubble_?this.bubbleDragger_:null};module$exports$Blockly$Gesture.Gesture.inProgress=function(){for(var a=module$exports$Blockly$Workspace.Workspace.getAll(),b=0,c;c=a[b];b++)if(c.currentGesture_)return!0;return!1};var module$exports$Blockly$Field={Field:function(a,b,c){this.value_=this.DEFAULT_VALUE;this.tooltip_=this.validator_=null;this.size_=new module$exports$Blockly$utils$Size.Size(0,0);this.constants_=this.mouseDownWrapper_=this.textContent_=this.textElement_=this.borderRect_=this.fieldGroup_=this.markerSvg_=this.cursorSvg_=null;c&&this.configure_(c);this.setValue(a);b&&this.setValidator(b)}};module$exports$Blockly$Field.Field.prototype.DEFAULT_VALUE=null; -module$exports$Blockly$Field.Field.prototype.name=void 0;module$exports$Blockly$Field.Field.prototype.disposed=!1;module$exports$Blockly$Field.Field.prototype.maxDisplayLength=50;module$exports$Blockly$Field.Field.prototype.sourceBlock_=null;module$exports$Blockly$Field.Field.prototype.isDirty_=!0;module$exports$Blockly$Field.Field.prototype.visible_=!0;module$exports$Blockly$Field.Field.prototype.enabled_=!0;module$exports$Blockly$Field.Field.prototype.clickTarget_=null; -module$exports$Blockly$Field.Field.NBSP="\u00a0";module$exports$Blockly$Field.Field.prototype.EDITABLE=!0;module$exports$Blockly$Field.Field.prototype.SERIALIZABLE=!1;module$exports$Blockly$Field.Field.prototype.configure_=function(a){var b=a.tooltip;"string"===typeof b&&(b=(0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(a.tooltip));b&&this.setTooltip(b)}; +module$exports$Blockly$Gesture.Gesture.prototype.getCurrentDragger=function(){return this.isDraggingBlock_?this.blockDragger_:this.isDraggingWorkspace_?this.workspaceDragger_:this.isDraggingBubble_?this.bubbleDragger_:null};module$exports$Blockly$Gesture.Gesture.inProgress=function(){for(var a=module$exports$Blockly$Workspace.Workspace.getAll(),b=0,c;c=a[b];b++)if(c.currentGesture_)return!0;return!1};var module$exports$Blockly$Field={Field:function(a,b,c){this.name=void 0;this.value_=this.constructor.prototype.DEFAULT_VALUE;this.tooltip_=this.validator_=null;this.size_=new module$exports$Blockly$utils$Size.Size(0,0);this.constants_=this.mouseDownWrapper_=this.textContent_=this.textElement_=this.borderRect_=this.fieldGroup_=this.markerSvg_=this.cursorSvg_=null;this.disposed=!1;this.maxDisplayLength=50;this.sourceBlock_=null;this.enabled_=this.visible_=this.isDirty_=!0;this.suffixField=this.prefixField= +this.clickTarget_=null;this.EDITABLE=!0;this.SERIALIZABLE=!1;this.CURSOR="";a!==module$exports$Blockly$Field.Field.SKIP_SETUP&&(c&&this.configure_(c),this.setValue(a),b&&this.setValidator(b))}};module$exports$Blockly$Field.Field.prototype.configure_=function(a){var b=a.tooltip;"string"===typeof b&&(b=(0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(a.tooltip));b&&this.setTooltip(b)}; module$exports$Blockly$Field.Field.prototype.setSourceBlock=function(a){if(this.sourceBlock_)throw Error("Field already bound to a block");this.sourceBlock_=a};module$exports$Blockly$Field.Field.prototype.getConstants=function(){!this.constants_&&this.sourceBlock_&&this.sourceBlock_.workspace&&this.sourceBlock_.workspace.rendered&&(this.constants_=this.sourceBlock_.workspace.getRenderer().getConstants());return this.constants_};module$exports$Blockly$Field.Field.prototype.getSourceBlock=function(){return this.sourceBlock_}; module$exports$Blockly$Field.Field.prototype.init=function(){this.fieldGroup_||(this.fieldGroup_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.G,{},null),this.isVisible()||(this.fieldGroup_.style.display="none"),this.sourceBlock_.getSvgRoot().appendChild(this.fieldGroup_),this.initView(),this.updateEditable(),this.setTooltip(this.tooltip_),this.bindEvents_(),this.initModel())}; module$exports$Blockly$Field.Field.prototype.initView=function(){this.createBorderRect_();this.createTextElement_()};module$exports$Blockly$Field.Field.prototype.initModel=function(){}; @@ -703,38 +712,39 @@ module$exports$Blockly$Field.Field.prototype.bindEvents_=function(){(0,module$ex module$exports$Blockly$Field.Field.prototype.saveState=function(a){a=this.saveLegacyState(module$exports$Blockly$Field.Field);return null!==a?a:this.getValue()};module$exports$Blockly$Field.Field.prototype.loadState=function(a){this.loadLegacyState(module$exports$Blockly$Field.Field,a)||this.setValue(a)}; module$exports$Blockly$Field.Field.prototype.saveLegacyState=function(a){return a.prototype.saveState===this.saveState&&a.prototype.toXml!==this.toXml?(a=(0,$.module$exports$Blockly$utils$xml.createElement)("field"),a.setAttribute("name",this.name||""),(0,$.module$exports$Blockly$Xml.domToText)(this.toXml(a)).replace(' xmlns="https://developers.google.com/blockly/xml"',"")):null}; module$exports$Blockly$Field.Field.prototype.loadLegacyState=function(a,b){return a.prototype.loadState===this.loadState&&a.prototype.fromXml!==this.fromXml?(this.fromXml((0,$.module$exports$Blockly$Xml.textToDom)(b)),!0):!1}; -module$exports$Blockly$Field.Field.prototype.dispose=function(){module$exports$Blockly$DropDownDiv.DropDownDiv.hideIfOwner(this);(0,module$exports$Blockly$WidgetDiv.hideIfOwner)(this);(0,module$exports$Blockly$Tooltip.unbindMouseEvents)(this.getClickTarget_());this.mouseDownWrapper_&&(0,module$exports$Blockly$browserEvents.unbind)(this.mouseDownWrapper_);(0,module$exports$Blockly$utils$dom.removeNode)(this.fieldGroup_);this.disposed=!0}; +module$exports$Blockly$Field.Field.prototype.dispose=function(){(0,module$exports$Blockly$dropDownDiv.hideIfOwner)(this);(0,module$exports$Blockly$WidgetDiv.hideIfOwner)(this);(0,module$exports$Blockly$Tooltip.unbindMouseEvents)(this.getClickTarget_());this.mouseDownWrapper_&&(0,module$exports$Blockly$browserEvents.unbind)(this.mouseDownWrapper_);(0,module$exports$Blockly$utils$dom.removeNode)(this.fieldGroup_);this.disposed=!0}; module$exports$Blockly$Field.Field.prototype.updateEditable=function(){var a=this.fieldGroup_;this.EDITABLE&&a&&(this.enabled_&&this.sourceBlock_.isEditable()?((0,module$exports$Blockly$utils$dom.addClass)(a,"blocklyEditableText"),(0,module$exports$Blockly$utils$dom.removeClass)(a,"blocklyNonEditableText"),a.style.cursor=this.CURSOR):((0,module$exports$Blockly$utils$dom.addClass)(a,"blocklyNonEditableText"),(0,module$exports$Blockly$utils$dom.removeClass)(a,"blocklyEditableText"),a.style.cursor=""))}; -module$exports$Blockly$Field.Field.prototype.setEnabled=function(a){this.enabled_=a;this.updateEditable()};module$exports$Blockly$Field.Field.prototype.isEnabled=function(){return this.enabled_};module$exports$Blockly$Field.Field.prototype.isClickable=function(){return this.enabled_&&!!this.sourceBlock_&&this.sourceBlock_.isEditable()&&!!this.showEditor_&&"function"===typeof this.showEditor_}; +module$exports$Blockly$Field.Field.prototype.setEnabled=function(a){this.enabled_=a;this.updateEditable()};module$exports$Blockly$Field.Field.prototype.isEnabled=function(){return this.enabled_};module$exports$Blockly$Field.Field.prototype.isClickable=function(){return this.enabled_&&!!this.sourceBlock_&&this.sourceBlock_.isEditable()&&this.showEditor_!==module$exports$Blockly$Field.Field.prototype.showEditor_}; module$exports$Blockly$Field.Field.prototype.isCurrentlyEditable=function(){return this.enabled_&&this.EDITABLE&&!!this.sourceBlock_&&this.sourceBlock_.isEditable()};module$exports$Blockly$Field.Field.prototype.isSerializable=function(){var a=!1;this.name&&(this.SERIALIZABLE?a=!0:this.EDITABLE&&(console.warn("Detected an editable field that was not serializable. Please define SERIALIZABLE property as true on all editable custom fields. Proceeding with serialization."),a=!0));return a}; module$exports$Blockly$Field.Field.prototype.isVisible=function(){return this.visible_};module$exports$Blockly$Field.Field.prototype.setVisible=function(a){if(this.visible_!==a){this.visible_=a;var b=this.getSvgRoot();b&&(b.style.display=a?"block":"none")}};module$exports$Blockly$Field.Field.prototype.setValidator=function(a){this.validator_=a};module$exports$Blockly$Field.Field.prototype.getValidator=function(){return this.validator_};module$exports$Blockly$Field.Field.prototype.getSvgRoot=function(){return this.fieldGroup_}; -module$exports$Blockly$Field.Field.prototype.applyColour=function(){};module$exports$Blockly$Field.Field.prototype.render_=function(){this.textContent_&&(this.textContent_.nodeValue=this.getDisplayText_());this.updateSize_()};module$exports$Blockly$Field.Field.prototype.showEditor=function(a){this.isClickable()&&this.showEditor_(a)}; +module$exports$Blockly$Field.Field.prototype.applyColour=function(){};module$exports$Blockly$Field.Field.prototype.render_=function(){this.textContent_&&(this.textContent_.nodeValue=this.getDisplayText_());this.updateSize_()};module$exports$Blockly$Field.Field.prototype.showEditor=function(a){this.isClickable()&&this.showEditor_(a)};module$exports$Blockly$Field.Field.prototype.showEditor_=function(a){}; module$exports$Blockly$Field.Field.prototype.updateSize_=function(a){var b=this.getConstants();a=void 0!==a?a:this.borderRect_?this.getConstants().FIELD_BORDER_RECT_X_PADDING:0;var c=2*a,d=b.FIELD_TEXT_HEIGHT,e=0;this.textElement_&&(e=(0,module$exports$Blockly$utils$dom.getFastTextWidth)(this.textElement_,b.FIELD_TEXT_FONTSIZE,b.FIELD_TEXT_FONTWEIGHT,b.FIELD_TEXT_FONTFAMILY),c+=e);this.borderRect_&&(d=Math.max(d,b.FIELD_BORDER_RECT_HEIGHT));this.size_.height=d;this.size_.width=c;this.positionTextElement_(a, e);this.positionBorderRect_()};module$exports$Blockly$Field.Field.prototype.positionTextElement_=function(a,b){if(this.textElement_){var c=this.getConstants(),d=this.size_.height/2;this.textElement_.setAttribute("x",this.sourceBlock_.RTL?this.size_.width-b-a:a);this.textElement_.setAttribute("y",c.FIELD_TEXT_BASELINE_CENTER?d:d-c.FIELD_TEXT_HEIGHT/2+c.FIELD_TEXT_BASELINE)}}; module$exports$Blockly$Field.Field.prototype.positionBorderRect_=function(){this.borderRect_&&(this.borderRect_.setAttribute("width",this.size_.width),this.borderRect_.setAttribute("height",this.size_.height),this.borderRect_.setAttribute("rx",this.getConstants().FIELD_BORDER_RECT_RADIUS),this.borderRect_.setAttribute("ry",this.getConstants().FIELD_BORDER_RECT_RADIUS))}; module$exports$Blockly$Field.Field.prototype.getSize=function(){if(!this.isVisible())return new module$exports$Blockly$utils$Size.Size(0,0);this.isDirty_?(this.render_(),this.isDirty_=!1):this.visible_&&0===this.size_.width&&(console.warn("Deprecated use of setting size_.width to 0 to rerender a field. Set field.isDirty_ to true instead."),this.render_());return this.size_}; module$exports$Blockly$Field.Field.prototype.getScaledBBox=function(){if(this.borderRect_){var a=this.borderRect_.getBoundingClientRect();var b=(0,module$exports$Blockly$utils$style.getPageOffset)(this.borderRect_);var c=a.width;var d=a.height}else d=this.sourceBlock_.getHeightWidth(),a=this.sourceBlock_.workspace.scale,b=this.getAbsoluteXY_(),c=d.width*a,d=d.height*a,module$exports$Blockly$utils$userAgent.GECKO?(b.x+=1.5*a,b.y+=1.5*a):module$exports$Blockly$utils$userAgent.EDGE||module$exports$Blockly$utils$userAgent.IE|| (b.x-=.5*a,b.y-=.5*a),c+=1*a,d+=1*a;return new module$exports$Blockly$utils$Rect.Rect(b.y,b.y+d,b.x,b.x+c)};module$exports$Blockly$Field.Field.prototype.getDisplayText_=function(){var a=this.getText();if(!a)return module$exports$Blockly$Field.Field.NBSP;a.length>this.maxDisplayLength&&(a=a.substring(0,this.maxDisplayLength-2)+"\u2026");a=a.replace(/\s/g,module$exports$Blockly$Field.Field.NBSP);this.sourceBlock_&&this.sourceBlock_.RTL&&(a+="\u200f");return a}; -module$exports$Blockly$Field.Field.prototype.getText=function(){if(this.getText_){var a=this.getText_.call(this);if(null!==a)return String(a)}return String(this.getValue())};module$exports$Blockly$Field.Field.prototype.markDirty=function(){this.isDirty_=!0;this.constants_=null};module$exports$Blockly$Field.Field.prototype.forceRerender=function(){this.isDirty_=!0;this.sourceBlock_&&this.sourceBlock_.rendered&&(this.sourceBlock_.render(),this.sourceBlock_.bumpNeighbours(),this.updateMarkers_())}; +module$exports$Blockly$Field.Field.prototype.getText=function(){var a=this.getText_();return null!==a?String(a):String(this.getValue())};module$exports$Blockly$Field.Field.prototype.getText_=function(){return null};module$exports$Blockly$Field.Field.prototype.markDirty=function(){this.isDirty_=!0;this.constants_=null}; +module$exports$Blockly$Field.Field.prototype.forceRerender=function(){this.isDirty_=!0;this.sourceBlock_&&this.sourceBlock_.rendered&&(this.sourceBlock_.render(),this.sourceBlock_.bumpNeighbours(),this.updateMarkers_())}; module$exports$Blockly$Field.Field.prototype.setValue=function(a){if(null!==a){var b=this.doClassValidation_(a);a=this.processValidation_(a,b);if(!(a instanceof Error)){if(b=this.getValidator())if(b=b.call(this,a),a=this.processValidation_(a,b),a instanceof Error)return;b=this.sourceBlock_;if(!b||!b.disposed){var c=this.getValue();c===a?this.doValueUpdate_(a):(this.doValueUpdate_(a),b&&(0,module$exports$Blockly$Events$utils.isEnabled)()&&(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.CHANGE))(b, "field",this.name||null,c,a)),this.isDirty_&&this.forceRerender())}}}};module$exports$Blockly$Field.Field.prototype.processValidation_=function(a,b){if(null===b)return this.doValueInvalid_(a),this.isDirty_&&this.forceRerender(),Error();void 0!==b&&(a=b);return a};module$exports$Blockly$Field.Field.prototype.getValue=function(){return this.value_};module$exports$Blockly$Field.Field.prototype.doClassValidation_=function(a){return null===a||void 0===a?null:a}; module$exports$Blockly$Field.Field.prototype.doValueUpdate_=function(a){this.value_=a;this.isDirty_=!0};module$exports$Blockly$Field.Field.prototype.doValueInvalid_=function(a){};module$exports$Blockly$Field.Field.prototype.onMouseDown_=function(a){this.sourceBlock_&&this.sourceBlock_.workspace&&(a=this.sourceBlock_.workspace.getGesture(a))&&a.setStartField(this)}; module$exports$Blockly$Field.Field.prototype.setTooltip=function(a){a||""===a||(a=this.sourceBlock_);var b=this.getClickTarget_();b?b.tooltip=a:this.tooltip_=a};module$exports$Blockly$Field.Field.prototype.getTooltip=function(){var a=this.getClickTarget_();return a?(0,module$exports$Blockly$Tooltip.getTooltipOfObject)(a):(0,module$exports$Blockly$Tooltip.getTooltipOfObject)({tooltip:this.tooltip_})}; -module$exports$Blockly$Field.Field.prototype.getClickTarget_=function(){return this.clickTarget_||this.getSvgRoot()};module$exports$Blockly$Field.Field.prototype.getAbsoluteXY_=function(){return(0,module$exports$Blockly$utils$style.getPageOffset)(this.getClickTarget_())};module$exports$Blockly$Field.Field.prototype.referencesVariables=function(){return!1}; +module$exports$Blockly$Field.Field.prototype.getClickTarget_=function(){return this.clickTarget_||this.getSvgRoot()};module$exports$Blockly$Field.Field.prototype.getAbsoluteXY_=function(){return(0,module$exports$Blockly$utils$style.getPageOffset)(this.getClickTarget_())};module$exports$Blockly$Field.Field.prototype.referencesVariables=function(){return!1};module$exports$Blockly$Field.Field.prototype.refreshVariableName=function(){}; module$exports$Blockly$Field.Field.prototype.getParentInput=function(){for(var a=null,b=this.sourceBlock_,c=b.inputList,d=0;da.height;e&&(b-=d);this.debugElements_.push((0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"rowSpacerRect blockRenderDebug",x:c?-(a.xPos+a.width):a.xPos,y:b,width:a.width,height:d,stroke:e?"black":"blue",fill:"blue","fill-opacity":"0.5","stroke-width":"1px"}, this.svgRoot_))}}; module$exports$Blockly$blockRendering$Debug.Debug.prototype.drawSpacerElem=function(a,b,c){if(module$exports$Blockly$blockRendering$Debug.Debug.config.elemSpacers){b=Math.abs(a.width);var d=0>a.width,e=d?a.xPos-b:a.xPos;c&&(e=-(e+b));this.debugElements_.push((0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"elemSpacerRect blockRenderDebug",x:e,y:a.centerline-a.height/2,width:b,height:a.height,stroke:"pink",fill:d?"black":"pink","fill-opacity":"0.5", "stroke-width":"1px"},this.svgRoot_))}}; module$exports$Blockly$blockRendering$Debug.Debug.prototype.drawRenderedElem=function(a,b){if(module$exports$Blockly$blockRendering$Debug.Debug.config.elems){var c=a.xPos;b&&(c=-(c+a.width));b=a.centerline-a.height/2;this.debugElements_.push((0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"rowRenderingRect blockRenderDebug",x:c,y:b,width:a.width,height:a.height,stroke:"black",fill:"none","stroke-width":"1px"},this.svgRoot_));module$exports$Blockly$blockRendering$Types.Types.isField(a)&& -a.field instanceof $.module$exports$Blockly$FieldLabel.FieldLabel&&this.debugElements_.push((0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"rowRenderingRect blockRenderDebug",x:c,y:b+this.constants_.FIELD_TEXT_BASELINE,width:a.width,height:"0.1px",stroke:"red",fill:"none","stroke-width":"0.5px"},this.svgRoot_))}module$exports$Blockly$blockRendering$Types.Types.isInput(a)&&module$exports$Blockly$blockRendering$Debug.Debug.config.connections&& -this.drawConnection(a.connectionModel)}; +a instanceof module$exports$Blockly$blockRendering$Field.Field&&a.field instanceof $.module$exports$Blockly$FieldLabel.FieldLabel&&this.debugElements_.push((0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"rowRenderingRect blockRenderDebug",x:c,y:b+this.constants_.FIELD_TEXT_BASELINE,width:a.width,height:"0.1px",stroke:"red",fill:"none","stroke-width":"0.5px"},this.svgRoot_))}module$exports$Blockly$blockRendering$Types.Types.isInput(a)&&a instanceof +module$exports$Blockly$blockRendering$InputConnection.InputConnection&&module$exports$Blockly$blockRendering$Debug.Debug.config.connections&&this.drawConnection(a.connectionModel)}; module$exports$Blockly$blockRendering$Debug.Debug.prototype.drawConnection=function(a){if(module$exports$Blockly$blockRendering$Debug.Debug.config.connections){if(a.type===$.module$exports$Blockly$ConnectionType.ConnectionType.INPUT_VALUE){var b=4;var c="magenta";var d="none"}else a.type===$.module$exports$Blockly$ConnectionType.ConnectionType.OUTPUT_VALUE?(b=2,d=c="magenta"):a.type===$.module$exports$Blockly$ConnectionType.ConnectionType.NEXT_STATEMENT?(b=4,c="goldenrod",d="none"):a.type===$.module$exports$Blockly$ConnectionType.ConnectionType.PREVIOUS_STATEMENT&& (b=2,d=c="goldenrod");this.debugElements_.push((0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.CIRCLE,{"class":"blockRenderDebug",cx:a.offsetInBlock_.x,cy:a.offsetInBlock_.y,r:b,fill:d,stroke:c},this.svgRoot_))}}; module$exports$Blockly$blockRendering$Debug.Debug.prototype.drawRenderedRow=function(a,b,c){module$exports$Blockly$blockRendering$Debug.Debug.config.rows&&(this.debugElements_.push((0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"elemRenderingRect blockRenderDebug",x:c?-(a.xPos+a.width):a.xPos,y:a.yPos,width:a.width,height:a.height,stroke:"red",fill:"none","stroke-width":"1px"},this.svgRoot_)),module$exports$Blockly$blockRendering$Types.Types.isTopOrBottomRow(a)|| @@ -743,19 +753,20 @@ module$exports$Blockly$blockRendering$Debug.Debug.prototype.drawRowWithElements= module$exports$Blockly$blockRendering$Debug.Debug.prototype.drawBoundingBox=function(a){if(module$exports$Blockly$blockRendering$Debug.Debug.config.blockBounds){var b=a.RTL?-a.width:0;this.debugElements_.push((0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"blockBoundingBox blockRenderDebug",x:b,y:0,width:a.width,height:a.height,stroke:"black",fill:"none","stroke-width":"1px","stroke-dasharray":"5,5"},this.svgRoot_));module$exports$Blockly$blockRendering$Debug.Debug.config.connectedBlockBounds&& (b=a.RTL?-a.widthWithChildren:0,this.debugElements_.push((0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"blockRenderDebug",x:b,y:0,width:a.widthWithChildren,height:a.height,stroke:"#DF57BC",fill:"none","stroke-width":"1px","stroke-dasharray":"3,3"},this.svgRoot_)))}}; module$exports$Blockly$blockRendering$Debug.Debug.prototype.drawDebug=function(a,b){this.clearElems();this.svgRoot_=a.getSvgRoot();this.randomColour_="#"+Math.floor(16777215*Math.random()).toString(16);for(var c=0,d=0;da||a>this.fieldRow.length)throw Error("index "+a+" out of bounds.");if(!(b||""===b&&c))return a;"string"===typeof b&&(b=(0,module$exports$Blockly$fieldRegistry.fromJson)({type:"field_label",text:b}));b.setSourceBlock(this.sourceBlock_);this.sourceBlock_.rendered&&(b.init(),b.applyColour());b.name=c;b.setVisible(this.isVisible());b.prefixField&&(a=this.insertFieldAt(a,b.prefixField));this.fieldRow.splice(a,0,b);a++;b.suffixField&& (a=this.insertFieldAt(a,b.suffixField));this.sourceBlock_.rendered&&(this.sourceBlock_=this.sourceBlock_,this.sourceBlock_.render(),this.sourceBlock_.bumpNeighbours());return a}; $.module$exports$Blockly$Input.Input.prototype.removeField=function(a,b){for(var c=0,d;d=this.fieldRow[c];c++)if(d.name===a)return d.dispose(),this.fieldRow.splice(c,1),this.sourceBlock_.rendered&&(this.sourceBlock_=this.sourceBlock_,this.sourceBlock_.render(),this.sourceBlock_.bumpNeighbours()),!0;if(b)return!1;throw Error('Field "'+a+'" not found.');};$.module$exports$Blockly$Input.Input.prototype.isVisible=function(){return this.visible_}; $.module$exports$Blockly$Input.Input.prototype.setVisible=function(a){var b=[];if(this.visible_===a)return b;this.visible_=a;for(var c=0,d;d=this.fieldRow[c];c++)d.setVisible(a);this.connection&&(this.connection=this.connection,a?b=this.connection.startTrackingAll():this.connection.stopTrackingAll(),c=this.connection.targetBlock())&&(c.getSvgRoot().style.display=a?"block":"none");return b};$.module$exports$Blockly$Input.Input.prototype.markDirty=function(){for(var a=0,b;b=this.fieldRow[a];a++)b.markDirty()}; $.module$exports$Blockly$Input.Input.prototype.setCheck=function(a){if(!this.connection)throw Error("This input does not have a connection.");this.connection.setCheck(a);return this};$.module$exports$Blockly$Input.Input.prototype.setAlign=function(a){this.align=a;this.sourceBlock_.rendered&&(this.sourceBlock_=this.sourceBlock_,this.sourceBlock_.render());return this}; $.module$exports$Blockly$Input.Input.prototype.setShadowDom=function(a){if(!this.connection)throw Error("This input does not have a connection.");this.connection.setShadowDom(a);return this};$.module$exports$Blockly$Input.Input.prototype.getShadowDom=function(){if(!this.connection)throw Error("This input does not have a connection.");return this.connection.getShadowDom()};$.module$exports$Blockly$Input.Input.prototype.init=function(){if(this.sourceBlock_.workspace.rendered)for(var a=0;aa.length)){b=[];for(c=0;c=this.connections_.length)return-1;b=a.y;for(var d=c;0<=d&&this.connections_[d].y===b;){if(this.connections_[d]===a)return d;d--}for(d=c;da)c=d;else{b=d;break}}return b}; module$exports$Blockly$ConnectionDB.ConnectionDB.prototype.removeConnection=function(a,b){a=this.findIndexOfConnection_(a,b);if(-1===a)throw Error("Unable to find connection in connectionDB.");this.connections_.splice(a,1)}; @@ -1100,28 +1141,28 @@ h,!0,g)&&(c=h,g=h.distanceFrom(a)),f++;a.x=e;a.y=d;return{connection:c,radius:g} module$exports$Blockly$ConnectionDB.ConnectionDB.init=function(a){var b=[];b[$.module$exports$Blockly$ConnectionType.ConnectionType.INPUT_VALUE]=new module$exports$Blockly$ConnectionDB.ConnectionDB(a);b[$.module$exports$Blockly$ConnectionType.ConnectionType.OUTPUT_VALUE]=new module$exports$Blockly$ConnectionDB.ConnectionDB(a);b[$.module$exports$Blockly$ConnectionType.ConnectionType.NEXT_STATEMENT]=new module$exports$Blockly$ConnectionDB.ConnectionDB(a);b[$.module$exports$Blockly$ConnectionType.ConnectionType.PREVIOUS_STATEMENT]= new module$exports$Blockly$ConnectionDB.ConnectionDB(a);return b};var module$exports$Blockly$ThemeManager={ThemeManager:function(a,b){this.workspace_=a;this.theme_=b;this.subscribedWorkspaces_=[];this.componentDB_=Object.create(null)}};module$exports$Blockly$ThemeManager.ThemeManager.prototype.getTheme=function(){return this.theme_}; module$exports$Blockly$ThemeManager.ThemeManager.prototype.setTheme=function(a){var b=this.theme_;this.theme_=a;if(a=this.workspace_.getInjectionDiv())b&&(0,module$exports$Blockly$utils$dom.removeClass)(a,b.getClassName()),(0,module$exports$Blockly$utils$dom.addClass)(a,this.theme_.getClassName());for(b=0;a=this.subscribedWorkspaces_[b];b++)a.refreshTheme();b=0;a=Object.keys(this.componentDB_);for(var c;c=a[b];b++)for(var d=0,e;e=this.componentDB_[c][d];d++){var f=e.element;e=e.propertyName;var g= -this.theme_&&this.theme_.getComponentStyle(c);f.style[e]=g||""}b=$jscomp.makeIterator(this.subscribedWorkspaces_);for(a=b.next();!a.done;a=b.next())a.value.hideChaff()};module$exports$Blockly$ThemeManager.ThemeManager.prototype.subscribeWorkspace=function(a){this.subscribedWorkspaces_.push(a)}; +this.theme_&&this.theme_.getComponentStyle(c);f.style[e]=g||""}b=$.$jscomp.makeIterator(this.subscribedWorkspaces_);for(a=b.next();!a.done;a=b.next())a.value.hideChaff()};module$exports$Blockly$ThemeManager.ThemeManager.prototype.subscribeWorkspace=function(a){this.subscribedWorkspaces_.push(a)}; module$exports$Blockly$ThemeManager.ThemeManager.prototype.unsubscribeWorkspace=function(a){if(!(0,module$exports$Blockly$utils$array.removeElem)(this.subscribedWorkspaces_,a))throw Error("Cannot unsubscribe a workspace that hasn't been subscribed.");}; module$exports$Blockly$ThemeManager.ThemeManager.prototype.subscribe=function(a,b,c){this.componentDB_[b]||(this.componentDB_[b]=[]);this.componentDB_[b].push({element:a,propertyName:c});b=this.theme_&&this.theme_.getComponentStyle(b);a.style[c]=b||""}; -module$exports$Blockly$ThemeManager.ThemeManager.prototype.unsubscribe=function(a){if(a)for(var b=Object.keys(this.componentDB_),c=0,d;d=b[c];c++){for(var e=this.componentDB_[d],f=e.length-1;0<=f;f--)e[f].element===a&&e.splice(f,1);this.componentDB_[d].length||delete this.componentDB_[d]}};module$exports$Blockly$ThemeManager.ThemeManager.prototype.dispose=function(){this.componentDB_=this.subscribedWorkspaces_=this.theme_=this.owner_=null};var module$exports$Blockly$TouchGesture={TouchGesture:function(a,b){module$exports$Blockly$TouchGesture.TouchGesture.superClass_.constructor.call(this,a,b);this.isMultiTouch_=!1;this.cachedPoints_=Object.create(null);this.startDistance_=this.previousScale_=0;this.isPinchZoomEnabled_=this.onStartWrapper_=null}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$TouchGesture.TouchGesture,module$exports$Blockly$Gesture.Gesture); -module$exports$Blockly$TouchGesture.TouchGesture.ZOOM_IN_MULTIPLIER=5;module$exports$Blockly$TouchGesture.TouchGesture.ZOOM_OUT_MULTIPLIER=6;module$exports$Blockly$TouchGesture.TouchGesture.prototype.doStart=function(a){this.isPinchZoomEnabled_=this.startWorkspace_.options.zoomOptions&&this.startWorkspace_.options.zoomOptions.pinch;module$exports$Blockly$TouchGesture.TouchGesture.superClass_.doStart.call(this,a);!this.isEnding_&&(0,module$exports$Blockly$Touch.isTouchEvent)(a)&&this.handleTouchStart(a)}; +module$exports$Blockly$ThemeManager.ThemeManager.prototype.unsubscribe=function(a){if(a)for(var b=Object.keys(this.componentDB_),c=0,d;d=b[c];c++){for(var e=this.componentDB_[d],f=e.length-1;0<=f;f--)e[f].element===a&&e.splice(f,1);this.componentDB_[d].length||delete this.componentDB_[d]}};module$exports$Blockly$ThemeManager.ThemeManager.prototype.dispose=function(){this.componentDB_=this.subscribedWorkspaces_=this.theme_=this.owner_=null};var module$exports$Blockly$TouchGesture={},module$contents$Blockly$TouchGesture_ZOOM_IN_MULTIPLIER=5,module$contents$Blockly$TouchGesture_ZOOM_OUT_MULTIPLIER=6;module$exports$Blockly$TouchGesture.TouchGesture=function(a,b){module$exports$Blockly$Gesture.Gesture.call(this,a,b);this.isMultiTouch_=!1;this.cachedPoints_=Object.create(null);this.startDistance_=this.previousScale_=0;this.isPinchZoomEnabled_=this.onStartWrapper_=null};$.$jscomp.inherits(module$exports$Blockly$TouchGesture.TouchGesture,module$exports$Blockly$Gesture.Gesture); +module$exports$Blockly$TouchGesture.TouchGesture.prototype.doStart=function(a){this.isPinchZoomEnabled_=this.startWorkspace_.options.zoomOptions&&this.startWorkspace_.options.zoomOptions.pinch;module$exports$Blockly$Gesture.Gesture.prototype.doStart.call(this,a);!this.isEnding_&&(0,module$exports$Blockly$Touch.isTouchEvent)(a)&&this.handleTouchStart(a)}; module$exports$Blockly$TouchGesture.TouchGesture.prototype.bindMouseEvents=function(a){this.onStartWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(document,"mousedown",null,this.handleStart.bind(this),!0);this.onMoveWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(document,"mousemove",null,this.handleMove.bind(this),!0);this.onUpWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(document,"mouseup",null,this.handleUp.bind(this),!0);a.preventDefault(); a.stopPropagation()};module$exports$Blockly$TouchGesture.TouchGesture.prototype.handleStart=function(a){!this.isDragging()&&(0,module$exports$Blockly$Touch.isTouchEvent)(a)&&(this.handleTouchStart(a),this.isMultiTouch()&&(0,module$exports$Blockly$Touch.longStop)())}; -module$exports$Blockly$TouchGesture.TouchGesture.prototype.handleMove=function(a){this.isDragging()?(0,module$exports$Blockly$Touch.shouldHandleEvent)(a)&&module$exports$Blockly$TouchGesture.TouchGesture.superClass_.handleMove.call(this,a):this.isMultiTouch()?((0,module$exports$Blockly$Touch.isTouchEvent)(a)&&this.handleTouchMove(a),(0,module$exports$Blockly$Touch.longStop)()):module$exports$Blockly$TouchGesture.TouchGesture.superClass_.handleMove.call(this,a)}; -module$exports$Blockly$TouchGesture.TouchGesture.prototype.handleUp=function(a){(0,module$exports$Blockly$Touch.isTouchEvent)(a)&&!this.isDragging()&&this.handleTouchEnd(a);!this.isMultiTouch()||this.isDragging()?(0,module$exports$Blockly$Touch.shouldHandleEvent)(a)&&module$exports$Blockly$TouchGesture.TouchGesture.superClass_.handleUp.call(this,a):(a.preventDefault(),a.stopPropagation(),this.dispose())};module$exports$Blockly$TouchGesture.TouchGesture.prototype.isMultiTouch=function(){return this.isMultiTouch_}; -module$exports$Blockly$TouchGesture.TouchGesture.prototype.dispose=function(){module$exports$Blockly$TouchGesture.TouchGesture.superClass_.dispose.call(this);this.onStartWrapper_&&(0,module$exports$Blockly$browserEvents.unbind)(this.onStartWrapper_)}; +module$exports$Blockly$TouchGesture.TouchGesture.prototype.handleMove=function(a){this.isDragging()?(0,module$exports$Blockly$Touch.shouldHandleEvent)(a)&&module$exports$Blockly$Gesture.Gesture.prototype.handleMove.call(this,a):this.isMultiTouch()?((0,module$exports$Blockly$Touch.isTouchEvent)(a)&&this.handleTouchMove(a),(0,module$exports$Blockly$Touch.longStop)()):module$exports$Blockly$Gesture.Gesture.prototype.handleMove.call(this,a)}; +module$exports$Blockly$TouchGesture.TouchGesture.prototype.handleUp=function(a){(0,module$exports$Blockly$Touch.isTouchEvent)(a)&&!this.isDragging()&&this.handleTouchEnd(a);!this.isMultiTouch()||this.isDragging()?(0,module$exports$Blockly$Touch.shouldHandleEvent)(a)&&module$exports$Blockly$Gesture.Gesture.prototype.handleUp.call(this,a):(a.preventDefault(),a.stopPropagation(),this.dispose())};module$exports$Blockly$TouchGesture.TouchGesture.prototype.isMultiTouch=function(){return this.isMultiTouch_}; +module$exports$Blockly$TouchGesture.TouchGesture.prototype.dispose=function(){module$exports$Blockly$Gesture.Gesture.prototype.dispose.call(this);this.onStartWrapper_&&(0,module$exports$Blockly$browserEvents.unbind)(this.onStartWrapper_)}; module$exports$Blockly$TouchGesture.TouchGesture.prototype.handleTouchStart=function(a){var b=(0,module$exports$Blockly$Touch.getTouchIdentifierFromEvent)(a);this.cachedPoints_[b]=this.getTouchPoint(a);b=Object.keys(this.cachedPoints_);2===b.length&&(this.startDistance_=module$exports$Blockly$utils$Coordinate.Coordinate.distance(this.cachedPoints_[b[0]],this.cachedPoints_[b[1]]),this.isMultiTouch_=!0,a.preventDefault())}; -module$exports$Blockly$TouchGesture.TouchGesture.prototype.handleTouchMove=function(a){var b=(0,module$exports$Blockly$Touch.getTouchIdentifierFromEvent)(a);this.cachedPoints_[b]=this.getTouchPoint(a);b=Object.keys(this.cachedPoints_);this.isPinchZoomEnabled_&&2===b.length?this.handlePinch_(a):module$exports$Blockly$TouchGesture.TouchGesture.superClass_.handleMove.call(this,a)}; -module$exports$Blockly$TouchGesture.TouchGesture.prototype.handlePinch_=function(a){var b=Object.keys(this.cachedPoints_);b=module$exports$Blockly$utils$Coordinate.Coordinate.distance(this.cachedPoints_[b[0]],this.cachedPoints_[b[1]])/this.startDistance_;if(0this.previousScale_){var c=b-this.previousScale_;c=0Object.keys(this.cachedPoints_).length&&(this.cachedPoints_=Object.create(null),this.previousScale_=0)}; -module$exports$Blockly$TouchGesture.TouchGesture.prototype.getTouchPoint=function(a){return this.startWorkspace_?new module$exports$Blockly$utils$Coordinate.Coordinate(a.changedTouches?a.changedTouches[0].pageX:a.pageX,a.changedTouches?a.changedTouches[0].pageY:a.pageY):null};var module$exports$Blockly$WorkspaceAudio={WorkspaceAudio:function(a){this.parentWorkspace_=a;this.SOUNDS_=Object.create(null)}};module$exports$Blockly$WorkspaceAudio.WorkspaceAudio.prototype.lastSound_=null;module$exports$Blockly$WorkspaceAudio.WorkspaceAudio.prototype.dispose=function(){this.SOUNDS_=this.parentWorkspace_=null}; +module$exports$Blockly$TouchGesture.TouchGesture.prototype.handleTouchMove=function(a){var b=(0,module$exports$Blockly$Touch.getTouchIdentifierFromEvent)(a);this.cachedPoints_[b]=this.getTouchPoint(a);b=Object.keys(this.cachedPoints_);this.isPinchZoomEnabled_&&2===b.length?this.handlePinch_(a):module$exports$Blockly$Gesture.Gesture.prototype.handleMove.call(this,a)}; +module$exports$Blockly$TouchGesture.TouchGesture.prototype.handlePinch_=function(a){var b=Object.keys(this.cachedPoints_);b=module$exports$Blockly$utils$Coordinate.Coordinate.distance(this.cachedPoints_[b[0]],this.cachedPoints_[b[1]])/this.startDistance_;if(0this.previousScale_){var c=b-this.previousScale_;c=0Object.keys(this.cachedPoints_).length&&(this.cachedPoints_=Object.create(null),this.previousScale_=0)}; +module$exports$Blockly$TouchGesture.TouchGesture.prototype.getTouchPoint=function(a){return this.startWorkspace_?new module$exports$Blockly$utils$Coordinate.Coordinate(a.changedTouches?a.changedTouches[0].pageX:a.pageX,a.changedTouches?a.changedTouches[0].pageY:a.pageY):null};var module$exports$Blockly$WorkspaceAudio={},module$contents$Blockly$WorkspaceAudio_SOUND_LIMIT=100;module$exports$Blockly$WorkspaceAudio.WorkspaceAudio=function(a){this.parentWorkspace_=a;this.SOUNDS_=Object.create(null);this.lastSound_=null};module$exports$Blockly$WorkspaceAudio.WorkspaceAudio.prototype.dispose=function(){this.SOUNDS_=this.parentWorkspace_=null}; module$exports$Blockly$WorkspaceAudio.WorkspaceAudio.prototype.load=function(a,b){if(a.length){try{var c=new $.module$exports$Blockly$utils$global.globalThis.Audio}catch(h){return}for(var d,e=0;eMath.abs(b-this.oldTop_)&&1>Math.abs(c-this.oldLeft_))){var d=new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.VIEWPORT_CHANGE))(b,c,a,this.id,this.oldScale_);this.oldScale_=a;this.oldTop_=b;this.oldLeft_=c;(0,module$exports$Blockly$Events$utils.fire)(d)}}}; module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.translate=function(a,b){if(this.useWorkspaceDragSurface_&&this.isDragSurfaceActive_)this.workspaceDragSurface_.translateSurface(a,b);else{var c="translate("+a+","+b+") scale("+this.scale+")";this.svgBlockCanvas_.setAttribute("transform",c);this.svgBubbleCanvas_.setAttribute("transform",c)}this.blockDragSurface_&&this.blockDragSurface_.translateAndScaleGroup(a,b,this.scale);this.grid_&&this.grid_.moveTo(a,b);this.maybeFireViewportChangeEvent()}; @@ -1176,13 +1213,13 @@ c,this.scale);this.workspaceDragSurface_.translateSurface(d.x,d.y)}};module$expo module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.setVisible=function(a){this.isVisible_=a;if(this.svgGroup_)if(this.scrollbar&&this.scrollbar.setContainerVisible(a),this.getFlyout()&&this.getFlyout().setContainerVisible(a),this.getParentSvg().style.display=a?"block":"none",this.toolbox_&&this.toolbox_.setVisible(a),a){a=this.getAllBlocks(!1);for(var b=a.length-1;0<=b;b--)a[b].markDirty();this.render();this.toolbox_&&this.toolbox_.position()}else this.hideChaff(!0)}; module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.render=function(){for(var a=this.getAllBlocks(!1),b=a.length-1;0<=b;b--)a[b].render(!1);if(this.currentGesture_)for(a=this.currentGesture_.getInsertionMarkers(),b=0;b=Math.abs(c-h.x)&&1>=Math.abs(d-h.y)){f=!0;break}}if(!f){var k=e.getConnections_(!1);a=0;for(b=void 0;b=k[a];a++)if(b.closest($.module$exports$Blockly$internalConstants.SNAP_RADIUS,new module$exports$Blockly$utils$Coordinate.Coordinate(c,d)).connection){f=!0;break}}f&&(c=this.RTL?c-$.module$exports$Blockly$internalConstants.SNAP_RADIUS:c+$.module$exports$Blockly$internalConstants.SNAP_RADIUS,d+=2*$.module$exports$Blockly$internalConstants.SNAP_RADIUS)}while(f); -e.moveTo(new module$exports$Blockly$utils$Coordinate.Coordinate(c,d))}}finally{(0,module$exports$Blockly$Events$utils.enable)()}(0,module$exports$Blockly$Events$utils.isEnabled)()&&!e.isShadow()&&(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.CREATE))(e));e.select()}; +void 0;b=g[a];a++){var h=b.getRelativeToSurfaceXY();if(1>=Math.abs(c-h.x)&&1>=Math.abs(d-h.y)){f=!0;break}}if(!f){var k=e.getConnections_(!1);a=0;for(b=void 0;b=k[a];a++)if(b.closest($.module$exports$Blockly$config.config.snapRadius,new module$exports$Blockly$utils$Coordinate.Coordinate(c,d)).connection){f=!0;break}}f&&(c=this.RTL?c-$.module$exports$Blockly$config.config.snapRadius:c+$.module$exports$Blockly$config.config.snapRadius,d+=2*$.module$exports$Blockly$config.config.snapRadius)}while(f); +e.moveTo(new module$exports$Blockly$utils$Coordinate.Coordinate(c,d))}}finally{(0,module$exports$Blockly$Events$utils.enable)()}(0,module$exports$Blockly$Events$utils.isEnabled)()&&!e.isShadow()&&(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.CREATE))(e));e.select();return e}; module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.pasteWorkspaceComment_=function(a){(0,module$exports$Blockly$Events$utils.disable)();try{var b=module$exports$Blockly$WorkspaceCommentSvg.fromXml(a,this);var c=parseInt(a.getAttribute("x"),10),d=parseInt(a.getAttribute("y"),10);isNaN(c)||isNaN(d)||(this.RTL&&(c=-c),b.moveBy(c+50,d+50))}finally{(0,module$exports$Blockly$Events$utils.enable)()}(0,module$exports$Blockly$Events$utils.isEnabled)()&&module$exports$Blockly$WorkspaceComment.fireCreateEvent(b); -b.select()};module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.refreshToolboxSelection=function(){var a=this.isFlyout?this.targetWorkspace:this;a&&!a.currentGesture_&&a.toolbox_&&a.toolbox_.getFlyout()&&a.toolbox_.refreshSelection()};module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.renameVariableById=function(a,b){module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.superClass_.renameVariableById.call(this,a,b);this.refreshToolboxSelection()}; -module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.deleteVariableById=function(a){module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.superClass_.deleteVariableById.call(this,a);this.refreshToolboxSelection()};module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.createVariable=function(a,b,c){a=module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.superClass_.createVariable.call(this,a,b,c);this.refreshToolboxSelection();return a}; +b.select();return b};module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.refreshToolboxSelection=function(){var a=this.isFlyout?this.targetWorkspace:this;a&&!a.currentGesture_&&a.toolbox_&&a.toolbox_.getFlyout()&&a.toolbox_.refreshSelection()};module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.renameVariableById=function(a,b){module$exports$Blockly$Workspace.Workspace.prototype.renameVariableById.call(this,a,b);this.refreshToolboxSelection()}; +module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.deleteVariableById=function(a){module$exports$Blockly$Workspace.Workspace.prototype.deleteVariableById.call(this,a);this.refreshToolboxSelection()};module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.createVariable=function(a,b,c){a=module$exports$Blockly$Workspace.Workspace.prototype.createVariable.call(this,a,b,c);this.refreshToolboxSelection();return a}; module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.recordDeleteAreas=function(){module$exports$Blockly$utils.deprecation.warn("WorkspaceSvg.prototype.recordDeleteAreas","June 2021","June 2022","WorkspaceSvg.prototype.recordDragTargets");this.recordDragTargets()}; module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.recordDragTargets=function(){var a=this.componentManager_.getComponents(module$exports$Blockly$ComponentManager.ComponentManager.Capability.DRAG_TARGET,!0);this.dragTargetAreas_=[];for(var b=0,c;c=a[b];b++){var d=c.getClientRect();d&&this.dragTargetAreas_.push({component:c,clientRect:d})}}; module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.getDragTarget=function(a){for(var b=0,c;c=this.dragTargetAreas_[b];b++)if(c.clientRect.contains(a.clientX,a.clientY))return c.component;return null};module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.onMouseDown_=function(a){var b=this.getGesture(a);b&&b.handleWsStart(a,this)}; @@ -1208,34 +1245,34 @@ module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.centerOnBlock=functio module$exports$Blockly$WorkspaceSvg.WorkspaceSvg.prototype.setScale=function(a){this.options.zoomOptions.maxScale&&a>this.options.zoomOptions.maxScale?a=this.options.zoomOptions.maxScale:this.options.zoomOptions.minScale&&a-b||a<-180+b||a>180-b?!0:!1}; module$exports$Blockly$VerticalFlyout.VerticalFlyout.prototype.getClientRect=function(){if(!this.svgGroup_||this.autoClose||!this.isVisible())return null;var a=this.svgGroup_.getBoundingClientRect(),b=a.left;return this.toolboxPosition_===module$exports$Blockly$utils$toolbox.Position.LEFT?new module$exports$Blockly$utils$Rect.Rect(-1E9,1E9,-1E9,b+a.width):new module$exports$Blockly$utils$Rect.Rect(-1E9,1E9,b,1E9)}; module$exports$Blockly$VerticalFlyout.VerticalFlyout.prototype.reflowInternal_=function(){this.workspace_.scale=this.getFlyoutScale();for(var a=0,b=this.workspace_.getTopBlocks(!1),c=0,d;d=b[c];c++){var e=d.getHeightWidth().width;d.outputConnection&&(e-=this.tabWidth_);a=Math.max(a,e)}for(c=0;d=this.buttons_[c];c++)a=Math.max(a,d.width);a+=1.5*this.MARGIN+this.tabWidth_;a*=this.workspace_.scale;a+=module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness;if(this.width_!==a){for(c=0;d=b[c];c++){if(this.RTL){e= -d.getRelativeToSurfaceXY().x;var f=a/this.workspace_.scale-this.MARGIN;d.outputConnection||(f-=this.tabWidth_);d.moveBy(f-e,0)}d.flyoutRect_&&this.moveRectToBlock_(d.flyoutRect_,d)}if(this.RTL)for(b=0;c=this.buttons_[b];b++)d=c.getPosition().y,c.moveTo(a/this.workspace_.scale-c.width-this.MARGIN-this.tabWidth_,d);this.targetWorkspace.toolboxPosition!==this.toolboxPosition_||this.toolboxPosition_!==module$exports$Blockly$utils$toolbox.Position.LEFT||this.targetWorkspace.getToolbox()||this.targetWorkspace.translate(this.targetWorkspace.scrollX+ -a,this.targetWorkspace.scrollY);this.width_=a;this.position();this.targetWorkspace.recordDragTargets()}};(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.FLYOUTS_VERTICAL_TOOLBOX,module$exports$Blockly$registry.DEFAULT,module$exports$Blockly$VerticalFlyout.VerticalFlyout);var module$exports$Blockly$IToolboxItem={IToolboxItem:function(){}};var module$exports$Blockly$ISelectableToolboxItem={ISelectableToolboxItem:function(){}};var module$exports$Blockly$ICollapsibleToolboxItem={ICollapsibleToolboxItem:function(){}};var module$exports$Blockly$ToolboxItem={ToolboxItem:function(a,b,c){this.id_=a.toolboxitemid||(0,module$exports$Blockly$utils$idGenerator.getNextUniqueId)();this.level_=(this.parent_=c||null)?this.parent_.getLevel()+1:0;this.toolboxItemDef_=a;this.parentToolbox_=b;this.workspace_=this.parentToolbox_.getWorkspace()}};module$exports$Blockly$ToolboxItem.ToolboxItem.prototype.init=function(){};module$exports$Blockly$ToolboxItem.ToolboxItem.prototype.getDiv=function(){return null}; -module$exports$Blockly$ToolboxItem.ToolboxItem.prototype.getId=function(){return this.id_};module$exports$Blockly$ToolboxItem.ToolboxItem.prototype.getParent=function(){return null};module$exports$Blockly$ToolboxItem.ToolboxItem.prototype.getLevel=function(){return this.level_};module$exports$Blockly$ToolboxItem.ToolboxItem.prototype.isSelectable=function(){return!1};module$exports$Blockly$ToolboxItem.ToolboxItem.prototype.isCollapsible=function(){return!1}; -module$exports$Blockly$ToolboxItem.ToolboxItem.prototype.dispose=function(){};var module$exports$Blockly$ToolboxCategory={ToolboxCategory:function(a,b,c){module$exports$Blockly$ToolboxCategory.ToolboxCategory.superClass_.constructor.call(this,a,b,c);this.name_=(0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(a.name);this.colour_=this.getColour_(a);this.labelDom_=this.iconDom_=this.rowContents_=this.rowDiv_=this.htmlDiv_=null;this.cssConfig_=this.makeDefaultCssConfig_();(0,$.module$exports$Blockly$utils$object.mixin)(this.cssConfig_,a.cssconfig||a.cssConfig); -this.isDisabled_=this.isHidden_=!1;this.flyoutItems_=[];this.parseContents_(a)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$ToolboxCategory.ToolboxCategory,module$exports$Blockly$ToolboxItem.ToolboxItem);module$exports$Blockly$ToolboxCategory.ToolboxCategory.registrationName="category";module$exports$Blockly$ToolboxCategory.ToolboxCategory.nestedPadding=19;module$exports$Blockly$ToolboxCategory.ToolboxCategory.borderWidth=8; -module$exports$Blockly$ToolboxCategory.ToolboxCategory.defaultBackgroundColour="#57e";module$exports$Blockly$ToolboxCategory.ToolboxCategory.prototype.makeDefaultCssConfig_=function(){return{container:"blocklyToolboxCategory",row:"blocklyTreeRow",rowcontentcontainer:"blocklyTreeRowContentContainer",icon:"blocklyTreeIcon",label:"blocklyTreeLabel",contents:"blocklyToolboxContents",selected:"blocklyTreeSelected",openicon:"blocklyTreeIconOpen",closedicon:"blocklyTreeIconClosed"}}; -module$exports$Blockly$ToolboxCategory.ToolboxCategory.prototype.parseContents_=function(a){var b=a.contents;if(a.custom)this.flyoutItems_=a.custom;else if(b)for(a=0;a>>/sprites.png);\n height: 16px;\n vertical-align: middle;\n visibility: hidden;\n width: 16px;\n }\n\n .blocklyTreeIconClosed {\n background-position: -32px -1px;\n }\n\n .blocklyToolboxDiv[dir="RTL"] .blocklyTreeIconClosed {\n background-position: 0 -1px;\n }\n\n .blocklyTreeSelected>.blocklyTreeIconClosed {\n background-position: -32px -17px;\n }\n\n .blocklyToolboxDiv[dir="RTL"] .blocklyTreeSelected>.blocklyTreeIconClosed {\n background-position: 0 -17px;\n }\n\n .blocklyTreeIconOpen {\n background-position: -16px -1px;\n }\n\n .blocklyTreeSelected>.blocklyTreeIconOpen {\n background-position: -16px -17px;\n }\n\n .blocklyTreeLabel {\n cursor: default;\n font: 16px sans-serif;\n padding: 0 3px;\n vertical-align: middle;\n }\n\n .blocklyToolboxDelete .blocklyTreeLabel {\n cursor: url("<<>>/handdelete.cur"), auto;\n }\n\n .blocklyTreeSelected .blocklyTreeLabel {\n color: #fff;\n }\n'); -(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.TOOLBOX_ITEM,module$exports$Blockly$ToolboxCategory.ToolboxCategory.registrationName,module$exports$Blockly$ToolboxCategory.ToolboxCategory);var module$exports$Blockly$ToolboxSeparator={ToolboxSeparator:function(a,b){module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.superClass_.constructor.call(this,a,b);this.cssConfig_={container:"blocklyTreeSeparator"};(0,$.module$exports$Blockly$utils$object.mixin)(this.cssConfig_,a.cssconfig||a.cssConfig)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$ToolboxSeparator.ToolboxSeparator,module$exports$Blockly$ToolboxItem.ToolboxItem); -module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.registrationName="sep";module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.prototype.init=function(){this.createDom_()};module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.prototype.createDom_=function(){var a=document.createElement("div");(0,module$exports$Blockly$utils$dom.addClass)(a,this.cssConfig_.container);return this.htmlDiv_=a};module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.prototype.getDiv=function(){return this.htmlDiv_}; -module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.prototype.dispose=function(){(0,module$exports$Blockly$utils$dom.removeNode)(this.htmlDiv_)};(0,module$exports$Blockly$Css.register)('\n .blocklyTreeSeparator {\n border-bottom: solid #e5e5e5 1px;\n height: 0;\n margin: 5px 0;\n }\n\n .blocklyToolboxDiv[layout="h"] .blocklyTreeSeparator {\n border-right: solid #e5e5e5 1px;\n border-bottom: none;\n height: auto;\n margin: 0 5px 0 5px;\n padding: 5px 0;\n width: 0;\n }\n'); -(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.TOOLBOX_ITEM,module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.registrationName,module$exports$Blockly$ToolboxSeparator.ToolboxSeparator);var module$exports$Blockly$CollapsibleToolboxCategory={CollapsibleToolboxCategory:function(a,b,c){this.subcategoriesDiv_=null;this.expanded_=!1;this.toolboxItems_=[];module$exports$Blockly$CollapsibleToolboxCategory.CollapsibleToolboxCategory.superClass_.constructor.call(this,a,b,c)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$CollapsibleToolboxCategory.CollapsibleToolboxCategory,module$exports$Blockly$ToolboxCategory.ToolboxCategory); -module$exports$Blockly$CollapsibleToolboxCategory.CollapsibleToolboxCategory.registrationName="collapsibleCategory";module$exports$Blockly$CollapsibleToolboxCategory.CollapsibleToolboxCategory.prototype.makeDefaultCssConfig_=function(){var a=module$exports$Blockly$CollapsibleToolboxCategory.CollapsibleToolboxCategory.superClass_.makeDefaultCssConfig_.call(this);a.contents="blocklyToolboxContents";return a}; +module$exports$Blockly$ToolboxCategory.ToolboxCategory.prototype.updateFlyoutContents=function(a){this.flyoutItems_=[];"string"===typeof a?this.toolboxItemDef_.custom=a:(delete this.toolboxItemDef_.custom,this.toolboxItemDef_.contents=(0,module$exports$Blockly$utils$toolbox.convertFlyoutDefToJsonArray)(a));this.parseContents_(this.toolboxItemDef_)};module$exports$Blockly$ToolboxCategory.ToolboxCategory.prototype.dispose=function(){(0,module$exports$Blockly$utils$dom.removeNode)(this.htmlDiv_)}; +module$exports$Blockly$ToolboxCategory.ToolboxCategory.registrationName="category";module$exports$Blockly$ToolboxCategory.ToolboxCategory.nestedPadding=19;module$exports$Blockly$ToolboxCategory.ToolboxCategory.borderWidth=8;module$exports$Blockly$ToolboxCategory.ToolboxCategory.defaultBackgroundColour="#57e";(0,module$exports$Blockly$Css.register)('\n.blocklyTreeRow:not(.blocklyTreeSelected):hover {\n background-color: rgba(255, 255, 255, .2);\n}\n\n.blocklyToolboxDiv[layout="h"] .blocklyToolboxCategory {\n margin: 1px 5px 1px 0;\n}\n\n.blocklyToolboxDiv[dir="RTL"][layout="h"] .blocklyToolboxCategory {\n margin: 1px 0 1px 5px;\n}\n\n.blocklyTreeRow {\n height: 22px;\n line-height: 22px;\n margin-bottom: 3px;\n padding-right: 8px;\n white-space: nowrap;\n}\n\n.blocklyToolboxDiv[dir="RTL"] .blocklyTreeRow {\n margin-left: 8px;\n padding-right: 0;\n}\n\n.blocklyTreeIcon {\n background-image: url(<<>>/sprites.png);\n height: 16px;\n vertical-align: middle;\n visibility: hidden;\n width: 16px;\n}\n\n.blocklyTreeIconClosed {\n background-position: -32px -1px;\n}\n\n.blocklyToolboxDiv[dir="RTL"] .blocklyTreeIconClosed {\n background-position: 0 -1px;\n}\n\n.blocklyTreeSelected>.blocklyTreeIconClosed {\n background-position: -32px -17px;\n}\n\n.blocklyToolboxDiv[dir="RTL"] .blocklyTreeSelected>.blocklyTreeIconClosed {\n background-position: 0 -17px;\n}\n\n.blocklyTreeIconOpen {\n background-position: -16px -1px;\n}\n\n.blocklyTreeSelected>.blocklyTreeIconOpen {\n background-position: -16px -17px;\n}\n\n.blocklyTreeLabel {\n cursor: default;\n font: 16px sans-serif;\n padding: 0 3px;\n vertical-align: middle;\n}\n\n.blocklyToolboxDelete .blocklyTreeLabel {\n cursor: url("<<>>/handdelete.cur"), auto;\n}\n\n.blocklyTreeSelected .blocklyTreeLabel {\n color: #fff;\n}\n'); +(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.TOOLBOX_ITEM,module$exports$Blockly$ToolboxCategory.ToolboxCategory.registrationName,module$exports$Blockly$ToolboxCategory.ToolboxCategory);var module$exports$Blockly$ToolboxSeparator={ToolboxSeparator:function(a,b){module$exports$Blockly$ToolboxItem.ToolboxItem.call(this,a,b);this.cssConfig_={container:"blocklyTreeSeparator"};this.htmlDiv_=null;(0,$.module$exports$Blockly$utils$object.mixin)(this.cssConfig_,a.cssconfig||a.cssConfig)}};$.$jscomp.inherits(module$exports$Blockly$ToolboxSeparator.ToolboxSeparator,module$exports$Blockly$ToolboxItem.ToolboxItem);module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.prototype.init=function(){this.createDom_()}; +module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.prototype.createDom_=function(){var a=document.createElement("div");(0,module$exports$Blockly$utils$dom.addClass)(a,this.cssConfig_.container);return this.htmlDiv_=a};module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.prototype.getDiv=function(){return this.htmlDiv_};module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.prototype.dispose=function(){(0,module$exports$Blockly$utils$dom.removeNode)(this.htmlDiv_)}; +module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.registrationName="sep";(0,module$exports$Blockly$Css.register)('\n.blocklyTreeSeparator {\n border-bottom: solid #e5e5e5 1px;\n height: 0;\n margin: 5px 0;\n}\n\n.blocklyToolboxDiv[layout="h"] .blocklyTreeSeparator {\n border-right: solid #e5e5e5 1px;\n border-bottom: none;\n height: auto;\n margin: 0 5px 0 5px;\n padding: 5px 0;\n width: 0;\n}\n'); +(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.TOOLBOX_ITEM,module$exports$Blockly$ToolboxSeparator.ToolboxSeparator.registrationName,module$exports$Blockly$ToolboxSeparator.ToolboxSeparator);var module$exports$Blockly$CollapsibleToolboxCategory={CollapsibleToolboxCategory:function(a,b,c){module$exports$Blockly$ToolboxCategory.ToolboxCategory.call(this,a,b,c);this.subcategoriesDiv_=null;this.expanded_=!1;this.toolboxItems_=[]}};$.$jscomp.inherits(module$exports$Blockly$CollapsibleToolboxCategory.CollapsibleToolboxCategory,module$exports$Blockly$ToolboxCategory.ToolboxCategory); +module$exports$Blockly$CollapsibleToolboxCategory.CollapsibleToolboxCategory.prototype.makeDefaultCssConfig_=function(){var a=module$exports$Blockly$ToolboxCategory.ToolboxCategory.prototype.makeDefaultCssConfig_.call(this);a.contents="blocklyToolboxContents";return a}; module$exports$Blockly$CollapsibleToolboxCategory.CollapsibleToolboxCategory.prototype.parseContents_=function(a){var b=a.contents,c=!0;if(a.custom)this.flyoutItems_=a.custom;else if(b)for(a=0;a>>/handdelete.cur"), auto;\n }\n\n .blocklyToolboxGrab {\n cursor: url("<<>>/handclosed.cur"), auto;\n cursor: grabbing;\n cursor: -webkit-grabbing;\n }\n\n /* Category tree in Toolbox. */\n .blocklyToolboxDiv {\n background-color: #ddd;\n overflow-x: visible;\n overflow-y: auto;\n padding: 4px 0 4px 0;\n position: absolute;\n z-index: 70; /* so blocks go under toolbox when dragging */\n -webkit-tap-highlight-color: transparent; /* issue #1345 */\n }\n\n .blocklyToolboxContents {\n display: flex;\n flex-wrap: wrap;\n flex-direction: column;\n }\n\n .blocklyToolboxContents:focus {\n outline: none;\n }\n'); -(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.TOOLBOX,module$exports$Blockly$registry.DEFAULT,module$exports$Blockly$Toolbox.Toolbox);var module$exports$Blockly$HorizontalFlyout={HorizontalFlyout:function(a){module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.superClass_.constructor.call(this,a);this.horizontalLayout=!0}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$HorizontalFlyout.HorizontalFlyout,module$exports$Blockly$Flyout.Flyout); +module$exports$Blockly$Toolbox.Toolbox.prototype.dispose=function(){this.workspace_.getComponentManager().removeComponent("toolbox");this.flyout_.dispose();for(var a=0;a>>/handdelete.cur"), auto;\n}\n\n.blocklyToolboxGrab {\n cursor: url("<<>>/handclosed.cur"), auto;\n cursor: grabbing;\n cursor: -webkit-grabbing;\n}\n\n/* Category tree in Toolbox. */\n.blocklyToolboxDiv {\n background-color: #ddd;\n overflow-x: visible;\n overflow-y: auto;\n padding: 4px 0 4px 0;\n position: absolute;\n z-index: 70; /* so blocks go under toolbox when dragging */\n -webkit-tap-highlight-color: transparent; /* issue #1345 */\n}\n\n.blocklyToolboxContents {\n display: flex;\n flex-wrap: wrap;\n flex-direction: column;\n}\n\n.blocklyToolboxContents:focus {\n outline: none;\n}\n'); +(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.TOOLBOX,module$exports$Blockly$registry.DEFAULT,module$exports$Blockly$Toolbox.Toolbox);var module$exports$Blockly$HorizontalFlyout={HorizontalFlyout:function(a){module$exports$Blockly$Flyout.Flyout.call(this,a);this.horizontalLayout=!0}};$.$jscomp.inherits(module$exports$Blockly$HorizontalFlyout.HorizontalFlyout,module$exports$Blockly$Flyout.Flyout); module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.setMetrics_=function(a){if(this.isVisible()){var b=this.workspace_.getMetricsManager(),c=b.getScrollMetrics(),d=b.getViewMetrics();b=b.getAbsoluteMetrics();"number"===typeof a.x&&(this.workspace_.scrollX=-(c.left+(c.width-d.width)*a.x));this.workspace_.translate(this.workspace_.scrollX+b.left,this.workspace_.scrollY+b.top)}};module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.getX=function(){return 0}; module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.getY=function(){if(!this.isVisible())return 0;var a=this.targetWorkspace.getMetricsManager(),b=a.getAbsoluteMetrics(),c=a.getViewMetrics();a=a.getToolboxMetrics();var d=this.toolboxPosition_===module$exports$Blockly$utils$toolbox.Position.TOP;return this.targetWorkspace.toolboxPosition===this.toolboxPosition_?this.targetWorkspace.getToolbox()?d?a.height:c.height-this.height_:d?0:c.height:d?0:c.height+b.top-this.height_}; module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.position=function(){if(this.isVisible()&&this.targetWorkspace.isVisible()){var a=this.targetWorkspace.getMetricsManager().getViewMetrics();this.width_=a.width;this.setBackgroundPath_(a.width-2*this.CORNER_RADIUS,this.height_-this.CORNER_RADIUS);a=this.getX();var b=this.getY();this.positionAt_(this.width_,this.height_,a,b)}}; module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.setBackgroundPath_=function(a,b){var c=this.toolboxPosition_===module$exports$Blockly$utils$toolbox.Position.TOP,d=["M 0,"+(c?0:this.CORNER_RADIUS)];c?(d.push("h",a+2*this.CORNER_RADIUS),d.push("v",b),d.push("a",this.CORNER_RADIUS,this.CORNER_RADIUS,0,0,1,-this.CORNER_RADIUS,this.CORNER_RADIUS),d.push("h",-a),d.push("a",this.CORNER_RADIUS,this.CORNER_RADIUS,0,0,1,-this.CORNER_RADIUS,-this.CORNER_RADIUS)):(d.push("a",this.CORNER_RADIUS, this.CORNER_RADIUS,0,0,1,this.CORNER_RADIUS,-this.CORNER_RADIUS),d.push("h",a),d.push("a",this.CORNER_RADIUS,this.CORNER_RADIUS,0,0,1,this.CORNER_RADIUS,this.CORNER_RADIUS),d.push("v",b),d.push("h",-a-2*this.CORNER_RADIUS));d.push("z");this.svgBackground_.setAttribute("d",d.join(" "))};module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.scrollToStart=function(){this.workspace_.scrollbar.setX(this.RTL?Infinity:0)}; -module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.wheel_=function(a){var b=(0,module$exports$Blockly$browserEvents.getScrollDeltaPixels)(a);if(b=b.x||b.y){var c=this.workspace_.getMetricsManager(),d=c.getScrollMetrics();b=c.getViewMetrics().left-d.left+b;this.workspace_.scrollbar.setX(b);(0,module$exports$Blockly$WidgetDiv.hide)();module$exports$Blockly$DropDownDiv.DropDownDiv.hideWithoutAnimation()}a.preventDefault();a.stopPropagation()}; +module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.wheel_=function(a){var b=(0,module$exports$Blockly$browserEvents.getScrollDeltaPixels)(a);if(b=b.x||b.y){var c=this.workspace_.getMetricsManager(),d=c.getScrollMetrics();b=c.getViewMetrics().left-d.left+b;this.workspace_.scrollbar.setX(b);(0,module$exports$Blockly$WidgetDiv.hide)();(0,module$exports$Blockly$dropDownDiv.hideWithoutAnimation)()}a.preventDefault();a.stopPropagation()}; module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.layout_=function(a,b){this.workspace_.scale=this.targetWorkspace.scale;var c=this.MARGIN,d=c+this.tabWidth_;this.RTL&&(a=a.reverse());for(var e=0,f;f=a[e];e++)if("block"===f.type){f=f.block;for(var g=f.getDescendants(!1),h=0,k;k=g[h];h++)k.isInFlyout=!0;f.render();g=f.getSvgRoot();h=f.getHeightWidth();k=f.outputConnection?this.tabWidth_:0;k=this.RTL?d+h.width:d-k;f.moveBy(k,c);k=this.createRect_(f,k,c,h,e);d+=h.width+b[e];this.addBlockListeners_(g, f,k)}else"button"===f.type&&(this.initFlyoutButton_(f.button,d,c),d+=f.button.width+b[e])};module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.isDragTowardWorkspace=function(a){a=Math.atan2(a.y,a.x)/Math.PI*180;var b=this.dragAngleRange_;return a<90+b&&a>90-b||a>-90-b&&a<-90+b?!0:!1}; module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.getClientRect=function(){if(!this.svgGroup_||this.autoClose||!this.isVisible())return null;var a=this.svgGroup_.getBoundingClientRect(),b=a.top;return this.toolboxPosition_===module$exports$Blockly$utils$toolbox.Position.TOP?new module$exports$Blockly$utils$Rect.Rect(-1E9,b+a.height,-1E9,1E9):new module$exports$Blockly$utils$Rect.Rect(b,1E9,-1E9,1E9)}; -module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.reflowInternal_=function(){this.workspace_.scale=this.getFlyoutScale();for(var a=0,b=this.workspace_.getTopBlocks(!1),c=0,d;d=b[c];c++)a=Math.max(a,d.getHeightWidth().height);c=this.buttons_;d=0;for(var e;e=c[d];d++)a=Math.max(a,e.height);a+=1.5*this.MARGIN;a*=this.workspace_.scale;a+=module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness;if(this.height_!==a){for(c=0;d=b[c];c++)d.flyoutRect_&&this.moveRectToBlock_(d.flyoutRect_, -d);this.targetWorkspace.toolboxPosition!==this.toolboxPosition_||this.toolboxPosition_!==module$exports$Blockly$utils$toolbox.Position.TOP||this.targetWorkspace.getToolbox()||this.targetWorkspace.translate(this.targetWorkspace.scrollX,this.targetWorkspace.scrollY+a);this.height_=a;this.position();this.targetWorkspace.recordDragTargets()}};(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.FLYOUTS_HORIZONTAL_TOOLBOX,module$exports$Blockly$registry.DEFAULT,module$exports$Blockly$HorizontalFlyout.HorizontalFlyout);$.module$exports$Blockly$Generator={Generator:function(a){this.name_=a;this.FUNCTION_NAME_PLACEHOLDER_REGEXP_=new RegExp(this.FUNCTION_NAME_PLACEHOLDER_,"g")}};$.module$exports$Blockly$Generator.Generator.prototype.INFINITE_LOOP_TRAP=null;$.module$exports$Blockly$Generator.Generator.prototype.STATEMENT_PREFIX=null;$.module$exports$Blockly$Generator.Generator.prototype.STATEMENT_SUFFIX=null;$.module$exports$Blockly$Generator.Generator.prototype.INDENT=" "; -$.module$exports$Blockly$Generator.Generator.prototype.COMMENT_WRAP=60;$.module$exports$Blockly$Generator.Generator.prototype.ORDER_OVERRIDES=[];$.module$exports$Blockly$Generator.Generator.prototype.isInitialized=null; +module$exports$Blockly$HorizontalFlyout.HorizontalFlyout.prototype.reflowInternal_=function(){this.workspace_.scale=this.getFlyoutScale();for(var a=0,b=this.workspace_.getTopBlocks(!1),c=0,d;d=b[c];c++)a=Math.max(a,d.getHeightWidth().height);c=this.buttons_;d=0;for(var e;e=c[d];d++)a=Math.max(a,e.height);a+=1.5*this.MARGIN;a*=this.workspace_.scale;a+=module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness;if(this.height_!==a){for(c=0;d=b[c];c++)this.rectMap_.has(d)&&this.moveRectToBlock_(this.rectMap_.get(d), +d);this.targetWorkspace.toolboxPosition!==this.toolboxPosition_||this.toolboxPosition_!==module$exports$Blockly$utils$toolbox.Position.TOP||this.targetWorkspace.getToolbox()||this.targetWorkspace.translate(this.targetWorkspace.scrollX,this.targetWorkspace.scrollY+a);this.height_=a;this.position();this.targetWorkspace.recordDragTargets()}};(0,module$exports$Blockly$registry.register)(module$exports$Blockly$registry.Type.FLYOUTS_HORIZONTAL_TOOLBOX,module$exports$Blockly$registry.DEFAULT,module$exports$Blockly$HorizontalFlyout.HorizontalFlyout);$.module$exports$Blockly$Generator={Generator:function(a){this.name_=a;this.FUNCTION_NAME_PLACEHOLDER_="{leCUI8hutHZI4480Dc}";this.FUNCTION_NAME_PLACEHOLDER_REGEXP_=new RegExp(this.FUNCTION_NAME_PLACEHOLDER_,"g");this.STATEMENT_SUFFIX=this.STATEMENT_PREFIX=this.INFINITE_LOOP_TRAP=null;this.INDENT=" ";this.COMMENT_WRAP=60;this.ORDER_OVERRIDES=[];this.isInitialized=null;this.RESERVED_WORDS_="";this.nameDB_=this.functionNames_=this.definitions_=void 0}}; $.module$exports$Blockly$Generator.Generator.prototype.workspaceToCode=function(a){a||(console.warn("No workspace specified in workspaceToCode call. Guessing."),a=(0,$.module$exports$Blockly$common.getMainWorkspace)());var b=[];this.init(a);a=a.getTopBlocks(!0);for(var c=0,d;d=a[c];c++){var e=this.blockToCode(d);Array.isArray(e)&&(e=e[0]);e&&(d.outputConnection&&(e=this.scrubNakedValue(e),this.STATEMENT_PREFIX&&!d.suppressPrefixSuffix&&(e=this.injectId(this.STATEMENT_PREFIX,d)+e),this.STATEMENT_SUFFIX&& !d.suppressPrefixSuffix&&(e+=this.injectId(this.STATEMENT_SUFFIX,d))),b.push(e))}b=b.join("\n");b=this.finish(b);b=b.replace(/^\s+\n/,"");b=b.replace(/\n\s+$/,"\n");return b=b.replace(/[ \t]+\n/g,"\n")};$.module$exports$Blockly$Generator.Generator.prototype.prefixLines=function(a,b){return b+a.replace(/(?!\n$)\n/g,"\n"+b)}; $.module$exports$Blockly$Generator.Generator.prototype.allNestedComments=function(a){var b=[];a=a.getDescendants(!0);for(var c=0;ca.length)){b=[];for(c=0;c=a&&this.sourceBlock_.outputConnection&&!b}else this.fullBlockClickTarget_=!1;this.fullBlockClickTarget_?this.clickTarget_=this.sourceBlock_.getSvgRoot():this.createBorderRect_();this.createTextElement_()}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.doClassValidation_=function(a){return null===a||void 0===a?null:String(a)}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.doValueInvalid_=function(a){this.isBeingEdited_&&(this.isTextValid_=!1,a=this.value_,this.value_=this.htmlInput_.untypedDefaultValue_,this.sourceBlock_&&(0,module$exports$Blockly$Events$utils.isEnabled)()&&(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.CHANGE))(this.sourceBlock_,"field",this.name||null,a,this.value_)))}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.doValueUpdate_=function(a){this.isTextValid_=!0;this.value_=a;this.isBeingEdited_||(this.isDirty_=!0)};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.applyColour=function(){this.sourceBlock_&&this.getConstants().FULL_BLOCK_FIELDS&&(this.borderRect_?this.borderRect_.setAttribute("stroke",this.sourceBlock_.style.colourTertiary):this.sourceBlock_.pathObject.svgPath.setAttribute("fill",this.getConstants().FIELD_BORDER_RECT_COLOUR))}; -$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.render_=function(){$.module$exports$Blockly$FieldTextInput.FieldTextInput.superClass_.render_.call(this);if(this.isBeingEdited_){this.resizeEditor_();var a=this.htmlInput_;this.isTextValid_?((0,module$exports$Blockly$utils$dom.removeClass)(a,"blocklyInvalidInput"),(0,module$exports$Blockly$utils$aria.setState)(a,module$exports$Blockly$utils$aria.State.INVALID,!1)):((0,module$exports$Blockly$utils$dom.addClass)(a,"blocklyInvalidInput"), -(0,module$exports$Blockly$utils$aria.setState)(a,module$exports$Blockly$utils$aria.State.INVALID,!0))}};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.setSpellcheck=function(a){a!==this.spellcheck_&&(this.spellcheck_=a,this.htmlInput_&&this.htmlInput_.setAttribute("spellcheck",this.spellcheck_))}; +$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.render_=function(){module$exports$Blockly$Field.Field.prototype.render_.call(this);if(this.isBeingEdited_){this.resizeEditor_();var a=this.htmlInput_;this.isTextValid_?((0,module$exports$Blockly$utils$dom.removeClass)(a,"blocklyInvalidInput"),(0,module$exports$Blockly$utils$aria.setState)(a,module$exports$Blockly$utils$aria.State.INVALID,!1)):((0,module$exports$Blockly$utils$dom.addClass)(a,"blocklyInvalidInput"),(0,module$exports$Blockly$utils$aria.setState)(a, +module$exports$Blockly$utils$aria.State.INVALID,!0))}};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.setSpellcheck=function(a){a!==this.spellcheck_&&(this.spellcheck_=a,this.htmlInput_&&this.htmlInput_.setAttribute("spellcheck",this.spellcheck_))}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.showEditor_=function(a,b){this.workspace_=this.sourceBlock_.workspace;a=b||!1;!a&&(module$exports$Blockly$utils$userAgent.MOBILE||module$exports$Blockly$utils$userAgent.ANDROID||module$exports$Blockly$utils$userAgent.IPAD)?this.showPromptEditor_():this.showInlineEditor_(a)}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.showPromptEditor_=function(){(0,module$exports$Blockly$dialog.prompt)($.module$exports$Blockly$Msg.Msg.CHANGE_VALUE_TITLE,this.getText(),function(a){null!==a&&this.setValue(this.getValueFromEditorText_(a))}.bind(this))}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.showInlineEditor_=function(a){(0,module$exports$Blockly$WidgetDiv.show)(this,this.sourceBlock_.RTL,this.widgetDispose_.bind(this));this.htmlInput_=this.widgetCreate_();this.isBeingEdited_=!0;a||(this.htmlInput_.focus({preventScroll:!0}),this.htmlInput_.select())}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.widgetCreate_=function(){(0,module$exports$Blockly$Events$utils.setGroup)(!0);var a=(0,module$exports$Blockly$WidgetDiv.getDiv)();(0,module$exports$Blockly$utils$dom.addClass)(this.getClickTarget_(),"editing");var b=document.createElement("input");b.className="blocklyHtmlInput";b.setAttribute("spellcheck",this.spellcheck_);var c=this.workspace_.getScale(),d=this.getConstants().FIELD_TEXT_FONTSIZE*c+"pt";a.style.fontSize=d;b.style.fontSize= d;d=$.module$exports$Blockly$FieldTextInput.FieldTextInput.BORDERRADIUS*c+"px";if(this.fullBlockClickTarget_){d=this.getScaledBBox();d=(d.bottom-d.top)/2+"px";var e=this.sourceBlock_.getParent()?this.sourceBlock_.getParent().style.colourTertiary:this.sourceBlock_.style.colourTertiary;b.style.border=1*c+"px solid "+e;a.style.borderRadius=d;a.style.transition="box-shadow 0.25s ease 0s";this.getConstants().FIELD_TEXTINPUT_BOX_SHADOW&&(a.style.boxShadow="rgba(255, 255, 255, 0.3) 0 0 0 "+4*c+"px")}b.style.borderRadius= d;a.appendChild(b);b.value=b.defaultValue=this.getEditorText_(this.value_);b.untypedDefaultValue_=this.value_;b.oldValue_=null;this.resizeEditor_();this.bindInputEvents_(b);return b}; -$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.widgetDispose_=function(){this.isBeingEdited_=!1;this.isTextValid_=!0;this.forceRerender();if(this.onFinishEditing_)this.onFinishEditing_(this.value_);(0,module$exports$Blockly$Events$utils.setGroup)(!1);this.unbindInputEvents_();var a=(0,module$exports$Blockly$WidgetDiv.getDiv)().style;a.width="auto";a.height="auto";a.fontSize="";a.transition="";a.boxShadow="";this.htmlInput_=null;(0,module$exports$Blockly$utils$dom.removeClass)(this.getClickTarget_(), -"editing")};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.bindInputEvents_=function(a){this.onKeyDownWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(a,"keydown",this,this.onHtmlInputKeyDown_);this.onKeyInputWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(a,"input",this,this.onHtmlInputChange_)}; +$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.widgetDispose_=function(){this.isBeingEdited_=!1;this.isTextValid_=!0;this.forceRerender();this.onFinishEditing_(this.value_);(0,module$exports$Blockly$Events$utils.setGroup)(!1);this.unbindInputEvents_();var a=(0,module$exports$Blockly$WidgetDiv.getDiv)().style;a.width="auto";a.height="auto";a.fontSize="";a.transition="";a.boxShadow="";this.htmlInput_=null;(0,module$exports$Blockly$utils$dom.removeClass)(this.getClickTarget_(),"editing")}; +$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.onFinishEditing_=function(a){};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.bindInputEvents_=function(a){this.onKeyDownWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(a,"keydown",this,this.onHtmlInputKeyDown_);this.onKeyInputWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(a,"input",this,this.onHtmlInputChange_)}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.unbindInputEvents_=function(){this.onKeyDownWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onKeyDownWrapper_),this.onKeyDownWrapper_=null);this.onKeyInputWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onKeyInputWrapper_),this.onKeyInputWrapper_=null)}; -$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.onHtmlInputKeyDown_=function(a){a.keyCode===module$exports$Blockly$utils$KeyCodes.KeyCodes.ENTER?((0,module$exports$Blockly$WidgetDiv.hide)(),module$exports$Blockly$DropDownDiv.DropDownDiv.hideWithoutAnimation()):a.keyCode===module$exports$Blockly$utils$KeyCodes.KeyCodes.ESC?(this.setValue(this.htmlInput_.untypedDefaultValue_),(0,module$exports$Blockly$WidgetDiv.hide)(),module$exports$Blockly$DropDownDiv.DropDownDiv.hideWithoutAnimation()): -a.keyCode===module$exports$Blockly$utils$KeyCodes.KeyCodes.TAB&&((0,module$exports$Blockly$WidgetDiv.hide)(),module$exports$Blockly$DropDownDiv.DropDownDiv.hideWithoutAnimation(),this.sourceBlock_.tab(this,!a.shiftKey),a.preventDefault())};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.onHtmlInputChange_=function(a){a=this.htmlInput_.value;a!==this.htmlInput_.oldValue_&&(this.htmlInput_.oldValue_=a,a=this.getValueFromEditorText_(a),this.setValue(a),this.forceRerender(),this.resizeEditor_())}; +$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.onHtmlInputKeyDown_=function(a){a.keyCode===module$exports$Blockly$utils$KeyCodes.KeyCodes.ENTER?((0,module$exports$Blockly$WidgetDiv.hide)(),(0,module$exports$Blockly$dropDownDiv.hideWithoutAnimation)()):a.keyCode===module$exports$Blockly$utils$KeyCodes.KeyCodes.ESC?(this.setValue(this.htmlInput_.untypedDefaultValue_),(0,module$exports$Blockly$WidgetDiv.hide)(),(0,module$exports$Blockly$dropDownDiv.hideWithoutAnimation)()):a.keyCode=== +module$exports$Blockly$utils$KeyCodes.KeyCodes.TAB&&((0,module$exports$Blockly$WidgetDiv.hide)(),(0,module$exports$Blockly$dropDownDiv.hideWithoutAnimation)(),this.sourceBlock_.tab(this,!a.shiftKey),a.preventDefault())};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.onHtmlInputChange_=function(a){a=this.htmlInput_.value;a!==this.htmlInput_.oldValue_&&(this.htmlInput_.oldValue_=a,a=this.getValueFromEditorText_(a),this.setValue(a),this.forceRerender(),this.resizeEditor_())}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.setEditorValue_=function(a){this.isDirty_=!0;this.isBeingEdited_&&(this.htmlInput_.value=this.getEditorText_(a));this.setValue(a)}; $.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.resizeEditor_=function(){var a=(0,module$exports$Blockly$WidgetDiv.getDiv)(),b=this.getScaledBBox();a.style.width=b.right-b.left+"px";a.style.height=b.bottom-b.top+"px";b=new module$exports$Blockly$utils$Coordinate.Coordinate(this.sourceBlock_.RTL?b.right-a.offsetWidth:b.left,b.top);a.style.left=b.x+"px";a.style.top=b.y+"px"};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.isTabNavigable=function(){return!0}; -$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.getText_=function(){return this.isBeingEdited_&&this.htmlInput_?this.htmlInput_.value:null};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.getEditorText_=function(a){return String(a)};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.getValueFromEditorText_=function(a){return a};(0,module$exports$Blockly$fieldRegistry.register)("field_input",$.module$exports$Blockly$FieldTextInput.FieldTextInput);var module$exports$Blockly$FieldNumber={FieldNumber:function(a,b,c,d,e,f){this.min_=-Infinity;this.max_=Infinity;this.precision_=0;this.decimalPlaces_=null;module$exports$Blockly$FieldNumber.FieldNumber.superClass_.constructor.call(this,a,e,f);f||this.setConstraints(b,c,d)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$FieldNumber.FieldNumber,$.module$exports$Blockly$FieldTextInput.FieldTextInput); -module$exports$Blockly$FieldNumber.FieldNumber.prototype.DEFAULT_VALUE=0;module$exports$Blockly$FieldNumber.FieldNumber.fromJson=function(a){return new this(a.value,void 0,void 0,void 0,void 0,a)};module$exports$Blockly$FieldNumber.FieldNumber.prototype.SERIALIZABLE=!0;module$exports$Blockly$FieldNumber.FieldNumber.prototype.configure_=function(a){module$exports$Blockly$FieldNumber.FieldNumber.superClass_.configure_.call(this,a);this.setMinInternal_(a.min);this.setMaxInternal_(a.max);this.setPrecisionInternal_(a.precision)}; -module$exports$Blockly$FieldNumber.FieldNumber.prototype.setConstraints=function(a,b,c){this.setMinInternal_(a);this.setMaxInternal_(b);this.setPrecisionInternal_(c);this.setValue(this.getValue())};module$exports$Blockly$FieldNumber.FieldNumber.prototype.setMin=function(a){this.setMinInternal_(a);this.setValue(this.getValue())};module$exports$Blockly$FieldNumber.FieldNumber.prototype.setMinInternal_=function(a){null==a?this.min_=-Infinity:(a=Number(a),isNaN(a)||(this.min_=a))}; -module$exports$Blockly$FieldNumber.FieldNumber.prototype.getMin=function(){return this.min_};module$exports$Blockly$FieldNumber.FieldNumber.prototype.setMax=function(a){this.setMaxInternal_(a);this.setValue(this.getValue())};module$exports$Blockly$FieldNumber.FieldNumber.prototype.setMaxInternal_=function(a){null==a?this.max_=Infinity:(a=Number(a),isNaN(a)||(this.max_=a))};module$exports$Blockly$FieldNumber.FieldNumber.prototype.getMax=function(){return this.max_}; -module$exports$Blockly$FieldNumber.FieldNumber.prototype.setPrecision=function(a){this.setPrecisionInternal_(a);this.setValue(this.getValue())};module$exports$Blockly$FieldNumber.FieldNumber.prototype.setPrecisionInternal_=function(a){this.precision_=Number(a)||0;var b=String(this.precision_);-1!==b.indexOf("e")&&(b=this.precision_.toLocaleString("en-US",{maximumFractionDigits:20}));var c=b.indexOf(".");this.decimalPlaces_=-1===c?a?0:null:b.length-c-1}; -module$exports$Blockly$FieldNumber.FieldNumber.prototype.getPrecision=function(){return this.precision_}; +$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.getText_=function(){return this.isBeingEdited_&&this.htmlInput_?this.htmlInput_.value:null};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.getEditorText_=function(a){return String(a)};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.getValueFromEditorText_=function(a){return a}; +$.module$exports$Blockly$FieldTextInput.FieldTextInput.fromJson=function(a){return new this((0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(a.text),void 0,a)};$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.DEFAULT_VALUE="";$.module$exports$Blockly$FieldTextInput.FieldTextInput.BORDERRADIUS=4;(0,module$exports$Blockly$fieldRegistry.register)("field_input",$.module$exports$Blockly$FieldTextInput.FieldTextInput);var module$exports$Blockly$FieldNumber={FieldNumber:function(a,b,c,d,e,f){$.module$exports$Blockly$FieldTextInput.FieldTextInput.call(this,module$exports$Blockly$Field.Field.SKIP_SETUP);this.min_=-Infinity;this.max_=Infinity;this.precision_=0;this.decimalPlaces_=null;this.SERIALIZABLE=!0;a!==module$exports$Blockly$Field.Field.SKIP_SETUP&&(f?this.configure_(f):this.setConstraints(b,c,d),this.setValue(a),e&&this.setValidator(e))}};$.$jscomp.inherits(module$exports$Blockly$FieldNumber.FieldNumber,$.module$exports$Blockly$FieldTextInput.FieldTextInput); +module$exports$Blockly$FieldNumber.FieldNumber.prototype.configure_=function(a){$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.configure_.call(this,a);this.setMinInternal_(a.min);this.setMaxInternal_(a.max);this.setPrecisionInternal_(a.precision)};module$exports$Blockly$FieldNumber.FieldNumber.prototype.setConstraints=function(a,b,c){this.setMinInternal_(a);this.setMaxInternal_(b);this.setPrecisionInternal_(c);this.setValue(this.getValue())}; +module$exports$Blockly$FieldNumber.FieldNumber.prototype.setMin=function(a){this.setMinInternal_(a);this.setValue(this.getValue())};module$exports$Blockly$FieldNumber.FieldNumber.prototype.setMinInternal_=function(a){null==a?this.min_=-Infinity:(a=Number(a),isNaN(a)||(this.min_=a))};module$exports$Blockly$FieldNumber.FieldNumber.prototype.getMin=function(){return this.min_};module$exports$Blockly$FieldNumber.FieldNumber.prototype.setMax=function(a){this.setMaxInternal_(a);this.setValue(this.getValue())}; +module$exports$Blockly$FieldNumber.FieldNumber.prototype.setMaxInternal_=function(a){null==a?this.max_=Infinity:(a=Number(a),isNaN(a)||(this.max_=a))};module$exports$Blockly$FieldNumber.FieldNumber.prototype.getMax=function(){return this.max_};module$exports$Blockly$FieldNumber.FieldNumber.prototype.setPrecision=function(a){this.setPrecisionInternal_(a);this.setValue(this.getValue())}; +module$exports$Blockly$FieldNumber.FieldNumber.prototype.setPrecisionInternal_=function(a){this.precision_=Number(a)||0;var b=String(this.precision_);-1!==b.indexOf("e")&&(b=this.precision_.toLocaleString("en-US",{maximumFractionDigits:20}));var c=b.indexOf(".");this.decimalPlaces_=-1===c?a?0:null:b.length-c-1};module$exports$Blockly$FieldNumber.FieldNumber.prototype.getPrecision=function(){return this.precision_}; module$exports$Blockly$FieldNumber.FieldNumber.prototype.doClassValidation_=function(a){if(null===a)return null;a=String(a);a=a.replace(/O/ig,"0");a=a.replace(/,/g,"");a=a.replace(/infinity/i,"Infinity");a=Number(a||0);if(isNaN(a))return null;a=Math.min(Math.max(a,this.min_),this.max_);this.precision_&&isFinite(a)&&(a=Math.round(a/this.precision_)*this.precision_);null!==this.decimalPlaces_&&(a=Number(a.toFixed(this.decimalPlaces_)));return a}; -module$exports$Blockly$FieldNumber.FieldNumber.prototype.widgetCreate_=function(){var a=module$exports$Blockly$FieldNumber.FieldNumber.superClass_.widgetCreate_.call(this);-Infinitythis.max_&&(0,module$exports$Blockly$utils$aria.setState)(a,module$exports$Blockly$utils$aria.State.VALUEMAX,this.max_);return a}; -(0,module$exports$Blockly$fieldRegistry.register)("field_number",module$exports$Blockly$FieldNumber.FieldNumber);var module$exports$Blockly$FieldMultilineInput={FieldMultilineInput:function(a,b,c){module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.superClass_.constructor.call(this,a,b,c);this.textGroup_=null;this.maxLines_=Infinity;this.isOverflowedY_=!1}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$FieldMultilineInput.FieldMultilineInput,$.module$exports$Blockly$FieldTextInput.FieldTextInput); -module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.configure_=function(a){module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.superClass_.configure_.call(this,a);a.maxLines&&this.setMaxLines(a.maxLines)};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.fromJson=function(a){return new this((0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(a.text),void 0,a)}; -module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.toXml=function(a){a.textContent=this.getValue().replace(/\n/g," ");return a};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.fromXml=function(a){this.setValue(a.textContent.replace(/ /g,"\n"))}; -module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.saveState=function(){var a=this.saveLegacyState(module$exports$Blockly$FieldMultilineInput.FieldMultilineInput);return null!==a?a:this.getValue()};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.loadState=function(a){this.loadLegacyState(module$exports$Blockly$Field.Field,a)||this.setValue(a)}; -module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.initView=function(){this.createBorderRect_();this.textGroup_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.G,{"class":"blocklyEditableText"},this.fieldGroup_)}; +module$exports$Blockly$FieldNumber.FieldNumber.prototype.widgetCreate_=function(){var a=$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.widgetCreate_.call(this);-Infinitythis.max_&&(0,module$exports$Blockly$utils$aria.setState)(a,module$exports$Blockly$utils$aria.State.VALUEMAX,this.max_);return a}; +module$exports$Blockly$FieldNumber.FieldNumber.fromJson=function(a){return new this(a.value,void 0,void 0,void 0,void 0,a)};module$exports$Blockly$FieldNumber.FieldNumber.prototype.DEFAULT_VALUE=0;(0,module$exports$Blockly$fieldRegistry.register)("field_number",module$exports$Blockly$FieldNumber.FieldNumber);var module$exports$Blockly$FieldMultilineInput={FieldMultilineInput:function(a,b,c){$.module$exports$Blockly$FieldTextInput.FieldTextInput.call(this,module$exports$Blockly$Field.Field.SKIP_SETUP);this.textGroup_=null;this.maxLines_=Infinity;this.isOverflowedY_=!1;a!==module$exports$Blockly$Field.Field.SKIP_SETUP&&(c&&this.configure_(c),this.setValue(a),b&&this.setValidator(b))}};$.$jscomp.inherits(module$exports$Blockly$FieldMultilineInput.FieldMultilineInput,$.module$exports$Blockly$FieldTextInput.FieldTextInput); +module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.configure_=function(a){$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.configure_.call(this,a);a.maxLines&&this.setMaxLines(a.maxLines)};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.toXml=function(a){a.textContent=this.getValue().replace(/\n/g," ");return a}; +module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.fromXml=function(a){this.setValue(a.textContent.replace(/ /g,"\n"))};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.saveState=function(){var a=this.saveLegacyState(module$exports$Blockly$FieldMultilineInput.FieldMultilineInput);return null!==a?a:this.getValue()}; +module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.loadState=function(a){this.loadLegacyState(module$exports$Blockly$Field.Field,a)||this.setValue(a)};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.initView=function(){this.createBorderRect_();this.textGroup_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.G,{"class":"blocklyEditableText"},this.fieldGroup_)}; module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.getDisplayText_=function(){var a=this.getText();if(!a)return module$exports$Blockly$Field.Field.NBSP;var b=a.split("\n");a="";for(var c=this.isOverflowedY_?this.maxLines_:b.length,d=0;dthis.maxDisplayLength?e=e.substring(0,this.maxDisplayLength-4)+"...":this.isOverflowedY_&&d===c-1&&(e=e.substring(0,e.length-3)+"...");e=e.replace(/\s/g,module$exports$Blockly$Field.Field.NBSP);a+=e;d!==c-1&&(a+="\n")}this.sourceBlock_.RTL&& -(a+="\u200f");return a};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.doValueUpdate_=function(a){module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.superClass_.doValueUpdate_.call(this,a);this.isOverflowedY_=this.value_.split("\n").length>this.maxLines_}; +(a+="\u200f");return a};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.doValueUpdate_=function(a){$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.doValueUpdate_.call(this,a);this.isOverflowedY_=this.value_.split("\n").length>this.maxLines_}; module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.render_=function(){for(var a;a=this.textGroup_.firstChild;)this.textGroup_.removeChild(a);a=this.getDisplayText_().split("\n");for(var b=0,c=0;cb&&(b=e);c+=this.getConstants().FIELD_TEXT_HEIGHT+(0this.maxDisplayLength&&(a[h]=a[h].substring(0,this.maxDisplayLength));d.textContent=a[h];var k=(0,module$exports$Blockly$utils$dom.getFastTextWidth)(d,e,f,g);k>b&&(b=k)}b+=this.htmlInput_.offsetWidth-this.htmlInput_.clientWidth}this.borderRect_&&(c+=2*this.getConstants().FIELD_BORDER_RECT_Y_PADDING,b+=2*this.getConstants().FIELD_BORDER_RECT_X_PADDING, -this.borderRect_.setAttribute("width",b),this.borderRect_.setAttribute("height",c));this.size_.width=b;this.size_.height=c;this.positionBorderRect_()};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.showEditor_=function(a,b){module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.superClass_.showEditor_.call(this,a,b);this.forceRerender()}; +this.borderRect_.setAttribute("width",b),this.borderRect_.setAttribute("height",c));this.size_.width=b;this.size_.height=c;this.positionBorderRect_()};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.showEditor_=function(a,b){$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.showEditor_.call(this,a,b);this.forceRerender()}; module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.widgetCreate_=function(){var a=(0,module$exports$Blockly$WidgetDiv.getDiv)(),b=this.workspace_.getScale(),c=document.createElement("textarea");c.className="blocklyHtmlInput blocklyHtmlTextAreaInput";c.setAttribute("spellcheck",this.spellcheck_);var d=this.getConstants().FIELD_TEXT_FONTSIZE*b+"pt";a.style.fontSize=d;c.style.fontSize=d;c.style.borderRadius=$.module$exports$Blockly$FieldTextInput.FieldTextInput.BORDERRADIUS*b+"px"; d=this.getConstants().FIELD_BORDER_RECT_X_PADDING*b;var e=this.getConstants().FIELD_BORDER_RECT_Y_PADDING*b/2;c.style.padding=e+"px "+d+"px "+e+"px "+d+"px";d=this.getConstants().FIELD_TEXT_HEIGHT+this.getConstants().FIELD_BORDER_RECT_Y_PADDING;c.style.lineHeight=d*b+"px";a.appendChild(c);c.value=c.defaultValue=this.getEditorText_(this.value_);c.untypedDefaultValue_=this.value_;c.oldValue_=null;module$exports$Blockly$utils$userAgent.GECKO?setTimeout(this.resizeEditor_.bind(this),0):this.resizeEditor_(); this.bindInputEvents_(c);return c};module$exports$Blockly$FieldMultilineInput.FieldMultilineInput.prototype.setMaxLines=function(a){"number"===typeof a&&0a?0>e&&0e&&(e=0):0d-1&&fd-1&&e--:0>b?0>f&&(f=0):0Math.floor(c.length/d)-1&&(f=Math.floor(c.length/d)-1);this.setHighlightedCell_(this.picker_.childNodes[f].childNodes[e], f*d+e)};module$exports$Blockly$FieldColour.FieldColour.prototype.onMouseMove_=function(a){var b=(a=a.target)&&Number(a.getAttribute("data-index"));null!==b&&b!==this.highlightedIndex_&&this.setHighlightedCell_(a,b)};module$exports$Blockly$FieldColour.FieldColour.prototype.onMouseEnter_=function(){this.picker_.focus({preventScroll:!0})}; module$exports$Blockly$FieldColour.FieldColour.prototype.onMouseLeave_=function(){this.picker_.blur();var a=this.getHighlighted_();a&&(0,module$exports$Blockly$utils$dom.removeClass)(a,"blocklyColourHighlighted")};module$exports$Blockly$FieldColour.FieldColour.prototype.getHighlighted_=function(){var a=this.columns_||module$exports$Blockly$FieldColour.FieldColour.COLUMNS,b=this.picker_.childNodes[Math.floor(this.highlightedIndex_/a)];return b?b.childNodes[this.highlightedIndex_%a]:null}; @@ -1496,51 +1500,48 @@ var h=document.createElement("td");f.appendChild(h);h.label=b[g];h.title=c[g]||b b[g];b[g]===d&&(h.className="blocklyColourSelected",this.highlightedIndex_=g)}this.onClickWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(e,"click",this,this.onClick_,!0);this.onMouseMoveWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(e,"mousemove",this,this.onMouseMove_,!0);this.onMouseEnterWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(e,"mouseenter",this,this.onMouseEnter_,!0);this.onMouseLeaveWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(e, "mouseleave",this,this.onMouseLeave_,!0);this.onKeyDownWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(e,"keydown",this,this.onKeyDown_);this.picker_=e}; module$exports$Blockly$FieldColour.FieldColour.prototype.dropdownDispose_=function(){this.onClickWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onClickWrapper_),this.onClickWrapper_=null);this.onMouseMoveWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onMouseMoveWrapper_),this.onMouseMoveWrapper_=null);this.onMouseEnterWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onMouseEnterWrapper_),this.onMouseEnterWrapper_=null);this.onMouseLeaveWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onMouseLeaveWrapper_), -this.onMouseLeaveWrapper_=null);this.onKeyDownWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onKeyDownWrapper_),this.onKeyDownWrapper_=null);this.highlightedIndex_=this.picker_=null};(0,module$exports$Blockly$Css.register)("\n .blocklyColourTable {\n border-collapse: collapse;\n display: block;\n outline: none;\n padding: 1px;\n }\n\n .blocklyColourTable>tr>td {\n border: .5px solid #888;\n box-sizing: border-box;\n cursor: pointer;\n display: inline-block;\n height: 20px;\n padding: 0;\n width: 20px;\n }\n\n .blocklyColourTable>tr>td.blocklyColourHighlighted {\n border-color: #eee;\n box-shadow: 2px 2px 7px 2px rgba(0,0,0,.3);\n position: relative;\n }\n\n .blocklyColourSelected, .blocklyColourSelected:hover {\n border-color: #eee !important;\n outline: 1px solid #333;\n position: relative;\n }\n"); -(0,module$exports$Blockly$fieldRegistry.register)("field_colour",module$exports$Blockly$FieldColour.FieldColour);$.module$exports$Blockly$FieldCheckbox={FieldCheckbox:function(a,b,c){this.checkChar_=null;$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.superClass_.constructor.call(this,a,b,c)}};(0,$.module$exports$Blockly$utils$object.inherits)($.module$exports$Blockly$FieldCheckbox.FieldCheckbox,module$exports$Blockly$Field.Field);$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.DEFAULT_VALUE=!1; -$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.fromJson=function(a){return new this(a.checked,void 0,a)};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.CHECK_CHAR="\u2713";$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.SERIALIZABLE=!0;$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.CURSOR="default"; -$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.configure_=function(a){$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.superClass_.configure_.call(this,a);a.checkCharacter&&(this.checkChar_=a.checkCharacter)};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.saveState=function(){var a=this.saveLegacyState($.module$exports$Blockly$FieldCheckbox.FieldCheckbox);return null!==a?a:this.getValueBoolean()}; -$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.initView=function(){$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.superClass_.initView.call(this);(0,module$exports$Blockly$utils$dom.addClass)(this.textElement_,"blocklyCheckbox");this.textElement_.style.display=this.value_?"block":"none"};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.render_=function(){this.textContent_&&(this.textContent_.nodeValue=this.getDisplayText_());this.updateSize_(this.getConstants().FIELD_CHECKBOX_X_OFFSET)}; -$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.getDisplayText_=function(){return this.checkChar_||$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.CHECK_CHAR};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.setCheckCharacter=function(a){this.checkChar_=a;this.forceRerender()};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.showEditor_=function(){this.setValue(!this.value_)}; +this.onMouseLeaveWrapper_=null);this.onKeyDownWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onKeyDownWrapper_),this.onKeyDownWrapper_=null);this.highlightedIndex_=this.picker_=null};module$exports$Blockly$FieldColour.FieldColour.fromJson=function(a){return new this(a.colour,void 0,a)};module$exports$Blockly$FieldColour.FieldColour.COLOURS="#ffffff #cccccc #c0c0c0 #999999 #666666 #333333 #000000 #ffcccc #ff6666 #ff0000 #cc0000 #990000 #660000 #330000 #ffcc99 #ff9966 #ff9900 #ff6600 #cc6600 #993300 #663300 #ffff99 #ffff66 #ffcc66 #ffcc33 #cc9933 #996633 #663333 #ffffcc #ffff33 #ffff00 #ffcc00 #999900 #666600 #333300 #99ff99 #66ff99 #33ff33 #33cc00 #009900 #006600 #003300 #99ffff #33ffff #66cccc #00cccc #339999 #336666 #003333 #ccffff #66ffff #33ccff #3366ff #3333ff #000099 #000066 #ccccff #9999ff #6666cc #6633ff #6600cc #333399 #330099 #ffccff #ff99ff #cc66cc #cc33cc #993399 #663366 #330033".split(" "); +module$exports$Blockly$FieldColour.FieldColour.prototype.DEFAULT_VALUE=module$exports$Blockly$FieldColour.FieldColour.COLOURS[0];module$exports$Blockly$FieldColour.FieldColour.TITLES=[];module$exports$Blockly$FieldColour.FieldColour.COLUMNS=7;(0,module$exports$Blockly$Css.register)("\n.blocklyColourTable {\n border-collapse: collapse;\n display: block;\n outline: none;\n padding: 1px;\n}\n\n.blocklyColourTable>tr>td {\n border: .5px solid #888;\n box-sizing: border-box;\n cursor: pointer;\n display: inline-block;\n height: 20px;\n padding: 0;\n width: 20px;\n}\n\n.blocklyColourTable>tr>td.blocklyColourHighlighted {\n border-color: #eee;\n box-shadow: 2px 2px 7px 2px rgba(0,0,0,.3);\n position: relative;\n}\n\n.blocklyColourSelected, .blocklyColourSelected:hover {\n border-color: #eee !important;\n outline: 1px solid #333;\n position: relative;\n}\n"); +(0,module$exports$Blockly$fieldRegistry.register)("field_colour",module$exports$Blockly$FieldColour.FieldColour);$.module$exports$Blockly$FieldCheckbox={FieldCheckbox:function(a,b,c){module$exports$Blockly$Field.Field.call(this,module$exports$Blockly$Field.Field.SKIP_SETUP);this.checkChar_=$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.CHECK_CHAR;this.SERIALIZABLE=!0;this.CURSOR="default";a!==module$exports$Blockly$Field.Field.SKIP_SETUP&&(c&&this.configure_(c),this.setValue(a),b&&this.setValidator(b))}};$.$jscomp.inherits($.module$exports$Blockly$FieldCheckbox.FieldCheckbox,module$exports$Blockly$Field.Field); +$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.configure_=function(a){module$exports$Blockly$Field.Field.prototype.configure_.call(this,a);a.checkCharacter&&(this.checkChar_=a.checkCharacter)};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.saveState=function(){var a=this.saveLegacyState($.module$exports$Blockly$FieldCheckbox.FieldCheckbox);return null!==a?a:this.getValueBoolean()}; +$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.initView=function(){module$exports$Blockly$Field.Field.prototype.initView.call(this);(0,module$exports$Blockly$utils$dom.addClass)(this.textElement_,"blocklyCheckbox");this.textElement_.style.display=this.value_?"block":"none"};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.render_=function(){this.textContent_&&(this.textContent_.nodeValue=this.getDisplayText_());this.updateSize_(this.getConstants().FIELD_CHECKBOX_X_OFFSET)}; +$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.getDisplayText_=function(){return this.checkChar_};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.setCheckCharacter=function(a){this.checkChar_=a||$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.CHECK_CHAR;this.forceRerender()};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.showEditor_=function(){this.setValue(!this.value_)}; $.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.doClassValidation_=function(a){return!0===a||"TRUE"===a?"TRUE":!1===a||"FALSE"===a?"FALSE":null};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.doValueUpdate_=function(a){this.value_=this.convertValueToBool_(a);this.textElement_&&(this.textElement_.style.display=this.value_?"block":"none")};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.getValue=function(){return this.value_?"TRUE":"FALSE"}; -$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.getValueBoolean=function(){return this.value_};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.getText=function(){return String(this.convertValueToBool_(this.value_))};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.convertValueToBool_=function(a){return"string"===typeof a?"TRUE"===a:!!a};(0,module$exports$Blockly$fieldRegistry.register)("field_checkbox",$.module$exports$Blockly$FieldCheckbox.FieldCheckbox);var module$exports$Blockly$FieldAngle={FieldAngle:function(a,b,c){this.clockwise_=module$exports$Blockly$FieldAngle.FieldAngle.CLOCKWISE;this.offset_=module$exports$Blockly$FieldAngle.FieldAngle.OFFSET;this.wrap_=module$exports$Blockly$FieldAngle.FieldAngle.WRAP;this.round_=module$exports$Blockly$FieldAngle.FieldAngle.ROUND;module$exports$Blockly$FieldAngle.FieldAngle.superClass_.constructor.call(this,a,b,c);this.moveSurfaceWrapper_=this.clickSurfaceWrapper_=this.clickWrapper_=this.line_=this.gauge_= -this.editor_=null}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$FieldAngle.FieldAngle,$.module$exports$Blockly$FieldTextInput.FieldTextInput);module$exports$Blockly$FieldAngle.FieldAngle.prototype.DEFAULT_VALUE=0;module$exports$Blockly$FieldAngle.FieldAngle.fromJson=function(a){return new this(a.angle,void 0,a)};module$exports$Blockly$FieldAngle.FieldAngle.prototype.SERIALIZABLE=!0;module$exports$Blockly$FieldAngle.FieldAngle.ROUND=15; -module$exports$Blockly$FieldAngle.FieldAngle.HALF=50;module$exports$Blockly$FieldAngle.FieldAngle.CLOCKWISE=!1;module$exports$Blockly$FieldAngle.FieldAngle.OFFSET=0;module$exports$Blockly$FieldAngle.FieldAngle.WRAP=360;module$exports$Blockly$FieldAngle.FieldAngle.RADIUS=module$exports$Blockly$FieldAngle.FieldAngle.HALF-1; -module$exports$Blockly$FieldAngle.FieldAngle.prototype.configure_=function(a){module$exports$Blockly$FieldAngle.FieldAngle.superClass_.configure_.call(this,a);switch(a.mode){case "compass":this.clockwise_=!0;this.offset_=90;break;case "protractor":this.clockwise_=!1,this.offset_=0}var b=a.clockwise;"boolean"===typeof b&&(this.clockwise_=b);b=a.offset;null!==b&&(b=Number(b),isNaN(b)||(this.offset_=b));b=a.wrap;null!==b&&(b=Number(b),isNaN(b)||(this.wrap_=b));a=a.round;null!==a&&(a=Number(a),isNaN(a)|| -(this.round_=a))};module$exports$Blockly$FieldAngle.FieldAngle.prototype.initView=function(){module$exports$Blockly$FieldAngle.FieldAngle.superClass_.initView.call(this);this.symbol_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.TSPAN,{},null);this.symbol_.appendChild(document.createTextNode("\u00b0"));this.textElement_.appendChild(this.symbol_)}; -module$exports$Blockly$FieldAngle.FieldAngle.prototype.render_=function(){module$exports$Blockly$FieldAngle.FieldAngle.superClass_.render_.call(this);this.updateGraph_()}; -module$exports$Blockly$FieldAngle.FieldAngle.prototype.showEditor_=function(a){module$exports$Blockly$FieldAngle.FieldAngle.superClass_.showEditor_.call(this,a,module$exports$Blockly$utils$userAgent.MOBILE||module$exports$Blockly$utils$userAgent.ANDROID||module$exports$Blockly$utils$userAgent.IPAD);this.dropdownCreate_();module$exports$Blockly$DropDownDiv.DropDownDiv.getContentDiv().appendChild(this.editor_);module$exports$Blockly$DropDownDiv.DropDownDiv.setColour(this.sourceBlock_.style.colourPrimary, -this.sourceBlock_.style.colourTertiary);module$exports$Blockly$DropDownDiv.DropDownDiv.showPositionedByField(this,this.dropdownDispose_.bind(this));this.updateGraph_()}; +$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.getValueBoolean=function(){return this.value_};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.getText=function(){return String(this.convertValueToBool_(this.value_))};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.convertValueToBool_=function(a){return"string"===typeof a?"TRUE"===a:!!a};$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.fromJson=function(a){return new this(a.checked,void 0,a)}; +$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.prototype.DEFAULT_VALUE=!1;$.module$exports$Blockly$FieldCheckbox.FieldCheckbox.CHECK_CHAR="\u2713";(0,module$exports$Blockly$fieldRegistry.register)("field_checkbox",$.module$exports$Blockly$FieldCheckbox.FieldCheckbox);var module$exports$Blockly$FieldAngle={FieldAngle:function(a,b,c){$.module$exports$Blockly$FieldTextInput.FieldTextInput.call(this,module$exports$Blockly$Field.Field.SKIP_SETUP);this.clockwise_=module$exports$Blockly$FieldAngle.FieldAngle.CLOCKWISE;this.offset_=module$exports$Blockly$FieldAngle.FieldAngle.OFFSET;this.wrap_=module$exports$Blockly$FieldAngle.FieldAngle.WRAP;this.round_=module$exports$Blockly$FieldAngle.FieldAngle.ROUND;this.moveSurfaceWrapper_=this.clickSurfaceWrapper_=this.clickWrapper_= +this.symbol_=this.line_=this.gauge_=this.editor_=null;this.SERIALIZABLE=!0;a!==module$exports$Blockly$Field.Field.SKIP_SETUP&&(c&&this.configure_(c),this.setValue(a),b&&this.setValidator(b))}};$.$jscomp.inherits(module$exports$Blockly$FieldAngle.FieldAngle,$.module$exports$Blockly$FieldTextInput.FieldTextInput); +module$exports$Blockly$FieldAngle.FieldAngle.prototype.configure_=function(a){$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.configure_.call(this,a);switch(a.mode){case "compass":this.clockwise_=!0;this.offset_=90;break;case "protractor":this.clockwise_=!1,this.offset_=0}var b=a.clockwise;"boolean"===typeof b&&(this.clockwise_=b);b=a.offset;null!==b&&(b=Number(b),isNaN(b)||(this.offset_=b));b=a.wrap;null!==b&&(b=Number(b),isNaN(b)||(this.wrap_=b));a=a.round;null!==a&&(a=Number(a), +isNaN(a)||(this.round_=a))};module$exports$Blockly$FieldAngle.FieldAngle.prototype.initView=function(){$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.initView.call(this);this.symbol_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.TSPAN,{},null);this.symbol_.appendChild(document.createTextNode("\u00b0"));this.textElement_.appendChild(this.symbol_)}; +module$exports$Blockly$FieldAngle.FieldAngle.prototype.render_=function(){$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.render_.call(this);this.updateGraph_()}; +module$exports$Blockly$FieldAngle.FieldAngle.prototype.showEditor_=function(a){$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.showEditor_.call(this,a,module$exports$Blockly$utils$userAgent.MOBILE||module$exports$Blockly$utils$userAgent.ANDROID||module$exports$Blockly$utils$userAgent.IPAD);this.dropdownCreate_();(0,module$exports$Blockly$dropDownDiv.getContentDiv)().appendChild(this.editor_);(0,module$exports$Blockly$dropDownDiv.setColour)(this.sourceBlock_.style.colourPrimary,this.sourceBlock_.style.colourTertiary); +(0,module$exports$Blockly$dropDownDiv.showPositionedByField)(this,this.dropdownDispose_.bind(this));this.updateGraph_()}; module$exports$Blockly$FieldAngle.FieldAngle.prototype.dropdownCreate_=function(){var a=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.SVG,{xmlns:module$exports$Blockly$utils$dom.SVG_NS,"xmlns:html":module$exports$Blockly$utils$dom.HTML_NS,"xmlns:xlink":module$exports$Blockly$utils$dom.XLINK_NS,version:"1.1",height:2*module$exports$Blockly$FieldAngle.FieldAngle.HALF+"px",width:2*module$exports$Blockly$FieldAngle.FieldAngle.HALF+"px",style:"touch-action: none"}, null),b=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.CIRCLE,{cx:module$exports$Blockly$FieldAngle.FieldAngle.HALF,cy:module$exports$Blockly$FieldAngle.FieldAngle.HALF,r:module$exports$Blockly$FieldAngle.FieldAngle.RADIUS,"class":"blocklyAngleCircle"},a);this.gauge_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.PATH,{"class":"blocklyAngleGauge"},a);this.line_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.LINE, {x1:module$exports$Blockly$FieldAngle.FieldAngle.HALF,y1:module$exports$Blockly$FieldAngle.FieldAngle.HALF,"class":"blocklyAngleLine"},a);for(var c=0;360>c;c+=15)(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.LINE,{x1:module$exports$Blockly$FieldAngle.FieldAngle.HALF+module$exports$Blockly$FieldAngle.FieldAngle.RADIUS,y1:module$exports$Blockly$FieldAngle.FieldAngle.HALF,x2:module$exports$Blockly$FieldAngle.FieldAngle.HALF+module$exports$Blockly$FieldAngle.FieldAngle.RADIUS- (0===c%45?10:5),y2:module$exports$Blockly$FieldAngle.FieldAngle.HALF,"class":"blocklyAngleMarks",transform:"rotate("+c+","+module$exports$Blockly$FieldAngle.FieldAngle.HALF+","+module$exports$Blockly$FieldAngle.FieldAngle.HALF+")"},a);this.clickWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(a,"click",this,this.hide_);this.clickSurfaceWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(b,"click",this,this.onMouseMove_,!0,!0);this.moveSurfaceWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(b, "mousemove",this,this.onMouseMove_,!0,!0);this.editor_=a}; module$exports$Blockly$FieldAngle.FieldAngle.prototype.dropdownDispose_=function(){this.clickWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.clickWrapper_),this.clickWrapper_=null);this.clickSurfaceWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.clickSurfaceWrapper_),this.clickSurfaceWrapper_=null);this.moveSurfaceWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.moveSurfaceWrapper_),this.moveSurfaceWrapper_=null);this.line_=this.gauge_=null}; -module$exports$Blockly$FieldAngle.FieldAngle.prototype.hide_=function(){module$exports$Blockly$DropDownDiv.DropDownDiv.hideIfOwner(this);(0,module$exports$Blockly$WidgetDiv.hide)()}; +module$exports$Blockly$FieldAngle.FieldAngle.prototype.hide_=function(){(0,module$exports$Blockly$dropDownDiv.hideIfOwner)(this);(0,module$exports$Blockly$WidgetDiv.hide)()}; module$exports$Blockly$FieldAngle.FieldAngle.prototype.onMouseMove_=function(a){var b=this.gauge_.ownerSVGElement.getBoundingClientRect(),c=a.clientX-b.left-module$exports$Blockly$FieldAngle.FieldAngle.HALF;a=a.clientY-b.top-module$exports$Blockly$FieldAngle.FieldAngle.HALF;b=Math.atan(-a/c);isNaN(b)||(b=(0,module$exports$Blockly$utils$math.toDegrees)(b),0>c?b+=180:0a&&(a+=360);a>this.wrap_&&(a-=360);return a};(0,module$exports$Blockly$Css.register)("\n .blocklyAngleCircle {\n stroke: #444;\n stroke-width: 1;\n fill: #ddd;\n fill-opacity: .8;\n }\n\n .blocklyAngleMarks {\n stroke: #444;\n stroke-width: 1;\n }\n\n .blocklyAngleGauge {\n fill: #f88;\n fill-opacity: .8;\n pointer-events: none;\n }\n\n .blocklyAngleLine {\n stroke: #f00;\n stroke-width: 2;\n stroke-linecap: round;\n pointer-events: none;\n }\n"); -(0,module$exports$Blockly$fieldRegistry.register)("field_angle",module$exports$Blockly$FieldAngle.FieldAngle);var module$exports$Blockly$zelos$TopRow={TopRow:function(a){module$exports$Blockly$zelos$TopRow.TopRow.superClass_.constructor.call(this,a)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$zelos$TopRow.TopRow,module$exports$Blockly$blockRendering$TopRow.TopRow);module$exports$Blockly$zelos$TopRow.TopRow.prototype.endsWithElemSpacer=function(){return!1}; -module$exports$Blockly$zelos$TopRow.TopRow.prototype.hasLeftSquareCorner=function(a){var b=(a.hat?"cap"===a.hat:this.constants_.ADD_START_HATS)&&!a.outputConnection&&!a.previousConnection;return!!a.outputConnection||b};module$exports$Blockly$zelos$TopRow.TopRow.prototype.hasRightSquareCorner=function(a){return!!a.outputConnection&&!a.statementInputCount&&!a.nextConnection};var module$exports$Blockly$zelos$StatementInput={StatementInput:function(a,b){module$exports$Blockly$zelos$StatementInput.StatementInput.superClass_.constructor.call(this,a,b);if(this.connectedBlock){for(a=this.connectedBlock;b=a.getNextBlock();)a=b;a.nextConnection||(this.height=this.connectedBlockHeight,this.connectedBottomNextConnection=!0)}}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$zelos$StatementInput.StatementInput,module$exports$Blockly$blockRendering$StatementInput.StatementInput);var module$exports$Blockly$zelos$RightConnectionShape={RightConnectionShape:function(a){module$exports$Blockly$zelos$RightConnectionShape.RightConnectionShape.superClass_.constructor.call(this,a);this.type|=module$exports$Blockly$blockRendering$Types.Types.getType("RIGHT_CONNECTION");this.width=this.height=0}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$zelos$RightConnectionShape.RightConnectionShape,module$exports$Blockly$blockRendering$Measurable.Measurable);var module$exports$Blockly$zelos$MarkerSvg={MarkerSvg:function(a,b,c){module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.superClass_.constructor.call(this,a,b,c)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$zelos$MarkerSvg.MarkerSvg,module$exports$Blockly$blockRendering$MarkerSvg.MarkerSvg); -module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.prototype.showWithInputOutput_=function(a){var b=a.getSourceBlock();a=a.getLocation().getOffsetInBlock();this.positionCircle_(a.x,a.y);this.setParent_(b);this.showCurrent_()};module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.prototype.showWithOutput_=function(a){this.showWithInputOutput_(a)};module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.prototype.showWithInput_=function(a){this.showWithInputOutput_(a)}; -module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.prototype.showWithBlock_=function(a){a=a.getLocation();var b=a.getHeightWidth();this.positionRect_(0,0,b.width,b.height);this.setParent_(a);this.showCurrent_()};module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.prototype.positionCircle_=function(a,b){this.markerCircle_.setAttribute("cx",a);this.markerCircle_.setAttribute("cy",b);this.currentMarkerSvg=this.markerCircle_}; -module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.prototype.hide=function(){module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.superClass_.hide.call(this);this.markerCircle_.style.display="none"}; -module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.prototype.createDomInternal_=function(){module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.superClass_.createDomInternal_.call(this);this.markerCircle_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.CIRCLE,{r:this.constants_.CURSOR_RADIUS,style:"display: none","stroke-width":this.constants_.CURSOR_STROKE_WIDTH},this.markerSvg_);if(this.isCursor()){var a=this.getBlinkProperties_();(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.ANIMATE, -a,this.markerCircle_)}return this.markerSvg_};module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.prototype.applyColour_=function(a){module$exports$Blockly$zelos$MarkerSvg.MarkerSvg.superClass_.applyColour_.call(this,a);this.markerCircle_.setAttribute("fill",this.colour_);this.markerCircle_.setAttribute("stroke",this.colour_);this.isCursor()&&this.markerCircle_.firstChild.setAttribute("values",this.colour_+";transparent;transparent;")};var module$exports$Blockly$zelos$ConstantProvider={ConstantProvider:function(){module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.superClass_.constructor.call(this);this.SMALL_PADDING=this.GRID_UNIT=4;this.MEDIUM_PADDING=2*this.GRID_UNIT;this.MEDIUM_LARGE_PADDING=3*this.GRID_UNIT;this.LARGE_PADDING=4*this.GRID_UNIT;this.CORNER_RADIUS=1*this.GRID_UNIT;this.NOTCH_WIDTH=9*this.GRID_UNIT;this.NOTCH_HEIGHT=2*this.GRID_UNIT;this.STATEMENT_INPUT_NOTCH_OFFSET=this.NOTCH_OFFSET_LEFT=3*this.GRID_UNIT; -this.MIN_BLOCK_WIDTH=2*this.GRID_UNIT;this.MIN_BLOCK_HEIGHT=12*this.GRID_UNIT;this.EMPTY_STATEMENT_INPUT_HEIGHT=6*this.GRID_UNIT;this.TAB_OFFSET_FROM_TOP=0;this.TOP_ROW_MIN_HEIGHT=this.CORNER_RADIUS;this.TOP_ROW_PRECEDES_STATEMENT_MIN_HEIGHT=this.LARGE_PADDING;this.BOTTOM_ROW_MIN_HEIGHT=this.CORNER_RADIUS;this.BOTTOM_ROW_AFTER_STATEMENT_MIN_HEIGHT=6*this.GRID_UNIT;this.STATEMENT_BOTTOM_SPACER=-this.NOTCH_HEIGHT;this.STATEMENT_INPUT_SPACER_MIN_WIDTH=40*this.GRID_UNIT;this.STATEMENT_INPUT_PADDING_LEFT= -4*this.GRID_UNIT;this.EMPTY_INLINE_INPUT_PADDING=4*this.GRID_UNIT;this.EMPTY_INLINE_INPUT_HEIGHT=8*this.GRID_UNIT;this.DUMMY_INPUT_MIN_HEIGHT=8*this.GRID_UNIT;this.DUMMY_INPUT_SHADOW_MIN_HEIGHT=6*this.GRID_UNIT;this.CURSOR_WS_WIDTH=20*this.GRID_UNIT;this.CURSOR_COLOUR="#ffa200";this.CURSOR_RADIUS=5;this.JAGGED_TEETH_WIDTH=this.JAGGED_TEETH_HEIGHT=0;this.START_HAT_HEIGHT=22;this.START_HAT_WIDTH=96;this.SHAPES={HEXAGONAL:1,ROUND:2,SQUARE:3,PUZZLE:4,NOTCH:5};this.SHAPE_IN_SHAPE_PADDING={1:{0:5*this.GRID_UNIT, -1:2*this.GRID_UNIT,2:5*this.GRID_UNIT,3:5*this.GRID_UNIT},2:{0:3*this.GRID_UNIT,1:3*this.GRID_UNIT,2:1*this.GRID_UNIT,3:2*this.GRID_UNIT},3:{0:2*this.GRID_UNIT,1:2*this.GRID_UNIT,2:2*this.GRID_UNIT,3:2*this.GRID_UNIT}};this.FULL_BLOCK_FIELDS=!0;this.FIELD_TEXT_FONTSIZE=3*this.GRID_UNIT;this.FIELD_TEXT_FONTWEIGHT="bold";this.FIELD_TEXT_FONTFAMILY='"Helvetica Neue", "Segoe UI", Helvetica, sans-serif';this.FIELD_BORDER_RECT_RADIUS=this.CORNER_RADIUS;this.FIELD_BORDER_RECT_X_PADDING=2*this.GRID_UNIT; -this.FIELD_BORDER_RECT_Y_PADDING=1.625*this.GRID_UNIT;this.FIELD_BORDER_RECT_HEIGHT=8*this.GRID_UNIT;this.FIELD_DROPDOWN_BORDER_RECT_HEIGHT=8*this.GRID_UNIT;this.FIELD_DROPDOWN_SVG_ARROW=this.FIELD_DROPDOWN_COLOURED_DIV=this.FIELD_DROPDOWN_NO_BORDER_RECT_SHADOW=!0;this.FIELD_DROPDOWN_SVG_ARROW_PADDING=this.FIELD_BORDER_RECT_X_PADDING;this.FIELD_COLOUR_FULL_BLOCK=this.FIELD_TEXTINPUT_BOX_SHADOW=!0;this.FIELD_COLOUR_DEFAULT_WIDTH=2*this.GRID_UNIT;this.FIELD_COLOUR_DEFAULT_HEIGHT=4*this.GRID_UNIT;this.FIELD_CHECKBOX_X_OFFSET= -1*this.GRID_UNIT;this.MAX_DYNAMIC_CONNECTION_SHAPE_WIDTH=12*this.GRID_UNIT;this.SELECTED_GLOW_COLOUR="#fff200";this.SELECTED_GLOW_SIZE=.5;this.REPLACEMENT_GLOW_COLOUR="#fff200";this.REPLACEMENT_GLOW_SIZE=2;this.selectedGlowFilterId="";this.selectedGlowFilter_=null;this.replacementGlowFilterId="";this.replacementGlowFilter_=null}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$zelos$ConstantProvider.ConstantProvider,module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider); -module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.setFontConstants_=function(a){module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.superClass_.setFontConstants_.call(this,a);this.FIELD_DROPDOWN_BORDER_RECT_HEIGHT=this.FIELD_BORDER_RECT_HEIGHT=this.FIELD_TEXT_HEIGHT+2*this.FIELD_BORDER_RECT_Y_PADDING}; -module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.init=function(){module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.superClass_.init.call(this);this.HEXAGONAL=this.makeHexagonal();this.ROUNDED=this.makeRounded();this.SQUARED=this.makeSquared();this.STATEMENT_INPUT_NOTCH_OFFSET=this.NOTCH_OFFSET_LEFT+this.INSIDE_CORNERS.rightWidth}; -module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.setDynamicProperties_=function(a){module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.superClass_.setDynamicProperties_.call(this,a);this.SELECTED_GLOW_COLOUR=a.getComponentStyle("selectedGlowColour")||this.SELECTED_GLOW_COLOUR;var b=Number(a.getComponentStyle("selectedGlowSize"));this.SELECTED_GLOW_SIZE=b&&!isNaN(b)?b:this.SELECTED_GLOW_SIZE;this.REPLACEMENT_GLOW_COLOUR=a.getComponentStyle("replacementGlowColour")|| -this.REPLACEMENT_GLOW_COLOUR;this.REPLACEMENT_GLOW_SIZE=(a=Number(a.getComponentStyle("replacementGlowSize")))&&!isNaN(a)?a:this.REPLACEMENT_GLOW_SIZE};module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.dispose=function(){module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.superClass_.dispose.call(this);this.selectedGlowFilter_&&(0,module$exports$Blockly$utils$dom.removeNode)(this.selectedGlowFilter_);this.replacementGlowFilter_&&(0,module$exports$Blockly$utils$dom.removeNode)(this.replacementGlowFilter_)}; +module$exports$Blockly$FieldAngle.FieldAngle.prototype.onHtmlInputKeyDown_=function(a){$.module$exports$Blockly$FieldTextInput.FieldTextInput.prototype.onHtmlInputKeyDown_.call(this,a);var b;a.keyCode===module$exports$Blockly$utils$KeyCodes.KeyCodes.LEFT?b=this.sourceBlock_.RTL?1:-1:a.keyCode===module$exports$Blockly$utils$KeyCodes.KeyCodes.RIGHT?b=this.sourceBlock_.RTL?-1:1:a.keyCode===module$exports$Blockly$utils$KeyCodes.KeyCodes.DOWN?b=-1:a.keyCode===module$exports$Blockly$utils$KeyCodes.KeyCodes.UP&& +(b=1);if(b){var c=this.getValue();this.displayMouseOrKeyboardValue_(c+b*this.round_);a.preventDefault();a.stopPropagation()}};module$exports$Blockly$FieldAngle.FieldAngle.prototype.doClassValidation_=function(a){a=Number(a);return isNaN(a)||!isFinite(a)?null:this.wrapValue_(a)};module$exports$Blockly$FieldAngle.FieldAngle.prototype.wrapValue_=function(a){a%=360;0>a&&(a+=360);a>this.wrap_&&(a-=360);return a}; +module$exports$Blockly$FieldAngle.FieldAngle.fromJson=function(a){return new this(a.angle,void 0,a)};module$exports$Blockly$FieldAngle.FieldAngle.prototype.DEFAULT_VALUE=0;module$exports$Blockly$FieldAngle.FieldAngle.ROUND=15;module$exports$Blockly$FieldAngle.FieldAngle.HALF=50;module$exports$Blockly$FieldAngle.FieldAngle.CLOCKWISE=!1;module$exports$Blockly$FieldAngle.FieldAngle.OFFSET=0;module$exports$Blockly$FieldAngle.FieldAngle.WRAP=360; +module$exports$Blockly$FieldAngle.FieldAngle.RADIUS=module$exports$Blockly$FieldAngle.FieldAngle.HALF-1;(0,module$exports$Blockly$Css.register)("\n.blocklyAngleCircle {\n stroke: #444;\n stroke-width: 1;\n fill: #ddd;\n fill-opacity: .8;\n}\n\n.blocklyAngleMarks {\n stroke: #444;\n stroke-width: 1;\n}\n\n.blocklyAngleGauge {\n fill: #f88;\n fill-opacity: .8;\n pointer-events: none;\n}\n\n.blocklyAngleLine {\n stroke: #f00;\n stroke-width: 2;\n stroke-linecap: round;\n pointer-events: none;\n}\n"); +(0,module$exports$Blockly$fieldRegistry.register)("field_angle",module$exports$Blockly$FieldAngle.FieldAngle);var module$exports$Blockly$zelos$BottomRow={BottomRow:function(a){module$exports$Blockly$blockRendering$BottomRow.BottomRow.call(this,a)}};$.$jscomp.inherits(module$exports$Blockly$zelos$BottomRow.BottomRow,module$exports$Blockly$blockRendering$BottomRow.BottomRow);module$exports$Blockly$zelos$BottomRow.BottomRow.prototype.endsWithElemSpacer=function(){return!1};module$exports$Blockly$zelos$BottomRow.BottomRow.prototype.hasLeftSquareCorner=function(a){return!!a.outputConnection}; +module$exports$Blockly$zelos$BottomRow.BottomRow.prototype.hasRightSquareCorner=function(a){return!!a.outputConnection&&!a.statementInputCount&&!a.nextConnection};var module$exports$Blockly$zelos$ConstantProvider={ConstantProvider:function(){module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.call(this);this.SMALL_PADDING=this.GRID_UNIT=4;this.MEDIUM_PADDING=2*this.GRID_UNIT;this.MEDIUM_LARGE_PADDING=3*this.GRID_UNIT;this.LARGE_PADDING=4*this.GRID_UNIT;this.CORNER_RADIUS=1*this.GRID_UNIT;this.NOTCH_WIDTH=9*this.GRID_UNIT;this.NOTCH_HEIGHT=2*this.GRID_UNIT;this.STATEMENT_INPUT_NOTCH_OFFSET=this.NOTCH_OFFSET_LEFT=3*this.GRID_UNIT;this.MIN_BLOCK_WIDTH= +2*this.GRID_UNIT;this.MIN_BLOCK_HEIGHT=12*this.GRID_UNIT;this.EMPTY_STATEMENT_INPUT_HEIGHT=6*this.GRID_UNIT;this.TAB_OFFSET_FROM_TOP=0;this.TOP_ROW_MIN_HEIGHT=this.CORNER_RADIUS;this.TOP_ROW_PRECEDES_STATEMENT_MIN_HEIGHT=this.LARGE_PADDING;this.BOTTOM_ROW_MIN_HEIGHT=this.CORNER_RADIUS;this.BOTTOM_ROW_AFTER_STATEMENT_MIN_HEIGHT=6*this.GRID_UNIT;this.STATEMENT_BOTTOM_SPACER=-this.NOTCH_HEIGHT;this.STATEMENT_INPUT_SPACER_MIN_WIDTH=40*this.GRID_UNIT;this.STATEMENT_INPUT_PADDING_LEFT=4*this.GRID_UNIT; +this.EMPTY_INLINE_INPUT_PADDING=4*this.GRID_UNIT;this.EMPTY_INLINE_INPUT_HEIGHT=8*this.GRID_UNIT;this.DUMMY_INPUT_MIN_HEIGHT=8*this.GRID_UNIT;this.DUMMY_INPUT_SHADOW_MIN_HEIGHT=6*this.GRID_UNIT;this.CURSOR_WS_WIDTH=20*this.GRID_UNIT;this.CURSOR_COLOUR="#ffa200";this.CURSOR_RADIUS=5;this.JAGGED_TEETH_WIDTH=this.JAGGED_TEETH_HEIGHT=0;this.START_HAT_HEIGHT=22;this.START_HAT_WIDTH=96;this.SHAPES={HEXAGONAL:1,ROUND:2,SQUARE:3,PUZZLE:4,NOTCH:5};this.SHAPE_IN_SHAPE_PADDING={1:{0:5*this.GRID_UNIT,1:2*this.GRID_UNIT, +2:5*this.GRID_UNIT,3:5*this.GRID_UNIT},2:{0:3*this.GRID_UNIT,1:3*this.GRID_UNIT,2:1*this.GRID_UNIT,3:2*this.GRID_UNIT},3:{0:2*this.GRID_UNIT,1:2*this.GRID_UNIT,2:2*this.GRID_UNIT,3:2*this.GRID_UNIT}};this.FULL_BLOCK_FIELDS=!0;this.FIELD_TEXT_FONTSIZE=3*this.GRID_UNIT;this.FIELD_TEXT_FONTWEIGHT="bold";this.FIELD_TEXT_FONTFAMILY='"Helvetica Neue", "Segoe UI", Helvetica, sans-serif';this.FIELD_BORDER_RECT_RADIUS=this.CORNER_RADIUS;this.FIELD_BORDER_RECT_X_PADDING=2*this.GRID_UNIT;this.FIELD_BORDER_RECT_Y_PADDING= +1.625*this.GRID_UNIT;this.FIELD_BORDER_RECT_HEIGHT=8*this.GRID_UNIT;this.FIELD_DROPDOWN_BORDER_RECT_HEIGHT=8*this.GRID_UNIT;this.FIELD_DROPDOWN_SVG_ARROW=this.FIELD_DROPDOWN_COLOURED_DIV=this.FIELD_DROPDOWN_NO_BORDER_RECT_SHADOW=!0;this.FIELD_DROPDOWN_SVG_ARROW_PADDING=this.FIELD_BORDER_RECT_X_PADDING;this.FIELD_COLOUR_FULL_BLOCK=this.FIELD_TEXTINPUT_BOX_SHADOW=!0;this.FIELD_COLOUR_DEFAULT_WIDTH=2*this.GRID_UNIT;this.FIELD_COLOUR_DEFAULT_HEIGHT=4*this.GRID_UNIT;this.FIELD_CHECKBOX_X_OFFSET=1*this.GRID_UNIT; +this.MAX_DYNAMIC_CONNECTION_SHAPE_WIDTH=12*this.GRID_UNIT;this.SELECTED_GLOW_COLOUR="#fff200";this.SELECTED_GLOW_SIZE=.5;this.REPLACEMENT_GLOW_COLOUR="#fff200";this.REPLACEMENT_GLOW_SIZE=2;this.selectedGlowFilterId="";this.selectedGlowFilter_=null;this.replacementGlowFilterId="";this.SQUARED=this.ROUNDED=this.HEXAGONAL=this.replacementGlowFilter_=null}};$.$jscomp.inherits(module$exports$Blockly$zelos$ConstantProvider.ConstantProvider,module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider); +module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.setFontConstants_=function(a){module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.setFontConstants_.call(this,a);this.FIELD_DROPDOWN_BORDER_RECT_HEIGHT=this.FIELD_BORDER_RECT_HEIGHT=this.FIELD_TEXT_HEIGHT+2*this.FIELD_BORDER_RECT_Y_PADDING}; +module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.init=function(){module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.init.call(this);this.HEXAGONAL=this.makeHexagonal();this.ROUNDED=this.makeRounded();this.SQUARED=this.makeSquared();this.STATEMENT_INPUT_NOTCH_OFFSET=this.NOTCH_OFFSET_LEFT+this.INSIDE_CORNERS.rightWidth}; +module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.setDynamicProperties_=function(a){module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.setDynamicProperties_.call(this,a);this.SELECTED_GLOW_COLOUR=a.getComponentStyle("selectedGlowColour")||this.SELECTED_GLOW_COLOUR;var b=Number(a.getComponentStyle("selectedGlowSize"));this.SELECTED_GLOW_SIZE=b&&!isNaN(b)?b:this.SELECTED_GLOW_SIZE;this.REPLACEMENT_GLOW_COLOUR=a.getComponentStyle("replacementGlowColour")|| +this.REPLACEMENT_GLOW_COLOUR;this.REPLACEMENT_GLOW_SIZE=(a=Number(a.getComponentStyle("replacementGlowSize")))&&!isNaN(a)?a:this.REPLACEMENT_GLOW_SIZE};module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.dispose=function(){module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.dispose.call(this);this.selectedGlowFilter_&&(0,module$exports$Blockly$utils$dom.removeNode)(this.selectedGlowFilter_);this.replacementGlowFilter_&&(0,module$exports$Blockly$utils$dom.removeNode)(this.replacementGlowFilter_)}; module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.makeStartHat=function(){var a=this.START_HAT_HEIGHT,b=this.START_HAT_WIDTH,c=(0,module$exports$Blockly$utils$svgPaths.curve)("c",[(0,module$exports$Blockly$utils$svgPaths.point)(25,-a),(0,module$exports$Blockly$utils$svgPaths.point)(71,-a),(0,module$exports$Blockly$utils$svgPaths.point)(b,0)]);return{height:a,width:b,path:c}}; module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.makeHexagonal=function(){function a(c,d,e){var f=c/2;f=f>b?b:f;e=e?-1:1;c=(d?-1:1)*c/2;return(0,module$exports$Blockly$utils$svgPaths.lineTo)(-e*f,c)+(0,module$exports$Blockly$utils$svgPaths.lineTo)(e*f,c)}var b=this.MAX_DYNAMIC_CONNECTION_SHAPE_WIDTH;return{type:this.SHAPES.HEXAGONAL,isDynamic:!0,width:function(c){c/=2;return c>b?b:c},height:function(c){return c},connectionOffsetY:function(c){return c/2},connectionOffsetX:function(c){return-c}, pathDown:function(c){return a(c,!1,!1)},pathUp:function(c){return a(c,!0,!1)},pathRightDown:function(c){return a(c,!1,!0)},pathRightUp:function(c){return a(c,!1,!0)}}}; @@ -1556,76 +1557,83 @@ e,-f)])+(0,module$exports$Blockly$utils$svgPaths.curve)("c",[(0,module$exports$B module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.makeInsideCorners=function(){var a=this.CORNER_RADIUS,b=(0,module$exports$Blockly$utils$svgPaths.arc)("a","0 0,0",a,(0,module$exports$Blockly$utils$svgPaths.point)(-a,a)),c=(0,module$exports$Blockly$utils$svgPaths.arc)("a","0 0,1",a,(0,module$exports$Blockly$utils$svgPaths.point)(-a,a)),d=(0,module$exports$Blockly$utils$svgPaths.arc)("a","0 0,0",a,(0,module$exports$Blockly$utils$svgPaths.point)(a,a)),e=(0,module$exports$Blockly$utils$svgPaths.arc)("a", "0 0,1",a,(0,module$exports$Blockly$utils$svgPaths.point)(a,a));return{width:a,height:a,pathTop:b,pathBottom:d,rightWidth:a,rightHeight:a,pathTopRight:c,pathBottomRight:e}};module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.generateSecondaryColour_=function(a){return(0,module$exports$Blockly$utils$colour.blend)("#000",a,.15)||a}; module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.generateTertiaryColour_=function(a){return(0,module$exports$Blockly$utils$colour.blend)("#000",a,.25)||a}; -module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.createDom=function(a,b,c){module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.superClass_.createDom.call(this,a,b,c);a=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.DEFS,{},a);b=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FILTER,{id:"blocklySelectedGlowFilter"+this.randomIdentifier,height:"160%",width:"180%",y:"-30%",x:"-40%"}, -a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FEGAUSSIANBLUR,{"in":"SourceGraphic",stdDeviation:this.SELECTED_GLOW_SIZE},b);c=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FECOMPONENTTRANSFER,{result:"outBlur"},b);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FEFUNCA,{type:"table",tableValues:"0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1"},c);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FEFLOOD, +module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.createDom=function(a,b,c){module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.createDom.call(this,a,b,c);a=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.DEFS,{},a);b=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FILTER,{id:"blocklySelectedGlowFilter"+this.randomIdentifier,height:"160%",width:"180%",y:"-30%", +x:"-40%"},a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FEGAUSSIANBLUR,{"in":"SourceGraphic",stdDeviation:this.SELECTED_GLOW_SIZE},b);c=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FECOMPONENTTRANSFER,{result:"outBlur"},b);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FEFUNCA,{type:"table",tableValues:"0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1"},c);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FEFLOOD, {"flood-color":this.SELECTED_GLOW_COLOUR,"flood-opacity":1,result:"outColor"},b);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FECOMPOSITE,{"in":"outColor",in2:"outBlur",operator:"in",result:"outGlow"},b);this.selectedGlowFilterId=b.id;this.selectedGlowFilter_=b;a=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FILTER,{id:"blocklyReplacementGlowFilter"+this.randomIdentifier,height:"160%",width:"180%",y:"-30%", x:"-40%"},a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FEGAUSSIANBLUR,{"in":"SourceGraphic",stdDeviation:this.REPLACEMENT_GLOW_SIZE},a);b=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FECOMPONENTTRANSFER,{result:"outBlur"},a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FEFUNCA,{type:"table",tableValues:"0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1"},b);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FEFLOOD, {"flood-color":this.REPLACEMENT_GLOW_COLOUR,"flood-opacity":1,result:"outColor"},a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FECOMPOSITE,{"in":"outColor",in2:"outBlur",operator:"in",result:"outGlow"},a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FECOMPOSITE,{"in":"SourceGraphic",in2:"outGlow",operator:"over"},a);this.replacementGlowFilterId=a.id;this.replacementGlowFilter_=a}; module$exports$Blockly$zelos$ConstantProvider.ConstantProvider.prototype.getCSS_=function(a){return[a+" .blocklyText,",a+" .blocklyFlyoutLabelText {","font: "+this.FIELD_TEXT_FONTWEIGHT+" "+this.FIELD_TEXT_FONTSIZE+"pt "+this.FIELD_TEXT_FONTFAMILY+";","}",a+" .blocklyText {","fill: #fff;","}",a+" .blocklyNonEditableText>rect:not(.blocklyDropdownRect),",a+" .blocklyEditableText>rect:not(.blocklyDropdownRect) {","fill: "+this.FIELD_BORDER_RECT_COLOUR+";","}",a+" .blocklyNonEditableText>text,",a+" .blocklyEditableText>text,", a+" .blocklyNonEditableText>g>text,",a+" .blocklyEditableText>g>text {","fill: #575E75;","}",a+" .blocklyFlyoutLabelText {","fill: #575E75;","}",a+" .blocklyText.blocklyBubbleText {","fill: #575E75;","}",a+" .blocklyDraggable:not(.blocklyDisabled)"," .blocklyEditableText:not(.editing):hover>rect,",a+" .blocklyDraggable:not(.blocklyDisabled)"," .blocklyEditableText:not(.editing):hover>.blocklyPath {","stroke: #fff;","stroke-width: 2;","}",a+" .blocklyHtmlInput {","font-family: "+this.FIELD_TEXT_FONTFAMILY+ ";","font-weight: "+this.FIELD_TEXT_FONTWEIGHT+";","color: #575E75;","}",a+" .blocklyDropdownText {","fill: #fff !important;","}",a+".blocklyWidgetDiv .goog-menuitem,",a+".blocklyDropDownDiv .goog-menuitem {","font-family: "+this.FIELD_TEXT_FONTFAMILY+";","}",a+".blocklyDropDownDiv .goog-menuitem-content {","color: #fff;","}",a+" .blocklyHighlightedConnectionPath {","stroke: "+this.SELECTED_GLOW_COLOUR+";","}",a+" .blocklyDisabled > .blocklyOutlinePath {","fill: url(#blocklyDisabledPattern"+this.randomIdentifier+ -")","}",a+" .blocklyInsertionMarker>.blocklyPath {","fill-opacity: "+this.INSERTION_MARKER_OPACITY+";","stroke: none;","}"]};var module$exports$Blockly$zelos$Drawer={Drawer:function(a,b){module$exports$Blockly$zelos$Drawer.Drawer.superClass_.constructor.call(this,a,b)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$zelos$Drawer.Drawer,module$exports$Blockly$blockRendering$Drawer.Drawer); +")","}",a+" .blocklyInsertionMarker>.blocklyPath {","fill-opacity: "+this.INSERTION_MARKER_OPACITY+";","stroke: none;","}"]};var module$exports$Blockly$zelos$Drawer={Drawer:function(a,b){module$exports$Blockly$blockRendering$Drawer.Drawer.call(this,a,b)}};$.$jscomp.inherits(module$exports$Blockly$zelos$Drawer.Drawer,module$exports$Blockly$blockRendering$Drawer.Drawer); module$exports$Blockly$zelos$Drawer.Drawer.prototype.draw=function(){var a=this.block_.pathObject;a.beginDrawing();this.hideHiddenIcons_();this.drawOutline_();this.drawInternals_();a.setPath(this.outlinePath_+"\n"+this.inlinePath_);this.info_.RTL&&a.flipRTL();(0,module$exports$Blockly$blockRendering$debug.isDebuggerEnabled)()&&this.block_.renderingDebugger.drawDebug(this.block_,this.info_);this.recordSizeOnBlock_();this.info_.outputConnection&&(a.outputShapeType=this.info_.outputConnection.shape.type); -a.endDrawing()};module$exports$Blockly$zelos$Drawer.Drawer.prototype.drawOutline_=function(){this.info_.outputConnection&&this.info_.outputConnection.isDynamicShape&&!this.info_.hasStatementInput&&!this.info_.bottomRow.hasNextConnection?(this.drawFlatTop_(),this.drawRightDynamicConnection_(),this.drawFlatBottom_(),this.drawLeftDynamicConnection_()):module$exports$Blockly$zelos$Drawer.Drawer.superClass_.drawOutline_.call(this)}; -module$exports$Blockly$zelos$Drawer.Drawer.prototype.drawLeft_=function(){this.info_.outputConnection&&this.info_.outputConnection.isDynamicShape?this.drawLeftDynamicConnection_():module$exports$Blockly$zelos$Drawer.Drawer.superClass_.drawLeft_.call(this)}; -module$exports$Blockly$zelos$Drawer.Drawer.prototype.drawRightSideRow_=function(a){if(!(0>=a.height))if(a.precedesStatement||a.followsStatement){var b=this.constants_.INSIDE_CORNERS.rightHeight;b=a.height-(a.precedesStatement?b:0);this.outlinePath_+=(a.followsStatement?this.constants_.INSIDE_CORNERS.pathBottomRight:"")+(0=a.height))if(module$exports$Blockly$blockRendering$Types.Types.isSpacer(a)&&(a.precedesStatement||a.followsStatement)){var b=this.constants_.INSIDE_CORNERS.rightHeight;b=a.height-(a.precedesStatement?b:0);this.outlinePath_+=(a.followsStatement?this.constants_.INSIDE_CORNERS.pathBottomRight:"")+(0=c||0>=b)throw Error("Height and width values of an image field must be greater than 0."); -this.flipRtl_=!1;this.altText_="";$.module$exports$Blockly$FieldImage.FieldImage.superClass_.constructor.call(this,a,null,g);g||(this.flipRtl_=!!f,this.altText_=(0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(d)||"");this.size_=new module$exports$Blockly$utils$Size.Size(b,c+$.module$exports$Blockly$FieldImage.FieldImage.Y_PADDING);this.imageHeight_=c;this.clickHandler_=null;"function"===typeof e&&(this.clickHandler_=e);this.imageElement_=null}}; -(0,$.module$exports$Blockly$utils$object.inherits)($.module$exports$Blockly$FieldImage.FieldImage,module$exports$Blockly$Field.Field);$.module$exports$Blockly$FieldImage.FieldImage.prototype.DEFAULT_VALUE="";$.module$exports$Blockly$FieldImage.FieldImage.fromJson=function(a){return new this(a.src,a.width,a.height,void 0,void 0,void 0,a)};$.module$exports$Blockly$FieldImage.FieldImage.Y_PADDING=1;$.module$exports$Blockly$FieldImage.FieldImage.prototype.EDITABLE=!1; -$.module$exports$Blockly$FieldImage.FieldImage.prototype.isDirty_=!1;$.module$exports$Blockly$FieldImage.FieldImage.prototype.configure_=function(a){$.module$exports$Blockly$FieldImage.FieldImage.superClass_.configure_.call(this,a);this.flipRtl_=!!a.flipRtl;this.altText_=(0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(a.alt)||""}; +module$exports$Blockly$zelos$PathObject.PathObject.prototype.removeOutlinePath_=function(a){this.outlines_[a].parentNode.removeChild(this.outlines_[a]);delete this.outlines_[a]};$.module$exports$Blockly$FieldImage={FieldImage:function(a,b,c,d,e,f,g){module$exports$Blockly$Field.Field.call(this,module$exports$Blockly$Field.Field.SKIP_SETUP);if(!a)throw Error("Src value of an image field is required");c=Number((0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(c));b=Number((0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(b));if(isNaN(c)||isNaN(b))throw Error("Height and width values of an image field must cast to numbers.");if(0>=c||0>=b)throw Error("Height and width values of an image field must be greater than 0."); +this.size_=new module$exports$Blockly$utils$Size.Size(b,c+$.module$exports$Blockly$FieldImage.FieldImage.Y_PADDING);this.imageHeight_=c;this.clickHandler_=null;"function"===typeof e&&(this.clickHandler_=e);this.imageElement_=null;this.flipRtl_=this.isDirty_=this.EDITABLE=!1;this.altText_="";a!==module$exports$Blockly$Field.Field.SKIP_SETUP&&(g?this.configure_(g):(this.flipRtl_=!!f,this.altText_=(0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(d)||""),this.setValue((0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(a)))}}; +$.$jscomp.inherits($.module$exports$Blockly$FieldImage.FieldImage,module$exports$Blockly$Field.Field);$.module$exports$Blockly$FieldImage.FieldImage.prototype.configure_=function(a){module$exports$Blockly$Field.Field.prototype.configure_.call(this,a);this.flipRtl_=!!a.flipRtl;this.altText_=(0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(a.alt)||""}; $.module$exports$Blockly$FieldImage.FieldImage.prototype.initView=function(){this.imageElement_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.IMAGE,{height:this.imageHeight_+"px",width:this.size_.width+"px",alt:this.altText_},this.fieldGroup_);this.imageElement_.setAttributeNS(module$exports$Blockly$utils$dom.XLINK_NS,"xlink:href",this.value_);this.clickHandler_&&(this.imageElement_.style.cursor="pointer")}; $.module$exports$Blockly$FieldImage.FieldImage.prototype.updateSize_=function(){};$.module$exports$Blockly$FieldImage.FieldImage.prototype.doClassValidation_=function(a){return"string"!==typeof a?null:a};$.module$exports$Blockly$FieldImage.FieldImage.prototype.doValueUpdate_=function(a){this.value_=a;this.imageElement_&&this.imageElement_.setAttributeNS(module$exports$Blockly$utils$dom.XLINK_NS,"xlink:href",String(this.value_))}; $.module$exports$Blockly$FieldImage.FieldImage.prototype.getFlipRtl=function(){return this.flipRtl_};$.module$exports$Blockly$FieldImage.FieldImage.prototype.setAlt=function(a){a!==this.altText_&&(this.altText_=a||"",this.imageElement_&&this.imageElement_.setAttribute("alt",this.altText_))};$.module$exports$Blockly$FieldImage.FieldImage.prototype.showEditor_=function(){this.clickHandler_&&this.clickHandler_(this)}; -$.module$exports$Blockly$FieldImage.FieldImage.prototype.setOnClickHandler=function(a){this.clickHandler_=a};$.module$exports$Blockly$FieldImage.FieldImage.prototype.getText_=function(){return this.altText_};(0,module$exports$Blockly$fieldRegistry.register)("field_image",$.module$exports$Blockly$FieldImage.FieldImage);var module$exports$Blockly$zelos$RenderInfo={RenderInfo:function(a,b){module$exports$Blockly$zelos$RenderInfo.RenderInfo.superClass_.constructor.call(this,a,b);this.topRow=new module$exports$Blockly$zelos$TopRow.TopRow(this.constants_);this.bottomRow=new module$exports$Blockly$zelos$BottomRow.BottomRow(this.constants_);this.isInline=!0;this.isMultiRow=!b.getInputsInline()||b.isCollapsed();this.hasStatementInput=0=this.rows.length-1?!!this.bottomRow.hasNextConnection:!!f.precedesStatement;if(module$exports$Blockly$blockRendering$Types.Types.isInputRow(e)&&e.hasStatement)e.measure(),b=e.width- -e.getLastInput().width+a;else if(d&&(2===c||f)&&module$exports$Blockly$blockRendering$Types.Types.isInputRow(e)&&!e.hasStatement){f=e.xPos;d=null;for(var g=0;g=this.rows.length-1?!!this.bottomRow.hasNextConnection:!!f.precedesStatement;if(module$exports$Blockly$blockRendering$Types.Types.isInputRow(e)&&e.hasStatement)e.measure(),b=e.width-e.getLastInput().width+ +a;else if(d&&(2===c||f)&&module$exports$Blockly$blockRendering$Types.Types.isInputRow(e)&&!e.hasStatement){f=e.xPos;d=null;for(var g=0;gc?c:this.height/2,b-c*(1-Math.sin(Math.acos((c-this.constants_.SMALL_PADDING)/c)));default:return 0}if(module$exports$Blockly$blockRendering$Types.Types.isInlineInput(a)){var e=a.connectedBlock; -a=e?e.pathObject.outputShapeType:a.shape.type;return e&&e.outputConnection&&(e.statementInputCount||e.nextConnection)||c===d.SHAPES.HEXAGONAL&&c!==a?0:b-this.constants_.SHAPE_IN_SHAPE_PADDING[c][a]}return module$exports$Blockly$blockRendering$Types.Types.isField(a)?c===d.SHAPES.ROUND&&a.field instanceof $.module$exports$Blockly$FieldTextInput.FieldTextInput?b-2.75*d.GRID_UNIT:b-this.constants_.SHAPE_IN_SHAPE_PADDING[c][0]:module$exports$Blockly$blockRendering$Types.Types.isIcon(a)?this.constants_.SMALL_PADDING: -0}; -module$exports$Blockly$zelos$RenderInfo.RenderInfo.prototype.finalizeVerticalAlignment_=function(){if(!this.outputConnection)for(var a=2;a=this.rows.length-1?!!this.bottomRow.hasNextConnection:!!d.precedesStatement;if(e?this.topRow.hasPreviousConnection:b.followsStatement){var g=3===c.elements.length&&(c.elements[1].field instanceof $.module$exports$Blockly$FieldLabel.FieldLabel||c.elements[1].field instanceof $.module$exports$Blockly$FieldImage.FieldImage); -if(!e&&g)b.height-=this.constants_.SMALL_PADDING,d.height-=this.constants_.SMALL_PADDING,c.height-=this.constants_.MEDIUM_PADDING;else if(!e&&!f)b.height+=this.constants_.SMALL_PADDING;else if(f){e=!1;for(f=0;fc?c:this.height/2,b-c*(1-Math.sin(Math.acos((c-this.constants_.SMALL_PADDING)/c)));default:return 0}if(module$exports$Blockly$blockRendering$Types.Types.isInlineInput(a)&& +a instanceof module$exports$Blockly$blockRendering$InputConnection.InputConnection){var e=a.connectedBlock;a=e?e.pathObject.outputShapeType:a.shape.type;return e&&e.outputConnection&&(e.statementInputCount||e.nextConnection)||c===d.SHAPES.HEXAGONAL&&c!==a?0:b-this.constants_.SHAPE_IN_SHAPE_PADDING[c][a]}return module$exports$Blockly$blockRendering$Types.Types.isField(a)&&a instanceof module$exports$Blockly$blockRendering$Field.Field?c===d.SHAPES.ROUND&&a.field instanceof $.module$exports$Blockly$FieldTextInput.FieldTextInput? +b-2.75*d.GRID_UNIT:b-this.constants_.SHAPE_IN_SHAPE_PADDING[c][0]:module$exports$Blockly$blockRendering$Types.Types.isIcon(a)?this.constants_.SMALL_PADDING:0}; +module$exports$Blockly$zelos$RenderInfo.RenderInfo.prototype.finalizeVerticalAlignment_=function(){if(!this.outputConnection)for(var a=2;a=this.rows.length-1?!!this.bottomRow.hasNextConnection:!!d.precedesStatement;if(e?this.topRow.hasPreviousConnection:b.followsStatement){var g=c.elements[1];g=3===c.elements.length&&g instanceof module$exports$Blockly$blockRendering$Field.Field&&(g.field instanceof $.module$exports$Blockly$FieldLabel.FieldLabel|| +g.field instanceof $.module$exports$Blockly$FieldImage.FieldImage);if(!e&&g)b.height-=this.constants_.SMALL_PADDING,d.height-=this.constants_.SMALL_PADDING,c.height-=this.constants_.MEDIUM_PADDING;else if(!e&&!f)b.height+=this.constants_.SMALL_PADDING;else if(f){e=!1;for(f=0;f.blocklyPathLight,",a+" .blocklyInsertionMarker>.blocklyPathDark {","fill-opacity: "+this.INSERTION_MARKER_OPACITY+";","stroke: none;","}"])};var module$exports$Blockly$geras$Highlighter={Highlighter:function(a){this.info_=a;this.inlineSteps_=this.steps_="";this.RTL_=this.info_.RTL;a=a.getRenderer();this.constants_=a.getConstants();this.highlightConstants_=a.getHighlightConstants();this.highlightOffset_=this.highlightConstants_.OFFSET;this.outsideCornerPaths_=this.highlightConstants_.OUTSIDE_CORNER;this.insideCornerPaths_=this.highlightConstants_.INSIDE_CORNER;this.puzzleTabPaths_=this.highlightConstants_.PUZZLE_TAB;this.notchPaths_=this.highlightConstants_.NOTCH; +module$exports$Blockly$geras$PathObject.PathObject.prototype.updateDisabled_=function(a){module$exports$Blockly$blockRendering$PathObject.PathObject.prototype.updateDisabled_.call(this,a);a&&this.svgPath.setAttribute("stroke","none")};var module$exports$Blockly$geras$ConstantProvider={ConstantProvider:function(){module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.call(this);this.FIELD_TEXT_BASELINE_CENTER=!1;this.DARK_PATH_OFFSET=1;this.MAX_BOTTOM_WIDTH=30;this.STATEMENT_BOTTOM_SPACER=-this.NOTCH_HEIGHT/2}};$.$jscomp.inherits(module$exports$Blockly$geras$ConstantProvider.ConstantProvider,module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider); +module$exports$Blockly$geras$ConstantProvider.ConstantProvider.prototype.getCSS_=function(a){return module$exports$Blockly$blockRendering$ConstantProvider.ConstantProvider.prototype.getCSS_.call(this,a).concat([a+" .blocklyInsertionMarker>.blocklyPathLight,",a+" .blocklyInsertionMarker>.blocklyPathDark {","fill-opacity: "+this.INSERTION_MARKER_OPACITY+";","stroke: none;","}"])};var module$exports$Blockly$geras$InlineInput={InlineInput:function(a,b){module$exports$Blockly$blockRendering$InlineInput.InlineInput.call(this,a,b);this.connectedBlock&&(this.width+=this.constants_.DARK_PATH_OFFSET,this.height+=this.constants_.DARK_PATH_OFFSET)}};$.$jscomp.inherits(module$exports$Blockly$geras$InlineInput.InlineInput,module$exports$Blockly$blockRendering$InlineInput.InlineInput);var module$exports$Blockly$geras$Highlighter={Highlighter:function(a){this.info_=a;this.inlineSteps_=this.steps_="";this.RTL_=this.info_.RTL;a=a.getRenderer();this.constants_=a.getConstants();this.highlightConstants_=a.getHighlightConstants();this.highlightOffset_=this.highlightConstants_.OFFSET;this.outsideCornerPaths_=this.highlightConstants_.OUTSIDE_CORNER;this.insideCornerPaths_=this.highlightConstants_.INSIDE_CORNER;this.puzzleTabPaths_=this.highlightConstants_.PUZZLE_TAB;this.notchPaths_=this.highlightConstants_.NOTCH; this.startPaths_=this.highlightConstants_.START_HAT;this.jaggedTeethPaths_=this.highlightConstants_.JAGGED_TEETH}};module$exports$Blockly$geras$Highlighter.Highlighter.prototype.getPath=function(){return this.steps_+"\n"+this.inlineSteps_}; module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawTopCorner=function(a){this.steps_+=(0,module$exports$Blockly$utils$svgPaths.moveBy)(a.xPos,this.info_.startY);for(var b=0,c;c=a.elements[b];b++)module$exports$Blockly$blockRendering$Types.Types.isLeftSquareCorner(c)?this.steps_+=this.highlightConstants_.START_POINT:module$exports$Blockly$blockRendering$Types.Types.isLeftRoundedCorner(c)?this.steps_+=this.outsideCornerPaths_.topLeft(this.RTL_):module$exports$Blockly$blockRendering$Types.Types.isPreviousConnection(c)? this.steps_+=this.notchPaths_.pathLeft:module$exports$Blockly$blockRendering$Types.Types.isHat(c)?this.steps_+=this.startPaths_.path(this.RTL_):module$exports$Blockly$blockRendering$Types.Types.isSpacer(c)&&0!==c.width&&(this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("H",c.xPos+c.width-this.highlightOffset_));this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("H",a.xPos+a.width-this.highlightOffset_)}; @@ -1660,18 +1668,19 @@ module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawJaggedEdge_=f module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawValueInput=function(a){var b=a.getLastInput();if(this.RTL_){var c=a.height-b.connectionHeight;this.steps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(b.xPos+b.width-this.highlightOffset_,a.yPos)+this.puzzleTabPaths_.pathDown(this.RTL_)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("v",c)}else this.steps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(b.xPos+b.width,a.yPos)+this.puzzleTabPaths_.pathDown(this.RTL_)}; module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawStatementInput=function(a){var b=a.getLastInput();if(this.RTL_){var c=a.height-2*this.insideCornerPaths_.height;this.steps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(b.xPos,a.yPos)+this.insideCornerPaths_.pathTop(this.RTL_)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("v",c)+this.insideCornerPaths_.pathBottom(this.RTL_)+(0,module$exports$Blockly$utils$svgPaths.lineTo)(a.width-b.xPos-this.insideCornerPaths_.width,0)}else this.steps_+= (0,module$exports$Blockly$utils$svgPaths.moveTo)(b.xPos,a.yPos+a.height)+this.insideCornerPaths_.pathBottom(this.RTL_)+(0,module$exports$Blockly$utils$svgPaths.lineTo)(a.width-b.xPos-this.insideCornerPaths_.width,0)}; -module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawRightSideRow=function(a){var b=a.xPos+a.width-this.highlightOffset_;a.followsStatement&&(this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("H",b));this.RTL_&&(this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("H",b),a.height>this.highlightOffset_&&(this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("V",a.yPos+a.height-this.highlightOffset_)))}; -module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawBottomRow=function(a){if(this.RTL_)this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("V",a.baseline-this.highlightOffset_);else{var b=this.info_.bottomRow.elements[0];module$exports$Blockly$blockRendering$Types.Types.isLeftSquareCorner(b)?this.steps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(a.xPos+this.highlightOffset_,a.baseline-this.highlightOffset_):module$exports$Blockly$blockRendering$Types.Types.isLeftRoundedCorner(b)&& -(this.steps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(a.xPos,a.baseline),this.steps_+=this.outsideCornerPaths_.bottomLeft())}}; +module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawRightSideRow=function(a){var b=a.xPos+a.width-this.highlightOffset_;a instanceof module$exports$Blockly$blockRendering$SpacerRow.SpacerRow&&a.followsStatement&&(this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("H",b));this.RTL_&&(this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("H",b),a.height>this.highlightOffset_&&(this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("V",a.yPos+a.height- +this.highlightOffset_)))}; +module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawBottomRow=function(a){if(this.RTL_)this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("V",a.baseline-this.highlightOffset_);else{var b=this.info_.bottomRow.elements[0];module$exports$Blockly$blockRendering$Types.Types.isLeftSquareCorner(b)?this.steps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(a.xPos+this.highlightOffset_,a.baseline-this.highlightOffset_):module$exports$Blockly$blockRendering$Types.Types.isLeftRoundedCorner(b)&&(this.steps_+= +(0,module$exports$Blockly$utils$svgPaths.moveTo)(a.xPos,a.baseline),this.steps_+=this.outsideCornerPaths_.bottomLeft())}}; module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawLeft=function(){var a=this.info_.outputConnection;a&&(a=a.connectionOffsetY+a.height,this.RTL_?this.steps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(this.info_.startX,a):(this.steps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(this.info_.startX+this.highlightOffset_,this.info_.bottomRow.baseline-this.highlightOffset_),this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("V",a)),this.steps_+=this.puzzleTabPaths_.pathUp(this.RTL_)); this.RTL_||(a=this.info_.topRow,module$exports$Blockly$blockRendering$Types.Types.isLeftRoundedCorner(a.elements[0])?this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("V",this.outsideCornerPaths_.height):this.steps_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("V",a.capline+this.highlightOffset_))}; module$exports$Blockly$geras$Highlighter.Highlighter.prototype.drawInlineInput=function(a){var b=this.highlightOffset_,c=a.xPos+a.connectionWidth,d=a.centerline-a.height/2,e=a.width-a.connectionWidth,f=d+b;this.RTL_?(d=a.connectionOffsetY-b,a=a.height-(a.connectionOffsetY+a.connectionHeight)+b,this.inlineSteps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(c-b,f)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("v",d)+this.puzzleTabPaths_.pathDown(this.RTL_)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("v", -a)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("h",e)):this.inlineSteps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(a.xPos+a.width+b,f)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("v",a.height)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("h",-e)+(0,module$exports$Blockly$utils$svgPaths.moveTo)(c,d+a.connectionOffsetY)+this.puzzleTabPaths_.pathDown(this.RTL_)};var module$exports$Blockly$geras$Drawer={Drawer:function(a,b){module$exports$Blockly$geras$Drawer.Drawer.superClass_.constructor.call(this,a,b);this.highlighter_=new module$exports$Blockly$geras$Highlighter.Highlighter(b)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$geras$Drawer.Drawer,module$exports$Blockly$blockRendering$Drawer.Drawer); +a)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("h",e)):this.inlineSteps_+=(0,module$exports$Blockly$utils$svgPaths.moveTo)(a.xPos+a.width+b,f)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("v",a.height)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("h",-e)+(0,module$exports$Blockly$utils$svgPaths.moveTo)(c,d+a.connectionOffsetY)+this.puzzleTabPaths_.pathDown(this.RTL_)};var module$exports$Blockly$geras$Drawer={Drawer:function(a,b){module$exports$Blockly$blockRendering$Drawer.Drawer.call(this,a,b);this.highlighter_=new module$exports$Blockly$geras$Highlighter.Highlighter(b)}};$.$jscomp.inherits(module$exports$Blockly$geras$Drawer.Drawer,module$exports$Blockly$blockRendering$Drawer.Drawer); module$exports$Blockly$geras$Drawer.Drawer.prototype.draw=function(){this.hideHiddenIcons_();this.drawOutline_();this.drawInternals_();var a=this.block_.pathObject;a.setPath(this.outlinePath_+"\n"+this.inlinePath_);a.setHighlightPath(this.highlighter_.getPath());this.info_.RTL&&a.flipRTL();(0,module$exports$Blockly$blockRendering$debug.isDebuggerEnabled)()&&this.block_.renderingDebugger.drawDebug(this.block_,this.info_);this.recordSizeOnBlock_()}; -module$exports$Blockly$geras$Drawer.Drawer.prototype.drawTop_=function(){this.highlighter_.drawTopCorner(this.info_.topRow);this.highlighter_.drawRightSideRow(this.info_.topRow);module$exports$Blockly$geras$Drawer.Drawer.superClass_.drawTop_.call(this)};module$exports$Blockly$geras$Drawer.Drawer.prototype.drawJaggedEdge_=function(a){this.highlighter_.drawJaggedEdge_(a);module$exports$Blockly$geras$Drawer.Drawer.superClass_.drawJaggedEdge_.call(this,a)}; -module$exports$Blockly$geras$Drawer.Drawer.prototype.drawValueInput_=function(a){this.highlighter_.drawValueInput(a);module$exports$Blockly$geras$Drawer.Drawer.superClass_.drawValueInput_.call(this,a)};module$exports$Blockly$geras$Drawer.Drawer.prototype.drawStatementInput_=function(a){this.highlighter_.drawStatementInput(a);module$exports$Blockly$geras$Drawer.Drawer.superClass_.drawStatementInput_.call(this,a)}; -module$exports$Blockly$geras$Drawer.Drawer.prototype.drawRightSideRow_=function(a){this.highlighter_.drawRightSideRow(a);this.outlinePath_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("H",a.xPos+a.width)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("V",a.yPos+a.height)};module$exports$Blockly$geras$Drawer.Drawer.prototype.drawBottom_=function(){this.highlighter_.drawBottomRow(this.info_.bottomRow);module$exports$Blockly$geras$Drawer.Drawer.superClass_.drawBottom_.call(this)}; -module$exports$Blockly$geras$Drawer.Drawer.prototype.drawLeft_=function(){this.highlighter_.drawLeft();module$exports$Blockly$geras$Drawer.Drawer.superClass_.drawLeft_.call(this)};module$exports$Blockly$geras$Drawer.Drawer.prototype.drawInlineInput_=function(a){this.highlighter_.drawInlineInput(a);module$exports$Blockly$geras$Drawer.Drawer.superClass_.drawInlineInput_.call(this,a)}; +module$exports$Blockly$geras$Drawer.Drawer.prototype.drawTop_=function(){this.highlighter_.drawTopCorner(this.info_.topRow);this.highlighter_.drawRightSideRow(this.info_.topRow);module$exports$Blockly$blockRendering$Drawer.Drawer.prototype.drawTop_.call(this)};module$exports$Blockly$geras$Drawer.Drawer.prototype.drawJaggedEdge_=function(a){this.highlighter_.drawJaggedEdge_(a);module$exports$Blockly$blockRendering$Drawer.Drawer.prototype.drawJaggedEdge_.call(this,a)}; +module$exports$Blockly$geras$Drawer.Drawer.prototype.drawValueInput_=function(a){this.highlighter_.drawValueInput(a);module$exports$Blockly$blockRendering$Drawer.Drawer.prototype.drawValueInput_.call(this,a)};module$exports$Blockly$geras$Drawer.Drawer.prototype.drawStatementInput_=function(a){this.highlighter_.drawStatementInput(a);module$exports$Blockly$blockRendering$Drawer.Drawer.prototype.drawStatementInput_.call(this,a)}; +module$exports$Blockly$geras$Drawer.Drawer.prototype.drawRightSideRow_=function(a){this.highlighter_.drawRightSideRow(a);this.outlinePath_+=(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("H",a.xPos+a.width)+(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("V",a.yPos+a.height)};module$exports$Blockly$geras$Drawer.Drawer.prototype.drawBottom_=function(){this.highlighter_.drawBottomRow(this.info_.bottomRow);module$exports$Blockly$blockRendering$Drawer.Drawer.prototype.drawBottom_.call(this)}; +module$exports$Blockly$geras$Drawer.Drawer.prototype.drawLeft_=function(){this.highlighter_.drawLeft();module$exports$Blockly$blockRendering$Drawer.Drawer.prototype.drawLeft_.call(this)};module$exports$Blockly$geras$Drawer.Drawer.prototype.drawInlineInput_=function(a){this.highlighter_.drawInlineInput(a);module$exports$Blockly$blockRendering$Drawer.Drawer.prototype.drawInlineInput_.call(this,a)}; module$exports$Blockly$geras$Drawer.Drawer.prototype.positionInlineInputConnection_=function(a){var b=a.centerline-a.height/2;if(a.connectionModel){var c=a.xPos+a.connectionWidth+this.constants_.DARK_PATH_OFFSET;this.info_.RTL&&(c*=-1);a.connectionModel.setOffsetInBlock(c,b+a.connectionOffsetY+this.constants_.DARK_PATH_OFFSET)}}; module$exports$Blockly$geras$Drawer.Drawer.prototype.positionStatementInputConnection_=function(a){var b=a.getLastInput();if(b.connectionModel){var c=a.xPos+a.statementEdge+b.notchOffset;c=this.info_.RTL?-1*c:c+this.constants_.DARK_PATH_OFFSET;b.connectionModel.setOffsetInBlock(c,a.yPos+this.constants_.DARK_PATH_OFFSET)}}; module$exports$Blockly$geras$Drawer.Drawer.prototype.positionExternalValueConnection_=function(a){var b=a.getLastInput();if(b.connectionModel){var c=a.xPos+a.width+this.constants_.DARK_PATH_OFFSET;this.info_.RTL&&(c*=-1);b.connectionModel.setOffsetInBlock(c,a.yPos)}}; @@ -1686,8 +1695,8 @@ module$exports$Blockly$geras$HighlightConstantProvider.HighlightConstantProvider a,1),f=(0,module$exports$Blockly$utils$svgPaths.moveBy)(-5,b-.7)+(0,module$exports$Blockly$utils$svgPaths.lineTo)(.46*a,-2.1);return{width:a,height:b,pathUp:function(g){return g?c:e},pathDown:function(g){return g?d:f}}};module$exports$Blockly$geras$HighlightConstantProvider.HighlightConstantProvider.prototype.makeNotch=function(){return{pathLeft:(0,module$exports$Blockly$utils$svgPaths.lineOnAxis)("h",this.OFFSET)+this.constantProvider.NOTCH.pathLeft}}; module$exports$Blockly$geras$HighlightConstantProvider.HighlightConstantProvider.prototype.makeJaggedTeeth=function(){return{pathLeft:(0,module$exports$Blockly$utils$svgPaths.lineTo)(5.1,2.6)+(0,module$exports$Blockly$utils$svgPaths.moveBy)(-10.2,6.8)+(0,module$exports$Blockly$utils$svgPaths.lineTo)(5.1,2.6),height:12,width:10.2}}; module$exports$Blockly$geras$HighlightConstantProvider.HighlightConstantProvider.prototype.makeStartHat=function(){var a=this.constantProvider.START_HAT.height,b=(0,module$exports$Blockly$utils$svgPaths.moveBy)(25,-8.7)+(0,module$exports$Blockly$utils$svgPaths.curve)("c",[(0,module$exports$Blockly$utils$svgPaths.point)(29.7,-6.2),(0,module$exports$Blockly$utils$svgPaths.point)(57.2,-.5),(0,module$exports$Blockly$utils$svgPaths.point)(75,8.7)]),c=(0,module$exports$Blockly$utils$svgPaths.curve)("c", -[(0,module$exports$Blockly$utils$svgPaths.point)(17.8,-9.2),(0,module$exports$Blockly$utils$svgPaths.point)(45.3,-14.9),(0,module$exports$Blockly$utils$svgPaths.point)(75,-8.7)])+(0,module$exports$Blockly$utils$svgPaths.moveTo)(100.5,a+.5);return{path:function(d){return d?b:c}}};var module$exports$Blockly$geras$InlineInput={InlineInput:function(a,b){module$exports$Blockly$geras$InlineInput.InlineInput.superClass_.constructor.call(this,a,b);this.connectedBlock&&(this.width+=this.constants_.DARK_PATH_OFFSET,this.height+=this.constants_.DARK_PATH_OFFSET)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$geras$InlineInput.InlineInput,module$exports$Blockly$blockRendering$InlineInput.InlineInput);var module$exports$Blockly$geras$RenderInfo={RenderInfo:function(a,b){module$exports$Blockly$geras$RenderInfo.RenderInfo.superClass_.constructor.call(this,a,b)}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$geras$RenderInfo.RenderInfo,module$exports$Blockly$blockRendering$RenderInfo.RenderInfo);module$exports$Blockly$geras$RenderInfo.RenderInfo.prototype.getRenderer=function(){return this.renderer_}; -module$exports$Blockly$geras$RenderInfo.RenderInfo.prototype.populateBottomRow_=function(){module$exports$Blockly$geras$RenderInfo.RenderInfo.superClass_.populateBottomRow_.call(this);this.block_.inputList.length&&this.block_.inputList[this.block_.inputList.length-1].type===$.module$exports$Blockly$inputTypes.inputTypes.STATEMENT||(this.bottomRow.minHeight=this.constants_.MEDIUM_PADDING-this.constants_.DARK_PATH_OFFSET)}; +[(0,module$exports$Blockly$utils$svgPaths.point)(17.8,-9.2),(0,module$exports$Blockly$utils$svgPaths.point)(45.3,-14.9),(0,module$exports$Blockly$utils$svgPaths.point)(75,-8.7)])+(0,module$exports$Blockly$utils$svgPaths.moveTo)(100.5,a+.5);return{path:function(d){return d?b:c}}};var module$exports$Blockly$geras$RenderInfo={RenderInfo:function(a,b){module$exports$Blockly$blockRendering$RenderInfo.RenderInfo.call(this,a,b)}};$.$jscomp.inherits(module$exports$Blockly$geras$RenderInfo.RenderInfo,module$exports$Blockly$blockRendering$RenderInfo.RenderInfo);module$exports$Blockly$geras$RenderInfo.RenderInfo.prototype.getRenderer=function(){return this.renderer_}; +module$exports$Blockly$geras$RenderInfo.RenderInfo.prototype.populateBottomRow_=function(){module$exports$Blockly$blockRendering$RenderInfo.RenderInfo.prototype.populateBottomRow_.call(this);this.block_.inputList.length&&this.block_.inputList[this.block_.inputList.length-1].type===$.module$exports$Blockly$inputTypes.inputTypes.STATEMENT||(this.bottomRow.minHeight=this.constants_.MEDIUM_PADDING-this.constants_.DARK_PATH_OFFSET)}; module$exports$Blockly$geras$RenderInfo.RenderInfo.prototype.addInput_=function(a,b){this.isInline&&a.type===$.module$exports$Blockly$inputTypes.inputTypes.VALUE?(b.elements.push(new module$exports$Blockly$geras$InlineInput.InlineInput(this.constants_,a)),b.hasInlineInput=!0):a.type===$.module$exports$Blockly$inputTypes.inputTypes.STATEMENT?(b.elements.push(new module$exports$Blockly$geras$StatementInput.StatementInput(this.constants_,a)),b.hasStatement=!0):a.type===$.module$exports$Blockly$inputTypes.inputTypes.VALUE? (b.elements.push(new module$exports$Blockly$blockRendering$ExternalValueInput.ExternalValueInput(this.constants_,a)),b.hasExternalInput=!0):a.type===$.module$exports$Blockly$inputTypes.inputTypes.DUMMY&&(b.minHeight=Math.max(b.minHeight,this.constants_.DUMMY_INPUT_MIN_HEIGHT),b.hasDummyInput=!0);this.isInline||null!==b.align||(b.align=a.align)}; module$exports$Blockly$geras$RenderInfo.RenderInfo.prototype.addElemSpacing_=function(){for(var a=!1,b=0,c;c=this.rows[b];b++)c.hasExternalInput&&(a=!0);for(b=0;c=this.rows[b];b++){var d=c.elements;c.elements=[];c.startsWithElemSpacer()&&c.elements.push(new module$exports$Blockly$blockRendering$InRowSpacer.InRowSpacer(this.constants_,this.getInRowSpacing_(null,d[0])));if(d.length){for(var e=0;ea||Math.abs(this.workspaceHeight_-d)>a)this.workspaceWidth_=c,this.workspaceHeight_=d,this.bubble_.setBubbleSize(c+ +a,d+a),this.svgDialog_.setAttribute("width",this.workspaceWidth_),this.svgDialog_.setAttribute("height",this.workspaceHeight_),this.workspace_.setCachedParentSvgSize(this.workspaceWidth_,this.workspaceHeight_);this.block_.RTL&&(a="translate("+this.workspaceWidth_+",0)",this.workspace_.getCanvas().setAttribute("transform",a));this.workspace_.resize()};$.module$exports$Blockly$Mutator.Mutator.prototype.onBubbleMove_=function(){this.workspace_&&this.workspace_.recordDragTargets()}; +$.module$exports$Blockly$Mutator.Mutator.prototype.setVisible=function(a){var b=this;if(a!==this.isVisible())if((0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.BUBBLE_OPEN))(this.block_,a,"mutator")),a){this.bubble_=new module$exports$Blockly$Bubble.Bubble(this.block_.workspace,this.createEditor_(),this.block_.pathObject.svgPath,this.iconXY_,null,null);this.bubble_.setSvgId(this.block_.id);this.bubble_.registerMoveEvent(this.onBubbleMove_.bind(this)); +var c=this.workspace_.options.languageTree;a=this.workspace_.getFlyout();c&&(a.init(this.workspace_),a.show(c));this.rootBlock_=this.block_.decompose(this.workspace_);c=this.rootBlock_.getDescendants(!1);for(var d=0,e=void 0;e=c[d];d++)e.render();this.rootBlock_.setMovable(!1);this.rootBlock_.setDeletable(!1);a?(c=2*a.CORNER_RADIUS,a=this.rootBlock_.RTL?a.getWidth()+c:c):a=c=16;this.block_.RTL&&(a=-a);this.rootBlock_.moveBy(a,c);if(this.block_.saveConnections){var f=this.rootBlock_;this.block_.saveConnections(f); +this.sourceListener_=function(){b.block_&&b.block_.saveConnections(f)};this.block_.workspace.addChangeListener(this.sourceListener_)}this.resizeBubble_();this.workspace_.addChangeListener(this.workspaceChanged_.bind(this));this.updateWorkspace_();this.applyColour()}else this.svgDialog_=null,this.workspace_.dispose(),this.rootBlock_=this.workspace_=null,this.bubble_.dispose(),this.bubble_=null,this.workspaceHeight_=this.workspaceWidth_=0,this.sourceListener_&&(this.block_.workspace.removeChangeListener(this.sourceListener_), +this.sourceListener_=null)};$.module$exports$Blockly$Mutator.Mutator.prototype.workspaceChanged_=function(a){a.isUiEvent||a.type===module$exports$Blockly$Events$utils.CHANGE&&"disabled"===a.element||a.type===module$exports$Blockly$Events$utils.CREATE||this.updateWorkspace_()}; +$.module$exports$Blockly$Mutator.Mutator.prototype.updateWorkspace_=function(){if(!this.workspace_.isDragging())for(var a=this.workspace_.getTopBlocks(!1),b=0,c=void 0;c=a[b];b++){var d=c.getRelativeToSurfaceXY();20>d.y&&c.moveBy(0,20-d.y);if(c.RTL){var e=-20,f=this.workspace_.getFlyout();f&&(e-=f.getWidth());d.x>e&&c.moveBy(e-d.x,0)}else 20>d.x&&c.moveBy(20-d.x,0)}if(this.rootBlock_.workspace===this.workspace_){(a=(0,module$exports$Blockly$Events$utils.getGroup)())||(0,module$exports$Blockly$Events$utils.setGroup)(!0); +var g=this.block_;b=module$exports$Blockly$Events$BlockChange.BlockChange.getExtraBlockState_(g);c=g.rendered;g.rendered=!1;g.compose(this.rootBlock_);g.rendered=c;g.initSvg();g.rendered&&g.render();c=module$exports$Blockly$Events$BlockChange.BlockChange.getExtraBlockState_(g);if(b!==c){(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.CHANGE))(g,"mutation",null,b,c));var h=(0,module$exports$Blockly$Events$utils.getGroup)(); +setTimeout(function(){var k=(0,module$exports$Blockly$Events$utils.getGroup)();(0,module$exports$Blockly$Events$utils.setGroup)(h);g.bumpNeighbours();(0,module$exports$Blockly$Events$utils.setGroup)(k)},$.module$exports$Blockly$config.config.bumpDelay)}this.workspace_.isDragging()||this.resizeBubble_();(0,module$exports$Blockly$Events$utils.setGroup)(a)}};$.module$exports$Blockly$Mutator.Mutator.prototype.dispose=function(){this.block_.mutator=null;module$exports$Blockly$Icon.Icon.prototype.dispose.call(this)}; +$.module$exports$Blockly$Mutator.Mutator.prototype.updateBlockStyle=function(){var a=this.workspace_;if(a&&a.getAllBlocks(!1)){for(var b=a.getAllBlocks(!1),c=0,d;d=b[c];c++)d.setStyle(d.getStyleName());if(a=a.getFlyout())for(a=a.workspace_.getAllBlocks(!1),b=0;c=a[b];b++)c.setStyle(c.getStyleName())}}; +$.module$exports$Blockly$Mutator.Mutator.reconnect=function(a,b,c){if(!a||!a.getSourceBlock().workspace)return!1;c=b.getInput(c).connection;var d=a.targetBlock();return d&&d!==b||c.targetConnection===a?!1:(c.isConnected()&&c.disconnect(),c.connect(a),!0)};$.module$exports$Blockly$Mutator.Mutator.findParentWs=function(a){var b=null;if(a&&a.options){var c=a.options.parentWorkspace;a.isFlyout?c&&c.options&&(b=c.options.parentWorkspace):c&&(b=c)}return b};var module$exports$Blockly$Warning={Warning:function(a){module$exports$Blockly$Icon.Icon.call(this,a);this.createIcon();this.text_=Object.create(null);this.paragraphElement_=null;this.collapseHidden=!1}};$.$jscomp.inherits(module$exports$Blockly$Warning.Warning,module$exports$Blockly$Icon.Icon); module$exports$Blockly$Warning.Warning.prototype.drawIcon_=function(a){(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.PATH,{"class":"blocklyIconShape",d:"M2,15Q-1,15 0.5,12L6.5,1.7Q8,-1 9.5,1.7L15.5,12Q17,15 14,15z"},a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.PATH,{"class":"blocklyIconSymbol",d:"m7,4.8v3.16l0.27,2.27h1.46l0.27,-2.27v-3.16z"},a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT, {"class":"blocklyIconSymbol",x:"7",y:"11",height:"2",width:"2"},a)};module$exports$Blockly$Warning.Warning.prototype.setVisible=function(a){a!==this.isVisible()&&((0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.BUBBLE_OPEN))(this.block_,a,"warning")),a?this.createBubble_():this.disposeBubble_())}; module$exports$Blockly$Warning.Warning.prototype.createBubble_=function(){this.paragraphElement_=module$exports$Blockly$Bubble.Bubble.textToDom(this.getText());this.bubble_=module$exports$Blockly$Bubble.Bubble.createNonEditableBubble(this.paragraphElement_,this.block_,this.iconXY_);this.applyColour()};module$exports$Blockly$Warning.Warning.prototype.disposeBubble_=function(){this.bubble_.dispose();this.paragraphElement_=this.bubble_=null}; -module$exports$Blockly$Warning.Warning.prototype.setText=function(a,b){this.text_[b]!==a&&(a?this.text_[b]=a:delete this.text_[b],this.isVisible()&&(this.setVisible(!1),this.setVisible(!0)))};module$exports$Blockly$Warning.Warning.prototype.getText=function(){var a=[],b;for(b in this.text_)a.push(this.text_[b]);return a.join("\n")};module$exports$Blockly$Warning.Warning.prototype.dispose=function(){this.block_.warning=null;module$exports$Blockly$Icon.Icon.prototype.dispose.call(this)};var module$exports$Blockly$Comment={Comment:function(a){module$exports$Blockly$Comment.Comment.superClass_.constructor.call(this,a);this.model_=a.commentModel;this.model_.text=this.model_.text||"";this.cachedText_="";this.onInputWrapper_=this.onChangeWrapper_=this.onWheelWrapper_=this.onMouseUpWrapper_=null;this.createIcon()}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$Comment.Comment,module$exports$Blockly$Icon.Icon); +module$exports$Blockly$Warning.Warning.prototype.setText=function(a,b){this.text_[b]!==a&&(a?this.text_[b]=a:delete this.text_[b],this.isVisible()&&(this.setVisible(!1),this.setVisible(!0)))};module$exports$Blockly$Warning.Warning.prototype.getText=function(){var a=[],b;for(b in this.text_)a.push(this.text_[b]);return a.join("\n")};module$exports$Blockly$Warning.Warning.prototype.dispose=function(){this.block_.warning=null;module$exports$Blockly$Icon.Icon.prototype.dispose.call(this)};var module$exports$Blockly$Comment={Comment:function(a){module$exports$Blockly$Icon.Icon.call(this,a);this.model_=a.commentModel;this.model_.text=this.model_.text||"";this.cachedText_="";this.paragraphElement_=this.textarea_=this.foreignObject_=this.onInputWrapper_=this.onChangeWrapper_=this.onWheelWrapper_=this.onMouseUpWrapper_=null;this.createIcon()}};$.$jscomp.inherits(module$exports$Blockly$Comment.Comment,module$exports$Blockly$Icon.Icon); module$exports$Blockly$Comment.Comment.prototype.drawIcon_=function(a){(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.CIRCLE,{"class":"blocklyIconShape",r:"8",cx:"8",cy:"8"},a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.PATH,{"class":"blocklyIconSymbol",d:"m6.8,10h2c0.003,-0.617 0.271,-0.962 0.633,-1.266 2.875,-2.4050.607,-5.534 -3.765,-3.874v1.7c3.12,-1.657 3.698,0.118 2.336,1.25-1.201,0.998 -1.201,1.528 -1.204,2.19z"}, a);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"blocklyIconSymbol",x:"6.8",y:"10.78",height:"2",width:"2"},a)}; module$exports$Blockly$Comment.Comment.prototype.createEditor_=function(){this.foreignObject_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.FOREIGNOBJECT,{x:module$exports$Blockly$Bubble.Bubble.BORDER_WIDTH,y:module$exports$Blockly$Bubble.Bubble.BORDER_WIDTH},null);var a=document.createElementNS(module$exports$Blockly$utils$dom.HTML_NS,"body");a.setAttribute("xmlns",module$exports$Blockly$utils$dom.HTML_NS);a.className="blocklyMinimalBody";var b=this.textarea_= document.createElementNS(module$exports$Blockly$utils$dom.HTML_NS,"textarea");b.className="blocklyCommentTextarea";b.setAttribute("dir",this.block_.RTL?"RTL":"LTR");b.value=this.model_.text;this.resizeTextarea_();a.appendChild(b);this.foreignObject_.appendChild(a);this.onMouseUpWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(b,"mouseup",this,this.startEdit_,!0,!0);this.onWheelWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(b,"wheel",this,function(c){c.stopPropagation()}); this.onChangeWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(b,"change",this,function(c){this.cachedText_!==this.model_.text&&(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.CHANGE))(this.block_,"comment",null,this.cachedText_,this.model_.text))});this.onInputWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(b,"input",this,function(c){this.model_.text=b.value});setTimeout(b.focus.bind(b), -0);return this.foreignObject_};module$exports$Blockly$Comment.Comment.prototype.updateEditable=function(){module$exports$Blockly$Comment.Comment.superClass_.updateEditable.call(this);this.isVisible()&&(this.disposeBubble_(),this.createBubble_())};module$exports$Blockly$Comment.Comment.prototype.onBubbleResize_=function(){this.isVisible()&&(this.model_.size=this.bubble_.getBubbleSize(),this.resizeTextarea_())}; +0);return this.foreignObject_};module$exports$Blockly$Comment.Comment.prototype.updateEditable=function(){module$exports$Blockly$Icon.Icon.prototype.updateEditable.call(this);this.isVisible()&&(this.disposeBubble_(),this.createBubble_())};module$exports$Blockly$Comment.Comment.prototype.onBubbleResize_=function(){this.isVisible()&&(this.model_.size=this.bubble_.getBubbleSize(),this.resizeTextarea_())}; module$exports$Blockly$Comment.Comment.prototype.resizeTextarea_=function(){var a=this.model_.size,b=2*module$exports$Blockly$Bubble.Bubble.BORDER_WIDTH,c=a.width-b;a=a.height-b;this.foreignObject_.setAttribute("width",c);this.foreignObject_.setAttribute("height",a);this.textarea_.style.width=c-4+"px";this.textarea_.style.height=a-4+"px"}; module$exports$Blockly$Comment.Comment.prototype.setVisible=function(a){a!==this.isVisible()&&((0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.BUBBLE_OPEN))(this.block_,a,"comment")),(this.model_.pinned=a)?this.createBubble_():this.disposeBubble_())}; module$exports$Blockly$Comment.Comment.prototype.createBubble_=function(){!this.block_.isEditable()||module$exports$Blockly$utils$userAgent.IE?this.createNonEditableBubble_():this.createEditableBubble_()}; @@ -1810,12 +1835,11 @@ module$exports$Blockly$Comment.Comment.prototype.createNonEditableBubble_=functi module$exports$Blockly$Comment.Comment.prototype.disposeBubble_=function(){this.onMouseUpWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onMouseUpWrapper_),this.onMouseUpWrapper_=null);this.onWheelWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onWheelWrapper_),this.onWheelWrapper_=null);this.onChangeWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onChangeWrapper_),this.onChangeWrapper_=null);this.onInputWrapper_&&((0,module$exports$Blockly$browserEvents.unbind)(this.onInputWrapper_), this.onInputWrapper_=null);this.bubble_.dispose();this.paragraphElement_=this.foreignObject_=this.textarea_=this.bubble_=null};module$exports$Blockly$Comment.Comment.prototype.startEdit_=function(a){this.bubble_.promote()&&this.textarea_.focus();this.cachedText_=this.model_.text};module$exports$Blockly$Comment.Comment.prototype.getBubbleSize=function(){return this.model_.size}; module$exports$Blockly$Comment.Comment.prototype.setBubbleSize=function(a,b){this.bubble_?this.bubble_.setBubbleSize(a,b):(this.model_.size.width=a,this.model_.size.height=b)};module$exports$Blockly$Comment.Comment.prototype.updateText=function(){this.textarea_?this.textarea_.value=this.model_.text:this.paragraphElement_&&(this.paragraphElement_.firstChild.textContent=this.model_.text)};module$exports$Blockly$Comment.Comment.prototype.dispose=function(){this.block_.comment=null;module$exports$Blockly$Icon.Icon.prototype.dispose.call(this)}; -(0,module$exports$Blockly$Css.register)("\n .blocklyCommentTextarea {\n background-color: #fef49c;\n border: 0;\n display: block;\n margin: 0;\n outline: 0;\n padding: 3px;\n resize: none;\n text-overflow: hidden;\n }\n");var module$exports$Blockly$uiPosition={verticalPosition:{TOP:0,BOTTOM:1},horizontalPosition:{LEFT:0,RIGHT:1},bumpDirection:{UP:0,DOWN:1},getStartPositionRect:function(a,b,c,d,e,f){var g=f.scrollbar&&f.scrollbar.canScrollVertically();a.horizontal===module$exports$Blockly$uiPosition.horizontalPosition.LEFT?(c=e.absoluteMetrics.left+c,g&&f.RTL&&(c+=module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness)):(c=e.absoluteMetrics.left+e.viewMetrics.width-b.width-c,g&&!f.RTL&&(c-=module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness)); +(0,module$exports$Blockly$Css.register)("\n.blocklyCommentTextarea {\n background-color: #fef49c;\n border: 0;\n display: block;\n margin: 0;\n outline: 0;\n padding: 3px;\n resize: none;\n text-overflow: hidden;\n}\n");var module$exports$Blockly$sprite={SPRITE:{width:96,height:124,url:"sprites.png"}};var module$exports$Blockly$uiPosition={verticalPosition:{TOP:0,BOTTOM:1},horizontalPosition:{LEFT:0,RIGHT:1},bumpDirection:{UP:0,DOWN:1},getStartPositionRect:function(a,b,c,d,e,f){var g=f.scrollbar&&f.scrollbar.canScrollVertically();a.horizontal===module$exports$Blockly$uiPosition.horizontalPosition.LEFT?(c=e.absoluteMetrics.left+c,g&&f.RTL&&(c+=module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness)):(c=e.absoluteMetrics.left+e.viewMetrics.width-b.width-c,g&&!f.RTL&&(c-=module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness)); a.vertical===module$exports$Blockly$uiPosition.verticalPosition.TOP?a=e.absoluteMetrics.top+d:(a=e.absoluteMetrics.top+e.viewMetrics.height-b.height-d,f.scrollbar&&f.scrollbar.canScrollHorizontally()&&(a-=module$exports$Blockly$Scrollbar.Scrollbar.scrollbarThickness));return new module$exports$Blockly$utils$Rect.Rect(a,a+b.height,c,c+b.width)},getCornerOppositeToolbox:function(a,b){return{horizontal:b.toolboxMetrics.position===module$exports$Blockly$utils$toolbox.Position.LEFT||a.horizontalLayout&& !a.RTL?module$exports$Blockly$uiPosition.horizontalPosition.RIGHT:module$exports$Blockly$uiPosition.horizontalPosition.LEFT,vertical:b.toolboxMetrics.position===module$exports$Blockly$utils$toolbox.Position.BOTTOM?module$exports$Blockly$uiPosition.verticalPosition.TOP:module$exports$Blockly$uiPosition.verticalPosition.BOTTOM}},bumpPositionRect:function(a,b,c,d){for(var e=a.left,f=a.right-a.left,g=a.bottom-a.top,h=0;himage, .blocklyZoom>svg>image {\n opacity: .4;\n }\n\n .blocklyZoom>image:hover, .blocklyZoom>svg>image:hover {\n opacity: .6;\n }\n\n .blocklyZoom>image:active, .blocklyZoom>svg>image:active {\n opacity: .8;\n }\n");var module$exports$Blockly$WorkspaceComment={WorkspaceComment:function(a,b,c,d,e){this.id=e&&!a.getCommentById(e)?e:(0,module$exports$Blockly$utils$idGenerator.genUid)();a.addTopComment(this);this.xy_=new module$exports$Blockly$utils$Coordinate.Coordinate(0,0);this.height_=c;this.width_=d;this.workspace=a;this.RTL=a.RTL;this.editable_=this.movable_=this.deletable_=!0;this.content_=b;this.disposed_=!1;this.isComment=!0;module$exports$Blockly$WorkspaceComment.WorkspaceComment.fireCreateEvent(this)}}; +{width:32,height:32},b);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.IMAGE,{width:module$exports$Blockly$sprite.SPRITE.width,height:module$exports$Blockly$sprite.SPRITE.height,y:-92,"clip-path":"url(#blocklyZoomresetClipPath"+a+")"},this.zoomResetGroup_).setAttributeNS(module$exports$Blockly$utils$dom.XLINK_NS,"xlink:href",this.workspace_.options.pathToMedia+module$exports$Blockly$sprite.SPRITE.url);this.onZoomResetWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(this.zoomResetGroup_, +"mousedown",null,this.resetZoom_.bind(this))}; +module$exports$Blockly$ZoomControls.ZoomControls.prototype.resetZoom_=function(a){this.workspace_.markFocused();var b=Math.log(this.workspace_.options.zoomOptions.startScale/this.workspace_.scale)/Math.log(this.workspace_.options.zoomOptions.scaleSpeed);this.workspace_.beginCanvasTransition();this.workspace_.zoomCenter(b);this.workspace_.scrollCenter();setTimeout(this.workspace_.endCanvasTransition.bind(this.workspace_),500);this.fireZoomEvent_();(0,module$exports$Blockly$Touch.clearTouchIdentifier)();a.stopPropagation(); +a.preventDefault()};module$exports$Blockly$ZoomControls.ZoomControls.prototype.fireZoomEvent_=function(){var a=new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.CLICK))(null,this.workspace_.id,"zoom_controls");(0,module$exports$Blockly$Events$utils.fire)(a)};(0,module$exports$Blockly$Css.register)("\n.blocklyZoom>image, .blocklyZoom>svg>image {\n opacity: .4;\n}\n\n.blocklyZoom>image:hover, .blocklyZoom>svg>image:hover {\n opacity: .6;\n}\n\n.blocklyZoom>image:active, .blocklyZoom>svg>image:active {\n opacity: .8;\n}\n");var module$exports$Blockly$WorkspaceComment={WorkspaceComment:function(a,b,c,d,e){this.id=e&&!a.getCommentById(e)?e:(0,module$exports$Blockly$utils$idGenerator.genUid)();a.addTopComment(this);this.xy_=new module$exports$Blockly$utils$Coordinate.Coordinate(0,0);this.height_=c;this.width_=d;this.workspace=a;this.RTL=a.RTL;this.editable_=this.movable_=this.deletable_=!0;this.content_=b;this.disposed_=!1;this.isComment=!0;module$exports$Blockly$WorkspaceComment.WorkspaceComment.fireCreateEvent(this)}}; module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.dispose=function(){this.disposed_||((0,module$exports$Blockly$Events$utils.isEnabled)()&&(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.COMMENT_DELETE))(this)),this.workspace.removeTopComment(this),this.disposed_=!0)};module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.getHeight=function(){return this.height_}; module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.setHeight=function(a){this.height_=a};module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.getWidth=function(){return this.width_};module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.setWidth=function(a){this.width_=a};module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.getXY=function(){return new module$exports$Blockly$utils$Coordinate.Coordinate(this.xy_.x,this.xy_.y)}; module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.moveBy=function(a,b){var c=new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.COMMENT_MOVE))(this);this.xy_.translate(a,b);c.recordNew();(0,module$exports$Blockly$Events$utils.fire)(c)};module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.isDeletable=function(){return this.deletable_&&!(this.workspace&&this.workspace.options.readOnly)}; @@ -1843,11 +1867,11 @@ module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.toXmlWithXY=f module$exports$Blockly$WorkspaceComment.WorkspaceComment.fireCreateEvent=function(a){if((0,module$exports$Blockly$Events$utils.isEnabled)()){var b=(0,module$exports$Blockly$Events$utils.getGroup)();b||(0,module$exports$Blockly$Events$utils.setGroup)(!0);try{(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.COMMENT_CREATE))(a))}finally{b||(0,module$exports$Blockly$Events$utils.setGroup)(!1)}}}; module$exports$Blockly$WorkspaceComment.WorkspaceComment.fromXml=function(a,b){var c=module$exports$Blockly$WorkspaceComment.WorkspaceComment.parseAttributes(a);b=new module$exports$Blockly$WorkspaceComment.WorkspaceComment(b,c.content,c.h,c.w,c.id);c=parseInt(a.getAttribute("x"),10);a=parseInt(a.getAttribute("y"),10);isNaN(c)||isNaN(a)||b.moveBy(c,a);module$exports$Blockly$WorkspaceComment.WorkspaceComment.fireCreateEvent(b);return b}; module$exports$Blockly$WorkspaceComment.WorkspaceComment.parseAttributes=function(a){var b=a.getAttribute("h"),c=a.getAttribute("w");return{id:a.getAttribute("id"),h:b?parseInt(b,10):100,w:c?parseInt(c,10):100,x:parseInt(a.getAttribute("x"),10),y:parseInt(a.getAttribute("y"),10),content:a.textContent}};var module$exports$Blockly$WorkspaceCommentSvg={},module$contents$Blockly$WorkspaceCommentSvg_RESIZE_SIZE=8,module$contents$Blockly$WorkspaceCommentSvg_BORDER_RADIUS=3,module$contents$Blockly$WorkspaceCommentSvg_TEXTAREA_OFFSET=2; -module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg=function(a,b,c,d,e){this.onMouseMoveWrapper_=this.onMouseUpWrapper_=null;this.svgGroup_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.G,{"class":"blocklyComment"},null);this.svgGroup_.translate_="";this.svgRect_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"blocklyCommentRect",x:0,y:0,rx:module$contents$Blockly$WorkspaceCommentSvg_BORDER_RADIUS, -ry:module$contents$Blockly$WorkspaceCommentSvg_BORDER_RADIUS});this.svgGroup_.appendChild(this.svgRect_);this.rendered_=!1;this.useDragSurface_=(0,module$exports$Blockly$utils$svgMath.is3dSupported)()&&!!a.getBlockDragSurface();module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.superClass_.constructor.call(this,a,b,c,d,e);this.render()};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg,module$exports$Blockly$WorkspaceComment.WorkspaceComment); -module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.DEFAULT_SIZE=100;module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.TOP_OFFSET=10; +module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg=function(a,b,c,d,e){module$exports$Blockly$WorkspaceComment.WorkspaceComment.call(this,a,b,c,d,e);this.onMouseMoveWrapper_=this.onMouseUpWrapper_=null;this.eventsInit_=!1;this.deleteIconBorder_=this.deleteGroup_=this.resizeGroup_=this.foreignObject_=this.svgHandleTarget_=this.svgRectTarget_=this.textarea_=null;this.autoLayout_=this.focused_=!1;this.svgGroup_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.G, +{"class":"blocklyComment"},null);this.svgGroup_.translate_="";this.svgRect_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"blocklyCommentRect",x:0,y:0,rx:module$contents$Blockly$WorkspaceCommentSvg_BORDER_RADIUS,ry:module$contents$Blockly$WorkspaceCommentSvg_BORDER_RADIUS});this.svgGroup_.appendChild(this.svgRect_);this.rendered_=!1;this.useDragSurface_=(0,module$exports$Blockly$utils$svgMath.is3dSupported)()&&!!a.getBlockDragSurface();this.render()}; +$.$jscomp.inherits(module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg,module$exports$Blockly$WorkspaceComment.WorkspaceComment); module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.dispose=function(){this.disposed_||((0,$.module$exports$Blockly$common.getSelected)()===this&&(this.unselect(),this.workspace.cancelCurrentGesture()),(0,module$exports$Blockly$Events$utils.isEnabled)()&&(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.COMMENT_DELETE))(this)),(0,module$exports$Blockly$utils$dom.removeNode)(this.svgGroup_),this.disposeInternal_(), -(0,module$exports$Blockly$Events$utils.disable)(),module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.superClass_.dispose.call(this),(0,module$exports$Blockly$Events$utils.enable)())}; +(0,module$exports$Blockly$Events$utils.disable)(),module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.dispose.call(this),(0,module$exports$Blockly$Events$utils.enable)())}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.initSvg=function(a){if(!this.workspace.rendered)throw TypeError("Workspace is headless.");this.workspace.options.readOnly||this.eventsInit_||((0,module$exports$Blockly$browserEvents.conditionalBind)(this.svgRectTarget_,"mousedown",this,this.pathMouseDown_),(0,module$exports$Blockly$browserEvents.conditionalBind)(this.svgHandleTarget_,"mousedown",this,this.pathMouseDown_));this.eventsInit_=!0;this.updateMovable();this.getSvgRoot().parentNode|| this.workspace.getBubbleCanvas().appendChild(this.getSvgRoot());!a&&this.textarea_&&this.textarea_.select()};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.pathMouseDown_=function(a){var b=this.workspace.getGesture(a);b&&b.handleBubbleStart(a,this)}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.showContextMenu=function(a){if(!this.workspace.options.readOnly){var b=[];this.isDeletable()&&this.isMovable()&&(b.push((0,$.module$exports$Blockly$ContextMenu.commentDuplicateOption)(this)),b.push((0,$.module$exports$Blockly$ContextMenu.commentDeleteOption)(this)));(0,$.module$exports$Blockly$ContextMenu.show)(a,b,this.RTL)}}; @@ -1861,13 +1885,12 @@ d!==c)}return this.xy_=new module$exports$Blockly$utils$Coordinate.Coordinate(a, module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.translate=function(a,b){this.xy_=new module$exports$Blockly$utils$Coordinate.Coordinate(a,b);this.getSvgRoot().setAttribute("transform","translate("+a+","+b+")")};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.moveToDragSurface=function(){if(this.useDragSurface_){var a=this.getRelativeToSurfaceXY();this.clearTransformAttributes_();this.workspace.getBlockDragSurface().translateSurface(a.x,a.y);this.workspace.getBlockDragSurface().setBlocksAndShow(this.getSvgRoot())}}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.moveDuringDrag=function(a,b){a?a.translateSurface(b.x,b.y):(this.svgGroup_.translate_="translate("+b.x+","+b.y+")",this.svgGroup_.setAttribute("transform",this.svgGroup_.translate_+this.svgGroup_.skew_))};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.moveTo=function(a,b){this.translate(a,b)};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.clearTransformAttributes_=function(){this.getSvgRoot().removeAttribute("transform")}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.getBoundingRectangle=function(){var a=this.getRelativeToSurfaceXY(),b=this.getHeightWidth(),c=a.y,d=a.y+b.height;if(this.RTL){var e=a.x-b.width;a=a.x}else e=a.x,a=a.x+b.width;return new module$exports$Blockly$utils$Rect.Rect(c,d,e,a)}; -module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.updateMovable=function(){this.isMovable()?(0,module$exports$Blockly$utils$dom.addClass)(this.svgGroup_,"blocklyDraggable"):(0,module$exports$Blockly$utils$dom.removeClass)(this.svgGroup_,"blocklyDraggable")};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setMovable=function(a){module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.superClass_.setMovable.call(this,a);this.updateMovable()}; -module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setEditable=function(a){module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.superClass_.setEditable.call(this,a);this.textarea_&&(this.textarea_.readOnly=!a)}; +module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.updateMovable=function(){this.isMovable()?(0,module$exports$Blockly$utils$dom.addClass)(this.svgGroup_,"blocklyDraggable"):(0,module$exports$Blockly$utils$dom.removeClass)(this.svgGroup_,"blocklyDraggable")};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setMovable=function(a){module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.setMovable.call(this,a);this.updateMovable()}; +module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setEditable=function(a){module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.setEditable.call(this,a);this.textarea_&&(this.textarea_.readOnly=!a)}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setDragging=function(a){a?(a=this.getSvgRoot(),a.translate_="",a.skew_="",(0,module$exports$Blockly$utils$dom.addClass)(this.svgGroup_,"blocklyDragging")):(0,module$exports$Blockly$utils$dom.removeClass)(this.svgGroup_,"blocklyDragging")};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.getSvgRoot=function(){return this.svgGroup_}; -module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.getContent=function(){return this.textarea_?this.textarea_.value:this.content_};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setContent=function(a){module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.superClass_.setContent.call(this,a);this.textarea_&&(this.textarea_.value=a)}; +module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.getContent=function(){return this.textarea_?this.textarea_.value:this.content_};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setContent=function(a){module$exports$Blockly$WorkspaceComment.WorkspaceComment.prototype.setContent.call(this,a);this.textarea_&&(this.textarea_.value=a)}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setDeleteStyle=function(a){a?(0,module$exports$Blockly$utils$dom.addClass)(this.svgGroup_,"blocklyDraggingDelete"):(0,module$exports$Blockly$utils$dom.removeClass)(this.svgGroup_,"blocklyDraggingDelete")};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setAutoLayout=function(a){}; -module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.fromXml=function(a,b,c){(0,module$exports$Blockly$Events$utils.disable)();try{var d=module$exports$Blockly$WorkspaceComment.WorkspaceComment.parseAttributes(a);var e=new module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg(b,d.content,d.h,d.w,d.id);b.rendered&&(e.initSvg(!0),e.render());if(!isNaN(d.x)&&!isNaN(d.y))if(b.RTL){var f=c||b.getWidth();e.moveBy(f-d.x,d.y)}else e.moveBy(d.x,d.y)}finally{(0,module$exports$Blockly$Events$utils.enable)()}module$exports$Blockly$WorkspaceComment.WorkspaceComment.fireCreateEvent(e); -return e};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.toXmlWithXY=function(a){var b;this.workspace.RTL&&(b=this.workspace.getWidth());a=this.toXml(a);var c=this.getRelativeToSurfaceXY();a.setAttribute("x",Math.round(this.workspace.RTL?b-c.x:c.x));a.setAttribute("y",Math.round(c.y));a.setAttribute("h",this.getHeight());a.setAttribute("w",this.getWidth());return a}; +module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.toXmlWithXY=function(a){var b;this.workspace.RTL&&(b=this.workspace.getWidth());a=this.toXml(a);var c=this.getRelativeToSurfaceXY();a.setAttribute("x",Math.round(this.workspace.RTL?b-c.x:c.x));a.setAttribute("y",Math.round(c.y));a.setAttribute("h",this.getHeight());a.setAttribute("w",this.getWidth());return a}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.toCopyData=function(){return{saveInfo:this.toXmlWithXY(),source:this.workspace,typeCounts:null}};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.getHeightWidth=function(){return{width:this.getWidth(),height:this.getHeight()}}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.render=function(){if(!this.rendered_){var a=this.getHeightWidth();this.createEditor_();this.svgGroup_.appendChild(this.foreignObject_);this.svgHandleTarget_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"blocklyCommentHandleTarget",x:0,y:0});this.svgGroup_.appendChild(this.svgHandleTarget_);this.svgRectTarget_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT, {"class":"blocklyCommentTarget",x:0,y:0,rx:module$contents$Blockly$WorkspaceCommentSvg_BORDER_RADIUS,ry:module$contents$Blockly$WorkspaceCommentSvg_BORDER_RADIUS});this.svgGroup_.appendChild(this.svgRectTarget_);this.addResizeDom_();this.isDeletable()&&this.addDeleteDom_();this.setSize_(a.width,a.height);this.textarea_.value=this.content_;this.rendered_=!0;this.resizeGroup_&&(0,module$exports$Blockly$browserEvents.conditionalBind)(this.resizeGroup_,"mousedown",this,this.resizeMouseDown_);this.isDeletable()&& @@ -1891,17 +1914,17 @@ module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setSize ") scale(-1 1)")):(this.resizeGroup_.setAttribute("transform","translate("+(a-module$contents$Blockly$WorkspaceCommentSvg_RESIZE_SIZE)+","+(b-module$contents$Blockly$WorkspaceCommentSvg_RESIZE_SIZE)+")"),this.deleteGroup_.setAttribute("transform","translate("+(a-module$contents$Blockly$WorkspaceCommentSvg_RESIZE_SIZE)+","+-module$contents$Blockly$WorkspaceCommentSvg_RESIZE_SIZE+")")));this.resizeComment_()}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.disposeInternal_=function(){this.svgHandleTarget_=this.svgRectTarget_=this.foreignObject_=this.textarea_=null;this.disposed_=!0}; module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.setFocus=function(){var a=this;this.focused_=!0;setTimeout(function(){a.disposed_||(a.textarea_.focus(),a.addFocus(),(0,module$exports$Blockly$utils$dom.addClass)(a.svgRectTarget_,"blocklyCommentTargetFocused"),(0,module$exports$Blockly$utils$dom.addClass)(a.svgHandleTarget_,"blocklyCommentHandleTargetFocused"))},0)}; -module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.blurFocus=function(){var a=this;this.focused_=!1;setTimeout(function(){a.disposed_||(a.textarea_.blur(),a.removeFocus(),(0,module$exports$Blockly$utils$dom.removeClass)(a.svgRectTarget_,"blocklyCommentTargetFocused"),(0,module$exports$Blockly$utils$dom.removeClass)(a.svgHandleTarget_,"blocklyCommentHandleTargetFocused"))},0)};(0,module$exports$Blockly$Css.register)("\n .blocklyCommentForeignObject {\n position: relative;\n z-index: 0;\n }\n\n .blocklyCommentRect {\n fill: #E7DE8E;\n stroke: #bcA903;\n stroke-width: 1px;\n }\n\n .blocklyCommentTarget {\n fill: transparent;\n stroke: #bcA903;\n }\n\n .blocklyCommentTargetFocused {\n fill: none;\n }\n\n .blocklyCommentHandleTarget {\n fill: none;\n }\n\n .blocklyCommentHandleTargetFocused {\n fill: transparent;\n }\n\n .blocklyFocused>.blocklyCommentRect {\n fill: #B9B272;\n stroke: #B9B272;\n }\n\n .blocklySelected>.blocklyCommentTarget {\n stroke: #fc3;\n stroke-width: 3px;\n }\n\n .blocklyCommentDeleteIcon {\n cursor: pointer;\n fill: #000;\n display: none;\n }\n\n .blocklySelected > .blocklyCommentDeleteIcon {\n display: block;\n }\n\n .blocklyDeleteIconShape {\n fill: #000;\n stroke: #000;\n stroke-width: 1px;\n }\n\n .blocklyDeleteIconShape.blocklyDeleteIconHighlighted {\n stroke: #fc3;\n }\n");var module$exports$Blockly$Trashcan={Trashcan:function(a){module$exports$Blockly$Trashcan.Trashcan.superClass_.constructor.call(this);this.workspace_=a;this.id="trashcan";this.contents_=[];this.flyout=null;0>=this.workspace_.options.maxTrashcanContents||(a=new module$exports$Blockly$Options.Options({scrollbars:!0,parentWorkspace:this.workspace_,rtl:this.workspace_.RTL,oneBasedIndex:this.workspace_.options.oneBasedIndex,renderer:this.workspace_.options.renderer,rendererOverrides:this.workspace_.options.rendererOverrides, -move:{scrollbars:!0}}),this.workspace_.horizontalLayout?(a.toolboxPosition=this.workspace_.toolboxPosition===module$exports$Blockly$utils$toolbox.Position.TOP?module$exports$Blockly$utils$toolbox.Position.BOTTOM:module$exports$Blockly$utils$toolbox.Position.TOP,this.flyout=new ((0,module$exports$Blockly$registry.getClassFromOptions)(module$exports$Blockly$registry.Type.FLYOUTS_HORIZONTAL_TOOLBOX,this.workspace_.options,!0))(a)):(a.toolboxPosition=this.workspace_.toolboxPosition===module$exports$Blockly$utils$toolbox.Position.RIGHT? -module$exports$Blockly$utils$toolbox.Position.LEFT:module$exports$Blockly$utils$toolbox.Position.RIGHT,this.flyout=new ((0,module$exports$Blockly$registry.getClassFromOptions)(module$exports$Blockly$registry.Type.FLYOUTS_VERTICAL_TOOLBOX,this.workspace_.options,!0))(a)),this.workspace_.addChangeListener(this.onDelete_.bind(this)))}};(0,$.module$exports$Blockly$utils$object.inherits)(module$exports$Blockly$Trashcan.Trashcan,module$exports$Blockly$DeleteArea.DeleteArea); -var module$contents$Blockly$Trashcan_WIDTH=47,module$contents$Blockly$Trashcan_BODY_HEIGHT=44,module$contents$Blockly$Trashcan_LID_HEIGHT=16,module$contents$Blockly$Trashcan_MARGIN_VERTICAL=20,module$contents$Blockly$Trashcan_MARGIN_HORIZONTAL=20,module$contents$Blockly$Trashcan_MARGIN_HOTSPOT=10,module$contents$Blockly$Trashcan_SPRITE_LEFT=0,module$contents$Blockly$Trashcan_SPRITE_TOP=32,module$contents$Blockly$Trashcan_HAS_BLOCKS_LID_ANGLE=.1,module$contents$Blockly$Trashcan_ANIMATION_LENGTH=80, -module$contents$Blockly$Trashcan_ANIMATION_FRAMES=4,module$contents$Blockly$Trashcan_OPACITY_MIN=.4,module$contents$Blockly$Trashcan_OPACITY_MAX=.8,module$contents$Blockly$Trashcan_MAX_LID_ANGLE=45;module$exports$Blockly$Trashcan.Trashcan.prototype.isLidOpen=!1;module$exports$Blockly$Trashcan.Trashcan.prototype.minOpenness_=0;module$exports$Blockly$Trashcan.Trashcan.prototype.svgGroup_=null;module$exports$Blockly$Trashcan.Trashcan.prototype.svgLid_=null; -module$exports$Blockly$Trashcan.Trashcan.prototype.lidTask_=0;module$exports$Blockly$Trashcan.Trashcan.prototype.lidOpen_=0;module$exports$Blockly$Trashcan.Trashcan.prototype.left_=0;module$exports$Blockly$Trashcan.Trashcan.prototype.top_=0;module$exports$Blockly$Trashcan.Trashcan.prototype.initialized_=!1; +module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.prototype.blurFocus=function(){var a=this;this.focused_=!1;setTimeout(function(){a.disposed_||(a.textarea_.blur(),a.removeFocus(),(0,module$exports$Blockly$utils$dom.removeClass)(a.svgRectTarget_,"blocklyCommentTargetFocused"),(0,module$exports$Blockly$utils$dom.removeClass)(a.svgHandleTarget_,"blocklyCommentHandleTargetFocused"))},0)}; +module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.fromXmlRendered=function(a,b,c){(0,module$exports$Blockly$Events$utils.disable)();try{var d=module$exports$Blockly$WorkspaceComment.WorkspaceComment.parseAttributes(a);var e=new module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg(b,d.content,d.h,d.w,d.id);b.rendered&&(e.initSvg(!0),e.render());if(!isNaN(d.x)&&!isNaN(d.y))if(b.RTL){var f=c||b.getWidth();e.moveBy(f-d.x,d.y)}else e.moveBy(d.x,d.y)}finally{(0,module$exports$Blockly$Events$utils.enable)()}module$exports$Blockly$WorkspaceComment.WorkspaceComment.fireCreateEvent(e); +return e};module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.DEFAULT_SIZE=100;module$exports$Blockly$WorkspaceCommentSvg.WorkspaceCommentSvg.TOP_OFFSET=10;(0,module$exports$Blockly$Css.register)("\n.blocklyCommentForeignObject {\n position: relative;\n z-index: 0;\n}\n\n.blocklyCommentRect {\n fill: #E7DE8E;\n stroke: #bcA903;\n stroke-width: 1px;\n}\n\n.blocklyCommentTarget {\n fill: transparent;\n stroke: #bcA903;\n}\n\n.blocklyCommentTargetFocused {\n fill: none;\n}\n\n.blocklyCommentHandleTarget {\n fill: none;\n}\n\n.blocklyCommentHandleTargetFocused {\n fill: transparent;\n}\n\n.blocklyFocused>.blocklyCommentRect {\n fill: #B9B272;\n stroke: #B9B272;\n}\n\n.blocklySelected>.blocklyCommentTarget {\n stroke: #fc3;\n stroke-width: 3px;\n}\n\n.blocklyCommentDeleteIcon {\n cursor: pointer;\n fill: #000;\n display: none;\n}\n\n.blocklySelected > .blocklyCommentDeleteIcon {\n display: block;\n}\n\n.blocklyDeleteIconShape {\n fill: #000;\n stroke: #000;\n stroke-width: 1px;\n}\n\n.blocklyDeleteIconShape.blocklyDeleteIconHighlighted {\n stroke: #fc3;\n}\n");var module$exports$Blockly$Trashcan={Trashcan:function(a){module$exports$Blockly$DeleteArea.DeleteArea.call(this);this.workspace_=a;this.id="trashcan";this.contents_=[];this.flyout=null;0>=this.workspace_.options.maxTrashcanContents||(this.isLidOpen=!1,this.minOpenness_=0,this.svgLid_=this.svgGroup_=null,this.top_=this.left_=this.lidOpen_=this.lidTask_=0,this.initialized_=!1,a=new module$exports$Blockly$Options.Options({scrollbars:!0,parentWorkspace:this.workspace_,rtl:this.workspace_.RTL,oneBasedIndex:this.workspace_.options.oneBasedIndex, +renderer:this.workspace_.options.renderer,rendererOverrides:this.workspace_.options.rendererOverrides,move:{scrollbars:!0}}),this.workspace_.horizontalLayout?(a.toolboxPosition=this.workspace_.toolboxPosition===module$exports$Blockly$utils$toolbox.Position.TOP?module$exports$Blockly$utils$toolbox.Position.BOTTOM:module$exports$Blockly$utils$toolbox.Position.TOP,this.flyout=new ((0,module$exports$Blockly$registry.getClassFromOptions)(module$exports$Blockly$registry.Type.FLYOUTS_HORIZONTAL_TOOLBOX, +this.workspace_.options,!0))(a)):(a.toolboxPosition=this.workspace_.toolboxPosition===module$exports$Blockly$utils$toolbox.Position.RIGHT?module$exports$Blockly$utils$toolbox.Position.LEFT:module$exports$Blockly$utils$toolbox.Position.RIGHT,this.flyout=new ((0,module$exports$Blockly$registry.getClassFromOptions)(module$exports$Blockly$registry.Type.FLYOUTS_VERTICAL_TOOLBOX,this.workspace_.options,!0))(a)),this.workspace_.addChangeListener(this.onDelete_.bind(this)))}}; +$.$jscomp.inherits(module$exports$Blockly$Trashcan.Trashcan,module$exports$Blockly$DeleteArea.DeleteArea); module$exports$Blockly$Trashcan.Trashcan.prototype.createDom=function(){this.svgGroup_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.G,{"class":"blocklyTrash"},null);var a=String(Math.random()).substring(2);var b=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.CLIPPATH,{id:"blocklyTrashBodyClipPath"+a},this.svgGroup_);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT, -{width:module$contents$Blockly$Trashcan_WIDTH,height:module$contents$Blockly$Trashcan_BODY_HEIGHT,y:module$contents$Blockly$Trashcan_LID_HEIGHT},b);var c=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.IMAGE,{width:$.module$exports$Blockly$internalConstants.SPRITE.width,x:-module$contents$Blockly$Trashcan_SPRITE_LEFT,height:$.module$exports$Blockly$internalConstants.SPRITE.height,y:-module$contents$Blockly$Trashcan_SPRITE_TOP,"clip-path":"url(#blocklyTrashBodyClipPath"+ -a+")"},this.svgGroup_);c.setAttributeNS(module$exports$Blockly$utils$dom.XLINK_NS,"xlink:href",this.workspace_.options.pathToMedia+$.module$exports$Blockly$internalConstants.SPRITE.url);b=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.CLIPPATH,{id:"blocklyTrashLidClipPath"+a},this.svgGroup_);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{width:module$contents$Blockly$Trashcan_WIDTH,height:module$contents$Blockly$Trashcan_LID_HEIGHT}, -b);this.svgLid_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.IMAGE,{width:$.module$exports$Blockly$internalConstants.SPRITE.width,x:-module$contents$Blockly$Trashcan_SPRITE_LEFT,height:$.module$exports$Blockly$internalConstants.SPRITE.height,y:-module$contents$Blockly$Trashcan_SPRITE_TOP,"clip-path":"url(#blocklyTrashLidClipPath"+a+")"},this.svgGroup_);this.svgLid_.setAttributeNS(module$exports$Blockly$utils$dom.XLINK_NS,"xlink:href",this.workspace_.options.pathToMedia+ -$.module$exports$Blockly$internalConstants.SPRITE.url);(0,module$exports$Blockly$browserEvents.bind)(this.svgGroup_,"mousedown",this,this.blockMouseDownWhenOpenable_);(0,module$exports$Blockly$browserEvents.bind)(this.svgGroup_,"mouseup",this,this.click);(0,module$exports$Blockly$browserEvents.bind)(c,"mouseover",this,this.mouseOver_);(0,module$exports$Blockly$browserEvents.bind)(c,"mouseout",this,this.mouseOut_);this.animateLid_();return this.svgGroup_}; +{width:module$contents$Blockly$Trashcan_WIDTH,height:module$contents$Blockly$Trashcan_BODY_HEIGHT,y:module$contents$Blockly$Trashcan_LID_HEIGHT},b);var c=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.IMAGE,{width:module$exports$Blockly$sprite.SPRITE.width,x:-module$contents$Blockly$Trashcan_SPRITE_LEFT,height:module$exports$Blockly$sprite.SPRITE.height,y:-module$contents$Blockly$Trashcan_SPRITE_TOP,"clip-path":"url(#blocklyTrashBodyClipPath"+a+")"},this.svgGroup_); +c.setAttributeNS(module$exports$Blockly$utils$dom.XLINK_NS,"xlink:href",this.workspace_.options.pathToMedia+module$exports$Blockly$sprite.SPRITE.url);b=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.CLIPPATH,{id:"blocklyTrashLidClipPath"+a},this.svgGroup_);(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{width:module$contents$Blockly$Trashcan_WIDTH,height:module$contents$Blockly$Trashcan_LID_HEIGHT},b);this.svgLid_= +(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.IMAGE,{width:module$exports$Blockly$sprite.SPRITE.width,x:-module$contents$Blockly$Trashcan_SPRITE_LEFT,height:module$exports$Blockly$sprite.SPRITE.height,y:-module$contents$Blockly$Trashcan_SPRITE_TOP,"clip-path":"url(#blocklyTrashLidClipPath"+a+")"},this.svgGroup_);this.svgLid_.setAttributeNS(module$exports$Blockly$utils$dom.XLINK_NS,"xlink:href",this.workspace_.options.pathToMedia+module$exports$Blockly$sprite.SPRITE.url); +(0,module$exports$Blockly$browserEvents.bind)(this.svgGroup_,"mousedown",this,this.blockMouseDownWhenOpenable_);(0,module$exports$Blockly$browserEvents.bind)(this.svgGroup_,"mouseup",this,this.click);(0,module$exports$Blockly$browserEvents.bind)(c,"mouseover",this,this.mouseOver_);(0,module$exports$Blockly$browserEvents.bind)(c,"mouseout",this,this.mouseOut_);this.animateLid_();return this.svgGroup_}; module$exports$Blockly$Trashcan.Trashcan.prototype.init=function(){0=this.workspace_.options.maxTrashcanContents||a.type!==module$exports$Blockly$Events$utils.DELETE||a.wasShadow)&&(a=this.cleanBlockJson_(a.oldJson),-1===this.contents_.indexOf(a))){for(this.contents_.unshift(a);this.contents_.length>this.workspace_.options.maxTrashcanContents;)this.contents_.pop();this.setMinOpenness_(module$contents$Blockly$Trashcan_HAS_BLOCKS_LID_ANGLE)}}; -module$exports$Blockly$Trashcan.Trashcan.prototype.cleanBlockJson_=function(a){function b(c){if(c){delete c.id;delete c.x;delete c.y;delete c.enabled;if(c.icons&&c.icons.comment){var d=c.icons.comment;delete d.height;delete d.width;delete d.pinned}d=c.inputs;for(var e in d){var f=d[e];b(f.block);b(f.shadow)}c.next&&(c=c.next,b(c.block),b(c.shadow))}}a=JSON.parse(JSON.stringify(a));b(a);a.kind="BLOCK";return JSON.stringify(a)};var module$exports$Blockly$FlyoutButton={FlyoutButton:function(a,b,c,d){this.workspace_=a;this.targetWorkspace_=b;this.text_=c.text;this.position_=new module$exports$Blockly$utils$Coordinate.Coordinate(0,0);this.isLabel_=d;this.callbackKey_=c.callbackKey||c.callbackkey;this.cssClass_=c["web-class"]||null;this.onMouseUpWrapper_=null;this.info=c}};module$exports$Blockly$FlyoutButton.FlyoutButton.MARGIN_X=5;module$exports$Blockly$FlyoutButton.FlyoutButton.MARGIN_Y=2; -module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.width=0;module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.height=0; +module$exports$Blockly$Trashcan.Trashcan.prototype.onDelete_=function(a){if(!(0>=this.workspace_.options.maxTrashcanContents||a.type!==module$exports$Blockly$Events$utils.DELETE||a.type!==module$exports$Blockly$Events$utils.DELETE||a.wasShadow)&&(a=this.cleanBlockJson_(a.oldJson),-1===this.contents_.indexOf(a))){for(this.contents_.unshift(a);this.contents_.length>this.workspace_.options.maxTrashcanContents;)this.contents_.pop();this.setMinOpenness_(module$contents$Blockly$Trashcan_HAS_BLOCKS_LID_ANGLE)}}; +module$exports$Blockly$Trashcan.Trashcan.prototype.cleanBlockJson_=function(a){function b(c){if(c){delete c.id;delete c.x;delete c.y;delete c.enabled;if(c.icons&&c.icons.comment){var d=c.icons.comment;delete d.height;delete d.width;delete d.pinned}d=c.inputs;for(var e in d){var f=d[e];b(f.block);b(f.shadow)}c.next&&(c=c.next,b(c.block),b(c.shadow))}}a=JSON.parse(JSON.stringify(a));b(a);a.kind="BLOCK";return JSON.stringify(a)}; +var module$contents$Blockly$Trashcan_WIDTH=47,module$contents$Blockly$Trashcan_BODY_HEIGHT=44,module$contents$Blockly$Trashcan_LID_HEIGHT=16,module$contents$Blockly$Trashcan_MARGIN_VERTICAL=20,module$contents$Blockly$Trashcan_MARGIN_HORIZONTAL=20,module$contents$Blockly$Trashcan_MARGIN_HOTSPOT=10,module$contents$Blockly$Trashcan_SPRITE_LEFT=0,module$contents$Blockly$Trashcan_SPRITE_TOP=32,module$contents$Blockly$Trashcan_HAS_BLOCKS_LID_ANGLE=.1,module$contents$Blockly$Trashcan_ANIMATION_LENGTH=80, +module$contents$Blockly$Trashcan_ANIMATION_FRAMES=4,module$contents$Blockly$Trashcan_OPACITY_MIN=.4,module$contents$Blockly$Trashcan_OPACITY_MAX=.8,module$contents$Blockly$Trashcan_MAX_LID_ANGLE=45;var module$exports$Blockly$FlyoutButton={FlyoutButton:function(a,b,c,d){this.workspace_=a;this.targetWorkspace_=b;this.text_=c.text;this.position_=new module$exports$Blockly$utils$Coordinate.Coordinate(0,0);this.isLabel_=d;this.callbackKey_=c.callbackKey||c.callbackkey;this.cssClass_=c["web-class"]||null;this.onMouseUpWrapper_=null;this.info=c;this.height=this.width=0;this.svgText_=this.svgGroup_=null}}; module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.createDom=function(){var a=this.isLabel_?"blocklyFlyoutLabel":"blocklyFlyoutButton";this.cssClass_&&(a+=" "+this.cssClass_);this.svgGroup_=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.G,{"class":a},this.workspace_.getCanvas());var b;this.isLabel_||(b=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":"blocklyFlyoutButtonShadow",rx:4,ry:4,x:1, y:1},this.svgGroup_));a=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.RECT,{"class":this.isLabel_?"blocklyFlyoutLabelBackground":"blocklyFlyoutButtonBackground",rx:4,ry:4},this.svgGroup_);var c=(0,module$exports$Blockly$utils$dom.createSvgElement)(module$exports$Blockly$utils$Svg.Svg.TEXT,{"class":this.isLabel_?"blocklyFlyoutLabelText":"blocklyText",x:0,y:0,"text-anchor":"middle"},this.svgGroup_),d=(0,module$exports$Blockly$utils$parsing.replaceMessageReferences)(this.text_); this.workspace_.RTL&&(d+="\u200f");c.textContent=d;this.isLabel_&&(this.svgText_=c,this.workspace_.getThemeManager().subscribe(this.svgText_,"flyoutForegroundColour","fill"));var e=(0,module$exports$Blockly$utils$style.getComputedStyle)(c,"fontSize"),f=(0,module$exports$Blockly$utils$style.getComputedStyle)(c,"fontWeight"),g=(0,module$exports$Blockly$utils$style.getComputedStyle)(c,"fontFamily");this.width=(0,module$exports$Blockly$utils$dom.getFastTextWidthWithSizeString)(c,e,f,g);d=(0,module$exports$Blockly$utils$dom.measureFontMetrics)(d, -e,f,g);this.height=d.height;this.isLabel_||(this.width+=2*module$exports$Blockly$FlyoutButton.FlyoutButton.MARGIN_X,this.height+=2*module$exports$Blockly$FlyoutButton.FlyoutButton.MARGIN_Y,b.setAttribute("width",this.width),b.setAttribute("height",this.height));a.setAttribute("width",this.width);a.setAttribute("height",this.height);c.setAttribute("x",this.width/2);c.setAttribute("y",this.height/2-d.height/2+d.baseline);this.updateTransform_();this.onMouseUpWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(this.svgGroup_, +e,f,g);this.height=d.height;this.isLabel_||(this.width+=2*module$exports$Blockly$FlyoutButton.FlyoutButton.TEXT_MARGIN_X,this.height+=2*module$exports$Blockly$FlyoutButton.FlyoutButton.TEXT_MARGIN_Y,b.setAttribute("width",this.width),b.setAttribute("height",this.height));a.setAttribute("width",this.width);a.setAttribute("height",this.height);c.setAttribute("x",this.width/2);c.setAttribute("y",this.height/2-d.height/2+d.baseline);this.updateTransform_();this.onMouseUpWrapper_=(0,module$exports$Blockly$browserEvents.conditionalBind)(this.svgGroup_, "mouseup",this,this.onMouseUp_);return this.svgGroup_};module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.show=function(){this.updateTransform_();this.svgGroup_.setAttribute("display","block")};module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.updateTransform_=function(){this.svgGroup_.setAttribute("transform","translate("+this.position_.x+","+this.position_.y+")")}; module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.moveTo=function(a,b){this.position_.x=a;this.position_.y=b;this.updateTransform_()};module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.isLabel=function(){return this.isLabel_};module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.getPosition=function(){return this.position_};module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.getButtonText=function(){return this.text_}; module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.getTargetWorkspace=function(){return this.targetWorkspace_};module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.dispose=function(){this.onMouseUpWrapper_&&(0,module$exports$Blockly$browserEvents.unbind)(this.onMouseUpWrapper_);this.svgGroup_&&(0,module$exports$Blockly$utils$dom.removeNode)(this.svgGroup_);this.svgText_&&this.workspace_.getThemeManager().unsubscribe(this.svgText_)}; -module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.onMouseUp_=function(a){(a=this.targetWorkspace_.getGesture(a))&&a.cancel();this.isLabel_&&this.callbackKey_?console.warn("Labels should not have callbacks. Label text: "+this.text_):this.isLabel_||this.callbackKey_&&this.targetWorkspace_.getButtonCallback(this.callbackKey_)?this.isLabel_||this.targetWorkspace_.getButtonCallback(this.callbackKey_)(this):console.warn("Buttons should have callbacks. Button text: "+this.text_)};(0,module$exports$Blockly$Css.register)("\n .blocklyFlyoutButton {\n fill: #888;\n cursor: default;\n }\n\n .blocklyFlyoutButtonShadow {\n fill: #666;\n }\n\n .blocklyFlyoutButton:hover {\n fill: #aaa;\n }\n\n .blocklyFlyoutLabel {\n cursor: default;\n }\n\n .blocklyFlyoutLabelBackground {\n opacity: 0;\n }\n");var module$exports$Blockly$BlocklyOptions={BlocklyOptions:function(){}};var module$exports$Blockly$VariablesDynamic={CATEGORY_NAME:"VARIABLE_DYNAMIC",onCreateVariableButtonClick_String:function(a){(0,$.module$exports$Blockly$Variables.createVariableButtonHandler)(a.getTargetWorkspace(),void 0,"String")},onCreateVariableButtonClick_Number:function(a){(0,$.module$exports$Blockly$Variables.createVariableButtonHandler)(a.getTargetWorkspace(),void 0,"Number")},onCreateVariableButtonClick_Colour:function(a){(0,$.module$exports$Blockly$Variables.createVariableButtonHandler)(a.getTargetWorkspace(), +module$exports$Blockly$FlyoutButton.FlyoutButton.prototype.onMouseUp_=function(a){(a=this.targetWorkspace_.getGesture(a))&&a.cancel();this.isLabel_&&this.callbackKey_?console.warn("Labels should not have callbacks. Label text: "+this.text_):this.isLabel_||this.callbackKey_&&this.targetWorkspace_.getButtonCallback(this.callbackKey_)?this.isLabel_||this.targetWorkspace_.getButtonCallback(this.callbackKey_)(this):console.warn("Buttons should have callbacks. Button text: "+this.text_)}; +module$exports$Blockly$FlyoutButton.FlyoutButton.TEXT_MARGIN_X=5;module$exports$Blockly$FlyoutButton.FlyoutButton.TEXT_MARGIN_Y=2;(0,module$exports$Blockly$Css.register)("\n.blocklyFlyoutButton {\n fill: #888;\n cursor: default;\n}\n\n.blocklyFlyoutButtonShadow {\n fill: #666;\n}\n\n.blocklyFlyoutButton:hover {\n fill: #aaa;\n}\n\n.blocklyFlyoutLabel {\n cursor: default;\n}\n\n.blocklyFlyoutLabelBackground {\n opacity: 0;\n}\n");var module$exports$Blockly$BlocklyOptions={BlocklyOptions:function(){}};var module$exports$Blockly$VariablesDynamic={CATEGORY_NAME:"VARIABLE_DYNAMIC",onCreateVariableButtonClick_String:function(a){(0,$.module$exports$Blockly$Variables.createVariableButtonHandler)(a.getTargetWorkspace(),void 0,"String")},onCreateVariableButtonClick_Number:function(a){(0,$.module$exports$Blockly$Variables.createVariableButtonHandler)(a.getTargetWorkspace(),void 0,"Number")},onCreateVariableButtonClick_Colour:function(a){(0,$.module$exports$Blockly$Variables.createVariableButtonHandler)(a.getTargetWorkspace(), void 0,"Colour")},flyoutCategory:function(a){var b=[],c=document.createElement("button");c.setAttribute("text",$.module$exports$Blockly$Msg.Msg.NEW_STRING_VARIABLE);c.setAttribute("callbackKey","CREATE_VARIABLE_STRING");b.push(c);c=document.createElement("button");c.setAttribute("text",$.module$exports$Blockly$Msg.Msg.NEW_NUMBER_VARIABLE);c.setAttribute("callbackKey","CREATE_VARIABLE_NUMBER");b.push(c);c=document.createElement("button");c.setAttribute("text",$.module$exports$Blockly$Msg.Msg.NEW_COLOUR_VARIABLE); c.setAttribute("callbackKey","CREATE_VARIABLE_COLOUR");b.push(c);a.registerButtonCallback("CREATE_VARIABLE_STRING",module$exports$Blockly$VariablesDynamic.onCreateVariableButtonClick_String);a.registerButtonCallback("CREATE_VARIABLE_NUMBER",module$exports$Blockly$VariablesDynamic.onCreateVariableButtonClick_Number);a.registerButtonCallback("CREATE_VARIABLE_COLOUR",module$exports$Blockly$VariablesDynamic.onCreateVariableButtonClick_Colour);a=(0,module$exports$Blockly$VariablesDynamic.flyoutCategoryBlocks)(a); -return b=b.concat(a)},flyoutCategoryBlocks:function(a){a=a.getAllVariables();var b=[];if(0a||Math.abs(this.workspaceHeight_-d)>a)this.workspaceWidth_=c,this.workspaceHeight_=d,this.bubble_.setBubbleSize(c+ -a,d+a),this.svgDialog_.setAttribute("width",this.workspaceWidth_),this.svgDialog_.setAttribute("height",this.workspaceHeight_),this.workspace_.setCachedParentSvgSize(this.workspaceWidth_,this.workspaceHeight_);this.block_.RTL&&(a="translate("+this.workspaceWidth_+",0)",this.workspace_.getCanvas().setAttribute("transform",a));this.workspace_.resize()};$.module$exports$Blockly$Mutator.Mutator.prototype.onBubbleMove_=function(){this.workspace_&&this.workspace_.recordDragTargets()}; -$.module$exports$Blockly$Mutator.Mutator.prototype.setVisible=function(a){if(a!==this.isVisible())if((0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.BUBBLE_OPEN))(this.block_,a,"mutator")),a){this.bubble_=new module$exports$Blockly$Bubble.Bubble(this.block_.workspace,this.createEditor_(),this.block_.pathObject.svgPath,this.iconXY_,null,null);this.bubble_.setSvgId(this.block_.id);this.bubble_.registerMoveEvent(this.onBubbleMove_.bind(this)); -var b=this.workspace_.options.languageTree;a=this.workspace_.getFlyout();b&&(a.init(this.workspace_),a.show(b));this.rootBlock_=this.block_.decompose(this.workspace_);b=this.rootBlock_.getDescendants(!1);for(var c=0,d=void 0;d=b[c];c++)d.render();this.rootBlock_.setMovable(!1);this.rootBlock_.setDeletable(!1);a?(b=2*a.CORNER_RADIUS,a=this.rootBlock_.RTL?a.getWidth()+b:b):a=b=16;this.block_.RTL&&(a=-a);this.rootBlock_.moveBy(a,b);if(this.block_.saveConnections){var e=this,f=this.block_;f.saveConnections(this.rootBlock_); -this.sourceListener_=function(){f.saveConnections(e.rootBlock_)};this.block_.workspace.addChangeListener(this.sourceListener_)}this.resizeBubble_();this.workspace_.addChangeListener(this.workspaceChanged_.bind(this));this.updateWorkspace_();this.applyColour()}else this.svgDialog_=null,this.workspace_.dispose(),this.rootBlock_=this.workspace_=null,this.bubble_.dispose(),this.bubble_=null,this.workspaceHeight_=this.workspaceWidth_=0,this.sourceListener_&&(this.block_.workspace.removeChangeListener(this.sourceListener_), -this.sourceListener_=null)};$.module$exports$Blockly$Mutator.Mutator.prototype.workspaceChanged_=function(a){a.isUiEvent||a.type===module$exports$Blockly$Events$utils.CHANGE&&"disabled"===a.element||a.type===module$exports$Blockly$Events$utils.CREATE||this.updateWorkspace_()}; -$.module$exports$Blockly$Mutator.Mutator.prototype.updateWorkspace_=function(){if(!this.workspace_.isDragging())for(var a=this.workspace_.getTopBlocks(!1),b=0,c=void 0;c=a[b];b++){var d=c.getRelativeToSurfaceXY();20>d.y&&c.moveBy(0,20-d.y);if(c.RTL){var e=-20,f=this.workspace_.getFlyout();f&&(e-=f.getWidth());d.x>e&&c.moveBy(e-d.x,0)}else 20>d.x&&c.moveBy(20-d.x,0)}if(this.rootBlock_.workspace===this.workspace_){(0,module$exports$Blockly$Events$utils.setGroup)(!0);var g=this.block_;a=module$exports$Blockly$Events$BlockChange.BlockChange.getExtraBlockState_(g); -b=g.rendered;g.rendered=!1;g.compose(this.rootBlock_);g.rendered=b;g.initSvg();g.rendered&&g.render();b=module$exports$Blockly$Events$BlockChange.BlockChange.getExtraBlockState_(g);if(a!==b){(0,module$exports$Blockly$Events$utils.fire)(new ((0,module$exports$Blockly$Events$utils.get)(module$exports$Blockly$Events$utils.CHANGE))(g,"mutation",null,a,b));var h=(0,module$exports$Blockly$Events$utils.getGroup)();setTimeout(function(){(0,module$exports$Blockly$Events$utils.setGroup)(h);g.bumpNeighbours(); -(0,module$exports$Blockly$Events$utils.setGroup)(!1)},$.module$exports$Blockly$internalConstants.BUMP_DELAY)}this.workspace_.isDragging()||this.resizeBubble_();(0,module$exports$Blockly$Events$utils.setGroup)(!1)}};$.module$exports$Blockly$Mutator.Mutator.prototype.dispose=function(){this.block_.mutator=null;module$exports$Blockly$Icon.Icon.prototype.dispose.call(this)}; -$.module$exports$Blockly$Mutator.Mutator.prototype.updateBlockStyle=function(){var a=this.workspace_;if(a&&a.getAllBlocks(!1)){for(var b=a.getAllBlocks(!1),c=0,d;d=b[c];c++)d.setStyle(d.getStyleName());if(a=a.getFlyout())for(a=a.workspace_.getAllBlocks(!1),b=0;c=a[b];b++)c.setStyle(c.getStyleName())}}; -$.module$exports$Blockly$Mutator.Mutator.reconnect=function(a,b,c){if(!a||!a.getSourceBlock().workspace)return!1;c=b.getInput(c).connection;var d=a.targetBlock();return d&&d!==b||c.targetConnection===a?!1:(c.isConnected()&&c.disconnect(),c.connect(a),!0)};$.module$exports$Blockly$Mutator.Mutator.findParentWs=function(a){var b=null;if(a&&a.options){var c=a.options.parentWorkspace;a.isFlyout?c&&c.options&&(b=c.options.parentWorkspace):c&&(b=c)}return b};$.Blockly={VERSION:"7.20211209.4"};$.Blockly.ALIGN_LEFT=$.module$exports$Blockly$Input.Align.LEFT;$.Blockly.ALIGN_CENTRE=$.module$exports$Blockly$Input.Align.CENTRE;$.Blockly.ALIGN_RIGHT=$.module$exports$Blockly$Input.Align.RIGHT;$.Blockly.INPUT_VALUE=$.module$exports$Blockly$ConnectionType.ConnectionType.INPUT_VALUE;$.Blockly.OUTPUT_VALUE=$.module$exports$Blockly$ConnectionType.ConnectionType.OUTPUT_VALUE;$.Blockly.NEXT_STATEMENT=$.module$exports$Blockly$ConnectionType.ConnectionType.NEXT_STATEMENT; +"mutation",null,f,g)),(0,module$exports$Blockly$Events$utils.setRecordUndo)(b))}};$.module$exports$Blockly$Procedures.getDefinition=function(a,b){b=b.getAllBlocks(!1);for(var c=0;c","GT"],["\u200f\u2265","GTE"]]},{type:"input_value",name:"B"}],inputsInline:!0,output:"Boolean", -style:"logic_blocks",helpUrl:"%{BKY_LOGIC_COMPARE_HELPURL}",extensions:["logic_compare","logic_op_tooltip"]},{type:"logic_operation",message0:"%1 %2 %3",args0:[{type:"input_value",name:"A",check:"Boolean"},{type:"field_dropdown",name:"OP",options:[["%{BKY_LOGIC_OPERATION_AND}","AND"],["%{BKY_LOGIC_OPERATION_OR}","OR"]]},{type:"input_value",name:"B",check:"Boolean"}],inputsInline:!0,output:"Boolean",style:"logic_blocks",helpUrl:"%{BKY_LOGIC_OPERATION_HELPURL}",extensions:["logic_op_tooltip"]},{type:"logic_negate", -message0:"%{BKY_LOGIC_NEGATE_TITLE}",args0:[{type:"input_value",name:"BOOL",check:"Boolean"}],output:"Boolean",style:"logic_blocks",tooltip:"%{BKY_LOGIC_NEGATE_TOOLTIP}",helpUrl:"%{BKY_LOGIC_NEGATE_HELPURL}"},{type:"logic_null",message0:"%{BKY_LOGIC_NULL}",output:null,style:"logic_blocks",tooltip:"%{BKY_LOGIC_NULL_TOOLTIP}",helpUrl:"%{BKY_LOGIC_NULL_HELPURL}"},{type:"logic_ternary",message0:"%{BKY_LOGIC_TERNARY_CONDITION} %1",args0:[{type:"input_value",name:"IF",check:"Boolean"}],message1:"%{BKY_LOGIC_TERNARY_IF_TRUE} %1", -args1:[{type:"input_value",name:"THEN"}],message2:"%{BKY_LOGIC_TERNARY_IF_FALSE} %1",args2:[{type:"input_value",name:"ELSE"}],output:null,style:"logic_blocks",tooltip:"%{BKY_LOGIC_TERNARY_TOOLTIP}",helpUrl:"%{BKY_LOGIC_TERNARY_HELPURL}",extensions:["logic_ternary"]},{type:"controls_if_if",message0:"%{BKY_CONTROLS_IF_IF_TITLE_IF}",nextStatement:null,enableContextMenu:!1,style:"logic_blocks",tooltip:"%{BKY_CONTROLS_IF_IF_TOOLTIP}"},{type:"controls_if_elseif",message0:"%{BKY_CONTROLS_IF_ELSEIF_TITLE_ELSEIF}", -previousStatement:null,nextStatement:null,enableContextMenu:!1,style:"logic_blocks",tooltip:"%{BKY_CONTROLS_IF_ELSEIF_TOOLTIP}"},{type:"controls_if_else",message0:"%{BKY_CONTROLS_IF_ELSE_TITLE_ELSE}",previousStatement:null,enableContextMenu:!1,style:"logic_blocks",tooltip:"%{BKY_CONTROLS_IF_ELSE_TOOLTIP}"}]); -var module$contents$Blockly$blocks$logic_TOOLTIPS_BY_OP={EQ:"%{BKY_LOGIC_COMPARE_TOOLTIP_EQ}",NEQ:"%{BKY_LOGIC_COMPARE_TOOLTIP_NEQ}",LT:"%{BKY_LOGIC_COMPARE_TOOLTIP_LT}",LTE:"%{BKY_LOGIC_COMPARE_TOOLTIP_LTE}",GT:"%{BKY_LOGIC_COMPARE_TOOLTIP_GT}",GTE:"%{BKY_LOGIC_COMPARE_TOOLTIP_GTE}",AND:"%{BKY_LOGIC_OPERATION_TOOLTIP_AND}",OR:"%{BKY_LOGIC_OPERATION_TOOLTIP_OR}"}; -(0,$.module$exports$Blockly$Extensions.register)("logic_op_tooltip",(0,$.module$exports$Blockly$Extensions.buildTooltipForDropdown)("OP",module$contents$Blockly$blocks$logic_TOOLTIPS_BY_OP)); -var module$contents$Blockly$blocks$logic_CONTROLS_IF_MUTATOR_MIXIN={elseifCount_:0,elseCount_:0,mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var a=(0,$.module$exports$Blockly$utils$xml.createElement)("mutation");this.elseifCount_&&a.setAttribute("elseif",this.elseifCount_);this.elseCount_&&a.setAttribute("else",1);return a},domToMutation:function(a){this.elseifCount_=parseInt(a.getAttribute("elseif"),10)||0;this.elseCount_=parseInt(a.getAttribute("else"),10)||0;this.rebuildShape_()}, -saveExtraState:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var a=Object.create(null);this.elseifCount_&&(a.elseIfCount=this.elseifCount_);this.elseCount_&&(a.hasElse=!0);return a},loadExtraState:function(a){this.elseifCount_=a.elseIfCount||0;this.elseCount_=a.hasElse?1:0;this.updateShape_()},decompose:function(a){var b=a.newBlock("controls_if_if");b.initSvg();for(var c=b.nextConnection,d=1;d<=this.elseifCount_;d++){var e=a.newBlock("controls_if_elseif");e.initSvg();c.connect(e.previousConnection); -c=e.nextConnection}this.elseCount_&&(a=a.newBlock("controls_if_else"),a.initSvg(),c.connect(a.previousConnection));return b},compose:function(a){a=a.nextConnection.targetBlock();this.elseCount_=this.elseifCount_=0;for(var b=[null],c=[null],d=null;a&&!a.isInsertionMarker();){switch(a.type){case "controls_if_elseif":this.elseifCount_++;b.push(a.valueConnection_);c.push(a.statementConnection_);break;case "controls_if_else":this.elseCount_++;d=a.statementConnection_;break;default:throw TypeError("Unknown block type: "+ -a.type);}a=a.nextConnection&&a.nextConnection.targetBlock()}this.updateShape_();this.reconnectChildBlocks_(b,c,d)},saveConnections:function(a){a=a.nextConnection.targetBlock();for(var b=1;a;){switch(a.type){case "controls_if_elseif":var c=this.getInput("IF"+b),d=this.getInput("DO"+b);a.valueConnection_=c&&c.connection.targetConnection;a.statementConnection_=d&&d.connection.targetConnection;b++;break;case "controls_if_else":c=this.getInput("ELSE");a.statementConnection_=c&&c.connection.targetConnection; -break;default:throw TypeError("Unknown block type: "+a.type);}a=a.nextConnection&&a.nextConnection.targetBlock()}},rebuildShape_:function(){var a=[null],b=[null],c=null;this.getInput("ELSE")&&(c=this.getInput("ELSE").connection.targetConnection);for(var d=1;this.getInput("IF"+d);d++){var e=this.getInput("IF"+d),f=this.getInput("DO"+d);a.push(e.connection.targetConnection);b.push(f.connection.targetConnection)}this.updateShape_();this.reconnectChildBlocks_(a,b,c)},updateShape_:function(){this.getInput("ELSE")&& -this.removeInput("ELSE");for(var a=1;this.getInput("IF"+a);a++)this.removeInput("IF"+a),this.removeInput("DO"+a);for(a=1;a<=this.elseifCount_;a++)this.appendValueInput("IF"+a).setCheck("Boolean").appendField($.module$exports$Blockly$Msg.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+a).appendField($.module$exports$Blockly$Msg.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField($.module$exports$Blockly$Msg.Msg.CONTROLS_IF_MSG_ELSE)},reconnectChildBlocks_:function(a, -b,c){for(var d=1;d<=this.elseifCount_;d++)$.module$exports$Blockly$Mutator.Mutator.reconnect(a[d],this,"IF"+d),$.module$exports$Blockly$Mutator.Mutator.reconnect(b[d],this,"DO"+d);$.module$exports$Blockly$Mutator.Mutator.reconnect(c,this,"ELSE")}};(0,$.module$exports$Blockly$Extensions.registerMutator)("controls_if_mutator",module$contents$Blockly$blocks$logic_CONTROLS_IF_MUTATOR_MIXIN,null,["controls_if_elseif","controls_if_else"]); -var module$contents$Blockly$blocks$logic_CONTROLS_IF_TOOLTIP_EXTENSION=function(){this.setTooltip(function(){if(this.elseifCount_||this.elseCount_){if(!this.elseifCount_&&this.elseCount_)return $.module$exports$Blockly$Msg.Msg.CONTROLS_IF_TOOLTIP_2;if(this.elseifCount_&&!this.elseCount_)return $.module$exports$Blockly$Msg.Msg.CONTROLS_IF_TOOLTIP_3;if(this.elseifCount_&&this.elseCount_)return $.module$exports$Blockly$Msg.Msg.CONTROLS_IF_TOOLTIP_4}else return $.module$exports$Blockly$Msg.Msg.CONTROLS_IF_TOOLTIP_1; -return""}.bind(this))};(0,$.module$exports$Blockly$Extensions.register)("controls_if_tooltip",module$contents$Blockly$blocks$logic_CONTROLS_IF_TOOLTIP_EXTENSION); -var module$contents$Blockly$blocks$logic_LOGIC_COMPARE_ONCHANGE_MIXIN={onchange:function(a){this.prevBlocks_||(this.prevBlocks_=[null,null]);var b=this.getInputTargetBlock("A"),c=this.getInputTargetBlock("B");b&&c&&!this.workspace.connectionChecker.doTypeChecks(b.outputConnection,c.outputConnection)&&((0,$.module$exports$Blockly$Events.setGroup)(a.group),a=this.prevBlocks_[0],a!==b&&(b.unplug(),!a||a.isDisposed()||a.isShadow()||this.getInput("A").connection.connect(a.outputConnection)),b=this.prevBlocks_[1], -b!==c&&(c.unplug(),!b||b.isDisposed()||b.isShadow()||this.getInput("B").connection.connect(b.outputConnection)),this.bumpNeighbours(),(0,$.module$exports$Blockly$Events.setGroup)(!1));this.prevBlocks_[0]=this.getInputTargetBlock("A");this.prevBlocks_[1]=this.getInputTargetBlock("B")}},module$contents$Blockly$blocks$logic_LOGIC_COMPARE_EXTENSION=function(){this.mixin(module$contents$Blockly$blocks$logic_LOGIC_COMPARE_ONCHANGE_MIXIN)}; -(0,$.module$exports$Blockly$Extensions.register)("logic_compare",module$contents$Blockly$blocks$logic_LOGIC_COMPARE_EXTENSION); -var module$contents$Blockly$blocks$logic_LOGIC_TERNARY_ONCHANGE_MIXIN={prevParentConnection_:null,onchange:function(a){var b=this.getInputTargetBlock("THEN"),c=this.getInputTargetBlock("ELSE"),d=this.outputConnection.targetConnection;if((b||c)&&d)for(var e=0;2>e;e++){var f=1===e?b:c;f&&!f.workspace.connectionChecker.doTypeChecks(f.outputConnection,d)&&((0,$.module$exports$Blockly$Events.setGroup)(a.group),d===this.prevParentConnection_?(this.unplug(),d.getSourceBlock().bumpNeighbours()):(f.unplug(), -f.bumpNeighbours()),(0,$.module$exports$Blockly$Events.setGroup)(!1))}this.prevParentConnection_=d}};(0,$.module$exports$Blockly$Extensions.registerMixin)("logic_ternary",module$contents$Blockly$blocks$logic_LOGIC_TERNARY_ONCHANGE_MIXIN);var module$exports$Blockly$blocks$lists={}; -(0,$.module$exports$Blockly$common.defineBlocksWithJsonArray)([{type:"lists_create_empty",message0:"%{BKY_LISTS_CREATE_EMPTY_TITLE}",output:"Array",style:"list_blocks",tooltip:"%{BKY_LISTS_CREATE_EMPTY_TOOLTIP}",helpUrl:"%{BKY_LISTS_CREATE_EMPTY_HELPURL}"},{type:"lists_repeat",message0:"%{BKY_LISTS_REPEAT_TITLE}",args0:[{type:"input_value",name:"ITEM"},{type:"input_value",name:"NUM",check:"Number"}],output:"Array",style:"list_blocks",tooltip:"%{BKY_LISTS_REPEAT_TOOLTIP}",helpUrl:"%{BKY_LISTS_REPEAT_HELPURL}"}, -{type:"lists_reverse",message0:"%{BKY_LISTS_REVERSE_MESSAGE0}",args0:[{type:"input_value",name:"LIST",check:"Array"}],output:"Array",inputsInline:!0,style:"list_blocks",tooltip:"%{BKY_LISTS_REVERSE_TOOLTIP}",helpUrl:"%{BKY_LISTS_REVERSE_HELPURL}"},{type:"lists_isEmpty",message0:"%{BKY_LISTS_ISEMPTY_TITLE}",args0:[{type:"input_value",name:"VALUE",check:["String","Array"]}],output:"Boolean",style:"list_blocks",tooltip:"%{BKY_LISTS_ISEMPTY_TOOLTIP}",helpUrl:"%{BKY_LISTS_ISEMPTY_HELPURL}"},{type:"lists_length", -message0:"%{BKY_LISTS_LENGTH_TITLE}",args0:[{type:"input_value",name:"VALUE",check:["String","Array"]}],output:"Number",style:"list_blocks",tooltip:"%{BKY_LISTS_LENGTH_TOOLTIP}",helpUrl:"%{BKY_LISTS_LENGTH_HELPURL}"}]); -$.module$exports$Blockly$blocks.Blocks.lists_create_with={init:function(){this.setHelpUrl($.module$exports$Blockly$Msg.Msg.LISTS_CREATE_WITH_HELPURL);this.setStyle("list_blocks");this.itemCount_=3;this.updateShape_();this.setOutput(!0,"Array");this.setMutator(new $.module$exports$Blockly$Mutator.Mutator(["lists_create_with_item"]));this.setTooltip($.module$exports$Blockly$Msg.Msg.LISTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var a=(0,$.module$exports$Blockly$utils$xml.createElement)("mutation"); +var module$contents$Blockly$libraryBlocks$math_LIST_MODES_MUTATOR_MIXIN={updateType_:function(a){"MODE"===a?this.outputConnection.setCheck("Array"):this.outputConnection.setCheck("Number")},mutationToDom:function(){var a=(0,$.module$exports$Blockly$utils$xml.createElement)("mutation");a.setAttribute("op",this.getFieldValue("OP"));return a},domToMutation:function(a){this.updateType_(a.getAttribute("op"))}},module$contents$Blockly$libraryBlocks$math_LIST_MODES_MUTATOR_EXTENSION=function(){this.getField("OP").setValidator(function(a){this.updateType_(a)}.bind(this))}; +(0,$.module$exports$Blockly$Extensions.registerMutator)("math_modes_of_list_mutator",module$contents$Blockly$libraryBlocks$math_LIST_MODES_MUTATOR_MIXIN,module$contents$Blockly$libraryBlocks$math_LIST_MODES_MUTATOR_EXTENSION);(0,$.module$exports$Blockly$common.defineBlocks)(module$exports$Blockly$libraryBlocks$math.blocks);var module$exports$Blockly$libraryBlocks$loops={}; +module$exports$Blockly$libraryBlocks$loops.blocks=(0,$.module$exports$Blockly$common.createBlockDefinitionsFromJsonArray)([{type:"controls_repeat_ext",message0:"%{BKY_CONTROLS_REPEAT_TITLE}",args0:[{type:"input_value",name:"TIMES",check:"Number"}],message1:"%{BKY_CONTROLS_REPEAT_INPUT_DO} %1",args1:[{type:"input_statement",name:"DO"}],previousStatement:null,nextStatement:null,style:"loop_blocks",tooltip:"%{BKY_CONTROLS_REPEAT_TOOLTIP}",helpUrl:"%{BKY_CONTROLS_REPEAT_HELPURL}"},{type:"controls_repeat", +message0:"%{BKY_CONTROLS_REPEAT_TITLE}",args0:[{type:"field_number",name:"TIMES",value:10,min:0,precision:1}],message1:"%{BKY_CONTROLS_REPEAT_INPUT_DO} %1",args1:[{type:"input_statement",name:"DO"}],previousStatement:null,nextStatement:null,style:"loop_blocks",tooltip:"%{BKY_CONTROLS_REPEAT_TOOLTIP}",helpUrl:"%{BKY_CONTROLS_REPEAT_HELPURL}"},{type:"controls_whileUntil",message0:"%1 %2",args0:[{type:"field_dropdown",name:"MODE",options:[["%{BKY_CONTROLS_WHILEUNTIL_OPERATOR_WHILE}","WHILE"],["%{BKY_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL}", +"UNTIL"]]},{type:"input_value",name:"BOOL",check:"Boolean"}],message1:"%{BKY_CONTROLS_REPEAT_INPUT_DO} %1",args1:[{type:"input_statement",name:"DO"}],previousStatement:null,nextStatement:null,style:"loop_blocks",helpUrl:"%{BKY_CONTROLS_WHILEUNTIL_HELPURL}",extensions:["controls_whileUntil_tooltip"]},{type:"controls_for",message0:"%{BKY_CONTROLS_FOR_TITLE}",args0:[{type:"field_variable",name:"VAR",variable:null},{type:"input_value",name:"FROM",check:"Number",align:"RIGHT"},{type:"input_value",name:"TO", +check:"Number",align:"RIGHT"},{type:"input_value",name:"BY",check:"Number",align:"RIGHT"}],message1:"%{BKY_CONTROLS_REPEAT_INPUT_DO} %1",args1:[{type:"input_statement",name:"DO"}],inputsInline:!0,previousStatement:null,nextStatement:null,style:"loop_blocks",helpUrl:"%{BKY_CONTROLS_FOR_HELPURL}",extensions:["contextMenu_newGetVariableBlock","controls_for_tooltip"]},{type:"controls_forEach",message0:"%{BKY_CONTROLS_FOREACH_TITLE}",args0:[{type:"field_variable",name:"VAR",variable:null},{type:"input_value", +name:"LIST",check:"Array"}],message1:"%{BKY_CONTROLS_REPEAT_INPUT_DO} %1",args1:[{type:"input_statement",name:"DO"}],previousStatement:null,nextStatement:null,style:"loop_blocks",helpUrl:"%{BKY_CONTROLS_FOREACH_HELPURL}",extensions:["contextMenu_newGetVariableBlock","controls_forEach_tooltip"]},{type:"controls_flow_statements",message0:"%1",args0:[{type:"field_dropdown",name:"FLOW",options:[["%{BKY_CONTROLS_FLOW_STATEMENTS_OPERATOR_BREAK}","BREAK"],["%{BKY_CONTROLS_FLOW_STATEMENTS_OPERATOR_CONTINUE}", +"CONTINUE"]]}],previousStatement:null,style:"loop_blocks",helpUrl:"%{BKY_CONTROLS_FLOW_STATEMENTS_HELPURL}",suppressPrefixSuffix:!0,extensions:["controls_flow_tooltip","controls_flow_in_loop_check"]}]);var module$contents$Blockly$libraryBlocks$loops_WHILE_UNTIL_TOOLTIPS={WHILE:"%{BKY_CONTROLS_WHILEUNTIL_TOOLTIP_WHILE}",UNTIL:"%{BKY_CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL}"}; +(0,$.module$exports$Blockly$Extensions.register)("controls_whileUntil_tooltip",(0,$.module$exports$Blockly$Extensions.buildTooltipForDropdown)("MODE",module$contents$Blockly$libraryBlocks$loops_WHILE_UNTIL_TOOLTIPS));var module$contents$Blockly$libraryBlocks$loops_BREAK_CONTINUE_TOOLTIPS={BREAK:"%{BKY_CONTROLS_FLOW_STATEMENTS_TOOLTIP_BREAK}",CONTINUE:"%{BKY_CONTROLS_FLOW_STATEMENTS_TOOLTIP_CONTINUE}"}; +(0,$.module$exports$Blockly$Extensions.register)("controls_flow_tooltip",(0,$.module$exports$Blockly$Extensions.buildTooltipForDropdown)("FLOW",module$contents$Blockly$libraryBlocks$loops_BREAK_CONTINUE_TOOLTIPS)); +var module$contents$Blockly$libraryBlocks$loops_CUSTOM_CONTEXT_MENU_CREATE_VARIABLES_GET_MIXIN={customContextMenu:function(a){if(!this.isInFlyout){var b=this.getField("VAR").getVariable(),c=b.name;if(!this.isCollapsed()&&null!==c){var d={enabled:!0};d.text=$.module$exports$Blockly$Msg.Msg.VARIABLES_SET_CREATE_GET.replace("%1",c);b=(0,$.module$exports$Blockly$Variables.generateVariableFieldDom)(b);c=(0,$.module$exports$Blockly$utils$xml.createElement)("block");c.setAttribute("type","variables_get"); +c.appendChild(b);d.callback=(0,$.module$exports$Blockly$ContextMenu.callbackFactory)(this,c);a.push(d)}}}};(0,$.module$exports$Blockly$Extensions.registerMixin)("contextMenu_newGetVariableBlock",module$contents$Blockly$libraryBlocks$loops_CUSTOM_CONTEXT_MENU_CREATE_VARIABLES_GET_MIXIN);(0,$.module$exports$Blockly$Extensions.register)("controls_for_tooltip",(0,$.module$exports$Blockly$Extensions.buildTooltipWithFieldText)("%{BKY_CONTROLS_FOR_TOOLTIP}","VAR")); +(0,$.module$exports$Blockly$Extensions.register)("controls_forEach_tooltip",(0,$.module$exports$Blockly$Extensions.buildTooltipWithFieldText)("%{BKY_CONTROLS_FOREACH_TOOLTIP}","VAR"));module$exports$Blockly$libraryBlocks$loops.loopTypes=new Set(["controls_repeat","controls_repeat_ext","controls_forEach","controls_for","controls_whileUntil"]); +var module$contents$Blockly$libraryBlocks$loops_CONTROL_FLOW_IN_LOOP_CHECK_MIXIN={getSurroundLoop:function(){var a=this;do{if(module$exports$Blockly$libraryBlocks$loops.loopTypes.has(a.type))return a;a=a.getSurroundParent()}while(a);return null},onchange:function(a){if(this.workspace.isDragging&&!this.workspace.isDragging()&&a.type===$.module$exports$Blockly$Events.BLOCK_MOVE){var b=this.getSurroundLoop(this);this.setWarningText(b?null:$.module$exports$Blockly$Msg.Msg.CONTROLS_FLOW_STATEMENTS_WARNING); +if(!this.isInFlyout){var c=(0,$.module$exports$Blockly$Events.getGroup)();(0,$.module$exports$Blockly$Events.setGroup)(a.group);this.setEnabled(b);(0,$.module$exports$Blockly$Events.setGroup)(c)}}}};(0,$.module$exports$Blockly$Extensions.registerMixin)("controls_flow_in_loop_check",module$contents$Blockly$libraryBlocks$loops_CONTROL_FLOW_IN_LOOP_CHECK_MIXIN);(0,$.module$exports$Blockly$common.defineBlocks)(module$exports$Blockly$libraryBlocks$loops.blocks);var module$exports$Blockly$libraryBlocks$logic={}; +module$exports$Blockly$libraryBlocks$logic.blocks=(0,$.module$exports$Blockly$common.createBlockDefinitionsFromJsonArray)([{type:"logic_boolean",message0:"%1",args0:[{type:"field_dropdown",name:"BOOL",options:[["%{BKY_LOGIC_BOOLEAN_TRUE}","TRUE"],["%{BKY_LOGIC_BOOLEAN_FALSE}","FALSE"]]}],output:"Boolean",style:"logic_blocks",tooltip:"%{BKY_LOGIC_BOOLEAN_TOOLTIP}",helpUrl:"%{BKY_LOGIC_BOOLEAN_HELPURL}"},{type:"controls_if",message0:"%{BKY_CONTROLS_IF_MSG_IF} %1",args0:[{type:"input_value",name:"IF0", +check:"Boolean"}],message1:"%{BKY_CONTROLS_IF_MSG_THEN} %1",args1:[{type:"input_statement",name:"DO0"}],previousStatement:null,nextStatement:null,style:"logic_blocks",helpUrl:"%{BKY_CONTROLS_IF_HELPURL}",suppressPrefixSuffix:!0,mutator:"controls_if_mutator",extensions:["controls_if_tooltip"]},{type:"controls_ifelse",message0:"%{BKY_CONTROLS_IF_MSG_IF} %1",args0:[{type:"input_value",name:"IF0",check:"Boolean"}],message1:"%{BKY_CONTROLS_IF_MSG_THEN} %1",args1:[{type:"input_statement",name:"DO0"}],message2:"%{BKY_CONTROLS_IF_MSG_ELSE} %1", +args2:[{type:"input_statement",name:"ELSE"}],previousStatement:null,nextStatement:null,style:"logic_blocks",tooltip:"%{BKYCONTROLS_IF_TOOLTIP_2}",helpUrl:"%{BKY_CONTROLS_IF_HELPURL}",suppressPrefixSuffix:!0,extensions:["controls_if_tooltip"]},{type:"logic_compare",message0:"%1 %2 %3",args0:[{type:"input_value",name:"A"},{type:"field_dropdown",name:"OP",options:[["=","EQ"],["\u2260","NEQ"],["\u200f<","LT"],["\u200f\u2264","LTE"],["\u200f>","GT"],["\u200f\u2265","GTE"]]},{type:"input_value",name:"B"}], +inputsInline:!0,output:"Boolean",style:"logic_blocks",helpUrl:"%{BKY_LOGIC_COMPARE_HELPURL}",extensions:["logic_compare","logic_op_tooltip"]},{type:"logic_operation",message0:"%1 %2 %3",args0:[{type:"input_value",name:"A",check:"Boolean"},{type:"field_dropdown",name:"OP",options:[["%{BKY_LOGIC_OPERATION_AND}","AND"],["%{BKY_LOGIC_OPERATION_OR}","OR"]]},{type:"input_value",name:"B",check:"Boolean"}],inputsInline:!0,output:"Boolean",style:"logic_blocks",helpUrl:"%{BKY_LOGIC_OPERATION_HELPURL}",extensions:["logic_op_tooltip"]}, +{type:"logic_negate",message0:"%{BKY_LOGIC_NEGATE_TITLE}",args0:[{type:"input_value",name:"BOOL",check:"Boolean"}],output:"Boolean",style:"logic_blocks",tooltip:"%{BKY_LOGIC_NEGATE_TOOLTIP}",helpUrl:"%{BKY_LOGIC_NEGATE_HELPURL}"},{type:"logic_null",message0:"%{BKY_LOGIC_NULL}",output:null,style:"logic_blocks",tooltip:"%{BKY_LOGIC_NULL_TOOLTIP}",helpUrl:"%{BKY_LOGIC_NULL_HELPURL}"},{type:"logic_ternary",message0:"%{BKY_LOGIC_TERNARY_CONDITION} %1",args0:[{type:"input_value",name:"IF",check:"Boolean"}], +message1:"%{BKY_LOGIC_TERNARY_IF_TRUE} %1",args1:[{type:"input_value",name:"THEN"}],message2:"%{BKY_LOGIC_TERNARY_IF_FALSE} %1",args2:[{type:"input_value",name:"ELSE"}],output:null,style:"logic_blocks",tooltip:"%{BKY_LOGIC_TERNARY_TOOLTIP}",helpUrl:"%{BKY_LOGIC_TERNARY_HELPURL}",extensions:["logic_ternary"]},{type:"controls_if_if",message0:"%{BKY_CONTROLS_IF_IF_TITLE_IF}",nextStatement:null,enableContextMenu:!1,style:"logic_blocks",tooltip:"%{BKY_CONTROLS_IF_IF_TOOLTIP}"},{type:"controls_if_elseif", +message0:"%{BKY_CONTROLS_IF_ELSEIF_TITLE_ELSEIF}",previousStatement:null,nextStatement:null,enableContextMenu:!1,style:"logic_blocks",tooltip:"%{BKY_CONTROLS_IF_ELSEIF_TOOLTIP}"},{type:"controls_if_else",message0:"%{BKY_CONTROLS_IF_ELSE_TITLE_ELSE}",previousStatement:null,enableContextMenu:!1,style:"logic_blocks",tooltip:"%{BKY_CONTROLS_IF_ELSE_TOOLTIP}"}]); +var module$contents$Blockly$libraryBlocks$logic_TOOLTIPS_BY_OP={EQ:"%{BKY_LOGIC_COMPARE_TOOLTIP_EQ}",NEQ:"%{BKY_LOGIC_COMPARE_TOOLTIP_NEQ}",LT:"%{BKY_LOGIC_COMPARE_TOOLTIP_LT}",LTE:"%{BKY_LOGIC_COMPARE_TOOLTIP_LTE}",GT:"%{BKY_LOGIC_COMPARE_TOOLTIP_GT}",GTE:"%{BKY_LOGIC_COMPARE_TOOLTIP_GTE}",AND:"%{BKY_LOGIC_OPERATION_TOOLTIP_AND}",OR:"%{BKY_LOGIC_OPERATION_TOOLTIP_OR}"}; +(0,$.module$exports$Blockly$Extensions.register)("logic_op_tooltip",(0,$.module$exports$Blockly$Extensions.buildTooltipForDropdown)("OP",module$contents$Blockly$libraryBlocks$logic_TOOLTIPS_BY_OP)); +var module$contents$Blockly$libraryBlocks$logic_CONTROLS_IF_MUTATOR_MIXIN={elseifCount_:0,elseCount_:0,mutationToDom:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var a=(0,$.module$exports$Blockly$utils$xml.createElement)("mutation");this.elseifCount_&&a.setAttribute("elseif",this.elseifCount_);this.elseCount_&&a.setAttribute("else",1);return a},domToMutation:function(a){this.elseifCount_=parseInt(a.getAttribute("elseif"),10)||0;this.elseCount_=parseInt(a.getAttribute("else"),10)|| +0;this.rebuildShape_()},saveExtraState:function(){if(!this.elseifCount_&&!this.elseCount_)return null;var a=Object.create(null);this.elseifCount_&&(a.elseIfCount=this.elseifCount_);this.elseCount_&&(a.hasElse=!0);return a},loadExtraState:function(a){this.elseifCount_=a.elseIfCount||0;this.elseCount_=a.hasElse?1:0;this.updateShape_()},decompose:function(a){var b=a.newBlock("controls_if_if");b.initSvg();for(var c=b.nextConnection,d=1;d<=this.elseifCount_;d++){var e=a.newBlock("controls_if_elseif"); +e.initSvg();c.connect(e.previousConnection);c=e.nextConnection}this.elseCount_&&(a=a.newBlock("controls_if_else"),a.initSvg(),c.connect(a.previousConnection));return b},compose:function(a){a=a.nextConnection.targetBlock();this.elseCount_=this.elseifCount_=0;for(var b=[null],c=[null],d=null;a&&!a.isInsertionMarker();){switch(a.type){case "controls_if_elseif":this.elseifCount_++;b.push(a.valueConnection_);c.push(a.statementConnection_);break;case "controls_if_else":this.elseCount_++;d=a.statementConnection_; +break;default:throw TypeError("Unknown block type: "+a.type);}a=a.nextConnection&&a.nextConnection.targetBlock()}this.updateShape_();this.reconnectChildBlocks_(b,c,d)},saveConnections:function(a){a=a.nextConnection.targetBlock();for(var b=1;a;){switch(a.type){case "controls_if_elseif":var c=this.getInput("IF"+b),d=this.getInput("DO"+b);a.valueConnection_=c&&c.connection.targetConnection;a.statementConnection_=d&&d.connection.targetConnection;b++;break;case "controls_if_else":c=this.getInput("ELSE"); +a.statementConnection_=c&&c.connection.targetConnection;break;default:throw TypeError("Unknown block type: "+a.type);}a=a.nextConnection&&a.nextConnection.targetBlock()}},rebuildShape_:function(){var a=[null],b=[null],c=null;this.getInput("ELSE")&&(c=this.getInput("ELSE").connection.targetConnection);for(var d=1;this.getInput("IF"+d);d++){var e=this.getInput("IF"+d),f=this.getInput("DO"+d);a.push(e.connection.targetConnection);b.push(f.connection.targetConnection)}this.updateShape_();this.reconnectChildBlocks_(a, +b,c)},updateShape_:function(){this.getInput("ELSE")&&this.removeInput("ELSE");for(var a=1;this.getInput("IF"+a);a++)this.removeInput("IF"+a),this.removeInput("DO"+a);for(a=1;a<=this.elseifCount_;a++)this.appendValueInput("IF"+a).setCheck("Boolean").appendField($.module$exports$Blockly$Msg.Msg.CONTROLS_IF_MSG_ELSEIF),this.appendStatementInput("DO"+a).appendField($.module$exports$Blockly$Msg.Msg.CONTROLS_IF_MSG_THEN);this.elseCount_&&this.appendStatementInput("ELSE").appendField($.module$exports$Blockly$Msg.Msg.CONTROLS_IF_MSG_ELSE)}, +reconnectChildBlocks_:function(a,b,c){for(var d=1;d<=this.elseifCount_;d++)$.module$exports$Blockly$Mutator.Mutator.reconnect(a[d],this,"IF"+d),$.module$exports$Blockly$Mutator.Mutator.reconnect(b[d],this,"DO"+d);$.module$exports$Blockly$Mutator.Mutator.reconnect(c,this,"ELSE")}};(0,$.module$exports$Blockly$Extensions.registerMutator)("controls_if_mutator",module$contents$Blockly$libraryBlocks$logic_CONTROLS_IF_MUTATOR_MIXIN,null,["controls_if_elseif","controls_if_else"]); +var module$contents$Blockly$libraryBlocks$logic_CONTROLS_IF_TOOLTIP_EXTENSION=function(){this.setTooltip(function(){if(this.elseifCount_||this.elseCount_){if(!this.elseifCount_&&this.elseCount_)return $.module$exports$Blockly$Msg.Msg.CONTROLS_IF_TOOLTIP_2;if(this.elseifCount_&&!this.elseCount_)return $.module$exports$Blockly$Msg.Msg.CONTROLS_IF_TOOLTIP_3;if(this.elseifCount_&&this.elseCount_)return $.module$exports$Blockly$Msg.Msg.CONTROLS_IF_TOOLTIP_4}else return $.module$exports$Blockly$Msg.Msg.CONTROLS_IF_TOOLTIP_1; +return""}.bind(this))};(0,$.module$exports$Blockly$Extensions.register)("controls_if_tooltip",module$contents$Blockly$libraryBlocks$logic_CONTROLS_IF_TOOLTIP_EXTENSION); +var module$contents$Blockly$libraryBlocks$logic_LOGIC_COMPARE_ONCHANGE_MIXIN={onchange:function(a){this.prevBlocks_||(this.prevBlocks_=[null,null]);var b=this.getInputTargetBlock("A"),c=this.getInputTargetBlock("B");b&&c&&!this.workspace.connectionChecker.doTypeChecks(b.outputConnection,c.outputConnection)&&((0,$.module$exports$Blockly$Events.setGroup)(a.group),a=this.prevBlocks_[0],a!==b&&(b.unplug(),!a||a.isDisposed()||a.isShadow()||this.getInput("A").connection.connect(a.outputConnection)),b=this.prevBlocks_[1], +b!==c&&(c.unplug(),!b||b.isDisposed()||b.isShadow()||this.getInput("B").connection.connect(b.outputConnection)),this.bumpNeighbours(),(0,$.module$exports$Blockly$Events.setGroup)(!1));this.prevBlocks_[0]=this.getInputTargetBlock("A");this.prevBlocks_[1]=this.getInputTargetBlock("B")}},module$contents$Blockly$libraryBlocks$logic_LOGIC_COMPARE_EXTENSION=function(){this.mixin(module$contents$Blockly$libraryBlocks$logic_LOGIC_COMPARE_ONCHANGE_MIXIN)}; +(0,$.module$exports$Blockly$Extensions.register)("logic_compare",module$contents$Blockly$libraryBlocks$logic_LOGIC_COMPARE_EXTENSION); +var module$contents$Blockly$libraryBlocks$logic_LOGIC_TERNARY_ONCHANGE_MIXIN={prevParentConnection_:null,onchange:function(a){var b=this.getInputTargetBlock("THEN"),c=this.getInputTargetBlock("ELSE"),d=this.outputConnection.targetConnection;if((b||c)&&d)for(var e=0;2>e;e++){var f=1===e?b:c;f&&!f.workspace.connectionChecker.doTypeChecks(f.outputConnection,d)&&((0,$.module$exports$Blockly$Events.setGroup)(a.group),d===this.prevParentConnection_?(this.unplug(),d.getSourceBlock().bumpNeighbours()):(f.unplug(), +f.bumpNeighbours()),(0,$.module$exports$Blockly$Events.setGroup)(!1))}this.prevParentConnection_=d}};(0,$.module$exports$Blockly$Extensions.registerMixin)("logic_ternary",module$contents$Blockly$libraryBlocks$logic_LOGIC_TERNARY_ONCHANGE_MIXIN);(0,$.module$exports$Blockly$common.defineBlocks)(module$exports$Blockly$libraryBlocks$logic.blocks);var module$exports$Blockly$libraryBlocks$lists={}; +module$exports$Blockly$libraryBlocks$lists.blocks=(0,$.module$exports$Blockly$common.createBlockDefinitionsFromJsonArray)([{type:"lists_create_empty",message0:"%{BKY_LISTS_CREATE_EMPTY_TITLE}",output:"Array",style:"list_blocks",tooltip:"%{BKY_LISTS_CREATE_EMPTY_TOOLTIP}",helpUrl:"%{BKY_LISTS_CREATE_EMPTY_HELPURL}"},{type:"lists_repeat",message0:"%{BKY_LISTS_REPEAT_TITLE}",args0:[{type:"input_value",name:"ITEM"},{type:"input_value",name:"NUM",check:"Number"}],output:"Array",style:"list_blocks",tooltip:"%{BKY_LISTS_REPEAT_TOOLTIP}", +helpUrl:"%{BKY_LISTS_REPEAT_HELPURL}"},{type:"lists_reverse",message0:"%{BKY_LISTS_REVERSE_MESSAGE0}",args0:[{type:"input_value",name:"LIST",check:"Array"}],output:"Array",inputsInline:!0,style:"list_blocks",tooltip:"%{BKY_LISTS_REVERSE_TOOLTIP}",helpUrl:"%{BKY_LISTS_REVERSE_HELPURL}"},{type:"lists_isEmpty",message0:"%{BKY_LISTS_ISEMPTY_TITLE}",args0:[{type:"input_value",name:"VALUE",check:["String","Array"]}],output:"Boolean",style:"list_blocks",tooltip:"%{BKY_LISTS_ISEMPTY_TOOLTIP}",helpUrl:"%{BKY_LISTS_ISEMPTY_HELPURL}"}, +{type:"lists_length",message0:"%{BKY_LISTS_LENGTH_TITLE}",args0:[{type:"input_value",name:"VALUE",check:["String","Array"]}],output:"Number",style:"list_blocks",tooltip:"%{BKY_LISTS_LENGTH_TOOLTIP}",helpUrl:"%{BKY_LISTS_LENGTH_HELPURL}"}]); +module$exports$Blockly$libraryBlocks$lists.blocks.lists_create_with={init:function(){this.setHelpUrl($.module$exports$Blockly$Msg.Msg.LISTS_CREATE_WITH_HELPURL);this.setStyle("list_blocks");this.itemCount_=3;this.updateShape_();this.setOutput(!0,"Array");this.setMutator(new $.module$exports$Blockly$Mutator.Mutator(["lists_create_with_item"]));this.setTooltip($.module$exports$Blockly$Msg.Msg.LISTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var a=(0,$.module$exports$Blockly$utils$xml.createElement)("mutation"); a.setAttribute("items",this.itemCount_);return a},domToMutation:function(a){this.itemCount_=parseInt(a.getAttribute("items"),10);this.updateShape_()},saveExtraState:function(){return{itemCount:this.itemCount_}},loadExtraState:function(a){this.itemCount_=a.itemCount;this.updateShape_()},decompose:function(a){var b=a.newBlock("lists_create_with_container");b.initSvg();for(var c=b.getInput("STACK").connection,d=0;d list = str.split(exp);"," final title = new StringBuffer();", -" for (String part in list) {"," if (part.length > 0) {"," title.write(part[0].toUpperCase());"," if (part.length > 0) {"," title.write(part.substring(1).toLowerCase());"," }"," }"," }"," return title.toString();","}"])+"("+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; -$.Blockly.Dart.text_trim=function(a){var b={LEFT:".replaceFirst(new RegExp(r'^\\s+'), '')",RIGHT:".replaceFirst(new RegExp(r'\\s+$'), '')",BOTH:".trim()"}[a.getFieldValue("MODE")];return[($.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_UNARY_POSTFIX)||"''")+b,$.Blockly.Dart.ORDER_UNARY_POSTFIX]};$.Blockly.Dart.text_print=function(a){return"print("+($.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_NONE)||"''")+");\n"}; +"AT2"),c=$.Blockly.Dart.provideFunction_("text_get_substring","\nString "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String text, String where1, num at1, String where2, num at2) {\n int getAt(String where, num at) {\n if (where == 'FROM_END') {\n at = text.length - 1 - at;\n } else if (where == 'FIRST') {\n at = 0;\n } else if (where == 'LAST') {\n at = text.length - 1;\n } else if (where != 'FROM_START') {\n throw 'Unhandled option (text_getSubstring).';\n }\n return at;\n }\n at1 = getAt(where1, at1);\n at2 = getAt(where2, at2) + 1;\n return text.substring(at1, at2);\n}\n")+ +"("+e+", '"+b+"', "+f+", '"+c+"', "+a+")";return[c,$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; +$.Blockly.Dart.text_changeCase=function(a){var b={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=$.Blockly.Dart.valueToCode(a,"TEXT",b?$.Blockly.Dart.ORDER_UNARY_POSTFIX:$.Blockly.Dart.ORDER_NONE)||"''";return[b?a+b:$.Blockly.Dart.provideFunction_("text_toTitleCase","\nString "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String str) {\n RegExp exp = new RegExp(r'\\b');\n List list = str.split(exp);\n final title = new StringBuffer();\n for (String part in list) {\n if (part.length > 0) {\n title.write(part[0].toUpperCase());\n if (part.length > 0) {\n title.write(part.substring(1).toLowerCase());\n }\n }\n }\n return title.toString();\n}\n")+"("+ +a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]};$.Blockly.Dart.text_trim=function(a){var b={LEFT:".replaceFirst(new RegExp(r'^\\s+'), '')",RIGHT:".replaceFirst(new RegExp(r'\\s+$'), '')",BOTH:".trim()"}[a.getFieldValue("MODE")];return[($.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_UNARY_POSTFIX)||"''")+b,$.Blockly.Dart.ORDER_UNARY_POSTFIX]};$.Blockly.Dart.text_print=function(a){return"print("+($.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_NONE)||"''")+");\n"}; $.Blockly.Dart.text_prompt_ext=function(a){$.Blockly.Dart.definitions_.import_dart_html="import 'dart:html' as Html;";var b="Html.window.prompt("+(a.getField("TEXT")?$.Blockly.Dart.quote_(a.getFieldValue("TEXT")):$.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_NONE)||"''")+", '')";"NUMBER"===a.getFieldValue("TYPE")&&($.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;",b="Math.parseDouble("+b+")");return[b,$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; $.Blockly.Dart.text_prompt=$.Blockly.Dart.text_prompt_ext; -$.Blockly.Dart.text_count=function(a){var b=$.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_NONE)||"''";a=$.Blockly.Dart.valueToCode(a,"SUB",$.Blockly.Dart.ORDER_NONE)||"''";return[$.Blockly.Dart.provideFunction_("text_count",["int "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String haystack, String needle) {"," if (needle.length == 0) {"," return haystack.length + 1;"," }"," int index = 0;"," int count = 0;"," while (index != -1) {"," index = haystack.indexOf(needle, index);", -" if (index != -1) {"," count++;"," index += needle.length;"," }"," }"," return count;","}"])+"("+b+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]};$.Blockly.Dart.text_replace=function(a){var b=$.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_UNARY_POSTFIX)||"''",c=$.Blockly.Dart.valueToCode(a,"FROM",$.Blockly.Dart.ORDER_NONE)||"''";a=$.Blockly.Dart.valueToCode(a,"TO",$.Blockly.Dart.ORDER_NONE)||"''";return[b+".replaceAll("+c+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; +$.Blockly.Dart.text_count=function(a){var b=$.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_NONE)||"''";a=$.Blockly.Dart.valueToCode(a,"SUB",$.Blockly.Dart.ORDER_NONE)||"''";return[$.Blockly.Dart.provideFunction_("text_count","\nint "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String haystack, String needle) {\n if (needle.length == 0) {\n return haystack.length + 1;\n }\n int index = 0;\n int count = 0;\n while (index != -1) {\n index = haystack.indexOf(needle, index);\n if (index != -1) {\n count++;\n index += needle.length;\n }\n }\n return count;\n}\n")+"("+ +b+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]};$.Blockly.Dart.text_replace=function(a){var b=$.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_UNARY_POSTFIX)||"''",c=$.Blockly.Dart.valueToCode(a,"FROM",$.Blockly.Dart.ORDER_NONE)||"''";a=$.Blockly.Dart.valueToCode(a,"TO",$.Blockly.Dart.ORDER_NONE)||"''";return[b+".replaceAll("+c+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; $.Blockly.Dart.text_reverse=function(a){return["new String.fromCharCodes("+($.Blockly.Dart.valueToCode(a,"TEXT",$.Blockly.Dart.ORDER_UNARY_POSTFIX)||"''")+".runes.toList().reversed)",$.Blockly.Dart.ORDER_UNARY_PREFIX]};var module$exports$Blockly$Dart$procedures={}; $.Blockly.Dart.procedures_defreturn=function(a){var b=$.Blockly.Dart.nameDB_.getName(a.getFieldValue("NAME"),$.module$exports$Blockly$Names.NameType.PROCEDURE),c="";$.Blockly.Dart.STATEMENT_PREFIX&&(c+=$.Blockly.Dart.injectId($.Blockly.Dart.STATEMENT_PREFIX,a));$.Blockly.Dart.STATEMENT_SUFFIX&&(c+=$.Blockly.Dart.injectId($.Blockly.Dart.STATEMENT_SUFFIX,a));c&&(c=$.Blockly.Dart.prefixLines(c,$.Blockly.Dart.INDENT));var d="";$.Blockly.Dart.INFINITE_LOOP_TRAP&&(d=$.Blockly.Dart.prefixLines($.Blockly.Dart.injectId($.Blockly.Dart.INFINITE_LOOP_TRAP, a),$.Blockly.Dart.INDENT));var e=$.Blockly.Dart.statementToCode(a,"STACK"),f=$.Blockly.Dart.valueToCode(a,"RETURN",$.Blockly.Dart.ORDER_NONE)||"",g="";e&&f&&(g=c);f&&(f=$.Blockly.Dart.INDENT+"return "+f+";\n");for(var h=f?"dynamic":"void",k=[],l=a.getVars(),m=0;m 0";break;case "NEGATIVE":d=b+" < 0";break;case "DIVISIBLE_BY":a=$.Blockly.Dart.valueToCode(a,"DIVISOR",$.Blockly.Dart.ORDER_MULTIPLICATIVE);if(!a)return["false",$.Blockly.Dart.ORDER_ATOMIC];d=b+" % "+a+" == 0"}return[d,$.Blockly.Dart.ORDER_EQUALITY]}; -$.Blockly.Dart.math_change=function(a){var b=$.Blockly.Dart.valueToCode(a,"DELTA",$.Blockly.Dart.ORDER_ADDITIVE)||"0";a=$.Blockly.Dart.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE);return a+" = ("+a+" is num ? "+a+" : 0) + "+b+";\n"};$.Blockly.Dart.math_round=$.Blockly.Dart.math_single;$.Blockly.Dart.math_trig=$.Blockly.Dart.math_single; -$.Blockly.Dart.math_on_list=function(a){var b=a.getFieldValue("OP");a=$.Blockly.Dart.valueToCode(a,"LIST",$.Blockly.Dart.ORDER_NONE)||"[]";switch(b){case "SUM":b=$.Blockly.Dart.provideFunction_("math_sum",["num "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," num sumVal = 0;"," myList.forEach((num entry) {sumVal += entry;});"," return sumVal;","}"])+"("+a+")";break;case "MIN":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_min", -["num "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," if (myList.isEmpty) return null;"," num minVal = myList[0];"," myList.forEach((num entry) {minVal = Math.min(minVal, entry);});"," return minVal;","}"])+"("+a+")";break;case "MAX":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_max",["num "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," if (myList.isEmpty) return null;"," num maxVal = myList[0];", -" myList.forEach((num entry) {maxVal = Math.max(maxVal, entry);});"," return maxVal;","}"])+"("+a+")";break;case "AVERAGE":b=$.Blockly.Dart.provideFunction_("math_mean",["num "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," // First filter list for numbers only."," List localList = new List.from(myList);"," localList.removeWhere((a) => a is! num);"," if (localList.isEmpty) return null;"," num sumVal = 0;"," localList.forEach((var entry) {sumVal += entry;});"," return sumVal / localList.length;", -"}"])+"("+a+")";break;case "MEDIAN":b=$.Blockly.Dart.provideFunction_("math_median",["num "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," // First filter list for numbers only, then sort, then return middle value"," // or the average of two middle values if list has an even number of elements."," List localList = new List.from(myList);"," localList.removeWhere((a) => a is! num);"," if (localList.isEmpty) return null;"," localList.sort((a, b) => (a - b));"," int index = localList.length ~/ 2;", -" if (localList.length % 2 == 1) {"," return localList[index];"," } else {"," return (localList[index - 1] + localList[index]) / 2;"," }","}"])+"("+a+")";break;case "MODE":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_modes",["List "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List values) {"," List modes = [];"," List counts = [];"," int maxCount = 0;"," for (int i = 0; i < values.length; i++) {"," var value = values[i];", -" bool found = false;"," int thisCount;"," for (int j = 0; j < counts.length; j++) {"," if (counts[j][0] == value) {"," thisCount = ++counts[j][1];"," found = true;"," break;"," }"," }"," if (!found) {"," counts.add([value, 1]);"," thisCount = 1;"," }"," maxCount = Math.max(thisCount, maxCount);"," }"," for (int j = 0; j < counts.length; j++) {"," if (counts[j][1] == maxCount) {"," modes.add(counts[j][0]);"," }"," }"," return modes;", -"}"])+"("+a+")";break;case "STD_DEV":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_standard_deviation",["num "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," // First filter list for numbers only."," List numbers = new List.from(myList);"," numbers.removeWhere((a) => a is! num);"," if (numbers.isEmpty) return null;"," num n = numbers.length;"," num sum = 0;"," numbers.forEach((x) => sum += x);"," num mean = sum / n;", -" num sumSquare = 0;"," numbers.forEach((x) => sumSquare += Math.pow(x - mean, 2));"," return Math.sqrt(sumSquare / n);","}"])+"("+a+")";break;case "RANDOM":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_random_item",["dynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {"," int x = new Math.Random().nextInt(myList.length);"," return myList[x];","}"])+"("+a+")";break;default:throw Error("Unknown operator: "+b); -}return[b,$.Blockly.Dart.ORDER_UNARY_POSTFIX]};$.Blockly.Dart.math_modulo=function(a){var b=$.Blockly.Dart.valueToCode(a,"DIVIDEND",$.Blockly.Dart.ORDER_MULTIPLICATIVE)||"0";a=$.Blockly.Dart.valueToCode(a,"DIVISOR",$.Blockly.Dart.ORDER_MULTIPLICATIVE)||"0";return[b+" % "+a,$.Blockly.Dart.ORDER_MULTIPLICATIVE]}; +$.Blockly.Dart.math_number_property=function(a){var b={EVEN:[" % 2 == 0",$.Blockly.Dart.ORDER_MULTIPLICATIVE,$.Blockly.Dart.ORDER_EQUALITY],ODD:[" % 2 == 1",$.Blockly.Dart.ORDER_MULTIPLICATIVE,$.Blockly.Dart.ORDER_EQUALITY],WHOLE:[" % 1 == 0",$.Blockly.Dart.ORDER_MULTIPLICATIVE,$.Blockly.Dart.ORDER_EQUALITY],POSITIVE:[" > 0",$.Blockly.Dart.ORDER_RELATIONAL,$.Blockly.Dart.ORDER_RELATIONAL],NEGATIVE:[" < 0",$.Blockly.Dart.ORDER_RELATIONAL,$.Blockly.Dart.ORDER_RELATIONAL],DIVISIBLE_BY:[null,$.Blockly.Dart.ORDER_MULTIPLICATIVE, +$.Blockly.Dart.ORDER_EQUALITY],PRIME:[null,$.Blockly.Dart.ORDER_NONE,$.Blockly.Dart.ORDER_UNARY_POSTFIX]},c=a.getFieldValue("PROPERTY");b=$.$jscomp.makeIterator(b[c]);var d=b.next().value,e=b.next().value;b=b.next().value;e=$.Blockly.Dart.valueToCode(a,"NUMBER_TO_CHECK",e)||"0";if("PRIME"===c)$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;",a=$.Blockly.Dart.provideFunction_("math_isPrime","\nbool "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(n) {\n // https://en.wikipedia.org/wiki/Primality_test#Naive_methods\n if (n == 2 || n == 3) {\n return true;\n }\n // False if n is null, negative, is 1, or not whole.\n // And false if n is divisible by 2 or 3.\n if (n == null || n <= 1 || n % 1 != 0 || n % 2 == 0 || n % 3 == 0) {\n return false;\n }\n // Check all the numbers of form 6k +/- 1, up to sqrt(n).\n for (var x = 6; x <= Math.sqrt(n) + 1; x += 6) {\n if (n % (x - 1) == 0 || n % (x + 1) == 0) {\n return false;\n }\n }\n return true;\n}\n")+ +"("+e+")";else if("DIVISIBLE_BY"===c){a=$.Blockly.Dart.valueToCode(a,"DIVISOR",$.Blockly.Dart.ORDER_MULTIPLICATIVE)||"0";if("0"===a)return["false",$.Blockly.Dart.ORDER_ATOMIC];a=e+" % "+a+" == 0"}else a=e+d;return[a,b]};$.Blockly.Dart.math_change=function(a){var b=$.Blockly.Dart.valueToCode(a,"DELTA",$.Blockly.Dart.ORDER_ADDITIVE)||"0";a=$.Blockly.Dart.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE);return a+" = ("+a+" is num ? "+a+" : 0) + "+b+";\n"}; +$.Blockly.Dart.math_round=$.Blockly.Dart.math_single;$.Blockly.Dart.math_trig=$.Blockly.Dart.math_single; +$.Blockly.Dart.math_on_list=function(a){var b=a.getFieldValue("OP");a=$.Blockly.Dart.valueToCode(a,"LIST",$.Blockly.Dart.ORDER_NONE)||"[]";switch(b){case "SUM":b=$.Blockly.Dart.provideFunction_("math_sum","\nnum "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {\n num sumVal = 0;\n myList.forEach((num entry) {sumVal += entry;});\n return sumVal;\n}\n")+"("+a+")";break;case "MIN":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_min", +"\nnum "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {\n if (myList.isEmpty) return null;\n num minVal = myList[0];\n myList.forEach((num entry) {minVal = Math.min(minVal, entry);});\n return minVal;\n}\n")+"("+a+")";break;case "MAX":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_max","\nnum "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {\n if (myList.isEmpty) return null;\n num maxVal = myList[0];\n myList.forEach((num entry) {maxVal = Math.max(maxVal, entry);});\n return maxVal;\n}\n")+ +"("+a+")";break;case "AVERAGE":b=$.Blockly.Dart.provideFunction_("math_mean","\nnum "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {\n // First filter list for numbers only.\n List localList = new List.from(myList);\n localList.removeWhere((a) => a is! num);\n if (localList.isEmpty) return null;\n num sumVal = 0;\n localList.forEach((var entry) {sumVal += entry;});\n return sumVal / localList.length;\n}\n")+"("+a+")";break;case "MEDIAN":b=$.Blockly.Dart.provideFunction_("math_median", +"\nnum "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {\n // First filter list for numbers only, then sort, then return middle value\n // or the average of two middle values if list has an even number of elements.\n List localList = new List.from(myList);\n localList.removeWhere((a) => a is! num);\n if (localList.isEmpty) return null;\n localList.sort((a, b) => (a - b));\n int index = localList.length ~/ 2;\n if (localList.length % 2 == 1) {\n return localList[index];\n } else {\n return (localList[index - 1] + localList[index]) / 2;\n }\n}\n")+ +"("+a+")";break;case "MODE":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_modes","\nList "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List values) {\n List modes = [];\n List counts = [];\n int maxCount = 0;\n for (int i = 0; i < values.length; i++) {\n var value = values[i];\n bool found = false;\n int thisCount;\n for (int j = 0; j < counts.length; j++) {\n if (counts[j][0] == value) {\n thisCount = ++counts[j][1];\n found = true;\n break;\n }\n }\n if (!found) {\n counts.add([value, 1]);\n thisCount = 1;\n }\n maxCount = Math.max(thisCount, maxCount);\n }\n for (int j = 0; j < counts.length; j++) {\n if (counts[j][1] == maxCount) {\n modes.add(counts[j][0]);\n }\n }\n return modes;\n}\n")+ +"("+a+")";break;case "STD_DEV":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_standard_deviation","\nnum "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {\n // First filter list for numbers only.\n List numbers = new List.from(myList);\n numbers.removeWhere((a) => a is! num);\n if (numbers.isEmpty) return null;\n num n = numbers.length;\n num sum = 0;\n numbers.forEach((x) => sum += x);\n num mean = sum / n;\n num sumSquare = 0;\n numbers.forEach((x) => sumSquare += Math.pow(x - mean, 2));\n return Math.sqrt(sumSquare / n);\n}\n")+ +"("+a+")";break;case "RANDOM":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";b=$.Blockly.Dart.provideFunction_("math_random_item","\ndynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List myList) {\n int x = new Math.Random().nextInt(myList.length);\n return myList[x];\n}\n")+"("+a+")";break;default:throw Error("Unknown operator: "+b);}return[b,$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; +$.Blockly.Dart.math_modulo=function(a){var b=$.Blockly.Dart.valueToCode(a,"DIVIDEND",$.Blockly.Dart.ORDER_MULTIPLICATIVE)||"0";a=$.Blockly.Dart.valueToCode(a,"DIVISOR",$.Blockly.Dart.ORDER_MULTIPLICATIVE)||"0";return[b+" % "+a,$.Blockly.Dart.ORDER_MULTIPLICATIVE]}; $.Blockly.Dart.math_constrain=function(a){$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";var b=$.Blockly.Dart.valueToCode(a,"VALUE",$.Blockly.Dart.ORDER_NONE)||"0",c=$.Blockly.Dart.valueToCode(a,"LOW",$.Blockly.Dart.ORDER_NONE)||"0";a=$.Blockly.Dart.valueToCode(a,"HIGH",$.Blockly.Dart.ORDER_NONE)||"double.infinity";return["Math.min(Math.max("+b+", "+c+"), "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; -$.Blockly.Dart.math_random_int=function(a){$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";var b=$.Blockly.Dart.valueToCode(a,"FROM",$.Blockly.Dart.ORDER_NONE)||"0";a=$.Blockly.Dart.valueToCode(a,"TO",$.Blockly.Dart.ORDER_NONE)||"0";return[$.Blockly.Dart.provideFunction_("math_random_int",["int "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(num a, num b) {"," if (a > b) {"," // Swap a and b to ensure a is smaller."," num c = a;"," a = b;"," b = c;"," }"," return new Math.Random().nextInt(b - a + 1) + a;", -"}"])+"("+b+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]};$.Blockly.Dart.math_random_float=function(a){$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return["new Math.Random().nextDouble()",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; +$.Blockly.Dart.math_random_int=function(a){$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";var b=$.Blockly.Dart.valueToCode(a,"FROM",$.Blockly.Dart.ORDER_NONE)||"0";a=$.Blockly.Dart.valueToCode(a,"TO",$.Blockly.Dart.ORDER_NONE)||"0";return[$.Blockly.Dart.provideFunction_("math_random_int","\nint "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(num a, num b) {\n if (a > b) {\n // Swap a and b to ensure a is smaller.\n num c = a;\n a = b;\n b = c;\n }\n return new Math.Random().nextInt(b - a + 1) + a;\n}\n")+ +"("+b+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]};$.Blockly.Dart.math_random_float=function(a){$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return["new Math.Random().nextDouble()",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; $.Blockly.Dart.math_atan2=function(a){$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";var b=$.Blockly.Dart.valueToCode(a,"X",$.Blockly.Dart.ORDER_NONE)||"0";return["Math.atan2("+($.Blockly.Dart.valueToCode(a,"Y",$.Blockly.Dart.ORDER_NONE)||"0")+", "+b+") / Math.pi * 180",$.Blockly.Dart.ORDER_MULTIPLICATIVE]};var module$exports$Blockly$Dart$loops={}; $.Blockly.Dart.controls_repeat_ext=function(a){var b=a.getField("TIMES")?String(Number(a.getFieldValue("TIMES"))):$.Blockly.Dart.valueToCode(a,"TIMES",$.Blockly.Dart.ORDER_ASSIGNMENT)||"0";var c=$.Blockly.Dart.statementToCode(a,"DO");c=$.Blockly.Dart.addLoopTrap(c,a);a="";var d=$.Blockly.Dart.nameDB_.getDistinctName("count",$.module$exports$Blockly$Names.NameType.VARIABLE),e=b;b.match(/^\w+$/)||(0,$.module$exports$Blockly$utils$string.isNumber)(b)||(e=$.Blockly.Dart.nameDB_.getDistinctName("repeat_end",$.module$exports$Blockly$Names.NameType.VARIABLE), a+="var "+e+" = "+b+";\n");return a+("for (int "+d+" = 0; "+d+" < "+e+"; "+d+"++) {\n"+c+"}\n")};$.Blockly.Dart.controls_repeat=$.Blockly.Dart.controls_repeat_ext;$.Blockly.Dart.controls_whileUntil=function(a){var b="UNTIL"===a.getFieldValue("MODE"),c=$.Blockly.Dart.valueToCode(a,"BOOL",b?$.Blockly.Dart.ORDER_UNARY_PREFIX:$.Blockly.Dart.ORDER_NONE)||"false",d=$.Blockly.Dart.statementToCode(a,"DO");d=$.Blockly.Dart.addLoopTrap(d,a);b&&(c="!"+c);return"while ("+c+") {\n"+d+"}\n"}; @@ -91,28 +90,26 @@ $.Blockly.Dart.lists_indexOf=function(a){var b="FIRST"===a.getFieldValue("END")? $.Blockly.Dart.lists_getIndex=function(a){function b(){var f=$.Blockly.Dart.nameDB_.getDistinctName("tmp_list",$.module$exports$Blockly$Names.NameType.VARIABLE),g="List "+f+" = "+e+";\n";e=f;return g}var c=a.getFieldValue("MODE")||"GET",d=a.getFieldValue("WHERE")||"FROM_START",e=$.Blockly.Dart.valueToCode(a,"VALUE","RANDOM"===d||"FROM_END"===d?$.Blockly.Dart.ORDER_NONE:$.Blockly.Dart.ORDER_UNARY_POSTFIX)||"[]";if(("RANDOM"!==d||"REMOVE"!==c)&&"FROM_END"!==d||e.match(/^\w+$/))switch(d){case "FIRST":if("GET"=== c)return[e+".first",$.Blockly.Dart.ORDER_UNARY_POSTFIX];if("GET_REMOVE"===c)return[e+".removeAt(0)",$.Blockly.Dart.ORDER_UNARY_POSTFIX];if("REMOVE"===c)return e+".removeAt(0);\n";break;case "LAST":if("GET"===c)return[e+".last",$.Blockly.Dart.ORDER_UNARY_POSTFIX];if("GET_REMOVE"===c)return[e+".removeLast()",$.Blockly.Dart.ORDER_UNARY_POSTFIX];if("REMOVE"===c)return e+".removeLast();\n";break;case "FROM_START":a=$.Blockly.Dart.getAdjusted(a,"AT");if("GET"===c)return[e+"["+a+"]",$.Blockly.Dart.ORDER_UNARY_POSTFIX]; if("GET_REMOVE"===c)return[e+".removeAt("+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX];if("REMOVE"===c)return e+".removeAt("+a+");\n";break;case "FROM_END":a=$.Blockly.Dart.getAdjusted(a,"AT",1,!1,$.Blockly.Dart.ORDER_ADDITIVE);if("GET"===c)return[e+"["+e+".length - "+a+"]",$.Blockly.Dart.ORDER_UNARY_POSTFIX];if("GET_REMOVE"===c||"REMOVE"===c){a=e+".removeAt("+e+".length - "+a+")";if("GET_REMOVE"===c)return[a,$.Blockly.Dart.ORDER_UNARY_POSTFIX];if("REMOVE"===c)return a+";\n"}break;case "RANDOM":$.Blockly.Dart.definitions_.import_dart_math= -"import 'dart:math' as Math;";if("REMOVE"===c)return c=$.Blockly.Dart.nameDB_.getDistinctName("tmp_x",$.module$exports$Blockly$Names.NameType.VARIABLE),"int "+c+" = new Math.Random().nextInt("+e+".length);\n"+(e+".removeAt("+c+");\n");if("GET"===c)return[$.Blockly.Dart.provideFunction_("lists_get_random_item",["dynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list) {"," int x = new Math.Random().nextInt(my_list.length);"," return my_list[x];","}"])+"("+e+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]; -if("GET_REMOVE"===c)return[$.Blockly.Dart.provideFunction_("lists_remove_random_item",["dynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list) {"," int x = new Math.Random().nextInt(my_list.length);"," return my_list.removeAt(x);","}"])+"("+e+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}else{if("RANDOM"===d)return $.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;",c=b(),a=$.Blockly.Dart.nameDB_.getDistinctName("tmp_x",$.module$exports$Blockly$Names.NameType.VARIABLE), -c+("int "+a+" = new Math.Random().nextInt("+e+".length);\n")+(e+".removeAt("+a+");\n");if("REMOVE"===c)return c=$.Blockly.Dart.getAdjusted(a,"AT",1,!1,$.Blockly.Dart.ORDER_ADDITIVE),b()+(e+".removeAt("+e+".length - "+c+");\n");if("GET"===c)return c=$.Blockly.Dart.getAdjusted(a,"AT",1),[$.Blockly.Dart.provideFunction_("lists_get_from_end",["dynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list, num x) {"," x = my_list.length - x;"," return my_list[x];","}"])+"("+e+", "+c+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]; -if("GET_REMOVE"===c)return c=$.Blockly.Dart.getAdjusted(a,"AT",1),[$.Blockly.Dart.provideFunction_("lists_remove_from_end",["dynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list, num x) {"," x = my_list.length - x;"," return my_list.removeAt(x);","}"])+"("+e+", "+c+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}throw Error("Unhandled combination (lists_getIndex).");}; +"import 'dart:math' as Math;";if("REMOVE"===c)return c=$.Blockly.Dart.nameDB_.getDistinctName("tmp_x",$.module$exports$Blockly$Names.NameType.VARIABLE),"int "+c+" = new Math.Random().nextInt("+e+".length);\n"+(e+".removeAt("+c+");\n");if("GET"===c)return[$.Blockly.Dart.provideFunction_("lists_get_random_item","\ndynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list) {\n int x = new Math.Random().nextInt(my_list.length);\n return my_list[x];\n}\n")+"("+e+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]; +if("GET_REMOVE"===c)return[$.Blockly.Dart.provideFunction_("lists_remove_random_item","\ndynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list) {\n int x = new Math.Random().nextInt(my_list.length);\n return my_list.removeAt(x);\n}\n")+"("+e+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}else{if("RANDOM"===d)return $.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;",c=b(),a=$.Blockly.Dart.nameDB_.getDistinctName("tmp_x",$.module$exports$Blockly$Names.NameType.VARIABLE), +c+("int "+a+" = new Math.Random().nextInt("+e+".length);\n")+(e+".removeAt("+a+");\n");if("REMOVE"===c)return c=$.Blockly.Dart.getAdjusted(a,"AT",1,!1,$.Blockly.Dart.ORDER_ADDITIVE),b()+(e+".removeAt("+e+".length - "+c+");\n");if("GET"===c)return c=$.Blockly.Dart.getAdjusted(a,"AT",1),[$.Blockly.Dart.provideFunction_("lists_get_from_end","\ndynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list, num x) {\n x = my_list.length - x;\n return my_list[x];\n}\n")+"("+e+", "+c+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]; +if("GET_REMOVE"===c)return c=$.Blockly.Dart.getAdjusted(a,"AT",1),[$.Blockly.Dart.provideFunction_("lists_remove_from_end","\ndynamic "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List my_list, num x) {\n x = my_list.length - x;\n return my_list.removeAt(x);\n}\n")+"("+e+", "+c+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}throw Error("Unhandled combination (lists_getIndex).");}; $.Blockly.Dart.lists_setIndex=function(a){function b(){if(e.match(/^\w+$/))return"";var g=$.Blockly.Dart.nameDB_.getDistinctName("tmp_list",$.module$exports$Blockly$Names.NameType.VARIABLE),h="List "+g+" = "+e+";\n";e=g;return h}var c=a.getFieldValue("MODE")||"GET",d=a.getFieldValue("WHERE")||"FROM_START",e=$.Blockly.Dart.valueToCode(a,"LIST",$.Blockly.Dart.ORDER_UNARY_POSTFIX)||"[]",f=$.Blockly.Dart.valueToCode(a,"TO",$.Blockly.Dart.ORDER_ASSIGNMENT)||"null";switch(d){case "FIRST":if("SET"===c)return e+ "[0] = "+f+";\n";if("INSERT"===c)return e+".insert(0, "+f+");\n";break;case "LAST":if("SET"===c)return b()+(e+"["+e+".length - 1] = "+f+";\n");if("INSERT"===c)return e+".add("+f+");\n";break;case "FROM_START":a=$.Blockly.Dart.getAdjusted(a,"AT");if("SET"===c)return e+"["+a+"] = "+f+";\n";if("INSERT"===c)return e+".insert("+a+", "+f+");\n";break;case "FROM_END":a=$.Blockly.Dart.getAdjusted(a,"AT",1,!1,$.Blockly.Dart.ORDER_ADDITIVE);d=b();if("SET"===c)return d+(e+"["+e+".length - "+a+"] = "+f+";\n"); if("INSERT"===c)return d+(e+".insert("+e+".length - "+a+", "+f+");\n");break;case "RANDOM":$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";a=b();d=$.Blockly.Dart.nameDB_.getDistinctName("tmp_x",$.module$exports$Blockly$Names.NameType.VARIABLE);a+="int "+d+" = new Math.Random().nextInt("+e+".length);\n";if("SET"===c)return a+(e+"["+d+"] = "+f+";\n");if("INSERT"===c)return a+(e+".insert("+d+", "+f+");\n")}throw Error("Unhandled combination (lists_setIndex).");}; $.Blockly.Dart.lists_getSublist=function(a){var b=$.Blockly.Dart.valueToCode(a,"LIST",$.Blockly.Dart.ORDER_UNARY_POSTFIX)||"[]",c=a.getFieldValue("WHERE1"),d=a.getFieldValue("WHERE2");if(b.match(/^\w+$/)||"FROM_END"!==c&&"FROM_START"===d){switch(c){case "FROM_START":c=$.Blockly.Dart.getAdjusted(a,"AT1");break;case "FROM_END":c=$.Blockly.Dart.getAdjusted(a,"AT1",1,!1,$.Blockly.Dart.ORDER_ADDITIVE);c=b+".length - "+c;break;case "FIRST":c="0";break;default:throw Error("Unhandled option (lists_getSublist)."); -}switch(d){case "FROM_START":var e=$.Blockly.Dart.getAdjusted(a,"AT2",1);break;case "FROM_END":e=$.Blockly.Dart.getAdjusted(a,"AT2",0,!1,$.Blockly.Dart.ORDER_ADDITIVE);e=b+".length - "+e;break;case "LAST":break;default:throw Error("Unhandled option (lists_getSublist).");}b="LAST"===d?b+".sublist("+c+")":b+".sublist("+c+", "+e+")"}else e=$.Blockly.Dart.getAdjusted(a,"AT1"),a=$.Blockly.Dart.getAdjusted(a,"AT2"),b=$.Blockly.Dart.provideFunction_("lists_get_sublist",["List "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+ -"(List list, String where1, num at1, String where2, num at2) {"," int getAt(String where, num at) {"," if (where == 'FROM_END') {"," at = list.length - 1 - at;"," } else if (where == 'FIRST') {"," at = 0;"," } else if (where == 'LAST') {"," at = list.length - 1;"," } else if (where != 'FROM_START') {"," throw 'Unhandled option (lists_getSublist).';"," }"," return at;"," }"," at1 = getAt(where1, at1);"," at2 = getAt(where2, at2) + 1;"," return list.sublist(at1, at2);", -"}"])+"("+b+", '"+c+"', "+e+", '"+d+"', "+a+")";return[b,$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; -$.Blockly.Dart.lists_sort=function(a){var b=$.Blockly.Dart.valueToCode(a,"LIST",$.Blockly.Dart.ORDER_NONE)||"[]",c="1"===a.getFieldValue("DIRECTION")?1:-1;a=a.getFieldValue("TYPE");return[$.Blockly.Dart.provideFunction_("lists_sort",["List "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List list, String type, int direction) {"," var compareFuncs = {",' "NUMERIC": (a, b) => (direction * a.compareTo(b)).toInt(),',' "TEXT": (a, b) => direction * a.toString().compareTo(b.toString()),',' "IGNORE_CASE": ', -" (a, b) => direction * "," a.toString().toLowerCase().compareTo(b.toString().toLowerCase())"," };"," list = new List.from(list);"," var compare = compareFuncs[type];"," list.sort(compare);"," return list;","}"])+"("+b+', "'+a+'", '+c+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; -$.Blockly.Dart.lists_split=function(a){var b=$.Blockly.Dart.valueToCode(a,"INPUT",$.Blockly.Dart.ORDER_UNARY_POSTFIX),c=$.Blockly.Dart.valueToCode(a,"DELIM",$.Blockly.Dart.ORDER_NONE)||"''";a=a.getFieldValue("MODE");if("SPLIT"===a)b||(b="''"),a="split";else if("JOIN"===a)b||(b="[]"),a="join";else throw Error("Unknown mode: "+a);return[b+"."+a+"("+c+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; +}switch(d){case "FROM_START":var e=$.Blockly.Dart.getAdjusted(a,"AT2",1);break;case "FROM_END":e=$.Blockly.Dart.getAdjusted(a,"AT2",0,!1,$.Blockly.Dart.ORDER_ADDITIVE);e=b+".length - "+e;break;case "LAST":break;default:throw Error("Unhandled option (lists_getSublist).");}b="LAST"===d?b+".sublist("+c+")":b+".sublist("+c+", "+e+")"}else e=$.Blockly.Dart.getAdjusted(a,"AT1"),a=$.Blockly.Dart.getAdjusted(a,"AT2"),b=$.Blockly.Dart.provideFunction_("lists_get_sublist","\nList "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+ +"(List list, String where1, num at1, String where2, num at2) {\n int getAt(String where, num at) {\n if (where == 'FROM_END') {\n at = list.length - 1 - at;\n } else if (where == 'FIRST') {\n at = 0;\n } else if (where == 'LAST') {\n at = list.length - 1;\n } else if (where != 'FROM_START') {\n throw 'Unhandled option (lists_getSublist).';\n }\n return at;\n }\n at1 = getAt(where1, at1);\n at2 = getAt(where2, at2) + 1;\n return list.sublist(at1, at2);\n}\n")+ +"("+b+", '"+c+"', "+e+", '"+d+"', "+a+")";return[b,$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; +$.Blockly.Dart.lists_sort=function(a){var b=$.Blockly.Dart.valueToCode(a,"LIST",$.Blockly.Dart.ORDER_NONE)||"[]",c="1"===a.getFieldValue("DIRECTION")?1:-1;a=a.getFieldValue("TYPE");return[$.Blockly.Dart.provideFunction_("lists_sort","\nList "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(List list, String type, int direction) {\n var compareFuncs = {\n 'NUMERIC': (a, b) => (direction * a.compareTo(b)).toInt(),\n 'TEXT': (a, b) => direction * a.toString().compareTo(b.toString()),\n 'IGNORE_CASE':\n (a, b) => direction *\n a.toString().toLowerCase().compareTo(b.toString().toLowerCase())\n };\n list = new List.from(list);\n var compare = compareFuncs[type];\n list.sort(compare);\n return list;\n}\n")+"("+ +b+', "'+a+'", '+c+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]};$.Blockly.Dart.lists_split=function(a){var b=$.Blockly.Dart.valueToCode(a,"INPUT",$.Blockly.Dart.ORDER_UNARY_POSTFIX),c=$.Blockly.Dart.valueToCode(a,"DELIM",$.Blockly.Dart.ORDER_NONE)||"''";a=a.getFieldValue("MODE");if("SPLIT"===a)b||(b="''"),a="split";else if("JOIN"===a)b||(b="[]"),a="join";else throw Error("Unknown mode: "+a);return[b+"."+a+"("+c+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; $.Blockly.Dart.lists_reverse=function(a){return["new List.from("+($.Blockly.Dart.valueToCode(a,"LIST",$.Blockly.Dart.ORDER_NONE)||"[]")+".reversed)",$.Blockly.Dart.ORDER_UNARY_POSTFIX]};var module$exports$Blockly$Dart$colour={};$.Blockly.Dart.addReservedWords("Math");$.Blockly.Dart.colour_picker=function(a){return[$.Blockly.Dart.quote_(a.getFieldValue("COLOUR")),$.Blockly.Dart.ORDER_ATOMIC]}; -$.Blockly.Dart.colour_random=function(a){$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return[$.Blockly.Dart.provideFunction_("colour_random",["String "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"() {"," String hex = '0123456789abcdef';"," var rnd = new Math.Random();"," return '#${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}'"," '${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}'"," '${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}';","}"])+"()",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; -$.Blockly.Dart.colour_rgb=function(a){var b=$.Blockly.Dart.valueToCode(a,"RED",$.Blockly.Dart.ORDER_NONE)||0,c=$.Blockly.Dart.valueToCode(a,"GREEN",$.Blockly.Dart.ORDER_NONE)||0;a=$.Blockly.Dart.valueToCode(a,"BLUE",$.Blockly.Dart.ORDER_NONE)||0;$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return[$.Blockly.Dart.provideFunction_("colour_rgb",["String "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(num r, num g, num b) {"," num rn = (Math.max(Math.min(r, 100), 0) * 2.55).round();", -" String rs = rn.toInt().toRadixString(16);"," rs = '0$rs';"," rs = rs.substring(rs.length - 2);"," num gn = (Math.max(Math.min(g, 100), 0) * 2.55).round();"," String gs = gn.toInt().toRadixString(16);"," gs = '0$gs';"," gs = gs.substring(gs.length - 2);"," num bn = (Math.max(Math.min(b, 100), 0) * 2.55).round();"," String bs = bn.toInt().toRadixString(16);"," bs = '0$bs';"," bs = bs.substring(bs.length - 2);"," return '#$rs$gs$bs';","}"])+"("+b+", "+c+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; -$.Blockly.Dart.colour_blend=function(a){var b=$.Blockly.Dart.valueToCode(a,"COLOUR1",$.Blockly.Dart.ORDER_NONE)||"'#000000'",c=$.Blockly.Dart.valueToCode(a,"COLOUR2",$.Blockly.Dart.ORDER_NONE)||"'#000000'";a=$.Blockly.Dart.valueToCode(a,"RATIO",$.Blockly.Dart.ORDER_NONE)||.5;$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return[$.Blockly.Dart.provideFunction_("colour_blend",["String "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String c1, String c2, num ratio) {"," ratio = Math.max(Math.min(ratio, 1), 0);", -" int r1 = int.parse('0x${c1.substring(1, 3)}');"," int g1 = int.parse('0x${c1.substring(3, 5)}');"," int b1 = int.parse('0x${c1.substring(5, 7)}');"," int r2 = int.parse('0x${c2.substring(1, 3)}');"," int g2 = int.parse('0x${c2.substring(3, 5)}');"," int b2 = int.parse('0x${c2.substring(5, 7)}');"," num rn = (r1 * (1 - ratio) + r2 * ratio).round();"," String rs = rn.toInt().toRadixString(16);"," num gn = (g1 * (1 - ratio) + g2 * ratio).round();"," String gs = gn.toInt().toRadixString(16);", -" num bn = (b1 * (1 - ratio) + b2 * ratio).round();"," String bs = bn.toInt().toRadixString(16);"," rs = '0$rs';"," rs = rs.substring(rs.length - 2);"," gs = '0$gs';"," gs = gs.substring(gs.length - 2);"," bs = '0$bs';"," bs = bs.substring(bs.length - 2);"," return '#$rs$gs$bs';","}"])+"("+b+", "+c+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]};var module$exports$Blockly$Dart$all={}; - +$.Blockly.Dart.colour_random=function(a){$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return[$.Blockly.Dart.provideFunction_("colour_random","\nString "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"() {\n String hex = '0123456789abcdef';\n var rnd = new Math.Random();\n return '#${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}'\n '${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}'\n '${hex[rnd.nextInt(16)]}${hex[rnd.nextInt(16)]}';\n}\n")+"()",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; +$.Blockly.Dart.colour_rgb=function(a){var b=$.Blockly.Dart.valueToCode(a,"RED",$.Blockly.Dart.ORDER_NONE)||0,c=$.Blockly.Dart.valueToCode(a,"GREEN",$.Blockly.Dart.ORDER_NONE)||0;a=$.Blockly.Dart.valueToCode(a,"BLUE",$.Blockly.Dart.ORDER_NONE)||0;$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return[$.Blockly.Dart.provideFunction_("colour_rgb","\nString "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(num r, num g, num b) {\n num rn = (Math.max(Math.min(r, 100), 0) * 2.55).round();\n String rs = rn.toInt().toRadixString(16);\n rs = '0$rs';\n rs = rs.substring(rs.length - 2);\n num gn = (Math.max(Math.min(g, 100), 0) * 2.55).round();\n String gs = gn.toInt().toRadixString(16);\n gs = '0$gs';\n gs = gs.substring(gs.length - 2);\n num bn = (Math.max(Math.min(b, 100), 0) * 2.55).round();\n String bs = bn.toInt().toRadixString(16);\n bs = '0$bs';\n bs = bs.substring(bs.length - 2);\n return '#$rs$gs$bs';\n}\n")+ +"("+b+", "+c+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]}; +$.Blockly.Dart.colour_blend=function(a){var b=$.Blockly.Dart.valueToCode(a,"COLOUR1",$.Blockly.Dart.ORDER_NONE)||"'#000000'",c=$.Blockly.Dart.valueToCode(a,"COLOUR2",$.Blockly.Dart.ORDER_NONE)||"'#000000'";a=$.Blockly.Dart.valueToCode(a,"RATIO",$.Blockly.Dart.ORDER_NONE)||.5;$.Blockly.Dart.definitions_.import_dart_math="import 'dart:math' as Math;";return[$.Blockly.Dart.provideFunction_("colour_blend","\nString "+$.Blockly.Dart.FUNCTION_NAME_PLACEHOLDER_+"(String c1, String c2, num ratio) {\n ratio = Math.max(Math.min(ratio, 1), 0);\n int r1 = int.parse('0x${c1.substring(1, 3)}');\n int g1 = int.parse('0x${c1.substring(3, 5)}');\n int b1 = int.parse('0x${c1.substring(5, 7)}');\n int r2 = int.parse('0x${c2.substring(1, 3)}');\n int g2 = int.parse('0x${c2.substring(3, 5)}');\n int b2 = int.parse('0x${c2.substring(5, 7)}');\n num rn = (r1 * (1 - ratio) + r2 * ratio).round();\n String rs = rn.toInt().toRadixString(16);\n num gn = (g1 * (1 - ratio) + g2 * ratio).round();\n String gs = gn.toInt().toRadixString(16);\n num bn = (b1 * (1 - ratio) + b2 * ratio).round();\n String bs = bn.toInt().toRadixString(16);\n rs = '0$rs';\n rs = rs.substring(rs.length - 2);\n gs = '0$gs';\n gs = gs.substring(gs.length - 2);\n bs = '0$bs';\n bs = bs.substring(bs.length - 2);\n return '#$rs$gs$bs';\n}\n")+ +"("+b+", "+c+", "+a+")",$.Blockly.Dart.ORDER_UNARY_POSTFIX]};var module$exports$Blockly$Dart$all={}; +$.Blockly.Dart.__namespace__=$; return $.Blockly.Dart; })); diff --git a/dart_compressed.js.map b/dart_compressed.js.map index 44cecb000..1aa63cb27 100644 --- a/dart_compressed.js.map +++ b/dart_compressed.js.map @@ -1 +1 @@ -{"version":3,"sources":["generators/dart.js","generators/dart/variables.js","generators/dart/variables_dynamic.js","generators/dart/text.js","generators/dart/procedures.js","generators/dart/math.js","generators/dart/loops.js","generators/dart/logic.js","generators/dart/lists.js","generators/dart/colour.js","generators/dart/all.js"],"names":["Dart","Generator","addReservedWords","ORDER_ATOMIC","ORDER_UNARY_POSTFIX","ORDER_UNARY_PREFIX","ORDER_MULTIPLICATIVE","ORDER_ADDITIVE","ORDER_SHIFT","ORDER_BITWISE_AND","ORDER_BITWISE_XOR","ORDER_BITWISE_OR","ORDER_RELATIONAL","ORDER_EQUALITY","ORDER_LOGICAL_AND","ORDER_LOGICAL_OR","ORDER_IF_NULL","ORDER_CONDITIONAL","ORDER_CASCADE","ORDER_ASSIGNMENT","ORDER_NONE","isInitialized","init","Dart.init","workspace","Object","getPrototypeOf","call","nameDB_","reset","Names","RESERVED_WORDS_","setVariableMap","getVariableMap","populateVariables","populateProcedures","defvars","devVarList","Variables","allDeveloperVariables","i","length","push","getName","NameType","DEVELOPER_VARIABLE","variables","allUsedVarModels","getId","VARIABLE","definitions_","join","finish","Dart.finish","code","prefixLines","INDENT","imports","definitions","name","def","match","replace","scrubNakedValue","Dart.scrubNakedValue","line","quote_","Dart.quote_","string","multiline_quote_","Dart.multiline_quote_","split","map","lines","scrub_","Dart.scrub_","block","opt_thisOnly","commentCode","outputConnection","targetConnection","comment","getCommentText","stringUtils","wrap","COMMENT_WRAP","getProcedureDef","inputList","type","inputTypes","VALUE","childBlock","connection","targetBlock","allNestedComments","nextBlock","nextConnection","nextCode","blockToCode","getAdjusted","Dart.getAdjusted","atId","opt_delta","opt_negate","opt_order","delta","order","options","oneBasedIndex","defaultAtIndex","outerOrder","innerOrder","at","valueToCode","isNumber","parseInt","Math","floor","exports","getFieldValue","argument0","varName","indexOf","itemCount_","elements","Array","value","operator","substring","where","text","textOrder","provideFunction_","functionName","FUNCTION_NAME_PLACEHOLDER_","Error","where1","where2","requiresLengthCall","at1","at2","OPERATORS","getField","msg","sub","from","to","funcName","PROCEDURE","xfix1","STATEMENT_PREFIX","injectId","STATEMENT_SUFFIX","loopTrap","INFINITE_LOOP_TRAP","branch","statementToCode","returnValue","xfix2","returnType","args","getVars","tuple","hasReturnValue_","Number","Infinity","argument1","arg","CONSTANTS","constant","number_to_check","dropdown_property","divisor","func","list","argument2","repeats","String","addLoopTrap","loopVar","getDistinctName","endVar","until","variable0","increment","up","step","abs","startVar","incVar","xfix","loop","getSurroundLoop","suppressPrefixSuffix","n","conditionCode","branchCode","getInput","defaultArgument","value_if","value_then","value_else","element","item","cacheList","listVar","mode","listOrder","xVar","direction","sortFunctionName","input","delimiter","red","green","blue","c1","c2","ratio"],"mappings":"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","file":"dart_compressed.js","sourceRoot":"./"} \ No newline at end of file +{"version":3,"sources":["generators/dart.js","generators/dart/variables.js","generators/dart/variables_dynamic.js","generators/dart/text.js","generators/dart/procedures.js","generators/dart/math.js","generators/dart/loops.js","generators/dart/logic.js","generators/dart/lists.js","generators/dart/colour.js","generators/dart/all.js"],"names":["Dart","Generator","addReservedWords","ORDER_ATOMIC","ORDER_UNARY_POSTFIX","ORDER_UNARY_PREFIX","ORDER_MULTIPLICATIVE","ORDER_ADDITIVE","ORDER_SHIFT","ORDER_BITWISE_AND","ORDER_BITWISE_XOR","ORDER_BITWISE_OR","ORDER_RELATIONAL","ORDER_EQUALITY","ORDER_LOGICAL_AND","ORDER_LOGICAL_OR","ORDER_IF_NULL","ORDER_CONDITIONAL","ORDER_CASCADE","ORDER_ASSIGNMENT","ORDER_NONE","isInitialized","init","Dart.init","workspace","Object","getPrototypeOf","call","nameDB_","reset","Names","RESERVED_WORDS_","setVariableMap","getVariableMap","populateVariables","populateProcedures","defvars","devVarList","Variables","allDeveloperVariables","i","length","push","getName","NameType","DEVELOPER_VARIABLE","variables","allUsedVarModels","getId","VARIABLE","definitions_","join","finish","Dart.finish","code","prefixLines","INDENT","imports","definitions","name","def","match","replace","scrubNakedValue","Dart.scrubNakedValue","line","quote_","Dart.quote_","string","multiline_quote_","Dart.multiline_quote_","split","map","lines","scrub_","Dart.scrub_","block","opt_thisOnly","commentCode","outputConnection","targetConnection","comment","getCommentText","stringUtils","wrap","COMMENT_WRAP","getProcedureDef","inputList","type","inputTypes","VALUE","childBlock","connection","targetBlock","allNestedComments","nextBlock","nextConnection","nextCode","blockToCode","getAdjusted","Dart.getAdjusted","atId","opt_delta","opt_negate","opt_order","delta","order","options","oneBasedIndex","defaultAtIndex","outerOrder","innerOrder","at","valueToCode","isNumber","parseInt","Math","floor","exports","getFieldValue","argument0","varName","indexOf","itemCount_","elements","Array","value","operator","substring","where","text","textOrder","provideFunction_","functionName","FUNCTION_NAME_PLACEHOLDER_","Error","where1","where2","requiresLengthCall","at1","at2","OPERATORS","getField","msg","sub","from","to","funcName","PROCEDURE","xfix1","STATEMENT_PREFIX","injectId","STATEMENT_SUFFIX","loopTrap","INFINITE_LOOP_TRAP","branch","statementToCode","returnValue","xfix2","returnType","args","getVars","tuple","hasReturnValue_","Number","Infinity","argument1","arg","CONSTANTS","constant","PROPERTIES","dropdownProperty","suffix","inputOrder","outputOrder","numberToCheck","divisor","func","list","argument2","repeats","String","addLoopTrap","loopVar","getDistinctName","endVar","until","variable0","increment","up","step","abs","startVar","incVar","xfix","loop","getSurroundLoop","suppressPrefixSuffix","n","conditionCode","branchCode","getInput","defaultArgument","value_if","value_then","value_else","element","item","cacheList","listVar","mode","listOrder","xVar","direction","sortFunctionName","input","delimiter","red","green","blue","c1","c2","ratio"],"mappings":"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","file":"dart_compressed.js","sourceRoot":"./"} \ No newline at end of file diff --git a/javascript_compressed.js b/javascript_compressed.js index 6d8480401..1bb40e813 100644 --- a/javascript_compressed.js +++ b/javascript_compressed.js @@ -7,10 +7,11 @@ } else if (typeof exports === 'object') { // Node.js module.exports = factory(require("./blockly_compressed.js")); } else { // Browser - root.Blockly.JavaScript = factory(root.Blockly); + var factoryExports = factory(root.Blockly); + root.Blockly.JavaScript = factoryExports; } -}(this, function(Blockly) { -const $=Blockly.internal_; +}(this, function(__parent__) { +var $=__parent__.__namespace__; var module$contents$Blockly$JavaScript_JavaScript=new $.module$exports$Blockly$Generator.Generator("JavaScript");module$contents$Blockly$JavaScript_JavaScript.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($.module$exports$Blockly$utils$global.globalThis).join(",")); module$contents$Blockly$JavaScript_JavaScript.ORDER_ATOMIC=0;module$contents$Blockly$JavaScript_JavaScript.ORDER_NEW=1.1;module$contents$Blockly$JavaScript_JavaScript.ORDER_MEMBER=1.2;module$contents$Blockly$JavaScript_JavaScript.ORDER_FUNCTION_CALL=2;module$contents$Blockly$JavaScript_JavaScript.ORDER_INCREMENT=3;module$contents$Blockly$JavaScript_JavaScript.ORDER_DECREMENT=3;module$contents$Blockly$JavaScript_JavaScript.ORDER_BITWISE_NOT=4.1; module$contents$Blockly$JavaScript_JavaScript.ORDER_UNARY_PLUS=4.2;module$contents$Blockly$JavaScript_JavaScript.ORDER_UNARY_NEGATION=4.3;module$contents$Blockly$JavaScript_JavaScript.ORDER_LOGICAL_NOT=4.4;module$contents$Blockly$JavaScript_JavaScript.ORDER_TYPEOF=4.5;module$contents$Blockly$JavaScript_JavaScript.ORDER_VOID=4.6;module$contents$Blockly$JavaScript_JavaScript.ORDER_DELETE=4.7;module$contents$Blockly$JavaScript_JavaScript.ORDER_AWAIT=4.8; @@ -36,19 +37,19 @@ $.Blockly.JavaScript.text_append=function(a){var b=$.Blockly.JavaScript.nameDB_. $.Blockly.JavaScript.text_isEmpty=function(a){return["!"+($.Blockly.JavaScript.valueToCode(a,"VALUE",$.Blockly.JavaScript.ORDER_MEMBER)||"''")+".length",$.Blockly.JavaScript.ORDER_LOGICAL_NOT]}; $.Blockly.JavaScript.text_indexOf=function(a){var b="FIRST"===a.getFieldValue("END")?"indexOf":"lastIndexOf",c=$.Blockly.JavaScript.valueToCode(a,"FIND",$.Blockly.JavaScript.ORDER_NONE)||"''";b=($.Blockly.JavaScript.valueToCode(a,"VALUE",$.Blockly.JavaScript.ORDER_MEMBER)||"''")+"."+b+"("+c+")";return a.workspace.options.oneBasedIndex?[b+" + 1",$.Blockly.JavaScript.ORDER_ADDITION]:[b,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; $.Blockly.JavaScript.text_charAt=function(a){var b=a.getFieldValue("WHERE")||"FROM_START",c=$.Blockly.JavaScript.valueToCode(a,"VALUE","RANDOM"===b?$.Blockly.JavaScript.ORDER_NONE:$.Blockly.JavaScript.ORDER_MEMBER)||"''";switch(b){case "FIRST":return[c+".charAt(0)",$.Blockly.JavaScript.ORDER_FUNCTION_CALL];case "LAST":return[c+".slice(-1)",$.Blockly.JavaScript.ORDER_FUNCTION_CALL];case "FROM_START":return a=$.Blockly.JavaScript.getAdjusted(a,"AT"),[c+".charAt("+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]; -case "FROM_END":return a=$.Blockly.JavaScript.getAdjusted(a,"AT",1,!0),[c+".slice("+a+").charAt(0)",$.Blockly.JavaScript.ORDER_FUNCTION_CALL];case "RANDOM":return[$.Blockly.JavaScript.provideFunction_("textRandomLetter",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(text) {"," var x = Math.floor(Math.random() * text.length);"," return text[x];","}"])+"("+c+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}throw Error("Unhandled option (text_charAt).");}; +case "FROM_END":return a=$.Blockly.JavaScript.getAdjusted(a,"AT",1,!0),[c+".slice("+a+").charAt(0)",$.Blockly.JavaScript.ORDER_FUNCTION_CALL];case "RANDOM":return[$.Blockly.JavaScript.provideFunction_("textRandomLetter","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(text) {\n var x = Math.floor(Math.random() * text.length);\n return text[x];\n}\n")+"("+c+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}throw Error("Unhandled option (text_charAt).");}; $.Blockly.JavaScript.text_getSubstring=function(a){var b=a.getFieldValue("WHERE1"),c=a.getFieldValue("WHERE2"),d="FROM_END"!==b&&"LAST"!==b&&"FROM_END"!==c&&"LAST"!==c,e=$.Blockly.JavaScript.valueToCode(a,"STRING",d?$.Blockly.JavaScript.ORDER_MEMBER:$.Blockly.JavaScript.ORDER_NONE)||"''";if("FIRST"===b&&"LAST"===c)return[e,$.Blockly.JavaScript.ORDER_NONE];if(e.match(/^'?\w+'?$/)||d){switch(b){case "FROM_START":b=$.Blockly.JavaScript.getAdjusted(a,"AT1");break;case "FROM_END":b=$.Blockly.JavaScript.getAdjusted(a, "AT1",1,!1,$.Blockly.JavaScript.ORDER_SUBTRACTION);b=e+".length - "+b;break;case "FIRST":b="0";break;default:throw Error("Unhandled option (text_getSubstring).");}switch(c){case "FROM_START":c=$.Blockly.JavaScript.getAdjusted(a,"AT2",1);break;case "FROM_END":c=$.Blockly.JavaScript.getAdjusted(a,"AT2",0,!1,$.Blockly.JavaScript.ORDER_SUBTRACTION);c=e+".length - "+c;break;case "LAST":c=e+".length";break;default:throw Error("Unhandled option (text_getSubstring).");}e=e+".slice("+b+", "+c+")"}else{d=$.Blockly.JavaScript.getAdjusted(a, -"AT1");a=$.Blockly.JavaScript.getAdjusted(a,"AT2");var f={FIRST:"First",LAST:"Last",FROM_START:"FromStart",FROM_END:"FromEnd"};e=$.Blockly.JavaScript.provideFunction_("subsequence"+f[b]+f[c],["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(sequence"+("FROM_END"===b||"FROM_START"===b?", at1":"")+("FROM_END"===c||"FROM_START"===c?", at2":"")+") {"," var start = "+module$contents$Blockly$JavaScript$texts_getSubstringIndex("sequence",b,"at1")+";"," var end = "+module$contents$Blockly$JavaScript$texts_getSubstringIndex("sequence", -c,"at2")+" + 1;"," return sequence.slice(start, end);","}"])+"("+e+("FROM_END"===b||"FROM_START"===b?", "+d:"")+("FROM_END"===c||"FROM_START"===c?", "+a:"")+")"}return[e,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; -$.Blockly.JavaScript.text_changeCase=function(a){var b={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=$.Blockly.JavaScript.valueToCode(a,"TEXT",b?$.Blockly.JavaScript.ORDER_MEMBER:$.Blockly.JavaScript.ORDER_NONE)||"''";return[b?a+b:$.Blockly.JavaScript.provideFunction_("textToTitleCase",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(str) {"," return str.replace(/\\S+/g,"," function(txt) {return txt[0].toUpperCase() + txt.substring(1).toLowerCase();});", -"}"])+"("+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};$.Blockly.JavaScript.text_trim=function(a){var b={LEFT:".replace(/^[\\s\\xa0]+/, '')",RIGHT:".replace(/[\\s\\xa0]+$/, '')",BOTH:".trim()"}[a.getFieldValue("MODE")];return[($.Blockly.JavaScript.valueToCode(a,"TEXT",$.Blockly.JavaScript.ORDER_MEMBER)||"''")+b,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; +"AT1");a=$.Blockly.JavaScript.getAdjusted(a,"AT2");var f={FIRST:"First",LAST:"Last",FROM_START:"FromStart",FROM_END:"FromEnd"};e=$.Blockly.JavaScript.provideFunction_("subsequence"+f[b]+f[c],"\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(sequence"+("FROM_END"===b||"FROM_START"===b?", at1":"")+("FROM_END"===c||"FROM_START"===c?", at2":"")+") {\n var start = "+module$contents$Blockly$JavaScript$texts_getSubstringIndex("sequence",b,"at1")+";\n var end = "+module$contents$Blockly$JavaScript$texts_getSubstringIndex("sequence", +c,"at2")+" + 1;\n return sequence.slice(start, end);\n}\n")+"("+e+("FROM_END"===b||"FROM_START"===b?", "+d:"")+("FROM_END"===c||"FROM_START"===c?", "+a:"")+")"}return[e,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; +$.Blockly.JavaScript.text_changeCase=function(a){var b={UPPERCASE:".toUpperCase()",LOWERCASE:".toLowerCase()",TITLECASE:null}[a.getFieldValue("CASE")];a=$.Blockly.JavaScript.valueToCode(a,"TEXT",b?$.Blockly.JavaScript.ORDER_MEMBER:$.Blockly.JavaScript.ORDER_NONE)||"''";return[b?a+b:$.Blockly.JavaScript.provideFunction_("textToTitleCase","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(str) {\n return str.replace(/\\S+/g,\n function(txt) {return txt[0].toUpperCase() + txt.substring(1).toLowerCase();});\n}\n")+ +"("+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};$.Blockly.JavaScript.text_trim=function(a){var b={LEFT:".replace(/^[\\s\\xa0]+/, '')",RIGHT:".replace(/[\\s\\xa0]+$/, '')",BOTH:".trim()"}[a.getFieldValue("MODE")];return[($.Blockly.JavaScript.valueToCode(a,"TEXT",$.Blockly.JavaScript.ORDER_MEMBER)||"''")+b,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; $.Blockly.JavaScript.text_print=function(a){return"window.alert("+($.Blockly.JavaScript.valueToCode(a,"TEXT",$.Blockly.JavaScript.ORDER_NONE)||"''")+");\n"};$.Blockly.JavaScript.text_prompt_ext=function(a){var b="window.prompt("+(a.getField("TEXT")?$.Blockly.JavaScript.quote_(a.getFieldValue("TEXT")):$.Blockly.JavaScript.valueToCode(a,"TEXT",$.Blockly.JavaScript.ORDER_NONE)||"''")+")";"NUMBER"===a.getFieldValue("TYPE")&&(b="Number("+b+")");return[b,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; $.Blockly.JavaScript.text_prompt=$.Blockly.JavaScript.text_prompt_ext; -$.Blockly.JavaScript.text_count=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"TEXT",$.Blockly.JavaScript.ORDER_NONE)||"''";a=$.Blockly.JavaScript.valueToCode(a,"SUB",$.Blockly.JavaScript.ORDER_NONE)||"''";return[$.Blockly.JavaScript.provideFunction_("textCount",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(haystack, needle) {"," if (needle.length === 0) {"," return haystack.length + 1;"," } else {"," return haystack.split(needle).length - 1;"," }","}"])+"("+b+", "+ -a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; -$.Blockly.JavaScript.text_replace=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"TEXT",$.Blockly.JavaScript.ORDER_NONE)||"''",c=$.Blockly.JavaScript.valueToCode(a,"FROM",$.Blockly.JavaScript.ORDER_NONE)||"''";a=$.Blockly.JavaScript.valueToCode(a,"TO",$.Blockly.JavaScript.ORDER_NONE)||"''";return[$.Blockly.JavaScript.provideFunction_("textReplace",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(haystack, needle, replacement) {",' needle = needle.replace(/([-()\\[\\]{}+?*.$\\^|,:# 0";break;case "NEGATIVE":d=b+" < 0";break;case "DIVISIBLE_BY":a=$.Blockly.JavaScript.valueToCode(a,"DIVISOR",$.Blockly.JavaScript.ORDER_MODULUS)||"0",d=b+" % "+a+" === 0"}return[d,$.Blockly.JavaScript.ORDER_EQUALITY]}; -$.Blockly.JavaScript.math_change=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"DELTA",$.Blockly.JavaScript.ORDER_ADDITION)||"0";a=$.Blockly.JavaScript.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE);return a+" = (typeof "+a+" === 'number' ? "+a+" : 0) + "+b+";\n"};$.Blockly.JavaScript.math_round=$.Blockly.JavaScript.math_single;$.Blockly.JavaScript.math_trig=$.Blockly.JavaScript.math_single; +$.Blockly.JavaScript.math_number_property=function(a){var b={EVEN:[" % 2 === 0",$.Blockly.JavaScript.ORDER_MODULUS,$.Blockly.JavaScript.ORDER_EQUALITY],ODD:[" % 2 === 1",$.Blockly.JavaScript.ORDER_MODULUS,$.Blockly.JavaScript.ORDER_EQUALITY],WHOLE:[" % 1 === 0",$.Blockly.JavaScript.ORDER_MODULUS,$.Blockly.JavaScript.ORDER_EQUALITY],POSITIVE:[" > 0",$.Blockly.JavaScript.ORDER_RELATIONAL,$.Blockly.JavaScript.ORDER_RELATIONAL],NEGATIVE:[" < 0",$.Blockly.JavaScript.ORDER_RELATIONAL,$.Blockly.JavaScript.ORDER_RELATIONAL], +DIVISIBLE_BY:[null,$.Blockly.JavaScript.ORDER_MODULUS,$.Blockly.JavaScript.ORDER_EQUALITY],PRIME:[null,$.Blockly.JavaScript.ORDER_NONE,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]},c=a.getFieldValue("PROPERTY");b=$.$jscomp.makeIterator(b[c]);var d=b.next().value,e=b.next().value;b=b.next().value;e=$.Blockly.JavaScript.valueToCode(a,"NUMBER_TO_CHECK",e)||"0";"PRIME"===c?a=$.Blockly.JavaScript.provideFunction_("mathIsPrime","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(n) {\n // https://en.wikipedia.org/wiki/Primality_test#Naive_methods\n if (n == 2 || n == 3) {\n return true;\n }\n // False if n is NaN, negative, is 1, or not whole.\n // And false if n is divisible by 2 or 3.\n if (isNaN(n) || n <= 1 || n % 1 !== 0 || n % 2 === 0 || n % 3 === 0) {\n return false;\n }\n // Check all the numbers of form 6k +/- 1, up to sqrt(n).\n for (var x = 6; x <= Math.sqrt(n) + 1; x += 6) {\n if (n % (x - 1) === 0 || n % (x + 1) === 0) {\n return false;\n }\n }\n return true;\n}\n")+ +"("+e+")":"DIVISIBLE_BY"===c?(a=$.Blockly.JavaScript.valueToCode(a,"DIVISOR",$.Blockly.JavaScript.ORDER_MODULUS)||"0",a=e+" % "+a+" === 0"):a=e+d;return[a,b]};$.Blockly.JavaScript.math_change=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"DELTA",$.Blockly.JavaScript.ORDER_ADDITION)||"0";a=$.Blockly.JavaScript.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE);return a+" = (typeof "+a+" === 'number' ? "+a+" : 0) + "+b+";\n"}; +$.Blockly.JavaScript.math_round=$.Blockly.JavaScript.math_single;$.Blockly.JavaScript.math_trig=$.Blockly.JavaScript.math_single; $.Blockly.JavaScript.math_on_list=function(a){var b=a.getFieldValue("OP");switch(b){case "SUM":a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_MEMBER)||"[]";a+=".reduce(function(x, y) {return x + y;})";break;case "MIN":a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a="Math.min.apply(null, "+a+")";break;case "MAX":a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a="Math.max.apply(null, "+a+")";break;case "AVERAGE":b= -$.Blockly.JavaScript.provideFunction_("mathMean",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(myList) {"," return myList.reduce(function(x, y) {return x + y;}) / myList.length;","}"]);a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "MEDIAN":b=$.Blockly.JavaScript.provideFunction_("mathMedian",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(myList) {"," var localList = myList.filter(function (x) {return typeof x === 'number';});", -" if (!localList.length) return null;"," localList.sort(function(a, b) {return b - a;});"," if (localList.length % 2 === 0) {"," return (localList[localList.length / 2 - 1] + localList[localList.length / 2]) / 2;"," } else {"," return localList[(localList.length - 1) / 2];"," }","}"]);a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "MODE":b=$.Blockly.JavaScript.provideFunction_("mathModes",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+ -"(values) {"," var modes = [];"," var counts = [];"," var maxCount = 0;"," for (var i = 0; i < values.length; i++) {"," var value = values[i];"," var found = false;"," var thisCount;"," for (var j = 0; j < counts.length; j++) {"," if (counts[j][0] === value) {"," thisCount = ++counts[j][1];"," found = true;"," break;"," }"," }"," if (!found) {"," counts.push([value, 1]);"," thisCount = 1;"," }"," maxCount = Math.max(thisCount, maxCount);", -" }"," for (var j = 0; j < counts.length; j++) {"," if (counts[j][1] === maxCount) {"," modes.push(counts[j][0]);"," }"," }"," return modes;","}"]);a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "STD_DEV":b=$.Blockly.JavaScript.provideFunction_("mathStandardDeviation",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(numbers) {"," var n = numbers.length;"," if (!n) return null;"," var mean = numbers.reduce(function(x, y) {return x + y;}) / n;", -" var variance = 0;"," for (var j = 0; j < n; j++) {"," variance += Math.pow(numbers[j] - mean, 2);"," }"," variance = variance / n;"," return Math.sqrt(variance);","}"]);a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "RANDOM":b=$.Blockly.JavaScript.provideFunction_("mathRandomList",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(list) {"," var x = Math.floor(Math.random() * list.length);"," return list[x];","}"]); -a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;default:throw Error("Unknown operator: "+b);}return[a,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};$.Blockly.JavaScript.math_modulo=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"DIVIDEND",$.Blockly.JavaScript.ORDER_MODULUS)||"0";a=$.Blockly.JavaScript.valueToCode(a,"DIVISOR",$.Blockly.JavaScript.ORDER_MODULUS)||"0";return[b+" % "+a,$.Blockly.JavaScript.ORDER_MODULUS]}; +$.Blockly.JavaScript.provideFunction_("mathMean","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(myList) {\n return myList.reduce(function(x, y) {return x + y;}) / myList.length;\n}\n");a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "MEDIAN":b=$.Blockly.JavaScript.provideFunction_("mathMedian","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(myList) {\n var localList = myList.filter(function (x) {return typeof x === 'number';});\n if (!localList.length) return null;\n localList.sort(function(a, b) {return b - a;});\n if (localList.length % 2 === 0) {\n return (localList[localList.length / 2 - 1] + localList[localList.length / 2]) / 2;\n } else {\n return localList[(localList.length - 1) / 2];\n }\n}\n"); +a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "MODE":b=$.Blockly.JavaScript.provideFunction_("mathModes","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(values) {\n var modes = [];\n var counts = [];\n var maxCount = 0;\n for (var i = 0; i < values.length; i++) {\n var value = values[i];\n var found = false;\n var thisCount;\n for (var j = 0; j < counts.length; j++) {\n if (counts[j][0] === value) {\n thisCount = ++counts[j][1];\n found = true;\n break;\n }\n }\n if (!found) {\n counts.push([value, 1]);\n thisCount = 1;\n }\n maxCount = Math.max(thisCount, maxCount);\n }\n for (var j = 0; j < counts.length; j++) {\n if (counts[j][1] === maxCount) {\n modes.push(counts[j][0]);\n }\n }\n return modes;\n}\n"); +a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "STD_DEV":b=$.Blockly.JavaScript.provideFunction_("mathStandardDeviation","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(numbers) {\n var n = numbers.length;\n if (!n) return null;\n var mean = numbers.reduce(function(x, y) {return x + y;}) / n;\n var variance = 0;\n for (var j = 0; j < n; j++) {\n variance += Math.pow(numbers[j] - mean, 2);\n }\n variance = variance / n;\n return Math.sqrt(variance);\n}\n"); +a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "RANDOM":b=$.Blockly.JavaScript.provideFunction_("mathRandomList","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(list) {\n var x = Math.floor(Math.random() * list.length);\n return list[x];\n}\n");a=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_NONE)||"[]";a=b+"("+a+")";break;default:throw Error("Unknown operator: "+b);}return[a,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; +$.Blockly.JavaScript.math_modulo=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"DIVIDEND",$.Blockly.JavaScript.ORDER_MODULUS)||"0";a=$.Blockly.JavaScript.valueToCode(a,"DIVISOR",$.Blockly.JavaScript.ORDER_MODULUS)||"0";return[b+" % "+a,$.Blockly.JavaScript.ORDER_MODULUS]}; $.Blockly.JavaScript.math_constrain=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"VALUE",$.Blockly.JavaScript.ORDER_NONE)||"0",c=$.Blockly.JavaScript.valueToCode(a,"LOW",$.Blockly.JavaScript.ORDER_NONE)||"0";a=$.Blockly.JavaScript.valueToCode(a,"HIGH",$.Blockly.JavaScript.ORDER_NONE)||"Infinity";return["Math.min(Math.max("+b+", "+c+"), "+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; -$.Blockly.JavaScript.math_random_int=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"FROM",$.Blockly.JavaScript.ORDER_NONE)||"0";a=$.Blockly.JavaScript.valueToCode(a,"TO",$.Blockly.JavaScript.ORDER_NONE)||"0";return[$.Blockly.JavaScript.provideFunction_("mathRandomInt",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(a, b) {"," if (a > b) {"," // Swap a and b to ensure a is smaller."," var c = a;"," a = b;"," b = c;"," }"," return Math.floor(Math.random() * (b - a + 1) + a);", -"}"])+"("+b+", "+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};$.Blockly.JavaScript.math_random_float=function(a){return["Math.random()",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};$.Blockly.JavaScript.math_atan2=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"X",$.Blockly.JavaScript.ORDER_NONE)||"0";return["Math.atan2("+($.Blockly.JavaScript.valueToCode(a,"Y",$.Blockly.JavaScript.ORDER_NONE)||"0")+", "+b+") / Math.PI * 180",$.Blockly.JavaScript.ORDER_DIVISION]};var module$exports$Blockly$JavaScript$loops={}; +$.Blockly.JavaScript.math_random_int=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"FROM",$.Blockly.JavaScript.ORDER_NONE)||"0";a=$.Blockly.JavaScript.valueToCode(a,"TO",$.Blockly.JavaScript.ORDER_NONE)||"0";return[$.Blockly.JavaScript.provideFunction_("mathRandomInt","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(a, b) {\n if (a > b) {\n // Swap a and b to ensure a is smaller.\n var c = a;\n a = b;\n b = c;\n }\n return Math.floor(Math.random() * (b - a + 1) + a);\n}\n")+ +"("+b+", "+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};$.Blockly.JavaScript.math_random_float=function(a){return["Math.random()",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};$.Blockly.JavaScript.math_atan2=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"X",$.Blockly.JavaScript.ORDER_NONE)||"0";return["Math.atan2("+($.Blockly.JavaScript.valueToCode(a,"Y",$.Blockly.JavaScript.ORDER_NONE)||"0")+", "+b+") / Math.PI * 180",$.Blockly.JavaScript.ORDER_DIVISION]};var module$exports$Blockly$JavaScript$loops={}; $.Blockly.JavaScript.controls_repeat_ext=function(a){var b=a.getField("TIMES")?String(Number(a.getFieldValue("TIMES"))):$.Blockly.JavaScript.valueToCode(a,"TIMES",$.Blockly.JavaScript.ORDER_ASSIGNMENT)||"0";var c=$.Blockly.JavaScript.statementToCode(a,"DO");c=$.Blockly.JavaScript.addLoopTrap(c,a);a="";var d=$.Blockly.JavaScript.nameDB_.getDistinctName("count",$.module$exports$Blockly$Names.NameType.VARIABLE),e=b;b.match(/^\w+$/)||(0,$.module$exports$Blockly$utils$string.isNumber)(b)||(e=$.Blockly.JavaScript.nameDB_.getDistinctName("repeat_end", $.module$exports$Blockly$Names.NameType.VARIABLE),a+="var "+e+" = "+b+";\n");return a+("for (var "+d+" = 0; "+d+" < "+e+"; "+d+"++) {\n"+c+"}\n")};$.Blockly.JavaScript.controls_repeat=$.Blockly.JavaScript.controls_repeat_ext; $.Blockly.JavaScript.controls_whileUntil=function(a){var b="UNTIL"===a.getFieldValue("MODE"),c=$.Blockly.JavaScript.valueToCode(a,"BOOL",b?$.Blockly.JavaScript.ORDER_LOGICAL_NOT:$.Blockly.JavaScript.ORDER_NONE)||"false",d=$.Blockly.JavaScript.statementToCode(a,"DO");d=$.Blockly.JavaScript.addLoopTrap(d,a);b&&(c="!"+c);return"while ("+c+") {\n"+d+"}\n"}; @@ -91,31 +91,29 @@ $.Blockly.JavaScript.logic_compare=function(a){var b={EQ:"==",NEQ:"!=",LT:"<",LT $.Blockly.JavaScript.logic_operation=function(a){var b="AND"===a.getFieldValue("OP")?"&&":"||",c="&&"===b?$.Blockly.JavaScript.ORDER_LOGICAL_AND:$.Blockly.JavaScript.ORDER_LOGICAL_OR,d=$.Blockly.JavaScript.valueToCode(a,"A",c);a=$.Blockly.JavaScript.valueToCode(a,"B",c);if(d||a){var e="&&"===b?"true":"false";d||(d=e);a||(a=e)}else a=d="false";return[d+" "+b+" "+a,c]}; $.Blockly.JavaScript.logic_negate=function(a){var b=$.Blockly.JavaScript.ORDER_LOGICAL_NOT;return["!"+($.Blockly.JavaScript.valueToCode(a,"BOOL",b)||"true"),b]};$.Blockly.JavaScript.logic_boolean=function(a){return["TRUE"===a.getFieldValue("BOOL")?"true":"false",$.Blockly.JavaScript.ORDER_ATOMIC]};$.Blockly.JavaScript.logic_null=function(a){return["null",$.Blockly.JavaScript.ORDER_ATOMIC]}; $.Blockly.JavaScript.logic_ternary=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"IF",$.Blockly.JavaScript.ORDER_CONDITIONAL)||"false",c=$.Blockly.JavaScript.valueToCode(a,"THEN",$.Blockly.JavaScript.ORDER_CONDITIONAL)||"null";a=$.Blockly.JavaScript.valueToCode(a,"ELSE",$.Blockly.JavaScript.ORDER_CONDITIONAL)||"null";return[b+" ? "+c+" : "+a,$.Blockly.JavaScript.ORDER_CONDITIONAL]};var module$exports$Blockly$JavaScript$lists={};$.Blockly.JavaScript.lists_create_empty=function(a){return["[]",$.Blockly.JavaScript.ORDER_ATOMIC]};$.Blockly.JavaScript.lists_create_with=function(a){for(var b=Array(a.itemCount_),c=0;c b.toString() ? 1 : -1; },", -' "IGNORE_CASE": function(a, b) {'," return a.toString().toLowerCase() > b.toString().toLowerCase() ? 1 : -1; },"," };"," var compare = compareFuncs[type];"," return function(a, b) { return compare(a, b) * direction; }","}"]);return[b+".slice().sort("+d+'("'+a+'", '+c+"))",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; -$.Blockly.JavaScript.lists_split=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"INPUT",$.Blockly.JavaScript.ORDER_MEMBER),c=$.Blockly.JavaScript.valueToCode(a,"DELIM",$.Blockly.JavaScript.ORDER_NONE)||"''";a=a.getFieldValue("MODE");if("SPLIT"===a)b||(b="''"),a="split";else if("JOIN"===a)b||(b="[]"),a="join";else throw Error("Unknown mode: "+a);return[b+"."+a+"("+c+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; -$.Blockly.JavaScript.lists_reverse=function(a){return[($.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_FUNCTION_CALL)||"[]")+".slice().reverse()",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};var module$exports$Blockly$JavaScript$colour={};$.Blockly.JavaScript.colour_picker=function(a){return[$.Blockly.JavaScript.quote_(a.getFieldValue("COLOUR")),$.Blockly.JavaScript.ORDER_ATOMIC]};$.Blockly.JavaScript.colour_random=function(a){return[$.Blockly.JavaScript.provideFunction_("colourRandom",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"() {"," var num = Math.floor(Math.random() * Math.pow(2, 24));"," return '#' + ('00000' + num.toString(16)).substr(-6);","}"])+"()",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; -$.Blockly.JavaScript.colour_rgb=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"RED",$.Blockly.JavaScript.ORDER_NONE)||0,c=$.Blockly.JavaScript.valueToCode(a,"GREEN",$.Blockly.JavaScript.ORDER_NONE)||0;a=$.Blockly.JavaScript.valueToCode(a,"BLUE",$.Blockly.JavaScript.ORDER_NONE)||0;return[$.Blockly.JavaScript.provideFunction_("colourRgb",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(r, g, b) {"," r = Math.max(Math.min(Number(r), 100), 0) * 2.55;"," g = Math.max(Math.min(Number(g), 100), 0) * 2.55;", -" b = Math.max(Math.min(Number(b), 100), 0) * 2.55;"," r = ('0' + (Math.round(r) || 0).toString(16)).slice(-2);"," g = ('0' + (Math.round(g) || 0).toString(16)).slice(-2);"," b = ('0' + (Math.round(b) || 0).toString(16)).slice(-2);"," return '#' + r + g + b;","}"])+"("+b+", "+c+", "+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; -$.Blockly.JavaScript.colour_blend=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"COLOUR1",$.Blockly.JavaScript.ORDER_NONE)||"'#000000'",c=$.Blockly.JavaScript.valueToCode(a,"COLOUR2",$.Blockly.JavaScript.ORDER_NONE)||"'#000000'";a=$.Blockly.JavaScript.valueToCode(a,"RATIO",$.Blockly.JavaScript.ORDER_NONE)||.5;return[$.Blockly.JavaScript.provideFunction_("colourBlend",["function "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(c1, c2, ratio) {"," ratio = Math.max(Math.min(Number(ratio), 1), 0);", -" var r1 = parseInt(c1.substring(1, 3), 16);"," var g1 = parseInt(c1.substring(3, 5), 16);"," var b1 = parseInt(c1.substring(5, 7), 16);"," var r2 = parseInt(c2.substring(1, 3), 16);"," var g2 = parseInt(c2.substring(3, 5), 16);"," var b2 = parseInt(c2.substring(5, 7), 16);"," var r = Math.round(r1 * (1 - ratio) + r2 * ratio);"," var g = Math.round(g1 * (1 - ratio) + g2 * ratio);"," var b = Math.round(b1 * (1 - ratio) + b2 * ratio);"," r = ('0' + (r || 0).toString(16)).slice(-2);"," g = ('0' + (g || 0).toString(16)).slice(-2);", -" b = ('0' + (b || 0).toString(16)).slice(-2);"," return '#' + r + g + b;","}"])+"("+b+", "+c+", "+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};var module$exports$Blockly$JavaScript$all={}; - +"AT2");var f={FIRST:"First",LAST:"Last",FROM_START:"FromStart",FROM_END:"FromEnd"};b=$.Blockly.JavaScript.provideFunction_("subsequence"+f[c]+f[d],"\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(sequence"+("FROM_END"===c||"FROM_START"===c?", at1":"")+("FROM_END"===d||"FROM_START"===d?", at2":"")+") {\n var start = "+module$contents$Blockly$JavaScript$lists_getSubstringIndex("sequence",c,"at1")+";\n var end = "+module$contents$Blockly$JavaScript$lists_getSubstringIndex("sequence", +d,"at2")+" + 1;\n return sequence.slice(start, end);\n}\n")+"("+b+("FROM_END"===c||"FROM_START"===c?", "+e:"")+("FROM_END"===d||"FROM_START"===d?", "+a:"")+")"}return[b,$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; +$.Blockly.JavaScript.lists_sort=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_FUNCTION_CALL)||"[]",c="1"===a.getFieldValue("DIRECTION")?1:-1;a=a.getFieldValue("TYPE");var d=$.Blockly.JavaScript.provideFunction_("listsGetSortCompare","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(type, direction) {\n var compareFuncs = {\n 'NUMERIC': function(a, b) {\n return Number(a) - Number(b); },\n 'TEXT': function(a, b) {\n return a.toString() > b.toString() ? 1 : -1; },\n 'IGNORE_CASE': function(a, b) {\n return a.toString().toLowerCase() > b.toString().toLowerCase() ? 1 : -1; },\n };\n var compare = compareFuncs[type];\n return function(a, b) { return compare(a, b) * direction; };\n}\n "); +return[b+".slice().sort("+d+'("'+a+'", '+c+"))",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};$.Blockly.JavaScript.lists_split=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"INPUT",$.Blockly.JavaScript.ORDER_MEMBER),c=$.Blockly.JavaScript.valueToCode(a,"DELIM",$.Blockly.JavaScript.ORDER_NONE)||"''";a=a.getFieldValue("MODE");if("SPLIT"===a)b||(b="''"),a="split";else if("JOIN"===a)b||(b="[]"),a="join";else throw Error("Unknown mode: "+a);return[b+"."+a+"("+c+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; +$.Blockly.JavaScript.lists_reverse=function(a){return[($.Blockly.JavaScript.valueToCode(a,"LIST",$.Blockly.JavaScript.ORDER_FUNCTION_CALL)||"[]")+".slice().reverse()",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};var module$exports$Blockly$JavaScript$colour={};$.Blockly.JavaScript.colour_picker=function(a){return[$.Blockly.JavaScript.quote_(a.getFieldValue("COLOUR")),$.Blockly.JavaScript.ORDER_ATOMIC]};$.Blockly.JavaScript.colour_random=function(a){return[$.Blockly.JavaScript.provideFunction_("colourRandom","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"() {\n var num = Math.floor(Math.random() * Math.pow(2, 24));\n return '#' + ('00000' + num.toString(16)).substr(-6);\n}\n")+"()",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; +$.Blockly.JavaScript.colour_rgb=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"RED",$.Blockly.JavaScript.ORDER_NONE)||0,c=$.Blockly.JavaScript.valueToCode(a,"GREEN",$.Blockly.JavaScript.ORDER_NONE)||0;a=$.Blockly.JavaScript.valueToCode(a,"BLUE",$.Blockly.JavaScript.ORDER_NONE)||0;return[$.Blockly.JavaScript.provideFunction_("colourRgb","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(r, g, b) {\n r = Math.max(Math.min(Number(r), 100), 0) * 2.55;\n g = Math.max(Math.min(Number(g), 100), 0) * 2.55;\n b = Math.max(Math.min(Number(b), 100), 0) * 2.55;\n r = ('0' + (Math.round(r) || 0).toString(16)).slice(-2);\n g = ('0' + (Math.round(g) || 0).toString(16)).slice(-2);\n b = ('0' + (Math.round(b) || 0).toString(16)).slice(-2);\n return '#' + r + g + b;\n}\n")+ +"("+b+", "+c+", "+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]}; +$.Blockly.JavaScript.colour_blend=function(a){var b=$.Blockly.JavaScript.valueToCode(a,"COLOUR1",$.Blockly.JavaScript.ORDER_NONE)||"'#000000'",c=$.Blockly.JavaScript.valueToCode(a,"COLOUR2",$.Blockly.JavaScript.ORDER_NONE)||"'#000000'";a=$.Blockly.JavaScript.valueToCode(a,"RATIO",$.Blockly.JavaScript.ORDER_NONE)||.5;return[$.Blockly.JavaScript.provideFunction_("colourBlend","\nfunction "+$.Blockly.JavaScript.FUNCTION_NAME_PLACEHOLDER_+"(c1, c2, ratio) {\n ratio = Math.max(Math.min(Number(ratio), 1), 0);\n var r1 = parseInt(c1.substring(1, 3), 16);\n var g1 = parseInt(c1.substring(3, 5), 16);\n var b1 = parseInt(c1.substring(5, 7), 16);\n var r2 = parseInt(c2.substring(1, 3), 16);\n var g2 = parseInt(c2.substring(3, 5), 16);\n var b2 = parseInt(c2.substring(5, 7), 16);\n var r = Math.round(r1 * (1 - ratio) + r2 * ratio);\n var g = Math.round(g1 * (1 - ratio) + g2 * ratio);\n var b = Math.round(b1 * (1 - ratio) + b2 * ratio);\n r = ('0' + (r || 0).toString(16)).slice(-2);\n g = ('0' + (g || 0).toString(16)).slice(-2);\n b = ('0' + (b || 0).toString(16)).slice(-2);\n return '#' + r + g + b;\n}\n")+ +"("+b+", "+c+", "+a+")",$.Blockly.JavaScript.ORDER_FUNCTION_CALL]};var module$exports$Blockly$JavaScript$all={}; +$.Blockly.JavaScript.__namespace__=$; return $.Blockly.JavaScript; })); diff --git a/javascript_compressed.js.map b/javascript_compressed.js.map index 5a6e9d817..6a5f7bf0a 100644 --- a/javascript_compressed.js.map +++ b/javascript_compressed.js.map @@ -1 +1 @@ -{"version":3,"sources":["generators/javascript.js","generators/javascript/variables.js","generators/javascript/variables_dynamic.js","generators/javascript/text.js","generators/javascript/procedures.js","generators/javascript/math.js","generators/javascript/loops.js","generators/javascript/logic.js","generators/javascript/lists.js","generators/javascript/colour.js","generators/javascript/all.js"],"names":["JavaScript","Generator","addReservedWords","Object","getOwnPropertyNames","globalThis","join","ORDER_ATOMIC","ORDER_NEW","ORDER_MEMBER","ORDER_FUNCTION_CALL","ORDER_INCREMENT","ORDER_DECREMENT","ORDER_BITWISE_NOT","ORDER_UNARY_PLUS","ORDER_UNARY_NEGATION","ORDER_LOGICAL_NOT","ORDER_TYPEOF","ORDER_VOID","ORDER_DELETE","ORDER_AWAIT","ORDER_EXPONENTIATION","ORDER_MULTIPLICATION","ORDER_DIVISION","ORDER_MODULUS","ORDER_SUBTRACTION","ORDER_ADDITION","ORDER_BITWISE_SHIFT","ORDER_RELATIONAL","ORDER_IN","ORDER_INSTANCEOF","ORDER_EQUALITY","ORDER_BITWISE_AND","ORDER_BITWISE_XOR","ORDER_BITWISE_OR","ORDER_LOGICAL_AND","ORDER_LOGICAL_OR","ORDER_CONDITIONAL","ORDER_ASSIGNMENT","ORDER_YIELD","ORDER_COMMA","ORDER_NONE","ORDER_OVERRIDES","isInitialized","init","JavaScript.init","workspace","getPrototypeOf","call","nameDB_","reset","Names","RESERVED_WORDS_","setVariableMap","getVariableMap","populateVariables","populateProcedures","defvars","devVarList","Variables","allDeveloperVariables","i","length","push","getName","NameType","DEVELOPER_VARIABLE","variables","allUsedVarModels","getId","VARIABLE","definitions_","finish","JavaScript.finish","code","definitions","objectUtils","values","scrubNakedValue","JavaScript.scrubNakedValue","line","quote_","JavaScript.quote_","string","replace","multiline_quote_","JavaScript.multiline_quote_","split","map","lines","scrub_","JavaScript.scrub_","block","opt_thisOnly","commentCode","outputConnection","targetConnection","comment","getCommentText","stringUtils","wrap","COMMENT_WRAP","prefixLines","inputList","type","inputTypes","VALUE","childBlock","connection","targetBlock","allNestedComments","nextBlock","nextConnection","nextCode","blockToCode","getAdjusted","JavaScript.getAdjusted","atId","opt_delta","opt_negate","opt_order","delta","order","options","oneBasedIndex","defaultAtIndex","outerOrder","innerOrder","at","valueToCode","isNumber","Number","Math","floor","exports","getFieldValue","argument0","varName","strRegExp","forceString","value","test","getSubstringIndex","stringName","where","opt_at","indexOf","itemCount_","element","codeAndOrder","element0","element1","elements","Array","operator","substring","text","textOrder","provideFunction_","functionName","FUNCTION_NAME_PLACEHOLDER_","Error","where1","where2","requiresLengthCall","match","at1","at2","wherePascalCase","OPERATORS","getField","msg","sub","from","to","funcName","PROCEDURE","xfix1","STATEMENT_PREFIX","injectId","STATEMENT_SUFFIX","INDENT","loopTrap","INFINITE_LOOP_TRAP","branch","statementToCode","returnValue","xfix2","args","getVars","tuple","hasReturnValue_","argument1","arg","CONSTANTS","number_to_check","dropdown_property","divisor","func","list","argument2","repeats","String","addLoopTrap","loopVar","getDistinctName","endVar","until","variable0","increment","up","step","abs","startVar","incVar","listVar","indexVar","xfix","loop","getSurroundLoop","suppressPrefixSuffix","n","conditionCode","branchCode","getInput","defaultArgument","value_if","value_then","value_else","repeatCount","item","mode","listOrder","cacheList","xVar","listName","direction","getCompareFunctionName","input","delimiter","red","green","blue","c1","c2","ratio"],"mappings":"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","file":"javascript_compressed.js","sourceRoot":"./"} \ No newline at end of file +{"version":3,"sources":["generators/javascript.js","generators/javascript/variables.js","generators/javascript/variables_dynamic.js","generators/javascript/text.js","generators/javascript/procedures.js","generators/javascript/math.js","generators/javascript/loops.js","generators/javascript/logic.js","generators/javascript/lists.js","generators/javascript/colour.js","generators/javascript/all.js"],"names":["JavaScript","Generator","addReservedWords","Object","getOwnPropertyNames","globalThis","join","ORDER_ATOMIC","ORDER_NEW","ORDER_MEMBER","ORDER_FUNCTION_CALL","ORDER_INCREMENT","ORDER_DECREMENT","ORDER_BITWISE_NOT","ORDER_UNARY_PLUS","ORDER_UNARY_NEGATION","ORDER_LOGICAL_NOT","ORDER_TYPEOF","ORDER_VOID","ORDER_DELETE","ORDER_AWAIT","ORDER_EXPONENTIATION","ORDER_MULTIPLICATION","ORDER_DIVISION","ORDER_MODULUS","ORDER_SUBTRACTION","ORDER_ADDITION","ORDER_BITWISE_SHIFT","ORDER_RELATIONAL","ORDER_IN","ORDER_INSTANCEOF","ORDER_EQUALITY","ORDER_BITWISE_AND","ORDER_BITWISE_XOR","ORDER_BITWISE_OR","ORDER_LOGICAL_AND","ORDER_LOGICAL_OR","ORDER_CONDITIONAL","ORDER_ASSIGNMENT","ORDER_YIELD","ORDER_COMMA","ORDER_NONE","ORDER_OVERRIDES","isInitialized","init","JavaScript.init","workspace","getPrototypeOf","call","nameDB_","reset","Names","RESERVED_WORDS_","setVariableMap","getVariableMap","populateVariables","populateProcedures","defvars","devVarList","Variables","allDeveloperVariables","i","length","push","getName","NameType","DEVELOPER_VARIABLE","variables","allUsedVarModels","getId","VARIABLE","definitions_","finish","JavaScript.finish","code","definitions","objectUtils","values","scrubNakedValue","JavaScript.scrubNakedValue","line","quote_","JavaScript.quote_","string","replace","multiline_quote_","JavaScript.multiline_quote_","split","map","lines","scrub_","JavaScript.scrub_","block","opt_thisOnly","commentCode","outputConnection","targetConnection","comment","getCommentText","stringUtils","wrap","COMMENT_WRAP","prefixLines","inputList","type","inputTypes","VALUE","childBlock","connection","targetBlock","allNestedComments","nextBlock","nextConnection","nextCode","blockToCode","getAdjusted","JavaScript.getAdjusted","atId","opt_delta","opt_negate","opt_order","delta","order","options","oneBasedIndex","defaultAtIndex","outerOrder","innerOrder","at","valueToCode","isNumber","Number","Math","floor","exports","getFieldValue","argument0","varName","strRegExp","forceString","value","test","getSubstringIndex","stringName","where","opt_at","indexOf","itemCount_","element","codeAndOrder","element0","element1","elements","Array","operator","substring","text","textOrder","provideFunction_","functionName","FUNCTION_NAME_PLACEHOLDER_","Error","where1","where2","requiresLengthCall","match","at1","at2","wherePascalCase","at1Param","at2Param","OPERATORS","getField","msg","sub","from","to","funcName","PROCEDURE","xfix1","STATEMENT_PREFIX","injectId","STATEMENT_SUFFIX","INDENT","loopTrap","INFINITE_LOOP_TRAP","branch","statementToCode","returnValue","xfix2","args","getVars","tuple","hasReturnValue_","argument1","arg","CONSTANTS","PROPERTIES","dropdownProperty","suffix","inputOrder","outputOrder","numberToCheck","divisor","func","list","argument2","repeats","String","addLoopTrap","loopVar","getDistinctName","endVar","until","variable0","increment","up","step","abs","startVar","incVar","listVar","indexVar","xfix","loop","getSurroundLoop","suppressPrefixSuffix","n","conditionCode","branchCode","getInput","defaultArgument","value_if","value_then","value_else","repeatCount","item","mode","listOrder","cacheList","xVar","listName","direction","getCompareFunctionName","input","delimiter","red","green","blue","c1","c2","ratio"],"mappings":"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","file":"javascript_compressed.js","sourceRoot":"./"} \ No newline at end of file diff --git a/lua_compressed.js b/lua_compressed.js index e0b45413c..8295384e4 100644 --- a/lua_compressed.js +++ b/lua_compressed.js @@ -7,10 +7,11 @@ } else if (typeof exports === 'object') { // Node.js module.exports = factory(require("./blockly_compressed.js")); } else { // Browser - root.Blockly.Lua = factory(root.Blockly); + var factoryExports = factory(root.Blockly); + root.Blockly.Lua = factoryExports; } -}(this, function(Blockly) { -const $=Blockly.internal_; +}(this, function(__parent__) { +var $=__parent__.__namespace__; var module$contents$Blockly$Lua_Lua=new $.module$exports$Blockly$Generator.Generator("Lua");module$contents$Blockly$Lua_Lua.addReservedWords("_,__inext,assert,bit,colors,colours,coroutine,disk,dofile,error,fs,fetfenv,getmetatable,gps,help,io,ipairs,keys,loadfile,loadstring,math,native,next,os,paintutils,pairs,parallel,pcall,peripheral,print,printError,rawequal,rawget,rawset,read,rednet,redstone,rs,select,setfenv,setmetatable,sleep,string,table,term,textutils,tonumber,tostring,turtle,type,unpack,vector,write,xpcall,_VERSION,__indext,HTTP,and,break,do,else,elseif,end,false,for,function,if,in,local,nil,not,or,repeat,return,then,true,until,while,add,sub,mul,div,mod,pow,unm,concat,len,eq,lt,le,index,newindex,call,assert,collectgarbage,dofile,error,_G,getmetatable,inpairs,load,loadfile,next,pairs,pcall,print,rawequal,rawget,rawlen,rawset,select,setmetatable,tonumber,tostring,type,_VERSION,xpcall,require,package,string,table,math,bit32,io,file,os,debug"); module$contents$Blockly$Lua_Lua.ORDER_ATOMIC=0;module$contents$Blockly$Lua_Lua.ORDER_HIGH=1;module$contents$Blockly$Lua_Lua.ORDER_EXPONENTIATION=2;module$contents$Blockly$Lua_Lua.ORDER_UNARY=3;module$contents$Blockly$Lua_Lua.ORDER_MULTIPLICATIVE=4;module$contents$Blockly$Lua_Lua.ORDER_ADDITIVE=5;module$contents$Blockly$Lua_Lua.ORDER_CONCATENATION=6;module$contents$Blockly$Lua_Lua.ORDER_RELATIONAL=7;module$contents$Blockly$Lua_Lua.ORDER_AND=8;module$contents$Blockly$Lua_Lua.ORDER_OR=9; module$contents$Blockly$Lua_Lua.ORDER_NONE=99;module$contents$Blockly$Lua_Lua.isInitialized=!1;module$contents$Blockly$Lua_Lua.init=function(a){Object.getPrototypeOf(this).init.call(this);this.nameDB_?this.nameDB_.reset():this.nameDB_=new $.module$exports$Blockly$Names.Names(this.RESERVED_WORDS_);this.nameDB_.setVariableMap(a.getVariableMap());this.nameDB_.populateVariables(a);this.nameDB_.populateProcedures(a);this.isInitialized=!0}; @@ -21,20 +22,19 @@ a.nextConnection.targetBlock();c=c?"":this.blockToCode(a);return d+b+c};$.Blockl $.Blockly.Lua.text_join=function(a){if(0===a.itemCount_)return["''",$.Blockly.Lua.ORDER_ATOMIC];if(1===a.itemCount_)return["tostring("+($.Blockly.Lua.valueToCode(a,"ADD0",$.Blockly.Lua.ORDER_NONE)||"''")+")",$.Blockly.Lua.ORDER_HIGH];if(2===a.itemCount_){var b=$.Blockly.Lua.valueToCode(a,"ADD0",$.Blockly.Lua.ORDER_CONCATENATION)||"''";a=$.Blockly.Lua.valueToCode(a,"ADD1",$.Blockly.Lua.ORDER_CONCATENATION)||"''";return[b+" .. "+a,$.Blockly.Lua.ORDER_CONCATENATION]}b=[];for(var c=0;c 1) or n % 1 ~= 0 or n % 2 == 0 or n % 3 == 0 then"," return false"," end"," -- Check all the numbers of form 6k +/- 1, up to sqrt(n)."," for x = 6, math.sqrt(n) + 1.5, 6 do"," if n % (x - 1) == 0 or n % (x + 1) == 0 then"," return false"," end"," end"," return true","end"])+"("+b+")",$.Blockly.Lua.ORDER_HIGH];switch(c){case "EVEN":var d=b+" % 2 == 0";break;case "ODD":d=b+" % 2 == 1";break;case "WHOLE":d=b+" % 1 == 0";break;case "POSITIVE":d=b+" > 0";break;case "NEGATIVE":d= -b+" < 0";break;case "DIVISIBLE_BY":a=$.Blockly.Lua.valueToCode(a,"DIVISOR",$.Blockly.Lua.ORDER_MULTIPLICATIVE);if(!a||"0"===a)return["nil",$.Blockly.Lua.ORDER_ATOMIC];d=b+" % "+a+" == 0"}return[d,$.Blockly.Lua.ORDER_RELATIONAL]};$.Blockly.Lua.math_change=function(a){var b=$.Blockly.Lua.valueToCode(a,"DELTA",$.Blockly.Lua.ORDER_ADDITIVE)||"0";a=$.Blockly.Lua.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE);return a+" = "+a+" + "+b+"\n"}; -$.Blockly.Lua.math_round=$.Blockly.Lua.math_single;$.Blockly.Lua.math_trig=$.Blockly.Lua.math_single; -$.Blockly.Lua.math_on_list=function(a){function b(){return $.Blockly.Lua.provideFunction_("math_sum",["function "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)"," local result = 0"," for _, v in ipairs(t) do"," result = result + v"," end"," return result","end"])}var c=a.getFieldValue("OP");a=$.Blockly.Lua.valueToCode(a,"LIST",$.Blockly.Lua.ORDER_NONE)||"{}";switch(c){case "SUM":c=b();break;case "MIN":c=$.Blockly.Lua.provideFunction_("math_min",["function "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+ -"(t)"," if #t == 0 then"," return 0"," end"," local result = math.huge"," for _, v in ipairs(t) do"," if v < result then"," result = v"," end"," end"," return result","end"]);break;case "AVERAGE":c=$.Blockly.Lua.provideFunction_("math_average",["function "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)"," if #t == 0 then"," return 0"," end"," return "+b()+"(t) / #t","end"]);break;case "MAX":c=$.Blockly.Lua.provideFunction_("math_max",["function "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+ -"(t)"," if #t == 0 then"," return 0"," end"," local result = -math.huge"," for _, v in ipairs(t) do"," if v > result then"," result = v"," end"," end"," return result","end"]);break;case "MEDIAN":c=$.Blockly.Lua.provideFunction_("math_median",["function "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)"," -- Source: http://lua-users.org/wiki/SimpleStats"," if #t == 0 then"," return 0"," end"," local temp={}"," for _, v in ipairs(t) do",' if type(v) == "number" then'," table.insert(temp, v)", -" end"," end"," table.sort(temp)"," if #temp % 2 == 0 then"," return (temp[#temp/2] + temp[(#temp/2)+1]) / 2"," else"," return temp[math.ceil(#temp/2)]"," end","end"]);break;case "MODE":c=$.Blockly.Lua.provideFunction_("math_modes",["function "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)"," -- Source: http://lua-users.org/wiki/SimpleStats"," local counts={}"," for _, v in ipairs(t) do"," if counts[v] == nil then"," counts[v] = 1"," else"," counts[v] = counts[v] + 1", -" end"," end"," local biggestCount = 0"," for _, v in pairs(counts) do"," if v > biggestCount then"," biggestCount = v"," end"," end"," local temp={}"," for k, v in pairs(counts) do"," if v == biggestCount then"," table.insert(temp, k)"," end"," end"," return temp","end"]);break;case "STD_DEV":c=$.Blockly.Lua.provideFunction_("math_standard_deviation",["function "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)"," local m"," local vm"," local total = 0"," local count = 0", -" local result"," m = #t == 0 and 0 or "+b()+"(t) / #t"," for _, v in ipairs(t) do"," if type(v) == 'number' then"," vm = v - m"," total = total + (vm * vm)"," count = count + 1"," end"," end"," result = math.sqrt(total / (count-1))"," return result","end"]);break;case "RANDOM":c=$.Blockly.Lua.provideFunction_("math_random_list",["function "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)"," if #t == 0 then"," return nil"," end"," return t[math.random(#t)]","end"]); -break;default:throw Error("Unknown operator: "+c);}return[c+"("+a+")",$.Blockly.Lua.ORDER_HIGH]};$.Blockly.Lua.math_modulo=function(a){var b=$.Blockly.Lua.valueToCode(a,"DIVIDEND",$.Blockly.Lua.ORDER_MULTIPLICATIVE)||"0";a=$.Blockly.Lua.valueToCode(a,"DIVISOR",$.Blockly.Lua.ORDER_MULTIPLICATIVE)||"0";return[b+" % "+a,$.Blockly.Lua.ORDER_MULTIPLICATIVE]}; +$.Blockly.Lua.math_number_property=function(a){var b={EVEN:[" % 2 == 0",$.Blockly.Lua.ORDER_MULTIPLICATIVE,$.Blockly.Lua.ORDER_RELATIONAL],ODD:[" % 2 == 1",$.Blockly.Lua.ORDER_MULTIPLICATIVE,$.Blockly.Lua.ORDER_RELATIONAL],WHOLE:[" % 1 == 0",$.Blockly.Lua.ORDER_MULTIPLICATIVE,$.Blockly.Lua.ORDER_RELATIONAL],POSITIVE:[" > 0",$.Blockly.Lua.ORDER_RELATIONAL,$.Blockly.Lua.ORDER_RELATIONAL],NEGATIVE:[" < 0",$.Blockly.Lua.ORDER_RELATIONAL,$.Blockly.Lua.ORDER_RELATIONAL],DIVISIBLE_BY:[null,$.Blockly.Lua.ORDER_MULTIPLICATIVE, +$.Blockly.Lua.ORDER_RELATIONAL],PRIME:[null,$.Blockly.Lua.ORDER_NONE,$.Blockly.Lua.ORDER_HIGH]},c=a.getFieldValue("PROPERTY");b=$.$jscomp.makeIterator(b[c]);var d=b.next().value,e=b.next().value;b=b.next().value;e=$.Blockly.Lua.valueToCode(a,"NUMBER_TO_CHECK",e)||"0";if("PRIME"===c)a=$.Blockly.Lua.provideFunction_("math_isPrime","\nfunction "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(n)\n -- https://en.wikipedia.org/wiki/Primality_test#Naive_methods\n if n == 2 or n == 3 then\n return true\n end\n -- False if n is NaN, negative, is 1, or not whole.\n -- And false if n is divisible by 2 or 3.\n if not(n > 1) or n % 1 ~= 0 or n % 2 == 0 or n % 3 == 0 then\n return false\n end\n -- Check all the numbers of form 6k +/- 1, up to sqrt(n).\n for x = 6, math.sqrt(n) + 1.5, 6 do\n if n % (x - 1) == 0 or n % (x + 1) == 0 then\n return false\n end\n end\n return true\nend\n")+ +"("+e+")";else if("DIVISIBLE_BY"===c){a=$.Blockly.Lua.valueToCode(a,"DIVISOR",$.Blockly.Lua.ORDER_MULTIPLICATIVE)||"0";if("0"===a)return["nil",$.Blockly.Lua.ORDER_ATOMIC];a=e+" % "+a+" == 0"}else a=e+d;return[a,b]};$.Blockly.Lua.math_change=function(a){var b=$.Blockly.Lua.valueToCode(a,"DELTA",$.Blockly.Lua.ORDER_ADDITIVE)||"0";a=$.Blockly.Lua.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE);return a+" = "+a+" + "+b+"\n"};$.Blockly.Lua.math_round=$.Blockly.Lua.math_single; +$.Blockly.Lua.math_trig=$.Blockly.Lua.math_single; +$.Blockly.Lua.math_on_list=function(a){function b(){return $.Blockly.Lua.provideFunction_("math_sum","\nfunction "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)\n local result = 0\n for _, v in ipairs(t) do\n result = result + v\n end\n return result\nend\n")}var c=a.getFieldValue("OP");a=$.Blockly.Lua.valueToCode(a,"LIST",$.Blockly.Lua.ORDER_NONE)||"{}";switch(c){case "SUM":c=b();break;case "MIN":c=$.Blockly.Lua.provideFunction_("math_min","\nfunction "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+ +"(t)\n if #t == 0 then\n return 0\n end\n local result = math.huge\n for _, v in ipairs(t) do\n if v < result then\n result = v\n end\n end\n return result\nend\n");break;case "AVERAGE":c=$.Blockly.Lua.provideFunction_("math_average","\nfunction "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)\n if #t == 0 then\n return 0\n end\n return "+b()+"(t) / #t\nend\n");break;case "MAX":c=$.Blockly.Lua.provideFunction_("math_max","\nfunction "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+ +"(t)\n if #t == 0 then\n return 0\n end\n local result = -math.huge\n for _, v in ipairs(t) do\n if v > result then\n result = v\n end\n end\n return result\nend\n");break;case "MEDIAN":c=$.Blockly.Lua.provideFunction_("math_median","\nfunction "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)\n -- Source: http://lua-users.org/wiki/SimpleStats\n if #t == 0 then\n return 0\n end\n local temp = {}\n for _, v in ipairs(t) do\n if type(v) == 'number' then\n table.insert(temp, v)\n end\n end\n table.sort(temp)\n if #temp % 2 == 0 then\n return (temp[#temp / 2] + temp[(#temp / 2) + 1]) / 2\n else\n return temp[math.ceil(#temp / 2)]\n end\nend\n"); +break;case "MODE":c=$.Blockly.Lua.provideFunction_("math_modes","\nfunction "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)\n -- Source: http://lua-users.org/wiki/SimpleStats\n local counts = {}\n for _, v in ipairs(t) do\n if counts[v] == nil then\n counts[v] = 1\n else\n counts[v] = counts[v] + 1\n end\n end\n local biggestCount = 0\n for _, v in pairs(counts) do\n if v > biggestCount then\n biggestCount = v\n end\n end\n local temp = {}\n for k, v in pairs(counts) do\n if v == biggestCount then\n table.insert(temp, k)\n end\n end\n return temp\nend\n"); +break;case "STD_DEV":c=$.Blockly.Lua.provideFunction_("math_standard_deviation","\nfunction "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)\n local m\n local vm\n local total = 0\n local count = 0\n local result\n m = #t == 0 and 0 or "+b()+"(t) / #t\n for _, v in ipairs(t) do\n if type(v) == 'number' then\n vm = v - m\n total = total + (vm * vm)\n count = count + 1\n end\n end\n result = math.sqrt(total / (count-1))\n return result\nend\n");break;case "RANDOM":c=$.Blockly.Lua.provideFunction_("math_random_list", +"\nfunction "+$.Blockly.Lua.FUNCTION_NAME_PLACEHOLDER_+"(t)\n if #t == 0 then\n return nil\n end\n return t[math.random(#t)]\nend\n");break;default:throw Error("Unknown operator: "+c);}return[c+"("+a+")",$.Blockly.Lua.ORDER_HIGH]};$.Blockly.Lua.math_modulo=function(a){var b=$.Blockly.Lua.valueToCode(a,"DIVIDEND",$.Blockly.Lua.ORDER_MULTIPLICATIVE)||"0";a=$.Blockly.Lua.valueToCode(a,"DIVISOR",$.Blockly.Lua.ORDER_MULTIPLICATIVE)||"0";return[b+" % "+a,$.Blockly.Lua.ORDER_MULTIPLICATIVE]}; $.Blockly.Lua.math_constrain=function(a){var b=$.Blockly.Lua.valueToCode(a,"VALUE",$.Blockly.Lua.ORDER_NONE)||"0",c=$.Blockly.Lua.valueToCode(a,"LOW",$.Blockly.Lua.ORDER_NONE)||"-math.huge";a=$.Blockly.Lua.valueToCode(a,"HIGH",$.Blockly.Lua.ORDER_NONE)||"math.huge";return["math.min(math.max("+b+", "+c+"), "+a+")",$.Blockly.Lua.ORDER_HIGH]}; $.Blockly.Lua.math_random_int=function(a){var b=$.Blockly.Lua.valueToCode(a,"FROM",$.Blockly.Lua.ORDER_NONE)||"0";a=$.Blockly.Lua.valueToCode(a,"TO",$.Blockly.Lua.ORDER_NONE)||"0";return["math.random("+b+", "+a+")",$.Blockly.Lua.ORDER_HIGH]};$.Blockly.Lua.math_random_float=function(a){return["math.random()",$.Blockly.Lua.ORDER_HIGH]}; $.Blockly.Lua.math_atan2=function(a){var b=$.Blockly.Lua.valueToCode(a,"X",$.Blockly.Lua.ORDER_NONE)||"0";return["math.deg(math.atan2("+($.Blockly.Lua.valueToCode(a,"Y",$.Blockly.Lua.ORDER_NONE)||"0")+", "+b+"))",$.Blockly.Lua.ORDER_HIGH]};var module$exports$Blockly$Lua$loops={},module$contents$Blockly$Lua$loops_CONTINUE_STATEMENT="goto continue\n",module$contents$Blockly$Lua$loops_addContinueLabel=function(a){return-1!==a.indexOf(module$contents$Blockly$Lua$loops_CONTINUE_STATEMENT)?a+$.Blockly.Lua.INDENT+"::continue::\n":a}; @@ -71,29 +70,27 @@ $.Blockly.Lua.STATEMENT_SUFFIX)b=$.Blockly.Lua.statementToCode(a,"ELSE"),$.Block $.Blockly.Lua.logic_compare=function(a){var b={EQ:"==",NEQ:"~=",LT:"<",LTE:"<=",GT:">",GTE:">="}[a.getFieldValue("OP")],c=$.Blockly.Lua.valueToCode(a,"A",$.Blockly.Lua.ORDER_RELATIONAL)||"0";a=$.Blockly.Lua.valueToCode(a,"B",$.Blockly.Lua.ORDER_RELATIONAL)||"0";return[c+" "+b+" "+a,$.Blockly.Lua.ORDER_RELATIONAL]}; $.Blockly.Lua.logic_operation=function(a){var b="AND"===a.getFieldValue("OP")?"and":"or",c="and"===b?$.Blockly.Lua.ORDER_AND:$.Blockly.Lua.ORDER_OR,d=$.Blockly.Lua.valueToCode(a,"A",c);a=$.Blockly.Lua.valueToCode(a,"B",c);if(d||a){var e="and"===b?"true":"false";d||(d=e);a||(a=e)}else a=d="false";return[d+" "+b+" "+a,c]};$.Blockly.Lua.logic_negate=function(a){return["not "+($.Blockly.Lua.valueToCode(a,"BOOL",$.Blockly.Lua.ORDER_UNARY)||"true"),$.Blockly.Lua.ORDER_UNARY]}; $.Blockly.Lua.logic_boolean=function(a){return["TRUE"===a.getFieldValue("BOOL")?"true":"false",$.Blockly.Lua.ORDER_ATOMIC]};$.Blockly.Lua.logic_null=function(a){return["nil",$.Blockly.Lua.ORDER_ATOMIC]};$.Blockly.Lua.logic_ternary=function(a){var b=$.Blockly.Lua.valueToCode(a,"IF",$.Blockly.Lua.ORDER_AND)||"false",c=$.Blockly.Lua.valueToCode(a,"THEN",$.Blockly.Lua.ORDER_AND)||"nil";a=$.Blockly.Lua.valueToCode(a,"ELSE",$.Blockly.Lua.ORDER_OR)||"nil";return[b+" and "+c+" or "+a,$.Blockly.Lua.ORDER_OR]};var module$exports$Blockly$Lua$lists={};$.Blockly.Lua.lists_create_empty=function(a){return["{}",$.Blockly.Lua.ORDER_HIGH]};$.Blockly.Lua.lists_create_with=function(a){for(var b=Array(a.itemCount_),c=0;c 0";break;case "NEGATIVE":d=b+" < 0";break;case "DIVISIBLE_BY":a=$.Blockly.PHP.valueToCode(a,"DIVISOR",$.Blockly.PHP.ORDER_MODULUS)||"0",d=b+" % "+a+" == 0"}return[d,$.Blockly.PHP.ORDER_EQUALITY]};$.Blockly.PHP.math_change=function(a){var b=$.Blockly.PHP.valueToCode(a,"DELTA",$.Blockly.PHP.ORDER_ADDITION)||"0";return $.Blockly.PHP.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE)+" += "+b+";\n"};$.Blockly.PHP.math_round=$.Blockly.PHP.math_single; +$.Blockly.PHP.math_number_property=function(a){var b={EVEN:[""," % 2 == 0",$.Blockly.PHP.ORDER_MODULUS,$.Blockly.PHP.ORDER_EQUALITY],ODD:[""," % 2 == 1",$.Blockly.PHP.ORDER_MODULUS,$.Blockly.PHP.ORDER_EQUALITY],WHOLE:["is_int(",")",$.Blockly.PHP.ORDER_NONE,$.Blockly.PHP.ORDER_FUNCTION_CALL],POSITIVE:[""," > 0",$.Blockly.PHP.ORDER_RELATIONAL,$.Blockly.PHP.ORDER_RELATIONAL],NEGATIVE:[""," < 0",$.Blockly.PHP.ORDER_RELATIONAL,$.Blockly.PHP.ORDER_RELATIONAL],DIVISIBLE_BY:[null,null,$.Blockly.PHP.ORDER_MODULUS, +$.Blockly.PHP.ORDER_EQUALITY],PRIME:[null,null,$.Blockly.PHP.ORDER_NONE,$.Blockly.PHP.ORDER_FUNCTION_CALL]},c=a.getFieldValue("PROPERTY");b=$.$jscomp.makeIterator(b[c]);var d=b.next().value,e=b.next().value,f=b.next().value;b=b.next().value;f=$.Blockly.PHP.valueToCode(a,"NUMBER_TO_CHECK",f)||"0";if("PRIME"===c)a=$.Blockly.PHP.provideFunction_("math_isPrime","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($n) {\n // https://en.wikipedia.org/wiki/Primality_test#Naive_methods\n if ($n == 2 || $n == 3) {\n return true;\n }\n // False if n is NaN, negative, is 1, or not whole.\n // And false if n is divisible by 2 or 3.\n if (!is_numeric($n) || $n <= 1 || $n % 1 != 0 || $n % 2 == 0 || $n % 3 == 0) {\n return false;\n }\n // Check all the numbers of form 6k +/- 1, up to sqrt(n).\n for ($x = 6; $x <= sqrt($n) + 1; $x += 6) {\n if ($n % ($x - 1) == 0 || $n % ($x + 1) == 0) {\n return false;\n }\n }\n return true;\n}\n")+ +"("+f+")";else if("DIVISIBLE_BY"===c){a=$.Blockly.PHP.valueToCode(a,"DIVISOR",$.Blockly.PHP.ORDER_MODULUS)||"0";if("0"===a)return["false",$.Blockly.PHP.ORDER_ATOMIC];a=f+" % "+a+" == 0"}else a=d+f+e;return[a,b]};$.Blockly.PHP.math_change=function(a){var b=$.Blockly.PHP.valueToCode(a,"DELTA",$.Blockly.PHP.ORDER_ADDITION)||"0";return $.Blockly.PHP.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE)+" += "+b+";\n"};$.Blockly.PHP.math_round=$.Blockly.PHP.math_single; $.Blockly.PHP.math_trig=$.Blockly.PHP.math_single; -$.Blockly.PHP.math_on_list=function(a){var b=a.getFieldValue("OP");switch(b){case "SUM":a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_FUNCTION_CALL)||"array()";a="array_sum("+a+")";break;case "MIN":a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_FUNCTION_CALL)||"array()";a="min("+a+")";break;case "MAX":a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_FUNCTION_CALL)||"array()";a="max("+a+")";break;case "AVERAGE":b=$.Blockly.PHP.provideFunction_("math_mean",["function "+ -$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($myList) {"," return array_sum($myList) / count($myList);","}"]);a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"array()";a=b+"("+a+")";break;case "MEDIAN":b=$.Blockly.PHP.provideFunction_("math_median",["function "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($arr) {"," sort($arr,SORT_NUMERIC);"," return (count($arr) % 2) ? $arr[floor(count($arr)/2)] : "," ($arr[floor(count($arr)/2)] + $arr[floor(count($arr)/2) - 1]) / 2;","}"]);a= -$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "MODE":b=$.Blockly.PHP.provideFunction_("math_modes",["function "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($values) {"," if (empty($values)) return array();"," $counts = array_count_values($values);"," arsort($counts); // Sort counts in descending order"," $modes = array_keys($counts, current($counts), true);"," return $modes;","}"]);a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]"; -a=b+"("+a+")";break;case "STD_DEV":b=$.Blockly.PHP.provideFunction_("math_standard_deviation",["function "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($numbers) {"," $n = count($numbers);"," if (!$n) return null;"," $mean = array_sum($numbers) / count($numbers);"," foreach($numbers as $key => $num) $devs[$key] = pow($num - $mean, 2);"," return sqrt(array_sum($devs) / (count($devs) - 1));","}"]);a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "RANDOM":b= -$.Blockly.PHP.provideFunction_("math_random_list",["function "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($list) {"," $x = rand(0, count($list)-1);"," return $list[$x];","}"]);a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]";a=b+"("+a+")";break;default:throw Error("Unknown operator: "+b);}return[a,$.Blockly.PHP.ORDER_FUNCTION_CALL]}; +$.Blockly.PHP.math_on_list=function(a){var b=a.getFieldValue("OP");switch(b){case "SUM":a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_FUNCTION_CALL)||"array()";a="array_sum("+a+")";break;case "MIN":a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_FUNCTION_CALL)||"array()";a="min("+a+")";break;case "MAX":a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_FUNCTION_CALL)||"array()";a="max("+a+")";break;case "AVERAGE":b=$.Blockly.PHP.provideFunction_("math_mean","\nfunction "+ +$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($myList) {\n return array_sum($myList) / count($myList);\n}\n");a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"array()";a=b+"("+a+")";break;case "MEDIAN":b=$.Blockly.PHP.provideFunction_("math_median","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($arr) {\n sort($arr,SORT_NUMERIC);\n return (count($arr) % 2) ? $arr[floor(count($arr) / 2)] :\n ($arr[floor(count($arr) / 2)] + $arr[floor(count($arr) / 2) - 1]) / 2;\n}\n"); +a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "MODE":b=$.Blockly.PHP.provideFunction_("math_modes","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($values) {\n if (empty($values)) return array();\n $counts = array_count_values($values);\n arsort($counts); // Sort counts in descending order\n $modes = array_keys($counts, current($counts), true);\n return $modes;\n}\n");a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]"; +a=b+"("+a+")";break;case "STD_DEV":b=$.Blockly.PHP.provideFunction_("math_standard_deviation","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($numbers) {\n $n = count($numbers);\n if (!$n) return null;\n $mean = array_sum($numbers) / count($numbers);\n foreach($numbers as $key => $num) $devs[$key] = pow($num - $mean, 2);\n return sqrt(array_sum($devs) / (count($devs) - 1));\n}\n");a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]";a=b+"("+a+")";break;case "RANDOM":b= +$.Blockly.PHP.provideFunction_("math_random_list","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($list) {\n $x = rand(0, count($list)-1);\n return $list[$x];\n}\n");a=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]";a=b+"("+a+")";break;default:throw Error("Unknown operator: "+b);}return[a,$.Blockly.PHP.ORDER_FUNCTION_CALL]}; $.Blockly.PHP.math_modulo=function(a){var b=$.Blockly.PHP.valueToCode(a,"DIVIDEND",$.Blockly.PHP.ORDER_MODULUS)||"0";a=$.Blockly.PHP.valueToCode(a,"DIVISOR",$.Blockly.PHP.ORDER_MODULUS)||"0";return[b+" % "+a,$.Blockly.PHP.ORDER_MODULUS]}; $.Blockly.PHP.math_constrain=function(a){var b=$.Blockly.PHP.valueToCode(a,"VALUE",$.Blockly.PHP.ORDER_NONE)||"0",c=$.Blockly.PHP.valueToCode(a,"LOW",$.Blockly.PHP.ORDER_NONE)||"0";a=$.Blockly.PHP.valueToCode(a,"HIGH",$.Blockly.PHP.ORDER_NONE)||"Infinity";return["min(max("+b+", "+c+"), "+a+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; -$.Blockly.PHP.math_random_int=function(a){var b=$.Blockly.PHP.valueToCode(a,"FROM",$.Blockly.PHP.ORDER_NONE)||"0";a=$.Blockly.PHP.valueToCode(a,"TO",$.Blockly.PHP.ORDER_NONE)||"0";return[$.Blockly.PHP.provideFunction_("math_random_int",["function "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($a, $b) {"," if ($a > $b) {"," return rand($b, $a);"," }"," return rand($a, $b);","}"])+"("+b+", "+a+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; +$.Blockly.PHP.math_random_int=function(a){var b=$.Blockly.PHP.valueToCode(a,"FROM",$.Blockly.PHP.ORDER_NONE)||"0";a=$.Blockly.PHP.valueToCode(a,"TO",$.Blockly.PHP.ORDER_NONE)||"0";return[$.Blockly.PHP.provideFunction_("math_random_int","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($a, $b) {\n if ($a > $b) {\n return rand($b, $a);\n }\n return rand($a, $b);\n}\n")+"("+b+", "+a+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; $.Blockly.PHP.math_random_float=function(a){return["(float)rand()/(float)getrandmax()",$.Blockly.PHP.ORDER_FUNCTION_CALL]};$.Blockly.PHP.math_atan2=function(a){var b=$.Blockly.PHP.valueToCode(a,"X",$.Blockly.PHP.ORDER_NONE)||"0";return["atan2("+($.Blockly.PHP.valueToCode(a,"Y",$.Blockly.PHP.ORDER_NONE)||"0")+", "+b+") / pi() * 180",$.Blockly.PHP.ORDER_DIVISION]};var module$exports$Blockly$PHP$loops={}; $.Blockly.PHP.controls_repeat_ext=function(a){var b=a.getField("TIMES")?String(Number(a.getFieldValue("TIMES"))):$.Blockly.PHP.valueToCode(a,"TIMES",$.Blockly.PHP.ORDER_ASSIGNMENT)||"0";var c=$.Blockly.PHP.statementToCode(a,"DO");c=$.Blockly.PHP.addLoopTrap(c,a);a="";var d=$.Blockly.PHP.nameDB_.getDistinctName("count",$.module$exports$Blockly$Names.NameType.VARIABLE),e=b;b.match(/^\w+$/)||(0,$.module$exports$Blockly$utils$string.isNumber)(b)||(e=$.Blockly.PHP.nameDB_.getDistinctName("repeat_end",$.module$exports$Blockly$Names.NameType.VARIABLE), a+=e+" = "+b+";\n");return a+("for ("+d+" = 0; "+d+" < "+e+"; "+d+"++) {\n"+c+"}\n")};$.Blockly.PHP.controls_repeat=$.Blockly.PHP.controls_repeat_ext;$.Blockly.PHP.controls_whileUntil=function(a){var b="UNTIL"===a.getFieldValue("MODE"),c=$.Blockly.PHP.valueToCode(a,"BOOL",b?$.Blockly.PHP.ORDER_LOGICAL_NOT:$.Blockly.PHP.ORDER_NONE)||"false",d=$.Blockly.PHP.statementToCode(a,"DO");d=$.Blockly.PHP.addLoopTrap(d,a);b&&(c="!"+c);return"while ("+c+") {\n"+d+"}\n"}; @@ -77,37 +76,34 @@ $.Blockly.PHP.logic_compare=function(a){var b={EQ:"==",NEQ:"!=",LT:"<",LTE:"<=", $.Blockly.PHP.logic_operation=function(a){var b="AND"===a.getFieldValue("OP")?"&&":"||",c="&&"===b?$.Blockly.PHP.ORDER_LOGICAL_AND:$.Blockly.PHP.ORDER_LOGICAL_OR,d=$.Blockly.PHP.valueToCode(a,"A",c);a=$.Blockly.PHP.valueToCode(a,"B",c);if(d||a){var e="&&"===b?"true":"false";d||(d=e);a||(a=e)}else a=d="false";return[d+" "+b+" "+a,c]};$.Blockly.PHP.logic_negate=function(a){var b=$.Blockly.PHP.ORDER_LOGICAL_NOT;return["!"+($.Blockly.PHP.valueToCode(a,"BOOL",b)||"true"),b]}; $.Blockly.PHP.logic_boolean=function(a){return["TRUE"===a.getFieldValue("BOOL")?"true":"false",$.Blockly.PHP.ORDER_ATOMIC]};$.Blockly.PHP.logic_null=function(a){return["null",$.Blockly.PHP.ORDER_ATOMIC]}; $.Blockly.PHP.logic_ternary=function(a){var b=$.Blockly.PHP.valueToCode(a,"IF",$.Blockly.PHP.ORDER_CONDITIONAL)||"false",c=$.Blockly.PHP.valueToCode(a,"THEN",$.Blockly.PHP.ORDER_CONDITIONAL)||"null";a=$.Blockly.PHP.valueToCode(a,"ELSE",$.Blockly.PHP.ORDER_CONDITIONAL)||"null";return[b+" ? "+c+" : "+a,$.Blockly.PHP.ORDER_CONDITIONAL]};var module$exports$Blockly$PHP$lists={};$.Blockly.PHP.lists_create_empty=function(a){return["array()",$.Blockly.PHP.ORDER_FUNCTION_CALL]};$.Blockly.PHP.lists_create_with=function(a){for(var b=Array(a.itemCount_),c=0;c "strnatcasecmp",',' "TEXT" => "strcmp",',' "IGNORE_CASE" => "strcasecmp"'," );"," $sortCmp = $sortCmpFuncs[$type];"," $list2 = $list;", -" usort($list2, $sortCmp);"," if ($direction == -1) {"," $list2 = array_reverse($list2);"," }"," return $list2;","}"])+"("+b+', "'+a+'", '+c+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; -$.Blockly.PHP.lists_split=function(a){var b=$.Blockly.PHP.valueToCode(a,"INPUT",$.Blockly.PHP.ORDER_NONE),c=$.Blockly.PHP.valueToCode(a,"DELIM",$.Blockly.PHP.ORDER_NONE)||"''";a=a.getFieldValue("MODE");if("SPLIT"===a)b||(b="''"),a="explode";else if("JOIN"===a)b||(b="array()"),a="implode";else throw Error("Unknown mode: "+a);return[a+"("+c+", "+b+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; -$.Blockly.PHP.lists_reverse=function(a){return["array_reverse("+($.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]")+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]};var module$exports$Blockly$PHP$colour={};$.Blockly.PHP.colour_picker=function(a){return[$.Blockly.PHP.quote_(a.getFieldValue("COLOUR")),$.Blockly.PHP.ORDER_ATOMIC]};$.Blockly.PHP.colour_random=function(a){return[$.Blockly.PHP.provideFunction_("colour_random",["function "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"() {"," return '#' . str_pad(dechex(mt_rand(0, 0xFFFFFF)), 6, '0', STR_PAD_LEFT);","}"])+"()",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; -$.Blockly.PHP.colour_rgb=function(a){var b=$.Blockly.PHP.valueToCode(a,"RED",$.Blockly.PHP.ORDER_NONE)||0,c=$.Blockly.PHP.valueToCode(a,"GREEN",$.Blockly.PHP.ORDER_NONE)||0;a=$.Blockly.PHP.valueToCode(a,"BLUE",$.Blockly.PHP.ORDER_NONE)||0;return[$.Blockly.PHP.provideFunction_("colour_rgb",["function "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($r, $g, $b) {"," $r = round(max(min($r, 100), 0) * 2.55);"," $g = round(max(min($g, 100), 0) * 2.55);"," $b = round(max(min($b, 100), 0) * 2.55);"," $hex = '#';", -" $hex .= str_pad(dechex($r), 2, '0', STR_PAD_LEFT);"," $hex .= str_pad(dechex($g), 2, '0', STR_PAD_LEFT);"," $hex .= str_pad(dechex($b), 2, '0', STR_PAD_LEFT);"," return $hex;","}"])+"("+b+", "+c+", "+a+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; -$.Blockly.PHP.colour_blend=function(a){var b=$.Blockly.PHP.valueToCode(a,"COLOUR1",$.Blockly.PHP.ORDER_NONE)||"'#000000'",c=$.Blockly.PHP.valueToCode(a,"COLOUR2",$.Blockly.PHP.ORDER_NONE)||"'#000000'";a=$.Blockly.PHP.valueToCode(a,"RATIO",$.Blockly.PHP.ORDER_NONE)||.5;return[$.Blockly.PHP.provideFunction_("colour_blend",["function "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($c1, $c2, $ratio) {"," $ratio = max(min($ratio, 1), 0);"," $r1 = hexdec(substr($c1, 1, 2));"," $g1 = hexdec(substr($c1, 3, 2));", -" $b1 = hexdec(substr($c1, 5, 2));"," $r2 = hexdec(substr($c2, 1, 2));"," $g2 = hexdec(substr($c2, 3, 2));"," $b2 = hexdec(substr($c2, 5, 2));"," $r = round($r1 * (1 - $ratio) + $r2 * $ratio);"," $g = round($g1 * (1 - $ratio) + $g2 * $ratio);"," $b = round($b1 * (1 - $ratio) + $b2 * $ratio);"," $hex = '#';"," $hex .= str_pad(dechex($r), 2, '0', STR_PAD_LEFT);"," $hex .= str_pad(dechex($g), 2, '0', STR_PAD_LEFT);"," $hex .= str_pad(dechex($b), 2, '0', STR_PAD_LEFT);"," return $hex;","}"])+ -"("+b+", "+c+", "+a+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]};var module$exports$Blockly$PHP$all={}; - +d=(0,$.module$exports$Blockly$utils$string.isNumber)(String(c))||String(c).match(/^\(.+\)$/)?d+c:d+("("+c+")");break;default:throw Error("Unhandled option (lists_getSublist).");}b="array_slice("+b+", "+c+", "+d+")"}else{var e=$.Blockly.PHP.getAdjusted(a,"AT1");a=$.Blockly.PHP.getAdjusted(a,"AT2");b=$.Blockly.PHP.provideFunction_("lists_get_sublist","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($list, $where1, $at1, $where2, $at2) {\n if ($where1 == 'FROM_END') {\n $at1 = count($list) - 1 - $at1;\n } else if ($where1 == 'FIRST') {\n $at1 = 0;\n } else if ($where1 != 'FROM_START') {\n throw new Exception('Unhandled option (lists_get_sublist).');\n }\n $length = 0;\n if ($where2 == 'FROM_START') {\n $length = $at2 - $at1 + 1;\n } else if ($where2 == 'FROM_END') {\n $length = count($list) - $at1 - $at2;\n } else if ($where2 == 'LAST') {\n $length = count($list) - $at1;\n } else {\n throw new Exception('Unhandled option (lists_get_sublist).');\n }\n return array_slice($list, $at1, $length);\n}\n")+ +"("+b+", '"+c+"', "+e+", '"+d+"', "+a+")"}return[b,$.Blockly.PHP.ORDER_FUNCTION_CALL]}; +$.Blockly.PHP.lists_sort=function(a){var b=$.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"array()",c="1"===a.getFieldValue("DIRECTION")?1:-1;a=a.getFieldValue("TYPE");return[$.Blockly.PHP.provideFunction_("lists_sort","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($list, $type, $direction) {\n $sortCmpFuncs = array(\n 'NUMERIC' => 'strnatcasecmp',\n 'TEXT' => 'strcmp',\n 'IGNORE_CASE' => 'strcasecmp'\n );\n $sortCmp = $sortCmpFuncs[$type];\n $list2 = $list;\n usort($list2, $sortCmp);\n if ($direction == -1) {\n $list2 = array_reverse($list2);\n }\n return $list2;\n}\n")+"("+ +b+', "'+a+'", '+c+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]};$.Blockly.PHP.lists_split=function(a){var b=$.Blockly.PHP.valueToCode(a,"INPUT",$.Blockly.PHP.ORDER_NONE),c=$.Blockly.PHP.valueToCode(a,"DELIM",$.Blockly.PHP.ORDER_NONE)||"''";a=a.getFieldValue("MODE");if("SPLIT"===a)b||(b="''"),a="explode";else if("JOIN"===a)b||(b="array()"),a="implode";else throw Error("Unknown mode: "+a);return[a+"("+c+", "+b+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; +$.Blockly.PHP.lists_reverse=function(a){return["array_reverse("+($.Blockly.PHP.valueToCode(a,"LIST",$.Blockly.PHP.ORDER_NONE)||"[]")+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]};var module$exports$Blockly$PHP$colour={};$.Blockly.PHP.colour_picker=function(a){return[$.Blockly.PHP.quote_(a.getFieldValue("COLOUR")),$.Blockly.PHP.ORDER_ATOMIC]};$.Blockly.PHP.colour_random=function(a){return[$.Blockly.PHP.provideFunction_("colour_random","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"() {\n return '#' . str_pad(dechex(mt_rand(0, 0xFFFFFF)), 6, '0', STR_PAD_LEFT);\n}\n")+"()",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; +$.Blockly.PHP.colour_rgb=function(a){var b=$.Blockly.PHP.valueToCode(a,"RED",$.Blockly.PHP.ORDER_NONE)||0,c=$.Blockly.PHP.valueToCode(a,"GREEN",$.Blockly.PHP.ORDER_NONE)||0;a=$.Blockly.PHP.valueToCode(a,"BLUE",$.Blockly.PHP.ORDER_NONE)||0;return[$.Blockly.PHP.provideFunction_("colour_rgb","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($r, $g, $b) {\n $r = round(max(min($r, 100), 0) * 2.55);\n $g = round(max(min($g, 100), 0) * 2.55);\n $b = round(max(min($b, 100), 0) * 2.55);\n $hex = '#';\n $hex .= str_pad(dechex($r), 2, '0', STR_PAD_LEFT);\n $hex .= str_pad(dechex($g), 2, '0', STR_PAD_LEFT);\n $hex .= str_pad(dechex($b), 2, '0', STR_PAD_LEFT);\n return $hex;\n}\n")+ +"("+b+", "+c+", "+a+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]}; +$.Blockly.PHP.colour_blend=function(a){var b=$.Blockly.PHP.valueToCode(a,"COLOUR1",$.Blockly.PHP.ORDER_NONE)||"'#000000'",c=$.Blockly.PHP.valueToCode(a,"COLOUR2",$.Blockly.PHP.ORDER_NONE)||"'#000000'";a=$.Blockly.PHP.valueToCode(a,"RATIO",$.Blockly.PHP.ORDER_NONE)||.5;return[$.Blockly.PHP.provideFunction_("colour_blend","\nfunction "+$.Blockly.PHP.FUNCTION_NAME_PLACEHOLDER_+"($c1, $c2, $ratio) {\n $ratio = max(min($ratio, 1), 0);\n $r1 = hexdec(substr($c1, 1, 2));\n $g1 = hexdec(substr($c1, 3, 2));\n $b1 = hexdec(substr($c1, 5, 2));\n $r2 = hexdec(substr($c2, 1, 2));\n $g2 = hexdec(substr($c2, 3, 2));\n $b2 = hexdec(substr($c2, 5, 2));\n $r = round($r1 * (1 - $ratio) + $r2 * $ratio);\n $g = round($g1 * (1 - $ratio) + $g2 * $ratio);\n $b = round($b1 * (1 - $ratio) + $b2 * $ratio);\n $hex = '#';\n $hex .= str_pad(dechex($r), 2, '0', STR_PAD_LEFT);\n $hex .= str_pad(dechex($g), 2, '0', STR_PAD_LEFT);\n $hex .= str_pad(dechex($b), 2, '0', STR_PAD_LEFT);\n return $hex;\n}\n")+"("+ +b+", "+c+", "+a+")",$.Blockly.PHP.ORDER_FUNCTION_CALL]};var module$exports$Blockly$PHP$all={}; +$.Blockly.PHP.__namespace__=$; return $.Blockly.PHP; })); diff --git a/php_compressed.js.map b/php_compressed.js.map index 624e88dcb..1b27749f6 100644 --- a/php_compressed.js.map +++ b/php_compressed.js.map @@ -1 +1 @@ -{"version":3,"sources":["generators/php.js","generators/php/variables.js","generators/php/variables_dynamic.js","generators/php/text.js","generators/php/procedures.js","generators/php/math.js","generators/php/loops.js","generators/php/logic.js","generators/php/lists.js","generators/php/colour.js","generators/php/all.js"],"names":["PHP","Generator","addReservedWords","ORDER_ATOMIC","ORDER_CLONE","ORDER_NEW","ORDER_MEMBER","ORDER_FUNCTION_CALL","ORDER_POWER","ORDER_INCREMENT","ORDER_DECREMENT","ORDER_BITWISE_NOT","ORDER_CAST","ORDER_SUPPRESS_ERROR","ORDER_INSTANCEOF","ORDER_LOGICAL_NOT","ORDER_UNARY_PLUS","ORDER_UNARY_NEGATION","ORDER_MULTIPLICATION","ORDER_DIVISION","ORDER_MODULUS","ORDER_ADDITION","ORDER_SUBTRACTION","ORDER_STRING_CONCAT","ORDER_BITWISE_SHIFT","ORDER_RELATIONAL","ORDER_EQUALITY","ORDER_REFERENCE","ORDER_BITWISE_AND","ORDER_BITWISE_XOR","ORDER_BITWISE_OR","ORDER_LOGICAL_AND","ORDER_LOGICAL_OR","ORDER_IF_NULL","ORDER_CONDITIONAL","ORDER_ASSIGNMENT","ORDER_LOGICAL_AND_WEAK","ORDER_LOGICAL_XOR","ORDER_LOGICAL_OR_WEAK","ORDER_NONE","ORDER_OVERRIDES","isInitialized","init","PHP.init","workspace","Object","getPrototypeOf","call","nameDB_","reset","Names","RESERVED_WORDS_","setVariableMap","getVariableMap","populateVariables","populateProcedures","finish","PHP.finish","code","definitions","objectUtils","values","definitions_","join","scrubNakedValue","PHP.scrubNakedValue","line","quote_","PHP.quote_","string","replace","multiline_quote_","PHP.multiline_quote_","split","map","lines","scrub_","PHP.scrub_","block","opt_thisOnly","commentCode","outputConnection","targetConnection","comment","getCommentText","stringUtils","wrap","COMMENT_WRAP","prefixLines","i","inputList","length","type","inputTypes","VALUE","childBlock","connection","targetBlock","allNestedComments","nextBlock","nextConnection","nextCode","blockToCode","getAdjusted","PHP.getAdjusted","atId","opt_delta","opt_negate","opt_order","delta","order","options","oneBasedIndex","defaultAtIndex","outerOrder","innerOrder","at","valueToCode","isNumber","Number","Math","floor","exports","getName","getFieldValue","NameType","VARIABLE","argument0","varName","indexOf","itemCount_","element0","element1","elements","Array","value","functionName","provideFunction_","FUNCTION_NAME_PLACEHOLDER_","text","operator","substring","errorIndex","indexAdjustment","where","Error","where1","where2","at1","at2","OPERATORS","getField","msg","sub","from","to","globals","usedVariables","Variables","allUsedVarModels","variable","name","getVars","push","devVarList","allDeveloperVariables","DEVELOPER_VARIABLE","globalStr","INDENT","funcName","PROCEDURE","xfix1","STATEMENT_PREFIX","injectId","STATEMENT_SUFFIX","loopTrap","INFINITE_LOOP_TRAP","branch","statementToCode","returnValue","xfix2","args","variables","tuple","hasReturnValue_","Infinity","argument1","arg","CONSTANTS","number_to_check","dropdown_property","divisor","func","list","argument2","repeats","String","addLoopTrap","loopVar","getDistinctName","endVar","match","until","variable0","increment","up","step","abs","startVar","incVar","xfix","loop","getSurroundLoop","suppressPrefixSuffix","n","conditionCode","branchCode","getInput","defaultArgument","value_if","value_then","value_else","element","repeatCount","mode","cachedList","listVar","xVar","listCode","direction","value_input","value_delim","red","green","blue","c1","c2","ratio"],"mappings":"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","file":"php_compressed.js","sourceRoot":"./"} \ No newline at end of file +{"version":3,"sources":["generators/php.js","generators/php/variables.js","generators/php/variables_dynamic.js","generators/php/text.js","generators/php/procedures.js","generators/php/math.js","generators/php/loops.js","generators/php/logic.js","generators/php/lists.js","generators/php/colour.js","generators/php/all.js"],"names":["PHP","Generator","addReservedWords","ORDER_ATOMIC","ORDER_CLONE","ORDER_NEW","ORDER_MEMBER","ORDER_FUNCTION_CALL","ORDER_POWER","ORDER_INCREMENT","ORDER_DECREMENT","ORDER_BITWISE_NOT","ORDER_CAST","ORDER_SUPPRESS_ERROR","ORDER_INSTANCEOF","ORDER_LOGICAL_NOT","ORDER_UNARY_PLUS","ORDER_UNARY_NEGATION","ORDER_MULTIPLICATION","ORDER_DIVISION","ORDER_MODULUS","ORDER_ADDITION","ORDER_SUBTRACTION","ORDER_STRING_CONCAT","ORDER_BITWISE_SHIFT","ORDER_RELATIONAL","ORDER_EQUALITY","ORDER_REFERENCE","ORDER_BITWISE_AND","ORDER_BITWISE_XOR","ORDER_BITWISE_OR","ORDER_LOGICAL_AND","ORDER_LOGICAL_OR","ORDER_IF_NULL","ORDER_CONDITIONAL","ORDER_ASSIGNMENT","ORDER_LOGICAL_AND_WEAK","ORDER_LOGICAL_XOR","ORDER_LOGICAL_OR_WEAK","ORDER_NONE","ORDER_OVERRIDES","isInitialized","init","PHP.init","workspace","Object","getPrototypeOf","call","nameDB_","reset","Names","RESERVED_WORDS_","setVariableMap","getVariableMap","populateVariables","populateProcedures","finish","PHP.finish","code","definitions","objectUtils","values","definitions_","join","scrubNakedValue","PHP.scrubNakedValue","line","quote_","PHP.quote_","string","replace","multiline_quote_","PHP.multiline_quote_","split","map","lines","scrub_","PHP.scrub_","block","opt_thisOnly","commentCode","outputConnection","targetConnection","comment","getCommentText","stringUtils","wrap","COMMENT_WRAP","prefixLines","i","inputList","length","type","inputTypes","VALUE","childBlock","connection","targetBlock","allNestedComments","nextBlock","nextConnection","nextCode","blockToCode","getAdjusted","PHP.getAdjusted","atId","opt_delta","opt_negate","opt_order","delta","order","options","oneBasedIndex","defaultAtIndex","outerOrder","innerOrder","at","valueToCode","isNumber","Number","Math","floor","exports","getName","getFieldValue","NameType","VARIABLE","argument0","varName","indexOf","itemCount_","element0","element1","elements","Array","value","functionName","provideFunction_","FUNCTION_NAME_PLACEHOLDER_","text","operator","substring","errorIndex","indexAdjustment","where","Error","where1","where2","at1","at2","OPERATORS","getField","msg","sub","from","to","globals","usedVariables","Variables","allUsedVarModels","variable","name","getVars","push","devVarList","allDeveloperVariables","DEVELOPER_VARIABLE","globalStr","INDENT","funcName","PROCEDURE","xfix1","STATEMENT_PREFIX","injectId","STATEMENT_SUFFIX","loopTrap","INFINITE_LOOP_TRAP","branch","statementToCode","returnValue","xfix2","args","variables","tuple","hasReturnValue_","Infinity","argument1","arg","CONSTANTS","PROPERTIES","dropdownProperty","prefix","suffix","inputOrder","outputOrder","numberToCheck","divisor","func","list","argument2","repeats","String","addLoopTrap","loopVar","getDistinctName","endVar","match","until","variable0","increment","up","step","abs","startVar","incVar","xfix","loop","getSurroundLoop","suppressPrefixSuffix","n","conditionCode","branchCode","getInput","defaultArgument","value_if","value_then","value_else","element","repeatCount","mode","cachedList","listVar","xVar","listCode","direction","value_input","value_delim","red","green","blue","c1","c2","ratio"],"mappings":"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","file":"php_compressed.js","sourceRoot":"./"} \ No newline at end of file diff --git a/python_compressed.js b/python_compressed.js index 457f62e29..55cacf1b6 100644 --- a/python_compressed.js +++ b/python_compressed.js @@ -7,10 +7,11 @@ } else if (typeof exports === 'object') { // Node.js module.exports = factory(require("./blockly_compressed.js")); } else { // Browser - root.Blockly.Python = factory(root.Blockly); + var factoryExports = factory(root.Blockly); + root.Blockly.Python = factoryExports; } -}(this, function(Blockly) { -const $=Blockly.internal_; +}(this, function(__parent__) { +var $=__parent__.__namespace__; var module$contents$Blockly$Python_Python=new $.module$exports$Blockly$Generator.Generator("Python");module$contents$Blockly$Python_Python.addReservedWords("False,None,True,and,as,assert,break,class,continue,def,del,elif,else,except,exec,finally,for,from,global,if,import,in,is,lambda,nonlocal,not,or,pass,print,raise,return,try,while,with,yield,NotImplemented,Ellipsis,__debug__,quit,exit,copyright,license,credits,ArithmeticError,AssertionError,AttributeError,BaseException,BlockingIOError,BrokenPipeError,BufferError,BytesWarning,ChildProcessError,ConnectionAbortedError,ConnectionError,ConnectionRefusedError,ConnectionResetError,DeprecationWarning,EOFError,Ellipsis,EnvironmentError,Exception,FileExistsError,FileNotFoundError,FloatingPointError,FutureWarning,GeneratorExit,IOError,ImportError,ImportWarning,IndentationError,IndexError,InterruptedError,IsADirectoryError,KeyError,KeyboardInterrupt,LookupError,MemoryError,ModuleNotFoundError,NameError,NotADirectoryError,NotImplemented,NotImplementedError,OSError,OverflowError,PendingDeprecationWarning,PermissionError,ProcessLookupError,RecursionError,ReferenceError,ResourceWarning,RuntimeError,RuntimeWarning,StandardError,StopAsyncIteration,StopIteration,SyntaxError,SyntaxWarning,SystemError,SystemExit,TabError,TimeoutError,TypeError,UnboundLocalError,UnicodeDecodeError,UnicodeEncodeError,UnicodeError,UnicodeTranslateError,UnicodeWarning,UserWarning,ValueError,Warning,ZeroDivisionError,_,__build_class__,__debug__,__doc__,__import__,__loader__,__name__,__package__,__spec__,abs,all,any,apply,ascii,basestring,bin,bool,buffer,bytearray,bytes,callable,chr,classmethod,cmp,coerce,compile,complex,copyright,credits,delattr,dict,dir,divmod,enumerate,eval,exec,execfile,exit,file,filter,float,format,frozenset,getattr,globals,hasattr,hash,help,hex,id,input,int,intern,isinstance,issubclass,iter,len,license,list,locals,long,map,max,memoryview,min,next,object,oct,open,ord,pow,print,property,quit,range,raw_input,reduce,reload,repr,reversed,round,set,setattr,slice,sorted,staticmethod,str,sum,super,tuple,type,unichr,unicode,vars,xrange,zip"); module$contents$Blockly$Python_Python.ORDER_ATOMIC=0;module$contents$Blockly$Python_Python.ORDER_COLLECTION=1;module$contents$Blockly$Python_Python.ORDER_STRING_CONVERSION=1;module$contents$Blockly$Python_Python.ORDER_MEMBER=2.1;module$contents$Blockly$Python_Python.ORDER_FUNCTION_CALL=2.2;module$contents$Blockly$Python_Python.ORDER_EXPONENTIATION=3;module$contents$Blockly$Python_Python.ORDER_UNARY_SIGN=4;module$contents$Blockly$Python_Python.ORDER_BITWISE_NOT=4; module$contents$Blockly$Python_Python.ORDER_MULTIPLICATIVE=5;module$contents$Blockly$Python_Python.ORDER_ADDITIVE=6;module$contents$Blockly$Python_Python.ORDER_BITWISE_SHIFT=7;module$contents$Blockly$Python_Python.ORDER_BITWISE_AND=8;module$contents$Blockly$Python_Python.ORDER_BITWISE_XOR=9;module$contents$Blockly$Python_Python.ORDER_BITWISE_OR=10;module$contents$Blockly$Python_Python.ORDER_RELATIONAL=11;module$contents$Blockly$Python_Python.ORDER_LOGICAL_NOT=12; @@ -30,12 +31,12 @@ $.Blockly.Python.text_append=function(a){var b=$.Blockly.Python.nameDB_.getName( $.Blockly.Python.text_isEmpty=function(a){return["not len("+($.Blockly.Python.valueToCode(a,"VALUE",$.Blockly.Python.ORDER_NONE)||"''")+")",$.Blockly.Python.ORDER_LOGICAL_NOT]}; $.Blockly.Python.text_indexOf=function(a){var b="FIRST"===a.getFieldValue("END")?"find":"rfind",c=$.Blockly.Python.valueToCode(a,"FIND",$.Blockly.Python.ORDER_NONE)||"''";b=($.Blockly.Python.valueToCode(a,"VALUE",$.Blockly.Python.ORDER_MEMBER)||"''")+"."+b+"("+c+")";return a.workspace.options.oneBasedIndex?[b+" + 1",$.Blockly.Python.ORDER_ADDITIVE]:[b,$.Blockly.Python.ORDER_FUNCTION_CALL]}; $.Blockly.Python.text_charAt=function(a){var b=a.getFieldValue("WHERE")||"FROM_START",c=$.Blockly.Python.valueToCode(a,"VALUE","RANDOM"===b?$.Blockly.Python.ORDER_NONE:$.Blockly.Python.ORDER_MEMBER)||"''";switch(b){case "FIRST":return[c+"[0]",$.Blockly.Python.ORDER_MEMBER];case "LAST":return[c+"[-1]",$.Blockly.Python.ORDER_MEMBER];case "FROM_START":return a=$.Blockly.Python.getAdjustedInt(a,"AT"),[c+"["+a+"]",$.Blockly.Python.ORDER_MEMBER];case "FROM_END":return a=$.Blockly.Python.getAdjustedInt(a, -"AT",1,!0),[c+"["+a+"]",$.Blockly.Python.ORDER_MEMBER];case "RANDOM":return $.Blockly.Python.definitions_.import_random="import random",[$.Blockly.Python.provideFunction_("text_random_letter",["def "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(text):"," x = int(random.random() * len(text))"," return text[x];"])+"("+c+")",$.Blockly.Python.ORDER_FUNCTION_CALL]}throw Error("Unhandled option (text_charAt).");}; +"AT",1,!0),[c+"["+a+"]",$.Blockly.Python.ORDER_MEMBER];case "RANDOM":return $.Blockly.Python.definitions_.import_random="import random",[$.Blockly.Python.provideFunction_("text_random_letter","\ndef "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(text):\n x = int(random.random() * len(text))\n return text[x]\n")+"("+c+")",$.Blockly.Python.ORDER_FUNCTION_CALL]}throw Error("Unhandled option (text_charAt).");}; $.Blockly.Python.text_getSubstring=function(a){var b=a.getFieldValue("WHERE1"),c=a.getFieldValue("WHERE2"),d=$.Blockly.Python.valueToCode(a,"STRING",$.Blockly.Python.ORDER_MEMBER)||"''";switch(b){case "FROM_START":b=$.Blockly.Python.getAdjustedInt(a,"AT1");0===b&&(b="");break;case "FROM_END":b=$.Blockly.Python.getAdjustedInt(a,"AT1",1,!0);break;case "FIRST":b="";break;default:throw Error("Unhandled option (text_getSubstring)");}switch(c){case "FROM_START":a=$.Blockly.Python.getAdjustedInt(a,"AT2", 1);break;case "FROM_END":a=$.Blockly.Python.getAdjustedInt(a,"AT2",0,!0);(0,$.module$exports$Blockly$utils$string.isNumber)(String(a))?0===a&&(a=""):($.Blockly.Python.definitions_.import_sys="import sys",a+=" or sys.maxsize");break;case "LAST":a="";break;default:throw Error("Unhandled option (text_getSubstring)");}return[d+"["+b+" : "+a+"]",$.Blockly.Python.ORDER_MEMBER]}; $.Blockly.Python.text_changeCase=function(a){var b={UPPERCASE:".upper()",LOWERCASE:".lower()",TITLECASE:".title()"}[a.getFieldValue("CASE")];return[($.Blockly.Python.valueToCode(a,"TEXT",$.Blockly.Python.ORDER_MEMBER)||"''")+b,$.Blockly.Python.ORDER_FUNCTION_CALL]};$.Blockly.Python.text_trim=function(a){var b={LEFT:".lstrip()",RIGHT:".rstrip()",BOTH:".strip()"}[a.getFieldValue("MODE")];return[($.Blockly.Python.valueToCode(a,"TEXT",$.Blockly.Python.ORDER_MEMBER)||"''")+b,$.Blockly.Python.ORDER_FUNCTION_CALL]}; $.Blockly.Python.text_print=function(a){return"print("+($.Blockly.Python.valueToCode(a,"TEXT",$.Blockly.Python.ORDER_NONE)||"''")+")\n"}; -$.Blockly.Python.text_prompt_ext=function(a){var b=$.Blockly.Python.provideFunction_("text_prompt",["def "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(msg):"," try:"," return raw_input(msg)"," except NameError:"," return input(msg)"]);var c=a.getField("TEXT")?$.Blockly.Python.quote_(a.getFieldValue("TEXT")):$.Blockly.Python.valueToCode(a,"TEXT",$.Blockly.Python.ORDER_NONE)||"''";b=b+"("+c+")";"NUMBER"===a.getFieldValue("TYPE")&&(b="float("+b+")");return[b,$.Blockly.Python.ORDER_FUNCTION_CALL]}; +$.Blockly.Python.text_prompt_ext=function(a){var b=$.Blockly.Python.provideFunction_("text_prompt","\ndef "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(msg):\n try:\n return raw_input(msg)\n except NameError:\n return input(msg)\n");var c=a.getField("TEXT")?$.Blockly.Python.quote_(a.getFieldValue("TEXT")):$.Blockly.Python.valueToCode(a,"TEXT",$.Blockly.Python.ORDER_NONE)||"''";b=b+"("+c+")";"NUMBER"===a.getFieldValue("TYPE")&&(b="float("+b+")");return[b,$.Blockly.Python.ORDER_FUNCTION_CALL]}; $.Blockly.Python.text_prompt=$.Blockly.Python.text_prompt_ext;$.Blockly.Python.text_count=function(a){var b=$.Blockly.Python.valueToCode(a,"TEXT",$.Blockly.Python.ORDER_MEMBER)||"''";a=$.Blockly.Python.valueToCode(a,"SUB",$.Blockly.Python.ORDER_NONE)||"''";return[b+".count("+a+")",$.Blockly.Python.ORDER_FUNCTION_CALL]}; $.Blockly.Python.text_replace=function(a){var b=$.Blockly.Python.valueToCode(a,"TEXT",$.Blockly.Python.ORDER_MEMBER)||"''",c=$.Blockly.Python.valueToCode(a,"FROM",$.Blockly.Python.ORDER_NONE)||"''";a=$.Blockly.Python.valueToCode(a,"TO",$.Blockly.Python.ORDER_NONE)||"''";return[b+".replace("+c+", "+a+")",$.Blockly.Python.ORDER_MEMBER]};$.Blockly.Python.text_reverse=function(a){return[($.Blockly.Python.valueToCode(a,"TEXT",$.Blockly.Python.ORDER_MEMBER)||"''")+"[::-1]",$.Blockly.Python.ORDER_MEMBER]};var module$exports$Blockly$Python$procedures={}; $.Blockly.Python.procedures_defreturn=function(a){for(var b=[],c=a.workspace,d=(0,$.module$exports$Blockly$Variables.allUsedVarModels)(c)||[],e=0,f;f=d[e];e++)f=f.name,-1===a.getVars().indexOf(f)&&b.push($.Blockly.Python.nameDB_.getName(f,$.module$exports$Blockly$Names.NameType.VARIABLE));c=(0,$.module$exports$Blockly$Variables.allDeveloperVariables)(c);for(d=0;d 0";break;case "NEGATIVE":d=b+" < 0";break;case "DIVISIBLE_BY":a=$.Blockly.Python.valueToCode(a,"DIVISOR",$.Blockly.Python.ORDER_MULTIPLICATIVE);if(!a||"0"===a)return["False",$.Blockly.Python.ORDER_ATOMIC];d=b+" % "+a+" == 0"}return[d,$.Blockly.Python.ORDER_RELATIONAL]}; +$.Blockly.Python.math_number_property=function(a){var b={EVEN:[" % 2 == 0",$.Blockly.Python.ORDER_MULTIPLICATIVE,$.Blockly.Python.ORDER_RELATIONAL],ODD:[" % 2 == 1",$.Blockly.Python.ORDER_MULTIPLICATIVE,$.Blockly.Python.ORDER_RELATIONAL],WHOLE:[" % 1 == 0",$.Blockly.Python.ORDER_MULTIPLICATIVE,$.Blockly.Python.ORDER_RELATIONAL],POSITIVE:[" > 0",$.Blockly.Python.ORDER_RELATIONAL,$.Blockly.Python.ORDER_RELATIONAL],NEGATIVE:[" < 0",$.Blockly.Python.ORDER_RELATIONAL,$.Blockly.Python.ORDER_RELATIONAL], +DIVISIBLE_BY:[null,$.Blockly.Python.ORDER_MULTIPLICATIVE,$.Blockly.Python.ORDER_RELATIONAL],PRIME:[null,$.Blockly.Python.ORDER_NONE,$.Blockly.Python.ORDER_FUNCTION_CALL]},c=a.getFieldValue("PROPERTY");b=$.$jscomp.makeIterator(b[c]);var d=b.next().value,e=b.next().value;b=b.next().value;e=$.Blockly.Python.valueToCode(a,"NUMBER_TO_CHECK",e)||"0";if("PRIME"===c)$.Blockly.Python.definitions_.import_math="import math",$.Blockly.Python.definitions_.from_numbers_import_Number="from numbers import Number", +a=$.Blockly.Python.provideFunction_("math_isPrime","\ndef "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(n):\n # https://en.wikipedia.org/wiki/Primality_test#Naive_methods\n # If n is not a number but a string, try parsing it.\n if not isinstance(n, Number):\n try:\n n = float(n)\n except:\n return False\n if n == 2 or n == 3:\n return True\n # False if n is negative, is 1, or not whole, or if n is divisible by 2 or 3.\n if n <= 1 or n % 1 != 0 or n % 2 == 0 or n % 3 == 0:\n return False\n # Check all the numbers of form 6k +/- 1, up to sqrt(n).\n for x in range(6, int(math.sqrt(n)) + 2, 6):\n if n % (x - 1) == 0 or n % (x + 1) == 0:\n return False\n return True\n")+ +"("+e+")";else if("DIVISIBLE_BY"===c){a=$.Blockly.Python.valueToCode(a,"DIVISOR",$.Blockly.Python.ORDER_MULTIPLICATIVE)||"0";if("0"===a)return["False",$.Blockly.Python.ORDER_ATOMIC];a=e+" % "+a+" == 0"}else a=e+d;return[a,b]}; $.Blockly.Python.math_change=function(a){$.Blockly.Python.definitions_.from_numbers_import_Number="from numbers import Number";var b=$.Blockly.Python.valueToCode(a,"DELTA",$.Blockly.Python.ORDER_ADDITIVE)||"0";a=$.Blockly.Python.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE);return a+" = ("+a+" if isinstance("+a+", Number) else 0) + "+b+"\n"};$.Blockly.Python.math_round=$.Blockly.Python.math_single;$.Blockly.Python.math_trig=$.Blockly.Python.math_single; -$.Blockly.Python.math_on_list=function(a){var b=a.getFieldValue("OP");a=$.Blockly.Python.valueToCode(a,"LIST",$.Blockly.Python.ORDER_NONE)||"[]";switch(b){case "SUM":b="sum("+a+")";break;case "MIN":b="min("+a+")";break;case "MAX":b="max("+a+")";break;case "AVERAGE":$.Blockly.Python.definitions_.from_numbers_import_Number="from numbers import Number";b=$.Blockly.Python.provideFunction_("math_mean",["def "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(myList):"," localList = [e for e in myList if isinstance(e, Number)]", -" if not localList: return"," return float(sum(localList)) / len(localList)"])+"("+a+")";break;case "MEDIAN":$.Blockly.Python.definitions_.from_numbers_import_Number="from numbers import Number";b=$.Blockly.Python.provideFunction_("math_median",["def "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(myList):"," localList = sorted([e for e in myList if isinstance(e, Number)])"," if not localList: return"," if len(localList) % 2 == 0:"," return (localList[len(localList) // 2 - 1] + localList[len(localList) // 2]) / 2.0", -" else:"," return localList[(len(localList) - 1) // 2]"])+"("+a+")";break;case "MODE":b=$.Blockly.Python.provideFunction_("math_modes",["def "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(some_list):"," modes = []"," # Using a lists of [item, count] to keep count rather than dict",' # to avoid "unhashable" errors when the counted item is itself a list or dict.'," counts = []"," maxCount = 1"," for item in some_list:"," found = False"," for count in counts:"," if count[0] == item:", -" count[1] += 1"," maxCount = max(maxCount, count[1])"," found = True"," if not found:"," counts.append([item, 1])"," for counted_item, item_count in counts:"," if item_count == maxCount:"," modes.append(counted_item)"," return modes"])+"("+a+")";break;case "STD_DEV":$.Blockly.Python.definitions_.import_math="import math";b=$.Blockly.Python.provideFunction_("math_standard_deviation",["def "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(numbers):"," n = len(numbers)", -" if n == 0: return"," mean = float(sum(numbers)) / n"," variance = sum((x - mean) ** 2 for x in numbers) / n"," return math.sqrt(variance)"])+"("+a+")";break;case "RANDOM":$.Blockly.Python.definitions_.import_random="import random";b="random.choice("+a+")";break;default:throw Error("Unknown operator: "+b);}return[b,$.Blockly.Python.ORDER_FUNCTION_CALL]}; -$.Blockly.Python.math_modulo=function(a){var b=$.Blockly.Python.valueToCode(a,"DIVIDEND",$.Blockly.Python.ORDER_MULTIPLICATIVE)||"0";a=$.Blockly.Python.valueToCode(a,"DIVISOR",$.Blockly.Python.ORDER_MULTIPLICATIVE)||"0";return[b+" % "+a,$.Blockly.Python.ORDER_MULTIPLICATIVE]}; +$.Blockly.Python.math_on_list=function(a){var b=a.getFieldValue("OP");a=$.Blockly.Python.valueToCode(a,"LIST",$.Blockly.Python.ORDER_NONE)||"[]";switch(b){case "SUM":b="sum("+a+")";break;case "MIN":b="min("+a+")";break;case "MAX":b="max("+a+")";break;case "AVERAGE":$.Blockly.Python.definitions_.from_numbers_import_Number="from numbers import Number";b=$.Blockly.Python.provideFunction_("math_mean","\ndef "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(myList):\n localList = [e for e in myList if isinstance(e, Number)]\n if not localList: return\n return float(sum(localList)) / len(localList)\n")+ +"("+a+")";break;case "MEDIAN":$.Blockly.Python.definitions_.from_numbers_import_Number="from numbers import Number";b=$.Blockly.Python.provideFunction_("math_median","\ndef "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(myList):\n localList = sorted([e for e in myList if isinstance(e, Number)])\n if not localList: return\n if len(localList) % 2 == 0:\n return (localList[len(localList) // 2 - 1] + localList[len(localList) // 2]) / 2.0\n else:\n return localList[(len(localList) - 1) // 2]\n")+ +"("+a+")";break;case "MODE":b=$.Blockly.Python.provideFunction_("math_modes","\ndef "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+'(some_list):\n modes = []\n # Using a lists of [item, count] to keep count rather than dict\n # to avoid "unhashable" errors when the counted item is itself a list or dict.\n counts = []\n maxCount = 1\n for item in some_list:\n found = False\n for count in counts:\n if count[0] == item:\n count[1] += 1\n maxCount = max(maxCount, count[1])\n found = True\n if not found:\n counts.append([item, 1])\n for counted_item, item_count in counts:\n if item_count == maxCount:\n modes.append(counted_item)\n return modes\n')+ +"("+a+")";break;case "STD_DEV":$.Blockly.Python.definitions_.import_math="import math";b=$.Blockly.Python.provideFunction_("math_standard_deviation","\ndef "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(numbers):\n n = len(numbers)\n if n == 0: return\n mean = float(sum(numbers)) / n\n variance = sum((x - mean) ** 2 for x in numbers) / n\n return math.sqrt(variance)\n")+"("+a+")";break;case "RANDOM":$.Blockly.Python.definitions_.import_random="import random";b="random.choice("+a+")";break;default:throw Error("Unknown operator: "+ +b);}return[b,$.Blockly.Python.ORDER_FUNCTION_CALL]};$.Blockly.Python.math_modulo=function(a){var b=$.Blockly.Python.valueToCode(a,"DIVIDEND",$.Blockly.Python.ORDER_MULTIPLICATIVE)||"0";a=$.Blockly.Python.valueToCode(a,"DIVISOR",$.Blockly.Python.ORDER_MULTIPLICATIVE)||"0";return[b+" % "+a,$.Blockly.Python.ORDER_MULTIPLICATIVE]}; $.Blockly.Python.math_constrain=function(a){var b=$.Blockly.Python.valueToCode(a,"VALUE",$.Blockly.Python.ORDER_NONE)||"0",c=$.Blockly.Python.valueToCode(a,"LOW",$.Blockly.Python.ORDER_NONE)||"0";a=$.Blockly.Python.valueToCode(a,"HIGH",$.Blockly.Python.ORDER_NONE)||"float('inf')";return["min(max("+b+", "+c+"), "+a+")",$.Blockly.Python.ORDER_FUNCTION_CALL]}; $.Blockly.Python.math_random_int=function(a){$.Blockly.Python.definitions_.import_random="import random";var b=$.Blockly.Python.valueToCode(a,"FROM",$.Blockly.Python.ORDER_NONE)||"0";a=$.Blockly.Python.valueToCode(a,"TO",$.Blockly.Python.ORDER_NONE)||"0";return["random.randint("+b+", "+a+")",$.Blockly.Python.ORDER_FUNCTION_CALL]};$.Blockly.Python.math_random_float=function(a){$.Blockly.Python.definitions_.import_random="import random";return["random.random()",$.Blockly.Python.ORDER_FUNCTION_CALL]}; $.Blockly.Python.math_atan2=function(a){$.Blockly.Python.definitions_.import_math="import math";var b=$.Blockly.Python.valueToCode(a,"X",$.Blockly.Python.ORDER_NONE)||"0";return["math.atan2("+($.Blockly.Python.valueToCode(a,"Y",$.Blockly.Python.ORDER_NONE)||"0")+", "+b+") / math.pi * 180",$.Blockly.Python.ORDER_MULTIPLICATIVE]};var module$exports$Blockly$Python$loops={}; $.Blockly.Python.controls_repeat_ext=function(a){var b=a.getField("TIMES")?String(parseInt(a.getFieldValue("TIMES"),10)):$.Blockly.Python.valueToCode(a,"TIMES",$.Blockly.Python.ORDER_NONE)||"0";b=(0,$.module$exports$Blockly$utils$string.isNumber)(b)?parseInt(b,10):"int("+b+")";var c=$.Blockly.Python.statementToCode(a,"DO");c=$.Blockly.Python.addLoopTrap(c,a)||$.Blockly.Python.PASS;return"for "+$.Blockly.Python.nameDB_.getDistinctName("count",$.module$exports$Blockly$Names.NameType.VARIABLE)+" in range("+ b+"):\n"+c};$.Blockly.Python.controls_repeat=$.Blockly.Python.controls_repeat_ext;$.Blockly.Python.controls_whileUntil=function(a){var b="UNTIL"===a.getFieldValue("MODE"),c=$.Blockly.Python.valueToCode(a,"BOOL",b?$.Blockly.Python.ORDER_LOGICAL_NOT:$.Blockly.Python.ORDER_NONE)||"False",d=$.Blockly.Python.statementToCode(a,"DO");d=$.Blockly.Python.addLoopTrap(d,a)||$.Blockly.Python.PASS;b&&(c="not "+c);return"while "+c+":\n"+d}; $.Blockly.Python.controls_for=function(a){var b=$.Blockly.Python.nameDB_.getName(a.getFieldValue("VAR"),$.module$exports$Blockly$Names.NameType.VARIABLE),c=$.Blockly.Python.valueToCode(a,"FROM",$.Blockly.Python.ORDER_NONE)||"0",d=$.Blockly.Python.valueToCode(a,"TO",$.Blockly.Python.ORDER_NONE)||"0",e=$.Blockly.Python.valueToCode(a,"BY",$.Blockly.Python.ORDER_NONE)||"1",f=$.Blockly.Python.statementToCode(a,"DO");f=$.Blockly.Python.addLoopTrap(f,a)||$.Blockly.Python.PASS;var g="";a=function(){return $.Blockly.Python.provideFunction_("upRange", -["def "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(start, stop, step):"," while start <= stop:"," yield start"," start += abs(step)"])};var h=function(){return $.Blockly.Python.provideFunction_("downRange",["def "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(start, stop, step):"," while start >= stop:"," yield start"," start -= abs(step)"])};if((0,$.module$exports$Blockly$utils$string.isNumber)(c)&&(0,$.module$exports$Blockly$utils$string.isNumber)(d)&&(0,$.module$exports$Blockly$utils$string.isNumber)(e))c= +"\ndef "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(start, stop, step):\n while start <= stop:\n yield start\n start += abs(step)\n")};var h=function(){return $.Blockly.Python.provideFunction_("downRange","\ndef "+$.Blockly.Python.FUNCTION_NAME_PLACEHOLDER_+"(start, stop, step):\n while start >= stop:\n yield start\n start -= abs(step)\n")};if((0,$.module$exports$Blockly$utils$string.isNumber)(c)&&(0,$.module$exports$Blockly$utils$string.isNumber)(d)&&(0,$.module$exports$Blockly$utils$string.isNumber)(e))c= Number(c),d=Number(d),e=Math.abs(Number(e)),0===c%1&&0===d%1&&0===e%1?(c<=d?(d++,a=0===c&&1===e?d:c+", "+d,1!==e&&(a+=", "+e)):(d--,a=c+", "+d+", -"+e),a="range("+a+")"):(a=c