initial push

This commit is contained in:
CeeWeasel
2024-04-14 14:08:56 -04:00
commit 53bf393d14
1111 changed files with 71730 additions and 0 deletions
+7
View File
@@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50">
<path d="M0 0h50v50H0z" fill="#080808"/>
<g fill="#f7f7f7">
<path d="M30.9 9.4H19.1a2.65 2.65 0 0 0-2.6 2.6v26a2.65 2.65 0 0 0 2.6 2.6H31a2.65 2.65 0 0 0 2.6-2.6V12c-.1-1.4-1.2-2.6-2.7-2.6zM32 38a1.11 1.11 0 0 1-1.1 1.1H19.1A1.11 1.11 0 0 1 18 38V12a1.11 1.11 0 0 1 1.1-1.1H21c.2 0 .4.2.4.4a1.11 1.11 0 0 0 1.1 1.1h5.2a1.11 1.11 0 0 0 1.1-1.1c0-.2.2-.4.4-.4h1.9a1.11 1.11 0 0 1 1.1 1.1v26z"/>
<path d="M30.9 40.8H19.1c-1.6 0-2.8-1.3-2.8-2.8V12c0-1.6 1.3-2.8 2.8-2.8H31c1.6 0 2.8 1.3 2.8 2.8v26c0 1.5-1.3 2.8-2.9 2.8zM19.1 9.7c-1.3 0-2.3 1.1-2.3 2.3v26c0 1.3 1.1 2.3 2.3 2.3H31c1.3 0 2.3-1.1 2.3-2.3V12c0-1.3-1.1-2.3-2.3-2.3H19.1zm11.8 29.6H19.1c-.8 0-1.4-.6-1.4-1.4V12c0-.8.6-1.4 1.4-1.4H21a.65.65 0 0 1 .6.6c0 .5.4.9.9.9h5.2c.5 0 .9-.4.9-.9a.65.65 0 0 1 .6-.6h1.9c.8 0 1.4.6 1.4 1.4v26c-.2.7-.8 1.3-1.6 1.3zM19.1 11.2c-.5 0-.9.4-.9.9V38c0 .5.4.9.9.9H31c.5 0 .9-.4.9-.9V12c0-.5-.4-.9-.9-.9h-1.9c-.1 0-.1.1-.1.1 0 .8-.6 1.4-1.4 1.4h-5.2c-.8 0-1.4-.6-1.4-1.4 0-.1-.1-.1-.1-.1h-1.8z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 104 KiB

