ignotum 0.0.10 → 0.0.12
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/README.md +8 -3
- package/dist/cli/bin.mjs +563 -104
- package/dist/cli/bin.mjs.map +1 -1
- package/dist/runtime/{api-jCl8Hzry.d.ts → api-5XSrIeqW.d.ts} +4 -3
- package/dist/runtime/client.d.ts +6 -5
- package/dist/runtime/client.js +170 -75
- package/dist/runtime/client.js.map +1 -1
- package/dist/runtime/{descriptor-C5VA9qRl-BhD-WQeO.js → descriptor-XzDX2JDw-j3O6YHgW.js} +26 -6
- package/dist/runtime/descriptor-XzDX2JDw-j3O6YHgW.js.map +1 -0
- package/dist/runtime/{id-Cs82tq9Q-Caqfx54f.d.ts → id-Cs82tq9Q-CK-maMgN.d.ts} +13 -13
- package/dist/runtime/{index-D6VLTbDB.d.ts → index-CrWg4Z0y.d.ts} +132 -76
- package/dist/runtime/internal/api.d.ts +1 -1
- package/dist/runtime/internal/host.d.ts +18 -17
- package/dist/runtime/internal/host.js +11 -6
- package/dist/runtime/internal/host.js.map +1 -1
- package/dist/runtime/internal/server.d.ts +1 -1
- package/dist/runtime/internal/server.js +1 -1
- package/dist/runtime/internal/types.d.ts +1 -1
- package/dist/runtime/internal/types.js +1 -1
- package/dist/runtime/pagination-CX5IPbEi.d.ts +1 -0
- package/dist/runtime/{pagination-Bt3l7QaC-D_zI5zsu.d.ts → pagination-D-R9NR61-CpIoHFoI.d.ts} +8 -5
- package/dist/runtime/result-DIjKM-p4.d.ts +1 -0
- package/dist/runtime/{schema-C00wobuy.js → schema-B9XxyRO8.js} +132 -16
- package/dist/runtime/schema-B9XxyRO8.js.map +1 -0
- package/dist/runtime/server.d.ts +7 -3
- package/dist/runtime/server.js +5 -3
- package/dist/runtime/server.js.map +1 -1
- package/dist/runtime/{sync-bMQq9tXx.d.ts → sync-avN7NkcU.d.ts} +2 -2
- package/package.json +1 -1
- package/src/cli/agent-files.ts +2 -0
- package/src/cli/auth-client.ts +1 -1
- package/src/cli/bin.ts +13 -3
- package/src/cli/build/server.ts +102 -13
- package/src/cli/codegen.ts +7 -4
- package/src/cli/control-client.ts +30 -8
- package/src/cli/deploy.ts +7 -2
- package/src/cli/environment.ts +133 -0
- package/src/client/files.ts +43 -27
- package/src/client/hooks.ts +26 -17
- package/src/client/page-observers.ts +77 -0
- package/src/client/sync.ts +71 -59
- package/src/dev-runtime/functions.ts +127 -4
- package/src/dev-runtime/sync.ts +38 -9
- package/src/server/index.ts +11 -1
- package/dist/runtime/descriptor-C5VA9qRl-BhD-WQeO.js.map +0 -1
- package/dist/runtime/pagination-DcIkTOFs.d.ts +0 -1
- package/dist/runtime/schema-C00wobuy.js.map +0 -1
- package/src/dev-runtime/id.ts +0 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"descriptor-XzDX2JDw-j3O6YHgW.js","names":["Result"],"sources":["../../../contracts/dist/runtime/value.js","../../../contracts/dist/runtime/result.js","../../../contracts/dist/versioned.js","../../../contracts/dist/runtime/pagination.js","../../../contracts/dist/descriptor-XzDX2JDw.js"],"sourcesContent":["import { EncodedFileValue, FileValue, isFileValue } from \"../schema/file.js\";\nimport { Predicate, Schema } from \"effect\";\n//#region src/runtime/value.ts\nconst TransportValueSchema = Schema.suspend(() => Schema.Union([\n\tSchema.Null,\n\tSchema.Boolean,\n\tSchema.Finite,\n\tSchema.String,\n\tSchema.Date,\n\tFileValue,\n\tSchema.Array(TransportValueSchema),\n\tSchema.Record(Schema.String, Schema.UndefinedOr(TransportValueSchema))\n]));\nconst TransportValueTypeSchema = Schema.toType(TransportValueSchema);\nconst TransportObjectTypeSchema = Schema.Record(Schema.String, Schema.UndefinedOr(TransportValueTypeSchema));\nconst encodeTransportValue = (value) => {\n\tif (Predicate.isDate(value)) return Schema.encodeSync(Schema.DateFromMillis)(value);\n\tif (isFileValue(value)) return Schema.encodeSync(FileValue)(value);\n\tif (globalThis.Array.isArray(value)) return value.map(encodeTransportValue);\n\tif (Predicate.isNumber(value)) return Schema.decodeSync(Schema.Finite)(value);\n\tif (Predicate.isNull(value) || Predicate.isString(value) || Predicate.isBoolean(value)) return value;\n\treturn Object.fromEntries(Object.entries(value).flatMap(([key, child]) => child === void 0 ? [] : [[key, encodeTransportValue(child)]]));\n};\nconst encodeTransportObject = (value) => Schema.decodeUnknownSync(Schema.JsonObject)(encodeTransportValue(Schema.decodeUnknownSync(TransportObjectTypeSchema)(value)));\nconst collectDatePaths = (value, path, paths) => {\n\tif (Predicate.isDate(value)) {\n\t\tSchema.decodeSync(Schema.Date)(value);\n\t\tpaths.push(path);\n\t\treturn;\n\t}\n\tif (isFileValue(value)) return;\n\tif (globalThis.Array.isArray(value)) {\n\t\tfor (const [index, child] of value.entries()) collectDatePaths(child, [...path, index], paths);\n\t\treturn;\n\t}\n\tif (value === void 0 || Predicate.isNull(value) || Predicate.isString(value) || Predicate.isNumber(value) || Predicate.isBoolean(value)) return;\n\tfor (const [key, child] of Object.entries(value)) collectDatePaths(child, [...path, key], paths);\n};\nconst datePathsOf = (value) => {\n\tconst paths = [];\n\tcollectDatePaths(value, [], paths);\n\treturn paths;\n};\nconst datePathsOfObject = (value) => datePathsOf(Schema.decodeUnknownSync(TransportObjectTypeSchema)(value));\nconst pathKey = (path) => JSON.stringify(path);\nconst decodeTransportValueAt = (value, path, encodedDatePaths) => {\n\tif (encodedDatePaths.has(pathKey(path))) return Schema.decodeUnknownSync(Schema.DateFromMillis)(value);\n\tif (Schema.is(EncodedFileValue)(value)) return Schema.decodeSync(FileValue)(value);\n\tif (globalThis.Array.isArray(value)) return value.map((item, index) => decodeTransportValueAt(item, [...path, index], encodedDatePaths));\n\tif (Predicate.isNull(value) || Predicate.isString(value) || Predicate.isNumber(value) || Predicate.isBoolean(value)) return value;\n\treturn Object.fromEntries(Object.entries(value).map(([key, item]) => [key, decodeTransportValueAt(item, [...path, key], encodedDatePaths)]));\n};\nconst decodeTransportValue = (value, datePaths) => decodeTransportValueAt(value, [], new Set(datePaths.map(pathKey)));\nconst decodeTransportObject = (value, datePaths) => {\n\tconst encodedDatePaths = new Set(datePaths.map(pathKey));\n\treturn Object.fromEntries(Object.entries(value).map(([key, child]) => [key, decodeTransportValueAt(child, [key], encodedDatePaths)]));\n};\n//#endregion\nexport { TransportObjectTypeSchema, TransportValueSchema, TransportValueTypeSchema, datePathsOf, datePathsOfObject, decodeTransportObject, decodeTransportValue, encodeTransportObject, encodeTransportValue };\n\n//# sourceMappingURL=value.js.map","import { RequestId } from \"./id.js\";\nimport { decodeTransportObject } from \"./value.js\";\nimport { Brand, Effect, Effectable, Function, Option, Predicate, Schema } from \"effect\";\n//#region src/runtime/result.ts\nconst ResultTypeId = Symbol.for(\"ignotum/runtime/result/Result\");\nconst CompletedResultTypeId = Symbol.for(\"ignotum/runtime/result/Completed\");\nconst PendingResultTypeId = Symbol.for(\"ignotum/runtime/result/Pending\");\nconst ErrorBrand = \"ignotum/error\";\nconst makeErrorValue = Brand.nominal();\nconst ErrorValueSchema = Schema.StructWithRest(Schema.Struct({ _tag: Schema.String }), [Schema.Record(Schema.String, Schema.Json)]).pipe(Schema.brand(ErrorBrand));\nvar InternalServerErrorCause = class extends Schema.TaggedError()(\"InternalServerError\", { requestId: RequestId }) {};\nconst InternalServerError = InternalServerErrorCause;\nconst InternalServerErrorSchema = InternalServerErrorCause.pipe(Schema.brand(ErrorBrand));\nconst effectOf = (value) => Predicate.hasProperty(value, ResultTypeId) ? value[ResultTypeId] : Effect.succeed(value);\nfunction makeResultEffectBase() {\n\tconst Base = function() {};\n\tBase.prototype = Effectable.Prototype({\n\t\tlabel: \"IgnotumResult\",\n\t\tevaluate() {\n\t\t\treturn this[ResultTypeId];\n\t\t}\n\t});\n\treturn Base;\n}\nconst ResultEffectBase = makeResultEffectBase();\nvar ResultOperation = class ResultOperation extends ResultEffectBase {\n\t[ResultTypeId];\n\tconstructor(effect, completed) {\n\t\tsuper();\n\t\tthis[ResultTypeId] = effect;\n\t\tif (completed !== void 0) Object.defineProperty(this, CompletedResultTypeId, { value: completed });\n\t}\n\tcatch(cases) {\n\t\tconst effectCases = {};\n\t\tfor (const [tag, handler] of Object.entries(cases)) if (Predicate.isFunction(handler)) effectCases[tag] = (failure) => effectOf(handler(failure));\n\t\tconst runtimeEffect = this[ResultTypeId];\n\t\tconst caught = Effect.catchTags(runtimeEffect, effectCases);\n\t\treturn new ResultOperation(caught);\n\t}\n};\nvar PendingQueryResult = class {\n\t[PendingResultTypeId] = PendingResultTypeId;\n};\nconst inspectResult = (value) => {\n\tif (!Predicate.hasProperty(value, CompletedResultTypeId)) return void 0;\n\treturn value[CompletedResultTypeId];\n};\nconst effectFromResult = (result) => result[ResultTypeId];\nconst resultFromEffect = (effect) => new ResultOperation(effect);\nconst isFailureResult = (result) => Predicate.hasProperty(result, CompletedResultTypeId) && Predicate.isObject(result[CompletedResultTypeId]) && Predicate.hasProperty(result[CompletedResultTypeId], \"type\") && result[CompletedResultTypeId].type === \"Failure\";\nconst succeed = (value) => new ResultOperation(Effect.succeed(value), {\n\ttype: \"Success\",\n\tvalue\n});\nconst fail = (error) => new ResultOperation(Effect.fail(error), {\n\ttype: \"Failure\",\n\terror\n});\nconst tryResult = (body) => {\n\treturn new ResultOperation(Effect.gen(body));\n};\nconst match = Function.dual(2, (result, matchers) => {\n\tif (result instanceof PendingQueryResult) {\n\t\tif (matchers.pending === void 0) throw new Error(\"A pending Result requires a pending matcher.\");\n\t\treturn matchers.pending();\n\t}\n\tif (!Predicate.hasProperty(result, ResultTypeId)) throw new Error(\"Unknown Result implementation.\");\n\tconst inspected = inspectResult(result);\n\tif (inspected?.type === \"Success\") {\n\t\tconst value = inspected.value;\n\t\treturn matchers.value(value);\n\t}\n\tif (!isFailureResult(result)) throw new Error(\"Unknown or incomplete Result operation.\");\n\tconst error = result[CompletedResultTypeId].error;\n\tif (error._tag === \"InternalServerError\") {\n\t\tconst internalError = Schema.decodeUnknownSync(InternalServerErrorSchema)(error);\n\t\tconst handler = matchers.internalError;\n\t\tif (handler === void 0) throw internalError;\n\t\treturn handler(internalError);\n\t}\n\tconst errorMatcher = matchers.error;\n\tif (errorMatcher === void 0) throw new Error(`No matcher was provided for ${error._tag}.`);\n\tif (Predicate.isFunction(errorMatcher)) return errorMatcher(error);\n\tconst handlers = errorMatcher;\n\tconst handler = Object.hasOwn(handlers, error._tag) ? handlers[error._tag] : void 0;\n\tif (handler === void 0) throw new Error(`No matcher was provided for ${error._tag}.`);\n\treturn handler(error);\n});\nconst pending = () => new PendingQueryResult();\nconst failureFromWire = (error, datePaths = []) => {\n\tconst internalError = Schema.decodeUnknownOption(InternalServerErrorSchema)(error);\n\tif (Option.isSome(internalError)) return fail(internalError.value);\n\tconst decoded = Schema.decodeUnknownOption(ErrorValueSchema)(error);\n\tif (Option.isNone(decoded)) throw new Error(\"The server returned an invalid application error.\");\n\tconst restored = decodeTransportObject(decoded.value, datePaths);\n\treturn fail(makeErrorValue({\n\t\t...restored,\n\t\t_tag: decoded.value._tag\n\t}));\n};\nconst documentNotFound = (table, id) => Brand.nominal()({\n\t_tag: \"DocumentNotFound\",\n\ttable,\n\tid\n});\nconst Result = {\n\tfail,\n\tmatch,\n\tsucceed,\n\ttry: tryResult\n};\n//#endregion\nexport { ErrorBrand, ErrorValueSchema, InternalServerError, InternalServerErrorSchema, Result, documentNotFound, effectFromResult, failureFromWire, inspectResult, match, pending, resultFromEffect };\n\n//# sourceMappingURL=result.js.map","import { Schema, SchemaGetter } from \"effect\";\n//#region src/versioned.ts\n/** Registers the first revision of a long-lived format. */\nconst initial = (schema) => schema;\n/** Adds one adjacent migration and keeps encoding on the new current revision. */\nconst upgrade = (previous, current, migrate) => {\n\tconst accepted = Schema.Union([previous, current]);\n\tconst isCurrent = Schema.is(current);\n\treturn accepted.pipe(Schema.decodeTo(Schema.toType(current), {\n\t\tdecode: SchemaGetter.transform((value) => {\n\t\t\tif (isCurrent(value)) return value;\n\t\t\treturn migrate(value);\n\t\t}),\n\t\tencode: SchemaGetter.transform((value) => value)\n\t}));\n};\n//#endregion\nexport { initial, upgrade };\n\n//# sourceMappingURL=versioned.js.map","import { initial } from \"../versioned.js\";\nimport { encodeCanonicalJson } from \"../json.js\";\nimport { Encoding, Result, Schema } from \"effect\";\n//#region src/runtime/pagination.ts\nconst PaginationCursor = Schema.String.check(Schema.isBase64Url()).pipe(Schema.brand(\"ignotum/runtime/PaginationCursor\"));\nconst PaginationPageSize = Schema.Int.check(Schema.isBetween({\n\tminimum: 1,\n\tmaximum: 1e3\n})).pipe(Schema.brand(\"ignotum/runtime/PaginationPageSize\"));\nconst PaginationOptions = Schema.Struct({\n\tcursor: Schema.NullOr(PaginationCursor),\n\tpageSize: PaginationPageSize\n});\nconst TablePosition = Schema.Struct({\n\ttype: Schema.Literal(\"Table\"),\n\tcreatedAt: Schema.Int,\n\tid: Schema.String\n});\nconst IndexPosition = Schema.Struct({\n\ttype: Schema.Literal(\"Index\"),\n\tkey: Schema.String.check(Schema.isPattern(/^(?:[0-9a-f]{2})*$/)).pipe(Schema.brand(\"ignotum/runtime/EncodedIndexKey\"))\n});\nconst PaginationPosition = Schema.Union([TablePosition, IndexPosition]);\nconst CursorPayloadV1 = Schema.Struct({\n\tversion: Schema.Literal(1),\n\tquery: Schema.String,\n\tposition: PaginationPosition\n});\nconst CursorPayload = initial(CursorPayloadV1);\nconst CursorPayloadJson = Schema.fromJsonString(CursorPayload);\nconst paginationQueryIdentity = (tableId, index, lower, upper, order) => encodeCanonicalJson([\n\ttableId,\n\tindex,\n\tlower ?? null,\n\tupper ?? null,\n\torder\n]);\nconst encodePaginationCursor = (query, position) => PaginationCursor.make(Encoding.encodeBase64Url(Schema.encodeSync(CursorPayloadJson)({\n\tversion: 1,\n\tquery,\n\tposition\n})));\nconst decodePaginationCursor = (cursor) => Schema.decodeSync(CursorPayloadJson)(Result.getOrThrow(Encoding.decodeBase64UrlString(cursor)));\n//#endregion\nexport { PaginationCursor, PaginationOptions, PaginationPageSize, PaginationPosition, decodePaginationCursor, encodePaginationCursor, paginationQueryIdentity };\n\n//# sourceMappingURL=pagination.js.map","import { Function, Predicate, Schema } from \"effect\";\n//#region src/schema/descriptor.ts\nconst LiteralValue = Schema.Union([\n\tSchema.String,\n\tSchema.Finite,\n\tSchema.Boolean\n]);\nconst DescriptorField = Schema.Struct({\n\tname: Schema.String,\n\tvalue: Schema.suspend(() => ValueDescriptor)\n});\nconst ValueDescriptor = Schema.Union([\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"array\"),\n\t\tvalue: Schema.suspend(() => ValueDescriptor)\n\t}),\n\tSchema.Struct({ type: Schema.Literal(\"boolean\") }),\n\tSchema.Struct({ type: Schema.Literal(\"date\") }),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"file\"),\n\t\tformats: Schema.Array(Schema.Literals([\n\t\t\t\"jpeg\",\n\t\t\t\"png\",\n\t\t\t\"webp\",\n\t\t\t\"avif\",\n\t\t\t\"gif\"\n\t\t])),\n\t\tmaxBytes: Schema.Int\n\t}),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"error\"),\n\t\ttag: Schema.String,\n\t\tfields: Schema.Array(DescriptorField)\n\t}),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"id\"),\n\t\ttable: Schema.String\n\t}),\n\tSchema.Struct({ type: Schema.Literal(\"integer\") }),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"literal\"),\n\t\tvalue: LiteralValue\n\t}),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"literals\"),\n\t\tvalues: Schema.Array(LiteralValue)\n\t}),\n\tSchema.Struct({ type: Schema.Literal(\"never\") }),\n\tSchema.Struct({ type: Schema.Literal(\"null\") }),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"nullable\"),\n\t\tvalue: Schema.suspend(() => ValueDescriptor)\n\t}),\n\tSchema.Struct({ type: Schema.Literal(\"number\") }),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"object\"),\n\t\tfields: Schema.Array(DescriptorField)\n\t}),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"optional\"),\n\t\tvalue: Schema.suspend(() => ValueDescriptor)\n\t}),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"record\"),\n\t\tvalue: Schema.suspend(() => ValueDescriptor)\n\t}),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"secret\"),\n\t\tvalue: Schema.suspend(() => ValueDescriptor)\n\t}),\n\tSchema.Struct({ type: Schema.Literal(\"string\") }),\n\tSchema.Struct({\n\t\ttype: Schema.Literal(\"union\"),\n\t\tmembers: Schema.Array(Schema.suspend(() => ValueDescriptor))\n\t})\n]);\nconst ValueDescriptorTypeId = Symbol.for(\"ignotum/schema/ValueDescriptor\");\nconst attachValueDescriptor = Function.dual(2, (value, descriptor) => {\n\tObject.defineProperty(value, ValueDescriptorTypeId, {\n\t\tconfigurable: false,\n\t\tenumerable: false,\n\t\tvalue: descriptor,\n\t\twritable: false\n\t});\n\treturn value;\n});\nconst getValueDescriptor = (value) => {\n\tif (!Predicate.hasProperty(value, ValueDescriptorTypeId)) return void 0;\n\treturn Schema.is(ValueDescriptor)(value[ValueDescriptorTypeId]) ? value[ValueDescriptorTypeId] : void 0;\n};\nconst descriptorContainsFile = (descriptor) => {\n\tswitch (descriptor.type) {\n\t\tcase \"file\": return true;\n\t\tcase \"array\":\n\t\tcase \"nullable\":\n\t\tcase \"optional\":\n\t\tcase \"record\":\n\t\tcase \"secret\": return descriptorContainsFile(descriptor.value);\n\t\tcase \"error\":\n\t\tcase \"object\": return descriptor.fields.some((field) => descriptorContainsFile(field.value));\n\t\tcase \"union\": return descriptor.members.some(descriptorContainsFile);\n\t\tdefault: return false;\n\t}\n};\nconst descriptorContainsSecret = (descriptor) => {\n\tswitch (descriptor.type) {\n\t\tcase \"secret\": return true;\n\t\tcase \"array\":\n\t\tcase \"nullable\":\n\t\tcase \"optional\":\n\t\tcase \"record\": return descriptorContainsSecret(descriptor.value);\n\t\tcase \"error\":\n\t\tcase \"object\": return descriptor.fields.some((field) => descriptorContainsSecret(field.value));\n\t\tcase \"union\": return descriptor.members.some(descriptorContainsSecret);\n\t\tdefault: return false;\n\t}\n};\nconst descriptorAllowedInEnvironment = (descriptor) => {\n\tswitch (descriptor.type) {\n\t\tcase \"error\":\n\t\tcase \"file\":\n\t\tcase \"id\": return false;\n\t\tcase \"array\":\n\t\tcase \"nullable\":\n\t\tcase \"optional\":\n\t\tcase \"record\":\n\t\tcase \"secret\": return descriptorAllowedInEnvironment(descriptor.value);\n\t\tcase \"object\": return descriptor.fields.every((field) => descriptorAllowedInEnvironment(field.value));\n\t\tcase \"union\": return descriptor.members.every(descriptorAllowedInEnvironment);\n\t\tdefault: return true;\n\t}\n};\nconst descriptorFields = (fields) => {\n\tconst entries = [];\n\tfor (const name of Reflect.ownKeys(fields)) {\n\t\tif (!Predicate.isString(name)) throw new Error(\"Ignotum value objects only support string field names.\");\n\t\tconst field = fields[name];\n\t\tconst value = field === void 0 ? void 0 : getValueDescriptor(field);\n\t\tif (value === void 0) throw new Error(`The field '${name}' must use an Ignotum values validator.`);\n\t\tentries.push({\n\t\t\tname,\n\t\t\tvalue\n\t\t});\n\t}\n\treturn entries.sort((left, right) => left.name.localeCompare(right.name));\n};\n//#endregion\nexport { descriptorContainsFile as a, getValueDescriptor as c, descriptorAllowedInEnvironment as i, ValueDescriptorTypeId as n, descriptorContainsSecret as o, attachValueDescriptor as r, descriptorFields as s, ValueDescriptor as t };\n\n//# sourceMappingURL=descriptor-XzDX2JDw.js.map"],"mappings":"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"}
|
|
@@ -45,7 +45,7 @@ declare const FileValue: Schema.decodeTo<Schema.declare<FileValue<"avif" | "gif"
|
|
|
45
45
|
readonly size: Schema.Int;
|
|
46
46
|
}>, never, never>;
|
|
47
47
|
//#endregion
|
|
48
|
-
//#region ../contracts/dist/value-
|
|
48
|
+
//#region ../contracts/dist/value-4oFCo-yX.d.ts
|
|
49
49
|
//#region src/runtime/value.d.ts
|
|
50
50
|
interface TransportArray extends ReadonlyArray<TransportValue> {}
|
|
51
51
|
interface TransportObject {
|
|
@@ -53,7 +53,7 @@ interface TransportObject {
|
|
|
53
53
|
}
|
|
54
54
|
type TransportValue = null | boolean | number | string | Date | FileValue | TransportArray | TransportObject;
|
|
55
55
|
//#endregion
|
|
56
|
-
//#region ../contracts/dist/
|
|
56
|
+
//#region ../contracts/dist/result-CgX73dpS.d.ts
|
|
57
57
|
//#region src/runtime/result.d.ts
|
|
58
58
|
declare const ResultTypeId: unique symbol;
|
|
59
59
|
declare const PendingResultTypeId: unique symbol;
|
|
@@ -94,18 +94,18 @@ type CatchCases<Failure extends ErrorValue> = { readonly [Tag in Failure["_tag"]
|
|
|
94
94
|
readonly _tag: Tag;
|
|
95
95
|
}>) => CatchOutput; };
|
|
96
96
|
type CaseReturn<Cases> = ReturnType<Extract<Cases[keyof Cases], (...args: never) => CatchOutput>>;
|
|
97
|
-
type SuccessOfReturn<Value> = Value extends Result<infer Success, ErrorValue> ? Success : Value;
|
|
98
|
-
type FailureOfReturn<Value> = Value extends Result<unknown, infer Failure> ? Failure : never;
|
|
97
|
+
type SuccessOfReturn<Value> = Value extends Result$1<infer Success, ErrorValue> ? Success : Value;
|
|
98
|
+
type FailureOfReturn<Value> = Value extends Result$1<unknown, infer Failure> ? Failure : never;
|
|
99
99
|
type HandledTags<Cases> = Extract<keyof Cases, string>;
|
|
100
100
|
type YieldFailure<Yielded> = Yielded extends Effect.Effect<unknown, infer Failure, never> ? Failure extends ErrorValue ? Failure : never : never;
|
|
101
|
-
interface Result<out Success, out Failure extends ErrorValue> {
|
|
101
|
+
interface Result$1<out Success, out Failure extends ErrorValue> {
|
|
102
102
|
readonly [ResultTypeId]: Effect.Effect<Success, Failure>;
|
|
103
103
|
[Symbol.iterator](): Effect.EffectIterator<Effect.Effect<Success, Failure>>;
|
|
104
|
-
catch<const Cases extends CatchCases<Failure>>(cases: Cases & { readonly [Tag in Exclude<keyof Cases, Failure["_tag"]>]: never; }): Result<Success | SuccessOfReturn<CaseReturn<Cases>>, Exclude<Failure, {
|
|
104
|
+
catch<const Cases extends CatchCases<Failure>>(cases: Cases & { readonly [Tag in Exclude<keyof Cases, Failure["_tag"]>]: never; }): Result$1<Success | SuccessOfReturn<CaseReturn<Cases>>, Exclude<Failure, {
|
|
105
105
|
readonly _tag: HandledTags<Cases>;
|
|
106
106
|
}> | FailureOfReturn<CaseReturn<Cases>>>;
|
|
107
107
|
}
|
|
108
|
-
type SettledResult<Success, Failure extends ErrorValue> = Omit<Result<Success, Failure>, "catch" | typeof Symbol.iterator>;
|
|
108
|
+
type SettledResult<Success, Failure extends ErrorValue> = Omit<Result$1<Success, Failure>, "catch" | typeof Symbol.iterator>;
|
|
109
109
|
interface PendingResult {
|
|
110
110
|
readonly [PendingResultTypeId]: typeof PendingResultTypeId;
|
|
111
111
|
}
|
|
@@ -146,9 +146,9 @@ type CurriedQueryResultMatchers<Success, Failure extends ErrorValue, Output> = O
|
|
|
146
146
|
} : {
|
|
147
147
|
readonly internalError?: (error: InternalError<NoInfer<Failure>>) => Output;
|
|
148
148
|
});
|
|
149
|
-
declare const succeed: <Actual, Expected = Actual>(value: Actual & NoInfer<Expected>) => Result<Expected, never>;
|
|
150
|
-
declare const fail: <Actual extends ErrorValue, Expected extends ErrorValue = Actual>(error: Actual & NoInfer<Expected>) => Result<never, Expected>;
|
|
151
|
-
declare const tryResult: <Success, Yielded extends Effect.Effect<unknown, ErrorValue, never>>(body: () => Generator<Yielded, Success, never>) => Result<Success, [Yielded] extends [never] ? never : YieldFailure<Yielded>>;
|
|
149
|
+
declare const succeed: <Actual, Expected = Actual>(value: Actual & NoInfer<Expected>) => Result$1<Expected, never>;
|
|
150
|
+
declare const fail: <Actual extends ErrorValue, Expected extends ErrorValue = Actual>(error: Actual & NoInfer<Expected>) => Result$1<never, Expected>;
|
|
151
|
+
declare const tryResult: <Success, Yielded extends Effect.Effect<unknown, ErrorValue, never>>(body: () => Generator<Yielded, Success, never>) => Result$1<Success, [Yielded] extends [never] ? never : YieldFailure<Yielded>>;
|
|
152
152
|
interface Match {
|
|
153
153
|
<Success, Failure extends ErrorValue, Output>(result: SettledResult<Success, Failure>, matchers: ResultMatchers<Success, Failure, Output>): Output;
|
|
154
154
|
<Success, Failure extends ErrorValue, Output>(result: QueryResult<Success, Failure>, matchers: QueryResultMatchers<Success, Failure, Output>): Output;
|
|
@@ -156,7 +156,7 @@ interface Match {
|
|
|
156
156
|
<Success, Failure extends ErrorValue, Output>(matchers: CurriedResultMatchers<Success, Failure, Output>): (result: SettledResult<Success, Failure>) => Output;
|
|
157
157
|
}
|
|
158
158
|
declare const documentNotFound: <TableName extends string, Identifier extends string>(table: TableName, id: Identifier) => DocumentNotFoundValue<TableName, Identifier>;
|
|
159
|
-
declare const Result: {
|
|
159
|
+
declare const Result$1: {
|
|
160
160
|
fail: typeof fail;
|
|
161
161
|
match: Match;
|
|
162
162
|
succeed: typeof succeed;
|
|
@@ -169,5 +169,5 @@ declare const GeneratedId: Schema.brand<Schema.String, "ignotum/id"> & {
|
|
|
169
169
|
};
|
|
170
170
|
type GeneratedId = typeof GeneratedId.Type;
|
|
171
171
|
//#endregion
|
|
172
|
-
export { fileFormats as _, InternalServerError as a, Result as c, TransportObject as d, TransportValue as f, FileValue as g, FileMimeType as h, ErrorValue as i, SettledResult as l, FileMetadata as m, DocumentNotFoundValue as n, Match as o, FileFormat as p, ErrorBrand as r, QueryResult as s, GeneratedId as t, documentNotFound as u };
|
|
173
|
-
//# sourceMappingURL=id-Cs82tq9Q-
|
|
172
|
+
export { fileFormats as _, InternalServerError as a, Result$1 as c, TransportObject as d, TransportValue as f, FileValue as g, FileMimeType as h, ErrorValue as i, SettledResult as l, FileMetadata as m, DocumentNotFoundValue as n, Match as o, FileFormat as p, ErrorBrand as r, QueryResult as s, GeneratedId as t, documentNotFound as u };
|
|
173
|
+
//# sourceMappingURL=id-Cs82tq9Q-CK-maMgN.d.ts.map
|
|
@@ -1,32 +1,7 @@
|
|
|
1
|
-
import { _ as fileFormats, c as Result, g as FileValue, i as ErrorValue, n as DocumentNotFoundValue, p as FileFormat, r as ErrorBrand, t as GeneratedId } from "./id-Cs82tq9Q-
|
|
2
|
-
import { a as
|
|
3
|
-
import { Brand, Effect, Schema, Struct } from "effect";
|
|
4
|
-
//#region ../contracts/dist/
|
|
5
|
-
//#region src/schema/types.d.ts
|
|
6
|
-
/** A document identifier branded with the table it belongs to. */
|
|
7
|
-
type Id<TableName extends string> = GeneratedId & Brand.Brand<`ignotum/id/${TableName}`>;
|
|
8
|
-
declare const SchemaDefinitionTypeId: unique symbol;
|
|
9
|
-
interface SchemaDefinitionContract<Definition> {
|
|
10
|
-
readonly [SchemaDefinitionTypeId]: Definition;
|
|
11
|
-
}
|
|
12
|
-
type SchemaDefinitionOf<SchemaDefinition> = SchemaDefinition extends SchemaDefinitionContract<infer Definition> ? Definition : never;
|
|
13
|
-
interface TableDefinitionLike {
|
|
14
|
-
readonly fields: Schema.Struct.Fields;
|
|
15
|
-
}
|
|
16
|
-
interface TablesLike {
|
|
17
|
-
readonly [tableName: string]: TableDefinitionLike;
|
|
18
|
-
}
|
|
19
|
-
type TableNameOf$2<Definition extends TablesLike> = keyof Definition & string;
|
|
20
|
-
interface SystemFields<TableName extends string> {
|
|
21
|
-
readonly id: Id<TableName>;
|
|
22
|
-
readonly createdAt: Date;
|
|
23
|
-
readonly updatedAt: Date;
|
|
24
|
-
}
|
|
25
|
-
type DocumentFields<TableName extends string, Table extends TableDefinitionLike> = SystemFields<TableName> & Schema.Struct.Type<Table["fields"]>;
|
|
26
|
-
/** The complete document returned for a table, including Ignotum system fields. */
|
|
27
|
-
type Document<Definition extends TablesLike, TableName extends TableNameOf$2<Definition>> = { readonly [FieldName in keyof DocumentFields<TableName, Definition[TableName]>]: DocumentFields<TableName, Definition[TableName]>[FieldName]; };
|
|
28
|
-
//#endregion
|
|
29
|
-
//#region ../contracts/dist/schema/values.d.ts
|
|
1
|
+
import { _ as fileFormats, c as Result$1, g as FileValue, i as ErrorValue, n as DocumentNotFoundValue, p as FileFormat, r as ErrorBrand, t as GeneratedId } from "./id-Cs82tq9Q-CK-maMgN.js";
|
|
2
|
+
import { a as ValueDescriptor, i as DescriptorField, n as PaginationPage, o as ValueDescriptorCarrier, r as DescribedValue, s as ValueFields, t as PaginationOptions } from "./pagination-D-R9NR61-CpIoHFoI.js";
|
|
3
|
+
import { Brand, Effect, Redacted, Schema, Struct } from "effect";
|
|
4
|
+
//#region ../contracts/dist/values-YZGX4OrO.d.ts
|
|
30
5
|
//#region src/schema/values.d.ts
|
|
31
6
|
declare const IdTargetsTypeId: unique symbol;
|
|
32
7
|
declare const UnresolvedReferencesTypeId: unique symbol;
|
|
@@ -78,7 +53,7 @@ interface TableDefinition<Fields extends Schema.Struct.Fields, Indexes extends I
|
|
|
78
53
|
interface TableDefinitions {
|
|
79
54
|
readonly [tableName: string]: TableDefinition<Schema.Struct.Fields, IndexDefinitions>;
|
|
80
55
|
}
|
|
81
|
-
type TableNameOf$
|
|
56
|
+
type TableNameOf$2<Definition extends TableDefinitions> = keyof Definition & string;
|
|
82
57
|
type ReservedFieldName = "createdAt" | "id" | "updatedAt";
|
|
83
58
|
type ReservedErrorTagName = "InternalServerError";
|
|
84
59
|
declare const ReservedFieldTypeId: unique symbol;
|
|
@@ -123,6 +98,14 @@ declare const optional: <Value extends DescribedValue>(value: Value) => Preserve
|
|
|
123
98
|
declare const nullable: <Value extends DescribedValue>(value: Value) => PreserveValueMetadata<Schema.NullOr<Value>, Value>;
|
|
124
99
|
declare const record: <Value extends DescribedValue>(value: Value) => PreserveValueMetadata<Schema.$Record<Schema.String, Value>, Value>;
|
|
125
100
|
declare const union: <const Members extends ReadonlyArray<DescribedValue>>(...members: Members) => PreserveValueMetadata<Schema.Union<Members>, Members[number]>;
|
|
101
|
+
type Secret<Value> = Redacted.Redacted<Value>;
|
|
102
|
+
declare const Secret: {
|
|
103
|
+
readonly isSecret: (u: unknown) => u is Redacted.Redacted<unknown>;
|
|
104
|
+
readonly value: <T>(self: Redacted.Redacted<T>) => T;
|
|
105
|
+
};
|
|
106
|
+
type SecretDefinition<Value extends DescribedValue> = DescribedValue<Schema.RedactedFromValue<Value>>;
|
|
107
|
+
declare function secret(): SecretDefinition<ReturnType<typeof string>>;
|
|
108
|
+
declare function secret<Value extends DescribedValue>(value: Value): SecretDefinition<Value>;
|
|
126
109
|
declare const pagination: () => ObjectDefinition<{
|
|
127
110
|
readonly cursor: DescribedValue<Schema.NullOr<DescribedValue<Schema.brand<Schema.String, "ignotum/runtime/PaginationCursor">>> & Schema.Constraint>;
|
|
128
111
|
readonly pageSize: DescribedValue<Schema.brand<Schema.Int, "ignotum/runtime/PaginationPageSize">>;
|
|
@@ -152,18 +135,88 @@ declare const values: {
|
|
|
152
135
|
string: typeof string;
|
|
153
136
|
union: typeof union;
|
|
154
137
|
};
|
|
155
|
-
|
|
138
|
+
declare const environmentValues: {
|
|
139
|
+
array: typeof array;
|
|
140
|
+
boolean: typeof boolean;
|
|
141
|
+
date: typeof date;
|
|
142
|
+
integer: typeof integer;
|
|
143
|
+
literal: typeof literal;
|
|
144
|
+
literals: typeof literals;
|
|
145
|
+
never: typeof never;
|
|
146
|
+
null: typeof nullValue;
|
|
147
|
+
nullable: typeof nullable;
|
|
148
|
+
number: typeof number;
|
|
149
|
+
object: typeof object;
|
|
150
|
+
optional: typeof optional;
|
|
151
|
+
record: typeof record;
|
|
152
|
+
secret: typeof secret;
|
|
153
|
+
string: typeof string;
|
|
154
|
+
union: typeof union;
|
|
155
|
+
};
|
|
156
|
+
type EnvironmentValues = typeof environmentValues;
|
|
157
|
+
type DocumentDefinition<Definition extends TableDefinitions, TableName extends TableNameOf$2<Definition>> = ObjectDefinition<Struct.Assign<ResolvedFields<Definition[TableName]["fields"]>, {
|
|
156
158
|
readonly id: IdDefinition<TableName>;
|
|
157
159
|
readonly createdAt: typeof Schema.DateFromMillis;
|
|
158
160
|
readonly updatedAt: typeof Schema.DateFromMillis;
|
|
159
161
|
}>>;
|
|
160
162
|
type BoundValues<Definition extends TableDefinitions> = Omit<typeof values, "id"> & {
|
|
161
|
-
readonly doc: <const TableName extends TableNameOf$
|
|
162
|
-
readonly id: <const TableName extends TableNameOf$
|
|
163
|
+
readonly doc: <const TableName extends TableNameOf$2<Definition>>(tableName: TableName) => DocumentDefinition<Definition, TableName>;
|
|
164
|
+
readonly id: <const TableName extends TableNameOf$2<Definition>>(tableName: TableName) => IdDefinition<TableName>;
|
|
163
165
|
readonly page: typeof page;
|
|
164
166
|
readonly pagination: () => ReturnType<typeof pagination> & Schema.Schema<PaginationOptions>;
|
|
165
167
|
};
|
|
166
168
|
//#endregion
|
|
169
|
+
//#region ../contracts/dist/types-CNRRipRx.d.ts
|
|
170
|
+
//#region src/schema/environment.d.ts
|
|
171
|
+
declare const EnvironmentDefinitionTypeId: unique symbol;
|
|
172
|
+
declare const EnvironmentDecoderTypeId: unique symbol;
|
|
173
|
+
type EnvironmentFields = {
|
|
174
|
+
readonly [fieldName: PropertyKey]: DescribedValue<Schema.ConstraintDecoder<unknown, never>>;
|
|
175
|
+
};
|
|
176
|
+
interface DefinedEnv<Fields extends EnvironmentFields = EnvironmentFields> {
|
|
177
|
+
readonly _tag: "Environment";
|
|
178
|
+
readonly fields: Fields;
|
|
179
|
+
readonly descriptors: ReadonlyArray<DescriptorField>;
|
|
180
|
+
readonly schema: Schema.Struct<Fields>;
|
|
181
|
+
readonly [EnvironmentDefinitionTypeId]: Fields;
|
|
182
|
+
readonly [EnvironmentDecoderTypeId]: (raw: Readonly<Record<string, string>>) => Effect.Effect<Readonly<EnvironmentType<DefinedEnv<Fields>>>, EnvironmentValueInvalid>;
|
|
183
|
+
}
|
|
184
|
+
interface EnvironmentAuthoring {
|
|
185
|
+
readonly values: EnvironmentValues;
|
|
186
|
+
}
|
|
187
|
+
type EnvironmentType<Environment extends DefinedEnv> = Schema.Struct.Type<Environment[typeof EnvironmentDefinitionTypeId]>;
|
|
188
|
+
declare const EnvironmentValueInvalid_base: Schema.Class<EnvironmentValueInvalid, Schema.TaggedStruct<"EnvironmentValueInvalid", {
|
|
189
|
+
readonly key: Schema.optional<Schema.String>;
|
|
190
|
+
readonly message: Schema.String;
|
|
191
|
+
}>, import("effect/Cause").YieldableError>;
|
|
192
|
+
declare class EnvironmentValueInvalid extends EnvironmentValueInvalid_base {}
|
|
193
|
+
declare const defineEnv: <const Fields extends EnvironmentFields>(define: (authoring: EnvironmentAuthoring) => Fields) => DefinedEnv<Fields>;
|
|
194
|
+
declare const emptyEnv: DefinedEnv<{}>;
|
|
195
|
+
//#endregion
|
|
196
|
+
//#region src/schema/types.d.ts
|
|
197
|
+
/** A document identifier branded with the table it belongs to. */
|
|
198
|
+
type Id<TableName extends string> = GeneratedId & Brand.Brand<`ignotum/id/${TableName}`>;
|
|
199
|
+
declare const SchemaDefinitionTypeId: unique symbol;
|
|
200
|
+
interface SchemaDefinitionContract<Definition> {
|
|
201
|
+
readonly [SchemaDefinitionTypeId]: Definition;
|
|
202
|
+
}
|
|
203
|
+
type SchemaDefinitionOf<SchemaDefinition> = SchemaDefinition extends SchemaDefinitionContract<infer Definition> ? Definition : never;
|
|
204
|
+
interface TableDefinitionLike {
|
|
205
|
+
readonly fields: Schema.Struct.Fields;
|
|
206
|
+
}
|
|
207
|
+
interface TablesLike {
|
|
208
|
+
readonly [tableName: string]: TableDefinitionLike;
|
|
209
|
+
}
|
|
210
|
+
type TableNameOf$1<Definition extends TablesLike> = keyof Definition & string;
|
|
211
|
+
interface SystemFields<TableName extends string> {
|
|
212
|
+
readonly id: Id<TableName>;
|
|
213
|
+
readonly createdAt: Date;
|
|
214
|
+
readonly updatedAt: Date;
|
|
215
|
+
}
|
|
216
|
+
type DocumentFields<TableName extends string, Table extends TableDefinitionLike> = SystemFields<TableName> & Schema.Struct.Type<Table["fields"]>;
|
|
217
|
+
/** The complete document returned for a table, including Ignotum system fields. */
|
|
218
|
+
type Document<Definition extends TablesLike, TableName extends TableNameOf$1<Definition>> = { readonly [FieldName in keyof DocumentFields<TableName, Definition[TableName]>]: DocumentFields<TableName, Definition[TableName]>[FieldName]; };
|
|
219
|
+
//#endregion
|
|
167
220
|
//#region ../contracts/dist/schema/index.d.ts
|
|
168
221
|
//#region src/schema/definition.d.ts
|
|
169
222
|
type AnyTableDefinition = TableDefinition<Schema.Struct.Fields, IndexDefinitions>;
|
|
@@ -235,11 +288,11 @@ interface IndexRangeBuilder<Definition extends Tables, Name extends TableNameOf<
|
|
|
235
288
|
lte<FieldName extends Fields[0]>(field: FieldName, value: IndexFieldValue<Definition, Name, FieldName>): IndexUpperBound<Definition, Name, FieldName>;
|
|
236
289
|
}
|
|
237
290
|
interface OrderedDatabaseQuery<Definition extends Tables, Name extends TableNameOf<Definition>> {
|
|
238
|
-
collect(): Result<ReadonlyArray<Document<Definition, Name>>, never>;
|
|
239
|
-
take(count: number): Result<ReadonlyArray<Document<Definition, Name>>, never>;
|
|
240
|
-
first(): Result<Document<Definition, Name> | undefined, never>;
|
|
241
|
-
unique(): Result<Document<Definition, Name> | undefined, never>;
|
|
242
|
-
paginate(options: PaginationOptions): Result<PaginationPage<Document<Definition, Name>>, never>;
|
|
291
|
+
collect(): Result$1<ReadonlyArray<Document<Definition, Name>>, never>;
|
|
292
|
+
take(count: number): Result$1<ReadonlyArray<Document<Definition, Name>>, never>;
|
|
293
|
+
first(): Result$1<Document<Definition, Name> | undefined, never>;
|
|
294
|
+
unique(): Result$1<Document<Definition, Name> | undefined, never>;
|
|
295
|
+
paginate(options: PaginationOptions): Result$1<PaginationPage<Document<Definition, Name>>, never>;
|
|
243
296
|
}
|
|
244
297
|
interface SelectableDatabaseQuery<Definition extends Tables, Name extends TableNameOf<Definition>> extends OrderedDatabaseQuery<Definition, Name> {
|
|
245
298
|
order(direction: "asc" | "desc"): OrderedDatabaseQuery<Definition, Name>;
|
|
@@ -249,28 +302,30 @@ interface DatabaseQuery<Definition extends Tables, Name extends TableNameOf<Defi
|
|
|
249
302
|
}
|
|
250
303
|
interface DatabaseReader<Definition extends Tables> {
|
|
251
304
|
query<const Name extends TableNameOf<Definition>>(name: Name): DatabaseQuery<Definition, Name>;
|
|
252
|
-
find<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>): Result<Document<Definition, Name> | undefined, never>;
|
|
253
|
-
get<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>): Result<Document<Definition, Name>, DocumentNotFound<Name>>;
|
|
305
|
+
find<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>): Result$1<Document<Definition, Name> | undefined, never>;
|
|
306
|
+
get<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>): Result$1<Document<Definition, Name>, DocumentNotFound<Name>>;
|
|
254
307
|
}
|
|
255
308
|
interface DatabaseWriter<Definition extends Tables> extends DatabaseReader<Definition> {
|
|
256
|
-
delete<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>): Result<void, DocumentNotFound<Name>>;
|
|
257
|
-
insert<const Name extends TableNameOf<Definition>>(name: Name, value: InsertOf<Definition[NoInfer<Name>]>): Result<Id<Name>, never>;
|
|
258
|
-
patch<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>, value: PatchOf<Definition[NoInfer<Name>]>): Result<void, DocumentNotFound<Name>>;
|
|
259
|
-
replace<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>, value: InsertOf<Definition[NoInfer<Name>]>): Result<void, DocumentNotFound<Name>>;
|
|
309
|
+
delete<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>): Result$1<void, DocumentNotFound<Name>>;
|
|
310
|
+
insert<const Name extends TableNameOf<Definition>>(name: Name, value: InsertOf<Definition[NoInfer<Name>]>): Result$1<Id<Name>, never>;
|
|
311
|
+
patch<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>, value: PatchOf<Definition[NoInfer<Name>]>): Result$1<void, DocumentNotFound<Name>>;
|
|
312
|
+
replace<const Name extends TableNameOf<Definition>>(name: Name, id: Id<NoInfer<Name>>, value: InsertOf<Definition[NoInfer<Name>]>): Result$1<void, DocumentNotFound<Name>>;
|
|
260
313
|
}
|
|
261
|
-
interface QueryContext<Definition extends Tables> {
|
|
314
|
+
interface QueryContext<Definition extends Tables, Environment extends DefinedEnv = typeof emptyEnv> {
|
|
262
315
|
readonly db: DatabaseReader<Definition>;
|
|
316
|
+
readonly env: EnvironmentType<Environment>;
|
|
263
317
|
}
|
|
264
|
-
interface MutationContext<Definition extends Tables> {
|
|
318
|
+
interface MutationContext<Definition extends Tables, Environment extends DefinedEnv = typeof emptyEnv> {
|
|
265
319
|
readonly db: DatabaseWriter<Definition>;
|
|
320
|
+
readonly env: EnvironmentType<Environment>;
|
|
266
321
|
}
|
|
267
322
|
type FunctionKind = "Mutation" | "Query";
|
|
268
|
-
type HandlerContext<Kind extends FunctionKind, Definition extends Tables> = Kind extends "Query" ? QueryContext<Definition> : MutationContext<Definition>;
|
|
269
|
-
type Handler<Kind extends FunctionKind, Definition extends Tables, Args extends FunctionArgs, Success, Failure extends ErrorValue> = (ctx: HandlerContext<Kind, Definition>, args: ArgsOf<Args>) => Generator<Effect.Effect<unknown, Failure, never>, Success, never>;
|
|
323
|
+
type HandlerContext<Kind extends FunctionKind, Definition extends Tables, Environment extends DefinedEnv> = Kind extends "Query" ? QueryContext<Definition, Environment> : MutationContext<Definition, Environment>;
|
|
324
|
+
type Handler<Kind extends FunctionKind, Definition extends Tables, Environment extends DefinedEnv, Args extends FunctionArgs, Success, Failure extends ErrorValue> = (ctx: HandlerContext<Kind, Definition, Environment>, args: ArgsOf<Args>) => Generator<Effect.Effect<unknown, Failure, never>, Success, never>;
|
|
270
325
|
type HandlerFailure<HandlerType> = HandlerType extends ((...arguments_: infer _Arguments) => Generator<infer Yielded, unknown, never>) ? Yielded extends Effect.Effect<unknown, infer Failure extends ErrorValue, never> ? Failure : never : never;
|
|
271
|
-
type FunctionDefinition<Kind extends FunctionKind, Definition extends Tables, Args extends FunctionArgs, Returns extends FunctionReturns, Errors extends ErrorSchema | undefined, Failure extends ErrorValue> = {
|
|
326
|
+
type FunctionDefinition<Kind extends FunctionKind, Definition extends Tables, Environment extends DefinedEnv, Args extends FunctionArgs, Returns extends FunctionReturns, Errors extends ErrorSchema | undefined, Failure extends ErrorValue> = {
|
|
272
327
|
readonly _tag: Kind;
|
|
273
|
-
readonly handler: Handler<Kind, Definition, Args, ReturnOf<Returns>, Failure>;
|
|
328
|
+
readonly handler: Handler<Kind, Definition, Environment, Args, ReturnOf<Returns>, Failure>;
|
|
274
329
|
} & (Args extends Schema.Struct.Fields ? {
|
|
275
330
|
readonly args: Args;
|
|
276
331
|
} : {
|
|
@@ -284,8 +339,8 @@ type FunctionDefinition<Kind extends FunctionKind, Definition extends Tables, Ar
|
|
|
284
339
|
} : {
|
|
285
340
|
readonly errors?: never;
|
|
286
341
|
});
|
|
287
|
-
interface FunctionInput<Kind extends FunctionKind, Definition extends Tables, Args extends FunctionArgs, Success, Failure extends ErrorValue> {
|
|
288
|
-
readonly handler: Handler<Kind, Definition, Args, Success, Failure>;
|
|
342
|
+
interface FunctionInput<Kind extends FunctionKind, Definition extends Tables, Environment extends DefinedEnv, Args extends FunctionArgs, Success, Failure extends ErrorValue> {
|
|
343
|
+
readonly handler: Handler<Kind, Definition, Environment, Args, Success, Failure>;
|
|
289
344
|
}
|
|
290
345
|
type WithArgs<Kind extends FunctionKind, Args extends Schema.Struct.Fields> = {
|
|
291
346
|
readonly args: Args & ResolvedFunctionFields<NoInfer<Args>> & (Kind extends "Query" ? FileFree<Schema.Struct.Type<Args>, "query arguments"> : unknown);
|
|
@@ -299,44 +354,45 @@ type WithReturns<Kind extends FunctionKind, Returns extends TransportSchema> = {
|
|
|
299
354
|
interface WithoutReturns {
|
|
300
355
|
readonly returns?: never;
|
|
301
356
|
}
|
|
302
|
-
interface DefineFunction<Kind extends FunctionKind, Definition extends Tables> {
|
|
303
|
-
<const Args extends Schema.Struct.Fields, Returns extends TransportSchema, Errors extends ErrorSchema>(definition: FunctionInput<Kind, Definition, Args, Returns["Type"], Errors["Type"]> & WithArgs<Kind, Args> & WithReturns<Kind, Returns> & {
|
|
357
|
+
interface DefineFunction<Kind extends FunctionKind, Definition extends Tables, Environment extends DefinedEnv> {
|
|
358
|
+
<const Args extends Schema.Struct.Fields, Returns extends TransportSchema, Errors extends ErrorSchema>(definition: FunctionInput<Kind, Definition, Environment, Args, Returns["Type"], Errors["Type"]> & WithArgs<Kind, Args> & WithReturns<Kind, Returns> & {
|
|
304
359
|
readonly errors: Errors & ResolvedFunctionValue & FileFree<Errors["Type"], "errors">;
|
|
305
|
-
}): FunctionDefinition<Kind, Definition, Args, Returns, Errors, Errors["Type"]>;
|
|
306
|
-
<Returns extends TransportSchema, Errors extends ErrorSchema>(definition: FunctionInput<Kind, Definition, undefined, Returns["Type"], Errors["Type"]> & WithoutArgs & WithReturns<Kind, Returns> & {
|
|
360
|
+
}): FunctionDefinition<Kind, Definition, Environment, Args, Returns, Errors, Errors["Type"]>;
|
|
361
|
+
<Returns extends TransportSchema, Errors extends ErrorSchema>(definition: FunctionInput<Kind, Definition, Environment, undefined, Returns["Type"], Errors["Type"]> & WithoutArgs & WithReturns<Kind, Returns> & {
|
|
307
362
|
readonly errors: Errors & ResolvedFunctionValue & FileFree<Errors["Type"], "errors">;
|
|
308
|
-
}): FunctionDefinition<Kind, Definition, undefined, Returns, Errors, Errors["Type"]>;
|
|
309
|
-
<const Args extends Schema.Struct.Fields, Errors extends ErrorSchema>(definition: FunctionInput<Kind, Definition, Args, void, Errors["Type"]> & WithArgs<Kind, Args> & WithoutReturns & {
|
|
363
|
+
}): FunctionDefinition<Kind, Definition, Environment, undefined, Returns, Errors, Errors["Type"]>;
|
|
364
|
+
<const Args extends Schema.Struct.Fields, Errors extends ErrorSchema>(definition: FunctionInput<Kind, Definition, Environment, Args, void, Errors["Type"]> & WithArgs<Kind, Args> & WithoutReturns & {
|
|
310
365
|
readonly errors: Errors & ResolvedFunctionValue & FileFree<Errors["Type"], "errors">;
|
|
311
|
-
}): FunctionDefinition<Kind, Definition, Args, undefined, Errors, Errors["Type"]>;
|
|
312
|
-
<Errors extends ErrorSchema>(definition: FunctionInput<Kind, Definition, undefined, void, Errors["Type"]> & WithoutArgs & WithoutReturns & {
|
|
366
|
+
}): FunctionDefinition<Kind, Definition, Environment, Args, undefined, Errors, Errors["Type"]>;
|
|
367
|
+
<Errors extends ErrorSchema>(definition: FunctionInput<Kind, Definition, Environment, undefined, void, Errors["Type"]> & WithoutArgs & WithoutReturns & {
|
|
313
368
|
readonly errors: Errors & ResolvedFunctionValue & FileFree<Errors["Type"], "errors">;
|
|
314
|
-
}): FunctionDefinition<Kind, Definition, undefined, undefined, Errors, Errors["Type"]>;
|
|
315
|
-
<const Args extends Schema.Struct.Fields, Returns extends TransportSchema, HandlerType extends Handler<Kind, Definition, Args, Returns["Type"], ErrorValue> = Handler<Kind, Definition, Args, Returns["Type"], never>>(definition: WithArgs<Kind, Args> & WithReturns<Kind, Returns> & {
|
|
369
|
+
}): FunctionDefinition<Kind, Definition, Environment, undefined, undefined, Errors, Errors["Type"]>;
|
|
370
|
+
<const Args extends Schema.Struct.Fields, Returns extends TransportSchema, HandlerType extends Handler<Kind, Definition, Environment, Args, Returns["Type"], ErrorValue> = Handler<Kind, Definition, Environment, Args, Returns["Type"], never>>(definition: WithArgs<Kind, Args> & WithReturns<Kind, Returns> & {
|
|
316
371
|
readonly errors?: never;
|
|
317
372
|
readonly handler: HandlerType;
|
|
318
|
-
}): FunctionDefinition<Kind, Definition, Args, Returns, undefined, HandlerFailure<HandlerType>>;
|
|
319
|
-
<Returns extends TransportSchema, HandlerType extends Handler<Kind, Definition, undefined, Returns["Type"], ErrorValue> = Handler<Kind, Definition, undefined, Returns["Type"], never>>(definition: WithoutArgs & WithReturns<Kind, Returns> & {
|
|
373
|
+
}): FunctionDefinition<Kind, Definition, Environment, Args, Returns, undefined, HandlerFailure<HandlerType>>;
|
|
374
|
+
<Returns extends TransportSchema, HandlerType extends Handler<Kind, Definition, Environment, undefined, Returns["Type"], ErrorValue> = Handler<Kind, Definition, Environment, undefined, Returns["Type"], never>>(definition: WithoutArgs & WithReturns<Kind, Returns> & {
|
|
320
375
|
readonly errors?: never;
|
|
321
376
|
readonly handler: HandlerType;
|
|
322
|
-
}): FunctionDefinition<Kind, Definition, undefined, Returns, undefined, HandlerFailure<HandlerType>>;
|
|
323
|
-
<const Args extends Schema.Struct.Fields, HandlerType extends Handler<Kind, Definition, Args, void, ErrorValue> = Handler<Kind, Definition, Args, void, never>>(definition: WithArgs<Kind, Args> & WithoutReturns & {
|
|
377
|
+
}): FunctionDefinition<Kind, Definition, Environment, undefined, Returns, undefined, HandlerFailure<HandlerType>>;
|
|
378
|
+
<const Args extends Schema.Struct.Fields, HandlerType extends Handler<Kind, Definition, Environment, Args, void, ErrorValue> = Handler<Kind, Definition, Environment, Args, void, never>>(definition: WithArgs<Kind, Args> & WithoutReturns & {
|
|
324
379
|
readonly errors?: never;
|
|
325
380
|
readonly handler: HandlerType;
|
|
326
|
-
}): FunctionDefinition<Kind, Definition, Args, undefined, undefined, HandlerFailure<HandlerType>>;
|
|
327
|
-
<HandlerType extends Handler<Kind, Definition, undefined, void, ErrorValue> = Handler<Kind, Definition, undefined, void, never>>(definition: WithoutArgs & WithoutReturns & {
|
|
381
|
+
}): FunctionDefinition<Kind, Definition, Environment, Args, undefined, undefined, HandlerFailure<HandlerType>>;
|
|
382
|
+
<HandlerType extends Handler<Kind, Definition, Environment, undefined, void, ErrorValue> = Handler<Kind, Definition, Environment, undefined, void, never>>(definition: WithoutArgs & WithoutReturns & {
|
|
328
383
|
readonly errors?: never;
|
|
329
384
|
readonly handler: HandlerType;
|
|
330
|
-
}): FunctionDefinition<Kind, Definition, undefined, undefined, undefined, HandlerFailure<HandlerType>>;
|
|
385
|
+
}): FunctionDefinition<Kind, Definition, Environment, undefined, undefined, undefined, HandlerFailure<HandlerType>>;
|
|
331
386
|
}
|
|
332
|
-
interface FunctionBuilders<Definition extends Tables> {
|
|
333
|
-
readonly query: DefineFunction<"Query", Definition>;
|
|
334
|
-
readonly mutation: DefineFunction<"Mutation", Definition>;
|
|
387
|
+
interface FunctionBuilders<Definition extends Tables, Environment extends DefinedEnv = typeof emptyEnv> {
|
|
388
|
+
readonly query: DefineFunction<"Query", Definition, Environment>;
|
|
389
|
+
readonly mutation: DefineFunction<"Mutation", Definition, Environment>;
|
|
335
390
|
}
|
|
336
|
-
interface SchemaBindings<Definition extends Tables> extends FunctionBuilders<Definition> {
|
|
391
|
+
interface SchemaBindings<Definition extends Tables, Environment extends DefinedEnv = typeof emptyEnv> extends FunctionBuilders<Definition, Environment> {
|
|
337
392
|
readonly values: BoundValues<Definition>;
|
|
338
393
|
}
|
|
339
|
-
declare
|
|
394
|
+
declare function bindSchema<const Definition extends Tables>(schema: DefinedSchema<Definition>): SchemaBindings<Definition, typeof emptyEnv>;
|
|
395
|
+
declare function bindSchema<const Definition extends Tables, const Environment extends DefinedEnv>(schema: DefinedSchema<Definition>, environment: Environment): SchemaBindings<Definition, Environment>;
|
|
340
396
|
//#endregion
|
|
341
|
-
export {
|
|
342
|
-
//# sourceMappingURL=index-
|
|
397
|
+
export { DefinedEnv as a, Id as c, defineEnv as d, Secret as f, defineSchema as i, SchemaDefinitionOf as l, SchemaAuthoring as n, Document as o, bindSchema as r, EnvironmentAuthoring as s, DefinedSchema as t, SchemaDefinitionTypeId as u };
|
|
398
|
+
//# sourceMappingURL=index-CrWg4Z0y.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as functionPathOf, i as createApi, n as FunctionReference, r as MutationInput, t as Api } from "../api-
|
|
1
|
+
import { a as functionPathOf, i as createApi, n as FunctionReference, r as MutationInput, t as Api } from "../api-5XSrIeqW.js";
|
|
2
2
|
export { Api, FunctionReference, MutationInput, createApi, functionPathOf };
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { c as Result, d as TransportObject, f as TransportValue, i as ErrorValue, u as documentNotFound } from "../id-Cs82tq9Q-
|
|
2
|
-
import "../
|
|
3
|
-
import
|
|
4
|
-
import "../pagination-
|
|
1
|
+
import { c as Result$1, d as TransportObject, f as TransportValue, i as ErrorValue, u as documentNotFound } from "../id-Cs82tq9Q-CK-maMgN.js";
|
|
2
|
+
import "../result-DIjKM-p4.js";
|
|
3
|
+
import "../sync-avN7NkcU.js";
|
|
4
|
+
import { n as PaginationPage, t as PaginationOptions } from "../pagination-D-R9NR61-CpIoHFoI.js";
|
|
5
|
+
import "../pagination-CX5IPbEi.js";
|
|
5
6
|
import { Effect, Schema } from "effect";
|
|
6
7
|
//#region ../contracts/dist/runtime/functions.d.ts
|
|
7
8
|
//#region src/runtime/functions.d.ts
|
|
8
9
|
declare const FunctionKind: Schema.Literals<readonly ["Mutation", "Query"]>;
|
|
9
10
|
type FunctionKind = typeof FunctionKind.Type;
|
|
10
11
|
//#endregion
|
|
11
|
-
//#region ../runtime/dist/guest-
|
|
12
|
+
//#region ../runtime/dist/guest-ByvJ3n1R.d.ts
|
|
12
13
|
//#region src/guest.d.ts
|
|
13
14
|
interface GuestFunctionDefinition {
|
|
14
15
|
readonly _tag: FunctionKind;
|
|
@@ -32,22 +33,22 @@ interface GuestQueryRange {
|
|
|
32
33
|
interface GuestDatabaseQuery {
|
|
33
34
|
readonly index: (name: string, range?: (builder: GuestQueryRange) => GuestQueryRange) => GuestDatabaseQuery;
|
|
34
35
|
readonly order: (direction: "asc" | "desc") => GuestDatabaseQuery;
|
|
35
|
-
readonly collect: () => Result<ReadonlyArray<TransportObject>, never>;
|
|
36
|
-
readonly take: (count: number) => Result<ReadonlyArray<TransportObject>, never>;
|
|
37
|
-
readonly first: () => Result<TransportObject | undefined, never>;
|
|
38
|
-
readonly unique: () => Result<TransportObject | undefined, never>;
|
|
39
|
-
readonly paginate: (options: PaginationOptions) => Result<PaginationPage<TransportObject>, never>;
|
|
36
|
+
readonly collect: () => Result$1<ReadonlyArray<TransportObject>, never>;
|
|
37
|
+
readonly take: (count: number) => Result$1<ReadonlyArray<TransportObject>, never>;
|
|
38
|
+
readonly first: () => Result$1<TransportObject | undefined, never>;
|
|
39
|
+
readonly unique: () => Result$1<TransportObject | undefined, never>;
|
|
40
|
+
readonly paginate: (options: PaginationOptions) => Result$1<PaginationPage<TransportObject>, never>;
|
|
40
41
|
}
|
|
41
42
|
interface GuestDatabaseReader {
|
|
42
|
-
readonly find: (table: string, id: string) => Result<TransportObject | undefined, never>;
|
|
43
|
-
readonly get: (table: string, id: string) => Result<TransportObject, ReturnType<typeof documentNotFound>>;
|
|
43
|
+
readonly find: (table: string, id: string) => Result$1<TransportObject | undefined, never>;
|
|
44
|
+
readonly get: (table: string, id: string) => Result$1<TransportObject, ReturnType<typeof documentNotFound>>;
|
|
44
45
|
readonly query: (table: string) => GuestDatabaseQuery;
|
|
45
46
|
}
|
|
46
47
|
interface GuestDatabaseWriter extends GuestDatabaseReader {
|
|
47
|
-
readonly delete: (table: string, id: string) => Result<void, ReturnType<typeof documentNotFound>>;
|
|
48
|
-
readonly insert: (table: string, value: TransportObject) => Result<string, never>;
|
|
49
|
-
readonly patch: (table: string, id: string, value: TransportObject) => Result<void, ReturnType<typeof documentNotFound>>;
|
|
50
|
-
readonly replace: (table: string, id: string, value: TransportObject) => Result<void, ReturnType<typeof documentNotFound>>;
|
|
48
|
+
readonly delete: (table: string, id: string) => Result$1<void, ReturnType<typeof documentNotFound>>;
|
|
49
|
+
readonly insert: (table: string, value: TransportObject) => Result$1<string, never>;
|
|
50
|
+
readonly patch: (table: string, id: string, value: TransportObject) => Result$1<void, ReturnType<typeof documentNotFound>>;
|
|
51
|
+
readonly replace: (table: string, id: string, value: TransportObject) => Result$1<void, ReturnType<typeof documentNotFound>>;
|
|
51
52
|
}
|
|
52
53
|
interface GuestQueryContext {
|
|
53
54
|
readonly db: GuestDatabaseReader;
|
|
@@ -55,7 +56,7 @@ interface GuestQueryContext {
|
|
|
55
56
|
interface GuestMutationContext {
|
|
56
57
|
readonly db: GuestDatabaseWriter;
|
|
57
58
|
}
|
|
58
|
-
declare const invoke: (definition: GuestFunctionDefinition, encodedArgs: Schema.Json, call: GuestHostCall) => Promise<string>;
|
|
59
|
+
declare const invoke: (definition: GuestFunctionDefinition, encodedArgs: Schema.Json, call: GuestHostCall, rawEnvironment?: Readonly<Record<string, string>>) => Promise<string>;
|
|
59
60
|
//#endregion
|
|
60
61
|
export { invoke };
|
|
61
62
|
//# sourceMappingURL=host.d.ts.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { g as runtimeFileOccurrencesOf, y as GeneratedId } from "../file-C1abuMgd.js";
|
|
2
|
-
import { _ as
|
|
3
|
-
import {
|
|
2
|
+
import { _ as resultFromEffect, b as datePathsOfObject, d as ErrorValueSchema, o as PaginationCursor, p as documentNotFound, s as PaginationPageSize, v as TransportObjectTypeSchema, y as datePathsOf } from "../descriptor-XzDX2JDw-j3O6YHgW.js";
|
|
3
|
+
import { c as getFunctionSchema, o as emptyEnv, r as decodeDefinedEnvironment, s as getFunctionEnvironment, t as SchemaDefinitionTypeId } from "../schema-B9XxyRO8.js";
|
|
4
4
|
import { Effect, Predicate, Schema } from "effect";
|
|
5
5
|
//#region ../contracts/dist/runtime/host.js
|
|
6
6
|
const HostDocument = Schema.Struct({
|
|
@@ -149,7 +149,7 @@ const documentCodec = (schema, table) => guestCodec(Schema.Struct({
|
|
|
149
149
|
createdAt: Schema.DateFromMillis,
|
|
150
150
|
updatedAt: Schema.DateFromMillis
|
|
151
151
|
}));
|
|
152
|
-
const decodeDocument = (schema, table, document) => Schema.decodeUnknownSync(
|
|
152
|
+
const decodeDocument = (schema, table, document) => Schema.decodeUnknownSync(TransportObjectTypeSchema)(Schema.decodeSync(Schema.toCodecJson(documentCodec(schema, table)))({
|
|
153
153
|
...document.fields,
|
|
154
154
|
id: document.id,
|
|
155
155
|
createdAt: document.createdAt,
|
|
@@ -378,9 +378,11 @@ const encodeFailure = Effect.fn("Guest.encodeFailure")(function* (definition, er
|
|
|
378
378
|
dates
|
|
379
379
|
};
|
|
380
380
|
});
|
|
381
|
-
const runGuest = Effect.fn("Guest.invoke")(function* (definition, encodedArgs, call) {
|
|
381
|
+
const runGuest = Effect.fn("Guest.invoke")(function* (definition, encodedArgs, call, rawEnvironment) {
|
|
382
382
|
const schema = getFunctionSchema(definition);
|
|
383
383
|
if (schema === void 0) return yield* Effect.die("The function has no bound schema.");
|
|
384
|
+
const environmentDefinition = getFunctionEnvironment(definition) ?? emptyEnv;
|
|
385
|
+
const environment = yield* decodeDefinedEnvironment(environmentDefinition, rawEnvironment).pipe(Effect.mapError(() => /* @__PURE__ */ new Error("The deployment environment is invalid.")));
|
|
384
386
|
const decodedArgs = yield* Schema.decodeEffect(Schema.toCodecJson(guestCodec(Schema.Struct(definition.args ?? {}))))(encodedArgs).pipe(Effect.match({
|
|
385
387
|
onFailure: () => ({ valid: false }),
|
|
386
388
|
onSuccess: (value) => ({
|
|
@@ -394,13 +396,16 @@ const runGuest = Effect.fn("Guest.invoke")(function* (definition, encodedArgs, c
|
|
|
394
396
|
message: "The invocation arguments do not match the function definition."
|
|
395
397
|
};
|
|
396
398
|
const args = yield* Schema.decodeUnknownEffect(Schema.ObjectKeyword)(decodedArgs.value);
|
|
397
|
-
const context = Object.freeze({
|
|
399
|
+
const context = Object.freeze({
|
|
400
|
+
db: definition._tag === "Query" ? makeReader(schema, call) : makeWriter(schema, call),
|
|
401
|
+
env: environment
|
|
402
|
+
});
|
|
398
403
|
return yield* Effect.gen(() => definition.handler(context, args)).pipe(Effect.matchEffect({
|
|
399
404
|
onFailure: (error) => encodeFailure(definition, error),
|
|
400
405
|
onSuccess: (value) => encodeSuccess(definition, value)
|
|
401
406
|
}));
|
|
402
407
|
});
|
|
403
|
-
const invoke = (definition, encodedArgs, call) => Effect.runPromise(runGuest(definition, encodedArgs, call)).then((result) => Schema.encodeSync(Schema.fromJsonString(Schema.Json))(result));
|
|
408
|
+
const invoke = (definition, encodedArgs, call, rawEnvironment = {}) => Effect.runPromise(runGuest(definition, encodedArgs, call, rawEnvironment)).then((result) => Schema.encodeSync(Schema.fromJsonString(Schema.Json))(result));
|
|
404
409
|
//#endregion
|
|
405
410
|
export { invoke };
|
|
406
411
|
|