@bitpoolos/edge-bacnet 1.4.3 → 1.4.5
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 +24 -0
- package/bacnet_client.js +200 -123
- package/bacnet_gateway.html +141 -135
- package/bacnet_gateway.js +15 -0
- package/bacnet_read.html +45 -42
- package/bacnet_read.js +69 -60
- package/bacnet_write.html +7 -5
- package/bitpool_inject.html +49 -136
- package/package.json +1 -1
- package/resources/style.css +602 -202
- package/treeBuilder.js +0 -1
package/bitpool_inject.html
CHANGED
|
@@ -20,38 +20,48 @@
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
<script type="text/html" data-template-name="Bitpool-Inject">
|
|
23
|
-
<div class="form-row">
|
|
24
|
-
<label for="node-input-name"
|
|
23
|
+
<div class="form-row bp-row">
|
|
24
|
+
<label for="node-input-name"> <span data-i18n="common.label.name"></span></label>
|
|
25
25
|
<input type="text" id="node-input-name" data-i18n="[placeholder]common.label.name">
|
|
26
26
|
</div>
|
|
27
27
|
|
|
28
|
+
<div class="bp-objectPropertiesLabel bp-checkbox-row">
|
|
29
|
+
<label
|
|
30
|
+
for="node-input-useDeviceName"
|
|
31
|
+
style="padding-left: 4px; align-items: start;"
|
|
32
|
+
class="objectPropertiesLabel">
|
|
33
|
+
<span data-i18n="bitpool-bacnet.label.useDeviceName"></span>
|
|
34
|
+
<a style="white-space: nowrap; padding-left: 20px;">Use device name in topic</a>
|
|
35
|
+
<input
|
|
36
|
+
style="margin-left: 10px; bottom: 3px;"
|
|
37
|
+
class=" objectProp bp-checkbox"
|
|
38
|
+
type="checkbox"
|
|
39
|
+
id="node-input-useDeviceName" />
|
|
40
|
+
</label>
|
|
41
|
+
</div>
|
|
42
|
+
|
|
28
43
|
<div class="form-row node-input-property-container-row bitpoolInjectList">
|
|
29
44
|
<div id="node-input-property-container-list" class="optionsSelector">
|
|
30
45
|
<div class="injectHeading">
|
|
31
46
|
<a>Inject Type </a>
|
|
32
47
|
</div>
|
|
33
48
|
|
|
34
|
-
<div class="
|
|
35
|
-
<div class="msgOptions discoverOption">
|
|
36
|
-
<input class="checkbox-round" type="checkbox" id="node-input-doDiscover"
|
|
49
|
+
<div class="bp-button-group">
|
|
50
|
+
<div id="node-input-doDiscover-button" class="msgOptions discoverOption">
|
|
51
|
+
<input class="checkbox-round" type="checkbox" id="node-input-doDiscover" style="display: none;"/>
|
|
37
52
|
<label style="font-size: 16px; height: min-content; margin-bottom: 0px;" for="node-input-doDiscover">Discover</label>
|
|
38
53
|
</div>
|
|
39
|
-
<div class="msgOptions pollOption">
|
|
40
|
-
<input class="checkbox-round" type="checkbox" id="node-input-doPoll"
|
|
54
|
+
<div class="msgOptions pollOption" id="node-input-doPoll-button">
|
|
55
|
+
<input class="checkbox-round" type="checkbox" id="node-input-doPoll" style="display: none;"/>
|
|
41
56
|
<label style="font-size: 16px; height: min-content; margin-bottom: 0px;" for="node-input-doPoll">Poll</label>
|
|
42
57
|
</div>
|
|
43
58
|
</div>
|
|
44
59
|
|
|
45
|
-
<div class="form-row
|
|
60
|
+
<div class="form-row bp-msg-type-row">
|
|
46
61
|
|
|
47
|
-
<div
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
<label
|
|
51
|
-
for="node-input-object_properties_group"
|
|
52
|
-
style="display: flex; align-items: center; white-space: nowrap; text-decoration: underline;"
|
|
53
|
-
>
|
|
54
|
-
Object Properties:
|
|
62
|
+
<div id="node-input-object_properties_group" class="bp-msg-type-column bp-object">
|
|
63
|
+
<label for="node-input-object_properties_group" class="bp-msg-type-labels">
|
|
64
|
+
Object Properties
|
|
55
65
|
</label>
|
|
56
66
|
|
|
57
67
|
<div class="objectPropertiesLabel">
|
|
@@ -62,7 +72,7 @@
|
|
|
62
72
|
<i class="icon-tag"></i> <span data-i18n="bitpool-bacnet.label.object_property_simplePayload"></span>
|
|
63
73
|
<input
|
|
64
74
|
style="margin-left: 5px;"
|
|
65
|
-
class=" objectProp"
|
|
75
|
+
class=" objectProp checkbox-round"
|
|
66
76
|
type="checkbox"
|
|
67
77
|
id="node-input-object_property_simplePayload" />
|
|
68
78
|
<a style="white-space: nowrap; padding-left: 20px;">Simple Payload</a>
|
|
@@ -77,7 +87,7 @@
|
|
|
77
87
|
<i class="icon-tag"></i> <span data-i18n="bitpool-bacnet.label.object_property_simpleWithStatus"></span>
|
|
78
88
|
<input
|
|
79
89
|
style="margin-left: 5px;"
|
|
80
|
-
class=" objectProp"
|
|
90
|
+
class=" objectProp checkbox-round"
|
|
81
91
|
type="checkbox"
|
|
82
92
|
id="node-input-object_property_simpleWithStatus" />
|
|
83
93
|
<a style="white-space: nowrap; padding-left: 20px;">Simple With Status</a>
|
|
@@ -92,7 +102,7 @@
|
|
|
92
102
|
<i class="icon-tag"></i> <span data-i18n="bitpool-bacnet.label.object_property_fullObject"></span>
|
|
93
103
|
<input
|
|
94
104
|
style="margin-left: 5px;"
|
|
95
|
-
class=" objectProp"
|
|
105
|
+
class=" objectProp checkbox-round"
|
|
96
106
|
type="checkbox"
|
|
97
107
|
id="node-input-object_property_fullObject" />
|
|
98
108
|
<a style="white-space: nowrap; padding-left: 20px;">Full Object</a>
|
|
@@ -102,8 +112,8 @@
|
|
|
102
112
|
</div>
|
|
103
113
|
<div
|
|
104
114
|
id="node-input-msgType"
|
|
105
|
-
|
|
106
|
-
<label for="node-input-msgType"
|
|
115
|
+
class="bp-msg-type-column bp-msg">
|
|
116
|
+
<label for="node-input-msgType" class="bp-msg-type-labels"> Message type </label>
|
|
107
117
|
<!-- class= checkbox-round -->
|
|
108
118
|
<div style="display: flex; flex-direction: row; align-items: flex-start;">
|
|
109
119
|
<input
|
|
@@ -142,31 +152,11 @@
|
|
|
142
152
|
</div>
|
|
143
153
|
</div>
|
|
144
154
|
|
|
145
|
-
|
|
146
|
-
<div class="injectHeading" style="margin-top: 20px;">
|
|
147
|
-
<a>Topic Properties</a>
|
|
148
|
-
</div>
|
|
149
|
-
|
|
150
|
-
<div class="objectPropertiesLabel" style="margin-top: 20px;">
|
|
151
|
-
<label
|
|
152
|
-
for="node-input-useDeviceName"
|
|
153
|
-
style="padding-left: 4px; width: auto; align-items: start;"
|
|
154
|
-
class="objectPropertiesLabel">
|
|
155
|
-
<i class="icon-tag"></i> <span data-i18n="bitpool-bacnet.label.useDeviceName"></span>
|
|
156
|
-
<input
|
|
157
|
-
style="margin-left: 5px;"
|
|
158
|
-
class=" objectProp"
|
|
159
|
-
type="checkbox"
|
|
160
|
-
id="node-input-useDeviceName" />
|
|
161
|
-
<a style="white-space: nowrap; padding-left: 20px;">Use device name in topic</a>
|
|
162
|
-
</label>
|
|
163
|
-
</div>
|
|
164
|
-
|
|
165
155
|
<div class="injectHeading" style="margin-top: 20px;">
|
|
166
156
|
<a>Msg Properties</a>
|
|
167
157
|
</div>
|
|
168
158
|
|
|
169
|
-
<ol id="node-input-property-container" class="nrEditableList" style="height: 400px !important;"></ol>
|
|
159
|
+
<ol id="node-input-property-container" class="nrEditableList bp-editable-list" style="height: 400px !important;"></ol>
|
|
170
160
|
|
|
171
161
|
</div>
|
|
172
162
|
|
|
@@ -261,91 +251,6 @@
|
|
|
261
251
|
|
|
262
252
|
</script>
|
|
263
253
|
<style>
|
|
264
|
-
.optionParent {
|
|
265
|
-
display: flex;
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
.injectHeading>a {
|
|
269
|
-
margin: 0;
|
|
270
|
-
font-weight: 600;
|
|
271
|
-
font-size: 14px;
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
.injectHeading {
|
|
275
|
-
border-bottom: 1px solid #cbcbcb;
|
|
276
|
-
text-align: start;
|
|
277
|
-
height: 30px;
|
|
278
|
-
}
|
|
279
|
-
|
|
280
|
-
.checkbox-round {
|
|
281
|
-
width: 13px !important;
|
|
282
|
-
height: 13px !important;
|
|
283
|
-
background-color: white;
|
|
284
|
-
border-radius: 50%;
|
|
285
|
-
vertical-align: middle;
|
|
286
|
-
border: 1px solid #ddd;
|
|
287
|
-
appearance: none;
|
|
288
|
-
-webkit-appearance: none;
|
|
289
|
-
outline: none;
|
|
290
|
-
cursor: pointer;
|
|
291
|
-
}
|
|
292
|
-
|
|
293
|
-
.checkbox-round:checked {
|
|
294
|
-
background-color: #00AEEF;
|
|
295
|
-
}
|
|
296
|
-
|
|
297
|
-
.checkbox-round:focus {
|
|
298
|
-
outline: none !important;
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
.msgOptions {
|
|
302
|
-
border: 1px solid #cbcbcb;
|
|
303
|
-
border-radius: 4px;
|
|
304
|
-
height: 35px;
|
|
305
|
-
transition: 1s;
|
|
306
|
-
display: flex;
|
|
307
|
-
flex-direction: row;
|
|
308
|
-
justify-content: space-evenly;
|
|
309
|
-
align-items: center;
|
|
310
|
-
cursor: pointer;
|
|
311
|
-
width: 50%;
|
|
312
|
-
}
|
|
313
|
-
|
|
314
|
-
.msgOptions:hover {
|
|
315
|
-
border: 1px solid #00AEEF;
|
|
316
|
-
transition: 1s;
|
|
317
|
-
background-color: #f5fcff;
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
.discoverOption {
|
|
321
|
-
margin-top: 15px;
|
|
322
|
-
width: 180px;
|
|
323
|
-
margin-right: 20px;
|
|
324
|
-
margin-left: auto;
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
.pollOption {
|
|
328
|
-
margin-top: 15px;
|
|
329
|
-
width: 180px;
|
|
330
|
-
margin-right: auto;
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
.optionsSelector {
|
|
334
|
-
min-height: 90px !important;
|
|
335
|
-
max-height: none !important;
|
|
336
|
-
display: flex;
|
|
337
|
-
flex-direction: column;
|
|
338
|
-
flex-wrap: nowrap;
|
|
339
|
-
justify-content: space-around;
|
|
340
|
-
}
|
|
341
|
-
|
|
342
|
-
.bitpoolInjectList>.red-ui-editableList>.red-ui-editableList-container {
|
|
343
|
-
min-height: 120px !important;
|
|
344
|
-
max-height: none;
|
|
345
|
-
overflow-y: scroll;
|
|
346
|
-
height: 410px !important;
|
|
347
|
-
}
|
|
348
|
-
|
|
349
254
|
/* node-red css */
|
|
350
255
|
|
|
351
256
|
.inject-time-row {
|
|
@@ -799,13 +704,9 @@
|
|
|
799
704
|
document.getElementById("node-input-object_property_simpleWithStatus").onclick = handlePayloadCheckboxClick;
|
|
800
705
|
document.getElementById("node-input-object_property_fullObject").checked = node.object_property_fullObject;
|
|
801
706
|
document.getElementById("node-input-object_property_fullObject").onclick = handlePayloadCheckboxClick;
|
|
802
|
-
|
|
803
707
|
document.getElementById("node-input-useDeviceName").checked = node.useDeviceName;
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
document.getElementById("node-input-doDiscover").onclick = handleCheckboxClick;
|
|
807
|
-
document.getElementById("node-input-doPoll").onclick = handleCheckboxClick;
|
|
808
|
-
|
|
708
|
+
document.getElementById("node-input-doDiscover-button").onclick = handleCheckboxClick;
|
|
709
|
+
document.getElementById("node-input-doPoll-button").onclick = handleCheckboxClick;
|
|
809
710
|
document.getElementById("node-input-json").checked = node.json;
|
|
810
711
|
document.getElementById("node-input-json").onclick = handleMsgTypeClick;
|
|
811
712
|
document.getElementById("node-input-mqtt").checked = node.mqtt;
|
|
@@ -813,14 +714,26 @@
|
|
|
813
714
|
document.getElementById("node-input-pointJson").checked = node.pointJson;
|
|
814
715
|
document.getElementById("node-input-pointJson").onclick = handleMsgTypeClick;
|
|
815
716
|
|
|
816
|
-
|
|
717
|
+
if (document.getElementById("node-input-doPoll").checked) {
|
|
718
|
+
document.getElementById("node-input-doPoll-button").classList.add("activeButton");
|
|
719
|
+
document.getElementById("node-input-doDiscover-button").classList.remove("activeButton");
|
|
720
|
+
} else if (document.getElementById("node-input-doDiscover").checked) {
|
|
721
|
+
document.getElementById("node-input-doDiscover-button").classList.add("activeButton");
|
|
722
|
+
document.getElementById("node-input-doPoll-button").classList.remove("activeButton");
|
|
723
|
+
}
|
|
817
724
|
|
|
818
725
|
function handleCheckboxClick() {
|
|
819
|
-
if (this.id == "node-input-doDiscover") {
|
|
726
|
+
if (this.id == "node-input-doDiscover-button") {
|
|
727
|
+
document.getElementById("node-input-doDiscover").checked = true;
|
|
820
728
|
document.getElementById("node-input-doPoll").checked = false;
|
|
729
|
+
document.getElementById("node-input-doDiscover-button").classList.add("activeButton");
|
|
730
|
+
document.getElementById("node-input-doPoll-button").classList.remove("activeButton");
|
|
821
731
|
}
|
|
822
|
-
if (this.id == "node-input-doPoll") {
|
|
732
|
+
if (this.id == "node-input-doPoll-button") {
|
|
733
|
+
document.getElementById("node-input-doPoll").checked = true;
|
|
823
734
|
document.getElementById("node-input-doDiscover").checked = false;
|
|
735
|
+
document.getElementById("node-input-doPoll-button").classList.add("activeButton");
|
|
736
|
+
document.getElementById("node-input-doDiscover-button").classList.remove("activeButton");
|
|
824
737
|
}
|
|
825
738
|
}
|
|
826
739
|
|