You've already forked dynamic-badges-action
🎉 Added range based message coloring
This commit is contained in:
@@ -80,6 +80,8 @@ Gist Parameter | Description
|
|||||||
`logoPosition` | The position of the logo.
|
`logoPosition` | The position of the logo.
|
||||||
`style` | The style like "flat" or "social".
|
`style` | The style like "flat" or "social".
|
||||||
`cacheSeconds` | The cache lifetime in seconds (must be greater than 300).
|
`cacheSeconds` | The cache lifetime in seconds (must be greater than 300).
|
||||||
|
`maxColorRange` | Maximum value for the value passaed as message. Used to define the message color.
|
||||||
|
`minColorRange` | Minimum value for the value passaed as message. Used to define the message color.
|
||||||
|
|
||||||
### Using Environment Variables as Parameters [](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/schneegans/2ab8f1d386f13aaebccbd87dac94068d/raw/answer.json)
|
### Using Environment Variables as Parameters [](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/schneegans/2ab8f1d386f13aaebccbd87dac94068d/raw/answer.json)
|
||||||
|
|
||||||
|
|||||||
@@ -49,6 +49,12 @@ inputs:
|
|||||||
cacheSeconds:
|
cacheSeconds:
|
||||||
description: 'The cache lifetime in seconds (must be greater than 300)'
|
description: 'The cache lifetime in seconds (must be greater than 300)'
|
||||||
required: false
|
required: false
|
||||||
|
maxColorRange:
|
||||||
|
description: 'Maximum value for the value passaed as message. Used to define the message color.'
|
||||||
|
required: false
|
||||||
|
minColorRange:
|
||||||
|
description: 'Minimum value for the value passaed as message. Used to define the message color.'
|
||||||
|
required: false
|
||||||
runs:
|
runs:
|
||||||
using: 'node12'
|
using: 'node12'
|
||||||
main: 'index.js'
|
main: 'index.js'
|
||||||
|
|||||||
12
index.js
12
index.js
@@ -24,12 +24,22 @@ try {
|
|||||||
const logoPosition = core.getInput('logoPosition');
|
const logoPosition = core.getInput('logoPosition');
|
||||||
const style = core.getInput('style');
|
const style = core.getInput('style');
|
||||||
const cacheSeconds = core.getInput('cacheSeconds');
|
const cacheSeconds = core.getInput('cacheSeconds');
|
||||||
|
const minColorRange = core.getInput('minColorRange');
|
||||||
|
const maxColorRange = core.getInput('maxColorRange');
|
||||||
|
|
||||||
if (labelColor != '') {
|
if (labelColor != '') {
|
||||||
content.labelColor = labelColor;
|
content.labelColor = labelColor;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (color != '') {
|
if (minColorRange != '' && maxColorRange != '') {
|
||||||
|
var max = parseFloat(maxColorRange);
|
||||||
|
var min = parseFloat(minColorRange);
|
||||||
|
var val = parseFloat(content.message);
|
||||||
|
if (val < min) val = min;
|
||||||
|
if (val > max) val = max;
|
||||||
|
let hue = Math.floor((val - min) / (max - min) * 100);
|
||||||
|
content.color = "hsl(" + hue + ", 100%, 50%)";
|
||||||
|
} else if (color != '') {
|
||||||
content.color = color;
|
content.color = color;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user