Modified from original ui-digital-clock
This commit is contained in:
9
CHANGELOG.md
Normal file
9
CHANGELOG.md
Normal file
@@ -0,0 +1,9 @@
|
||||
# Changelog
|
||||
|
||||
## [v1.0.0] - 2022-04-29
|
||||
|
||||
### Added
|
||||
- Functional digital clock for the Node-RED Dashboard
|
||||
- Readme, Changelog and License
|
||||
|
||||
[v1.0.0]: https://github.com/patrickknabe/node-red-contrib-ui-digital-clock/releases/tag/v1.0.0
|
||||
21
LICENSE
Normal file
21
LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2022 patrickknabe
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
43
README.md
Normal file
43
README.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# node-red-contrib-ui-digital-clock
|
||||
|
||||
A digital clock for the Node-RED Dashboard.
|
||||
|
||||

|
||||
|
||||
## Installation
|
||||
|
||||
Open Node-RED and select `Manage palette` from the menu to open the Palette Manager. Go to the `Install` tab, search for `node-red-contrib-ui-digital-clock` and click `install`.
|
||||
|
||||
Alternatively, you can run the following command in your Node-RED user directory (typically `~/.node-red`):
|
||||
|
||||
```
|
||||
npm i node-red-contrib-ui-digital-clock
|
||||
```
|
||||
|
||||
## Example
|
||||
|
||||

