@happyvertical/smrt-cli 0.57.37 → 0.57.39
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/dist/{AuditLogCollection-BBbvr8Qc-BaxJYBuK.js → AuditLogCollection-BBbvr8Qc-C0y3dejr.js} +1 -1
- package/dist/{OidcIdentity-MVVO3MfG-DMmkDwKt.js → OidcIdentity-COeMidoC-RnoC3a6R.js} +5 -5
- package/dist/{OidcIdentityCollection-s4mp3n62-BDTHgQQt.js → OidcIdentityCollection-D4DIZv0K-glNIGyfG.js} +4 -4
- package/dist/{PasswordCredentialService-DA2Y6H2X-BbB7uowA.js → PasswordCredentialService-bedKxkaa-5sB-LtBc.js} +30 -28
- package/dist/{ProfileAssetCollection-BuVAdOiv-lkhdAlDx.js → ProfileAssetCollection-D5-tG9Mm-BJq4XZnr.js} +6 -6
- package/dist/{ProfileCollection-CMS9dFc0-DjuUyO1a.js → ProfileCollection-CmRaiE9U-Bz_8He8o.js} +22 -22
- package/dist/{ProfileLinkCollection-ChK9iEBp-DdKp81WQ.js → ProfileLinkCollection-pvPTsysg-LvwctzB0.js} +5 -5
- package/dist/{ProfileMetadataCollection-CAgJyjze-B8lzwwGO.js → ProfileMetadataCollection-CAgJyjze-CbztbUOv.js} +1 -1
- package/dist/{ProfileMetafieldCollection-19ae6Lpf-cH_qeSu_.js → ProfileMetafieldCollection-19ae6Lpf-C9ITFrCB.js} +1 -1
- package/dist/{ProfileRelationshipCollection-BFSlTQ7J-CeorSfVz.js → ProfileRelationshipCollection-BFSlTQ7J-Cn6YYLsS.js} +1 -1
- package/dist/{ProfileTypeCollection-B7m698Bl-Dfp1YzXi.js → ProfileTypeCollection-BRLK8cHS-DYTDj03n.js} +5 -5
- package/dist/{apply-D8dV3HUh.js → apply-C-lZnBtC.js} +2 -0
- package/dist/cli-generator.d.ts +5 -0
- package/dist/cli-generator.d.ts.map +1 -1
- package/dist/commands/db-diff.d.ts.map +1 -1
- package/dist/commands/db-migrate-actions.d.ts +4 -0
- package/dist/commands/db-migrate-actions.d.ts.map +1 -1
- package/dist/commands/kitchen/apply.d.ts +2 -0
- package/dist/commands/kitchen/apply.d.ts.map +1 -1
- package/dist/commands/utilities.d.ts.map +1 -1
- package/dist/{commands-uveaWifl.js → commands-CX6k0tWj.js} +20 -9
- package/dist/{dist-ByULuJzU.js → dist-BUqQudaA.js} +24 -15
- package/dist/{dist-Ba-oLNvh.js → dist-BlKhaiPX.js} +3 -3
- package/dist/{dist-Cq2fPPuf.js → dist-D4feFBqw.js} +5 -5
- package/dist/{dist-8pqb-NUd.js → dist-DZViwHbI.js} +10 -10
- package/dist/index.js +31 -12
- package/dist/{oidcProvisioningPrimitives-Dl9qIcYS-CTF3hQeX.js → oidcProvisioningPrimitives-KpIiLmG4-4hAwGsZT.js} +6 -6
- package/dist/{operator-BECPOEBe.js → operator-BhTvp0Ap.js} +2 -2
- package/dist/{resolveIdentity-CR5p_g7K-DtKbI5rI.js → resolveIdentity-j2WFuKDT-CUKGgK2U.js} +17 -17
- package/dist/{server-DEBTDsmH.js → server-D4xtz9_R.js} +1 -1
- package/package.json +15 -15
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ObjectRegistry, SmrtCollection, SmrtObject, applyPendingDecoratorRegistrations, crossPackageRef, field, registerCompatibleFieldDecorator, smrt, toSnakeCase } from "@happyvertical/smrt-core";
|
|
1
|
+
import { ObjectRegistry, RuntimeError, SmrtCollection, SmrtObject, applyPendingDecoratorRegistrations, crossPackageRef, field, registerCompatibleFieldDecorator, smrt, toSnakeCase } from "@happyvertical/smrt-core";
|
|
2
2
|
import { createLogger } from "@happyvertical/logger";
|
|
3
3
|
import { getPackageConfig } from "@happyvertical/smrt-config";
|
|
4
4
|
import { AsyncLocalStorage } from "node:async_hooks";
|
|
@@ -283,7 +283,7 @@ async function runTenantHierarchyReadScope(scope, callback) {
|
|
|
283
283
|
createLogger({ level: "info" });
|
|
284
284
|
//#endregion
|
|
285
285
|
//#region ../tenancy/dist/index.js
|
|
286
|
-
ObjectRegistry.registerPackageManifest(JSON.parse(`{"version":"1.0.0","timestamp":0,"packageName":"@happyvertical/smrt-tenancy","packageVersion":"0.57.
|
|
286
|
+
ObjectRegistry.registerPackageManifest(JSON.parse(`{"version":"1.0.0","timestamp":0,"packageName":"@happyvertical/smrt-tenancy","packageVersion":"0.57.39","objects":{"@happyvertical/smrt-tenancy:BillingRelationship":{"name":"billingrelationship","className":"BillingRelationship","qualifiedName":"@happyvertical/smrt-tenancy:BillingRelationship","collection":"billingrelationships","filePath":"/home/runner/work/smrt/smrt/packages/tenancy/src/billing-relationship.ts","packageName":"@happyvertical/smrt-tenancy","fields":{"childTenantId":{"type":"crossPackageRef","required":true,"related":"@happyvertical/smrt-users:Tenant","_meta":{"required":true}},"resellerTenantId":{"type":"crossPackageRef","required":true,"related":"@happyvertical/smrt-users:Tenant","_meta":{"required":true}},"billingOwnerMode":{"type":"text","required":false,"default":"self","enum":["self","reseller"]}},"methods":{},"decoratorConfig":{"tableName":"_smrt_billing_relationships","conflictColumns":["child_tenant_id"],"api":false,"cli":false,"mcp":false},"extends":"SmrtObject","exportName":"BillingRelationship","collectionExportName":"BillingRelationshipCollection","validationRules":[{"field":"childTenantId","rule":"required","fieldType":"crossPackageRef"},{"field":"resellerTenantId","rule":"required","fieldType":"crossPackageRef"}],"schema":{"tableName":"_smrt_billing_relationships","ddl":"CREATE TABLE IF NOT EXISTS \\"_smrt_billing_relationships\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"child_tenant_id\\" UUID NOT NULL,\\n \\"reseller_tenant_id\\" UUID NOT NULL,\\n \\"billing_owner_mode\\" TEXT DEFAULT 'self'\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"child_tenant_id":{"type":"UUID","referenceKind":"crossPackageRef","notNull":true,"unique":false},"reseller_tenant_id":{"type":"UUID","referenceKind":"crossPackageRef","notNull":true,"unique":false},"billing_owner_mode":{"type":"TEXT","notNull":false,"unique":false,"default":"self"}},"indexes":[{"name":"_smrt_billing_relationships_child_tenant_id_idx","columns":["child_tenant_id"],"unique":true},{"name":"_smrt_billing_relationships_slug_context_idx","columns":["slug","context"]},{"name":"_smrt_billing_relationships_created_at_idx","columns":["created_at"]},{"name":"_smrt_billing_relationships_reseller_tenant_id_idx","columns":["reseller_tenant_id"]}],"version":"4d7f410a"},"importPath":"@happyvertical/smrt-tenancy"},"@happyvertical/smrt-tenancy:BillingRelationshipCollection":{"name":"billingrelationshipcollection","className":"BillingRelationshipCollection","qualifiedName":"@happyvertical/smrt-tenancy:BillingRelationshipCollection","collection":"billingrelationships","filePath":"/home/runner/work/smrt/smrt/packages/tenancy/src/billing-relationship.ts","packageName":"@happyvertical/smrt-tenancy","fields":{},"methods":{},"decoratorConfig":{"tableName":"_smrt_billing_relationships","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"BillingRelationship","exportName":"BillingRelationshipCollection","collectionExportName":"BillingRelationshipCollectionCollection","schema":{"tableName":"_smrt_billing_relationships","ddl":"CREATE TABLE IF NOT EXISTS \\"_smrt_billing_relationships\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"child_tenant_id\\" UUID NOT NULL,\\n \\"reseller_tenant_id\\" UUID NOT NULL,\\n \\"billing_owner_mode\\" TEXT DEFAULT 'self'\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"child_tenant_id":{"type":"UUID","referenceKind":"crossPackageRef","notNull":true,"unique":false},"reseller_tenant_id":{"type":"UUID","referenceKind":"crossPackageRef","notNull":true,"unique":false},"billing_owner_mode":{"type":"TEXT","notNull":false,"unique":false,"default":"self"}},"indexes":[{"name":"_smrt_billing_relationships_child_tenant_id_idx","columns":["child_tenant_id"],"unique":true},{"name":"_smrt_billing_relationships_slug_context_idx","columns":["slug","context"]},{"name":"_smrt_billing_relationships_created_at_idx","columns":["created_at"]},{"name":"_smrt_billing_relationships_reseller_tenant_id_idx","columns":["reseller_tenant_id"]}],"version":"4d7f410a"},"importPath":"@happyvertical/smrt-tenancy"}},"moduleType":"smrt","smrtDependencies":["@happyvertical/smrt-core"],"browser":{"status":"server-only","issues":["#3624"],"reason":"node:async_hooks"},"stampsConstructors":true}`));
|
|
287
287
|
var __defProp$2 = Object.defineProperty;
|
|
288
288
|
var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
|
|
289
289
|
var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$2(obj, key, {
|
|
@@ -398,7 +398,7 @@ var __exportAll = (all, no_symbols) => {
|
|
|
398
398
|
if (!no_symbols) __defProp$1(target, Symbol.toStringTag, { value: "Module" });
|
|
399
399
|
return target;
|
|
400
400
|
};
|
|
401
|
-
ObjectRegistry.registerPackageManifest(JSON.parse(`{"version":"1.0.0","timestamp":0,"packageName":"@happyvertical/smrt-prompts","packageVersion":"0.57.
|
|
401
|
+
ObjectRegistry.registerPackageManifest(JSON.parse(`{"version":"1.0.0","timestamp":0,"packageName":"@happyvertical/smrt-prompts","packageVersion":"0.57.39","objects":{"@happyvertical/smrt-prompts:PromptOverrideCollection":{"name":"promptoverridecollection","className":"PromptOverrideCollection","qualifiedName":"@happyvertical/smrt-prompts:PromptOverrideCollection","collection":"promptoverrides","filePath":"/home/runner/work/smrt/smrt/packages/prompts/src/collections/PromptOverrideCollection.ts","packageName":"@happyvertical/smrt-prompts","fields":{},"methods":{"getAppOverride":{"name":"getAppOverride","async":true,"parameters":[{"name":"key","type":"string","optional":false},{"name":"options","type":"object","optional":true,"memberTypes":["string"]}],"returnType":"Promise<PromptOverride | null>","isStatic":false,"isPublic":true},"getTenantOverride":{"name":"getTenantOverride","async":true,"parameters":[{"name":"key","type":"string","optional":false},{"name":"tenantId","type":"string","optional":false},{"name":"options","type":"object","optional":true,"memberTypes":["string"]}],"returnType":"Promise<PromptOverride | null>","isStatic":false,"isPublic":true},"getResolutionLayers":{"name":"getResolutionLayers","async":true,"parameters":[{"name":"key","type":"string","optional":false},{"name":"tenantId","type":"string | null","optional":true,"unionBranches":[{"type":"string"},{"type":"null"}]},{"name":"options","type":"object","optional":true,"memberTypes":["string"]}],"returnType":"Promise<object>","isStatic":false,"isPublic":true},"getOverrideMapForKeys":{"name":"getOverrideMapForKeys","async":true,"parameters":[{"name":"keys","type":"string[]","optional":false},{"name":"scopeType","type":"PromptOverrideScopeType","optional":false},{"name":"scopeId","type":"string","optional":false}],"returnType":"Promise<Map<string, PromptOverride>>","isStatic":false,"isPublic":true},"findByScope":{"name":"findByScope","async":true,"parameters":[{"name":"key","type":"string","optional":false},{"name":"scopeType","type":"PromptOverrideScopeType","optional":false},{"name":"scopeId","type":"string","optional":false}],"returnType":"Promise<PromptOverride | null>","isStatic":false,"isPublic":true},"setTemplateOverride":{"name":"setTemplateOverride","async":true,"parameters":[{"name":"key","type":"string","optional":false},{"name":"scopeType","type":"PromptOverrideScopeType","optional":false},{"name":"scopeId","type":"string","optional":false},{"name":"template","type":"string | null","optional":false,"unionBranches":[{"type":"string"},{"type":"null"}]}],"returnType":"Promise<PromptOverride>","isStatic":false,"isPublic":true},"removeOverride":{"name":"removeOverride","async":true,"parameters":[{"name":"key","type":"string","optional":false},{"name":"scopeType","type":"PromptOverrideScopeType","optional":false},{"name":"scopeId","type":"string","optional":false}],"returnType":"Promise<boolean>","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableName":"_smrt_prompt_overrides","api":false,"mcp":false,"cli":false},"extends":"SmrtCollection","extendsTypeArg":"PromptOverride","exportName":"PromptOverrideCollection","collectionExportName":"PromptOverrideCollectionCollection","schema":{"tableName":"_smrt_prompt_overrides","ddl":"CREATE TABLE IF NOT EXISTS \\"_smrt_prompt_overrides\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"key\\" TEXT NOT NULL DEFAULT '',\\n \\"tenant_id\\" UUID,\\n \\"template\\" TEXT,\\n \\"profile\\" TEXT,\\n \\"model\\" TEXT,\\n \\"params\\" TEXT\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"key":{"type":"TEXT","notNull":true,"unique":false,"default":""},"tenant_id":{"type":"UUID","notNull":false,"unique":false},"template":{"type":"TEXT","notNull":false,"unique":false},"profile":{"type":"TEXT","notNull":false,"unique":false},"model":{"type":"TEXT","notNull":false,"unique":false},"params":{"type":"TEXT","notNull":false,"unique":false}},"indexes":[{"name":"_smrt_prompt_overrides_key_context_idx","columns":["key","context"],"unique":true},{"name":"_smrt_prompt_overrides_slug_context_idx","columns":["slug","context"]},{"name":"_smrt_prompt_overrides_created_at_idx","columns":["created_at"]}],"version":"38f505e7"},"importPath":"@happyvertical/smrt-prompts"},"@happyvertical/smrt-prompts:PromptOverride":{"name":"promptoverride","className":"PromptOverride","qualifiedName":"@happyvertical/smrt-prompts:PromptOverride","collection":"promptoverrides","filePath":"/home/runner/work/smrt/smrt/packages/prompts/src/models/PromptOverride.ts","packageName":"@happyvertical/smrt-prompts","fields":{"key":{"type":"text","required":true,"default":"","_meta":{"required":true}},"tenantId":{"type":"text","required":false,"_meta":{"sqlType":"UUID","nullable":true}},"template":{"type":"text","required":false,"_meta":{"nullable":true}},"profile":{"type":"text","required":false,"_meta":{"nullable":true}},"model":{"type":"text","required":false,"_meta":{"nullable":true}},"params":{"type":"text","required":false,"_meta":{"nullable":true}}},"methods":{"getParams":{"name":"getParams","async":false,"parameters":[],"returnType":"PromptParams","isStatic":false,"isPublic":true},"setParams":{"name":"setParams","async":false,"parameters":[{"name":"params","type":"PromptParams | null","optional":false,"unionBranches":[{"type":"PromptParams"},{"type":"null"}]}],"returnType":"void","isStatic":false,"isPublic":true},"toPromptLayer":{"name":"toPromptLayer","async":false,"parameters":[],"returnType":"PromptLayer","isStatic":false,"isPublic":true},"save":{"name":"save","async":true,"parameters":[{"name":"options","type":"SmrtSaveOptions","optional":true}],"returnType":"Promise<this>","isStatic":false,"isPublic":true},"delete":{"name":"delete","async":true,"parameters":[],"returnType":"Promise<void>","isStatic":false,"isPublic":true}},"decoratorConfig":{"tableName":"_smrt_prompt_overrides","conflictColumns":["key","context"],"api":false,"cli":false,"mcp":false},"extends":"SmrtObject","exportName":"PromptOverride","collectionExportName":"PromptOverrideCollection","validationRules":[{"field":"key","rule":"required","fieldType":"text"}],"schema":{"tableName":"_smrt_prompt_overrides","ddl":"CREATE TABLE IF NOT EXISTS \\"_smrt_prompt_overrides\\" (\\n \\"id\\" UUID PRIMARY KEY NOT NULL,\\n \\"slug\\" TEXT NOT NULL,\\n \\"context\\" TEXT NOT NULL DEFAULT '',\\n \\"created_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"updated_at\\" TIMESTAMP NOT NULL DEFAULT current_timestamp,\\n \\"key\\" TEXT NOT NULL DEFAULT '',\\n \\"tenant_id\\" UUID,\\n \\"template\\" TEXT,\\n \\"profile\\" TEXT,\\n \\"model\\" TEXT,\\n \\"params\\" TEXT\\n);","columns":{"id":{"type":"UUID","primaryKey":true,"referenceKind":"id","notNull":true},"slug":{"type":"TEXT","notNull":true},"context":{"type":"TEXT","notNull":true,"default":""},"created_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"updated_at":{"type":"TIMESTAMP","notNull":true,"default":"current_timestamp"},"key":{"type":"TEXT","notNull":true,"unique":false,"default":""},"tenant_id":{"type":"UUID","notNull":false,"unique":false},"template":{"type":"TEXT","notNull":false,"unique":false},"profile":{"type":"TEXT","notNull":false,"unique":false},"model":{"type":"TEXT","notNull":false,"unique":false},"params":{"type":"TEXT","notNull":false,"unique":false}},"indexes":[{"name":"_smrt_prompt_overrides_key_context_idx","columns":["key","context"],"unique":true},{"name":"_smrt_prompt_overrides_slug_context_idx","columns":["slug","context"]},{"name":"_smrt_prompt_overrides_created_at_idx","columns":["created_at"]}],"version":"38f505e7"},"importPath":"@happyvertical/smrt-prompts"}},"moduleType":"smrt","smrtDependencies":["@happyvertical/smrt-core","@happyvertical/smrt-tenancy"],"browser":{"status":"server-only","issues":["#3624"],"via":["@happyvertical/smrt-tenancy"]},"stampsConstructors":true}`));
|
|
402
402
|
var PROMPT_CACHE_TTL_MS = 3e4;
|
|
403
403
|
var promptCache = /* @__PURE__ */ new Map();
|
|
404
404
|
var cacheGenerations = /* @__PURE__ */ new Map();
|
|
@@ -753,31 +753,31 @@ var PromptOverride = class extends SmrtObject {
|
|
|
753
753
|
params: this.params === null ? null : this.getParams()
|
|
754
754
|
};
|
|
755
755
|
}
|
|
756
|
-
async save() {
|
|
756
|
+
async save(options) {
|
|
757
757
|
const previousIdentity = await this.getPersistedIdentity();
|
|
758
758
|
this.normalizeParamsForPersistence();
|
|
759
759
|
await this.validatePromptOverride();
|
|
760
760
|
this.context = this.tenantId ?? "__app__";
|
|
761
761
|
const identityChanged = previousIdentity && (previousIdentity.key !== this.key || previousIdentity.tenantId !== this.tenantId);
|
|
762
|
-
const result = identityChanged && previousIdentity ? await this.saveAfterIdentityChange() : await super.save();
|
|
762
|
+
const result = identityChanged && previousIdentity ? await this.saveAfterIdentityChange(options) : await super.save(options);
|
|
763
763
|
if (identityChanged && previousIdentity) invalidatePromptCache(previousIdentity.key, previousIdentity.tenantId, this.db);
|
|
764
764
|
invalidatePromptCache(this.key, this.tenantId, this.db);
|
|
765
765
|
return result;
|
|
766
766
|
}
|
|
767
|
-
async saveAfterIdentityChange() {
|
|
768
|
-
if (typeof this.db.beginTransaction === "function") return this.saveAfterIdentityChangeInTransaction();
|
|
769
|
-
return this.saveAfterIdentityChangeWithDeferredDelete();
|
|
767
|
+
async saveAfterIdentityChange(options) {
|
|
768
|
+
if (typeof this.db.beginTransaction === "function") return this.saveAfterIdentityChangeInTransaction(options);
|
|
769
|
+
return this.saveAfterIdentityChangeWithDeferredDelete(options);
|
|
770
770
|
}
|
|
771
|
-
async saveAfterIdentityChangeInTransaction() {
|
|
771
|
+
async saveAfterIdentityChangeInTransaction(options) {
|
|
772
772
|
const originalDb = this._db;
|
|
773
773
|
const originalOptionsDb = this.options.db;
|
|
774
774
|
const tx = await this.db.beginTransaction?.();
|
|
775
|
-
if (!tx) return this.saveAfterIdentityChangeWithDeferredDelete();
|
|
775
|
+
if (!tx) return this.saveAfterIdentityChangeWithDeferredDelete(options);
|
|
776
776
|
try {
|
|
777
777
|
this._db = tx;
|
|
778
778
|
this.options.db = tx;
|
|
779
|
-
await super.delete();
|
|
780
|
-
const result = await super.save();
|
|
779
|
+
await super.delete(options?.expectedUpdatedAt === void 0 ? void 0 : { expectedUpdatedAt: options.expectedUpdatedAt });
|
|
780
|
+
const result = await super.save(withoutRevisionGuard(options));
|
|
781
781
|
await tx.commit();
|
|
782
782
|
return result;
|
|
783
783
|
} catch (error) {
|
|
@@ -790,14 +790,18 @@ var PromptOverride = class extends SmrtObject {
|
|
|
790
790
|
this.options.db = originalOptionsDb;
|
|
791
791
|
}
|
|
792
792
|
}
|
|
793
|
-
async saveAfterIdentityChangeWithDeferredDelete() {
|
|
793
|
+
async saveAfterIdentityChangeWithDeferredDelete(options) {
|
|
794
794
|
const previousId = this.id;
|
|
795
|
-
if (!previousId) return super.save();
|
|
795
|
+
if (!previousId) return super.save(options);
|
|
796
|
+
if (options?.expectedUpdatedAt !== void 0) throw new RuntimeError(`${this.constructor.name} identity changes honour expectedUpdatedAt only inside a transaction`, "RUNTIME_REVISION_GUARD_REQUIRES_TRANSACTION", {
|
|
797
|
+
className: this.constructor.name,
|
|
798
|
+
id: previousId
|
|
799
|
+
});
|
|
796
800
|
const replacementId = crypto.randomUUID();
|
|
797
801
|
let replacementSaved = false;
|
|
798
802
|
this.id = replacementId;
|
|
799
803
|
try {
|
|
800
|
-
const result = await super.save();
|
|
804
|
+
const result = await super.save(withoutRevisionGuard(options));
|
|
801
805
|
replacementSaved = true;
|
|
802
806
|
await this.db.delete(this.tableName, { id: previousId });
|
|
803
807
|
return result;
|
|
@@ -912,6 +916,11 @@ PromptOverride = __decorateClass([smrt({
|
|
|
912
916
|
cli: false,
|
|
913
917
|
mcp: false
|
|
914
918
|
})], PromptOverride);
|
|
919
|
+
function withoutRevisionGuard(options) {
|
|
920
|
+
if (!options || options.expectedUpdatedAt === void 0) return options;
|
|
921
|
+
const { expectedUpdatedAt: _expected, ...rest } = options;
|
|
922
|
+
return rest;
|
|
923
|
+
}
|
|
915
924
|
var PromptOverrideCollection_exports = /* @__PURE__ */ __exportAll({ PromptOverrideCollection: () => PromptOverrideCollection });
|
|
916
925
|
var PromptOverrideCollection = class extends SmrtCollection {
|
|
917
926
|
static _itemClass = PromptOverride;
|