@dereekb/util 7.2.0 → 7.3.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 (84) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/package.json +1 -1
  3. package/src/lib/array/array.boolean.d.ts +1 -1
  4. package/src/lib/array/array.d.ts +1 -1
  5. package/src/lib/array/array.index.d.ts +1 -1
  6. package/src/lib/array/array.limit.d.ts +1 -1
  7. package/src/lib/array/array.map.d.ts +1 -1
  8. package/src/lib/array/array.string.js +1 -1
  9. package/src/lib/array/array.string.js.map +1 -1
  10. package/src/lib/array/array.unique.d.ts +1 -1
  11. package/src/lib/array/array.value.d.ts +14 -2
  12. package/src/lib/array/array.value.js +24 -6
  13. package/src/lib/array/array.value.js.map +1 -1
  14. package/src/lib/auth/auth.role.claims.d.ts +1 -1
  15. package/src/lib/auth/auth.role.claims.js +13 -10
  16. package/src/lib/auth/auth.role.claims.js.map +1 -1
  17. package/src/lib/auth/auth.role.d.ts +1 -1
  18. package/src/lib/date/date.d.ts +1 -1
  19. package/src/lib/date/date.time.d.ts +1 -1
  20. package/src/lib/error/error.d.ts +1 -1
  21. package/src/lib/error/error.server.d.ts +1 -1
  22. package/src/lib/filter/filter.d.ts +3 -0
  23. package/src/lib/filter/filter.js.map +1 -1
  24. package/src/lib/grouping.d.ts +1 -1
  25. package/src/lib/iterable/iterable.d.ts +8 -1
  26. package/src/lib/iterable/iterable.js +14 -1
  27. package/src/lib/iterable/iterable.js.map +1 -1
  28. package/src/lib/key.d.ts +1 -1
  29. package/src/lib/misc/host.d.ts +1 -1
  30. package/src/lib/model/model.conversion.d.ts +1 -1
  31. package/src/lib/model/model.conversion.js +7 -6
  32. package/src/lib/model/model.conversion.js.map +1 -1
  33. package/src/lib/model/model.copy.d.ts +1 -1
  34. package/src/lib/model/model.d.ts +1 -1
  35. package/src/lib/model/model.modify.d.ts +1 -1
  36. package/src/lib/object/index.d.ts +3 -0
  37. package/src/lib/object/index.js +3 -0
  38. package/src/lib/object/index.js.map +1 -1
  39. package/src/lib/object/object.d.ts +4 -112
  40. package/src/lib/object/object.empty.d.ts +7 -0
  41. package/src/lib/object/object.empty.js +27 -0
  42. package/src/lib/object/object.empty.js.map +1 -0
  43. package/src/lib/object/object.filter.pojo.d.ts +154 -0
  44. package/src/lib/object/object.filter.pojo.js +235 -0
  45. package/src/lib/object/object.filter.pojo.js.map +1 -0
  46. package/src/lib/object/object.filter.tuple.d.ts +64 -0
  47. package/src/lib/object/object.filter.tuple.js +120 -0
  48. package/src/lib/object/object.filter.tuple.js.map +1 -0
  49. package/src/lib/object/object.js +6 -224
  50. package/src/lib/object/object.js.map +1 -1
  51. package/src/lib/object/object.map.d.ts +23 -1
  52. package/src/lib/object/object.map.js +26 -4
  53. package/src/lib/object/object.map.js.map +1 -1
  54. package/src/lib/page/page.d.ts +1 -1
  55. package/src/lib/promise/promise.d.ts +1 -1
  56. package/src/lib/promise/promise.loop.d.ts +1 -1
  57. package/src/lib/relation/relation.d.ts +8 -7
  58. package/src/lib/relation/relation.js +2 -1
  59. package/src/lib/relation/relation.js.map +1 -1
  60. package/src/lib/service/typed.service.js +2 -2
  61. package/src/lib/service/typed.service.js.map +1 -1
  62. package/src/lib/set/set.allowed.d.ts +1 -1
  63. package/src/lib/set/set.d.ts +1 -1
  64. package/src/lib/set/set.hashset.d.ts +1 -1
  65. package/src/lib/set/set.maybe.d.ts +1 -1
  66. package/src/lib/storage/storage.memory.d.ts +1 -1
  67. package/src/lib/storage/storage.object.d.ts +1 -1
  68. package/src/lib/storage/storage.object.js +4 -3
  69. package/src/lib/storage/storage.object.js.map +1 -1
  70. package/src/lib/string.d.ts +1 -1
  71. package/src/lib/tree/tree.expand.d.ts +1 -1
  72. package/src/lib/value/index.d.ts +1 -0
  73. package/src/lib/value/index.js +1 -0
  74. package/src/lib/value/index.js.map +1 -1
  75. package/src/lib/value/map.d.ts +1 -1
  76. package/src/lib/value/maybe.d.ts +16 -41
  77. package/src/lib/value/maybe.js +57 -4
  78. package/src/lib/value/maybe.js.map +1 -1
  79. package/src/lib/value/maybe.type.d.ts +19 -0
  80. package/src/lib/value/maybe.type.js +3 -0
  81. package/src/lib/value/maybe.type.js.map +1 -0
  82. package/src/lib/value/modifier.d.ts +1 -1
  83. package/test/CHANGELOG.md +4 -0
  84. package/test/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ # [7.3.0](https://github.com/dereekb/dbx-components/compare/v7.2.0-dev...v7.3.0) (2022-06-08)
