@plasmicapp/host 1.0.237 → 1.0.239
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/host.esm.js +1 -1
- package/dist/host.esm.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/types/function-types.d.ts +51 -40
- package/dist/version.d.ts +1 -1
- package/package.json +3 -3
- package/registerComponent/dist/types/function-types.d.ts +51 -40
- package/registerComponent/dist/version.d.ts +1 -1
- package/registerFunction/dist/types/function-types.d.ts +51 -40
- package/registerFunction/dist/version.d.ts +1 -1
- package/registerGlobalContext/dist/types/function-types.d.ts +51 -40
- package/registerGlobalContext/dist/version.d.ts +1 -1
- package/registerToken/dist/types/function-types.d.ts +51 -40
- package/registerToken/dist/version.d.ts +1 -1
- package/registerTrait/dist/types/function-types.d.ts +51 -40
- package/registerTrait/dist/version.d.ts +1 -1
|
@@ -5,9 +5,15 @@ import { DateRangeStringsCore, DateStringCore, NumberTypeBaseCore, RichBooleanCo
|
|
|
5
5
|
import { QueryBuilderCore } from "./query-builder-types";
|
|
6
6
|
import { CommonTypeBase, ContextDependentConfig, Defaultable, GenericContext } from "./shared-controls";
|
|
7
7
|
import { Nullish } from "./type-utils";
|
|
8
|
-
|
|
8
|
+
/**
|
|
9
|
+
* `[string, number]` -> `[string | undefined, number | undefined]`
|
|
10
|
+
*/
|
|
11
|
+
export type PartialParams<P extends any[]> = {
|
|
12
|
+
[K in keyof P]: P[K] | undefined;
|
|
13
|
+
};
|
|
14
|
+
export type FunctionControlContext<P extends any[]> = GenericContext<PartialParams<P>, // Function params, each may be undefined
|
|
9
15
|
any>;
|
|
10
|
-
export type FunctionContextConfig<
|
|
16
|
+
export type FunctionContextConfig<P extends any[], R> = ContextDependentConfig<FunctionControlContext<P>, R>;
|
|
11
17
|
export interface TypeBaseDefault<Ctx extends any[], T> extends CommonTypeBase, Defaultable<Ctx, T> {
|
|
12
18
|
displayName?: string;
|
|
13
19
|
/**
|
|
@@ -16,77 +22,76 @@ export interface TypeBaseDefault<Ctx extends any[], T> extends CommonTypeBase, D
|
|
|
16
22
|
*/
|
|
17
23
|
hidden?: ContextDependentConfig<Ctx, boolean>;
|
|
18
24
|
}
|
|
19
|
-
export interface PlainStringType<T extends Nullish<string> = string> extends TypeBaseDefault<
|
|
25
|
+
export interface PlainStringType<P extends any[], T extends Nullish<string> = string> extends TypeBaseDefault<FunctionControlContext<P>, T> {
|
|
20
26
|
type: "string" | `'${T}'`;
|
|
21
27
|
}
|
|
22
|
-
export type StringType<P, T extends string = string> = "string" | PlainStringType<T> | ChoiceType<P, T> | DateStringType | DateRangeStringsType | AnyType
|
|
23
|
-
export interface PlainNumberType<T extends Nullish<number> = number> extends TypeBaseDefault<
|
|
28
|
+
export type StringType<P extends any[], T extends string = string> = "string" | PlainStringType<P, T> | ChoiceType<P, T> | DateStringType<P> | DateRangeStringsType<P> | AnyType<P>;
|
|
29
|
+
export interface PlainNumberType<P extends any[], T extends Nullish<number> = number> extends TypeBaseDefault<FunctionControlContext<P>, T> {
|
|
24
30
|
type: "number" | `${number extends T ? number : T}`;
|
|
25
31
|
}
|
|
26
|
-
export type NumberType<P, T extends number = number> = PlainNumberType<T> | (TypeBaseDefault<FunctionControlContext<P>, T> & NumberTypeBaseCore<FunctionControlContext<P>>) | ChoiceType<P, T> | AnyType
|
|
27
|
-
export interface PlainBooleanType<T extends Nullish<boolean> = boolean> extends TypeBaseDefault<
|
|
32
|
+
export type NumberType<P extends any[], T extends number = number> = PlainNumberType<P, T> | (TypeBaseDefault<FunctionControlContext<P>, T> & NumberTypeBaseCore<FunctionControlContext<P>>) | ChoiceType<P, T> | AnyType<P>;
|
|
33
|
+
export interface PlainBooleanType<P extends any[], T extends Nullish<boolean> = boolean> extends TypeBaseDefault<FunctionControlContext<P>, T> {
|
|
28
34
|
type: "boolean" | `${boolean extends T ? boolean : T}`;
|
|
29
35
|
}
|
|
30
|
-
export type BooleanType<P, T extends boolean = boolean> = PlainBooleanType<T> | (TypeBaseDefault<FunctionControlContext<P>, T> & RichBooleanCore) | ChoiceType<P, T> | AnyType
|
|
31
|
-
export type GraphQLType<P> = TypeBaseDefault<FunctionControlContext<P>, any> & GraphQLCore<FunctionControlContext<P>>;
|
|
32
|
-
export interface PlainNullType extends
|
|
36
|
+
export type BooleanType<P extends any[], T extends boolean = boolean> = PlainBooleanType<P, T> | (TypeBaseDefault<FunctionControlContext<P>, T> & RichBooleanCore) | ChoiceType<P, T> | AnyType<P>;
|
|
37
|
+
export type GraphQLType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, any> & GraphQLCore<FunctionControlContext<P>>;
|
|
38
|
+
export interface PlainNullType<P extends any[]> extends TypeBaseDefault<FunctionControlContext<P>, null> {
|
|
33
39
|
type: "null";
|
|
34
40
|
}
|
|
35
|
-
export type NullType = PlainNullType | AnyType
|
|
36
|
-
export interface PlainUndefinedType extends
|
|
41
|
+
export type NullType<P extends any[]> = PlainNullType<P> | AnyType<P>;
|
|
42
|
+
export interface PlainUndefinedType<P extends any[]> extends TypeBaseDefault<FunctionControlContext<P>, undefined> {
|
|
37
43
|
type: "undefined";
|
|
38
44
|
}
|
|
39
|
-
export type UndefinedType = PlainUndefinedType | AnyType
|
|
45
|
+
export type UndefinedType<P extends any[]> = PlainUndefinedType<P> | AnyType<P>;
|
|
40
46
|
export type ExtractObjectKeys<T extends object> = keyof T & string;
|
|
41
|
-
export type ObjectType<P, T extends
|
|
42
|
-
export type ArrayType<P> = TypeBaseDefault<FunctionControlContext<P>,
|
|
43
|
-
export type QueryBuilderType<P> = TypeBaseDefault<FunctionControlContext<P>, any> & QueryBuilderCore<FunctionControlContext<P>>;
|
|
44
|
-
export interface PlainAnyType extends TypeBaseDefault<FunctionControlContext<
|
|
47
|
+
export type ObjectType<P extends any[], T extends Record<string, any> = Record<string, any>> = TypeBaseDefault<FunctionControlContext<P>, T> & ObjectTypeBaseCore<FunctionControlContext<P>, GenericType<P, any>, ExtractObjectKeys<T>>;
|
|
48
|
+
export type ArrayType<P extends any[], T extends any[] = any[]> = TypeBaseDefault<FunctionControlContext<P>, T> & ArrayTypeBaseCore<FunctionControlContext<P>, GenericType<P, any>>;
|
|
49
|
+
export type QueryBuilderType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, any> & QueryBuilderCore<FunctionControlContext<P>>;
|
|
50
|
+
export interface PlainAnyType<P extends any[]> extends TypeBaseDefault<FunctionControlContext<P>, any> {
|
|
45
51
|
type: "any";
|
|
46
52
|
}
|
|
47
|
-
export type AnyType = PlainAnyType
|
|
53
|
+
export type AnyType<P extends any[]> = PlainAnyType<P>;
|
|
48
54
|
export interface PlainVoidType extends CommonTypeBase {
|
|
49
55
|
type: "void";
|
|
50
56
|
}
|
|
51
|
-
export type VoidType = PlainVoidType | AnyType
|
|
57
|
+
export type VoidType<P extends any[]> = PlainVoidType | AnyType<P>;
|
|
52
58
|
type IsAny<T> = 0 extends 1 & T ? true : false;
|
|
53
|
-
type CommonType<P, T> = T extends GraphQLValue ? GraphQLType<P> : T extends null ? NullType : T extends undefined ? UndefinedType : T extends Array<any> ? ArrayType<P> : T extends object ? ObjectType<P, T> : AnyType
|
|
54
|
-
type AnyTyping<P, T> = T extends string ? StringType<P, T> : T extends number ? NumberType<P, T> : T extends boolean ? BooleanType<P, T> : CommonType<P, T>;
|
|
55
|
-
export type
|
|
56
|
-
export
|
|
57
|
-
export interface SingleChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
59
|
+
type CommonType<P extends any[], T> = T extends GraphQLValue ? GraphQLType<P> : T extends null ? NullType<P> : T extends undefined ? UndefinedType<P> : T extends Array<any> ? ArrayType<P> : T extends object ? ObjectType<P, T> : AnyType<P>;
|
|
60
|
+
type AnyTyping<P extends any[], T> = T extends string ? StringType<P, T> : T extends number ? NumberType<P, T> : T extends boolean ? BooleanType<P, T> : CommonType<P, T>;
|
|
61
|
+
export type ChoiceTypeBase<P extends any[], Opt extends ChoiceValue = ChoiceValue> = TypeBaseDefault<FunctionControlContext<P>, Opt | Opt[]> & ChoiceCore<FunctionControlContext<P>, Opt>;
|
|
62
|
+
export interface SingleChoiceType<P extends any[], Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
58
63
|
multiSelect?: false;
|
|
59
64
|
}
|
|
60
|
-
export interface MultiChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
65
|
+
export interface MultiChoiceType<P extends any[], Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
61
66
|
multiSelect: true;
|
|
62
67
|
}
|
|
63
|
-
export interface CustomChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
64
|
-
multiSelect: FunctionContextConfig<
|
|
68
|
+
export interface CustomChoiceType<P extends any[], Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
69
|
+
multiSelect: FunctionContextConfig<P, boolean>;
|
|
65
70
|
}
|
|
66
|
-
export type ChoiceType<P, T extends ChoiceValue = ChoiceValue> = SingleChoiceType<P, T> | MultiChoiceType<P, T> | CustomChoiceType<P, T>;
|
|
67
|
-
export type DateStringType = TypeBaseDefault<FunctionControlContext<
|
|
68
|
-
export type DateRangeStringsType = TypeBaseDefault<FunctionControlContext<
|
|
71
|
+
export type ChoiceType<P extends any[], T extends ChoiceValue = ChoiceValue> = SingleChoiceType<P, T> | MultiChoiceType<P, T> | CustomChoiceType<P, T>;
|
|
72
|
+
export type DateStringType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, string> & DateStringCore;
|
|
73
|
+
export type DateRangeStringsType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, [
|
|
69
74
|
string,
|
|
70
75
|
string
|
|
71
76
|
]> & DateRangeStringsCore;
|
|
72
|
-
export interface DynamicType<P> extends CommonTypeBase, DynamicCore<FunctionControlContext<
|
|
77
|
+
export interface DynamicType<P extends any[]> extends CommonTypeBase, DynamicCore<FunctionControlContext<P>, GenericType<P, any>> {
|
|
73
78
|
}
|
|
74
|
-
export type RestrictedType<P, T> = IsAny<T> extends true ? AnyTyping<P, T> : [
|
|
79
|
+
export type RestrictedType<P extends any[], T> = IsAny<T> extends true ? AnyTyping<P, T> : [
|
|
75
80
|
T
|
|
76
81
|
] extends [string] ? StringType<P, T> : [T] extends [number] ? NumberType<P, T> : [T] extends [boolean] ? BooleanType<P, T> : T extends string | null | undefined ? Exclude<T, null | undefined> extends string ? StringType<P, T extends string ? T : string> : CommonType<P, T> : T extends number | null | undefined ? Exclude<T, null | undefined> extends number ? NumberType<P, T extends number ? T : number> : CommonType<P, T> : T extends boolean | null | undefined ? Exclude<T, null | undefined> extends boolean ? BooleanType<P, T extends boolean ? T : boolean> : CommonType<P, T> : CommonType<P, T>;
|
|
77
|
-
export type GenericType<P, T> = RestrictedType<P, T> | DynamicType<P> | QueryBuilderType<P>;
|
|
82
|
+
export type GenericType<P extends any[], T> = RestrictedType<P, T> | DynamicType<P> | QueryBuilderType<P>;
|
|
78
83
|
export interface ParamTypeBase {
|
|
79
84
|
name: string;
|
|
80
85
|
}
|
|
81
|
-
export type ParamType<P, T> = ParamTypeBase & GenericType<P, T>;
|
|
82
|
-
export type RequiredParam<P, T> = ParamTypeBase & ParamType<P, T> & {
|
|
86
|
+
export type ParamType<P extends any[], T> = ParamTypeBase & GenericType<P, T>;
|
|
87
|
+
export type RequiredParam<P extends any[], T> = ParamTypeBase & ParamType<P, T> & {
|
|
83
88
|
isOptional?: false;
|
|
84
89
|
isRestParameter?: false;
|
|
85
90
|
};
|
|
86
|
-
export type OptionalParam<P, T> = ParamTypeBase & ParamType<P, T> & {
|
|
91
|
+
export type OptionalParam<P extends any[], T> = ParamTypeBase & ParamType<P, T> & {
|
|
87
92
|
isRestParameter?: false;
|
|
88
93
|
};
|
|
89
|
-
export type RestParam<P, T> = ParamTypeBase & ParamType<P, T> & {
|
|
94
|
+
export type RestParam<P extends any[], T> = ParamTypeBase & ParamType<P, T> & {
|
|
90
95
|
isOptional?: false;
|
|
91
96
|
isRestParameter: true;
|
|
92
97
|
};
|
|
@@ -95,8 +100,14 @@ type OptionalParams<T extends any[]> = T extends [
|
|
|
95
100
|
...RequiredParams<T>,
|
|
96
101
|
...infer R
|
|
97
102
|
] ? [...R] : [];
|
|
98
|
-
type HandleRequiredParams<P, R extends any[]> = R extends [
|
|
99
|
-
|
|
103
|
+
type HandleRequiredParams<P extends any[], R extends any[]> = R extends [
|
|
104
|
+
infer H,
|
|
105
|
+
...infer T
|
|
106
|
+
] ? [string | RequiredParam<P, H>, ...HandleRequiredParams<P, T>] : [];
|
|
107
|
+
type HandleOptionalParams<P extends any[], R extends any[]> = R extends [
|
|
108
|
+
infer H,
|
|
109
|
+
...infer T
|
|
110
|
+
] ? [] | [
|
|
100
111
|
string | OptionalParam<P, H | undefined>,
|
|
101
112
|
...HandleOptionalParams<P, T>
|
|
102
113
|
] : R extends [] ? [] : R extends Array<infer T> ? [] | [RestParam<P, T[]>] : [];
|
|
@@ -104,5 +115,5 @@ export type HandleParams<P extends any[]> = [
|
|
|
104
115
|
...HandleRequiredParams<P, RequiredParams<P>>,
|
|
105
116
|
...HandleOptionalParams<P, Required<OptionalParams<P>>>
|
|
106
117
|
];
|
|
107
|
-
export type HandleReturnType<P, T> = VoidType | ParamType<P, T>;
|
|
118
|
+
export type HandleReturnType<P extends any[], T> = VoidType<P> | ParamType<P, T>;
|
|
108
119
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const hostVersion = "1.0.
|
|
1
|
+
export declare const hostVersion = "1.0.239";
|
|
@@ -5,9 +5,15 @@ import { DateRangeStringsCore, DateStringCore, NumberTypeBaseCore, RichBooleanCo
|
|
|
5
5
|
import { QueryBuilderCore } from "./query-builder-types";
|
|
6
6
|
import { CommonTypeBase, ContextDependentConfig, Defaultable, GenericContext } from "./shared-controls";
|
|
7
7
|
import { Nullish } from "./type-utils";
|
|
8
|
-
|
|
8
|
+
/**
|
|
9
|
+
* `[string, number]` -> `[string | undefined, number | undefined]`
|
|
10
|
+
*/
|
|
11
|
+
export type PartialParams<P extends any[]> = {
|
|
12
|
+
[K in keyof P]: P[K] | undefined;
|
|
13
|
+
};
|
|
14
|
+
export type FunctionControlContext<P extends any[]> = GenericContext<PartialParams<P>, // Function params, each may be undefined
|
|
9
15
|
any>;
|
|
10
|
-
export type FunctionContextConfig<
|
|
16
|
+
export type FunctionContextConfig<P extends any[], R> = ContextDependentConfig<FunctionControlContext<P>, R>;
|
|
11
17
|
export interface TypeBaseDefault<Ctx extends any[], T> extends CommonTypeBase, Defaultable<Ctx, T> {
|
|
12
18
|
displayName?: string;
|
|
13
19
|
/**
|
|
@@ -16,77 +22,76 @@ export interface TypeBaseDefault<Ctx extends any[], T> extends CommonTypeBase, D
|
|
|
16
22
|
*/
|
|
17
23
|
hidden?: ContextDependentConfig<Ctx, boolean>;
|
|
18
24
|
}
|
|
19
|
-
export interface PlainStringType<T extends Nullish<string> = string> extends TypeBaseDefault<
|
|
25
|
+
export interface PlainStringType<P extends any[], T extends Nullish<string> = string> extends TypeBaseDefault<FunctionControlContext<P>, T> {
|
|
20
26
|
type: "string" | `'${T}'`;
|
|
21
27
|
}
|
|
22
|
-
export type StringType<P, T extends string = string> = "string" | PlainStringType<T> | ChoiceType<P, T> | DateStringType | DateRangeStringsType | AnyType
|
|
23
|
-
export interface PlainNumberType<T extends Nullish<number> = number> extends TypeBaseDefault<
|
|
28
|
+
export type StringType<P extends any[], T extends string = string> = "string" | PlainStringType<P, T> | ChoiceType<P, T> | DateStringType<P> | DateRangeStringsType<P> | AnyType<P>;
|
|
29
|
+
export interface PlainNumberType<P extends any[], T extends Nullish<number> = number> extends TypeBaseDefault<FunctionControlContext<P>, T> {
|
|
24
30
|
type: "number" | `${number extends T ? number : T}`;
|
|
25
31
|
}
|
|
26
|
-
export type NumberType<P, T extends number = number> = PlainNumberType<T> | (TypeBaseDefault<FunctionControlContext<P>, T> & NumberTypeBaseCore<FunctionControlContext<P>>) | ChoiceType<P, T> | AnyType
|
|
27
|
-
export interface PlainBooleanType<T extends Nullish<boolean> = boolean> extends TypeBaseDefault<
|
|
32
|
+
export type NumberType<P extends any[], T extends number = number> = PlainNumberType<P, T> | (TypeBaseDefault<FunctionControlContext<P>, T> & NumberTypeBaseCore<FunctionControlContext<P>>) | ChoiceType<P, T> | AnyType<P>;
|
|
33
|
+
export interface PlainBooleanType<P extends any[], T extends Nullish<boolean> = boolean> extends TypeBaseDefault<FunctionControlContext<P>, T> {
|
|
28
34
|
type: "boolean" | `${boolean extends T ? boolean : T}`;
|
|
29
35
|
}
|
|
30
|
-
export type BooleanType<P, T extends boolean = boolean> = PlainBooleanType<T> | (TypeBaseDefault<FunctionControlContext<P>, T> & RichBooleanCore) | ChoiceType<P, T> | AnyType
|
|
31
|
-
export type GraphQLType<P> = TypeBaseDefault<FunctionControlContext<P>, any> & GraphQLCore<FunctionControlContext<P>>;
|
|
32
|
-
export interface PlainNullType extends
|
|
36
|
+
export type BooleanType<P extends any[], T extends boolean = boolean> = PlainBooleanType<P, T> | (TypeBaseDefault<FunctionControlContext<P>, T> & RichBooleanCore) | ChoiceType<P, T> | AnyType<P>;
|
|
37
|
+
export type GraphQLType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, any> & GraphQLCore<FunctionControlContext<P>>;
|
|
38
|
+
export interface PlainNullType<P extends any[]> extends TypeBaseDefault<FunctionControlContext<P>, null> {
|
|
33
39
|
type: "null";
|
|
34
40
|
}
|
|
35
|
-
export type NullType = PlainNullType | AnyType
|
|
36
|
-
export interface PlainUndefinedType extends
|
|
41
|
+
export type NullType<P extends any[]> = PlainNullType<P> | AnyType<P>;
|
|
42
|
+
export interface PlainUndefinedType<P extends any[]> extends TypeBaseDefault<FunctionControlContext<P>, undefined> {
|
|
37
43
|
type: "undefined";
|
|
38
44
|
}
|
|
39
|
-
export type UndefinedType = PlainUndefinedType | AnyType
|
|
45
|
+
export type UndefinedType<P extends any[]> = PlainUndefinedType<P> | AnyType<P>;
|
|
40
46
|
export type ExtractObjectKeys<T extends object> = keyof T & string;
|
|
41
|
-
export type ObjectType<P, T extends
|
|
42
|
-
export type ArrayType<P> = TypeBaseDefault<FunctionControlContext<P>,
|
|
43
|
-
export type QueryBuilderType<P> = TypeBaseDefault<FunctionControlContext<P>, any> & QueryBuilderCore<FunctionControlContext<P>>;
|
|
44
|
-
export interface PlainAnyType extends TypeBaseDefault<FunctionControlContext<
|
|
47
|
+
export type ObjectType<P extends any[], T extends Record<string, any> = Record<string, any>> = TypeBaseDefault<FunctionControlContext<P>, T> & ObjectTypeBaseCore<FunctionControlContext<P>, GenericType<P, any>, ExtractObjectKeys<T>>;
|
|
48
|
+
export type ArrayType<P extends any[], T extends any[] = any[]> = TypeBaseDefault<FunctionControlContext<P>, T> & ArrayTypeBaseCore<FunctionControlContext<P>, GenericType<P, any>>;
|
|
49
|
+
export type QueryBuilderType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, any> & QueryBuilderCore<FunctionControlContext<P>>;
|
|
50
|
+
export interface PlainAnyType<P extends any[]> extends TypeBaseDefault<FunctionControlContext<P>, any> {
|
|
45
51
|
type: "any";
|
|
46
52
|
}
|
|
47
|
-
export type AnyType = PlainAnyType
|
|
53
|
+
export type AnyType<P extends any[]> = PlainAnyType<P>;
|
|
48
54
|
export interface PlainVoidType extends CommonTypeBase {
|
|
49
55
|
type: "void";
|
|
50
56
|
}
|
|
51
|
-
export type VoidType = PlainVoidType | AnyType
|
|
57
|
+
export type VoidType<P extends any[]> = PlainVoidType | AnyType<P>;
|
|
52
58
|
type IsAny<T> = 0 extends 1 & T ? true : false;
|
|
53
|
-
type CommonType<P, T> = T extends GraphQLValue ? GraphQLType<P> : T extends null ? NullType : T extends undefined ? UndefinedType : T extends Array<any> ? ArrayType<P> : T extends object ? ObjectType<P, T> : AnyType
|
|
54
|
-
type AnyTyping<P, T> = T extends string ? StringType<P, T> : T extends number ? NumberType<P, T> : T extends boolean ? BooleanType<P, T> : CommonType<P, T>;
|
|
55
|
-
export type
|
|
56
|
-
export
|
|
57
|
-
export interface SingleChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
59
|
+
type CommonType<P extends any[], T> = T extends GraphQLValue ? GraphQLType<P> : T extends null ? NullType<P> : T extends undefined ? UndefinedType<P> : T extends Array<any> ? ArrayType<P> : T extends object ? ObjectType<P, T> : AnyType<P>;
|
|
60
|
+
type AnyTyping<P extends any[], T> = T extends string ? StringType<P, T> : T extends number ? NumberType<P, T> : T extends boolean ? BooleanType<P, T> : CommonType<P, T>;
|
|
61
|
+
export type ChoiceTypeBase<P extends any[], Opt extends ChoiceValue = ChoiceValue> = TypeBaseDefault<FunctionControlContext<P>, Opt | Opt[]> & ChoiceCore<FunctionControlContext<P>, Opt>;
|
|
62
|
+
export interface SingleChoiceType<P extends any[], Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
58
63
|
multiSelect?: false;
|
|
59
64
|
}
|
|
60
|
-
export interface MultiChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
65
|
+
export interface MultiChoiceType<P extends any[], Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
61
66
|
multiSelect: true;
|
|
62
67
|
}
|
|
63
|
-
export interface CustomChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
64
|
-
multiSelect: FunctionContextConfig<
|
|
68
|
+
export interface CustomChoiceType<P extends any[], Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
69
|
+
multiSelect: FunctionContextConfig<P, boolean>;
|
|
65
70
|
}
|
|
66
|
-
export type ChoiceType<P, T extends ChoiceValue = ChoiceValue> = SingleChoiceType<P, T> | MultiChoiceType<P, T> | CustomChoiceType<P, T>;
|
|
67
|
-
export type DateStringType = TypeBaseDefault<FunctionControlContext<
|
|
68
|
-
export type DateRangeStringsType = TypeBaseDefault<FunctionControlContext<
|
|
71
|
+
export type ChoiceType<P extends any[], T extends ChoiceValue = ChoiceValue> = SingleChoiceType<P, T> | MultiChoiceType<P, T> | CustomChoiceType<P, T>;
|
|
72
|
+
export type DateStringType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, string> & DateStringCore;
|
|
73
|
+
export type DateRangeStringsType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, [
|
|
69
74
|
string,
|
|
70
75
|
string
|
|
71
76
|
]> & DateRangeStringsCore;
|
|
72
|
-
export interface DynamicType<P> extends CommonTypeBase, DynamicCore<FunctionControlContext<
|
|
77
|
+
export interface DynamicType<P extends any[]> extends CommonTypeBase, DynamicCore<FunctionControlContext<P>, GenericType<P, any>> {
|
|
73
78
|
}
|
|
74
|
-
export type RestrictedType<P, T> = IsAny<T> extends true ? AnyTyping<P, T> : [
|
|
79
|
+
export type RestrictedType<P extends any[], T> = IsAny<T> extends true ? AnyTyping<P, T> : [
|
|
75
80
|
T
|
|
76
81
|
] extends [string] ? StringType<P, T> : [T] extends [number] ? NumberType<P, T> : [T] extends [boolean] ? BooleanType<P, T> : T extends string | null | undefined ? Exclude<T, null | undefined> extends string ? StringType<P, T extends string ? T : string> : CommonType<P, T> : T extends number | null | undefined ? Exclude<T, null | undefined> extends number ? NumberType<P, T extends number ? T : number> : CommonType<P, T> : T extends boolean | null | undefined ? Exclude<T, null | undefined> extends boolean ? BooleanType<P, T extends boolean ? T : boolean> : CommonType<P, T> : CommonType<P, T>;
|
|
77
|
-
export type GenericType<P, T> = RestrictedType<P, T> | DynamicType<P> | QueryBuilderType<P>;
|
|
82
|
+
export type GenericType<P extends any[], T> = RestrictedType<P, T> | DynamicType<P> | QueryBuilderType<P>;
|
|
78
83
|
export interface ParamTypeBase {
|
|
79
84
|
name: string;
|
|
80
85
|
}
|
|
81
|
-
export type ParamType<P, T> = ParamTypeBase & GenericType<P, T>;
|
|
82
|
-
export type RequiredParam<P, T> = ParamTypeBase & ParamType<P, T> & {
|
|
86
|
+
export type ParamType<P extends any[], T> = ParamTypeBase & GenericType<P, T>;
|
|
87
|
+
export type RequiredParam<P extends any[], T> = ParamTypeBase & ParamType<P, T> & {
|
|
83
88
|
isOptional?: false;
|
|
84
89
|
isRestParameter?: false;
|
|
85
90
|
};
|
|
86
|
-
export type OptionalParam<P, T> = ParamTypeBase & ParamType<P, T> & {
|
|
91
|
+
export type OptionalParam<P extends any[], T> = ParamTypeBase & ParamType<P, T> & {
|
|
87
92
|
isRestParameter?: false;
|
|
88
93
|
};
|
|
89
|
-
export type RestParam<P, T> = ParamTypeBase & ParamType<P, T> & {
|
|
94
|
+
export type RestParam<P extends any[], T> = ParamTypeBase & ParamType<P, T> & {
|
|
90
95
|
isOptional?: false;
|
|
91
96
|
isRestParameter: true;
|
|
92
97
|
};
|
|
@@ -95,8 +100,14 @@ type OptionalParams<T extends any[]> = T extends [
|
|
|
95
100
|
...RequiredParams<T>,
|
|
96
101
|
...infer R
|
|
97
102
|
] ? [...R] : [];
|
|
98
|
-
type HandleRequiredParams<P, R extends any[]> = R extends [
|
|
99
|
-
|
|
103
|
+
type HandleRequiredParams<P extends any[], R extends any[]> = R extends [
|
|
104
|
+
infer H,
|
|
105
|
+
...infer T
|
|
106
|
+
] ? [string | RequiredParam<P, H>, ...HandleRequiredParams<P, T>] : [];
|
|
107
|
+
type HandleOptionalParams<P extends any[], R extends any[]> = R extends [
|
|
108
|
+
infer H,
|
|
109
|
+
...infer T
|
|
110
|
+
] ? [] | [
|
|
100
111
|
string | OptionalParam<P, H | undefined>,
|
|
101
112
|
...HandleOptionalParams<P, T>
|
|
102
113
|
] : R extends [] ? [] : R extends Array<infer T> ? [] | [RestParam<P, T[]>] : [];
|
|
@@ -104,5 +115,5 @@ export type HandleParams<P extends any[]> = [
|
|
|
104
115
|
...HandleRequiredParams<P, RequiredParams<P>>,
|
|
105
116
|
...HandleOptionalParams<P, Required<OptionalParams<P>>>
|
|
106
117
|
];
|
|
107
|
-
export type HandleReturnType<P, T> = VoidType | ParamType<P, T>;
|
|
118
|
+
export type HandleReturnType<P extends any[], T> = VoidType<P> | ParamType<P, T>;
|
|
108
119
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const hostVersion = "1.0.
|
|
1
|
+
export declare const hostVersion = "1.0.239";
|
|
@@ -5,9 +5,15 @@ import { DateRangeStringsCore, DateStringCore, NumberTypeBaseCore, RichBooleanCo
|
|
|
5
5
|
import { QueryBuilderCore } from "./query-builder-types";
|
|
6
6
|
import { CommonTypeBase, ContextDependentConfig, Defaultable, GenericContext } from "./shared-controls";
|
|
7
7
|
import { Nullish } from "./type-utils";
|
|
8
|
-
|
|
8
|
+
/**
|
|
9
|
+
* `[string, number]` -> `[string | undefined, number | undefined]`
|
|
10
|
+
*/
|
|
11
|
+
export type PartialParams<P extends any[]> = {
|
|
12
|
+
[K in keyof P]: P[K] | undefined;
|
|
13
|
+
};
|
|
14
|
+
export type FunctionControlContext<P extends any[]> = GenericContext<PartialParams<P>, // Function params, each may be undefined
|
|
9
15
|
any>;
|
|
10
|
-
export type FunctionContextConfig<
|
|
16
|
+
export type FunctionContextConfig<P extends any[], R> = ContextDependentConfig<FunctionControlContext<P>, R>;
|
|
11
17
|
export interface TypeBaseDefault<Ctx extends any[], T> extends CommonTypeBase, Defaultable<Ctx, T> {
|
|
12
18
|
displayName?: string;
|
|
13
19
|
/**
|
|
@@ -16,77 +22,76 @@ export interface TypeBaseDefault<Ctx extends any[], T> extends CommonTypeBase, D
|
|
|
16
22
|
*/
|
|
17
23
|
hidden?: ContextDependentConfig<Ctx, boolean>;
|
|
18
24
|
}
|
|
19
|
-
export interface PlainStringType<T extends Nullish<string> = string> extends TypeBaseDefault<
|
|
25
|
+
export interface PlainStringType<P extends any[], T extends Nullish<string> = string> extends TypeBaseDefault<FunctionControlContext<P>, T> {
|
|
20
26
|
type: "string" | `'${T}'`;
|
|
21
27
|
}
|
|
22
|
-
export type StringType<P, T extends string = string> = "string" | PlainStringType<T> | ChoiceType<P, T> | DateStringType | DateRangeStringsType | AnyType
|
|
23
|
-
export interface PlainNumberType<T extends Nullish<number> = number> extends TypeBaseDefault<
|
|
28
|
+
export type StringType<P extends any[], T extends string = string> = "string" | PlainStringType<P, T> | ChoiceType<P, T> | DateStringType<P> | DateRangeStringsType<P> | AnyType<P>;
|
|
29
|
+
export interface PlainNumberType<P extends any[], T extends Nullish<number> = number> extends TypeBaseDefault<FunctionControlContext<P>, T> {
|
|
24
30
|
type: "number" | `${number extends T ? number : T}`;
|
|
25
31
|
}
|
|
26
|
-
export type NumberType<P, T extends number = number> = PlainNumberType<T> | (TypeBaseDefault<FunctionControlContext<P>, T> & NumberTypeBaseCore<FunctionControlContext<P>>) | ChoiceType<P, T> | AnyType
|
|
27
|
-
export interface PlainBooleanType<T extends Nullish<boolean> = boolean> extends TypeBaseDefault<
|
|
32
|
+
export type NumberType<P extends any[], T extends number = number> = PlainNumberType<P, T> | (TypeBaseDefault<FunctionControlContext<P>, T> & NumberTypeBaseCore<FunctionControlContext<P>>) | ChoiceType<P, T> | AnyType<P>;
|
|
33
|
+
export interface PlainBooleanType<P extends any[], T extends Nullish<boolean> = boolean> extends TypeBaseDefault<FunctionControlContext<P>, T> {
|
|
28
34
|
type: "boolean" | `${boolean extends T ? boolean : T}`;
|
|
29
35
|
}
|
|
30
|
-
export type BooleanType<P, T extends boolean = boolean> = PlainBooleanType<T> | (TypeBaseDefault<FunctionControlContext<P>, T> & RichBooleanCore) | ChoiceType<P, T> | AnyType
|
|
31
|
-
export type GraphQLType<P> = TypeBaseDefault<FunctionControlContext<P>, any> & GraphQLCore<FunctionControlContext<P>>;
|
|
32
|
-
export interface PlainNullType extends
|
|
36
|
+
export type BooleanType<P extends any[], T extends boolean = boolean> = PlainBooleanType<P, T> | (TypeBaseDefault<FunctionControlContext<P>, T> & RichBooleanCore) | ChoiceType<P, T> | AnyType<P>;
|
|
37
|
+
export type GraphQLType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, any> & GraphQLCore<FunctionControlContext<P>>;
|
|
38
|
+
export interface PlainNullType<P extends any[]> extends TypeBaseDefault<FunctionControlContext<P>, null> {
|
|
33
39
|
type: "null";
|
|
34
40
|
}
|
|
35
|
-
export type NullType = PlainNullType | AnyType
|
|
36
|
-
export interface PlainUndefinedType extends
|
|
41
|
+
export type NullType<P extends any[]> = PlainNullType<P> | AnyType<P>;
|
|
42
|
+
export interface PlainUndefinedType<P extends any[]> extends TypeBaseDefault<FunctionControlContext<P>, undefined> {
|
|
37
43
|
type: "undefined";
|
|
38
44
|
}
|
|
39
|
-
export type UndefinedType = PlainUndefinedType | AnyType
|
|
45
|
+
export type UndefinedType<P extends any[]> = PlainUndefinedType<P> | AnyType<P>;
|
|
40
46
|
export type ExtractObjectKeys<T extends object> = keyof T & string;
|
|
41
|
-
export type ObjectType<P, T extends
|
|
42
|
-
export type ArrayType<P> = TypeBaseDefault<FunctionControlContext<P>,
|
|
43
|
-
export type QueryBuilderType<P> = TypeBaseDefault<FunctionControlContext<P>, any> & QueryBuilderCore<FunctionControlContext<P>>;
|
|
44
|
-
export interface PlainAnyType extends TypeBaseDefault<FunctionControlContext<
|
|
47
|
+
export type ObjectType<P extends any[], T extends Record<string, any> = Record<string, any>> = TypeBaseDefault<FunctionControlContext<P>, T> & ObjectTypeBaseCore<FunctionControlContext<P>, GenericType<P, any>, ExtractObjectKeys<T>>;
|
|
48
|
+
export type ArrayType<P extends any[], T extends any[] = any[]> = TypeBaseDefault<FunctionControlContext<P>, T> & ArrayTypeBaseCore<FunctionControlContext<P>, GenericType<P, any>>;
|
|
49
|
+
export type QueryBuilderType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, any> & QueryBuilderCore<FunctionControlContext<P>>;
|
|
50
|
+
export interface PlainAnyType<P extends any[]> extends TypeBaseDefault<FunctionControlContext<P>, any> {
|
|
45
51
|
type: "any";
|
|
46
52
|
}
|
|
47
|
-
export type AnyType = PlainAnyType
|
|
53
|
+
export type AnyType<P extends any[]> = PlainAnyType<P>;
|
|
48
54
|
export interface PlainVoidType extends CommonTypeBase {
|
|
49
55
|
type: "void";
|
|
50
56
|
}
|
|
51
|
-
export type VoidType = PlainVoidType | AnyType
|
|
57
|
+
export type VoidType<P extends any[]> = PlainVoidType | AnyType<P>;
|
|
52
58
|
type IsAny<T> = 0 extends 1 & T ? true : false;
|
|
53
|
-
type CommonType<P, T> = T extends GraphQLValue ? GraphQLType<P> : T extends null ? NullType : T extends undefined ? UndefinedType : T extends Array<any> ? ArrayType<P> : T extends object ? ObjectType<P, T> : AnyType
|
|
54
|
-
type AnyTyping<P, T> = T extends string ? StringType<P, T> : T extends number ? NumberType<P, T> : T extends boolean ? BooleanType<P, T> : CommonType<P, T>;
|
|
55
|
-
export type
|
|
56
|
-
export
|
|
57
|
-
export interface SingleChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
59
|
+
type CommonType<P extends any[], T> = T extends GraphQLValue ? GraphQLType<P> : T extends null ? NullType<P> : T extends undefined ? UndefinedType<P> : T extends Array<any> ? ArrayType<P> : T extends object ? ObjectType<P, T> : AnyType<P>;
|
|
60
|
+
type AnyTyping<P extends any[], T> = T extends string ? StringType<P, T> : T extends number ? NumberType<P, T> : T extends boolean ? BooleanType<P, T> : CommonType<P, T>;
|
|
61
|
+
export type ChoiceTypeBase<P extends any[], Opt extends ChoiceValue = ChoiceValue> = TypeBaseDefault<FunctionControlContext<P>, Opt | Opt[]> & ChoiceCore<FunctionControlContext<P>, Opt>;
|
|
62
|
+
export interface SingleChoiceType<P extends any[], Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
58
63
|
multiSelect?: false;
|
|
59
64
|
}
|
|
60
|
-
export interface MultiChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
65
|
+
export interface MultiChoiceType<P extends any[], Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
61
66
|
multiSelect: true;
|
|
62
67
|
}
|
|
63
|
-
export interface CustomChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
64
|
-
multiSelect: FunctionContextConfig<
|
|
68
|
+
export interface CustomChoiceType<P extends any[], Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
|
|
69
|
+
multiSelect: FunctionContextConfig<P, boolean>;
|
|
65
70
|
}
|
|
66
|
-
export type ChoiceType<P, T extends ChoiceValue = ChoiceValue> = SingleChoiceType<P, T> | MultiChoiceType<P, T> | CustomChoiceType<P, T>;
|
|
67
|
-
export type DateStringType = TypeBaseDefault<FunctionControlContext<
|
|
68
|
-
export type DateRangeStringsType = TypeBaseDefault<FunctionControlContext<
|
|
71
|
+
export type ChoiceType<P extends any[], T extends ChoiceValue = ChoiceValue> = SingleChoiceType<P, T> | MultiChoiceType<P, T> | CustomChoiceType<P, T>;
|
|
72
|
+
export type DateStringType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, string> & DateStringCore;
|
|
73
|
+
export type DateRangeStringsType<P extends any[]> = TypeBaseDefault<FunctionControlContext<P>, [
|
|
69
74
|
string,
|
|
70
75
|
string
|
|
71
76
|
]> & DateRangeStringsCore;
|
|
72
|
-
export interface DynamicType<P> extends CommonTypeBase, DynamicCore<FunctionControlContext<
|
|
77
|
+
export interface DynamicType<P extends any[]> extends CommonTypeBase, DynamicCore<FunctionControlContext<P>, GenericType<P, any>> {
|
|
73
78
|
}
|
|
74
|
-
export type RestrictedType<P, T> = IsAny<T> extends true ? AnyTyping<P, T> : [
|
|
79
|
+
export type RestrictedType<P extends any[], T> = IsAny<T> extends true ? AnyTyping<P, T> : [
|
|
75
80
|
T
|
|
76
81
|
] extends [string] ? StringType<P, T> : [T] extends [number] ? NumberType<P, T> : [T] extends [boolean] ? BooleanType<P, T> : T extends string | null | undefined ? Exclude<T, null | undefined> extends string ? StringType<P, T extends string ? T : string> : CommonType<P, T> : T extends number | null | undefined ? Exclude<T, null | undefined> extends number ? NumberType<P, T extends number ? T : number> : CommonType<P, T> : T extends boolean | null | undefined ? Exclude<T, null | undefined> extends boolean ? BooleanType<P, T extends boolean ? T : boolean> : CommonType<P, T> : CommonType<P, T>;
|
|
77
|
-
export type GenericType<P, T> = RestrictedType<P, T> | DynamicType<P> | QueryBuilderType<P>;
|
|
82
|
+
export type GenericType<P extends any[], T> = RestrictedType<P, T> | DynamicType<P> | QueryBuilderType<P>;
|
|
78
83
|
export interface ParamTypeBase {
|
|
79
84
|
name: string;
|
|
80
85
|
}
|
|
81
|
-
export type ParamType<P, T> = ParamTypeBase & GenericType<P, T>;
|
|
82
|
-
export type RequiredParam<P, T> = ParamTypeBase & ParamType<P, T> & {
|
|
86
|
+
export type ParamType<P extends any[], T> = ParamTypeBase & GenericType<P, T>;
|
|
87
|
+
export type RequiredParam<P extends any[], T> = ParamTypeBase & ParamType<P, T> & {
|
|
83
88
|
isOptional?: false;
|
|
84
89
|
isRestParameter?: false;
|
|
85
90
|
};
|
|
86
|
-
export type OptionalParam<P, T> = ParamTypeBase & ParamType<P, T> & {
|
|
91
|
+
export type OptionalParam<P extends any[], T> = ParamTypeBase & ParamType<P, T> & {
|
|
87
92
|
isRestParameter?: false;
|
|
88
93
|
};
|
|
89
|
-
export type RestParam<P, T> = ParamTypeBase & ParamType<P, T> & {
|
|
94
|
+
export type RestParam<P extends any[], T> = ParamTypeBase & ParamType<P, T> & {
|
|
90
95
|
isOptional?: false;
|
|
91
96
|
isRestParameter: true;
|
|
92
97
|
};
|
|
@@ -95,8 +100,14 @@ type OptionalParams<T extends any[]> = T extends [
|
|
|
95
100
|
...RequiredParams<T>,
|
|
96
101
|
...infer R
|
|
97
102
|
] ? [...R] : [];
|
|
98
|
-
type HandleRequiredParams<P, R extends any[]> = R extends [
|
|
99
|
-
|
|
103
|
+
type HandleRequiredParams<P extends any[], R extends any[]> = R extends [
|
|
104
|
+
infer H,
|
|
105
|
+
...infer T
|
|
106
|
+
] ? [string | RequiredParam<P, H>, ...HandleRequiredParams<P, T>] : [];
|
|
107
|
+
type HandleOptionalParams<P extends any[], R extends any[]> = R extends [
|
|
108
|
+
infer H,
|
|
109
|
+
...infer T
|
|
110
|
+
] ? [] | [
|
|
100
111
|
string | OptionalParam<P, H | undefined>,
|
|
101
112
|
...HandleOptionalParams<P, T>
|
|
102
113
|
] : R extends [] ? [] : R extends Array<infer T> ? [] | [RestParam<P, T[]>] : [];
|
|
@@ -104,5 +115,5 @@ export type HandleParams<P extends any[]> = [
|
|
|
104
115
|
...HandleRequiredParams<P, RequiredParams<P>>,
|
|
105
116
|
...HandleOptionalParams<P, Required<OptionalParams<P>>>
|
|
106
117
|
];
|
|
107
|
-
export type HandleReturnType<P, T> = VoidType | ParamType<P, T>;
|
|
118
|
+
export type HandleReturnType<P extends any[], T> = VoidType<P> | ParamType<P, T>;
|
|
108
119
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const hostVersion = "1.0.
|
|
1
|
+
export declare const hostVersion = "1.0.239";
|