chore: Adds automated accented icon themes generation. Sets correct icon theme while choosing an accent.
|
@ -10,7 +10,6 @@ import { CHARSET } from "../consts/files";
|
||||||
import { IThemeConfigCommons } from '../../extensions/interfaces/icommons';
|
import { IThemeConfigCommons } from '../../extensions/interfaces/icommons';
|
||||||
import { IThemeIconsAccents } from "../interfaces/itheme-icons-accents";
|
import { IThemeIconsAccents } from "../interfaces/itheme-icons-accents";
|
||||||
import PATHS from '../../extensions/consts/paths'
|
import PATHS from '../../extensions/consts/paths'
|
||||||
import accentedThemeName from "../../extensions/accents-setter/accented-theme-name";
|
|
||||||
|
|
||||||
const BASE_ICON_THEME_PATH: string = path.join(process.cwd(), PATHS.THEMES, './Material-Theme-Icons.json');
|
const BASE_ICON_THEME_PATH: string = path.join(process.cwd(), PATHS.THEMES, './Material-Theme-Icons.json');
|
||||||
const THEME_COMMONS: IThemeConfigCommons = require('../../extensions/accents-setter/commons.json');
|
const THEME_COMMONS: IThemeConfigCommons = require('../../extensions/accents-setter/commons.json');
|
||||||
|
@ -49,7 +48,16 @@ function replaceNameWithAccent(name: string, accentName: string): string {
|
||||||
* @returns {string}
|
* @returns {string}
|
||||||
*/
|
*/
|
||||||
function replaceSVGColour(filecontent: string, colour: string): string {
|
function replaceSVGColour(filecontent: string, colour: string): string {
|
||||||
return filecontent.replace(/\.st0\s{0,}\{fill:#([a-zA-Z0-9]{6});\}/, ($0, $1) => $0.replace($1, colour));
|
return filecontent.replace(new RegExp('.st0\{fill:#([a-zA-Z0-9]{6})\}|path fill="#([a-zA-Z0-9]{6})"'), ($0, $1, $2) => {
|
||||||
|
|
||||||
|
colour = colour.replace('#', '');
|
||||||
|
|
||||||
|
if (!$2) {
|
||||||
|
return $0.replace($1, colour);
|
||||||
|
} else {
|
||||||
|
return $0.replace($2, colour);
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -69,7 +77,7 @@ function replaceWhiteSpaces(input: string): string {
|
||||||
*/
|
*/
|
||||||
function writeSVGIcon(fromFile: string, toFile: string, accent: string): void {
|
function writeSVGIcon(fromFile: string, toFile: string, accent: string): void {
|
||||||
let fileContent: string = fs.readFileSync(normalizeIconPath(fromFile), CHARSET);
|
let fileContent: string = fs.readFileSync(normalizeIconPath(fromFile), CHARSET);
|
||||||
let content: string = replaceSVGColour(normalizeIconPath(fileContent), THEME_COMMONS.accents[accent]);
|
let content: string = replaceSVGColour(fileContent, THEME_COMMONS.accents[accent]);
|
||||||
toFile = normalizeIconPath(toFile);
|
toFile = normalizeIconPath(toFile);
|
||||||
|
|
||||||
fs.writeFileSync(toFile, content);
|
fs.writeFileSync(toFile, content);
|
||||||
|
@ -87,21 +95,21 @@ export default gulp.task('build:icons.accents', cb => {
|
||||||
Object.keys(THEME_COMMONS.accents).forEach(key => {
|
Object.keys(THEME_COMMONS.accents).forEach(key => {
|
||||||
let iconName = replaceWhiteSpaces(key);
|
let iconName = replaceWhiteSpaces(key);
|
||||||
let themecopy: IThemeIconsAccents = JSON.parse(JSON.stringify(basetheme));
|
let themecopy: IThemeIconsAccents = JSON.parse(JSON.stringify(basetheme));
|
||||||
let themePath: string = accentedThemeName(key);
|
let themePath: string = path.join(PATHS.THEMES, `./Material-Theme-Icons-${ key }.json`);
|
||||||
|
|
||||||
let id: string = `${ PACKAGE_JSON_ICON_THEME.id }-${ key.replace(/\s+/g, '-').toLowerCase() }`;
|
let id: string = `${ PACKAGE_JSON_ICON_THEME.id }-${ key.replace(/\s+/g, '-').toLowerCase() }`;
|
||||||
let label: string = `${ PACKAGE_JSON_ICON_THEME.label } - ${ key } accent`;
|
let label: string = `${ PACKAGE_JSON_ICON_THEME.label } - ${ key } accent`;
|
||||||
let path: string = `./${ themePath }`;
|
let themepathJSON: string = `./${ themePath }`;
|
||||||
|
|
||||||
themecopy.iconDefinitions._folder_open.iconPath = replaceNameWithAccent(basetheme.iconDefinitions._folder_open.iconPath, iconName);
|
themecopy.iconDefinitions._folder_open.iconPath = replaceNameWithAccent(basetheme.iconDefinitions._folder_open.iconPath, iconName);
|
||||||
themecopy.iconDefinitions._folder_open_build.iconPath = replaceNameWithAccent(basetheme.iconDefinitions._folder_open_build.iconPath, iconName);
|
themecopy.iconDefinitions._folder_open_build.iconPath = replaceNameWithAccent(basetheme.iconDefinitions._folder_open_build.iconPath, iconName);
|
||||||
|
|
||||||
writeSVGIcon(basetheme.iconDefinitions._folder_open.iconPath, themecopy.iconDefinitions._folder_open.iconPath, THEME_COMMONS.accents[key]);
|
writeSVGIcon(basetheme.iconDefinitions._folder_open.iconPath, themecopy.iconDefinitions._folder_open.iconPath, key);
|
||||||
writeSVGIcon(basetheme.iconDefinitions._folder_open_build.iconPath, themecopy.iconDefinitions._folder_open_build.iconPath, THEME_COMMONS.accents[key]);
|
writeSVGIcon(basetheme.iconDefinitions._folder_open_build.iconPath, themecopy.iconDefinitions._folder_open_build.iconPath, key);
|
||||||
|
|
||||||
fs.writeFileSync(themePath, JSON.stringify(themecopy));
|
fs.writeFileSync(themePath, JSON.stringify(themecopy));
|
||||||
|
|
||||||
PACKAGE_JSON.contributes.iconThemes.push({ id, label, path });
|
PACKAGE_JSON.contributes.iconThemes.push({ id, label, path: themepathJSON });
|
||||||
|
|
||||||
gutil.log(gutil.colors.green(MESSAGE_GENERATED, themePath));
|
gutil.log(gutil.colors.green(MESSAGE_GENERATED, themePath));
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
import * as path from 'path';
|
|
||||||
|
|
||||||
import PATHS from '../consts/paths'
|
|
||||||
|
|
||||||
export default function accentedThemeName(accentName: string): string {
|
|
||||||
return path.join(PATHS.THEMES, `./Material-Theme-Icons-${ accentName }.json`);
|
|
||||||
}
|
|
|
@ -62,6 +62,39 @@ function assignColorCustomizations(colour: string, config: any): void {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the accented icon theme name
|
||||||
|
* @param accentName
|
||||||
|
*/
|
||||||
|
function accentedThemeName(accentName: string): string {
|
||||||
|
return `material-theme-icons-${ accentName.replace(/\s+/g, '-').toLowerCase() }`;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Assigns related icons theme name by accent name
|
||||||
|
* @param accentName
|
||||||
|
*/
|
||||||
|
function assignIconTheme(accentName: string | undefined): void {
|
||||||
|
let cacheKey: string = 'materialTheme.cache.workbench.iconTheme';
|
||||||
|
let cache: any = vscode.workspace.getConfiguration().inspect(cacheKey);
|
||||||
|
let accentValue: string;
|
||||||
|
|
||||||
|
if (!cache.globalValue && accentName !== undefined) {
|
||||||
|
vscode.workspace.getConfiguration().update(cacheKey, vscode.workspace.getConfiguration().get('workbench.iconTheme'), true).then(() => {}, reason => vscode.window.showErrorMessage(reason));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (accentName === undefined && cache.globalValue) {
|
||||||
|
accentValue = vscode.workspace.getConfiguration().get<string>(cacheKey);
|
||||||
|
vscode.workspace.getConfiguration().update(cacheKey, undefined, true);
|
||||||
|
} else if (accentName !== undefined) {
|
||||||
|
accentValue = accentedThemeName(accentName);
|
||||||
|
}
|
||||||
|
|
||||||
|
vscode.workspace.getConfiguration().update('workbench.iconTheme', accentValue, true).then(() => {}, reason => {
|
||||||
|
vscode.window.showErrorMessage(reason);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Determines if a string is a valid colour
|
* Determines if a string is a valid colour
|
||||||
* @param {(string | null | undefined)} colour
|
* @param {(string | null | undefined)} colour
|
||||||
|
@ -121,10 +154,12 @@ export const THEME_ACCENTS_SETTER = () => {
|
||||||
case purgeColourKey:
|
case purgeColourKey:
|
||||||
assignColorCustomizations(undefined, config);
|
assignColorCustomizations(undefined, config);
|
||||||
setWorkbenchOptions(accentSelected, config);
|
setWorkbenchOptions(accentSelected, config);
|
||||||
|
assignIconTheme(undefined);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
assignColorCustomizations(themeConfigCommon.accents[accentSelected], config);
|
assignColorCustomizations(themeConfigCommon.accents[accentSelected], config);
|
||||||
setWorkbenchOptions(accentSelected, config);
|
setWorkbenchOptions(accentSelected, config);
|
||||||
|
assignIconTheme(accentSelected);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
1
icons/folder-outline-build.accent.Acid-Lime.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#C6FF00}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Blue.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#2979FF}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Breaking-Bad.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#388E3C}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Bright-Teal.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#64FFDA}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Cyan.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#00BCD4}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Graphite.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#616161}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Indigo.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#5C6BC0}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Lime.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#7CB342}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Orange.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#FF7042}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Pink.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#FF4081}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Purple.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#AB47BC}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Red.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#E57373}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Sky.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#84FFFF}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Teal.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#80CBC4}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Tomato.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#F44336}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline-build.accent.Yellow.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><style>.st0{fill:#FFA000}.st1{fill:#f78c6c}</style><path class="st0" d="M11.5 18.8H3.2V7.5h17.6v3.9l2.2 1V7.5c0-1.2-1-2.2-2.2-2.2H12L9.8 3H3.2C2 3 1 4 1 5.2v13.5C1 20 2 21 3.2 21h8.3v-2.2z"/><path class="st1" d="M23 12.4l-2.2-1-3-1.4-6.2 2.8v8.4l6.2 2.8 6.2-2.8v-8.3l-1-.5zm-5.2-1.2l3 1.4 1.5.7-1.5.7-3 1.4-4.5-2 4.5-2.2zm-.6 11.4L13.6 21l-.4-.2-.6-.3v-6.6l4.8 2.1v6.6zm5.8-4v2l-4.8 2.1v-6.6l2.5-1.1 2.2-1v4.6z"/></svg>
|
After Width: | Height: | Size: 492 B |
1
icons/folder-outline.accent.Acid-Lime.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#C6FF00" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Blue.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#2979FF" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Breaking-Bad.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#388E3C" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Bright-Teal.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#64FFDA" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Cyan.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#00BCD4" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Graphite.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#616161" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Indigo.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#5C6BC0" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Lime.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#7CB342" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Orange.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FF7042" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Pink.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FF4081" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Purple.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#AB47BC" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Red.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#E57373" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Sky.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#84FFFF" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Teal.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#80CBC4" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Tomato.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#F44336" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
1
icons/folder-outline.accent.Yellow.svg
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFA000" d="M20.8 5.25H12L9.8 3H3.2C1.99 3 1 4.013 1 5.25v13.5C1 19.988 1.99 21 3.2 21h17.6c1.21 0 2.2-1.012 2.2-2.25V7.5c0-1.237-.99-2.25-2.2-2.25zm0 13.5H3.2V7.5h17.6v11.25z"/></svg>
|
After Width: | Height: | Size: 279 B |
98
package.json
|
@ -52,6 +52,22 @@
|
||||||
"title": "Settings"
|
"title": "Settings"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
"configuration": {
|
||||||
|
"properties": {
|
||||||
|
"materialTheme.cache.workbench.colorCustomizations": {
|
||||||
|
"default": {},
|
||||||
|
"type": "object",
|
||||||
|
"title": "Previous color customizations",
|
||||||
|
"description": "Keeps in cache your previous color customizations."
|
||||||
|
},
|
||||||
|
"materialTheme.cache.workbench.iconTheme": {
|
||||||
|
"default": "",
|
||||||
|
"type": "string",
|
||||||
|
"title": "Previous icon theme",
|
||||||
|
"description": "Keeps in cache your previous icon theme."
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"themes": [
|
"themes": [
|
||||||
{
|
{
|
||||||
"label": "Material Theme",
|
"label": "Material Theme",
|
||||||
|
@ -79,6 +95,86 @@
|
||||||
"id": "material-theme-icons",
|
"id": "material-theme-icons",
|
||||||
"label": "Material Theme Icons",
|
"label": "Material Theme Icons",
|
||||||
"path": "./themes/Material-Theme-Icons.json"
|
"path": "./themes/Material-Theme-Icons.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-acid-lime",
|
||||||
|
"label": "Material Theme Icons - Acid Lime accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Acid Lime.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-blue",
|
||||||
|
"label": "Material Theme Icons - Blue accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Blue.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-breaking-bad",
|
||||||
|
"label": "Material Theme Icons - Breaking Bad accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Breaking Bad.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-bright-teal",
|
||||||
|
"label": "Material Theme Icons - Bright Teal accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Bright Teal.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-cyan",
|
||||||
|
"label": "Material Theme Icons - Cyan accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Cyan.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-graphite",
|
||||||
|
"label": "Material Theme Icons - Graphite accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Graphite.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-indigo",
|
||||||
|
"label": "Material Theme Icons - Indigo accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Indigo.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-lime",
|
||||||
|
"label": "Material Theme Icons - Lime accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Lime.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-orange",
|
||||||
|
"label": "Material Theme Icons - Orange accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Orange.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-pink",
|
||||||
|
"label": "Material Theme Icons - Pink accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Pink.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-purple",
|
||||||
|
"label": "Material Theme Icons - Purple accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Purple.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-red",
|
||||||
|
"label": "Material Theme Icons - Red accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Red.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-sky",
|
||||||
|
"label": "Material Theme Icons - Sky accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Sky.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-tomato",
|
||||||
|
"label": "Material Theme Icons - Tomato accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Tomato.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-teal",
|
||||||
|
"label": "Material Theme Icons - Teal accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Teal.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "material-theme-icons-yellow",
|
||||||
|
"label": "Material Theme Icons - Yellow accent",
|
||||||
|
"path": "./themes/Material-Theme-Icons-Yellow.json"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -121,4 +217,4 @@
|
||||||
"yamljs": "^0.2.10",
|
"yamljs": "^0.2.10",
|
||||||
"yargs": "^7.1.0"
|
"yargs": "^7.1.0"
|
||||||
}
|
}
|
||||||
}
|
}
|