+771
View File
@@ -0,0 +1,771 @@
/* SVG shapes */
svg,
svg * {
vector-effect: non-scaling-stroke !important;
pointer-events: all !important;
background-color: var(--primary-background-color);
max-height: calc( 100vh - 50px);
}
/* Hover over */
.entity:hover {
stroke: #FFFFFF !important;
stroke-width: 1px !important;
stroke-opacity: 1 !important;
}
/* Bootstrap succsss */
.success-text {
fill: #3c763d !important;
}
.success-background,
.success-text-background {
fill: #dff0d8 !important;
fill-opacity: 1 !important;
stroke: #d6e9c6 !important;
stroke-width: 1px !important;
}
/* Bootstrap info */
.info-text {
fill: #d4d4d4 !important;
}
.awake {
fill: #949494 !important;
}
.sleeping {
fill: #0e0e6e !important;
}
.in-bed {
fill: #504c66 !important;
}
.out-of-bed {
fill: #57565c !important;
}
.room-empty {
/*fill: #5d5b5b !important;*/
fill: #888888 !important;
}
.room-occupied {
fill: #596170 !important;
/* fill: #5d5d6f !important;*/
}
.water-dry {
fill: #81D9a7 !important;
fill-opacity: 1 !important;
}
.water-wet {
fill: #FF0000 !important;
fill-opacity: 1 !important;
}
.door-closed {
/* fill: #77FF77 !important; */
/* fill: #81c9a7 !important; */
fill: #81D9a7 !important;
fill-opacity: 1 !important;
/* stroke: #82caa8 !important;
stroke-width: 1px !important;
animation-duration: 4s;
animation-name: rotateReset90; */
}
.door-open {
fill: #FF0000 !important;
fill-opacity: 1 !important;
stroke: #FFFF00 !important;
stroke-dasharray: 10, 4 !important;
stroke-width: 2px !important;
stroke-opacity: 0.8 !important;
/* animation-duration: 4s;
animation-name: rotate90;
animation-fill-mode: forwards; */
}
.appliance-off {
/* fill: #77FF77 !important; */
/* fill: #81c9a7 !important; */
fill: #81D9a7 !important;
fill-opacity: 1 !important;
/* stroke: #82caa8 !important;
stroke-width: 1px !important;
animation-duration: 4s;
animation-name: rotateReset90; */
}
.appliance-on {
fill: #ff8800 !important;
fill-opacity: 1 !important;
/* animation-duration: 4s;
animation-name: rotate90;
animation-fill-mode: forwards; */
}
.appliance-pending {
fill: #6b0000 !important;
fill-opacity: 1 !important;
/* animation-duration: 4s;
animation-name: rotate90;
animation-fill-mode: forwards; */
}
.window-closed {
/* fill: #77FF77 !important; */
/* fill: #81c9a7 !important; */
fill: #CCCCCC !important;
fill-opacity: 1 !important;
/* stroke: #82caa8 !important;
stroke-width: 1px !important;
animation-duration: 4s;
animation-name: rotateReset90; */
}
.window-open {
fill: #FF0000 !important;
fill-opacity: 1 !important;
stroke: #FFFF00 !important;
stroke-dasharray: 10, 4 !important;
stroke-width: 2px !important;
stroke-opacity: 0.8 !important;
}
.window-unavailable {
fill: #FFFF00 !important;
fill-opacity: 1 !important;
stroke: #FF0000 !important;
stroke-dasharray: 10, 4 !important;
stroke-width: 2px !important;
stroke-opacity: 0.8 !important;
}
/*
.alarm-disarmed {
fill: #81D9a7 !important;
fill-opacity: 0.5 !important;
}
.alarm-triggered {
fill: #FF0000 !important;
fill-opacity: 1 !important;
stroke: #FFFF00 !important;
}
.alarm-armed_night {
fill: #FF8A0D; !important;
}
.alarm-armed_away {
fill: #FFCC66; !important;
}
.alarm-armed_home {
fill: #FF8A0D; !important;
}
.alarm-armed_custom_bypass {
fill: #FFCC66; !important;
}
*/
.closed-background,
.closed-text-background {
/* fill: #77FF77 !important; */
fill: #81D9a7 !important;
fill-opacity: 1 !important;
/* stroke: #82caa8 !important;
stroke-width: 1px !important; */
}
.open-background,
.open-text-background {
fill: #FF0000 !important;
fill-opacity: 1 !important;
stroke: #FFFF00 !important;
stroke-dasharray: 10, 4 !important;
stroke-width: 2px !important;
stroke-opacity: 0.8 !important;
}
.interior-closed-background,
.interior-closed-text-background {
fill: #81c9a7 !important;
fill-opacity: 1 !important;
/* stroke: #82caa8 !important;
stroke-width: 1px !important; */
}
.interior-open-background,
.interior-open-text-background {
fill: #5fd3eb !important;
fill-opacity: 1 !important;
stroke: #6fE3Fb !important;
stroke-dasharray: 4, 4 !important;
stroke-width: 1px !important;
stroke-opacity: 0.5 !important;
}
.window-closed-background,
.window-closed-text-background {
fill: #83DFF3 !important;
fill-opacity: 1 !important;
/* stroke: #82caa8 !important;
stroke-width: 1px !important; */
}
.window-open-background,
.window-open-text-background {
fill: #FF0000 !important;
fill-opacity: 1 !important;
stroke: #FFFF00 !important;
stroke-dasharray: 10, 4 !important;
stroke-width: 2px !important;
stroke-opacity: 0.8 !important;
}
.motion-background,
.motion-text-background {
fill: #81c9a7 !important;
/* fill-opacity: 1 !important; */
/* stroke: #82caa8 !important;
stroke-width: 1px !important; */
}
/* .info-background, .info-text-background { */
.info-background {
/* fill: #D2D0ED !important; */
fill: #81c9a7 !important;
/* fill-opacity: 1 !important; */
/* stroke: #82caa8 !important;
stroke-width: 1px !important; */
}
/* Bootstrap warning */
.warning-text {
fill: #8a6d3b !important;
}
.warning-background,
.warning-text-background {
fill: #FFFF00 !important;
fill-opacity: 1 !important;
stroke: #FF0000 !important;
stroke-width: 4px !important;
stroke-opacity: 0.5 !important;
}
.motion-unavailable {
/* fill: #B9CEF7 !important; */
fill: #6FAECE !important;
/* fill: #8270A2 !important; */
}
/* Bootstrap danger */
.danger-text {
fill: #a94442 !important;
}
.danger-background,
.danger-text-background {
fill: #f2dede !important;
fill-opacity: 1 !important;
stroke: #ebccd1 !important;
stroke-width: 1px !important;
}
/* Last motion entity */
.last-motion {
stroke: #808080 !important;
stroke-width: 1px !important;
stroke-opacity: 1 !important;
}
/* Alarm Panel */
.alarm-disarmed {
fill: #3c763d !important;
}
.alarm-armed {
fill: #8a6d3b !important;
}
/* Camera */
.camera-idle {
/* fill: #B9CEF7 !important; */
/* fill: #6FAECE !important; */
fill: #8270A2 !important;
}
.camera-unavailable {
fill: #B9CEF7 !important;
/* fill: #6FAECE !important; */
/* fill: #8270A2 !important; */
}
.camera-streaming {
/* fill: #B9CEF7 !important; */
fill: #6FAECE !important;
/* fill: #8270A2 !important; */
}
/* Light */
.light-unavailable {
fill: #8270A2 !important;
stroke: #FFFFFF !important;
stroke-width: 1px !important;
}
.light-off,
.light-off * {
fill: #4d4d3e !important;
}
.light-on,
.light-on * {
fill: #FFF27F !important;
stroke: #FFF27F !important;
stroke-width: 7px !important;
stroke-opacity: 0.25 !important;
}
.sun-on {
fill: #FFF27F !important;
stroke: #FFF27F !important;
stroke-width: 2px !important;
stroke-opacity: 0.25 !important;
}
.light-strip-on {
fill: #FFF27F !important;
stroke: #FFF27F !important;
stroke-width: 3px !important;
stroke-opacity: 0.25 !important;
}
.indicator-on {
fill: #FFE500 !important;
/* stroke: #FFE500 !important;
stroke-width: 20px !important;
stroke-opacity: 0.25 !important; */
}
/* Doorbell */
.doorbell-off {
/* fill: #92C0AD !important; */
fill: #4d4d3e !important;
}
.doorbell-on {
fill: #FFE500 !important;
}
/* Temperature sensor */
.temp-very-low-background {
fill: #d9edf7 !important;
fill-opacity: 1 !important;
}
.temp-below-average-background {
fill: #dcefe8 !important;
fill-opacity: 1 !important;
}
.temp-average-background {
fill: #dff0d8 !important;
fill-opacity: 1 !important;
}
.temp-very-high-background {
fill: #f2dede !important;
fill-opacity: 1 !important;
}
/* Media player */
.homehub-off {
fill: #515151 !important;
}
.homehub-paused {
fill: #518151 !important;
}
.homehub-on {
fill: #F1F1F1 !important;
}
.squeezebox-off {
fill: #8270A2 !important;
}
.squeezebox-idle {
fill: #BBBBBB !important;
}
.squeezebox-paused {
/* fill: #B9C999 !important; */
fill: #8da6c9 !important;
}
.squeezebox-on {
/* fill: #2baaa6 !important; */
/* fill: #E0E276 !important; */
/* fill: #A7B349 !important; */
/* fill: #03a9f4 !important; */
fill: #40a2cf !important;
}
.squeezebox-unknown {
fill: #A99999 !important;
}
/* People */
.car-away {
fill: #585858 !important;
visibility: hidden !important;
}
.car-home {
fill: #014421 !important;
}
.suv-away {
visibility: hidden !important;
}
.suv-home {
fill: #4b4b4b !important;
}
.tracker-away {
fill: #585858 !important;
}
.tracker-travel {
fill: #88a9b8 !important;
}
.tracker-work {
fill: #9963a6 !important;
}
.tracker-other {
fill: #6993a6 !important;
}
.tracker-home {
/* fill: #2baaa6 !important; */
/* fill: #D0D266 !important; */
/* fill: #77FF77 !important; */
fill: #40a2cf !important;
}
.hvac-heating {
fill: #5e0202
}
.hvac-fan {
fill: #6d6d02
}
.hvac-cooling {
fill: #010194
}
.hvac-idle {
fill: #8270A2
}
.fridge-low {
fill: #7777FF !important;
/* stroke-width: 2px !important; */
/* stroke-opacity: 1 !important; */
}
.fridge-medium {
fill: #81D9a7 !important;
/* stroke-width: 2px !important;
stroke-opacity: 1 !important; */
}
.fridge-high {
fill: #ff8800 !important;
/* stroke-width: 2px !important;
stroke-opacity: 1 !important; */
}
.temp-freeze {
fill: #FFFFFF !important;
text-align: right;
}
.temp-low {
fill: #6969ff !important;
text-align: right;
}
.temp-medium {
fill: #77FF77 !important;
text-align: right;
}
.temp-high {
fill: #FF7700 !important;
text-align: right;
}
.temp-hot {
fill: #FF0000 !important;
text-align: right;
}
.temp-unknown {
fill: #777777 !important;
}
.health-critical {
fill: #FF0000 !important;
}
.health-warning {
fill: #ffa500 !important;
}
.health-info {
fill: #ffff00 !important;
}
.health-good {
fill: #77FF77 !important;
}
.health-unknown {
fill: #0000FF !important;
}
.humid-low {
fill: #300330 !important;
}
.humid-med-low {
fill: #cfb837 !important;
}
.humid-medium {
fill: #77FF77 !important;
}
.humid-med-high {
fill: #C8AB37 !important;
}
.humid-high {
fill: #FF0000 !important;
}
.light-low {
/* fill: #000083 !important; */
fill: #1D2375 !important;
}
.light-medium-low {
fill: #A7B349 !important;
}
.light-medium {
fill: #e4ff24 !important;
}
.light-high {
fill: #FFFFFF !important;
}
.tv-on {
/* fill: #DFDFDF !important; */
fill: #B0B0D0 !important;
}
.tv-off {
fill: #505050 !important;
}
.bin-today {
fill: #FF0000 !important;
}
.bin-tomorrow {
fill: #FFFF00 !important;
}
.bin-future {
fill: #00FF00 !important;
}
.bin-false {
fill: #000000 !important;
}
.bags-five {
fill: #00FF00 !important;
}
.bags-four {
fill: #33CC00 !important;
}
.bags-three {
fill: #669900 !important;
}
.bags-two {
fill: #996600 !important;
}
.bags-one {
fill: #CC3300 !important;
}
.bags-zero {
fill: #FF0000 !important;
}
.visible-entity {
display: initial !important;
}
.hidden-entity {
display: none !important;
}
.hidden {
visibility: hidden !important;
}
.transparent {
fill-opacity: 0.5 !important;
}
.visible {
visibility: visible !important;
}
/* Spinning fan */
.spinning-fan {
animation-name: fan-spin;
animation-duration: 5s;
animation-iteration-count: infinite;
animation-timing-function: linear;
transform-origin: center;
transform-box: fill-box;
}
.spinning-fan-low {
animation-name: fan-spin;
animation-duration: 5s;
animation-iteration-count: infinite;
animation-timing-function: linear;
transform-origin: center;
transform-box: fill-box;
}
.spinning-fan-med {
animation-name: fan-spin;
animation-duration: 3s;
animation-iteration-count: infinite;
animation-timing-function: linear;
transform-origin: center;
transform-box: fill-box;
}
.spinning-fan-high {
animation-name: fan-spin;
animation-duration: 1s;
animation-iteration-count: infinite;
animation-timing-function: linear;
transform-origin: center;
transform-box: fill-box;
}
@keyframes fan-spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
.cam14-preset-1 {
/* transform-origin: 932.77301, 516.55847; */
transform: rotate(-162.13251deg);
/* transform: rotate(-162.13251, 932.77301, 516.55847); */
}
.cam14-preset-2 {
/* transform: rotate(-52.13251, 937.18866, 521.48235); */
transform: rotate(-52.13251deg);
}
.cam14-preset-3 {
/* transform: rotate(12.86749, 911.65468, 493.00954); */
transform: rotate(12.86749deg);
}
.cam14-preset-4 {
/* transform: rotate(57.86749, 928.17232, 511.42827); */
transform: rotate(57.86749deg);
}
.cam14-preset-5 {
/* transform: rotate(-127.13251, 933.56844, 517.44545); */
transform: rotate(-127.13251deg);
}
.cam14-preset-6 {
/* transform: rotate(-107.13251, 934.13244, 518.07436); */
transform: rotate(-107.13251deg);
}
.cam14-preset-7 {
/* transform: rotate(-12.13251, 954.42304, 540.7003); */
transform: rotate(-12.13251deg);
}
+86
View File
@@ -0,0 +1,86 @@
/* SVG size */
#floorplan {
padding: 10px;
}
#floorplan > svg {
min-width: 100%;
}
/* SVG elements */
svg * {
vector-effect: non-scaling-stroke !important;
}
/* Hover over */
.floorplan-shape:hover,
g.floorplan-hover > :not(text):hover,
g.floorplan-click > :not(text):hover,
g.floorplan-long-click > :not(text):hover,
:not(text).floorplan-hover:hover,
:not(text).floorplan-click:hover,
:not(text).floorplan-long-click:hover {
stroke: #03a9f4 !important;
stroke-width: 1px !important;
stroke-opacity: 1 !important;
}
/* Animation */
.spinning {
animation-name: spin;
animation-duration: 5s;
animation-iteration-count: infinite;
animation-timing-function: linear;
transform-origin: 50% 50%;
transform-box: fill-box;
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
/* Binary sensors */
.binary-sensor-on {
fill: #f9d27c !important;
}
.binary-sensor-off {
fill: #7cb1f9 !important;
transition: fill 5s ease;
}
/* Lights */
.light-on {
fill: #f9d27c !important;
}
.light-off {
fill: #7cb1f9 !important;
transition: fill 5s ease;
}
/* Buttons */
.button-on rect {
fill: #1aba92 !important;
}
.button-off rect {
fill: #d32f2f !important;
}
.button-on tspan,
.button-off tspan {
fill: white !important;
}
+121
View File
@@ -0,0 +1,121 @@
/* SVG size */
#floorplan {
padding: 10px;
}
#floorplan > svg {
min-width: 100%;
}
/* SVG elements */
svg * {
vector-effect: non-scaling-stroke !important;
}
/* Hover over */
.floorplan-shape:hover,
g.floorplan-hover > :not(text):hover,
g.floorplan-click > :not(text):hover,
g.floorplan-long-click > :not(text):hover,
:not(text).floorplan-hover:hover,
:not(text).floorplan-click:hover,
:not(text).floorplan-long-click:hover {
stroke: #03a9f4 !important;
stroke-width: 1px !important;
stroke-opacity: 1 !important;
}
/* Animation */
.spinning {
animation-name: spin;
animation-duration: 5s;
animation-iteration-count: infinite;
animation-timing-function: linear;
transform-origin: 50% 50%;
transform-box: fill-box;
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
/* Binary sensors */
.binary-sensor-on {
fill: #f9d27c !important;
}
.binary-sensor-off {
fill: #7cb1f9 !important;
transition: fill 5s ease;
}
/* Lights */
.light-on {
fill: #f9d27c !important;
}
.light-off {
fill: #7cb1f9 !important;
transition: fill 5s ease;
}
/* Buttons */
.button-on rect {
fill: #1aba92 !important;
}
.button-off rect {
fill: #d32f2f !important;
}
.button-on tspan,
.button-off tspan {
fill: white !important;
}
.cam14-preset-1 {
transform: rotate(-162.13251,932.77301,516.55847);
transition: fill 5s ease;
}
.cam14-preset-2 {
transform: rotate(-52.13251,937.18866,521.48235);
transition: fill 5s ease;
}
.cam14-preset-3 {
transform: rotate(12.86749,911.65468,493.00954);
transition: fill 5s ease;
}
.cam14-preset-4 {
transform: rotate(57.86749,928.17232,511.42827);
transition: fill 5s ease;
}
.cam14-preset-5 {
transform: rotate(-127.13251, 933.56844, 517.44545);
transition: fill 5s ease;
}
.cam14-preset-6 {
transform: rotate(-107.13251,934.13244,518.07436);
transition: none;
}
.cam14-preset-7 {
transform: rotate(-12.13251,954.42304,540.7003);
transition: none;
}
File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 495 KiB

+196
View File
@@ -0,0 +1,196 @@
<script src="./lib/jquery-3.4.1.min.js"></script>
<script src="./lib/yaml.min.js"></script>
<dom-module id="ha-floorplan">
<template>
<style>
#floorplan {
width: 100%;
height: 100%;
}
.loading-container {
text-align: center;
padding: 8px;
}
.loading {
height: 0px;
overflow: hidden;
}
#log {
max-height: 150px;
overflow: auto;
background-color: #eee;
display: none;
padding: 10px;
}
#log ul {
list-style-type: none;
padding-left: 0px;
}
.error {
color: #FF0000;
}
.warning {
color: #FF851B;
}
.info {
color: #0000FF;
}
.debug {
color: #000000;
}
</style>
<template is='dom-if' if='[[isLoading]]'>
<div class='loading-container'>
<paper-spinner-lite active alt='Loading'></paper-spinner>
</div>
</template>
<div id="log">
<a href="#" onclick="$(this).siblings('ul').html('').parent().css('display', 'none');">Clear log</a>
<ul></ul>
</div>
<div id="floorplan" on-tap="stopPropagation"></div>
</template>
</dom-module>
<script>
class HaFloorplan extends Polymer.Element {
static get is() { return 'ha-floorplan'; }
static get properties() {
return {
hass: {
type: Object,
observer: 'hassChanged'
},
inDialog: {
type: Boolean,
value: false,
},
isPanel: {
type: Boolean,
value: false,
},
config: {
type: Object,
},
isLoading: {
type: Boolean,
value: true,
},
flooplan: {
type: Object,
value: undefined,
},
};
}
connectedCallback() {
super.connectedCallback();
if (!this.floorplan) {
this.initFloorplan();
}
}
stopPropagation(e) {
e.stopPropagation();
}
initFloorplan() {
this.loadScript('/local/floorplan/lib/floorplan.js')
.then(() => {
this.floorplan = new Floorplan();
let options = {
root: this.root,
hass: this.hass,
openMoreInfo: this.openMoreInfo.bind(this),
setIsLoading: this.setIsLoading.bind(this),
config: (this.config && this.config.config) || this.config,
};
this.floorplan.init(options)
.then(() => {
this.setIsLoading(false);
});
})
.catch((error) => {
this.setIsLoading(false);
this.logError(error);
});
}
hassChanged(newHass, oldHass) {
if (this.floorplan) {
this.floorplan.hassChanged(newHass, oldHass);
}
}
loadScript(scriptUrl) {
return new Promise((resolve, reject) => {
let script = document.createElement('script');
script.src = this.cacheBuster(scriptUrl);
script.onload = () => {
return resolve();
};
script.onerror = (err) => {
reject(new URIError(`${err.target.src}`));
};
this.root.appendChild(script);
});
}
openMoreInfo(entityId) {
this.fire('hass-more-info', { entityId: entityId });
}
setIsLoading(isLoading) {
this.isLoading = isLoading;
}
cacheBuster(url) {
return `${url}${(url.indexOf('?') >= 0) ? '&' : '?'}_=${new Date().getTime()}`;
}
logError(message) {
console.error(message);
let log = this.root.log;
$(log).find('ul').prepend(`<li class="error">${message}</li>`)
$(log).css('display', 'block');
}
fire(type, detail, options) {
options = options || {};
detail = (detail === null || detail === undefined) ? {} : detail;
const event = new Event(type, {
bubbles: options.bubbles === undefined ? true : options.bubbles,
cancelable: Boolean(options.cancelable),
composed: options.composed === undefined ? true : options.composed
});
event.detail = detail;
const node = options.node || this;
node.dispatchEvent(event);
return event;
}
}
customElements.define(HaFloorplan.is, HaFloorplan);
</script>
+442
View File
@@ -0,0 +1,442 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="15694.947"
height="4961.7114"
viewBox="0 0 4152.6215 1312.7862"
version="1.1"
id="svg1491"
sodipodi:docname="sensor_templates.svg"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)">
<defs
id="defs1485" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.061871843"
inkscape:cx="8101.3787"
inkscape:cy="3508.512"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
units="px"
inkscape:window-width="1920"
inkscape:window-height="1017"
inkscape:window-x="1912"
inkscape:window-y="-8"
inkscape:window-maximized="1" />
<metadata
id="metadata1488">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(2101.1594,-61.841107)">
<g
inkscape:label="sensor.X_humidity"
id="sensor.X_humidity"
transform="matrix(0.58355087,0,0,0.58273822,-251.65562,605.45866)">
<g
inkscape:label="#g4989"
transform="matrix(50.06616,0,0,50.06616,-1168.4732,-395.29696)"
id="sensor.office_multi_relative_humidity-icon-4-8-15"
style="overflow:visible;fill:#81c9a7;fill-opacity:1;stroke:none">
<svg
style="fill:#81c9a7;fill-opacity:1;stroke:none"
width="24"
height="24"
version="1.1"
id="svg4977-6-7-8">
<path
style="fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.46297741;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature="0"
d="m 17.509973,5.355892 c 0,0 -4.588674,5.162259 -4.588674,8.221375 0,2.539067 2.057256,4.588675 4.588674,4.588675 a 4.5886747,4.5886747 0 0 0 4.588675,-4.588675 c 0,-3.059116 -4.588675,-8.221375 -4.588675,-8.221375 m 1.889004,5.139315 0.810666,0.810666 -4.588674,4.588675 -0.810666,-0.810666 m 0.978918,-4.565731 a 0.9559739,0.9559739 0 0 1 0.955973,0.955974 0.9559739,0.9559739 0 0 1 -0.955973,0.955974 0.9559739,0.9559739 0 0 1 -0.955974,-0.955974 0.9559739,0.9559739 0 0 1 0.955974,-0.955974 m 3.441505,3.441506 a 0.9559739,0.9559739 0 0 1 0.955974,0.955974 0.9559739,0.9559739 0 0 1 -0.955974,0.955974 0.9559739,0.9559739 0 0 1 -0.955974,-0.955974 0.9559739,0.9559739 0 0 1 0.955974,-0.955974 z"
id="path4975-8-0-9" />
</svg>
</g>
<text
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:407.98748779px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#d4d4d4;fill-opacity:1;stroke:none;stroke-width:4.43832636;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
transform="scale(0.86327637,1.1583776)"
inkscape:label="sensor.X_humidity_text"
id="sensor.X_humidity_text"
y="296.85431"
x="105.27054"
xml:space="preserve"><tspan
y="296.85431"
x="105.27054"
id="tspan2162"
sodipodi:role="line">---------</tspan></text>
</g>
<g
inkscape:label="sensor.X_temperature"
id="g6298"
transform="matrix(0.58355087,0,0,0.58273822,-251.65562,573.57948)">
<text
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:407.98748779px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#d4d4d4;fill-opacity:1;stroke-width:25.15302658"
transform="scale(0.86327637,1.1583776)"
inkscape:label="sensor.X_temperature_text"
id="sensor.X_temperature_text"
y="-351.47803"
x="105.27054"
xml:space="preserve"><tspan
y="-351.47803"
x="105.27054"
id="tspan2175"
sodipodi:role="line">---------</tspan></text>
<g
style="fill:none;fill-opacity:1;stroke:#81c9a7;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
transform="matrix(9.0137599,0,0,8.5850842,-724.75593,-984.7749)"
id="g5559-4">
<g
style="fill:none;fill-opacity:1;stroke:#81c9a7;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g5535-9">
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49.187"
y1="25.355"
x2="52.067001"
y2="25.355"
id="line5521-0" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="30.914"
x2="51.879002"
y2="30.914"
id="line5523-5" />
<path
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature="0"
stroke-miterlimit="10"
d="M 53.194,62.89 V 18.822 c 0,-2.84 -2.324,-5.163 -5.163,-5.163 -2.84,0 -5.163,2.324 -5.163,5.163 V 62.89 c -4.086,1.938 -6.919,6.088 -6.919,10.911 0,6.673 5.409,12.082 12.082,12.082 6.673,0 12.082,-5.409 12.082,-12.082 0,-4.823 -2.833,-8.973 -6.919,-10.911 z"
id="path5525-3" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="36.473999"
x2="51.879002"
y2="36.473999"
id="line5527-1" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="42.034"
x2="51.879002"
y2="42.034"
id="line5529-2" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="47.592999"
x2="51.879002"
y2="47.592999"
id="line5531-1" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="53.153"
x2="51.879002"
y2="53.153"
id="line5533-0" />
</g>
</g>
</g>
<g
id="sensor.X_light_level"
transform="matrix(0.58355087,0,0,0.58273822,-251.65562,573.57948)"
inkscape:label="sensor.X_light_level">
<g
inkscape:label="#g5005"
transform="matrix(50.075793,0,0,50.081369,-1162.091,436.63493)"
id="sensor.office_multi_luminance-icon"
style="overflow:visible;fill:#81c9a7;fill-opacity:1;stroke:none">
<svg
style="fill:#81c9a7;fill-opacity:1;stroke:none"
width="24"
height="24"
version="1.1"
id="svg4993">
<path
style="opacity:0.95999995;fill:#d4d4d4;fill-opacity:1;stroke:none;stroke-width:0.15125379;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature="0"
d="m 14.52377,6.2493652 c -1.101538,0.7076923 -1.846153,1.9569236 -1.846153,3.3846156 0,1.4276942 0.744615,2.6769242 1.864615,3.3846172 -1.88923,0 -3.403077,-1.513847 -3.403077,-3.3846172 A 3.3846155,3.3846155 0 0 1 14.52377,6.2493652 m 7.12,0.9230773 0.88,0.8800003 -9.581538,9.5815392 -0.88,-0.88 9.581538,-9.5815395 m -3.803077,1.4953843 -0.910769,-0.572307 -0.886154,0.615384 0.258462,-1.0461543 -0.855385,-0.652307 1.076923,-0.07385 0.356923,-1.0153851 0.412308,1.0030771 1.064615,0.01846 -0.830769,0.695385 0.313846,1.0276923 m -2.030769,2.2215452 -0.713846,-0.449231 -0.689231,0.48 0.209231,-0.812308 -0.670769,-0.5107702 0.836923,-0.05538 0.276923,-0.793846 0.313846,0.781539 0.836923,0.01846 -0.646154,0.5353862 0.246154,0.806154 m 5.790769,2.436923 a 3.3846155,3.3846155 0 0 1 -3.384616,3.384615 c -0.750768,0 -1.446153,-0.246153 -2.006153,-0.658461 l 4.732307,-4.732308 c 0.412308,0.56 0.658462,1.255385 0.658462,2.006154 m -2.707692,4.049227 1.704615,-0.707693 -0.147693,2.061539 -1.556922,-1.353846 m 2.664615,-1.661539 0.707692,-1.704615 1.353846,1.563077 -2.061538,0.141538 m 0.707692,-3.052307 -0.701538,-1.71077 2.055384,0.147693 -1.353846,1.563077 m -6.430768,4.006153 1.704614,0.707693 -1.556922,1.347692 z"
id="path4991" />
</svg>
</g>
<text
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:407.98748779px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#d4d4d4;fill-opacity:1;stroke:none;stroke-width:4.50459766;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
transform="scale(0.86327637,1.1583776)"
inkscape:label="sensor.X_light_level_text"
id="sensor.X_light_level_text"
y="1039.6392"
x="105.27054"
xml:space="preserve"><tspan
y="1039.6392"
x="105.27054"
id="tspan2188"
sodipodi:role="line">---------</tspan></text>
</g>
<g
inkscape:label="sensor.X_humidity"
id="sensor.X_humidity-1"
transform="matrix(0.58355088,0,0,0.58273822,1172.1954,605.45862)">
<g
inkscape:label="#g4989"
transform="matrix(50.06616,0,0,50.06616,-1168.4732,-395.29696)"
id="sensor.office_multi_relative_humidity-icon-4-8-15-2"
style="overflow:visible;fill:#81c9a7;fill-opacity:1;stroke:none">
<svg
style="fill:#81c9a7;fill-opacity:1;stroke:none"
width="24"
height="24"
version="1.1"
id="svg4977-6-7-8-6">
<path
style="fill:#bebebe;fill-opacity:1;stroke:none;stroke-width:0.46297741;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature="0"
d="m 17.509973,5.355892 c 0,0 -4.588674,5.162259 -4.588674,8.221375 0,2.539067 2.057256,4.588675 4.588674,4.588675 a 4.5886747,4.5886747 0 0 0 4.588675,-4.588675 c 0,-3.059116 -4.588675,-8.221375 -4.588675,-8.221375 m 1.889004,5.139315 0.810666,0.810666 -4.588674,4.588675 -0.810666,-0.810666 m 0.978918,-4.565731 a 0.9559739,0.9559739 0 0 1 0.955973,0.955974 0.9559739,0.9559739 0 0 1 -0.955973,0.955974 0.9559739,0.9559739 0 0 1 -0.955974,-0.955974 0.9559739,0.9559739 0 0 1 0.955974,-0.955974 m 3.441505,3.441506 a 0.9559739,0.9559739 0 0 1 0.955974,0.955974 0.9559739,0.9559739 0 0 1 -0.955974,0.955974 0.9559739,0.9559739 0 0 1 -0.955974,-0.955974 0.9559739,0.9559739 0 0 1 0.955974,-0.955974 z"
id="path4975-8-0-9-1" />
</svg>
</g>
<text
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:407.98748779px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#d4d4d4;fill-opacity:1;stroke:none;stroke-width:4.43832636;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
transform="scale(0.86327637,1.1583776)"
inkscape:label="sensor.X_humidity_text"
id="sensor.X_humidity_text-2"
y="296.85431"
x="105.27054"
xml:space="preserve"><tspan
y="296.85431"
x="105.27054"
id="tspan2162-2"
sodipodi:role="line">---------</tspan></text>
</g>
<g
inkscape:label="sensor.X_temperature"
id="g6298-4"
transform="matrix(0.58355088,0,0,0.58273822,1172.1954,573.57948)">
<text
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:407.98748779px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#d4d4d4;fill-opacity:1;stroke-width:25.15302658"
transform="scale(0.86327637,1.1583776)"
inkscape:label="sensor.X_temperature_text"
id="sensor.X_temperature_text-4"
y="-351.47803"
x="105.27054"
xml:space="preserve"><tspan
y="-351.47803"
x="105.27054"
id="tspan2175-4"
sodipodi:role="line">---------</tspan></text>
<g
style="fill:none;fill-opacity:1;stroke:#81c9a7;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
transform="matrix(9.0137599,0,0,8.5850842,-724.75593,-984.7749)"
id="g5559-4-6">
<g
style="fill:none;fill-opacity:1;stroke:#81c9a7;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g5535-9-6">
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49.187"
y1="25.355"
x2="52.067001"
y2="25.355"
id="line5521-0-8" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="30.914"
x2="51.879002"
y2="30.914"
id="line5523-5-5" />
<path
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature="0"
stroke-miterlimit="10"
d="M 53.194,62.89 V 18.822 c 0,-2.84 -2.324,-5.163 -5.163,-5.163 -2.84,0 -5.163,2.324 -5.163,5.163 V 62.89 c -4.086,1.938 -6.919,6.088 -6.919,10.911 0,6.673 5.409,12.082 12.082,12.082 6.673,0 12.082,-5.409 12.082,-12.082 0,-4.823 -2.833,-8.973 -6.919,-10.911 z"
id="path5525-3-7" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="36.473999"
x2="51.879002"
y2="36.473999"
id="line5527-1-6" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="42.034"
x2="51.879002"
y2="42.034"
id="line5529-2-6" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="47.592999"
x2="51.879002"
y2="47.592999"
id="line5531-1-1" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="53.153"
x2="51.879002"
y2="53.153"
id="line5533-0-3" />
</g>
</g>
</g>
<g
inkscape:label="sensor.X_temperature"
id="g6298-5"
transform="matrix(0.58355088,0,0,0.58273822,-1748.526,573.57948)">
<text
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:407.98748779px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#d4d4d4;fill-opacity:1;stroke-width:25.15302658"
transform="scale(0.86327637,1.1583776)"
inkscape:label="sensor.X_temperature_text"
id="sensor.X_temperature_text-8"
y="-351.47803"
x="105.27054"
xml:space="preserve"><tspan
y="-351.47803"
x="105.27054"
id="tspan2175-8"
sodipodi:role="line">---------</tspan></text>
<g
style="fill:none;fill-opacity:1;stroke:#81c9a7;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
transform="matrix(9.0137599,0,0,8.5850842,-724.75593,-984.7749)"
id="g5559-4-9">
<g
style="fill:none;fill-opacity:1;stroke:#81c9a7;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g5535-9-4">
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49.187"
y1="25.355"
x2="52.067001"
y2="25.355"
id="line5521-0-0" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="30.914"
x2="51.879002"
y2="30.914"
id="line5523-5-59" />
<path
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature="0"
stroke-miterlimit="10"
d="M 53.194,62.89 V 18.822 c 0,-2.84 -2.324,-5.163 -5.163,-5.163 -2.84,0 -5.163,2.324 -5.163,5.163 V 62.89 c -4.086,1.938 -6.919,6.088 -6.919,10.911 0,6.673 5.409,12.082 12.082,12.082 6.673,0 12.082,-5.409 12.082,-12.082 0,-4.823 -2.833,-8.973 -6.919,-10.911 z"
id="path5525-3-9" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="36.473999"
x2="51.879002"
y2="36.473999"
id="line5527-1-3" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="42.034"
x2="51.879002"
y2="42.034"
id="line5529-2-4" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="47.592999"
x2="51.879002"
y2="47.592999"
id="line5531-1-3" />
<line
style="fill:none;fill-opacity:1;stroke:#d4d4d4;stroke-width:2.48115039;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
stroke-miterlimit="10"
x1="49"
y1="53.153"
x2="51.879002"
y2="53.153"
id="line5533-0-0" />
</g>
</g>
</g>
<g
id="sensor.X_light_level-6"
transform="matrix(0.58355088,0,0,0.58273822,-1748.526,104.05593)"
inkscape:label="sensor.X_light_level">
<g
inkscape:label="#g5005"
transform="matrix(50.075793,0,0,50.081369,-1162.091,436.63493)"
id="sensor.office_multi_luminance-icon-3"
style="overflow:visible;fill:#81c9a7;fill-opacity:1;stroke:none">
<svg
style="fill:#81c9a7;fill-opacity:1;stroke:none"
width="24"
height="24"
version="1.1"
id="svg4993-7">
<path
style="opacity:0.95999995;fill:#d4d4d4;fill-opacity:1;stroke:none;stroke-width:0.15125379;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature="0"
d="m 14.52377,6.2493652 c -1.101538,0.7076923 -1.846153,1.9569236 -1.846153,3.3846156 0,1.4276942 0.744615,2.6769242 1.864615,3.3846172 -1.88923,0 -3.403077,-1.513847 -3.403077,-3.3846172 A 3.3846155,3.3846155 0 0 1 14.52377,6.2493652 m 7.12,0.9230773 0.88,0.8800003 -9.581538,9.5815392 -0.88,-0.88 9.581538,-9.5815395 m -3.803077,1.4953843 -0.910769,-0.572307 -0.886154,0.615384 0.258462,-1.0461543 -0.855385,-0.652307 1.076923,-0.07385 0.356923,-1.0153851 0.412308,1.0030771 1.064615,0.01846 -0.830769,0.695385 0.313846,1.0276923 m -2.030769,2.2215452 -0.713846,-0.449231 -0.689231,0.48 0.209231,-0.812308 -0.670769,-0.5107702 0.836923,-0.05538 0.276923,-0.793846 0.313846,0.781539 0.836923,0.01846 -0.646154,0.5353862 0.246154,0.806154 m 5.790769,2.436923 a 3.3846155,3.3846155 0 0 1 -3.384616,3.384615 c -0.750768,0 -1.446153,-0.246153 -2.006153,-0.658461 l 4.732307,-4.732308 c 0.412308,0.56 0.658462,1.255385 0.658462,2.006154 m -2.707692,4.049227 1.704615,-0.707693 -0.147693,2.061539 -1.556922,-1.353846 m 2.664615,-1.661539 0.707692,-1.704615 1.353846,1.563077 -2.061538,0.141538 m 0.707692,-3.052307 -0.701538,-1.71077 2.055384,0.147693 -1.353846,1.563077 m -6.430768,4.006153 1.704614,0.707693 -1.556922,1.347692 z"
id="path4991-5" />
</svg>
</g>
<text
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:407.98748779px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#d4d4d4;fill-opacity:1;stroke:none;stroke-width:4.50459766;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
transform="scale(0.86327637,1.1583776)"
inkscape:label="sensor.X_light_level_text"
id="sensor.X_light_level_text-9"
y="1039.6392"
x="105.27054"
xml:space="preserve"><tspan
y="1039.6392"
x="105.27054"
id="tspan2188-5"
sodipodi:role="line">---------</tspan></text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 24 KiB

