@flexem/fc-gui 3.0.0-alpha.12 → 3.0.0-alpha.120

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.
Files changed (142) hide show
  1. package/CHANGELOG.md +444 -1
  2. package/assets/img/black_first_page.png +0 -0
  3. package/assets/img/black_last_page.png +0 -0
  4. package/assets/img/black_next_page.png +0 -0
  5. package/assets/img/black_previous_page.png +0 -0
  6. package/bundles/@flexem/fc-gui.umd.js +19506 -17220
  7. package/bundles/@flexem/fc-gui.umd.js.map +1 -1
  8. package/bundles/@flexem/fc-gui.umd.min.js +5 -5
  9. package/bundles/@flexem/fc-gui.umd.min.js.map +1 -1
  10. package/communication/variable/variable-communicator.d.ts +2 -0
  11. package/communication/variable/variable-value.d.ts +4 -1
  12. package/communication/variable/variable-value.js +4 -1
  13. package/communication/variable/variable-value.metadata.json +1 -1
  14. package/config/alarm/alarm.store.d.ts +6 -0
  15. package/config/alarm/alarm.store.js +0 -0
  16. package/config/alarm/alarm.store.metadata.json +1 -0
  17. package/config/alarm/get-alarms-args.d.ts +9 -0
  18. package/config/alarm/get-alarms-args.js +9 -0
  19. package/config/alarm/get-alarms-args.metadata.json +1 -0
  20. package/config/alarm/index.d.ts +2 -0
  21. package/config/alarm/index.js +1 -0
  22. package/config/alarm/index.metadata.json +1 -0
  23. package/config/config-store.d.ts +2 -0
  24. package/config/index.d.ts +1 -0
  25. package/config/index.js +1 -0
  26. package/config/index.metadata.json +1 -1
  27. package/elements/air-quality/air-quality-element.d.ts +31 -0
  28. package/elements/air-quality/air-quality-element.js +194 -0
  29. package/elements/air-quality/air-quality-element.metadata.json +1 -0
  30. package/elements/alarm/alarm-element.d.ts +44 -0
  31. package/elements/alarm/alarm-element.js +386 -0
  32. package/elements/alarm/alarm-element.metadata.json +1 -0
  33. package/elements/bar-graph-element.d.ts +10 -2
  34. package/elements/bar-graph-element.js +135 -5
  35. package/elements/bar-graph-element.metadata.json +1 -1
  36. package/elements/base/readable-element.d.ts +6 -1
  37. package/elements/base/readable-element.js +55 -2
  38. package/elements/base/readable-element.metadata.json +1 -1
  39. package/elements/base/state-control-element.d.ts +3 -1
  40. package/elements/base/state-control-element.js +3 -0
  41. package/elements/datetime-display/datetime-display-element.d.ts +1 -0
  42. package/elements/datetime-display/datetime-display-element.js +10 -2
  43. package/elements/datetime-display/datetime-display-element.metadata.json +1 -1
  44. package/elements/datetime-display/time-zone-select-json.d.ts +8 -0
  45. package/elements/datetime-display/time-zone-select-json.js +558 -0
  46. package/elements/historical-curve/historical-curve.element.d.ts +9 -0
  47. package/elements/historical-curve/historical-curve.element.js +252 -13
  48. package/elements/historical-curve/historical-curve.element.metadata.json +1 -1
  49. package/elements/main-element.d.ts +1 -0
  50. package/elements/main-element.js +50 -4
  51. package/elements/main-element.metadata.json +1 -1
  52. package/elements/meter-element.d.ts +7 -1
  53. package/elements/meter-element.js +76 -7
  54. package/elements/meter-element.metadata.json +1 -1
  55. package/elements/numerical-display/numerical-display-element.d.ts +8 -2
  56. package/elements/numerical-display/numerical-display-element.js +55 -11
  57. package/elements/numerical-display/numerical-display-element.metadata.json +1 -1
  58. package/elements/per-view-variable-communicator.d.ts +3 -0
  59. package/elements/per-view-variable-communicator.js +11 -0
  60. package/elements/per-view-variable-communicator.metadata.json +1 -1
  61. package/elements/ring-graph/ring-graph-element.d.ts +13 -1
  62. package/elements/ring-graph/ring-graph-element.js +164 -3
  63. package/elements/ring-graph/ring-graph-element.metadata.json +1 -1
  64. package/elements/shared/graph/graph-state-element.js +0 -3
  65. package/elements/shared/text/text-element.js +13 -2
  66. package/elements/shared/text/text-state-element.d.ts +0 -1
  67. package/elements/shared/text/text-state-element.js +39 -61
  68. package/elements/shared/text/text-state-element.metadata.json +1 -1
  69. package/elements/switch-indicator-light/bit-switch-operator.d.ts +1 -0
  70. package/elements/switch-indicator-light/bit-switch-operator.js +19 -0
  71. package/elements/switch-indicator-light/bit-switch-operator.metadata.json +1 -1
  72. package/elements/switch-indicator-light/switch-indicator-light-element.d.ts +8 -0
  73. package/elements/switch-indicator-light/switch-indicator-light-element.js +93 -23
  74. package/elements/switch-indicator-light/switch-indicator-light-element.metadata.json +1 -1
  75. package/elements/switch-indicator-light/switch-operator.d.ts +1 -0
  76. package/elements/switch-indicator-light/word-switch-operator.d.ts +1 -0
  77. package/elements/switch-indicator-light/word-switch-operator.js +6 -0
  78. package/elements/switch-indicator-light/word-switch-operator.metadata.json +1 -1
  79. package/elements/video/video-element.d.ts +4 -0
  80. package/elements/video/video-element.js +81 -21
  81. package/elements/video/video-element.metadata.json +1 -1
  82. package/elements/view-operation/view-operation.element.js +8 -0
  83. package/elements/weather/weater-element.js +0 -1
  84. package/gui/gui-context.d.ts +2 -1
  85. package/gui/gui-host.d.ts +1 -1
  86. package/gui/gui-view.d.ts +2 -0
  87. package/gui/gui-view.js +20 -0
  88. package/gui/gui-view.metadata.json +1 -1
  89. package/gui/gui.component.d.ts +3 -0
  90. package/gui/gui.component.js +15 -2
  91. package/gui/gui.component.metadata.json +1 -1
  92. package/localization/localization.service.d.ts +7 -0
  93. package/localization/localization.service.js +10 -3
  94. package/localization/localization.service.metadata.json +1 -1
  95. package/localization/localization.service.zh_CN.js +8 -1
  96. package/localization/localization.service.zh_CN.metadata.json +1 -1
  97. package/modal/write-value/write-value-modal-args.d.ts +3 -1
  98. package/modal/write-value/write-value-modal-args.js +2 -1
  99. package/modal/write-value/write-value-modal-args.metadata.json +1 -1
  100. package/modal/write-value/write-value-modal.component.d.ts +8 -7
  101. package/modal/write-value/write-value-modal.component.html +9 -4
  102. package/modal/write-value/write-value-modal.component.js +42 -15
  103. package/modal/write-value/write-value-modal.component.metadata.json +1 -1
  104. package/model/air-quality/air-quality-info.d.ts +23 -0
  105. package/model/air-quality/air-quality-info.js +4 -0
  106. package/model/air-quality/air-quality-info.metadata.json +1 -0
  107. package/model/air-quality/air-quality.model.d.ts +7 -0
  108. package/model/air-quality/air-quality.model.js +0 -0
  109. package/model/air-quality/air-quality.model.metadata.json +1 -0
  110. package/model/alarm/alarm.model.d.ts +13 -0
  111. package/model/alarm/alarm.model.js +0 -0
  112. package/model/alarm/alarm.model.metadata.json +1 -0
  113. package/model/bar-graph/bar-graph.d.ts +4 -0
  114. package/model/base/readable-model.d.ts +4 -0
  115. package/model/datetime-display/datetime-display.d.ts +1 -0
  116. package/model/historical-curve/historical-curve-axis-settings.d.ts +11 -0
  117. package/model/historical-curve/historical-curve-axis-settings.js +5 -0
  118. package/model/historical-curve/historical-curve-axis-settings.metadata.json +1 -1
  119. package/model/historical-curve/historical-curve-chanel.model.d.ts +8 -0
  120. package/model/meter/meter.d.ts +4 -0
  121. package/model/ring-graph/ring-graph.model.d.ts +8 -0
  122. package/model/switch-indicator-light/bit-switch-operation.d.ts +2 -1
  123. package/model/switch-indicator-light/bit-switch-operation.js +1 -0
  124. package/model/switch-indicator-light/bit-switch-operation.metadata.json +1 -1
  125. package/package.json +1 -1
  126. package/remote/communication/variable/remote-variable-communicator.d.ts +7 -0
  127. package/remote/communication/variable/remote-variable-communicator.js +47 -1
  128. package/remote/communication/variable/remote-variable-communicator.metadata.json +1 -1
  129. package/remote/communication/variable/remote-variable-protocol.d.ts +5 -0
  130. package/service/index.d.ts +1 -0
  131. package/service/index.metadata.json +1 -1
  132. package/service/released-variable/index.d.ts +1 -0
  133. package/service/released-variable/index.js +0 -0
  134. package/service/released-variable/index.metadata.json +1 -0
  135. package/service/released-variable/released-variable.service.d.ts +4 -0
  136. package/service/released-variable/released-variable.service.js +0 -0
  137. package/service/released-variable/released-variable.service.metadata.json +1 -0
  138. package/service/weather.service.d.ts +1 -0
  139. package/shared/gui-consts.d.ts +2 -0
  140. package/shared/gui-consts.js +2 -0
  141. package/shared/gui-consts.metadata.json +1 -1
  142. package/utils/data-type/fbox-data-type.service.js +40 -0
