@confect/core 1.0.3 → 3.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 CHANGED
@@ -1,5 +1,13 @@
1
1
  # @confect/core
2
2
 
3
+ ## 3.0.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 5fb6a61: Add support for plain Convex functions. Plain Convex queries, mutations, and actions can now be included in your Confect spec and impl tree using new `FunctionSpec.convexPublic*` and `FunctionSpec.convexInternal*` constructors. This enables interop with Convex components and libraries (such as Workpool, Workflow, Migrations, and Better Auth) that require user-defined or -provided Convex functions.
8
+
9
+ ## 2.0.0
10
+
3
11
  ## 1.0.3
4
12
 
5
13
  ## 1.0.2
@@ -0,0 +1,110 @@
1
+ import { Data, Schema } from "effect";
2
+ import * as effect_Unify0 from "effect/Unify";
3
+ import { DefaultFunctionArgs } from "convex/server";
4
+
5
+ //#region src/FunctionProvenance.d.ts
6
+ declare namespace FunctionProvenance_d_exports {
7
+ export { AnyConfect, AnyConvex, Confect, Convex, FunctionProvenance };
8
+ }
9
+ type FunctionProvenance = Data.TaggedEnum<{
10
+ Confect: {
11
+ args: Schema.Schema.AnyNoContext;
12
+ returns: Schema.Schema.AnyNoContext;
13
+ };
14
+ Convex: {
15
+ /** @internal */_args: DefaultFunctionArgs; /** @internal */
16
+ _returns: any;
17
+ };
18
+ }>;
19
+ interface Confect<Args extends Schema.Schema.AnyNoContext, Returns extends Schema.Schema.AnyNoContext> {
20
+ readonly _tag: "Confect";
21
+ readonly args: Args;
22
+ readonly returns: Returns;
23
+ }
24
+ interface AnyConfect extends Confect<Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
25
+ interface Convex<Args extends DefaultFunctionArgs, Returns> {
26
+ readonly _tag: "Convex";
27
+ readonly _args: Args;
28
+ readonly _returns: Returns;
29
+ }
30
+ interface AnyConvex extends Convex<DefaultFunctionArgs, any> {}
31
+ declare const FunctionProvenance: {
32
+ readonly Confect: Data.Case.Constructor<{
33
+ readonly _tag: "Confect";
34
+ readonly args: Schema.Schema.AnyNoContext;
35
+ readonly returns: Schema.Schema.AnyNoContext;
36
+ }, "_tag">;
37
+ readonly Convex: Data.Case.Constructor<{
38
+ readonly _tag: "Convex";
39
+ readonly _args: DefaultFunctionArgs;
40
+ readonly _returns: any;
41
+ }, "_tag">;
42
+ readonly $is: <Tag extends "Confect" | "Convex">(tag: Tag) => (u: unknown) => u is Extract<{
43
+ readonly _tag: "Confect";
44
+ readonly args: Schema.Schema.AnyNoContext;
45
+ readonly returns: Schema.Schema.AnyNoContext;
46
+ }, {
47
+ readonly _tag: Tag;
48
+ }> | Extract<{
49
+ readonly _tag: "Convex";
50
+ readonly _args: DefaultFunctionArgs;
51
+ readonly _returns: any;
52
+ }, {
53
+ readonly _tag: Tag;
54
+ }>;
55
+ readonly $match: {
56
+ <const Cases extends {
57
+ readonly Confect: (args: {
58
+ readonly _tag: "Confect";
59
+ readonly args: Schema.Schema.AnyNoContext;
60
+ readonly returns: Schema.Schema.AnyNoContext;
61
+ }) => any;
62
+ readonly Convex: (args: {
63
+ readonly _tag: "Convex";
64
+ readonly _args: DefaultFunctionArgs;
65
+ readonly _returns: any;
66
+ }) => any;
67
+ }>(cases: Cases & { [K in Exclude<keyof Cases, "Confect" | "Convex">]: never }): (value: {
68
+ readonly _tag: "Confect";
69
+ readonly args: Schema.Schema.AnyNoContext;
70
+ readonly returns: Schema.Schema.AnyNoContext;
71
+ } | {
72
+ readonly _tag: "Convex";
73
+ readonly _args: DefaultFunctionArgs;
74
+ readonly _returns: any;
75
+ }) => effect_Unify0.Unify<ReturnType<Cases["Confect" | "Convex"]>>;
76
+ <const Cases extends {
77
+ readonly Confect: (args: {
78
+ readonly _tag: "Confect";
79
+ readonly args: Schema.Schema.AnyNoContext;
80
+ readonly returns: Schema.Schema.AnyNoContext;
81
+ }) => any;
82
+ readonly Convex: (args: {
83
+ readonly _tag: "Convex";
84
+ readonly _args: DefaultFunctionArgs;
85
+ readonly _returns: any;
86
+ }) => any;
87
+ }>(value: {
88
+ readonly _tag: "Confect";
89
+ readonly args: Schema.Schema.AnyNoContext;
90
+ readonly returns: Schema.Schema.AnyNoContext;
91
+ } | {
92
+ readonly _tag: "Convex";
93
+ readonly _args: DefaultFunctionArgs;
94
+ readonly _returns: any;
95
+ }, cases: Cases & { [K in Exclude<keyof Cases, "Confect" | "Convex">]: never }): effect_Unify0.Unify<ReturnType<Cases["Confect" | "Convex"]>>;
96
+ };
97
+ };
98
+ declare const Confect: <Args extends Schema.Schema.AnyNoContext, Returns extends Schema.Schema.AnyNoContext>(args: Args, returns: Returns) => {
99
+ readonly _tag: "Confect";
100
+ readonly args: Schema.Schema.AnyNoContext;
101
+ readonly returns: Schema.Schema.AnyNoContext;
102
+ };
103
+ declare const Convex: <_Args extends DefaultFunctionArgs, _Returns>() => {
104
+ readonly _tag: "Convex";
105
+ readonly _args: DefaultFunctionArgs;
106
+ readonly _returns: any;
107
+ };
108
+ //#endregion
109
+ export { AnyConfect, AnyConvex, Confect, Convex, FunctionProvenance, FunctionProvenance_d_exports };
110
+ //# sourceMappingURL=FunctionProvenance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionProvenance.d.ts","names":[],"sources":["../src/FunctionProvenance.ts"],"mappings":";;;;;;;;KAIY,kBAAA,GAAqB,IAAA,CAAK,UAAA;EACpC,OAAA;IACE,IAAA,EAAM,MAAA,CAAO,MAAA,CAAO,YAAA;IACpB,OAAA,EAAS,MAAA,CAAO,MAAA,CAAO,YAAA;EAAA;EAEzB,MAAA;oBAEE,KAAA,EAAO,mBAAA;IAEP,QAAA;EAAA;AAAA;AAAA,UAIa,OAAA,cACF,MAAA,CAAO,MAAA,CAAO,YAAA,kBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAA,SAErB,IAAA;EAAA,SACA,IAAA,EAAM,IAAA;EAAA,SACN,OAAA,EAAS,OAAA;AAAA;AAAA,UAGH,UAAA,SAAmB,OAAA,CAClC,MAAA,CAAO,MAAA,CAAO,YAAA,EACd,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA,UAGC,MAAA,cAAoB,mBAAA;EAAA,SAC1B,IAAA;EAAA,SACA,KAAA,EAAO,IAAA;EAAA,SACP,QAAA,EAAU,OAAA;AAAA;AAAA,UAGJ,SAAA,SAAkB,MAAA,CAAO,mBAAA;AAAA,cAE7B,kBAAA;EAAA;;mBAjCH,MAAA,CAAO,MAAA,CAAO,YAAA;IAAA,kBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAA;EAAA;;oBAIhB,mBAAA;IAAA;;;;mBALD,MAAA,CAAO,MAAA,CAAO,YAAA;IAAA,kBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAA;IAAA;;;oBAIhB,mBAAA;IAAA;;;;;;;;uBALD,MAAA,CAAO,MAAA,CAAO,YAAA;QAAA,kBACX,MAAA,CAAO,MAAA,CAAO,YAAA;MAAA;MAAA;;wBAIhB,mBAAA;QAAA;;;;qBALD,MAAA,CAAO,MAAA,CAAO,YAAA;MAAA,kBACX,MAAA,CAAO,MAAA,CAAO,YAAA;IAAA;MAAA;sBAIhB,mBAAA;MAAA;;;;;uBALD,MAAA,CAAO,MAAA,CAAO,YAAA;QAAA,kBACX,MAAA,CAAO,MAAA,CAAO,YAAA;MAAA;MAAA;;wBAIhB,mBAAA;QAAA;;;;qBALD,MAAA,CAAO,MAAA,CAAO,YAAA;MAAA,kBACX,MAAA,CAAO,MAAA,CAAO,YAAA;IAAA;MAAA;sBAIhB,mBAAA;MAAA;;;;cA8BE,OAAA,gBACE,MAAA,CAAO,MAAA,CAAO,YAAA,kBACX,MAAA,CAAO,MAAA,CAAO,YAAA,EAE9B,IAAA,EAAM,IAAA,EACN,OAAA,EAAS,OAAA;EAAA;iBAxCD,MAAA,CAAO,MAAA,CAAO,YAAA;EAAA,kBACX,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA;AAAA,cA8Cd,MAAA,iBAAwB,mBAAA;EAAA;kBA1C1B,mBAAA;EAAA"}
@@ -0,0 +1,19 @@
1
+ import { __exportAll } from "./_virtual/_rolldown/runtime.js";
2
+ import { Data } from "effect";
3
+
4
+ //#region src/FunctionProvenance.ts
5
+ var FunctionProvenance_exports = /* @__PURE__ */ __exportAll({
6
+ Confect: () => Confect,
7
+ Convex: () => Convex,
8
+ FunctionProvenance: () => FunctionProvenance
9
+ });
10
+ const FunctionProvenance = Data.taggedEnum();
11
+ const Confect = (args, returns) => FunctionProvenance.Confect({
12
+ args,
13
+ returns
14
+ });
15
+ const Convex = () => FunctionProvenance.Convex({});
16
+
17
+ //#endregion
18
+ export { Confect, Convex, FunctionProvenance, FunctionProvenance_exports };
19
+ //# sourceMappingURL=FunctionProvenance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionProvenance.js","names":[],"sources":["../src/FunctionProvenance.ts"],"sourcesContent":["import type { DefaultFunctionArgs } from \"convex/server\";\nimport type { Schema } from \"effect\";\nimport { Data } from \"effect\";\n\nexport type FunctionProvenance = Data.TaggedEnum<{\n Confect: {\n args: Schema.Schema.AnyNoContext;\n returns: Schema.Schema.AnyNoContext;\n };\n Convex: {\n /** @internal */\n _args: DefaultFunctionArgs;\n /** @internal */\n _returns: any;\n };\n}>;\n\nexport interface Confect<\n Args extends Schema.Schema.AnyNoContext,\n Returns extends Schema.Schema.AnyNoContext,\n> {\n readonly _tag: \"Confect\";\n readonly args: Args;\n readonly returns: Returns;\n}\n\nexport interface AnyConfect extends Confect<\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport interface Convex<Args extends DefaultFunctionArgs, Returns> {\n readonly _tag: \"Convex\";\n readonly _args: Args;\n readonly _returns: Returns;\n}\n\nexport interface AnyConvex extends Convex<DefaultFunctionArgs, any> {}\n\nexport const FunctionProvenance = Data.taggedEnum<FunctionProvenance>();\n\nexport const Confect = <\n Args extends Schema.Schema.AnyNoContext,\n Returns extends Schema.Schema.AnyNoContext,\n>(\n args: Args,\n returns: Returns,\n) =>\n FunctionProvenance.Confect({\n args,\n returns,\n });\n\nexport const Convex = <_Args extends DefaultFunctionArgs, _Returns>() =>\n FunctionProvenance.Convex(\n {} as {\n _args: _Args;\n _returns: _Returns;\n },\n );\n"],"mappings":";;;;;;;;;AAuCA,MAAa,qBAAqB,KAAK,YAAgC;AAEvE,MAAa,WAIX,MACA,YAEA,mBAAmB,QAAQ;CACzB;CACA;CACD,CAAC;AAEJ,MAAa,eACX,mBAAmB,OACjB,EAAE,CAIH"}
@@ -1,48 +1,95 @@
1
- import { GetFunctionType, Runtime, RuntimeAndFunctionType, WithRuntime } from "./RuntimeAndFunctionType.js";
1
+ import { AnyConfect as AnyConfect$1, AnyConvex as AnyConvex$1, Confect, Convex, FunctionProvenance } from "./FunctionProvenance.js";
2
+ import { Runtime, RuntimeAndFunctionType, WithRuntime } from "./RuntimeAndFunctionType.js";
2
3
  import { Schema } from "effect";
