@operato/scene-legend 0.1.10 β 0.1.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +66 -0
- package/attachments/3c2f6007-c06b-47ca-9508-9bcda9428fd0.svg +425 -0
- package/attachments/dcf0e8fe-6c3e-4b36-b3e9-a8e70b4ed590.svg +425 -0
- package/dist/editors/editor-legend-status.js +22 -0
- package/dist/editors/editor-legend-status.js.map +1 -1
- package/dist/editors/property-editor-legend-status.js.map +1 -1
- package/dist/editors/property-editor-svg-info.d.ts +15 -0
- package/dist/editors/property-editor-svg-info.js +71 -0
- package/dist/editors/property-editor-svg-info.js.map +1 -0
- package/dist/svg.d.ts +19 -0
- package/dist/svg.js +166 -0
- package/dist/svg.js.map +1 -0
- package/dist/templates/svg.d.ts +18 -0
- package/dist/templates/svg.js +19 -0
- package/dist/templates/svg.js.map +1 -0
- package/logs/.08636eb59927f12972f6774f5947c8507b3564c2-audit.json +15 -0
- package/logs/.5e5d741d8b7784a2fbad65eedc0fd46946aaf6f2-audit.json +15 -0
- package/logs/application-2023-07-13-20.log +10 -0
- package/logs/connections-2023-07-13-20.log +80 -0
- package/logs/system/.144ddb221a51f7e2afac3fe1fc3dcf306a8de9ef-audit.json +15 -0
- package/logs/system/.437ed478d36eef33cb9dfb565b13329b4464783e-audit.json +20 -0
- package/logs/system/.a16ac19e6e222b854c699e1f94ae757f5c8db307-audit.json +15 -0
- package/logs/system/scenario-/353/260/234/354/240/204/353/237/211 /354/230/210/354/270/241 /353/215/260/354/235/264/355/204/260-2023-05-09-11.log" +16914 -0
- package/logs/system/scenario-/353/260/234/354/240/204/353/237/211 /354/230/210/354/270/241 /353/215/260/354/235/264/355/204/260-2023-05-09-12.log" +1382 -0
- package/logs/system/scenario-/354/227/220/353/204/210/354/247/200 /353/240/210/354/235/264/354/226/264 /354/203/211/354/203/201-2023-07-13-20.log" +510 -0
- package/logs/system/scenario-/354/235/274/354/202/254/353/237/211 /354/230/210/354/270/241 /354/247/200/353/217/204-2023-05-09-12.log" +30 -0
- package/package.json +5 -5
- package/src/editors/editor-legend-status.ts +19 -0
- package/tsconfig.json +1 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import '@operato/i18n/ox-i18n.js';
|
|
2
|
+
import { PropertyValues, TemplateResult } from 'lit';
|
|
3
|
+
import { OxPropertyEditor, PropertySpec } from '@operato/property-editor';
|
|
4
|
+
import { Component } from '@hatiolab/things-scene';
|
|
5
|
+
export default class SVGInfoEditor extends OxPropertyEditor {
|
|
6
|
+
static styles: import("lit").CSSResult[];
|
|
7
|
+
src?: string;
|
|
8
|
+
ids: SVGPathElement[];
|
|
9
|
+
private fillStyleSaved;
|
|
10
|
+
editorTemplate(value: any, spec: PropertySpec): TemplateResult;
|
|
11
|
+
onEnterEvent(path: SVGPathElement): void;
|
|
12
|
+
onOutEvent(path: SVGPathElement): void;
|
|
13
|
+
updated(changes: PropertyValues<this>): void;
|
|
14
|
+
fetchSourceInfo(component: Component, src: string): Promise<void>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import '@operato/i18n/ox-i18n.js';
|
|
3
|
+
import { css, html } from 'lit';
|
|
4
|
+
import { customElement, property, state } from 'lit/decorators.js';
|
|
5
|
+
import { OxPropertyEditor } from '@operato/property-editor';
|
|
6
|
+
let SVGInfoEditor = class SVGInfoEditor extends OxPropertyEditor {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.ids = [];
|
|
10
|
+
this.fillStyleSaved = [];
|
|
11
|
+
}
|
|
12
|
+
editorTemplate(value, spec) {
|
|
13
|
+
return html `
|
|
14
|
+
<fieldset fullwidth>
|
|
15
|
+
<ul info>
|
|
16
|
+
${this.ids.map(path => html `<li @mouseenter=${() => this.onEnterEvent(path)} @mouseout=${() => this.onOutEvent(path)}>
|
|
17
|
+
<div style="fillStyle:${path.style.fill}">${path.id}</div>
|
|
18
|
+
</li>`)}
|
|
19
|
+
</ul>
|
|
20
|
+
</fieldset>
|
|
21
|
+
`;
|
|
22
|
+
}
|
|
23
|
+
onEnterEvent(path) {
|
|
24
|
+
this.fillStyleSaved.push(path.style.fill);
|
|
25
|
+
path.style.fill = 'red';
|
|
26
|
+
}
|
|
27
|
+
onOutEvent(path) {
|
|
28
|
+
path.style.fill = this.fillStyleSaved.pop();
|
|
29
|
+
}
|
|
30
|
+
updated(changes) {
|
|
31
|
+
if (changes.has('src')) {
|
|
32
|
+
this.dispatchEvent(new CustomEvent('i-need-selected', {
|
|
33
|
+
bubbles: true,
|
|
34
|
+
composed: true,
|
|
35
|
+
detail: {
|
|
36
|
+
callback: (selected) => {
|
|
37
|
+
this.fetchSourceInfo(selected[0], this.src);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
async fetchSourceInfo(component, src) {
|
|
44
|
+
if (!src || !src.trim()) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const element = component.element;
|
|
48
|
+
const elements = element.querySelectorAll('path[id]');
|
|
49
|
+
this.ids = Array.from(elements).map(path => path);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
SVGInfoEditor.styles = [
|
|
53
|
+
...OxPropertyEditor.styles,
|
|
54
|
+
css `
|
|
55
|
+
ul[info] {
|
|
56
|
+
margin: 0;
|
|
57
|
+
font-size: 1em;
|
|
58
|
+
}
|
|
59
|
+
`
|
|
60
|
+
];
|
|
61
|
+
__decorate([
|
|
62
|
+
property({ type: String })
|
|
63
|
+
], SVGInfoEditor.prototype, "src", void 0);
|
|
64
|
+
__decorate([
|
|
65
|
+
state()
|
|
66
|
+
], SVGInfoEditor.prototype, "ids", void 0);
|
|
67
|
+
SVGInfoEditor = __decorate([
|
|
68
|
+
customElement('property-editor-svg-info')
|
|
69
|
+
], SVGInfoEditor);
|
|
70
|
+
export default SVGInfoEditor;
|
|
71
|
+
//# sourceMappingURL=property-editor-svg-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"property-editor-svg-info.js","sourceRoot":"","sources":["../../src/editors/property-editor-svg-info.ts"],"names":[],"mappings":";AAAA,OAAO,0BAA0B,CAAA;AAEjC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAkC,MAAM,KAAK,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,gBAAgB,EAAgB,MAAM,0BAA0B,CAAA;AAI1D,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,gBAAgB;IAA5C;;QAaJ,QAAG,GAAqB,EAAE,CAAA;QAE3B,mBAAc,GAAU,EAAE,CAAA;IAoDpC,CAAC;IAlDC,cAAc,CAAC,KAAU,EAAE,IAAkB;QAC3C,OAAO,IAAI,CAAA;;;YAGH,IAAI,CAAC,GAAG,CAAC,GAAG,CACZ,IAAI,CAAC,EAAE,CACL,IAAI,CAAA,mBAAmB,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;wCACnE,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE;oBAC/C,CACT;;;KAGN,CAAA;IACH,CAAC;IAED,YAAY,CAAC,IAAoB;QAC/B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACzC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAA;IACzB,CAAC;IAED,UAAU,CAAC,IAAoB;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAA;IAC7C,CAAC;IAED,OAAO,CAAC,OAA6B;QACnC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,iBAAiB,EAAE;gBACjC,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE;oBACN,QAAQ,EAAE,CAAC,QAAe,EAAE,EAAE;wBAC5B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAI,CAAC,CAAA;oBAC9C,CAAC;iBACF;aACF,CAAC,CACH,CAAA;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAAoB,EAAE,GAAW;QACrD,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YACxB,OAAM;QACR,CAAC;QAED,MAAM,OAAO,GAAI,SAAkC,CAAC,OAAyB,CAAA;QAE7E,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAA;QACrD,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAQ,CAAA;IAC1D,CAAC;;AAjEM,oBAAM,GAAG;IACd,GAAG,gBAAgB,CAAC,MAAM;IAC1B,GAAG,CAAA;;;;;KAKF;CACF,AARY,CAQZ;AAE2B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;0CAAa;AAE/B;IAAR,KAAK,EAAE;0CAA2B;AAbhB,aAAa;IADjC,aAAa,CAAC,0BAA0B,CAAC;GACrB,aAAa,CAmEjC;eAnEoB,aAAa","sourcesContent":["import '@operato/i18n/ox-i18n.js'\n\nimport { css, html, PropertyValues, TemplateResult } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\n\nimport { OxPropertyEditor, PropertySpec } from '@operato/property-editor'\nimport { Component, HTMLOverlayContainer } from '@hatiolab/things-scene'\n\n@customElement('property-editor-svg-info')\nexport default class SVGInfoEditor extends OxPropertyEditor {\n static styles = [\n ...OxPropertyEditor.styles,\n css`\n ul[info] {\n margin: 0;\n font-size: 1em;\n }\n `\n ]\n\n @property({ type: String }) src?: string\n\n @state() ids: SVGPathElement[] = []\n\n private fillStyleSaved: any[] = []\n\n editorTemplate(value: any, spec: PropertySpec): TemplateResult {\n return html`\n <fieldset fullwidth>\n <ul info>\n ${this.ids.map(\n path =>\n html`<li @mouseenter=${() => this.onEnterEvent(path)} @mouseout=${() => this.onOutEvent(path)}>\n <div style=\"fillStyle:${path.style.fill}\">${path.id}</div>\n </li>`\n )}\n </ul>\n </fieldset>\n `\n }\n\n onEnterEvent(path: SVGPathElement) {\n this.fillStyleSaved.push(path.style.fill)\n path.style.fill = 'red'\n }\n\n onOutEvent(path: SVGPathElement) {\n path.style.fill = this.fillStyleSaved.pop()\n }\n\n updated(changes: PropertyValues<this>) {\n if (changes.has('src')) {\n this.dispatchEvent(\n new CustomEvent('i-need-selected', {\n bubbles: true,\n composed: true,\n detail: {\n callback: (selected: any[]) => {\n this.fetchSourceInfo(selected[0], this.src!)\n }\n }\n })\n )\n }\n }\n\n async fetchSourceInfo(component: Component, src: string) {\n if (!src || !src.trim()) {\n return\n }\n\n const element = (component as HTMLOverlayContainer).element as HTMLDivElement\n\n const elements = element.querySelectorAll('path[id]')\n this.ids = Array.from(elements).map(path => path) as any\n }\n}\n"]}
|
package/dist/svg.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Component, ComponentNature, HTMLOverlayElement, Properties } from '@hatiolab/things-scene';
|
|
2
|
+
export default class Svg extends HTMLOverlayElement {
|
|
3
|
+
static get nature(): ComponentNature;
|
|
4
|
+
oncreate_element(div: HTMLDivElement): Promise<void>;
|
|
5
|
+
private _value?;
|
|
6
|
+
private _legendTarget?;
|
|
7
|
+
get legendTarget(): Component | undefined;
|
|
8
|
+
loadSVG(div: HTMLElement): Promise<void>;
|
|
9
|
+
setElementProperties(div: HTMLDivElement): Promise<void>;
|
|
10
|
+
get src(): any;
|
|
11
|
+
set src(src: any);
|
|
12
|
+
onchange(after: Properties, before: Properties): void;
|
|
13
|
+
onchangeSrc(src: string): void;
|
|
14
|
+
onchangeValue(value: any): void;
|
|
15
|
+
get tagName(): string;
|
|
16
|
+
get nature(): ComponentNature;
|
|
17
|
+
get value(): any;
|
|
18
|
+
set value(value: any);
|
|
19
|
+
}
|
package/dist/svg.js
ADDED
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Β© HatioLab Inc. All rights reserved.
|
|
3
|
+
*/
|
|
4
|
+
import { __decorate } from "tslib";
|
|
5
|
+
const NATURE = {
|
|
6
|
+
mutable: false,
|
|
7
|
+
resizable: true,
|
|
8
|
+
rotatable: true,
|
|
9
|
+
properties: [
|
|
10
|
+
{
|
|
11
|
+
type: 'image-selector',
|
|
12
|
+
label: 'image-src',
|
|
13
|
+
name: 'src',
|
|
14
|
+
property: {
|
|
15
|
+
displayField: 'id',
|
|
16
|
+
displayFullUrl: true,
|
|
17
|
+
baseUrlAlias: '$base_url',
|
|
18
|
+
defaultStorage: 'scene-image',
|
|
19
|
+
storageFilters: {
|
|
20
|
+
type: Array,
|
|
21
|
+
value: [
|
|
22
|
+
{
|
|
23
|
+
name: 'category',
|
|
24
|
+
value: 'image'
|
|
25
|
+
}
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
useUpload: true
|
|
29
|
+
},
|
|
30
|
+
observe: function (src) {
|
|
31
|
+
const info = this.parentNode.querySelector('[name=svgInfo]');
|
|
32
|
+
info.src = src;
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
type: 'svg-info',
|
|
37
|
+
label: 'svg-info',
|
|
38
|
+
name: 'svgInfo',
|
|
39
|
+
readonly: true,
|
|
40
|
+
editor: {
|
|
41
|
+
fullwidth: true
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
type: 'id-input',
|
|
46
|
+
label: 'legend-target',
|
|
47
|
+
name: 'legendTarget',
|
|
48
|
+
property: {
|
|
49
|
+
component: 'legend'
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
type: 'string',
|
|
54
|
+
label: 'id-field',
|
|
55
|
+
name: 'idField'
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
type: 'string',
|
|
59
|
+
label: 'value-field',
|
|
60
|
+
name: 'valueField'
|
|
61
|
+
}
|
|
62
|
+
]
|
|
63
|
+
};
|
|
64
|
+
import { HTMLOverlayElement, sceneComponent } from '@hatiolab/things-scene';
|
|
65
|
+
let Svg = class Svg extends HTMLOverlayElement {
|
|
66
|
+
static get nature() {
|
|
67
|
+
return NATURE;
|
|
68
|
+
}
|
|
69
|
+
async oncreate_element(div) {
|
|
70
|
+
await this.loadSVG(div);
|
|
71
|
+
}
|
|
72
|
+
get legendTarget() {
|
|
73
|
+
var { legendTarget } = this.state;
|
|
74
|
+
if (!this._legendTarget && legendTarget) {
|
|
75
|
+
this._legendTarget = this.root.findById(legendTarget);
|
|
76
|
+
this._legendTarget && this._legendTarget.on('change', this.onchangeData, this);
|
|
77
|
+
}
|
|
78
|
+
return this._legendTarget;
|
|
79
|
+
}
|
|
80
|
+
async loadSVG(div) {
|
|
81
|
+
try {
|
|
82
|
+
const parser = new DOMParser();
|
|
83
|
+
const response = await fetch(this.src);
|
|
84
|
+
div.innerHTML = '';
|
|
85
|
+
if (response.ok) {
|
|
86
|
+
const text = await response.text();
|
|
87
|
+
const doc = await parser.parseFromString(text, 'image/svg+xml');
|
|
88
|
+
const element = doc.querySelector('svg');
|
|
89
|
+
element && div.appendChild(element);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
const error = await response.text();
|
|
93
|
+
console.error('load SVG error', error);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
console.error(error);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
async setElementProperties(div) { }
|
|
101
|
+
get src() {
|
|
102
|
+
return this.getState('src');
|
|
103
|
+
}
|
|
104
|
+
set src(src) {
|
|
105
|
+
this.setState('src', src);
|
|
106
|
+
}
|
|
107
|
+
onchange(after, before) {
|
|
108
|
+
'src' in after && this.onchangeSrc(after.src);
|
|
109
|
+
'value' in after && this.onchangeValue(after.value);
|
|
110
|
+
}
|
|
111
|
+
onchangeSrc(src) {
|
|
112
|
+
this.loadSVG(this.element);
|
|
113
|
+
}
|
|
114
|
+
onchangeValue(value) {
|
|
115
|
+
if (typeof this.value !== 'object' || !Array.isArray(this.value)) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
const { idField, valueField } = this.state;
|
|
119
|
+
const legendTarget = this.legendTarget;
|
|
120
|
+
if (!legendTarget) {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
const { field: statusField, defaultColor, ranges } = legendTarget.getState('status');
|
|
124
|
+
if (!(statusField && ranges)) {
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
this.value.forEach(item => {
|
|
128
|
+
if (!(idField in item) || !(valueField in item)) {
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
var id = item[idField];
|
|
132
|
+
var status = Number(item[valueField]);
|
|
133
|
+
var range = ranges.find((range, index) => {
|
|
134
|
+
let { min: minValue, max: maxValue } = range;
|
|
135
|
+
var min = minValue !== undefined && minValue !== null && minValue !== '' ? Number(minValue) : undefined;
|
|
136
|
+
var max = maxValue !== undefined && maxValue !== null && maxValue !== '' ? Number(maxValue) : undefined;
|
|
137
|
+
// If max is not set, treat it as infinity
|
|
138
|
+
var maxCheck = max === undefined ? true : max > status;
|
|
139
|
+
var minCheck = min === undefined ? true : min <= status;
|
|
140
|
+
return maxCheck && minCheck;
|
|
141
|
+
});
|
|
142
|
+
const paths = this.element.querySelectorAll(`path[id="${String(id)}"]`);
|
|
143
|
+
paths.forEach(path => {
|
|
144
|
+
path.style.fill = (range === null || range === void 0 ? void 0 : range.color) || defaultColor || 'transparent';
|
|
145
|
+
});
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
get tagName() {
|
|
149
|
+
return 'div';
|
|
150
|
+
}
|
|
151
|
+
get nature() {
|
|
152
|
+
return NATURE;
|
|
153
|
+
}
|
|
154
|
+
get value() {
|
|
155
|
+
return this._value;
|
|
156
|
+
}
|
|
157
|
+
set value(value) {
|
|
158
|
+
this._value = value;
|
|
159
|
+
this.onchangeValue(value);
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
Svg = __decorate([
|
|
163
|
+
sceneComponent('svg')
|
|
164
|
+
], Svg);
|
|
165
|
+
export default Svg;
|
|
166
|
+
//# sourceMappingURL=svg.js.map
|
package/dist/svg.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svg.js","sourceRoot":"","sources":["../src/svg.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright Β© HatioLab Inc. All rights reserved.\n */\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'image-selector',\n label: 'image-src',\n name: 'src',\n property: {\n displayField: 'id',\n displayFullUrl: true,\n baseUrlAlias: '$base_url',\n defaultStorage: 'scene-image',\n storageFilters: {\n type: Array,\n value: [\n {\n name: 'category',\n value: 'image'\n }\n ]\n },\n useUpload: true\n },\n observe: function (this: HTMLElement, src: string) {\n const info: any = this.parentNode!.querySelector('[name=svgInfo]')\n info.src = src\n }\n },\n {\n type: 'svg-info',\n label: 'svg-info',\n name: 'svgInfo',\n readonly: true,\n editor: {\n fullwidth: true\n }\n },\n {\n type: 'id-input',\n label: 'legend-target',\n name: 'legendTarget',\n property: {\n component: 'legend'\n }\n },\n {\n type: 'string',\n label: 'id-field',\n name: 'idField'\n },\n {\n type: 'string',\n label: 'value-field',\n name: 'valueField'\n }\n ]\n}\n\nimport { Component, ComponentNature, HTMLOverlayElement, Properties, sceneComponent } from '@hatiolab/things-scene'\nimport Legend from './legend.js'\n\n@sceneComponent('svg')\nexport default class Svg extends HTMLOverlayElement {\n static get nature() {\n return NATURE\n }\n\n async oncreate_element(div: HTMLDivElement) {\n await this.loadSVG(div)\n }\n\n private _value?: any\n private _legendTarget?: Component\n\n get legendTarget() {\n var { legendTarget } = this.state\n\n if (!this._legendTarget && legendTarget) {\n this._legendTarget = this.root.findById(legendTarget)\n this._legendTarget && this._legendTarget.on('change', this.onchangeData, this)\n }\n\n return this._legendTarget\n }\n\n async loadSVG(div: HTMLElement) {\n try {\n const parser = new DOMParser()\n\n const response = await fetch(this.src)\n\n div.innerHTML = ''\n\n if (response.ok) {\n const text = await response.text()\n const doc = await parser.parseFromString(text, 'image/svg+xml')\n const element = doc.querySelector('svg')\n\n element && div.appendChild(element)\n } else {\n const error = await response.text()\n console.error('load SVG error', error)\n }\n } catch (error) {\n console.error(error)\n }\n }\n\n async setElementProperties(div: HTMLDivElement) {}\n\n get src() {\n return this.getState('src')\n }\n\n set src(src) {\n this.setState('src', src)\n }\n\n onchange(after: Properties, before: Properties) {\n 'src' in after && this.onchangeSrc(after.src)\n 'value' in after && this.onchangeValue(after.value)\n }\n\n onchangeSrc(src: string) {\n this.loadSVG(this.element)\n }\n\n onchangeValue(value: any): void {\n if (typeof this.value !== 'object' || !Array.isArray(this.value)) {\n return\n }\n\n const { idField, valueField } = this.state\n const legendTarget = this.legendTarget\n\n if (!legendTarget) {\n return\n }\n\n const {\n field: statusField,\n defaultColor,\n ranges\n } = legendTarget.getState('status') as {\n field: string\n defaultColor: string\n ranges: { min?: string | number; max?: string | number; color: string }[]\n }\n\n if (!(statusField && ranges)) {\n return\n }\n\n this.value.forEach(item => {\n if (!(idField in item) || !(valueField in item)) {\n return\n }\n\n var id = item[idField]\n var status = Number(item[valueField])\n\n var range = ranges.find((range, index) => {\n let { min: minValue, max: maxValue } = range\n\n var min: number | undefined =\n minValue !== undefined && minValue !== null && minValue !== '' ? Number(minValue) : undefined\n var max: number | undefined =\n maxValue !== undefined && maxValue !== null && maxValue !== '' ? Number(maxValue) : undefined\n\n // If max is not set, treat it as infinity\n var maxCheck = max === undefined ? true : max > status\n var minCheck = min === undefined ? true : min <= status\n\n return maxCheck && minCheck\n })\n\n const paths = this.element.querySelectorAll(`path[id=\"${String(id)}\"]`) as NodeListOf<SVGPathElement>\n paths.forEach(path => {\n path.style.fill = range?.color || defaultColor || 'transparent'\n })\n })\n }\n\n get tagName() {\n return 'div'\n }\n\n get nature() {\n return NATURE\n }\n\n get value() {\n return this._value\n }\n\n set value(value) {\n this._value = value\n this.onchangeValue(value)\n }\n}\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
type: string;
|
|
3
|
+
description: string;
|
|
4
|
+
group: string;
|
|
5
|
+
icon: string;
|
|
6
|
+
model: {
|
|
7
|
+
type: string;
|
|
8
|
+
left: number;
|
|
9
|
+
top: number;
|
|
10
|
+
width: number;
|
|
11
|
+
height: number;
|
|
12
|
+
fillStyle: string;
|
|
13
|
+
direction: string;
|
|
14
|
+
strokeStyle: string;
|
|
15
|
+
lineWidth: number;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export default _default;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
const icon = new URL('../../icons/svg.png', import.meta.url).href;
|
|
2
|
+
export default {
|
|
3
|
+
type: 'svg',
|
|
4
|
+
description: 'svg for visualizer',
|
|
5
|
+
group: 'warehouse' /* line|shape|textAndMedia|chartAndGauge|table|container|dataSource|IoT|3D|warehouse|form|etc */,
|
|
6
|
+
icon,
|
|
7
|
+
model: {
|
|
8
|
+
type: 'svg',
|
|
9
|
+
left: 100,
|
|
10
|
+
top: 100,
|
|
11
|
+
width: 400,
|
|
12
|
+
height: 300,
|
|
13
|
+
fillStyle: '#efefef',
|
|
14
|
+
direction: 'vertical',
|
|
15
|
+
strokeStyle: 'rgba(0, 0, 0, 0.3)',
|
|
16
|
+
lineWidth: 1
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=svg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svg.js","sourceRoot":"","sources":["../../src/templates/svg.ts"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;AAEjE,eAAe;IACb,IAAI,EAAE,KAAK;IACX,WAAW,EAAE,oBAAoB;IACjC,KAAK,EAAE,WAAW,CAAC,gGAAgG;IACnH,IAAI;IACJ,KAAK,EAAE;QACL,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,GAAG;QACT,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,GAAG;QACX,SAAS,EAAE,SAAS;QACpB,SAAS,EAAE,UAAU;QACrB,WAAW,EAAE,oBAAoB;QACjC,SAAS,EAAE,CAAC;KACb;CACF,CAAA","sourcesContent":["const icon = new URL('../../icons/svg.png', import.meta.url).href\n\nexport default {\n type: 'svg',\n description: 'svg for visualizer',\n group: 'warehouse' /* line|shape|textAndMedia|chartAndGauge|table|container|dataSource|IoT|3D|warehouse|form|etc */,\n icon,\n model: {\n type: 'svg',\n left: 100,\n top: 100,\n width: 400,\n height: 300,\n fillStyle: '#efefef',\n direction: 'vertical',\n strokeStyle: 'rgba(0, 0, 0, 0.3)',\n lineWidth: 1\n }\n}\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"keep": {
|
|
3
|
+
"days": true,
|
|
4
|
+
"amount": 2
|
|
5
|
+
},
|
|
6
|
+
"auditLog": "logs/.08636eb59927f12972f6774f5947c8507b3564c2-audit.json",
|
|
7
|
+
"files": [
|
|
8
|
+
{
|
|
9
|
+
"date": 1689248179100,
|
|
10
|
+
"name": "logs/application-2023-07-13-20.log",
|
|
11
|
+
"hash": "89d17538c1898ddce7ba4c309d7b1ea2d91a9a582682878e950f50fd29fbc298"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"hashType": "sha256"
|
|
15
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"keep": {
|
|
3
|
+
"days": true,
|
|
4
|
+
"amount": 14
|
|
5
|
+
},
|
|
6
|
+
"auditLog": "logs/.5e5d741d8b7784a2fbad65eedc0fd46946aaf6f2-audit.json",
|
|
7
|
+
"files": [
|
|
8
|
+
{
|
|
9
|
+
"date": 1689248180358,
|
|
10
|
+
"name": "logs/connections-2023-07-13-20.log",
|
|
11
|
+
"hash": "a0dac8996e3b70e357e8b668557260ea5be9055a21ade4693e6f0fde6b02ad2e"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"hashType": "sha256"
|
|
15
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
2023-07-13T20:36:19+09:00 info: File Storage is Ready.
|
|
2
|
+
2023-07-13T20:36:20+09:00 error: oracledb module loading failed
|
|
3
|
+
2023-07-13T20:36:21+09:00 info: Default DataSource established
|
|
4
|
+
2023-07-13T20:36:22+09:00 info: π Server ready at http://0.0.0.0:3000/graphql
|
|
5
|
+
2023-07-13T20:36:22+09:00 info: π Subscriptions ready at ws://0.0.0.0:3000/graphql
|
|
6
|
+
2023-07-13T20:52:49+09:00 info: File Storage is Ready.
|
|
7
|
+
2023-07-13T20:52:50+09:00 error: oracledb module loading failed
|
|
8
|
+
2023-07-13T20:52:51+09:00 info: Default DataSource established
|
|
9
|
+
2023-07-13T20:52:52+09:00 info: π Server ready at http://0.0.0.0:3000/graphql
|
|
10
|
+
2023-07-13T20:52:52+09:00 info: π Subscriptions ready at ws://0.0.0.0:3000/graphql
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
2023-07-13T20:36:22+09:00 info: Initializing ConnectionManager...
|
|
2
|
+
2023-07-13T20:36:22+09:00 info: Connector 'echo-back-server' started to ready
|
|
3
|
+
2023-07-13T20:36:22+09:00 info: Connector 'echo-back' started to ready
|
|
4
|
+
2023-07-13T20:36:22+09:00 info: Connector 'http-connector' started to ready
|
|
5
|
+
2023-07-13T20:36:22+09:00 info: http-connector connection(λ μ¨λ§λ£¨:https://bd.kma.go.kr) is connected
|
|
6
|
+
2023-07-13T20:36:22+09:00 info: Connector 'graphql-connector' started to ready
|
|
7
|
+
2023-07-13T20:36:22+09:00 info: Connector 'sqlite-connector' started to ready
|
|
8
|
+
2023-07-13T20:36:22+09:00 info: Connector 'postgresql-connector' started to ready
|
|
9
|
+
2023-07-13T20:36:22+09:00 info: Connector 'mqtt-connector' started to ready
|
|
10
|
+
2023-07-13T20:36:22+09:00 info: Connector 'mssql-connector' started to ready
|
|
11
|
+
2023-07-13T20:36:22+09:00 info: Connector 'oracle-connector' started to ready
|
|
12
|
+
2023-07-13T20:36:22+09:00 info: Connector 'mysql-connector' started to ready
|
|
13
|
+
2023-07-13T20:36:22+09:00 info: Connector 'socket-server' started to ready
|
|
14
|
+
2023-07-13T20:36:22+09:00 info: Connector 'msgraph-connector' started to ready
|
|
15
|
+
2023-07-13T20:36:22+09:00 info: echo-back-servers are ready
|
|
16
|
+
2023-07-13T20:36:22+09:00 info: echo-back connections are ready
|
|
17
|
+
2023-07-13T20:36:22+09:00 info: graphql-connector connections are ready
|
|
18
|
+
2023-07-13T20:36:22+09:00 info: sqlite-connector connections are ready
|
|
19
|
+
2023-07-13T20:36:22+09:00 info: postgresql-connector connections are ready
|
|
20
|
+
2023-07-13T20:36:22+09:00 info: mqtt-connector connections are ready
|
|
21
|
+
2023-07-13T20:36:22+09:00 info: mssql-connector connections are ready
|
|
22
|
+
2023-07-13T20:36:22+09:00 info: oracle-connector connections are ready
|
|
23
|
+
2023-07-13T20:36:22+09:00 info: mysql-connector connections are ready
|
|
24
|
+
2023-07-13T20:36:22+09:00 info: socket servers are ready
|
|
25
|
+
2023-07-13T20:36:22+09:00 info: msgraph-connector connections are ready
|
|
26
|
+
2023-07-13T20:36:22+09:00 info: http-connector connections are ready
|
|
27
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'echo-back-server' ready
|
|
28
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'echo-back' ready
|
|
29
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'graphql-connector' ready
|
|
30
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'sqlite-connector' ready
|
|
31
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'postgresql-connector' ready
|
|
32
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'mqtt-connector' ready
|
|
33
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'mssql-connector' ready
|
|
34
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'oracle-connector' ready
|
|
35
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'mysql-connector' ready
|
|
36
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'socket-server' ready
|
|
37
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'msgraph-connector' ready
|
|
38
|
+
2023-07-13T20:36:22+09:00 info: All connector for 'http-connector' ready
|
|
39
|
+
2023-07-13T20:36:22+09:00 info: ConnectionManager initialization done:
|
|
40
|
+
2023-07-13T20:36:22+09:00 info: For domain(61dc2a70-e0b2-4e30-95c3-c66cf47ddee2) : ["λ μ¨λ§λ£¨"]
|
|
41
|
+
2023-07-13T20:52:52+09:00 info: Initializing ConnectionManager...
|
|
42
|
+
2023-07-13T20:52:52+09:00 info: Connector 'echo-back-server' started to ready
|
|
43
|
+
2023-07-13T20:52:52+09:00 info: Connector 'echo-back' started to ready
|
|
44
|
+
2023-07-13T20:52:52+09:00 info: Connector 'http-connector' started to ready
|
|
45
|
+
2023-07-13T20:52:52+09:00 info: http-connector connection(λ μ¨λ§λ£¨:https://bd.kma.go.kr) is connected
|
|
46
|
+
2023-07-13T20:52:52+09:00 info: Connector 'graphql-connector' started to ready
|
|
47
|
+
2023-07-13T20:52:52+09:00 info: Connector 'sqlite-connector' started to ready
|
|
48
|
+
2023-07-13T20:52:52+09:00 info: Connector 'postgresql-connector' started to ready
|
|
49
|
+
2023-07-13T20:52:52+09:00 info: Connector 'mqtt-connector' started to ready
|
|
50
|
+
2023-07-13T20:52:52+09:00 info: Connector 'mssql-connector' started to ready
|
|
51
|
+
2023-07-13T20:52:52+09:00 info: Connector 'oracle-connector' started to ready
|
|
52
|
+
2023-07-13T20:52:52+09:00 info: Connector 'mysql-connector' started to ready
|
|
53
|
+
2023-07-13T20:52:52+09:00 info: Connector 'socket-server' started to ready
|
|
54
|
+
2023-07-13T20:52:52+09:00 info: Connector 'msgraph-connector' started to ready
|
|
55
|
+
2023-07-13T20:52:52+09:00 info: echo-back-servers are ready
|
|
56
|
+
2023-07-13T20:52:52+09:00 info: echo-back connections are ready
|
|
57
|
+
2023-07-13T20:52:52+09:00 info: graphql-connector connections are ready
|
|
58
|
+
2023-07-13T20:52:52+09:00 info: sqlite-connector connections are ready
|
|
59
|
+
2023-07-13T20:52:52+09:00 info: postgresql-connector connections are ready
|
|
60
|
+
2023-07-13T20:52:52+09:00 info: mqtt-connector connections are ready
|
|
61
|
+
2023-07-13T20:52:52+09:00 info: mssql-connector connections are ready
|
|
62
|
+
2023-07-13T20:52:52+09:00 info: oracle-connector connections are ready
|
|
63
|
+
2023-07-13T20:52:52+09:00 info: mysql-connector connections are ready
|
|
64
|
+
2023-07-13T20:52:52+09:00 info: socket servers are ready
|
|
65
|
+
2023-07-13T20:52:52+09:00 info: msgraph-connector connections are ready
|
|
66
|
+
2023-07-13T20:52:52+09:00 info: http-connector connections are ready
|
|
67
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'echo-back-server' ready
|
|
68
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'echo-back' ready
|
|
69
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'graphql-connector' ready
|
|
70
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'sqlite-connector' ready
|
|
71
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'postgresql-connector' ready
|
|
72
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'mqtt-connector' ready
|
|
73
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'mssql-connector' ready
|
|
74
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'oracle-connector' ready
|
|
75
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'mysql-connector' ready
|
|
76
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'socket-server' ready
|
|
77
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'msgraph-connector' ready
|
|
78
|
+
2023-07-13T20:52:52+09:00 info: All connector for 'http-connector' ready
|
|
79
|
+
2023-07-13T20:52:52+09:00 info: ConnectionManager initialization done:
|
|
80
|
+
2023-07-13T20:52:52+09:00 info: For domain(61dc2a70-e0b2-4e30-95c3-c66cf47ddee2) : ["λ μ¨λ§λ£¨"]
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"keep": {
|
|
3
|
+
"days": true,
|
|
4
|
+
"amount": 14
|
|
5
|
+
},
|
|
6
|
+
"auditLog": "logs/system/.144ddb221a51f7e2afac3fe1fc3dcf306a8de9ef-audit.json",
|
|
7
|
+
"files": [
|
|
8
|
+
{
|
|
9
|
+
"date": 1689248235070,
|
|
10
|
+
"name": "logs/system/scenario-μλμ§ λ μ΄μ΄ μμ-2023-07-13-20.log",
|
|
11
|
+
"hash": "8509c7d861880c0931ec87feae7d3833b828ef059038c240e1132ae26baf4c6e"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"hashType": "sha256"
|
|
15
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"keep": {
|
|
3
|
+
"days": true,
|
|
4
|
+
"amount": 14
|
|
5
|
+
},
|
|
6
|
+
"auditLog": "logs/system/.437ed478d36eef33cb9dfb565b13329b4464783e-audit.json",
|
|
7
|
+
"files": [
|
|
8
|
+
{
|
|
9
|
+
"date": 1683599346648,
|
|
10
|
+
"name": "logs/system/scenario-λ°μ λ μμΈ‘ λ°μ΄ν°-2023-05-09-11.log",
|
|
11
|
+
"hash": "f7fa1a6df91294365d1b393045434891d9ea1a63afb428db4dea208c9b8bc12e"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"date": 1683601398986,
|
|
15
|
+
"name": "logs/system/scenario-λ°μ λ μμΈ‘ λ°μ΄ν°-2023-05-09-12.log",
|
|
16
|
+
"hash": "798ae42f4efbc44a7d3ddd9e863c126d687fd1e7f790db7a627b64f5ac02e4a9"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"hashType": "sha256"
|
|
20
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"keep": {
|
|
3
|
+
"days": true,
|
|
4
|
+
"amount": 14
|
|
5
|
+
},
|
|
6
|
+
"auditLog": "logs/system/.a16ac19e6e222b854c699e1f94ae757f5c8db307-audit.json",
|
|
7
|
+
"files": [
|
|
8
|
+
{
|
|
9
|
+
"date": 1683601372061,
|
|
10
|
+
"name": "logs/system/scenario-μΌμ¬λ μμΈ‘ μ§λ-2023-05-09-12.log",
|
|
11
|
+
"hash": "93d606c9b51d26ada4839c94902f0d4d5efeb0a91708f754302cd1a24d747686"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"hashType": "sha256"
|
|
15
|
+
}
|