@@ -0,0 +1,7 @@
1
+ import { Size } from '../shared';
2
+ import { ConditionalDisplayModel } from '../base';
3
+ export interface AirQualityModel extends ConditionalDisplayModel {
4
+ size: Size;
5
+ stroke: string;
6
+ fill: string;
7
+ }
File without changes
@@ -0,0 +1 @@
1
+ [{"__symbolic":"module","version":4,"metadata":{"AirQualityModel":{"__symbolic":"interface"}}}]
@@ -0,0 +1,13 @@
1
+ import { ConditionalDisplayModel } from '../base/conditional-display-model';
2
+ import { Point, Size } from '../shared';
3
+ export interface AlarmModel extends ConditionalDisplayModel {
4
+ readonly version: number;
5
+ readonly size: Size;
6
+ readonly location: Point;
7
+ readonly generalSetting?: any;
8
+ readonly filterSetting?: any;
9
+ readonly widths: number[];
10
+ readonly heights: number[];
11
+ readonly columLabels: string[];
12
+ readonly levelText: string[];
13
+ }
File without changes
@@ -0,0 +1 @@
1
+ [{"__symbolic":"module","version":4,"metadata":{"AlarmModel":{"__symbolic":"interface"}}}]
@@ -19,4 +19,8 @@ export interface BarGraph extends ReadableModel {
19
19
  readonly upperLimitColor?: string;
20
20
  readonly lowerLimitColor?: string;
21
21
  readonly percentageFont?: FontStyleData;
22
+ readonly masterDivisionNumber: number;
23
+ readonly subDivisionNumber: number;
24
+ readonly integerDigits: number;
25
+ readonly fractionDigits: number;
22
26
  }