|
||||
|
||||
```
|
||||
[{"id":"c09db1ba6ac377de","type":"tab","label":"Flow 1","disabled":false,"info":"","env":[]},{"id":"37ec70937bed02a4","type":"ui_digital_clock","z":"c09db1ba6ac377de","name":"","group":"5c79b643fcd37cad","order":0,"width":"6","height":"2","x":710,"y":340,"wires":[]},{"id":"105daf8d29a83f81","type":"inject","z":"c09db1ba6ac377de","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"1","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":490,"y":340,"wires":[["37ec70937bed02a4"]]},{"id":"5c79b643fcd37cad","type":"ui_group","name":"Standard","tab":"f4a9e911ba044f38","order":1,"disp":true,"width":"6","collapse":false,"className":""},{"id":"f4a9e911ba044f38","type":"ui_tab","name":"Home","icon":"dashboard","disabled":false,"hidden":false}]
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
[MIT](LICENSE)
|
||||
|
||||
## Projects
|
||||
|
||||
Also take a look at my other dashboard projects:
|
||||
|
||||
### [node-red-contrib-ui-clock](https://github.com/patrickknabe/node-red-contrib-ui-clock)
|
||||
|
||||
A simple analog clock for the Node-RED Dashboard.
|
||||
|
||||

|
||||
|
||||
### [node-red-contrib-ui-digital-display](https://github.com/patrickknabe/node-red-contrib-ui-digital-display)
|
||||
|
||||
A digital display, with adjustable number of digits and decimals, for the Node-RED Dashboard.
|
||||
|
||||

|
||||
69
clock.html
Normal file
69
clock.html
Normal file
File diff suppressed because one or more lines are too long
123
clock.js
Normal file
123
clock.js
Normal file
@@ -0,0 +1,123 @@
|
||||
module.exports = RED => {
|
||||
let ui;
|
||||
|
||||
RED.nodes.registerType( 'ui_microwave_clock', function( config ) {
|
||||
RED.nodes.createNode( this, config );
|
||||
|
||||
if( !ui ) {
|
||||
try {
|
||||
ui = RED.require( 'node-red-dashboard' )( RED );
|
||||
} catch {}
|
||||
}
|
||||
|
||||
if( ui && RED.nodes.getNode( config.group ) ) {
|
||||
this.on( 'close', ui.addWidget( {
|
||||
node: this,
|
||||
format: `
|
||||
<svg version="1.1" viewBox="0 0 3508.2 1000" xmlns="http://www.w3.org/2000/svg">
|
||||
<path style="display: {{ segs[ 2 ][ 0 ] ? 'block' : 'none' }}" d="m 1336.646,8e-5 h 332.31 l 33.735,36.176 -84.078,78.404 h -247.65 l -73.113,-78.404 z" />
|
||||
<path style="display: {{ segs[ 2 ][ 1 ] ? 'block' : 'none' }}" d="m 1259.171,72.249 75.498,80.961 -16.917,241.93 -74.915,69.86 -38.525,-41.313 22.462,-321.23 z" />
|
||||
<path style="display: {{ segs[ 2 ][ 2 ] ? 'block' : 'none' }}" d="m 1627.016,389.16 15.725,-224.88 95.964,-89.488 19.36,20.761 -23.784,340.13 -34.168,31.863 z" />
|
||||
<path style="display: {{ segs[ 2 ][ 3 ] ? 'block' : 'none' }}" d="m 1343.156,443.65 h 262.35 l 55.921,59.968 -58.717,54.612 h -272.94 l -50.926,-54.612 z" />
|
||||
<path style="display: {{ segs[ 2 ][ 4 ] ? 'block' : 'none' }}" d="m 1240.106,539.75 62.822,67.368 -17.266,246.91 -76.188,71.046 -37.419,-40.127 21.076,-301.4 z" />
|
||||
<path style="display: {{ segs[ 2 ][ 5 ] ? 'block' : 'none' }}" d="m 1697.696,542.51 27.085,29.045 -23.14,330.91 -27.204,25.368 -79.153,-84.881 15.331,-219.24 z" />
|
||||
<path style="display: {{ segs[ 2 ][ 6 ] ? 'block' : 'none' }}" d="m 1245.741,963.97 83.764,-78.112 h 233.35 l 72.84,78.112 -38.641,36.033 h -317.71 z" />
|
||||
<path style="display: {{ segs[ 3 ][ 0 ] ? 'block' : 'none' }}" d="m 1922.656,7.6241e-5 h 332.31 L 2288.7,36.176076 2204.622,114.58008 h -247.65 l -73.113,-78.404004 z" />
|
||||
<path style="display: {{ segs[ 3 ][ 1 ] ? 'block' : 'none' }}" d="m 1845.186,72.249 75.498,80.961 -16.917,241.93 -74.915,69.86 -38.525,-41.313 22.462,-321.23 z" />
|
||||
<path style="display: {{ segs[ 3 ][ 2 ] ? 'block' : 'none' }}" d="m 2213.056,389.16 15.725,-224.88 95.964,-89.488 19.36,20.761 -23.784,340.13 -34.168,31.863 z" />
|
||||
<path style="display: {{ segs[ 3 ][ 3 ] ? 'block' : 'none' }}" d="m 1929.166,443.65 h 262.35 l 55.921,59.968 -58.717,54.612 h -272.94 l -50.926,-54.612 z" />
|
||||
<path style="display: {{ segs[ 3 ][ 4 ] ? 'block' : 'none' }}" d="m 1826.116,539.75 62.822,67.368 -17.266,246.91 -76.188,71.046 -37.419,-40.127 21.076,-301.4 z" />
|
||||
<path style="display: {{ segs[ 3 ][ 5 ] ? 'block' : 'none' }}" d="m 2283.756,542.51 27.085,29.045 -23.14,330.91 -27.204,25.368 -79.153,-84.881 15.331,-219.24 z" />
|
||||
<path style="display: {{ segs[ 3 ][ 6 ] ? 'block' : 'none' }}" d="m 1831.756,963.97 83.764,-78.112 h 233.35 l 72.84,78.112 -38.641,36.033 h -317.71 z" />
|
||||
<path style="display: {{ segs[ 0 ][ 0 ] ? 'block' : 'none' }}" d="M 164.591,9.9999998e-5 H 496.90099 L 530.63599,36.1761 l -84.078,78.404 h -247.65 L 125.795,36.1761 Z" />
|
||||
<path style="display: {{ segs[ 0 ][ 1 ] ? 'block' : 'none' }}" d="m 87.116,74.24902 75.498,80.961 L 145.697,397.14 70.782,467 32.257,425.687 54.719,104.45702 Z" />
|
||||
<path style="display: {{ segs[ 0 ][ 2 ] ? 'block' : 'none' }}" d="m 454.96099,389.16 15.725,-224.87998 95.964,-89.488 19.36,20.761 -23.784,340.12998 -34.168,31.863 z" />
|
||||
<path style="display: {{ segs[ 0 ][ 3 ] ? 'block' : 'none' }}" d="m 171.101,443.65 h 262.34999 l 55.921,59.968 -58.717,54.612 H 157.715 l -50.926,-54.612 z" />
|
||||
<path style="display: {{ segs[ 0 ][ 4 ] ? 'block' : 'none' }}" d="m 68.051,539.75 62.822,67.368 -17.266,246.91 L 37.419,925.074 0,884.947 21.076,583.547 Z" />
|
||||
<path style="display: {{ segs[ 0 ][ 5 ] ? 'block' : 'none' }}" d="m 525.64099,542.51 27.085,29.045 -23.14,330.91 -27.204,25.368 -79.153,-84.881 15.331,-219.24 z" />
|
||||
<path style="display: {{ segs[ 0 ][ 6 ] ? 'block' : 'none' }}" d="m 73.686,963.97 83.764,-78.112 h 233.34999 l 72.84,78.112 -38.641,36.033 H 107.289 Z" />
|
||||
<path style="display: {{ segs[ 1 ][ 0 ] ? 'block' : 'none' }}" d="M 750.60099,9.9999998e-5 H 1082.911 L 1116.645,36.1761 l -84.078,78.404 H 784.91699 l -73.113,-78.404 z" />
|
||||
<path style="display: {{ segs[ 1 ][ 1 ] ? 'block' : 'none' }}" d="m 673.13099,72.24902 75.498,80.961 -16.917,241.92998 -74.915,69.86 -38.525,-41.313 22.462,-321.22998 z" />
|
||||
<path style="display: {{ segs[ 1 ][ 2 ] ? 'block' : 'none' }}" d="m 1041.001,389.16 15.725,-224.87998 95.964,-89.488 19.36,20.761 -23.784,340.12998 -34.168,31.863 z" />
|
||||
<path style="display: {{ segs[ 1 ][ 3 ] ? 'block' : 'none' }}" d="M 757.11099,443.65 H 1019.461 l 55.921,59.968 -58.717,54.612 H 743.72499 l -50.926,-54.612 z" />
|
||||
<path style="display: {{ segs[ 1 ][ 4 ] ? 'block' : 'none' }}" d="m 654.06099,539.75 62.822,67.368 -17.266,246.91 -76.188,71.046 -37.419,-40.127 21.076,-301.4 z" />
|
||||
<path style="display: {{ segs[ 1 ][ 5 ] ? 'block' : 'none' }}" d="m 1111.701,542.51 27.085,29.045 -23.14,330.91 -27.204,25.368 -79.153,-84.881 15.331,-219.24 z" />
|
||||
<path style="display: {{ segs[ 1 ][ 6 ] ? 'block' : 'none' }}" d="m 659.70099,963.97 83.764,-78.112 h 233.35 l 72.84001,78.112 -38.641,36.033 H 693.30399 Z" />
|
||||
<path style="display: {{ segs[ 8 ][ 0 ] ? 'block' : 'none' }}" d="m 2391.656,558.11 h 51.994 l 26.941,58.193 -34.923,55.952 h -51.994 l -25.991,-56.215 z" />
|
||||
<path style="display: {{ segs[ 8 ][ 0 ] ? 'block' : 'none' }}" d="m 2407.656,329.36 h 51.994 l 26.941,58.193 -34.923,55.952 h -51.994 l -25.99,-56.215 z" />
|
||||
<path style="display: {{ segs[ 4 ][ 0 ] ? 'block' : 'none' }}" d="m 2666.356,0 h 332.31 l 33.735,36.176 -84.078,78.404 h -247.65 L 2627.56,36.176 Z" />
|
||||
<path style="display: {{ segs[ 4 ][ 1 ] ? 'block' : 'none' }}" d="m 2588.856,72.249 75.498,80.961 -16.917,241.93 -74.916,69.86 -38.525,-41.313 22.462,-321.23 z" />
|
||||
<path style="display: {{ segs[ 4 ][ 2 ] ? 'block' : 'none' }}" d="m 2956.656,389.16 15.725,-224.88 95.964,-89.488 19.36,20.761 -23.784,340.13 -34.168,31.863 z" />
|
||||
<path style="display: {{ segs[ 4 ][ 3 ] ? 'block' : 'none' }}" d="m 2672.856,443.65 h 262.35 l 55.921,59.968 -58.717,54.612 h -272.94 l -50.926,-54.612 z" />
|
||||
<path style="display: {{ segs[ 4 ][ 4 ] ? 'block' : 'none' }}" d="m 2569.756,539.75 62.822,67.368 -17.266,246.91 -76.188,71.046 -37.419,-40.127 21.076,-301.4 z" />
|
||||
<path style="display: {{ segs[ 4 ][ 5 ] ? 'block' : 'none' }}" d="m 3027.356,542.51 27.085,29.045 -23.14,330.91 -27.204,25.368 -79.153,-84.881 15.331,-219.24 z" />
|
||||
<path style="display: {{ segs[ 4 ][ 6 ] ? 'block' : 'none' }}" d="m 2575.456,963.97 83.764,-78.112 h 233.35 l 72.84,78.112 -38.641,36.033 h -317.71 z" />
|
||||
<path style="display: {{ segs[ 5 ][ 0 ] ? 'block' : 'none' }}" d="m 3252.356,0 h 332.31 l 33.735,36.176 -84.078,78.404 h -247.65 L 3213.56,36.176 Z" />
|
||||
<path style="display: {{ segs[ 5 ][ 1 ] ? 'block' : 'none' }}" d="m 3174.856,72.249 75.498,80.961 -16.917,241.93 -74.916,69.86 -38.525,-41.313 22.462,-321.23 z" />
|
||||
<path style="display: {{ segs[ 5 ][ 2 ] ? 'block' : 'none' }}" d="m 3542.756,389.16 15.725,-224.88 95.964,-89.488 19.36,20.761 -23.784,340.13 -34.168,31.863 z" />
|
||||
<path style="display: {{ segs[ 5 ][ 3 ] ? 'block' : 'none' }}" d="m 3258.856,443.65 h 262.35 l 55.921,59.968 -58.717,54.612 h -272.94 l -50.926,-54.612 z" />
|
||||
<path style="display: {{ segs[ 5 ][ 4 ] ? 'block' : 'none' }}" d="m 3155.756,539.75 62.822,67.368 -17.266,246.91 -76.188,71.046 -37.419,-40.127 21.076,-301.4 z" />
|
||||
<path style="display: {{ segs[ 5 ][ 5 ] ? 'block' : 'none' }}" d="m 3613.356,542.51 27.085,29.045 -23.14,330.91 -27.204,25.368 -79.153,-84.881 15.331,-219.24 z" />
|
||||
<path style="display: {{ segs[ 5 ][ 6 ] ? 'block' : 'none' }}" d="m 3161.456,963.97 83.764,-78.112 h 233.35 l 72.84,78.112 -38.641,36.033 h -317.71 z" />
|
||||
<path style="display: {{ segs[ 9 ][ 0 ] ? 'block' : 'none' }}" d="m 3706.156,668.64 h 38.996 l 20.206,43.645 -26.192,41.964 h -38.995 l -19.493,-42.161 z" />
|
||||
<path style="display: {{ segs[ 9 ][ 0 ] ? 'block' : 'none' }}" d="m 3718.156,497.08 h 38.996 l 20.206,43.645 -26.192,41.964 h -38.996 l -19.493,-42.161 z" />
|
||||
<path style="display: {{ segs[ 6 ][ 0 ] ? 'block' : 'none' }}" d="m 3924.656,250 h 249.23 l 25.301,27.132 -63.059,58.803 h -185.74 l -54.835,-58.803 z" />
|
||||
<path style="display: {{ segs[ 6 ][ 1 ] ? 'block' : 'none' }}" d="m 3866.556,304.19 56.623,60.721 -12.688,181.45 -56.187,52.395 -28.894,-30.985 16.847,-240.92 z" />
|
||||
<path style="display: {{ segs[ 6 ][ 2 ] ? 'block' : 'none' }}" d="m 4142.456,541.87 11.794,-168.66 71.973,-67.116 14.52,15.571 -17.838,255.1 -25.626,23.897 z" />
|
||||
<path style="display: {{ segs[ 6 ][ 3 ] ? 'block' : 'none' }}" d="m 3929.556,582.74 h 196.76 l 41.941,44.976 -44.038,40.959 h -204.7 l -38.195,-40.959 z" />
|
||||
<path style="display: {{ segs[ 6 ][ 4 ] ? 'block' : 'none' }}" d="m 3852.256,654.81 47.117,50.526 -12.949,185.18 -57.141,53.285 -28.064,-30.095 15.807,-226.05 z" />
|
||||
<path style="display: {{ segs[ 6 ][ 5 ] ? 'block' : 'none' }}" d="m 4195.456,656.88 20.314,21.784 -17.355,248.19 -20.403,19.026 -59.365,-63.661 11.498,-164.43 z" />
|
||||
<path style="display: {{ segs[ 6 ][ 6 ] ? 'block' : 'none' }}" d="m 3856.556,972.97 62.823,-58.584 h 175.01 l 54.63,58.584 -28.981,27.025 h -238.28 z" />
|
||||
<path style="display: {{ segs[ 7 ][ 0 ] ? 'block' : 'none' }}" d="m 4364.156,250 h 249.23 l 25.301,27.132 -63.059,58.803 h -185.74 l -54.835,-58.803 z" />
|
||||
<path style="display: {{ segs[ 7 ][ 1 ] ? 'block' : 'none' }}" d="m 4306.056,304.19 56.623,60.721 -12.688,181.45 -56.187,52.395 -28.894,-30.985 16.847,-240.92 z" />
|
||||
<path style="display: {{ segs[ 7 ][ 2 ] ? 'block' : 'none' }}" d="m 4581.956,541.87 11.794,-168.66 71.973,-67.116 14.52,15.571 -17.838,255.1 -25.626,23.897 z" />
|
||||
<path style="display: {{ segs[ 7 ][ 3 ] ? 'block' : 'none' }}" d="m 4369.056,582.74 h 196.76 l 41.941,44.976 -44.038,40.959 h -204.7 l -38.195,-40.959 z" />
|
||||
<path style="display: {{ segs[ 7 ][ 4 ] ? 'block' : 'none' }}" d="m 4291.756,654.81 47.117,50.526 -12.949,185.18 -57.141,53.285 -28.064,-30.095 15.807,-226.05 z" />
|
||||
<path style="display: {{ segs[ 7 ][ 5 ] ? 'block' : 'none' }}" d="m 4634.956,656.88 20.314,21.784 -17.355,248.19 -20.403,19.026 -59.365,-63.661 11.498,-164.43 z" />
|
||||
<path style="display: {{ segs[ 7 ][ 6 ] ? 'block' : 'none' }}" d="m 4296.056,972.97 62.823,-58.584 h 175.01 l 54.63,58.584 -28.981,27.025 h -238.28 z" >
|
||||
</svg>
|
||||
`,
|
||||
width: +config.width || +RED.nodes.getNode( config.group ).config.width,
|
||||
height: +config.height || 1,
|
||||
group: config.group,
|
||||
order: config.order,
|
||||
beforeEmit: msg => ( { msg } ),
|
||||
initController: $scope => $scope.$watch( 'msg.payload', payload => {
|
||||
const total_seconds = +payload || 0;
|
||||
let remaining_seconds = total_seconds;
|
||||
|
||||
let hours = Math.floor(remaining_seconds / 3600.0);
|
||||
remaining_seconds -= hours * 3600.0;
|
||||
let minutes = Math.floor(remaining_seconds / 60.0);
|
||||
remaining_seconds -= minutes * 60.0;
|
||||
let seconds = remaining_seconds;
|
||||
|
||||
let s = hours.toString().padStart( 4, ' ' );
|
||||
s += minutes.toString().padStart( 2, '0' );
|
||||
s += seconds.toString().padStart( 2, '0' );
|
||||
s += !( seconds % 2 ) ? ':' : ' ';
|
||||
s += !( seconds % 2 ) ? ':' : ' ';
|
||||
|
||||
$scope.segs = [];
|
||||
|
||||
for( const c of s ) {
|
||||
$scope.segs.push( {
|
||||
'0': [ true, true, true, false, true, true, true ],
|
||||
'1': [ false, false, true, false, false, true, false ],
|
||||
'2': [ true, false, true, true, true, false, true ],
|
||||
'3': [ true, false, true, true, false, true, true ],
|
||||
'4': [ false, true, true, true, false, true, false ],
|
||||
'5': [ true, true, false, true, false, true, true ],
|
||||
'6': [ true, true, false, true, true, true, true ],
|
||||
'7': [ true, false, true, false, false, true, false ],
|
||||
'8': [ true, true, true, true, true, true, true ],
|
||||
'9': [ true, true, true, true, false, true, true ],
|
||||
' ': [ false, false, false, false, false, false, false ],
|
||||
':': [ true ]
|
||||
}[ c ] );
|
||||
}
|
||||
} )
|
||||
} ) );
|
||||
}
|
||||
} );
|
||||
};
|
||||
48
clock.svg.bak
Normal file
48
clock.svg.bak
Normal file
@@ -0,0 +1,48 @@
|
||||
<svg version="1.1" viewBox="0 0 3508.2 1000" xmlns="http://www.w3.org/2000/svg">
|
||||
<path style="display: block" d="m164.59 8e-5h332.31l33.735 36.176-84.078 78.404h-247.65l-73.113-78.404z" />
|
||||
<path style="display: block" d="m87.115 72.249 75.498 80.961-16.917 241.93-74.915 69.86-38.525-41.313 22.462-321.23z" />
|
||||
<path style="display: block" d="m454.96 389.16 15.725-224.88 95.964-89.488 19.36 20.761-23.784 340.13-34.168 31.863z" />
|
||||
<path style="display: block" d="m171.1 443.65h262.35l55.921 59.968-58.717 54.612h-272.94l-50.926-54.612z" />
|
||||
<path style="display: block" d="m68.05 539.75 62.822 67.368-17.266 246.91-76.188 71.046-37.419-40.127 21.076-301.4z" />
|
||||
<path style="display: block" d="m525.64 542.51 27.085 29.045-23.14 330.91-27.204 25.368-79.153-84.881 15.331-219.24z" />
|
||||
<path style="display: block" d="m73.685 963.97 83.764-78.112h233.35l72.84 78.112-38.641 36.033h-317.71z" />
|
||||
<path style="display: block" d="m750.6 7.6241e-5h332.31l33.734 36.176-84.078 78.404h-247.65l-73.113-78.404z" />
|
||||
<path style="display: block" d="m673.13 72.249 75.498 80.961-16.917 241.93-74.915 69.86-38.525-41.313 22.462-321.23z" />
|
||||
<path style="display: block" d="m1041 389.16 15.725-224.88 95.964-89.488 19.36 20.761-23.784 340.13-34.168 31.863z" />
|
||||
<path style="display: block" d="m757.11 443.65h262.35l55.921 59.968-58.717 54.612h-272.94l-50.926-54.612z" />
|
||||
<path style="display: block" d="m654.06 539.75 62.822 67.368-17.266 246.91-76.188 71.046-37.419-40.127 21.076-301.4z" />
|
||||
<path style="display: block" d="m1111.7 542.51 27.085 29.045-23.14 330.91-27.204 25.368-79.153-84.881 15.331-219.24z" />
|
||||
<path style="display: block" d="m659.7 963.97 83.764-78.112h233.35l72.84 78.112-38.641 36.033h-317.71z" />
|
||||
<path style="display: block" d="m1219.6 558.11h51.994l26.941 58.193-34.923 55.952h-51.994l-25.991-56.215z" />
|
||||
<path style="display: block" d="m1235.6 329.36h51.994l26.941 58.193-34.923 55.952h-51.994l-25.99-56.215z" />
|
||||
<path style="display: block" d="m1494.3 0h332.31l33.735 36.176-84.078 78.404h-247.65l-73.113-78.404z" />
|
||||
<path style="display: block" d="m1416.8 72.249 75.498 80.961-16.917 241.93-74.916 69.86-38.525-41.313 22.462-321.23z" />
|
||||
<path style="display: block" d="m1784.6 389.16 15.725-224.88 95.964-89.488 19.36 20.761-23.784 340.13-34.168 31.863z" />
|
||||
<path style="display: block" d="m1500.8 443.65h262.35l55.921 59.968-58.717 54.612h-272.94l-50.926-54.612z" />
|
||||
<path style="display: block" d="m1397.7 539.75 62.822 67.368-17.266 246.91-76.188 71.046-37.419-40.127 21.076-301.4z" />
|
||||
<path style="display: block" d="m1855.3 542.51 27.085 29.045-23.14 330.91-27.204 25.368-79.153-84.881 15.331-219.24z" />
|
||||
<path style="display: block" d="m1403.4 963.97 83.764-78.112h233.35l72.84 78.112-38.641 36.033h-317.71z" />
|
||||
<path style="display: block" d="m2080.3 0h332.31l33.735 36.176-84.078 78.404h-247.65l-73.113-78.404z" />
|
||||
<path style="display: block" d="m2002.8 72.249 75.498 80.961-16.917 241.93-74.916 69.86-38.525-41.313 22.462-321.23z" />
|
||||
<path style="display: block" d="m2370.7 389.16 15.725-224.88 95.964-89.488 19.36 20.761-23.784 340.13-34.168 31.863z" />
|
||||
<path style="display: block" d="m2086.8 443.65h262.35l55.921 59.968-58.717 54.612h-272.94l-50.926-54.612z" />
|
||||
<path style="display: block" d="m1983.7 539.75 62.822 67.368-17.266 246.91-76.188 71.046-37.419-40.127 21.076-301.4z" />
|
||||
<path style="display: block" d="m2441.3 542.51 27.085 29.045-23.14 330.91-27.204 25.368-79.153-84.881 15.331-219.24z" />
|
||||
<path style="display: block" d="m1989.4 963.97 83.764-78.112h233.35l72.84 78.112-38.641 36.033h-317.71z" />
|
||||
<path style="display: block" d="m2534.1 668.64h38.996l20.206 43.645-26.192 41.964h-38.995l-19.493-42.161z" />
|
||||
<path style="display: block" d="m2546.1 497.08h38.996l20.206 43.645-26.192 41.964h-38.996l-19.493-42.161z" />
|
||||
<path style="display: block" d="m2752.6 250h249.23l25.301 27.132-63.059 58.803h-185.74l-54.835-58.803z" />
|
||||
<path style="display: block" d="m2694.5 304.19 56.623 60.721-12.688 181.45-56.187 52.395-28.894-30.985 16.847-240.92z" />
|
||||
<path style="display: block" d="m2970.4 541.87 11.794-168.66 71.973-67.116 14.52 15.571-17.838 255.1-25.626 23.897z" />
|
||||
<path style="display: block" d="m2757.5 582.74h196.76l41.941 44.976-44.038 40.959h-204.7l-38.195-40.959z" />
|
||||
<path style="display: block" d="m2680.2 654.81 47.117 50.526-12.949 185.18-57.141 53.285-28.064-30.095 15.807-226.05z" />
|
||||
<path style="display: block" d="m3023.4 656.88 20.314 21.784-17.355 248.19-20.403 19.026-59.365-63.661 11.498-164.43z" />
|
||||
<path style="display: block" d="m2684.5 972.97 62.823-58.584h175.01l54.63 58.584-28.981 27.025h-238.28z" />
|
||||
<path style="display: block" d="m3192.1 250h249.23l25.301 27.132-63.059 58.803h-185.74l-54.835-58.803z" />
|
||||
<path style="display: block" d="m3134 304.19 56.623 60.721-12.688 181.45-56.187 52.395-28.894-30.985 16.847-240.92z" />
|
||||
<path style="display: block" d="m3409.9 541.87 11.794-168.66 71.973-67.116 14.52 15.571-17.838 255.1-25.626 23.897z" />
|
||||
<path style="display: block" d="m3197 582.74h196.76l41.941 44.976-44.038 40.959h-204.7l-38.195-40.959z" />
|
||||
<path style="display: block" d="m3119.7 654.81 47.117 50.526-12.949 185.18-57.141 53.285-28.064-30.095 15.807-226.05z" />
|
||||
<path style="display: block" d="m3462.9 656.88 20.314 21.784-17.355 248.19-20.403 19.026-59.365-63.661 11.498-164.43z" />
|
||||
<path style="display: block" d="m3124 972.97 62.823-58.584h175.01l54.63 58.584-28.981 27.025h-238.28z" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.4 KiB |
BIN
digital-clock.png
Normal file
BIN
digital-clock.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.8 KiB |
BIN
example.png
Normal file
BIN
example.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.1 KiB |
37
package.json
Normal file
37
package.json
Normal file
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"name": "node-red-contrib-ui-microwave-clock",
|
||||
"description": "A microwave-style digital timer for the Node-RED Dashboard.",
|
||||
"keywords": [
|
||||
"clock",
|
||||
"dashboard",
|
||||
"node-red",
|
||||
"time",
|
||||
"ui"
|
||||
],
|
||||
"version": "1.0.1",
|
||||
"license": "MIT",
|
||||
"author": {
|
||||
"name": "Patrick Knabe",
|
||||
"email": "patrickknabe@gmail.com"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/patrickknabe/node-red-contrib-ui-digital-clock.git"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/patrickknabe/node-red-contrib-ui-digital-clock/issues"
|
||||
},
|
||||
"homepage": "https://github.com/patrickknabe/node-red-contrib-ui-digital-clock#readme",
|
||||
"peerDependencies": {
|
||||
"node-red-dashboard": ">=2.23.2"
|
||||
},
|
||||
"node-red": {
|
||||
"version": ">=2.0.0",
|
||||
"nodes": {
|
||||
"ui_digital_clock": "clock.js"
|
||||
}
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.0.0"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user