3
4
  import { FunctionType, FunctionVisibility, RegisteredAction, RegisteredMutation, RegisteredQuery } from "convex/server";
4
5
 
5
6
  //#region src/FunctionSpec.d.ts
6
7
  declare namespace FunctionSpec_d_exports {
7
- export { Any, AnyWithProps, AnyWithPropsWithFunctionType, AnyWithPropsWithRuntime, Args, FunctionSpec, GetFunctionVisibility, GetRuntimeAndFunctionType, Name, RegisteredFunction, Returns, TypeId, WithFunctionType, WithName, WithRuntimeAndFunctionType, WithoutName, internalAction, internalMutation, internalNodeAction, internalQuery, isFunctionSpec, publicAction, publicMutation, publicNodeAction, publicQuery };
8
+ export { Any, AnyConfect, AnyConvex, AnyWithProps, AnyWithPropsWithFunctionProvenance, AnyWithPropsWithFunctionType, AnyWithPropsWithRuntime, Args, EncodedArgs, EncodedReturns, FunctionSpec, GetFunctionVisibility, GetRuntimeAndFunctionType, Name, Returns, TypeId, WithFunctionProvenance, WithFunctionType, WithName, WithRuntimeAndFunctionType, WithoutName, convexInternalAction, convexInternalMutation, convexInternalNodeAction, convexInternalQuery, convexPublicAction, convexPublicMutation, convexPublicNodeAction, convexPublicQuery, internalAction, internalMutation, internalNodeAction, internalQuery, isFunctionSpec, publicAction, publicMutation, publicNodeAction, publicQuery };
8
9
  }
9
10
  declare const TypeId = "@confect/core/FunctionSpec";
10
11
  type TypeId = typeof TypeId;
11
12
  declare const isFunctionSpec: (u: unknown) => u is AnyWithProps;