6
+
7
+
8
+ ### Features
9
+
10
+ * added additional KeyValueTypleValueFilter values ([715b615](https://github.com/dereekb/dbx-components/commit/715b6150ee21629667c26c8c90745bb969937482))
11
+ * added FirestoreMap, FirestoreArrayMap snapshot fields ([bd23fd3](https://github.com/dereekb/dbx-components/commit/bd23fd372e3f2180980d7aec9c1b6ee1ec2bb3c7))
12
+ * added function builders for object filters ([c01db20](https://github.com/dereekb/dbx-components/commit/c01db2045412d513ae804f9a2d6154a267aae7cb))
13
+ * added overrideInObjectFunctionFactory, mergeObjectsFunction ([4ea7d65](https://github.com/dereekb/dbx-components/commit/4ea7d6569e6aed0838cdf7218fd63824ff5a7b98))
14
+ * updated [@ngx-formly](https://github.com/ngx-formly) to 6.0.0-beta.2 ([6f1737a](https://github.com/dereekb/dbx-components/commit/6f1737ab61473497b4c69c097b9f87da3f881c74))
15
+
16
+
17
+
5
18
  # [7.2.0](https://github.com/dereekb/dbx-components/compare/v7.1.0-dev...v7.2.0) (2022-06-06)
6
19
 
7
20
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/util",
3
- "version": "7.2.0",
3
+ "version": "7.3.0",
4
4
  "type": "commonjs",
5
5
  "exports": {
6
6
  ".": {
@@ -1,5 +1,5 @@
1
1
  import { ReadModelKeyFunction } from '../model/model';
2
- import { Maybe } from '../value/maybe';
2
+ import { Maybe } from '../value/maybe.type';
3
3
  export declare type BooleanStringKey = string;
4
4
  /**
5
5
  * Boolean represented by an array to describe the current state and reason why.
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  export declare type ArrayOrValue<T> = T | T[];
3
3
  /**
4
4
  * Converts the input value to an array containing itself, or returns itself if it is an array.
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  /**
3
3
  * A set of number corresponding to items in an array.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  export interface LimitArrayConfig {
3
3
  /**
4
4
  * Number of items in the list to limit in the result.
@@ -1,5 +1,5 @@
1
1
  import { PrimativeKey, ReadKeyFunction } from '../key';
2
- import { Maybe } from '../value/maybe';
2
+ import { Maybe } from '../value/maybe.type';
3
3
  /**
4
4
  * Maps the values of the input array to a Map. Can additionally specify a value function to map out the input value to another value for the map.
5
5
  */
@@ -20,7 +20,7 @@ function arrayToLowercase(input) {
20
20
  }
21
21
  exports.arrayToLowercase = arrayToLowercase;
22
22
  function transformStrings(config) {
23
- let transform = config.transform ? (0, value_1.mapArrayFunction)(config.transform) : config.toLowercase ? arrayToLowercase : config.toUppercase ? arrayToUppercase : (0, value_1.mapIdentityFunction)();
23
+ const transform = config.transform ? (0, value_1.mapArrayFunction)(config.transform) : config.toLowercase ? arrayToLowercase : config.toUppercase ? arrayToUppercase : (0, value_1.mapIdentityFunction)();
24
24
  return transform;
25
25
  }
26
26
  exports.transformStrings = transformStrings;
@@ -1 +1 @@
1
- {"version":3,"file":"array.string.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.string.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"array.string.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.string.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { PrimativeKey, ReadKeyFunction } from '../key';
2
- import { Maybe } from '../value/maybe';
2
+ import { Maybe } from '../value/maybe.type';
3
3
  export declare function concatArraysUnique<T extends PrimativeKey = PrimativeKey>(...arrays: Maybe<T[]>[]): T[];
4
4
  export declare function flattenArrayUnique<T extends PrimativeKey = PrimativeKey>(array: T[][]): T[];
5
5
  export declare function unique<T extends PrimativeKey = PrimativeKey>(values: T[]): T[];
@@ -1,6 +1,18 @@
1
- import { Maybe, MaybeNot } from '../value/maybe';
1
+ import { Maybe, MaybeNot } from '../value/maybe.type';
2
+ /**
3
+ * Filters all maybe values from the input array. If a maybe value is input, returns an empty array.
4
+ *
5
+ * @param values
6
+ * @returns
7
+ */
2
8
  export declare function filterMaybeValues<T>(values: Maybe<Maybe<T>[]>): T[];
3
- export declare function filterMaybeValuesFn<T>(value: Maybe<T>): value is T;
9
+ /**
10
+ * Filters all empty and maybe values from the input array. If a maybe value is input, returns an empty array.
11
+ *
12
+ * @param values
13
+ * @returns
14
+ */
15
+ export declare function filterEmptyValues<T>(values: Maybe<Maybe<T>[]>): T[];
4
16
  /**
5
17
  * Checks whether or not all values are MaybeNot values.
6
18
  *
@@ -1,19 +1,37 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.allValuesAreNotMaybe = exports.allValuesAreMaybeNot = exports.filterMaybeValuesFn = exports.filterMaybeValues = void 0;
3
+ exports.allValuesAreNotMaybe = exports.allValuesAreMaybeNot = exports.filterEmptyValues = exports.filterMaybeValues = void 0;
4
+ const maybe_1 = require("../value/maybe");
5
+ /**
6
+ * Filters all maybe values from the input array. If a maybe value is input, returns an empty array.
7
+ *
8
+ * @param values
9
+ * @returns
10
+ */
4
11
  function filterMaybeValues(values) {
5
- if (values) {
6
- return values.filter(filterMaybeValuesFn);
12
+ if (values != null) {
13
+ return values.filter(maybe_1.hasNonNullValue);
7
14
  }
8
15
  else {
9
16
  return [];
10
17
  }
11
18
  }
12
19
  exports.filterMaybeValues = filterMaybeValues;
13
- function filterMaybeValuesFn(value) {
14
- return value != null;
20
+ /**
21
+ * Filters all empty and maybe values from the input array. If a maybe value is input, returns an empty array.
22
+ *
23
+ * @param values
24
+ * @returns
25
+ */
26
+ function filterEmptyValues(values) {
27
+ if (values != null) {
28
+ return values.filter(maybe_1.hasValueOrNotEmpty);
29
+ }
30
+ else {
31
+ return [];
32
+ }
15
33
  }
16
- exports.filterMaybeValuesFn = filterMaybeValuesFn;
34
+ exports.filterEmptyValues = filterEmptyValues;
17
35
  /**
18
36
  * Checks whether or not all values are MaybeNot values.
19
37
  *
@@ -1 +1 @@
1
- {"version":3,"file":"array.value.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.value.ts"],"names":[],"mappings":";;;AAEA,SAAgB,iBAAiB,CAAI,MAAyB;IAC5D,IAAI,MAAM,EAAE;QACV,OAAO,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;KAC3C;SAAM;QACL,OAAO,EAAE,CAAC;KACX;AACH,CAAC;AAND,8CAMC;AAED,SAAgB,mBAAmB,CAAI,KAAe;IACpD,OAAO,KAAK,IAAI,IAAI,CAAC;AACvB,CAAC;AAFD,kDAEC;AAED;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAI,MAAkB;IACxD,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACnD,CAAC;AAFD,oDAEC;AAED;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAI,MAAkB;IACxD,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACnD,CAAC;AAFD,oDAEC"}
1
+ {"version":3,"file":"array.value.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.value.ts"],"names":[],"mappings":";;;AAAA,0CAAqE;AAGrE;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAI,MAAyB;IAC5D,IAAI,MAAM,IAAI,IAAI,EAAE;QAClB,OAAO,MAAM,CAAC,MAAM,CAAC,uBAAe,CAAC,CAAC;KACvC;SAAM;QACL,OAAO,EAAE,CAAC;KACX;AACH,CAAC;AAND,8CAMC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAI,MAAyB;IAC5D,IAAI,MAAM,IAAI,IAAI,EAAE;QAClB,OAAO,MAAM,CAAC,MAAM,CAAC,0BAAkB,CAAC,CAAC;KAC1C;SAAM;QACL,OAAO,EAAE,CAAC;KACX;AACH,CAAC;AAND,8CAMC;AAED;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAI,MAAkB;IACxD,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACnD,CAAC;AAFD,oDAEC;AAED;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAI,MAAkB;IACxD,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACnD,CAAC;AAFD,oDAEC"}
@@ -1,6 +1,6 @@
1
1
  import { AuthRole, AuthRoleSet } from './auth.role';
2
2
  import { ArrayOrValue } from '../array/array';
3
- import { Maybe } from '../value/maybe';
3
+ import { Maybe } from '../value/maybe.type';
4
4
  /**
5
5
  * Key in the claims.
6
6
  */
@@ -2,6 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.authClaims = exports.authRoleClaimsService = exports.AUTH_ROLE_CLAIMS_DEFAULT_EMPTY_VALUE = exports.AUTH_ROLE_CLAIMS_DEFAULT_CLAIM_VALUE = void 0;
4
4
  const object_1 = require("../object/object");
5
+ const object_filter_pojo_1 = require("../object/object.filter.pojo");
6
+ const object_filter_tuple_1 = require("../object/object.filter.tuple");
5
7
  const object_map_1 = require("../object/object.map");
6
8
  const array_1 = require("../array/array");
7
9
  const set_1 = require("../set");
@@ -70,17 +72,18 @@ function authRoleClaimsService(config, defaults = {}) {
70
72
  });
71
73
  return claims;
72
74
  };
75
+ const forEachKeyValueAddToSet = (0, object_filter_pojo_1.forEachKeyValueOnPOJOFunction)({
76
+ forEach: ([claimsKey, value], i, claims, roles) => {
77
+ const entry = authRoleMap.get(claimsKey);
78
+ if (entry != null) {
79
+ const decodedRoles = entry.decodeRolesFromValue(value);
80
+ (0, set_1.addToSet)(roles, decodedRoles);
81
+ }
82
+ }
83
+ });
73
84
  const toRoles = (claims) => {
74
85
  const roles = new Set();
75
- (0, object_1.forEachKeyValue)(claims, {
76
- forEach: ([claimsKey, value]) => {
77
- const entry = authRoleMap.get(claimsKey);
78
- if (entry != null) {
79
- const decodedRoles = entry.decodeRolesFromValue(value);
80
- (0, set_1.addToSet)(roles, decodedRoles);
81
- }
82
- }
83
- });
86
+ forEachKeyValueAddToSet(claims, roles);
84
87
  return roles;
85
88
  };
86
89
  return {
@@ -98,7 +101,7 @@ exports.authRoleClaimsService = authRoleClaimsService;
98
101
  * @returns
99
102
  */
100
103
  function authClaims(authClaimsUpdate) {
101
- return (0, object_1.filterFromPOJO)(authClaimsUpdate, { filter: { valueFilter: object_1.KeyValueTypleValueFilter.NULL } });
104
+ return (0, object_filter_pojo_1.filterFromPOJO)(authClaimsUpdate, { filter: { valueFilter: object_filter_tuple_1.KeyValueTypleValueFilter.NULL } });
102
105
  }
103
106
  exports.authClaims = authClaims;
104
107
  //# sourceMappingURL=auth.role.claims.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.role.claims.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/auth/auth.role.claims.ts"],"names":[],"mappings":";;;AACA,6CAA2G;AAC3G,qDAAsD;AACtD,0CAAuD;AACvD,gCAAwD;AAsH3C,QAAA,oCAAoC,GAAG,CAAC,CAAC;AACzC,QAAA,oCAAoC,GAAG,IAAI,CAAC;AAMzD;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAA6B,MAAsC,EAAE,WAA0C,EAAE;;IACpJ,MAAM,iBAAiB,GAAmB,MAAA,CAAC,IAAA,qBAAY,EAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,CAAC,CAAC,CAAC,4CAAoC,CAAC,mCAAI,4CAAoC,CAAC;IACvL,MAAM,iBAAiB,GAAyC,MAAA,CAAC,IAAA,qBAAY,EAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,CAAC,CAAC,CAAC,4CAAoC,CAAC,mCAAI,IAAI,CAAC;IAE7K,SAAS,eAAe,CAAC,KAA4C;QACnE,OAAQ,KAAuD,CAAC,KAAK,IAAI,IAAI,CAAC;IAChF,CAAC;IAED,MAAM,MAAM,GAA0D,IAAA,2BAAc,EAAgD,MAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;;QAC3J,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,KAAoD,CAAC;QAEzD,IAAI,eAAe,CAAC,UAAU,CAAC,EAAE;YAC/B,MAAM,aAAa,GAAG,MAAA,UAAU,CAAC,KAAK,mCAAI,iBAAiB,CAAC;YAC5D,MAAM,UAAU,GAAG,IAAA,eAAO,EAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAE7C,kGAAkG;YAClG,8IAA8I;YAC9I,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;gBACrC,MAAM,IAAI,KAAK,CAAC,6GAA6G,CAAC,CAAC;aAChI;YAED,KAAK,GAAG;gBACN,oBAAoB,EAAE,CAAC,KAAkB,EAAE,EAAE;;oBAC3C,IAAI,WAAW,CAAC;oBAEhB,qEAAqE;oBACrE,IAAI,IAAA,0BAAoB,EAAC,KAAK,EAAE,UAAU,CAAC,EAAE;wBAC3C,WAAW,GAAG,MAAA,UAAU,CAAC,KAAK,mCAAI,iBAAiB,CAAC;qBACrD;oBAED,OAAO,WAAW,CAAC;gBACrB,CAAC;gBACD,oBAAoB,EAAE,CAAC,KAA4B,EAAE,EAAE;oBACrD,IAAI,KAAK,KAAK,aAAa,EAAE;wBAC3B,OAAO,UAAU,CAAC;qBACnB;yBAAM;wBACL,OAAO,EAAE,CAAC;qBACX;gBACH,CAAC;aACF,CAAC;SACH;aAAM;YACL,KAAK,GAAG,UAA2D,CAAC;SACrE;QAEA,KAA6C,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAA4C,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAoD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9H,MAAM,QAAQ,GAAG,CAAC,KAAkB,EAAE,EAAE;QACtC,MAAM,MAAM,GAAG,EAAyB,CAAC;QAEzC,mDAAmD;QACnD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,EAAE;;YACpC,MAAM,WAAW,GAAG,MAAA,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,mCAAI,iBAAiB,CAAC;YAC3E,MAAM,CAAC,SAAoB,CAAC,GAAG,WAAoC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAqC,CAAC,MAA2B,EAAE,EAAE;QAChF,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAEhC,IAAA,wBAAe,EAAC,MAAM,EAAE;YACtB,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,SAAmB,CAAC,CAAC;gBAEnD,IAAI,KAAK,IAAI,IAAI,EAAE;oBACjB,MAAM,YAAY,GAAG,KAAK,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;oBACvD,IAAA,cAAQ,EAAC,KAAK,EAAE,YAAY,CAAC,CAAC;iBAC/B;YACH,CAAC;SACF,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,OAAO;QACL,QAAQ;QACR,OAAO;QACP,iBAAiB;QACjB,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAtFD,sDAsFC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CAAgD,gBAAqC;IAC7G,OAAO,IAAA,uBAAc,EAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,iCAAwB,CAAC,IAAI,EAAE,EAAE,CAAkB,CAAC;AACvH,CAAC;AAFD,gCAEC"}
1
+ {"version":3,"file":"auth.role.claims.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/auth/auth.role.claims.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  /**
3
3
  * An application role.
4
4
  *
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  /**
3
3
  * A valid ISO8601 formatted date string.
4
4
  */
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  /**
3
3
  * Represents a string for a time. This may be human-input, and
4
4
  * can be interpreted in various ways depending on the input.
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  /**
3
3
  * A unique identifier for a specific error.
4
4
  */
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  import { ReadableError, ReadableDataError, StringErrorCode, CodedError } from './error';
3
3
  /**
4
4
  * The expected error object returned from the server.
@@ -1,3 +1,6 @@
1
+ /**
2
+ * Contains a reference to a filter object.
3
+ */
1
4
  export interface Filter<F> {
2
5
  filter?: F;
3
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/filter/filter.ts"],"names":[],"mappings":";;;AAQA;;;;;;GAMG;AACH,SAAgB,YAAY,CAA+D,QAAW,EAAE,MAAM,GAAG,IAAI;IACnH,IAAI,MAAM,EAAE;QACV,OAAO,CAAC,CAAC,KAAQ,EAAE,KAAa,EAAE,EAAE;YAClC,MAAM,MAAM,GAAY,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YAC1D,OAAO,CAAC,MAAM,CAAC;QACjB,CAAC,CAAM,CAAC;KACT;SAAM;QACL,OAAO,QAAQ,CAAC;KACjB;AACH,CAAC;AATD,oCASC"}
1
+ {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/filter/filter.ts"],"names":[],"mappings":";;;AAWA;;;;;;GAMG;AACH,SAAgB,YAAY,CAA+D,QAAW,EAAE,MAAM,GAAG,IAAI;IACnH,IAAI,MAAM,EAAE;QACV,OAAO,CAAC,CAAC,KAAQ,EAAE,KAAa,EAAE,EAAE;YAClC,MAAM,MAAM,GAAY,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YAC1D,OAAO,CAAC,MAAM,CAAC;QACjB,CAAC,CAAM,CAAC;KACT;SAAM;QACL,OAAO,QAAQ,CAAC;KACjB;AACH,CAAC;AATD,oCASC"}
@@ -1,5 +1,5 @@
1
1
  import { PrimativeKey, ReadKeyFunction } from './key';
2
- import { Maybe } from './value/maybe';
2
+ import { Maybe } from './value/maybe.type';
3
3
  export interface SeparateResult<T> {
4
4
  included: T[];
5
5
  excluded: T[];
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  /**
3
3
  * An Iterable or a value.
4
4
  *
@@ -16,6 +16,13 @@ export declare function asIterable<T = unknown>(values: IterableOrValue<T>, trea
16
16
  * @returns
17
17
  */
18
18
  export declare function isIterable<T = unknown>(values: unknown, treatStringAsIterable?: boolean): values is Iterable<T>;
19
+ /**
20
+ * Returns true if there are values to iterate over.
21
+ *
22
+ * @param values
23
+ * @returns
24
+ */
25
+ export declare function isEmptyIterable<T = unknown>(values: Iterable<T>): boolean;
19
26
  /**
20
27
  * Returns the first value from the Iterable. If there are no values, returns undefined. Order is not guranteed.
21
28
  *
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.existsInIterable = exports.findInIterable = exports.useIterableOrValue = exports.forEachInIterable = exports.takeValuesFromIterable = exports.firstValueFromIterable = exports.isIterable = exports.asIterable = void 0;
3
+ exports.existsInIterable = exports.findInIterable = exports.useIterableOrValue = exports.forEachInIterable = exports.takeValuesFromIterable = exports.firstValueFromIterable = exports.isEmptyIterable = exports.isIterable = exports.asIterable = void 0;
4
4
  // MARK: Functions
5
5
  function asIterable(values, treatStringAsIterable) {
6
6
  let iterable;
@@ -31,6 +31,19 @@ function isIterable(values, treatStringAsIterable = false) {
31
31
  }
32
32
  }
33
33
  exports.isIterable = isIterable;
34
+ /**
35
+ * Returns true if there are values to iterate over.
36
+ *
37
+ * @param values
38
+ * @returns
39
+ */
40
+ function isEmptyIterable(values) {
41
+ for (const value of values) {
42
+ return false;
43
+ }
44
+ return true;
45
+ }
46
+ exports.isEmptyIterable = isEmptyIterable;
34
47
  /**
35
48
  * Returns the first value from the Iterable. If there are no values, returns undefined. Order is not guranteed.
36
49
  *
@@ -1 +1 @@
1
- {"version":3,"file":"iterable.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/iterable/iterable.ts"],"names":[],"mappings":";;;AAUA,kBAAkB;AAClB,SAAgB,UAAU,CAAc,MAA0B,EAAE,qBAA+B;IACjG,IAAI,QAAqB,CAAC;IAE1B,IAAI,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,EAAE;QAC7C,QAAQ,GAAG,MAAM,CAAC;KACnB;SAAM;QACL,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC;KACrB;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAVD,gCAUC;AAED;;;;;;;;GAQG;AACH,SAAgB,UAAU,CAAc,MAAe,EAAE,qBAAqB,GAAG,KAAK;IACpF,IAAI,MAAM,IAAK,MAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,EAAE;QAC/G,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAND,gCAMC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAI,MAAmB;IAC3D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAND,wDAMC;AAED;;;;;;GAMG;AACH,SAAgB,sBAAsB,CAAI,MAAmB,EAAE,KAAa;IAC1E,MAAM,MAAM,GAAQ,EAAE,CAAC;IAEvB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,MAAM,CAAC,MAAM,GAAG,KAAK,EAAE;YACzB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpB;aAAM;YACL,MAAM;SACP;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAZD,wDAYC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAI,MAAmB,EAAE,EAAsB;IAC9E,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,EAAE,CAAC,KAAK,CAAC,CAAC;KACX;AACH,CAAC;AAJD,8CAIC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAI,MAAiC,EAAE,EAAsB,EAAE,qBAAqB,GAAG,KAAK;IAC5H,IAAI,MAAM,IAAI,IAAI,EAAE;QAClB,IAAI,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,EAAE;YAC7C,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;SAC/B;aAAM;YACL,EAAE,CAAC,MAAM,CAAC,CAAC;SACZ;KACF;AACH,CAAC;AARD,gDAQC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAAI,MAAmB,EAAE,EAAyB;IAC9E,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE;YACb,OAAO,KAAK,CAAC;SACd;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AARD,wCAQC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAI,MAAmB,EAAE,EAAyB;IAChF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE;YACb,OAAO,IAAI,CAAC;SACb;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AARD,4CAQC"}
1
+ {"version":3,"file":"iterable.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/iterable/iterable.ts"],"names":[],"mappings":";;;AAUA,kBAAkB;AAClB,SAAgB,UAAU,CAAc,MAA0B,EAAE,qBAA+B;IACjG,IAAI,QAAqB,CAAC;IAE1B,IAAI,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,EAAE;QAC7C,QAAQ,GAAG,MAAM,CAAC;KACnB;SAAM;QACL,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC;KACrB;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAVD,gCAUC;AAED;;;;;;;;GAQG;AACH,SAAgB,UAAU,CAAc,MAAe,EAAE,qBAAqB,GAAG,KAAK;IACpF,IAAI,MAAM,IAAK,MAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,EAAE;QAC/G,OAAO,IAAI,CAAC;KACb;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAND,gCAMC;AAED;;;;;GAKG;AACH,SAAgB,eAAe,CAAc,MAAmB;IAC9D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAND,0CAMC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAI,MAAmB;IAC3D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAND,wDAMC;AAED;;;;;;GAMG;AACH,SAAgB,sBAAsB,CAAI,MAAmB,EAAE,KAAa;IAC1E,MAAM,MAAM,GAAQ,EAAE,CAAC;IAEvB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,MAAM,CAAC,MAAM,GAAG,KAAK,EAAE;YACzB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpB;aAAM;YACL,MAAM;SACP;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAZD,wDAYC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAI,MAAmB,EAAE,EAAsB;IAC9E,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,EAAE,CAAC,KAAK,CAAC,CAAC;KACX;AACH,CAAC;AAJD,8CAIC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAI,MAAiC,EAAE,EAAsB,EAAE,qBAAqB,GAAG,KAAK;IAC5H,IAAI,MAAM,IAAI,IAAI,EAAE;QAClB,IAAI,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,EAAE;YAC7C,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;SAC/B;aAAM;YACL,EAAE,CAAC,MAAM,CAAC,CAAC;SACZ;KACF;AACH,CAAC;AARD,gDAQC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAAI,MAAmB,EAAE,EAAyB;IAC9E,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE;YACb,OAAO,KAAK,CAAC;SACd;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AARD,wCAQC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAI,MAAmB,EAAE,EAAyB;IAChF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE;YACb,OAAO,IAAI,CAAC;SACb;KACF;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AARD,4CAQC"}
package/src/lib/key.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Maybe } from './value/maybe';
1
+ import { Maybe } from './value/maybe.type';
2
2
  /**
3
3
  * A key made up of either a string or number value.
4
4
  */
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  export declare function joinHostAndPort(config: Maybe<{
3
3
  host: string;
4
4
  port: number | string;
@@ -1,5 +1,5 @@
1
1
  import { GetterOrValue } from '../getter/getter';
2
- import { Maybe, MaybeSo } from '../value/maybe';
2
+ import { Maybe, MaybeSo } from '../value/maybe.type';
3
3
  import { ApplyMapFunctionWithOptions, MapFunction } from '../value/map';
4
4
  import { MergeReplace, ReplaceType } from '../type';
5
5
  import { XOR } from 'ts-essentials';
@@ -4,11 +4,12 @@
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.modelFieldMapFunction = exports.modelFieldMapFunctions = exports.modelFieldConversions = exports.makeModelConversionFieldValuesFunction = exports.makeModelMapFunctions = void 0;
6
6
  const getter_1 = require("../getter/getter");
7
- const object_1 = require("../object/object");
7
+ const object_filter_pojo_1 = require("../object/object.filter.pojo");
8
+ const object_filter_tuple_1 = require("../object/object.filter.tuple");
8
9
  const maybe_1 = require("../value/maybe");
9
- const object_2 = require("../object");
10
+ const object_1 = require("../object");
10
11
  function makeModelMapFunctions(fields) {
11
- const keys = (0, object_1.filterKeyValueTuples)(fields);
12
+ const keys = (0, object_filter_tuple_1.filterKeyValueTuples)(fields);
12
13
  const conversionsByKey = keys.map(([key, field]) => [key, field]);
13
14
  const fromConversions = conversionsByKey.map(([key, configs]) => [key, configs.from]);
14
15
  const toConversions = conversionsByKey.map(([key, configs]) => [key, configs.to]);
@@ -27,9 +28,9 @@ function makeModelConversionFieldValuesFunction(fields) {
27
28
  let targetFields = fields;
28
29
  // if options are provided, filter down.
29
30
  if (options) {
30
- const fieldsToMap = new Set((0, object_1.findPOJOKeys)(input, {
31
+ const fieldsToMap = new Set((0, object_filter_pojo_1.findPOJOKeys)(input, {
31
32
  keysFilter: options.fields,
32
- valueFilter: options.definedOnly === false ? object_1.KeyValueTypleValueFilter.NONE : object_1.KeyValueTypleValueFilter.UNDEFINED
33
+ valueFilter: options.definedOnly === false ? object_filter_tuple_1.KeyValueTypleValueFilter.NONE : object_filter_tuple_1.KeyValueTypleValueFilter.UNDEFINED
33
34
  }));
34
35
  targetFields = fields.filter((x) => fieldsToMap.has(x[0]));
35
36
  }
@@ -40,7 +41,7 @@ function makeModelConversionFieldValuesFunction(fields) {
40
41
  }
41
42
  exports.makeModelConversionFieldValuesFunction = makeModelConversionFieldValuesFunction;
42
43
  function modelFieldConversions(config) {
43
- return (0, object_2.mapObjectMap)(config, (x) => modelFieldMapFunctions(x));
44
+ return (0, object_1.mapObjectMap)(config, (x) => modelFieldMapFunctions(x));
44
45
  }
45
46
  exports.modelFieldConversions = modelFieldConversions;
46
47
  function modelFieldMapFunctions(config) {
@@ -1 +1 @@
1
- {"version":3,"file":"model.conversion.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/model/model.conversion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.conversion.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/model/model.conversion.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Maybe } from '../value/maybe';
1
+ import { Maybe } from '../value/maybe.type';
2
2
  export declare type CopySelectModelFieldsConfig<T = unknown> = Partial<CopyModelFieldsConfig<T>>;
3
3
  export declare type CopyModelFieldsConfig<T = unknown> = {
4
4
  [K in keyof T]: Maybe<CopyModelFieldConfig>;
@@ -1,5 +1,5 @@
1
1
  import { ReadKeyFunction, ReadKeysFunction } from '../key';
2
- import { Maybe } from '../value/maybe';
2
+ import { Maybe } from '../value/maybe.type';
3
3
  /**
4
4
  * A string model key
5
5
  */
@@ -1,6 +1,6 @@
1
1
  import { MaybeMap } from '@dereekb/util';
2
2
  import { ArrayOrValue } from '../array/array';
3
- import { Maybe } from '../value/maybe';
3
+ import { Maybe } from '../value/maybe.type';
4
4
  import { ModifierFunction } from '../value/modifier';
5
5
  import { ModelMapFunction, ModelMapFunctions } from './model.conversion';
6
6
  export declare type ModelInputDataModifier<D extends object> = {
@@ -1,4 +1,7 @@
1
1
  export * from './object.array';
2
+ export * from './object.empty';
2
3
  export * from './object.equal';
3
4
  export * from './object.map';
4
5
  export * from './object';
6
+ export * from './object.filter.tuple';
7
+ export * from './object.filter.pojo';
@@ -2,7 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./object.array"), exports);
5
+ tslib_1.__exportStar(require("./object.empty"), exports);
5
6
  tslib_1.__exportStar(require("./object.equal"), exports);
6
7
  tslib_1.__exportStar(require("./object.map"), exports);
7
8
  tslib_1.__exportStar(require("./object"), exports);
9
+ tslib_1.__exportStar(require("./object.filter.tuple"), exports);
10
+ tslib_1.__exportStar(require("./object.filter.pojo"), exports);
8
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/object/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,yDAA+B;AAC/B,uDAA6B;AAC7B,mDAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/object/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,yDAA+B;AAC/B,yDAA+B;AAC/B,uDAA6B;AAC7B,mDAAyB;AACzB,gEAAsC;AACtC,+DAAqC"}
@@ -1,6 +1,4 @@
1
1
  import { FieldOfType } from '../key';
2
- import { Maybe } from '../value/maybe';
3
- import { FilterFunction } from '../filter/filter';
4
2
  export declare type EmptyObject = Record<string, never>;
5
3
  export declare function objectHasNoKeys(obj: object): obj is EmptyObject;
6
4
  export declare function objectHasKey<T, K extends keyof T = keyof T>(obj: T, key: K): boolean;
@@ -11,117 +9,11 @@ export declare function applyToMultipleFields<T extends object, X = unknown>(val
11
9
  export declare function mapToObject<T, K extends PropertyKey>(map: Map<K, T>): {
12
10
  [key: PropertyKey]: T;
13
11
  };
14
- export interface FilterFromPOJO<T extends object> {
15
- copy?: boolean;
16
- filter?: Omit<KeyValueTupleFilter<T>, 'inverse'>;
17
- }
12
+ export declare type CopyObjectFunction<T> = (input: T) => T;
18
13
  /**
19
- * Returns a copy of the input object with all null and undefined values filtered from it.
14
+ * Creates a shallow copy of an object using the spread operator.
20
15
  *
21
- * @param obj
16
+ * @param input
22
17
  * @returns
23
18
  */
24
- export declare function filterNullAndUndefinedValues<T extends object = object>(obj: T): T;
25
- /**
26
- * Returns a copy of the input object with all undefined values filtered from it.
27
- *
28
- * @param obj
29
- * @returns
30
- */
31
- export declare function filterUndefinedValues<T extends object = object>(obj: T, filterNull?: boolean): T;
32
- /**
33
- * Returns all keys that are not associated with an undefined value.
34
- *
35
- * @param obj
36
- * @returns
37
- */
38
- export declare function allNonUndefinedKeys<T extends object = object>(obj: T): (keyof T)[];
39
- export declare function allMaybeSoKeys<T extends object = object>(obj: T): (keyof T)[];
40
- /**
41
- * Finds keys from the POJO that meet the filter.
42
- *
43
- * @param obj
44
- * @param filter
45
- * @returns
46
- */
47
- export declare function findPOJOKeys<T extends object = object>(obj: T, filter: FilterKeyValueTuplesInput<T>): (keyof T)[];
48
- /**
49
- * Finds and counts the number of keys from the POJO that meet the filter.
50
- *
51
- * @param obj
52
- * @param filter
53
- * @returns
54
- */
55
- export declare function countPOJOKeys<T extends object = object>(obj: T, filter?: FilterKeyValueTuplesInput<T>): number;
56
- /**
57
- * Removes values, per the the filter config, from the input object.
58
- *
59
- * @param obj POJO to remove undefined values from.
60
- * @param copy Whether or not to return a copy of the input object. Default is true.
61
- */
62
- export declare function filterFromPOJO<T extends object = object>(obj: T, { copy, filter }?: FilterFromPOJO<T>): T;
63
- export declare function assignValuesToPOJO<T extends object = object>(target: T, obj: T, filter?: FilterKeyValueTuplesInput<T>): T;
64
- /**
65
- * Reads all values from the pojo based on the filter and puts them into an array.
66
- *
67
- * @param target
68
- * @param filter
69
- * @returns
70
- */
71
- export declare function valuesFromPOJO<O = unknown, I extends object = object>(target: I, filter?: FilterKeyValueTuplesInput<I>): O[];
72
- export declare type KeyValueTuple<T extends object = object, K extends keyof T = keyof T> = [K, T[K]];
73
- export declare function allKeyValueTuples<T extends object = object, K extends keyof T = keyof T>(obj: T): KeyValueTuple<T, K>[];
74
- export declare enum KeyValueTypleValueFilter {
75
- /**
76
- * No filter
77
- */
78
- NONE = 0,
79
- /**
80
- * Only undefined values.
81
- */
82
- UNDEFINED = 1,
83
- /**
84
- * All values that are null or undefined.
85
- */
86
- NULL = 2,
87
- /**
88
- * All values that are falsy.
89
- */
90
- FALSY = 3
91
- }
92
- export declare type ForEachKeyValueFunction<T extends object = object, K extends keyof T = keyof T> = (tuple: KeyValueTuple<T, K>, index: number) => void;
93
- export interface ForEachKeyValue<T extends object = object, K extends keyof T = keyof T> {
94
- filter?: FilterKeyValueTuplesInput<T, K>;
95
- forEach: ForEachKeyValueFunction<T, K>;
96
- }
97
- export declare function forEachKeyValue<T extends object = object, K extends keyof T = keyof T>(obj: T, { forEach, filter }: ForEachKeyValue<T, K>): void;
98
- export declare function filterKeyValueTuples<T extends object = object, K extends keyof T = keyof T>(obj: T, filter?: FilterKeyValueTuplesInput<T, K>): KeyValueTuple<T, K>[];
99
- export interface KeyValueTupleFilter<T extends object = object, K extends keyof T = keyof T> {
100
- valueFilter?: KeyValueTypleValueFilter;
101
- invertFilter?: boolean;
102
- keysFilter?: K[];
103
- }
104
- export declare type FilterKeyValueTuplesInput<T extends object = object, K extends keyof T = keyof T> = KeyValueTypleValueFilter | KeyValueTupleFilter<T, K>;
105
- export declare type FilterKeyValueTupleFunction<T extends object = object, K extends keyof T = keyof T> = FilterFunction<KeyValueTuple<T, K>>;
106
- export declare function filterKeyValueTupleFunction<T extends object = object, K extends keyof T = keyof T>(input: FilterKeyValueTuplesInput<T, K>): FilterKeyValueTupleFunction<T, K>;
107
- /**
108
- * Recursively function that returns true if the input is not an object or if every key on the object is empty.
109
- *
110
- * @param obj
111
- */
112
- export declare function objectIsEmpty<T extends object>(obj: Maybe<T>): boolean;
113
- /**
114
- * Merges all input objects into one. The order of overrides is kept, so the right-most item in the array will have priority over all objects before it.
115
- *
116
- * @param objects
117
- */
118
- export declare function mergeObjects<T extends object>(objects: Maybe<Partial<T>>[], filter?: KeyValueTupleFilter<T>): Partial<T>;
119
- /**
120
- * Assigns all undefined valeus from one or more objects into the target object.
121
- *
122
- * @param object
123
- */
124
- export declare function overrideInObject<T extends object>(target: Partial<T>, { from, filter }: {
125
- from: Partial<T>[];
126
- filter?: KeyValueTupleFilter<T>;
127
- }): Partial<T>;
19
+ export declare function copyObject<T extends object>(input: T): T;