@confect/core 1.0.0-next.0 → 1.0.0-next.2
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 +12 -0
- package/dist/FunctionSpec.d.ts.map +1 -1
- package/dist/FunctionSpec.js +2 -2
- package/dist/FunctionSpec.js.map +1 -1
- package/dist/GenericId.d.ts.map +1 -1
- package/dist/GenericId.js +3 -3
- package/dist/GenericId.js.map +1 -1
- package/dist/GroupPath.d.ts.map +1 -1
- package/dist/GroupPath.js +3 -1
- package/dist/GroupSpec.d.ts.map +1 -1
- package/dist/GroupSpec.js +2 -2
- package/dist/GroupSpec.js.map +1 -1
- package/dist/PaginationResult.d.ts.map +1 -1
- package/dist/PaginationResult.js +2 -2
- package/dist/Ref.d.ts +5 -4
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +2 -2
- package/dist/Ref.js.map +1 -1
- package/dist/Refs.d.ts +5 -4
- package/dist/Refs.d.ts.map +1 -1
- package/dist/Refs.js +2 -2
- package/dist/Refs.js.map +1 -1
- package/dist/Spec.d.ts.map +1 -1
- package/dist/Spec.js +2 -2
- package/dist/SystemFields.d.ts.map +1 -1
- package/dist/SystemFields.js +2 -2
- package/dist/Types.d.ts +6 -7
- package/dist/Types.d.ts.map +1 -1
- package/dist/Types.js +3 -1
- package/dist/Types.js.map +1 -1
- package/dist/UserIdentity.d.ts.map +1 -1
- package/dist/UserIdentity.js +2 -2
- package/dist/_virtual/_rolldown/runtime.js +18 -0
- package/dist/internal/utils.d.ts.map +1 -1
- package/package.json +18 -14
- package/src/FunctionSpec.ts +13 -14
- package/src/GroupSpec.ts +5 -2
- package/src/Ref.ts +41 -49
- package/src/Refs.ts +7 -8
- package/src/Types.ts +1 -15
- package/dist/_virtual/rolldown_runtime.js +0 -13
package/CHANGELOG.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionSpec.d.ts","names":[],"sources":["../src/FunctionSpec.ts"],"
|
|
1
|
+
{"version":3,"file":"FunctionSpec.d.ts","names":[],"sources":["../src/FunctionSpec.ts"],"mappings":";;;;;;;cAWa,MAAA;AAAA,KACD,MAAA,UAAgB,MAAA;AAAA,cAEf,cAAA,GAAkB,CAAA,cAAa,CAAA,IAAK,YAAA;AAAA,UAGhC,YAAA,uBACO,YAAA,8BACM,kBAAA,sCAEd,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAA,UAErB,MAAA,GAAS,MAAA;EAAA,SACV,YAAA,EAAc,aAAA;EAAA,SACd,kBAAA,EAAoB,mBAAA;EAAA,SACpB,IAAA,EAAM,KAAA;EAAA,SACN,IAAA,EAAM,KAAA;EAAA,SACN,OAAA,EAAS,QAAA;AAAA;AAAA,UAGH,GAAA;EAAA,UACL,MAAA,GAAS,MAAA;AAAA;AAAA,UAGJ,YAAA,SAAqB,YAAA,CACpC,YAAA,EACA,kBAAA,UAEA,MAAA,CAAO,MAAA,CAAO,YAAA,EACd,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA,UAGC,4BAAA,uBACO,YAAA,UACd,YAAA,CACR,aAAA,EACA,kBAAA,UAEA,MAAA,CAAO,MAAA,CAAO,YAAA,EACd,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA,KAGJ,eAAA,kBAAiC,YAAA,IAC3C,QAAA;AAAA,KAEU,qBAAA,kBAAuC,YAAA,IACjD,QAAA;AAAA,KAEU,IAAA,kBAAsB,YAAA,IAAgB,QAAA;AAAA,KAEtC,IAAA,kBAAsB,YAAA,IAAgB,QAAA;AAAA,KAEtC,OAAA,kBAAyB,YAAA,IAAgB,QAAA;AAAA,KAEzC,QAAA,kBACO,YAAA,0BAEf,OAAA,CAAQ,QAAA;EAAA,SAAqB,IAAA,EAAM,KAAA;AAAA;AAAA,KAE3B,gBAAA,kBACO,YAAA,wBACK,YAAA,IACpB,OAAA,CAAQ,QAAA;EAAA,SAAqB,YAAA,EAAc,aAAA;AAAA;AAAA,KAEnC,WAAA,kBACO,YAAA,gBACH,IAAA,CAAK,QAAA,KACjB,OAAA,CAAQ,QAAA;EAAA,SAAqB,IAAA,EAAM,KAAA;AAAA;AAAA,KAE3B,kBAAA,kBAAoC,YAAA,IAC9C,QAAA,mCACI,eAAA,CACE,qBAAA,CAAsB,QAAA,GACtB,IAAA,CAAK,QAAA,cACL,OAAA,CAAQ,OAAA,CAAQ,QAAA,iBAElB,QAAA,sCACE,kBAAA,CACE,qBAAA,CAAsB,QAAA,GACtB,IAAA,CAAK,QAAA,cACL,OAAA,CAAQ,OAAA,CAAQ,QAAA,iBAElB,QAAA,oCACE,gBAAA,CACE,qBAAA,CAAsB,QAAA,GACtB,IAAA,CAAK,QAAA,cACL,OAAA,CAAQ,OAAA,CAAQ,QAAA;AAAA,cA8Cf,aAAA,6CA5BK,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAY,IAAA;EAAA,IAAA;EAAA;AAAA;;;;;cA4BlC,KAAA,6CA7BK,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAY,IAAA;EAAA,IAAA;EAAA;AAAA;;;;;cA8BlC,gBAAA,6CA/BK,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAY,IAAA;EAAA,IAAA;EAAA;AAAA;;;;;cA+BlC,QAAA,6CAhCK,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAY,IAAA;EAAA,IAAA;EAAA;AAAA;;;;;cAiClC,cAAA,6CAlCK,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAY,IAAA;EAAA,IAAA;EAAA;AAAA;;;;;cAkClC,MAAA,6CAnCK,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAY,IAAA;EAAA,IAAA;EAAA;AAAA"}
|
package/dist/FunctionSpec.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { validateConfectFunctionIdentifier } from "./internal/utils.js";
|
|
3
3
|
import { Predicate } from "effect";
|
|
4
4
|
|
|
5
5
|
//#region src/FunctionSpec.ts
|
|
6
|
-
var FunctionSpec_exports = /* @__PURE__ */
|
|
6
|
+
var FunctionSpec_exports = /* @__PURE__ */ __exportAll({
|
|
7
7
|
TypeId: () => TypeId,
|
|
8
8
|
action: () => action,
|
|
9
9
|
internalAction: () => internalAction,
|
package/dist/FunctionSpec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionSpec.js","names":[],"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\";\n\nexport const TypeId = \"@confect/core/api/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 FunctionType_ extends FunctionType,\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 functionType: FunctionType_;\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
|
|
1
|
+
{"version":3,"file":"FunctionSpec.js","names":[],"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\";\n\nexport const TypeId = \"@confect/core/api/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 FunctionType_ extends FunctionType,\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 functionType: FunctionType_;\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 FunctionType,\n FunctionVisibility,\n string,\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport interface AnyWithPropsWithFunctionType<\n FunctionType_ extends FunctionType,\n> extends FunctionSpec<\n FunctionType_,\n FunctionVisibility,\n string,\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport type GetFunctionType<Function extends AnyWithProps> =\n Function[\"functionType\"];\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 WithFunctionType<\n Function extends AnyWithProps,\n FunctionType_ extends FunctionType,\n> = Extract<Function, { readonly functionType: FunctionType_ }>;\n\nexport type ExcludeName<\n Function extends AnyWithProps,\n Name_ extends Name<Function>,\n> = Exclude<Function, { readonly name: Name_ }>;\n\nexport type RegisteredFunction<Function extends AnyWithProps> =\n Function[\"functionType\"] extends \"query\"\n ? RegisteredQuery<\n GetFunctionVisibility<Function>,\n Args<Function>[\"Encoded\"],\n Promise<Returns<Function>[\"Encoded\"]>\n >\n : Function[\"functionType\"] extends \"mutation\"\n ? RegisteredMutation<\n GetFunctionVisibility<Function>,\n Args<Function>[\"Encoded\"],\n Promise<Returns<Function>[\"Encoded\"]>\n >\n : Function[\"functionType\"] 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 FunctionType_ extends FunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n >(\n functionType: FunctionType_,\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 FunctionType_,\n FunctionVisibility_,\n Name_,\n Args_,\n Returns_\n > => {\n validateConfectFunctionIdentifier(name);\n\n return Object.assign(Object.create(Proto), {\n functionType,\n functionVisibility,\n name,\n args,\n returns,\n });\n };\n\nexport const internalQuery = make(\"query\", \"internal\");\nexport const query = make(\"query\", \"public\");\n\nexport const internalMutation = make(\"mutation\", \"internal\");\nexport const mutation = make(\"mutation\", \"public\");\n\nexport const internalAction = make(\"action\", \"internal\");\nexport const action = make(\"action\", \"public\");\n"],"mappings":";;;;;;;;;;;;;;;AAWA,MAAa,SAAS;AAGtB,MAAa,kBAAkB,MAC7B,UAAU,YAAY,GAAG,OAAO;AAuFlC,MAAM,QAAQ,GACX,SAAS,QACX;AAED,MAAM,QAKF,cACA,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,gBAAgB,KAAK,SAAS,WAAW;AACtD,MAAa,QAAQ,KAAK,SAAS,SAAS;AAE5C,MAAa,mBAAmB,KAAK,YAAY,WAAW;AAC5D,MAAa,WAAW,KAAK,YAAY,SAAS;AAElD,MAAa,iBAAiB,KAAK,UAAU,WAAW;AACxD,MAAa,SAAS,KAAK,UAAU,SAAS"}
|
package/dist/GenericId.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenericId.d.ts","names":[],"sources":["../src/GenericId.ts"],"
|
|
1
|
+
{"version":3,"file":"GenericId.d.ts","names":[],"sources":["../src/GenericId.ts"],"mappings":";;;;;;;cAKa,SAAA,6BACX,SAAA,EAAW,SAAA,KACV,MAAA,CAAO,MAAA,CAAO,WAAA,CAAgB,SAAA;AAAA,KAKrB,SAAA,6BAAsC,WAAA,CAAgB,SAAA;AAAA,cAErD,SAAA,6BACX,GAAA,EAAK,SAAA,CAAU,GAAA,KACd,MAAA,CAAO,MAAA,CAAO,SAAA"}
|
package/dist/GenericId.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { Schema, SchemaAST } from "effect";
|
|
3
3
|
|
|
4
4
|
//#region src/GenericId.ts
|
|
5
|
-
var GenericId_exports = /* @__PURE__ */
|
|
5
|
+
var GenericId_exports = /* @__PURE__ */ __exportAll({
|
|
6
6
|
GenericId: () => GenericId,
|
|
7
7
|
tableName: () => tableName
|
|
8
8
|
});
|
|
9
9
|
const ConvexId = Symbol.for("ConvexId");
|
|
10
|
-
const GenericId = (tableName
|
|
10
|
+
const GenericId = (tableName) => Schema.String.pipe(Schema.annotations({ [ConvexId]: tableName }));
|
|
11
11
|
const tableName = (ast) => SchemaAST.getAnnotation(ConvexId)(ast);
|
|
12
12
|
|
|
13
13
|
//#endregion
|
package/dist/GenericId.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GenericId.js","names":[
|
|
1
|
+
{"version":3,"file":"GenericId.js","names":[],"sources":["../src/GenericId.ts"],"sourcesContent":["import type { GenericId as ConvexGenericId } from \"convex/values\";\nimport { type Option, Schema, SchemaAST } from \"effect\";\n\nconst ConvexId = Symbol.for(\"ConvexId\");\n\nexport const GenericId = <TableName extends string>(\n tableName: TableName,\n): Schema.Schema<ConvexGenericId<TableName>> =>\n Schema.String.pipe(\n Schema.annotations({ [ConvexId]: tableName }),\n ) as unknown as Schema.Schema<ConvexGenericId<TableName>>;\n\nexport type GenericId<TableName extends string> = ConvexGenericId<TableName>;\n\nexport const tableName = <TableName extends string>(\n ast: SchemaAST.AST,\n): Option.Option<TableName> =>\n SchemaAST.getAnnotation<TableName>(ConvexId)(ast);\n"],"mappings":";;;;;;;;AAGA,MAAM,WAAW,OAAO,IAAI,WAAW;AAEvC,MAAa,aACX,cAEA,OAAO,OAAO,KACZ,OAAO,YAAY,GAAG,WAAW,WAAW,CAAC,CAC9C;AAIH,MAAa,aACX,QAEA,UAAU,cAAyB,SAAS,CAAC,IAAI"}
|
package/dist/GroupPath.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupPath.d.ts","names":[],"sources":["../src/GroupPath.ts"],"
|
|
1
|
+
{"version":3,"file":"GroupPath.d.ts","names":[],"sources":["../src/GroupPath.ts"],"mappings":";;;;;;;;;;;;;KASY,GAAA,eACI,YAAA,4BAEZ,KAAA,iCAEA,KAAA,gBACG,MAAA,CAAiB,KAAA,qBAChB,IAAA,CAAe,KAAA,IACf,IAAA,CAAe,KAAA,IAAS,SAAA,CAAU,KAAA,EAAO,MAAA,CAAiB,KAAA,GAAQ,KAAA;AAAA,KAGrE,SAAA,gBACY,YAAA,kBACC,YAAA,4BAEd,OAAA,SAAgB,YAAA,MACb,IAAA,CAAe,MAAA,KAAW,GAAA,CAAI,OAAA,MAAa,KAAA;AAhBlD;;;;;;;;;AAAA,KA4BY,OAAA,+BAGR,KAAA,SAAc,YAAA,GACd,IAAA,yCACE,KAAA;EAAA,SAAyB,IAAA,EAAM,IAAA;AAAA,IAC7B,KAAA;EAAA,SACW,MAAA,EAAQ,MAAA,CAAO,cAAA;AAAA,IAExB,OAAA,CAAQ,QAAA,EAAU,IAAA,oBAGtB,QAAA,CAAmB,KAAA,EAAO,IAAA;AAAA,KAGpB,WAAA,eACI,YAAA,8BAGd,MAAA,CAAiB,OAAA,CAAQ,KAAA,EAAO,SAAA,6BAC5B,SAAA,SAAkB,YAAA,MACb,SAAA,IAAa,IAAA,CAAe,SAAA"}
|
package/dist/GroupPath.js
CHANGED
package/dist/GroupSpec.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupSpec.d.ts","names":[],"sources":["../src/GroupSpec.ts"],"
|
|
1
|
+
{"version":3,"file":"GroupSpec.d.ts","names":[],"sources":["../src/GroupSpec.ts"],"mappings":";;;;;;cAIa,MAAA;AAAA,KACD,MAAA,UAAgB,MAAA;AAAA,cAEf,WAAA,GAAe,CAAA,cAAa,CAAA,IAAK,GAAA;AAAA,UAG7B,SAAA,0CAEI,cAAA,0BACH,YAAA;EAAA,UAEN,MAAA,GAAS,MAAA;EAAA,SACV,IAAA,EAAM,KAAA;EAAA,SACN,SAAA,qBACU,MAAA,CAAkB,UAAA,IAAc,UAAA,CAC/C,UAAA,EACA,YAAA;EAAA,SAGK,MAAA,kBACO,IAAA,CAAK,OAAA,IAAW,QAAA,CAAS,OAAA,EAAS,SAAA;EAGlD,WAAA,kBAA6B,cAAA,EAC3B,SAAA,EAAW,QAAA,GACV,SAAA,CAAU,KAAA,EAAO,UAAA,GAAa,QAAA,EAAU,OAAA;EAE3C,QAAA,eAAuB,YAAA,EACrB,KAAA,EAAO,KAAA,GACN,SAAA,CAAU,KAAA,EAAO,UAAA,EAAY,OAAA,GAAU,KAAA;AAAA;AAAA,UAG3B,GAAA;EAAA,UACL,MAAA,GAAS,MAAA;AAAA;AAAA,UAGJ,YAAA,SAAqB,SAAA,SAEpC,cAAA,EACA,YAAA;AAAA,KAGU,IAAA,eAAmB,YAAA,IAAgB,KAAA;AAAA,KAEnC,SAAA,eAAwB,YAAA,IAClC,KAAA,oBAAyB,KAAA;AAAA,KAEf,MAAA,eAAqB,YAAA,IAC/B,KAAA,iBAAsB,KAAA;AAAA,KAEZ,UAAA,eAAyB,YAAA,KAAiB,MAAA,CAAO,KAAA,6BAIzD,IAAA,CAAK,MAAA,CAAO,KAAA;AAAA,KAEJ,QAAA,eACI,YAAA,gBACA,IAAA,CAAK,KAAA,KACjB,OAAA,CAAQ,KAAA;EAAA,SAAkB,IAAA,EAAM,KAAA;AAAA;AAAA,cAiDvB,IAAA,+BACX,IAAA,EAAM,KAAA,KACL,SAAA,CAAU,KAAA"}
|
package/dist/GroupSpec.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { validateConfectFunctionIdentifier } from "./internal/utils.js";
|
|
3
3
|
import { Predicate, Record } from "effect";
|
|
4
4
|
|
|
5
5
|
//#region src/GroupSpec.ts
|
|
6
|
-
var GroupSpec_exports = /* @__PURE__ */
|
|
6
|
+
var GroupSpec_exports = /* @__PURE__ */ __exportAll({
|
|
7
7
|
TypeId: () => TypeId,
|
|
8
8
|
isGroupSpec: () => isGroupSpec,
|
|
9
9
|
make: () => make
|
package/dist/GroupSpec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupSpec.js","names":[],"sources":["../src/GroupSpec.ts"],"sourcesContent":["import { Predicate, Record } from \"effect\";\nimport type * as FunctionSpec from \"./FunctionSpec\";\nimport { validateConfectFunctionIdentifier } from \"./internal/utils\";\n\nexport const TypeId = \"@confect/core/api/GroupSpec\";\nexport type TypeId = typeof TypeId;\n\nexport const isGroupSpec = (u: unknown): u is Any =>\n Predicate.hasProperty(u, TypeId);\n\nexport interface GroupSpec<\n Name_ extends string,\n Functions_ extends FunctionSpec.AnyWithProps = never,\n Groups_ extends AnyWithProps = never,\n> {\n readonly [TypeId]: TypeId;\n readonly name: Name_;\n readonly functions: {\n [FunctionName in FunctionSpec.Name<Functions_>]: FunctionSpec.WithName<\n Functions_,\n FunctionName\n >;\n };\n readonly groups: {\n [GroupName in Name<Groups_>]: WithName<Groups_, GroupName>;\n };\n\n addFunction<Function extends FunctionSpec.AnyWithProps>(\n function_: Function,\n ): GroupSpec<Name_, Functions_ | Function, Groups_>;\n\n addGroup<Group extends AnyWithProps>(\n group: Group,\n ): GroupSpec<Name_, Functions_, Groups_ | Group>;\n}\n\nexport interface Any {\n readonly [TypeId]: TypeId;\n}\n\nexport interface AnyWithProps
|
|
1
|
+
{"version":3,"file":"GroupSpec.js","names":[],"sources":["../src/GroupSpec.ts"],"sourcesContent":["import { Predicate, Record } from \"effect\";\nimport type * as FunctionSpec from \"./FunctionSpec\";\nimport { validateConfectFunctionIdentifier } from \"./internal/utils\";\n\nexport const TypeId = \"@confect/core/api/GroupSpec\";\nexport type TypeId = typeof TypeId;\n\nexport const isGroupSpec = (u: unknown): u is Any =>\n Predicate.hasProperty(u, TypeId);\n\nexport interface GroupSpec<\n Name_ extends string,\n Functions_ extends FunctionSpec.AnyWithProps = never,\n Groups_ extends AnyWithProps = never,\n> {\n readonly [TypeId]: TypeId;\n readonly name: Name_;\n readonly functions: {\n [FunctionName in FunctionSpec.Name<Functions_>]: FunctionSpec.WithName<\n Functions_,\n FunctionName\n >;\n };\n readonly groups: {\n [GroupName in Name<Groups_>]: WithName<Groups_, GroupName>;\n };\n\n addFunction<Function extends FunctionSpec.AnyWithProps>(\n function_: Function,\n ): GroupSpec<Name_, Functions_ | Function, Groups_>;\n\n addGroup<Group extends AnyWithProps>(\n group: Group,\n ): GroupSpec<Name_, Functions_, Groups_ | Group>;\n}\n\nexport interface Any {\n readonly [TypeId]: TypeId;\n}\n\nexport interface AnyWithProps extends GroupSpec<\n string,\n FunctionSpec.AnyWithProps,\n AnyWithProps\n> {}\n\nexport type Name<Group extends AnyWithProps> = Group[\"name\"];\n\nexport type Functions<Group extends AnyWithProps> =\n Group[\"functions\"][keyof Group[\"functions\"]];\n\nexport type Groups<Group extends AnyWithProps> =\n Group[\"groups\"][keyof Group[\"groups\"]];\n\nexport type GroupNames<Group extends AnyWithProps> = [Groups<Group>] extends [\n never,\n]\n ? never\n : Name<Groups<Group>>;\n\nexport type WithName<\n Group extends AnyWithProps,\n Name_ extends Name<Group>,\n> = Extract<Group, { readonly name: Name_ }>;\n\nconst Proto = {\n [TypeId]: TypeId,\n\n addFunction<Function extends FunctionSpec.AnyWithProps>(\n this: Any,\n function_: Function,\n ) {\n const this_ = this as AnyWithProps;\n\n return makeProto({\n name: this_.name,\n functions: Record.set(this_.functions, function_.name, function_),\n groups: this_.groups,\n });\n },\n\n addGroup<Group extends Any>(this: Any, group: Group) {\n const this_ = this as AnyWithProps;\n const group_ = group as unknown as AnyWithProps;\n\n return makeProto({\n name: this_.name,\n functions: this_.functions,\n groups: Record.set(this_.groups, group_.name, group_),\n });\n },\n};\n\nconst makeProto = <\n Name_ extends string,\n Functions_ extends FunctionSpec.AnyWithProps,\n Groups_ extends AnyWithProps,\n>({\n name,\n functions,\n groups,\n}: {\n name: Name_;\n functions: Record.ReadonlyRecord<string, Functions_>;\n groups: Record.ReadonlyRecord<string, Groups_>;\n}): GroupSpec<Name_, Functions_, Groups_> =>\n Object.assign(Object.create(Proto), {\n name,\n functions,\n groups,\n });\n\nexport const make = <const Name_ extends string>(\n name: Name_,\n): GroupSpec<Name_> => {\n validateConfectFunctionIdentifier(name);\n\n return makeProto({\n name,\n functions: Record.empty(),\n groups: Record.empty(),\n });\n};\n"],"mappings":";;;;;;;;;;AAIA,MAAa,SAAS;AAGtB,MAAa,eAAe,MAC1B,UAAU,YAAY,GAAG,OAAO;AAyDlC,MAAM,QAAQ;EACX,SAAS;CAEV,YAEE,WACA;EACA,MAAM,QAAQ;AAEd,SAAO,UAAU;GACf,MAAM,MAAM;GACZ,WAAW,OAAO,IAAI,MAAM,WAAW,UAAU,MAAM,UAAU;GACjE,QAAQ,MAAM;GACf,CAAC;;CAGJ,SAAuC,OAAc;EACnD,MAAM,QAAQ;EACd,MAAM,SAAS;AAEf,SAAO,UAAU;GACf,MAAM,MAAM;GACZ,WAAW,MAAM;GACjB,QAAQ,OAAO,IAAI,MAAM,QAAQ,OAAO,MAAM,OAAO;GACtD,CAAC;;CAEL;AAED,MAAM,aAIJ,EACA,MACA,WACA,aAMA,OAAO,OAAO,OAAO,OAAO,MAAM,EAAE;CAClC;CACA;CACA;CACD,CAAC;AAEJ,MAAa,QACX,SACqB;AACrB,mCAAkC,KAAK;AAEvC,QAAO,UAAU;EACf;EACA,WAAW,OAAO,OAAO;EACzB,QAAQ,OAAO,OAAO;EACvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PaginationResult.d.ts","names":[],"sources":["../src/PaginationResult.ts"],"
|
|
1
|
+
{"version":3,"file":"PaginationResult.d.ts","names":[],"sources":["../src/PaginationResult.ts"],"mappings":";;;;;;cAEa,gBAAA,eAAgC,MAAA,CAAO,MAAA,CAAO,YAAA,EACzD,GAAA,EAAK,GAAA,KAAG,MAAA,CAAA,MAAA"}
|
package/dist/PaginationResult.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { Schema } from "effect";
|
|
3
3
|
|
|
4
4
|
//#region src/PaginationResult.ts
|
|
5
|
-
var PaginationResult_exports = /* @__PURE__ */
|
|
5
|
+
var PaginationResult_exports = /* @__PURE__ */ __exportAll({ PaginationResult: () => PaginationResult });
|
|
6
6
|
const PaginationResult = (Doc) => Schema.Struct({
|
|
7
7
|
page: Schema.mutable(Schema.Array(Doc)),
|
|
8
8
|
isDone: Schema.Boolean,
|
package/dist/Ref.d.ts
CHANGED
|
@@ -26,15 +26,16 @@ type GetFunctionVisibility<Ref_> = Ref_ extends Ref<infer _FunctionType, infer F
|
|
|
26
26
|
type Args<Ref_> = Ref_ extends Ref<infer _FunctionType, infer _FunctionVisibility, infer Args_, infer _Returns> ? Args_ : never;
|
|
27
27
|
type Returns<Ref_> = Ref_ extends Ref<infer _FunctionType, infer _FunctionVisibility, infer _Args, infer Returns_> ? Returns_ : never;
|
|
28
28
|
type FromFunctionSpec<F extends AnyWithProps> = Ref<GetFunctionType$1<F>, GetFunctionVisibility$1<F>, Args$1<F>, Returns$1<F>>;
|
|
29
|
-
declare const make: <FunctionType_
|
|
29
|
+
declare const make: <FunctionType_ extends FunctionType, FunctionVisibility_ extends FunctionVisibility, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>(
|
|
30
30
|
/**
|
|
31
31
|
* This is a Convex "function name" of the format "myGroupDir/myGroupMod:myFunc".
|
|
32
32
|
*/
|
|
33
|
-
|
|
33
|
+
|
|
34
|
+
convexFunctionName: string, function_: FunctionSpec<FunctionType_, FunctionVisibility_, string, Args_, Returns_>) => Ref<FunctionType_, FunctionVisibility_, Args_, Returns_>;
|
|
34
35
|
type HiddenFunction<Ref_ extends Any> = FunctionSpec<GetFunctionType<Ref_>, GetFunctionVisibility<Ref_>, string, Args<Ref_>, Returns<Ref_>>;
|
|
35
|
-
declare const getFunction: <FunctionType_
|
|
36
|
+
declare const getFunction: <FunctionType_ extends FunctionType, FunctionVisibility_ extends FunctionVisibility, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext, Ref_ extends Ref<FunctionType_, FunctionVisibility_, Args_, Returns_>>(ref: Ref_) => HiddenFunction<Ref_>;
|
|
36
37
|
type HiddenConvexFunctionName = string;
|
|
37
|
-
declare const getConvexFunctionName: <FunctionType_
|
|
38
|
+
declare const getConvexFunctionName: <FunctionType_ extends FunctionType, FunctionVisibility_ extends FunctionVisibility, Args_ extends Schema.Schema.AnyNoContext, Returns_ extends Schema.Schema.AnyNoContext>(ref: Ref<FunctionType_, FunctionVisibility_, Args_, Returns_>) => HiddenConvexFunctionName;
|
|
38
39
|
//#endregion
|
|
39
40
|
export { Any, AnyAction, AnyInternal, AnyMutation, AnyPublic, AnyPublicAction, AnyPublicMutation, AnyPublicQuery, AnyQuery, Args, FromFunctionSpec, GetFunctionType, GetFunctionVisibility, Ref, Ref_d_exports, Returns, getConvexFunctionName, getFunction, make };
|
|
40
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"],"
|
|
1
|
+
{"version":3,"file":"Ref.d.ts","names":[],"sources":["../src/Ref.ts"],"mappings":";;;;;;;;UAIiB,GAAA,uBACO,YAAA,8BACM,kBAAA,gBACd,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA;EAAA,SAEtB,aAAA,GAAgB,aAAA;EAAA,SAChB,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,UAEhC,kBAAA,EACA,MAAA,CAAO,MAAA,CAAO,YAAA,EACd,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA,UAGC,WAAA,SAAoB,GAAA,aAEnC,kBAAA,EACA,MAAA,CAAO,MAAA,CAAO,YAAA,EACd,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA,UAGC,SAAA,SAAkB,GAAA,WAEjC,kBAAA,EACA,MAAA,CAAO,MAAA,CAAO,YAAA,EACd,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA,UAGC,cAAA,SAAuB,GAAA,oBAGtC,MAAA,CAAO,MAAA,CAAO,YAAA,EACd,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA,UAGC,iBAAA,SAA0B,GAAA,uBAGzC,MAAA,CAAO,MAAA,CAAO,YAAA,EACd,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA,UAGC,eAAA,SAAwB,GAAA,qBAGvC,MAAA,CAAO,MAAA,CAAO,YAAA,EACd,MAAA,CAAO,MAAA,CAAO,YAAA;AAAA,KAGJ,eAAA,SACV,IAAA,SAAa,GAAA,gFAMT,aAAA;AAAA,KAGM,qBAAA,SACV,IAAA,SAAa,GAAA,gFAMT,mBAAA;AAAA,KAGM,IAAA,SACV,IAAA,SAAa,GAAA,gFAMT,KAAA;AAAA,KAGM,OAAA,SACV,IAAA,SAAa,GAAA,gFAMT,QAAA;AAAA,KAGM,gBAAA,WAA2B,YAAA,IAA6B,GAAA,CAClE,iBAAA,CAA6B,CAAA,GAC7B,uBAAA,CAAmC,CAAA,GACnC,MAAA,CAAkB,CAAA,GAClB,SAAA,CAAqB,CAAA;AAAA,cAGV,IAAA,yBACW,YAAA,8BACM,kBAAA,gBACd,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA;;;;;AAK/B,kBAAA,UACA,SAAA,EAAW,YAAA,CACT,aAAA,EACA,mBAAA,UAEA,KAAA,EACA,QAAA,MAED,GAAA,CAAI,aAAA,EAAe,mBAAA,EAAqB,KAAA,EAAO,QAAA;AAAA,KAQ7C,cAAA,cAA4B,GAAA,IAAO,YAAA,CACtC,eAAA,CAAgB,IAAA,GAChB,qBAAA,CAAsB,IAAA,WAEtB,IAAA,CAAK,IAAA,GACL,OAAA,CAAQ,IAAA;AAAA,cAGG,WAAA,yBACW,YAAA,8BACM,kBAAA,gBACd,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA,eAClB,GAAA,CAAI,aAAA,EAAe,mBAAA,EAAqB,KAAA,EAAO,QAAA,GAE5D,GAAA,EAAK,IAAA,KACJ,cAAA,CAAe,IAAA;AAAA,KAKb,wBAAA;AAAA,cAEQ,qBAAA,yBACW,YAAA,8BACM,kBAAA,gBACd,MAAA,CAAO,MAAA,CAAO,YAAA,mBACX,MAAA,CAAO,MAAA,CAAO,YAAA,EAE/B,GAAA,EAAK,GAAA,CAAI,aAAA,EAAe,mBAAA,EAAqB,KAAA,EAAO,QAAA,MACnD,wBAAA"}
|
package/dist/Ref.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
|
|
3
3
|
//#region src/Ref.ts
|
|
4
|
-
var Ref_exports = /* @__PURE__ */
|
|
4
|
+
var Ref_exports = /* @__PURE__ */ __exportAll({
|
|
5
5
|
getConvexFunctionName: () => getConvexFunctionName,
|
|
6
6
|
getFunction: () => getFunction,
|
|
7
7
|
make: () => make
|
package/dist/Ref.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ref.js","names":[],"sources":["../src/Ref.ts"],"sourcesContent":["import type { FunctionType, FunctionVisibility } from \"convex/server\";\nimport type { Schema } from \"effect\";\nimport type * as FunctionSpec from \"./FunctionSpec\";\n\nexport interface Ref<\n _FunctionType extends FunctionType,\n _FunctionVisibility extends FunctionVisibility,\n _Args extends Schema.Schema.AnyNoContext,\n _Returns extends Schema.Schema.AnyNoContext,\n> {\n readonly _FunctionType?: _FunctionType;\n readonly _FunctionVisibility?: _FunctionVisibility;\n readonly _Args?: _Args;\n readonly _Returns?: _Returns;\n}\n\nexport interface Any extends Ref<any, any, any, any> {}\n\nexport interface AnyInternal extends Ref<any, \"internal\", any, any> {}\n\nexport interface AnyPublic extends Ref<any, \"public\", any, any> {}\n\nexport interface AnyQuery
|
|
1
|
+
{"version":3,"file":"Ref.js","names":[],"sources":["../src/Ref.ts"],"sourcesContent":["import type { FunctionType, FunctionVisibility } from \"convex/server\";\nimport type { Schema } from \"effect\";\nimport type * as FunctionSpec from \"./FunctionSpec\";\n\nexport interface Ref<\n _FunctionType extends FunctionType,\n _FunctionVisibility extends FunctionVisibility,\n _Args extends Schema.Schema.AnyNoContext,\n _Returns extends Schema.Schema.AnyNoContext,\n> {\n readonly _FunctionType?: _FunctionType;\n readonly _FunctionVisibility?: _FunctionVisibility;\n readonly _Args?: _Args;\n readonly _Returns?: _Returns;\n}\n\nexport interface Any extends Ref<any, any, any, any> {}\n\nexport interface AnyInternal extends Ref<any, \"internal\", any, any> {}\n\nexport interface AnyPublic extends Ref<any, \"public\", any, any> {}\n\nexport interface AnyQuery extends Ref<\n \"query\",\n FunctionVisibility,\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport interface AnyMutation extends Ref<\n \"mutation\",\n FunctionVisibility,\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport interface AnyAction extends Ref<\n \"action\",\n FunctionVisibility,\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport interface AnyPublicQuery extends Ref<\n \"query\",\n \"public\",\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport interface AnyPublicMutation extends Ref<\n \"mutation\",\n \"public\",\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport interface AnyPublicAction extends Ref<\n \"action\",\n \"public\",\n Schema.Schema.AnyNoContext,\n Schema.Schema.AnyNoContext\n> {}\n\nexport type GetFunctionType<Ref_> =\n Ref_ extends Ref<\n infer FunctionType_,\n infer _FunctionVisibility,\n infer _Args,\n infer _Returns\n >\n ? FunctionType_\n : never;\n\nexport type GetFunctionVisibility<Ref_> =\n Ref_ extends Ref<\n infer _FunctionType,\n infer FunctionVisibility_,\n infer _Args,\n infer _Returns\n >\n ? FunctionVisibility_\n : never;\n\nexport type Args<Ref_> =\n Ref_ extends Ref<\n infer _FunctionType,\n infer _FunctionVisibility,\n infer Args_,\n infer _Returns\n >\n ? Args_\n : never;\n\nexport type Returns<Ref_> =\n Ref_ extends Ref<\n infer _FunctionType,\n infer _FunctionVisibility,\n infer _Args,\n infer Returns_\n >\n ? Returns_\n : never;\n\nexport type FromFunctionSpec<F extends FunctionSpec.AnyWithProps> = Ref<\n FunctionSpec.GetFunctionType<F>,\n FunctionSpec.GetFunctionVisibility<F>,\n FunctionSpec.Args<F>,\n FunctionSpec.Returns<F>\n>;\n\nexport const make = <\n FunctionType_ extends FunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n Args_ extends Schema.Schema.AnyNoContext,\n Returns_ extends Schema.Schema.AnyNoContext,\n>(\n /**\n * This is a Convex \"function name\" of the format \"myGroupDir/myGroupMod:myFunc\".\n */\n convexFunctionName: string,\n function_: FunctionSpec.FunctionSpec<\n FunctionType_,\n FunctionVisibility_,\n string,\n Args_,\n Returns_\n >,\n): Ref<FunctionType_, FunctionVisibility_, Args_, Returns_> =>\n ({\n [HiddenFunctionKey]: function_,\n [HiddenConvexFunctionNameKey]: convexFunctionName,\n }) as Ref<FunctionType_, FunctionVisibility_, Args_, Returns_>;\n\nconst HiddenFunctionKey = \"@confect/core/api/HiddenFunctionKey\";\ntype HiddenFunctionKey = typeof HiddenFunctionKey;\ntype HiddenFunction<Ref_ extends Any> = FunctionSpec.FunctionSpec<\n GetFunctionType<Ref_>,\n GetFunctionVisibility<Ref_>,\n string,\n Args<Ref_>,\n Returns<Ref_>\n>;\n\nexport const getFunction = <\n FunctionType_ extends FunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n Args_ extends Schema.Schema.AnyNoContext,\n Returns_ extends Schema.Schema.AnyNoContext,\n Ref_ extends Ref<FunctionType_, FunctionVisibility_, Args_, Returns_>,\n>(\n ref: Ref_,\n): HiddenFunction<Ref_> => (ref as any)[HiddenFunctionKey];\n\nconst HiddenConvexFunctionNameKey =\n \"@confect/core/api/HiddenConvexFunctionNameKey\";\ntype HiddenConvexFunctionNameKey = typeof HiddenConvexFunctionNameKey;\ntype HiddenConvexFunctionName = string;\n\nexport const getConvexFunctionName = <\n FunctionType_ extends FunctionType,\n FunctionVisibility_ extends FunctionVisibility,\n Args_ extends Schema.Schema.AnyNoContext,\n Returns_ extends Schema.Schema.AnyNoContext,\n>(\n ref: Ref<FunctionType_, FunctionVisibility_, Args_, Returns_>,\n): HiddenConvexFunctionName => (ref as any)[HiddenConvexFunctionNameKey];\n"],"mappings":";;;;;;;;AA+GA,MAAa,QASX,oBACA,eAQC;EACE,oBAAoB;EACpB,8BAA8B;CAChC;AAEH,MAAM,oBAAoB;AAU1B,MAAa,eAOX,QAC0B,IAAY;AAExC,MAAM,8BACJ;AAIF,MAAa,yBAMX,QAC8B,IAAY"}
|
package/dist/Refs.d.ts
CHANGED
|
@@ -8,10 +8,11 @@ import { Types } from "effect";
|
|
|
8
8
|
declare namespace Refs_d_exports {
|
|
9
9
|
export { Refs, make };
|
|
10
10
|
}
|
|
11
|
-
type Refs<Spec_ extends AnyWithProps$2, Predicate
|
|
12
|
-
type GroupRefs<Group
|
|
13
|
-
type
|
|
14
|
-
type
|
|
11
|
+
type Refs<Spec_ extends AnyWithProps$2, Predicate extends Any = Any> = Types.Simplify<OmitEmpty<Helper<Groups$1<Spec_>, Predicate>>>;
|
|
12
|
+
type GroupRefs<Group extends AnyWithProps$1, Predicate extends Any> = Types.Simplify<OmitEmpty<Helper<Groups<Group>, Predicate>> & FilteredFunctions<Functions<Group>, Predicate>>;
|
|
13
|
+
type OmitEmpty<T> = { [K in keyof T as keyof T[K] extends never ? never : K]: T[K] };
|
|
14
|
+
type FilteredFunctions<Functions extends AnyWithProps, Predicate extends Any> = { [Name in Name$1<Functions> as WithName<Functions, Name> extends infer F extends AnyWithProps ? FromFunctionSpec<F> extends Predicate ? Name : never : never]: WithName<Functions, Name> extends infer F extends AnyWithProps ? FromFunctionSpec<F> : never };
|
|
15
|
+
type Helper<Groups extends AnyWithProps$1, Predicate extends Any> = { [GroupName in Name$2<Groups>]: WithName$1<Groups, GroupName> extends infer Group extends AnyWithProps$1 ? GroupRefs<Group, Predicate> : never };
|
|
15
16
|
declare const make: <Spec_ extends AnyWithProps$2>(spec: Spec_) => {
|
|
16
17
|
all: Refs<Spec_>;
|
|
17
18
|
public: Refs<Spec_, AnyPublic>;
|
package/dist/Refs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Refs.d.ts","names":[],"sources":["../src/Refs.ts"],"
|
|
1
|
+
{"version":3,"file":"Refs.d.ts","names":[],"sources":["../src/Refs.ts"],"mappings":";;;;;;;;;;KAOY,IAAA,eACI,cAAA,oBACI,GAAA,GAAU,GAAA,IAC1B,KAAA,CAAM,QAAA,CAAS,SAAA,CAAU,MAAA,CAAO,QAAA,CAAY,KAAA,GAAQ,SAAA;AAAA,KAEnD,SAAA,eACW,cAAA,oBACI,GAAA,IAChB,KAAA,CAAM,QAAA,CACR,SAAA,CAAU,MAAA,CAAO,MAAA,CAAiB,KAAA,GAAQ,SAAA,KACxC,iBAAA,CAAkB,SAAA,CAAoB,KAAA,GAAQ,SAAA;AAAA,KAG7C,SAAA,oBACS,CAAA,UAAW,CAAA,CAAE,CAAA,0BAA2B,CAAA,GAAI,CAAA,CAAE,CAAA;AAAA,KAGvD,iBAAA,mBACe,YAAA,oBACA,GAAA,eAET,MAAA,CAAkB,SAAA,KAAc,QAAA,CACvC,SAAA,EACA,IAAA,0BACwB,YAAA,GACtB,gBAAA,CAAqB,CAAA,UAAW,SAAA,GAC9B,IAAA,mBAEM,QAAA,CAAsB,SAAA,EAAW,IAAA,0BAC3C,YAAA,GACE,gBAAA,CAAqB,CAAA;AAAA,KAItB,MAAA,gBACY,cAAA,oBACG,GAAA,oBAEJ,MAAA,CAAe,MAAA,IAAU,UAAA,CACrC,MAAA,EACA,SAAA,8BAC4B,cAAA,GAC1B,SAAA,CAAU,KAAA,EAAO,SAAA;AAAA,cAUV,IAAA,iBAAsB,cAAA,EACjC,IAAA,EAAM,KAAA;EAEN,GAAA,EAAK,IAAA,CAAK,KAAA;EACV,MAAA,EAAQ,IAAA,CAAK,KAAA,EAAO,SAAA;EACpB,QAAA,EAAU,IAAA,CAAK,KAAA,EAAO,WAAA;AAAA"}
|
package/dist/Refs.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { getConvexFunctionName, make as make$1 } from "./Ref.js";
|
|
3
3
|
import { Record, pipe } from "effect";
|
|
4
4
|
|
|
5
5
|
//#region src/Refs.ts
|
|
6
|
-
var Refs_exports = /* @__PURE__ */
|
|
6
|
+
var Refs_exports = /* @__PURE__ */ __exportAll({ make: () => make });
|
|
7
7
|
const make = (spec) => {
|
|
8
8
|
const refs = makeHelper(spec.groups);
|
|
9
9
|
return {
|
package/dist/Refs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Refs.js","names":["Ref.make","Ref.getConvexFunctionName"],"sources":["../src/Refs.ts"],"sourcesContent":["import type { Types } from \"effect\";\nimport { pipe, Record } from \"effect\";\nimport type * as FunctionSpec from \"./FunctionSpec\";\nimport type * as GroupSpec from \"./GroupSpec\";\nimport * as Ref from \"./Ref\";\nimport type * as Spec from \"./Spec\";\n\nexport type Refs<\n Spec_ extends Spec.AnyWithProps,\n Predicate extends Ref.Any = Ref.Any,\n> = Types.Simplify<Helper<Spec.Groups<Spec_>, Predicate
|
|
1
|
+
{"version":3,"file":"Refs.js","names":["Ref.make","Ref.getConvexFunctionName"],"sources":["../src/Refs.ts"],"sourcesContent":["import type { Types } from \"effect\";\nimport { pipe, Record } from \"effect\";\nimport type * as FunctionSpec from \"./FunctionSpec\";\nimport type * as GroupSpec from \"./GroupSpec\";\nimport * as Ref from \"./Ref\";\nimport type * as Spec from \"./Spec\";\n\nexport type Refs<\n Spec_ extends Spec.AnyWithProps,\n Predicate extends Ref.Any = Ref.Any,\n> = Types.Simplify<OmitEmpty<Helper<Spec.Groups<Spec_>, Predicate>>>;\n\ntype GroupRefs<\n Group extends GroupSpec.AnyWithProps,\n Predicate extends Ref.Any,\n> = Types.Simplify<\n OmitEmpty<Helper<GroupSpec.Groups<Group>, Predicate>> &\n FilteredFunctions<GroupSpec.Functions<Group>, Predicate>\n>;\n\ntype OmitEmpty<T> = {\n [K in keyof T as keyof T[K] extends never ? never : K]: T[K];\n};\n\ntype FilteredFunctions<\n Functions extends FunctionSpec.AnyWithProps,\n Predicate extends Ref.Any,\n> = {\n [Name in FunctionSpec.Name<Functions> as FunctionSpec.WithName<\n Functions,\n Name\n > extends infer F extends FunctionSpec.AnyWithProps\n ? Ref.FromFunctionSpec<F> extends Predicate\n ? Name\n : never\n : never]: FunctionSpec.WithName<Functions, Name> extends infer F extends\n FunctionSpec.AnyWithProps\n ? Ref.FromFunctionSpec<F>\n : never;\n};\n\ntype Helper<\n Groups extends GroupSpec.AnyWithProps,\n Predicate extends Ref.Any,\n> = {\n [GroupName in GroupSpec.Name<Groups>]: GroupSpec.WithName<\n Groups,\n GroupName\n > extends infer Group extends GroupSpec.AnyWithProps\n ? GroupRefs<Group, Predicate>\n : never;\n};\n\ntype Any =\n | {\n readonly [key: string]: Any;\n }\n | Ref.Any;\n\nexport const make = <Spec_ extends Spec.AnyWithProps>(\n spec: Spec_,\n): {\n all: Refs<Spec_>;\n public: Refs<Spec_, Ref.AnyPublic>;\n internal: Refs<Spec_, Ref.AnyInternal>;\n} => {\n const refs = makeHelper(spec.groups);\n return {\n all: refs as Refs<Spec_>,\n public: refs as Refs<Spec_, Ref.AnyPublic>,\n internal: refs as Refs<Spec_, Ref.AnyInternal>,\n };\n};\n\nconst makeHelper = (\n groups: Record.ReadonlyRecord<string, GroupSpec.Any>,\n groupPath: string | null = null,\n): Any =>\n pipe(\n groups as Record.ReadonlyRecord<string, GroupSpec.AnyWithProps>,\n Record.map((group) => {\n const currentGroupPath = groupPath\n ? `${groupPath}/${group.name}`\n : group.name;\n\n return Record.union(\n makeHelper(group.groups, currentGroupPath),\n Record.map(group.functions, (function_) =>\n Ref.make(`${currentGroupPath}:${function_.name}`, function_),\n ),\n (_subGroup, _function) => {\n throw new Error(\n `Group and function at same level have same name ('${Ref.getConvexFunctionName(_function)}')`,\n );\n },\n );\n }),\n );\n"],"mappings":";;;;;;AA2DA,MAAa,QACX,SAKG;CACH,MAAM,OAAO,WAAW,KAAK,OAAO;AACpC,QAAO;EACL,KAAK;EACL,QAAQ;EACR,UAAU;EACX;;AAGH,MAAM,cACJ,QACA,YAA2B,SAE3B,KACE,QACA,OAAO,KAAK,UAAU;CACpB,MAAM,mBAAmB,YACrB,GAAG,UAAU,GAAG,MAAM,SACtB,MAAM;AAEV,QAAO,OAAO,MACZ,WAAW,MAAM,QAAQ,iBAAiB,EAC1C,OAAO,IAAI,MAAM,YAAY,cAC3BA,OAAS,GAAG,iBAAiB,GAAG,UAAU,QAAQ,UAAU,CAC7D,GACA,WAAW,cAAc;AACxB,QAAM,IAAI,MACR,qDAAqDC,sBAA0B,UAAU,CAAC,IAC3F;GAEJ;EACD,CACH"}
|
package/dist/Spec.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Spec.d.ts","names":[],"sources":["../src/Spec.ts"],"
|
|
1
|
+
{"version":3,"file":"Spec.d.ts","names":[],"sources":["../src/Spec.ts"],"mappings":";;;;;;cAGa,MAAA;AAAA,KACD,MAAA,UAAgB,MAAA;AAAA,cAEf,MAAA,GAAU,CAAA,cAAa,CAAA,IAAK,YAAA;AAAA,UAGxB,IAAA,iBAAqB,cAAA;EAAA,UAC1B,MAAA,GAAS,MAAA;EAAA,SACV,MAAA,kBACO,IAAA,CAAe,OAAA,IAAW,QAAA,CACtC,OAAA,EACA,SAAA;EAIJ,GAAA,eAAkB,cAAA,EAChB,KAAA,EAAO,KAAA,GACN,IAAA,CAAK,OAAA,GAAU,KAAA;AAAA;AAAA,UAGH,GAAA;EAAA,UACL,MAAA,GAAS,MAAA;AAAA;AAAA,UAGJ,YAAA,SAAqB,IAAA,CAAK,cAAA;AAAA,KAE/B,MAAA,eAAqB,YAAA,IAC/B,KAAA,iBAAsB,KAAA;AAAA,cAqBX,IAAA,QAAW,IAAA"}
|
package/dist/Spec.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { Predicate, Record } from "effect";
|
|
3
3
|
|
|
4
4
|
//#region src/Spec.ts
|
|
5
|
-
var Spec_exports = /* @__PURE__ */
|
|
5
|
+
var Spec_exports = /* @__PURE__ */ __exportAll({
|
|
6
6
|
TypeId: () => TypeId,
|
|
7
7
|
isSpec: () => isSpec,
|
|
8
8
|
make: () => make
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemFields.d.ts","names":[],"sources":["../src/SystemFields.ts"],"
|
|
1
|
+
{"version":3,"file":"SystemFields.d.ts","names":[],"sources":["../src/SystemFields.ts"],"mappings":";;;;;;;;KAQK,kBAAA,6BAA+C,MAAA,CAAO,MAAA;EACzD,GAAA,EAAK,MAAA,CAAO,MAAA,CACV,SAAA,CAAoB,SAAA,GACpB,SAAA,CAAoB,SAAA;EAGtB,aAAA,SAAsB,MAAA,CAAO,MAAA;AAAA;;;;cAMlB,YAAA,6BACX,SAAA,EAAW,SAAA,KACV,kBAAA,CAAmB,SAAA;;AAhBmB;;cAyB5B,sBAAA,iDAES,MAAA,CAAO,MAAA,CAAO,YAAA,EAElC,SAAA,EAAW,SAAA,EACX,MAAA,EAAQ,WAAA,KACP,sBAAA,CAAuB,SAAA,EAAW,WAAA;;;;KAMzB,sBAAA,+CAEU,MAAA,CAAO,MAAA,CAAO,YAAA,IAChC,MAAA,CAAO,MAAA,CAAO,kBAAA,CAAmB,SAAA,GAAY,WAAA;AAAA,KAErC,gBAAA,uCAAuD,MAAA,CACjE,QAAA,CAAS,OAAA,CAAQ,SAAA,KAAc,QAAA,CAAS,cAAA,IAAqB,QAAA"}
|
package/dist/SystemFields.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { GenericId } from "./GenericId.js";
|
|
3
3
|
import { Schema } from "effect";
|
|
4
4
|
|
|
5
5
|
//#region src/SystemFields.ts
|
|
6
|
-
var SystemFields_exports = /* @__PURE__ */
|
|
6
|
+
var SystemFields_exports = /* @__PURE__ */ __exportAll({
|
|
7
7
|
SystemFields: () => SystemFields,
|
|
8
8
|
extendWithSystemFields: () => extendWithSystemFields
|
|
9
9
|
});
|
package/dist/Types.d.ts
CHANGED
|
@@ -4,24 +4,23 @@ import { GenericId } from "convex/values";
|
|
|
4
4
|
|
|
5
5
|
//#region src/Types.d.ts
|
|
6
6
|
declare namespace Types_d_exports {
|
|
7
|
-
export { BaseDatabaseReader, DeepMutable,
|
|
7
|
+
export { BaseDatabaseReader, DeepMutable, IndexFieldTypesForEq, IsAny, IsOptional, IsRecord, IsRecursive, IsUnion, IsValueLiteral, TypeDefect, TypeError, UnionToTuple };
|
|
8
8
|
}
|
|
9
|
-
type IsOptional<T, K
|
|
9
|
+
type IsOptional<T, K extends keyof T> = {} extends Pick<T, K> ? true : false;
|
|
10
10
|
type IsAny<T> = 0 extends 1 & T ? true : false;
|
|
11
|
-
type IsUnion<T, U
|
|
11
|
+
type IsUnion<T, U extends T = T> = T extends unknown ? [U] extends [T] ? false : true : never;
|
|
12
12
|
type IsValueLiteral<Vl> = [Vl] extends [never] ? never : IsUnion<Vl> extends true ? false : [Vl] extends [string | number | bigint | boolean] ? [string] extends [Vl] ? false : [number] extends [Vl] ? false : [boolean] extends [Vl] ? false : [bigint] extends [Vl] ? false : true : false;
|
|
13
13
|
/**
|
|
14
14
|
* Only checks for records with string keys.
|
|
15
15
|
*/
|
|
16
16
|
type IsRecord<T> = [T] extends [never] ? false : IsUnion<T> extends true ? false : T extends Record<string, infer V> ? string extends keyof T ? keyof T extends string ? T extends Record<string, V> ? Record<string, V> extends T ? true : false : false : false : false : false;
|
|
17
17
|
type DeepMutable<T> = IsAny<T> extends true ? any : T extends Brand.Brand<any> | GenericId<any> ? T : T extends ReadonlyMap<infer K, infer V> ? Map<DeepMutable<K>, DeepMutable<V>> : T extends ReadonlySet<infer V> ? Set<DeepMutable<V>> : [keyof T] extends [never] ? T : { -readonly [K in keyof T]: DeepMutable<T[K]> };
|
|
18
|
-
type DeepReadonly<T> = IsAny<T> extends true ? any : T extends Map<infer K, infer V> ? ReadonlyMap<DeepReadonly<K>, DeepReadonly<V>> : T extends Set<infer V> ? ReadonlySet<DeepReadonly<V>> : [keyof T] extends [never] ? T : { readonly [K in keyof T]: DeepReadonly<T[K]> };
|
|
19
18
|
type TypeError<Message extends string, T = never> = [Message, T];
|
|
20
|
-
type TypeDefect<Message extends string, T = never> =
|
|
19
|
+
type TypeDefect<Message extends string, T = never> = [Message, T];
|
|
21
20
|
type IsRecursive<T> = true extends DetectCycle<T> ? true : false;
|
|
22
21
|
type DetectCycle<T, Cache extends any[] = []> = IsAny<T> extends true ? false : [T] extends [any] ? T extends Cache[number] ? true : T extends Array<infer U> ? DetectCycle<U, [...Cache, T]> : T extends Map<infer _U, infer V> ? DetectCycle<V, [...Cache, T]> : T extends Set<infer U> ? DetectCycle<U, [...Cache, T]> : T extends object ? true extends { [K in keyof T]: DetectCycle<T[K], [...Cache, T]> }[keyof T] ? true : false : false : never;
|
|
23
22
|
type UnionToTuple<t> = _unionToTuple<t, []> extends infer result ? conform<result, t[]> : never;
|
|
24
|
-
type _unionToTuple<t, result
|
|
23
|
+
type _unionToTuple<t, result extends unknown[]> = getLastBranch<t> extends infer current ? [t] extends [never] ? result : _unionToTuple<Exclude<t, current>, [current, ...result]> : never;
|
|
25
24
|
type getLastBranch<t> = intersectUnion<t extends unknown ? (x: t) => void : never> extends ((x: infer branch) => void) ? branch : never;
|
|
26
25
|
type intersectUnion<t> = (t extends unknown ? (_: t) => void : never) extends ((_: infer intersection) => void) ? intersection : never;
|
|
27
26
|
type conform<t, base> = t extends base ? t : base;
|
|
@@ -31,5 +30,5 @@ type BaseDatabaseReader<DataModel extends GenericDataModel> = {
|
|
|
31
30
|
query: GenericDatabaseReader<DataModel>["query"];
|
|
32
31
|
};
|
|
33
32
|
//#endregion
|
|
34
|
-
export { BaseDatabaseReader, DeepMutable,
|
|
33
|
+
export { BaseDatabaseReader, DeepMutable, IndexFieldTypesForEq, IsAny, IsOptional, IsRecord, IsRecursive, IsUnion, IsValueLiteral, TypeDefect, TypeError, Types_d_exports, UnionToTuple };
|
|
35
34
|
//# sourceMappingURL=Types.d.ts.map
|
package/dist/Types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Types.d.ts","names":[],"sources":["../src/Types.ts"],"
|
|
1
|
+
{"version":3,"file":"Types.d.ts","names":[],"sources":["../src/Types.ts"],"mappings":";;;;;;;;KAUY,UAAA,oBAA8B,CAAA,eAC7B,IAAA,CAAK,CAAA,EAAG,CAAA;AAAA,KAET,KAAA,oBAAyB,CAAA;AAAA,KAEzB,OAAA,cAAqB,CAAA,GAAI,CAAA,IAAK,CAAA,oBACrC,CAAA,WAAY,CAAA;AAAA,KAML,cAAA,QAAsB,EAAA,4BAE9B,OAAA,CAAQ,EAAA,0BAEL,EAAA,mEACmB,EAAA,8BAEE,EAAA,+BAEG,EAAA,8BAEC,EAAA;;;;KAQpB,QAAA,OAAe,CAAA,4BAEvB,OAAA,CAAQ,CAAA,yBAEN,CAAA,SAAU,MAAA,yCACa,CAAA,SACb,CAAA,kBACJ,CAAA,SAAU,MAAA,SAAe,CAAA,IACvB,MAAA,SAAe,CAAA,UAAW,CAAA;AAAA,KAQ5B,WAAA,MACV,KAAA,CAAM,CAAA,uBAEF,CAAA,SAAU,KAAA,CAAM,KAAA,QAAa,SAAA,QAC3B,CAAA,GACA,CAAA,SAAU,WAAA,qBACR,GAAA,CAAI,WAAA,CAAY,CAAA,GAAI,WAAA,CAAY,CAAA,KAChC,CAAA,SAAU,WAAA,YACR,GAAA,CAAI,WAAA,CAAY,CAAA,YACT,CAAA,oBACL,CAAA,2BACwB,CAAA,GAAI,WAAA,CAAY,CAAA,CAAE,CAAA;AAAA,KAE5C,SAAA,uCAAgD,OAAA,EAAS,CAAA;AAAA,KAEzD,UAAA,uCAAiD,OAAA,EAAS,CAAA;AAAA,KAE1D,WAAA,mBAA8B,WAAA,CAAY,CAAA;AAAA,KAEjD,WAAA,gCACH,KAAA,CAAM,CAAA,0BAED,CAAA,kBACC,CAAA,SAAU,KAAA,kBAER,CAAA,SAAU,KAAA,YACR,WAAA,CAAY,CAAA,MAAO,KAAA,EAAO,CAAA,KAC1B,CAAA,SAAU,GAAA,sBACR,WAAA,CAAY,CAAA,MAAO,KAAA,EAAO,CAAA,KAC1B,CAAA,SAAU,GAAA,YACR,WAAA,CAAY,CAAA,MAAO,KAAA,EAAO,CAAA,KAC1B,CAAA,6CAEgB,CAAA,GAAI,WAAA,CAAY,CAAA,CAAE,CAAA,OAAQ,KAAA,EAAO,CAAA,WACvC,CAAA;AAAA,KAYd,YAAA,MACV,aAAA,CAAc,CAAA,6BAA8B,OAAA,CAAQ,MAAA,EAAQ,CAAA;AAAA,KAEzD,aAAA,gCACH,aAAA,CAAc,CAAA,2BACT,CAAA,oBACC,MAAA,GACA,aAAA,CAAc,OAAA,CAAQ,CAAA,EAAG,OAAA,IAAW,OAAA,KAAY,MAAA;AAAA,KAGnD,aAAA,MACH,cAAA,CAAe,CAAA,oBAAqB,CAAA,EAAG,CAAA,6BACrC,CAAA,2BAEE,MAAA;AAAA,KAGD,cAAA,OAAqB,CAAA,oBAAqB,CAAA,EAAG,CAAA,6BAChD,CAAA,iCAEE,YAAA;AAAA,KAGC,OAAA,YAAmB,CAAA,SAAU,IAAA,GAAO,CAAA,GAAI,IAAA;AAAA,KAMjC,oBAAA,yBACc,gBAAA,gBACV,qBAAA,CAAsB,eAAA,yBAElC,CAAA,yCACA,IAAA,2CAEgB,IAAA,GAAO,sBAAA,CACjB,cAAA,CAAe,eAAA,EAAiB,KAAA,GAChC,IAAA,CAAK,CAAA;AAAA,KAOH,kBAAA,mBAAqC,gBAAA;EAC/C,GAAA,EAAK,qBAAA,CAAsB,SAAA;EAC3B,KAAA,EAAO,qBAAA,CAAsB,SAAA;AAAA"}
|
package/dist/Types.js
CHANGED
package/dist/Types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Types.js","names":[],"sources":["../src/Types.ts"],"sourcesContent":["import type {\n DocumentByName,\n FieldTypeFromFieldPath,\n GenericDatabaseReader,\n GenericDataModel,\n TableNamesInDataModel,\n} from \"convex/server\";\nimport type { GenericId } from \"convex/values\";\nimport type { Brand } from \"effect\";\n\nexport type IsOptional<T, K extends keyof T> =\n {} extends Pick<T, K> ? true : false;\n\nexport type IsAny<T> = 0 extends 1 & T ? true : false;\n\nexport type IsUnion<T, U extends T = T> = T extends unknown\n ? [U] extends [T]\n ? false\n : true\n : never;\n\n// https://stackoverflow.com/a/52806744\nexport type IsValueLiteral<Vl> = [Vl] extends [never]\n ? never\n : IsUnion<Vl> extends true\n ? false\n : [Vl] extends [string | number | bigint | boolean]\n ? [string] extends [Vl]\n ? false\n : [number] extends [Vl]\n ? false\n : [boolean] extends [Vl]\n ? false\n : [bigint] extends [Vl]\n ? false\n : true\n : false;\n\n/**\n * Only checks for records with string keys.\n */\nexport type IsRecord<T> = [T] extends [never]\n ? false\n : IsUnion<T> extends true\n ? false\n : T extends Record<string, infer V>\n ? string extends keyof T\n ? keyof T extends string\n ? T extends Record<string, V>\n ? Record<string, V> extends T\n ? true\n : false\n : false\n : false\n : false\n : false;\n\nexport type DeepMutable<T> =\n IsAny<T> extends true\n ? any\n : T extends Brand.Brand<any> | GenericId<any>\n ? T\n : T extends ReadonlyMap<infer K, infer V>\n ? Map<DeepMutable<K>, DeepMutable<V>>\n : T extends ReadonlySet<infer V>\n ? Set<DeepMutable<V>>\n : [keyof T] extends [never]\n ? T\n : { -readonly [K in keyof T]: DeepMutable<T[K]> };\n\nexport type
|
|
1
|
+
{"version":3,"file":"Types.js","names":[],"sources":["../src/Types.ts"],"sourcesContent":["import type {\n DocumentByName,\n FieldTypeFromFieldPath,\n GenericDatabaseReader,\n GenericDataModel,\n TableNamesInDataModel,\n} from \"convex/server\";\nimport type { GenericId } from \"convex/values\";\nimport type { Brand } from \"effect\";\n\nexport type IsOptional<T, K extends keyof T> =\n {} extends Pick<T, K> ? true : false;\n\nexport type IsAny<T> = 0 extends 1 & T ? true : false;\n\nexport type IsUnion<T, U extends T = T> = T extends unknown\n ? [U] extends [T]\n ? false\n : true\n : never;\n\n// https://stackoverflow.com/a/52806744\nexport type IsValueLiteral<Vl> = [Vl] extends [never]\n ? never\n : IsUnion<Vl> extends true\n ? false\n : [Vl] extends [string | number | bigint | boolean]\n ? [string] extends [Vl]\n ? false\n : [number] extends [Vl]\n ? false\n : [boolean] extends [Vl]\n ? false\n : [bigint] extends [Vl]\n ? false\n : true\n : false;\n\n/**\n * Only checks for records with string keys.\n */\nexport type IsRecord<T> = [T] extends [never]\n ? false\n : IsUnion<T> extends true\n ? false\n : T extends Record<string, infer V>\n ? string extends keyof T\n ? keyof T extends string\n ? T extends Record<string, V>\n ? Record<string, V> extends T\n ? true\n : false\n : false\n : false\n : false\n : false;\n\nexport type DeepMutable<T> =\n IsAny<T> extends true\n ? any\n : T extends Brand.Brand<any> | GenericId<any>\n ? T\n : T extends ReadonlyMap<infer K, infer V>\n ? Map<DeepMutable<K>, DeepMutable<V>>\n : T extends ReadonlySet<infer V>\n ? Set<DeepMutable<V>>\n : [keyof T] extends [never]\n ? T\n : { -readonly [K in keyof T]: DeepMutable<T[K]> };\n\nexport type TypeError<Message extends string, T = never> = [Message, T];\n\nexport type TypeDefect<Message extends string, T = never> = [Message, T];\n\nexport type IsRecursive<T> = true extends DetectCycle<T> ? true : false;\n\ntype DetectCycle<T, Cache extends any[] = []> =\n IsAny<T> extends true\n ? false\n : [T] extends [any]\n ? T extends Cache[number]\n ? true\n : T extends Array<infer U>\n ? DetectCycle<U, [...Cache, T]>\n : T extends Map<infer _U, infer V>\n ? DetectCycle<V, [...Cache, T]>\n : T extends Set<infer U>\n ? DetectCycle<U, [...Cache, T]>\n : T extends object\n ? true extends {\n [K in keyof T]: DetectCycle<T[K], [...Cache, T]>;\n }[keyof T]\n ? true\n : false\n : false\n : never;\n\n//////////////////////////////////\n// START: Vendored from Arktype //\n//////////////////////////////////\n\n// https://github.com/arktypeio/arktype/blob/2e911d01a741ccee7a17e31ee144049817fabbb8/ark/util/unionToTuple.ts#L9\n\nexport type UnionToTuple<t> =\n _unionToTuple<t, []> extends infer result ? conform<result, t[]> : never;\n\ntype _unionToTuple<t, result extends unknown[]> =\n getLastBranch<t> extends infer current\n ? [t] extends [never]\n ? result\n : _unionToTuple<Exclude<t, current>, [current, ...result]>\n : never;\n\ntype getLastBranch<t> =\n intersectUnion<t extends unknown ? (x: t) => void : never> extends (\n x: infer branch,\n ) => void\n ? branch\n : never;\n\ntype intersectUnion<t> = (t extends unknown ? (_: t) => void : never) extends (\n _: infer intersection,\n) => void\n ? intersection\n : never;\n\ntype conform<t, base> = t extends base ? t : base;\n\n////////////////////////////////\n// END: Vendored from Arktype //\n////////////////////////////////\n\nexport type IndexFieldTypesForEq<\n ConvexDataModel extends GenericDataModel,\n Table extends TableNamesInDataModel<ConvexDataModel>,\n T extends string[],\n> = T extends readonly [...infer Rest, any]\n ? Rest extends readonly string[]\n ? {\n [K in keyof Rest]: FieldTypeFromFieldPath<\n DocumentByName<ConvexDataModel, Table>,\n Rest[K]\n >;\n }\n : never\n : never;\n\n// Would prefer to use `BaseDatabaseReader` from the `convex` package, but it's not exported.\nexport type BaseDatabaseReader<DataModel extends GenericDataModel> = {\n get: GenericDatabaseReader<DataModel>[\"get\"];\n query: GenericDatabaseReader<DataModel>[\"query\"];\n};\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserIdentity.d.ts","names":[],"sources":["../src/UserIdentity.ts"],"
|
|
1
|
+
{"version":3,"file":"UserIdentity.d.ts","names":[],"sources":["../src/UserIdentity.ts"],"mappings":";;;;;;cAEa,YAAA,8BAA2C,MAAA,CAAO,MAAA,CAAO,MAAA,EACpE,kBAAA,EAAoB,kBAAA,KAAkB,MAAA,CAAA,MAAA,CAAA,kBAAA"}
|
package/dist/UserIdentity.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "./_virtual/_rolldown/runtime.js";
|
|
2
2
|
import { Schema } from "effect";
|
|
3
3
|
|
|
4
4
|
//#region src/UserIdentity.ts
|
|
5
|
-
var UserIdentity_exports = /* @__PURE__ */
|
|
5
|
+
var UserIdentity_exports = /* @__PURE__ */ __exportAll({ UserIdentity: () => UserIdentity });
|
|
6
6
|
const UserIdentity = (customClaimsFields) => Schema.Struct({
|
|
7
7
|
...customClaimsFields,
|
|
8
8
|
tokenIdentifier: Schema.String,
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
//#region \0rolldown/runtime.js
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __exportAll = (all, no_symbols) => {
|
|
4
|
+
let target = {};
|
|
5
|
+
for (var name in all) {
|
|
6
|
+
__defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: true
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
if (!no_symbols) {
|
|
12
|
+
__defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
13
|
+
}
|
|
14
|
+
return target;
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
//#endregion
|
|
18
|
+
export { __exportAll };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","names":[],"sources":["../../src/internal/utils.ts"],"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","names":[],"sources":["../../src/internal/utils.ts"],"mappings":";cAmEa,iCAAA,GAAqC,UAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@confect/core",
|
|
3
|
-
"version": "1.0.0-next.
|
|
4
|
-
"description": "Confect
|
|
3
|
+
"version": "1.0.0-next.2",
|
|
4
|
+
"description": "Shared specs and schemas used by all Confect packages",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/rjdellecese/confect.git"
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"bugs": {
|
|
10
10
|
"url": "https://github.com/rjdellecese/confect/issues"
|
|
11
11
|
},
|
|
12
|
-
"homepage": "https://confect.
|
|
12
|
+
"homepage": "https://confect.dev",
|
|
13
13
|
"sideEffects": false,
|
|
14
14
|
"type": "module",
|
|
15
15
|
"files": [
|
|
@@ -39,20 +39,22 @@
|
|
|
39
39
|
"author": "RJ Dellecese",
|
|
40
40
|
"license": "ISC",
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@ark/attest": "
|
|
43
|
-
"@effect/language-service": "0.
|
|
44
|
-
"@
|
|
45
|
-
"@
|
|
46
|
-
"@types/node": "
|
|
47
|
-
"eslint": "9.39.
|
|
48
|
-
"prettier": "3.
|
|
49
|
-
"tsdown": "0.
|
|
42
|
+
"@ark/attest": "0.56.0",
|
|
43
|
+
"@effect/language-service": "0.73.1",
|
|
44
|
+
"@effect/vitest": "0.27.0",
|
|
45
|
+
"@eslint/js": "9.39.2",
|
|
46
|
+
"@types/node": "25.2.3",
|
|
47
|
+
"eslint": "9.39.2",
|
|
48
|
+
"prettier": "3.8.1",
|
|
49
|
+
"tsdown": "0.20.3",
|
|
50
50
|
"typescript": "5.9.3",
|
|
51
|
-
"typescript-eslint": "8.
|
|
51
|
+
"typescript-eslint": "8.55.0",
|
|
52
|
+
"vitest": "3.2.4",
|
|
53
|
+
"effect": "3.19.16"
|
|
52
54
|
},
|
|
53
55
|
"peerDependencies": {
|
|
54
56
|
"convex": "^1.30.0",
|
|
55
|
-
"effect": "^3.19.
|
|
57
|
+
"effect": "^3.19.16"
|
|
56
58
|
},
|
|
57
59
|
"engines": {
|
|
58
60
|
"node": ">=22",
|
|
@@ -64,9 +66,11 @@
|
|
|
64
66
|
"scripts": {
|
|
65
67
|
"build": "tsdown --config-loader unrun",
|
|
66
68
|
"dev": "tsdown --watch",
|
|
69
|
+
"test": "vitest run",
|
|
67
70
|
"typecheck": "tsc --noEmit --project tsconfig.json",
|
|
68
71
|
"fix": "prettier --write . && eslint --fix . --max-warnings=0",
|
|
69
|
-
"
|
|
72
|
+
"format": "prettier --check .",
|
|
73
|
+
"lint": "eslint . --max-warnings=0",
|
|
70
74
|
"bench": "tsx test/Refs.bench.ts",
|
|
71
75
|
"clean": "rm -rf dist coverage node_modules"
|
|
72
76
|
}
|
package/src/FunctionSpec.ts
CHANGED
|
@@ -34,24 +34,23 @@ export interface Any {
|
|
|
34
34
|
readonly [TypeId]: TypeId;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
export interface AnyWithProps
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
> {}
|
|
37
|
+
export interface AnyWithProps extends FunctionSpec<
|
|
38
|
+
FunctionType,
|
|
39
|
+
FunctionVisibility,
|
|
40
|
+
string,
|
|
41
|
+
Schema.Schema.AnyNoContext,
|
|
42
|
+
Schema.Schema.AnyNoContext
|
|
43
|
+
> {}
|
|
45
44
|
|
|
46
45
|
export interface AnyWithPropsWithFunctionType<
|
|
47
46
|
FunctionType_ extends FunctionType,
|
|
48
47
|
> extends FunctionSpec<
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
48
|
+
FunctionType_,
|
|
49
|
+
FunctionVisibility,
|
|
50
|
+
string,
|
|
51
|
+
Schema.Schema.AnyNoContext,
|
|
52
|
+
Schema.Schema.AnyNoContext
|
|
53
|
+
> {}
|
|
55
54
|
|
|
56
55
|
export type GetFunctionType<Function extends AnyWithProps> =
|
|
57
56
|
Function["functionType"];
|
package/src/GroupSpec.ts
CHANGED
|
@@ -38,8 +38,11 @@ export interface Any {
|
|
|
38
38
|
readonly [TypeId]: TypeId;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
export interface AnyWithProps
|
|
42
|
-
|
|
41
|
+
export interface AnyWithProps extends GroupSpec<
|
|
42
|
+
string,
|
|
43
|
+
FunctionSpec.AnyWithProps,
|
|
44
|
+
AnyWithProps
|
|
45
|
+
> {}
|
|
43
46
|
|
|
44
47
|
export type Name<Group extends AnyWithProps> = Group["name"];
|
|
45
48
|
|
package/src/Ref.ts
CHANGED
|
@@ -20,53 +20,47 @@ export interface AnyInternal extends Ref<any, "internal", any, any> {}
|
|
|
20
20
|
|
|
21
21
|
export interface AnyPublic extends Ref<any, "public", any, any> {}
|
|
22
22
|
|
|
23
|
-
export interface AnyQuery
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
extends Ref<
|
|
65
|
-
"action",
|
|
66
|
-
"public",
|
|
67
|
-
Schema.Schema.AnyNoContext,
|
|
68
|
-
Schema.Schema.AnyNoContext
|
|
69
|
-
> {}
|
|
23
|
+
export interface AnyQuery extends Ref<
|
|
24
|
+
"query",
|
|
25
|
+
FunctionVisibility,
|
|
26
|
+
Schema.Schema.AnyNoContext,
|
|
27
|
+
Schema.Schema.AnyNoContext
|
|
28
|
+
> {}
|
|
29
|
+
|
|
30
|
+
export interface AnyMutation extends Ref<
|
|
31
|
+
"mutation",
|
|
32
|
+
FunctionVisibility,
|
|
33
|
+
Schema.Schema.AnyNoContext,
|
|
34
|
+
Schema.Schema.AnyNoContext
|
|
35
|
+
> {}
|
|
36
|
+
|
|
37
|
+
export interface AnyAction extends Ref<
|
|
38
|
+
"action",
|
|
39
|
+
FunctionVisibility,
|
|
40
|
+
Schema.Schema.AnyNoContext,
|
|
41
|
+
Schema.Schema.AnyNoContext
|
|
42
|
+
> {}
|
|
43
|
+
|
|
44
|
+
export interface AnyPublicQuery extends Ref<
|
|
45
|
+
"query",
|
|
46
|
+
"public",
|
|
47
|
+
Schema.Schema.AnyNoContext,
|
|
48
|
+
Schema.Schema.AnyNoContext
|
|
49
|
+
> {}
|
|
50
|
+
|
|
51
|
+
export interface AnyPublicMutation extends Ref<
|
|
52
|
+
"mutation",
|
|
53
|
+
"public",
|
|
54
|
+
Schema.Schema.AnyNoContext,
|
|
55
|
+
Schema.Schema.AnyNoContext
|
|
56
|
+
> {}
|
|
57
|
+
|
|
58
|
+
export interface AnyPublicAction extends Ref<
|
|
59
|
+
"action",
|
|
60
|
+
"public",
|
|
61
|
+
Schema.Schema.AnyNoContext,
|
|
62
|
+
Schema.Schema.AnyNoContext
|
|
63
|
+
> {}
|
|
70
64
|
|
|
71
65
|
export type GetFunctionType<Ref_> =
|
|
72
66
|
Ref_ extends Ref<
|
|
@@ -125,7 +119,6 @@ export const make = <
|
|
|
125
119
|
* This is a Convex "function name" of the format "myGroupDir/myGroupMod:myFunc".
|
|
126
120
|
*/
|
|
127
121
|
convexFunctionName: string,
|
|
128
|
-
// TODO: Pull out all of the fields from the function spec except the name (we don't need it because we already have the convex function name) and spread them here
|
|
129
122
|
function_: FunctionSpec.FunctionSpec<
|
|
130
123
|
FunctionType_,
|
|
131
124
|
FunctionVisibility_,
|
|
@@ -139,7 +132,6 @@ export const make = <
|
|
|
139
132
|
[HiddenConvexFunctionNameKey]: convexFunctionName,
|
|
140
133
|
}) as Ref<FunctionType_, FunctionVisibility_, Args_, Returns_>;
|
|
141
134
|
|
|
142
|
-
// TODO: Is this hidden stuff necessary/useful still?
|
|
143
135
|
const HiddenFunctionKey = "@confect/core/api/HiddenFunctionKey";
|
|
144
136
|
type HiddenFunctionKey = typeof HiddenFunctionKey;
|
|
145
137
|
type HiddenFunction<Ref_ extends Any> = FunctionSpec.FunctionSpec<
|
package/src/Refs.ts
CHANGED
|
@@ -8,16 +8,20 @@ import type * as Spec from "./Spec";
|
|
|
8
8
|
export type Refs<
|
|
9
9
|
Spec_ extends Spec.AnyWithProps,
|
|
10
10
|
Predicate extends Ref.Any = Ref.Any,
|
|
11
|
-
> = Types.Simplify<Helper<Spec.Groups<Spec_>, Predicate
|
|
11
|
+
> = Types.Simplify<OmitEmpty<Helper<Spec.Groups<Spec_>, Predicate>>>;
|
|
12
12
|
|
|
13
13
|
type GroupRefs<
|
|
14
14
|
Group extends GroupSpec.AnyWithProps,
|
|
15
15
|
Predicate extends Ref.Any,
|
|
16
16
|
> = Types.Simplify<
|
|
17
|
-
Helper<GroupSpec.Groups<Group>, Predicate
|
|
17
|
+
OmitEmpty<Helper<GroupSpec.Groups<Group>, Predicate>> &
|
|
18
18
|
FilteredFunctions<GroupSpec.Functions<Group>, Predicate>
|
|
19
19
|
>;
|
|
20
20
|
|
|
21
|
+
type OmitEmpty<T> = {
|
|
22
|
+
[K in keyof T as keyof T[K] extends never ? never : K]: T[K];
|
|
23
|
+
};
|
|
24
|
+
|
|
21
25
|
type FilteredFunctions<
|
|
22
26
|
Functions extends FunctionSpec.AnyWithProps,
|
|
23
27
|
Predicate extends Ref.Any,
|
|
@@ -39,15 +43,10 @@ type Helper<
|
|
|
39
43
|
Groups extends GroupSpec.AnyWithProps,
|
|
40
44
|
Predicate extends Ref.Any,
|
|
41
45
|
> = {
|
|
42
|
-
[GroupName in GroupSpec.Name<Groups>
|
|
46
|
+
[GroupName in GroupSpec.Name<Groups>]: GroupSpec.WithName<
|
|
43
47
|
Groups,
|
|
44
48
|
GroupName
|
|
45
49
|
> extends infer Group extends GroupSpec.AnyWithProps
|
|
46
|
-
? GroupRefs<Group, Predicate> extends Record<string, never>
|
|
47
|
-
? never
|
|
48
|
-
: GroupName
|
|
49
|
-
: never]: GroupSpec.WithName<Groups, GroupName> extends infer Group extends
|
|
50
|
-
GroupSpec.AnyWithProps
|
|
51
50
|
? GroupRefs<Group, Predicate>
|
|
52
51
|
: never;
|
|
53
52
|
};
|
package/src/Types.ts
CHANGED
|
@@ -68,23 +68,9 @@ export type DeepMutable<T> =
|
|
|
68
68
|
? T
|
|
69
69
|
: { -readonly [K in keyof T]: DeepMutable<T[K]> };
|
|
70
70
|
|
|
71
|
-
export type DeepReadonly<T> =
|
|
72
|
-
IsAny<T> extends true
|
|
73
|
-
? any
|
|
74
|
-
: T extends Map<infer K, infer V>
|
|
75
|
-
? ReadonlyMap<DeepReadonly<K>, DeepReadonly<V>>
|
|
76
|
-
: T extends Set<infer V>
|
|
77
|
-
? ReadonlySet<DeepReadonly<V>>
|
|
78
|
-
: [keyof T] extends [never]
|
|
79
|
-
? T
|
|
80
|
-
: { readonly [K in keyof T]: DeepReadonly<T[K]> };
|
|
81
|
-
|
|
82
71
|
export type TypeError<Message extends string, T = never> = [Message, T];
|
|
83
72
|
|
|
84
|
-
export type TypeDefect<Message extends string, T = never> =
|
|
85
|
-
`Unexpected type error:\n ${Message}`,
|
|
86
|
-
T
|
|
87
|
-
>;
|
|
73
|
+
export type TypeDefect<Message extends string, T = never> = [Message, T];
|
|
88
74
|
|
|
89
75
|
export type IsRecursive<T> = true extends DetectCycle<T> ? true : false;
|
|
90
76
|
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
//#region rolldown:runtime
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __export = (all) => {
|
|
4
|
-
let target = {};
|
|
5
|
-
for (var name in all) __defProp(target, name, {
|
|
6
|
-
get: all[name],
|
|
7
|
-
enumerable: true
|
|
8
|
-
});
|
|
9
|
-
return target;
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
//#endregion
|
|
13
|
-
export { __export };
|