@@ -7,4 +7,8 @@ export interface ReadableModel extends ConditionalEnableModel {
7
7
  readonly version?: number;
8
8
  readonly variableName?: string;
9
9
  readonly readVariable?: VariableDefinition;
10
+ readonly minVariable?: any;
11
+ readonly maxVariable?: any;
12
+ readonly minValueType?: any;
13
+ readonly maxValueType?: any;
10
14
  }
@@ -17,4 +17,5 @@ export interface DatetimeDisplay extends ConditionalDisplayModel {
17
17
  readonly version: number;
18
18
  readonly useGraph?: boolean;
19
19
  readonly graphSetting?: GraphSetting;
20
+ readonly timeZone?: string;
20
21
  }
@@ -1,6 +1,17 @@
1
1
  import { Font } from '../shared/text/font';
2
2
  export interface HistoricalCurveAxisSettings {
3
+ readonly yAxisRangeType: AxisRangeType;
4
+ readonly yAxisMax?: number;
5
+ readonly yAxisMin?: number;
3
6
  readonly axisColor: string;
4
7
  readonly showAxisLabel: boolean;
5
8
  readonly axisLabelFont: Font;
9
+ readonly showTick?: boolean;
10
+ readonly xAxisTickColor?: string;
11
+ readonly yAxisTickColor?: string;
12
+ readonly filterBackgroudColor?: string;
13
+ }
14
+ export declare enum AxisRangeType {
15
+ Auto = 0,
16
+ Custom = 1
6
17
  }
