@confect/server 1.0.0-next.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.
Files changed (157) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/LICENSE +7 -0
  3. package/dist/ActionCtx.d.ts +12 -0
  4. package/dist/ActionCtx.d.ts.map +1 -0
  5. package/dist/ActionCtx.js +10 -0
  6. package/dist/ActionCtx.js.map +1 -0
  7. package/dist/ActionRunner.d.ts +15 -0
  8. package/dist/ActionRunner.d.ts.map +1 -0
  9. package/dist/ActionRunner.js +23 -0
  10. package/dist/ActionRunner.js.map +1 -0
  11. package/dist/Api.d.ts +27 -0
  12. package/dist/Api.d.ts.map +1 -0
  13. package/dist/Api.js +26 -0
  14. package/dist/Api.js.map +1 -0
  15. package/dist/Auth.d.ts +30 -0
  16. package/dist/Auth.d.ts.map +1 -0
  17. package/dist/Auth.js +24 -0
  18. package/dist/Auth.js.map +1 -0
  19. package/dist/DataModel.d.ts +33 -0
  20. package/dist/DataModel.d.ts.map +1 -0
  21. package/dist/DataModel.js +6 -0
  22. package/dist/DataModel.js.map +1 -0
  23. package/dist/DatabaseReader.d.ts +73 -0
  24. package/dist/DatabaseReader.d.ts.map +1 -0
  25. package/dist/DatabaseReader.js +32 -0
  26. package/dist/DatabaseReader.js.map +1 -0
  27. package/dist/DatabaseSchema.d.ts +139 -0
  28. package/dist/DatabaseSchema.d.ts.map +1 -0
  29. package/dist/DatabaseSchema.js +45 -0
  30. package/dist/DatabaseSchema.js.map +1 -0
  31. package/dist/DatabaseWriter.d.ts +39 -0
  32. package/dist/DatabaseWriter.d.ts.map +1 -0
  33. package/dist/DatabaseWriter.js +43 -0
  34. package/dist/DatabaseWriter.js.map +1 -0
  35. package/dist/Document.d.ts +47 -0
  36. package/dist/Document.d.ts.map +1 -0
  37. package/dist/Document.js +66 -0
  38. package/dist/Document.js.map +1 -0
  39. package/dist/FunctionImpl.d.ts +34 -0
  40. package/dist/FunctionImpl.d.ts.map +1 -0
  41. package/dist/FunctionImpl.js +35 -0
  42. package/dist/FunctionImpl.js.map +1 -0
  43. package/dist/GroupImpl.d.ts +24 -0
  44. package/dist/GroupImpl.d.ts.map +1 -0
  45. package/dist/GroupImpl.js +14 -0
  46. package/dist/GroupImpl.js.map +1 -0
  47. package/dist/Handler.d.ts +31 -0
  48. package/dist/Handler.d.ts.map +1 -0
  49. package/dist/Handler.js +6 -0
  50. package/dist/Handler.js.map +1 -0
  51. package/dist/HttpApi.d.ts +26 -0
  52. package/dist/HttpApi.d.ts.map +1 -0
  53. package/dist/HttpApi.js +74 -0
  54. package/dist/HttpApi.js.map +1 -0
  55. package/dist/Impl.d.ts +24 -0
  56. package/dist/Impl.d.ts.map +1 -0
  57. package/dist/Impl.js +28 -0
  58. package/dist/Impl.js.map +1 -0
  59. package/dist/MutationCtx.d.ts +12 -0
  60. package/dist/MutationCtx.d.ts.map +1 -0
  61. package/dist/MutationCtx.js +10 -0
  62. package/dist/MutationCtx.js.map +1 -0
  63. package/dist/MutationRunner.d.ts +24 -0
  64. package/dist/MutationRunner.d.ts.map +1 -0
  65. package/dist/MutationRunner.js +33 -0
  66. package/dist/MutationRunner.js.map +1 -0
  67. package/dist/OrderedQuery.d.ts +23 -0
  68. package/dist/OrderedQuery.d.ts.map +1 -0
  69. package/dist/OrderedQuery.js +34 -0
  70. package/dist/OrderedQuery.js.map +1 -0
  71. package/dist/QueryCtx.d.ts +12 -0
  72. package/dist/QueryCtx.d.ts.map +1 -0
  73. package/dist/QueryCtx.js +10 -0
  74. package/dist/QueryCtx.js.map +1 -0
  75. package/dist/QueryInitializer.d.ts +49 -0
  76. package/dist/QueryInitializer.d.ts.map +1 -0
  77. package/dist/QueryInitializer.js +83 -0
  78. package/dist/QueryInitializer.js.map +1 -0
  79. package/dist/QueryRunner.d.ts +14 -0
  80. package/dist/QueryRunner.d.ts.map +1 -0
  81. package/dist/QueryRunner.js +23 -0
  82. package/dist/QueryRunner.js.map +1 -0
  83. package/dist/RegisteredFunctions.d.ts +66 -0
  84. package/dist/RegisteredFunctions.d.ts.map +1 -0
  85. package/dist/RegisteredFunctions.js +71 -0
  86. package/dist/RegisteredFunctions.js.map +1 -0
  87. package/dist/Registry.d.ts +15 -0
  88. package/dist/Registry.d.ts.map +1 -0
  89. package/dist/Registry.js +10 -0
  90. package/dist/Registry.js.map +1 -0
  91. package/dist/RegistryItem.d.ts +31 -0
  92. package/dist/RegistryItem.d.ts.map +1 -0
  93. package/dist/RegistryItem.js +20 -0
  94. package/dist/RegistryItem.js.map +1 -0
  95. package/dist/Scheduler.d.ts +23 -0
  96. package/dist/Scheduler.d.ts.map +1 -0
  97. package/dist/Scheduler.js +24 -0
  98. package/dist/Scheduler.js.map +1 -0
  99. package/dist/SchemaToValidator.d.ts +88 -0
  100. package/dist/SchemaToValidator.d.ts.map +1 -0
  101. package/dist/SchemaToValidator.js +155 -0
  102. package/dist/SchemaToValidator.js.map +1 -0
  103. package/dist/Storage.d.ts +69 -0
  104. package/dist/Storage.d.ts.map +1 -0
  105. package/dist/Storage.js +46 -0
  106. package/dist/Storage.js.map +1 -0
  107. package/dist/Table.d.ts +247 -0
  108. package/dist/Table.d.ts.map +1 -0
  109. package/dist/Table.js +97 -0
  110. package/dist/Table.js.map +1 -0
  111. package/dist/TableInfo.d.ts +48 -0
  112. package/dist/TableInfo.d.ts.map +1 -0
  113. package/dist/TableInfo.js +6 -0
  114. package/dist/TableInfo.js.map +1 -0
  115. package/dist/VectorSearch.d.ts +42 -0
  116. package/dist/VectorSearch.d.ts.map +1 -0
  117. package/dist/VectorSearch.js +16 -0
  118. package/dist/VectorSearch.js.map +1 -0
  119. package/dist/_virtual/rolldown_runtime.js +13 -0
  120. package/dist/index.d.ts +30 -0
  121. package/dist/index.js +31 -0
  122. package/dist/internal/utils.d.ts +15 -0
  123. package/dist/internal/utils.d.ts.map +1 -0
  124. package/dist/internal/utils.js +49 -0
  125. package/dist/internal/utils.js.map +1 -0
  126. package/package.json +90 -0
  127. package/src/ActionCtx.ts +9 -0
  128. package/src/ActionRunner.ts +28 -0
  129. package/src/Api.ts +63 -0
  130. package/src/Auth.ts +31 -0
  131. package/src/DataModel.ts +69 -0
  132. package/src/DatabaseReader.ts +75 -0
  133. package/src/DatabaseSchema.ts +134 -0
  134. package/src/DatabaseWriter.ts +166 -0
  135. package/src/Document.ts +200 -0
  136. package/src/FunctionImpl.ts +112 -0
  137. package/src/GroupImpl.ts +60 -0
  138. package/src/Handler.ts +105 -0
  139. package/src/HttpApi.ts +232 -0
  140. package/src/Impl.ts +57 -0
  141. package/src/MutationCtx.ts +11 -0
  142. package/src/MutationRunner.ts +41 -0
  143. package/src/OrderedQuery.ts +109 -0
  144. package/src/QueryCtx.ts +9 -0
  145. package/src/QueryInitializer.ts +308 -0
  146. package/src/QueryRunner.ts +29 -0
  147. package/src/RegisteredFunctions.ts +381 -0
  148. package/src/Registry.ts +13 -0
  149. package/src/RegistryItem.ts +44 -0
  150. package/src/Scheduler.ts +39 -0
  151. package/src/SchemaToValidator.ts +619 -0
  152. package/src/Storage.ts +86 -0
  153. package/src/Table.ts +439 -0
  154. package/src/TableInfo.ts +91 -0
  155. package/src/VectorSearch.ts +46 -0
  156. package/src/index.ts +29 -0
  157. package/src/internal/utils.ts +87 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,12 @@
