@fluixi/utils 1.0.0-alpha.53
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/LICENSE +21 -0
- package/README.md +73 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/dist/index.mjs +1 -0
- package/dist/lib/array/advanced.cjs +1 -0
- package/dist/lib/array/advanced.d.ts +1116 -0
- package/dist/lib/array/advanced.d.ts.map +1 -0
- package/dist/lib/array/advanced.js +2429 -0
- package/dist/lib/array/advanced.mjs +1 -0
- package/dist/lib/array/array.cjs +1 -0
- package/dist/lib/array/array.d.ts +6 -0
- package/dist/lib/array/array.d.ts.map +1 -0
- package/dist/lib/array/array.js +31 -0
- package/dist/lib/array/array.mjs +1 -0
- package/dist/lib/array/index.cjs +1 -0
- package/dist/lib/array/index.d.ts +4 -0
- package/dist/lib/array/index.d.ts.map +1 -0
- package/dist/lib/array/index.js +3 -0
- package/dist/lib/array/index.mjs +1 -0
- package/dist/lib/array/utils.cjs +1 -0
- package/dist/lib/array/utils.d.ts +100 -0
- package/dist/lib/array/utils.d.ts.map +1 -0
- package/dist/lib/array/utils.js +165 -0
- package/dist/lib/array/utils.mjs +1 -0
- package/dist/lib/color/color.cjs +1 -0
- package/dist/lib/color/color.d.ts +366 -0
- package/dist/lib/color/color.d.ts.map +1 -0
- package/dist/lib/color/color.js +722 -0
- package/dist/lib/color/color.mjs +1 -0
- package/dist/lib/color/constants.cjs +1 -0
- package/dist/lib/color/constants.d.ts +361 -0
- package/dist/lib/color/constants.d.ts.map +1 -0
- package/dist/lib/color/constants.js +358 -0
- package/dist/lib/color/constants.mjs +1 -0
- package/dist/lib/color/conversions.cjs +1 -0
- package/dist/lib/color/conversions.d.ts +166 -0
- package/dist/lib/color/conversions.d.ts.map +1 -0
- package/dist/lib/color/conversions.js +766 -0
- package/dist/lib/color/conversions.mjs +1 -0
- package/dist/lib/color/helpers.cjs +1 -0
- package/dist/lib/color/helpers.d.ts +75 -0
- package/dist/lib/color/helpers.d.ts.map +1 -0
- package/dist/lib/color/helpers.js +419 -0
- package/dist/lib/color/helpers.mjs +1 -0
- package/dist/lib/color/index.cjs +1 -0
- package/dist/lib/color/index.d.ts +12 -0
- package/dist/lib/color/index.d.ts.map +1 -0
- package/dist/lib/color/index.js +15 -0
- package/dist/lib/color/index.mjs +1 -0
- package/dist/lib/color/types.cjs +1 -0
- package/dist/lib/color/types.d.ts +179 -0
- package/dist/lib/color/types.d.ts.map +1 -0
- package/dist/lib/color/types.js +1 -0
- package/dist/lib/color/types.mjs +0 -0
- package/dist/lib/color/utils.cjs +1 -0
- package/dist/lib/color/utils.d.ts +199 -0
- package/dist/lib/color/utils.d.ts.map +1 -0
- package/dist/lib/color/utils.js +858 -0
- package/dist/lib/color/utils.mjs +1 -0
- package/dist/lib/compare/comparators.cjs +1 -0
- package/dist/lib/compare/comparators.d.ts +65 -0
- package/dist/lib/compare/comparators.d.ts.map +1 -0
- package/dist/lib/compare/comparators.js +210 -0
- package/dist/lib/compare/comparators.mjs +1 -0
- package/dist/lib/compare/index.cjs +1 -0
- package/dist/lib/compare/index.d.ts +2 -0
- package/dist/lib/compare/index.d.ts.map +1 -0
- package/dist/lib/compare/index.js +1 -0
- package/dist/lib/compare/index.mjs +1 -0
- package/dist/lib/crypto/hash.cjs +1 -0
- package/dist/lib/crypto/hash.d.ts +6 -0
- package/dist/lib/crypto/hash.d.ts.map +1 -0
- package/dist/lib/crypto/hash.js +53 -0
- package/dist/lib/crypto/hash.mjs +1 -0
- package/dist/lib/crypto/index.cjs +1 -0
- package/dist/lib/crypto/index.d.ts +2 -0
- package/dist/lib/crypto/index.d.ts.map +1 -0
- package/dist/lib/crypto/index.js +1 -0
- package/dist/lib/crypto/index.mjs +1 -0
- package/dist/lib/dom/events.cjs +1 -0
- package/dist/lib/dom/events.d.ts +159 -0
- package/dist/lib/dom/events.d.ts.map +1 -0
- package/dist/lib/dom/events.js +50 -0
- package/dist/lib/dom/events.mjs +1 -0
- package/dist/lib/dom/index.cjs +1 -0
- package/dist/lib/dom/index.d.ts +3 -0
- package/dist/lib/dom/index.d.ts.map +1 -0
- package/dist/lib/dom/index.js +2 -0
- package/dist/lib/dom/index.mjs +1 -0
- package/dist/lib/dom/utils.cjs +1 -0
- package/dist/lib/dom/utils.d.ts +6 -0
- package/dist/lib/dom/utils.d.ts.map +1 -0
- package/dist/lib/dom/utils.js +37 -0
- package/dist/lib/dom/utils.mjs +1 -0
- package/dist/lib/functions/functions.cjs +1 -0
- package/dist/lib/functions/functions.d.ts +329 -0
- package/dist/lib/functions/functions.d.ts.map +1 -0
- package/dist/lib/functions/functions.js +585 -0
- package/dist/lib/functions/functions.mjs +1 -0
- package/dist/lib/functions/index.cjs +1 -0
- package/dist/lib/functions/index.d.ts +3 -0
- package/dist/lib/functions/index.d.ts.map +1 -0
- package/dist/lib/functions/index.js +1 -0
- package/dist/lib/functions/index.mjs +1 -0
- package/dist/lib/functions/types.cjs +1 -0
- package/dist/lib/functions/types.d.ts +2 -0
- package/dist/lib/functions/types.d.ts.map +1 -0
- package/dist/lib/functions/types.js +1 -0
- package/dist/lib/functions/types.mjs +0 -0
- package/dist/lib/helpers.cjs +1 -0
- package/dist/lib/helpers.d.ts +13 -0
- package/dist/lib/helpers.d.ts.map +1 -0
- package/dist/lib/helpers.js +66 -0
- package/dist/lib/helpers.mjs +1 -0
- package/dist/lib/index.cjs +1 -0
- package/dist/lib/index.d.ts +6 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +8 -0
- package/dist/lib/index.mjs +1 -0
- package/dist/lib/maths/constants.cjs +1 -0
- package/dist/lib/maths/constants.d.ts +84 -0
- package/dist/lib/maths/constants.d.ts.map +1 -0
- package/dist/lib/maths/constants.js +79 -0
- package/dist/lib/maths/constants.mjs +1 -0
- package/dist/lib/maths/fn/advanced.cjs +1 -0
- package/dist/lib/maths/fn/advanced.d.ts +149 -0
- package/dist/lib/maths/fn/advanced.d.ts.map +1 -0
- package/dist/lib/maths/fn/advanced.js +264 -0
- package/dist/lib/maths/fn/advanced.mjs +1 -0
- package/dist/lib/maths/fn/basic.cjs +1 -0
- package/dist/lib/maths/fn/basic.d.ts +182 -0
- package/dist/lib/maths/fn/basic.d.ts.map +1 -0
- package/dist/lib/maths/fn/basic.js +343 -0
- package/dist/lib/maths/fn/basic.mjs +1 -0
- package/dist/lib/maths/fn/complex.cjs +1 -0
- package/dist/lib/maths/fn/complex.d.ts +153 -0
- package/dist/lib/maths/fn/complex.d.ts.map +1 -0
- package/dist/lib/maths/fn/complex.js +383 -0
- package/dist/lib/maths/fn/complex.mjs +1 -0
- package/dist/lib/maths/fn/index.cjs +1 -0
- package/dist/lib/maths/fn/index.d.ts +10 -0
- package/dist/lib/maths/fn/index.d.ts.map +1 -0
- package/dist/lib/maths/fn/index.js +9 -0
- package/dist/lib/maths/fn/index.mjs +1 -0
- package/dist/lib/maths/fn/trigo.cjs +1 -0
- package/dist/lib/maths/fn/trigo.d.ts +147 -0
- package/dist/lib/maths/fn/trigo.d.ts.map +1 -0
- package/dist/lib/maths/fn/trigo.js +227 -0
- package/dist/lib/maths/fn/trigo.mjs +1 -0
- package/dist/lib/maths/fn/vector.cjs +1 -0
- package/dist/lib/maths/fn/vector.d.ts +512 -0
- package/dist/lib/maths/fn/vector.d.ts.map +1 -0
- package/dist/lib/maths/fn/vector.js +1136 -0
- package/dist/lib/maths/fn/vector.mjs +1 -0
- package/dist/lib/maths/formatter.cjs +1 -0
- package/dist/lib/maths/formatter.d.ts +35 -0
- package/dist/lib/maths/formatter.d.ts.map +1 -0
- package/dist/lib/maths/formatter.js +56 -0
- package/dist/lib/maths/formatter.mjs +1 -0
- package/dist/lib/maths/guards.cjs +1 -0
- package/dist/lib/maths/guards.d.ts +166 -0
- package/dist/lib/maths/guards.d.ts.map +1 -0
- package/dist/lib/maths/guards.js +315 -0
- package/dist/lib/maths/guards.mjs +1 -0
- package/dist/lib/maths/index.cjs +1 -0
- package/dist/lib/maths/index.d.ts +24 -0
- package/dist/lib/maths/index.d.ts.map +1 -0
- package/dist/lib/maths/index.js +29 -0
- package/dist/lib/maths/index.mjs +1 -0
- package/dist/lib/maths/parser.cjs +1 -0
- package/dist/lib/maths/parser.d.ts +20 -0
- package/dist/lib/maths/parser.d.ts.map +1 -0
- package/dist/lib/maths/parser.js +78 -0
- package/dist/lib/maths/parser.mjs +1 -0
- package/dist/lib/maths/random.cjs +1 -0
- package/dist/lib/maths/random.d.ts +27 -0
- package/dist/lib/maths/random.d.ts.map +1 -0
- package/dist/lib/maths/random.js +49 -0
- package/dist/lib/maths/random.mjs +1 -0
- package/dist/lib/maths/types/advanced.cjs +1 -0
- package/dist/lib/maths/types/advanced.d.ts +357 -0
- package/dist/lib/maths/types/advanced.d.ts.map +1 -0
- package/dist/lib/maths/types/advanced.js +5 -0
- package/dist/lib/maths/types/advanced.mjs +0 -0
- package/dist/lib/maths/types/basic.cjs +1 -0
- package/dist/lib/maths/types/basic.d.ts +95 -0
- package/dist/lib/maths/types/basic.d.ts.map +1 -0
- package/dist/lib/maths/types/basic.js +5 -0
- package/dist/lib/maths/types/basic.mjs +0 -0
- package/dist/lib/maths/types/index.cjs +1 -0
- package/dist/lib/maths/types/index.d.ts +4 -0
- package/dist/lib/maths/types/index.d.ts.map +1 -0
- package/dist/lib/maths/types/index.js +3 -0
- package/dist/lib/maths/types/index.mjs +0 -0
- package/dist/lib/maths/types/negative.cjs +1 -0
- package/dist/lib/maths/types/negative.d.ts +51 -0
- package/dist/lib/maths/types/negative.d.ts.map +1 -0
- package/dist/lib/maths/types/negative.js +5 -0
- package/dist/lib/maths/types/negative.mjs +0 -0
- package/dist/lib/maths/types/operations.cjs +1 -0
- package/dist/lib/maths/types/operations.d.ts +188 -0
- package/dist/lib/maths/types/operations.d.ts.map +1 -0
- package/dist/lib/maths/types/operations.js +6 -0
- package/dist/lib/maths/types/operations.mjs +0 -0
- package/dist/lib/object/clone.cjs +1 -0
- package/dist/lib/object/clone.d.ts +46 -0
- package/dist/lib/object/clone.d.ts.map +1 -0
- package/dist/lib/object/clone.js +104 -0
- package/dist/lib/object/clone.mjs +1 -0
- package/dist/lib/object/diff.cjs +1 -0
- package/dist/lib/object/diff.d.ts +203 -0
- package/dist/lib/object/diff.d.ts.map +1 -0
- package/dist/lib/object/diff.js +805 -0
- package/dist/lib/object/diff.mjs +1 -0
- package/dist/lib/object/getter-setter.cjs +1 -0
- package/dist/lib/object/getter-setter.d.ts +361 -0
- package/dist/lib/object/getter-setter.d.ts.map +1 -0
- package/dist/lib/object/getter-setter.js +1771 -0
- package/dist/lib/object/getter-setter.mjs +1 -0
- package/dist/lib/object/index.cjs +6 -0
- package/dist/lib/object/index.d.ts +13 -0
- package/dist/lib/object/index.d.ts.map +1 -0
- package/dist/lib/object/index.js +12 -0
- package/dist/lib/object/index.mjs +6 -0
- package/dist/lib/object/merge.cjs +1 -0
- package/dist/lib/object/merge.d.ts +93 -0
- package/dist/lib/object/merge.d.ts.map +1 -0
- package/dist/lib/object/merge.js +474 -0
- package/dist/lib/object/merge.mjs +1 -0
- package/dist/lib/object/object.cjs +1 -0
- package/dist/lib/object/object.d.ts +128 -0
- package/dist/lib/object/object.d.ts.map +1 -0
- package/dist/lib/object/object.js +432 -0
- package/dist/lib/object/object.mjs +1 -0
- package/dist/lib/object/omit.cjs +1 -0
- package/dist/lib/object/omit.d.ts +351 -0
- package/dist/lib/object/omit.d.ts.map +1 -0
- package/dist/lib/object/omit.js +656 -0
- package/dist/lib/object/omit.mjs +1 -0
- package/dist/lib/object/reconcile.cjs +1 -0
- package/dist/lib/object/reconcile.d.ts +7 -0
- package/dist/lib/object/reconcile.d.ts.map +1 -0
- package/dist/lib/object/reconcile.js +122 -0
- package/dist/lib/object/reconcile.mjs +1 -0
- package/dist/lib/object/selector.cjs +1 -0
- package/dist/lib/object/selector.d.ts +50 -0
- package/dist/lib/object/selector.d.ts.map +1 -0
- package/dist/lib/object/selector.js +371 -0
- package/dist/lib/object/selector.mjs +1 -0
- package/dist/lib/object/sort.cjs +1 -0
- package/dist/lib/object/sort.d.ts +149 -0
- package/dist/lib/object/sort.d.ts.map +1 -0
- package/dist/lib/object/sort.js +298 -0
- package/dist/lib/object/sort.mjs +1 -0
- package/dist/lib/object/transform.cjs +1 -0
- package/dist/lib/object/transform.d.ts +620 -0
- package/dist/lib/object/transform.d.ts.map +1 -0
- package/dist/lib/object/transform.js +1058 -0
- package/dist/lib/object/transform.mjs +1 -0
- package/dist/lib/object/types.cjs +1 -0
- package/dist/lib/object/types.d.ts +250 -0
- package/dist/lib/object/types.d.ts.map +1 -0
- package/dist/lib/object/types.js +1 -0
- package/dist/lib/object/types.mjs +0 -0
- package/dist/lib/object/utils.cjs +6 -0
- package/dist/lib/object/utils.d.ts +165 -0
- package/dist/lib/object/utils.d.ts.map +1 -0
- package/dist/lib/object/utils.js +444 -0
- package/dist/lib/object/utils.mjs +6 -0
- package/dist/lib/primitive/boolean/boolean.cjs +1 -0
- package/dist/lib/primitive/boolean/boolean.d.ts +276 -0
- package/dist/lib/primitive/boolean/boolean.d.ts.map +1 -0
- package/dist/lib/primitive/boolean/boolean.js +615 -0
- package/dist/lib/primitive/boolean/boolean.mjs +1 -0
- package/dist/lib/primitive/boolean/index.cjs +1 -0
- package/dist/lib/primitive/boolean/index.d.ts +3 -0
- package/dist/lib/primitive/boolean/index.d.ts.map +1 -0
- package/dist/lib/primitive/boolean/index.js +2 -0
- package/dist/lib/primitive/boolean/index.mjs +1 -0
- package/dist/lib/primitive/boolean/types.cjs +1 -0
- package/dist/lib/primitive/boolean/types.d.ts +14 -0
- package/dist/lib/primitive/boolean/types.d.ts.map +1 -0
- package/dist/lib/primitive/boolean/types.js +1 -0
- package/dist/lib/primitive/boolean/types.mjs +0 -0
- package/dist/lib/primitive/date/date.cjs +1 -0
- package/dist/lib/primitive/date/date.d.ts +641 -0
- package/dist/lib/primitive/date/date.d.ts.map +1 -0
- package/dist/lib/primitive/date/date.js +1998 -0
- package/dist/lib/primitive/date/date.mjs +1 -0
- package/dist/lib/primitive/date/index.cjs +1 -0
- package/dist/lib/primitive/date/index.d.ts +3 -0
- package/dist/lib/primitive/date/index.d.ts.map +1 -0
- package/dist/lib/primitive/date/index.js +2 -0
- package/dist/lib/primitive/date/index.mjs +1 -0
- package/dist/lib/primitive/date/types.cjs +1 -0
- package/dist/lib/primitive/date/types.d.ts +205 -0
- package/dist/lib/primitive/date/types.d.ts.map +1 -0
- package/dist/lib/primitive/date/types.js +7 -0
- package/dist/lib/primitive/date/types.mjs +0 -0
- package/dist/lib/primitive/index.cjs +5 -0
- package/dist/lib/primitive/index.d.ts +5 -0
- package/dist/lib/primitive/index.d.ts.map +1 -0
- package/dist/lib/primitive/index.js +4 -0
- package/dist/lib/primitive/index.mjs +5 -0
- package/dist/lib/primitive/string/index.cjs +5 -0
- package/dist/lib/primitive/string/index.d.ts +3 -0
- package/dist/lib/primitive/string/index.d.ts.map +1 -0
- package/dist/lib/primitive/string/index.js +2 -0
- package/dist/lib/primitive/string/index.mjs +5 -0
- package/dist/lib/primitive/string/parser-2.cjs +8 -0
- package/dist/lib/primitive/string/parser-2.d.ts +17 -0
- package/dist/lib/primitive/string/parser-2.d.ts.map +1 -0
- package/dist/lib/primitive/string/parser-2.js +656 -0
- package/dist/lib/primitive/string/parser-2.mjs +8 -0
- package/dist/lib/primitive/string/parser.cjs +3 -0
- package/dist/lib/primitive/string/parser.d.ts +9 -0
- package/dist/lib/primitive/string/parser.d.ts.map +1 -0
- package/dist/lib/primitive/string/parser.js +775 -0
- package/dist/lib/primitive/string/parser.mjs +3 -0
- package/dist/lib/primitive/string/string.cjs +5 -0
- package/dist/lib/primitive/string/string.d.ts +535 -0
- package/dist/lib/primitive/string/string.d.ts.map +1 -0
- package/dist/lib/primitive/string/string.js +1301 -0
- package/dist/lib/primitive/string/string.mjs +5 -0
- package/dist/lib/primitive/string/types.cjs +1 -0
- package/dist/lib/primitive/string/types.d.ts +318 -0
- package/dist/lib/primitive/string/types.d.ts.map +1 -0
- package/dist/lib/primitive/string/types.js +5 -0
- package/dist/lib/primitive/string/types.mjs +0 -0
- package/dist/lib/primitive/types.cjs +1 -0
- package/dist/lib/primitive/types.d.ts +27 -0
- package/dist/lib/primitive/types.d.ts.map +1 -0
- package/dist/lib/primitive/types.js +1 -0
- package/dist/lib/primitive/types.mjs +0 -0
- package/dist/lib/url/index.cjs +1 -0
- package/dist/lib/url/index.d.ts +3 -0
- package/dist/lib/url/index.d.ts.map +1 -0
- package/dist/lib/url/index.js +2 -0
- package/dist/lib/url/index.mjs +1 -0
- package/dist/lib/url/parser.cjs +1 -0
- package/dist/lib/url/parser.d.ts +216 -0
- package/dist/lib/url/parser.d.ts.map +1 -0
- package/dist/lib/url/parser.js +488 -0
- package/dist/lib/url/parser.mjs +1 -0
- package/dist/lib/url/types.cjs +1 -0
- package/dist/lib/url/types.d.ts +18 -0
- package/dist/lib/url/types.d.ts.map +1 -0
- package/dist/lib/url/types.js +1 -0
- package/dist/lib/url/types.mjs +0 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -0
- package/package.json +150 -0
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Boolean utilities collection for TypeScript
|
|
3
|
+
* Provides optimized methods for common boolean operations and conversions
|
|
4
|
+
*/
|
|
5
|
+
import type { BooleanConvertible, ComparatorCondition, ComparatorOperator, StrictBoolean } from './types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Checks if a value is a boolean (strict type guard)
|
|
8
|
+
* @param value - The value to check
|
|
9
|
+
* @returns True if value is exactly true or false
|
|
10
|
+
* @example
|
|
11
|
+
* isBoolean(true) // true
|
|
12
|
+
* isBoolean(false) // true
|
|
13
|
+
* isBoolean(1) // false
|
|
14
|
+
* isBoolean("true") // false
|
|
15
|
+
*/
|
|
16
|
+
export declare const isBoolean: (value: unknown) => value is boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Checks if a value is a boolean or boolean-like
|
|
19
|
+
* Accepts 0, 1, "true", "false", "0", "1" as boolean-like
|
|
20
|
+
* @param value - The value to check
|
|
21
|
+
* @returns True if value is boolean or boolean-like
|
|
22
|
+
* @example
|
|
23
|
+
* isBooleanLike(true) // true
|
|
24
|
+
* isBooleanLike(1) // true
|
|
25
|
+
* isBooleanLike("true") // true
|
|
26
|
+
* isBooleanLike("yes") // false
|
|
27
|
+
*/
|
|
28
|
+
export declare const isBooleanLike: (value: BooleanConvertible) => value is StrictBoolean;
|
|
29
|
+
/**
|
|
30
|
+
* Converts any value to boolean with various strategies
|
|
31
|
+
* @param value - The value to convert
|
|
32
|
+
* @param strategy - Conversion strategy (default: 'strict')
|
|
33
|
+
* - 'strict': Only true/false, 1/0, "true"/"false", "1"/"0" are converted
|
|
34
|
+
* - 'truthy': JavaScript truthy values become true
|
|
35
|
+
* - 'falsy': JavaScript falsy values become false
|
|
36
|
+
* - 'string': Parse string representations strictly
|
|
37
|
+
* - 'number': Parse number representations strictly
|
|
38
|
+
* @returns Converted boolean
|
|
39
|
+
* @throws {Error} If value cannot be converted with strict strategy
|
|
40
|
+
* @example
|
|
41
|
+
* toBoolean("true") // true
|
|
42
|
+
* toBoolean(1) // true
|
|
43
|
+
* toBoolean("yes", "strict") // throws Error
|
|
44
|
+
* toBoolean("yes", "truthy") // true (non-empty string is truthy)
|
|
45
|
+
*/
|
|
46
|
+
export declare const toBoolean: (value: unknown, strategy?: "strict" | "truthy" | "falsy" | "string" | "number", debug?: boolean) => boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Safely converts any value to boolean with fallback
|
|
49
|
+
* @param value - The value to convert
|
|
50
|
+
* @param fallback - Fallback value if conversion fails (default: false)
|
|
51
|
+
* @returns Converted boolean or fallback
|
|
52
|
+
* @example
|
|
53
|
+
* safeToBoolean("true") // true
|
|
54
|
+
* safeToBoolean("invalid", true) // true (fallback)
|
|
55
|
+
* safeToBoolean(null, false) // false
|
|
56
|
+
*/
|
|
57
|
+
export declare const safeToBoolean: <T = boolean>(value: unknown, fallback?: T) => boolean | T;
|
|
58
|
+
/**
|
|
59
|
+
* Checks if all values are truthy (logical AND)
|
|
60
|
+
* @param values - Array of values to check
|
|
61
|
+
* @returns True if all values are truthy
|
|
62
|
+
* @example
|
|
63
|
+
* all([true, 1, "hello"]) // true
|
|
64
|
+
* all([true, false]) // false
|
|
65
|
+
*/
|
|
66
|
+
export declare const all: (values: unknown[]) => boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Checks if any value is truthy (logical OR)
|
|
69
|
+
* @param values - Array of values to check
|
|
70
|
+
* @returns True if any value is truthy
|
|
71
|
+
* @example
|
|
72
|
+
* any([false, 0, "hello"]) // true
|
|
73
|
+
* any([false, 0, ""]) // false
|
|
74
|
+
*/
|
|
75
|
+
export declare const any: (values: unknown[]) => boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Checks if no values are truthy (logical NOR)
|
|
78
|
+
* @param values - Array of values to check
|
|
79
|
+
* @returns True if no values are truthy
|
|
80
|
+
* @example
|
|
81
|
+
* none([false, 0, ""]) // true
|
|
82
|
+
* none([false, true]) // false
|
|
83
|
+
*/
|
|
84
|
+
export declare const none: (values: unknown[]) => boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Logical NOT operation
|
|
87
|
+
* @param value - The value to negate
|
|
88
|
+
* @returns Negated boolean value
|
|
89
|
+
* @example
|
|
90
|
+
* not(true) // false
|
|
91
|
+
* not(false) // true
|
|
92
|
+
* not(1) // false (truthy becomes false)
|
|
93
|
+
*/
|
|
94
|
+
export declare const not: (value: unknown) => boolean;
|
|
95
|
+
/**
|
|
96
|
+
* Logical XOR operation (exclusive OR)
|
|
97
|
+
* Returns true if exactly one of the values is truthy
|
|
98
|
+
* @param values - Array of values to check
|
|
99
|
+
* @returns True if exactly one value is truthy
|
|
100
|
+
* @example
|
|
101
|
+
* xor([true, false]) // true
|
|
102
|
+
* xor([true, true]) // false
|
|
103
|
+
* xor([false, false]) // false
|
|
104
|
+
*/
|
|
105
|
+
export declare const xor: (values: unknown[]) => boolean;
|
|
106
|
+
/**
|
|
107
|
+
* Logical NAND operation (NOT AND)
|
|
108
|
+
* Returns true unless all values are truthy
|
|
109
|
+
* @param values - Array of values to check
|
|
110
|
+
* @returns True unless all values are truthy
|
|
111
|
+
* @example
|
|
112
|
+
* nand([true, true]) // false
|
|
113
|
+
* nand([true, false]) // true
|
|
114
|
+
*/
|
|
115
|
+
export declare const nand: (values: unknown[]) => boolean;
|
|
116
|
+
/**
|
|
117
|
+
* Logical NOR operation (NOT OR)
|
|
118
|
+
* Returns true only if all values are falsy
|
|
119
|
+
* @param values - Array of values to check
|
|
120
|
+
* @returns True only if all values are falsy
|
|
121
|
+
* @example
|
|
122
|
+
* nor([false, false]) // true
|
|
123
|
+
* nor([false, true]) // false
|
|
124
|
+
*/
|
|
125
|
+
export declare const nor: (values: unknown[]) => boolean;
|
|
126
|
+
/**
|
|
127
|
+
* Logical XNOR operation (equivalence)
|
|
128
|
+
* Returns true if all values are the same truthiness
|
|
129
|
+
* @param values - Array of values to check
|
|
130
|
+
* @returns True if all values have same truthiness
|
|
131
|
+
* @example
|
|
132
|
+
* xnor([true, true]) // true
|
|
133
|
+
* xnor([true, false]) // false
|
|
134
|
+
* xnor([false, false, false]) // true
|
|
135
|
+
*/
|
|
136
|
+
export declare const xnor: (values: unknown[]) => boolean;
|
|
137
|
+
/**
|
|
138
|
+
* Counts truthy values in an array
|
|
139
|
+
* @param values - Array of values to count
|
|
140
|
+
* @returns Number of truthy values
|
|
141
|
+
* @example
|
|
142
|
+
* countTruthy([true, false, 1, 0, "hello"]) // 3
|
|
143
|
+
*/
|
|
144
|
+
export declare const countTruthy: (values: unknown[]) => number;
|
|
145
|
+
/**
|
|
146
|
+
* Counts falsy values in an array
|
|
147
|
+
* @param values - Array of values to count
|
|
148
|
+
* @returns Number of falsy values
|
|
149
|
+
* @example
|
|
150
|
+
* countFalsy([true, false, 0, "", null]) // 3
|
|
151
|
+
*/
|
|
152
|
+
export declare const countFalsy: (values: unknown[]) => number;
|
|
153
|
+
/**
|
|
154
|
+
* Creates a boolean toggle function
|
|
155
|
+
* @param initialState - Initial state (default: false)
|
|
156
|
+
* @returns Function that toggles and returns current state
|
|
157
|
+
* @example
|
|
158
|
+
* const toggle = createToggle();
|
|
159
|
+
* toggle() // true
|
|
160
|
+
* toggle() // false
|
|
161
|
+
* toggle() // true
|
|
162
|
+
*/
|
|
163
|
+
export declare const createToggle: (initialState?: boolean) => (() => boolean);
|
|
164
|
+
/**
|
|
165
|
+
* Compares two values with various comparison operators
|
|
166
|
+
* @param a - First value
|
|
167
|
+
* @param b - Second value
|
|
168
|
+
* @param operator - Comparison operator
|
|
169
|
+
* @returns Result of comparison
|
|
170
|
+
* @example
|
|
171
|
+
* compare(5, 3, '>') // true
|
|
172
|
+
* compare(5, 5, '===') // false (different types)
|
|
173
|
+
* compare(5, '5', '==') // true
|
|
174
|
+
*/
|
|
175
|
+
export declare const compare: (a: unknown, b: unknown, operator?: ComparatorOperator) => boolean;
|
|
176
|
+
/**
|
|
177
|
+
* Creates a boolean condition checker with multiple comparisons
|
|
178
|
+
* @param value - The value to check
|
|
179
|
+
* @param checks - Array of comparison checks
|
|
180
|
+
* @returns True if all checks pass
|
|
181
|
+
* @example
|
|
182
|
+
* checkConditions(5, [
|
|
183
|
+
* { operator: '>', value: 0 },
|
|
184
|
+
* { operator: '<', value: 10 }
|
|
185
|
+
* ]) // true
|
|
186
|
+
*/
|
|
187
|
+
export declare const checkConditions: (value: unknown, checks: Array<ComparatorCondition>) => boolean;
|
|
188
|
+
/**
|
|
189
|
+
* Validates that a value is within a boolean constraint
|
|
190
|
+
* @param value - The value to validate
|
|
191
|
+
* @param constraint - Constraint type
|
|
192
|
+
* @returns True if value meets constraint
|
|
193
|
+
* @example
|
|
194
|
+
* validateBooleanConstraint(true, 'required') // true
|
|
195
|
+
* validateBooleanConstraint(false, 'required') // false
|
|
196
|
+
* validateBooleanConstraint(undefined, 'optional') // true
|
|
197
|
+
*/
|
|
198
|
+
export declare const validateBooleanConstraint: (value: unknown, constraint: "required" | "optional" | "true" | "false" | "truthy" | "falsy") => boolean;
|
|
199
|
+
/**
|
|
200
|
+
* Generates random boolean value
|
|
201
|
+
* @param probability - Probability of returning true (0 to 1, default: 0.5)
|
|
202
|
+
* @returns Random boolean
|
|
203
|
+
* @example
|
|
204
|
+
* randomBoolean() // true or false with 50% probability
|
|
205
|
+
* randomBoolean(0.8) // true 80% of the time
|
|
206
|
+
*/
|
|
207
|
+
export declare const randomBoolean: (probability?: number) => boolean;
|
|
208
|
+
/**
|
|
209
|
+
* Debounces a boolean function
|
|
210
|
+
* @param fn - Function that returns boolean
|
|
211
|
+
* @param delay - Debounce delay in ms
|
|
212
|
+
* @returns Debounced function
|
|
213
|
+
*/
|
|
214
|
+
export declare const debounceBoolean: (fn: (...args: any[]) => boolean, delay: number) => ((...args: any[]) => boolean);
|
|
215
|
+
/**
|
|
216
|
+
* Memoizes a boolean function
|
|
217
|
+
* @param fn - Function that returns boolean
|
|
218
|
+
* @returns Memoized function
|
|
219
|
+
*/
|
|
220
|
+
export declare const memoizeBoolean: <T extends (...args: any[]) => boolean>(fn: T) => T;
|
|
221
|
+
/**
|
|
222
|
+
* Creates a boolean pipeline (function composition)
|
|
223
|
+
* @param functions - Array of functions that return boolean
|
|
224
|
+
* @returns Function that applies all functions with AND logic
|
|
225
|
+
* @example
|
|
226
|
+
* const pipeline = createPipeline([
|
|
227
|
+
* (x) => x > 0,
|
|
228
|
+
* (x) => x < 10,
|
|
229
|
+
* (x) => x % 2 === 0
|
|
230
|
+
* ]);
|
|
231
|
+
* pipeline(4) // true
|
|
232
|
+
* pipeline(5) // false
|
|
233
|
+
*/
|
|
234
|
+
export declare const createPipeline: (functions: Array<(value: any) => boolean>) => ((value: any) => boolean);
|
|
235
|
+
/**
|
|
236
|
+
* Type guard for boolean array
|
|
237
|
+
* @param value - Value to check
|
|
238
|
+
* @returns True if value is a boolean array
|
|
239
|
+
*/
|
|
240
|
+
export declare const isBooleanArray: (value: unknown) => value is boolean[];
|
|
241
|
+
/**
|
|
242
|
+
* Type guard for boolean-like array
|
|
243
|
+
* @param value - Value to check
|
|
244
|
+
* @returns True if value is a boolean-like array
|
|
245
|
+
*/
|
|
246
|
+
export declare const isBooleanLikeArray: (value: unknown) => value is StrictBoolean[];
|
|
247
|
+
type ValueType = string | boolean | undefined;
|
|
248
|
+
export declare const compareBoolean: <K extends ValueType>(value: K, newValue: K) => boolean;
|
|
249
|
+
declare const _default: {
|
|
250
|
+
isBoolean: (value: unknown) => value is boolean;
|
|
251
|
+
isBooleanLike: (value: BooleanConvertible) => value is StrictBoolean;
|
|
252
|
+
toBoolean: (value: unknown, strategy?: "strict" | "truthy" | "falsy" | "string" | "number", debug?: boolean) => boolean;
|
|
253
|
+
safeToBoolean: <T = boolean>(value: unknown, fallback?: T) => boolean | T;
|
|
254
|
+
all: (values: unknown[]) => boolean;
|
|
255
|
+
any: (values: unknown[]) => boolean;
|
|
256
|
+
none: (values: unknown[]) => boolean;
|
|
257
|
+
not: (value: unknown) => boolean;
|
|
258
|
+
xor: (values: unknown[]) => boolean;
|
|
259
|
+
nand: (values: unknown[]) => boolean;
|
|
260
|
+
nor: (values: unknown[]) => boolean;
|
|
261
|
+
xnor: (values: unknown[]) => boolean;
|
|
262
|
+
countTruthy: (values: unknown[]) => number;
|
|
263
|
+
countFalsy: (values: unknown[]) => number;
|
|
264
|
+
createToggle: (initialState?: boolean) => (() => boolean);
|
|
265
|
+
compare: (a: unknown, b: unknown, operator?: ComparatorOperator) => boolean;
|
|
266
|
+
checkConditions: (value: unknown, checks: Array<ComparatorCondition>) => boolean;
|
|
267
|
+
validateBooleanConstraint: (value: unknown, constraint: "required" | "optional" | "true" | "false" | "truthy" | "falsy") => boolean;
|
|
268
|
+
randomBoolean: (probability?: number) => boolean;
|
|
269
|
+
debounceBoolean: (fn: (...args: any[]) => boolean, delay: number) => ((...args: any[]) => boolean);
|
|
270
|
+
memoizeBoolean: <T extends (...args: any[]) => boolean>(fn: T) => T;
|
|
271
|
+
createPipeline: (functions: Array<(value: any) => boolean>) => ((value: any) => boolean);
|
|
272
|
+
isBooleanArray: (value: unknown) => value is boolean[];
|
|
273
|
+
isBooleanLikeArray: (value: unknown) => value is StrictBoolean[];
|
|
274
|
+
};
|
|
275
|
+
export default _default;
|
|
276
|
+
//# sourceMappingURL=boolean.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"boolean.d.ts","sourceRoot":"","sources":["../../../../src/lib/primitive/boolean/boolean.ts"],"names":[],"mappings":"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"}
|