@hapiboo/dynamo-flux 1.1.0 → 1.1.2

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 (2) hide show
  1. package/dist/provider.js +47 -13
  2. package/package.json +2 -2
package/dist/provider.js CHANGED
@@ -501,32 +501,66 @@ var dynamoHelper;
501
501
  });
502
502
  return result;
503
503
  }
504
- function property(value) {
504
+ /*
505
+ function property(value: AttributeValue): string | number | boolean | Buffer | object[] | object {
505
506
  if (value.S) {
506
507
  return value.S;
507
- }
508
- else if (value.N) {
508
+ } else if (value.N) {
509
509
  return +value.N;
510
- }
511
- else if (value.B) {
510
+ } else if (value.B) {
512
511
  return Buffer.from(value.B);
513
- }
514
- else if (value.M) {
512
+ } else if (value.M) {
515
513
  return object(value.M);
516
- }
517
- else if (value.L) {
514
+ } else if (value.L) {
518
515
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
519
- const list = [];
516
+ const list: any[] = [];
520
517
  value.L.forEach((elem) => {
521
518
  list.push(property(elem));
522
519
  });
523
520
  return list;
524
- }
525
- else if (value.BOOL) {
521
+ } else if (value.BOOL) {
526
522
  return value.BOOL;
523
+ } else {
524
+ return '';
525
+ }
526
+ }
527
+ */
528
+ function property(value) {
529
+ if ('S' in value) {
530
+ return value.S ?? '';
531
+ }
532
+ else if ('N' in value) {
533
+ return Number(value.N);
534
+ }
535
+ else if ('B' in value) {
536
+ return Buffer.from(value.B);
537
+ }
538
+ else if ('M' in value) {
539
+ if (value.M === undefined) {
540
+ return null;
541
+ }
542
+ else {
543
+ return object(value.M);
544
+ }
545
+ }
546
+ else if ('L' in value) {
547
+ if (value.L === undefined) {
548
+ return [];
549
+ }
550
+ else {
551
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
552
+ const list = [];
553
+ value.L.forEach((elem) => {
554
+ list.push(property(elem));
555
+ });
556
+ return list;
557
+ }
558
+ }
559
+ else if ('BOOL' in value) {
560
+ return value.BOOL ? true : false;
527
561
  }
528
562
  else {
529
- return false;
563
+ return null;
530
564
  }
531
565
  }
532
566
  })(objects = dynamoHelper.objects || (dynamoHelper.objects = {}));
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@hapiboo/dynamo-flux",
3
3
  "description": "MK13 Studio Hapiboo - AWS DynamoDB plugin (Flux version)",
4
- "version": "1.1.0",
4
+ "version": "1.1.2",
5
5
  "author": "MK13 Studio",
6
6
  "license": "ISC",
7
7
  "main": "dist/index.js",
@@ -14,7 +14,7 @@
14
14
  ],
15
15
  "dependencies": {
16
16
  "@hapiboo/core": "^3.0.1",
17
- "@hapiboo/flux": "^1.0.4",
17
+ "@hapiboo/flux": "^1.1.2",
18
18
  "@aws-sdk/client-dynamodb": "^3.848.0"
19
19
  },
20
20
  "devDependencies": {