@flexem/fc-gui 3.0.0-alpha.15 → 3.0.0-alpha.151
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 +429 -1
- package/assets/img/black_first_page.png +0 -0
- package/assets/img/black_last_page.png +0 -0
- package/assets/img/black_next_page.png +0 -0
- package/assets/img/black_previous_page.png +0 -0
- package/bundles/@flexem/fc-gui.umd.js +24059 -19951
- package/bundles/@flexem/fc-gui.umd.js.map +1 -1
- package/bundles/@flexem/fc-gui.umd.min.js +5 -5
- package/bundles/@flexem/fc-gui.umd.min.js.map +1 -1
- package/communication/variable/variable-communicator.d.ts +4 -0
- package/communication/variable/variable-value.d.ts +4 -1
- package/communication/variable/variable-value.js +4 -1
- package/communication/variable/variable-value.metadata.json +1 -1
- package/config/alarm/alarm.store.d.ts +6 -0
- package/config/alarm/alarm.store.js +0 -0
- package/config/alarm/alarm.store.metadata.json +1 -0
- package/config/alarm/get-alarms-args.d.ts +12 -0
- package/config/alarm/get-alarms-args.js +13 -0
- package/config/alarm/get-alarms-args.metadata.json +1 -0
- package/config/alarm/index.d.ts +2 -0
- package/config/alarm/index.js +1 -0
- package/config/alarm/index.metadata.json +1 -0
- package/config/config-store.d.ts +2 -0
- package/config/index.d.ts +1 -0
- package/config/index.js +1 -0
- package/config/index.metadata.json +1 -1
- package/elements/air-quality/air-quality-element.d.ts +31 -0
- package/elements/air-quality/air-quality-element.js +194 -0
- package/elements/air-quality/air-quality-element.metadata.json +1 -0
- package/elements/alarm/alarm-element.d.ts +69 -0
- package/elements/alarm/alarm-element.js +497 -0
- package/elements/alarm/alarm-element.metadata.json +1 -0
- package/elements/bar-graph-element.d.ts +10 -2
- package/elements/bar-graph-element.js +135 -5
- package/elements/bar-graph-element.metadata.json +1 -1
- package/elements/base/readable-element.d.ts +6 -1
- package/elements/base/readable-element.js +65 -2
- package/elements/base/readable-element.metadata.json +1 -1
- package/elements/base/state-control-element.d.ts +3 -1
- package/elements/base/state-control-element.js +3 -0
- package/elements/datetime-display/datetime-display-element.d.ts +1 -0
- package/elements/datetime-display/datetime-display-element.js +10 -2
- package/elements/datetime-display/datetime-display-element.metadata.json +1 -1
- package/elements/datetime-display/time-zone-select-json.d.ts +8 -0
- package/elements/datetime-display/time-zone-select-json.js +558 -0
- package/elements/historical-curve/historical-curve.element.d.ts +33 -3
- package/elements/historical-curve/historical-curve.element.js +368 -26
- package/elements/historical-curve/historical-curve.element.metadata.json +1 -1
- package/elements/main-element.d.ts +1 -0
- package/elements/main-element.js +59 -9
- package/elements/main-element.metadata.json +1 -1
- package/elements/meter-element.d.ts +7 -1
- package/elements/meter-element.js +76 -7
- package/elements/meter-element.metadata.json +1 -1
- package/elements/numerical-display/numerical-display-element.d.ts +16 -3
- package/elements/numerical-display/numerical-display-element.js +83 -11
- package/elements/numerical-display/numerical-display-element.metadata.json +1 -1
- package/elements/per-view-variable-communicator.d.ts +3 -0
- package/elements/per-view-variable-communicator.js +15 -1
- package/elements/per-view-variable-communicator.metadata.json +1 -1
- package/elements/ring-graph/ring-graph-element.d.ts +13 -1
- package/elements/ring-graph/ring-graph-element.js +164 -3
- package/elements/ring-graph/ring-graph-element.metadata.json +1 -1
- package/elements/scroll-alarm/scroll-alarm-element.d.ts +74 -0
- package/elements/scroll-alarm/scroll-alarm-element.js +761 -0
- package/elements/scroll-alarm/scroll-alarm-element.metadata.json +1 -0
- package/elements/shared/graph/graph-state-element.d.ts +1 -0
- package/elements/shared/graph/graph-state-element.js +30 -4
- package/elements/shared/graph/graph-state-element.metadata.json +1 -1
- package/elements/shared/text/text-element.d.ts +9 -0
- package/elements/shared/text/text-element.js +34 -3
- package/elements/shared/text/text-element.metadata.json +1 -1
- package/elements/shared/text/text-state-element.d.ts +28 -2
- package/elements/shared/text/text-state-element.js +188 -65
- package/elements/shared/text/text-state-element.metadata.json +1 -1
- package/elements/static-elements/hyperlink-element.d.ts +24 -2
- package/elements/static-elements/hyperlink-element.js +124 -3
- package/elements/static-elements/hyperlink-element.metadata.json +1 -1
- package/elements/static-elements/text-element.d.ts +24 -2
- package/elements/static-elements/text-element.js +120 -3
- package/elements/static-elements/text-element.metadata.json +1 -1
- package/elements/switch-indicator-light/bit-indicator-light-operator.d.ts +1 -0
- package/elements/switch-indicator-light/bit-indicator-light-operator.js +5 -2
- package/elements/switch-indicator-light/bit-indicator-light-operator.metadata.json +1 -1
- package/elements/switch-indicator-light/switch-indicator-light-element.d.ts +11 -2
- package/elements/switch-indicator-light/switch-indicator-light-element.js +55 -11
- package/elements/switch-indicator-light/switch-indicator-light-element.metadata.json +1 -1
- package/elements/switch-indicator-light/word-indicator-light-operator.d.ts +1 -0
- package/elements/switch-indicator-light/word-indicator-light-operator.js +5 -2
- package/elements/switch-indicator-light/word-indicator-light-operator.metadata.json +1 -1
- package/elements/video/video-element.d.ts +10 -0
- package/elements/video/video-element.js +119 -21
- package/elements/video/video-element.metadata.json +1 -1
- package/elements/view-operation/view-operation.element.d.ts +24 -2
- package/elements/view-operation/view-operation.element.js +128 -4
- package/elements/view-operation/view-operation.element.metadata.json +1 -1
- package/elements/weather/weater-element.js +0 -1
- package/gui/gui-context.d.ts +12 -2
- package/gui/gui-host.d.ts +1 -1
- package/gui/gui-view.d.ts +4 -1
- package/gui/gui-view.js +51 -7
- package/gui/gui-view.metadata.json +1 -1
- package/gui/gui.component.d.ts +3 -0
- package/gui/gui.component.js +15 -2
- package/gui/gui.component.metadata.json +1 -1
- package/localization/localization.service.d.ts +7 -0
- package/localization/localization.service.js +10 -3
- package/localization/localization.service.metadata.json +1 -1
- package/localization/localization.service.zh_CN.js +8 -1
- package/localization/localization.service.zh_CN.metadata.json +1 -1
- package/modal/write-value/write-value-modal-args.d.ts +5 -1
- package/modal/write-value/write-value-modal-args.js +3 -1
- package/modal/write-value/write-value-modal-args.metadata.json +1 -1
- package/modal/write-value/write-value-modal.component.d.ts +13 -7
- package/modal/write-value/write-value-modal.component.html +10 -5
- package/modal/write-value/write-value-modal.component.js +87 -15
- package/modal/write-value/write-value-modal.component.metadata.json +1 -1
- package/model/air-quality/air-quality-info.d.ts +23 -0
- package/model/air-quality/air-quality-info.js +4 -0
- package/model/air-quality/air-quality-info.metadata.json +1 -0
- package/model/air-quality/air-quality.model.d.ts +7 -0
- package/model/air-quality/air-quality.model.js +0 -0
- package/model/air-quality/air-quality.model.metadata.json +1 -0
- package/model/alarm/alarm.model.d.ts +13 -0
- package/model/alarm/alarm.model.js +0 -0
- package/model/alarm/alarm.model.metadata.json +1 -0
- package/model/bar-graph/bar-graph.d.ts +4 -0
- package/model/base/font-setting-model.d.ts +12 -1
- package/model/base/font-setting-model.metadata.json +1 -1
- package/model/base/readable-model.d.ts +4 -0
- package/model/datetime-display/datetime-display.d.ts +1 -0
- package/model/historical-curve/historical-curve-axis-settings.d.ts +11 -0
- package/model/historical-curve/historical-curve-axis-settings.js +5 -0
- package/model/historical-curve/historical-curve-axis-settings.metadata.json +1 -1
- package/model/historical-curve/historical-curve-chanel.model.d.ts +8 -0
- package/model/meter/meter.d.ts +4 -0
- package/model/ring-graph/ring-graph.model.d.ts +8 -0
- package/model/scroll-alarm/scroll-alarm.model.d.ts +21 -0
- package/model/scroll-alarm/scroll-alarm.model.js +0 -0
- package/model/scroll-alarm/scroll-alarm.model.metadata.json +1 -0
- package/model/shared/text/text.d.ts +3 -0
- package/model/switch-indicator-light/switch-indicator-light.d.ts +2 -0
- package/model/view-operation/view-operation-element.model.d.ts +7 -1
- package/package.json +1 -1
- package/public_api.js +1 -0
- package/remote/communication/variable/remote-variable-communicator.d.ts +27 -0
- package/remote/communication/variable/remote-variable-communicator.js +148 -3
- package/remote/communication/variable/remote-variable-communicator.metadata.json +1 -1
- package/remote/communication/variable/remote-variable-protocol.d.ts +5 -0
- package/service/index.d.ts +4 -0
- package/service/index.js +1 -0
- package/service/index.metadata.json +1 -1
- package/service/language.service.d.ts +37 -0
- package/service/language.service.js +0 -0
- package/service/language.service.metadata.json +1 -0
- package/service/released-variable/index.d.ts +1 -0
- package/service/released-variable/index.js +0 -0
- package/service/released-variable/index.metadata.json +1 -0
- package/service/released-variable/released-variable.service.d.ts +4 -0
- package/service/released-variable/released-variable.service.js +0 -0
- package/service/released-variable/released-variable.service.metadata.json +1 -0
- package/service/system-text-library.service.d.ts +76 -0
- package/service/system-text-library.service.js +28 -0
- package/service/system-text-library.service.metadata.json +1 -0
- package/service/text-library.service.d.ts +49 -0
- package/service/text-library.service.js +0 -0
- package/service/text-library.service.metadata.json +1 -0
- package/service/weather.service.d.ts +1 -0
- package/shared/gui-consts.d.ts +3 -0
- package/shared/gui-consts.js +3 -0
- package/shared/gui-consts.metadata.json +1 -1
- package/utils/data-type/fbox-data-type.service.js +40 -0
|
@@ -4,31 +4,190 @@ import { RotationDirectionType } from '../../model/shared/rotation/rotation-dire
|
|
|
4
4
|
import { calculatePercent, degreesToRadians } from '../shared/math-utils';
|
|
5
5
|
import { VariableUtil } from '../../utils/variable-util';
|
|
6
6
|
import { VariableDefinition } from '../../communication/variable/variable-definition';
|
|
7
|
+
import { forEach } from 'lodash';
|
|
8
|
+
import { VariableState } from '../../communication';
|
|
9
|
+
import { VariableValueType } from '../../model/shared/condition/variable-value-type';
|
|
7
10
|
export class RingGraphElement extends ReadableElement {
|
|
8
11
|
constructor(element, permissionChecker, variableCommunicator, variableStore, localization, signalRAppId) {
|
|
9
12
|
super(element, permissionChecker, variableCommunicator, variableStore, localization, signalRAppId);
|
|
13
|
+
this.valueObj = {};
|
|
14
|
+
this.isNeedUpdateScale = false;
|
|
15
|
+
this.initTransform = false;
|
|
16
|
+
this.needAddNumber = 0;
|
|
17
|
+
if ((this.model.minValueType === VariableValueType.Constant && this.model.maxValueType === VariableValueType.Variable)
|
|
18
|
+
|| this.model.maxValueType === VariableValueType.Constant && this.model.minValueType === VariableValueType.Variable) {
|
|
19
|
+
this.isNeedUpdateScale = true;
|
|
20
|
+
this.updateScale();
|
|
21
|
+
this.isNeedUpdateScale = false;
|
|
22
|
+
}
|
|
10
23
|
const el$ = $(element);
|
|
11
24
|
this._barElement$ = el$.find('path[data-id="barArc"]');
|
|
12
25
|
this._textElement$ = el$.find('text[data-id="pText"]');
|
|
13
26
|
setTimeout(() => {
|
|
14
27
|
this.initFrameNode();
|
|
15
28
|
this.changeStates();
|
|
16
|
-
}
|
|
29
|
+
});
|
|
17
30
|
}
|
|
18
31
|
get readVariableName() {
|
|
19
32
|
if (!this.model.variableId) {
|
|
20
33
|
return '';
|
|
21
34
|
}
|
|
35
|
+
if (!this.model.variableId.variableName || !this.model.variableId.variableName.name) {
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
22
38
|
const variable = new VariableDefinition(this.model.variableId.variableName.name, this.model.variableId.variableName.groupName, this.model.variableId.dataSourceCode, this.model.variableId.variableName.variableVersion);
|
|
23
39
|
return VariableUtil.getConvertedVariableName(this.variableStore, variable);
|
|
24
40
|
}
|
|
41
|
+
get minVariableName() {
|
|
42
|
+
if (!this.model.minValueType) {
|
|
43
|
+
return undefined;
|
|
44
|
+
}
|
|
45
|
+
if (!this.model.minVariable || !this.model.minVariable.name) {
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
const variable = new VariableDefinition(this.model.minVariable.name, this.model.minVariable.groupName, this.model.minVariable.dataSourceCode, this.model.minVariable.variableVersion);
|
|
49
|
+
return VariableUtil.getConvertedVariableName(this.variableStore, variable);
|
|
50
|
+
}
|
|
51
|
+
get maxVariableName() {
|
|
52
|
+
if (!this.model.maxValueType) {
|
|
53
|
+
return undefined;
|
|
54
|
+
}
|
|
55
|
+
if (!this.model.maxVariable || !this.model.maxVariable.name) {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
const variable = new VariableDefinition(this.model.maxVariable.name, this.model.maxVariable.groupName, this.model.maxVariable.dataSourceCode, this.model.maxVariable.variableVersion);
|
|
59
|
+
return VariableUtil.getConvertedVariableName(this.variableStore, variable);
|
|
60
|
+
}
|
|
61
|
+
initTransformFun(len) {
|
|
62
|
+
this.$element[0].childNodes.forEach((node) => {
|
|
63
|
+
if (!node.transform.baseVal[0])
|
|
64
|
+
return;
|
|
65
|
+
// const matrixE = node.transform.baseVal[0].matrix.e;
|
|
66
|
+
// node.transform.baseVal[0].matrix.e = matrixE + len * 5;
|
|
67
|
+
if (node.nodeName === 'g') {
|
|
68
|
+
const nodeValue = node.attributes['clip-path'].value.replace('url(#', '').replace(')', '');
|
|
69
|
+
const rootNode = node.parentNode.parentNode.parentElement;
|
|
70
|
+
const clipPath = $(rootNode).find(`clipPath[id="${nodeValue}"]`);
|
|
71
|
+
const demoPath = clipPath.find('path');
|
|
72
|
+
const dValues = demoPath.attr('d').split(',');
|
|
73
|
+
const retValues = [];
|
|
74
|
+
dValues.forEach((line, index) => {
|
|
75
|
+
const values = [];
|
|
76
|
+
line.split(' ').forEach((item) => {
|
|
77
|
+
const nItem = Number(item);
|
|
78
|
+
if (!isNaN(nItem) && (index === 1 || index === 2 || nItem === -1)) {
|
|
79
|
+
item = nItem > 0 ? (index === 1 || index === 2 ? nItem + (len + 2) * 8 : nItem + len * 8) : nItem - len * 8;
|
|
80
|
+
}
|
|
81
|
+
values.push(item);
|
|
82
|
+
});
|
|
83
|
+
retValues.push(values.join(' '));
|
|
84
|
+
});
|
|
85
|
+
demoPath.attr('d', retValues.join(','));
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
}
|
|
25
89
|
initFrameNode() {
|
|
26
90
|
const arcPath = Snap(this.$element[0]);
|
|
27
91
|
const b = arcPath.getBBox(true);
|
|
28
92
|
this.rootElement.append('rect').attr('id', 'StateFrame').attr('width', b.width).attr('height', b.height).attr('fill', 'transparent');
|
|
29
93
|
}
|
|
30
|
-
|
|
31
|
-
|
|
94
|
+
init(variableName) {
|
|
95
|
+
if (variableName) {
|
|
96
|
+
let hasVariable = false;
|
|
97
|
+
forEach(this.elementStates, elementState => {
|
|
98
|
+
if (elementState.variableName === variableName) {
|
|
99
|
+
hasVariable = true;
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
if (!hasVariable && variableName === this.readVariableName) {
|
|
103
|
+
this.elementStates.push(new VariableState(variableName, undefined));
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
updateValueObj(value, variableName) {
|
|
108
|
+
var _a, _b, _c;
|
|
109
|
+
if (((_a = this.model.variableId) === null || _a === void 0 ? void 0 : _a.variableName.name) === variableName) {
|
|
110
|
+
this.isNeedUpdateScale = false;
|
|
111
|
+
this.valueObj.value = value;
|
|
112
|
+
}
|
|
113
|
+
if (((_b = this.model.minVariable) === null || _b === void 0 ? void 0 : _b.name) === variableName) {
|
|
114
|
+
this.isNeedUpdateScale = true;
|
|
115
|
+
this.valueObj.min = value;
|
|
116
|
+
}
|
|
117
|
+
if (((_c = this.model.maxVariable) === null || _c === void 0 ? void 0 : _c.name) === variableName) {
|
|
118
|
+
this.isNeedUpdateScale = true;
|
|
119
|
+
this.valueObj.max = value;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
updateScale() {
|
|
123
|
+
// 刻度模糊问题
|
|
124
|
+
const matrix = this.$element[0].transform.baseVal[0].matrix;
|
|
125
|
+
if (!this.$element[0].style.transform) {
|
|
126
|
+
this.$element[0].style.transform = `translate3d(${matrix.e}px, ${matrix.f}px, 0)`;
|
|
127
|
+
}
|
|
128
|
+
if (!this.isNeedUpdateScale) {
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
const textElements = this.$element.find('g:first > text');
|
|
132
|
+
let min = this.model.minValueType ? this.valueObj.min : this.model.min;
|
|
133
|
+
let max = this.model.maxValueType ? this.valueObj.max : this.model.max;
|
|
134
|
+
min = Number(min);
|
|
135
|
+
max = Number(max);
|
|
136
|
+
if (isNaN(min) || isNaN(max)) {
|
|
137
|
+
min = RingGraphElement.DEFAULT_MIN_VALUE;
|
|
138
|
+
max = RingGraphElement.DEFAULT_MAX_VALUE;
|
|
139
|
+
}
|
|
140
|
+
if (this.model.minValueType === VariableValueType.Variable || this.model.maxValueType === VariableValueType.Variable) {
|
|
141
|
+
const len = max.toString().length > min.toString().length ? max.toString().length : min.toString().length;
|
|
142
|
+
if (Math.abs(len - this.needAddNumber) > 2) {
|
|
143
|
+
const width = this.$element.find('rect').attr('width');
|
|
144
|
+
this.$element.find('rect').attr('width', Number(width) + (len - this.needAddNumber) * 8);
|
|
145
|
+
this.initTransformFun(Math.abs(len - this.needAddNumber));
|
|
146
|
+
this.needAddNumber = len;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
const avgSacle = ((max - min) / this.model.masterDivisionNumber).toFixed(5);
|
|
150
|
+
for (let i = 0; i < textElements.length; i++) {
|
|
151
|
+
const text = textElements[i];
|
|
152
|
+
if (!text.innerHTML) {
|
|
153
|
+
continue;
|
|
154
|
+
}
|
|
155
|
+
let sacleValue = ((Number(avgSacle) * i) + min).toFixed(0);
|
|
156
|
+
// 整数位和小数位格式化;
|
|
157
|
+
if (this.model.fractionDigits > 0) {
|
|
158
|
+
sacleValue = (sacleValue / Math.pow(10, this.model.fractionDigits)).toFixed(this.model.fractionDigits);
|
|
159
|
+
}
|
|
160
|
+
if (!isNaN(sacleValue)) {
|
|
161
|
+
const oriValue = text.innerHTML;
|
|
162
|
+
text.innerHTML = sacleValue;
|
|
163
|
+
if (this.model.minValueType !== VariableValueType.Constant || this.model.maxValueType !== VariableValueType.Constant) {
|
|
164
|
+
// FLEXCLOUD-2619 刻度显示不全问题
|
|
165
|
+
const order = (i + 1) / textElements.length;
|
|
166
|
+
const len = oriValue.toString().length - sacleValue.toString().length;
|
|
167
|
+
if (order <= 0.7 && len > 1 && !this.initTransform) {
|
|
168
|
+
text.transform.baseVal[0].matrix.e += (len - 1) * 5;
|
|
169
|
+
}
|
|
170
|
+
if (order > 0.7 && Math.abs(len) > 0) {
|
|
171
|
+
text.transform.baseVal[0].matrix.e += len > 1 ? (len - 1) * 5 : len < -1 ? (len + 1) * 5 : len * 5;
|
|
172
|
+
text.transform.baseVal[0].matrix.e += len === -2 ? -3 : 0;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
this.initTransform = true;
|
|
178
|
+
}
|
|
179
|
+
updateVariableValue(value, variableName) {
|
|
180
|
+
this.updateValueObj(value, variableName);
|
|
181
|
+
this.updateScale();
|
|
182
|
+
let min = this.model.minValueType ? this.valueObj.min : this.model.min;
|
|
183
|
+
let max = this.model.maxValueType ? this.valueObj.max : this.model.max;
|
|
184
|
+
min = Number(min);
|
|
185
|
+
max = Number(max);
|
|
186
|
+
if (isNaN(min) || isNaN(max)) {
|
|
187
|
+
min = RingGraphElement.DEFAULT_MIN_VALUE;
|
|
188
|
+
max = RingGraphElement.DEFAULT_MAX_VALUE;
|
|
189
|
+
}
|
|
190
|
+
const percent = calculatePercent(min, max, this.valueObj.value || 0);
|
|
32
191
|
this.updateBar(percent);
|
|
33
192
|
this._barElement$.attr('fill', this.getBarColor(value));
|
|
34
193
|
if (this.model.showPercentage) {
|
|
@@ -87,3 +246,5 @@ export class RingGraphElement extends ReadableElement {
|
|
|
87
246
|
arcPath.arc(outer, outer, inner, endRadians, startRadians);
|
|
88
247
|
}
|
|
89
248
|
}
|
|
249
|
+
RingGraphElement.DEFAULT_MIN_VALUE = 0;
|
|
250
|
+
RingGraphElement.DEFAULT_MAX_VALUE = 100;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"__symbolic":"module","version":4,"metadata":{"RingGraphElement":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../base/readable-element","name":"ReadableElement","line":
|
|
1
|
+
[{"__symbolic":"module","version":4,"metadata":{"RingGraphElement":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../base/readable-element","name":"ReadableElement","line":16,"character":38},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Could not resolve type","line":62,"character":25,"context":{"typeName":"HTMLElement"}},{"__symbolic":"reference","module":"../../service","name":"PermissionChecker","line":62,"character":57},{"__symbolic":"reference","module":"../../communication/variable/variable-communicator","name":"VariableCommunicator","line":63,"character":30},{"__symbolic":"reference","module":"../../config","name":"VariableStore","line":64,"character":23},{"__symbolic":"reference","module":"../../localization/localization.service","name":"Localization","line":65,"character":22},{"__symbolic":"reference","name":"string"}]}],"initTransformFun":[{"__symbolic":"method"}],"initFrameNode":[{"__symbolic":"method"}],"init":[{"__symbolic":"method"}],"updateValueObj":[{"__symbolic":"method"}],"updateScale":[{"__symbolic":"method"}],"updateVariableValue":[{"__symbolic":"method"}],"updateBar":[{"__symbolic":"method"}],"getBarColor":[{"__symbolic":"method"}],"drawClockWiseArc":[{"__symbolic":"method"}],"drawAntiClockWiseArc":[{"__symbolic":"method"}]},"statics":{"DEFAULT_MIN_VALUE":0,"DEFAULT_MAX_VALUE":100}}}}]
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Injector } from '@angular/core';
|
|
2
|
+
import { PermissionChecker } from '../../service';
|
|
3
|
+
import { VariableCommunicator } from '../../communication';
|
|
4
|
+
import { ConditionalDynamicDisplayElement } from '../base/conditional-dynamic-display-element';
|
|
5
|
+
import { ScrollAlarmModel } from '../../model/scroll-alarm/scroll-alarm.model';
|
|
6
|
+
import { AlarmsStore, VariableStore } from '../../config';
|
|
7
|
+
export declare class ScrollAlarmElement extends ConditionalDynamicDisplayElement {
|
|
8
|
+
private readonly alarmsStore;
|
|
9
|
+
readonly model: ScrollAlarmModel;
|
|
10
|
+
private readonly logger;
|
|
11
|
+
readonly variableCommunicator: VariableCommunicator;
|
|
12
|
+
private elementStatus;
|
|
13
|
+
private element;
|
|
14
|
+
private scrollIntervalId;
|
|
15
|
+
private alarmNames;
|
|
16
|
+
private startTime;
|
|
17
|
+
private endTime;
|
|
18
|
+
private getAlarmDataId;
|
|
19
|
+
private alarmRefreshThrottleId;
|
|
20
|
+
private isWaitingForAlarmRefresh;
|
|
21
|
+
private isScrolling;
|
|
22
|
+
private isDisposed;
|
|
23
|
+
private isRefreshingCurrentPage;
|
|
24
|
+
private currentPage;
|
|
25
|
+
private maxResultCount;
|
|
26
|
+
private displayedItems;
|
|
27
|
+
private pageWidths;
|
|
28
|
+
private totalWidth;
|
|
29
|
+
private bgRect;
|
|
30
|
+
private scrollGroup;
|
|
31
|
+
private allAlarmsContainer;
|
|
32
|
+
private currentLeft;
|
|
33
|
+
private autoCycle;
|
|
34
|
+
private hasMoreData;
|
|
35
|
+
private isLoadingNextPage;
|
|
36
|
+
private headerFont;
|
|
37
|
+
private hasTriedFirstPage;
|
|
38
|
+
private isSimulateMode;
|
|
39
|
+
constructor(element: HTMLElement, injector: Injector, permissionChecker: PermissionChecker, variableCommunicator: VariableCommunicator, variableStore: VariableStore, alarmsStore: AlarmsStore, signalRAppId: string);
|
|
40
|
+
dispose(): void;
|
|
41
|
+
private getAlarmData;
|
|
42
|
+
private initDisplayContainer;
|
|
43
|
+
private _buildFontAttrs;
|
|
44
|
+
private _createSvgTextNode;
|
|
45
|
+
private _getSvgTextWidth;
|
|
46
|
+
private _updateUnderlineWidth;
|
|
47
|
+
private renderNewPage;
|
|
48
|
+
private _rebaseTextNodes;
|
|
49
|
+
private removeOldestPage;
|
|
50
|
+
private scrollContent;
|
|
51
|
+
private initScrolling;
|
|
52
|
+
private resetToFirstPage;
|
|
53
|
+
private updateQueryTimeRange;
|
|
54
|
+
private setStatusAsNormal;
|
|
55
|
+
private setStatusAsLoading;
|
|
56
|
+
private renderStatus;
|
|
57
|
+
private clearStatus;
|
|
58
|
+
/**
|
|
59
|
+
* 模拟运行时的静态显示逻辑:只显示字段标签,不查询数据
|
|
60
|
+
*/
|
|
61
|
+
private renderStaticDisplay;
|
|
62
|
+
/**
|
|
63
|
+
* 模拟运行时的静态滚动逻辑
|
|
64
|
+
*/
|
|
65
|
+
private initStaticScrolling;
|
|
66
|
+
/**
|
|
67
|
+
* 模拟运行时的静态内容滚动
|
|
68
|
+
*/
|
|
69
|
+
private scrollStaticContent;
|
|
70
|
+
/**
|
|
71
|
+
* 实时替换当前滚动内容(用于告警数据变化时)
|
|
72
|
+
*/
|
|
73
|
+
private replaceCurrentScrollingContent;
|
|
74
|
+
}
|