diff --git a/.github/workflows/pxt-buildpush.yml b/.github/workflows/pxt-buildpush.yml index 6dbc647d28b..b6ea4624746 100644 --- a/.github/workflows/pxt-buildpush.yml +++ b/.github/workflows/pxt-buildpush.yml @@ -58,7 +58,7 @@ jobs: if: env.SIM_DEPLOY_KEY with: repository: microsoft/pxt-arcade-sim - ref: v0.12.3 + ref: v0.13.0 ssh-key: ${{ secrets.SIM_DEPLOY_KEY }} path: node_modules/pxt-arcade-sim env: @@ -102,7 +102,7 @@ jobs: uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5.1.0 with: repository: microsoft/pxt-arcade-sim - ref: v0.12.3 + ref: v0.13.0 ssh-key: ${{ secrets.SIM_DEPLOY_KEY }} path: node_modules/pxt-arcade-sim diff --git a/.github/workflows/pxt-buildvtag.yml b/.github/workflows/pxt-buildvtag.yml index 341c4977c97..e83533a4857 100644 --- a/.github/workflows/pxt-buildvtag.yml +++ b/.github/workflows/pxt-buildvtag.yml @@ -36,7 +36,7 @@ jobs: uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5.1.0 with: repository: microsoft/pxt-arcade-sim - ref: v0.12.3 + ref: v0.13.0 ssh-key: ${{ secrets.SIM_DEPLOY_KEY }} path: node_modules/pxt-arcade-sim diff --git a/package.json b/package.json index f60d800bc5d..1c2e3096a65 100644 --- a/package.json +++ b/package.json @@ -32,10 +32,10 @@ }, "dependencies": { "pxt-common-packages": "14.1.4", - "pxt-core": "13.1.16" + "pxt-core": "13.1.17" }, "optionalDependencies": { - "pxt-arcade-sim": "microsoft/pxt-arcade-sim.git#v0.12.3" + "pxt-arcade-sim": "microsoft/pxt-arcade-sim.git#v0.13.0" }, "scripts": { "serve": "node node_modules/pxt-core/built/pxt.js serve", diff --git a/pxtarget.json b/pxtarget.json index 135064a6d0c..1fb26f45a58 100644 --- a/pxtarget.json +++ b/pxtarget.json @@ -525,7 +525,279 @@ "emptyRunCode": "pxsim.pxtcore.updateScreen(new pxsim.RefImage(160, 120, 4))", "aspectRatio": 0.85, "dynamicBoardDefinition": true, - "keymap": true + "keymap": true, + "themeLayouts": [ + { + "id": "retro", + "name": "Retro", + "colorFields": [ + { + "property": "background-color", + "label": "Console", + "defaultValue": "#FCF7E4" + }, + { + "property": "button-stroke", + "label": "Button outline", + "defaultValue": "#5C406C" + }, + { + "property": "text-color", + "label": "Text", + "defaultValue": "#5C406C" + }, + { + "property": "button-a-fill", + "label": "A button background", + "defaultValue": "#FF8135" + }, + { + "property": "button-b-fill", + "label": "B button background", + "defaultValue": "#FF91C4" + }, + { + "property": "dpad-fill", + "label": "D-pad", + "defaultValue": "#A3809C" + }, + { + "property": "console-border", + "label": "Console border", + "defaultValue": "#96266C" + }, + { + "property": "screen-side-border", + "label": "Screen side border", + "defaultValue": "#2F99A1" + }, + { + "property": "screen-top-bottom-border", + "label": "Screen top and bottom border", + "defaultValue": "#F290C1" + } + ] + }, + { + "id": "high-contrast", + "name": "High Contrast" + }, + { + "id": "zune", + "name": "Zune" + }, + { + "id": "junior", + "name": "Junior", + "colorFields": [ + { + "property": "background-color", + "label": "Console", + "defaultValue": "#EB4444" + }, + { + "property": "button-stroke", + "label": "Button outline", + "defaultValue": "#670C0C" + }, + { + "property": "text-color", + "label": "Button labels", + "defaultValue": "#FFFFFF" + }, + { + "property": "button-fill", + "label": "Buttons", + "defaultValue": "#D54322" + } + ] + } + ], + "themePresets": [ + { + "id": "default", + "name": "Default", + "theme": { + "background-color": "#249CA3", + "button-stroke": "#397382", + "text-color": "#CECECE", + "button-fill": "#333333", + "dpad-fill": "#397382", + "joystick-handle-stroke": "#999999", + "layout": "default" + } + }, + { + "id": "high-contrast", + "name": "High Contrast", + "theme": { + "background-color": "#000000", + "button-stroke": "#FFFFFF", + "text-color": "#FFFFFF", + "button-fill": "#000000", + "dpad-fill": "#000000", + "joystick-handle-stroke": "#FFFFFF", + "layout": "high-contrast" + } + }, + { + "id": "red", + "name": "Red", + "theme": { + "background-color": "#ED3636", + "button-stroke": "#8D2525", + "text-color": "#CECECE", + "button-fill": "#333333", + "dpad-fill": "#8D2525", + "joystick-handle-stroke": "#8D2525", + "layout": "default" + } + }, + { + "id": "blue", + "name": "Blue", + "theme": { + "background-color": "#4E4EE9", + "button-stroke": "#3333A1", + "text-color": "#CECECE", + "button-fill": "#333333", + "dpad-fill": "#3333A1", + "joystick-handle-stroke": "#3333A1", + "layout": "default" + } + }, + { + "id": "orange", + "name": "Orange", + "theme": { + "background-color": "#FF9A14", + "button-stroke": "#B0701A", + "text-color": "#CECECE", + "button-fill": "#333333", + "dpad-fill": "#B0701A", + "joystick-handle-stroke": "#B0701A", + "layout": "default" + } + }, + { + "id": "green", + "name": "Green", + "theme": { + "background-color": "#4EB94E", + "button-stroke": "#245D24", + "text-color": "#CECECE", + "button-fill": "#333333", + "dpad-fill": "#245D24", + "joystick-handle-stroke": "#245D24", + "layout": "default" + } + }, + { + "id": "brown", + "name": "Brown", + "theme": { + "background-color": "#8B4513", + "button-stroke": "#68320C", + "text-color": "#CECECE", + "button-fill": "#333333", + "dpad-fill": "#68320C", + "joystick-handle-stroke": "#68320C", + "layout": "default" + } + }, + { + "id": "bubblegum", + "name": "Bubblegum", + "theme": { + "background-color": "#F7ABB9", + "button-stroke": "#71C1C9", + "text-color": "#4E4E4E", + "button-fill": "#92F5FF", + "dpad-fill": "#F7ABB9", + "joystick-handle-stroke": "#71C1C9", + "layout": "default" + } + }, + { + "id": "purple", + "name": "Purple", + "theme": { + "background-color": "#660FC7", + "button-stroke": "#4C0B95", + "text-color": "#CECECE", + "button-fill": "#333333", + "dpad-fill": "#4C0B95", + "joystick-handle-stroke": "#4C0B95", + "layout": "default" + } + }, + { + "id": "microcode", + "name": "MicroCode", + "theme": { + "background-color": "#3F3F3F", + "button-stroke": "#212121", + "text-color": "#D9D9D9", + "button-fill": "#2D2D2D", + "dpad-fill": "#212121", + "joystick-handle-stroke": "#212121", + "layout": "default" + } + }, + { + "id": "zune", + "name": "Zune", + "theme": { + "background-color": "#564131", + "button-stroke": "#524F4E", + "text-color": "#E7E7E7", + "button-fill": "#333333", + "dpad-fill": "#524F4E", + "joystick-handle-stroke": "#524F4E", + "layout": "zune" + } + }, + { + "id": "junior", + "name": "Junior", + "theme": { + "background-color": "#EB4444", + "button-stroke": "#670C0C", + "text-color": "#FFFFFF", + "button-fill": "#D54322", + "layout": "junior" + } + }, + { + "id": "retro", + "name": "Retro", + "theme": { + "background-color": "#FCF7E4", + "button-stroke": "#5C406C", + "text-color": "#5C406C", + "button-a-fill": "#FF8135", + "button-b-fill": "#FF91C4", + "dpad-fill": "#A3809C", + "console-border": "#96266C", + "screen-side-border": "#2F99A1", + "screen-top-bottom-border": "#F290C1", + "layout": "retro" + } + }, + { + "id": "teal", + "name": "Teal", + "theme": { + "background-color": "#249CA3", + "button-stroke": "#397382", + "text-color": "#CECECE", + "button-fill": "#333333", + "dpad-fill": "#397382", + "joystick-handle-stroke": "#999999", + "layout": "default" + } + } + ] }, "appTheme": { "logoUrl": "https://makecode.com/org", diff --git a/theme/color-themes/arcade-tokyo-night.json b/theme/color-themes/arcade-tokyo-night.json new file mode 100644 index 00000000000..cabd8594c77 --- /dev/null +++ b/theme/color-themes/arcade-tokyo-night.json @@ -0,0 +1,129 @@ +{ + "id": "arcade-tokyo-night", + "name": "Tokyo Night", + "weight": 80, + "defaultSimulatorTheme": "purple", + "monacoBaseTheme": "vs-dark", + "overrideFiles": [ + "/overrides/arcade-dark-overrides.css", + "/overrides/arcade-tokyo-night-overrides.css" + ], + "colors": { + "pxt-header-background": "#16161E", + "pxt-header-foreground": "#C0CAF5", + "pxt-header-background-hover": "#24283B", + "pxt-header-foreground-hover": "#FFFFFF", + "pxt-header-stencil": "#3B4261", + + "pxt-primary-background": "#7AA2F7", + "pxt-primary-foreground": "#16161E", + "pxt-primary-background-hover": "#A9BFF8", + "pxt-primary-foreground-hover": "#16161E", + "pxt-primary-accent": "#3D59A1", + + "pxt-secondary-background": "#BB9AF7", + "pxt-secondary-foreground": "#16161E", + "pxt-secondary-background-hover": "#C7AEFA", + "pxt-secondary-foreground-hover": "#16161E", + "pxt-secondary-accent": "#6D4F8E", + + "pxt-tertiary-background": "#7DCFFF", + "pxt-tertiary-foreground": "#16161E", + "pxt-tertiary-background-hover": "#A9DCFF", + "pxt-tertiary-foreground-hover": "#16161E", + "pxt-tertiary-accent": "#3D7A99", + + "pxt-target-background1": "#1A1B26", + "pxt-target-foreground1": "#C0CAF5", + "pxt-target-background1-hover": "#24283B", + "pxt-target-foreground1-hover": "#FFFFFF", + "pxt-target-stencil1": "#3B4261", + + "pxt-target-background2": "#16161E", + "pxt-target-foreground2": "#C0CAF5", + "pxt-target-background2-hover": "#24283B", + "pxt-target-foreground2-hover": "#FFFFFF", + "pxt-target-stencil2": "#3B4261", + + "pxt-target-background3": "#24283B", + "pxt-target-foreground3": "#C0CAF5", + "pxt-target-background3-hover": "#292E42", + "pxt-target-foreground3-hover": "#FFFFFF", + "pxt-target-stencil3": "#3B4261", + + "pxt-neutral-background1": "#1A1B26", + "pxt-neutral-foreground1": "#C0CAF5", + "pxt-neutral-background1-hover": "#24283B", + "pxt-neutral-foreground1-hover": "#FFFFFF", + "pxt-neutral-stencil1": "#3B4261", + + "pxt-neutral-background2": "#16161E", + "pxt-neutral-foreground2": "#C0CAF5", + "pxt-neutral-background2-hover": "#24283B", + "pxt-neutral-foreground2-hover": "#FFFFFF", + "pxt-neutral-stencil2": "#3B4261", + + "pxt-neutral-background3": "#292E42", + "pxt-neutral-foreground3": "#C0CAF5", + "pxt-neutral-background3-hover": "#3B4261", + "pxt-neutral-foreground3-hover": "#FFFFFF", + "pxt-neutral-stencil3": "#565F89", + "pxt-neutral-background3-alpha90": "#292E42E6", + + "pxt-neutral-base": "rgba(192, 202, 245, 1)", + "pxt-neutral-alpha0": "rgba(192, 202, 245, 0)", + "pxt-neutral-alpha10": "rgba(192, 202, 245, 0.1)", + "pxt-neutral-alpha20": "rgba(192, 202, 245, 0.2)", + "pxt-neutral-alpha50": "rgba(192, 202, 245, 0.5)", + "pxt-neutral-alpha80": "rgba(192, 202, 245, 0.8)", + + "pxt-link": "#7AA2F7", + "pxt-link-hover": "#A9BFF8", + "pxt-focus-border": "#BB9AF7", + + "pxt-warning": "#E0AF68", + "pxt-warning-foreground": "#16161E", + "pxt-warning-hover": "#F2C77F", + "pxt-warning-alpha10": "#E0AF6819", + + "pxt-colors-purple-background": "#BB9AF7", + "pxt-colors-purple-foreground": "#16161E", + "pxt-colors-purple-hover": "#C7AEFA", + "pxt-colors-purple-alpha10": "#BB9AF719", + + "pxt-colors-orange-background": "#FF9E64", + "pxt-colors-orange-foreground": "#16161E", + "pxt-colors-orange-hover": "#FFB080", + "pxt-colors-orange-alpha10": "#FF9E6419", + + "pxt-colors-brown-background": "#C17F59", + "pxt-colors-brown-foreground": "#16161E", + "pxt-colors-brown-hover": "#D39A78", + "pxt-colors-brown-alpha10": "#C17F5919", + + "pxt-colors-blue-background": "#7AA2F7", + "pxt-colors-blue-foreground": "#16161E", + "pxt-colors-blue-hover": "#A9BFF8", + "pxt-colors-blue-alpha10": "#7AA2F719", + + "pxt-colors-green-background": "#9ECE6A", + "pxt-colors-green-foreground": "#16161E", + "pxt-colors-green-hover": "#B4D98A", + "pxt-colors-green-alpha10": "#9ECE6A19", + + "pxt-colors-red-background": "#F7768E", + "pxt-colors-red-foreground": "#16161E", + "pxt-colors-red-hover": "#FA94A7", + "pxt-colors-red-alpha10": "#F7768E19", + + "pxt-colors-teal-background": "#73DACA", + "pxt-colors-teal-foreground": "#16161E", + "pxt-colors-teal-hover": "#93E3D7", + "pxt-colors-teal-alpha10": "#73DACA19", + + "pxt-colors-yellow-background": "#E0AF68", + "pxt-colors-yellow-foreground": "#16161E", + "pxt-colors-yellow-hover": "#F2C77F", + "pxt-colors-yellow-alpha10": "#E0AF6819" + } +} diff --git a/theme/color-themes/overrides/arcade-tokyo-night-overrides.css b/theme/color-themes/overrides/arcade-tokyo-night-overrides.css new file mode 100644 index 00000000000..25b774eaaa1 --- /dev/null +++ b/theme/color-themes/overrides/arcade-tokyo-night-overrides.css @@ -0,0 +1,8 @@ +#mainmenu .help-dropdown-menuitem > button.common-button, +#mainmenu .settings-menuitem > button.common-button { + color: var(--pxt-header-foreground); +} + +.fullscreen.extensions-browser > .common-modal > .common-modal-header .common-button.menu-button { + color: var(--pxt-header-foreground); +}