@@ -0,0 +1,5 @@
1
+ export var AxisRangeType;
2
+ (function (AxisRangeType) {
3
+ AxisRangeType[AxisRangeType["Auto"] = 0] = "Auto";
4
+ AxisRangeType[AxisRangeType["Custom"] = 1] = "Custom"; // 自定义范围
5
+ })(AxisRangeType || (AxisRangeType = {}));
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"HistoricalCurveAxisSettings":{"__symbolic":"interface"}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"HistoricalCurveAxisSettings":{"__symbolic":"interface"},"AxisRangeType":{"Auto":0,"Custom":1}}}]
@@ -7,6 +7,14 @@ export interface HistroicalCurveChannelModel {
7
7
  * 连接线颜色
8
8
  */
9
9
  readonly connectorColor: string;
10
+ /**
11
+ * 启用标记点
12
+ */
13
+ readonly enablePoint: boolean;
14
+ /**
15
+ * 标记点颜色
16
+ */
17
+ readonly pointColor: string;
10
18
  /**
11
19
  * 是否投影颜色
12
20
  */
@@ -10,4 +10,8 @@ export interface Meter extends ReadableModel {
10
10
  readonly radius: number;
11
11
  readonly min: number;
12
12
  readonly max: number;
13
+ readonly masterDivisionNumber: number;
14
+ readonly subDivisionNumber: number;
15
+ readonly integerDigits: number;
16
+ readonly fractionDigits: number;
13
17
  }
@@ -22,4 +22,12 @@ export interface RingGraphModel extends ConditionalDisplayModel {
22
22
  readonly alarmRange?: AlarmRangeModel;
23
23
  readonly showPercentage: boolean;
24
24
  readonly percentageFont?: Font;
25
+ readonly minVariable?: any;
26
+ readonly maxVariable?: any;
27
+ readonly minValueType?: any;
28
+ readonly maxValueType?: any;
29
+ readonly masterDivisionNumber: number;
30
+ readonly subDivisionNumber: number;
31
+ readonly integerDigits: number;
32
+ readonly fractionDigits: number;
25
33
  }
@@ -1,5 +1,6 @@
1
1
  export declare enum BitSwitchOperation {
2
2
  On = 0,
3
3
  Off = 1,
4
- Inverse = 2
4
+ Inverse = 2,
5
+ Restoration = 3
5
6
  }
@@ -3,4 +3,5 @@ export var BitSwitchOperation;
3
3
  BitSwitchOperation[BitSwitchOperation["On"] = 0] = "On";
4
4
  BitSwitchOperation[BitSwitchOperation["Off"] = 1] = "Off";
5
5
  BitSwitchOperation[BitSwitchOperation["Inverse"] = 2] = "Inverse";
6
+ BitSwitchOperation[BitSwitchOperation["Restoration"] = 3] = "Restoration";
6
7
  })(BitSwitchOperation || (BitSwitchOperation = {}));
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"BitSwitchOperation":{"On":0,"Off":1,"Inverse":2}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"BitSwitchOperation":{"On":0,"Off":1,"Inverse":2,"Restoration":3}}}]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "main": "bundles/fc-gui.umd.js",
3
- "version": "3.0.0-alpha.12",
3
+ "version": "3.0.0-alpha.120",
4
4
  "module": "public_api.js",
