pxt-arcade 2.1.21 → 2.1.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- var pxtTargetBundle = {"id":"arcade","name":"arcade","nickname":"arcade","thumbnailName":"MakeCode Arcade","title":"Microsoft MakeCode Arcade","description":"Develop your programming skills by quickly creating and modding retro arcade games with Blocks and JavaScript in the MakeCode editor","corepkg":"device","cloud":{"workspace":false,"sharing":true,"thumbnails":true,"importing":true,"packages":true,"publishing":true,"githubPackages":true,"showBadges":true,"cloudProviders":{"github":{"id":"github","name":"GitHub","icon":"./static/providers/github-mark.png","identity":false,"order":4},"microsoft":{"id":"microsoft","name":"Microsoft","icon":"./static/providers/microsoft-logo.svg","identity":true,"redirect":true,"order":1},"google":{"id":"google","name":"Google","icon":"./static/providers/google-logo.svg","identity":true,"redirect":true,"order":2},"clever":{"id":"clever","name":"Clever","icon":"./static/providers/clever-logo.png","identity":true,"redirect":true,"order":3}}},"staticpkgdirs":{"base":["libs/hw","libs/hw---n3","libs/hw---n4","libs/hw---samd51","libs/hw---stm32f401","libs/hw---rp2040"],"extensions":["libs/accelerometer","libs/color","libs/edge-connector","libs/esp32","libs/feather","libs/light","libs/lightsensor","libs/mqtt","libs/net","libs/net-game","libs/palette","libs/radio","libs/radio-broadcast","libs/serial","libs/servo","libs/settings","libs/sevenseg","libs/shader","libs/thermometer"]},"cacheusedblocksdirs":["skillmap/space","skillmap/platformer"],"compile":{"useUF2":true,"deployDrives":"(ARCADE|PY|FTHR840BOOT|ARCD|RPI-RP2)","deployFileMarker":"INFO_UF2.TXT","driveName":"ARCADE","floatingPoint":true,"taggedInts":true,"nativeType":"thumb","gc":true,"upgrades":[],"webUSB":true,"saveAsPNG":true,"patches":{"0.0.0 - *":[{"type":"missingPackage","map":{"(DigitalPin|AnalogPin|pins)\\.P\\d\\d?":"edge-connector","serial\\.":"serial"}}],"0.0.0 - 0.1.1":[{"type":"api","map":{"controller\\.controlSprite":"controller.moveSprite","controller\\.controlPlayer":"controller.movePlayer"}}],"0.0.0 - 0.3.23":[{"type":"package","map":{"local-multiplayer":""}}],"0.0.0 - 0.3.24":[{"type":"api","map":{"sprites\\.createEmptySprite\\(([^)]+)\\)":"sprites.create(img`.`, $1)"}},{"type":"blockId","map":{"keysdx":"keydx","keysdy":"keydy"}}],"0.0.0 - 0.11.20":[{"type":"api","map":{"SpriteKind":"SpriteKindLegacy"}}],"0.0.0 - 0.14.57":[{"type":"missingPackage","map":{"scene\\.setTileMap":"color-coded-tilemap","scene\\.setTile":"color-coded-tilemap","scene\\.getTile":"color-coded-tilemap","scene\\.getTilesByType":"color-coded-tilemap","scene\\.placeOnRandomTile":"color-coded-tilemap","scene\\.setTileAt":"color-coded-tilemap","scene\\.onHitTile":"color-coded-tilemap","\\.tileHitFrom":"color-coded-tilemap"}}],"0.0.0 - 0.18.9":[{"type":"api","map":{"tilemap\\s*\\.\\s*createTileSprite":"tiles.createTileSprite","tilemap\\s*\\.\\s*coverAllTiles":"tiles.coverAllTiles","tilemap\\s*\\.\\s*createSpritesOnTiles":"tiles.createSpritesOnTiles","tilemap\\s*\\.\\s*destorySpritesOfKind":"tiles.destroySpritesOfKind","tilemap\\s*\\.\\s*tileIs":"tiles.tileIs","tilemap\\s*\\.\\s*tileIsWall":"tiles.tileIsWall","tilemap\\s*\\.\\s*forEachTileOfKind":"tiles.forEachTileOfKind","tilemap\\s*\\.\\s*forEachTileOfMap":"tiles.forEachTileOfMap","tilemap\\s*\\.\\s*replaceAllTiles":"tiles.replaceAllTiles","tilemap\\s*\\.\\s*columnInDirection":"tiles.columnInDirection","tilemap\\s*\\.\\s*rowInDirection":"tiles.rowInDirection","tilemap\\s*\\.\\s*forEachDirection":"tiles.forEachDirection","tilemap\\s*\\.\\s*centerCameraOnTile":"tiles.centerCameraOnTile","tilemap\\s*\\.\\s*locationOfSprite":"tiles.locationOfSprite","tilemap\\s*\\.\\s*RowCol":"tiles.RowCol","tilemap\\s*\\.\\s*spriteRowCol":"tiles.spriteRowCol","tilemap\\s*\\.\\s*locationColumn":"tiles.locationColumn","tilemap\\s*\\.\\s*locationRow":"tiles.locationRow","tilemap\\s*\\.\\s*XY":"tiles.XY","tilemap\\s*\\.\\s*locationXY":"tiles.locationXY","tilemap\\s*\\.\\s*locationInDirection":"tiles.locationInDirection","tilemap\\s*\\.\\s*_directionEditor":"tiles._directionEditor","tilemap\\s*\\.\\s*tileWidth":"tiles.tileWidth","tilemap\\s*\\.\\s*tilemapColumns":"tiles.tilemapColumns","tilemap\\s*\\.\\s*tilemapRows":"tiles.tilemapRows","tilemap\\s*\\.\\s*screenCoordinateToTile":"tiles.screenCoordinateToTile","tilemap\\s*\\.\\s*tileCoordinateToScreen":"tiles.tileCoordinateToScreen","tilemap\\s*\\.\\s*centeredTileCoordinateToScreen":"tiles.centeredTileCoordinateToScreen","tilemap\\s*\\.\\s*OVERWORLD_MAP_ID":"tiles.OVERWORLD_MAP_ID","tilemap\\s*\\.\\s*MAP_LOADED_EVENT":"tiles.MAP_LOADED_EVENT","tilemap\\s*\\.\\s*WorldMap":"tiles.WorldMap","tilemap\\s*\\.\\s*WorldMapConnection":"tiles.WorldMapConnection","tilemap\\s*\\.\\s*createMap":"tiles.createMap","tilemap\\s*\\.\\s*copyMap":"tiles.copyMap","tilemap\\s*\\.\\s*loadMap":"tiles.loadMap","tilemap\\s*\\.\\s*getLoadedMap":"tiles.getLoadedMap","tilemap\\s*\\.\\s*onMapLoaded":"tiles.onMapLoaded","tilemap\\s*\\.\\s*onMapUnloaded":"tiles.onMapUnloaded","tilemap\\s*\\.\\s*connectMapById":"tiles.connectMapById","tilemap\\s*\\.\\s*loadConnectedMap":"tiles.loadConnectedMap","tilemap\\s*\\.\\s*getConnectedMap":"tiles.getConnectedMap","tilemap\\s*\\.\\s*setWorldLocationToMap":"tiles.setWorldLocationToMap","tilemap\\s*\\.\\s*loadMapAt":"tiles.loadMapAt","tilemap\\s*\\.\\s*getMapAtWorldLocation":"tiles.getMapAtWorldLocation","tilemap\\s*\\.\\s*loadMapInDirection":"tiles.loadMapInDirection","tilemap\\s*\\.\\s*loadedWorldColumn":"tiles.loadedWorldColumn","tilemap\\s*\\.\\s*loadedWorldRow":"tiles.loadedWorldRow"}}],"0.0.0 - 1.9.0":[{"type":"api","map":{"myCorg\\s*\\.\\s*follow":"myCorg.cameraFollow"}}]},"switches":{},"jsRefCounting":false,"utf8":true},"compileService":{"buildEngine":"codal","githubCorePackage":"lancaster-university/codal","gittag":"v0.8.0","dockerImage":"pext/yotta:latest","codalTarget":{"branches":{}}},"variants":{"stm32f401":{"compile":{"hasHex":true,"openocdScript":"source [find interface/stlink-v2.cfg]; source [find target/stm32f4x.cfg]","flashEnd":524288,"uf2Family":"0x57755a57"},"compileService":{"codalTarget":{"name":"codal-big-brainpad","url":"https://github.com/lancaster-university/codal-big-brainpad","branch":"v1.3.1","type":"git"},"codalBinary":"STM32","serviceId":"codal2stm32","dockerImage":"pext/yotta:latest"}},"samd51":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; set CHIPNAME at91samd51g19; source [find target/atsame5x.cfg]","openocdScriptAlt":"source [find interface/stlink-v2.cfg]; set CPUTAPID 0x2ba01477; set CHIPNAME at91samd51g19; source [find target/at91samdXX.cfg]","ramSize":196608,"flashEnd":524288,"uf2Family":"0x55114460"},"compileService":{"codalTarget":{"name":"codal-itsybitsy-m4","url":"https://github.com/lancaster-university/codal-itsybitsy-m4","branch":"v0.2.7","type":"git"},"codalBinary":"ITSYBITSY_M4","serviceId":"codal2samd51","dockerImage":"pext/yotta:latest"}},"nrf52840":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; source [find target/nrf52.cfg]","webUSB":false,"flashEnd":1007616,"uf2Family":"0xada52840"},"compileService":{"codalTarget":{"name":"codal-nrf52840-dk","url":"https://github.com/mmoskal/codal-nrf52840-dk","branch":"v1.1.7","type":"git"},"codalBinary":"NRF52840_DK","serviceId":"codal2nrf52840","dockerImage":"pext/yotta:latest","yottaConfig":{"pxt":{"board":{"id":"BOARD_ID_NRF52840"}}}}},"nrf52833":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; source [find target/nrf52.cfg]","webUSB":false,"useUF2":false,"flashEnd":524288,"deployDrives":".*","deployFileMarker":"DETAILS.TXT"},"compileService":{"codalTarget":{"name":"codal-nrf52833-dk","url":"https://github.com/mmoskal/codal-nrf52833-dk","branch":"v2.0.2","type":"git"},"codalBinary":"NRF52840_DK","serviceId":"codal2nrf52840","dockerImage":"pext/yotta:latest","yottaConfig":{"pxt":{"board":{"id":"BOARD_ID_NRF52833"}}}}},"rp2040":{"compile":{"hasHex":true,"openocdScript":"???","flashChecksumAddr":0,"flashEnd":2097152,"uf2Family":"0xe48bff56"},"compileService":{"codalTarget":{"name":"codal-pi-pico","url":"https://github.com/lancaster-university/codal-pi-pico","branch":"v0.0.13","type":"git"},"gittag":"v0.9.0","codalBinary":"PI-PICO","serviceId":"codal2pico","dockerImage":"pext/arm:gcc9"}},"rpi":{"compile":{"hasHex":true,"useELF":true,"runtimeIsARM":true,"flashCodeAlign":256,"webUSB":false,"stackAlign":2},"compileService":{"buildEngine":"dockermake","dockerImage":"pext/rpi:alsa","serviceId":"rpi"}},"vm":{"compile":{"hasHex":true,"useELF":true,"flashCodeAlign":256,"webUSB":false,"nativeType":"vm","stackAlign":2},"compileService":{"buildEngine":"dockercross","dockerImage":"pext/crossbuild","serviceId":"crossbuild","skipCloudBuild":true}}},"serial":{"useEditor":true,"log":true,"editorTheme":{"graphBackground":"#d9d9d9","lineColors":["#009DDC","#FB48C7","#40bf4a","#8073E5","#d25b33"]}},"runtime":{"mathBlocks":true,"loopsBlocks":true,"logicBlocks":true,"variablesBlocks":true,"textBlocks":true,"functionBlocks":true,"breakBlock":true,"continueBlock":true,"pauseUntilBlock":{"category":"loops"},"functionsOptions":{"useNewFunctions":true,"extraFunctionEditorTypes":[{"typeName":"Sprite","icon":"send","defaultName":"mySprite"},{"typeName":"Image","icon":"image outline","defaultName":"myImage"},{"label":"Location","typeName":"tiles.Location","icon":"tree","defaultName":"myLocation"}]},"listsBlocks":true,"tilesetFieldEditorIdentity":"images._tile","bannedCategories":["pins","control","input","serial","power"]},"simulator":{"autoRun":true,"autoRunLight":false,"emptyRunCode":"pxsim.pxtcore.updateScreen(new pxsim.RefImage(160, 120, 4))","aspectRatio":0.85,"dynamicBoardDefinition":true,"keymap":true},"queryVariants":{"skillmap=1":{"appTheme":{"embeddedTutorial":true,"allowParentController":true,"shareFinishedTutorials":false,"hideReplaceMyCode":false}},"teachertool=1":{"appTheme":{"hideMenuBar":true,"workspaceSearch":true,"noReloadOnUpdate":true}},"ninja=1":{"appTheme":{"embeddedTutorial":true,"allowParentController":true,"shareFinishedTutorials":false,"hideReplaceMyCode":false}}},"unsupportedBrowsers":[{"id":"ie"}],"uploadDocs":true,"noSimShims":true,"defaultBadges":[{"id":"skillmap-completion-save the forest","type":"skillmap-completion","image":"./static/badges/badge-forest.png","lockedImage":"./static/badges/badge-forest-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/forest","title":"Save the Forest"},{"id":"skillmap-completion-zookeeper","type":"skillmap-completion","image":"./static/badges/badge-zoo.png","lockedImage":"./static/badges/badge-zoo-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/zoo","title":"Zookeeper"},{"id":"skillmap-completion-rockstar","image":"./static/badges/badge-rockstar.png","lockedImage":"./static/badges/badge-rockstar-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/rockstar","type":"skillmap-completion","title":"80's Rockstar"},{"id":"skillmap-completion-build a platformer game!","image":"./static/badges/badge-jungle.png","lockedImage":"./static/badges/badge-jungle-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/jungle","type":"skillmap-completion","title":"Jungle Jump"},{"id":"skillmap-completion-space","image":"./static/badges/badge-space.png","lockedImage":"./static/badges/badge-space-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/space","type":"skillmap-completion","title":"Space Explorer"},{"id":"skillmap-completion-shark","image":"./static/badges/badge-shark.png","lockedImage":"./static/badges/badge-shark-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/shark","type":"skillmap-completion","title":"Shark Splash"}],"versions":{"branch":"master","tag":"v2.1.21","commits":"https://github.com/microsoft/pxt-arcade/commits/f75423aff6b5ed4d1058313fa2130f832a2a6bd4","target":"2.1.21","pxt":"12.2.12"},"blocksprj":{"id":"blocksprj","config":{"name":"{0}","dependencies":{"device":"*"},"description":"","files":["main.blocks","main.ts","README.md","assets.json"],"additionalFilePaths":[]},"files":{"README.md":" ","assets.json":"","main.blocks":"<xml xmlns=\"http://www.w3.org/1999/xhtml\">\n <variables></variables>\n <block type=\"pxt-on-start\" x=\"0\" y=\"0\"></block>\n</xml>","main.ts":" "}},"tsprj":{"id":"tsprj","config":{"name":"{0}","dependencies":{"device":"*"},"description":"","files":["main.ts","README.md","assets.json"],"additionalFilePaths":[]},"files":{"README.md":" ","assets.json":"","main.ts":" "}},"colorThemeMap":{"pxt-high-contrast":{"id":"pxt-high-contrast","name":"High Contrast","weight":100,"monacoBaseTheme":"hc-black","colors":{"pxt-header-background":"#000000","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#000000","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#FFFFFF","pxt-primary-background":"#000000","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#000000","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#000000","pxt-secondary-background":"#000000","pxt-secondary-foreground":"#FFFFFF","pxt-secondary-background-hover":"#000000","pxt-secondary-foreground-hover":"#FFFFFF","pxt-secondary-accent":"#000000","pxt-tertiary-background":"#000000","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#000000","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#000000","pxt-target-background1":"#000000","pxt-target-foreground1":"#FFFFFF","pxt-target-background1-hover":"#000000","pxt-target-foreground1-hover":"#cccccc","pxt-target-stencil1":"#FFFFFF","pxt-target-background2":"#000000","pxt-target-foreground2":"#FFFFFF","pxt-target-background2-hover":"#000000","pxt-target-foreground2-hover":"#cccccc","pxt-target-stencil2":"#FFFFFF","pxt-target-background3":"#000000","pxt-target-foreground3":"#FFFFFF","pxt-target-background3-hover":"#000000","pxt-target-foreground3-hover":"#cccccc","pxt-target-stencil3":"#FFFFFF","pxt-neutral-background1":"#000000","pxt-neutral-foreground1":"#FFFFFF","pxt-neutral-background1-hover":"#000000","pxt-neutral-foreground1-hover":"#FFFFFF","pxt-neutral-stencil1":"#FFFFFF","pxt-neutral-background2":"#000000","pxt-neutral-foreground2":"#FFFFFF","pxt-neutral-background2-hover":"#000000","pxt-neutral-foreground2-hover":"#FFFFFF","pxt-neutral-stencil2":"#FFFFFF","pxt-neutral-background3":"#000000","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#000000","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#000000E5","pxt-neutral-base":"rgba(255, 255, 255, 1)","pxt-neutral-alpha0":"rgba(255, 255, 255, 0)","pxt-neutral-alpha10":"rgba(255, 255, 255, 0.1)","pxt-neutral-alpha20":"rgba(255, 255, 255, 0.2)","pxt-neutral-alpha50":"rgba(255, 255, 255, 0.5)","pxt-neutral-alpha80":"rgba(255, 255, 255, 0.8)","pxt-link":"#807FFF","pxt-link-hover":"#BBBBFF","pxt-focus-border":"#FFFF00","pxt-success":"#00FF00","pxt-success-foreground":"#000000","pxt-success-hover":"#00FF00","pxt-success-alpha10":"#00FF0019","pxt-warning":"#00FFFF","pxt-warning-foreground":"#FFFFFF","pxt-warning-hover":"#00FFFF","pxt-warning-alpha10":"#00FFFF19","pxt-error":"#880000","pxt-error-foreground":"#FFFFFF","pxt-error-hover":"#880000","pxt-error-alpha10":"#88000019","pxt-colors-purple-background":"#FF00FF","pxt-colors-purple-foreground":"#000000","pxt-colors-purple-hover":"#FF00FF","pxt-colors-purple-alpha10":"#FF00FF19","pxt-colors-orange-background":"#FF7F00","pxt-colors-orange-foreground":"#000000","pxt-colors-orange-hover":"#FF7F00","pxt-colors-orange-alpha10":"#FF7F0019","pxt-colors-brown-background":"#d1b7a3","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#d1b7a3","pxt-colors-brown-alpha10":"#d1b7a319","pxt-colors-blue-background":"#0078D7","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#0086F1","pxt-colors-blue-alpha10":"#0078D719","pxt-colors-green-background":"#00FF00","pxt-colors-green-foreground":"#000000","pxt-colors-green-hover":"#00FF00","pxt-colors-green-alpha10":"#00FF0019","pxt-colors-red-background":"#880000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#880000","pxt-colors-red-alpha10":"#88000019","pxt-colors-teal-background":"#5BE0FF","pxt-colors-teal-foreground":"#000000","pxt-colors-teal-hover":"#5BE0FF","pxt-colors-teal-alpha10":"#5BE0FF19","pxt-colors-yellow-background":"#FFFF00","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#FFFF00","pxt-colors-yellow-alpha10":"#FFFF0019"},"overrideCss":".common-button {\n color: var(--pxt-neutral-foreground2) !important;\n background-color: var(--pxt-neutral-background2) !important;\n border-color: var(--pxt-neutral-foreground2) !important;\n}\n\n.common-button:hover, .common-button:focus {\n outline: 2px solid var(--pxt-colors-yellow-background) !important;\n z-index: 1;\n}\n\n/*\nOverride default button background for the area menu, which requires transparency,\nbut still use a fairly opaque one to keep focus/visibility on the main buttons.\n*/\n.area-menu-container .area-button {\n background-color: var(--pxt-neutral-alpha80) !important;\n}\n\n/* \n * \"User-provided content\" header in the import modal.\n */\n.ui.violet.message .header {\n color: var(--pxt-colors-purple-background) !important;\n}\n\n/* \n * Checkbox styles\n * In HC the neutral and primary colors are the same, so we need to differentiate with\n * a different background color when checked.\n */\n.common-checkbox.toggle input:checked~label:before,\ndiv.field .ui.toggle.checkbox input:checked~label:before {\n background-color: var(--pxt-colors-purple-background) !important;\n}\n\n.common-checkbox-icon.checked {\n background-color: var(--pxt-colors-purple-background);\n color: var(--pxt-colors-purple-foreground);\n border-color: var(--pxt-colors-purple-hover);\n}\n\n.common-checkbox-icon.checked i.fas.fa-check {\n color: var(--pxt-colors-purple-foreground);\n}\n\n/*\n * Make toggle \"handle\" more visible for HC\n */\n.common-checkbox.toggle label:after {\n background-color: var(--pxt-neutral-foreground1) !important;\n}\n\n/*\n * Selection highlights\n */\n\n.blocklyContextMenu {\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n.blocklyWidgetDiv .blocklyMenu.blocklyContextMenu .blocklyMenuItem.blocklyMenuItemHighlight {\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n/*\n * Toolbox\n */\n.blocklyTreeRow:hover {\n outline: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n#blocklySearchInput i {\n color: var(--pxt-neutral-foreground1);\n opacity: 1;\n}\n\n/* \n * Inverted image colors\n */\n.barcharticon,\n.blockly-ws-search-next-btn,\n.blockly-ws-search-previous-btn,\n.blockly-ws-search-close-btn {\n filter: invert(1);\n}\n\n/* Sim toolbar */\n#simulator .editor-sidebar .simtoolbar .debug-button.active,\n#simulator .editor-sidebar .simtoolbar .debug-button.active:hover,\n#simulator .editor-sidebar .simtoolbar .debug-button.active:hover i {\n /* Make active state more apparent by inverting the colors */\n background: var(--pxt-neutral-foreground2) !important;\n color: var(--pxt-neutral-background2) !important;\n}\n\n/* Image Editor */\n.image-editor-topbar, .image-editor-bottombar, .image-editor-sidebar {\n background: var(--pxt-neutral-background1) !important;\n}\n.image-editor-tool-buttons {\n background: none !important;\n}\n.image-editor-button,\n.image-editor-input,\n.image-editor-confirm {\n border: 1px solid var(--pxt-neutral-foreground1);\n}\n.image-editor-canvas, .image-editor-canvas:hover, .image-editor-canvas:focus {\n outline: none !important;\n}\n.cursor-button {\n /* remove margin since we now have a border around the cursor buttons and it looks better centered */\n margin-right: 0;\n}\n\n/* Toolbox */\n.pxtToolbox:not(.invertedToolbox) span.blocklyTreeLabel {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeSelected span.blocklyTreeLabel,\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeSelected span.blocklyTreeIcon {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected) .blocklyTreeLabel {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected):hover,\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected):focus {\n background-color: #404040;\n}\n\n.blocksEditorOuter #blocklyTrashIcon {\n color: var(--pxt-primary-foreground);\n}\n\n/*\n * Teaching Bubbles\n */\n.teaching-bubble,\n.teaching-bubble .teaching-bubble-navigation-buttons > .common-button {\n background: var(--pxt-neutral-background1) !important;\n color: var(--pxt-neutral-foreground1) !important;\n border: solid var(--pxt-neutral-foreground1) !important;\n}\n\n.teaching-bubble-cutout {\n border: 0.25rem solid var(--pxt-neutral-alpha20);\n}\n\n.teaching-bubble .ai-footer {\n opacity: 1 !important;\n}\n\n.teaching-bubble-arrow,\n.teaching-bubble .ai-footer-text,\n.teaching-bubble .feedback-button,\n.teaching-bubble .feedback-button.disabled,\n.teaching-bubble .teaching-bubble-steps {\n color: var(--pxt-neutral-foreground1) !important;\n}\n\n/*\n * Side Docs\n */\n\n#sidedocs {\n background-color: var(--pxt-neutral-foreground1);\n}\n\n#sidedocsbar a i,\n#sidedocsbar a span {\n color: var(--pxt-neutral-background1) !important;\n}\n\n#sidedocsbar a:hover,\n#sidedocsbar a:focus {\n /* Yellow does not contrast well against white background */\n outline: 3px solid var(--pxt-neutral-background1) !important;\n}\n\n#sidedocsbar a:hover i,\n#sidedocsbar a:focus i,\n#sidedocsbar a:hover span,\n#sidedocsbar a:focus span {\n color: var(--pxt-link-hover) !important;\n}\n\n/*\n * Editor Toggle\n */\n#editortoggle .selected.item {\n transition: none;\n &:focus {\n box-shadow: inset 0 0 0 6px #000000 !important;\n }\n >.icon {\n color: #000000 !important;\n }\n}\n\n#editordropdown.ui.button.active > .icon {\n color: #000000 !important;\n}\n\n/*\n * Dropdown Menu\n */\n.common-menu-dropdown-item:hover,\n.common-menu-dropdown > .menu-button.expanded {\n outline: var(--pxt-focus-border) solid 3px !important;\n outline-offset: -4px;\n z-index: 1;\n}"},"arcade-dark":{"id":"arcade-dark","name":"Dark","weight":60,"monacoBaseTheme":"vs-dark","colors":{"pxt-header-background":"#181818","pxt-header-foreground":"#ffffff","pxt-header-background-hover":"#252525","pxt-header-foreground-hover":"#ffffff","pxt-header-stencil":"#323232","pxt-primary-background":"#0078D4","pxt-primary-foreground":"#ffffff","pxt-primary-background-hover":"#026EC1","pxt-primary-foreground-hover":"#ffffff","pxt-primary-accent":"#005ba1","pxt-secondary-background":"#63276d","pxt-secondary-foreground":"#f3f2f1","pxt-secondary-background-hover":"#742e80","pxt-secondary-foreground-hover":"#f3f2f1","pxt-secondary-accent":"#411a47","pxt-tertiary-background":"#0078d4","pxt-tertiary-foreground":"#ffffff","pxt-tertiary-background-hover":"#026EC1","pxt-tertiary-foreground-hover":"#ffffff","pxt-tertiary-accent":"#0894ff","pxt-target-background1":"#1F1F1F","pxt-target-foreground1":"#f3f2f1","pxt-target-background1-hover":"#2c2c2c","pxt-target-foreground1-hover":"#ffffff","pxt-target-stencil1":"#3b3a39","pxt-target-background2":"#181818","pxt-target-foreground2":"#ffffff","pxt-target-background2-hover":"#252525","pxt-target-foreground2-hover":"#ffffff","pxt-target-stencil2":"#323232","pxt-target-background3":"#181818","pxt-target-foreground3":"#ffffff","pxt-target-background3-hover":"#252525","pxt-target-foreground3-hover":"#ffffff","pxt-target-stencil3":"#323232","pxt-neutral-background1":"#1F1F1F","pxt-neutral-foreground1":"#f3f2f1","pxt-neutral-background1-hover":"#2c2c2c","pxt-neutral-foreground1-hover":"#ffffff","pxt-neutral-stencil1":"#3b3a39","pxt-neutral-background2":"#181818","pxt-neutral-foreground2":"#ffffff","pxt-neutral-background2-hover":"#252525","pxt-neutral-foreground2-hover":"#ffffff","pxt-neutral-stencil2":"#3b3a39","pxt-neutral-background3":"#2d2d2d","pxt-neutral-foreground3":"#f3f2f1","pxt-neutral-background3-hover":"#202020","pxt-neutral-foreground3-hover":"#ffffff","pxt-neutral-stencil3":"#070707","pxt-neutral-background3-alpha90":"#2d2d2de6","pxt-neutral-base":"rgba(180, 180, 180, 1)","pxt-neutral-alpha0":"rgba(180, 180, 180, 0)","pxt-neutral-alpha10":"rgba(180, 180, 180, 0.1)","pxt-neutral-alpha20":"rgba(180, 180, 180, 0.2)","pxt-neutral-alpha50":"rgba(180, 180, 180, 0.5)","pxt-neutral-alpha80":"rgba(180, 180, 180, 0.8)","pxt-link":"#479ef5","pxt-link-hover":"#62abf5","pxt-focus-border":"#5caae5","pxt-colors-purple-background":"#63276d","pxt-colors-purple-foreground":"#f3f2f1","pxt-colors-purple-hover":"#742e80","pxt-colors-purple-alpha10":"#63276d19","pxt-colors-orange-background":"#7a2101","pxt-colors-orange-foreground":"#ffffff","pxt-colors-orange-hover":"#932801","pxt-colors-orange-alpha10":"#7a210119","pxt-colors-brown-background":"#50301a","pxt-colors-brown-foreground":"#ffffff","pxt-colors-brown-hover":"#633c20","pxt-colors-brown-alpha10":"#50301a19","pxt-colors-blue-background":"#0078D4","pxt-colors-blue-foreground":"#ffffff","pxt-colors-blue-hover":"#026EC1","pxt-colors-blue-alpha10":"#0078D419","pxt-colors-green-background":"#27ae60","pxt-colors-green-foreground":"#ffffff","pxt-colors-green-hover":"#1e8449","pxt-colors-green-alpha10":"#27ae6019","pxt-colors-red-background":"#e74c3c","pxt-colors-red-foreground":"#ffffff","pxt-colors-red-hover":"#c0392b","pxt-colors-red-alpha10":"#e74c3c19","pxt-colors-teal-background":"#1abc9c","pxt-colors-teal-foreground":"#ffffff","pxt-colors-teal-hover":"#16a085","pxt-colors-teal-alpha10":"#1abc9c19","pxt-colors-yellow-background":"#fde300","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#e4cc00","pxt-colors-yellow-alpha10":"#fde30019"},"overrideCss":".image-editor-change-name .image-editor-input {\n /* The textbox background matches the footer of the image editor, so add a border */\n border: 1px solid var(--pxt-neutral-stencil2);\n}\n\n#langmodal #availablelocales .langoption .header {\n /* Better contrast than default, which is purple */\n color: var(--pxt-neutral-foreground1);\n}\n\n.pxtToolbox span.blocklyTreeLabel,\n.pxtToolbox .blocklyTreeSelected span.blocklyTreeLabel,\n.pxtToolbox .blocklyTreeSelected .blocklyTreeIcon {\n /* Better contrast in toolbox */\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox .blocklyTreeIcon,\n.tutorial-container span.docs.inlineblock {\n /* Better contrast in toolbox & tutorial block colors, but try to preserve some of the icon color */\n filter: brightness(1.2) saturate(2);\n}\n\n#mainmenu {\n /* Some parts of the app use the same color as a background. This keeps the menu from blending in */\n border-bottom: 1px solid var(--pxt-header-stencil);\n}\n\n.projectsdialog .ui.card:hover {\n /* Neutral and target colors are the same in dark theme, so it helps to have a clearer border when hovering over cards. */\n border-color: var(--pxt-focus-border) !important;\n}\n\n/* \n * Inverted image colors\n */\n.barcharticon,\n.blockly-ws-search-next-btn,\n.blockly-ws-search-previous-btn,\n.blockly-ws-search-close-btn {\n filter: invert(1);\n}\n\n.modals .ui.button.immersive-reader-button,\n#mainmenu .immersive-reader-button.ui.item,\n#simulator .editor-sidebar .immersive-reader-button.ui.item {\n background-image: url(\"/static/icons/immersive-reader-light.svg\") !important;\n}\n\n.carouselarrow {\n /* Better contrast, especially against images in carousels */\n opacity: 0.9;\n}\n\n/* For inverted buttons, it almost always looks better to have the background be dark instead of light (even though non-inverted has a light foreground) */\nbutton.ui.button.inverted:not(.teaching-bubble-button),\nbutton.common-button.inverted:not(.teaching-bubble-button) {\n background-color: var(--pxt-neutral-background2) !important;\n}\n\nbutton.ui.button.inverted:hover:not(.teaching-bubble-button),\nbutton.common-button.inverted:hover:not(.teaching-bubble-button) {\n background-color: var(--pxt-neutral-background2-hover) !important;\n}\n"},"arcade-light":{"id":"arcade-light","name":"Light","weight":40,"colors":{"pxt-header-background":"#116E79","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#041d20","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#0b454c","pxt-primary-background":"#5D4FBA","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#4d3eb1","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#403587","pxt-secondary-background":"#5D4FBA","pxt-secondary-foreground":"#F8FAFC","pxt-secondary-background-hover":"#483c9a","pxt-secondary-foreground-hover":"#F8FAFC","pxt-secondary-accent":"#403587","pxt-tertiary-background":"#116E79","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#0b454c","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#041d20","pxt-target-background1":"#F8FAFC","pxt-target-foreground1":"#000000","pxt-target-background1-hover":"#d4e0ed","pxt-target-foreground1-hover":"#000000","pxt-target-stencil1":"#e1e1e1","pxt-target-background2":"#F8FAFC","pxt-target-foreground2":"#000000","pxt-target-background2-hover":"#d4e0ed","pxt-target-foreground2-hover":"#000000","pxt-target-stencil2":"#e1e1e1","pxt-target-background3":"#F8FAFC","pxt-target-foreground3":"#000000","pxt-target-background3-hover":"#d4e0ed","pxt-target-foreground3-hover":"#000000","pxt-target-stencil3":"#e1e1e1","pxt-neutral-background1":"#FFFFFF","pxt-neutral-foreground1":"rgba(0,0,0,.85)","pxt-neutral-background1-hover":"#f2f2f2","pxt-neutral-foreground1-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil1":"rgba(34, 74, 114, 0.15)","pxt-neutral-background2":"#F8F8F8","pxt-neutral-foreground2":"rgba(0,0,0,.85)","pxt-neutral-background2-hover":"#ebebeb","pxt-neutral-foreground2-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil2":"#e9eef2","pxt-neutral-background3":"#4e5758","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#424a4a","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#4E5758E5","pxt-neutral-base":"rgba(0, 0, 0, 1)","pxt-neutral-alpha0":"rgba(0, 0, 0, 0)","pxt-neutral-alpha10":"rgba(0, 0, 0, 0.1)","pxt-neutral-alpha20":"rgba(0, 0, 0, 0.2)","pxt-neutral-alpha50":"rgba(0, 0, 0, 0.5)","pxt-neutral-alpha80":"rgba(0, 0, 0, 0.8)","pxt-link":"#3977B4","pxt-link-hover":"#204467","pxt-focus-border":"#0078D4","pxt-colors-purple-background":"#6B4F76","pxt-colors-purple-foreground":"#FFFFFF","pxt-colors-purple-hover":"#483c9a","pxt-colors-purple-alpha10":"#6b4f7619","pxt-colors-orange-background":"#F76820","pxt-colors-orange-foreground":"#FFFFFF","pxt-colors-orange-hover":"#dc4f08","pxt-colors-orange-alpha10":"#F7682019","pxt-colors-brown-background":"#663905","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#351e03","pxt-colors-brown-alpha10":"#66390519","pxt-colors-blue-background":"#116e79","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#0b454c","pxt-colors-blue-alpha10":"#116e7919","pxt-colors-green-background":"#2ecc71","pxt-colors-green-foreground":"#FFFFFF","pxt-colors-green-hover":"#22be64","pxt-colors-green-alpha10":"#2ecc7119","pxt-colors-red-background":"#a80000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#8f0000","pxt-colors-red-alpha10":"#a8000019","pxt-colors-teal-background":"#116e79","pxt-colors-teal-foreground":"#FFFFFF","pxt-colors-teal-hover":"#0b454c","pxt-colors-teal-alpha10":"#116e7919","pxt-colors-yellow-background":"#f1c40f","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#c29d0b","pxt-colors-yellow-alpha10":"#f1c40f19"},"overrideCss":".gallerysegment .ui.card.link.cloudprojectscard {\n /* Differentiate from New Project button */\n background-color: var(--pxt-colors-teal-background) !important;\n color: var(--pxt-colors-teal-foreground) !important;\n}\n"},"arcade-orange":{"id":"arcade-orange","name":"Orange","weight":20,"colors":{"pxt-header-background":"#F76820","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#ab3d06","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#dc4f08","pxt-primary-background":"#F76820","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#dc4f08","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#C5561F","pxt-secondary-background":"#028B9B","pxt-secondary-background-hover":"#015e69","pxt-secondary-foreground":"#FFFFFF","pxt-secondary-foreground-hover":"#FFFFFF","pxt-secondary-accent":"#015964","pxt-tertiary-background":"#028B9B","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#015e69","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#013136","pxt-target-background1":"#FEF3E0","pxt-target-foreground1":"#000000","pxt-target-background1-hover":"#fce0af","pxt-target-foreground1-hover":"#000000","pxt-target-stencil1":"#e4d9c7","pxt-target-background2":"#B1E1DA","pxt-target-foreground2":"#000000","pxt-target-background2-hover":"#8cd3c9","pxt-target-foreground2-hover":"#000000","pxt-target-stencil2":"#b0b0b0","pxt-target-background3":"#FEF3E0","pxt-target-foreground3":"#000000","pxt-target-background3-hover":"#E4E4E4","pxt-target-foreground3-hover":"#000000","pxt-target-stencil3":"#e4d9c7","pxt-neutral-background1":"#FFFFFF","pxt-neutral-foreground1":"rgba(0,0,0,.85)","pxt-neutral-background1-hover":"#f2f2f2","pxt-neutral-foreground1-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil1":"rgba(34, 36, 38, .15)","pxt-neutral-background2":"#F8F8F8","pxt-neutral-foreground2":"rgba(0,0,0,.85)","pxt-neutral-background2-hover":"#ebebeb","pxt-neutral-foreground2-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil2":"#e9eef2","pxt-neutral-background3":"#4e5758","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#424a4a","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#4E5758E5","pxt-neutral-base":"rgba(0, 0, 0, 1)","pxt-neutral-alpha0":"rgba(0, 0, 0, 0)","pxt-neutral-alpha10":"rgba(0, 0, 0, 0.1)","pxt-neutral-alpha20":"rgba(0, 0, 0, 0.2)","pxt-neutral-alpha50":"rgba(0, 0, 0, 0.5)","pxt-neutral-alpha80":"rgba(0, 0, 0, 0.8)","pxt-link":"#3977B4","pxt-link-hover":"#204467","pxt-focus-border":"#0078D4","pxt-colors-purple-background":"#6B4F76","pxt-colors-purple-foreground":"#FFFFFF","pxt-colors-purple-hover":"#4f3b57","pxt-colors-purple-alpha10":"#6b4f7619","pxt-colors-orange-background":"#ff7f50","pxt-colors-orange-foreground":"#FFFFFF","pxt-colors-orange-hover":"#ff5a1d","pxt-colors-orange-alpha10":"#ff7f5019","pxt-colors-brown-background":"#663905","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#351e03","pxt-colors-brown-alpha10":"#66390519","pxt-colors-blue-background":"#028b9b","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#015e69","pxt-colors-blue-alpha10":"#028b9b19","pxt-colors-green-background":"#2ecc71","pxt-colors-green-foreground":"#FFFFFF","pxt-colors-green-hover":"#22be64","pxt-colors-green-alpha10":"#2ecc7119","pxt-colors-red-background":"#a80000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#8f0000","pxt-colors-red-alpha10":"#a8000019","pxt-colors-teal-background":"#028B9B","pxt-colors-teal-foreground":"#FFFFFF","pxt-colors-teal-hover":"#015e69","pxt-colors-teal-alpha10":"#028b9b19","pxt-colors-yellow-background":"#c0a000","pxt-colors-yellow-foreground":"#FFFFFF","pxt-colors-yellow-hover":"rgb(153, 132, 0)","pxt-colors-yellow-alpha10":"#c0a00019"}}}}
1
+ var pxtTargetBundle = {"id":"arcade","name":"arcade","nickname":"arcade","thumbnailName":"MakeCode Arcade","title":"Microsoft MakeCode Arcade","description":"Develop your programming skills by quickly creating and modding retro arcade games with Blocks and JavaScript in the MakeCode editor","corepkg":"device","cloud":{"workspace":false,"sharing":true,"thumbnails":true,"importing":true,"packages":true,"publishing":true,"githubPackages":true,"showBadges":true,"cloudProviders":{"github":{"id":"github","name":"GitHub","icon":"./static/providers/github-mark.png","identity":false,"order":4},"microsoft":{"id":"microsoft","name":"Microsoft","icon":"./static/providers/microsoft-logo.svg","identity":true,"redirect":true,"order":1},"google":{"id":"google","name":"Google","icon":"./static/providers/google-logo.svg","identity":true,"redirect":true,"order":2},"clever":{"id":"clever","name":"Clever","icon":"./static/providers/clever-logo.png","identity":true,"redirect":true,"order":3}}},"staticpkgdirs":{"base":["libs/hw","libs/hw---n3","libs/hw---n4","libs/hw---samd51","libs/hw---stm32f401","libs/hw---rp2040"],"extensions":["libs/accelerometer","libs/color","libs/edge-connector","libs/esp32","libs/feather","libs/light","libs/lightsensor","libs/mqtt","libs/net","libs/net-game","libs/palette","libs/radio","libs/radio-broadcast","libs/serial","libs/servo","libs/settings","libs/sevenseg","libs/shader","libs/thermometer"]},"cacheusedblocksdirs":["skillmap/space","skillmap/platformer"],"compile":{"useUF2":true,"deployDrives":"(ARCADE|PY|FTHR840BOOT|ARCD|RPI-RP2)","deployFileMarker":"INFO_UF2.TXT","driveName":"ARCADE","floatingPoint":true,"taggedInts":true,"nativeType":"thumb","gc":true,"upgrades":[],"webUSB":true,"saveAsPNG":true,"patches":{"0.0.0 - *":[{"type":"missingPackage","map":{"(DigitalPin|AnalogPin|pins)\\.P\\d\\d?":"edge-connector","serial\\.":"serial"}}],"0.0.0 - 0.1.1":[{"type":"api","map":{"controller\\.controlSprite":"controller.moveSprite","controller\\.controlPlayer":"controller.movePlayer"}}],"0.0.0 - 0.3.23":[{"type":"package","map":{"local-multiplayer":""}}],"0.0.0 - 0.3.24":[{"type":"api","map":{"sprites\\.createEmptySprite\\(([^)]+)\\)":"sprites.create(img`.`, $1)"}},{"type":"blockId","map":{"keysdx":"keydx","keysdy":"keydy"}}],"0.0.0 - 0.11.20":[{"type":"api","map":{"SpriteKind":"SpriteKindLegacy"}}],"0.0.0 - 0.14.57":[{"type":"missingPackage","map":{"scene\\.setTileMap":"color-coded-tilemap","scene\\.setTile":"color-coded-tilemap","scene\\.getTile":"color-coded-tilemap","scene\\.getTilesByType":"color-coded-tilemap","scene\\.placeOnRandomTile":"color-coded-tilemap","scene\\.setTileAt":"color-coded-tilemap","scene\\.onHitTile":"color-coded-tilemap","\\.tileHitFrom":"color-coded-tilemap"}}],"0.0.0 - 0.18.9":[{"type":"api","map":{"tilemap\\s*\\.\\s*createTileSprite":"tiles.createTileSprite","tilemap\\s*\\.\\s*coverAllTiles":"tiles.coverAllTiles","tilemap\\s*\\.\\s*createSpritesOnTiles":"tiles.createSpritesOnTiles","tilemap\\s*\\.\\s*destorySpritesOfKind":"tiles.destroySpritesOfKind","tilemap\\s*\\.\\s*tileIs":"tiles.tileIs","tilemap\\s*\\.\\s*tileIsWall":"tiles.tileIsWall","tilemap\\s*\\.\\s*forEachTileOfKind":"tiles.forEachTileOfKind","tilemap\\s*\\.\\s*forEachTileOfMap":"tiles.forEachTileOfMap","tilemap\\s*\\.\\s*replaceAllTiles":"tiles.replaceAllTiles","tilemap\\s*\\.\\s*columnInDirection":"tiles.columnInDirection","tilemap\\s*\\.\\s*rowInDirection":"tiles.rowInDirection","tilemap\\s*\\.\\s*forEachDirection":"tiles.forEachDirection","tilemap\\s*\\.\\s*centerCameraOnTile":"tiles.centerCameraOnTile","tilemap\\s*\\.\\s*locationOfSprite":"tiles.locationOfSprite","tilemap\\s*\\.\\s*RowCol":"tiles.RowCol","tilemap\\s*\\.\\s*spriteRowCol":"tiles.spriteRowCol","tilemap\\s*\\.\\s*locationColumn":"tiles.locationColumn","tilemap\\s*\\.\\s*locationRow":"tiles.locationRow","tilemap\\s*\\.\\s*XY":"tiles.XY","tilemap\\s*\\.\\s*locationXY":"tiles.locationXY","tilemap\\s*\\.\\s*locationInDirection":"tiles.locationInDirection","tilemap\\s*\\.\\s*_directionEditor":"tiles._directionEditor","tilemap\\s*\\.\\s*tileWidth":"tiles.tileWidth","tilemap\\s*\\.\\s*tilemapColumns":"tiles.tilemapColumns","tilemap\\s*\\.\\s*tilemapRows":"tiles.tilemapRows","tilemap\\s*\\.\\s*screenCoordinateToTile":"tiles.screenCoordinateToTile","tilemap\\s*\\.\\s*tileCoordinateToScreen":"tiles.tileCoordinateToScreen","tilemap\\s*\\.\\s*centeredTileCoordinateToScreen":"tiles.centeredTileCoordinateToScreen","tilemap\\s*\\.\\s*OVERWORLD_MAP_ID":"tiles.OVERWORLD_MAP_ID","tilemap\\s*\\.\\s*MAP_LOADED_EVENT":"tiles.MAP_LOADED_EVENT","tilemap\\s*\\.\\s*WorldMap":"tiles.WorldMap","tilemap\\s*\\.\\s*WorldMapConnection":"tiles.WorldMapConnection","tilemap\\s*\\.\\s*createMap":"tiles.createMap","tilemap\\s*\\.\\s*copyMap":"tiles.copyMap","tilemap\\s*\\.\\s*loadMap":"tiles.loadMap","tilemap\\s*\\.\\s*getLoadedMap":"tiles.getLoadedMap","tilemap\\s*\\.\\s*onMapLoaded":"tiles.onMapLoaded","tilemap\\s*\\.\\s*onMapUnloaded":"tiles.onMapUnloaded","tilemap\\s*\\.\\s*connectMapById":"tiles.connectMapById","tilemap\\s*\\.\\s*loadConnectedMap":"tiles.loadConnectedMap","tilemap\\s*\\.\\s*getConnectedMap":"tiles.getConnectedMap","tilemap\\s*\\.\\s*setWorldLocationToMap":"tiles.setWorldLocationToMap","tilemap\\s*\\.\\s*loadMapAt":"tiles.loadMapAt","tilemap\\s*\\.\\s*getMapAtWorldLocation":"tiles.getMapAtWorldLocation","tilemap\\s*\\.\\s*loadMapInDirection":"tiles.loadMapInDirection","tilemap\\s*\\.\\s*loadedWorldColumn":"tiles.loadedWorldColumn","tilemap\\s*\\.\\s*loadedWorldRow":"tiles.loadedWorldRow"}}],"0.0.0 - 1.9.0":[{"type":"api","map":{"myCorg\\s*\\.\\s*follow":"myCorg.cameraFollow"}}]},"switches":{},"jsRefCounting":false,"utf8":true},"compileService":{"buildEngine":"codal","githubCorePackage":"lancaster-university/codal","gittag":"v0.8.0","dockerImage":"pext/yotta:latest","codalTarget":{"branches":{}}},"variants":{"stm32f401":{"compile":{"hasHex":true,"openocdScript":"source [find interface/stlink-v2.cfg]; source [find target/stm32f4x.cfg]","flashEnd":524288,"uf2Family":"0x57755a57"},"compileService":{"codalTarget":{"name":"codal-big-brainpad","url":"https://github.com/lancaster-university/codal-big-brainpad","branch":"v1.3.1","type":"git"},"codalBinary":"STM32","serviceId":"codal2stm32","dockerImage":"pext/yotta:latest"}},"samd51":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; set CHIPNAME at91samd51g19; source [find target/atsame5x.cfg]","openocdScriptAlt":"source [find interface/stlink-v2.cfg]; set CPUTAPID 0x2ba01477; set CHIPNAME at91samd51g19; source [find target/at91samdXX.cfg]","ramSize":196608,"flashEnd":524288,"uf2Family":"0x55114460"},"compileService":{"codalTarget":{"name":"codal-itsybitsy-m4","url":"https://github.com/lancaster-university/codal-itsybitsy-m4","branch":"v0.2.7","type":"git"},"codalBinary":"ITSYBITSY_M4","serviceId":"codal2samd51","dockerImage":"pext/yotta:latest"}},"nrf52840":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; source [find target/nrf52.cfg]","webUSB":false,"flashEnd":1007616,"uf2Family":"0xada52840"},"compileService":{"codalTarget":{"name":"codal-nrf52840-dk","url":"https://github.com/mmoskal/codal-nrf52840-dk","branch":"v1.1.7","type":"git"},"codalBinary":"NRF52840_DK","serviceId":"codal2nrf52840","dockerImage":"pext/yotta:latest","yottaConfig":{"pxt":{"board":{"id":"BOARD_ID_NRF52840"}}}}},"nrf52833":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; source [find target/nrf52.cfg]","webUSB":false,"useUF2":false,"flashEnd":524288,"deployDrives":".*","deployFileMarker":"DETAILS.TXT"},"compileService":{"codalTarget":{"name":"codal-nrf52833-dk","url":"https://github.com/mmoskal/codal-nrf52833-dk","branch":"v2.0.2","type":"git"},"codalBinary":"NRF52840_DK","serviceId":"codal2nrf52840","dockerImage":"pext/yotta:latest","yottaConfig":{"pxt":{"board":{"id":"BOARD_ID_NRF52833"}}}}},"rp2040":{"compile":{"hasHex":true,"openocdScript":"???","flashChecksumAddr":0,"flashEnd":2097152,"uf2Family":"0xe48bff56"},"compileService":{"codalTarget":{"name":"codal-pi-pico","url":"https://github.com/lancaster-university/codal-pi-pico","branch":"v0.0.13","type":"git"},"gittag":"v0.9.0","codalBinary":"PI-PICO","serviceId":"codal2pico","dockerImage":"pext/arm:gcc9"}},"rpi":{"compile":{"hasHex":true,"useELF":true,"runtimeIsARM":true,"flashCodeAlign":256,"webUSB":false,"stackAlign":2},"compileService":{"buildEngine":"dockermake","dockerImage":"pext/rpi:alsa","serviceId":"rpi"}},"vm":{"compile":{"hasHex":true,"useELF":true,"flashCodeAlign":256,"webUSB":false,"nativeType":"vm","stackAlign":2},"compileService":{"buildEngine":"dockercross","dockerImage":"pext/crossbuild","serviceId":"crossbuild","skipCloudBuild":true}}},"serial":{"useEditor":true,"log":true,"editorTheme":{"graphBackground":"#d9d9d9","lineColors":["#009DDC","#FB48C7","#40bf4a","#8073E5","#d25b33"]}},"runtime":{"mathBlocks":true,"loopsBlocks":true,"logicBlocks":true,"variablesBlocks":true,"textBlocks":true,"functionBlocks":true,"breakBlock":true,"continueBlock":true,"pauseUntilBlock":{"category":"loops"},"functionsOptions":{"useNewFunctions":true,"extraFunctionEditorTypes":[{"typeName":"Sprite","icon":"send","defaultName":"mySprite"},{"typeName":"Image","icon":"image outline","defaultName":"myImage"},{"label":"Location","typeName":"tiles.Location","icon":"tree","defaultName":"myLocation"}]},"listsBlocks":true,"tilesetFieldEditorIdentity":"images._tile","bannedCategories":["pins","control","input","serial","power"]},"simulator":{"autoRun":true,"autoRunLight":false,"emptyRunCode":"pxsim.pxtcore.updateScreen(new pxsim.RefImage(160, 120, 4))","aspectRatio":0.85,"dynamicBoardDefinition":true,"keymap":true},"queryVariants":{"skillmap=1":{"appTheme":{"embeddedTutorial":true,"allowParentController":true,"shareFinishedTutorials":false,"hideReplaceMyCode":false}},"teachertool=1":{"appTheme":{"hideMenuBar":true,"workspaceSearch":true,"noReloadOnUpdate":true}},"ninja=1":{"appTheme":{"embeddedTutorial":true,"allowParentController":true,"shareFinishedTutorials":false,"hideReplaceMyCode":false}}},"unsupportedBrowsers":[{"id":"ie"}],"uploadDocs":true,"noSimShims":true,"defaultBadges":[{"id":"skillmap-completion-save the forest","type":"skillmap-completion","image":"./static/badges/badge-forest.png","lockedImage":"./static/badges/badge-forest-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/forest","title":"Save the Forest"},{"id":"skillmap-completion-zookeeper","type":"skillmap-completion","image":"./static/badges/badge-zoo.png","lockedImage":"./static/badges/badge-zoo-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/zoo","title":"Zookeeper"},{"id":"skillmap-completion-rockstar","image":"./static/badges/badge-rockstar.png","lockedImage":"./static/badges/badge-rockstar-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/rockstar","type":"skillmap-completion","title":"80's Rockstar"},{"id":"skillmap-completion-build a platformer game!","image":"./static/badges/badge-jungle.png","lockedImage":"./static/badges/badge-jungle-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/jungle","type":"skillmap-completion","title":"Jungle Jump"},{"id":"skillmap-completion-space","image":"./static/badges/badge-space.png","lockedImage":"./static/badges/badge-space-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/space","type":"skillmap-completion","title":"Space Explorer"},{"id":"skillmap-completion-shark","image":"./static/badges/badge-shark.png","lockedImage":"./static/badges/badge-shark-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/shark","type":"skillmap-completion","title":"Shark Splash"}],"versions":{"branch":"master","tag":"v2.1.22","commits":"https://github.com/microsoft/pxt-arcade/commits/bf77541b8d51411b7cce586c1d06e312e1e10420","target":"2.1.22","pxt":"12.2.13"},"blocksprj":{"id":"blocksprj","config":{"name":"{0}","dependencies":{"device":"*"},"description":"","files":["main.blocks","main.ts","README.md","assets.json"],"additionalFilePaths":[]},"files":{"README.md":" ","assets.json":"","main.blocks":"<xml xmlns=\"http://www.w3.org/1999/xhtml\">\n <variables></variables>\n <block type=\"pxt-on-start\" x=\"0\" y=\"0\"></block>\n</xml>","main.ts":" "}},"tsprj":{"id":"tsprj","config":{"name":"{0}","dependencies":{"device":"*"},"description":"","files":["main.ts","README.md","assets.json"],"additionalFilePaths":[]},"files":{"README.md":" ","assets.json":"","main.ts":" "}},"colorThemeMap":{"pxt-high-contrast":{"id":"pxt-high-contrast","name":"High Contrast","weight":100,"monacoBaseTheme":"hc-black","colors":{"pxt-header-background":"#000000","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#000000","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#FFFFFF","pxt-primary-background":"#000000","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#000000","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#000000","pxt-secondary-background":"#000000","pxt-secondary-foreground":"#FFFFFF","pxt-secondary-background-hover":"#000000","pxt-secondary-foreground-hover":"#FFFFFF","pxt-secondary-accent":"#000000","pxt-tertiary-background":"#000000","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#000000","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#000000","pxt-target-background1":"#000000","pxt-target-foreground1":"#FFFFFF","pxt-target-background1-hover":"#000000","pxt-target-foreground1-hover":"#cccccc","pxt-target-stencil1":"#FFFFFF","pxt-target-background2":"#000000","pxt-target-foreground2":"#FFFFFF","pxt-target-background2-hover":"#000000","pxt-target-foreground2-hover":"#cccccc","pxt-target-stencil2":"#FFFFFF","pxt-target-background3":"#000000","pxt-target-foreground3":"#FFFFFF","pxt-target-background3-hover":"#000000","pxt-target-foreground3-hover":"#cccccc","pxt-target-stencil3":"#FFFFFF","pxt-neutral-background1":"#000000","pxt-neutral-foreground1":"#FFFFFF","pxt-neutral-background1-hover":"#000000","pxt-neutral-foreground1-hover":"#FFFFFF","pxt-neutral-stencil1":"#FFFFFF","pxt-neutral-background2":"#000000","pxt-neutral-foreground2":"#FFFFFF","pxt-neutral-background2-hover":"#000000","pxt-neutral-foreground2-hover":"#FFFFFF","pxt-neutral-stencil2":"#FFFFFF","pxt-neutral-background3":"#000000","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#000000","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#000000E5","pxt-neutral-base":"rgba(255, 255, 255, 1)","pxt-neutral-alpha0":"rgba(255, 255, 255, 0)","pxt-neutral-alpha10":"rgba(255, 255, 255, 0.1)","pxt-neutral-alpha20":"rgba(255, 255, 255, 0.2)","pxt-neutral-alpha50":"rgba(255, 255, 255, 0.5)","pxt-neutral-alpha80":"rgba(255, 255, 255, 0.8)","pxt-link":"#807FFF","pxt-link-hover":"#BBBBFF","pxt-focus-border":"#FFFF00","pxt-success":"#00FF00","pxt-success-foreground":"#000000","pxt-success-hover":"#00FF00","pxt-success-alpha10":"#00FF0019","pxt-warning":"#00FFFF","pxt-warning-foreground":"#FFFFFF","pxt-warning-hover":"#00FFFF","pxt-warning-alpha10":"#00FFFF19","pxt-error":"#880000","pxt-error-foreground":"#FFFFFF","pxt-error-hover":"#880000","pxt-error-alpha10":"#88000019","pxt-colors-purple-background":"#FF00FF","pxt-colors-purple-foreground":"#000000","pxt-colors-purple-hover":"#FF00FF","pxt-colors-purple-alpha10":"#FF00FF19","pxt-colors-orange-background":"#FF7F00","pxt-colors-orange-foreground":"#000000","pxt-colors-orange-hover":"#FF7F00","pxt-colors-orange-alpha10":"#FF7F0019","pxt-colors-brown-background":"#d1b7a3","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#d1b7a3","pxt-colors-brown-alpha10":"#d1b7a319","pxt-colors-blue-background":"#0078D7","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#0086F1","pxt-colors-blue-alpha10":"#0078D719","pxt-colors-green-background":"#00FF00","pxt-colors-green-foreground":"#000000","pxt-colors-green-hover":"#00FF00","pxt-colors-green-alpha10":"#00FF0019","pxt-colors-red-background":"#880000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#880000","pxt-colors-red-alpha10":"#88000019","pxt-colors-teal-background":"#5BE0FF","pxt-colors-teal-foreground":"#000000","pxt-colors-teal-hover":"#5BE0FF","pxt-colors-teal-alpha10":"#5BE0FF19","pxt-colors-yellow-background":"#FFFF00","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#FFFF00","pxt-colors-yellow-alpha10":"#FFFF0019"},"overrideCss":".common-button {\n color: var(--pxt-neutral-foreground2) !important;\n background-color: var(--pxt-neutral-background2) !important;\n border-color: var(--pxt-neutral-foreground2) !important;\n}\n\n.common-button:hover, .common-button:focus {\n outline: 2px solid var(--pxt-colors-yellow-background) !important;\n z-index: 1;\n}\n\n/*\nOverride default button background for the area menu, which requires transparency,\nbut still use a fairly opaque one to keep focus/visibility on the main buttons.\n*/\n.area-menu-container .area-button {\n background-color: var(--pxt-neutral-alpha80) !important;\n}\n\n/* \n * \"User-provided content\" header in the import modal.\n */\n.ui.violet.message .header {\n color: var(--pxt-colors-purple-background) !important;\n}\n\n/* \n * Checkbox styles\n * In HC the neutral and primary colors are the same, so we need to differentiate with\n * a different background color when checked.\n */\n.common-checkbox.toggle input:checked~label:before,\ndiv.field .ui.toggle.checkbox input:checked~label:before {\n background-color: var(--pxt-colors-purple-background) !important;\n}\n\n.common-checkbox-icon.checked {\n background-color: var(--pxt-colors-purple-background);\n color: var(--pxt-colors-purple-foreground);\n border-color: var(--pxt-colors-purple-hover);\n}\n\n.common-checkbox-icon.checked i.fas.fa-check {\n color: var(--pxt-colors-purple-foreground);\n}\n\n/*\n * Make toggle \"handle\" more visible for HC\n */\n.common-checkbox.toggle label:after {\n background-color: var(--pxt-neutral-foreground1) !important;\n}\n\n/*\n * Selection highlights\n */\n\n.blocklyContextMenu {\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n.blocklyWidgetDiv .blocklyMenu.blocklyContextMenu .blocklyMenuItem.blocklyMenuItemHighlight {\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n/*\n * Toolbox\n */\n.blocklyTreeRow:hover {\n outline: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n#blocklySearchInput i {\n color: var(--pxt-neutral-foreground1);\n opacity: 1;\n}\n\n/* \n * Inverted image colors\n */\n.barcharticon,\n.blockly-ws-search-next-btn,\n.blockly-ws-search-previous-btn,\n.blockly-ws-search-close-btn {\n filter: invert(1);\n}\n\n/* Sim toolbar */\n#simulator .editor-sidebar .simtoolbar .debug-button.active,\n#simulator .editor-sidebar .simtoolbar .debug-button.active:hover {\n /* Make active state more apparent with a yellow border */\n color: var(--pxt-neutral-foreground2) !important;\n background: var(--pxt-neutral-background2) !important;\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n/* Image Editor */\n.image-editor-topbar, .image-editor-bottombar, .image-editor-sidebar {\n background: var(--pxt-neutral-background1) !important;\n}\n.image-editor-tool-buttons {\n background: none !important;\n}\n.image-editor-button,\n.image-editor-input,\n.image-editor-confirm {\n border: 1px solid var(--pxt-neutral-foreground1);\n}\n.image-editor-canvas, .image-editor-canvas:hover, .image-editor-canvas:focus {\n outline: none !important;\n}\n.cursor-button {\n /* remove margin since we now have a border around the cursor buttons and it looks better centered */\n margin-right: 0;\n}\n\n/* Toolbox */\n.pxtToolbox:not(.invertedToolbox) span.blocklyTreeLabel {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeSelected span.blocklyTreeLabel,\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeSelected span.blocklyTreeIcon {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected) .blocklyTreeLabel {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected):hover,\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected):focus {\n background-color: #404040;\n}\n\n.blocksEditorOuter #blocklyTrashIcon {\n color: var(--pxt-primary-foreground);\n}\n\n/*\n * Teaching Bubbles\n */\n.teaching-bubble,\n.teaching-bubble .teaching-bubble-navigation-buttons > .common-button {\n background: var(--pxt-neutral-background1) !important;\n color: var(--pxt-neutral-foreground1) !important;\n border: solid var(--pxt-neutral-foreground1) !important;\n}\n\n.teaching-bubble-cutout {\n border: 0.25rem solid var(--pxt-neutral-alpha20);\n}\n\n.teaching-bubble .ai-footer {\n opacity: 1 !important;\n}\n\n.teaching-bubble-arrow,\n.teaching-bubble .ai-footer-text,\n.teaching-bubble .feedback-button,\n.teaching-bubble .feedback-button.disabled,\n.teaching-bubble .teaching-bubble-steps {\n color: var(--pxt-neutral-foreground1) !important;\n}\n\n/*\n * Side Docs\n */\n\n#sidedocs {\n background-color: var(--pxt-neutral-foreground1);\n}\n\n#sidedocsbar a i,\n#sidedocsbar a span {\n color: var(--pxt-neutral-background1) !important;\n}\n\n#sidedocsbar a:hover,\n#sidedocsbar a:focus {\n /* Yellow does not contrast well against white background */\n outline: 3px solid var(--pxt-neutral-background1) !important;\n}\n\n#sidedocsbar a:hover i,\n#sidedocsbar a:focus i,\n#sidedocsbar a:hover span,\n#sidedocsbar a:focus span {\n color: var(--pxt-link-hover) !important;\n}\n\n/*\n * Editor Toggle\n */\n#editortoggle .selected.item {\n transition: none;\n &:focus {\n box-shadow: inset 0 0 0 6px #000000 !important;\n }\n >.icon {\n color: #000000 !important;\n }\n}\n\n#editordropdown.ui.button.active > .icon {\n color: #000000 !important;\n}\n\n/*\n * Dropdown Menu\n */\n.common-menu-dropdown-item:hover,\n.common-menu-dropdown > .menu-button.expanded {\n outline: var(--pxt-focus-border) solid 3px !important;\n outline-offset: -4px;\n z-index: 1;\n}"},"arcade-dark":{"id":"arcade-dark","name":"Dark","weight":60,"monacoBaseTheme":"vs-dark","colors":{"pxt-header-background":"#181818","pxt-header-foreground":"#ffffff","pxt-header-background-hover":"#252525","pxt-header-foreground-hover":"#ffffff","pxt-header-stencil":"#323232","pxt-primary-background":"#0078D4","pxt-primary-foreground":"#ffffff","pxt-primary-background-hover":"#026EC1","pxt-primary-foreground-hover":"#ffffff","pxt-primary-accent":"#005ba1","pxt-secondary-background":"#63276d","pxt-secondary-foreground":"#f3f2f1","pxt-secondary-background-hover":"#742e80","pxt-secondary-foreground-hover":"#f3f2f1","pxt-secondary-accent":"#411a47","pxt-tertiary-background":"#0078d4","pxt-tertiary-foreground":"#ffffff","pxt-tertiary-background-hover":"#026EC1","pxt-tertiary-foreground-hover":"#ffffff","pxt-tertiary-accent":"#0894ff","pxt-target-background1":"#1F1F1F","pxt-target-foreground1":"#f3f2f1","pxt-target-background1-hover":"#2c2c2c","pxt-target-foreground1-hover":"#ffffff","pxt-target-stencil1":"#3b3a39","pxt-target-background2":"#181818","pxt-target-foreground2":"#ffffff","pxt-target-background2-hover":"#252525","pxt-target-foreground2-hover":"#ffffff","pxt-target-stencil2":"#323232","pxt-target-background3":"#181818","pxt-target-foreground3":"#ffffff","pxt-target-background3-hover":"#252525","pxt-target-foreground3-hover":"#ffffff","pxt-target-stencil3":"#323232","pxt-neutral-background1":"#1F1F1F","pxt-neutral-foreground1":"#f3f2f1","pxt-neutral-background1-hover":"#2c2c2c","pxt-neutral-foreground1-hover":"#ffffff","pxt-neutral-stencil1":"#3b3a39","pxt-neutral-background2":"#181818","pxt-neutral-foreground2":"#ffffff","pxt-neutral-background2-hover":"#252525","pxt-neutral-foreground2-hover":"#ffffff","pxt-neutral-stencil2":"#3b3a39","pxt-neutral-background3":"#2d2d2d","pxt-neutral-foreground3":"#f3f2f1","pxt-neutral-background3-hover":"#202020","pxt-neutral-foreground3-hover":"#ffffff","pxt-neutral-stencil3":"#070707","pxt-neutral-background3-alpha90":"#2d2d2de6","pxt-neutral-base":"rgba(180, 180, 180, 1)","pxt-neutral-alpha0":"rgba(180, 180, 180, 0)","pxt-neutral-alpha10":"rgba(180, 180, 180, 0.1)","pxt-neutral-alpha20":"rgba(180, 180, 180, 0.2)","pxt-neutral-alpha50":"rgba(180, 180, 180, 0.5)","pxt-neutral-alpha80":"rgba(180, 180, 180, 0.8)","pxt-link":"#479ef5","pxt-link-hover":"#62abf5","pxt-focus-border":"#5caae5","pxt-colors-purple-background":"#63276d","pxt-colors-purple-foreground":"#f3f2f1","pxt-colors-purple-hover":"#742e80","pxt-colors-purple-alpha10":"#63276d19","pxt-colors-orange-background":"#7a2101","pxt-colors-orange-foreground":"#ffffff","pxt-colors-orange-hover":"#932801","pxt-colors-orange-alpha10":"#7a210119","pxt-colors-brown-background":"#50301a","pxt-colors-brown-foreground":"#ffffff","pxt-colors-brown-hover":"#633c20","pxt-colors-brown-alpha10":"#50301a19","pxt-colors-blue-background":"#0078D4","pxt-colors-blue-foreground":"#ffffff","pxt-colors-blue-hover":"#026EC1","pxt-colors-blue-alpha10":"#0078D419","pxt-colors-green-background":"#27ae60","pxt-colors-green-foreground":"#ffffff","pxt-colors-green-hover":"#1e8449","pxt-colors-green-alpha10":"#27ae6019","pxt-colors-red-background":"#e74c3c","pxt-colors-red-foreground":"#ffffff","pxt-colors-red-hover":"#c0392b","pxt-colors-red-alpha10":"#e74c3c19","pxt-colors-teal-background":"#1abc9c","pxt-colors-teal-foreground":"#ffffff","pxt-colors-teal-hover":"#16a085","pxt-colors-teal-alpha10":"#1abc9c19","pxt-colors-yellow-background":"#fde300","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#e4cc00","pxt-colors-yellow-alpha10":"#fde30019"},"overrideCss":".image-editor-change-name .image-editor-input {\n /* The textbox background matches the footer of the image editor, so add a border */\n border: 1px solid var(--pxt-neutral-stencil2);\n}\n\n#langmodal #availablelocales .langoption .header {\n /* Better contrast than default, which is purple */\n color: var(--pxt-neutral-foreground1);\n}\n\n.pxtToolbox span.blocklyTreeLabel,\n.pxtToolbox .blocklyTreeSelected span.blocklyTreeLabel,\n.pxtToolbox .blocklyTreeSelected .blocklyTreeIcon {\n /* Better contrast in toolbox */\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox .blocklyTreeIcon,\n.tutorial-container span.docs.inlineblock {\n /* Better contrast in toolbox & tutorial block colors, but try to preserve some of the icon color */\n filter: brightness(1.2) saturate(2);\n}\n\n#mainmenu {\n /* Some parts of the app use the same color as a background. This keeps the menu from blending in */\n border-bottom: 1px solid var(--pxt-header-stencil);\n}\n\n.projectsdialog .ui.card:hover {\n /* Neutral and target colors are the same in dark theme, so it helps to have a clearer border when hovering over cards. */\n border-color: var(--pxt-focus-border) !important;\n}\n\n/* \n * Inverted image colors\n */\n.barcharticon,\n.blockly-ws-search-next-btn,\n.blockly-ws-search-previous-btn,\n.blockly-ws-search-close-btn {\n filter: invert(1);\n}\n\n.modals .ui.button.immersive-reader-button,\n#mainmenu .immersive-reader-button.ui.item,\n#simulator .editor-sidebar .immersive-reader-button.ui.item {\n background-image: url(\"/static/icons/immersive-reader-light.svg\") !important;\n}\n\n.carouselarrow {\n /* Better contrast, especially against images in carousels */\n opacity: 0.9;\n}\n\n/* For inverted buttons, it almost always looks better to have the background be dark instead of light (even though non-inverted has a light foreground) */\nbutton.ui.button.inverted:not(.teaching-bubble-button),\nbutton.common-button.inverted:not(.teaching-bubble-button) {\n background-color: var(--pxt-neutral-background2) !important;\n}\n\nbutton.ui.button.inverted:hover:not(.teaching-bubble-button),\nbutton.common-button.inverted:hover:not(.teaching-bubble-button) {\n background-color: var(--pxt-neutral-background2-hover) !important;\n}\n"},"arcade-light":{"id":"arcade-light","name":"Light","weight":40,"colors":{"pxt-header-background":"#116E79","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#041d20","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#0b454c","pxt-primary-background":"#5D4FBA","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#4d3eb1","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#403587","pxt-secondary-background":"#5D4FBA","pxt-secondary-foreground":"#F8FAFC","pxt-secondary-background-hover":"#483c9a","pxt-secondary-foreground-hover":"#F8FAFC","pxt-secondary-accent":"#403587","pxt-tertiary-background":"#116E79","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#0b454c","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#041d20","pxt-target-background1":"#F8FAFC","pxt-target-foreground1":"#000000","pxt-target-background1-hover":"#d4e0ed","pxt-target-foreground1-hover":"#000000","pxt-target-stencil1":"#e1e1e1","pxt-target-background2":"#F8FAFC","pxt-target-foreground2":"#000000","pxt-target-background2-hover":"#d4e0ed","pxt-target-foreground2-hover":"#000000","pxt-target-stencil2":"#e1e1e1","pxt-target-background3":"#F8FAFC","pxt-target-foreground3":"#000000","pxt-target-background3-hover":"#d4e0ed","pxt-target-foreground3-hover":"#000000","pxt-target-stencil3":"#e1e1e1","pxt-neutral-background1":"#FFFFFF","pxt-neutral-foreground1":"rgba(0,0,0,.85)","pxt-neutral-background1-hover":"#f2f2f2","pxt-neutral-foreground1-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil1":"rgba(34, 74, 114, 0.15)","pxt-neutral-background2":"#F8F8F8","pxt-neutral-foreground2":"rgba(0,0,0,.85)","pxt-neutral-background2-hover":"#ebebeb","pxt-neutral-foreground2-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil2":"#e9eef2","pxt-neutral-background3":"#4e5758","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#424a4a","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#4E5758E5","pxt-neutral-base":"rgba(0, 0, 0, 1)","pxt-neutral-alpha0":"rgba(0, 0, 0, 0)","pxt-neutral-alpha10":"rgba(0, 0, 0, 0.1)","pxt-neutral-alpha20":"rgba(0, 0, 0, 0.2)","pxt-neutral-alpha50":"rgba(0, 0, 0, 0.5)","pxt-neutral-alpha80":"rgba(0, 0, 0, 0.8)","pxt-link":"#3977B4","pxt-link-hover":"#204467","pxt-focus-border":"#0078D4","pxt-colors-purple-background":"#6B4F76","pxt-colors-purple-foreground":"#FFFFFF","pxt-colors-purple-hover":"#483c9a","pxt-colors-purple-alpha10":"#6b4f7619","pxt-colors-orange-background":"#F76820","pxt-colors-orange-foreground":"#FFFFFF","pxt-colors-orange-hover":"#dc4f08","pxt-colors-orange-alpha10":"#F7682019","pxt-colors-brown-background":"#663905","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#351e03","pxt-colors-brown-alpha10":"#66390519","pxt-colors-blue-background":"#116e79","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#0b454c","pxt-colors-blue-alpha10":"#116e7919","pxt-colors-green-background":"#2ecc71","pxt-colors-green-foreground":"#FFFFFF","pxt-colors-green-hover":"#22be64","pxt-colors-green-alpha10":"#2ecc7119","pxt-colors-red-background":"#a80000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#8f0000","pxt-colors-red-alpha10":"#a8000019","pxt-colors-teal-background":"#116e79","pxt-colors-teal-foreground":"#FFFFFF","pxt-colors-teal-hover":"#0b454c","pxt-colors-teal-alpha10":"#116e7919","pxt-colors-yellow-background":"#f1c40f","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#c29d0b","pxt-colors-yellow-alpha10":"#f1c40f19"},"overrideCss":".gallerysegment .ui.card.link.cloudprojectscard {\n /* Differentiate from New Project button */\n background-color: var(--pxt-colors-teal-background) !important;\n color: var(--pxt-colors-teal-foreground) !important;\n}\n"},"arcade-orange":{"id":"arcade-orange","name":"Orange","weight":20,"colors":{"pxt-header-background":"#F76820","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#ab3d06","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#dc4f08","pxt-primary-background":"#F76820","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#dc4f08","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#C5561F","pxt-secondary-background":"#028B9B","pxt-secondary-background-hover":"#015e69","pxt-secondary-foreground":"#FFFFFF","pxt-secondary-foreground-hover":"#FFFFFF","pxt-secondary-accent":"#015964","pxt-tertiary-background":"#028B9B","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#015e69","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#013136","pxt-target-background1":"#FEF3E0","pxt-target-foreground1":"#000000","pxt-target-background1-hover":"#fce0af","pxt-target-foreground1-hover":"#000000","pxt-target-stencil1":"#e4d9c7","pxt-target-background2":"#B1E1DA","pxt-target-foreground2":"#000000","pxt-target-background2-hover":"#8cd3c9","pxt-target-foreground2-hover":"#000000","pxt-target-stencil2":"#b0b0b0","pxt-target-background3":"#FEF3E0","pxt-target-foreground3":"#000000","pxt-target-background3-hover":"#E4E4E4","pxt-target-foreground3-hover":"#000000","pxt-target-stencil3":"#e4d9c7","pxt-neutral-background1":"#FFFFFF","pxt-neutral-foreground1":"rgba(0,0,0,.85)","pxt-neutral-background1-hover":"#f2f2f2","pxt-neutral-foreground1-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil1":"rgba(34, 36, 38, .15)","pxt-neutral-background2":"#F8F8F8","pxt-neutral-foreground2":"rgba(0,0,0,.85)","pxt-neutral-background2-hover":"#ebebeb","pxt-neutral-foreground2-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil2":"#e9eef2","pxt-neutral-background3":"#4e5758","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#424a4a","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#4E5758E5","pxt-neutral-base":"rgba(0, 0, 0, 1)","pxt-neutral-alpha0":"rgba(0, 0, 0, 0)","pxt-neutral-alpha10":"rgba(0, 0, 0, 0.1)","pxt-neutral-alpha20":"rgba(0, 0, 0, 0.2)","pxt-neutral-alpha50":"rgba(0, 0, 0, 0.5)","pxt-neutral-alpha80":"rgba(0, 0, 0, 0.8)","pxt-link":"#3977B4","pxt-link-hover":"#204467","pxt-focus-border":"#0078D4","pxt-warning":"#FFD43A","pxt-warning-foreground":"#000000","pxt-warning-hover":"#FFCE21","pxt-warning-alpha10":"#FFD43A19","pxt-colors-purple-background":"#6B4F76","pxt-colors-purple-foreground":"#FFFFFF","pxt-colors-purple-hover":"#4f3b57","pxt-colors-purple-alpha10":"#6b4f7619","pxt-colors-orange-background":"#ff7f50","pxt-colors-orange-foreground":"#FFFFFF","pxt-colors-orange-hover":"#ff5a1d","pxt-colors-orange-alpha10":"#ff7f5019","pxt-colors-brown-background":"#663905","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#351e03","pxt-colors-brown-alpha10":"#66390519","pxt-colors-blue-background":"#028b9b","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#015e69","pxt-colors-blue-alpha10":"#028b9b19","pxt-colors-green-background":"#2ecc71","pxt-colors-green-foreground":"#FFFFFF","pxt-colors-green-hover":"#22be64","pxt-colors-green-alpha10":"#2ecc7119","pxt-colors-red-background":"#a80000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#8f0000","pxt-colors-red-alpha10":"#a8000019","pxt-colors-teal-background":"#028B9B","pxt-colors-teal-foreground":"#FFFFFF","pxt-colors-teal-hover":"#015e69","pxt-colors-teal-alpha10":"#028b9b19","pxt-colors-yellow-background":"#c0a000","pxt-colors-yellow-foreground":"#FFFFFF","pxt-colors-yellow-hover":"rgb(153, 132, 0)","pxt-colors-yellow-alpha10":"#c0a00019"}}}}
@@ -1 +1 @@
1
- {"id":"arcade","name":"arcade","nickname":"arcade","thumbnailName":"MakeCode Arcade","title":"Microsoft MakeCode Arcade","description":"Develop your programming skills by quickly creating and modding retro arcade games with Blocks and JavaScript in the MakeCode editor","corepkg":"device","cloud":{"workspace":false,"sharing":true,"thumbnails":true,"importing":true,"packages":true,"publishing":true,"githubPackages":true,"showBadges":true,"cloudProviders":{"github":{"id":"github","name":"GitHub","icon":"./static/providers/github-mark.png","identity":false,"order":4},"microsoft":{"id":"microsoft","name":"Microsoft","icon":"./static/providers/microsoft-logo.svg","identity":true,"redirect":true,"order":1},"google":{"id":"google","name":"Google","icon":"./static/providers/google-logo.svg","identity":true,"redirect":true,"order":2},"clever":{"id":"clever","name":"Clever","icon":"./static/providers/clever-logo.png","identity":true,"redirect":true,"order":3}}},"staticpkgdirs":{"base":["libs/hw","libs/hw---n3","libs/hw---n4","libs/hw---samd51","libs/hw---stm32f401","libs/hw---rp2040"],"extensions":["libs/accelerometer","libs/color","libs/edge-connector","libs/esp32","libs/feather","libs/light","libs/lightsensor","libs/mqtt","libs/net","libs/net-game","libs/palette","libs/radio","libs/radio-broadcast","libs/serial","libs/servo","libs/settings","libs/sevenseg","libs/shader","libs/thermometer"]},"cacheusedblocksdirs":["skillmap/space","skillmap/platformer"],"compile":{"useUF2":true,"deployDrives":"(ARCADE|PY|FTHR840BOOT|ARCD|RPI-RP2)","deployFileMarker":"INFO_UF2.TXT","driveName":"ARCADE","floatingPoint":true,"taggedInts":true,"nativeType":"thumb","gc":true,"upgrades":[],"webUSB":true,"saveAsPNG":true,"patches":{"0.0.0 - *":[{"type":"missingPackage","map":{"(DigitalPin|AnalogPin|pins)\\.P\\d\\d?":"edge-connector","serial\\.":"serial"}}],"0.0.0 - 0.1.1":[{"type":"api","map":{"controller\\.controlSprite":"controller.moveSprite","controller\\.controlPlayer":"controller.movePlayer"}}],"0.0.0 - 0.3.23":[{"type":"package","map":{"local-multiplayer":""}}],"0.0.0 - 0.3.24":[{"type":"api","map":{"sprites\\.createEmptySprite\\(([^)]+)\\)":"sprites.create(img`.`, $1)"}},{"type":"blockId","map":{"keysdx":"keydx","keysdy":"keydy"}}],"0.0.0 - 0.11.20":[{"type":"api","map":{"SpriteKind":"SpriteKindLegacy"}}],"0.0.0 - 0.14.57":[{"type":"missingPackage","map":{"scene\\.setTileMap":"color-coded-tilemap","scene\\.setTile":"color-coded-tilemap","scene\\.getTile":"color-coded-tilemap","scene\\.getTilesByType":"color-coded-tilemap","scene\\.placeOnRandomTile":"color-coded-tilemap","scene\\.setTileAt":"color-coded-tilemap","scene\\.onHitTile":"color-coded-tilemap","\\.tileHitFrom":"color-coded-tilemap"}}],"0.0.0 - 0.18.9":[{"type":"api","map":{"tilemap\\s*\\.\\s*createTileSprite":"tiles.createTileSprite","tilemap\\s*\\.\\s*coverAllTiles":"tiles.coverAllTiles","tilemap\\s*\\.\\s*createSpritesOnTiles":"tiles.createSpritesOnTiles","tilemap\\s*\\.\\s*destorySpritesOfKind":"tiles.destroySpritesOfKind","tilemap\\s*\\.\\s*tileIs":"tiles.tileIs","tilemap\\s*\\.\\s*tileIsWall":"tiles.tileIsWall","tilemap\\s*\\.\\s*forEachTileOfKind":"tiles.forEachTileOfKind","tilemap\\s*\\.\\s*forEachTileOfMap":"tiles.forEachTileOfMap","tilemap\\s*\\.\\s*replaceAllTiles":"tiles.replaceAllTiles","tilemap\\s*\\.\\s*columnInDirection":"tiles.columnInDirection","tilemap\\s*\\.\\s*rowInDirection":"tiles.rowInDirection","tilemap\\s*\\.\\s*forEachDirection":"tiles.forEachDirection","tilemap\\s*\\.\\s*centerCameraOnTile":"tiles.centerCameraOnTile","tilemap\\s*\\.\\s*locationOfSprite":"tiles.locationOfSprite","tilemap\\s*\\.\\s*RowCol":"tiles.RowCol","tilemap\\s*\\.\\s*spriteRowCol":"tiles.spriteRowCol","tilemap\\s*\\.\\s*locationColumn":"tiles.locationColumn","tilemap\\s*\\.\\s*locationRow":"tiles.locationRow","tilemap\\s*\\.\\s*XY":"tiles.XY","tilemap\\s*\\.\\s*locationXY":"tiles.locationXY","tilemap\\s*\\.\\s*locationInDirection":"tiles.locationInDirection","tilemap\\s*\\.\\s*_directionEditor":"tiles._directionEditor","tilemap\\s*\\.\\s*tileWidth":"tiles.tileWidth","tilemap\\s*\\.\\s*tilemapColumns":"tiles.tilemapColumns","tilemap\\s*\\.\\s*tilemapRows":"tiles.tilemapRows","tilemap\\s*\\.\\s*screenCoordinateToTile":"tiles.screenCoordinateToTile","tilemap\\s*\\.\\s*tileCoordinateToScreen":"tiles.tileCoordinateToScreen","tilemap\\s*\\.\\s*centeredTileCoordinateToScreen":"tiles.centeredTileCoordinateToScreen","tilemap\\s*\\.\\s*OVERWORLD_MAP_ID":"tiles.OVERWORLD_MAP_ID","tilemap\\s*\\.\\s*MAP_LOADED_EVENT":"tiles.MAP_LOADED_EVENT","tilemap\\s*\\.\\s*WorldMap":"tiles.WorldMap","tilemap\\s*\\.\\s*WorldMapConnection":"tiles.WorldMapConnection","tilemap\\s*\\.\\s*createMap":"tiles.createMap","tilemap\\s*\\.\\s*copyMap":"tiles.copyMap","tilemap\\s*\\.\\s*loadMap":"tiles.loadMap","tilemap\\s*\\.\\s*getLoadedMap":"tiles.getLoadedMap","tilemap\\s*\\.\\s*onMapLoaded":"tiles.onMapLoaded","tilemap\\s*\\.\\s*onMapUnloaded":"tiles.onMapUnloaded","tilemap\\s*\\.\\s*connectMapById":"tiles.connectMapById","tilemap\\s*\\.\\s*loadConnectedMap":"tiles.loadConnectedMap","tilemap\\s*\\.\\s*getConnectedMap":"tiles.getConnectedMap","tilemap\\s*\\.\\s*setWorldLocationToMap":"tiles.setWorldLocationToMap","tilemap\\s*\\.\\s*loadMapAt":"tiles.loadMapAt","tilemap\\s*\\.\\s*getMapAtWorldLocation":"tiles.getMapAtWorldLocation","tilemap\\s*\\.\\s*loadMapInDirection":"tiles.loadMapInDirection","tilemap\\s*\\.\\s*loadedWorldColumn":"tiles.loadedWorldColumn","tilemap\\s*\\.\\s*loadedWorldRow":"tiles.loadedWorldRow"}}],"0.0.0 - 1.9.0":[{"type":"api","map":{"myCorg\\s*\\.\\s*follow":"myCorg.cameraFollow"}}]},"switches":{},"jsRefCounting":false,"utf8":true},"compileService":{"buildEngine":"codal","githubCorePackage":"lancaster-university/codal","gittag":"v0.8.0","dockerImage":"pext/yotta:latest","codalTarget":{"branches":{}}},"variants":{"stm32f401":{"compile":{"hasHex":true,"openocdScript":"source [find interface/stlink-v2.cfg]; source [find target/stm32f4x.cfg]","flashEnd":524288,"uf2Family":"0x57755a57"},"compileService":{"codalTarget":{"name":"codal-big-brainpad","url":"https://github.com/lancaster-university/codal-big-brainpad","branch":"v1.3.1","type":"git"},"codalBinary":"STM32","serviceId":"codal2stm32","dockerImage":"pext/yotta:latest"}},"samd51":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; set CHIPNAME at91samd51g19; source [find target/atsame5x.cfg]","openocdScriptAlt":"source [find interface/stlink-v2.cfg]; set CPUTAPID 0x2ba01477; set CHIPNAME at91samd51g19; source [find target/at91samdXX.cfg]","ramSize":196608,"flashEnd":524288,"uf2Family":"0x55114460"},"compileService":{"codalTarget":{"name":"codal-itsybitsy-m4","url":"https://github.com/lancaster-university/codal-itsybitsy-m4","branch":"v0.2.7","type":"git"},"codalBinary":"ITSYBITSY_M4","serviceId":"codal2samd51","dockerImage":"pext/yotta:latest"}},"nrf52840":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; source [find target/nrf52.cfg]","webUSB":false,"flashEnd":1007616,"uf2Family":"0xada52840"},"compileService":{"codalTarget":{"name":"codal-nrf52840-dk","url":"https://github.com/mmoskal/codal-nrf52840-dk","branch":"v1.1.7","type":"git"},"codalBinary":"NRF52840_DK","serviceId":"codal2nrf52840","dockerImage":"pext/yotta:latest","yottaConfig":{"pxt":{"board":{"id":"BOARD_ID_NRF52840"}}}}},"nrf52833":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; source [find target/nrf52.cfg]","webUSB":false,"useUF2":false,"flashEnd":524288,"deployDrives":".*","deployFileMarker":"DETAILS.TXT"},"compileService":{"codalTarget":{"name":"codal-nrf52833-dk","url":"https://github.com/mmoskal/codal-nrf52833-dk","branch":"v2.0.2","type":"git"},"codalBinary":"NRF52840_DK","serviceId":"codal2nrf52840","dockerImage":"pext/yotta:latest","yottaConfig":{"pxt":{"board":{"id":"BOARD_ID_NRF52833"}}}}},"rp2040":{"compile":{"hasHex":true,"openocdScript":"???","flashChecksumAddr":0,"flashEnd":2097152,"uf2Family":"0xe48bff56"},"compileService":{"codalTarget":{"name":"codal-pi-pico","url":"https://github.com/lancaster-university/codal-pi-pico","branch":"v0.0.13","type":"git"},"gittag":"v0.9.0","codalBinary":"PI-PICO","serviceId":"codal2pico","dockerImage":"pext/arm:gcc9"}},"rpi":{"compile":{"hasHex":true,"useELF":true,"runtimeIsARM":true,"flashCodeAlign":256,"webUSB":false,"stackAlign":2},"compileService":{"buildEngine":"dockermake","dockerImage":"pext/rpi:alsa","serviceId":"rpi"}},"vm":{"compile":{"hasHex":true,"useELF":true,"flashCodeAlign":256,"webUSB":false,"nativeType":"vm","stackAlign":2},"compileService":{"buildEngine":"dockercross","dockerImage":"pext/crossbuild","serviceId":"crossbuild","skipCloudBuild":true}}},"serial":{"useEditor":true,"log":true,"editorTheme":{"graphBackground":"#d9d9d9","lineColors":["#009DDC","#FB48C7","#40bf4a","#8073E5","#d25b33"]}},"runtime":{"mathBlocks":true,"loopsBlocks":true,"logicBlocks":true,"variablesBlocks":true,"textBlocks":true,"functionBlocks":true,"breakBlock":true,"continueBlock":true,"pauseUntilBlock":{"category":"loops"},"functionsOptions":{"useNewFunctions":true,"extraFunctionEditorTypes":[{"typeName":"Sprite","icon":"send","defaultName":"mySprite"},{"typeName":"Image","icon":"image outline","defaultName":"myImage"},{"label":"Location","typeName":"tiles.Location","icon":"tree","defaultName":"myLocation"}]},"listsBlocks":true,"tilesetFieldEditorIdentity":"images._tile","bannedCategories":["pins","control","input","serial","power"]},"simulator":{"autoRun":true,"autoRunLight":false,"emptyRunCode":"pxsim.pxtcore.updateScreen(new pxsim.RefImage(160, 120, 4))","aspectRatio":0.85,"dynamicBoardDefinition":true,"keymap":true},"queryVariants":{"skillmap=1":{"appTheme":{"embeddedTutorial":true,"allowParentController":true,"shareFinishedTutorials":false,"hideReplaceMyCode":false}},"teachertool=1":{"appTheme":{"hideMenuBar":true,"workspaceSearch":true,"noReloadOnUpdate":true}},"ninja=1":{"appTheme":{"embeddedTutorial":true,"allowParentController":true,"shareFinishedTutorials":false,"hideReplaceMyCode":false}}},"unsupportedBrowsers":[{"id":"ie"}],"uploadDocs":true,"noSimShims":true,"defaultBadges":[{"id":"skillmap-completion-save the forest","type":"skillmap-completion","image":"./static/badges/badge-forest.png","lockedImage":"./static/badges/badge-forest-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/forest","title":"Save the Forest"},{"id":"skillmap-completion-zookeeper","type":"skillmap-completion","image":"./static/badges/badge-zoo.png","lockedImage":"./static/badges/badge-zoo-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/zoo","title":"Zookeeper"},{"id":"skillmap-completion-rockstar","image":"./static/badges/badge-rockstar.png","lockedImage":"./static/badges/badge-rockstar-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/rockstar","type":"skillmap-completion","title":"80's Rockstar"},{"id":"skillmap-completion-build a platformer game!","image":"./static/badges/badge-jungle.png","lockedImage":"./static/badges/badge-jungle-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/jungle","type":"skillmap-completion","title":"Jungle Jump"},{"id":"skillmap-completion-space","image":"./static/badges/badge-space.png","lockedImage":"./static/badges/badge-space-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/space","type":"skillmap-completion","title":"Space Explorer"},{"id":"skillmap-completion-shark","image":"./static/badges/badge-shark.png","lockedImage":"./static/badges/badge-shark-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/shark","type":"skillmap-completion","title":"Shark Splash"}],"versions":{"branch":"master","tag":"v2.1.21","commits":"https://github.com/microsoft/pxt-arcade/commits/f75423aff6b5ed4d1058313fa2130f832a2a6bd4","target":"2.1.21","pxt":"12.2.12"},"blocksprj":{"id":"blocksprj","config":{"name":"{0}","dependencies":{"device":"*"},"description":"","files":["main.blocks","main.ts","README.md","assets.json"],"additionalFilePaths":[]},"files":{"README.md":" ","assets.json":"","main.blocks":"<xml xmlns=\"http://www.w3.org/1999/xhtml\">\n <variables></variables>\n <block type=\"pxt-on-start\" x=\"0\" y=\"0\"></block>\n</xml>","main.ts":" "}},"tsprj":{"id":"tsprj","config":{"name":"{0}","dependencies":{"device":"*"},"description":"","files":["main.ts","README.md","assets.json"],"additionalFilePaths":[]},"files":{"README.md":" ","assets.json":"","main.ts":" "}},"colorThemeMap":{"pxt-high-contrast":{"id":"pxt-high-contrast","name":"High Contrast","weight":100,"monacoBaseTheme":"hc-black","colors":{"pxt-header-background":"#000000","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#000000","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#FFFFFF","pxt-primary-background":"#000000","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#000000","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#000000","pxt-secondary-background":"#000000","pxt-secondary-foreground":"#FFFFFF","pxt-secondary-background-hover":"#000000","pxt-secondary-foreground-hover":"#FFFFFF","pxt-secondary-accent":"#000000","pxt-tertiary-background":"#000000","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#000000","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#000000","pxt-target-background1":"#000000","pxt-target-foreground1":"#FFFFFF","pxt-target-background1-hover":"#000000","pxt-target-foreground1-hover":"#cccccc","pxt-target-stencil1":"#FFFFFF","pxt-target-background2":"#000000","pxt-target-foreground2":"#FFFFFF","pxt-target-background2-hover":"#000000","pxt-target-foreground2-hover":"#cccccc","pxt-target-stencil2":"#FFFFFF","pxt-target-background3":"#000000","pxt-target-foreground3":"#FFFFFF","pxt-target-background3-hover":"#000000","pxt-target-foreground3-hover":"#cccccc","pxt-target-stencil3":"#FFFFFF","pxt-neutral-background1":"#000000","pxt-neutral-foreground1":"#FFFFFF","pxt-neutral-background1-hover":"#000000","pxt-neutral-foreground1-hover":"#FFFFFF","pxt-neutral-stencil1":"#FFFFFF","pxt-neutral-background2":"#000000","pxt-neutral-foreground2":"#FFFFFF","pxt-neutral-background2-hover":"#000000","pxt-neutral-foreground2-hover":"#FFFFFF","pxt-neutral-stencil2":"#FFFFFF","pxt-neutral-background3":"#000000","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#000000","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#000000E5","pxt-neutral-base":"rgba(255, 255, 255, 1)","pxt-neutral-alpha0":"rgba(255, 255, 255, 0)","pxt-neutral-alpha10":"rgba(255, 255, 255, 0.1)","pxt-neutral-alpha20":"rgba(255, 255, 255, 0.2)","pxt-neutral-alpha50":"rgba(255, 255, 255, 0.5)","pxt-neutral-alpha80":"rgba(255, 255, 255, 0.8)","pxt-link":"#807FFF","pxt-link-hover":"#BBBBFF","pxt-focus-border":"#FFFF00","pxt-success":"#00FF00","pxt-success-foreground":"#000000","pxt-success-hover":"#00FF00","pxt-success-alpha10":"#00FF0019","pxt-warning":"#00FFFF","pxt-warning-foreground":"#FFFFFF","pxt-warning-hover":"#00FFFF","pxt-warning-alpha10":"#00FFFF19","pxt-error":"#880000","pxt-error-foreground":"#FFFFFF","pxt-error-hover":"#880000","pxt-error-alpha10":"#88000019","pxt-colors-purple-background":"#FF00FF","pxt-colors-purple-foreground":"#000000","pxt-colors-purple-hover":"#FF00FF","pxt-colors-purple-alpha10":"#FF00FF19","pxt-colors-orange-background":"#FF7F00","pxt-colors-orange-foreground":"#000000","pxt-colors-orange-hover":"#FF7F00","pxt-colors-orange-alpha10":"#FF7F0019","pxt-colors-brown-background":"#d1b7a3","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#d1b7a3","pxt-colors-brown-alpha10":"#d1b7a319","pxt-colors-blue-background":"#0078D7","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#0086F1","pxt-colors-blue-alpha10":"#0078D719","pxt-colors-green-background":"#00FF00","pxt-colors-green-foreground":"#000000","pxt-colors-green-hover":"#00FF00","pxt-colors-green-alpha10":"#00FF0019","pxt-colors-red-background":"#880000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#880000","pxt-colors-red-alpha10":"#88000019","pxt-colors-teal-background":"#5BE0FF","pxt-colors-teal-foreground":"#000000","pxt-colors-teal-hover":"#5BE0FF","pxt-colors-teal-alpha10":"#5BE0FF19","pxt-colors-yellow-background":"#FFFF00","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#FFFF00","pxt-colors-yellow-alpha10":"#FFFF0019"},"overrideCss":".common-button {\n color: var(--pxt-neutral-foreground2) !important;\n background-color: var(--pxt-neutral-background2) !important;\n border-color: var(--pxt-neutral-foreground2) !important;\n}\n\n.common-button:hover, .common-button:focus {\n outline: 2px solid var(--pxt-colors-yellow-background) !important;\n z-index: 1;\n}\n\n/*\nOverride default button background for the area menu, which requires transparency,\nbut still use a fairly opaque one to keep focus/visibility on the main buttons.\n*/\n.area-menu-container .area-button {\n background-color: var(--pxt-neutral-alpha80) !important;\n}\n\n/* \n * \"User-provided content\" header in the import modal.\n */\n.ui.violet.message .header {\n color: var(--pxt-colors-purple-background) !important;\n}\n\n/* \n * Checkbox styles\n * In HC the neutral and primary colors are the same, so we need to differentiate with\n * a different background color when checked.\n */\n.common-checkbox.toggle input:checked~label:before,\ndiv.field .ui.toggle.checkbox input:checked~label:before {\n background-color: var(--pxt-colors-purple-background) !important;\n}\n\n.common-checkbox-icon.checked {\n background-color: var(--pxt-colors-purple-background);\n color: var(--pxt-colors-purple-foreground);\n border-color: var(--pxt-colors-purple-hover);\n}\n\n.common-checkbox-icon.checked i.fas.fa-check {\n color: var(--pxt-colors-purple-foreground);\n}\n\n/*\n * Make toggle \"handle\" more visible for HC\n */\n.common-checkbox.toggle label:after {\n background-color: var(--pxt-neutral-foreground1) !important;\n}\n\n/*\n * Selection highlights\n */\n\n.blocklyContextMenu {\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n.blocklyWidgetDiv .blocklyMenu.blocklyContextMenu .blocklyMenuItem.blocklyMenuItemHighlight {\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n/*\n * Toolbox\n */\n.blocklyTreeRow:hover {\n outline: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n#blocklySearchInput i {\n color: var(--pxt-neutral-foreground1);\n opacity: 1;\n}\n\n/* \n * Inverted image colors\n */\n.barcharticon,\n.blockly-ws-search-next-btn,\n.blockly-ws-search-previous-btn,\n.blockly-ws-search-close-btn {\n filter: invert(1);\n}\n\n/* Sim toolbar */\n#simulator .editor-sidebar .simtoolbar .debug-button.active,\n#simulator .editor-sidebar .simtoolbar .debug-button.active:hover,\n#simulator .editor-sidebar .simtoolbar .debug-button.active:hover i {\n /* Make active state more apparent by inverting the colors */\n background: var(--pxt-neutral-foreground2) !important;\n color: var(--pxt-neutral-background2) !important;\n}\n\n/* Image Editor */\n.image-editor-topbar, .image-editor-bottombar, .image-editor-sidebar {\n background: var(--pxt-neutral-background1) !important;\n}\n.image-editor-tool-buttons {\n background: none !important;\n}\n.image-editor-button,\n.image-editor-input,\n.image-editor-confirm {\n border: 1px solid var(--pxt-neutral-foreground1);\n}\n.image-editor-canvas, .image-editor-canvas:hover, .image-editor-canvas:focus {\n outline: none !important;\n}\n.cursor-button {\n /* remove margin since we now have a border around the cursor buttons and it looks better centered */\n margin-right: 0;\n}\n\n/* Toolbox */\n.pxtToolbox:not(.invertedToolbox) span.blocklyTreeLabel {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeSelected span.blocklyTreeLabel,\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeSelected span.blocklyTreeIcon {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected) .blocklyTreeLabel {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected):hover,\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected):focus {\n background-color: #404040;\n}\n\n.blocksEditorOuter #blocklyTrashIcon {\n color: var(--pxt-primary-foreground);\n}\n\n/*\n * Teaching Bubbles\n */\n.teaching-bubble,\n.teaching-bubble .teaching-bubble-navigation-buttons > .common-button {\n background: var(--pxt-neutral-background1) !important;\n color: var(--pxt-neutral-foreground1) !important;\n border: solid var(--pxt-neutral-foreground1) !important;\n}\n\n.teaching-bubble-cutout {\n border: 0.25rem solid var(--pxt-neutral-alpha20);\n}\n\n.teaching-bubble .ai-footer {\n opacity: 1 !important;\n}\n\n.teaching-bubble-arrow,\n.teaching-bubble .ai-footer-text,\n.teaching-bubble .feedback-button,\n.teaching-bubble .feedback-button.disabled,\n.teaching-bubble .teaching-bubble-steps {\n color: var(--pxt-neutral-foreground1) !important;\n}\n\n/*\n * Side Docs\n */\n\n#sidedocs {\n background-color: var(--pxt-neutral-foreground1);\n}\n\n#sidedocsbar a i,\n#sidedocsbar a span {\n color: var(--pxt-neutral-background1) !important;\n}\n\n#sidedocsbar a:hover,\n#sidedocsbar a:focus {\n /* Yellow does not contrast well against white background */\n outline: 3px solid var(--pxt-neutral-background1) !important;\n}\n\n#sidedocsbar a:hover i,\n#sidedocsbar a:focus i,\n#sidedocsbar a:hover span,\n#sidedocsbar a:focus span {\n color: var(--pxt-link-hover) !important;\n}\n\n/*\n * Editor Toggle\n */\n#editortoggle .selected.item {\n transition: none;\n &:focus {\n box-shadow: inset 0 0 0 6px #000000 !important;\n }\n >.icon {\n color: #000000 !important;\n }\n}\n\n#editordropdown.ui.button.active > .icon {\n color: #000000 !important;\n}\n\n/*\n * Dropdown Menu\n */\n.common-menu-dropdown-item:hover,\n.common-menu-dropdown > .menu-button.expanded {\n outline: var(--pxt-focus-border) solid 3px !important;\n outline-offset: -4px;\n z-index: 1;\n}"},"arcade-dark":{"id":"arcade-dark","name":"Dark","weight":60,"monacoBaseTheme":"vs-dark","colors":{"pxt-header-background":"#181818","pxt-header-foreground":"#ffffff","pxt-header-background-hover":"#252525","pxt-header-foreground-hover":"#ffffff","pxt-header-stencil":"#323232","pxt-primary-background":"#0078D4","pxt-primary-foreground":"#ffffff","pxt-primary-background-hover":"#026EC1","pxt-primary-foreground-hover":"#ffffff","pxt-primary-accent":"#005ba1","pxt-secondary-background":"#63276d","pxt-secondary-foreground":"#f3f2f1","pxt-secondary-background-hover":"#742e80","pxt-secondary-foreground-hover":"#f3f2f1","pxt-secondary-accent":"#411a47","pxt-tertiary-background":"#0078d4","pxt-tertiary-foreground":"#ffffff","pxt-tertiary-background-hover":"#026EC1","pxt-tertiary-foreground-hover":"#ffffff","pxt-tertiary-accent":"#0894ff","pxt-target-background1":"#1F1F1F","pxt-target-foreground1":"#f3f2f1","pxt-target-background1-hover":"#2c2c2c","pxt-target-foreground1-hover":"#ffffff","pxt-target-stencil1":"#3b3a39","pxt-target-background2":"#181818","pxt-target-foreground2":"#ffffff","pxt-target-background2-hover":"#252525","pxt-target-foreground2-hover":"#ffffff","pxt-target-stencil2":"#323232","pxt-target-background3":"#181818","pxt-target-foreground3":"#ffffff","pxt-target-background3-hover":"#252525","pxt-target-foreground3-hover":"#ffffff","pxt-target-stencil3":"#323232","pxt-neutral-background1":"#1F1F1F","pxt-neutral-foreground1":"#f3f2f1","pxt-neutral-background1-hover":"#2c2c2c","pxt-neutral-foreground1-hover":"#ffffff","pxt-neutral-stencil1":"#3b3a39","pxt-neutral-background2":"#181818","pxt-neutral-foreground2":"#ffffff","pxt-neutral-background2-hover":"#252525","pxt-neutral-foreground2-hover":"#ffffff","pxt-neutral-stencil2":"#3b3a39","pxt-neutral-background3":"#2d2d2d","pxt-neutral-foreground3":"#f3f2f1","pxt-neutral-background3-hover":"#202020","pxt-neutral-foreground3-hover":"#ffffff","pxt-neutral-stencil3":"#070707","pxt-neutral-background3-alpha90":"#2d2d2de6","pxt-neutral-base":"rgba(180, 180, 180, 1)","pxt-neutral-alpha0":"rgba(180, 180, 180, 0)","pxt-neutral-alpha10":"rgba(180, 180, 180, 0.1)","pxt-neutral-alpha20":"rgba(180, 180, 180, 0.2)","pxt-neutral-alpha50":"rgba(180, 180, 180, 0.5)","pxt-neutral-alpha80":"rgba(180, 180, 180, 0.8)","pxt-link":"#479ef5","pxt-link-hover":"#62abf5","pxt-focus-border":"#5caae5","pxt-colors-purple-background":"#63276d","pxt-colors-purple-foreground":"#f3f2f1","pxt-colors-purple-hover":"#742e80","pxt-colors-purple-alpha10":"#63276d19","pxt-colors-orange-background":"#7a2101","pxt-colors-orange-foreground":"#ffffff","pxt-colors-orange-hover":"#932801","pxt-colors-orange-alpha10":"#7a210119","pxt-colors-brown-background":"#50301a","pxt-colors-brown-foreground":"#ffffff","pxt-colors-brown-hover":"#633c20","pxt-colors-brown-alpha10":"#50301a19","pxt-colors-blue-background":"#0078D4","pxt-colors-blue-foreground":"#ffffff","pxt-colors-blue-hover":"#026EC1","pxt-colors-blue-alpha10":"#0078D419","pxt-colors-green-background":"#27ae60","pxt-colors-green-foreground":"#ffffff","pxt-colors-green-hover":"#1e8449","pxt-colors-green-alpha10":"#27ae6019","pxt-colors-red-background":"#e74c3c","pxt-colors-red-foreground":"#ffffff","pxt-colors-red-hover":"#c0392b","pxt-colors-red-alpha10":"#e74c3c19","pxt-colors-teal-background":"#1abc9c","pxt-colors-teal-foreground":"#ffffff","pxt-colors-teal-hover":"#16a085","pxt-colors-teal-alpha10":"#1abc9c19","pxt-colors-yellow-background":"#fde300","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#e4cc00","pxt-colors-yellow-alpha10":"#fde30019"},"overrideCss":".image-editor-change-name .image-editor-input {\n /* The textbox background matches the footer of the image editor, so add a border */\n border: 1px solid var(--pxt-neutral-stencil2);\n}\n\n#langmodal #availablelocales .langoption .header {\n /* Better contrast than default, which is purple */\n color: var(--pxt-neutral-foreground1);\n}\n\n.pxtToolbox span.blocklyTreeLabel,\n.pxtToolbox .blocklyTreeSelected span.blocklyTreeLabel,\n.pxtToolbox .blocklyTreeSelected .blocklyTreeIcon {\n /* Better contrast in toolbox */\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox .blocklyTreeIcon,\n.tutorial-container span.docs.inlineblock {\n /* Better contrast in toolbox & tutorial block colors, but try to preserve some of the icon color */\n filter: brightness(1.2) saturate(2);\n}\n\n#mainmenu {\n /* Some parts of the app use the same color as a background. This keeps the menu from blending in */\n border-bottom: 1px solid var(--pxt-header-stencil);\n}\n\n.projectsdialog .ui.card:hover {\n /* Neutral and target colors are the same in dark theme, so it helps to have a clearer border when hovering over cards. */\n border-color: var(--pxt-focus-border) !important;\n}\n\n/* \n * Inverted image colors\n */\n.barcharticon,\n.blockly-ws-search-next-btn,\n.blockly-ws-search-previous-btn,\n.blockly-ws-search-close-btn {\n filter: invert(1);\n}\n\n.modals .ui.button.immersive-reader-button,\n#mainmenu .immersive-reader-button.ui.item,\n#simulator .editor-sidebar .immersive-reader-button.ui.item {\n background-image: url(\"/static/icons/immersive-reader-light.svg\") !important;\n}\n\n.carouselarrow {\n /* Better contrast, especially against images in carousels */\n opacity: 0.9;\n}\n\n/* For inverted buttons, it almost always looks better to have the background be dark instead of light (even though non-inverted has a light foreground) */\nbutton.ui.button.inverted:not(.teaching-bubble-button),\nbutton.common-button.inverted:not(.teaching-bubble-button) {\n background-color: var(--pxt-neutral-background2) !important;\n}\n\nbutton.ui.button.inverted:hover:not(.teaching-bubble-button),\nbutton.common-button.inverted:hover:not(.teaching-bubble-button) {\n background-color: var(--pxt-neutral-background2-hover) !important;\n}\n"},"arcade-light":{"id":"arcade-light","name":"Light","weight":40,"colors":{"pxt-header-background":"#116E79","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#041d20","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#0b454c","pxt-primary-background":"#5D4FBA","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#4d3eb1","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#403587","pxt-secondary-background":"#5D4FBA","pxt-secondary-foreground":"#F8FAFC","pxt-secondary-background-hover":"#483c9a","pxt-secondary-foreground-hover":"#F8FAFC","pxt-secondary-accent":"#403587","pxt-tertiary-background":"#116E79","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#0b454c","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#041d20","pxt-target-background1":"#F8FAFC","pxt-target-foreground1":"#000000","pxt-target-background1-hover":"#d4e0ed","pxt-target-foreground1-hover":"#000000","pxt-target-stencil1":"#e1e1e1","pxt-target-background2":"#F8FAFC","pxt-target-foreground2":"#000000","pxt-target-background2-hover":"#d4e0ed","pxt-target-foreground2-hover":"#000000","pxt-target-stencil2":"#e1e1e1","pxt-target-background3":"#F8FAFC","pxt-target-foreground3":"#000000","pxt-target-background3-hover":"#d4e0ed","pxt-target-foreground3-hover":"#000000","pxt-target-stencil3":"#e1e1e1","pxt-neutral-background1":"#FFFFFF","pxt-neutral-foreground1":"rgba(0,0,0,.85)","pxt-neutral-background1-hover":"#f2f2f2","pxt-neutral-foreground1-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil1":"rgba(34, 74, 114, 0.15)","pxt-neutral-background2":"#F8F8F8","pxt-neutral-foreground2":"rgba(0,0,0,.85)","pxt-neutral-background2-hover":"#ebebeb","pxt-neutral-foreground2-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil2":"#e9eef2","pxt-neutral-background3":"#4e5758","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#424a4a","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#4E5758E5","pxt-neutral-base":"rgba(0, 0, 0, 1)","pxt-neutral-alpha0":"rgba(0, 0, 0, 0)","pxt-neutral-alpha10":"rgba(0, 0, 0, 0.1)","pxt-neutral-alpha20":"rgba(0, 0, 0, 0.2)","pxt-neutral-alpha50":"rgba(0, 0, 0, 0.5)","pxt-neutral-alpha80":"rgba(0, 0, 0, 0.8)","pxt-link":"#3977B4","pxt-link-hover":"#204467","pxt-focus-border":"#0078D4","pxt-colors-purple-background":"#6B4F76","pxt-colors-purple-foreground":"#FFFFFF","pxt-colors-purple-hover":"#483c9a","pxt-colors-purple-alpha10":"#6b4f7619","pxt-colors-orange-background":"#F76820","pxt-colors-orange-foreground":"#FFFFFF","pxt-colors-orange-hover":"#dc4f08","pxt-colors-orange-alpha10":"#F7682019","pxt-colors-brown-background":"#663905","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#351e03","pxt-colors-brown-alpha10":"#66390519","pxt-colors-blue-background":"#116e79","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#0b454c","pxt-colors-blue-alpha10":"#116e7919","pxt-colors-green-background":"#2ecc71","pxt-colors-green-foreground":"#FFFFFF","pxt-colors-green-hover":"#22be64","pxt-colors-green-alpha10":"#2ecc7119","pxt-colors-red-background":"#a80000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#8f0000","pxt-colors-red-alpha10":"#a8000019","pxt-colors-teal-background":"#116e79","pxt-colors-teal-foreground":"#FFFFFF","pxt-colors-teal-hover":"#0b454c","pxt-colors-teal-alpha10":"#116e7919","pxt-colors-yellow-background":"#f1c40f","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#c29d0b","pxt-colors-yellow-alpha10":"#f1c40f19"},"overrideCss":".gallerysegment .ui.card.link.cloudprojectscard {\n /* Differentiate from New Project button */\n background-color: var(--pxt-colors-teal-background) !important;\n color: var(--pxt-colors-teal-foreground) !important;\n}\n"},"arcade-orange":{"id":"arcade-orange","name":"Orange","weight":20,"colors":{"pxt-header-background":"#F76820","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#ab3d06","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#dc4f08","pxt-primary-background":"#F76820","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#dc4f08","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#C5561F","pxt-secondary-background":"#028B9B","pxt-secondary-background-hover":"#015e69","pxt-secondary-foreground":"#FFFFFF","pxt-secondary-foreground-hover":"#FFFFFF","pxt-secondary-accent":"#015964","pxt-tertiary-background":"#028B9B","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#015e69","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#013136","pxt-target-background1":"#FEF3E0","pxt-target-foreground1":"#000000","pxt-target-background1-hover":"#fce0af","pxt-target-foreground1-hover":"#000000","pxt-target-stencil1":"#e4d9c7","pxt-target-background2":"#B1E1DA","pxt-target-foreground2":"#000000","pxt-target-background2-hover":"#8cd3c9","pxt-target-foreground2-hover":"#000000","pxt-target-stencil2":"#b0b0b0","pxt-target-background3":"#FEF3E0","pxt-target-foreground3":"#000000","pxt-target-background3-hover":"#E4E4E4","pxt-target-foreground3-hover":"#000000","pxt-target-stencil3":"#e4d9c7","pxt-neutral-background1":"#FFFFFF","pxt-neutral-foreground1":"rgba(0,0,0,.85)","pxt-neutral-background1-hover":"#f2f2f2","pxt-neutral-foreground1-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil1":"rgba(34, 36, 38, .15)","pxt-neutral-background2":"#F8F8F8","pxt-neutral-foreground2":"rgba(0,0,0,.85)","pxt-neutral-background2-hover":"#ebebeb","pxt-neutral-foreground2-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil2":"#e9eef2","pxt-neutral-background3":"#4e5758","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#424a4a","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#4E5758E5","pxt-neutral-base":"rgba(0, 0, 0, 1)","pxt-neutral-alpha0":"rgba(0, 0, 0, 0)","pxt-neutral-alpha10":"rgba(0, 0, 0, 0.1)","pxt-neutral-alpha20":"rgba(0, 0, 0, 0.2)","pxt-neutral-alpha50":"rgba(0, 0, 0, 0.5)","pxt-neutral-alpha80":"rgba(0, 0, 0, 0.8)","pxt-link":"#3977B4","pxt-link-hover":"#204467","pxt-focus-border":"#0078D4","pxt-colors-purple-background":"#6B4F76","pxt-colors-purple-foreground":"#FFFFFF","pxt-colors-purple-hover":"#4f3b57","pxt-colors-purple-alpha10":"#6b4f7619","pxt-colors-orange-background":"#ff7f50","pxt-colors-orange-foreground":"#FFFFFF","pxt-colors-orange-hover":"#ff5a1d","pxt-colors-orange-alpha10":"#ff7f5019","pxt-colors-brown-background":"#663905","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#351e03","pxt-colors-brown-alpha10":"#66390519","pxt-colors-blue-background":"#028b9b","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#015e69","pxt-colors-blue-alpha10":"#028b9b19","pxt-colors-green-background":"#2ecc71","pxt-colors-green-foreground":"#FFFFFF","pxt-colors-green-hover":"#22be64","pxt-colors-green-alpha10":"#2ecc7119","pxt-colors-red-background":"#a80000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#8f0000","pxt-colors-red-alpha10":"#a8000019","pxt-colors-teal-background":"#028B9B","pxt-colors-teal-foreground":"#FFFFFF","pxt-colors-teal-hover":"#015e69","pxt-colors-teal-alpha10":"#028b9b19","pxt-colors-yellow-background":"#c0a000","pxt-colors-yellow-foreground":"#FFFFFF","pxt-colors-yellow-hover":"rgb(153, 132, 0)","pxt-colors-yellow-alpha10":"#c0a00019"}}}}
1
+ {"id":"arcade","name":"arcade","nickname":"arcade","thumbnailName":"MakeCode Arcade","title":"Microsoft MakeCode Arcade","description":"Develop your programming skills by quickly creating and modding retro arcade games with Blocks and JavaScript in the MakeCode editor","corepkg":"device","cloud":{"workspace":false,"sharing":true,"thumbnails":true,"importing":true,"packages":true,"publishing":true,"githubPackages":true,"showBadges":true,"cloudProviders":{"github":{"id":"github","name":"GitHub","icon":"./static/providers/github-mark.png","identity":false,"order":4},"microsoft":{"id":"microsoft","name":"Microsoft","icon":"./static/providers/microsoft-logo.svg","identity":true,"redirect":true,"order":1},"google":{"id":"google","name":"Google","icon":"./static/providers/google-logo.svg","identity":true,"redirect":true,"order":2},"clever":{"id":"clever","name":"Clever","icon":"./static/providers/clever-logo.png","identity":true,"redirect":true,"order":3}}},"staticpkgdirs":{"base":["libs/hw","libs/hw---n3","libs/hw---n4","libs/hw---samd51","libs/hw---stm32f401","libs/hw---rp2040"],"extensions":["libs/accelerometer","libs/color","libs/edge-connector","libs/esp32","libs/feather","libs/light","libs/lightsensor","libs/mqtt","libs/net","libs/net-game","libs/palette","libs/radio","libs/radio-broadcast","libs/serial","libs/servo","libs/settings","libs/sevenseg","libs/shader","libs/thermometer"]},"cacheusedblocksdirs":["skillmap/space","skillmap/platformer"],"compile":{"useUF2":true,"deployDrives":"(ARCADE|PY|FTHR840BOOT|ARCD|RPI-RP2)","deployFileMarker":"INFO_UF2.TXT","driveName":"ARCADE","floatingPoint":true,"taggedInts":true,"nativeType":"thumb","gc":true,"upgrades":[],"webUSB":true,"saveAsPNG":true,"patches":{"0.0.0 - *":[{"type":"missingPackage","map":{"(DigitalPin|AnalogPin|pins)\\.P\\d\\d?":"edge-connector","serial\\.":"serial"}}],"0.0.0 - 0.1.1":[{"type":"api","map":{"controller\\.controlSprite":"controller.moveSprite","controller\\.controlPlayer":"controller.movePlayer"}}],"0.0.0 - 0.3.23":[{"type":"package","map":{"local-multiplayer":""}}],"0.0.0 - 0.3.24":[{"type":"api","map":{"sprites\\.createEmptySprite\\(([^)]+)\\)":"sprites.create(img`.`, $1)"}},{"type":"blockId","map":{"keysdx":"keydx","keysdy":"keydy"}}],"0.0.0 - 0.11.20":[{"type":"api","map":{"SpriteKind":"SpriteKindLegacy"}}],"0.0.0 - 0.14.57":[{"type":"missingPackage","map":{"scene\\.setTileMap":"color-coded-tilemap","scene\\.setTile":"color-coded-tilemap","scene\\.getTile":"color-coded-tilemap","scene\\.getTilesByType":"color-coded-tilemap","scene\\.placeOnRandomTile":"color-coded-tilemap","scene\\.setTileAt":"color-coded-tilemap","scene\\.onHitTile":"color-coded-tilemap","\\.tileHitFrom":"color-coded-tilemap"}}],"0.0.0 - 0.18.9":[{"type":"api","map":{"tilemap\\s*\\.\\s*createTileSprite":"tiles.createTileSprite","tilemap\\s*\\.\\s*coverAllTiles":"tiles.coverAllTiles","tilemap\\s*\\.\\s*createSpritesOnTiles":"tiles.createSpritesOnTiles","tilemap\\s*\\.\\s*destorySpritesOfKind":"tiles.destroySpritesOfKind","tilemap\\s*\\.\\s*tileIs":"tiles.tileIs","tilemap\\s*\\.\\s*tileIsWall":"tiles.tileIsWall","tilemap\\s*\\.\\s*forEachTileOfKind":"tiles.forEachTileOfKind","tilemap\\s*\\.\\s*forEachTileOfMap":"tiles.forEachTileOfMap","tilemap\\s*\\.\\s*replaceAllTiles":"tiles.replaceAllTiles","tilemap\\s*\\.\\s*columnInDirection":"tiles.columnInDirection","tilemap\\s*\\.\\s*rowInDirection":"tiles.rowInDirection","tilemap\\s*\\.\\s*forEachDirection":"tiles.forEachDirection","tilemap\\s*\\.\\s*centerCameraOnTile":"tiles.centerCameraOnTile","tilemap\\s*\\.\\s*locationOfSprite":"tiles.locationOfSprite","tilemap\\s*\\.\\s*RowCol":"tiles.RowCol","tilemap\\s*\\.\\s*spriteRowCol":"tiles.spriteRowCol","tilemap\\s*\\.\\s*locationColumn":"tiles.locationColumn","tilemap\\s*\\.\\s*locationRow":"tiles.locationRow","tilemap\\s*\\.\\s*XY":"tiles.XY","tilemap\\s*\\.\\s*locationXY":"tiles.locationXY","tilemap\\s*\\.\\s*locationInDirection":"tiles.locationInDirection","tilemap\\s*\\.\\s*_directionEditor":"tiles._directionEditor","tilemap\\s*\\.\\s*tileWidth":"tiles.tileWidth","tilemap\\s*\\.\\s*tilemapColumns":"tiles.tilemapColumns","tilemap\\s*\\.\\s*tilemapRows":"tiles.tilemapRows","tilemap\\s*\\.\\s*screenCoordinateToTile":"tiles.screenCoordinateToTile","tilemap\\s*\\.\\s*tileCoordinateToScreen":"tiles.tileCoordinateToScreen","tilemap\\s*\\.\\s*centeredTileCoordinateToScreen":"tiles.centeredTileCoordinateToScreen","tilemap\\s*\\.\\s*OVERWORLD_MAP_ID":"tiles.OVERWORLD_MAP_ID","tilemap\\s*\\.\\s*MAP_LOADED_EVENT":"tiles.MAP_LOADED_EVENT","tilemap\\s*\\.\\s*WorldMap":"tiles.WorldMap","tilemap\\s*\\.\\s*WorldMapConnection":"tiles.WorldMapConnection","tilemap\\s*\\.\\s*createMap":"tiles.createMap","tilemap\\s*\\.\\s*copyMap":"tiles.copyMap","tilemap\\s*\\.\\s*loadMap":"tiles.loadMap","tilemap\\s*\\.\\s*getLoadedMap":"tiles.getLoadedMap","tilemap\\s*\\.\\s*onMapLoaded":"tiles.onMapLoaded","tilemap\\s*\\.\\s*onMapUnloaded":"tiles.onMapUnloaded","tilemap\\s*\\.\\s*connectMapById":"tiles.connectMapById","tilemap\\s*\\.\\s*loadConnectedMap":"tiles.loadConnectedMap","tilemap\\s*\\.\\s*getConnectedMap":"tiles.getConnectedMap","tilemap\\s*\\.\\s*setWorldLocationToMap":"tiles.setWorldLocationToMap","tilemap\\s*\\.\\s*loadMapAt":"tiles.loadMapAt","tilemap\\s*\\.\\s*getMapAtWorldLocation":"tiles.getMapAtWorldLocation","tilemap\\s*\\.\\s*loadMapInDirection":"tiles.loadMapInDirection","tilemap\\s*\\.\\s*loadedWorldColumn":"tiles.loadedWorldColumn","tilemap\\s*\\.\\s*loadedWorldRow":"tiles.loadedWorldRow"}}],"0.0.0 - 1.9.0":[{"type":"api","map":{"myCorg\\s*\\.\\s*follow":"myCorg.cameraFollow"}}]},"switches":{},"jsRefCounting":false,"utf8":true},"compileService":{"buildEngine":"codal","githubCorePackage":"lancaster-university/codal","gittag":"v0.8.0","dockerImage":"pext/yotta:latest","codalTarget":{"branches":{}}},"variants":{"stm32f401":{"compile":{"hasHex":true,"openocdScript":"source [find interface/stlink-v2.cfg]; source [find target/stm32f4x.cfg]","flashEnd":524288,"uf2Family":"0x57755a57"},"compileService":{"codalTarget":{"name":"codal-big-brainpad","url":"https://github.com/lancaster-university/codal-big-brainpad","branch":"v1.3.1","type":"git"},"codalBinary":"STM32","serviceId":"codal2stm32","dockerImage":"pext/yotta:latest"}},"samd51":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; set CHIPNAME at91samd51g19; source [find target/atsame5x.cfg]","openocdScriptAlt":"source [find interface/stlink-v2.cfg]; set CPUTAPID 0x2ba01477; set CHIPNAME at91samd51g19; source [find target/at91samdXX.cfg]","ramSize":196608,"flashEnd":524288,"uf2Family":"0x55114460"},"compileService":{"codalTarget":{"name":"codal-itsybitsy-m4","url":"https://github.com/lancaster-university/codal-itsybitsy-m4","branch":"v0.2.7","type":"git"},"codalBinary":"ITSYBITSY_M4","serviceId":"codal2samd51","dockerImage":"pext/yotta:latest"}},"nrf52840":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; source [find target/nrf52.cfg]","webUSB":false,"flashEnd":1007616,"uf2Family":"0xada52840"},"compileService":{"codalTarget":{"name":"codal-nrf52840-dk","url":"https://github.com/mmoskal/codal-nrf52840-dk","branch":"v1.1.7","type":"git"},"codalBinary":"NRF52840_DK","serviceId":"codal2nrf52840","dockerImage":"pext/yotta:latest","yottaConfig":{"pxt":{"board":{"id":"BOARD_ID_NRF52840"}}}}},"nrf52833":{"compile":{"hasHex":true,"openocdScript":"source [find interface/cmsis-dap.cfg]; source [find target/nrf52.cfg]","webUSB":false,"useUF2":false,"flashEnd":524288,"deployDrives":".*","deployFileMarker":"DETAILS.TXT"},"compileService":{"codalTarget":{"name":"codal-nrf52833-dk","url":"https://github.com/mmoskal/codal-nrf52833-dk","branch":"v2.0.2","type":"git"},"codalBinary":"NRF52840_DK","serviceId":"codal2nrf52840","dockerImage":"pext/yotta:latest","yottaConfig":{"pxt":{"board":{"id":"BOARD_ID_NRF52833"}}}}},"rp2040":{"compile":{"hasHex":true,"openocdScript":"???","flashChecksumAddr":0,"flashEnd":2097152,"uf2Family":"0xe48bff56"},"compileService":{"codalTarget":{"name":"codal-pi-pico","url":"https://github.com/lancaster-university/codal-pi-pico","branch":"v0.0.13","type":"git"},"gittag":"v0.9.0","codalBinary":"PI-PICO","serviceId":"codal2pico","dockerImage":"pext/arm:gcc9"}},"rpi":{"compile":{"hasHex":true,"useELF":true,"runtimeIsARM":true,"flashCodeAlign":256,"webUSB":false,"stackAlign":2},"compileService":{"buildEngine":"dockermake","dockerImage":"pext/rpi:alsa","serviceId":"rpi"}},"vm":{"compile":{"hasHex":true,"useELF":true,"flashCodeAlign":256,"webUSB":false,"nativeType":"vm","stackAlign":2},"compileService":{"buildEngine":"dockercross","dockerImage":"pext/crossbuild","serviceId":"crossbuild","skipCloudBuild":true}}},"serial":{"useEditor":true,"log":true,"editorTheme":{"graphBackground":"#d9d9d9","lineColors":["#009DDC","#FB48C7","#40bf4a","#8073E5","#d25b33"]}},"runtime":{"mathBlocks":true,"loopsBlocks":true,"logicBlocks":true,"variablesBlocks":true,"textBlocks":true,"functionBlocks":true,"breakBlock":true,"continueBlock":true,"pauseUntilBlock":{"category":"loops"},"functionsOptions":{"useNewFunctions":true,"extraFunctionEditorTypes":[{"typeName":"Sprite","icon":"send","defaultName":"mySprite"},{"typeName":"Image","icon":"image outline","defaultName":"myImage"},{"label":"Location","typeName":"tiles.Location","icon":"tree","defaultName":"myLocation"}]},"listsBlocks":true,"tilesetFieldEditorIdentity":"images._tile","bannedCategories":["pins","control","input","serial","power"]},"simulator":{"autoRun":true,"autoRunLight":false,"emptyRunCode":"pxsim.pxtcore.updateScreen(new pxsim.RefImage(160, 120, 4))","aspectRatio":0.85,"dynamicBoardDefinition":true,"keymap":true},"queryVariants":{"skillmap=1":{"appTheme":{"embeddedTutorial":true,"allowParentController":true,"shareFinishedTutorials":false,"hideReplaceMyCode":false}},"teachertool=1":{"appTheme":{"hideMenuBar":true,"workspaceSearch":true,"noReloadOnUpdate":true}},"ninja=1":{"appTheme":{"embeddedTutorial":true,"allowParentController":true,"shareFinishedTutorials":false,"hideReplaceMyCode":false}}},"unsupportedBrowsers":[{"id":"ie"}],"uploadDocs":true,"noSimShims":true,"defaultBadges":[{"id":"skillmap-completion-save the forest","type":"skillmap-completion","image":"./static/badges/badge-forest.png","lockedImage":"./static/badges/badge-forest-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/forest","title":"Save the Forest"},{"id":"skillmap-completion-zookeeper","type":"skillmap-completion","image":"./static/badges/badge-zoo.png","lockedImage":"./static/badges/badge-zoo-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/zoo","title":"Zookeeper"},{"id":"skillmap-completion-rockstar","image":"./static/badges/badge-rockstar.png","lockedImage":"./static/badges/badge-rockstar-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/rockstar","type":"skillmap-completion","title":"80's Rockstar"},{"id":"skillmap-completion-build a platformer game!","image":"./static/badges/badge-jungle.png","lockedImage":"./static/badges/badge-jungle-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/jungle","type":"skillmap-completion","title":"Jungle Jump"},{"id":"skillmap-completion-space","image":"./static/badges/badge-space.png","lockedImage":"./static/badges/badge-space-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/space","type":"skillmap-completion","title":"Space Explorer"},{"id":"skillmap-completion-shark","image":"./static/badges/badge-shark.png","lockedImage":"./static/badges/badge-shark-locked.png","sourceURL":"https://www.makecode.com/api/md/arcade/skillmap/shark","type":"skillmap-completion","title":"Shark Splash"}],"versions":{"branch":"master","tag":"v2.1.22","commits":"https://github.com/microsoft/pxt-arcade/commits/bf77541b8d51411b7cce586c1d06e312e1e10420","target":"2.1.22","pxt":"12.2.13"},"blocksprj":{"id":"blocksprj","config":{"name":"{0}","dependencies":{"device":"*"},"description":"","files":["main.blocks","main.ts","README.md","assets.json"],"additionalFilePaths":[]},"files":{"README.md":" ","assets.json":"","main.blocks":"<xml xmlns=\"http://www.w3.org/1999/xhtml\">\n <variables></variables>\n <block type=\"pxt-on-start\" x=\"0\" y=\"0\"></block>\n</xml>","main.ts":" "}},"tsprj":{"id":"tsprj","config":{"name":"{0}","dependencies":{"device":"*"},"description":"","files":["main.ts","README.md","assets.json"],"additionalFilePaths":[]},"files":{"README.md":" ","assets.json":"","main.ts":" "}},"colorThemeMap":{"pxt-high-contrast":{"id":"pxt-high-contrast","name":"High Contrast","weight":100,"monacoBaseTheme":"hc-black","colors":{"pxt-header-background":"#000000","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#000000","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#FFFFFF","pxt-primary-background":"#000000","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#000000","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#000000","pxt-secondary-background":"#000000","pxt-secondary-foreground":"#FFFFFF","pxt-secondary-background-hover":"#000000","pxt-secondary-foreground-hover":"#FFFFFF","pxt-secondary-accent":"#000000","pxt-tertiary-background":"#000000","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#000000","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#000000","pxt-target-background1":"#000000","pxt-target-foreground1":"#FFFFFF","pxt-target-background1-hover":"#000000","pxt-target-foreground1-hover":"#cccccc","pxt-target-stencil1":"#FFFFFF","pxt-target-background2":"#000000","pxt-target-foreground2":"#FFFFFF","pxt-target-background2-hover":"#000000","pxt-target-foreground2-hover":"#cccccc","pxt-target-stencil2":"#FFFFFF","pxt-target-background3":"#000000","pxt-target-foreground3":"#FFFFFF","pxt-target-background3-hover":"#000000","pxt-target-foreground3-hover":"#cccccc","pxt-target-stencil3":"#FFFFFF","pxt-neutral-background1":"#000000","pxt-neutral-foreground1":"#FFFFFF","pxt-neutral-background1-hover":"#000000","pxt-neutral-foreground1-hover":"#FFFFFF","pxt-neutral-stencil1":"#FFFFFF","pxt-neutral-background2":"#000000","pxt-neutral-foreground2":"#FFFFFF","pxt-neutral-background2-hover":"#000000","pxt-neutral-foreground2-hover":"#FFFFFF","pxt-neutral-stencil2":"#FFFFFF","pxt-neutral-background3":"#000000","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#000000","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#000000E5","pxt-neutral-base":"rgba(255, 255, 255, 1)","pxt-neutral-alpha0":"rgba(255, 255, 255, 0)","pxt-neutral-alpha10":"rgba(255, 255, 255, 0.1)","pxt-neutral-alpha20":"rgba(255, 255, 255, 0.2)","pxt-neutral-alpha50":"rgba(255, 255, 255, 0.5)","pxt-neutral-alpha80":"rgba(255, 255, 255, 0.8)","pxt-link":"#807FFF","pxt-link-hover":"#BBBBFF","pxt-focus-border":"#FFFF00","pxt-success":"#00FF00","pxt-success-foreground":"#000000","pxt-success-hover":"#00FF00","pxt-success-alpha10":"#00FF0019","pxt-warning":"#00FFFF","pxt-warning-foreground":"#FFFFFF","pxt-warning-hover":"#00FFFF","pxt-warning-alpha10":"#00FFFF19","pxt-error":"#880000","pxt-error-foreground":"#FFFFFF","pxt-error-hover":"#880000","pxt-error-alpha10":"#88000019","pxt-colors-purple-background":"#FF00FF","pxt-colors-purple-foreground":"#000000","pxt-colors-purple-hover":"#FF00FF","pxt-colors-purple-alpha10":"#FF00FF19","pxt-colors-orange-background":"#FF7F00","pxt-colors-orange-foreground":"#000000","pxt-colors-orange-hover":"#FF7F00","pxt-colors-orange-alpha10":"#FF7F0019","pxt-colors-brown-background":"#d1b7a3","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#d1b7a3","pxt-colors-brown-alpha10":"#d1b7a319","pxt-colors-blue-background":"#0078D7","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#0086F1","pxt-colors-blue-alpha10":"#0078D719","pxt-colors-green-background":"#00FF00","pxt-colors-green-foreground":"#000000","pxt-colors-green-hover":"#00FF00","pxt-colors-green-alpha10":"#00FF0019","pxt-colors-red-background":"#880000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#880000","pxt-colors-red-alpha10":"#88000019","pxt-colors-teal-background":"#5BE0FF","pxt-colors-teal-foreground":"#000000","pxt-colors-teal-hover":"#5BE0FF","pxt-colors-teal-alpha10":"#5BE0FF19","pxt-colors-yellow-background":"#FFFF00","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#FFFF00","pxt-colors-yellow-alpha10":"#FFFF0019"},"overrideCss":".common-button {\n color: var(--pxt-neutral-foreground2) !important;\n background-color: var(--pxt-neutral-background2) !important;\n border-color: var(--pxt-neutral-foreground2) !important;\n}\n\n.common-button:hover, .common-button:focus {\n outline: 2px solid var(--pxt-colors-yellow-background) !important;\n z-index: 1;\n}\n\n/*\nOverride default button background for the area menu, which requires transparency,\nbut still use a fairly opaque one to keep focus/visibility on the main buttons.\n*/\n.area-menu-container .area-button {\n background-color: var(--pxt-neutral-alpha80) !important;\n}\n\n/* \n * \"User-provided content\" header in the import modal.\n */\n.ui.violet.message .header {\n color: var(--pxt-colors-purple-background) !important;\n}\n\n/* \n * Checkbox styles\n * In HC the neutral and primary colors are the same, so we need to differentiate with\n * a different background color when checked.\n */\n.common-checkbox.toggle input:checked~label:before,\ndiv.field .ui.toggle.checkbox input:checked~label:before {\n background-color: var(--pxt-colors-purple-background) !important;\n}\n\n.common-checkbox-icon.checked {\n background-color: var(--pxt-colors-purple-background);\n color: var(--pxt-colors-purple-foreground);\n border-color: var(--pxt-colors-purple-hover);\n}\n\n.common-checkbox-icon.checked i.fas.fa-check {\n color: var(--pxt-colors-purple-foreground);\n}\n\n/*\n * Make toggle \"handle\" more visible for HC\n */\n.common-checkbox.toggle label:after {\n background-color: var(--pxt-neutral-foreground1) !important;\n}\n\n/*\n * Selection highlights\n */\n\n.blocklyContextMenu {\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n.blocklyWidgetDiv .blocklyMenu.blocklyContextMenu .blocklyMenuItem.blocklyMenuItemHighlight {\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n/*\n * Toolbox\n */\n.blocklyTreeRow:hover {\n outline: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n#blocklySearchInput i {\n color: var(--pxt-neutral-foreground1);\n opacity: 1;\n}\n\n/* \n * Inverted image colors\n */\n.barcharticon,\n.blockly-ws-search-next-btn,\n.blockly-ws-search-previous-btn,\n.blockly-ws-search-close-btn {\n filter: invert(1);\n}\n\n/* Sim toolbar */\n#simulator .editor-sidebar .simtoolbar .debug-button.active,\n#simulator .editor-sidebar .simtoolbar .debug-button.active:hover {\n /* Make active state more apparent with a yellow border */\n color: var(--pxt-neutral-foreground2) !important;\n background: var(--pxt-neutral-background2) !important;\n border: 3px solid var(--pxt-colors-yellow-background) !important;\n}\n\n/* Image Editor */\n.image-editor-topbar, .image-editor-bottombar, .image-editor-sidebar {\n background: var(--pxt-neutral-background1) !important;\n}\n.image-editor-tool-buttons {\n background: none !important;\n}\n.image-editor-button,\n.image-editor-input,\n.image-editor-confirm {\n border: 1px solid var(--pxt-neutral-foreground1);\n}\n.image-editor-canvas, .image-editor-canvas:hover, .image-editor-canvas:focus {\n outline: none !important;\n}\n.cursor-button {\n /* remove margin since we now have a border around the cursor buttons and it looks better centered */\n margin-right: 0;\n}\n\n/* Toolbox */\n.pxtToolbox:not(.invertedToolbox) span.blocklyTreeLabel {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeSelected span.blocklyTreeLabel,\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeSelected span.blocklyTreeIcon {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected) .blocklyTreeLabel {\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected):hover,\n.pxtToolbox:not(.invertedToolbox) .blocklyTreeRow:not(.blocklyTreeSelected):focus {\n background-color: #404040;\n}\n\n.blocksEditorOuter #blocklyTrashIcon {\n color: var(--pxt-primary-foreground);\n}\n\n/*\n * Teaching Bubbles\n */\n.teaching-bubble,\n.teaching-bubble .teaching-bubble-navigation-buttons > .common-button {\n background: var(--pxt-neutral-background1) !important;\n color: var(--pxt-neutral-foreground1) !important;\n border: solid var(--pxt-neutral-foreground1) !important;\n}\n\n.teaching-bubble-cutout {\n border: 0.25rem solid var(--pxt-neutral-alpha20);\n}\n\n.teaching-bubble .ai-footer {\n opacity: 1 !important;\n}\n\n.teaching-bubble-arrow,\n.teaching-bubble .ai-footer-text,\n.teaching-bubble .feedback-button,\n.teaching-bubble .feedback-button.disabled,\n.teaching-bubble .teaching-bubble-steps {\n color: var(--pxt-neutral-foreground1) !important;\n}\n\n/*\n * Side Docs\n */\n\n#sidedocs {\n background-color: var(--pxt-neutral-foreground1);\n}\n\n#sidedocsbar a i,\n#sidedocsbar a span {\n color: var(--pxt-neutral-background1) !important;\n}\n\n#sidedocsbar a:hover,\n#sidedocsbar a:focus {\n /* Yellow does not contrast well against white background */\n outline: 3px solid var(--pxt-neutral-background1) !important;\n}\n\n#sidedocsbar a:hover i,\n#sidedocsbar a:focus i,\n#sidedocsbar a:hover span,\n#sidedocsbar a:focus span {\n color: var(--pxt-link-hover) !important;\n}\n\n/*\n * Editor Toggle\n */\n#editortoggle .selected.item {\n transition: none;\n &:focus {\n box-shadow: inset 0 0 0 6px #000000 !important;\n }\n >.icon {\n color: #000000 !important;\n }\n}\n\n#editordropdown.ui.button.active > .icon {\n color: #000000 !important;\n}\n\n/*\n * Dropdown Menu\n */\n.common-menu-dropdown-item:hover,\n.common-menu-dropdown > .menu-button.expanded {\n outline: var(--pxt-focus-border) solid 3px !important;\n outline-offset: -4px;\n z-index: 1;\n}"},"arcade-dark":{"id":"arcade-dark","name":"Dark","weight":60,"monacoBaseTheme":"vs-dark","colors":{"pxt-header-background":"#181818","pxt-header-foreground":"#ffffff","pxt-header-background-hover":"#252525","pxt-header-foreground-hover":"#ffffff","pxt-header-stencil":"#323232","pxt-primary-background":"#0078D4","pxt-primary-foreground":"#ffffff","pxt-primary-background-hover":"#026EC1","pxt-primary-foreground-hover":"#ffffff","pxt-primary-accent":"#005ba1","pxt-secondary-background":"#63276d","pxt-secondary-foreground":"#f3f2f1","pxt-secondary-background-hover":"#742e80","pxt-secondary-foreground-hover":"#f3f2f1","pxt-secondary-accent":"#411a47","pxt-tertiary-background":"#0078d4","pxt-tertiary-foreground":"#ffffff","pxt-tertiary-background-hover":"#026EC1","pxt-tertiary-foreground-hover":"#ffffff","pxt-tertiary-accent":"#0894ff","pxt-target-background1":"#1F1F1F","pxt-target-foreground1":"#f3f2f1","pxt-target-background1-hover":"#2c2c2c","pxt-target-foreground1-hover":"#ffffff","pxt-target-stencil1":"#3b3a39","pxt-target-background2":"#181818","pxt-target-foreground2":"#ffffff","pxt-target-background2-hover":"#252525","pxt-target-foreground2-hover":"#ffffff","pxt-target-stencil2":"#323232","pxt-target-background3":"#181818","pxt-target-foreground3":"#ffffff","pxt-target-background3-hover":"#252525","pxt-target-foreground3-hover":"#ffffff","pxt-target-stencil3":"#323232","pxt-neutral-background1":"#1F1F1F","pxt-neutral-foreground1":"#f3f2f1","pxt-neutral-background1-hover":"#2c2c2c","pxt-neutral-foreground1-hover":"#ffffff","pxt-neutral-stencil1":"#3b3a39","pxt-neutral-background2":"#181818","pxt-neutral-foreground2":"#ffffff","pxt-neutral-background2-hover":"#252525","pxt-neutral-foreground2-hover":"#ffffff","pxt-neutral-stencil2":"#3b3a39","pxt-neutral-background3":"#2d2d2d","pxt-neutral-foreground3":"#f3f2f1","pxt-neutral-background3-hover":"#202020","pxt-neutral-foreground3-hover":"#ffffff","pxt-neutral-stencil3":"#070707","pxt-neutral-background3-alpha90":"#2d2d2de6","pxt-neutral-base":"rgba(180, 180, 180, 1)","pxt-neutral-alpha0":"rgba(180, 180, 180, 0)","pxt-neutral-alpha10":"rgba(180, 180, 180, 0.1)","pxt-neutral-alpha20":"rgba(180, 180, 180, 0.2)","pxt-neutral-alpha50":"rgba(180, 180, 180, 0.5)","pxt-neutral-alpha80":"rgba(180, 180, 180, 0.8)","pxt-link":"#479ef5","pxt-link-hover":"#62abf5","pxt-focus-border":"#5caae5","pxt-colors-purple-background":"#63276d","pxt-colors-purple-foreground":"#f3f2f1","pxt-colors-purple-hover":"#742e80","pxt-colors-purple-alpha10":"#63276d19","pxt-colors-orange-background":"#7a2101","pxt-colors-orange-foreground":"#ffffff","pxt-colors-orange-hover":"#932801","pxt-colors-orange-alpha10":"#7a210119","pxt-colors-brown-background":"#50301a","pxt-colors-brown-foreground":"#ffffff","pxt-colors-brown-hover":"#633c20","pxt-colors-brown-alpha10":"#50301a19","pxt-colors-blue-background":"#0078D4","pxt-colors-blue-foreground":"#ffffff","pxt-colors-blue-hover":"#026EC1","pxt-colors-blue-alpha10":"#0078D419","pxt-colors-green-background":"#27ae60","pxt-colors-green-foreground":"#ffffff","pxt-colors-green-hover":"#1e8449","pxt-colors-green-alpha10":"#27ae6019","pxt-colors-red-background":"#e74c3c","pxt-colors-red-foreground":"#ffffff","pxt-colors-red-hover":"#c0392b","pxt-colors-red-alpha10":"#e74c3c19","pxt-colors-teal-background":"#1abc9c","pxt-colors-teal-foreground":"#ffffff","pxt-colors-teal-hover":"#16a085","pxt-colors-teal-alpha10":"#1abc9c19","pxt-colors-yellow-background":"#fde300","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#e4cc00","pxt-colors-yellow-alpha10":"#fde30019"},"overrideCss":".image-editor-change-name .image-editor-input {\n /* The textbox background matches the footer of the image editor, so add a border */\n border: 1px solid var(--pxt-neutral-stencil2);\n}\n\n#langmodal #availablelocales .langoption .header {\n /* Better contrast than default, which is purple */\n color: var(--pxt-neutral-foreground1);\n}\n\n.pxtToolbox span.blocklyTreeLabel,\n.pxtToolbox .blocklyTreeSelected span.blocklyTreeLabel,\n.pxtToolbox .blocklyTreeSelected .blocklyTreeIcon {\n /* Better contrast in toolbox */\n color: var(--pxt-target-foreground3);\n}\n\n.pxtToolbox .blocklyTreeIcon,\n.tutorial-container span.docs.inlineblock {\n /* Better contrast in toolbox & tutorial block colors, but try to preserve some of the icon color */\n filter: brightness(1.2) saturate(2);\n}\n\n#mainmenu {\n /* Some parts of the app use the same color as a background. This keeps the menu from blending in */\n border-bottom: 1px solid var(--pxt-header-stencil);\n}\n\n.projectsdialog .ui.card:hover {\n /* Neutral and target colors are the same in dark theme, so it helps to have a clearer border when hovering over cards. */\n border-color: var(--pxt-focus-border) !important;\n}\n\n/* \n * Inverted image colors\n */\n.barcharticon,\n.blockly-ws-search-next-btn,\n.blockly-ws-search-previous-btn,\n.blockly-ws-search-close-btn {\n filter: invert(1);\n}\n\n.modals .ui.button.immersive-reader-button,\n#mainmenu .immersive-reader-button.ui.item,\n#simulator .editor-sidebar .immersive-reader-button.ui.item {\n background-image: url(\"/static/icons/immersive-reader-light.svg\") !important;\n}\n\n.carouselarrow {\n /* Better contrast, especially against images in carousels */\n opacity: 0.9;\n}\n\n/* For inverted buttons, it almost always looks better to have the background be dark instead of light (even though non-inverted has a light foreground) */\nbutton.ui.button.inverted:not(.teaching-bubble-button),\nbutton.common-button.inverted:not(.teaching-bubble-button) {\n background-color: var(--pxt-neutral-background2) !important;\n}\n\nbutton.ui.button.inverted:hover:not(.teaching-bubble-button),\nbutton.common-button.inverted:hover:not(.teaching-bubble-button) {\n background-color: var(--pxt-neutral-background2-hover) !important;\n}\n"},"arcade-light":{"id":"arcade-light","name":"Light","weight":40,"colors":{"pxt-header-background":"#116E79","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#041d20","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#0b454c","pxt-primary-background":"#5D4FBA","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#4d3eb1","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#403587","pxt-secondary-background":"#5D4FBA","pxt-secondary-foreground":"#F8FAFC","pxt-secondary-background-hover":"#483c9a","pxt-secondary-foreground-hover":"#F8FAFC","pxt-secondary-accent":"#403587","pxt-tertiary-background":"#116E79","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#0b454c","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#041d20","pxt-target-background1":"#F8FAFC","pxt-target-foreground1":"#000000","pxt-target-background1-hover":"#d4e0ed","pxt-target-foreground1-hover":"#000000","pxt-target-stencil1":"#e1e1e1","pxt-target-background2":"#F8FAFC","pxt-target-foreground2":"#000000","pxt-target-background2-hover":"#d4e0ed","pxt-target-foreground2-hover":"#000000","pxt-target-stencil2":"#e1e1e1","pxt-target-background3":"#F8FAFC","pxt-target-foreground3":"#000000","pxt-target-background3-hover":"#d4e0ed","pxt-target-foreground3-hover":"#000000","pxt-target-stencil3":"#e1e1e1","pxt-neutral-background1":"#FFFFFF","pxt-neutral-foreground1":"rgba(0,0,0,.85)","pxt-neutral-background1-hover":"#f2f2f2","pxt-neutral-foreground1-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil1":"rgba(34, 74, 114, 0.15)","pxt-neutral-background2":"#F8F8F8","pxt-neutral-foreground2":"rgba(0,0,0,.85)","pxt-neutral-background2-hover":"#ebebeb","pxt-neutral-foreground2-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil2":"#e9eef2","pxt-neutral-background3":"#4e5758","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#424a4a","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#4E5758E5","pxt-neutral-base":"rgba(0, 0, 0, 1)","pxt-neutral-alpha0":"rgba(0, 0, 0, 0)","pxt-neutral-alpha10":"rgba(0, 0, 0, 0.1)","pxt-neutral-alpha20":"rgba(0, 0, 0, 0.2)","pxt-neutral-alpha50":"rgba(0, 0, 0, 0.5)","pxt-neutral-alpha80":"rgba(0, 0, 0, 0.8)","pxt-link":"#3977B4","pxt-link-hover":"#204467","pxt-focus-border":"#0078D4","pxt-colors-purple-background":"#6B4F76","pxt-colors-purple-foreground":"#FFFFFF","pxt-colors-purple-hover":"#483c9a","pxt-colors-purple-alpha10":"#6b4f7619","pxt-colors-orange-background":"#F76820","pxt-colors-orange-foreground":"#FFFFFF","pxt-colors-orange-hover":"#dc4f08","pxt-colors-orange-alpha10":"#F7682019","pxt-colors-brown-background":"#663905","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#351e03","pxt-colors-brown-alpha10":"#66390519","pxt-colors-blue-background":"#116e79","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#0b454c","pxt-colors-blue-alpha10":"#116e7919","pxt-colors-green-background":"#2ecc71","pxt-colors-green-foreground":"#FFFFFF","pxt-colors-green-hover":"#22be64","pxt-colors-green-alpha10":"#2ecc7119","pxt-colors-red-background":"#a80000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#8f0000","pxt-colors-red-alpha10":"#a8000019","pxt-colors-teal-background":"#116e79","pxt-colors-teal-foreground":"#FFFFFF","pxt-colors-teal-hover":"#0b454c","pxt-colors-teal-alpha10":"#116e7919","pxt-colors-yellow-background":"#f1c40f","pxt-colors-yellow-foreground":"#000000","pxt-colors-yellow-hover":"#c29d0b","pxt-colors-yellow-alpha10":"#f1c40f19"},"overrideCss":".gallerysegment .ui.card.link.cloudprojectscard {\n /* Differentiate from New Project button */\n background-color: var(--pxt-colors-teal-background) !important;\n color: var(--pxt-colors-teal-foreground) !important;\n}\n"},"arcade-orange":{"id":"arcade-orange","name":"Orange","weight":20,"colors":{"pxt-header-background":"#F76820","pxt-header-foreground":"#FFFFFF","pxt-header-background-hover":"#ab3d06","pxt-header-foreground-hover":"#FFFFFF","pxt-header-stencil":"#dc4f08","pxt-primary-background":"#F76820","pxt-primary-foreground":"#FFFFFF","pxt-primary-background-hover":"#dc4f08","pxt-primary-foreground-hover":"#FFFFFF","pxt-primary-accent":"#C5561F","pxt-secondary-background":"#028B9B","pxt-secondary-background-hover":"#015e69","pxt-secondary-foreground":"#FFFFFF","pxt-secondary-foreground-hover":"#FFFFFF","pxt-secondary-accent":"#015964","pxt-tertiary-background":"#028B9B","pxt-tertiary-foreground":"#FFFFFF","pxt-tertiary-background-hover":"#015e69","pxt-tertiary-foreground-hover":"#FFFFFF","pxt-tertiary-accent":"#013136","pxt-target-background1":"#FEF3E0","pxt-target-foreground1":"#000000","pxt-target-background1-hover":"#fce0af","pxt-target-foreground1-hover":"#000000","pxt-target-stencil1":"#e4d9c7","pxt-target-background2":"#B1E1DA","pxt-target-foreground2":"#000000","pxt-target-background2-hover":"#8cd3c9","pxt-target-foreground2-hover":"#000000","pxt-target-stencil2":"#b0b0b0","pxt-target-background3":"#FEF3E0","pxt-target-foreground3":"#000000","pxt-target-background3-hover":"#E4E4E4","pxt-target-foreground3-hover":"#000000","pxt-target-stencil3":"#e4d9c7","pxt-neutral-background1":"#FFFFFF","pxt-neutral-foreground1":"rgba(0,0,0,.85)","pxt-neutral-background1-hover":"#f2f2f2","pxt-neutral-foreground1-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil1":"rgba(34, 36, 38, .15)","pxt-neutral-background2":"#F8F8F8","pxt-neutral-foreground2":"rgba(0,0,0,.85)","pxt-neutral-background2-hover":"#ebebeb","pxt-neutral-foreground2-hover":"rgba(0,0,0,.85)","pxt-neutral-stencil2":"#e9eef2","pxt-neutral-background3":"#4e5758","pxt-neutral-foreground3":"#FFFFFF","pxt-neutral-background3-hover":"#424a4a","pxt-neutral-foreground3-hover":"#FFFFFF","pxt-neutral-stencil3":"#FFFFFF","pxt-neutral-background3-alpha90":"#4E5758E5","pxt-neutral-base":"rgba(0, 0, 0, 1)","pxt-neutral-alpha0":"rgba(0, 0, 0, 0)","pxt-neutral-alpha10":"rgba(0, 0, 0, 0.1)","pxt-neutral-alpha20":"rgba(0, 0, 0, 0.2)","pxt-neutral-alpha50":"rgba(0, 0, 0, 0.5)","pxt-neutral-alpha80":"rgba(0, 0, 0, 0.8)","pxt-link":"#3977B4","pxt-link-hover":"#204467","pxt-focus-border":"#0078D4","pxt-warning":"#FFD43A","pxt-warning-foreground":"#000000","pxt-warning-hover":"#FFCE21","pxt-warning-alpha10":"#FFD43A19","pxt-colors-purple-background":"#6B4F76","pxt-colors-purple-foreground":"#FFFFFF","pxt-colors-purple-hover":"#4f3b57","pxt-colors-purple-alpha10":"#6b4f7619","pxt-colors-orange-background":"#ff7f50","pxt-colors-orange-foreground":"#FFFFFF","pxt-colors-orange-hover":"#ff5a1d","pxt-colors-orange-alpha10":"#ff7f5019","pxt-colors-brown-background":"#663905","pxt-colors-brown-foreground":"#FFFFFF","pxt-colors-brown-hover":"#351e03","pxt-colors-brown-alpha10":"#66390519","pxt-colors-blue-background":"#028b9b","pxt-colors-blue-foreground":"#FFFFFF","pxt-colors-blue-hover":"#015e69","pxt-colors-blue-alpha10":"#028b9b19","pxt-colors-green-background":"#2ecc71","pxt-colors-green-foreground":"#FFFFFF","pxt-colors-green-hover":"#22be64","pxt-colors-green-alpha10":"#2ecc7119","pxt-colors-red-background":"#a80000","pxt-colors-red-foreground":"#FFFFFF","pxt-colors-red-hover":"#8f0000","pxt-colors-red-alpha10":"#a8000019","pxt-colors-teal-background":"#028B9B","pxt-colors-teal-foreground":"#FFFFFF","pxt-colors-teal-hover":"#015e69","pxt-colors-teal-alpha10":"#028b9b19","pxt-colors-yellow-background":"#c0a000","pxt-colors-yellow-foreground":"#FFFFFF","pxt-colors-yellow-hover":"rgb(153, 132, 0)","pxt-colors-yellow-alpha10":"#c0a00019"}}}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pxt-arcade",
3
- "version": "2.1.21",
3
+ "version": "2.1.22",
4
4
  "description": "Small arcade editor for MakeCode",
5
5
  "keywords": [
6
6
  "JavaScript",
@@ -31,14 +31,15 @@
31
31
  "typescript": "4.8.3"
32
32
  },
33
33
  "dependencies": {
34
- "pxt-common-packages": "13.1.6",
35
- "pxt-core": "12.2.12"
34
+ "pxt-common-packages": "13.1.7",
35
+ "pxt-core": "12.2.13"
36
36
  },
37
37
  "optionalDependencies": {
38
38
  "pxt-arcade-sim": "microsoft/pxt-arcade-sim.git#v0.12.1"
39
39
  },
40
40
  "scripts": {
41
41
  "serve": "node node_modules/pxt-core/built/pxt.js serve",
42
- "copy-sim": "node ./scripts/copyArcadeSim.js"
42
+ "copy-sim": "node ./scripts/copyArcadeSim.js",
43
+ "compile-aw": "gh aw compile --strict"
43
44
  }
44
45
  }