12
- interface FunctionSpec<RuntimeAndFunctionType_ extends RuntimeAndFunctionType, FunctionVisibility_ extends FunctionVisibility, Name_ extends string, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext> {
13
+ interface FunctionSpec<RuntimeAndFunctionType_ extends RuntimeAndFunctionType, FunctionVisibility_ extends FunctionVisibility, Name_ extends string, FunctionProvenance_ extends FunctionProvenance> {
13
14
  readonly [TypeId]: TypeId;
14
15
  readonly runtimeAndFunctionType: RuntimeAndFunctionType_;
15
16
  readonly functionVisibility: FunctionVisibility_;
16
17
  readonly name: Name_;
17
- readonly args: Args_;
18
- readonly returns: Returns_;
18
+ readonly functionProvenance: FunctionProvenance_;
19
19
  }
20
20
  interface Any {
21
21
  readonly [TypeId]: TypeId;
22
22
  }
23
- interface AnyWithProps extends FunctionSpec<RuntimeAndFunctionType, FunctionVisibility, string, Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
24
- interface AnyWithPropsWithRuntime<Runtime$1 extends Runtime> extends FunctionSpec<WithRuntime<Runtime$1>, FunctionVisibility, string, Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
25
- interface AnyWithPropsWithFunctionType<RuntimeAndFunctionType_ extends RuntimeAndFunctionType> extends FunctionSpec<RuntimeAndFunctionType_, FunctionVisibility, string, Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
26
- type GetRuntimeAndFunctionType<Function extends AnyWithProps> = Function["runtimeAndFunctionType"];
27
- type GetFunctionVisibility<Function extends AnyWithProps> = Function["functionVisibility"];
28
- type Name<Function extends AnyWithProps> = Function["name"];
29
- type Args<Function extends AnyWithProps> = Function["args"];
30
- type Returns<Function extends AnyWithProps> = Function["returns"];
31
- type WithName<Function extends AnyWithProps, Name_ extends string> = Extract<Function, {
23
+ interface AnyWithProps extends FunctionSpec<RuntimeAndFunctionType, FunctionVisibility, string, FunctionProvenance> {}
24
+ interface AnyConfect extends FunctionSpec<RuntimeAndFunctionType, FunctionVisibility, string, AnyConfect$1> {}
25
+ interface AnyConvex extends FunctionSpec<RuntimeAndFunctionType, FunctionVisibility, string, AnyConvex$1> {}
26
+ interface AnyWithPropsWithRuntime<Runtime$1 extends Runtime> extends FunctionSpec<WithRuntime<Runtime$1>, FunctionVisibility, string, FunctionProvenance> {}
27
+ interface AnyWithPropsWithFunctionType<RuntimeAndFunctionType_ extends RuntimeAndFunctionType> extends FunctionSpec<RuntimeAndFunctionType_, FunctionVisibility, string, FunctionProvenance> {}
28
+ interface AnyWithPropsWithFunctionProvenance<FunctionProvenance_ extends FunctionProvenance> extends FunctionSpec<RuntimeAndFunctionType, FunctionVisibility, string, FunctionProvenance_> {}
29
+ type GetRuntimeAndFunctionType<FunctionSpec_ extends AnyWithProps> = FunctionSpec_["runtimeAndFunctionType"];
30
+ type GetFunctionVisibility<FunctionSpec_ extends AnyWithProps> = FunctionSpec_["functionVisibility"];
31
+ type Name<FunctionSpec_ extends AnyWithProps> = FunctionSpec_["name"];
32
+ type Args<FunctionSpec_ extends AnyWithProps> = FunctionSpec_ extends {
33
+ functionProvenance: {
34
+ _tag: "Confect";
35
+ args: infer ArgsSchema_ extends Schema.Schema.AnyNoContext;
36
+ };
37
+ } ? ArgsSchema_["Type"] : FunctionSpec_ extends {
38
+ functionProvenance: {
39
+ _tag: "Convex";
40
+ _args: infer Args_;
41
+ };
42
+ } ? Args_ : never;
43
+ type Returns<FunctionSpec_ extends AnyWithProps> = FunctionSpec_ extends {
44
+ functionProvenance: {
45
+ _tag: "Confect";
46
+ returns: infer ReturnsSchema_ extends Schema.Schema.AnyNoContext;
47
+ };
48
+ } ? ReturnsSchema_["Type"] : FunctionSpec_ extends {
49
+ functionProvenance: {
50
+ _tag: "Convex";
51
+ _returns: infer Returns_;
52
+ };
53
+ } ? Awaited<Returns_> : never;
54
+ type EncodedArgs<FunctionSpec_ extends AnyWithProps> = FunctionSpec_ extends {
55
+ functionProvenance: {
56
+ _tag: "Confect";
57
+ args: infer ArgsSchema_ extends Schema.Schema.AnyNoContext;
58
+ };
59
+ } ? ArgsSchema_["Encoded"] : FunctionSpec_ extends {
60
+ functionProvenance: {
61
+ _tag: "Convex";
62
+ _args: infer Args_;
63
+ };
64
+ } ? Args_ : never;
65
+ type EncodedReturns<FunctionSpec_ extends AnyWithProps> = FunctionSpec_ extends {
66
+ functionProvenance: {
67
+ _tag: "Confect";
68
+ returns: infer ReturnsSchema_ extends Schema.Schema.AnyNoContext;
69
+ };
70
+ } ? ReturnsSchema_["Encoded"] : FunctionSpec_ extends {
71
+ functionProvenance: {
72
+ _tag: "Convex";
73
+ _returns: infer Returns_;
74
+ };
75
+ } ? Returns_ : never;
76
+ type WithName<FunctionSpec_ extends AnyWithProps, Name_ extends string> = Extract<FunctionSpec_, {
32
77
  readonly name: Name_;
33
78
  }>;
34
- type WithRuntimeAndFunctionType<Function extends AnyWithProps, RuntimeAndFunctionType_ extends RuntimeAndFunctionType> = Extract<Function, {
79
+ type WithRuntimeAndFunctionType<FunctionSpec_ extends AnyWithProps, RuntimeAndFunctionType_ extends RuntimeAndFunctionType> = Extract<FunctionSpec_, {
35
80
  readonly runtimeAndFunctionType: RuntimeAndFunctionType_;
36
81
  }>;
37
- type WithFunctionType<Function extends AnyWithProps, FunctionType_ extends FunctionType> = Extract<Function, {
82
+ type WithFunctionType<FunctionSpec_ extends AnyWithProps, FunctionType_ extends FunctionType> = Extract<FunctionSpec_, {
38
83
  readonly runtimeAndFunctionType: {
39
84
  readonly functionType: FunctionType_;
40
85
  };
41
86
  }>;
42
- type WithoutName<Function extends AnyWithProps, Name_ extends Name<Function>> = Exclude<Function, {
87
+ type WithFunctionProvenance<FunctionSpec_ extends AnyWithProps, FunctionProvenance_ extends FunctionProvenance> = Extract<FunctionSpec_, {
88
+ readonly functionProvenance: FunctionProvenance_;
89
+ }>;
90
+ type WithoutName<FunctionSpec_ extends AnyWithProps, Name_ extends Name<FunctionSpec_>> = Exclude<FunctionSpec_, {
43
91
  readonly name: Name_;
44
92
  }>;
45
- type RegisteredFunction<Function extends AnyWithProps> = GetFunctionType<Function["runtimeAndFunctionType"]> extends "query" ? RegisteredQuery<GetFunctionVisibility<Function>, Args<Function>["Encoded"], Promise<Returns<Function>["Encoded"]>> : GetFunctionType<Function["runtimeAndFunctionType"]> extends "mutation" ? RegisteredMutation<GetFunctionVisibility<Function>, Args<Function>["Encoded"], Promise<Returns<Function>["Encoded"]>> : GetFunctionType<Function["runtimeAndFunctionType"]> extends "action" ? RegisteredAction<GetFunctionVisibility<Function>, Args<Function>["Encoded"], Promise<Returns<Function>["Encoded"]>> : never;
46
93
  declare const publicQuery: <const Name_ extends string, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>({
47
94
  name,
48
95
  args,
@@ -54,7 +101,7 @@ declare const publicQuery: <const Name_ extends string, Args_ extends Schema.Sch
54
101
  }) => FunctionSpec<{
55
102
  readonly runtime: "Convex";
56
103
  readonly functionType: "query";
57
- }, "public", Name_, Args_, Returns_>;
104
+ }, "public", Name_, Confect<Args_, Returns_>>;
58
105
  declare const internalQuery: <const Name_ extends string, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>({
59
106
  name,
60
107
  args,
@@ -66,7 +113,7 @@ declare const internalQuery: <const Name_ extends string, Args_ extends Schema.S
66
113
  }) => FunctionSpec<{
67
114
  readonly runtime: "Convex";
68
115
  readonly functionType: "query";
69
- }, "internal", Name_, Args_, Returns_>;
116
+ }, "internal", Name_, Confect<Args_, Returns_>>;
70
117
  declare const publicMutation: <const Name_ extends string, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>({
71
118
  name,
72
119
  args,
@@ -78,7 +125,7 @@ declare const publicMutation: <const Name_ extends string, Args_ extends Schema.
78
125
  }) => FunctionSpec<{
79
126
  readonly runtime: "Convex";
80
127
  readonly functionType: "mutation";
81
- }, "public", Name_, Args_, Returns_>;
128
+ }, "public", Name_, Confect<Args_, Returns_>>;
82
129
  declare const internalMutation: <const Name_ extends string, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>({
83
130
  name,
84
131
  args,
@@ -90,7 +137,7 @@ declare const internalMutation: <const Name_ extends string, Args_ extends Schem
90
137
  }) => FunctionSpec<{
91
138
  readonly runtime: "Convex";
92
139
  readonly functionType: "mutation";
93
- }, "internal", Name_, Args_, Returns_>;
140
+ }, "internal", Name_, Confect<Args_, Returns_>>;
94
141
  declare const publicAction: <const Name_ extends string, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>({
95
142
  name,
96
143
  args,
@@ -102,7 +149,7 @@ declare const publicAction: <const Name_ extends string, Args_ extends Schema.Sc
102
149
  }) => FunctionSpec<{
103
150
  readonly runtime: "Convex";
104
151
  readonly functionType: "action";
105
- }, "public", Name_, Args_, Returns_>;
152
+ }, "public", Name_, Confect<Args_, Returns_>>;
106
153
  declare const internalAction: <const Name_ extends string, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>({
107
154
  name,
108
155
  args,
@@ -114,7 +161,7 @@ declare const internalAction: <const Name_ extends string, Args_ extends Schema.
114
161
  }) => FunctionSpec<{
115
162
  readonly runtime: "Convex";
116
163
  readonly functionType: "action";
117
- }, "internal", Name_, Args_, Returns_>;
164
+ }, "internal", Name_, Confect<Args_, Returns_>>;
118
165
  declare const publicNodeAction: <const Name_ extends string, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>({
119
166
  name,
120
167
  args,
@@ -126,7 +173,7 @@ declare const publicNodeAction: <const Name_ extends string, Args_ extends Schem
126
173
  }) => FunctionSpec<{
127
174
  readonly runtime: "Node";
128
175
  readonly functionType: "action";
129
- }, "public", Name_, Args_, Returns_>;
176
+ }, "public", Name_, Confect<Args_, Returns_>>;
130
177
  declare const internalNodeAction: <const Name_ extends string, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>({
131
178
  name,
132
179
  args,
@@ -138,7 +185,41 @@ declare const internalNodeAction: <const Name_ extends string, Args_ extends Sch
138
185
  }) => FunctionSpec<{
139
186
  readonly runtime: "Node";
140
187
  readonly functionType: "action";
141
- }, "internal", Name_, Args_, Returns_>;
188
+ }, "internal", Name_, Confect<Args_, Returns_>>;
189
+ type ExtractArgs<F> = F extends RegisteredQuery<any, infer A, any> ? A : F extends RegisteredMutation<any, infer A, any> ? A : F extends RegisteredAction<any, infer A, any> ? A : never;
190
+ type ExtractReturns<F> = F extends RegisteredQuery<any, any, infer R> ? R : F extends RegisteredMutation<any, any, infer R> ? R : F extends RegisteredAction<any, any, infer R> ? R : never;
191
+ declare const convexPublicQuery: <F extends RegisteredQuery<"public", any, any>>() => <const Name_ extends string>(name: Name_) => FunctionSpec<{
192
+ readonly runtime: "Convex";
193
+ readonly functionType: "query";
194
+ }, "public", Name_, Convex<ExtractArgs<F>, ExtractReturns<F>>>;
195
+ declare const convexInternalQuery: <F extends RegisteredQuery<"internal", any, any>>() => <const Name_ extends string>(name: Name_) => FunctionSpec<{
196
+ readonly runtime: "Convex";
197
+ readonly functionType: "query";
198
+ }, "internal", Name_, Convex<ExtractArgs<F>, ExtractReturns<F>>>;
199
+ declare const convexPublicMutation: <F extends RegisteredMutation<"public", any, any>>() => <const Name_ extends string>(name: Name_) => FunctionSpec<{
200
+ readonly runtime: "Convex";
201
+ readonly functionType: "mutation";
202
+ }, "public", Name_, Convex<ExtractArgs<F>, ExtractReturns<F>>>;
203
+ declare const convexInternalMutation: <F extends RegisteredMutation<"internal", any, any>>() => <const Name_ extends string>(name: Name_) => FunctionSpec<{
204
+ readonly runtime: "Convex";
205
+ readonly functionType: "mutation";
206
+ }, "internal", Name_, Convex<ExtractArgs<F>, ExtractReturns<F>>>;
207
+ declare const convexPublicAction: <F extends RegisteredAction<"public", any, any>>() => <const Name_ extends string>(name: Name_) => FunctionSpec<{
208
+ readonly runtime: "Convex";
209
+ readonly functionType: "action";
210
+ }, "public", Name_, Convex<ExtractArgs<F>, ExtractReturns<F>>>;
211
+ declare const convexInternalAction: <F extends RegisteredAction<"internal", any, any>>() => <const Name_ extends string>(name: Name_) => FunctionSpec<{
212
+ readonly runtime: "Convex";
213
+ readonly functionType: "action";
214
+ }, "internal", Name_, Convex<ExtractArgs<F>, ExtractReturns<F>>>;
215
+ declare const convexPublicNodeAction: <F extends RegisteredAction<"public", any, any>>() => <const Name_ extends string>(name: Name_) => FunctionSpec<{
216
+ readonly runtime: "Node";
217
+ readonly functionType: "action";
218
+ }, "public", Name_, Convex<ExtractArgs<F>, ExtractReturns<F>>>;
219
+ declare const convexInternalNodeAction: <F extends RegisteredAction<"internal", any, any>>() => <const Name_ extends string>(name: Name_) => FunctionSpec<{
220
+ readonly runtime: "Node";
221
+ readonly functionType: "action";
222
+ }, "internal", Name_, Convex<ExtractArgs<F>, ExtractReturns<F>>>;
142
223
  //#endregion