5
5
  "typings": "public_api.d.ts",
6
6
  "license": "UNLICENSED",
@@ -9,6 +9,7 @@ export declare class RemoteVariableCommunicator implements VariableCommunicator
9
9
  private appIdVariablesMap;
10
10
  private connectedSubscription;
11
11
  private variableValuesChangedSubscription;
12
+ private virtualDeviceStatesChangedSubscription;
12
13
  private variablesToBeOpened;
13
14
  private variablesToBeClosed;
14
15
  private variableValueCache;
@@ -17,14 +18,20 @@ export declare class RemoteVariableCommunicator implements VariableCommunicator
17
18
  private variableStateCache;
18
19
  private variableStatesToBeOpened;
19
20
  private variableStatesToBeClosed;
21
+ private alarmObservers;
22
+ private alarmChangedSubscription;
20
23
  constructor(remoteVariableProtocol: RemoteVariableProtocol, logger: LoggerService);
24
+ private doAlarmChanged;
21
25
  private doVariableValuesChanged;
26
+ private doVirtualDeviceStatesChanged;
22
27
  private doVariableStatesChanged;
23
28
  subscribeVariableStates(variableNames: string[]): Observable<VariableState[]>;
24
29
  subscribeVariableState(variableName: string): Observable<VariableState>;
30
+ requestVirtualDeviceState(): Observable<void>;
25
31
  openVariables(variableNames: string[], appId?: string): Observable<VariableValue[]>;
26
32
  openVariable(variableName: string, appId?: string): Observable<VariableValue>;
27
33
  write(variableName: string, value: any): Observable<VariableValue>;
28
34
  writeWordByBit(variableName: string, index: number, value: number): Observable<VariableValue>;
35
+ subscribeUserDeviceAlarms(appId?: string): Observable<any[]>;
29
36
  dispose(): void;
30
37
  }
@@ -10,6 +10,7 @@ export class RemoteVariableCommunicator {
10
10
  this.appIdVariablesMap = new Map();
11
11
  this.variableStateObservers = new Map();
12
12
  this.variableStateCache = new Map();
13
+ this.alarmObservers = [];
13
14
  this.variableValueCache = new StringifyingMap(k => JSON.stringify(k));
14
15
  this.connectedSubscription = this.remoteVariableProtocol.connected.subscribe(() => {
15
16
  const variableNamesToStart = [];
@@ -23,6 +24,18 @@ export class RemoteVariableCommunicator {
23
24
  });
24
25
  this.doVariableStatesChanged();
25
26
  this.doVariableValuesChanged();
27
+ this.doVirtualDeviceStatesChanged();
28
+ this.doAlarmChanged();
29
+ }
30
+ doAlarmChanged() {
31
+ if (this.alarmChangedSubscription !== undefined) {
32
+ this.alarmChangedSubscription.unsubscribe();
33
+ }
34
+ this.alarmChangedSubscription = this.remoteVariableProtocol.virtualDeviceAlarmsChanged.subscribe((alarms) => {
35
+ each(this.alarmObservers, ob => {
36
+ ob.next(alarms);
37
+ });
38
+ });
26
39
  }
27
40
  doVariableValuesChanged() {
28
41
  if (this.variableValuesChangedSubscription !== undefined) {
@@ -42,6 +55,25 @@ export class RemoteVariableCommunicator {
42
55
  });
43
56
  });
44
57
  }