1
+ # @confect/server
2
+
3
+ ## 1.0.0-next.0
4
+
5
+ ### Major Changes
6
+
7
+ - 2ff70a7: Initial release.
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies [2ff70a7]
12
+ - @confect/core@1.0.0-next.0
package/LICENSE ADDED
@@ -0,0 +1,7 @@
1
+ ISC License
2
+
3
+ Copyright 2024 RJ Dellecese
4
+
5
+ Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
@@ -0,0 +1,12 @@
1
+ import { Context } from "effect";
2
+ import { GenericActionCtx, GenericDataModel } from "convex/server";
3
+
4
+ //#region src/ActionCtx.d.ts
5
+ declare namespace ActionCtx_d_exports {
6
+ export { ActionCtx };
7
+ }
8
+ declare const ActionCtx: <DataModel extends GenericDataModel>() => Context.Tag<GenericActionCtx<DataModel>, GenericActionCtx<DataModel>>;
9
+ type ActionCtx<DataModel extends GenericDataModel> = ReturnType<typeof ActionCtx<DataModel>>["Identifier"];
10
+ //#endregion
11
+ export { ActionCtx, ActionCtx_d_exports };
12
+ //# sourceMappingURL=ActionCtx.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionCtx.d.ts","names":[],"sources":["../src/ActionCtx.ts"],"sourcesContent":[],"mappings":";;;;;;;cAGa,8BAA+B,uBAAgB,OAAA,CAAA,IAAA,iBAAA,YAAA,iBAAA;KAGhD,4BAA4B,oBAAoB,kBACnD,UAAU"}
@@ -0,0 +1,10 @@
1
+ import { __export } from "./_virtual/rolldown_runtime.js";
2
+ import { Context } from "effect";
3
+
4
+ //#region src/ActionCtx.ts
5
+ var ActionCtx_exports = /* @__PURE__ */ __export({ ActionCtx: () => ActionCtx });
6
+ const ActionCtx = () => Context.GenericTag("@confect/server/ActionCtx");
7
+
8
+ //#endregion
9
+ export { ActionCtx, ActionCtx_exports };
10
+ //# sourceMappingURL=ActionCtx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionCtx.js","names":[],"sources":["../src/ActionCtx.ts"],"sourcesContent":["import type { GenericActionCtx, GenericDataModel } from \"convex/server\";\nimport { Context } from \"effect\";\n\nexport const ActionCtx = <DataModel extends GenericDataModel>() =>\n Context.GenericTag<GenericActionCtx<DataModel>>(\"@confect/server/ActionCtx\");\n\nexport type ActionCtx<DataModel extends GenericDataModel> = ReturnType<\n typeof ActionCtx<DataModel>\n>[\"Identifier\"];\n"],"mappings":";;;;;AAGA,MAAa,kBACX,QAAQ,WAAwC,4BAA4B"}
@@ -0,0 +1,15 @@
1
+ import { Context, Effect, Layer } from "effect";
2
+ import * as Ref$1 from "@confect/core/Ref";
3
+ import { GenericActionCtx } from "convex/server";
4
+ import * as effect_ParseResult0 from "effect/ParseResult";
5
+
6
+ //#region src/ActionRunner.d.ts
7
+ declare namespace ActionRunner_d_exports {
8
+ export { ActionRunner, layer };
9
+ }
10
+ declare const ActionRunner: Context.Tag<(<Action extends Ref$1.AnyAction>(action: Action, args: Ref$1.Args<Action>["Type"]) => Effect.Effect<any, effect_ParseResult0.ParseError, never>), <Action extends Ref$1.AnyAction>(action: Action, args: Ref$1.Args<Action>["Type"]) => Effect.Effect<any, effect_ParseResult0.ParseError, never>>;
11
+ type ActionRunner = typeof ActionRunner.Identifier;
12
+ declare const layer: (runAction: GenericActionCtx<any>["runAction"]) => Layer.Layer<(<Action extends Ref$1.AnyAction>(action: Action, args: Ref$1.Args<Action>["Type"]) => Effect.Effect<any, effect_ParseResult0.ParseError, never>), never, never>;
13
+ //#endregion
14
+ export { ActionRunner, ActionRunner_d_exports, layer };
15
+ //# sourceMappingURL=ActionRunner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionRunner.d.ts","names":[],"sources":["../src/ActionRunner.ts"],"sourcesContent":[],"mappings":";;;;;;;;;cAqBa,cAAY,OAAA,CAAA,qBAfP,KAAA,CAAI,mBACV,cACF,KAAA,CAAI,KAAK,oBAAe,MAAA,CAAA,YAAhB,mBAAA,CAAgB,UAAA,2BAFhB,KAAA,CAAI,mBACV,cACF,KAAA,CAAI,KAAK,oBAAe,MAAA,CAAA,YAAhB,mBAAA,CAAgB,UAAA;KAgBtB,YAAA,UAAsB,YAAA,CAAa;cAElC,mBAAoB,uCAAkC,KAAA,CAAA,uBApBjD,KAAA,CAAI,mBACV,cACF,KAAA,CAAI,KAAK,oBAAe,MAAA,CAAA,YAAhB,mBAAA,CAAgB,UAAA"}
@@ -0,0 +1,23 @@
1
+ import { __export } from "./_virtual/rolldown_runtime.js";
2
+ import { Context, Effect, Layer, Schema } from "effect";
3
+ import * as Ref$1 from "@confect/core/Ref";
4
+ import "convex/server";
5
+
6
+ //#region src/ActionRunner.ts
7
+ var ActionRunner_exports = /* @__PURE__ */ __export({
8
+ ActionRunner: () => ActionRunner,
9
+ layer: () => layer
10
+ });
11
+ const makeActionRunner = (runAction) => (action, args) => Effect.gen(function* () {
12
+ const function_ = Ref$1.getFunction(action);
13
+ const functionName = Ref$1.getConvexFunctionName(action);
14
+ const encodedArgs = yield* Schema.encode(function_.args)(args);
15
+ const encodedReturns = yield* Effect.promise(() => runAction(functionName, encodedArgs));
16
+ return yield* Schema.decode(function_.returns)(encodedReturns);
17
+ });
18
+ const ActionRunner = Context.GenericTag("@confect/server/ActionRunner");
19
+ const layer = (runAction) => Layer.succeed(ActionRunner, makeActionRunner(runAction));
20
+
21
+ //#endregion
22
+ export { ActionRunner, ActionRunner_exports, layer };
23
+ //# sourceMappingURL=ActionRunner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionRunner.js","names":["Ref"],"sources":["../src/ActionRunner.ts"],"sourcesContent":["import * as Ref from \"@confect/core/Ref\";\nimport { type GenericActionCtx } from \"convex/server\";\nimport { Context, Effect, Layer, Schema } from \"effect\";\n\nconst makeActionRunner =\n (runAction: GenericActionCtx<any>[\"runAction\"]) =>\n <Action extends Ref.AnyAction>(\n action: Action,\n args: Ref.Args<Action>[\"Type\"],\n ) =>\n Effect.gen(function* () {\n const function_ = Ref.getFunction(action);\n const functionName = Ref.getConvexFunctionName(action);\n\n const encodedArgs = yield* Schema.encode(function_.args)(args);\n const encodedReturns = yield* Effect.promise(() =>\n runAction(functionName as any, encodedArgs),\n );\n return yield* Schema.decode(function_.returns)(encodedReturns);\n });\n\nexport const ActionRunner = Context.GenericTag<\n ReturnType<typeof makeActionRunner>\n>(\"@confect/server/ActionRunner\");\nexport type ActionRunner = typeof ActionRunner.Identifier;\n\nexport const layer = (runAction: GenericActionCtx<any>[\"runAction\"]) =>\n Layer.succeed(ActionRunner, makeActionRunner(runAction));\n"],"mappings":";;;;;;;;;;AAIA,MAAM,oBACH,eAEC,QACA,SAEA,OAAO,IAAI,aAAa;CACtB,MAAM,YAAYA,MAAI,YAAY,OAAO;CACzC,MAAM,eAAeA,MAAI,sBAAsB,OAAO;CAEtD,MAAM,cAAc,OAAO,OAAO,OAAO,UAAU,KAAK,CAAC,KAAK;CAC9D,MAAM,iBAAiB,OAAO,OAAO,cACnC,UAAU,cAAqB,YAAY,CAC5C;AACD,QAAO,OAAO,OAAO,OAAO,UAAU,QAAQ,CAAC,eAAe;EAC9D;AAEN,MAAa,eAAe,QAAQ,WAElC,+BAA+B;AAGjC,MAAa,SAAS,cACpB,MAAM,QAAQ,cAAc,iBAAiB,UAAU,CAAC"}
package/dist/Api.d.ts ADDED
@@ -0,0 +1,27 @@
1
+ import { AnyWithProps as AnyWithProps$1 } from "./DatabaseSchema.js";
2
+ import { GenericSchema, SchemaDefinition } from "convex/server";
3
+ import * as Spec from "@confect/core/Spec";
4
+
5
+ //#region src/Api.d.ts
6
+ declare namespace Api_d_exports {
7
+ export { Any, AnyWithProps, Api, Groups, Schema, TypeId, isApi, make };
8
+ }
9
+ declare const TypeId = "@confect/server/Api";
10
+ type TypeId = typeof TypeId;
11
+ declare const isApi: (u: unknown) => u is Any;
12
+ interface Api<DatabaseSchema_ extends AnyWithProps$1, Spec_ extends Spec.AnyWithProps> {
13
+ readonly [TypeId]: TypeId;
14
+ readonly spec: Spec_;
15
+ readonly databaseSchema: DatabaseSchema_;
16
+ readonly convexSchemaDefinition: SchemaDefinition<GenericSchema, true>;
17
+ }
18
+ interface Any {
19
+ readonly [TypeId]: TypeId;
20
+ }
21
+ interface AnyWithProps extends Api<AnyWithProps$1, Spec.AnyWithProps> {}
22
+ type Schema<Api_ extends AnyWithProps> = Api_["databaseSchema"];
23
+ type Groups<Api_ extends AnyWithProps> = Spec.Groups<Api_["spec"]>;
24
+ declare const make: <DatabaseSchema_ extends AnyWithProps$1, Spec_ extends Spec.AnyWithProps>(databaseSchema: DatabaseSchema_, spec: Spec_) => Api<DatabaseSchema_, Spec_>;
25
+ //#endregion
26
+ export { Any, AnyWithProps, Api, Api_d_exports, Groups, Schema, TypeId, isApi, make };
27
+ //# sourceMappingURL=Api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Api.d.ts","names":[],"sources":["../src/Api.ts"],"sourcesContent":[],"mappings":";;;;;;;;cAMa,MAAA;KACD,MAAA,UAAgB;cAEf,4BAA2B;UAEvB,4BACS,8BACV,IAAA,CAAK;YAET,MAAA,GAAS;iBACJ;2BACU;mCACQ,iBAAiB;;UAGnC,GAAA;YACL,MAAA,GAAS;;UAGJ,YAAA,SACP,IAAI,gBAA6B,IAAA,CAAK,eApBhD;AACY,KAqBA,MArBM,CAAA,aAqBc,YArBE,CAAA,GAqBc,IArBd,CAAA,gBAAA,CAAA;AAErB,KAqBD,MArBmE,CAAA,aAqB/C,YArB+C,CAAA,GAqB/B,IAAA,CAAK,MArB0B,CAqBnB,IArBmB,CAAA,MAAA,CAAA,CAAA;AAE9D,cA6CJ,IA7CO,EAAA,CAAA,wBA8CM,cA9CN,EAAA,cA+CJ,IAAA,CAAK,YA/CD,CAAA,CAAA,cAAA,EAiDF,eAjDE,EAAA,IAAA,EAkDZ,KAlDY,EAAA,GAmDjB,GAnDiB,CAmDb,eAnDa,EAmDI,KAnDJ,CAAA"}
package/dist/Api.js ADDED
@@ -0,0 +1,26 @@
1
+ import { __export } from "./_virtual/rolldown_runtime.js";
2
+ import { Predicate, Record, pipe } from "effect";
3
+ import { defineSchema } from "convex/server";
4
+
5
+ //#region src/Api.ts
6
+ var Api_exports = /* @__PURE__ */ __export({
7
+ TypeId: () => TypeId,
8
+ isApi: () => isApi,
9
+ make: () => make
10
+ });
11
+ const TypeId = "@confect/server/Api";
12
+ const isApi = (u) => Predicate.hasProperty(u, TypeId);
13
+ const Proto = { [TypeId]: TypeId };
14
+ const makeProto = ({ databaseSchema, spec }) => Object.assign(Object.create(Proto), {
15
+ databaseSchema,
16
+ spec,
17
+ convexSchemaDefinition: pipe(databaseSchema.tables, Record.map(({ tableDefinition }) => tableDefinition), defineSchema)
18
+ });
19
+ const make = (databaseSchema, spec) => makeProto({
20
+ databaseSchema,
21
+ spec
22
+ });
23
+
24
+ //#endregion
25
+ export { Api_exports, TypeId, isApi, make };
26
+ //# sourceMappingURL=Api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Api.js","names":["defineConvexSchema"],"sources":["../src/Api.ts"],"sourcesContent":["import type * as Spec from \"@confect/core/Spec\";\nimport type { GenericSchema, SchemaDefinition } from \"convex/server\";\nimport { defineSchema as defineConvexSchema } from \"convex/server\";\nimport { pipe, Predicate, Record } from \"effect\";\nimport type * as DatabaseSchema from \"./DatabaseSchema\";\n\nexport const TypeId = \"@confect/server/Api\";\nexport type TypeId = typeof TypeId;\n\nexport const isApi = (u: unknown): u is Any => Predicate.hasProperty(u, TypeId);\n\nexport interface Api<\n DatabaseSchema_ extends DatabaseSchema.AnyWithProps,\n Spec_ extends Spec.AnyWithProps,\n> {\n readonly [TypeId]: TypeId;\n readonly spec: Spec_;\n readonly databaseSchema: DatabaseSchema_;\n readonly convexSchemaDefinition: SchemaDefinition<GenericSchema, true>;\n}\n\nexport interface Any {\n readonly [TypeId]: TypeId;\n}\n\nexport interface AnyWithProps\n extends Api<DatabaseSchema.AnyWithProps, Spec.AnyWithProps> {}\n\nexport type Schema<Api_ extends AnyWithProps> = Api_[\"databaseSchema\"];\n\nexport type Groups<Api_ extends AnyWithProps> = Spec.Groups<Api_[\"spec\"]>;\n\nconst Proto = {\n [TypeId]: TypeId,\n};\n\nconst makeProto = <\n DatabaseSchema_ extends DatabaseSchema.AnyWithProps,\n Spec_ extends Spec.AnyWithProps,\n>({\n databaseSchema,\n spec,\n}: {\n databaseSchema: DatabaseSchema.AnyWithProps;\n spec: Spec_;\n}): Api<DatabaseSchema_, Spec_> =>\n Object.assign(Object.create(Proto), {\n databaseSchema,\n spec,\n convexSchemaDefinition: pipe(\n databaseSchema.tables,\n Record.map(({ tableDefinition }) => tableDefinition),\n defineConvexSchema,\n ),\n });\n\nexport const make = <\n DatabaseSchema_ extends DatabaseSchema.AnyWithProps,\n Spec_ extends Spec.AnyWithProps,\n>(\n databaseSchema: DatabaseSchema_,\n spec: Spec_,\n): Api<DatabaseSchema_, Spec_> => makeProto({ databaseSchema, spec });\n"],"mappings":";;;;;;;;;;AAMA,MAAa,SAAS;AAGtB,MAAa,SAAS,MAAyB,UAAU,YAAY,GAAG,OAAO;AAuB/E,MAAM,QAAQ,GACX,SAAS,QACX;AAED,MAAM,aAGJ,EACA,gBACA,WAKA,OAAO,OAAO,OAAO,OAAO,MAAM,EAAE;CAClC;CACA;CACA,wBAAwB,KACtB,eAAe,QACf,OAAO,KAAK,EAAE,sBAAsB,gBAAgB,EACpDA,aACD;CACF,CAAC;AAEJ,MAAa,QAIX,gBACA,SACgC,UAAU;CAAE;CAAgB;CAAM,CAAC"}
package/dist/Auth.d.ts ADDED
@@ -0,0 +1,30 @@
1
+ import { Effect, Layer, Schema } from "effect";
2
+ import * as convex_server37 from "convex/server";
3
+ import { Auth as Auth$1 } from "convex/server";
4
+ import * as effect_Context2 from "effect/Context";
5
+ import * as effect_Cause2 from "effect/Cause";
6
+
7
+ //#region src/Auth.d.ts
8
+ declare namespace Auth_d_exports {
9
+ export { Auth, NoUserIdentityFoundError, layer };
10
+ }
11
+ declare const Auth_base: effect_Context2.TagClass<Auth, "@confect/server/Auth", {
12
+ getUserIdentity: Effect.Effect<convex_server37.UserIdentity, NoUserIdentityFoundError, never>;
13
+ }> & Effect.Tag.Proxy<Auth, {
14
+ getUserIdentity: Effect.Effect<convex_server37.UserIdentity, NoUserIdentityFoundError, never>;
15
+ }> & {
16
+ use: <X>(body: (_: {
17
+ getUserIdentity: Effect.Effect<convex_server37.UserIdentity, NoUserIdentityFoundError, never>;
18
+ }) => X) => [X] extends [Effect.Effect<infer A, infer E, infer R>] ? Effect.Effect<A, E, Auth | R> : [X] extends [PromiseLike<infer A_1>] ? Effect.Effect<A_1, effect_Cause2.UnknownException, Auth> : Effect.Effect<X, never, Auth>;
19
+ };
20
+ declare class Auth extends Auth_base {}
21
+ declare const layer: (auth: Auth$1) => Layer.Layer<Auth, never, never>;
22
+ declare const NoUserIdentityFoundError_base: Schema.TaggedErrorClass<NoUserIdentityFoundError, "NoUserIdentityFoundError", {
23
+ readonly _tag: Schema.tag<"NoUserIdentityFoundError">;
24
+ }>;
25
+ declare class NoUserIdentityFoundError extends NoUserIdentityFoundError_base {
26
+ get message(): string;
27
+ }
28
+ //#endregion
29
+ export { Auth, Auth_d_exports, NoUserIdentityFoundError, layer };
30
+ //# sourceMappingURL=Auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Auth.d.ts","names":[],"sources":["../src/Auth.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;cAC6D;;;;;;;;;cAgBhD,IAAA,SAAa,SAAA;AAhBmC,cAqBhD,KArBgD,EAAA,CAAA,IAAA,EAqBjC,MArBiC,EAAA,GAqBvB,KAAA,CAAA,KArBuB,CAqBvB,IArBuB,EAAA,KAAA,EAAA,KAAA,CAAA;cAqBc;;;cAE9D,wBAAA,SAAiC,6BAAA"}
package/dist/Auth.js ADDED
@@ -0,0 +1,24 @@
1
+ import { __export } from "./_virtual/rolldown_runtime.js";
2
+ import { Effect, Layer, Option, Schema, flow } from "effect";
3
+
4
+ //#region src/Auth.ts
5
+ var Auth_exports = /* @__PURE__ */ __export({
6
+ Auth: () => Auth,
7
+ NoUserIdentityFoundError: () => NoUserIdentityFoundError,
8
+ layer: () => layer
9
+ });
10
+ const make = (auth) => ({ getUserIdentity: Effect.promise(() => auth.getUserIdentity()).pipe(Effect.andThen(flow(Option.fromNullable, Option.match({
11
+ onNone: () => Effect.fail(new NoUserIdentityFoundError()),
12
+ onSome: Effect.succeed
13
+ })))) });
14
+ var Auth = class extends Effect.Tag("@confect/server/Auth")() {};
15
+ const layer = (auth) => Layer.succeed(Auth, make(auth));
16
+ var NoUserIdentityFoundError = class extends Schema.TaggedError("NoUserIdentityFoundError")("NoUserIdentityFoundError", {}) {
17
+ get message() {
18
+ return "No user identity found";
19
+ }
20
+ };
21
+
22
+ //#endregion
23
+ export { Auth, Auth_exports, NoUserIdentityFoundError, layer };
24
+ //# sourceMappingURL=Auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Auth.js","names":[],"sources":["../src/Auth.ts"],"sourcesContent":["import type { Auth as ConvexAuth } from \"convex/server\";\nimport { Effect, flow, Layer, Option, Schema } from \"effect\";\n\nconst make = (auth: ConvexAuth) => ({\n getUserIdentity: Effect.promise(() => auth.getUserIdentity()).pipe(\n Effect.andThen(\n flow(\n Option.fromNullable,\n Option.match({\n onNone: () => Effect.fail(new NoUserIdentityFoundError()),\n onSome: Effect.succeed,\n }),\n ),\n ),\n ),\n});\n\nexport class Auth extends Effect.Tag(\"@confect/server/Auth\")<\n Auth,\n ReturnType<typeof make>\n>() {}\n\nexport const layer = (auth: ConvexAuth) => Layer.succeed(Auth, make(auth));\n\nexport class NoUserIdentityFoundError extends Schema.TaggedError<NoUserIdentityFoundError>(\n \"NoUserIdentityFoundError\",\n)(\"NoUserIdentityFoundError\", {}) {\n override get message(): string {\n return \"No user identity found\";\n }\n}\n"],"mappings":";;;;;;;;;AAGA,MAAM,QAAQ,UAAsB,EAClC,iBAAiB,OAAO,cAAc,KAAK,iBAAiB,CAAC,CAAC,KAC5D,OAAO,QACL,KACE,OAAO,cACP,OAAO,MAAM;CACX,cAAc,OAAO,KAAK,IAAI,0BAA0B,CAAC;CACzD,QAAQ,OAAO;CAChB,CAAC,CACH,CACF,CACF,EACF;AAED,IAAa,OAAb,cAA0B,OAAO,IAAI,uBAAuB,EAGzD,CAAC;AAEJ,MAAa,SAAS,SAAqB,MAAM,QAAQ,MAAM,KAAK,KAAK,CAAC;AAE1E,IAAa,2BAAb,cAA8C,OAAO,YACnD,2BACD,CAAC,4BAA4B,EAAE,CAAC,CAAC;CAChC,IAAa,UAAkB;AAC7B,SAAO"}
@@ -0,0 +1,33 @@
1
+ import { AnyWithProps as AnyWithProps$1, Name, TablesRecord, WithName } from "./Table.js";
2
+ import { AnyWithProps as AnyWithProps$2, Tables as Tables$1 } from "./DatabaseSchema.js";
3
+ import { ConvexTableInfo, Document, TableInfo } from "./TableInfo.js";
4
+
5
+ //#region src/DataModel.d.ts
6
+ declare namespace DataModel_d_exports {
7
+ export { Any, AnyWithProps, DataModel, DocumentByName, DocumentWithName, FromSchema, FromTables, TableInfoWithName, TableInfoWithName_, TableNames, TableWithName, Tables, ToConvex, TypeId };
8
+ }
9
+ declare const TypeId: "@confect/server/DataModel";
10
+ type TypeId = typeof TypeId;
11
+ interface DataModel<Tables_$1 extends AnyWithProps$1> {
12
+ readonly [TypeId]: TypeId;
13
+ readonly tables: TablesRecord<Tables_$1>;
14
+ }
15
+ interface Any {
16
+ readonly [TypeId]: TypeId;
17
+ }
18
+ interface AnyWithProps extends Any {
19
+ readonly tables: Record<string, AnyWithProps$1>;
20
+ }
21
+ type FromSchema<Schema extends AnyWithProps$2> = DataModel<Tables$1<Schema>>;
22
+ type FromTables<Tables_$1 extends AnyWithProps$1> = DataModel<Tables_$1>;
23
+ type ToConvex<DataModel_ extends AnyWithProps> = { [TableName_ in TableNames<DataModel_>]: TableInfoWithName<DataModel_, TableName_> };
24
+ type Tables<DataModel_ extends AnyWithProps> = DataModel_ extends DataModel<infer Tables_> ? Tables_ : never;
25
+ type TableNames<DataModel_ extends AnyWithProps> = Name<Tables<DataModel_>> & string;
26
+ type TableWithName<DataModel_ extends AnyWithProps, TableName extends TableNames<DataModel_>> = WithName<Tables<DataModel_>, TableName>;
27
+ type TableInfoWithName_<DataModel_ extends AnyWithProps, TableName extends TableNames<DataModel_>> = TableInfo<WithName<Tables<DataModel_>, TableName>>;
28
+ type TableInfoWithName<DataModel_ extends AnyWithProps, TableName extends TableNames<DataModel_>> = ConvexTableInfo<TableInfo<WithName<Tables<DataModel_>, TableName>>>;
29
+ type DocumentWithName<DataModel_ extends AnyWithProps, TableName extends TableNames<DataModel_>> = Document<TableInfo<WithName<Tables<DataModel_>, TableName>>>;
30
+ type DocumentByName<DataModel_ extends AnyWithProps, TableName extends TableNames<DataModel_>> = DocumentWithName<DataModel_, TableName>;
31
+ //#endregion
32
+ export { Any, AnyWithProps, DataModel, DataModel_d_exports, DocumentByName, DocumentWithName, FromSchema, FromTables, TableInfoWithName, TableInfoWithName_, TableNames, TableWithName, Tables, ToConvex, TypeId };
33
+ //# sourceMappingURL=DataModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataModel.d.ts","names":[],"sources":["../src/DataModel.ts"],"sourcesContent":[],"mappings":";;;;;;;;cAIqB;KACT,MAAA,UAAgB;UAEX,4BAA0B;YAC/B,MAAA,GAAS;mBACF,aAAmB;;UAGrB,GAAA;YACL,MAAA,GAAS;;UAGJ,YAAA,SAAqB;mBACnB,eAAe;;KAGtB,0BAA0B,kBAA+B,UACnE,SAAsB;KAGZ,6BAA2B,kBAAsB,UAAU;KAE3D,4BAA4B,iCACvB,WAAW,cAAc,kBACtC,YACA;KAIQ,0BAA0B,gBACpC,mBAAmB,2BAA2B;KAEpC,8BAA8B,gBAAgB,KACxD,OAAO;AAjCY,KAqCT,aArC4C,CAAA,mBAsCnC,YAtCmC,EAAA,kBAuCpC,UAvCoC,CAuCzB,UAvCyB,CAAA,CAAA,GAwCpD,QAxCoD,CAwCrC,MAxCqC,CAwC9B,UAxC8B,CAAA,EAwCjB,SAxCiB,CAAA;AAC5C,KAyCA,kBAzCgB,CAAA,mBA0CP,YA1Ca,EAAA,kBA2Cd,UA3Cc,CA2CH,UA3CG,CAAA,CAAA,GA4C9B,SA5C8B,CA4CV,QA5CU,CA4CK,MA5CL,CA4CY,UA5CZ,CAAA,EA4CyB,SA5CzB,CAAA,CAAA;AAEjB,KA4CL,iBA5Cc,CAAA,mBA6CL,YA7CK,EAAA,kBA8CN,UA9CM,CA8CK,UA9CL,CAAA,CAAA,GA+CtB,eA/CsB,CAgDxB,SAhDwB,CAgDJ,QAhDI,CAgDW,MAhDX,CAgDkB,UAhDlB,CAAA,EAgD+B,SAhD/B,CAAA,CAAA,CAAA;AAAiB,KAmD/B,gBAnD+B,CAAA,mBAoDtB,YApDsB,EAAA,kBAqDvB,UArDuB,CAqDZ,UArDY,CAAA,CAAA,GAsDvC,QAtDuC,CAuDzC,SAvDyC,CAuDrB,QAvDqB,CAuDN,MAvDM,CAuDC,UAvDD,CAAA,EAuDc,SAvDd,CAAA,CAAA,CAAA;AACtB,KAyDT,cAzDS,CAAA,mBA0DA,YA1DA,EAAA,kBA2DD,UA3DC,CA2DU,UA3DV,CAAA,CAAA,GA4DjB,gBA5DiB,CA4DA,UA5DA,EA4DY,SA5DZ,CAAA"}
@@ -0,0 +1,6 @@
1
+ //#region src/DataModel.ts
2
+ var DataModel_exports = {};
3
+
4
+ //#endregion
5
+ export { DataModel_exports };
6
+ //# sourceMappingURL=DataModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataModel.js","names":[],"sources":["../src/DataModel.ts"],"sourcesContent":["import type * as DatabaseSchema from \"./DatabaseSchema\";\nimport type * as Table from \"./Table\";\nimport type * as TableInfo from \"./TableInfo\";\n\nexport declare const TypeId: \"@confect/server/DataModel\";\nexport type TypeId = typeof TypeId;\n\nexport interface DataModel<Tables_ extends Table.AnyWithProps> {\n readonly [TypeId]: TypeId;\n readonly tables: Table.TablesRecord<Tables_>;\n}\n\nexport interface Any {\n readonly [TypeId]: TypeId;\n}\n\nexport interface AnyWithProps extends Any {\n readonly tables: Record<string, Table.AnyWithProps>;\n}\n\nexport type FromSchema<Schema extends DatabaseSchema.AnyWithProps> = DataModel<\n DatabaseSchema.Tables<Schema>\n>;\n\nexport type FromTables<Tables_ extends Table.AnyWithProps> = DataModel<Tables_>;\n\nexport type ToConvex<DataModel_ extends AnyWithProps> = {\n [TableName_ in TableNames<DataModel_>]: TableInfoWithName<\n DataModel_,\n TableName_\n >;\n};\n\nexport type Tables<DataModel_ extends AnyWithProps> =\n DataModel_ extends DataModel<infer Tables_> ? Tables_ : never;\n\nexport type TableNames<DataModel_ extends AnyWithProps> = Table.Name<\n Tables<DataModel_>\n> &\n string;\n\nexport type TableWithName<\n DataModel_ extends AnyWithProps,\n TableName extends TableNames<DataModel_>,\n> = Table.WithName<Tables<DataModel_>, TableName>;\n\nexport type TableInfoWithName_<\n DataModel_ extends AnyWithProps,\n TableName extends TableNames<DataModel_>,\n> = TableInfo.TableInfo<Table.WithName<Tables<DataModel_>, TableName>>;\n\nexport type TableInfoWithName<\n DataModel_ extends AnyWithProps,\n TableName extends TableNames<DataModel_>,\n> = TableInfo.ConvexTableInfo<\n TableInfo.TableInfo<Table.WithName<Tables<DataModel_>, TableName>>\n>;\n\nexport type DocumentWithName<\n DataModel_ extends AnyWithProps,\n TableName extends TableNames<DataModel_>,\n> = TableInfo.Document<\n TableInfo.TableInfo<Table.WithName<Tables<DataModel_>, TableName>>\n>;\n\nexport type DocumentByName<\n DataModel_ extends AnyWithProps,\n TableName extends TableNames<DataModel_>,\n> = DocumentWithName<DataModel_, TableName>;\n"],"mappings":""}
@@ -0,0 +1,73 @@
1
+ import { Name, WithName } from "./Table.js";
2
+ import { AnyWithProps, IncludeSystemTables, Tables } from "./DatabaseSchema.js";
3
+ import { DocumentDecodeError } from "./Document.js";
4
+ import { TableInfo } from "./TableInfo.js";
5
+ import { DataModel, FromSchema, TableInfoWithName, ToConvex } from "./DataModel.js";
6
+ import { OrderedQuery as OrderedQuery$1 } from "./OrderedQuery.js";
7
+ import { GetByIdFailure, GetByIndexFailure } from "./QueryInitializer.js";
8
+ import { Context, Layer } from "effect";
9
+ import * as convex_server0 from "convex/server";
10
+ import { GenericDatabaseReader } from "convex/server";
11
+ import * as convex_values0 from "convex/values";
12
+ import * as _confect_core_Types0 from "@confect/core/Types";
13
+ import * as effect_Effect0 from "effect/Effect";
14
+
15
+ //#region src/DatabaseReader.d.ts
16
+ declare namespace DatabaseReader_d_exports {
17
+ export { DatabaseReader, layer, make };
18
+ }
19
+ declare const make: <DatabaseSchema_ extends AnyWithProps>(databaseSchema: DatabaseSchema_, convexDatabaseReader: GenericDatabaseReader<ToConvex<FromSchema<DatabaseSchema_>>>) => {
20
+ table: <const TableName extends Name<IncludeSystemTables<Tables<DatabaseSchema_>>>>(tableName: TableName) => {
21
+ readonly get: {
22
+ (id: convex_values0.GenericId<TableName>): effect_Effect0.Effect<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["document"], GetByIdFailure | DocumentDecodeError, never>;
23
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, ...indexFieldValues: _confect_core_Types0.IndexFieldTypesForEq<ToConvex<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>>, TableName, TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"][IndexName]>): effect_Effect0.Effect<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["document"], DocumentDecodeError | GetByIndexFailure, never>;
24
+ };
25
+ readonly index: {
26
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, indexRange?: ((q: convex_server0.IndexRangeBuilder<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["convexDocument"], convex_server0.NamedIndex<TableInfoWithName<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>, TableName>, IndexName>, 0>) => convex_server0.IndexRange) | undefined, order?: "asc" | "desc"): OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
27
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, order?: "asc" | "desc"): OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
28
+ };
29
+ readonly search: <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["searchIndexes"]>(indexName: IndexName, searchFilter: (q: convex_server0.SearchFilterBuilder<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["convexDocument"], convex_server0.NamedSearchIndex<TableInfoWithName<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>, TableName>, IndexName>>) => convex_server0.SearchFilter) => OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
30
+ };
31
+ };
32
+ declare const DatabaseReader: <DatabaseSchema_ extends AnyWithProps>() => Context.Tag<{
33
+ table: <const TableName extends Name<IncludeSystemTables<Tables<DatabaseSchema_>>>>(tableName: TableName) => {
34
+ readonly get: {
35
+ (id: convex_values0.GenericId<TableName>): effect_Effect0.Effect<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["document"], GetByIdFailure | DocumentDecodeError, never>;
36
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, ...indexFieldValues: _confect_core_Types0.IndexFieldTypesForEq<ToConvex<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>>, TableName, TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"][IndexName]>): effect_Effect0.Effect<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["document"], DocumentDecodeError | GetByIndexFailure, never>;
37
+ };
38
+ readonly index: {
39
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, indexRange?: ((q: convex_server0.IndexRangeBuilder<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["convexDocument"], convex_server0.NamedIndex<TableInfoWithName<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>, TableName>, IndexName>, 0>) => convex_server0.IndexRange) | undefined, order?: "asc" | "desc"): OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
40
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, order?: "asc" | "desc"): OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
41
+ };
42
+ readonly search: <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["searchIndexes"]>(indexName: IndexName, searchFilter: (q: convex_server0.SearchFilterBuilder<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["convexDocument"], convex_server0.NamedSearchIndex<TableInfoWithName<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>, TableName>, IndexName>>) => convex_server0.SearchFilter) => OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
43
+ };
44
+ }, {
45
+ table: <const TableName extends Name<IncludeSystemTables<Tables<DatabaseSchema_>>>>(tableName: TableName) => {
46
+ readonly get: {
47
+ (id: convex_values0.GenericId<TableName>): effect_Effect0.Effect<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["document"], GetByIdFailure | DocumentDecodeError, never>;
48
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, ...indexFieldValues: _confect_core_Types0.IndexFieldTypesForEq<ToConvex<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>>, TableName, TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"][IndexName]>): effect_Effect0.Effect<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["document"], DocumentDecodeError | GetByIndexFailure, never>;
49
+ };
50
+ readonly index: {
51
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, indexRange?: ((q: convex_server0.IndexRangeBuilder<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["convexDocument"], convex_server0.NamedIndex<TableInfoWithName<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>, TableName>, IndexName>, 0>) => convex_server0.IndexRange) | undefined, order?: "asc" | "desc"): OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
52
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, order?: "asc" | "desc"): OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
53
+ };
54
+ readonly search: <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["searchIndexes"]>(indexName: IndexName, searchFilter: (q: convex_server0.SearchFilterBuilder<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["convexDocument"], convex_server0.NamedSearchIndex<TableInfoWithName<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>, TableName>, IndexName>>) => convex_server0.SearchFilter) => OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
55
+ };
56
+ }>;
57
+ type DatabaseReader<DatabaseSchema_ extends AnyWithProps> = ReturnType<typeof DatabaseReader<DatabaseSchema_>>["Identifier"];
58
+ declare const layer: <DatabaseSchema_ extends AnyWithProps>(databaseSchema: DatabaseSchema_, convexDatabaseReader: GenericDatabaseReader<ToConvex<FromSchema<DatabaseSchema_>>>) => Layer.Layer<{
59
+ table: <const TableName extends Name<IncludeSystemTables<Tables<DatabaseSchema_>>>>(tableName: TableName) => {
60
+ readonly get: {
61
+ (id: convex_values0.GenericId<TableName>): effect_Effect0.Effect<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["document"], GetByIdFailure | DocumentDecodeError, never>;
62
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, ...indexFieldValues: _confect_core_Types0.IndexFieldTypesForEq<ToConvex<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>>, TableName, TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"][IndexName]>): effect_Effect0.Effect<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["document"], DocumentDecodeError | GetByIndexFailure, never>;
63
+ };
64
+ readonly index: {
65
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, indexRange?: ((q: convex_server0.IndexRangeBuilder<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["convexDocument"], convex_server0.NamedIndex<TableInfoWithName<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>, TableName>, IndexName>, 0>) => convex_server0.IndexRange) | undefined, order?: "asc" | "desc"): OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
66
+ <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["indexes"]>(indexName: IndexName, order?: "asc" | "desc"): OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
67
+ };
68
+ readonly search: <IndexName extends keyof TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["searchIndexes"]>(indexName: IndexName, searchFilter: (q: convex_server0.SearchFilterBuilder<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>["convexDocument"], convex_server0.NamedSearchIndex<TableInfoWithName<DataModel<IncludeSystemTables<Tables<DatabaseSchema_>>>, TableName>, IndexName>>) => convex_server0.SearchFilter) => OrderedQuery$1<TableInfo<WithName<IncludeSystemTables<Tables<DatabaseSchema_>>, TableName>>, TableName>;
69
+ };
70
+ }, never, never>;
71
+ //#endregion
72
+ export { DatabaseReader, DatabaseReader_d_exports, layer, make };
73
+ //# sourceMappingURL=DatabaseReader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatabaseReader.d.ts","names":[],"sources":["../src/DatabaseReader.ts"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { __export } from "./_virtual/rolldown_runtime.js";
2
+ import { systemTables } from "./Table.js";
3
+ import { extendWithSystemTables } from "./DatabaseSchema.js";
4
+ import { make as make$1 } from "./QueryInitializer.js";
5
+ import { Array, Context, Layer } from "effect";
6
+
7
+ //#region src/DatabaseReader.ts
8
+ var DatabaseReader_exports = /* @__PURE__ */ __export({
9
+ DatabaseReader: () => DatabaseReader,
10
+ layer: () => layer,
11
+ make: () => make
12
+ });
13
+ const make = (databaseSchema, convexDatabaseReader) => {
14
+ const extendedTables = extendWithSystemTables(databaseSchema.tables);
15
+ return { table: (tableName) => {
16
+ const table = Object.values(extendedTables).find((def) => def.name === tableName);
17
+ const baseDatabaseReader = Array.some(Object.values(systemTables), (systemTableDef) => systemTableDef.name === tableName) ? {
18
+ get: convexDatabaseReader.system.get,
19
+ query: convexDatabaseReader.system.query
20
+ } : {
21
+ get: convexDatabaseReader.get,
22
+ query: convexDatabaseReader.query
23
+ };
24
+ return make$1(tableName, baseDatabaseReader, table);
25
+ } };
26
+ };
27
+ const DatabaseReader = () => Context.GenericTag("@confect/server/DatabaseReader");
28
+ const layer = (databaseSchema, convexDatabaseReader) => Layer.succeed(DatabaseReader(), make(databaseSchema, convexDatabaseReader));
29
+
30
+ //#endregion
31
+ export { DatabaseReader, DatabaseReader_exports, layer, make };
32
+ //# sourceMappingURL=DatabaseReader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatabaseReader.js","names":["DatabaseSchema.extendWithSystemTables","baseDatabaseReader: BaseDatabaseReader<any>","Table.systemTables","QueryInitializer.make"],"sources":["../src/DatabaseReader.ts"],"sourcesContent":["import type { GenericDatabaseReader } from \"convex/server\";\nimport { Array, Context, Layer } from \"effect\";\nimport type { BaseDatabaseReader } from \"@confect/core/Types\";\nimport * as DatabaseSchema from \"./DatabaseSchema\";\nimport type * as DataModel from \"./DataModel\";\nimport * as QueryInitializer from \"./QueryInitializer\";\nimport * as Table from \"./Table\";\n\nexport const make = <DatabaseSchema_ extends DatabaseSchema.AnyWithProps>(\n databaseSchema: DatabaseSchema_,\n convexDatabaseReader: GenericDatabaseReader<\n DataModel.ToConvex<DataModel.FromSchema<DatabaseSchema_>>\n >,\n) => {\n type Tables = DatabaseSchema.Tables<DatabaseSchema_>;\n type IncludedTables = DatabaseSchema.IncludeSystemTables<Tables>;\n const extendedTables = DatabaseSchema.extendWithSystemTables(\n databaseSchema.tables as Table.TablesRecord<Tables>,\n );\n\n return {\n table: <const TableName extends Table.Name<IncludedTables>>(\n tableName: TableName,\n ) => {\n const table = Object.values(extendedTables).find(\n (def) => def.name === tableName,\n ) as Table.WithName<IncludedTables, TableName>;\n\n const baseDatabaseReader: BaseDatabaseReader<any> = Array.some(\n Object.values(Table.systemTables),\n (systemTableDef) => systemTableDef.name === tableName,\n )\n ? ({\n get: convexDatabaseReader.system.get,\n query: convexDatabaseReader.system.query,\n } as BaseDatabaseReader<\n DataModel.ToConvex<DataModel.FromTables<Table.SystemTables>>\n >)\n : ({\n get: convexDatabaseReader.get,\n query: convexDatabaseReader.query,\n } as BaseDatabaseReader<\n DataModel.ToConvex<DataModel.FromSchema<DatabaseSchema_>>\n >);\n\n return QueryInitializer.make<IncludedTables, TableName>(\n tableName,\n baseDatabaseReader,\n table,\n );\n },\n };\n};\n\nexport const DatabaseReader = <\n DatabaseSchema_ extends DatabaseSchema.AnyWithProps,\n>() =>\n Context.GenericTag<ReturnType<typeof make<DatabaseSchema_>>>(\n \"@confect/server/DatabaseReader\",\n );\n\nexport type DatabaseReader<\n DatabaseSchema_ extends DatabaseSchema.AnyWithProps,\n> = ReturnType<typeof DatabaseReader<DatabaseSchema_>>[\"Identifier\"];\n\nexport const layer = <DatabaseSchema_ extends DatabaseSchema.AnyWithProps>(\n databaseSchema: DatabaseSchema_,\n convexDatabaseReader: GenericDatabaseReader<\n DataModel.ToConvex<DataModel.FromSchema<DatabaseSchema_>>\n >,\n) =>\n Layer.succeed(\n DatabaseReader<DatabaseSchema_>(),\n make(databaseSchema, convexDatabaseReader),\n );\n"],"mappings":";;;;;;;;;;;;AAQA,MAAa,QACX,gBACA,yBAGG;CAGH,MAAM,iBAAiBA,uBACrB,eAAe,OAChB;AAED,QAAO,EACL,QACE,cACG;EACH,MAAM,QAAQ,OAAO,OAAO,eAAe,CAAC,MACzC,QAAQ,IAAI,SAAS,UACvB;EAED,MAAMC,qBAA8C,MAAM,KACxD,OAAO,OAAOC,aAAmB,GAChC,mBAAmB,eAAe,SAAS,UAC7C,GACI;GACC,KAAK,qBAAqB,OAAO;GACjC,OAAO,qBAAqB,OAAO;GACpC,GAGA;GACC,KAAK,qBAAqB;GAC1B,OAAO,qBAAqB;GAC7B;AAIL,SAAOC,OACL,WACA,oBACA,MACD;IAEJ;;AAGH,MAAa,uBAGX,QAAQ,WACN,iCACD;AAMH,MAAa,SACX,gBACA,yBAIA,MAAM,QACJ,gBAAiC,EACjC,KAAK,gBAAgB,qBAAqB,CAC3C"}
@@ -0,0 +1,139 @@
1
+ import { AnyWithProps as AnyWithProps$1, Name, SystemTables, Table, TablesRecord, WithName } from "./Table.js";
2
+ import { Expand, GenericSchema, SchemaDefinition } from "convex/server";
3
+ import * as convex_values60 from "convex/values";
4
+ import * as effect_Schema0 from "effect/Schema";
5
+
6
+ //#region src/DatabaseSchema.d.ts
7
+ declare namespace DatabaseSchema_d_exports {
8
+ export { Any, AnyWithProps, ConvexDatabaseSchemaFromTables, DatabaseSchema, ExtendWithSystemTables, IncludeSystemTables, TableNames, TableWithName, Tables, TypeId, extendWithSystemTables, isSchema, make, systemSchema };
9
+ }
10
+ declare const TypeId = "@confect/server/DatabaseSchema";
11
+ type TypeId = typeof TypeId;
12
+ declare const isSchema: (u: unknown) => u is Any;
13
+ /**
14
+ * A schema definition tracks the schema and its Convex schema definition.
15
+ */
16
+ interface DatabaseSchema<Tables_$1 extends AnyWithProps$1 = never> {
17
+ readonly [TypeId]: TypeId;
18
+ readonly tables: TablesRecord<Tables_$1>;
19
+ readonly convexSchemaDefinition: SchemaDefinition<ConvexDatabaseSchemaFromTables<Tables_$1>, true>;
20
+ /**
21
+ * Add a table definition to the schema.
22
+ */
23
+ addTable<TableDef extends AnyWithProps$1>(table: TableDef): DatabaseSchema<Tables_$1 | TableDef>;
24
+ }
25
+ interface Any {
26
+ readonly [TypeId]: TypeId;
27
+ }
28
+ interface AnyWithProps {
29
+ readonly [TypeId]: TypeId;
30
+ readonly tables: Record<string, AnyWithProps$1>;
31
+ readonly convexSchemaDefinition: SchemaDefinition<GenericSchema, true>;
32
+ addTable<TableDef extends AnyWithProps$1>(table: TableDef): AnyWithProps;
33
+ }
34
+ type Tables<DatabaseSchema_ extends AnyWithProps> = DatabaseSchema_ extends DatabaseSchema<infer Tables_> ? Tables_ : never;
35
+ type TableNames<DatabaseSchema_ extends AnyWithProps> = Name<Tables<DatabaseSchema_>> & string;
36
+ type TableWithName<DatabaseSchema_ extends AnyWithProps, TableName$1 extends TableNames<DatabaseSchema_>> = Extract<Tables<DatabaseSchema_>, {
37
+ readonly name: TableName$1;
38
+ }>;
39
+ /**
40
+ * Create an empty schema definition. Add tables incrementally via `addTable`.
41
+ */
42
+ declare const make: () => DatabaseSchema<never>;
43
+ type ConvexDatabaseSchemaFromTables<Tables_$1 extends AnyWithProps$1> = Expand<{ [TableName in Name<Tables_$1> & string]: WithName<Tables_$1, TableName>["tableDefinition"] }>;
44
+ declare const systemSchema: DatabaseSchema<Table<"_scheduled_functions", effect_Schema0.Struct<{
45
+ name: typeof effect_Schema0.String;
46
+ args: effect_Schema0.Array$<typeof effect_Schema0.Any>;
47
+ scheduledTime: typeof effect_Schema0.Number;
48
+ completedTime: effect_Schema0.optionalWith<typeof effect_Schema0.Number, {
49
+ exact: true;
50
+ }>;
51
+ state: effect_Schema0.Union<[effect_Schema0.Struct<{
52
+ kind: effect_Schema0.Literal<["pending"]>;
53
+ }>, effect_Schema0.Struct<{
54
+ kind: effect_Schema0.Literal<["inProgress"]>;
55
+ }>, effect_Schema0.Struct<{
56
+ kind: effect_Schema0.Literal<["success"]>;
57
+ }>, effect_Schema0.Struct<{
58
+ kind: effect_Schema0.Literal<["failed"]>;
59
+ error: typeof effect_Schema0.String;
60
+ }>, effect_Schema0.Struct<{
61
+ kind: effect_Schema0.Literal<["canceled"]>;
62
+ }>]>;
63
+ }>, convex_values60.VObject<{
64
+ name: string;
65
+ args: any[];
66
+ scheduledTime: number;
67
+ state: {
68
+ kind: "pending";
69
+ } | {
70
+ kind: "inProgress";
71
+ } | {
72
+ kind: "success";
73
+ } | {
74
+ kind: "failed";
75
+ error: string;
76
+ } | {
77
+ kind: "canceled";
78
+ };
79
+ completedTime?: number;
80
+ }, {
81
+ name: convex_values60.VString<string, "required">;
82
+ args: convex_values60.VArray<any[], convex_values60.VAny<any, "required", string>, "required">;
83
+ scheduledTime: convex_values60.VFloat64<number, "required">;
84
+ state: convex_values60.VUnion<{
85
+ kind: "pending";
86
+ } | {
87
+ kind: "inProgress";
88
+ } | {
89
+ kind: "success";
90
+ } | {
91
+ kind: "failed";
92
+ error: string;
93
+ } | {
94
+ kind: "canceled";
95
+ }, [convex_values60.VObject<{
96
+ kind: "pending";
97
+ }, {
98
+ kind: convex_values60.VLiteral<"pending", "required">;
99
+ }, "required", "kind">, convex_values60.VObject<{
100
+ kind: "inProgress";
101
+ }, {
102
+ kind: convex_values60.VLiteral<"inProgress", "required">;
103
+ }, "required", "kind">, convex_values60.VObject<{
104
+ kind: "success";
105
+ }, {
106
+ kind: convex_values60.VLiteral<"success", "required">;
107
+ }, "required", "kind">, convex_values60.VObject<{
108
+ kind: "failed";
109
+ error: string;
110
+ }, {
111
+ kind: convex_values60.VLiteral<"failed", "required">;
112
+ error: convex_values60.VString<string, "required">;
113
+ }, "required", "kind" | "error">, convex_values60.VObject<{
114
+ kind: "canceled";
115
+ }, {
116
+ kind: convex_values60.VLiteral<"canceled", "required">;
117
+ }, "required", "kind">], "required", "kind" | "error">;
118
+ completedTime: convex_values60.VFloat64<number | undefined, "optional">;
119
+ }, "required", "name" | "args" | "scheduledTime" | "completedTime" | "state" | "state.kind" | "state.error">, {}, {}, {}> | Table<"_storage", effect_Schema0.Struct<{
120
+ sha256: typeof effect_Schema0.String;
121
+ size: typeof effect_Schema0.Number;
122
+ contentType: effect_Schema0.optionalWith<typeof effect_Schema0.String, {
123
+ exact: true;
124
+ }>;
125
+ }>, convex_values60.VObject<{
126
+ sha256: string;
127
+ size: number;
128
+ contentType?: string;
129
+ }, {
130
+ sha256: convex_values60.VString<string, "required">;
131
+ size: convex_values60.VFloat64<number, "required">;
132
+ contentType: convex_values60.VString<string | undefined, "optional">;
133
+ }, "required", "sha256" | "size" | "contentType">, {}, {}, {}>>;
134
+ declare const extendWithSystemTables: <Tables_$1 extends AnyWithProps$1>(tables: TablesRecord<Tables_$1>) => ExtendWithSystemTables<Tables_$1>;
135
+ type ExtendWithSystemTables<Tables_$1 extends AnyWithProps$1> = TablesRecord<Tables_$1 | SystemTables>;
136
+ type IncludeSystemTables<Tables_$1 extends AnyWithProps$1> = Tables_$1 | SystemTables extends infer T ? T extends AnyWithProps$1 ? T : never : never;
137
+ //#endregion
138
+ export { Any, AnyWithProps, ConvexDatabaseSchemaFromTables, DatabaseSchema, DatabaseSchema_d_exports, ExtendWithSystemTables, IncludeSystemTables, TableNames, TableWithName, Tables, TypeId, extendWithSystemTables, isSchema, make, systemSchema };
139
+ //# sourceMappingURL=DatabaseSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatabaseSchema.d.ts","names":[],"sources":["../src/DatabaseSchema.ts"],"sourcesContent":[],"mappings":"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"}