@hello.nrfcloud.com/proto-map 5.6.3 → 6.0.0

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 (42) hide show
  1. package/README.md +0 -16
  2. package/dist/generator/generateModels.js +0 -85
  3. package/dist/generator/models.js +1 -83
  4. package/dist/markdown/getCodeBlock.js +0 -26
  5. package/dist/models/check-model-rules.js +1 -91
  6. package/dist/models/models.js +5 -114
  7. package/dist/models/types.js +0 -12
  8. package/models/README.md +0 -4
  9. package/models/check-model-rules.ts +1 -90
  10. package/models/models.ts +1 -8
  11. package/models/types.ts +0 -16
  12. package/package.json +2 -3
  13. package/dist/generator/isDir.js +0 -163
  14. package/dist/generator/isDir.spec.js +0 -212
  15. package/dist/markdown/getFrontMatter.js +0 -15
  16. package/dist/models/asset_tracker_v2+AWS/examples/examples.spec.js +0 -489
  17. package/models/PCA20035+solar/README.md +0 -10
  18. package/models/PCA20035+solar/transforms/airQuality.md +0 -48
  19. package/models/PCA20035+solar/transforms/battery.md +0 -46
  20. package/models/PCA20035+solar/transforms/button.md +0 -45
  21. package/models/PCA20035+solar/transforms/deviceInfo.md +0 -72
  22. package/models/PCA20035+solar/transforms/gain.md +0 -45
  23. package/models/PCA20035+solar/transforms/geolocationFromGroundfix.md +0 -67
  24. package/models/PCA20035+solar/transforms/geolocationFromMessage.md +0 -80
  25. package/models/PCA20035+solar/transforms/humidity.md +0 -43
  26. package/models/PCA20035+solar/transforms/networkInfo.md +0 -84
  27. package/models/PCA20035+solar/transforms/pressure.md +0 -43
  28. package/models/PCA20035+solar/transforms/temperature.md +0 -43
  29. package/models/asset_tracker_v2+AWS/README.md +0 -6
  30. package/models/asset_tracker_v2+AWS/examples/examples.spec.ts +0 -229
  31. package/models/asset_tracker_v2+AWS/examples/shadow/example-1.json +0 -24
  32. package/models/asset_tracker_v2+AWS/examples/shadow/example-2.json +0 -30
  33. package/models/asset_tracker_v2+AWS/examples/shadow/example-3.json +0 -37
  34. package/models/asset_tracker_v2+AWS/examples/shadow/example-4.json +0 -48
  35. package/models/asset_tracker_v2+AWS/examples/shadow/example-5.json +0 -43
  36. package/models/asset_tracker_v2+AWS/transforms/GNSS.md +0 -66
  37. package/models/asset_tracker_v2+AWS/transforms/battery-voltage.md +0 -50
  38. package/models/asset_tracker_v2+AWS/transforms/device-info.md +0 -61
  39. package/models/asset_tracker_v2+AWS/transforms/env.md +0 -69
  40. package/models/asset_tracker_v2+AWS/transforms/fuel-gauge.md +0 -62
  41. package/models/asset_tracker_v2+AWS/transforms/roam.md +0 -100
  42. package/models/asset_tracker_v2+AWS/transforms/solar.md +0 -58
