@wopjs/cast 0.1.2 → 0.1.3

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/dist/index.d.mts CHANGED
@@ -15,6 +15,8 @@ interface IsFalsy {
15
15
  declare const isFalsy: IsFalsy;
16
16
  /** Returns `true` if `Boolean(x)` is `true`. */
17
17
  declare const isTruthy: <T>(x: T) => x is Exclude<T, Falsy>;
18
+ /** Returns `x` if `Boolean(x)` is `true`, otherwise returns `undefined`. */
19
+ declare const toTruthy: <T>(x: T) => Exclude<T, Falsy> | _;
18
20
  declare const isBoolean: (x: unknown) => x is boolean;
19
21
  /** Returns `x` if `x` is `true` or `false`, otherwise returns `undefined`. */
20
22
  declare const toBoolean: (x: unknown) => boolean | _;
@@ -87,4 +89,4 @@ declare const returnsFalse: () => false;
87
89
  declare const returnsTrue: () => true;
88
90
  declare const returnsEmptyString: () => string;
89
91
 
90
- export { type Falsy, type IsFalsy, type PlainObject, type _, asArray, asNumber, asObject, asPlainObject, asString, asTrue, isArray, isBoolean, isDefined, isFalsy, isNonEmptyJSONObject, isNonEmptyPlainObject, isNonEmptyString, isNumber, isObject, isPlainObject, isString, isTrue, isTruthy, noop, print, returnsEmptyString, returnsFalse, returnsNull, returnsTrue, returnsUndefined, toArray, toBoolean, toNonEmptyArray, toNonEmptyJSONObject, toNonEmptyPlainObject, toNonEmptyString, toNumber, toPlainObject, toPlainObjectOf, toPlainObjectOfTrue, toString, toTrue };
92
+ export { type Falsy, type IsFalsy, type PlainObject, type _, asArray, asNumber, asObject, asPlainObject, asString, asTrue, isArray, isBoolean, isDefined, isFalsy, isNonEmptyJSONObject, isNonEmptyPlainObject, isNonEmptyString, isNumber, isObject, isPlainObject, isString, isTrue, isTruthy, noop, print, returnsEmptyString, returnsFalse, returnsNull, returnsTrue, returnsUndefined, toArray, toBoolean, toNonEmptyArray, toNonEmptyJSONObject, toNonEmptyPlainObject, toNonEmptyString, toNumber, toPlainObject, toPlainObjectOf, toPlainObjectOfTrue, toString, toTrue, toTruthy };
package/dist/index.d.ts CHANGED
@@ -15,6 +15,8 @@ interface IsFalsy {
15
15
  declare const isFalsy: IsFalsy;
16
16
  /** Returns `true` if `Boolean(x)` is `true`. */
17
17
  declare const isTruthy: <T>(x: T) => x is Exclude<T, Falsy>;
18
+ /** Returns `x` if `Boolean(x)` is `true`, otherwise returns `undefined`. */
19
+ declare const toTruthy: <T>(x: T) => Exclude<T, Falsy> | _;
18
20
  declare const isBoolean: (x: unknown) => x is boolean;
19
21
  /** Returns `x` if `x` is `true` or `false`, otherwise returns `undefined`. */
20
22
  declare const toBoolean: (x: unknown) => boolean | _;
@@ -87,4 +89,4 @@ declare const returnsFalse: () => false;
87
89
  declare const returnsTrue: () => true;
88
90
  declare const returnsEmptyString: () => string;
89
91
 
90
- export { type Falsy, type IsFalsy, type PlainObject, type _, asArray, asNumber, asObject, asPlainObject, asString, asTrue, isArray, isBoolean, isDefined, isFalsy, isNonEmptyJSONObject, isNonEmptyPlainObject, isNonEmptyString, isNumber, isObject, isPlainObject, isString, isTrue, isTruthy, noop, print, returnsEmptyString, returnsFalse, returnsNull, returnsTrue, returnsUndefined, toArray, toBoolean, toNonEmptyArray, toNonEmptyJSONObject, toNonEmptyPlainObject, toNonEmptyString, toNumber, toPlainObject, toPlainObjectOf, toPlainObjectOfTrue, toString, toTrue };
92
+ export { type Falsy, type IsFalsy, type PlainObject, type _, asArray, asNumber, asObject, asPlainObject, asString, asTrue, isArray, isBoolean, isDefined, isFalsy, isNonEmptyJSONObject, isNonEmptyPlainObject, isNonEmptyString, isNumber, isObject, isPlainObject, isString, isTrue, isTruthy, noop, print, returnsEmptyString, returnsFalse, returnsNull, returnsTrue, returnsUndefined, toArray, toBoolean, toNonEmptyArray, toNonEmptyJSONObject, toNonEmptyPlainObject, toNonEmptyString, toNumber, toPlainObject, toPlainObjectOf, toPlainObjectOfTrue, toString, toTrue, toTruthy };
package/dist/index.js CHANGED
@@ -8,6 +8,7 @@ var toTrue = (x) => x === true ? true : _;
8
8
  var asTrue = (x) => x === true ? x : false;
9
9
  var isFalsy = (x) => !x;
10
10
  var isTruthy = (x) => !!x;
11
+ var toTruthy = (x) => isTruthy(x) ? x : _;
11
12
  var isBoolean = (x) => x === true || x === false;
12
13
  var toBoolean = (x) => isBoolean(x) ? x : _;
13
14
  var isNumber = (x) => typeof x === "number" && x === x;
@@ -105,5 +106,6 @@ exports.toPlainObjectOf = toPlainObjectOf;
105
106
  exports.toPlainObjectOfTrue = toPlainObjectOfTrue;
106
107
  exports.toString = toString;
107
108
  exports.toTrue = toTrue;
109
+ exports.toTruthy = toTruthy;
108
110
  //# sourceMappingURL=index.js.map
109
111
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/is-to-as.ts","../src/returns.ts"],"names":[],"mappings":";;;AAAA,IAAM,CAAI,GAAA,KAAA,CAAA;AAIG,IAAA,SAAA,GAAY,CAAI,CAAA,KAA6B,CAAM,KAAA;AAEnD,IAAA,MAAA,GAAS,CAAC,CAAA,KAA0B,CAAM,KAAA;AAGhD,IAAM,MAAS,GAAA,CAAC,CAA0B,KAAA,CAAA,KAAM,OAAO,IAAO,GAAA;AAG9D,IAAM,MAAS,GAAA,CAAC,CAAyB,KAAA,CAAA,KAAM,OAAO,CAAI,GAAA;AAUpD,IAAA,OAAA,GAAmB,CAAC,CAAA,KAA2B,CAAC;AAGtD,IAAM,QAAW,GAAA,CAAI,CAAiC,KAAA,CAAC,CAAC;AAExD,IAAM,SAAY,GAAA,CAAC,CAA6B,KAAA,CAAA,KAAM,QAAQ,CAAM,KAAA;AAGpE,IAAM,YAAY,CAAC,CAAA,KAA6B,SAAU,CAAA,CAAC,IAAI,CAAI,GAAA;AAGnE,IAAM,WAAW,CAAC,CAAA,KAA4B,OAAO,CAAA,KAAM,YAAY,CAAM,KAAA;AAG7E,IAAM,WAAW,CAAC,CAAA,KAA4B,QAAS,CAAA,CAAC,IAAI,CAAI,GAAA;AAGhE,IAAM,WAAW,CAAC,CAAA,KAAwB,QAAS,CAAA,CAAC,IAAI,CAAI,GAAA;AAG5D,IAAM,QAAW,GAAA,CAAC,CAA4B,KAAA,OAAO,CAAM,KAAA;AAG3D,IAAM,WAAW,CAAC,CAAA,KAA4B,QAAS,CAAA,CAAC,IAAI,CAAI,GAAA;AAGhE,IAAM,WAAW,CAAC,CAAA,KAAwB,QAAS,CAAA,CAAC,IAAI,CAAI,GAAA;AAG5D,IAAM,mBAAmB,CAAC,CAAA,KAA4B,QAAS,CAAA,CAAC,KAAK,CAAM,KAAA;AAG3E,IAAM,mBAAmB,CAAC,CAAA,KAA4B,gBAAiB,CAAA,CAAC,IAAI,CAAI,GAAA;AAEhF,IAAM,UAAU,KAAM,CAAA;AAGtB,IAAM,UAAU,CAAC,CAAA,KAAuC,OAAQ,CAAA,CAAC,IAAI,CAAI,GAAA;AAGzE,IAAM,kBAAkB,CAAI,CAAA,KAAqB,CAAE,CAAA,MAAA,GAAS,IAAI,CAAI,GAAA;AAGpE,IAAM,UAAU,CAAC,CAAA,KAA2B,QAAQ,CAAC,CAAA,GAAI,IAAI;AAO7D,IAAM,WAAW,CAAC,CAAA,KAA4B,CAAM,KAAA,IAAA,IAAQ,OAAO,CAAM,KAAA;AAGzE,IAAM,WAAW,CAAC,CAAA,KAAwB,SAAS,CAAC,CAAA,GAAI,IAAI;AAGtD,IAAA,aAAA,GAAgB,CAAC,CAAiC,KAAA,QAAA,CAAS,CAAC,CAAK,IAAA,CAAC,QAAQ,CAAC;AAGjF,IAAM,gBAAgB,CAAC,CAAA,KAAiC,aAAc,CAAA,CAAC,IAAI,CAAI,GAAA;AAG/E,IAAM,gBAAgB,CAAC,CAAA,KAA6B,cAAc,CAAC,CAAA,GAAI,IAAI;AAGrE,IAAA,qBAAA,GAAwB,CAAC,CAAA,KAAiC,aAAc,CAAA,CAAC,KAAK,MAAO,CAAA,IAAA,CAAK,CAAC,CAAA,CAAE,MAAS,GAAA;AAG5G,IAAM,wBAAwB,CAAwB,CAAA,KAAiB,qBAAsB,CAAA,CAAC,IAAI,CAAI,GAAA;AAGhG,IAAA,oBAAA,GAAuB,CAAC,CAAA,KACnC,aAAc,CAAA,CAAC,CAAK,IAAA,MAAA,CAAO,MAAO,CAAA,CAAC,CAAE,CAAA,IAAA,CAAK,SAAS;AAG9C,IAAM,uBAAuB,CAAwB,CAAA,KAAiB,oBAAqB,CAAA,CAAC,IAAI,CAAI,GAAA;AAM9F,IAAA,eAAA,GAAkB,CAAI,CAAA,EAAY,CAA6D,KAAA;AAC1G,EAAI,IAAA,aAAA,CAAc,CAAC,CAAG,EAAA;AACpB,IAAA,IAAI,KAAQ,GAAA,CAAA,CAAA;AACZ,IAAI,IAAA,KAAA,GAAQ,MAAO,CAAA,IAAA,CAAK,CAAC,CAAA;AACzB,IAAA,IAAI,SAAS,KAAM,CAAA,MAAA;AACnB,IAAI,IAAA,MAAA;AAEJ,IAAO,OAAA,EAAE,QAAQ,MAAQ,EAAA;AACvB,MAAI,IAAA,GAAA,GAAM,MAAM,KAAK,CAAA;AACrB,MAAI,IAAA,KAAA,GAAQ,EAAE,GAAG,CAAA;AACjB,MAAI,IAAA,CAAA,CAAE,KAAK,CAAG,EAAA;AACZ,QAAA,CAAC,MAAW,KAAA,EAAI,EAAA,GAAG,CAAI,GAAA,KAAA;AAAA;AACzB;AAGF,IAAO,OAAA,MAAA;AAAA;AAEX;AAGO,IAAM,mBAAsB,GAAA,CAAC,CAAiD,KAAA,eAAA,CAAgB,GAAG,MAAM;AAOjG,IAAA,KAAA,GAAQ,CAAC,CAAuB,KAAA;AAC3C,EAAI,IAAA,QAAA,CAAS,CAAC,CAAA,EAAU,OAAA,CAAA;AACxB,EAAI,IAAA,CAAA,IAAK,MAAa,OAAA,EAAA;AACtB,EAAI,IAAA;AACF,IAAA,OAAO,IAAK,CAAA,SAAA,CAAU,CAAG,EAAA,IAAA,EAAM,CAAC,CAAA;AAAA,GAC1B,CAAA,MAAA;AAEN,IAAA,OAAO,CAAI,GAAA,EAAA;AAAA;AAEf;;;AC3IO,IAAM,OAAO,MAAY;AAAC;AAE1B,IAAM,gBAAmB,GAAA;AAEzB,IAAM,cAAc,MAAY;AAEhC,IAAM,eAAe,MAAa;AAElC,IAAM,cAAc,MAAY;AAEhC,IAAM,qBAAqB,MAAc","file":"index.js"}
1
+ {"version":3,"sources":["../src/is-to-as.ts","../src/returns.ts"],"names":[],"mappings":"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","file":"index.js"}
package/dist/index.mjs CHANGED
@@ -6,6 +6,7 @@ var toTrue = (x) => x === true ? true : _;
6
6
  var asTrue = (x) => x === true ? x : false;
7
7
  var isFalsy = (x) => !x;
8
8
  var isTruthy = (x) => !!x;
9
+ var toTruthy = (x) => isTruthy(x) ? x : _;
9
10
  var isBoolean = (x) => x === true || x === false;
10
11
  var toBoolean = (x) => isBoolean(x) ? x : _;
11
12
  var isNumber = (x) => typeof x === "number" && x === x;
@@ -65,6 +66,6 @@ var returnsFalse = () => false;
65
66
  var returnsTrue = () => true;
66
67
  var returnsEmptyString = () => "";
67
68
 
68
- export { asArray, asNumber, asObject, asPlainObject, asString, asTrue, isArray, isBoolean, isDefined, isFalsy, isNonEmptyJSONObject, isNonEmptyPlainObject, isNonEmptyString, isNumber, isObject, isPlainObject, isString, isTrue, isTruthy, noop, print, returnsEmptyString, returnsFalse, returnsNull, returnsTrue, returnsUndefined, toArray, toBoolean, toNonEmptyArray, toNonEmptyJSONObject, toNonEmptyPlainObject, toNonEmptyString, toNumber, toPlainObject, toPlainObjectOf, toPlainObjectOfTrue, toString, toTrue };
69
+ export { asArray, asNumber, asObject, asPlainObject, asString, asTrue, isArray, isBoolean, isDefined, isFalsy, isNonEmptyJSONObject, isNonEmptyPlainObject, isNonEmptyString, isNumber, isObject, isPlainObject, isString, isTrue, isTruthy, noop, print, returnsEmptyString, returnsFalse, returnsNull, returnsTrue, returnsUndefined, toArray, toBoolean, toNonEmptyArray, toNonEmptyJSONObject, toNonEmptyPlainObject, toNonEmptyString, toNumber, toPlainObject, toPlainObjectOf, toPlainObjectOfTrue, toString, toTrue, toTruthy };
69
70
  //# sourceMappingURL=index.mjs.map
70
71
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/is-to-as.ts","../src/returns.ts"],"names":[],"mappings":"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","file":"index.mjs"}
1
+ {"version":3,"sources":["../src/is-to-as.ts","../src/returns.ts"],"names":[],"mappings":"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","file":"index.mjs"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wopjs/cast",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "Filter types from unknown",
5
5
  "repository": "wopjs/cast",
6
6
  "main": "./dist/index.js",
@@ -41,21 +41,21 @@
41
41
  "license": "MIT",
42
42
  "devDependencies": {
43
43
  "@eslint/js": "^9.15.0",
44
- "@types/node": "^22.9.0",
45
- "@vitest/coverage-v8": "^2.1.5",
44
+ "@types/node": "^24.9.1",
45
+ "@vitest/coverage-v8": "^4.0.4",
46
46
  "commit-and-tag-version": "^12.5.0",
47
47
  "eslint": "^9.15.0",
48
- "eslint-config-prettier": "^9.1.0",
49
- "eslint-import-resolver-typescript": "^3.6.3",
48
+ "eslint-config-prettier": "^10.1.8",
49
+ "eslint-import-resolver-typescript": "^4.4.4",
50
50
  "eslint-plugin-import": "^2.31.0",
51
51
  "gzip-size": "^7.0.0",
52
52
  "prettier": "^3.3.3",
53
- "pretty-bytes": "^6.1.1",
53
+ "pretty-bytes": "^7.1.0",
54
54
  "tsup": "^8.3.5",
55
- "typedoc": "^0.27.5",
55
+ "typedoc": "^0.28.14",
56
56
  "typescript": "^5.6.3",
57
57
  "typescript-eslint": "^8.15.0",
58
- "vitest": "^2.1.5",
58
+ "vitest": "^4.0.4",
59
59
  "yoctocolors": "^2.1.1"
60
60
  }
61
61
  }
@@ -33,6 +33,7 @@ import {
33
33
  toNonEmptyJSONObject,
34
34
  toPlainObjectOf,
35
35
  toPlainObjectOfTrue,
36
+ toTruthy,
36
37
  } from ".";
37
38
 
38
39
  describe("primitive.ts", () => {
@@ -65,6 +66,22 @@ describe("primitive.ts", () => {
65
66
  expect(isTruthy(1)).toBe(true);
66
67
  });
67
68
 
69
+ it("toTruthy", () => {
70
+ const expectTruthy = (o: unknown) => expect(toTruthy(o)).toBe(o);
71
+ expectTruthy({});
72
+ expectTruthy([]);
73
+ expectTruthy("string");
74
+ expectTruthy(Symbol());
75
+ expectTruthy(1);
76
+ expectTruthy(true);
77
+
78
+ expect(toTruthy(false)).toBe(undefined);
79
+ expect(toTruthy(0)).toBe(undefined);
80
+ expect(toTruthy(NaN)).toBe(undefined);
81
+ expect(toTruthy(null)).toBe(undefined);
82
+ expect(toTruthy(undefined)).toBe(undefined);
83
+ });
84
+
68
85
  it("isFalsy", () => {
69
86
  expect(isFalsy(true)).toBe(false);
70
87
  expect(isFalsy(false)).toBe(true);
package/src/is-to-as.ts CHANGED
@@ -25,6 +25,9 @@ export const isFalsy: IsFalsy = (x: unknown): x is Falsy => !x;
25
25
  /** Returns `true` if `Boolean(x)` is `true`. */
26
26
  export const isTruthy = <T>(x: T): x is Exclude<T, Falsy> => !!x;
27
27
 
28
+ /** Returns `x` if `Boolean(x)` is `true`, otherwise returns `undefined`. */
29
+ export const toTruthy = <T>(x: T): Exclude<T, Falsy> | _ => (isTruthy(x) ? x : _);
30
+
28
31
  export const isBoolean = (x: unknown): x is boolean => x === true || x === false;
29
32
 
30
33
  /** Returns `x` if `x` is `true` or `false`, otherwise returns `undefined`. */