143
- export { Any, AnyWithProps, AnyWithPropsWithFunctionType, AnyWithPropsWithRuntime, Args, FunctionSpec, FunctionSpec_d_exports, GetFunctionVisibility, GetRuntimeAndFunctionType, Name, RegisteredFunction, Returns, TypeId, WithFunctionType, WithName, WithRuntimeAndFunctionType, WithoutName, internalAction, internalMutation, internalNodeAction, internalQuery, isFunctionSpec, publicAction, publicMutation, publicNodeAction, publicQuery };
224
+ export { Any, AnyConfect, AnyConvex, AnyWithProps, AnyWithPropsWithFunctionProvenance, AnyWithPropsWithFunctionType, AnyWithPropsWithRuntime, Args, EncodedArgs, EncodedReturns, FunctionSpec, FunctionSpec_d_exports, GetFunctionVisibility, GetRuntimeAndFunctionType, Name, Returns, TypeId, WithFunctionProvenance, WithFunctionType, WithName, WithRuntimeAndFunctionType, WithoutName, convexInternalAction, convexInternalMutation, convexInternalNodeAction, convexInternalQuery, convexPublicAction, convexPublicMutation, convexPublicNodeAction, convexPublicQuery, internalAction, internalMutation, internalNodeAction, internalQuery, isFunctionSpec, publicAction, publicMutation, publicNodeAction, publicQuery };
144
225
  //# sourceMappingURL=FunctionSpec.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionSpec.d.ts","names":[],"sources":["../src/FunctionSpec.ts"],"mappings":"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"}