@@ -1,489 +0,0 @@
1
- function _array_like_to_array(arr, len) {
2
- if (len == null || len > arr.length) len = arr.length;
3
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
- return arr2;
5
- }
6
- function _array_with_holes(arr) {
7
- if (Array.isArray(arr)) return arr;
8
- }
9
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
10
- try {
11
- var info = gen[key](arg);
12
- var value = info.value;
13
- } catch (error) {
14
- reject(error);
15
- return;
16
- }
17
- if (info.done) {
18
- resolve(value);
19
- } else {
20
- Promise.resolve(value).then(_next, _throw);
21
- }
22
- }
23
- function _async_to_generator(fn) {
24
- return function() {
25
- var self = this, args = arguments;
26
- return new Promise(function(resolve, reject) {
27
- var gen = fn.apply(self, args);
28
- function _next(value) {
29
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
30
- }
31
- function _throw(err) {
32
- asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
33
- }
34
- _next(undefined);
35
- });
36
- };
37
- }
38
- function _iterable_to_array_limit(arr, i) {
39
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
40
- if (_i == null) return;
41
- var _arr = [];
42
- var _n = true;
43
- var _d = false;
44
- var _s, _e;
45
- try {
46
- for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
47
- _arr.push(_s.value);
48
- if (i && _arr.length === i) break;
49
- }
50
- } catch (err) {
51
- _d = true;
52
- _e = err;
53
- } finally{
54
- try {
55
- if (!_n && _i["return"] != null) _i["return"]();
56
- } finally{
57
- if (_d) throw _e;
58
- }
59
- }
60
- return _arr;
61
- }
62
- function _non_iterable_rest() {
63
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
64
- }
65
- function _sliced_to_array(arr, i) {
66
- return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
67
- }
68
- function _unsupported_iterable_to_array(o, minLen) {
69
- if (!o) return;
70
- if (typeof o === "string") return _array_like_to_array(o, minLen);
71
- var n = Object.prototype.toString.call(o).slice(8, -1);
72
- if (n === "Object" && o.constructor) n = o.constructor.name;
73
- if (n === "Map" || n === "Set") return Array.from(n);
74
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
75
- }
76
- function _ts_generator(thisArg, body) {
77
- var f, y, t, g, _ = {
78
- label: 0,
79
- sent: function() {
80
- if (t[0] & 1) throw t[1];
81
- return t[1];
82
- },
83
- trys: [],
84
- ops: []
85
- };
86
- return g = {
87
- next: verb(0),
88
- "throw": verb(1),
89
- "return": verb(2)
90
- }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
91
- return this;
92
- }), g;
93
- function verb(n) {
94
- return function(v) {
95
- return step([
96
- n,
97
- v
98
- ]);
99
- };
100
- }
101
- function step(op) {
102
- if (f) throw new TypeError("Generator is already executing.");
103
- while(_)try {
104
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
105
- if (y = 0, t) op = [
106
- op[0] & 2,
107
- t.value
108
- ];
109
- switch(op[0]){
110
- case 0:
111
- case 1:
112
- t = op;
113
- break;
114
- case 4:
115
- _.label++;
116
- return {
117
- value: op[1],
118
- done: false
119
- };
120
- case 5:
121
- _.label++;
122
- y = op[1];
123
- op = [
124
- 0
125
- ];
126
- continue;
127
- case 7:
128
- op = _.ops.pop();
129
- _.trys.pop();
130
- continue;
131
- default:
132
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
133
- _ = 0;
134
- continue;
135
- }
136
- if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
137
- _.label = op[1];
138
- break;
139
- }
140
- if (op[0] === 6 && _.label < t[1]) {
141
- _.label = t[1];
142
- t = op;
143
- break;
144
- }
145
- if (t && _.label < t[2]) {
146
- _.label = t[2];
147
- _.ops.push(op);
148
- break;
149
- }
150
- if (t[2]) _.ops.pop();
151
- _.trys.pop();
152
- continue;
153
- }
154
- op = body.call(thisArg, _);
155
- } catch (e) {
156
- op = [
157
- 6,
158
- e
159
- ];
160
- y = 0;
161
- } finally{
162
- f = t = 0;
163
- }
164
- if (op[0] & 5) throw op[1];
165
- return {
166
- value: op[0] ? op[1] : void 0,
167
- done: true
168
- };
169
- }
170
- }
171
- import { describe, it } from 'node:test';
172
- import { senMLtoLwM2M } from '../../../senml/senMLtoLwM2M.js';
173
- import { TransformType } from '../../types.js';
174
- import jsonata from 'jsonata';
175
- import { arrayContaining, check } from 'tsmatchers';
176
- import { models } from '../../../models/models.js';
177
- void describe('asset_tracker_v2+AWS examples', function() {
178
- var _loop = function(_i, _iter) {
179
- var _iter__i = _sliced_to_array(_iter[_i], 2), input = _iter__i[0], expected = _iter__i[1];
180
- void it(input, /*#__PURE__*/ _async_to_generator(function() {
181
- var _models_asset_tracker_v2AWS, _models_asset_tracker_v2AWS_transforms, result, _, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, expectedObject;
182
- return _ts_generator(this, function(_state) {
183
- switch(_state.label){
184
- case 0:
185
- _ = transformShadowUpdateToLwM2M(((_models_asset_tracker_v2AWS_transforms = (_models_asset_tracker_v2AWS = models['asset_tracker_v2+AWS']) === null || _models_asset_tracker_v2AWS === void 0 ? void 0 : _models_asset_tracker_v2AWS.transforms) !== null && _models_asset_tracker_v2AWS_transforms !== void 0 ? _models_asset_tracker_v2AWS_transforms : []).filter(function(param) {
186
- var type = param.type;
187
- return type === TransformType.Shadow;
188
- }));
189
- return [
190
- 4,
191
- import(input, {
192
- assert: {
193
- type: 'json'
194
- }
195
- })
196
- ];
197
- case 1:
198
- return [
199
- 4,
200
- _.apply(void 0, [
201
- _state.sent()
202
- ])
203
- ];
204
- case 2:
205
- result = _state.sent();
206
- _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
207
- try {
208
- for(_iterator = expected[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
209
- expectedObject = _step.value;
210
- check(result).is(arrayContaining(expectedObject));
211
- }
212
- } catch (err) {
213
- _didIteratorError = true;
214
- _iteratorError = err;
215
- } finally{
216
- try {
217
- if (!_iteratorNormalCompletion && _iterator.return != null) {
218
- _iterator.return();
219
- }
220
- } finally{
221
- if (_didIteratorError) {
222
- throw _iteratorError;
223
- }
224
- }
225
- }
226
- return [
227
- 2
228
- ];
229
- }
230
- });
231
- }));
232
- };
233
- for(var _i = 0, _iter = [
234
- [
235
- './shadow/example-1.json',
236
- [
237
- {
238
- ObjectID: 14202,
239
- Resources: {
240
- 1: 4.398,
241
- 99: new Date(1699050063028)
242
- }
243
- },
244
- {
245
- ObjectID: 14205,
246
- Resources: {
247
- 0: 27.06,
248
- 1: 31.125,
249
- 2: 97.748,
250
- 99: new Date(1699050061608)
251
- }
252
- },
253
- {
254
- ObjectID: 14203,
255
- Resources: {
256
- 11: 8,
257
- 99: new Date(1699050062990)
258
- }
259
- }
260
- ]
261
- ],
262
- [
263
- './shadow/example-2.json',
264
- [
265
- {
266
- ObjectID: 14201,
267
- Resources: {
268
- 0: 33.98771459323253,
269
- 1: -84.50632147267358,
270
- 2: 241.9342498779297,
271
- 3: 11.317643165588379,
272
- 4: 0.03478508070111275,
273
- 5: 90.31222534179688,
274
- 6: 'GNSS',
275
- 99: new Date(1699049744000)
276
- }
277
- },
278
- {
279
- ObjectID: 14202,
280
- Resources: {
281
- 1: 4.414,
282
- 99: new Date(1699049729959)
283
- }
284
- },
285
- {
286
- ObjectID: 14205,
287
- Resources: {
288
- 0: 21.915307998657227,
289
- 1: 34.569278717041016,
290
- 2: 98.846,
291
- 10: 148,
292
- 99: new Date(1699049729518)
293
- }
294
- }
295
- ]
296
- ],
297
- [
298
- './shadow/example-3.json',
299
- [
300
- {
301
- ObjectID: 14203,
302
- Resources: {
303
- 2: -95,
304
- 11: 7,
305
- 99: new Date(1699049610301)
306
- }
307
- }
308
- ]
309
- ],
310
- [
311
- './shadow/example-4.json',
312
- [
313
- {
314
- ObjectID: 14204,
315
- Resources: {
316
- 0: '358299840016535',
317
- 1: '89450421180216254864',
318
- 2: 'mfw_nrf91x1_2.0.0-77.beta',
319
- 3: '0.0.0-development',
320
- 4: 'thingy91x_nrf9161',
321
- 99: new Date(1699284007851)
322
- }
323
- },
324
- {
325
- ObjectID: 14202,
326
- Resources: {
327
- 0: 99,
328
- 1: 4.179,
329
- 2: 0,
330
- 3: 25.7,
331
- 99: new Date(1699049685992)
332
- }
333
- }
334
- ]
335
- ],
336
- [
337
- './shadow/example-5.json',
338
- [
339
- {
340
- ObjectID: 14202,
341
- Resources: {
342
- 0: 89,
343
- 1: 4.161,
344
- 99: new Date(1701900277007)
345
- }
346
- }
347
- ]
348
- ]
349
- ]; _i < _iter.length; _i++)_loop(_i, _iter);
350
- });
351
- /**
352
- * Very simple implementation of a converter.
353
- */ var transformShadowUpdateToLwM2M = function(transforms) {
354
- // Turn the JSONata in the transforms into executable functions
355
- var transformFns = [];
356
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
357
- try {
358
- for(var _iterator = transforms[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
359
- var _step_value = _step.value, matchExpression = _step_value.match, transformExpression = _step_value.transform;
360
- var match = void 0;
361
- var transform = void 0;
362
- try {
363
- match = jsonata(matchExpression);
364
- } catch (e) {
365
- throw new Error("Failed to parse match expression '".concat(matchExpression, "'"));
366
- }
367
- try {
368
- transform = jsonata(transformExpression);
369
- } catch (e) {
370
- throw new Error("Failed to parse match expression '".concat(transformExpression, "'"));
371
- }
372
- transformFns.push({
373
- match: match,
374
- matchExpression: matchExpression,
375
- transform: transform,
376
- transformExpression: transformExpression
377
- });
378
- }
379
- } catch (err) {
380
- _didIteratorError = true;
381
- _iteratorError = err;
382
- } finally{
383
- try {
384
- if (!_iteratorNormalCompletion && _iterator.return != null) {
385
- _iterator.return();
386
- }
387
- } finally{
388
- if (_didIteratorError) {
389
- throw _iteratorError;
390
- }
391
- }
392
- }
393
- return function() {
394
- var _ref = _async_to_generator(function(input) {
395
- return _ts_generator(this, function(_state) {
396
- return [
397
- 2,
398
- Promise.all(transformFns.map(function() {
399
- var _ref = _async_to_generator(function(param) {
400
- var match, matchExpression, transform, transformExpression, matched, err, err1;
401
- return _ts_generator(this, function(_state) {
402
- switch(_state.label){
403
- case 0:
404
- match = param.match, matchExpression = param.matchExpression, transform = param.transform, transformExpression = param.transformExpression;
405
- _state.label = 1;
406
- case 1:
407
- _state.trys.push([
408
- 1,
409
- 3,
410
- ,
411
- 4
412
- ]);
413
- return [
414
- 4,
415
- match.evaluate(input)
416
- ];
417
- case 2:
418
- matched = _state.sent();
419
- if (typeof matched !== 'boolean') return [
420
- 2,
421
- null
422
- ];
423
- if (matched === false) return [
424
- 2,
425
- null
426
- ];
427
- return [
428
- 3,
429
- 4
430
- ];
431
- case 3:
432
- err = _state.sent();
433
- console.error(err);
434
- console.error("Failed to match ".concat(JSON.stringify(input), " using expression '").concat(matchExpression, "'!"));
435
- return [
436
- 2,
437
- false
438
- ];
439
- case 4:
440
- _state.trys.push([
441
- 4,
442
- 6,
443
- ,
444
- 7
445
- ]);
446
- return [
447
- 4,
448
- transform.evaluate(input)
449
- ];
450
- case 5:
451
- return [
452
- 2,
453
- _state.sent()
454
- ];
455
- case 6:
456
- err1 = _state.sent();
457
- console.error(err1);
458
- console.error("Failed to transform ".concat(JSON.stringify(input), " using expression '").concat(transformExpression, "'!"));
459
- return [
460
- 2,
461
- null
462
- ];
463
- case 7:
464
- return [
465
- 2
466
- ];
467
- }
468
- });
469
- });
470
- return function(_) {
471
- return _ref.apply(this, arguments);
472
- };
473
- }())).then(function(result) {
474
- return result.flat();
475
- })// Ignore unmatched transforms
476
- .then(function(result) {
477
- return result.filter(function(item) {
478
- return item !== null;
479
- });
480
- })// Convert it to LwM2M
481
- .then(senMLtoLwM2M)
482
- ];
483
- });
484
- });
485
- return function(input) {
486
- return _ref.apply(this, arguments);
487
- };
488
- }();
489
- };
@@ -1,10 +0,0 @@
1
- # Thingy:91 with Solar Shield
2
-
3
- The Nordic Thingy:91 Solar Shield is a plug-and-play prototyping platform.
4
- Powerfoyle solar cell is mounted onto the Thingy to quickly get started
5
- exploring the endless possibilities with solar powered IoT applications and to
6
- develop products with eternal life or even battery-free products.​
7
-
8
- The Thingy:91 runs the
9
- [`asset_tracker_v2`](https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/applications/asset_tracker_v2/README.html)
10
- application and sends messages to nRF Cloud using MQTT.
@@ -1,48 +0,0 @@
1
- ---
2
- type: messages
3
- ---
4
-
5
- # Environment sensor: air quality
6
-
7
- The Bosch BME680 sensor calculates an Air Quality Index.
8
-
9
- See
10
- <https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme680-ds001.pdf>
11
-
12
- ## Match Expression
13
-
14
- ```jsonata
15
- appId = 'AIR_QUAL'
16
- ```
17
-
18
- ## Transform Expression
19
-
20
- ```jsonata
21
- [
22
- {"bn": "14205/0/", "n": "10", "v": $number(data), "bt": ts }
23
- ]
24
- ```
25
-
26
- ## Input Example
27
-
28
- ```json
29
- {
30
- "appId": "AIR_QUAL",
31
- "messageType": "DATA",
32
- "ts": 1681985384511,
33
- "data": "177"
34
- }
35
- ```
36
-
37
- ## Result Example
38
-
39
- ```json
40
- [
41
- {
42
- "bn": "14205/0/",
43
- "n": "10",
44
- "v": 177,
45
- "bt": 1681985384511
46
- }
47
- ]
48
- ```
@@ -1,46 +0,0 @@
1
- ---
2
- type: messages
3
- ---
4
-
5
- # Battery state of charge
6
-
7
- This is the legacy battery state of charge using the modem's battery
8
- information.
9
-
10
- ## Match Expression
11
-
12
- ```jsonata
13
- appId = 'BATTERY'
14
- ```
15
-
16
- ## Transform Expression
17
-
18
- ```jsonata
19
- [
20
- {"bn": "14202/0/", "n": "0", "v": $number(data), "bt": ts }
21
- ]
22
- ```
23
-
24
- ## Input Example
25
-
26
- ```json
27
- {
28
- "appId": "BATTERY",
29
- "messageType": "DATA",
30
- "ts": 1687448260542,
31
- "data": "94"
32
- }
33
- ```
34
-
35
- ## Result Example
36
-
37
- ```json
38
- [
39
- {
40
- "bn": "14202/0/",
41
- "n": "0",
42
- "v": 94,
43
- "bt": 1687448260542
44
- }
45
- ]
46
- ```
@@ -1,45 +0,0 @@
1
- ---
2
- type: messages
3
- ---
4
-
5
- # Button Press
6
-
7
- Describes a button press.
8
-
9
- ## Match Expression
10
-
11
- ```jsonata
12
- appId = 'BUTTON'
13
- ```
14
-
15
- ## Transform Expression
16
-
17
- ```jsonata
18
- [
19
- {"bn": "14220/0/", "n": "0", "v": $number(data), "bt": ts }
20
- ]
21
- ```
22
-
23
- ## Input Example
24
-
25
- ```json
26
- {
27
- "data": "1",
28
- "appId": "BUTTON",
29
- "messageType": "DATA",
30
- "ts": 1676366857236
31
- }
32
- ```
33
-
34
- ## Result Example
35
-
36
- ```json
37
- [
38
- {
39
- "bn": "14220/0/",
40
- "n": "0",
41
- "v": 1,
42
- "bt": 1676366857236
43
- }
44
- ]
45
- ```