58
+ doVirtualDeviceStatesChanged() {
59
+ if (this.virtualDeviceStatesChangedSubscription !== undefined) {
60
+ this.virtualDeviceStatesChangedSubscription.unsubscribe();
61
+ }
62
+ this.virtualDeviceStatesChangedSubscription =
63
+ this.remoteVariableProtocol.virtualDeviceStatesChanged.subscribe((deviceStates) => {
64
+ each(deviceStates, deviceState => {
65
+ const variableName = '设备状态';
66
+ this.variableValueCache.set(variableName, deviceState);
67
+ const data = Object.assign(Object.assign({}, deviceState), { systemName: '设备状态' });
68
+ if (this.observers.has(variableName)) {
69
+ each(this.observers.get(variableName), ob => {
70
+ // TODO 同一个ob监听多个变量的情况,组合成数组一次推送。
71
+ ob.next([data]);
72
+ });
73
+ }
74
+ });
75
+ });
76
+ }
45
77
  doVariableStatesChanged() {
46
78
  if (this.variableStatesChangedSubscription !== undefined) {
47
79
  this.variableStatesChangedSubscription.unsubscribe();
@@ -115,6 +147,9 @@ export class RemoteVariableCommunicator {
115
147
  subscribeVariableState(variableName) {
116
148
  return this.subscribeVariableStates([variableName]).pipe(map(values => values[0]));
117
149
  }
150
+ requestVirtualDeviceState() {
151
+ return this.remoteVariableProtocol.requestVirtualDeviceState();
152
+ }
118
153
  openVariables(variableNames, appId = '') {
119
154
  return new Observable(observer => {
120
155
  let variablesToStart = [];
@@ -135,7 +170,7 @@ export class RemoteVariableCommunicator {
135
170
  }
136
171
  else {
137
172
  if (this.appIdVariablesMap.get(appId).indexOf(variableName) === -1) {
138
- this.appIdVariablesMap.get(appId).push();
173
+ this.appIdVariablesMap.get(appId).push(variableName);
139
174
  }
140
175
  }
141
176
  }
@@ -203,11 +238,22 @@ export class RemoteVariableCommunicator {
203
238
  observer.next(new VariableValue(variable, VariableStateEnum.DataNormal, value))*/
204
239
  });
205
240
  }
241
+ subscribeUserDeviceAlarms(appId = '') {
242
+ return new Observable(observer => {
243
+ this.alarmObservers.push(observer);
244
+ this.remoteVariableProtocol.subscribeVirtualDeviceAlarms(appId);
245
+ return () => {
246
+ this.remoteVariableProtocol.unsubscribeVirtualDeviceAlarms(appId);
247
+ };
248
+ });
249
+ }
206
250
  dispose() {
207
251
  // TODO调用所有的ob.complete()。
208
252
  this.connectedSubscription.unsubscribe();
209
253
  this.variableStatesChangedSubscription.unsubscribe();
210
254
  this.variableValuesChangedSubscription.unsubscribe();
255
+ this.virtualDeviceStatesChangedSubscription.unsubscribe();
256
+ this.alarmChangedSubscription.unsubscribe();
211
257
  if (this.logger && this.logger.isDebugEnabled()) {
212
258
  this.logger.debug('[VariableCommunicator] RemoteVariableCommunicator disposed.');
213
259
  }
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"RemoteVariableCommunicator":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./remote-variable-protocol","name":"RemoteVariableProtocol","line":24,"character":57},{"__symbolic":"reference","module":"../../../logger","name":"LoggerService","line":24,"character":106}]}],"doVariableValuesChanged":[{"__symbolic":"method"}],"doVariableStatesChanged":[{"__symbolic":"method"}],"subscribeVariableStates":[{"__symbolic":"method"}],"subscribeVariableState":[{"__symbolic":"method"}],"openVariables":[{"__symbolic":"method"}],"openVariable":[{"__symbolic":"method"}],"write":[{"__symbolic":"method"}],"writeWordByBit":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}]}}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"RemoteVariableCommunicator":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./remote-variable-protocol","name":"RemoteVariableProtocol","line":28,"character":57},{"__symbolic":"reference","module":"../../../logger","name":"LoggerService","line":28,"character":106}]}],"doAlarmChanged":[{"__symbolic":"method"}],"doVariableValuesChanged":[{"__symbolic":"method"}],"doVirtualDeviceStatesChanged":[{"__symbolic":"method"}],"doVariableStatesChanged":[{"__symbolic":"method"}],"subscribeVariableStates":[{"__symbolic":"method"}],"subscribeVariableState":[{"__symbolic":"method"}],"requestVirtualDeviceState":[{"__symbolic":"method"}],"openVariables":[{"__symbolic":"method"}],"openVariable":[{"__symbolic":"method"}],"write":[{"__symbolic":"method"}],"writeWordByBit":[{"__symbolic":"method"}],"subscribeUserDeviceAlarms":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}]}}}}]
@@ -4,10 +4,15 @@ export interface RemoteVariableProtocol {
4
4
  connected: Observable<void>;
5
5
  variableStatesChanged: Observable<VariableValue[]>;
6
6
  variableValuesChanged: Observable<VariableValue[]>;
7
+ virtualDeviceAlarmsChanged: Observable<any>;
7
8
  tryOpenVariables(variableNames: string[], appId: string): Observable<void>;
8
9
  tryStopVariables(variableNames: string[], appId: string): Observable<void>;
9
10
  writeVariable(variableName: string, value: any): Observable<void>;
10
11
  writeVariableWordByBit(variableName: string, index: number, value: number): Observable<void>;
12
+ requestVirtualDeviceState(): Observable<void>;
13
+ virtualDeviceStatesChanged: Observable<any>;
11
14
  subscribeVariableStates(variableNames: string[]): Observable<void>;
12
15
  unsubscribeVariableStates(variableNames: string[]): Observable<void>;
16
+ subscribeVirtualDeviceAlarms(appId: string): any;
17
+ unsubscribeVirtualDeviceAlarms(appId: string): any;
13
18
  }
