@plasmicapp/host 1.0.231 → 1.0.232

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.
@@ -8,82 +8,78 @@ import { Nullish } from "./type-utils";
8
8
  export type FunctionControlContext<P> = GenericContext<Partial<P>, // Partial function props
9
9
  any>;
10
10
  export type FunctionContextConfig<Args extends any[], R> = ContextDependentConfig<FunctionControlContext<Args>, R>;
11
- export interface ParamTypeBase extends CommonTypeBase {
12
- name: string;
13
- isOptional?: boolean;
14
- isRestParameter?: boolean;
15
- }
16
- export type ParamTypeBaseDefault<Ctx extends any[], T> = ParamTypeBase & Defaultable<Ctx, T>;
17
- export interface FunctionMeta extends CommonTypeBase {
18
- name: string;
19
- rest?: boolean;
20
- }
21
- export interface PlainStringType<T extends Nullish<string> = string> extends ParamTypeBaseDefault<any[], T> {
11
+ export type TypeBaseDefault<Ctx extends any[], T> = CommonTypeBase & Defaultable<Ctx, T>;
12
+ export interface PlainStringType<T extends Nullish<string> = string> extends TypeBaseDefault<any[], T> {
22
13
  type: "string" | `'${T}'`;
23
14
  }
24
15
  export type StringType<P, T extends string = string> = "string" | PlainStringType<T> | ChoiceType<P, T> | DateStringType | DateRangeStringsType | AnyType;
25
- export interface PlainNumberType<T extends Nullish<number> = number> extends ParamTypeBaseDefault<any[], T> {
16
+ export interface PlainNumberType<T extends Nullish<number> = number> extends TypeBaseDefault<any[], T> {
26
17
  type: "number" | `${number extends T ? number : T}`;
27
18
  }
28
- export type NumberType<P, T extends number = number> = PlainNumberType<T> | (ParamTypeBaseDefault<FunctionControlContext<P>, T> & NumberTypeBaseCore<FunctionControlContext<P>>) | ChoiceType<P, T> | AnyType;
29
- export interface PlainBooleanType<T extends Nullish<boolean> = boolean> extends ParamTypeBaseDefault<any[], T> {
19
+ export type NumberType<P, T extends number = number> = PlainNumberType<T> | (TypeBaseDefault<FunctionControlContext<P>, T> & NumberTypeBaseCore<FunctionControlContext<P>>) | ChoiceType<P, T> | AnyType;
20
+ export interface PlainBooleanType<T extends Nullish<boolean> = boolean> extends TypeBaseDefault<any[], T> {
30
21
  type: "boolean" | `${boolean extends T ? boolean : T}`;
31
22
  }
32
- export type BooleanType<P, T extends boolean = boolean> = PlainBooleanType<T> | (ParamTypeBaseDefault<FunctionControlContext<P>, T> & RichBooleanCore) | ChoiceType<P, T> | AnyType;
33
- export type GraphQLType<P> = ParamTypeBaseDefault<FunctionControlContext<P>, any> & GraphQLCore<FunctionControlContext<P>>;
34
- export interface PlainNullType extends ParamTypeBaseDefault<any[], null> {
23
+ export type BooleanType<P, T extends boolean = boolean> = PlainBooleanType<T> | (TypeBaseDefault<FunctionControlContext<P>, T> & RichBooleanCore) | ChoiceType<P, T> | AnyType;
24
+ export type GraphQLType<P> = TypeBaseDefault<FunctionControlContext<P>, any> & GraphQLCore<FunctionControlContext<P>>;
25
+ export interface PlainNullType extends TypeBaseDefault<any[], null> {
35
26
  type: "null";
36
27
  }
37
28
  export type NullType = PlainNullType | AnyType;
38
- export interface PlainUndefinedType extends ParamTypeBaseDefault<any[], undefined> {
29
+ export interface PlainUndefinedType extends TypeBaseDefault<any[], undefined> {
39
30
  type: "undefined";
40
31
  }
41
32
  export type UndefinedType = PlainUndefinedType | AnyType;
42
- export type ObjectType<P> = ParamTypeBaseDefault<FunctionControlContext<P>, Record<string, any>> & ObjectTypeBaseCore<FunctionControlContext<P>, AnyTyping<P, any>>;
43
- export type ArrayType<P> = ParamTypeBaseDefault<FunctionControlContext<P>, any[]> & ArrayTypeBaseCore<FunctionControlContext<P>, AnyTyping<P, any>>;
44
- export type QueryBuilderType<P> = ParamTypeBaseDefault<FunctionControlContext<P>, any> & QueryBuilderCore<FunctionControlContext<P>>;
45
- export interface PlainAnyType extends ParamTypeBaseDefault<FunctionControlContext<any>, any> {
33
+ export type ExtractObjectKeys<T extends object> = keyof T & string;
34
+ export type ObjectType<P, T extends object> = TypeBaseDefault<FunctionControlContext<P>, T> & ObjectTypeBaseCore<FunctionControlContext<P>, GenericType<P, any>, ExtractObjectKeys<T>>;
35
+ export type ArrayType<P> = TypeBaseDefault<FunctionControlContext<P>, any[]> & ArrayTypeBaseCore<FunctionControlContext<P>, GenericType<P, any>>;
36
+ export type QueryBuilderType<P> = TypeBaseDefault<FunctionControlContext<P>, any> & QueryBuilderCore<FunctionControlContext<P>>;
37
+ export interface PlainAnyType extends TypeBaseDefault<FunctionControlContext<any>, any> {
46
38
  type: "any";
47
39
  }
48
40
  export type AnyType = PlainAnyType;
49
- export interface PlainVoidType extends ParamTypeBase {
41
+ export interface PlainVoidType extends CommonTypeBase {
50
42
  type: "void";
51
43
  }
52
44
  export type VoidType = PlainVoidType | AnyType;
53
45
  type IsAny<T> = 0 extends 1 & T ? true : false;
54
- 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> : AnyType;
46
+ 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;
55
47
  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>;
56
48
  export type ToTuple<T> = T extends any[] ? T : never;
57
- export type FunctionChoiceType<Args, Opt extends ChoiceValue = ChoiceValue> = FunctionMeta & Defaultable<FunctionControlContext<ToTuple<Args>>, Opt | Opt[]> & ChoiceCore<FunctionControlContext<ToTuple<Args>>, Opt>;
58
- export interface SingleChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends FunctionChoiceType<P, Opt> {
49
+ export type ChoiceTypeBase<Args, Opt extends ChoiceValue = ChoiceValue> = TypeBaseDefault<FunctionControlContext<ToTuple<Args>>, Opt | Opt[]> & ChoiceCore<FunctionControlContext<ToTuple<Args>>, Opt>;
50
+ export interface SingleChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
59
51
  multiSelect?: false;
60
52
  }
61
- export interface MultiChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends FunctionChoiceType<P, Opt> {
53
+ export interface MultiChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
62
54
  multiSelect: true;
63
55
  }
64
- export interface CustomChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends FunctionChoiceType<P, Opt> {
56
+ export interface CustomChoiceType<P, Opt extends ChoiceValue = ChoiceValue> extends ChoiceTypeBase<P, Opt> {
65
57
  multiSelect: FunctionContextConfig<ToTuple<P>, boolean>;
66
58
  }
67
59
  export type ChoiceType<P, T extends ChoiceValue = ChoiceValue> = SingleChoiceType<P, T> | MultiChoiceType<P, T> | CustomChoiceType<P, T>;
68
- export type DateStringType = ParamTypeBaseDefault<FunctionControlContext<string>, string> & DateStringCore;
69
- export type DateRangeStringsType = ParamTypeBaseDefault<FunctionControlContext<[string, string]>, [
60
+ export type DateStringType = TypeBaseDefault<FunctionControlContext<string>, string> & DateStringCore;
61
+ export type DateRangeStringsType = TypeBaseDefault<FunctionControlContext<[string, string]>, [
70
62
  string,
71
63
  string
72
64
  ]> & DateRangeStringsCore;
73
- export interface DynamicType<P> extends ParamTypeBase, DynamicCore<FunctionControlContext<ToTuple<P>>, ParamType<P, any>> {
65
+ export interface DynamicType<P> extends CommonTypeBase, DynamicCore<FunctionControlContext<ToTuple<P>>, GenericType<P, any>> {
74
66
  }
75
67
  export type RestrictedType<P, T> = IsAny<T> extends true ? AnyTyping<P, T> : [
76
68
  T
77
69
  ] 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>;
78
- export type ParamType<P, T> = RestrictedType<P, T> | DynamicType<P> | QueryBuilderType<P>;
79
- export type RequiredParam<P, T> = ParamType<P, T> & {
70
+ export type GenericType<P, T> = RestrictedType<P, T> | DynamicType<P> | QueryBuilderType<P>;
71
+ export interface ParamTypeBase {
72
+ name: string;
73
+ }
74
+ export type ParamType<P, T> = ParamTypeBase & GenericType<P, T>;
75
+ export type RequiredParam<P, T> = ParamTypeBase & ParamType<P, T> & {
80
76
  isOptional?: false;
81
77
  isRestParameter?: false;
82
78
  };
83
- export type OptionalParam<P, T> = ParamType<P, T> & {
79
+ export type OptionalParam<P, T> = ParamTypeBase & ParamType<P, T> & {
84
80
  isRestParameter?: false;
85
81
  };
86
- export type RestParam<P, T> = ParamType<P, T> & {
82
+ export type RestParam<P, T> = ParamTypeBase & ParamType<P, T> & {
87
83
  isOptional?: false;
88
84
  isRestParameter: true;
89
85
  };
@@ -1 +1 @@
1
- export declare const hostVersion = "1.0.231";
1
+ export declare const hostVersion = "1.0.232";