@duplojs/utils 1.0.2 → 1.0.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/pattern/types/complexMatchedValue/object.d.ts +2 -1
- package/dist/string/index.cjs +2 -0
- package/dist/string/index.d.ts +1 -0
- package/dist/string/index.mjs +1 -0
- package/dist/string/isIn.cjs +12 -0
- package/dist/string/isIn.d.ts +2 -0
- package/dist/string/isIn.mjs +10 -0
- package/package.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type Adaptor, type SimplifyTopLevel, type IsEqual } from "../../../common";
|
|
2
2
|
import { type ComplexMatchedValue } from ".";
|
|
3
|
+
import { type GetPropsWithValue } from "../../../object";
|
|
3
4
|
export type ComplexMatchedObject<GenericInput extends unknown, GenericPatternValue extends unknown> = ([
|
|
4
5
|
Exclude<Extract<GenericInput, object>, readonly any[]>,
|
|
5
6
|
Exclude<Extract<GenericPatternValue, object>, readonly any[]>
|
|
@@ -8,4 +9,4 @@ export type ComplexMatchedObject<GenericInput extends unknown, GenericPatternVal
|
|
|
8
9
|
infer InferredPatternValue
|
|
9
10
|
] ? InferredInput extends any ? InferredPatternValue extends any ? Extract<InferredInput, InferredPatternValue> extends infer InferredObviousMatchedValue ? IsEqual<InferredObviousMatchedValue, never> extends false ? InferredObviousMatchedValue : IsEqual<Extract<keyof InferredInput, keyof InferredPatternValue>, keyof InferredPatternValue> extends false ? never : SimplifyTopLevel<Omit<InferredInput, keyof InferredPatternValue> & {
|
|
10
11
|
-readonly [Prop in keyof InferredPatternValue]: Extract<ComplexMatchedValue<InferredInput[Adaptor<Prop, keyof InferredInput>], InferredPatternValue[Prop]>, any>;
|
|
11
|
-
}> extends infer InferredResult ? Extract<InferredResult, any> extends InferredInput ? IsEqual<InferredResult, InferredInput> extends true ? InferredInput : InferredResult : never : never : never : never : never : never);
|
|
12
|
+
}> extends infer InferredResult extends object ? Extract<InferredResult, any> extends InferredInput ? IsEqual<InferredResult, InferredInput> extends true ? InferredInput : IsEqual<GetPropsWithValue<Pick<InferredResult, Adaptor<keyof InferredPatternValue, keyof InferredResult>>, never>, never> extends true ? InferredResult : never : never : never : never : never : never : never);
|
package/dist/string/index.cjs
CHANGED
|
@@ -31,6 +31,7 @@ var lastIndexOf = require('./lastIndexOf.cjs');
|
|
|
31
31
|
var repeat = require('./repeat.cjs');
|
|
32
32
|
var normalize = require('./normalize.cjs');
|
|
33
33
|
var test = require('./test.cjs');
|
|
34
|
+
var isIn = require('./isIn.cjs');
|
|
34
35
|
|
|
35
36
|
|
|
36
37
|
|
|
@@ -65,3 +66,4 @@ exports.lastIndexOf = lastIndexOf.lastIndexOf;
|
|
|
65
66
|
exports.repeat = repeat.repeat;
|
|
66
67
|
exports.normalize = normalize.normalize;
|
|
67
68
|
exports.test = test.test;
|
|
69
|
+
exports.isIn = isIn.isIn;
|
package/dist/string/index.d.ts
CHANGED
package/dist/string/index.mjs
CHANGED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare function isIn<GenericInput extends string, GenericValue extends string>(array: readonly GenericValue[]): (input: GenericInput) => input is Extract<GenericInput, GenericValue>;
|
|
2
|
+
export declare function isIn<GenericInput extends string, GenericValue extends string>(input: GenericInput, array: readonly GenericValue[]): input is Extract<GenericInput, GenericValue>;
|