@flowfuse/nr-theme
Version:
FlowFuse themes for Node-RED
63 lines (59 loc) • 2.14 kB
JavaScript
const { existsSync } = require('fs')
module.exports = function (RED) {
let headerImage = 'resources/@flowfuse/nr-theme/ff-nr.png' // file path for nr-theme installation
let favicon = 'resources/@flowfuse/nr-theme/favicon-16x16.png' // file path for nr-theme installation
if (!existsSync(headerImage)) {
headerImage = 'resources/@flowfuse/nr-launcher/ff-nr.png' // file path for when embedded in nr-launcher
}
if (!existsSync(favicon)) {
favicon = 'resources/@flowfuse/nr-launcher/favicon-16x16.png' // file path for when embedded in nr-launcher
}
RED.plugins.registerPlugin('forge-light', {
type: 'node-red-theme',
scripts: [
'lib/theme/common/forge-common.js'
// /* optional */ 'lib/theme/forge-light/forge-light-custom.js'
],
css: [
'lib/theme/common/forge-common.css',
'lib/theme/forge-light/forge-light-theme.css'
// /* optional */ 'lib/theme/forge-light/forge-light-custom.css'
],
settings: {
theme: {
value: 'forge-light',
exportable: true
},
headerImage: {
value: headerImage,
exportable: true
},
favicon: {
value: favicon,
exportable: true
},
launcherVersion: {
exportable: true
},
forgeURL: {
exportable: true
},
projectURL: {
exportable: true
}
},
monacoOptions: {
theme: require('./forge-light-monaco.json'),
fontSize: 14,
fontLigatures: true,
fontFamily: "Cascadia Code, Fira Code, Consolas, 'Courier New', monospace",
fontWeight: '300',
colorDecorators: true,
dragAndDrop: true,
linkedEditing: true,
showFoldingControls: 'always',
'bracketPairColorization.enabled': true
}
})
RED.log.info('FlowFuse Light Theme Plugin loaded')
}