@silvermine/toolbox 0.2.0 → 0.4.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 (91) hide show
  1. package/.github/workflows/ci.yml +49 -0
  2. package/.markdownlint.json +3 -0
  3. package/.nvmrc +1 -0
  4. package/CHANGELOG.md +36 -0
  5. package/README.md +7 -3
  6. package/dist/commonjs/index.js +7 -0
  7. package/dist/commonjs/index.js.map +1 -1
  8. package/dist/commonjs/types/StrictUnion.js +4 -0
  9. package/dist/commonjs/types/StrictUnion.js.map +1 -0
  10. package/dist/commonjs/utils/compact.js +16 -0
  11. package/dist/commonjs/utils/compact.js.map +1 -0
  12. package/dist/commonjs/utils/is-arguments.js.map +1 -1
  13. package/dist/commonjs/utils/is-array-of-strings.js.map +1 -1
  14. package/dist/commonjs/utils/is-array.js.map +1 -1
  15. package/dist/commonjs/utils/is-boolean.js +8 -0
  16. package/dist/commonjs/utils/is-boolean.js.map +1 -0
  17. package/dist/commonjs/utils/is-enum-value.js.map +1 -1
  18. package/dist/commonjs/utils/is-number.js.map +1 -1
  19. package/dist/commonjs/utils/is-object.js.map +1 -1
  20. package/dist/commonjs/utils/is-promise-like.js.map +1 -1
  21. package/dist/commonjs/utils/is-promise.js.map +1 -1
  22. package/dist/commonjs/utils/is-set.js +13 -0
  23. package/dist/commonjs/utils/is-set.js.map +1 -0
  24. package/dist/commonjs/utils/is-string.js.map +1 -1
  25. package/dist/commonjs/utils/pick.js +15 -0
  26. package/dist/commonjs/utils/pick.js.map +1 -0
  27. package/dist/commonjs/utils/range.js +25 -0
  28. package/dist/commonjs/utils/range.js.map +1 -0
  29. package/dist/commonjs/utils/uniq.js +49 -0
  30. package/dist/commonjs/utils/uniq.js.map +1 -0
  31. package/dist/esm/index.js +7 -0
  32. package/dist/esm/index.js.map +1 -1
  33. package/dist/esm/types/StrictUnion.js +2 -0
  34. package/dist/esm/types/StrictUnion.js.map +1 -0
  35. package/dist/esm/utils/compact.js +12 -0
  36. package/dist/esm/utils/compact.js.map +1 -0
  37. package/dist/esm/utils/is-arguments.js.map +1 -1
  38. package/dist/esm/utils/is-array-of-strings.js.map +1 -1
  39. package/dist/esm/utils/is-array.js.map +1 -1
  40. package/dist/esm/utils/is-boolean.js +4 -0
  41. package/dist/esm/utils/is-boolean.js.map +1 -0
  42. package/dist/esm/utils/is-enum-value.js.map +1 -1
  43. package/dist/esm/utils/is-number.js.map +1 -1
  44. package/dist/esm/utils/is-object.js.map +1 -1
  45. package/dist/esm/utils/is-promise-like.js.map +1 -1
  46. package/dist/esm/utils/is-promise.js.map +1 -1
  47. package/dist/esm/utils/is-set.js +9 -0
  48. package/dist/esm/utils/is-set.js.map +1 -0
  49. package/dist/esm/utils/is-string.js.map +1 -1
  50. package/dist/esm/utils/pick.js +11 -0
  51. package/dist/esm/utils/pick.js.map +1 -0
  52. package/dist/esm/utils/range.js +21 -0
  53. package/dist/esm/utils/range.js.map +1 -0
  54. package/dist/esm/utils/uniq.js +46 -0
  55. package/dist/esm/utils/uniq.js.map +1 -0
  56. package/dist/types/index.d.ts +7 -0
  57. package/dist/types/types/StrictUnion.d.ts +15 -0
  58. package/dist/types/utils/compact.d.ts +3 -0
  59. package/dist/types/utils/is-arguments.d.ts +1 -1
  60. package/dist/types/utils/is-array-of-strings.d.ts +1 -1
  61. package/dist/types/utils/is-array.d.ts +1 -1
  62. package/dist/types/utils/is-boolean.d.ts +1 -0
  63. package/dist/types/utils/is-enum-value.d.ts +1 -1
  64. package/dist/types/utils/is-number.d.ts +1 -1
  65. package/dist/types/utils/is-object.d.ts +1 -1
  66. package/dist/types/utils/is-promise-like.d.ts +1 -1
  67. package/dist/types/utils/is-promise.d.ts +1 -1
  68. package/dist/types/utils/is-set.d.ts +6 -0
  69. package/dist/types/utils/is-string.d.ts +1 -1
  70. package/dist/types/utils/pick.d.ts +2 -0
  71. package/dist/types/utils/range.d.ts +7 -0
  72. package/dist/types/utils/uniq.d.ts +8 -0
  73. package/package.json +29 -32
  74. package/renovate.json +4 -0
  75. package/src/index.ts +7 -0
  76. package/src/types/StrictUnion.ts +15 -0
  77. package/src/utils/compact.ts +14 -0
  78. package/src/utils/is-arguments.ts +1 -1
  79. package/src/utils/is-array-of-strings.ts +1 -1
  80. package/src/utils/is-array.ts +1 -1
  81. package/src/utils/is-boolean.ts +3 -0
  82. package/src/utils/is-enum-value.ts +1 -1
  83. package/src/utils/is-number.ts +1 -1
  84. package/src/utils/is-object.ts +1 -1
  85. package/src/utils/is-promise-like.ts +1 -1
  86. package/src/utils/is-promise.ts +1 -1
  87. package/src/utils/is-set.ts +8 -0
  88. package/src/utils/is-string.ts +1 -1
  89. package/src/utils/pick.ts +24 -0
  90. package/src/utils/range.ts +24 -0
  91. package/src/utils/uniq.ts +59 -0
