/*! For license information please see index.js.LICENSE.txt */ !function(e,o){if("object"==typeof exports&&"object"==typeof module)module.exports=o(require("blockly/core"));else if("function"==typeof define&&define.amd)define(["blockly/core"],o);else{var t="object"==typeof exports?o(require("blockly/core")):o(e.Blockly);for(var r in t)("object"==typeof exports?exports:e)[r]=t[r]}}(this,(e=>(()=>{"use strict";var o={573:o=>{o.exports=e}},t={};function r(e){var n=t[e];if(void 0!==n)return n.exports;var i=t[e]={exports:{}};return o[e](i,i.exports,r),i.exports}r.n=e=>{var o=e&&e.__esModule?()=>e.default:()=>e;return r.d(o,{a:o}),o},r.d=(e,o)=>{for(var t in o)r.o(o,t)&&!r.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:o[t]})},r.o=(e,o)=>Object.prototype.hasOwnProperty.call(e,o),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{r.r(n),r.d(n,{FieldGridDropdown:()=>f});var e=r(573),o=r.n(e);function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t(e)}function i(e,o){if(!(e instanceof o))throw new TypeError("Cannot call a class as a function")}function l(e,o){for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:void 0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0;return i(this,y),(o=p.call(this,e,t,r)).columns_=3,r&&r.columns&&o.setColumnsInternal_(r.columns),r&&r.primaryColour&&(o.primaryColour=r.primaryColour),r&&r.borderColour&&(o.borderColour=r.borderColour),o}return t=y,r=[{key:"setColumns",value:function(e){this.setColumnsInternal_(e),this.updateColumnsStyling_()}},{key:"setColumnsInternal_",value:function(e){e=parseInt(e),!isNaN(e)&&e>=1&&(this.columns_=e)}},{key:"showEditor_",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;u(d(y.prototype),"showEditor_",this).call(this,e);var t=this.sourceBlock_.isShadow()?this.sourceBlock_.getParent().getColour():this.sourceBlock_.getColour(),r=this.sourceBlock_.isShadow()?this.sourceBlock_.getParent().style.colourTertiary:this.sourceBlock_.style.colourTertiary,n=this.primaryColour||t,i=this.borderColour||r;o().DropDownDiv.setColour(n,i),o().utils.dom.addClass(this.menu_.getElement(),"fieldGridDropDownContainer"),this.updateColumnsStyling_(),o().DropDownDiv.showPositionedByField(this,this.dropdownDispose_.bind(this))}},{key:"updateColumnsStyling_",value:function(){var e=this.menu_?this.menu_.getElement():null;e&&(e.style.gridTemplateColumns="repeat(".concat(this.columns_,", min-content)"))}}],n=[{key:"fromJson",value:function(e){return new y(e.options,void 0,e)}}],r&&l(t.prototype,r),n&&l(t,n),Object.defineProperty(t,"prototype",{writable:!1}),y}(o().FieldDropdown);Object.defineProperty(o(),"FieldGridDropdown",{value:f,writable:!0,enumerable:!0,configurable:!0}),o().fieldRegistry.register("field_grid_dropdown",o().FieldGridDropdown),o().Css.register(["/** Setup grid layout of DropDown */\n .fieldGridDropDownContainer.blocklyMenu {\n display: grid;\n grid-gap: 7px;\n }\n /* Change look of cells (add border, sizing, padding, and text color) */\n .fieldGridDropDownContainer.blocklyMenu .blocklyMenuItem {\n border: 1px solid rgba(1, 1, 1, 0.5);\n border-radius: 4px;\n color: white;\n min-width: auto;\n padding-left: 15px; /* override padding-left now that checkmark is hidden */\n }\n /* Change look of selected cell */\n .fieldGridDropDownContainer .blocklyMenuItem .blocklyMenuItemCheckbox {\n display: none; /* Hide checkmark */\n }\n .fieldGridDropDownContainer .blocklyMenuItem.blocklyMenuItemSelected {\n background-color: rgba(1, 1, 1, 0.25);\n }\n /* Change look of focus/highlighted cell */\n .fieldGridDropDownContainer .blocklyMenuItem.blocklyMenuItemHighlight {\n box-shadow: 0 0 0 4px hsla(0, 0%, 100%, .2);\n }\n .fieldGridDropDownContainer .blocklyMenuItemHighlight {\n /* Uses less selectors so as to not affect blocklyMenuItemSelected */\n background-color: inherit;\n }\n .fieldGridDropDownContainer {\n margin: 7px; /* needed for highlight */\n }"])})(),n})()));