@hurenkam/hue-services 0.6.4 → 0.6.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.
Files changed (111) hide show
  1. package/README.md +14 -5
  2. package/attic-bridge-v2-key.txt +2 -0
  3. package/package.json +1 -1
  4. package/src/all.html +4 -0
  5. package/src/all.js +4 -0
  6. package/src/clip/ClipApi.js +4 -35
  7. package/src/nodes/CameraMotionNode.js +39 -0
  8. package/src/nodes/ContactNode.js +52 -0
  9. package/src/ui/CameraMotionUI.js +27 -0
  10. package/src/ui/ContactUI.js +27 -0
  11. package/.nyc_output/badbd0a1-e95b-4210-b112-988173b5b131.json +0 -1
  12. package/.nyc_output/processinfo/badbd0a1-e95b-4210-b112-988173b5b131.json +0 -1
  13. package/.nyc_output/processinfo/index.json +0 -1
  14. package/.vscode/settings.json +0 -15
  15. package/.vscode/sftp.json +0 -11
  16. package/Todo.txt +0 -18
  17. package/coverage/BaseNode.js.html +0 -379
  18. package/coverage/base.css +0 -224
  19. package/coverage/block-navigation.js +0 -87
  20. package/coverage/favicon.png +0 -0
  21. package/coverage/index.html +0 -146
  22. package/coverage/lcov-report/base.css +0 -224
  23. package/coverage/lcov-report/block-navigation.js +0 -87
  24. package/coverage/lcov-report/favicon.png +0 -0
  25. package/coverage/lcov-report/index.html +0 -161
  26. package/coverage/lcov-report/prettify.css +0 -1
  27. package/coverage/lcov-report/prettify.js +0 -2
  28. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  29. package/coverage/lcov-report/sorter.js +0 -196
  30. package/coverage/lcov-report/src/RestApi.js.html +0 -499
  31. package/coverage/lcov-report/src/all.js.html +0 -208
  32. package/coverage/lcov-report/src/clip/ClipApi.js.html +0 -1096
  33. package/coverage/lcov-report/src/clip/Resource.js.html +0 -481
  34. package/coverage/lcov-report/src/clip/index.html +0 -131
  35. package/coverage/lcov-report/src/debug.js.html +0 -253
  36. package/coverage/lcov-report/src/files.js.html +0 -118
  37. package/coverage/lcov-report/src/index.html +0 -161
  38. package/coverage/lcov-report/src/nodes/BaseNode.js.html +0 -381
  39. package/coverage/lcov-report/src/nodes/BridgeConfigNode.js.html +0 -817
  40. package/coverage/lcov-report/src/nodes/ButtonNode.js.html +0 -241
  41. package/coverage/lcov-report/src/nodes/DevicePowerNode.js.html +0 -199
  42. package/coverage/lcov-report/src/nodes/GroupedLightNode.js.html +0 -226
  43. package/coverage/lcov-report/src/nodes/LightLevelNode.js.html +0 -205
  44. package/coverage/lcov-report/src/nodes/LightNode.js.html +0 -226
  45. package/coverage/lcov-report/src/nodes/MotionNode.js.html +0 -205
  46. package/coverage/lcov-report/src/nodes/RelativeRotaryNode.js.html +0 -253
  47. package/coverage/lcov-report/src/nodes/ResourceNode.js.html +0 -388
  48. package/coverage/lcov-report/src/nodes/SceneNode.js.html +0 -124
  49. package/coverage/lcov-report/src/nodes/ServiceNode.js.html +0 -124
  50. package/coverage/lcov-report/src/nodes/TemperatureNode.js.html +0 -205
  51. package/coverage/lcov-report/src/nodes/ZigbeeConnectivityNode.js.html +0 -199
  52. package/coverage/lcov-report/src/nodes/index.html +0 -311
  53. package/coverage/lcov-report/src/ui/BaseUI.js.html +0 -484
  54. package/coverage/lcov-report/src/ui/BridgeConfigUI.js.html +0 -475
  55. package/coverage/lcov-report/src/ui/ButtonUI.js.html +0 -166
  56. package/coverage/lcov-report/src/ui/DevicePowerUI.js.html +0 -166
  57. package/coverage/lcov-report/src/ui/GroupedLightUI.js.html +0 -178
  58. package/coverage/lcov-report/src/ui/LightLevelUI.js.html +0 -166
  59. package/coverage/lcov-report/src/ui/LightUI.js.html +0 -178
  60. package/coverage/lcov-report/src/ui/MotionUI.js.html +0 -166
  61. package/coverage/lcov-report/src/ui/RelativeRotaryUI.js.html +0 -166
  62. package/coverage/lcov-report/src/ui/ResourceUI.js.html +0 -511
  63. package/coverage/lcov-report/src/ui/SceneUI.js.html +0 -160
  64. package/coverage/lcov-report/src/ui/ServiceUI.js.html +0 -868
  65. package/coverage/lcov-report/src/ui/TemperatureUI.js.html +0 -166
  66. package/coverage/lcov-report/src/ui/ZigbeeConnectivityUI.js.html +0 -166
  67. package/coverage/lcov-report/src/ui/index.html +0 -311
  68. package/coverage/lcov.info +0 -2217
  69. package/coverage/prettify.css +0 -1
  70. package/coverage/prettify.js +0 -2
  71. package/coverage/sort-arrow-sprite.png +0 -0
  72. package/coverage/sorter.js +0 -196
  73. package/coverage/src/RestApi.js.html +0 -499
  74. package/coverage/src/all.js.html +0 -208
  75. package/coverage/src/clip/ClipApi.js.html +0 -1183
  76. package/coverage/src/clip/Resource.js.html +0 -481
  77. package/coverage/src/clip/index.html +0 -131
  78. package/coverage/src/debug.js.html +0 -253
  79. package/coverage/src/files.js.html +0 -118
  80. package/coverage/src/index.html +0 -116
  81. package/coverage/src/nodes/BaseNode.js.html +0 -379
  82. package/coverage/src/nodes/BridgeConfigNode.js.html +0 -517
  83. package/coverage/src/nodes/ButtonNode.js.html +0 -238
  84. package/coverage/src/nodes/DevicePowerNode.js.html +0 -196
  85. package/coverage/src/nodes/GroupedLightNode.js.html +0 -223
  86. package/coverage/src/nodes/LightLevelNode.js.html +0 -202
  87. package/coverage/src/nodes/LightNode.js.html +0 -223
  88. package/coverage/src/nodes/MotionNode.js.html +0 -202
  89. package/coverage/src/nodes/RelativeRotaryNode.js.html +0 -250
  90. package/coverage/src/nodes/ResourceNode.js.html +0 -409
  91. package/coverage/src/nodes/SceneNode.js.html +0 -124
  92. package/coverage/src/nodes/ServiceNode.js.html +0 -124
  93. package/coverage/src/nodes/TemperatureNode.js.html +0 -202
  94. package/coverage/src/nodes/ZigbeeConnectivityNode.js.html +0 -199
  95. package/coverage/src/nodes/index.html +0 -311
  96. package/coverage/src/ui/BaseUI.js.html +0 -484
  97. package/coverage/src/ui/BridgeConfigUI.js.html +0 -475
  98. package/coverage/src/ui/ButtonUI.js.html +0 -166
  99. package/coverage/src/ui/DevicePowerUI.js.html +0 -166
  100. package/coverage/src/ui/GroupedLightUI.js.html +0 -178
  101. package/coverage/src/ui/LightLevelUI.js.html +0 -166
  102. package/coverage/src/ui/LightUI.js.html +0 -178
  103. package/coverage/src/ui/MotionUI.js.html +0 -166
  104. package/coverage/src/ui/RelativeRotaryUI.js.html +0 -166
  105. package/coverage/src/ui/ResourceUI.js.html +0 -511
  106. package/coverage/src/ui/SceneUI.js.html +0 -160
  107. package/coverage/src/ui/ServiceUI.js.html +0 -868
  108. package/coverage/src/ui/TemperatureUI.js.html +0 -166
  109. package/coverage/src/ui/ZigbeeConnectivityUI.js.html +0 -166
  110. package/coverage/src/ui/index.html +0 -311
  111. package/test/BaseUI_spec.js +0 -17