@@ -0,0 +1,49 @@
1
+ name: CI
2
+
3
+ on: [ push, pull_request ]
4
+
5
+ jobs:
6
+ build:
7
+ runs-on: ubuntu-latest
8
+ steps:
9
+ -
10
+ uses: actions/checkout@v4
11
+ with:
12
+ fetch-depth: 0 # Fetch all history
13
+ -
14
+ uses: actions/setup-node@v4
15
+ with:
16
+ node-version-file: '.nvmrc'
17
+ - run: npm i -g npm@10.5.0
18
+ - run: npm ci
19
+ - run: npm run check-node-version
20
+ - run: npm run standards
21
+ test:
22
+ needs: [ build ]
23
+ runs-on: ubuntu-latest
24
+ strategy:
25
+ fail-fast: false
26
+ matrix:
27
+ node-version: [ 16, 20, 'lts/*', 'latest' ]
28
+ steps:
29
+ - uses: actions/checkout@v4
30
+ -
31
+ name: Use Node.js ${{ matrix.node-version }}
32
+ uses: actions/setup-node@v4
33
+ with:
34
+ node-version: ${{ matrix.node-version }}
35
+ - run: npm ci # Reinstall the dependencies to ensure they install with the node's version of npm
36
+ - run: npm test
37
+ - name: Coveralls
38
+ uses: coverallsapp/github-action@v2
39
+ with:
40
+ parallel: true
41
+ flag-name: ${{ matrix.node-version }}
42
+ finish:
43
+ needs: [ test ]
44
+ runs-on: ubuntu-latest
45
+ steps:
46
+ - name: Close parallel build
47
+ uses: coverallsapp/github-action@v2
48
+ with:
49
+ parallel-finished: true
@@ -0,0 +1,3 @@
1
+ {
2
+ "extends": "./node_modules/@silvermine/standardization/.markdownlint.json"
3
+ }
package/.nvmrc ADDED
@@ -0,0 +1 @@
1
+ 20.12.2
package/CHANGELOG.md ADDED
@@ -0,0 +1,36 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+ See [our coding standards][commit-messages] for commit guidelines.
5
+
6
+ ## [0.4.0](https://github.com/silvermine/toolbox/compare/v0.3.0...v0.4.0) (2024-09-03)
7
+
8
+
9
+ ### Features
10
+
11
+ * add _.compact replacement ([#35](https://github.com/silvermine/toolbox/issues/35)) ([39e08a5](https://github.com/silvermine/toolbox/commit/39e08a5e59f626ab713602bce8b645eeec2b94cf))
12
+ * Add isBoolean type guard ([#49](https://github.com/silvermine/toolbox/issues/49)) ([e8b208c](https://github.com/silvermine/toolbox/commit/e8b208cf7d66eb6c49a53db6757a98b311c278dc))
13
+ * Add isSet type guard ([#31](https://github.com/silvermine/toolbox/issues/31)) ([ad25a69](https://github.com/silvermine/toolbox/commit/ad25a69ebc86efe58ca37289b5892ac35dff82e9))
14
+ * add range function ([#42](https://github.com/silvermine/toolbox/issues/42)) ([a2ae666](https://github.com/silvermine/toolbox/commit/a2ae6663ba1afb08c98671812e27500c5099b3db))
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * Replace `any` arg types in type guards w/ `unknown` ([48aac51](https://github.com/silvermine/toolbox/commit/48aac51fb71584b24f8126dbd1e3a43868a97227))
20
+
21
+
22
+ ## [0.3.0](https://github.com/silvermine/toolbox/compare/v0.2.0...v0.3.0) (2024-05-06)
23
+
24
+
25
+ ### Features
26
+
27
+ * add partial replacement of _.pick ([c7d143e](https://github.com/silvermine/toolbox/commit/c7d143e05867d2785de60ca4141aefb62361ac35))
28
+ * add replacement of _.uniq ([#23](https://github.com/silvermine/toolbox/issues/23)) ([4ece381](https://github.com/silvermine/toolbox/commit/4ece3819757dd2dbb354ad42bb496844a9cda67a))
29
+ * add StrictUnion ([22080e1](https://github.com/silvermine/toolbox/commit/22080e1b590b8c5ace25f544366a0807b355a27e))
30
+
31
+ ### Other
32
+
33
+ * config: allow tslib 2.x as peer dep ([6320e11](https://github.com/silvermine/toolbox/commit/6320e11110deeb66008a58b0090e8dde6214cc11))
34
+
35
+
36
+ [commit-messages]: https://github.com/silvermine/silvermine-info/blob/master/commit-history.md#commit-messages
package/README.md CHANGED
@@ -1,9 +1,13 @@
1
+ # Silvermine Toolbox - TypeScript Types and Utilities
2
+
1
3
  <p align="center">
2
- <img width="300" height="300" src="https://raw.github.com/silvermine/toolbox/master/src/logo/toolbox.png" alt="Tools such as a protractor, calculator, pencil, and a pen inside a shirt pocket.">
4
+ <img width="300"
5
+ height="300"
6
+ src="https://raw.github.com/silvermine/toolbox/master/src/logo/toolbox.png"
7
+ alt="Tools such as a protractor, calculator, pencil, and a pen inside a shirt pocket."
8
+ >
3
9
  </p>
4
10
 
5
- # Silvermine Toolbox - TypeScript Types and Utilities
6
-
7
11
  [![NPM Version](https://img.shields.io/npm/v/@silvermine/toolbox.svg)](https://www.npmjs.com/package/@silvermine/toolbox)
8
12
  [![License](https://img.shields.io/github/license/silvermine/toolbox.svg)](./LICENSE)
9
13
  [![Build Status](https://travis-ci.com/silvermine/toolbox.svg?branch=master)](https://travis-ci.com/silvermine/toolbox)
@@ -7,6 +7,7 @@ tslib_1.__exportStar(require("./types/Optional"), exports);
7
7
  tslib_1.__exportStar(require("./types/PropsWithType"), exports);
8
8
  tslib_1.__exportStar(require("./types/RequireDefined"), exports);
9
9
  tslib_1.__exportStar(require("./types/RequireOptional"), exports);
10
+ tslib_1.__exportStar(require("./types/StrictUnion"), exports);
10
11
  tslib_1.__exportStar(require("./types/StringArrayOfStringsMap"), exports);
11
12
  tslib_1.__exportStar(require("./types/StringMap"), exports);
12
13
  tslib_1.__exportStar(require("./types/StringUnknownMap"), exports);
@@ -15,6 +16,7 @@ tslib_1.__exportStar(require("./utils/has-defined"), exports);
15
16
  tslib_1.__exportStar(require("./utils/is-arguments"), exports);
16
17
  tslib_1.__exportStar(require("./utils/is-array"), exports);
17
18
  tslib_1.__exportStar(require("./utils/is-array-of-strings"), exports);
19
+ tslib_1.__exportStar(require("./utils/is-boolean"), exports);
18
20
  tslib_1.__exportStar(require("./utils/is-empty"), exports);
19
21
  tslib_1.__exportStar(require("./utils/is-enum-value"), exports);
20
22
  tslib_1.__exportStar(require("./utils/is-map-with-values-of-type"), exports);
@@ -22,15 +24,20 @@ tslib_1.__exportStar(require("./utils/is-number"), exports);
22
24
  tslib_1.__exportStar(require("./utils/is-object"), exports);
23
25
  tslib_1.__exportStar(require("./utils/is-promise"), exports);
24
26
  tslib_1.__exportStar(require("./utils/is-promise-like"), exports);
27
+ tslib_1.__exportStar(require("./utils/is-set"), exports);
25
28
  tslib_1.__exportStar(require("./utils/is-string"), exports);
26
29
  tslib_1.__exportStar(require("./utils/is-undefined"), exports);
27
30
  tslib_1.__exportStar(require("./utils/is-null"), exports);
28
31
  tslib_1.__exportStar(require("./utils/is-not-null-or-undefined"), exports);
29
32
  tslib_1.__exportStar(require("./utils/chunk"), exports);
33
+ tslib_1.__exportStar(require("./utils/compact"), exports);
30
34
  tslib_1.__exportStar(require("./utils/flatten"), exports);
35
+ tslib_1.__exportStar(require("./utils/pick"), exports);
31
36
  tslib_1.__exportStar(require("./utils/pluck"), exports);
32
37
  tslib_1.__exportStar(require("./utils/delay"), exports);
33
38
  tslib_1.__exportStar(require("./utils/get"), exports);
34
39
  tslib_1.__exportStar(require("./utils/escape-html"), exports);
35
40
  tslib_1.__exportStar(require("./utils/make-template"), exports);
41
+ tslib_1.__exportStar(require("./utils/uniq"), exports);
42
+ tslib_1.__exportStar(require("./utils/range"), exports);
36
43
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,uEAA6C;AAC7C,uDAA6B;AAC7B,2DAAiC;AACjC,gEAAsC;AACtC,iEAAuC;AACvC,kEAAwC;AACxC,0EAAgD;AAChD,4DAAkC;AAClC,mEAAyC;AACzC,2DAAiC;AAEjC,8DAAoC;AACpC,+DAAqC;AACrC,2DAAiC;AACjC,sEAA4C;AAC5C,2DAAiC;AACjC,gEAAsC;AACtC,6EAAmD;AACnD,4DAAkC;AAClC,4DAAkC;AAClC,6DAAmC;AACnC,kEAAwC;AACxC,4DAAkC;AAClC,+DAAqC;AACrC,0DAAgC;AAChC,2EAAiD;AAEjD,wDAA8B;AAC9B,0DAAgC;AAChC,wDAA8B;AAC9B,wDAA8B;AAC9B,sDAA4B;AAC5B,8DAAoC;AACpC,gEAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,uEAA6C;AAC7C,uDAA6B;AAC7B,2DAAiC;AACjC,gEAAsC;AACtC,iEAAuC;AACvC,kEAAwC;AACxC,8DAAoC;AACpC,0EAAgD;AAChD,4DAAkC;AAClC,mEAAyC;AACzC,2DAAiC;AAEjC,8DAAoC;AACpC,+DAAqC;AACrC,2DAAiC;AACjC,sEAA4C;AAC5C,6DAAmC;AACnC,2DAAiC;AACjC,gEAAsC;AACtC,6EAAmD;AACnD,4DAAkC;AAClC,4DAAkC;AAClC,6DAAmC;AACnC,kEAAwC;AACxC,yDAA+B;AAC/B,4DAAkC;AAClC,+DAAqC;AACrC,0DAAgC;AAChC,2EAAiD;AAEjD,wDAA8B;AAC9B,0DAAgC;AAChC,0DAAgC;AAChC,uDAA6B;AAC7B,wDAA8B;AAC9B,wDAA8B;AAC9B,sDAA4B;AAC5B,8DAAoC;AACpC,gEAAsC;AACtC,uDAA6B;AAC7B,wDAA8B"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/no-type-alias */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=StrictUnion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StrictUnion.js","sourceRoot":"","sources":["../../../src/types/StrictUnion.ts"],"names":[],"mappings":";AAAA,qDAAqD"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.compact = void 0;
4
+ function notFalsy(value) {
5
+ return value !== ''
6
+ && value !== 0
7
+ && value !== false
8
+ && value !== null
9
+ && value !== undefined
10
+ && !(typeof value === 'number' && isNaN(value));
11
+ }
12
+ function compact(arr) {
13
+ return arr.filter(notFalsy);
14
+ }
15
+ exports.compact = compact;
16
+ //# sourceMappingURL=compact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compact.js","sourceRoot":"","sources":["../../../src/utils/compact.ts"],"names":[],"mappings":";;;AAEA,SAAS,QAAQ,CAAI,KAAoB;IACtC,OAAO,KAAK,KAAK,EAAE;WACb,KAAK,KAAK,CAAC;WACX,KAAK,KAAK,KAAK;WACf,KAAK,KAAK,IAAI;WACd,KAAK,KAAK,SAAS;WACnB,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,SAAgB,OAAO,CAAI,GAAsB;IAC9C,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAFD,0BAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-arguments.js","sourceRoot":"","sources":["../../../src/utils/is-arguments.ts"],"names":[],"mappings":";;;AAAA,qDAAgD;AAEhD;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,CAAM;IAC/B,OAAO,6BAAY,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC;AACnD,CAAC;AAFD,kCAEC"}
1
+ {"version":3,"file":"is-arguments.js","sourceRoot":"","sources":["../../../src/utils/is-arguments.ts"],"names":[],"mappings":";;;AAAA,qDAAgD;AAEhD;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,CAAU;IACnC,OAAO,6BAAY,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC;AACnD,CAAC;AAFD,kCAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-array-of-strings.js","sourceRoot":"","sources":["../../../src/utils/is-array-of-strings.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AACrC,2CAAuC;AAEvC;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAC,MAAW;IACzC,IAAI,CAAC,kBAAO,CAAC,MAAM,CAAC,EAAE;QACnB,OAAO,KAAK,CAAC;KACf;IAED,KAAK,IAAI,CAAC,IAAI,MAAM,EAAE;QACnB,IAAI,CAAC,oBAAQ,CAAC,CAAC,CAAC,EAAE;YACf,OAAO,KAAK,CAAC;SACf;KACH;IAED,OAAO,IAAI,CAAC;AACf,CAAC;AAZD,4CAYC"}
1
+ {"version":3,"file":"is-array-of-strings.js","sourceRoot":"","sources":["../../../src/utils/is-array-of-strings.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AACrC,2CAAuC;AAEvC;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAAC,MAAe;IAC7C,IAAI,CAAC,kBAAO,CAAC,MAAM,CAAC,EAAE;QACnB,OAAO,KAAK,CAAC;KACf;IAED,KAAK,IAAI,CAAC,IAAI,MAAM,EAAE;QACnB,IAAI,CAAC,oBAAQ,CAAC,CAAC,CAAC,EAAE;YACf,OAAO,KAAK,CAAC;SACf;KACH;IAED,OAAO,IAAI,CAAC;AACf,CAAC;AAZD,4CAYC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-array.js","sourceRoot":"","sources":["../../../src/utils/is-array.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,SAAgB,OAAO,CAAC,CAAM;IAC3B,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC;AAFD,0BAEC"}
1
+ {"version":3,"file":"is-array.js","sourceRoot":"","sources":["../../../src/utils/is-array.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,SAAgB,OAAO,CAAC,CAAU;IAC/B,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC;AAFD,0BAEC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isBoolean = void 0;
4
+ function isBoolean(o) {
5
+ return o === true || o === false;
6
+ }
7
+ exports.isBoolean = isBoolean;
8
+ //# sourceMappingURL=is-boolean.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-boolean.js","sourceRoot":"","sources":["../../../src/utils/is-boolean.ts"],"names":[],"mappings":";;;AAAA,SAAgB,SAAS,CAAC,CAAU;IACjC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC;AACpC,CAAC;AAFD,8BAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-enum-value.js","sourceRoot":"","sources":["../../../src/utils/is-enum-value.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,SAAgB,WAAW,CAAI,QAAW,EAAE,KAAU;IACnD,OAAQ,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAoB;SAC5C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACV,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,OAAO,CAAC,KAAK,KAAK,CAAC;IACtB,CAAC,CAAC,CAAC;AACT,CAAC;AARD,kCAQC"}
1
+ {"version":3,"file":"is-enum-value.js","sourceRoot":"","sources":["../../../src/utils/is-enum-value.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,SAAgB,WAAW,CAAI,QAAW,EAAE,KAAc;IACvD,OAAQ,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAoB;SAC5C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACV,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,OAAO,CAAC,KAAK,KAAK,CAAC;IACtB,CAAC,CAAC,CAAC;AACT,CAAC;AARD,kCAQC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-number.js","sourceRoot":"","sources":["../../../src/utils/is-number.ts"],"names":[],"mappings":";;;AAAA,qDAAgD;AAChD,2CAAuC;AAEvC;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAC,CAAM;IAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,oBAAQ,CAAC,CAAC,CAAC,IAAI,6BAAY,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC;AAC1F,CAAC;AAFD,4BAEC"}
1
+ {"version":3,"file":"is-number.js","sourceRoot":"","sources":["../../../src/utils/is-number.ts"],"names":[],"mappings":";;;AAAA,qDAAgD;AAChD,2CAAuC;AAEvC;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAC,CAAU;IAChC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,oBAAQ,CAAC,CAAC,CAAC,IAAI,6BAAY,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC;AAC1F,CAAC;AAFD,4BAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-object.js","sourceRoot":"","sources":["../../../src/utils/is-object.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;GAUG;AACH,SAAgB,QAAQ,CAAC,CAAM;IAC5B,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC;IAEpB,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC;AACnE,CAAC;AAJD,4BAIC"}
1
+ {"version":3,"file":"is-object.js","sourceRoot":"","sources":["../../../src/utils/is-object.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;GAUG;AACH,SAAgB,QAAQ,CAAC,CAAU;IAChC,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC;IAEpB,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC;AACnE,CAAC;AAJD,4BAIC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-promise-like.js","sourceRoot":"","sources":["../../../src/utils/is-promise-like.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AACzC,2CAAuC;AAEvC;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,CAAM;IACjC,OAAO,sBAAS,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAQ,CAAC,CAAC,CAAC,IAAI,OAAQ,CAAS,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;AACjF,CAAC;AAFD,sCAEC"}
1
+ {"version":3,"file":"is-promise-like.js","sourceRoot":"","sources":["../../../src/utils/is-promise-like.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AACzC,2CAAuC;AAEvC;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,CAAU;IACrC,OAAO,sBAAS,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAQ,CAAC,CAAC,CAAC,IAAI,OAAQ,CAAS,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;AACjF,CAAC;AAFD,sCAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-promise.js","sourceRoot":"","sources":["../../../src/utils/is-promise.ts"],"names":[],"mappings":";;;AAAA,2CAAuC;AACvC,qDAAgD;AAEhD;;;;GAIG;AACH,SAAgB,SAAS,CAAC,CAAM;IAC7B,OAAO,oBAAQ,CAAC,CAAC,CAAC,IAAI,6BAAY,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC;AAChE,CAAC;AAFD,8BAEC"}
1
+ {"version":3,"file":"is-promise.js","sourceRoot":"","sources":["../../../src/utils/is-promise.ts"],"names":[],"mappings":";;;AAAA,2CAAuC;AACvC,qDAAgD;AAEhD;;;;GAIG;AACH,SAAgB,SAAS,CAAC,CAAU;IACjC,OAAO,oBAAQ,CAAC,CAAC,CAAC,IAAI,6BAAY,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC;AAChE,CAAC;AAFD,8BAEC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isSet = void 0;
4
+ /**
5
+ * Type guard for `Set`s.
6
+ *
7
+ * @returns `true` if `o` is a `Set`, regardless of the types that it contains
8
+ */
9
+ function isSet(o) {
10
+ return o instanceof Set;
11
+ }
12
+ exports.isSet = isSet;
13
+ //# sourceMappingURL=is-set.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-set.js","sourceRoot":"","sources":["../../../src/utils/is-set.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,SAAgB,KAAK,CAAC,CAAU;IAC7B,OAAO,CAAC,YAAY,GAAG,CAAC;AAC3B,CAAC;AAFD,sBAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-string.js","sourceRoot":"","sources":["../../../src/utils/is-string.ts"],"names":[],"mappings":";;;AAAA,2CAAuC;AACvC,qDAAgD;AAEhD;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAC,CAAM;IAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,oBAAQ,CAAC,CAAC,CAAC,IAAI,6BAAY,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC;AAC1F,CAAC;AAFD,4BAEC"}
1
+ {"version":3,"file":"is-string.js","sourceRoot":"","sources":["../../../src/utils/is-string.ts"],"names":[],"mappings":";;;AAAA,2CAAuC;AACvC,qDAAgD;AAEhD;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAC,CAAU;IAChC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,oBAAQ,CAAC,CAAC,CAAC,IAAI,6BAAY,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC;AAC1F,CAAC;AAFD,4BAEC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pick = void 0;
4
+ const is_array_1 = require("./is-array");
5
+ function pick(obj, ...args) {
6
+ const props = ((args.length === 1 && is_array_1.isArray(args[0])) ? args[0] : args);
7
+ return props.reduce((memo, prop) => {
8
+ if (prop in obj) {
9
+ memo[prop] = obj[prop];
10
+ }
11
+ return memo;
12
+ }, {});
13
+ }
14
+ exports.pick = pick;
15
+ //# sourceMappingURL=pick.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pick.js","sourceRoot":"","sources":["../../../src/utils/pick.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AAcrC,SAAgB,IAAI,CAAsC,GAAM,EAAE,GAAG,IAAmB;IACrF,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,kBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAQ,CAAC;IAEhF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;QAChC,IAAI,IAAI,IAAI,GAAG,EAAE;YACd,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;SACzB;QACD,OAAO,IAAI,CAAC;IACf,CAAC,EAAE,EAAgB,CAAC,CAAC;AACxB,CAAC;AATD,oBASC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.range = void 0;
4
+ /**
5
+ * Creates an array of numbers (positive and/or negative) progressing from
6
+ * start up to, but not including, end. A step of -1 is used if a negative start
7
+ * is specified without an end or step. If end is not specified, it's set to
8
+ * start with start then set to 0.
9
+ */
10
+ function range(start, end, step) {
11
+ if (end === undefined) {
12
+ end = start;
13
+ start = 0;
14
+ }
15
+ if (!step) {
16
+ step = start < end ? 1 : -1;
17
+ }
18
+ const length = Math.max(Math.ceil((end - start) / step), 0), result = Array(length);
19
+ for (let i = 0; i < length; i++) {
20
+ result[i] = start + (i * step);
21
+ }
22
+ return result;
23
+ }
24
+ exports.range = range;
25
+ //# sourceMappingURL=range.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range.js","sourceRoot":"","sources":["../../../src/utils/range.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,SAAgB,KAAK,CAAC,KAAa,EAAE,GAAY,EAAE,IAAa;IAC7D,IAAI,GAAG,KAAK,SAAS,EAAE;QACpB,GAAG,GAAG,KAAK,CAAC;QACZ,KAAK,GAAG,CAAC,CAAC;KACZ;IAED,IAAI,CAAC,IAAI,EAAE;QACR,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC9B;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,EACrD,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QAC9B,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;KACjC;IACD,OAAO,MAAM,CAAC;AACjB,CAAC;AAjBD,sBAiBC"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.uniq = void 0;
4
+ const iterateeUniq = (arr, iteratee) => {
5
+ const result = [], seen = [];
6
+ for (let i = 0, length = arr.length; i < length; i++) {
7
+ let value = arr[i], computed = iteratee(value, i, arr);
8
+ if (seen.indexOf(computed) === -1) {
9
+ seen.push(computed);
10
+ result.push(value);
11
+ }
12
+ }
13
+ return result;
14
+ };
15
+ const sortedUniq = (arr) => {
16
+ const result = [];
17
+ let lastSeen;
18
+ for (let i = 0, length = arr.length; i < length; i++) {
19
+ let value = arr[i];
20
+ if (i === 0 || lastSeen !== value) {
21
+ result.push(value);
22
+ }
23
+ lastSeen = value;
24
+ }
25
+ return result;
26
+ };
27
+ const standardUniq = (arr) => {
28
+ const result = arr.filter((value, index, _arr) => {
29
+ return _arr.indexOf(value) === index;
30
+ });
31
+ return result;
32
+ };
33
+ /**
34
+ * Produce a duplicate-free version of the array. If the array has already
35
+ * been sorted, you have the option of using a faster algorithm.
36
+ * The faster algorithm will not work with an iteratee if the iteratee
37
+ * is not a one-to-one function, so providing an iteratee will disable
38
+ * the faster algorithm.
39
+ */
40
+ exports.uniq = (arr, isSorted, iteratee) => {
41
+ if (iteratee) {
42
+ return iterateeUniq(arr, iteratee);
43
+ }
44
+ if (isSorted) {
45
+ return sortedUniq(arr);
46
+ }
47
+ return standardUniq(arr);
48
+ };
49
+ //# sourceMappingURL=uniq.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uniq.js","sourceRoot":"","sources":["../../../src/utils/uniq.ts"],"names":[],"mappings":";;;AAAA,MAAM,YAAY,GAAG,CAAO,GAAQ,EAAE,QAA8C,EAAO,EAAE;IAC1F,MAAM,MAAM,GAAQ,EAAE,EAChB,IAAI,GAAQ,EAAE,CAAC;IAErB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QACnD,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,EACd,QAAQ,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QAEvC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACrB;KACH;IACD,OAAO,MAAM,CAAC;AACjB,CAAC,CAAC;AAGF,MAAM,UAAU,GAAG,CAAO,GAAQ,EAAO,EAAE;IACxC,MAAM,MAAM,GAAQ,EAAE,CAAC;IAEvB,IAAI,QAA2B,CAAC;IAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QACnD,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAEnB,IAAI,CAAC,KAAK,CAAC,IAAI,QAAQ,KAAK,KAAK,EAAE;YAChC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACrB;QACD,QAAQ,GAAG,KAAK,CAAC;KACnB;IACD,OAAO,MAAM,CAAC;AACjB,CAAC,CAAC;AAGF,MAAM,YAAY,GAAG,CAAI,GAAQ,EAAO,EAAE;IACvC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AACjB,CAAC,CAAC;AAGF;;;;;;GAMG;AACU,QAAA,IAAI,GAAG,CAAO,GAAQ,EAAE,QAAkB,EAAE,QAA+C,EAAO,EAAE;IAC9G,IAAI,QAAQ,EAAE;QACX,OAAO,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;KACrC;IACD,IAAI,QAAQ,EAAE;QACX,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;KACzB;IACD,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC,CAAC"}
package/dist/esm/index.js CHANGED
@@ -4,6 +4,7 @@ export * from './types/Optional';
4
4
  export * from './types/PropsWithType';
5
5
  export * from './types/RequireDefined';
6
6
  export * from './types/RequireOptional';
7
+ export * from './types/StrictUnion';
7
8
  export * from './types/StringArrayOfStringsMap';
8
9
  export * from './types/StringMap';
9
10
  export * from './types/StringUnknownMap';
@@ -12,6 +13,7 @@ export * from './utils/has-defined';
12
13
  export * from './utils/is-arguments';
13
14
  export * from './utils/is-array';
14
15
  export * from './utils/is-array-of-strings';
16
+ export * from './utils/is-boolean';
15
17
  export * from './utils/is-empty';
16
18
  export * from './utils/is-enum-value';
17
19
  export * from './utils/is-map-with-values-of-type';
@@ -19,15 +21,20 @@ export * from './utils/is-number';
19
21
  export * from './utils/is-object';
20
22
  export * from './utils/is-promise';
21
23
  export * from './utils/is-promise-like';
24
+ export * from './utils/is-set';
22
25
  export * from './utils/is-string';
23
26
  export * from './utils/is-undefined';
24
27
  export * from './utils/is-null';
25
28
  export * from './utils/is-not-null-or-undefined';
26
29
  export * from './utils/chunk';
30
+ export * from './utils/compact';
27
31
  export * from './utils/flatten';
32
+ export * from './utils/pick';
28
33
  export * from './utils/pluck';
29
34
  export * from './utils/delay';
30
35
  export * from './utils/get';
31
36
  export * from './utils/escape-html';
32
37
  export * from './utils/make-template';
38
+ export * from './utils/uniq';
39
+ export * from './utils/range';
33
40
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iCAAiC,CAAC;AAChD,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oCAAoC,CAAC;AACnD,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kCAAkC,CAAC;AAEjD,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oCAAoC,CAAC;AACnD,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kCAAkC,CAAC;AAEjD,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,2 @@
1
+ /* eslint-disable @typescript-eslint/no-type-alias */
2
+ //# sourceMappingURL=StrictUnion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StrictUnion.js","sourceRoot":"","sources":["../../../src/types/StrictUnion.ts"],"names":[],"mappings":"AAAA,qDAAqD"}
@@ -0,0 +1,12 @@
1
+ function notFalsy(value) {
2
+ return value !== ''
3
+ && value !== 0
4
+ && value !== false
5
+ && value !== null
6
+ && value !== undefined
7
+ && !(typeof value === 'number' && isNaN(value));
8
+ }
9
+ export function compact(arr) {
10
+ return arr.filter(notFalsy);
11
+ }
12
+ //# sourceMappingURL=compact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compact.js","sourceRoot":"","sources":["../../../src/utils/compact.ts"],"names":[],"mappings":"AAEA,SAAS,QAAQ,CAAI,KAAoB;IACtC,OAAO,KAAK,KAAK,EAAE;WACb,KAAK,KAAK,CAAC;WACX,KAAK,KAAK,KAAK;WACf,KAAK,KAAK,IAAI;WACd,KAAK,KAAK,SAAS;WACnB,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,OAAO,CAAI,GAAsB;IAC9C,OAAO,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-arguments.js","sourceRoot":"","sources":["../../../src/utils/is-arguments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,CAAM;IAC/B,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"is-arguments.js","sourceRoot":"","sources":["../../../src/utils/is-arguments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,CAAU;IACnC,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC;AACnD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-array-of-strings.js","sourceRoot":"","sources":["../../../src/utils/is-array-of-strings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAW;IACzC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACnB,OAAO,KAAK,CAAC;KACf;IAED,KAAK,IAAI,CAAC,IAAI,MAAM,EAAE;QACnB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;YACf,OAAO,KAAK,CAAC;SACf;KACH;IAED,OAAO,IAAI,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"is-array-of-strings.js","sourceRoot":"","sources":["../../../src/utils/is-array-of-strings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAe;IAC7C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACnB,OAAO,KAAK,CAAC;KACf;IAED,KAAK,IAAI,CAAC,IAAI,MAAM,EAAE;QACnB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;YACf,OAAO,KAAK,CAAC;SACf;KACH;IAED,OAAO,IAAI,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-array.js","sourceRoot":"","sources":["../../../src/utils/is-array.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,CAAM;IAC3B,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"is-array.js","sourceRoot":"","sources":["../../../src/utils/is-array.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,CAAU;IAC/B,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC"}
@@ -0,0 +1,4 @@
1
+ export function isBoolean(o) {
2
+ return o === true || o === false;
3
+ }
4
+ //# sourceMappingURL=is-boolean.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-boolean.js","sourceRoot":"","sources":["../../../src/utils/is-boolean.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS,CAAC,CAAU;IACjC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC;AACpC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-enum-value.js","sourceRoot":"","sources":["../../../src/utils/is-enum-value.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,WAAW,CAAI,QAAW,EAAE,KAAU;IACnD,OAAQ,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAoB;SAC5C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACV,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,OAAO,CAAC,KAAK,KAAK,CAAC;IACtB,CAAC,CAAC,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"is-enum-value.js","sourceRoot":"","sources":["../../../src/utils/is-enum-value.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,WAAW,CAAI,QAAW,EAAE,KAAc;IACvD,OAAQ,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAoB;SAC5C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACV,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,OAAO,CAAC,KAAK,KAAK,CAAC;IACtB,CAAC,CAAC,CAAC;AACT,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-number.js","sourceRoot":"","sources":["../../../src/utils/is-number.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAM;IAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC;AAC1F,CAAC"}
1
+ {"version":3,"file":"is-number.js","sourceRoot":"","sources":["../../../src/utils/is-number.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAU;IAChC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC;AAC1F,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-object.js","sourceRoot":"","sources":["../../../src/utils/is-object.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAM;IAC5B,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC;IAEpB,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"is-object.js","sourceRoot":"","sources":["../../../src/utils/is-object.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAU;IAChC,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC;IAEpB,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC;AACnE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-promise-like.js","sourceRoot":"","sources":["../../../src/utils/is-promise-like.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,CAAM;IACjC,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAQ,CAAS,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"is-promise-like.js","sourceRoot":"","sources":["../../../src/utils/is-promise-like.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,CAAU;IACrC,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,OAAQ,CAAS,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;AACjF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-promise.js","sourceRoot":"","sources":["../../../src/utils/is-promise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,CAAM;IAC7B,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"is-promise.js","sourceRoot":"","sources":["../../../src/utils/is-promise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,CAAU;IACjC,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC;AAChE,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Type guard for `Set`s.
3
+ *
4
+ * @returns `true` if `o` is a `Set`, regardless of the types that it contains
5
+ */
6
+ export function isSet(o) {
7
+ return o instanceof Set;
8
+ }
9
+ //# sourceMappingURL=is-set.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-set.js","sourceRoot":"","sources":["../../../src/utils/is-set.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,KAAK,CAAC,CAAU;IAC7B,OAAO,CAAC,YAAY,GAAG,CAAC;AAC3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"is-string.js","sourceRoot":"","sources":["../../../src/utils/is-string.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAM;IAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC;AAC1F,CAAC"}
1
+ {"version":3,"file":"is-string.js","sourceRoot":"","sources":["../../../src/utils/is-string.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAU;IAChC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC;AAC1F,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { isArray } from './is-array';
2
+ export function pick(obj, ...args) {
3
+ const props = ((args.length === 1 && isArray(args[0])) ? args[0] : args);
4
+ return props.reduce((memo, prop) => {
5
+ if (prop in obj) {
6
+ memo[prop] = obj[prop];
7
+ }
8
+ return memo;
9
+ }, {});
10
+ }
11
+ //# sourceMappingURL=pick.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pick.js","sourceRoot":"","sources":["../../../src/utils/pick.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAcrC,MAAM,UAAU,IAAI,CAAsC,GAAM,EAAE,GAAG,IAAmB;IACrF,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAQ,CAAC;IAEhF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;QAChC,IAAI,IAAI,IAAI,GAAG,EAAE;YACd,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;SACzB;QACD,OAAO,IAAI,CAAC;IACf,CAAC,EAAE,EAAgB,CAAC,CAAC;AACxB,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Creates an array of numbers (positive and/or negative) progressing from
3
+ * start up to, but not including, end. A step of -1 is used if a negative start
4
+ * is specified without an end or step. If end is not specified, it's set to
5
+ * start with start then set to 0.
6
+ */
7
+ export function range(start, end, step) {
8
+ if (end === undefined) {
9
+ end = start;
10
+ start = 0;
11
+ }
12
+ if (!step) {
13
+ step = start < end ? 1 : -1;
14
+ }
15
+ const length = Math.max(Math.ceil((end - start) / step), 0), result = Array(length);
16
+ for (let i = 0; i < length; i++) {
17
+ result[i] = start + (i * step);
18
+ }
19
+ return result;
20
+ }
21
+ //# sourceMappingURL=range.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range.js","sourceRoot":"","sources":["../../../src/utils/range.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,KAAK,CAAC,KAAa,EAAE,GAAY,EAAE,IAAa;IAC7D,IAAI,GAAG,KAAK,SAAS,EAAE;QACpB,GAAG,GAAG,KAAK,CAAC;QACZ,KAAK,GAAG,CAAC,CAAC;KACZ;IAED,IAAI,CAAC,IAAI,EAAE;QACR,IAAI,GAAG,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC9B;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,EACrD,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QAC9B,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;KACjC;IACD,OAAO,MAAM,CAAC;AACjB,CAAC"}
@@ -0,0 +1,46 @@
1
+ const iterateeUniq = (arr, iteratee) => {
2
+ const result = [], seen = [];
3
+ for (let i = 0, length = arr.length; i < length; i++) {
4
+ let value = arr[i], computed = iteratee(value, i, arr);
5
+ if (seen.indexOf(computed) === -1) {
6
+ seen.push(computed);
7
+ result.push(value);
8
+ }
9
+ }
10
+ return result;
11
+ };
12
+ const sortedUniq = (arr) => {
13
+ const result = [];
14
+ let lastSeen;
15
+ for (let i = 0, length = arr.length; i < length; i++) {
16
+ let value = arr[i];
17
+ if (i === 0 || lastSeen !== value) {
18
+ result.push(value);
19
+ }
20
+ lastSeen = value;
21
+ }
22
+ return result;
23
+ };
24
+ const standardUniq = (arr) => {
25
+ const result = arr.filter((value, index, _arr) => {
26
+ return _arr.indexOf(value) === index;
27
+ });
28
+ return result;
29
+ };
30
+ /**
31
+ * Produce a duplicate-free version of the array. If the array has already
32
+ * been sorted, you have the option of using a faster algorithm.
33
+ * The faster algorithm will not work with an iteratee if the iteratee
34
+ * is not a one-to-one function, so providing an iteratee will disable
35
+ * the faster algorithm.
36
+ */
37
+ export const uniq = (arr, isSorted, iteratee) => {
38
+ if (iteratee) {
39
+ return iterateeUniq(arr, iteratee);
40
+ }
41
+ if (isSorted) {
42
+ return sortedUniq(arr);
43
+ }
44
+ return standardUniq(arr);
45
+ };
46
+ //# sourceMappingURL=uniq.js.map