+222
View File
@@ -0,0 +1,222 @@
@font-face {
font-family: sf display;
font-weight: 900;
src: url(/local/fonts/SF-UI-Display-Black.otf)
}
@font-face {
font-family: sf display;
font-weight: 700;
src: url(/local/fonts/SF-UI-Display-Bold.otf)
}
@font-face {
font-family: sf display;
font-weight: 800;
src: url(/local/fonts/SF-UI-Display-Heavy.otf)
}
@font-face {
font-family: sf display;
font-weight: 200;
src: url(/local/fonts/SF-UI-Display-Light.otf)
}
@font-face {
font-family: sf display;
font-weight: 500;
src: url(/local/fonts/SF-UI-Display-Medium.otf)
}
@font-face {
font-family: sf display;
font-weight: 400;
src: url(/local/fonts/SF-UI-Display-Regular.otf)
}
@font-face {
font-family: sf display;
font-weight: 600;
src: url(/local/fonts/SF-UI-Display-Semibold.otf)
}
@font-face {
font-family: sf display;
font-weight: 300;
src: url(/local/fonts/SF-UI-Display-Thin.otf)
}
@font-face {
font-family: sf display;
font-weight: 100;
src: url(/local/fonts/SF-UI-Display-Ultralight.otf)
}
@font-face {
font-family: sf text;
font-weight: 700;
src: url(/local/fonts/SF-UI-Text-Bold.otf)
}
@font-face {
font-family: sf text;
font-weight: 700;
font-style: italic;
src: url(/local/fonts/SF-UI-Text-BoldItalic.otf)
}
@font-face {
font-family: sf text;
font-weight: 800;
src: url(/local/fonts/SF-UI-Text-Heavy.otf)
}
@font-face {
font-family: sf text;
font-weight: 800;
font-style: italic;
src: url(/local/fonts/SF-UI-Text-HeavyItalic.otf)
}
@font-face {
font-family: sf text;
font-weight: 200;
src: url(/local/fonts/SF-UI-Text-Light.otf)
}
@font-face {
font-family: sf text;
font-weight: 200;
font-style: italic;
src: url(/local/fonts/SF-UI-Text-LightItalic.otf)
}
@font-face {
font-family: sf text;
font-weight: 500;
src: url(/local/fonts/SF-UI-Text-Medium.otf)
}
@font-face {
font-family: sf text;
font-weight: 500;
font-style: italic;
src: url(/local/fonts/SF-UI-Text-MediumItalic.otf)
}
@font-face {
font-family: sf text;
font-weight: 400;
src: url(/local/fonts/SF-UI-Text-Regular.otf)
}
@font-face {
font-family: sf text;
font-weight: 400;
font-style: italic;
src: url(/local/fonts/SF-UI-Text-RegularItalic.otf)
}
@font-face {
font-family: sf text;
font-weight: 600;
src: url(/local/fonts/SF-UI-Text-Semibold.otf)
}
@font-face {
font-family: sf text;
font-weight: 600;
font-style: italic;
src: url(/local/fonts/SF-UI-Text-SemiboldItalic.otf)
}
@font-face {
font-family: sf text;
font-weight: 100;
src: url(/local/fonts/SF-UI-Text-Ultrathin.otf)
}
@font-face {
font-family: sf text;
font-weight: 100;
font-style: italic;
src: url(/local/fonts/SF-UI-Text-UltrathinItalic.otf)
}
@font-face {
font-family: sf mono;
font-weight: 700;
src: url(/local/fonts/SFMono-Bold.otf)
}
@font-face {
font-family: sf mono;
font-weight: 700;
font-style: italic;
src: url(/local/fonts/SFMono-BoldItalic.otf)
}
@font-face {
font-family: sf mono;
font-weight: 800;
src: url(/local/fonts/SFMono-Heavy.otf)
}
@font-face {
font-family: sf mono;
font-weight: 800;
font-style: italic;
src: url(/local/fonts/SFMono-HeavyItalic.otf)
}
@font-face {
font-family: sf mono;
font-weight: 200;
src: url(/local/fonts/SFMono-Light.otf)
}
@font-face {
font-family: sf mono;
font-weight: 200;
font-style: italic;
src: url(/local/fonts/SFMono-LightItalic.otf)
}
@font-face {
font-family: sf mono;
font-weight: 500;
src: url(/local/fonts/SFMono-Medium.otf)
}
@font-face {
font-family: sf mono;
font-weight: 500;
font-style: italic;
src: url(/local/fonts/SFMono-MediumItalic.otf)
}
@font-face {
font-family: sf mono;
font-weight: 400;
src: url(/local/fonts/SFMono-Regular.otf)
}
@font-face {
font-family: sf mono;
font-weight: 400;
font-style: italic;
src: url(/local/fonts/SFMono-RegularItalic.otf)
}
@font-face {
font-family: sf mono;
font-weight: 600;
src: url(/local/fonts/SFMono-Semibold.otf)
}
@font-face {
font-family: sf mono;
font-weight: 600;
font-style: italic;
src: url(/local/fonts/SFMono-SemiboldItalic.otf)
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 MiB

BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 459 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 283 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 KiB

BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.