@@ -1,250 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/nodes/RelativeRotaryNode.js</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../prettify.css" />
9
- <link rel="stylesheet" href="../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../index.html">All files</a> / <a href="index.html">src/nodes</a> RelativeRotaryNode.js</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">100% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>28/28</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">100% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>11/11</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">100% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>4/4</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">100% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>28/28</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line high'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
122
- <span class="cline-any cline-neutral">&nbsp;</span>
123
- <span class="cline-any cline-neutral">&nbsp;</span>
124
- <span class="cline-any cline-neutral">&nbsp;</span>
125
- <span class="cline-any cline-neutral">&nbsp;</span>
126
- <span class="cline-any cline-neutral">&nbsp;</span>
127
- <span class="cline-any cline-neutral">&nbsp;</span>
128
- <span class="cline-any cline-neutral">&nbsp;</span>
129
- <span class="cline-any cline-neutral">&nbsp;</span>
130
- <span class="cline-any cline-yes">7x</span>
131
- <span class="cline-any cline-yes">7x</span>
132
- <span class="cline-any cline-yes">7x</span>
133
- <span class="cline-any cline-yes">7x</span>
134
- <span class="cline-any cline-neutral">&nbsp;</span>
135
- <span class="cline-any cline-yes">7x</span>
136
- <span class="cline-any cline-neutral">&nbsp;</span>
137
- <span class="cline-any cline-neutral">&nbsp;</span>
138
- <span class="cline-any cline-neutral">&nbsp;</span>
139
- <span class="cline-any cline-yes">6x</span>
140
- <span class="cline-any cline-yes">6x</span>
141
- <span class="cline-any cline-neutral">&nbsp;</span>
142
- <span class="cline-any cline-yes">6x</span>
143
- <span class="cline-any cline-yes">6x</span>
144
- <span class="cline-any cline-yes">6x</span>
145
- <span class="cline-any cline-yes">6x</span>
146
- <span class="cline-any cline-neutral">&nbsp;</span>
147
- <span class="cline-any cline-neutral">&nbsp;</span>
148
- <span class="cline-any cline-yes">6x</span>
149
- <span class="cline-any cline-yes">6x</span>
150
- <span class="cline-any cline-neutral">&nbsp;</span>
151
- <span class="cline-any cline-neutral">&nbsp;</span>
152
- <span class="cline-any cline-neutral">&nbsp;</span>
153
- <span class="cline-any cline-yes">10x</span>
154
- <span class="cline-any cline-neutral">&nbsp;</span>
155
- <span class="cline-any cline-yes">10x</span>
156
- <span class="cline-any cline-yes">10x</span>
157
- <span class="cline-any cline-yes">10x</span>
158
- <span class="cline-any cline-neutral">&nbsp;</span>
159
- <span class="cline-any cline-yes">10x</span>
160
- <span class="cline-any cline-yes">10x</span>
161
- <span class="cline-any cline-yes">8x</span>
162
- <span class="cline-any cline-yes">6x</span>
163
- <span class="cline-any cline-yes">6x</span>
164
- <span class="cline-any cline-yes">6x</span>
165
- <span class="cline-any cline-yes">4x</span>
166
- <span class="cline-any cline-yes">4x</span>
167
- <span class="cline-any cline-neutral">&nbsp;</span>
168
- <span class="cline-any cline-neutral">&nbsp;</span>
169
- <span class="cline-any cline-neutral">&nbsp;</span>
170
- <span class="cline-any cline-neutral">&nbsp;</span>
171
- <span class="cline-any cline-yes">10x</span>
172
- <span class="cline-any cline-neutral">&nbsp;</span>
173
- <span class="cline-any cline-neutral">&nbsp;</span>
174
- <span class="cline-any cline-neutral">&nbsp;</span>
175
- <span class="cline-any cline-yes">1x</span>
176
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">ResourceNode = require("./ResourceNode");
177
- &nbsp;
178
- class RelativeRotaryNode extends ResourceNode {
179
- #fill;
180
- &nbsp;
181
- #info;
182
- #trace;
183
- &nbsp;
184
- constructor(config) {
185
- super(config);
186
- this.#info = require('debug')('info').extend('RelativeRotaryNode').extend("["+this.logid()+"]");
187
- this.#trace = require('debug')('trace').extend('RelativeRotaryNode').extend("["+this.logid()+"]");
188
- this.#info("constructor()");
189
- &nbsp;
190
- this.#fill = "grey";
191
- }
192
- &nbsp;
193
- onUpdate(event) {
194
- this.#trace("onUpdate(",event,")");
195
- this.#fill = "blue";
196
-
197
- var instance = this;
198
- setTimeout(()=&gt;{
199
- instance.#fill = "grey";
200
- instance.updateStatus();
201
- },1000);
202
- &nbsp;
203
- this.updateStatus();
204
- super.onUpdate(event);
205
- }
206
- &nbsp;
207
- updateStatus() {
208
- this.#trace("updateStatus()");
209
- &nbsp;
210
- var fill = this.#fill;
211
- var shape = "dot";
212
- var text = "";
213
- &nbsp;
214
- var resource = this.resource();
215
- if ((resource) &amp;&amp; (resource.data()) &amp;&amp; (resource.data().relative_rotary)) {
216
- if (resource.data().relative_rotary.last_event!=null) {
217
- var event = resource.data().relative_rotary.last_event;
218
- text = event.action;
219
- if (event.rotation) {
220
- text += (event.rotation.direction == "clock_wise")? " &gt;&gt; " : " &lt;&lt; ";
221
- text += event.rotation.duration + " | " + event.rotation.steps;
222
- }
223
- }
224
- }
225
- &nbsp;
226
- this.status({fill: fill, shape: shape, text: text});
227
- }
228
- }
229
- &nbsp;
230
- module.exports = RelativeRotaryNode;
231
- &nbsp;</pre></td></tr></table></pre>
232
-
233
- <div class='push'></div><!-- for sticky footer -->
234
- </div><!-- /wrapper -->
235
- <div class='footer quiet pad2 space-top1 center small'>
236
- Code coverage generated by
237
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
238
- at 2023-02-03T22:21:29.454Z
239
- </div>
240
- <script src="../../prettify.js"></script>
241
- <script>
242
- window.onload = function () {
243
- prettyPrint();
244
- };
245
- </script>
246
- <script src="../../sorter.js"></script>
247
- <script src="../../block-navigation.js"></script>
248
- </body>
249
- </html>
250
-
@@ -1,409 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/nodes/ResourceNode.js</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../prettify.css" />
9
- <link rel="stylesheet" href="../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../index.html">All files</a> / <a href="index.html">src/nodes</a> ResourceNode.js</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">97.95% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>48/49</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">100% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>20/20</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">90.9% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>10/11</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">97.95% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>48/49</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line high'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
175
- <span class="cline-any cline-neutral">&nbsp;</span>
176
- <span class="cline-any cline-yes">1x</span>
177
- <span class="cline-any cline-yes">1x</span>
178
- <span class="cline-any cline-yes">1x</span>
179
- <span class="cline-any cline-yes">1x</span>
180
- <span class="cline-any cline-neutral">&nbsp;</span>
181
- <span class="cline-any cline-neutral">&nbsp;</span>
182
- <span class="cline-any cline-neutral">&nbsp;</span>
183
- <span class="cline-any cline-neutral">&nbsp;</span>
184
- <span class="cline-any cline-neutral">&nbsp;</span>
185
- <span class="cline-any cline-neutral">&nbsp;</span>
186
- <span class="cline-any cline-neutral">&nbsp;</span>
187
- <span class="cline-any cline-neutral">&nbsp;</span>
188
- <span class="cline-any cline-neutral">&nbsp;</span>
189
- <span class="cline-any cline-neutral">&nbsp;</span>
190
- <span class="cline-any cline-neutral">&nbsp;</span>
191
- <span class="cline-any cline-yes">70x</span>
192
- <span class="cline-any cline-neutral">&nbsp;</span>
193
- <span class="cline-any cline-yes">70x</span>
194
- <span class="cline-any cline-yes">70x</span>
195
- <span class="cline-any cline-yes">70x</span>
196
- <span class="cline-any cline-yes">70x</span>
197
- <span class="cline-any cline-neutral">&nbsp;</span>
198
- <span class="cline-any cline-yes">70x</span>
199
- <span class="cline-any cline-yes">70x</span>
200
- <span class="cline-any cline-yes">11x</span>
201
- <span class="cline-any cline-neutral">&nbsp;</span>
202
- <span class="cline-any cline-neutral">&nbsp;</span>
203
- <span class="cline-any cline-neutral">&nbsp;</span>
204
- <span class="cline-any cline-neutral">&nbsp;</span>
205
- <span class="cline-any cline-yes">9x</span>
206
- <span class="cline-any cline-yes">1x</span>
207
- <span class="cline-any cline-neutral">&nbsp;</span>
208
- <span class="cline-any cline-yes">8x</span>
209
- <span class="cline-any cline-yes">8x</span>
210
- <span class="cline-any cline-neutral">&nbsp;</span>
211
- <span class="cline-any cline-yes">8x</span>
212
- <span class="cline-any cline-yes">8x</span>
213
- <span class="cline-any cline-no">&nbsp;</span>
214
- <span class="cline-any cline-neutral">&nbsp;</span>
215
- <span class="cline-any cline-neutral">&nbsp;</span>
216
- <span class="cline-any cline-yes">8x</span>
217
- <span class="cline-any cline-yes">1x</span>
218
- <span class="cline-any cline-neutral">&nbsp;</span>
219
- <span class="cline-any cline-neutral">&nbsp;</span>
220
- <span class="cline-any cline-yes">8x</span>
221
- <span class="cline-any cline-yes">8x</span>
222
- <span class="cline-any cline-neutral">&nbsp;</span>
223
- <span class="cline-any cline-neutral">&nbsp;</span>
224
- <span class="cline-any cline-neutral">&nbsp;</span>
225
- <span class="cline-any cline-yes">70x</span>
226
- <span class="cline-any cline-yes">70x</span>
227
- <span class="cline-any cline-yes">70x</span>
228
- <span class="cline-any cline-yes">70x</span>
229
- <span class="cline-any cline-neutral">&nbsp;</span>
230
- <span class="cline-any cline-neutral">&nbsp;</span>
231
- <span class="cline-any cline-neutral">&nbsp;</span>
232
- <span class="cline-any cline-yes">14x</span>
233
- <span class="cline-any cline-neutral">&nbsp;</span>
234
- <span class="cline-any cline-neutral">&nbsp;</span>
235
- <span class="cline-any cline-neutral">&nbsp;</span>
236
- <span class="cline-any cline-yes">2x</span>
237
- <span class="cline-any cline-neutral">&nbsp;</span>
238
- <span class="cline-any cline-neutral">&nbsp;</span>
239
- <span class="cline-any cline-neutral">&nbsp;</span>
240
- <span class="cline-any cline-yes">7x</span>
241
- <span class="cline-any cline-neutral">&nbsp;</span>
242
- <span class="cline-any cline-neutral">&nbsp;</span>
243
- <span class="cline-any cline-neutral">&nbsp;</span>
244
- <span class="cline-any cline-yes">59x</span>
245
- <span class="cline-any cline-neutral">&nbsp;</span>
246
- <span class="cline-any cline-neutral">&nbsp;</span>
247
- <span class="cline-any cline-neutral">&nbsp;</span>
248
- <span class="cline-any cline-yes">1x</span>
249
- <span class="cline-any cline-yes">1x</span>
250
- <span class="cline-any cline-neutral">&nbsp;</span>
251
- <span class="cline-any cline-neutral">&nbsp;</span>
252
- <span class="cline-any cline-neutral">&nbsp;</span>
253
- <span class="cline-any cline-yes">46x</span>
254
- <span class="cline-any cline-yes">46x</span>
255
- <span class="cline-any cline-neutral">&nbsp;</span>
256
- <span class="cline-any cline-neutral">&nbsp;</span>
257
- <span class="cline-any cline-neutral">&nbsp;</span>
258
- <span class="cline-any cline-yes">5x</span>
259
- <span class="cline-any cline-yes">5x</span>
260
- <span class="cline-any cline-yes">1x</span>
261
- <span class="cline-any cline-neutral">&nbsp;</span>
262
- <span class="cline-any cline-neutral">&nbsp;</span>
263
- <span class="cline-any cline-yes">5x</span>
264
- <span class="cline-any cline-yes">3x</span>
265
- <span class="cline-any cline-yes">1x</span>
266
- <span class="cline-any cline-yes">1x</span>
267
- <span class="cline-any cline-neutral">&nbsp;</span>
268
- <span class="cline-any cline-neutral">&nbsp;</span>
269
- <span class="cline-any cline-neutral">&nbsp;</span>
270
- <span class="cline-any cline-yes">5x</span>
271
- <span class="cline-any cline-yes">2x</span>
272
- <span class="cline-any cline-yes">1x</span>
273
- <span class="cline-any cline-yes">1x</span>
274
- <span class="cline-any cline-neutral">&nbsp;</span>
275
- <span class="cline-any cline-neutral">&nbsp;</span>
276
- <span class="cline-any cline-neutral">&nbsp;</span>
277
- <span class="cline-any cline-yes">5x</span>
278
- <span class="cline-any cline-neutral">&nbsp;</span>
279
- <span class="cline-any cline-neutral">&nbsp;</span>
280
- <span class="cline-any cline-neutral">&nbsp;</span>
281
- <span class="cline-any cline-yes">1x</span>
282
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">BaseNode = require("./BaseNode");
283
- &nbsp;
284
- const _error = require('debug')('error').extend('ResourceNode');
285
- const _warn = require('debug')('warn').extend('ResourceNode');
286
- const _info = require('debug')('info').extend('ResourceNode');
287
- const _trace = require('debug')('trace').extend('ResourceNode');
288
- &nbsp;
289
- class ResourceNode extends BaseNode {
290
- #onUpdate;
291
- #resource;
292
- &nbsp;
293
- #error;
294
- #warn;
295
- #info;
296
- #trace;
297
- &nbsp;
298
- constructor(config) {
299
- super(config);
300
- &nbsp;
301
- this.#error = _error.extend("["+this.logid()+"]");
302
- this.#warn = _warn. extend("["+this.logid()+"]");
303
- this.#info = _info. extend("["+this.logid()+"]");
304
- this.#trace = _trace.extend("["+this.logid()+"]");
305
- &nbsp;
306
- this.#info("constructor()");
307
- if (this.bridge()) {
308
- this.bridge().requestStartup(this);
309
- }
310
- }
311
- &nbsp;
312
- start(resource) {
313
- if (resource==null)
314
- return;
315
- &nbsp;
316
- this.#info("start()");
317
- this.#resource = resource;
318
- &nbsp;
319
- var instance = this;
320
- this.#onUpdate = <span class="fstat-no" title="function not covered" >fu</span>nction(event) {
321
- <span class="cstat-no" title="statement not covered" > instance.onUpdate(event);</span>
322
- }
323
- &nbsp;
324
- if (this.startevent()==true) {
325
- this.onStartup(resource.data())
326
- }
327
- &nbsp;
328
- this.resource().on('update',this.#onUpdate);
329
- this.updateStatus();
330
- }
331
- &nbsp;
332
- destructor() {
333
- this.#info("destructor()");
334
- this.removeAllListeners();
335
- this.#resource = null;
336
- super.destructor();
337
- }
338
- &nbsp;
339
- resource() {
340
- return this.#resource;
341
- }
342
- &nbsp;
343
- rid() {
344
- return this.config.uuid;
345
- }
346
- &nbsp;
347
- startevent() {
348
- return this.config.startevent;
349
- }
350
- &nbsp;
351
- bridge() {
352
- return BaseNode.nodeAPI.nodes.getNode(this.config.bridge);
353
- }
354
- &nbsp;
355
- onStartup(event) {
356
- this.#trace("onStartup()");
357
- this.send({ payload: event });
358
- }
359
- &nbsp;
360
- onUpdate(event) {
361
- this.#trace("onUpdate()");
362
- this.send({ payload: event });
363
- }
364
- &nbsp;
365
- onInput(msg) {
366
- var resource = this.resource();
367
- if (!resource) {
368
- this.#trace("onInput(): Resource not found",this.rid());
369
- }
370
- &nbsp;
371
- if (msg.rtypes) {
372
- if ((resource) &amp;&amp; (msg.rtypes.includes(resource.rtype()))) {
373
- this.#trace("onInput(",msg.payload,")");
374
- resource.put(msg.payload);
375
- }
376
- }
377
- &nbsp;
378
- if (msg.rids) {
379
- if ((resource) &amp;&amp; (msg.rids.includes(resource.rid()))) {
380
- this.#trace("onInput(",msg.payload,")");
381
- resource.put(msg.payload);
382
- }
383
- }
384
- &nbsp;
385
- super.onInput(msg);
386
- }
387
- }
388
- &nbsp;
389
- module.exports = ResourceNode;
390
- &nbsp;</pre></td></tr></table></pre>
391
-
392
- <div class='push'></div><!-- for sticky footer -->
393
- </div><!-- /wrapper -->
394
- <div class='footer quiet pad2 space-top1 center small'>
395
- Code coverage generated by
396
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
397
- at 2023-02-03T22:21:29.454Z
398
- </div>
399
- <script src="../../prettify.js"></script>
400
- <script>
401
- window.onload = function () {
402
- prettyPrint();
403
- };
404
- </script>
405
- <script src="../../sorter.js"></script>
406
- <script src="../../block-navigation.js"></script>
407
- </body>
408
- </html>
409
-