@dereekb/util 9.16.3 → 9.17.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 +14 -0
- package/fetch/CHANGELOG.md +8 -0
- package/fetch/package.json +2 -2
- package/package.json +1 -1
- package/src/lib/set/index.d.ts +1 -0
- package/src/lib/set/index.js +1 -0
- package/src/lib/set/index.js.map +1 -1
- package/src/lib/set/set.js +2 -1
- package/src/lib/set/set.js.map +1 -1
- package/src/lib/set/set.selection.d.ts +25 -0
- package/src/lib/set/set.selection.js +21 -0
- package/src/lib/set/set.selection.js.map +1 -0
- package/src/lib/value/indexed.d.ts +25 -0
- package/src/lib/value/indexed.js +36 -1
- package/src/lib/value/indexed.js.map +1 -1
- package/test/CHANGELOG.md +8 -0
- package/test/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
# [9.17.0](https://github.com/dereekb/dbx-components/compare/v9.16.4-dev...v9.17.0) (2022-11-25)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* added DbxItemListFieldComponent ([467a879](https://github.com/dereekb/dbx-components/commit/467a879934737cdfd18c9211ee775c4990ac502a))
|
|
11
|
+
* added dbxListItemIsSelectedModifier ([7dea240](https://github.com/dereekb/dbx-components/commit/7dea240f3d8efc4c55b03877d5662aa8c89c5992))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
## [9.16.4](https://github.com/dereekb/dbx-components/compare/v9.16.3-dev...v9.16.4) (2022-11-23)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
5
19
|
## [9.16.3](https://github.com/dereekb/dbx-components/compare/v9.16.2-dev...v9.16.3) (2022-11-23)
|
|
6
20
|
|
|
7
21
|
|
package/fetch/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
# [9.17.0](https://github.com/dereekb/dbx-components/compare/v9.16.4-dev...v9.17.0) (2022-11-25)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [9.16.4](https://github.com/dereekb/dbx-components/compare/v9.16.3-dev...v9.16.4) (2022-11-23)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
5
13
|
## [9.16.3](https://github.com/dereekb/dbx-components/compare/v9.16.2-dev...v9.16.3) (2022-11-23)
|
|
6
14
|
|
|
7
15
|
|
package/fetch/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/util/fetch",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.17.0",
|
|
4
4
|
"main": "./src/index.js",
|
|
5
5
|
"typings": "./src/index.d.ts",
|
|
6
6
|
"dependencies": {},
|
|
7
7
|
"peerDependencies": {
|
|
8
|
-
"@dereekb/util": "9.
|
|
8
|
+
"@dereekb/util": "9.17.0",
|
|
9
9
|
"lodash.isequal": "^4.5.0",
|
|
10
10
|
"make-error": "^1.3.0",
|
|
11
11
|
"class-validator": "^0.13.2",
|
package/package.json
CHANGED
package/src/lib/set/index.d.ts
CHANGED
package/src/lib/set/index.js
CHANGED
|
@@ -4,5 +4,6 @@ const tslib_1 = require("tslib");
|
|
|
4
4
|
tslib_1.__exportStar(require("./set.allowed"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./set.hashset"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./set.maybe"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./set.selection"), exports);
|
|
7
8
|
tslib_1.__exportStar(require("./set"), exports);
|
|
8
9
|
//# sourceMappingURL=index.js.map
|
package/src/lib/set/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/set/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,wDAA8B;AAC9B,sDAA4B;AAC5B,gDAAsB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/set/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B;AAC9B,wDAA8B;AAC9B,sDAA4B;AAC5B,0DAAgC;AAChC,gDAAsB"}
|
package/src/lib/set/set.js
CHANGED
|
@@ -40,7 +40,8 @@ function removeFromSet(set, values) {
|
|
|
40
40
|
}
|
|
41
41
|
exports.removeFromSet = removeFromSet;
|
|
42
42
|
function hasDifferentValues(a, b) {
|
|
43
|
-
|
|
43
|
+
const setA = new Set(a);
|
|
44
|
+
return a == null || b == null || !setContainsAllValues(setA, b) || setA.size !== new Set(b).size;
|
|
44
45
|
}
|
|
45
46
|
exports.hasDifferentValues = hasDifferentValues;
|
|
46
47
|
function symmetricDifferenceKeys(a, b) {
|
package/src/lib/set/set.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/set/set.ts"],"names":[],"mappings":";;;AACA,0CAA8C;AAC9C,mDAAuF;AACvF,yCAAgD;AAChD,gCAAwE;AAExE,SAAgB,KAAK,CAAI,MAA0B;IACjD,IAAI,GAAW,CAAC;IAEhB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;KACzB;SAAM;QACL,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QAChB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;KACvB;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAXD,sBAWC;AAED,SAAgB,YAAY,CAAI,GAAW,EAAE,EAAyB;IACpE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,EAAE,CAAC,MAAM,CAAC,CAAC;IACX,OAAO,MAAM,CAAC;AAChB,CAAC;AAJD,oCAIC;AAED,SAAgB,YAAY,CAAI,GAAW,EAAE,MAAiC;IAC5E,OAAO,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AACvD,CAAC;AAFD,oCAEC;AAED,SAAgB,QAAQ,CAAI,GAAW,EAAE,MAAiC;IACxE,IAAA,6BAAkB,EAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC;AAFD,4BAEC;AAED,SAAgB,iBAAiB,CAAI,GAAW,EAAE,MAAiC;IACjF,OAAO,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAC5D,CAAC;AAFD,8CAEC;AAED,SAAgB,aAAa,CAAI,GAAW,EAAE,MAAiC;IAC7E,IAAA,6BAAkB,EAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAFD,sCAEC;AAED,SAAgB,kBAAkB,CAAI,CAAqB,EAAE,CAAqB;IAChF,
|
|
1
|
+
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/set/set.ts"],"names":[],"mappings":";;;AACA,0CAA8C;AAC9C,mDAAuF;AACvF,yCAAgD;AAChD,gCAAwE;AAExE,SAAgB,KAAK,CAAI,MAA0B;IACjD,IAAI,GAAW,CAAC;IAEhB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;KACzB;SAAM;QACL,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QAChB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;KACvB;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAXD,sBAWC;AAED,SAAgB,YAAY,CAAI,GAAW,EAAE,EAAyB;IACpE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,EAAE,CAAC,MAAM,CAAC,CAAC;IACX,OAAO,MAAM,CAAC;AAChB,CAAC;AAJD,oCAIC;AAED,SAAgB,YAAY,CAAI,GAAW,EAAE,MAAiC;IAC5E,OAAO,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AACvD,CAAC;AAFD,oCAEC;AAED,SAAgB,QAAQ,CAAI,GAAW,EAAE,MAAiC;IACxE,IAAA,6BAAkB,EAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC;AAFD,4BAEC;AAED,SAAgB,iBAAiB,CAAI,GAAW,EAAE,MAAiC;IACjF,OAAO,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAC5D,CAAC;AAFD,8CAEC;AAED,SAAgB,aAAa,CAAI,GAAW,EAAE,MAAiC;IAC7E,IAAA,6BAAkB,EAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,CAAC;AAFD,sCAEC;AAED,SAAgB,kBAAkB,CAAI,CAAqB,EAAE,CAAqB;IAChF,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IACxB,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACnG,CAAC;AAHD,gDAGC;AAED,SAAgB,uBAAuB,CAAI,CAAqB,EAAE,CAAqB;IACrF,OAAO,0BAA0B,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC;AAFD,0DAEC;AAED,SAAgB,0BAA0B,CAAI,CAAgB,EAAE,CAAgB;IAC9E,OAAO,KAAK,CAAC,IAAI,CAAC,IAAA,+BAAmB,EAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC;AAFD,gEAEC;AAED,SAAgB,iBAAiB,CAAI,KAAY;IAC/C,OAAO,IAAI,GAAG,CAAC,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC,CAAC;AACtC,CAAC;AAFD,8CAEC;AAED,SAAgB,iBAAiB,CAAI,MAAW,EAAE,GAAW;IAC3D,OAAO,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAFD,8CAEC;AAED,SAAgB,oBAAoB,CAAI,MAAW,EAAE,GAAW;IAC9D,OAAO,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AAChD,CAAC;AAFD,oDAEC;AAED,SAAgB,mBAAmB,CAAI,MAAW,EAAE,GAAW,EAAE,OAAO,GAAG,KAAK;IAC9E,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC;AAHD,kDAGC;AAED;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAI,QAA4B,EAAE,UAAmB,KAAK;IACxF,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5B,OAAO,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC;AAHD,4CAGC;AAOD;;;;;;GAMG;AACH,SAAgB,mBAAmB,CAAI,GAAW,EAAE,OAAgB;IAClE,IAAI,gBAAwC,CAAC;IAE7C,IAAI,OAAO,EAAE;QACX,gBAAgB,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACvC;SAAM;QACL,gBAAgB,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACtC;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAVD,kDAUC;AA2BD;;;;;GAKG;AACH,SAAgB,cAAc,CAA2C,MAAiC;IACxG,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;IAEpD,IAAI,GAAW,CAAC;IAEhB,IAAI,MAAM,CAAC,UAAU,IAAI,IAAI,EAAE;QAC7B,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;KAChC;SAAM,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE;QACtC,GAAG,GAAG,IAAA,qBAAe,EAAO,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;KAC3D;SAAM;QACL,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;KACjB;IAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACzB,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACvB,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC;AAlBD,wCAkBC;AAeD;;;;;;GAMG;AACH,SAAgB,mBAAmB,CAAI,SAAiB,EAAE,OAAwB,KAAK;IACrF,IAAI,EAAwD,CAAC;IAE7D,IAAI,IAAI,KAAK,KAAK,EAAE;QAClB,EAAE,GAAG,mBAAmB,CAAC;KAC1B;SAAM;QACL,EAAE,GAAG,oBAAoB,CAAC;KAC3B;IAED,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AACvD,CAAC;AAVD,kDAUC;AAED;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAI,SAAiB,EAAE,YAAgC,EAAE,IAAsB;IACxG,OAAO,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;AAC5D,CAAC;AAFD,kCAEC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAI,MAA0B,EAAE,YAAgC;IACjG,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAA,qBAAU,EAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;IACrD,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC;AAHD,kDAGC;AAED,SAAgB,sBAAsB,CAAI,MAA0B,EAAE,YAAoB;IACxF,OAAO,sBAAsB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAFD,wDAEC;AAED,SAAgB,sBAAsB,CAAI,SAAiB,EAAE,YAAgC;IAC3F,OAAO,CAAC,mBAAmB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AACvD,CAAC;AAFD,wDAEC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAI,MAA0B,EAAE,YAAgC;IAC9F,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAA,qBAAU,EAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;IACrD,OAAO,uBAAuB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC9C,CAAC;AAHD,4CAGC;AAED,SAAgB,uBAAuB,CAAI,MAA0B,EAAE,YAAoB;IACzF,OAAO,mBAAmB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC;AAFD,0DAEC;AAED,SAAgB,mBAAmB,CAAI,SAAiB,EAAE,YAAgC;IACxF,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAA,qBAAU,EAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC5G,CAAC;AAFD,kDAEC;AAED;;;;;;GAMG;AACH,SAAgB,iBAAiB,CAAI,MAAmB,EAAE,YAAgC;IACxF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,oBAAoB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;AACjD,CAAC;AAHD,8CAGC;AAED;;;;;;;GAOG;AACH,SAAgB,oBAAoB,CAAI,SAAiB,EAAE,YAAgC;IACzF,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAA,qBAAU,EAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC5G,CAAC;AAFD,oDAEC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { PrimativeKey, ReadKeyFunction } from '../key';
|
|
2
|
+
import { DecisionFunction } from '../value';
|
|
3
|
+
/**
|
|
4
|
+
* Factory that creates a DecisionFunction using the input "selected" values. That function returns true if the value's key is considered to be included in the selected values.
|
|
5
|
+
*/
|
|
6
|
+
export declare type IsSelectedDecisionFunctionFactory<T, K extends PrimativeKey = PrimativeKey> = (selectedValues: Iterable<K>) => DecisionFunction<T>;
|
|
7
|
+
export interface IsSelectedDecisionFunctionConfig<T, K extends PrimativeKey = PrimativeKey> {
|
|
8
|
+
/**
|
|
9
|
+
* Reads the key from the input value.
|
|
10
|
+
*/
|
|
11
|
+
readKey: ReadKeyFunction<T, K>;
|
|
12
|
+
/**
|
|
13
|
+
* Default value to use if readKey returns no key.
|
|
14
|
+
*
|
|
15
|
+
* Defaults to false.
|
|
16
|
+
*/
|
|
17
|
+
defaultIfKeyNull?: boolean;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Creates a IsSelectedDecisionFunctionFactory
|
|
21
|
+
*
|
|
22
|
+
* @param config
|
|
23
|
+
* @returns
|
|
24
|
+
*/
|
|
25
|
+
export declare function isSelectedDecisionFunctionFactory<T, K extends PrimativeKey = PrimativeKey>(config: IsSelectedDecisionFunctionConfig<T, K>): IsSelectedDecisionFunctionFactory<T, K>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isSelectedDecisionFunctionFactory = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Creates a IsSelectedDecisionFunctionFactory
|
|
6
|
+
*
|
|
7
|
+
* @param config
|
|
8
|
+
* @returns
|
|
9
|
+
*/
|
|
10
|
+
function isSelectedDecisionFunctionFactory(config) {
|
|
11
|
+
const { readKey, defaultIfKeyNull = false } = config;
|
|
12
|
+
return (selectedValues) => {
|
|
13
|
+
const selectedValuesSet = new Set(selectedValues);
|
|
14
|
+
return (value) => {
|
|
15
|
+
const key = readKey(value);
|
|
16
|
+
return key != null ? selectedValuesSet.has(key) : defaultIfKeyNull;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
exports.isSelectedDecisionFunctionFactory = isSelectedDecisionFunctionFactory;
|
|
21
|
+
//# sourceMappingURL=set.selection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set.selection.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/set/set.selection.ts"],"names":[],"mappings":";;;AAsBA;;;;;GAKG;AACH,SAAgB,iCAAiC,CAA2C,MAA8C;IACxI,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;IAErD,OAAO,CAAC,cAA2B,EAAE,EAAE;QACrC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC;QAElD,OAAO,CAAC,KAAQ,EAAE,EAAE;YAClB,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAC3B,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC;QACrE,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAXD,8EAWC"}
|
|
@@ -3,6 +3,7 @@ import { ArrayOrValue } from './../array/array';
|
|
|
3
3
|
import { HashSet } from '../set/set.hashset';
|
|
4
4
|
import { SortCompareFunction } from '../sort';
|
|
5
5
|
import { FactoryWithRequiredInput } from '../getter';
|
|
6
|
+
import { Maybe } from './maybe.type';
|
|
6
7
|
/**
|
|
7
8
|
* A number that denotes which index an item is at.
|
|
8
9
|
*/
|
|
@@ -31,6 +32,10 @@ export declare function sortAscendingIndexNumberRefFunction<T extends IndexRef>(
|
|
|
31
32
|
* Returns an item's IndexNumber.
|
|
32
33
|
*/
|
|
33
34
|
export declare type ReadIndexFunction<T> = (value: T) => IndexNumber;
|
|
35
|
+
/**
|
|
36
|
+
* Returns an item's index, if available.
|
|
37
|
+
*/
|
|
38
|
+
export declare type ReadMaybeIndexFunction<T> = (value: T) => Maybe<IndexNumber>;
|
|
34
39
|
/**
|
|
35
40
|
* Reads an IndexNumber from an IndexRef.
|
|
36
41
|
*
|
|
@@ -38,6 +43,25 @@ export declare type ReadIndexFunction<T> = (value: T) => IndexNumber;
|
|
|
38
43
|
* @returns
|
|
39
44
|
*/
|
|
40
45
|
export declare function readIndexNumber(indexRef: IndexRef): IndexNumber;
|
|
46
|
+
export interface IndexDeltaGroup<T> {
|
|
47
|
+
readonly inputItems: T[];
|
|
48
|
+
readonly previousItems?: Maybe<T[]>;
|
|
49
|
+
/**
|
|
50
|
+
* Items without an index.
|
|
51
|
+
*/
|
|
52
|
+
readonly newItems: T[];
|
|
53
|
+
/**
|
|
54
|
+
* All items with an index.
|
|
55
|
+
*/
|
|
56
|
+
readonly currentItems: T[];
|
|
57
|
+
/**
|
|
58
|
+
* Items from previousItems that have been removed.
|
|
59
|
+
*/
|
|
60
|
+
readonly deletedItems?: T[];
|
|
61
|
+
}
|
|
62
|
+
export declare type IndexDeltaGroupFunction<T> = (inputItems: T[], previousItems?: Maybe<T[]>) => IndexDeltaGroup<T>;
|
|
63
|
+
export declare function indexDeltaGroupFunction<T>(readIndex: ReadMaybeIndexFunction<T>): IndexDeltaGroupFunction<T>;
|
|
64
|
+
export declare function indexDeltaGroup<T>(readIndex: ReadMaybeIndexFunction<T>, inputItems: T[], previousItems?: Maybe<T[]>): IndexDeltaGroup<T>;
|
|
41
65
|
/**
|
|
42
66
|
* Creates a SortCompareFunction<T> that sorts by the read index.
|
|
43
67
|
*
|
|
@@ -186,3 +210,4 @@ export declare function indexRangeOverlapsIndexRange(compareIndexRange: IndexRan
|
|
|
186
210
|
* @returns
|
|
187
211
|
*/
|
|
188
212
|
export declare function indexRangeOverlapsIndexRangeFunction(input: IndexRangeFunctionInput): IndexRangeOverlapsIndexRangeFunction;
|
|
213
|
+
export declare const isSelectedIndexDecisionFunction: import("../set").IsSelectedDecisionFunctionFactory<IndexRef, number>;
|
package/src/lib/value/indexed.js
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.indexRangeOverlapsIndexRangeFunction = exports.indexRangeOverlapsIndexRange = exports.isIndexRangeInIndexRangeFunction = exports.isIndexRangeInIndexRange = exports.isIndexNumberInIndexRangeFunction = exports.isIndexNumberInIndexRange = exports.indexRangeCheckFunction = exports.asIndexRangeCheckFunctionConfig = exports.indexRangeCheckReaderFunction = exports.indexRange = exports.indexRangeReaderPairFactory = exports.sortByIndexRangeAscendingCompareFunction = exports.findItemsByIndex = exports.hashSetForIndexed = exports.sortByIndexAscendingCompareFunction = exports.readIndexNumber = exports.sortAscendingIndexNumberRefFunction = void 0;
|
|
3
|
+
exports.isSelectedIndexDecisionFunction = exports.indexRangeOverlapsIndexRangeFunction = exports.indexRangeOverlapsIndexRange = exports.isIndexRangeInIndexRangeFunction = exports.isIndexRangeInIndexRange = exports.isIndexNumberInIndexRangeFunction = exports.isIndexNumberInIndexRange = exports.indexRangeCheckFunction = exports.asIndexRangeCheckFunctionConfig = exports.indexRangeCheckReaderFunction = exports.indexRange = exports.indexRangeReaderPairFactory = exports.sortByIndexRangeAscendingCompareFunction = exports.findItemsByIndex = exports.hashSetForIndexed = exports.sortByIndexAscendingCompareFunction = exports.indexDeltaGroup = exports.indexDeltaGroupFunction = exports.readIndexNumber = exports.sortAscendingIndexNumberRefFunction = void 0;
|
|
4
4
|
const set_1 = require("./../set/set");
|
|
5
5
|
const array_1 = require("./../array/array");
|
|
6
6
|
const object_1 = require("../object/object");
|
|
7
7
|
const set_hashset_1 = require("../set/set.hashset");
|
|
8
|
+
const grouping_1 = require("../grouping");
|
|
9
|
+
const map_key_1 = require("../map/map.key");
|
|
10
|
+
const set_2 = require("../set");
|
|
8
11
|
/**
|
|
9
12
|
* Creates a SortCompareFunction<T> that sorts by index on IndexRef values.
|
|
10
13
|
*
|
|
@@ -25,6 +28,36 @@ function readIndexNumber(indexRef) {
|
|
|
25
28
|
return indexRef.i;
|
|
26
29
|
}
|
|
27
30
|
exports.readIndexNumber = readIndexNumber;
|
|
31
|
+
function indexDeltaGroupFunction(readIndex) {
|
|
32
|
+
return (inputItems, previousItems) => {
|
|
33
|
+
const { excluded: newItems, // items without an index and treated as "new"
|
|
34
|
+
included: currentItems } = (0, grouping_1.separateValues)(inputItems, (x) => {
|
|
35
|
+
const index = readIndex(x);
|
|
36
|
+
return index != null;
|
|
37
|
+
});
|
|
38
|
+
let deletedItems;
|
|
39
|
+
if (previousItems != null) {
|
|
40
|
+
// compute delta if available
|
|
41
|
+
const currentItemsIndexMap = (0, map_key_1.readKeysToMap)(currentItems, readIndex);
|
|
42
|
+
deletedItems = previousItems.filter((x) => {
|
|
43
|
+
const index = readIndex(x);
|
|
44
|
+
return index != null && !currentItemsIndexMap.has(index);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
inputItems,
|
|
49
|
+
previousItems,
|
|
50
|
+
newItems,
|
|
51
|
+
currentItems,
|
|
52
|
+
deletedItems
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
exports.indexDeltaGroupFunction = indexDeltaGroupFunction;
|
|
57
|
+
function indexDeltaGroup(readIndex, inputItems, previousItems) {
|
|
58
|
+
return indexDeltaGroupFunction(readIndex)(inputItems, previousItems);
|
|
59
|
+
}
|
|
60
|
+
exports.indexDeltaGroup = indexDeltaGroup;
|
|
28
61
|
/**
|
|
29
62
|
* Creates a SortCompareFunction<T> that sorts by the read index.
|
|
30
63
|
*
|
|
@@ -192,4 +225,6 @@ function indexRangeOverlapsIndexRangeFunction(input) {
|
|
|
192
225
|
};
|
|
193
226
|
}
|
|
194
227
|
exports.indexRangeOverlapsIndexRangeFunction = indexRangeOverlapsIndexRangeFunction;
|
|
228
|
+
// MARK: Selection
|
|
229
|
+
exports.isSelectedIndexDecisionFunction = (0, set_2.isSelectedDecisionFunctionFactory)({ readKey: readIndexNumber });
|
|
195
230
|
//# sourceMappingURL=indexed.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexed.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/value/indexed.ts"],"names":[],"mappings":";;;AAAA,sCAAmE;AACnE,4CAAyD;AACzD,6CAAgD;AAChD,oDAA6C;
|
|
1
|
+
{"version":3,"file":"indexed.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/value/indexed.ts"],"names":[],"mappings":"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"}
|
package/test/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
# [9.17.0](https://github.com/dereekb/dbx-components/compare/v9.16.4-dev...v9.17.0) (2022-11-25)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [9.16.4](https://github.com/dereekb/dbx-components/compare/v9.16.3-dev...v9.16.4) (2022-11-23)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
5
13
|
## [9.16.3](https://github.com/dereekb/dbx-components/compare/v9.16.2-dev...v9.16.3) (2022-11-23)
|
|
6
14
|
|
|
7
15
|
|
package/test/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/util/test",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.17.0",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"main": "./src/index.js",
|
|
6
6
|
"typings": "./src/index.d.ts",
|
|
7
7
|
"dependencies": {},
|
|
8
8
|
"peerDependencies": {
|
|
9
|
-
"@dereekb/util": "9.
|
|
9
|
+
"@dereekb/util": "9.17.0",
|
|
10
10
|
"lodash.isequal": "^4.5.0",
|
|
11
11
|
"make-error": "^1.3.0",
|
|
12
12
|
"class-validator": "^0.13.2",
|