1
+ {"version":3,"file":"FunctionSpec.d.ts","names":[],"sources":["../src/FunctionSpec.ts"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { __exportAll } from "./_virtual/_rolldown/runtime.js";
2
+ import { Confect, Convex } from "./FunctionProvenance.js";
2
3
  import { validateConfectFunctionIdentifier } from "./internal/utils.js";
3
4
  import { ConvexAction, ConvexMutation, ConvexQuery, NodeAction } from "./RuntimeAndFunctionType.js";
4
5
  import { Predicate } from "effect";
@@ -6,6 +7,14 @@ import { Predicate } from "effect";
6
7
  //#region src/FunctionSpec.ts
7
8
  var FunctionSpec_exports = /* @__PURE__ */ __exportAll({
8
9
  TypeId: () => TypeId,
10
+ convexInternalAction: () => convexInternalAction,
11
+ convexInternalMutation: () => convexInternalMutation,
12
+ convexInternalNodeAction: () => convexInternalNodeAction,
13
+ convexInternalQuery: () => convexInternalQuery,
14
+ convexPublicAction: () => convexPublicAction,
15
+ convexPublicMutation: () => convexPublicMutation,
16
+ convexPublicNodeAction: () => convexPublicNodeAction,
17
+ convexPublicQuery: () => convexPublicQuery,
9
18
  internalAction: () => internalAction,
10
19
  internalMutation: () => internalMutation,
11
20
  internalNodeAction: () => internalNodeAction,
@@ -25,8 +34,7 @@ const make = (runtimeAndFunctionType, functionVisibility) => ({ name, args, retu
25
34
  runtimeAndFunctionType,
26
35
  functionVisibility,
27
36
  name,
28
- args,
29
- returns
37
+ functionProvenance: Confect(args, returns)
30
38
  });
31
39
  };
32
40
  const publicQuery = make(ConvexQuery, "public");
@@ -37,7 +45,24 @@ const publicAction = make(ConvexAction, "public");
37
45
  const internalAction = make(ConvexAction, "internal");
38
46
  const publicNodeAction = make(NodeAction, "public");
39
47
  const internalNodeAction = make(NodeAction, "internal");
48
+ const makeConvex = (runtimeAndFunctionType, functionVisibility) => () => (name) => {
49
+ validateConfectFunctionIdentifier(name);
50
+ return Object.assign(Object.create(Proto), {
51
+ runtimeAndFunctionType,
52
+ functionVisibility,
53
+ name,
54
+ functionProvenance: Convex()
55
+ });
56
+ };
57
+ const convexPublicQuery = makeConvex(ConvexQuery, "public");
58
+ const convexInternalQuery = makeConvex(ConvexQuery, "internal");
59
+ const convexPublicMutation = makeConvex(ConvexMutation, "public");
60
+ const convexInternalMutation = makeConvex(ConvexMutation, "internal");
61
+ const convexPublicAction = makeConvex(ConvexAction, "public");
62
+ const convexInternalAction = makeConvex(ConvexAction, "internal");
63
+ const convexPublicNodeAction = makeConvex(NodeAction, "public");
64
+ const convexInternalNodeAction = makeConvex(NodeAction, "internal");
40
65
 
41
66
  //#endregion
42
- export { FunctionSpec_exports, TypeId, internalAction, internalMutation, internalNodeAction, internalQuery, isFunctionSpec, publicAction, publicMutation, publicNodeAction, publicQuery };
67
+ export { FunctionSpec_exports, TypeId, convexInternalAction, convexInternalMutation, convexInternalNodeAction, convexInternalQuery, convexPublicAction, convexPublicMutation, convexPublicNodeAction, convexPublicQuery, internalAction, internalMutation, internalNodeAction, internalQuery, isFunctionSpec, publicAction, publicMutation, publicNodeAction, publicQuery };
43
68
  //# sourceMappingURL=FunctionSpec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionSpec.js","names":["RuntimeAndFunctionType.ConvexQuery","RuntimeAndFunctionType.ConvexMutation","RuntimeAndFunctionType.ConvexAction","RuntimeAndFunctionType.NodeAction"],"sources":["../src/FunctionSpec.ts"],"sourcesContent":["import type {\n FunctionType,\n FunctionVisibility,\n RegisteredAction,\n RegisteredMutation,\n RegisteredQuery,\n} from \"convex/server\";\nimport type { Schema } from \"effect\";\nimport { Predicate } from \"effect\";\nimport { validateConfectFunctionIdentifier } from \"./internal/utils\";\nimport * as RuntimeAndFunctionType from \"./RuntimeAndFunctionType\";\n\nexport const TypeId = \"@confect/core/FunctionSpec\";\nexport type TypeId = typeof TypeId;\n\nexport const isFunctionSpec = (u: unknown): u is AnyWithProps =>\n Predicate.hasProperty(u, TypeId);\n\nexport interface FunctionSpec<\n RuntimeAndFunctionType_ extends RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n Name_ extends string,\n Args_ extends Schema.Schema.AnyNoContext,\n Returns_ extends Schema.Schema.AnyNoContext,\n> {\n readonly [TypeId]: TypeId;\n readonly runtimeAndFunctionType: RuntimeAndFunctionType_;\n readonly functionVisibility: FunctionVisibility_;\n readonly name: Name_;\n readonly args: Args_;\n readonly returns: Returns_;\n}\n\nexport interface Any {\n readonly [TypeId]: TypeId;\n}\n\nexport interface AnyWithProps extends FunctionSpec<\n RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility,\n string,\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport interface AnyWithPropsWithRuntime<\n Runtime extends RuntimeAndFunctionType.Runtime,\n> extends FunctionSpec<\n RuntimeAndFunctionType.WithRuntime<Runtime>,\n FunctionVisibility,\n string,\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport interface AnyWithPropsWithFunctionType<\n RuntimeAndFunctionType_ extends RuntimeAndFunctionType.RuntimeAndFunctionType,\n> extends FunctionSpec<\n RuntimeAndFunctionType_,\n FunctionVisibility,\n string,\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport type GetRuntimeAndFunctionType<Function extends AnyWithProps> =\n Function[\"runtimeAndFunctionType\"];\n\nexport type GetFunctionVisibility<Function extends AnyWithProps> =\n Function[\"functionVisibility\"];\n\nexport type Name<Function extends AnyWithProps> = Function[\"name\"];\n\nexport type Args<Function extends AnyWithProps> = Function[\"args\"];\n\nexport type Returns<Function extends AnyWithProps> = Function[\"returns\"];\n\nexport type WithName<\n Function extends AnyWithProps,\n Name_ extends string,\n> = Extract<Function, { readonly name: Name_ }>;\n\nexport type WithRuntimeAndFunctionType<\n Function extends AnyWithProps,\n RuntimeAndFunctionType_ extends RuntimeAndFunctionType.RuntimeAndFunctionType,\n> = Extract<\n Function,\n { readonly runtimeAndFunctionType: RuntimeAndFunctionType_ }\n>;\n\nexport type WithFunctionType<\n Function extends AnyWithProps,\n FunctionType_ extends FunctionType,\n> = Extract<\n Function,\n { readonly runtimeAndFunctionType: { readonly functionType: FunctionType_ } }\n>;\n\nexport type WithoutName<\n Function extends AnyWithProps,\n Name_ extends Name<Function>,\n> = Exclude<Function, { readonly name: Name_ }>;\n\nexport type RegisteredFunction<Function extends AnyWithProps> =\n RuntimeAndFunctionType.GetFunctionType<\n Function[\"runtimeAndFunctionType\"]\n > extends \"query\"\n ? RegisteredQuery<\n GetFunctionVisibility<Function>,\n Args<Function>[\"Encoded\"],\n Promise<Returns<Function>[\"Encoded\"]>\n >\n : RuntimeAndFunctionType.GetFunctionType<\n Function[\"runtimeAndFunctionType\"]\n > extends \"mutation\"\n ? RegisteredMutation<\n GetFunctionVisibility<Function>,\n Args<Function>[\"Encoded\"],\n Promise<Returns<Function>[\"Encoded\"]>\n >\n : RuntimeAndFunctionType.GetFunctionType<\n Function[\"runtimeAndFunctionType\"]\n > extends \"action\"\n ? RegisteredAction<\n GetFunctionVisibility<Function>,\n Args<Function>[\"Encoded\"],\n Promise<Returns<Function>[\"Encoded\"]>\n >\n : never;\n\nconst Proto = {\n [TypeId]: TypeId,\n};\n\nconst make =\n <\n RuntimeAndFunctionType_ extends\n RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n >(\n runtimeAndFunctionType: RuntimeAndFunctionType_,\n functionVisibility: FunctionVisibility_,\n ) =>\n <\n const Name_ extends string,\n Args_ extends Schema.Schema.AnyNoContext,\n Returns_ extends Schema.Schema.AnyNoContext,\n >({\n name,\n args,\n returns,\n }: {\n name: Name_;\n args: Args_;\n returns: Returns_;\n }): FunctionSpec<\n RuntimeAndFunctionType_,\n FunctionVisibility_,\n Name_,\n Args_,\n Returns_\n > => {\n validateConfectFunctionIdentifier(name);\n\n return Object.assign(Object.create(Proto), {\n runtimeAndFunctionType,\n functionVisibility,\n name,\n args,\n returns,\n });\n };\n\nexport const publicQuery = make(RuntimeAndFunctionType.ConvexQuery, \"public\");\nexport const internalQuery = make(\n RuntimeAndFunctionType.ConvexQuery,\n \"internal\",\n);\nexport const publicMutation = make(\n RuntimeAndFunctionType.ConvexMutation,\n \"public\",\n);\nexport const internalMutation = make(\n RuntimeAndFunctionType.ConvexMutation,\n \"internal\",\n);\nexport const publicAction = make(RuntimeAndFunctionType.ConvexAction, \"public\");\nexport const internalAction = make(\n RuntimeAndFunctionType.ConvexAction,\n \"internal\",\n);\n\nexport const publicNodeAction = make(\n RuntimeAndFunctionType.NodeAction,\n \"public\",\n);\nexport const internalNodeAction = make(\n RuntimeAndFunctionType.NodeAction,\n \"internal\",\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;AAYA,MAAa,SAAS;AAGtB,MAAa,kBAAkB,MAC7B,UAAU,YAAY,GAAG,OAAO;AAkHlC,MAAM,QAAQ,GACX,SAAS,QACX;AAED,MAAM,QAMF,wBACA,wBAMA,EACA,MACA,MACA,cAWG;AACH,mCAAkC,KAAK;AAEvC,QAAO,OAAO,OAAO,OAAO,OAAO,MAAM,EAAE;EACzC;EACA;EACA;EACA;EACA;EACD,CAAC;;AAGN,MAAa,cAAc,KAAKA,aAAoC,SAAS;AAC7E,MAAa,gBAAgB,KAC3BA,aACA,WACD;AACD,MAAa,iBAAiB,KAC5BC,gBACA,SACD;AACD,MAAa,mBAAmB,KAC9BA,gBACA,WACD;AACD,MAAa,eAAe,KAAKC,cAAqC,SAAS;AAC/E,MAAa,iBAAiB,KAC5BA,cACA,WACD;AAED,MAAa,mBAAmB,KAC9BC,YACA,SACD;AACD,MAAa,qBAAqB,KAChCA,YACA,WACD"}
1
+ {"version":3,"file":"FunctionSpec.js","names":["FunctionProvenance.Confect","RuntimeAndFunctionType.ConvexQuery","RuntimeAndFunctionType.ConvexMutation","RuntimeAndFunctionType.ConvexAction","RuntimeAndFunctionType.NodeAction","FunctionProvenance.Convex"],"sources":["../src/FunctionSpec.ts"],"sourcesContent":["import type {\n FunctionType,\n FunctionVisibility,\n RegisteredAction,\n RegisteredMutation,\n RegisteredQuery,\n} from \"convex/server\";\nimport type { Schema } from \"effect\";\nimport { Predicate } from \"effect\";\nimport * as FunctionProvenance from \"./FunctionProvenance\";\nimport { validateConfectFunctionIdentifier } from \"./internal/utils\";\nimport * as RuntimeAndFunctionType from \"./RuntimeAndFunctionType\";\n\nexport const TypeId = \"@confect/core/FunctionSpec\";\nexport type TypeId = typeof TypeId;\n\nexport const isFunctionSpec = (u: unknown): u is AnyWithProps =>\n Predicate.hasProperty(u, TypeId);\n\nexport interface FunctionSpec<\n RuntimeAndFunctionType_ extends RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n Name_ extends string,\n FunctionProvenance_ extends FunctionProvenance.FunctionProvenance,\n> {\n readonly [TypeId]: TypeId;\n readonly runtimeAndFunctionType: RuntimeAndFunctionType_;\n readonly functionVisibility: FunctionVisibility_;\n readonly name: Name_;\n readonly functionProvenance: FunctionProvenance_;\n}\n\nexport interface Any {\n readonly [TypeId]: TypeId;\n}\n\nexport interface AnyWithProps extends FunctionSpec<\n RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility,\n string,\n FunctionProvenance.FunctionProvenance\n> {}\n\nexport interface AnyConfect extends FunctionSpec<\n RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility,\n string,\n FunctionProvenance.AnyConfect\n> {}\n\nexport interface AnyConvex extends FunctionSpec<\n RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility,\n string,\n FunctionProvenance.AnyConvex\n> {}\n\nexport interface AnyWithPropsWithRuntime<\n Runtime extends RuntimeAndFunctionType.Runtime,\n> extends FunctionSpec<\n RuntimeAndFunctionType.WithRuntime<Runtime>,\n FunctionVisibility,\n string,\n FunctionProvenance.FunctionProvenance\n> {}\n\nexport interface AnyWithPropsWithFunctionType<\n RuntimeAndFunctionType_ extends RuntimeAndFunctionType.RuntimeAndFunctionType,\n> extends FunctionSpec<\n RuntimeAndFunctionType_,\n FunctionVisibility,\n string,\n FunctionProvenance.FunctionProvenance\n> {}\n\nexport interface AnyWithPropsWithFunctionProvenance<\n FunctionProvenance_ extends FunctionProvenance.FunctionProvenance,\n> extends FunctionSpec<\n RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility,\n string,\n FunctionProvenance_\n> {}\n\nexport type GetRuntimeAndFunctionType<FunctionSpec_ extends AnyWithProps> =\n FunctionSpec_[\"runtimeAndFunctionType\"];\n\nexport type GetFunctionVisibility<FunctionSpec_ extends AnyWithProps> =\n FunctionSpec_[\"functionVisibility\"];\n\nexport type Name<FunctionSpec_ extends AnyWithProps> = FunctionSpec_[\"name\"];\n\nexport type Args<FunctionSpec_ extends AnyWithProps> = FunctionSpec_ extends {\n functionProvenance: {\n _tag: \"Confect\";\n args: infer ArgsSchema_ extends Schema.Schema.AnyNoContext;\n };\n}\n ? ArgsSchema_[\"Type\"]\n : FunctionSpec_ extends {\n functionProvenance: { _tag: \"Convex\"; _args: infer Args_ };\n }\n ? Args_\n : never;\n\nexport type Returns<FunctionSpec_ extends AnyWithProps> =\n FunctionSpec_ extends {\n functionProvenance: {\n _tag: \"Confect\";\n returns: infer ReturnsSchema_ extends Schema.Schema.AnyNoContext;\n };\n }\n ? ReturnsSchema_[\"Type\"]\n : FunctionSpec_ extends {\n functionProvenance: { _tag: \"Convex\"; _returns: infer Returns_ };\n }\n ? Awaited<Returns_>\n : never;\n\nexport type EncodedArgs<FunctionSpec_ extends AnyWithProps> =\n FunctionSpec_ extends {\n functionProvenance: {\n _tag: \"Confect\";\n args: infer ArgsSchema_ extends Schema.Schema.AnyNoContext;\n };\n }\n ? ArgsSchema_[\"Encoded\"]\n : FunctionSpec_ extends {\n functionProvenance: { _tag: \"Convex\"; _args: infer Args_ };\n }\n ? Args_\n : never;\n\nexport type EncodedReturns<FunctionSpec_ extends AnyWithProps> =\n FunctionSpec_ extends {\n functionProvenance: {\n _tag: \"Confect\";\n returns: infer ReturnsSchema_ extends Schema.Schema.AnyNoContext;\n };\n }\n ? ReturnsSchema_[\"Encoded\"]\n : FunctionSpec_ extends {\n functionProvenance: { _tag: \"Convex\"; _returns: infer Returns_ };\n }\n ? Returns_\n : never;\n\nexport type WithName<\n FunctionSpec_ extends AnyWithProps,\n Name_ extends string,\n> = Extract<FunctionSpec_, { readonly name: Name_ }>;\n\nexport type WithRuntimeAndFunctionType<\n FunctionSpec_ extends AnyWithProps,\n RuntimeAndFunctionType_ extends RuntimeAndFunctionType.RuntimeAndFunctionType,\n> = Extract<\n FunctionSpec_,\n { readonly runtimeAndFunctionType: RuntimeAndFunctionType_ }\n>;\n\nexport type WithFunctionType<\n FunctionSpec_ extends AnyWithProps,\n FunctionType_ extends FunctionType,\n> = Extract<\n FunctionSpec_,\n { readonly runtimeAndFunctionType: { readonly functionType: FunctionType_ } }\n>;\n\nexport type WithFunctionProvenance<\n FunctionSpec_ extends AnyWithProps,\n FunctionProvenance_ extends FunctionProvenance.FunctionProvenance,\n> = Extract<\n FunctionSpec_,\n { readonly functionProvenance: FunctionProvenance_ }\n>;\n\nexport type WithoutName<\n FunctionSpec_ extends AnyWithProps,\n Name_ extends Name<FunctionSpec_>,\n> = Exclude<FunctionSpec_, { readonly name: Name_ }>;\n\nconst Proto = {\n [TypeId]: TypeId,\n};\n\nconst make =\n <\n RuntimeAndFunctionType_ extends\n RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n >(\n runtimeAndFunctionType: RuntimeAndFunctionType_,\n functionVisibility: FunctionVisibility_,\n ) =>\n <\n const Name_ extends string,\n Args_ extends Schema.Schema.AnyNoContext,\n Returns_ extends Schema.Schema.AnyNoContext,\n >({\n name,\n args,\n returns,\n }: {\n name: Name_;\n args: Args_;\n returns: Returns_;\n }): FunctionSpec<\n RuntimeAndFunctionType_,\n FunctionVisibility_,\n Name_,\n FunctionProvenance.Confect<Args_, Returns_>\n > => {\n validateConfectFunctionIdentifier(name);\n\n return Object.assign(Object.create(Proto), {\n runtimeAndFunctionType,\n functionVisibility,\n name,\n functionProvenance: FunctionProvenance.Confect(args, returns),\n });\n };\n\nexport const publicQuery = make(RuntimeAndFunctionType.ConvexQuery, \"public\");\nexport const internalQuery = make(\n RuntimeAndFunctionType.ConvexQuery,\n \"internal\",\n);\nexport const publicMutation = make(\n RuntimeAndFunctionType.ConvexMutation,\n \"public\",\n);\nexport const internalMutation = make(\n RuntimeAndFunctionType.ConvexMutation,\n \"internal\",\n);\nexport const publicAction = make(RuntimeAndFunctionType.ConvexAction, \"public\");\nexport const internalAction = make(\n RuntimeAndFunctionType.ConvexAction,\n \"internal\",\n);\n\nexport const publicNodeAction = make(\n RuntimeAndFunctionType.NodeAction,\n \"public\",\n);\nexport const internalNodeAction = make(\n RuntimeAndFunctionType.NodeAction,\n \"internal\",\n);\n\ntype MatchingRegisteredFunction<\n RuntimeAndFunctionType_ extends RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n> =\n RuntimeAndFunctionType.GetFunctionType<RuntimeAndFunctionType_> extends \"query\"\n ? RegisteredQuery<FunctionVisibility_, any, any>\n : RuntimeAndFunctionType.GetFunctionType<RuntimeAndFunctionType_> extends \"mutation\"\n ? RegisteredMutation<FunctionVisibility_, any, any>\n : RuntimeAndFunctionType.GetFunctionType<RuntimeAndFunctionType_> extends \"action\"\n ? RegisteredAction<FunctionVisibility_, any, any>\n : never;\n\ntype ExtractArgs<F> =\n F extends RegisteredQuery<any, infer A, any>\n ? A\n : F extends RegisteredMutation<any, infer A, any>\n ? A\n : F extends RegisteredAction<any, infer A, any>\n ? A\n : never;\n\ntype ExtractReturns<F> =\n F extends RegisteredQuery<any, any, infer R>\n ? R\n : F extends RegisteredMutation<any, any, infer R>\n ? R\n : F extends RegisteredAction<any, any, infer R>\n ? R\n : never;\n\nconst makeConvex =\n <\n RuntimeAndFunctionType_ extends\n RuntimeAndFunctionType.RuntimeAndFunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n >(\n runtimeAndFunctionType: RuntimeAndFunctionType_,\n functionVisibility: FunctionVisibility_,\n ) =>\n <\n F extends MatchingRegisteredFunction<\n RuntimeAndFunctionType_,\n FunctionVisibility_\n >,\n >() =>\n <const Name_ extends string>(\n name: Name_,\n ): FunctionSpec<\n RuntimeAndFunctionType_,\n FunctionVisibility_,\n Name_,\n FunctionProvenance.Convex<ExtractArgs<F>, ExtractReturns<F>>\n > => {\n validateConfectFunctionIdentifier(name);\n\n return Object.assign(Object.create(Proto), {\n runtimeAndFunctionType,\n functionVisibility,\n name,\n functionProvenance: FunctionProvenance.Convex(),\n }) as any;\n };\n\nexport const convexPublicQuery = makeConvex(\n RuntimeAndFunctionType.ConvexQuery,\n \"public\",\n);\nexport const convexInternalQuery = makeConvex(\n RuntimeAndFunctionType.ConvexQuery,\n \"internal\",\n);\nexport const convexPublicMutation = makeConvex(\n RuntimeAndFunctionType.ConvexMutation,\n \"public\",\n);\nexport const convexInternalMutation = makeConvex(\n RuntimeAndFunctionType.ConvexMutation,\n \"internal\",\n);\nexport const convexPublicAction = makeConvex(\n RuntimeAndFunctionType.ConvexAction,\n \"public\",\n);\nexport const convexInternalAction = makeConvex(\n RuntimeAndFunctionType.ConvexAction,\n \"internal\",\n);\nexport const convexPublicNodeAction = makeConvex(\n RuntimeAndFunctionType.NodeAction,\n \"public\",\n);\nexport const convexInternalNodeAction = makeConvex(\n RuntimeAndFunctionType.NodeAction,\n \"internal\",\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,MAAa,SAAS;AAGtB,MAAa,kBAAkB,MAC7B,UAAU,YAAY,GAAG,OAAO;AAoKlC,MAAM,QAAQ,GACX,SAAS,QACX;AAED,MAAM,QAMF,wBACA,wBAMA,EACA,MACA,MACA,cAUG;AACH,mCAAkC,KAAK;AAEvC,QAAO,OAAO,OAAO,OAAO,OAAO,MAAM,EAAE;EACzC;EACA;EACA;EACA,oBAAoBA,QAA2B,MAAM,QAAQ;EAC9D,CAAC;;AAGN,MAAa,cAAc,KAAKC,aAAoC,SAAS;AAC7E,MAAa,gBAAgB,KAC3BA,aACA,WACD;AACD,MAAa,iBAAiB,KAC5BC,gBACA,SACD;AACD,MAAa,mBAAmB,KAC9BA,gBACA,WACD;AACD,MAAa,eAAe,KAAKC,cAAqC,SAAS;AAC/E,MAAa,iBAAiB,KAC5BA,cACA,WACD;AAED,MAAa,mBAAmB,KAC9BC,YACA,SACD;AACD,MAAa,qBAAqB,KAChCA,YACA,WACD;AAgCD,MAAM,cAMF,wBACA,8BASA,SAMG;AACH,mCAAkC,KAAK;AAEvC,QAAO,OAAO,OAAO,OAAO,OAAO,MAAM,EAAE;EACzC;EACA;EACA;EACA,oBAAoBC,QAA2B;EAChD,CAAC;;AAGN,MAAa,oBAAoB,WAC/BJ,aACA,SACD;AACD,MAAa,sBAAsB,WACjCA,aACA,WACD;AACD,MAAa,uBAAuB,WAClCC,gBACA,SACD;AACD,MAAa,yBAAyB,WACpCA,gBACA,WACD;AACD,MAAa,qBAAqB,WAChCC,cACA,SACD;AACD,MAAa,uBAAuB,WAClCA,cACA,WACD;AACD,MAAa,yBAAyB,WACpCC,YACA,SACD;AACD,MAAa,2BAA2B,WACtCA,YACA,WACD"}
@@ -8,20 +8,20 @@ declare namespace GroupSpec_d_exports {
8
8
  declare const TypeId = "@confect/core/GroupSpec";
9
9
  type TypeId = typeof TypeId;
10
10
  declare const isGroupSpec: (u: unknown) => u is Any;
11
- interface GroupSpec<Runtime$2 extends Runtime, Name_ extends string, Functions_ extends AnyWithPropsWithRuntime$1<Runtime$2> = never, Groups_ extends AnyWithPropsWithRuntime<Runtime$2> = never> {
11
+ interface GroupSpec<Runtime$1 extends Runtime, Name_ extends string, Functions_ extends AnyWithPropsWithRuntime$1<Runtime$1> = never, Groups_ extends AnyWithPropsWithRuntime<Runtime$1> = never> {
12
12
  readonly [TypeId]: TypeId;
13
- readonly runtime: Runtime$2;
13
+ readonly runtime: Runtime$1;
14
14
  readonly name: Name_;
15
- readonly functions: { [FunctionName in Name$1<AnyWithPropsWithRuntime$1<Runtime$2>>]: WithName$1<Functions_, FunctionName> };
15
+ readonly functions: { [FunctionName in Name$1<AnyWithPropsWithRuntime$1<Runtime$1>>]: WithName$1<Functions_, FunctionName> };
16
16
  readonly groups: { [GroupName in Name<Groups_>]: WithName<Groups_, GroupName> };
17
- addFunction<Function extends AnyWithPropsWithRuntime$1<Runtime$2>>(function_: Function): GroupSpec<Runtime$2, Name_, Functions_ | Function, Groups_>;
18
- addGroup<Group extends AnyWithPropsWithRuntime<Runtime$2>>(group: Group): GroupSpec<Runtime$2, Name_, Functions_, Groups_ | Group>;
17
+ addFunction<Function extends AnyWithPropsWithRuntime$1<Runtime$1>>(function_: Function): GroupSpec<Runtime$1, Name_, Functions_ | Function, Groups_>;
18
+ addGroup<Group extends AnyWithPropsWithRuntime<Runtime$1>>(group: Group): GroupSpec<Runtime$1, Name_, Functions_, Groups_ | Group>;
19
19
  }
20
20
  interface Any {
21
21
  readonly [TypeId]: TypeId;
22
22
  }
23
23
  interface AnyWithProps extends GroupSpec<Runtime, string, AnyWithProps$1, AnyWithProps> {}
24
- interface AnyWithPropsWithRuntime<Runtime$1 extends Runtime> extends GroupSpec<Runtime$1, string, AnyWithPropsWithRuntime$1<Runtime$1>, AnyWithPropsWithRuntime<Runtime$1>> {}
24
+ interface AnyWithPropsWithRuntime<Runtime$2 extends Runtime> extends GroupSpec<Runtime$2, string, AnyWithPropsWithRuntime$1<Runtime$2>, AnyWithPropsWithRuntime<Runtime$2>> {}
25
25
  type Name<Group extends AnyWithProps> = Group["name"];
26
26
  type Functions<Group extends AnyWithProps> = Group["functions"][keyof Group["functions"]];
27
27
  type Groups<Group extends AnyWithProps> = Group["groups"][keyof Group["groups"]];
package/dist/Ref.d.ts CHANGED
@@ -1,13 +1,12 @@
1
1
  import { AnyAction as AnyAction$1, AnyMutation as AnyMutation$1, AnyQuery as AnyQuery$1, GetFunctionType as GetFunctionType$1, GetRuntime as GetRuntime$1, RuntimeAndFunctionType } from "./RuntimeAndFunctionType.js";
2
- import { AnyWithProps, Args as Args$1, FunctionSpec, GetFunctionVisibility as GetFunctionVisibility$1, GetRuntimeAndFunctionType as GetRuntimeAndFunctionType$1, Returns as Returns$1 } from "./FunctionSpec.js";
3
- import { Schema } from "effect";
2
+ import { AnyWithProps, Args as Args$1, GetFunctionVisibility as GetFunctionVisibility$1, GetRuntimeAndFunctionType as GetRuntimeAndFunctionType$1, Returns as Returns$1 } from "./FunctionSpec.js";
4
3
  import { FunctionVisibility } from "convex/server";
5
4
 
6
5
  //#region src/Ref.d.ts
7
6
  declare namespace Ref_d_exports {
8
- export { Any, AnyAction, AnyInternal, AnyMutation, AnyPublic, AnyPublicAction, AnyPublicMutation, AnyPublicQuery, AnyQuery, Args, FromFunctionSpec, GetFunctionType, GetFunctionVisibility, GetRuntime, GetRuntimeAndFunctionType, Ref, Returns, getConvexFunctionName, getFunction, make };
7
+ export { Any, AnyAction, AnyInternal, AnyMutation, AnyPublic, AnyPublicAction, AnyPublicMutation, AnyPublicQuery, AnyQuery, Args, FromFunctionSpec, GetFunctionType, GetFunctionVisibility, GetRuntime, GetRuntimeAndFunctionType, Ref, Returns, getConvexFunctionName, getFunctionSpec, make };
9
8
  }
10
- interface Ref<_RuntimeAndFunctionType extends RuntimeAndFunctionType, _FunctionVisibility extends FunctionVisibility, _Args extends Schema.Schema.AnyNoContext, _Returns extends Schema.Schema.AnyNoContext> {
9
+ interface Ref<_RuntimeAndFunctionType extends RuntimeAndFunctionType, _FunctionVisibility extends FunctionVisibility, _Args, _Returns> {
11
10
  readonly _RuntimeAndFunctionType?: _RuntimeAndFunctionType;
12
11
  readonly _FunctionVisibility?: _FunctionVisibility;
13
12
  readonly _Args?: _Args;
@@ -16,12 +15,12 @@ interface Ref<_RuntimeAndFunctionType extends RuntimeAndFunctionType, _FunctionV
16
15
  interface Any extends Ref<any, any, any, any> {}
17
16
  interface AnyInternal extends Ref<any, "internal", any, any> {}
18
17
  interface AnyPublic extends Ref<any, "public", any, any> {}
19
- interface AnyQuery extends Ref<AnyQuery$1, FunctionVisibility, Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
20
- interface AnyMutation extends Ref<AnyMutation$1, FunctionVisibility, Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
21
- interface AnyAction extends Ref<AnyAction$1, FunctionVisibility, Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
22
- interface AnyPublicQuery extends Ref<AnyQuery$1, "public", Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
23
- interface AnyPublicMutation extends Ref<AnyMutation$1, "public", Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
24
- interface AnyPublicAction extends Ref<AnyAction$1, "public", Schema.Schema.AnyNoContext, Schema.Schema.AnyNoContext> {}
18
+ interface AnyQuery extends Ref<AnyQuery$1, FunctionVisibility, any, any> {}
19
+ interface AnyMutation extends Ref<AnyMutation$1, FunctionVisibility, any, any> {}
20
+ interface AnyAction extends Ref<AnyAction$1, FunctionVisibility, any, any> {}
21
+ interface AnyPublicQuery extends Ref<AnyQuery$1, "public", any, any> {}
22
+ interface AnyPublicMutation extends Ref<AnyMutation$1, "public", any, any> {}
23
+ interface AnyPublicAction extends Ref<AnyAction$1, "public", any, any> {}
25
24
  type GetRuntimeAndFunctionType<Ref_> = Ref_ extends Ref<infer RuntimeAndFunctionType_, infer _FunctionVisibility, infer _Args, infer _Returns> ? RuntimeAndFunctionType_ : never;
26
25
  type GetRuntime<Ref_> = Ref_ extends Ref<infer RuntimeAndFunctionType_, infer _FunctionVisibility, infer _Args, infer _Returns> ? GetRuntime$1<RuntimeAndFunctionType_> : never;
27
26
  type GetFunctionType<Ref_> = Ref_ extends Ref<infer RuntimeAndFunctionType_, infer _FunctionVisibility, infer _Args, infer _Returns> ? GetFunctionType$1<RuntimeAndFunctionType_> : never;
@@ -29,16 +28,14 @@ type GetFunctionVisibility<Ref_> = Ref_ extends Ref<infer _RuntimeAndFunctionTyp
29
28
  type Args<Ref_> = Ref_ extends Ref<infer _RuntimeAndFunctionType, infer _FunctionVisibility, infer Args_, infer _Returns> ? Args_ : never;
30
29
  type Returns<Ref_> = Ref_ extends Ref<infer _RuntimeAndFunctionType, infer _FunctionVisibility, infer _Args, infer Returns_> ? Returns_ : never;
31
30
  type FromFunctionSpec<F extends AnyWithProps> = Ref<GetRuntimeAndFunctionType$1<F>, GetFunctionVisibility$1<F>, Args$1<F>, Returns$1<F>>;
32
- declare const make: <RuntimeAndFunctionType_ extends RuntimeAndFunctionType, FunctionVisibility_ extends FunctionVisibility, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>(
31
+ declare const make: <FunctionSpec_ extends AnyWithProps>(
33
32
  /**
34
- * This is a Convex "function name" of the format "myGroupDir/myGroupMod:myFunc".
33
+ * This is a Convex "function name" of the format `myGroupDir/myGroupMod:myFunc`.
35
34
  */
36
35
 
37
- convexFunctionName: string, function_: FunctionSpec<RuntimeAndFunctionType_, FunctionVisibility_, string, Args_, Returns_>) => Ref<RuntimeAndFunctionType_, FunctionVisibility_, Args_, Returns_>;
38
- type HiddenFunction<Ref_ extends Any> = FunctionSpec<GetRuntimeAndFunctionType<Ref_>, GetFunctionVisibility<Ref_>, string, Args<Ref_>, Returns<Ref_>>;
39
- declare const getFunction: <RuntimeAndFunctionType_ extends RuntimeAndFunctionType, FunctionVisibility_ extends FunctionVisibility, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext, Ref_ extends Ref<RuntimeAndFunctionType_, FunctionVisibility_, Args_, Returns_>>(ref: Ref_) => HiddenFunction<Ref_>;
40
- type HiddenConvexFunctionName = string;
41
- declare const getConvexFunctionName: <RuntimeAndFunctionType_ extends RuntimeAndFunctionType, FunctionVisibility_ extends FunctionVisibility, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>(ref: Ref<RuntimeAndFunctionType_, FunctionVisibility_, Args_, Returns_>) => HiddenConvexFunctionName;
36
+ convexFunctionName: string, functionSpec: FunctionSpec_) => FromFunctionSpec<FunctionSpec_>;
37
+ declare const getFunctionSpec: (ref: Any) => AnyWithProps;
38
+ declare const getConvexFunctionName: (ref: Any) => string;
42
39
  //#endregion
43
- export { Any, AnyAction, AnyInternal, AnyMutation, AnyPublic, AnyPublicAction, AnyPublicMutation, AnyPublicQuery, AnyQuery, Args, FromFunctionSpec, GetFunctionType, GetFunctionVisibility, GetRuntime, GetRuntimeAndFunctionType, Ref, Ref_d_exports, Returns, getConvexFunctionName, getFunction, make };
40
+ export { Any, AnyAction, AnyInternal, AnyMutation, AnyPublic, AnyPublicAction, AnyPublicMutation, AnyPublicQuery, AnyQuery, Args, FromFunctionSpec, GetFunctionType, GetFunctionVisibility, GetRuntime, GetRuntimeAndFunctionType, Ref, Ref_d_exports, Returns, getConvexFunctionName, getFunctionSpec, make };
44
41
  //# sourceMappingURL=Ref.d.ts.map
package/dist/Ref.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Ref.d.ts","names":[],"sources":["../src/Ref.ts"],"mappings":"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"}
1
+ {"version":3,"file":"Ref.d.ts","names":[],"sources":["../src/Ref.ts"],"mappings":";;;;;;;;UAIiB,GAAA,iCACiB,sBAAA,8BACJ,kBAAA;EAAA,SAInB,uBAAA,GAA0B,uBAAA;EAAA,SAC1B,mBAAA,GAAsB,mBAAA;EAAA,SACtB,KAAA,GAAQ,KAAA;EAAA,SACR,QAAA,GAAW,QAAA;AAAA;AAAA,UAGL,GAAA,SAAY,GAAA;AAAA,UAEZ,WAAA,SAAoB,GAAA;AAAA,UAEpB,SAAA,SAAkB,GAAA;AAAA,UAElB,QAAA,SAAiB,GAAA,CAChC,UAAA,EACA,kBAAA;AAAA,UAKe,WAAA,SAAoB,GAAA,CACnC,aAAA,EACA,kBAAA;AAAA,UAKe,SAAA,SAAkB,GAAA,CACjC,WAAA,EACA,kBAAA;AAAA,UAKe,cAAA,SAAuB,GAAA,CACtC,UAAA;AAAA,UAMe,iBAAA,SAA0B,GAAA,CACzC,aAAA;AAAA,UAMe,eAAA,SAAwB,GAAA,CACvC,WAAA;AAAA,KAMU,yBAAA,SACV,IAAA,SAAa,GAAA,0FAMT,uBAAA;AAAA,KAGM,UAAA,SACV,IAAA,SAAa,GAAA,0FAMT,YAAA,CAAkC,uBAAA;AAAA,KAG5B,eAAA,SACV,IAAA,SAAa,GAAA,0FAMT,iBAAA,CAAuC,uBAAA;AAAA,KAGjC,qBAAA,SACV,IAAA,SAAa,GAAA,0FAMT,mBAAA;AAAA,KAGM,IAAA,SACV,IAAA,SAAa,GAAA,0FAMT,KAAA;AAAA,KAGM,OAAA,SACV,IAAA,SAAa,GAAA,0FAMT,QAAA;AAAA,KAGM,gBAAA,WAA2B,YAAA,IAA6B,GAAA,CAClE,2BAAA,CAAuC,CAAA,GACvC,uBAAA,CAAmC,CAAA,GACnC,MAAA,CAAkB,CAAA,GAClB,SAAA,CAAqB,CAAA;AAAA,cAGV,IAAA,yBAA8B,YAAA;;;;;AAIzC,kBAAA,UACA,YAAA,EAAc,aAAA,KACb,gBAAA,CAAiB,aAAA;AAAA,cAQP,eAAA,GAAmB,GAAA,EAAK,GAAA,KAAM,YAAA;AAAA,cAM9B,qBAAA,GAAyB,GAAA,EAAK,GAAA"}