@@ -1,4 +1,5 @@
1
1
  export { WeatherService } from './weather.service';
2
2
  export { PermissionChecker } from './permission-checker';
3
+ export { ReleasedVariableService } from './released-variable';
3
4
  export * from './operation-record';
4
5
  export * from './video';
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{},"exports":[{"from":"./weather.service","export":["WeatherService"]},{"from":"./permission-checker","export":["PermissionChecker"]},{"from":"./operation-record"},{"from":"./video"}]}]
1
+ [{"__symbolic":"module","version":4,"metadata":{},"exports":[{"from":"./weather.service","export":["WeatherService"]},{"from":"./permission-checker","export":["PermissionChecker"]},{"from":"./released-variable","export":["ReleasedVariableService"]},{"from":"./operation-record"},{"from":"./video"}]}]
@@ -0,0 +1 @@
1
+ export { ReleasedVariableService } from './released-variable.service';
File without changes
@@ -0,0 +1 @@
1
+ [{"__symbolic":"module","version":4,"metadata":{},"exports":[{"from":"./released-variable.service","export":["ReleasedVariableService"]}]}]
@@ -0,0 +1,4 @@
1
+ import { Observable } from 'rxjs';
2
+ export interface ReleasedVariableService {
3
+ getVariableWithValueTransform(variableName: any): Observable<any>;
4
+ }
@@ -0,0 +1 @@
1
+ [{"__symbolic":"module","version":4,"metadata":{"ReleasedVariableService":{"__symbolic":"interface"}}}]
@@ -1,3 +1,4 @@
1
1
  export interface WeatherService {
2
2
  getWeatherInfo(): Promise<any>;
3
+ getAirQualityInfo(): Promise<any>;
3
4
  }
@@ -26,5 +26,7 @@ export declare class GuiConsts {
26
26
  videokey: string;
27
27
  tableKey: string;
28
28
  weatherKey: string;
29
+ airQualityKey: string;
30
+ alarmKey: string;
29
31
  };
30
32
  }
