@dereekb/util 1.2.0 → 3.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.
- package/CHANGELOG.md +54 -9
- package/README.md +1 -1
- package/package.json +8 -5
- package/src/index.js +2 -2
- package/src/index.js.map +1 -1
- package/src/lib/array/array.boolean.d.ts +4 -2
- package/src/lib/array/array.boolean.js +11 -1
- package/src/lib/array/array.boolean.js.map +1 -1
- package/src/lib/array/array.d.ts +24 -2
- package/src/lib/array/array.index.d.ts +1 -1
- package/src/lib/array/array.js +37 -2
- package/src/lib/array/array.js.map +1 -1
- package/src/lib/array/array.limit.d.ts +1 -1
- package/src/lib/array/array.make.d.ts +1 -1
- package/src/lib/array/array.make.js +2 -2
- package/src/lib/array/array.make.js.map +1 -1
- package/src/lib/array/array.map.d.ts +1 -1
- package/src/lib/array/array.set.d.ts +2 -16
- package/src/lib/array/array.set.js +21 -55
- package/src/lib/array/array.set.js.map +1 -1
- package/src/lib/array/array.string.d.ts +7 -5
- package/src/lib/array/array.string.js +14 -4
- package/src/lib/array/array.string.js.map +1 -1
- package/src/lib/array/array.unique.d.ts +1 -1
- package/src/lib/array/array.value.d.ts +15 -1
- package/src/lib/array/array.value.js +21 -1
- package/src/lib/array/array.value.js.map +1 -1
- package/src/lib/array/index.js +12 -12
- package/src/lib/array/index.js.map +1 -1
- package/src/lib/assertion/index.js +5 -5
- package/src/lib/assertion/index.js.map +1 -1
- package/src/lib/auth/auth.role.claims.d.ts +98 -0
- package/src/lib/auth/auth.role.claims.js +93 -0
- package/src/lib/auth/auth.role.claims.js.map +1 -0
- package/src/lib/auth/auth.role.d.ts +22 -0
- package/src/lib/auth/auth.role.js +17 -0
- package/src/lib/auth/auth.role.js.map +1 -0
- package/src/lib/auth/index.d.ts +2 -0
- package/src/lib/auth/index.js +6 -0
- package/src/lib/auth/index.js.map +1 -0
- package/src/lib/contact/index.js +3 -3
- package/src/lib/contact/index.js.map +1 -1
- package/src/lib/date/date.d.ts +1 -1
- package/src/lib/date/date.time.d.ts +4 -2
- package/src/lib/date/date.time.js +13 -1
- package/src/lib/date/date.time.js.map +1 -1
- package/src/lib/date/index.js +2 -2
- package/src/lib/date/index.js.map +1 -1
- package/src/lib/error/error.d.ts +6 -1
- package/src/lib/error/error.js +8 -1
- package/src/lib/error/error.js.map +1 -1
- package/src/lib/error/error.server.d.ts +5 -12
- package/src/lib/error/error.server.js.map +1 -1
- package/src/lib/error/index.js +2 -2
- package/src/lib/error/index.js.map +1 -1
- package/src/lib/filter/index.js +1 -1
- package/src/lib/filter/index.js.map +1 -1
- package/src/lib/function/function.forward.d.ts +9 -0
- package/src/lib/function/function.forward.js +18 -0
- package/src/lib/function/function.forward.js.map +1 -0
- package/src/lib/function/index.d.ts +1 -0
- package/src/lib/function/index.js +5 -0
- package/src/lib/function/index.js.map +1 -0
- package/src/lib/getter/getter.cache.d.ts +38 -0
- package/src/lib/getter/getter.cache.js +23 -0
- package/src/lib/getter/getter.cache.js.map +1 -0
- package/src/lib/getter/getter.d.ts +61 -0
- package/src/lib/getter/getter.js +48 -0
- package/src/lib/getter/getter.js.map +1 -0
- package/src/lib/getter/getter.map.d.ts +15 -0
- package/src/lib/getter/getter.map.js +24 -0
- package/src/lib/getter/getter.map.js.map +1 -0
- package/src/lib/getter/index.d.ts +3 -0
- package/src/lib/getter/index.js +7 -0
- package/src/lib/getter/index.js.map +1 -0
- package/src/lib/grouping.d.ts +4 -4
- package/src/lib/index.d.ts +9 -5
- package/src/lib/index.js +31 -28
- package/src/lib/index.js.map +1 -1
- package/src/lib/iterable/index.d.ts +2 -0
- package/src/lib/iterable/index.js +6 -0
- package/src/lib/iterable/index.js.map +1 -0
- package/src/lib/iterable/iterable.d.ts +53 -0
- package/src/lib/iterable/iterable.js +113 -0
- package/src/lib/iterable/iterable.js.map +1 -0
- package/src/lib/iterable/iterable.map.d.ts +8 -0
- package/src/lib/iterable/iterable.map.js +18 -0
- package/src/lib/iterable/iterable.map.js.map +1 -0
- package/src/lib/iterate.js +1 -1
- package/src/lib/key.d.ts +1 -1
- package/src/lib/map/index.d.ts +2 -0
- package/src/lib/map/index.js +6 -0
- package/src/lib/map/index.js.map +1 -0
- package/src/lib/map/map.d.ts +9 -0
- package/src/lib/map/map.intersection.d.ts +15 -0
- package/src/lib/map/map.intersection.js +24 -0
- package/src/lib/map/map.intersection.js.map +1 -0
- package/src/lib/map/map.js +17 -0
- package/src/lib/map/map.js.map +1 -0
- package/src/lib/misc/host.d.ts +5 -0
- package/src/lib/misc/host.js +13 -0
- package/src/lib/misc/host.js.map +1 -0
- package/src/lib/misc/index.d.ts +1 -0
- package/src/lib/misc/index.js +5 -0
- package/src/lib/misc/index.js.map +1 -0
- package/src/lib/model/index.d.ts +3 -0
- package/src/lib/model/index.js +7 -0
- package/src/lib/model/index.js.map +1 -0
- package/src/lib/model/model.conversion.d.ts +63 -0
- package/src/lib/model/model.conversion.js +66 -0
- package/src/lib/model/model.conversion.js.map +1 -0
- package/src/lib/model/model.copy.d.ts +16 -0
- package/src/lib/model/model.copy.js +20 -0
- package/src/lib/model/model.copy.js.map +1 -0
- package/src/lib/{model.d.ts → model/model.d.ts} +2 -2
- package/src/lib/{model.js → model/model.js} +3 -3
- package/src/lib/model/model.js.map +1 -0
- package/src/lib/number/factory.d.ts +22 -0
- package/src/lib/number/factory.js +22 -0
- package/src/lib/number/factory.js.map +1 -0
- package/src/lib/number/index.d.ts +3 -0
- package/src/lib/number/index.js +7 -0
- package/src/lib/number/index.js.map +1 -0
- package/src/lib/number/random.d.ts +13 -0
- package/src/lib/number/random.js +22 -0
- package/src/lib/number/random.js.map +1 -0
- package/src/lib/{number.d.ts → number/round.d.ts} +0 -13
- package/src/lib/{number.js → number/round.js} +2 -20
- package/src/lib/number/round.js.map +1 -0
- package/src/lib/object/index.d.ts +1 -0
- package/src/lib/object/index.js +4 -3
- package/src/lib/object/index.js.map +1 -1
- package/src/lib/object/object.d.ts +69 -8
- package/src/lib/object/object.equal.d.ts +1 -1
- package/src/lib/object/object.equal.js +3 -3
- package/src/lib/object/object.equal.js.map +1 -1
- package/src/lib/object/object.js +117 -11
- package/src/lib/object/object.js.map +1 -1
- package/src/lib/object/object.map.d.ts +35 -0
- package/src/lib/object/object.map.js +40 -0
- package/src/lib/object/object.map.js.map +1 -0
- package/src/lib/page/index.js +3 -3
- package/src/lib/page/index.js.map +1 -1
- package/src/lib/page/page.d.ts +1 -1
- package/src/lib/page/page.filter.js +1 -1
- package/src/lib/promise/index.d.ts +3 -0
- package/src/lib/promise/index.js +7 -4
- package/src/lib/promise/index.js.map +1 -1
- package/src/lib/promise/is.d.ts +7 -0
- package/src/lib/promise/is.js +15 -0
- package/src/lib/promise/is.js.map +1 -0
- package/src/lib/promise/map.d.ts +10 -0
- package/src/lib/promise/map.js +14 -0
- package/src/lib/promise/map.js.map +1 -0
- package/src/lib/promise/promise.d.ts +13 -1
- package/src/lib/promise/promise.js +26 -8
- package/src/lib/promise/promise.js.map +1 -1
- package/src/lib/promise/promise.loop.d.ts +18 -3
- package/src/lib/promise/promise.loop.js +18 -2
- package/src/lib/promise/promise.loop.js.map +1 -1
- package/src/lib/promise/promise.ref.d.ts +10 -0
- package/src/lib/promise/promise.ref.js +19 -0
- package/src/lib/promise/promise.ref.js.map +1 -0
- package/src/lib/promise/wait.js +2 -2
- package/src/lib/promise/wait.js.map +1 -1
- package/src/lib/relation/index.js +1 -1
- package/src/lib/relation/index.js.map +1 -1
- package/src/lib/relation/relation.js +2 -2
- package/src/lib/set/index.d.ts +4 -0
- package/src/lib/set/index.js +8 -0
- package/src/lib/set/index.js.map +1 -0
- package/src/lib/set/set.allowed.d.ts +23 -0
- package/src/lib/set/set.allowed.js +29 -0
- package/src/lib/set/set.allowed.js.map +1 -0
- package/src/lib/set/set.d.ts +53 -0
- package/src/lib/{set.hashset.d.ts → set/set.hashset.d.ts} +2 -2
- package/src/lib/{set.hashset.js → set/set.hashset.js} +0 -0
- package/src/lib/set/set.hashset.js.map +1 -0
- package/src/lib/set/set.js +114 -0
- package/src/lib/set/set.js.map +1 -0
- package/src/lib/set/set.maybe.d.ts +11 -0
- package/src/lib/set/set.maybe.js +22 -0
- package/src/lib/set/set.maybe.js.map +1 -0
- package/src/lib/sort.d.ts +1 -4
- package/src/lib/sort.js +3 -8
- package/src/lib/sort.js.map +1 -1
- package/src/lib/storage/index.js +4 -4
- package/src/lib/storage/index.js.map +1 -1
- package/src/lib/storage/storage.memory.d.ts +1 -1
- package/src/lib/storage/storage.object.d.ts +1 -1
- package/src/lib/string.d.ts +9 -2
- package/src/lib/string.js +11 -1
- package/src/lib/string.js.map +1 -1
- package/src/lib/tree/index.js +4 -4
- package/src/lib/tree/index.js.map +1 -1
- package/src/lib/tree/tree.expand.d.ts +1 -1
- package/src/lib/type.d.ts +17 -1
- package/src/lib/value/equal.d.ts +41 -0
- package/src/lib/value/equal.js +56 -0
- package/src/lib/value/equal.js.map +1 -0
- package/src/lib/value/index.d.ts +4 -0
- package/src/lib/value/index.js +8 -0
- package/src/lib/value/index.js.map +1 -0
- package/src/lib/value/map.d.ts +13 -0
- package/src/lib/{map.js → value/map.js} +0 -0
- package/src/lib/value/map.js.map +1 -0
- package/src/lib/{value.d.ts → value/maybe.d.ts} +45 -2
- package/src/lib/value/maybe.js +78 -0
- package/src/lib/value/maybe.js.map +1 -0
- package/src/lib/value/modifier.d.ts +58 -0
- package/src/lib/value/modifier.js +69 -0
- package/src/lib/value/modifier.js.map +1 -0
- package/src/test/index.d.ts +1 -0
- package/src/test/index.js +3 -2
- package/src/test/index.js.map +1 -1
- package/src/test/jest.d.ts +21 -1
- package/src/test/jest.function.d.ts +9 -0
- package/src/test/jest.function.js +14 -0
- package/src/test/jest.function.js.map +1 -0
- package/src/test/jest.js +64 -36
- package/src/test/jest.js.map +1 -1
- package/src/test/jest.wrap.js +5 -5
- package/src/test/jest.wrap.js.map +1 -1
- package/src/lib/getter.d.ts +0 -26
- package/src/lib/getter.js +0 -13
- package/src/lib/getter.js.map +0 -1
- package/src/lib/map.d.ts +0 -2
- package/src/lib/map.js.map +0 -1
- package/src/lib/model.js.map +0 -1
- package/src/lib/number.js.map +0 -1
- package/src/lib/set.d.ts +0 -0
- package/src/lib/set.hashset.js.map +0 -1
- package/src/lib/set.js +0 -2
- package/src/lib/set.js.map +0 -1
- package/src/lib/value.js +0 -28
- package/src/lib/value.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,16 +2,61 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
-
# [
|
|
5
|
+
# [3.0.0](https://github.com/dereekb/dbx-components/compare/v2.1.0...v3.0.0) (2022-05-13)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Code Refactoring
|
|
9
|
+
|
|
10
|
+
* renamed conversionFunction to mapFunction ([6aeba77](https://github.com/dereekb/dbx-components/commit/6aeba7721dfd2721d5fe41216a1b81117be80aff))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* added AsyncPusher ([8cb2052](https://github.com/dereekb/dbx-components/commit/8cb2052577e0901d2acafa3db724b94ab0035b0a))
|
|
16
|
+
* added cleanup() ([1885463](https://github.com/dereekb/dbx-components/commit/18854634041fcdf613ea8f8b0640db9fb218bbce))
|
|
17
|
+
* added dbxFirebaseDocumentStore ([43da785](https://github.com/dereekb/dbx-components/commit/43da785b1b271549f65273a56a0c333a0a23bb2e))
|
|
18
|
+
* added dbxListItemModifier, dbxListItemAnchorModifier ([a96ffa8](https://github.com/dereekb/dbx-components/commit/a96ffa8e87b49b4408c917b6480d139dc748d8e4))
|
|
19
|
+
* added isAllowed ([c2a70bf](https://github.com/dereekb/dbx-components/commit/c2a70bf8a6f4bc4ef8b870691b9899fed3cbafad))
|
|
20
|
+
* added IterationQueryChangeWatcher ([f5b2474](https://github.com/dereekb/dbx-components/commit/f5b2474f9a2cf659cdebf19ba49055e5bd2f1c90))
|
|
21
|
+
* added jestFunctionFixture ([1ea2d7d](https://github.com/dereekb/dbx-components/commit/1ea2d7d4c852449f34279eeedfadd2d69c1e7f2b))
|
|
22
|
+
* added mapKeysIntersection utility functions ([f694f86](https://github.com/dereekb/dbx-components/commit/f694f86b87e646e00e446236bb1c94a28652aa70))
|
|
23
|
+
* added modelConversionFunctions ([42050a8](https://github.com/dereekb/dbx-components/commit/42050a8c1561acad97e99d540834d9c1305ca897))
|
|
24
|
+
* added modelConversionOptions to modelMapFunction ([2de30e0](https://github.com/dereekb/dbx-components/commit/2de30e07527bbaf27c51a8472054a35e73d2ae2b))
|
|
25
|
+
* added setContainsAllValues ([737c1e7](https://github.com/dereekb/dbx-components/commit/737c1e750a9c656406043e2a69bdceaf941750b6))
|
|
26
|
+
* added snapshotConverter, firestoreField ([e986026](https://github.com/dereekb/dbx-components/commit/e986026a4a4700c734fe1534778945df189c518d))
|
|
27
|
+
* firebaseServerAuthModule ([db9a4d3](https://github.com/dereekb/dbx-components/commit/db9a4d3d47fd15317186c7a034c25083ae395251))
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
### BREAKING CHANGES
|
|
31
|
+
|
|
32
|
+
* renamed ConversionFunction (and related types) to MapFunction
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
# [2.1.0](https://github.com/dereekb/dbx-components/compare/v2.0.0...v2.1.0) (2022-03-17)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
# [2.0.0](https://github.com/dereekb/dbx-components/compare/v1.2.0...v2.0.0) (2022-03-13)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
### Features
|
|
44
|
+
|
|
45
|
+
* added dbxActionFormDisabledWhileWorking to dbxActionForm ([4d6d67b](https://github.com/dereekb/dbx-components/commit/4d6d67b3b21b57baefa280ad3a72ac2b281e0a19))
|
|
46
|
+
* added now to dbxDateTimeFieldComponent ([812e704](https://github.com/dereekb/dbx-components/commit/812e704b9bf44daa7441f236d6fe1e2c499ec7dd))
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
# [1.2.0](https://github.com/dereekb/dbx-components/compare/v1.1.0...v1.2.0) (2022-03-04)
|
|
6
51
|
|
|
7
52
|
|
|
8
53
|
### Features
|
|
9
54
|
|
|
10
|
-
* added setContainsAnyValue() ([ea0ee9a](https://github.com/dereekb/
|
|
55
|
+
* added setContainsAnyValue() ([ea0ee9a](https://github.com/dereekb/dbx-components/commit/ea0ee9a76fc6b093b2608356179e9f633fc896be))
|
|
11
56
|
|
|
12
57
|
|
|
13
58
|
|
|
14
|
-
# [1.1.0](https://github.com/dereekb/
|
|
59
|
+
# [1.1.0](https://github.com/dereekb/dbx-components/compare/v1.0.0...v1.1.0) (2022-03-02)
|
|
15
60
|
|
|
16
61
|
|
|
17
62
|
|
|
@@ -20,12 +65,12 @@ This file was generated using [@jscutlery/semver](https://github.com/jscutlery/s
|
|
|
20
65
|
|
|
21
66
|
### Features
|
|
22
67
|
|
|
23
|
-
* added dbxList ([83ddb00](https://github.com/dereekb/
|
|
24
|
-
* added dbxSearchableTextFieldComponent ([42ae14c](https://github.com/dereekb/
|
|
25
|
-
* added dbxStyleBody ([5b624ae](https://github.com/dereekb/
|
|
26
|
-
* added makeBestFit() ([b0cf900](https://github.com/dereekb/
|
|
27
|
-
* added treeNode ([1aa120f](https://github.com/dereekb/
|
|
28
|
-
* segment analytics ([b81d5a6](https://github.com/dereekb/
|
|
68
|
+
* added dbxList ([83ddb00](https://github.com/dereekb/dbx-components/commit/83ddb006548602640ec312594b9bb9f26f3417de))
|
|
69
|
+
* added dbxSearchableTextFieldComponent ([42ae14c](https://github.com/dereekb/dbx-components/commit/42ae14c7709f6603db676c94f1df2017fdad59ca))
|
|
70
|
+
* added dbxStyleBody ([5b624ae](https://github.com/dereekb/dbx-components/commit/5b624ae0c77ea935fe874dcb977eb22dd17cd60c))
|
|
71
|
+
* added makeBestFit() ([b0cf900](https://github.com/dereekb/dbx-components/commit/b0cf900247ab0490fcb35f845cefecc82e45332b))
|
|
72
|
+
* added treeNode ([1aa120f](https://github.com/dereekb/dbx-components/commit/1aa120f7f8c83ccc46d440b77fbd234dec564aea))
|
|
73
|
+
* segment analytics ([b81d5a6](https://github.com/dereekb/dbx-components/commit/b81d5a6a70ecf3bc35852d441cfd79e91e5dcb51))
|
|
29
74
|
|
|
30
75
|
|
|
31
76
|
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
@dereekb/util
|
|
2
2
|
=======
|
|
3
3
|
|
|
4
|
-
The sources for this package are in the main [@dereekb/
|
|
4
|
+
The sources for this package are in the main [@dereekb/dbx-components](https://github.com/dereekb/dbx-components) repo. Please file issues and pull requests against that repo.
|
|
5
5
|
|
|
6
6
|
License: MIT
|
package/package.json
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/util",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"main": "./src/index.js",
|
|
6
6
|
"typings": "./src/index.d.ts",
|
|
7
|
-
"dependencies": {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
"dependencies": {},
|
|
8
|
+
"peerDependencies": {
|
|
9
|
+
"make-error": "^1.3.0",
|
|
10
|
+
"extra-set": "^2.2.11",
|
|
11
|
+
"change-case": "^4.1.2",
|
|
12
|
+
"tslib": "^2.0.0"
|
|
13
|
+
}
|
|
11
14
|
}
|
package/src/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
tslib_1.__exportStar(require("./lib"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./test"), exports);
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/util/src/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/util/src/index.ts"],"names":[],"mappings":";;;AAAA,gDAAsB;AACtB,iDAAuB"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { ReadModelKeyFunction } from "../model";
|
|
1
|
+
import { ReadModelKeyFunction } from "../model/model";
|
|
2
|
+
import { Maybe } from "../value/maybe";
|
|
2
3
|
export declare type BooleanStringKey = string;
|
|
3
4
|
/**
|
|
4
5
|
* Boolean represented by an array to describe the current state and reason why.
|
|
@@ -9,7 +10,7 @@ export declare type BooleanStringKeyArray = BooleanKeyArray<BooleanStringKey>;
|
|
|
9
10
|
*
|
|
10
11
|
* Having any values in the array is considered "true".
|
|
11
12
|
*/
|
|
12
|
-
export declare type BooleanKeyArray<T = any> = T[]
|
|
13
|
+
export declare type BooleanKeyArray<T = any> = Maybe<T[]>;
|
|
13
14
|
export declare function readBooleanKeySafetyWrap<T>(readKey: ReadModelKeyFunction<T>): ReadModelKeyFunction<T>;
|
|
14
15
|
export declare function isFalseBooleanKeyArray(value: BooleanKeyArray): boolean;
|
|
15
16
|
export declare function isTrueBooleanKeyArray(value: BooleanKeyArray): boolean;
|
|
@@ -21,6 +22,7 @@ export declare class BooleanKeyArrayUtilityInstance<T> {
|
|
|
21
22
|
constructor(readKey: ReadModelKeyFunction<T>);
|
|
22
23
|
isFalse(value: BooleanKeyArray): boolean;
|
|
23
24
|
isTrue(value: BooleanKeyArray): boolean;
|
|
25
|
+
set(array: BooleanKeyArray<T>, value: T, enable?: boolean): BooleanKeyArray<T>;
|
|
24
26
|
insert(array: BooleanKeyArray<T>, value: T): BooleanKeyArray<T>;
|
|
25
27
|
remove(array: BooleanKeyArray<T>, value: T): BooleanKeyArray<T>;
|
|
26
28
|
removeByKey(array: BooleanKeyArray<T>, key: string): BooleanKeyArray<T>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BooleanStringKeyArrayUtilityInstance = exports.BooleanKeyArrayUtilityInstance = exports.removeByKeyFromBooleanKeyArray = exports.removeFromBooleanKeyArray = exports.insertIntoBooleanKeyArray = exports.isTrueBooleanKeyArray = exports.isFalseBooleanKeyArray = exports.readBooleanKeySafetyWrap = void 0;
|
|
4
|
-
const model_1 = require("../model");
|
|
4
|
+
const model_1 = require("../model/model");
|
|
5
5
|
function readBooleanKeySafetyWrap(readKey) {
|
|
6
6
|
return (value) => {
|
|
7
7
|
const key = readKey(value);
|
|
@@ -44,6 +44,16 @@ class BooleanKeyArrayUtilityInstance {
|
|
|
44
44
|
isTrue(value) {
|
|
45
45
|
return isTrueBooleanKeyArray(value);
|
|
46
46
|
}
|
|
47
|
+
set(array, value, enable = true) {
|
|
48
|
+
let result;
|
|
49
|
+
if (enable) {
|
|
50
|
+
result = this.insert(array, value);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
result = this.remove(array, value);
|
|
54
|
+
}
|
|
55
|
+
return result;
|
|
56
|
+
}
|
|
47
57
|
insert(array, value) {
|
|
48
58
|
return insertIntoBooleanKeyArray(array, value, this.readKey);
|
|
49
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.boolean.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.boolean.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"array.boolean.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.boolean.ts"],"names":[],"mappings":"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"}
|
package/src/lib/array/array.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Maybe } from "../value";
|
|
1
|
+
import { Maybe } from "../value/maybe";
|
|
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.
|
|
@@ -7,6 +7,7 @@ export declare type ArrayOrValue<T> = T | T[];
|
|
|
7
7
|
* @returns
|
|
8
8
|
*/
|
|
9
9
|
export declare function convertMaybeToArray<T>(arrayOrValue: Maybe<ArrayOrValue<T>>): T[];
|
|
10
|
+
export declare const asArray: typeof convertMaybeToArray;
|
|
10
11
|
/**
|
|
11
12
|
* Converts the input value to an array containing itself, or returns itself if it is an array.
|
|
12
13
|
*
|
|
@@ -27,7 +28,20 @@ export declare function valueAtIndex<T>(input: ArrayOrValue<T>, index: number):
|
|
|
27
28
|
* Concatinates the input arrays and filters out falsy values.
|
|
28
29
|
*/
|
|
29
30
|
export declare function concatArrays<T>(...arrays: (Maybe<T[]>)[]): T[];
|
|
30
|
-
|
|
31
|
+
/**
|
|
32
|
+
* Flattens a two dimensional array into a single dimensional array. Any null/undefined values from the first dimension are filtered out.
|
|
33
|
+
*
|
|
34
|
+
* @param array
|
|
35
|
+
* @returns
|
|
36
|
+
*/
|
|
37
|
+
export declare function flattenArray<T>(array: (Maybe<T[]>)[]): T[];
|
|
38
|
+
/**
|
|
39
|
+
* Flattens an array of ArrayOrValue values into a single array.
|
|
40
|
+
*
|
|
41
|
+
* @param array
|
|
42
|
+
* @returns
|
|
43
|
+
*/
|
|
44
|
+
export declare function flattenArrayOrValueArray<T>(array: ArrayOrValue<Maybe<T>>[]): T[];
|
|
31
45
|
export declare function copyArray<T>(input: Maybe<T[]>): T[];
|
|
32
46
|
export declare function pushElementOntoArray<T>(target: T[], element: T, times: number): T[];
|
|
33
47
|
/**
|
|
@@ -78,3 +92,11 @@ export declare function takeLast<T>(values: T[], maxToTake: number, keepFromFron
|
|
|
78
92
|
* @param values
|
|
79
93
|
*/
|
|
80
94
|
export declare function pickOneRandomly<T>(values: T[]): T;
|
|
95
|
+
/**
|
|
96
|
+
* Performs forEach with the input array and returns the array.
|
|
97
|
+
*
|
|
98
|
+
* @param array
|
|
99
|
+
* @param forEach
|
|
100
|
+
* @returns
|
|
101
|
+
*/
|
|
102
|
+
export declare function forEachWithArray<T>(array: Maybe<ArrayOrValue<T>>, forEach: (value: T) => void): T[];
|
package/src/lib/array/array.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.pickOneRandomly = exports.takeLast = exports.takeFront = exports.mergeArrayIntoArray = exports.mergeArrayOrValueIntoArray = exports.mergeIntoArray = exports.mergeArrays = exports.pushElementOntoArray = exports.copyArray = exports.flattenArray = exports.concatArrays = exports.valueAtIndex = exports.lastValue = exports.firstValue = exports.convertToArray = exports.convertMaybeToArray = void 0;
|
|
3
|
+
exports.forEachWithArray = exports.pickOneRandomly = exports.takeLast = exports.takeFront = exports.mergeArrayIntoArray = exports.mergeArrayOrValueIntoArray = exports.mergeIntoArray = exports.mergeArrays = exports.pushElementOntoArray = exports.copyArray = exports.flattenArrayOrValueArray = exports.flattenArray = exports.concatArrays = exports.valueAtIndex = exports.lastValue = exports.firstValue = exports.convertToArray = exports.asArray = exports.convertMaybeToArray = void 0;
|
|
4
4
|
// MARK: Functions
|
|
5
5
|
/**
|
|
6
6
|
* Converts the input value to an array containing itself, or returns itself if it is an array.
|
|
@@ -17,6 +17,7 @@ function convertMaybeToArray(arrayOrValue) {
|
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
exports.convertMaybeToArray = convertMaybeToArray;
|
|
20
|
+
exports.asArray = convertMaybeToArray;
|
|
20
21
|
/**
|
|
21
22
|
* Converts the input value to an array containing itself, or returns itself if it is an array.
|
|
22
23
|
*
|
|
@@ -62,10 +63,26 @@ function concatArrays(...arrays) {
|
|
|
62
63
|
return flattenArray(arrays.filter(x => Boolean(x)));
|
|
63
64
|
}
|
|
64
65
|
exports.concatArrays = concatArrays;
|
|
66
|
+
/**
|
|
67
|
+
* Flattens a two dimensional array into a single dimensional array. Any null/undefined values from the first dimension are filtered out.
|
|
68
|
+
*
|
|
69
|
+
* @param array
|
|
70
|
+
* @returns
|
|
71
|
+
*/
|
|
65
72
|
function flattenArray(array) {
|
|
66
|
-
return array.filter((x) => Boolean(x)).reduce((accumulator, value) => accumulator.concat(
|
|
73
|
+
return array.filter((x) => Boolean(x)).reduce((accumulator, value) => accumulator.concat(value), []);
|
|
67
74
|
}
|
|
68
75
|
exports.flattenArray = flattenArray;
|
|
76
|
+
/**
|
|
77
|
+
* Flattens an array of ArrayOrValue values into a single array.
|
|
78
|
+
*
|
|
79
|
+
* @param array
|
|
80
|
+
* @returns
|
|
81
|
+
*/
|
|
82
|
+
function flattenArrayOrValueArray(array) {
|
|
83
|
+
return flattenArray(array.map(x => (x) ? convertToArray(x) : undefined));
|
|
84
|
+
}
|
|
85
|
+
exports.flattenArrayOrValueArray = flattenArrayOrValueArray;
|
|
69
86
|
function copyArray(input) {
|
|
70
87
|
return (input != null) ? Array.from(input) : [];
|
|
71
88
|
}
|
|
@@ -176,4 +193,22 @@ function pickOneRandomly(values) {
|
|
|
176
193
|
return values[index];
|
|
177
194
|
}
|
|
178
195
|
exports.pickOneRandomly = pickOneRandomly;
|
|
196
|
+
/**
|
|
197
|
+
* Performs forEach with the input array and returns the array.
|
|
198
|
+
*
|
|
199
|
+
* @param array
|
|
200
|
+
* @param forEach
|
|
201
|
+
* @returns
|
|
202
|
+
*/
|
|
203
|
+
function forEachWithArray(array, forEach) {
|
|
204
|
+
if (array) {
|
|
205
|
+
array = convertToArray(array);
|
|
206
|
+
array.forEach(forEach);
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
array = [];
|
|
210
|
+
}
|
|
211
|
+
return array;
|
|
212
|
+
}
|
|
213
|
+
exports.forEachWithArray = forEachWithArray;
|
|
179
214
|
//# sourceMappingURL=array.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.ts"],"names":[],"mappings":";;;AAKA,kBAAkB;AAClB;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAI,YAAoC;IACzE,IAAI,YAAY,IAAI,IAAI,EAAE;QACxB,OAAO,cAAc,CAAC,YAAY,CAAC,CAAC;KACrC;SAAM;QACL,OAAO,EAAE,CAAC;KACX;AACH,CAAC;AAND,kDAMC;
|
|
1
|
+
{"version":3,"file":"array.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeRandomArrayFn = exports.makeArray = void 0;
|
|
4
|
-
const
|
|
4
|
+
const random_1 = require("../number/random");
|
|
5
5
|
/**
|
|
6
6
|
* Makes an array of values of a certain length using a generator function.
|
|
7
7
|
*
|
|
@@ -23,7 +23,7 @@ exports.makeArray = makeArray;
|
|
|
23
23
|
* @returns
|
|
24
24
|
*/
|
|
25
25
|
function makeRandomArrayFn(config) {
|
|
26
|
-
const randomFn = (typeof config.random === 'function') ? config.random : (0,
|
|
26
|
+
const randomFn = (typeof config.random === 'function') ? config.random : (0, random_1.makeRandomFunction)(config.random);
|
|
27
27
|
return () => makeArray({ count: Math.abs(randomFn()), make: config.make });
|
|
28
28
|
}
|
|
29
29
|
exports.makeRandomArrayFn = makeRandomArrayFn;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.make.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.make.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"array.make.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.make.ts"],"names":[],"mappings":";;;AAAA,6CAAqG;AAOrG;;;;;GAKG;AACH,SAAgB,SAAS,CAAI,EAAE,KAAK,EAAE,IAAI,EAAgB;IACxD,IAAI,KAAK,GAAQ,EAAE,CAAC;IAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE;QACjC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;KACrB;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AARD,8BAQC;AAMD;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAI,MAA0B;IAC7D,MAAM,QAAQ,GAAG,CAAC,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAA,2BAAkB,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3G,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;AAC7E,CAAC;AAHD,8CAGC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PrimativeKey, ReadKeyFunction } from "../key";
|
|
2
|
-
import { Maybe } from "../value";
|
|
2
|
+
import { Maybe } from "../value/maybe";
|
|
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
|
*/
|
|
@@ -1,21 +1,7 @@
|
|
|
1
|
-
import { PrimativeKey } from '../key';
|
|
2
|
-
import { Maybe } from '../value';
|
|
3
|
-
export declare function flattenArrayToSet<T>(array: T[][]): Set<T>;
|
|
4
|
-
export declare function hasDifferentValues<T>(a: T[], b: T[]): boolean;
|
|
5
|
-
export declare function hasDifferentStringsNoCase(a: string[], b: string[]): boolean;
|
|
6
|
-
export declare function symmetricDifferenceKeys<T extends PrimativeKey = PrimativeKey>(a: Maybe<T>[], b: Maybe<T>[]): Maybe<T>[];
|
|
7
|
-
export declare function symmetricDifferenceKeysSet<T>(a: Set<Maybe<T>>, b: Set<Maybe<T>>): Maybe<T>[];
|
|
8
1
|
/**
|
|
9
2
|
* Returns items that exist in both arrays.
|
|
10
3
|
*/
|
|
11
4
|
export declare function keepValuesFromArray<T>(values: T[], secondArray: T[]): T[];
|
|
12
|
-
export declare function keepValuesFromSet<T>(values: T[], set: Set<T>): T[];
|
|
13
5
|
export declare function excludeValuesFromArray<T>(values: T[], secondArray: T[]): T[];
|
|
14
|
-
export declare function
|
|
15
|
-
export declare function
|
|
16
|
-
/**
|
|
17
|
-
* Returns true if the input array contains any value from the second array.
|
|
18
|
-
*/
|
|
19
|
-
export declare function containsAnyValue<T>(values: Iterable<T>, valuesToFind: Iterable<T>): boolean;
|
|
20
|
-
export declare function containsAnyValueFromSet<T>(values: Iterable<T>, valuesToFind: Set<T>): boolean;
|
|
21
|
-
export declare function setContainsAnyValue<T>(valuesSet: Set<T>, valuesToFind: Iterable<T>): boolean;
|
|
6
|
+
export declare function arrayContainsDuplicateValue<T>(values: T[]): boolean;
|
|
7
|
+
export declare function findIndexOfFirstDuplicateValue<T>(values: T[]): number;
|
|
@@ -1,68 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
const
|
|
5
|
-
const array_1 = require("./array");
|
|
6
|
-
const string_1 = require("../string");
|
|
3
|
+
exports.findIndexOfFirstDuplicateValue = exports.arrayContainsDuplicateValue = exports.excludeValuesFromArray = exports.keepValuesFromArray = void 0;
|
|
4
|
+
const set_1 = require("../set/set");
|
|
7
5
|
// MARK: Functions
|
|
8
|
-
function flattenArrayToSet(array) {
|
|
9
|
-
return new Set((0, array_1.flattenArray)(array));
|
|
10
|
-
}
|
|
11
|
-
exports.flattenArrayToSet = flattenArrayToSet;
|
|
12
|
-
function hasDifferentValues(a, b) {
|
|
13
|
-
return a.length !== b.length || (0, extra_set_1.symmetricDifference)(new Set(a), new Set(b)).size > 0;
|
|
14
|
-
}
|
|
15
|
-
exports.hasDifferentValues = hasDifferentValues;
|
|
16
|
-
function hasDifferentStringsNoCase(a, b) {
|
|
17
|
-
return hasDifferentValues(a.map(string_1.caseInsensitiveString), b.map(string_1.caseInsensitiveString));
|
|
18
|
-
}
|
|
19
|
-
exports.hasDifferentStringsNoCase = hasDifferentStringsNoCase;
|
|
20
|
-
function symmetricDifferenceKeys(a, b) {
|
|
21
|
-
return symmetricDifferenceKeysSet(new Set(a), new Set(b));
|
|
22
|
-
}
|
|
23
|
-
exports.symmetricDifferenceKeys = symmetricDifferenceKeys;
|
|
24
|
-
function symmetricDifferenceKeysSet(a, b) {
|
|
25
|
-
return Array.from((0, extra_set_1.symmetricDifference)(a, b));
|
|
26
|
-
}
|
|
27
|
-
exports.symmetricDifferenceKeysSet = symmetricDifferenceKeysSet;
|
|
28
6
|
/**
|
|
29
7
|
* Returns items that exist in both arrays.
|
|
30
8
|
*/
|
|
31
9
|
function keepValuesFromArray(values, secondArray) {
|
|
32
|
-
return keepValuesFromSet(values, new Set(secondArray));
|
|
10
|
+
return (0, set_1.keepValuesFromSet)(values, new Set(secondArray));
|
|
33
11
|
}
|
|
34
12
|
exports.keepValuesFromArray = keepValuesFromArray;
|
|
35
|
-
function keepValuesFromSet(values, set) {
|
|
36
|
-
return filterValuesFromSet(values, set, false);
|
|
37
|
-
}
|
|
38
|
-
exports.keepValuesFromSet = keepValuesFromSet;
|
|
39
13
|
function excludeValuesFromArray(values, secondArray) {
|
|
40
|
-
return excludeValuesFromSet(values, new Set(secondArray));
|
|
14
|
+
return (0, set_1.excludeValuesFromSet)(values, new Set(secondArray));
|
|
41
15
|
}
|
|
42
16
|
exports.excludeValuesFromArray = excludeValuesFromArray;
|
|
43
|
-
function
|
|
44
|
-
return
|
|
45
|
-
}
|
|
46
|
-
exports.
|
|
47
|
-
function
|
|
48
|
-
const
|
|
49
|
-
return values.
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}
|
|
59
|
-
exports.
|
|
60
|
-
function containsAnyValueFromSet(values, valuesToFind) {
|
|
61
|
-
return setContainsAnyValue(valuesToFind, values);
|
|
62
|
-
}
|
|
63
|
-
exports.containsAnyValueFromSet = containsAnyValueFromSet;
|
|
64
|
-
function setContainsAnyValue(valuesSet, valuesToFind) {
|
|
65
|
-
return (valuesSet) ? Array.from(valuesToFind).findIndex((x) => valuesSet.has(x)) !== -1 : false;
|
|
66
|
-
}
|
|
67
|
-
exports.setContainsAnyValue = setContainsAnyValue;
|
|
17
|
+
function arrayContainsDuplicateValue(values) {
|
|
18
|
+
return findIndexOfFirstDuplicateValue(values) !== -1;
|
|
19
|
+
}
|
|
20
|
+
exports.arrayContainsDuplicateValue = arrayContainsDuplicateValue;
|
|
21
|
+
function findIndexOfFirstDuplicateValue(values) {
|
|
22
|
+
const encountered = new Set();
|
|
23
|
+
return values.findIndex((x) => {
|
|
24
|
+
if (encountered.has(x)) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
encountered.add(x);
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
exports.findIndexOfFirstDuplicateValue = findIndexOfFirstDuplicateValue;
|
|
68
34
|
//# sourceMappingURL=array.set.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.set.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.set.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"array.set.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.set.ts"],"names":[],"mappings":";;;AAAA,oCAAqE;AAErE,kBAAkB;AAClB;;GAEG;AACH,SAAgB,mBAAmB,CAAI,MAAW,EAAE,WAAgB;IAClE,OAAO,IAAA,uBAAiB,EAAC,MAAM,EAAE,IAAI,GAAG,CAAI,WAAW,CAAC,CAAC,CAAC;AAC5D,CAAC;AAFD,kDAEC;AAED,SAAgB,sBAAsB,CAAI,MAAW,EAAE,WAAgB;IACrE,OAAO,IAAA,0BAAoB,EAAC,MAAM,EAAE,IAAI,GAAG,CAAI,WAAW,CAAC,CAAC,CAAC;AAC/D,CAAC;AAFD,wDAEC;AAED,SAAgB,2BAA2B,CAAI,MAAW;IACxD,OAAO,8BAA8B,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AACvD,CAAC;AAFD,kEAEC;AAED,SAAgB,8BAA8B,CAAI,MAAW;IAC3D,MAAM,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;IAC9B,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5B,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACtB,OAAO,IAAI,CAAC;SACb;aAAM;YACL,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACnB,OAAO,KAAK,CAAC;SACd;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAVD,wEAUC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { ReadKeyFunction } from "../key";
|
|
2
|
-
export declare function
|
|
3
|
-
export declare function
|
|
4
|
-
export declare function
|
|
2
|
+
export declare function hasDifferentStringsNoCase(a: string[], b: string[]): boolean;
|
|
3
|
+
export declare function toCaseInsensitiveStringArray(values: Iterable<string>): string[];
|
|
4
|
+
export declare function uniqueCaseInsensitiveStrings(values: Iterable<string>): string[];
|
|
5
|
+
export declare function uniqueCaseInsensitiveStringsSet(values: Iterable<string>): Set<string>;
|
|
5
6
|
export declare function flattenArrayUniqueCaseInsensitiveStrings(array: string[][]): string[];
|
|
6
7
|
export declare function findUniqueCaseInsensitiveStrings<T, K extends string = string>(models: T[], readKey: ReadKeyFunction<T, K>, additionalKeys?: K[]): T[];
|
|
7
|
-
export declare function containsStringAnyCase(values: string
|
|
8
|
-
export declare function containsAnyStringAnyCase(values: string
|
|
8
|
+
export declare function containsStringAnyCase(values: Iterable<string>, valueToFind: string): boolean;
|
|
9
|
+
export declare function containsAnyStringAnyCase(values: Iterable<string>, valuesToFind: Iterable<string>): boolean;
|
|
10
|
+
export declare function containsAllStringsAnyCase(values: Iterable<string>, valuesToFind: Iterable<string>): boolean;
|
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.containsAnyStringAnyCase = exports.containsStringAnyCase = exports.findUniqueCaseInsensitiveStrings = exports.flattenArrayUniqueCaseInsensitiveStrings = exports.uniqueCaseInsensitiveStringsSet = exports.uniqueCaseInsensitiveStrings = exports.toCaseInsensitiveStringArray = void 0;
|
|
3
|
+
exports.containsAllStringsAnyCase = exports.containsAnyStringAnyCase = exports.containsStringAnyCase = exports.findUniqueCaseInsensitiveStrings = exports.flattenArrayUniqueCaseInsensitiveStrings = exports.uniqueCaseInsensitiveStringsSet = exports.uniqueCaseInsensitiveStrings = exports.toCaseInsensitiveStringArray = exports.hasDifferentStringsNoCase = void 0;
|
|
4
4
|
const array_1 = require("./array");
|
|
5
|
-
const array_set_1 = require("./array.set");
|
|
6
5
|
const array_unique_1 = require("./array.unique");
|
|
7
6
|
const string_1 = require("../string");
|
|
7
|
+
const set_1 = require("../set/set");
|
|
8
|
+
const iterable_map_1 = require("../iterable/iterable.map");
|
|
9
|
+
function hasDifferentStringsNoCase(a, b) {
|
|
10
|
+
return (0, set_1.hasDifferentValues)(a.map(string_1.caseInsensitiveString), b.map(string_1.caseInsensitiveString));
|
|
11
|
+
}
|
|
12
|
+
exports.hasDifferentStringsNoCase = hasDifferentStringsNoCase;
|
|
8
13
|
function toCaseInsensitiveStringArray(values) {
|
|
9
|
-
return
|
|
14
|
+
return (0, iterable_map_1.mapIterable)(values, string_1.caseInsensitiveString);
|
|
10
15
|
}
|
|
11
16
|
exports.toCaseInsensitiveStringArray = toCaseInsensitiveStringArray;
|
|
12
17
|
function uniqueCaseInsensitiveStrings(values) {
|
|
@@ -30,7 +35,12 @@ function containsStringAnyCase(values, valueToFind) {
|
|
|
30
35
|
}
|
|
31
36
|
exports.containsStringAnyCase = containsStringAnyCase;
|
|
32
37
|
function containsAnyStringAnyCase(values, valuesToFind) {
|
|
33
|
-
return (0,
|
|
38
|
+
return (0, set_1.containsAnyValue)(toCaseInsensitiveStringArray(values), toCaseInsensitiveStringArray(valuesToFind));
|
|
34
39
|
}
|
|
35
40
|
exports.containsAnyStringAnyCase = containsAnyStringAnyCase;
|
|
41
|
+
function containsAllStringsAnyCase(values, valuesToFind) {
|
|
42
|
+
const valuesToFindArray = toCaseInsensitiveStringArray(valuesToFind);
|
|
43
|
+
return (valuesToFindArray.length) ? (0, set_1.containsAllValues)(toCaseInsensitiveStringArray(values), valuesToFindArray) : true;
|
|
44
|
+
}
|
|
45
|
+
exports.containsAllStringsAnyCase = containsAllStringsAnyCase;
|
|
36
46
|
//# sourceMappingURL=array.string.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.string.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.string.ts"],"names":[],"mappings":";;;AAAA,mCAAuC;AACvC,
|
|
1
|
+
{"version":3,"file":"array.string.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.string.ts"],"names":[],"mappings":";;;AAAA,mCAAuC;AACvC,iDAAoD;AAEpD,sCAAkD;AAClD,oCAAqF;AACrF,2DAAuD;AAEvD,SAAgB,yBAAyB,CAAC,CAAW,EAAE,CAAW;IAChE,OAAO,IAAA,wBAAkB,EAAC,CAAC,CAAC,GAAG,CAAC,8BAAqB,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,8BAAqB,CAAC,CAAC,CAAC;AACxF,CAAC;AAFD,8DAEC;AAED,SAAgB,4BAA4B,CAAC,MAAwB;IACnE,OAAO,IAAA,0BAAW,EAAiB,MAAM,EAAE,8BAAqB,CAAC,CAAC;AACpE,CAAC;AAFD,oEAEC;AAED,SAAgB,4BAA4B,CAAC,MAAwB;IACnE,OAAO,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7D,CAAC;AAFD,oEAEC;AAED,SAAgB,+BAA+B,CAAC,MAAwB;IACtE,OAAO,IAAI,GAAG,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC;AACvD,CAAC;AAFD,0EAEC;AAED,SAAgB,wCAAwC,CAAC,KAAiB;IACxE,OAAO,IAAA,qBAAM,EAAC,IAAA,oBAAY,EAAS,KAAK,CAAC,CAAC,GAAG,CAAS,8BAAqB,CAAC,CAAC,CAAC;AAChF,CAAC;AAFD,4FAEC;AAED,SAAgB,gCAAgC,CAA+B,MAAW,EAAE,OAA8B,EAAE,iBAAsB,EAAE;IAClJ,OAAO,IAAA,yBAAU,EAAC,MAAM,EAAE,CAAC,CAAI,EAAE,EAAE,CAAC,IAAA,8BAAqB,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,4BAA4B,CAAC,cAAc,CAAC,CAAC,CAAC;AACvH,CAAC;AAFD,4EAEC;AAED,SAAgB,qBAAqB,CAAC,MAAwB,EAAE,WAAmB;IACjF,OAAO,wBAAwB,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;AACzD,CAAC;AAFD,sDAEC;AAED,SAAgB,wBAAwB,CAAC,MAAwB,EAAE,YAA8B;IAC/F,OAAO,IAAA,sBAAgB,EAAC,4BAA4B,CAAC,MAAM,CAAC,EAAE,4BAA4B,CAAC,YAAY,CAAC,CAAC,CAAC;AAC5G,CAAC;AAFD,4DAEC;AAED,SAAgB,yBAAyB,CAAC,MAAwB,EAAE,YAA8B;IAChG,MAAM,iBAAiB,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;IACrE,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,uBAAiB,EAAC,4BAA4B,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACxH,CAAC;AAHD,8DAGC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PrimativeKey, ReadKeyFunction } from "../key";
|
|
2
|
-
import { Maybe } from "../value";
|
|
2
|
+
import { Maybe } from "../value/maybe";
|
|
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,3 +1,17 @@
|
|
|
1
|
-
import { Maybe } from "@dereekb/util";
|
|
1
|
+
import { Maybe, MaybeNot } from "@dereekb/util";
|
|
2
2
|
export declare function filterMaybeValues<T>(values: Maybe<Maybe<T>[]>): T[];
|
|
3
3
|
export declare function filterMaybeValuesFn<T>(value: Maybe<T>): value is T;
|
|
4
|
+
/**
|
|
5
|
+
* Checks whether or not all values are MaybeNot values.
|
|
6
|
+
*
|
|
7
|
+
* @param values
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
export declare function allValuesAreMaybeNot<T>(values: Maybe<T>[]): values is MaybeNot[];
|
|
11
|
+
/**
|
|
12
|
+
* Checks whether or not all values are non-MaybeNot values.
|
|
13
|
+
*
|
|
14
|
+
* @param values
|
|
15
|
+
* @returns
|
|
16
|
+
*/
|
|
17
|
+
export declare function allValuesAreNotMaybe<T>(values: Maybe<T>[]): values is T[];
|