effect-app 1.31.0 → 2.0.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 +17 -0
- package/_cjs/Array.cjs +132 -0
- package/_cjs/Array.cjs.map +1 -0
- package/_cjs/Chunk.cjs +128 -0
- package/_cjs/Chunk.cjs.map +1 -0
- package/_cjs/Config/SecretURL.cjs +3 -3
- package/_cjs/Config/SecretURL.cjs.map +1 -1
- package/_cjs/Config/internal/configSecretURL.cjs +2 -2
- package/_cjs/Config/internal/configSecretURL.cjs.map +1 -1
- package/_cjs/Context.cjs +243 -0
- package/_cjs/Context.cjs.map +1 -0
- package/_cjs/Dictionary.cjs +522 -0
- package/_cjs/Dictionary.cjs.map +1 -0
- package/_cjs/Effect.cjs +202 -0
- package/_cjs/Effect.cjs.map +1 -0
- package/_cjs/Function.cjs +107 -0
- package/_cjs/Function.cjs.map +1 -0
- package/_cjs/NonEmptySet.cjs +26 -0
- package/_cjs/NonEmptySet.cjs.map +1 -0
- package/_cjs/NonEmptySetAspects.cjs +17 -0
- package/_cjs/NonEmptySetAspects.cjs.map +1 -0
- package/_cjs/NonEmptySetBase.cjs +82 -0
- package/_cjs/NonEmptySetBase.cjs.map +1 -0
- package/_cjs/Object.cjs +24 -0
- package/_cjs/Object.cjs.map +1 -0
- package/_cjs/Operations.cjs +1 -1
- package/_cjs/Option.cjs +88 -0
- package/_cjs/Option.cjs.map +1 -0
- package/_cjs/Prelude.cjs +51 -0
- package/_cjs/Prelude.cjs.map +1 -0
- package/_cjs/Prelude.code.cjs +51 -0
- package/_cjs/Prelude.code.cjs.map +1 -0
- package/_cjs/Pure.cjs +39 -36
- package/_cjs/Pure.cjs.map +1 -1
- package/_cjs/Schema/Class.cjs +61 -0
- package/_cjs/Schema/Class.cjs.map +1 -0
- package/_cjs/Schema/FastCheck.cjs +39 -0
- package/_cjs/Schema/FastCheck.cjs.map +1 -0
- package/_cjs/Schema/Methods.cjs +6 -0
- package/_cjs/Schema/Methods.cjs.map +1 -0
- package/_cjs/Schema/brand.cjs +17 -0
- package/_cjs/Schema/brand.cjs.map +1 -0
- package/_cjs/Schema/email.cjs +20 -0
- package/_cjs/Schema/email.cjs.map +1 -0
- package/_cjs/Schema/ext.cjs +174 -0
- package/_cjs/Schema/ext.cjs.map +1 -0
- package/_cjs/Schema/moreStrings.cjs +124 -0
- package/_cjs/Schema/moreStrings.cjs.map +1 -0
- package/_cjs/Schema/numbers.cjs +52 -0
- package/_cjs/Schema/numbers.cjs.map +1 -0
- package/_cjs/Schema/phoneNumber.cjs +22 -0
- package/_cjs/Schema/phoneNumber.cjs.map +1 -0
- package/_cjs/Schema/schema.cjs +15 -0
- package/_cjs/Schema/schema.cjs.map +1 -0
- package/_cjs/Schema/strings.cjs +32 -0
- package/_cjs/Schema/strings.cjs.map +1 -0
- package/_cjs/Schema.cjs +334 -0
- package/_cjs/Schema.cjs.map +1 -0
- package/_cjs/Set.cjs +567 -0
- package/_cjs/Set.cjs.map +1 -0
- package/_cjs/Struct.cjs +51 -0
- package/_cjs/Struct.cjs.map +1 -0
- package/_cjs/Tag.cjs +25 -0
- package/_cjs/Tag.cjs.map +1 -0
- package/_cjs/Unify.cjs +40 -0
- package/_cjs/Unify.cjs.map +1 -0
- package/_cjs/_ext/misc.cjs +16 -16
- package/_cjs/_ext/misc.cjs.map +1 -1
- package/_cjs/_ext/ord.ext.cjs +52 -0
- package/_cjs/_ext/ord.ext.cjs.map +1 -0
- package/_cjs/builtin.cjs +6 -0
- package/_cjs/builtin.cjs.map +1 -0
- package/_cjs/client/clientFor.cjs +5 -3
- package/_cjs/client/clientFor.cjs.map +1 -1
- package/_cjs/client/config.cjs +4 -4
- package/_cjs/client/config.cjs.map +1 -1
- package/_cjs/client/errors.cjs +9 -9
- package/_cjs/client/errors.cjs.map +1 -1
- package/_cjs/http/http-client.cjs +35 -0
- package/_cjs/http/http-client.cjs.map +1 -0
- package/_cjs/ids.cjs +5 -5
- package/_cjs/ids.cjs.map +1 -1
- package/_cjs/index.cjs +1 -1
- package/_cjs/lib.cjs +178 -9
- package/_cjs/lib.cjs.map +1 -1
- package/_cjs/logger.cjs +1 -1
- package/_cjs/transform.cjs +45 -0
- package/_cjs/transform.cjs.map +1 -0
- package/_cjs/utils/effectify.cjs +25 -0
- package/_cjs/utils/effectify.cjs.map +1 -0
- package/_cjs/utils/extend.cjs +17 -0
- package/_cjs/utils/extend.cjs.map +1 -0
- package/_cjs/utils/logger.cjs +23 -0
- package/_cjs/utils/logger.cjs.map +1 -0
- package/_cjs/utils.cjs +431 -4
- package/_cjs/utils.cjs.map +1 -1
- package/_cjs/validation/validators.cjs +32 -0
- package/_cjs/validation/validators.cjs.map +1 -0
- package/_cjs/validation.cjs +45 -0
- package/_cjs/validation.cjs.map +1 -0
- package/dist/Array.d.ts +64 -0
- package/dist/Array.d.ts.map +1 -0
- package/dist/Array.js +89 -0
- package/dist/Chunk.d.ts +68 -0
- package/dist/Chunk.d.ts.map +1 -0
- package/dist/Chunk.js +93 -0
- package/dist/Config/SecretURL.d.ts +3 -3
- package/dist/Config/SecretURL.d.ts.map +1 -1
- package/dist/Config/SecretURL.js +2 -2
- package/dist/Config/internal/configSecretURL.js +2 -2
- package/dist/Context.d.ts +55 -0
- package/dist/Context.d.ts.map +1 -0
- package/dist/Context.js +204 -0
- package/dist/Dictionary.d.ts +260 -0
- package/dist/Dictionary.d.ts.map +1 -0
- package/dist/Dictionary.js +448 -0
- package/dist/Effect.d.ts +115 -0
- package/dist/Effect.d.ts.map +1 -0
- package/dist/Effect.js +153 -0
- package/dist/Function.d.ts +72 -0
- package/dist/Function.d.ts.map +1 -0
- package/dist/Function.js +71 -0
- package/dist/Inputify.type.d.ts +1 -1
- package/dist/Inputify.type.d.ts.map +1 -1
- package/dist/NonEmptySet.d.ts +3 -0
- package/dist/NonEmptySet.d.ts.map +1 -0
- package/dist/NonEmptySet.js +3 -0
- package/dist/NonEmptySetAspects.d.ts +2 -0
- package/dist/NonEmptySetAspects.d.ts.map +1 -0
- package/dist/NonEmptySetAspects.js +2 -0
- package/dist/NonEmptySetBase.d.ts +39 -0
- package/dist/NonEmptySetBase.d.ts.map +1 -0
- package/dist/NonEmptySetBase.js +63 -0
- package/dist/Object.d.ts +7 -0
- package/dist/Object.d.ts.map +1 -0
- package/dist/Object.js +7 -0
- package/dist/Operations.d.ts +2 -2
- package/dist/Operations.js +1 -1
- package/dist/Option.d.ts +39 -0
- package/dist/Option.d.ts.map +1 -0
- package/dist/Option.js +55 -0
- package/dist/Prelude.code.d.ts +24 -0
- package/dist/Prelude.code.d.ts.map +1 -0
- package/dist/Prelude.code.js +23 -0
- package/dist/Prelude.d.ts +163 -0
- package/dist/Prelude.d.ts.map +1 -0
- package/dist/Prelude.js +23 -0
- package/dist/Pure.d.ts +13 -12
- package/dist/Pure.d.ts.map +1 -1
- package/dist/Pure.js +18 -17
- package/dist/Schema/Class.d.ts +45 -0
- package/dist/Schema/Class.d.ts.map +1 -0
- package/dist/Schema/Class.js +50 -0
- package/dist/Schema/FastCheck.d.ts +10 -0
- package/dist/Schema/FastCheck.d.ts.map +1 -0
- package/dist/Schema/FastCheck.js +12 -0
- package/dist/Schema/Methods.d.ts +6 -0
- package/dist/Schema/Methods.d.ts.map +1 -0
- package/dist/Schema/Methods.js +2 -0
- package/dist/Schema/brand.d.ts +35 -0
- package/dist/Schema/brand.d.ts.map +1 -0
- package/dist/Schema/brand.js +7 -0
- package/dist/Schema/email.d.ts +9 -0
- package/dist/Schema/email.d.ts.map +1 -0
- package/dist/Schema/email.js +12 -0
- package/dist/Schema/ext.d.ts +89 -0
- package/dist/Schema/ext.d.ts.map +1 -0
- package/dist/Schema/ext.js +111 -0
- package/dist/Schema/moreStrings.d.ts +109 -0
- package/dist/Schema/moreStrings.d.ts.map +1 -0
- package/dist/Schema/moreStrings.js +108 -0
- package/dist/Schema/numbers.d.ts +46 -0
- package/dist/Schema/numbers.d.ts.map +1 -0
- package/dist/Schema/numbers.js +28 -0
- package/dist/Schema/phoneNumber.d.ts +9 -0
- package/dist/Schema/phoneNumber.d.ts.map +1 -0
- package/dist/Schema/phoneNumber.js +14 -0
- package/dist/Schema/schema.d.ts +6 -0
- package/dist/Schema/schema.d.ts.map +1 -0
- package/dist/Schema/schema.js +5 -0
- package/dist/Schema/strings.d.ts +19 -0
- package/dist/Schema/strings.d.ts.map +1 -0
- package/dist/Schema/strings.js +32 -0
- package/dist/{schema.d.ts → Schema.d.ts} +25 -9
- package/dist/Schema.d.ts.map +1 -0
- package/dist/Schema.js +89 -0
- package/dist/Set.d.ts +221 -0
- package/dist/Set.d.ts.map +1 -0
- package/dist/Set.js +516 -0
- package/dist/Struct.d.ts +44 -0
- package/dist/Struct.d.ts.map +1 -0
- package/dist/Struct.js +29 -0
- package/dist/Tag.d.ts +9 -0
- package/dist/Tag.d.ts.map +1 -0
- package/dist/Tag.js +18 -0
- package/dist/Unify.d.ts +43 -0
- package/dist/Unify.d.ts.map +1 -0
- package/dist/Unify.js +31 -0
- package/dist/Widen.type.d.ts +1 -1
- package/dist/Widen.type.d.ts.map +1 -1
- package/dist/_ext/misc.d.ts +11 -11
- package/dist/_ext/misc.d.ts.map +1 -1
- package/dist/_ext/misc.js +8 -8
- package/dist/_ext/ord.ext.d.ts +23 -0
- package/dist/_ext/ord.ext.d.ts.map +1 -0
- package/dist/_ext/ord.ext.js +44 -0
- package/dist/builtin.d.ts +51 -0
- package/dist/builtin.d.ts.map +1 -0
- package/dist/builtin.js +2 -0
- package/dist/client/clientFor.d.ts +1 -1
- package/dist/client/clientFor.d.ts.map +1 -1
- package/dist/client/clientFor.js +2 -2
- package/dist/client/config.d.ts +1 -1
- package/dist/client/config.d.ts.map +1 -1
- package/dist/client/config.js +2 -2
- package/dist/client/errors.js +1 -1
- package/dist/http/http-client.d.ts +43 -0
- package/dist/http/http-client.d.ts.map +1 -0
- package/dist/http/http-client.js +30 -0
- package/dist/ids.d.ts +3 -3
- package/dist/ids.d.ts.map +1 -1
- package/dist/ids.js +2 -2
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/lib.d.ts +22 -4
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +20 -5
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +2 -2
- package/dist/transform.d.ts +12 -0
- package/dist/transform.d.ts.map +1 -0
- package/dist/transform.js +39 -0
- package/dist/utils/effectify.d.ts +210 -0
- package/dist/utils/effectify.d.ts.map +1 -0
- package/dist/utils/effectify.js +19 -0
- package/dist/utils/extend.d.ts +3 -0
- package/dist/utils/extend.d.ts.map +1 -0
- package/dist/utils/extend.js +9 -0
- package/dist/utils/logger.d.ts +12 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +15 -0
- package/dist/utils.d.ts +192 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +332 -2
- package/dist/validation/validators.d.ts +11 -0
- package/dist/validation/validators.d.ts.map +1 -0
- package/dist/validation/validators.js +26 -0
- package/dist/validation.d.ts +13 -0
- package/dist/validation.d.ts.map +1 -0
- package/dist/validation.js +14 -0
- package/package.json +360 -10
- package/src/Array.ts +127 -0
- package/src/Chunk.ts +112 -0
- package/src/Config/SecretURL.ts +3 -3
- package/src/Config/internal/configSecretURL.ts +1 -1
- package/src/Context.ts +293 -0
- package/src/Dictionary.ts +669 -0
- package/src/Effect.ts +265 -0
- package/src/Function.ts +175 -0
- package/src/Inputify.type.ts +1 -1
- package/src/NonEmptySet.ts +3 -0
- package/src/NonEmptySetAspects.ts +1 -0
- package/src/NonEmptySetBase.ts +109 -0
- package/src/Object.ts +19 -0
- package/src/Operations.ts +1 -1
- package/src/Option.ts +82 -0
- package/src/Prelude.code.ts +26 -0
- package/src/Prelude.ts +220 -0
- package/src/Pure.ts +37 -30
- package/src/Schema/Class.ts +225 -0
- package/src/Schema/FastCheck.ts +23 -0
- package/src/Schema/Methods.ts +8 -0
- package/src/Schema/brand.ts +50 -0
- package/src/Schema/email.ts +22 -0
- package/src/Schema/ext.ts +273 -0
- package/src/Schema/moreStrings.ts +260 -0
- package/src/Schema/numbers.ts +83 -0
- package/src/Schema/phoneNumber.ts +24 -0
- package/src/Schema/schema.ts +6 -0
- package/src/Schema/strings.ts +60 -0
- package/src/{schema.ts → Schema.ts} +52 -20
- package/src/Set.ts +674 -0
- package/src/Struct.ts +54 -0
- package/src/Tag.ts +20 -0
- package/src/Unify.ts +56 -0
- package/src/Widen.type.ts +1 -1
- package/src/_ext/misc.ts +22 -22
- package/src/_ext/ord.ext.ts +49 -0
- package/src/builtin.ts +64 -0
- package/src/client/clientFor.ts +1 -1
- package/src/client/config.ts +1 -1
- package/src/client/errors.ts +1 -1
- package/src/http/http-client.ts +73 -0
- package/src/ids.ts +3 -3
- package/src/index.ts +1 -1
- package/src/lib.ts +88 -4
- package/src/logger.ts +1 -1
- package/src/transform.ts +80 -0
- package/src/utils/effectify.ts +259 -0
- package/src/utils/extend.ts +9 -0
- package/src/utils/logger.ts +24 -0
- package/src/utils.ts +805 -1
- package/src/validation/validators.ts +32 -0
- package/src/validation.ts +18 -0
- package/tsconfig.src.json +1 -8
- package/_cjs/schema.cjs +0 -110
- package/_cjs/schema.cjs.map +0 -1
- package/dist/schema.d.ts.map +0 -1
- package/dist/schema.js +0 -73
package/dist/utils.d.ts
CHANGED
|
@@ -1,2 +1,193 @@
|
|
|
1
|
-
|
|
1
|
+
import { Effect, Option } from "effect";
|
|
2
|
+
import * as Either from "effect/Either";
|
|
3
|
+
import type { GetFieldType, NumericDictionary, PropertyPath } from "lodash";
|
|
4
|
+
import type { Dictionary } from "./Dictionary.js";
|
|
5
|
+
export * from "./utils/effectify.js";
|
|
6
|
+
export * from "./utils/extend.js";
|
|
7
|
+
export * from "./utils/logger.js";
|
|
8
|
+
export declare const cloneTrait: unique symbol;
|
|
9
|
+
export interface Clone {
|
|
10
|
+
[cloneTrait](this: this, that: any): this;
|
|
11
|
+
}
|
|
12
|
+
declare function get<TObject extends object, TKey extends keyof TObject>(object: TObject, path: TKey | [TKey]): TObject[TKey];
|
|
13
|
+
declare function get<TObject extends object, TKey extends keyof TObject>(object: TObject | null | undefined, path: TKey | [TKey]): TObject[TKey] | undefined;
|
|
14
|
+
declare function get<TObject extends object, TKey extends keyof TObject, TDefault>(object: TObject | null | undefined, path: TKey | [TKey], defaultValue: TDefault): Exclude<TObject[TKey], undefined> | TDefault;
|
|
15
|
+
declare function get<TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(object: TObject, path: [TKey1, TKey2]): TObject[TKey1][TKey2];
|
|
16
|
+
declare function get<TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1]>(object: TObject | null | undefined, path: [TKey1, TKey2]): TObject[TKey1][TKey2] | undefined;
|
|
17
|
+
declare function get<TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TDefault>(object: TObject | null | undefined, path: [TKey1, TKey2], defaultValue: TDefault): Exclude<TObject[TKey1][TKey2], undefined> | TDefault;
|
|
18
|
+
declare function get<TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(object: TObject, path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3];
|
|
19
|
+
declare function get<TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2]>(object: TObject | null | undefined, path: [TKey1, TKey2, TKey3]): TObject[TKey1][TKey2][TKey3] | undefined;
|
|
20
|
+
declare function get<TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TDefault>(object: TObject | null | undefined, path: [TKey1, TKey2, TKey3], defaultValue: TDefault): Exclude<TObject[TKey1][TKey2][TKey3], undefined> | TDefault;
|
|
21
|
+
declare function get<TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(object: TObject, path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4];
|
|
22
|
+
declare function get<TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3]>(object: TObject | null | undefined, path: [TKey1, TKey2, TKey3, TKey4]): TObject[TKey1][TKey2][TKey3][TKey4] | undefined;
|
|
23
|
+
declare function get<TObject extends object, TKey1 extends keyof TObject, TKey2 extends keyof TObject[TKey1], TKey3 extends keyof TObject[TKey1][TKey2], TKey4 extends keyof TObject[TKey1][TKey2][TKey3], TDefault>(object: TObject | null | undefined, path: [TKey1, TKey2, TKey3, TKey4], defaultValue: TDefault): Exclude<TObject[TKey1][TKey2][TKey3][TKey4], undefined> | TDefault;
|
|
24
|
+
declare function get<T>(object: NumericDictionary<T>, path: number): T;
|
|
25
|
+
declare function get<T>(object: NumericDictionary<T> | null | undefined, path: number): T | undefined;
|
|
26
|
+
declare function get<T, TDefault>(object: NumericDictionary<T> | null | undefined, path: number, defaultValue: TDefault): T | TDefault;
|
|
27
|
+
declare function get<TDefault>(object: null | undefined, path: PropertyPath, defaultValue: TDefault): TDefault;
|
|
28
|
+
declare function get(object: null | undefined, path: PropertyPath): undefined;
|
|
29
|
+
declare function get<TObject, TPath extends string>(data: TObject, path: TPath): string extends TPath ? any : GetFieldType<TObject, TPath>;
|
|
30
|
+
declare function get<TObject, TPath extends string, TDefault = GetFieldType<TObject, TPath>>(data: TObject, path: TPath, defaultValue: TDefault): Exclude<GetFieldType<TObject, TPath>, null | undefined> | TDefault;
|
|
31
|
+
declare function get(object: any, path: PropertyPath, defaultValue?: any): any;
|
|
32
|
+
export * from "./utils/effectify.js";
|
|
33
|
+
export * from "./utils/extend.js";
|
|
34
|
+
export * from "./utils/logger.js";
|
|
35
|
+
export declare const unsafeRight: <E, A>(ei: Either.Either<A, E>) => A;
|
|
36
|
+
export declare const unsafeSome: (makeErrorMessage: () => string) => <A>(o: Option.Option<A>) => A;
|
|
37
|
+
export declare function toString(v: unknown): string;
|
|
38
|
+
export declare const typedKeysOf: <T extends {}>(obj: T) => (keyof T)[];
|
|
39
|
+
export declare const typedValuesOf: <T extends {}>(obj: T) => ValueOf<T>[];
|
|
40
|
+
type ValueOf<T> = T[keyof T];
|
|
41
|
+
export type Constructor<T = any> = {
|
|
42
|
+
new (...args: any[]): T;
|
|
43
|
+
};
|
|
44
|
+
export type ThenArg<T> = T extends Promise<infer U> ? U : T extends (...args: any[]) => Promise<infer V> ? V : T;
|
|
45
|
+
/**
|
|
46
|
+
* @deprecated TODO: does not filter optional fields!
|
|
47
|
+
*/
|
|
48
|
+
type NoUndefinedField<T> = {
|
|
49
|
+
[P in keyof T]: Exclude<T[P], undefined>;
|
|
50
|
+
};
|
|
51
|
+
export declare function dropUndefinedT<A extends Record<string, any>>(input: A): NoUndefinedField<A>;
|
|
52
|
+
export declare function dropUndefined<A>(input: Dictionary<A | undefined>): Dictionary<A>;
|
|
53
|
+
type GetTag<T> = T extends {
|
|
54
|
+
_tag: infer K;
|
|
55
|
+
} ? K : never;
|
|
56
|
+
export declare const isOfType: <T extends {
|
|
57
|
+
_tag: string;
|
|
58
|
+
}>(tag: GetTag<T>) => (e: {
|
|
59
|
+
_tag: string;
|
|
60
|
+
}) => e is T;
|
|
61
|
+
export declare function capitalize<T extends string>(string: T): Capitalize<T>;
|
|
62
|
+
export declare function uncapitalize<T extends string>(string: T): Uncapitalize<T>;
|
|
63
|
+
export declare function pretty(o: unknown): string;
|
|
64
|
+
export type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
|
|
65
|
+
export type IsUnion<T> = [T] extends [UnionToIntersection<T>] ? false : true;
|
|
66
|
+
export type EnforceNonEmptyRecord<R> = keyof R extends never ? never : R;
|
|
67
|
+
export declare function intersect<AS extends unknown[] & {
|
|
68
|
+
0: unknown;
|
|
69
|
+
}>(...as: AS): UnionToIntersection<{
|
|
70
|
+
[k in keyof AS]: AS[k];
|
|
71
|
+
}[number]>;
|
|
72
|
+
export type IsEqualTo<X, Y> = (<T>() => T extends X ? 1 : 2) extends <T>() => T extends Y ? 1 : 2 ? true : false;
|
|
73
|
+
export declare const unifyIndex: unique symbol;
|
|
74
|
+
export type unifyIndex = typeof unifyIndex;
|
|
75
|
+
export interface UnifiableIndexed<X> {
|
|
76
|
+
}
|
|
77
|
+
export type UnifiableIndexedURI = keyof UnifiableIndexed<any>;
|
|
78
|
+
export interface Unifiable<X> {
|
|
79
|
+
Unify: [X] extends [{
|
|
80
|
+
readonly [unifyIndex]: infer K;
|
|
81
|
+
}] ? K extends UnifiableIndexedURI ? UnifiableIndexed<X>[K] : never : never;
|
|
82
|
+
}
|
|
83
|
+
export type Unify<X> = Unifiable<X>[keyof Unifiable<any>] extends never ? X : Unifiable<X>[keyof Unifiable<any>];
|
|
84
|
+
/** Signifies that the modified property descriptor can be reset to its original state */
|
|
85
|
+
interface ResettableDescriptor {
|
|
86
|
+
/**
|
|
87
|
+
* Restore the property descriptor on the given class instance or prototype and re-apply the lazy getter.
|
|
88
|
+
* @param on The class instance or prototype
|
|
89
|
+
*/
|
|
90
|
+
reset(on: any): void;
|
|
91
|
+
}
|
|
92
|
+
/** A filter function that must return true for the value to cached */
|
|
93
|
+
export type ResultSelectorFn = (v: any) => boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Evaluate the getter function and cache the result
|
|
96
|
+
* @param [setProto=false] Set the value on the class prototype as well. Only applies to non-static getters.
|
|
97
|
+
* @param [makeNonConfigurable=false] Set to true to make the resolved property non-configurable
|
|
98
|
+
* @param [resultSelector] A filter function that must return true for the value to cached
|
|
99
|
+
* @return A decorator function
|
|
100
|
+
*/
|
|
101
|
+
export declare function LazyGetter(setProto?: boolean, makeNonConfigurable?: boolean, resultSelector?: ResultSelectorFn): MethodDecorator & ResettableDescriptor;
|
|
102
|
+
export type RefinementWithIndex<I, A, B extends A> = (i: I, a: A) => a is B;
|
|
103
|
+
export type PredicateWithIndex<I, A> = (i: I, a: A) => boolean;
|
|
104
|
+
export type Erase<R, K> = R & K extends K & infer R1 ? R1 : R;
|
|
105
|
+
/** from ts-toolbelt, minimal port of Compute */
|
|
106
|
+
export type Depth = "flat" | "deep";
|
|
107
|
+
type Errors = Error;
|
|
108
|
+
type Numeric = Date;
|
|
109
|
+
type Textual = RegExp;
|
|
110
|
+
type Arrays = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array;
|
|
111
|
+
type Maps = ReadonlyMap<unknown, unknown> | ReadonlySet<unknown> | WeakMap<object, unknown> | WeakSet<object>;
|
|
112
|
+
type Structures = ArrayBuffer | DataView;
|
|
113
|
+
type Abstractions = Function | Promise<unknown> | Generator;
|
|
114
|
+
type WebAssembly = never;
|
|
115
|
+
export type BuiltInObject = Errors | Numeric | Textual | Arrays | Maps | Structures | Abstractions | WebAssembly;
|
|
116
|
+
export type ComputeRaw<A> = A extends Function ? A : {
|
|
117
|
+
[K in keyof A]: A[K];
|
|
118
|
+
} & {};
|
|
119
|
+
export type ComputeFlat<A> = A extends BuiltInObject ? A : {
|
|
120
|
+
[K in keyof A]: A[K];
|
|
121
|
+
} & {};
|
|
122
|
+
export type ComputeDeep<A> = A extends BuiltInObject ? A : {
|
|
123
|
+
[K in keyof A]: ComputeDeep<A[K]>;
|
|
124
|
+
} & {};
|
|
125
|
+
export type Compute<A, depth extends Depth = "deep"> = {
|
|
126
|
+
flat: ComputeFlat<A>;
|
|
127
|
+
deep: ComputeDeep<A>;
|
|
128
|
+
}[depth];
|
|
129
|
+
export declare const LazySymbol: unique symbol;
|
|
130
|
+
export declare function lazyGetter<T extends object, T2>(creator: (target: T) => T2): (target: T) => T2;
|
|
131
|
+
export declare function exhaustiveMatch<T extends string>(): <Out extends Record<T, (t: T) => any>>(handlers: Out) => (t: T) => ReturnType<Out[keyof Out]>;
|
|
132
|
+
export declare function exhaustiveMatch_<T extends string>(t: T): <Out extends Record<T, (t: T) => any>>(handlers: Out) => ReturnType<Out[keyof Out]>;
|
|
133
|
+
export declare function assertUnreachable(x: never): never;
|
|
134
|
+
export type OptPromise<T extends () => any> = (...args: Parameters<T>) => Promise<ReturnType<T>> | ReturnType<T>;
|
|
135
|
+
export declare function access<T extends string, T2>(t: Record<T, T2>): (key: T) => T2;
|
|
136
|
+
export declare function todayAtUTCNoon(): Date;
|
|
137
|
+
/**
|
|
138
|
+
* @tsplus getter Object $$
|
|
139
|
+
* @tsplus getter number $$
|
|
140
|
+
* @tsplus getter bigint $$
|
|
141
|
+
* @tsplus getter boolean $$
|
|
142
|
+
* @tsplus getter regexp $$
|
|
143
|
+
* @tsplus getter string $$
|
|
144
|
+
*/
|
|
145
|
+
export declare function anyOp$<T>(self: T): AnyOps<T>;
|
|
146
|
+
/**
|
|
147
|
+
* @tsplus type Any.Ops
|
|
148
|
+
* @tsplus type Object.Ops
|
|
149
|
+
*/
|
|
150
|
+
export interface AnyOps<T> {
|
|
151
|
+
subject: T;
|
|
152
|
+
}
|
|
153
|
+
export declare const clone: (<A extends object>(f: NoInfer<A>) => (self: A) => A) & (<A extends object>(self: A, f: A) => A);
|
|
154
|
+
export declare const copy: {
|
|
155
|
+
<A extends object>(f: (a: A) => Partial<NoInfer<A>>): (self: A) => A;
|
|
156
|
+
<A extends object>(f: Partial<NoInfer<A>>): (self: A) => A;
|
|
157
|
+
} & {
|
|
158
|
+
<A extends object>(self: A, f: (a: A) => Partial<A>): A;
|
|
159
|
+
<A extends object>(self: A, f: Partial<A>): A;
|
|
160
|
+
};
|
|
161
|
+
/**
|
|
162
|
+
* @tsplus fluent Any.Ops debug
|
|
163
|
+
* @tsplus fluent Object.Ops debug
|
|
164
|
+
*/
|
|
165
|
+
export declare function debug<A>(a: AnyOps<A>, name: string): Effect.Effect<A, never, never>;
|
|
166
|
+
/**
|
|
167
|
+
* @tsplus fluent Any.Ops debugUnsafe
|
|
168
|
+
* @tsplus fluent Object.Ops debugUnsafe
|
|
169
|
+
*/
|
|
170
|
+
export declare function debugUnsafe<A>(a: AnyOps<A>, name: string): A;
|
|
171
|
+
export declare function spread<Fields extends Record<any, any>, NewProps>(fields: Fields, fnc: (fields: Fields) => NewProps): NewProps;
|
|
172
|
+
export declare function spreadS<Fields extends Record<any, any>>(fields: Fields, fnc: (fields: Fields) => Fields): Fields;
|
|
173
|
+
export declare function makeAzureFriendly(path: string): string;
|
|
174
|
+
export declare function undoAzureFriendly<T extends string>(path: T): T;
|
|
175
|
+
export declare function arrayMove<T>(arrInput: readonly T[], oldIndex: number, newIndex: number): (T | undefined)[];
|
|
176
|
+
export declare function arrayMoveDropUndefined<T>(arrInput: readonly (T | undefined)[], oldIndex: number, newIndex: number): T[];
|
|
177
|
+
export declare function arMoveElDropUndefined<T>(el: T, newIndex: number): (arrInput: ReadonlyArray<T | undefined>) => Option.Option<ReadonlyArray<T>>;
|
|
178
|
+
export declare function setMoveElDropUndefined<T>(el: T, newIndex: number): (arrInput: ReadonlySet<T | undefined>) => Option.Option<ReadonlySet<T>>;
|
|
179
|
+
export { get };
|
|
180
|
+
export type DistributiveOmit<T, K extends keyof any> = T extends any ? Omit<T, K> : never;
|
|
181
|
+
type RemoveNonArray<T> = T extends readonly any[] ? T : never;
|
|
182
|
+
export declare function isNativeTuple<A>(a: A): a is RemoveNonArray<A>;
|
|
183
|
+
export type Writable<T> = {
|
|
184
|
+
-readonly [P in keyof T]: T[P];
|
|
185
|
+
};
|
|
186
|
+
export type DeepWritable<T> = {
|
|
187
|
+
-readonly [P in keyof T]: DeepWritable<T[P]>;
|
|
188
|
+
};
|
|
189
|
+
export declare const writable: {
|
|
190
|
+
<A>(a: A, deep: true): DeepWritable<A>;
|
|
191
|
+
<A>(a: A): Writable<A>;
|
|
192
|
+
};
|
|
2
193
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.js
CHANGED
|
@@ -1,2 +1,332 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
import { Effect, Option } from "effect";
|
|
3
|
+
import * as Either from "effect/Either";
|
|
4
|
+
import { dual, isFunction } from "effect/Function";
|
|
5
|
+
import * as D from "./Dictionary.js";
|
|
6
|
+
import { identity, pipe } from "./Function.js";
|
|
7
|
+
// codegen:start {preset: barrel, include: ./utils/*.ts, nodir: false }
|
|
8
|
+
export * from "./utils/effectify.js";
|
|
9
|
+
export * from "./utils/extend.js";
|
|
10
|
+
export * from "./utils/logger.js";
|
|
11
|
+
// codegen:end
|
|
12
|
+
export const cloneTrait = Symbol.for("clone-trait");
|
|
13
|
+
function get(obj, path, defaultValue = undefined) {
|
|
14
|
+
// https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore?tab=readme-ov-file#_get
|
|
15
|
+
const travel = (regexp) => String
|
|
16
|
+
.prototype
|
|
17
|
+
.split
|
|
18
|
+
.call(path, regexp)
|
|
19
|
+
.filter(Boolean)
|
|
20
|
+
.reduce((res, key) => (res !== null && res !== undefined ? res[key] : res), obj);
|
|
21
|
+
const result = travel(/[,[\]]+?/) || travel(/[,[\].]+?/);
|
|
22
|
+
return result === undefined || result === obj ? defaultValue : result;
|
|
23
|
+
}
|
|
24
|
+
// codegen:start {preset: barrel, include: ./utils/*.ts }
|
|
25
|
+
export * from "./utils/effectify.js";
|
|
26
|
+
export * from "./utils/extend.js";
|
|
27
|
+
export * from "./utils/logger.js";
|
|
28
|
+
// codegen:end
|
|
29
|
+
export const unsafeRight = (ei) => {
|
|
30
|
+
if (Either.isLeft(ei)) {
|
|
31
|
+
console.error(ei.left);
|
|
32
|
+
throw ei.left;
|
|
33
|
+
}
|
|
34
|
+
return ei.right;
|
|
35
|
+
};
|
|
36
|
+
export const unsafeSome = (makeErrorMessage) => (o) => {
|
|
37
|
+
if (Option.isNone(o)) {
|
|
38
|
+
throw new Error(makeErrorMessage());
|
|
39
|
+
}
|
|
40
|
+
return o.value;
|
|
41
|
+
};
|
|
42
|
+
export function toString(v) {
|
|
43
|
+
return `${v}`;
|
|
44
|
+
}
|
|
45
|
+
export const typedKeysOf = (obj) => Object.keys(obj);
|
|
46
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
|
|
47
|
+
export const typedValuesOf = (obj) => Object.values(obj);
|
|
48
|
+
export function dropUndefinedT(input) {
|
|
49
|
+
const newR = pipe(input, D.filter((x) => x !== undefined));
|
|
50
|
+
return newR;
|
|
51
|
+
}
|
|
52
|
+
export function dropUndefined(input) {
|
|
53
|
+
const newR = pipe(input, D.filter((x) => x !== undefined));
|
|
54
|
+
return newR;
|
|
55
|
+
}
|
|
56
|
+
export const isOfType = (tag) => (e) => e._tag === tag;
|
|
57
|
+
export function capitalize(string) {
|
|
58
|
+
return (string.charAt(0).toUpperCase() + string.slice(1));
|
|
59
|
+
}
|
|
60
|
+
export function uncapitalize(string) {
|
|
61
|
+
return (string.charAt(0).toLowerCase() + string.slice(1));
|
|
62
|
+
}
|
|
63
|
+
export function pretty(o) {
|
|
64
|
+
return JSON.stringify(o, undefined, 2) ?? "undefined";
|
|
65
|
+
}
|
|
66
|
+
export function intersect(...as) {
|
|
67
|
+
return as.reduce((a, b) => ({ ...a, ...b }));
|
|
68
|
+
}
|
|
69
|
+
export const unifyIndex = Symbol();
|
|
70
|
+
function decorateNew(inp, setProto, makeNonConfigurable, resultSelector) {
|
|
71
|
+
const out = Object.assign({}, inp);
|
|
72
|
+
if (out.descriptor) {
|
|
73
|
+
out.descriptor = Object.assign({}, out.descriptor);
|
|
74
|
+
}
|
|
75
|
+
const actualDesc = (out.descriptor || /* istanbul ignore next */ out);
|
|
76
|
+
const originalMethod = validateAndExtractMethodFromDescriptor(actualDesc);
|
|
77
|
+
const isStatic = inp.placement === "static";
|
|
78
|
+
actualDesc.get = function () {
|
|
79
|
+
return getterCommon(isStatic ? this : Object.getPrototypeOf(this), out.key, isStatic, !!actualDesc.enumerable, originalMethod, this,
|
|
80
|
+
// eslint-disable-next-line prefer-rest-params
|
|
81
|
+
arguments, setProto, makeNonConfigurable, resultSelector);
|
|
82
|
+
};
|
|
83
|
+
return out;
|
|
84
|
+
}
|
|
85
|
+
function decorateLegacy(target, key, descriptor, setProto, makeNonConfigurable,
|
|
86
|
+
// tslint:enable:bool-param-default
|
|
87
|
+
resultSelector) {
|
|
88
|
+
/* istanbul ignore if */
|
|
89
|
+
if (!descriptor) {
|
|
90
|
+
descriptor = Object.getOwnPropertyDescriptor(target, key);
|
|
91
|
+
if (!descriptor) {
|
|
92
|
+
const e = new Error("@LazyGetter is unable to determine the property descriptor");
|
|
93
|
+
e.$target = target;
|
|
94
|
+
e.$key = key;
|
|
95
|
+
throw e;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
const originalMethod = validateAndExtractMethodFromDescriptor(descriptor);
|
|
99
|
+
return Object.assign({}, descriptor, {
|
|
100
|
+
get() {
|
|
101
|
+
return getterCommon(target, key, Object.getPrototypeOf(target) === Function.prototype, !!descriptor.enumerable, originalMethod, this,
|
|
102
|
+
// eslint-disable-next-line prefer-rest-params
|
|
103
|
+
arguments, setProto, makeNonConfigurable, resultSelector);
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
function defaultFilter() {
|
|
108
|
+
return true;
|
|
109
|
+
}
|
|
110
|
+
function validateAndExtractMethodFromDescriptor(desc) {
|
|
111
|
+
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
112
|
+
const originalMethod = desc.get;
|
|
113
|
+
if (!originalMethod) {
|
|
114
|
+
throw new Error("@LazyGetter can only decorate getters!");
|
|
115
|
+
}
|
|
116
|
+
else if (!desc.configurable) {
|
|
117
|
+
throw new Error("@LazyGetter target must be configurable");
|
|
118
|
+
}
|
|
119
|
+
return originalMethod;
|
|
120
|
+
}
|
|
121
|
+
function getterCommon(// tslint:disable-line:parameters-max-number
|
|
122
|
+
target, key, isStatic, enumerable, originalMethod, thisArg, args, setProto, makeNonConfigurable, resultSelector) {
|
|
123
|
+
const value = originalMethod.apply(thisArg, args);
|
|
124
|
+
if (resultSelector(value)) {
|
|
125
|
+
const newDescriptor = {
|
|
126
|
+
configurable: !makeNonConfigurable,
|
|
127
|
+
enumerable,
|
|
128
|
+
value
|
|
129
|
+
};
|
|
130
|
+
if (isStatic || setProto) {
|
|
131
|
+
Object.defineProperty(target, key, newDescriptor);
|
|
132
|
+
}
|
|
133
|
+
if (!isStatic) {
|
|
134
|
+
Object.defineProperty(thisArg, key, newDescriptor);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return value;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Evaluate the getter function and cache the result
|
|
141
|
+
* @param [setProto=false] Set the value on the class prototype as well. Only applies to non-static getters.
|
|
142
|
+
* @param [makeNonConfigurable=false] Set to true to make the resolved property non-configurable
|
|
143
|
+
* @param [resultSelector] A filter function that must return true for the value to cached
|
|
144
|
+
* @return A decorator function
|
|
145
|
+
*/
|
|
146
|
+
export function LazyGetter(setProto = false, makeNonConfigurable = false, resultSelector = defaultFilter) {
|
|
147
|
+
let desc;
|
|
148
|
+
let prop;
|
|
149
|
+
let args = null;
|
|
150
|
+
let isLegacy;
|
|
151
|
+
function decorator(targetOrDesc, key, descriptor) {
|
|
152
|
+
// eslint-disable-next-line prefer-rest-params
|
|
153
|
+
args = arguments;
|
|
154
|
+
if (key === undefined) {
|
|
155
|
+
if (typeof desc === "undefined") {
|
|
156
|
+
isLegacy = false;
|
|
157
|
+
prop = targetOrDesc.key;
|
|
158
|
+
desc = Object.assign({}, targetOrDesc.descriptor
|
|
159
|
+
/* istanbul ignore next */ || targetOrDesc);
|
|
160
|
+
}
|
|
161
|
+
return decorateNew(targetOrDesc, setProto, makeNonConfigurable, resultSelector);
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
if (typeof desc === "undefined") {
|
|
165
|
+
isLegacy = true;
|
|
166
|
+
prop = key;
|
|
167
|
+
desc = Object.assign({}, descriptor
|
|
168
|
+
/* istanbul ignore next */ || Object.getOwnPropertyDescriptor(targetOrDesc, key));
|
|
169
|
+
}
|
|
170
|
+
return decorateLegacy(targetOrDesc, key, descriptor, setProto, makeNonConfigurable, resultSelector);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
decorator.reset = setProto
|
|
174
|
+
? thrower
|
|
175
|
+
: (on) => {
|
|
176
|
+
if (!on) {
|
|
177
|
+
throw new Error("Unable to restore descriptor on an undefined target");
|
|
178
|
+
}
|
|
179
|
+
if (!desc) {
|
|
180
|
+
throw new Error("Unable to restore descriptor. Did you remember to apply your decorator to a method?");
|
|
181
|
+
}
|
|
182
|
+
// Restore descriptor to its original state
|
|
183
|
+
Object.defineProperty(on, prop, desc);
|
|
184
|
+
// eslint-disable-next-line prefer-spread
|
|
185
|
+
const ret = decorator.apply(null, args);
|
|
186
|
+
Object.defineProperty(on, prop, isLegacy ? ret : ret.descriptor || ret);
|
|
187
|
+
};
|
|
188
|
+
return decorator;
|
|
189
|
+
}
|
|
190
|
+
function thrower() {
|
|
191
|
+
throw new Error("This decoration modifies the class prototype and cannot be reset.");
|
|
192
|
+
}
|
|
193
|
+
/////
|
|
194
|
+
export const LazySymbol = Symbol("lazy");
|
|
195
|
+
export function lazyGetter(creator) {
|
|
196
|
+
const key = Symbol(creator.name);
|
|
197
|
+
const f = (target) => {
|
|
198
|
+
let lazy = target[LazySymbol];
|
|
199
|
+
if (!lazy) {
|
|
200
|
+
lazy = {};
|
|
201
|
+
Object.defineProperty(target, LazySymbol, { enumerable: false, value: lazy });
|
|
202
|
+
}
|
|
203
|
+
else if (lazy[key]) {
|
|
204
|
+
return lazy[key];
|
|
205
|
+
}
|
|
206
|
+
const value = creator(target);
|
|
207
|
+
lazy[key] = value;
|
|
208
|
+
return value;
|
|
209
|
+
};
|
|
210
|
+
Object.defineProperty(f, "name", {
|
|
211
|
+
enumerable: false,
|
|
212
|
+
value: `Lazy<${creator.name}>`
|
|
213
|
+
});
|
|
214
|
+
return f;
|
|
215
|
+
}
|
|
216
|
+
export function exhaustiveMatch() {
|
|
217
|
+
return (handlers) => (t) => handlers[t](t);
|
|
218
|
+
}
|
|
219
|
+
export function exhaustiveMatch_(t) {
|
|
220
|
+
return (handlers) => handlers[t](t);
|
|
221
|
+
}
|
|
222
|
+
export function assertUnreachable(x) {
|
|
223
|
+
throw new Error("Unknown case " + x);
|
|
224
|
+
}
|
|
225
|
+
export function access(t) {
|
|
226
|
+
return (key) => t[key];
|
|
227
|
+
}
|
|
228
|
+
export function todayAtUTCNoon() {
|
|
229
|
+
const localDate = new Date();
|
|
230
|
+
const utcDateAtNoon = Date.UTC(localDate.getFullYear(), localDate.getMonth(), localDate.getDate(), 12);
|
|
231
|
+
return new Date(utcDateAtNoon);
|
|
232
|
+
}
|
|
233
|
+
function anyOp_$(self) {
|
|
234
|
+
return {
|
|
235
|
+
get subject() {
|
|
236
|
+
return self;
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* @tsplus getter Object $$
|
|
242
|
+
* @tsplus getter number $$
|
|
243
|
+
* @tsplus getter bigint $$
|
|
244
|
+
* @tsplus getter boolean $$
|
|
245
|
+
* @tsplus getter regexp $$
|
|
246
|
+
* @tsplus getter string $$
|
|
247
|
+
*/
|
|
248
|
+
export function anyOp$(self) {
|
|
249
|
+
return anyOp_$(self);
|
|
250
|
+
}
|
|
251
|
+
export const clone = dual(2, (self, f) => {
|
|
252
|
+
if (cloneTrait in self) {
|
|
253
|
+
const selfWithClone = self;
|
|
254
|
+
return selfWithClone[cloneTrait](f);
|
|
255
|
+
}
|
|
256
|
+
return Object.setPrototypeOf(f, Object.getPrototypeOf(self));
|
|
257
|
+
});
|
|
258
|
+
export const copy = dual(2, (self, f) => clone(self, { ...self, ...(isFunction(f) ? f(self) : f) }));
|
|
259
|
+
/**
|
|
260
|
+
* @tsplus fluent Any.Ops debug
|
|
261
|
+
* @tsplus fluent Object.Ops debug
|
|
262
|
+
*/
|
|
263
|
+
export function debug(a, name) {
|
|
264
|
+
let r = a.subject;
|
|
265
|
+
try {
|
|
266
|
+
r = pretty(a.subject);
|
|
267
|
+
}
|
|
268
|
+
catch { /* empty */ }
|
|
269
|
+
return Effect
|
|
270
|
+
.logDebug("print")
|
|
271
|
+
.pipe(Effect.annotateLogs(name, `${r}`), Effect
|
|
272
|
+
.map(() => a.subject));
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* @tsplus fluent Any.Ops debugUnsafe
|
|
276
|
+
* @tsplus fluent Object.Ops debugUnsafe
|
|
277
|
+
*/
|
|
278
|
+
export function debugUnsafe(a, name) {
|
|
279
|
+
console.log(name, a.subject);
|
|
280
|
+
return a.subject;
|
|
281
|
+
}
|
|
282
|
+
export function spread(fields, fnc) {
|
|
283
|
+
return fnc(fields);
|
|
284
|
+
}
|
|
285
|
+
export function spreadS(fields, fnc) {
|
|
286
|
+
return fnc(fields);
|
|
287
|
+
}
|
|
288
|
+
export function makeAzureFriendly(path) {
|
|
289
|
+
return path.replace(/\//g, "___SL@SH___");
|
|
290
|
+
}
|
|
291
|
+
export function undoAzureFriendly(path) {
|
|
292
|
+
return path.replace(/___SL@SH___/g, "/");
|
|
293
|
+
}
|
|
294
|
+
export function arrayMove(arrInput, oldIndex, newIndex) {
|
|
295
|
+
const arr = [...arrInput];
|
|
296
|
+
while (oldIndex < 0) {
|
|
297
|
+
oldIndex += arr.length;
|
|
298
|
+
}
|
|
299
|
+
while (newIndex < 0) {
|
|
300
|
+
newIndex += arr.length;
|
|
301
|
+
}
|
|
302
|
+
if (newIndex >= arr.length) {
|
|
303
|
+
let k = newIndex - arr.length + 1;
|
|
304
|
+
while (k--) {
|
|
305
|
+
arr.push(undefined);
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
arr.splice(newIndex, 0, arr.splice(oldIndex, 1)[0]);
|
|
309
|
+
return arr;
|
|
310
|
+
}
|
|
311
|
+
export function arrayMoveDropUndefined(arrInput, oldIndex, newIndex) {
|
|
312
|
+
return arrayMove(arrInput, oldIndex, newIndex).filter((x) => x !== undefined);
|
|
313
|
+
}
|
|
314
|
+
export function arMoveElDropUndefined(el, newIndex) {
|
|
315
|
+
return (arrInput) => {
|
|
316
|
+
const ar = [...arrInput];
|
|
317
|
+
const index = ar.findIndex((x) => x === el);
|
|
318
|
+
if (index === -1) {
|
|
319
|
+
return Option.none();
|
|
320
|
+
}
|
|
321
|
+
return Option.some(arrayMoveDropUndefined(ar, index, newIndex));
|
|
322
|
+
};
|
|
323
|
+
}
|
|
324
|
+
export function setMoveElDropUndefined(el, newIndex) {
|
|
325
|
+
return (arrInput) => pipe([...arrInput], arMoveElDropUndefined(el, newIndex), Option.map((ar) => new Set(ar)));
|
|
326
|
+
}
|
|
327
|
+
export { get };
|
|
328
|
+
export function isNativeTuple(a) {
|
|
329
|
+
return Array.isArray(a);
|
|
330
|
+
}
|
|
331
|
+
export const writable = identity;
|
|
332
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQ3ZDLE9BQU8sS0FBSyxNQUFNLE1BQU0sZUFBZSxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFHbEQsT0FBTyxLQUFLLENBQUMsTUFBTSxpQkFBaUIsQ0FBQTtBQUNwQyxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUU5Qyx1RUFBdUU7QUFDdkUsY0FBYyxzQkFBc0IsQ0FBQTtBQUNwQyxjQUFjLG1CQUFtQixDQUFBO0FBQ2pDLGNBQWMsbUJBQW1CLENBQUE7QUFDakMsY0FBYztBQUVkLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBbUduRCxTQUFTLEdBQUcsQ0FBQyxHQUFRLEVBQUUsSUFBUyxFQUFFLFlBQVksR0FBRyxTQUFTO0lBQ3hELDJGQUEyRjtJQUMzRixNQUFNLE1BQU0sR0FBRyxDQUFDLE1BQVcsRUFBRSxFQUFFLENBQzdCLE1BQU07U0FDSCxTQUFTO1NBQ1QsS0FBSztTQUNMLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDO1NBQ2xCLE1BQU0sQ0FBQyxPQUFPLENBQUM7U0FDZixNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsS0FBSyxJQUFJLElBQUksR0FBRyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUNwRixNQUFNLE1BQU0sR0FBRyxNQUFNLENB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
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { IsEmailOptions } from "validator/lib/isEmail.js";
|
|
2
|
+
/**
|
|
3
|
+
* Validate emails according to RFC 5322
|
|
4
|
+
*/
|
|
5
|
+
export declare const isValidEmail: (str: string, options?: IsEmailOptions) => boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Validates that phone number contains at least 7 numbers.
|
|
8
|
+
* Allowed characters are [0-1] "/", "+", "-", " .js"
|
|
9
|
+
*/
|
|
10
|
+
export declare const isValidPhone: (phone: string) => boolean;
|
|
11
|
+
//# sourceMappingURL=validators.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/validation/validators.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAY9D;;GAEG;AAEH,eAAO,MAAM,YAAY,EAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,KAAK,OAAO,CAAA;AAEhG;;;GAGG;AACH,eAAO,MAAM,YAAY,UAAW,MAAM,KAAG,OAQ5C,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import isEmail from "validator/lib/isEmail.js";
|
|
2
|
+
// Source https://emailregex.com/
|
|
3
|
+
// eslint-disable-next-line no-control-regex
|
|
4
|
+
// const EMAIL_REGEX = /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/
|
|
5
|
+
// allow for "/", "+", "-", " .js" and digits
|
|
6
|
+
const PHONE_REGEX = /^\+?[\d-/ ]*$/;
|
|
7
|
+
const PHONE_LENGTH = 7;
|
|
8
|
+
/**
|
|
9
|
+
* Validate emails according to RFC 5322
|
|
10
|
+
*/
|
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
12
|
+
export const isValidEmail = isEmail;
|
|
13
|
+
/**
|
|
14
|
+
* Validates that phone number contains at least 7 numbers.
|
|
15
|
+
* Allowed characters are [0-1] "/", "+", "-", " .js"
|
|
16
|
+
*/
|
|
17
|
+
export const isValidPhone = (phone) => {
|
|
18
|
+
const isValidPhone = PHONE_REGEX.test(phone);
|
|
19
|
+
if (!isValidPhone)
|
|
20
|
+
return false;
|
|
21
|
+
const isValidLength = phone.split("").filter((c) => !isNaN(Number(c))).length >= PHONE_LENGTH;
|
|
22
|
+
if (!isValidLength)
|
|
23
|
+
return false;
|
|
24
|
+
return true;
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92YWxpZGF0aW9uL3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxPQUFPLE1BQU0sMEJBQTBCLENBQUE7QUFFOUMsaUNBQWlDO0FBQ2pDLDRDQUE0QztBQUM1QyxxY0FBcWM7QUFFcmMsNkNBQTZDO0FBQzdDLE1BQU0sV0FBVyxHQUFHLGVBQWUsQ0FBQTtBQUVuQyxNQUFNLFlBQVksR0FBRyxDQUFDLENBQUE7QUFFdEI7O0dBRUc7QUFDSCw4REFBOEQ7QUFDOUQsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLE9BQW9FLENBQUE7QUFFaEc7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsS0FBYSxFQUFXLEVBQUU7SUFDckQsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUM1QyxJQUFJLENBQUMsWUFBWTtRQUFFLE9BQU8sS0FBSyxDQUFBO0lBRS9CLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxZQUFZLENBQUE7SUFDN0YsSUFBSSxDQUFDLGFBQWE7UUFBRSxPQUFPLEtBQUssQ0FBQTtJQUVoQyxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUMsQ0FBQSJ9
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Predicate } from "./Function.js";
|
|
2
|
+
export declare const all_: <T>(v: T, ...a: Predicate<T>[]) => boolean;
|
|
3
|
+
export declare const all: <T>(...a: Predicate<T>[]) => (v: T) => boolean;
|
|
4
|
+
export declare const maxN: (max: number) => (v: number) => boolean;
|
|
5
|
+
export declare const minN: (min: number) => (v: number) => boolean;
|
|
6
|
+
export declare const max: (max: number) => (v: {
|
|
7
|
+
length: number;
|
|
8
|
+
}) => boolean;
|
|
9
|
+
export declare const min: (min: number) => (v: {
|
|
10
|
+
length: number;
|
|
11
|
+
}) => boolean;
|
|
12
|
+
export * from "./validation/validators.js";
|
|
13
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAE9C,eAAO,MAAM,IAAI,GAAI,CAAC,KAAK,CAAC,QAAQ,SAAS,CAAC,CAAC,CAAC,EAAE,YAA0B,CAAA;AAC5E,eAAO,MAAM,GAAG,GAAI,CAAC,QAAQ,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,YAAkB,CAAA;AAEvE,eAAO,MAAM,IAAI,QAAS,MAAM,SAAS,MAAM,YAAa,CAAA;AAC5D,eAAO,MAAM,IAAI,QAAS,MAAM,SAAS,MAAM,YAAa,CAAA;AAE5D,eAAO,MAAM,GAAG,QAAS,MAAM,SAElB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,YAC9B,CAAA;AACD,eAAO,MAAM,GAAG,QAAS,MAAM,SAElB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,YAC9B,CAAA;AAED,cAAc,4BAA4B,CAAA"}
|