@@ -27,4 +27,6 @@ GuiConsts.components = {
27
27
  videokey: 'Video',
28
28
  tableKey: 'Table',
29
29
  weatherKey: 'Weather',
30
+ airQualityKey: 'AirQualityIndex',
31
+ alarmKey: 'Alarm'
30
32
  };
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"GuiConsts":{"__symbolic":"class","statics":{"components":{"imageKey":"Image","numericalDisplayKey":"NumericalDisplay","textKey":"Text","hyperlinkKey":"Hyperlink","meterKey":"Meter","pipeKey":"Pipe","switchIndicatorLightKey":"SwitchIndicatorLight","barGraphKey":"BarGraph","toggleViewKey":"ToggleView","characterKey":"Character","straightLineKey":"StraightLine","polyLineKey":"PolyLine","rectangleKey":"Rectangle","sectorkey":"Sector","ellipseKey":"Ellipse","datetimeDisplayKey":"DatetimeDisplay","historicalCurveKey":"HistoricalCurve","ringGraphKey":"RingGraph","viewOperationElement":"ViewOperation","polygonKey":"Polygon","videokey":"Video","tableKey":"Table","weatherKey":"Weather"}}}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"GuiConsts":{"__symbolic":"class","statics":{"components":{"imageKey":"Image","numericalDisplayKey":"NumericalDisplay","textKey":"Text","hyperlinkKey":"Hyperlink","meterKey":"Meter","pipeKey":"Pipe","switchIndicatorLightKey":"SwitchIndicatorLight","barGraphKey":"BarGraph","toggleViewKey":"ToggleView","characterKey":"Character","straightLineKey":"StraightLine","polyLineKey":"PolyLine","rectangleKey":"Rectangle","sectorkey":"Sector","ellipseKey":"Ellipse","datetimeDisplayKey":"DatetimeDisplay","historicalCurveKey":"HistoricalCurve","ringGraphKey":"RingGraph","viewOperationElement":"ViewOperation","polygonKey":"Polygon","videokey":"Video","tableKey":"Table","weatherKey":"Weather","airQualityKey":"AirQualityIndex","alarmKey":"Alarm"}}}}}]
@@ -109,6 +109,16 @@ let FBoxDataTypeService = class FBoxDataTypeService {
109
109
  return 8;
110
110
  case 15: // Binary32
111
111
  return 32;
112
+ case 21: // UInt64
113
+ return 16;
114
+ case 22: // Int64
115
+ return 16;
116
+ case 23: // Bcd64
117
+ return 16;
118
+ case 24: // Hex64
119
+ return 8;
120
+ case 25: // Binary64
121
+ return 32;
112
122
  default:
113
123
  return 0;
114
124
  }
@@ -165,6 +175,12 @@ let FBoxDataTypeService = class FBoxDataTypeService {
165
175
  case 13: // Bcd32
166
176
  case 14: // Hex32
167
177
  case 15: // Binary32
178
+ case 21: // UInt64
179
+ case 23: // Bcd64
180
+ case 14: // Hex32
181
+ case 15: // Binary32
182
+ case 24: // Hex64
183
+ case 25: // Binary64
168
184
  minValue = 0;
169
185
  break;
170
186
  case 2: // Int16
@@ -176,6 +192,13 @@ let FBoxDataTypeService = class FBoxDataTypeService {
176
192
  case 16: // Single
177
193
  minValue = -1000000000;
178
194
  break;
195
+ case 22: // Int64
196
+ // minValue = -9223372036854775808;
197
+ minValue = Number.MIN_SAFE_INTEGER;
198
+ break;
199
+ case 26: // Double
200
+ minValue = -Number.MAX_VALUE;
201
+ break;
179
202
  }
180
203
  if (integerDigits) {
181
204
  let digitsLength = integerDigits;
@@ -227,6 +250,23 @@ let FBoxDataTypeService = class FBoxDataTypeService {
227
250
  case 16: // Single
228
251
  maxValue = 1000000000;
229
252
  break;
253
+ case 21: // UInt64
254
+ case 24: // Hex64
255
+ case 25: // Binary64
256
+ // maxValue = 18446744073709551615;
257
+ maxValue = Number.MAX_SAFE_INTEGER;
258
+ break;
259
+ case 22: // Int64
260
+ // maxValue = 9223372036854775807;
261
+ maxValue = Number.MAX_SAFE_INTEGER;
262
+ break;
263
+ case 23: // Bcd64
264
+ // maxValue = 9999999999999999;
265
+ maxValue = Number.MAX_SAFE_INTEGER;
266
+ break;
267
+ case 26: // Double
268
+ maxValue = Number.MAX_VALUE;
269
+ break;
230
270
  }
231
271
  if (integerDigits) {
232
272
  let digitsLength = integerDigits;