@happyvertical/smrt-cli 0.57.14 → 0.57.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/{ApiKey-CVmlf3V6-CpkKlftW.js → ApiKey-9YuYcpWy-BdrXOe-N.js} +5 -5
  2. package/dist/{ApiKeyCollection-CiiDNFdD-DGZkMNy8.js → ApiKeyCollection-BrJT9vo_-C2ELjR8-.js} +5 -5
  3. package/dist/{AuditLogCollection-WDHL-_AF-CfRYWGys.js → AuditLogCollection-BBbvr8Qc-B_vM5Xsk.js} +5 -5
  4. package/dist/{NostrIdentity-AC8fAdxe-Crl0np5c.js → NostrIdentity-RJaATTCt-BbRHWyee.js} +20 -9
  5. package/dist/{NostrIdentityCollection-CctlECpX-COd5JbK9.js → NostrIdentityCollection-BPNgPOBE-ChIk8KoC.js} +4 -4
  6. package/dist/{OidcIdentity-BUblgQLs-CRp_hqHx.js → OidcIdentity-MVVO3MfG-BpGvKgjc.js} +3 -3
  7. package/dist/{OidcIdentityCollection-ClOyaHeF-DRzTBrqP.js → OidcIdentityCollection-s4mp3n62-CfC3l5CJ.js} +5 -5
  8. package/dist/{PasswordCredentialService-CyB9FmYp-DrsmayFd.js → PasswordCredentialService-CyB9FmYp-CXXViNgR.js} +22 -22
  9. package/dist/{ProfileAssetCollection-CRMcjLJ--DI5GHTCT.js → ProfileAssetCollection-BuVAdOiv-tCeaeksA.js} +7 -7
  10. package/dist/{ProfileCollection-C4INKh7Y-8JNduJAI.js → ProfileCollection-CMS9dFc0-C0fYZz7M.js} +30 -30
  11. package/dist/{ProfileLinkCollection-DFfZRsgv-Btq4mGnI.js → ProfileLinkCollection-ChK9iEBp-8JDlgsdy.js} +6 -6
  12. package/dist/{ProfileMetadataCollection-BIYKy4Y3-D89TA8sp.js → ProfileMetadataCollection-CAgJyjze-DYirlBQP.js} +5 -5
  13. package/dist/{ProfileMetafieldCollection-Buz7gzag-BBILArHK.js → ProfileMetafieldCollection-19ae6Lpf-DS57DJ8S.js} +5 -5
  14. package/dist/{ProfileRelationshipCollection-C4g_QLI4-CBO-ZFG5.js → ProfileRelationshipCollection-BFSlTQ7J-l1ZL3VaR.js} +8 -8
  15. package/dist/{ProfileRelationshipTermCollection-C9J7mC7P-B1qRgesq.js → ProfileRelationshipTermCollection-OluL8BGP-n4626fEI.js} +4 -4
  16. package/dist/{ProfileRelationshipType-U7IwF6Wf--nNtaEKl.js → ProfileRelationshipType-Cevy-vaF-G82Gg40q.js} +4 -4
  17. package/dist/{ProfileRelationshipTypeCollection-_n22WqTb-CvN_J6A_.js → ProfileRelationshipTypeCollection-BRBpX00F-D78l9V1y.js} +5 -5
  18. package/dist/{ProfileTypeCollection-B7kwi1mU-D0H5HsjK.js → ProfileTypeCollection-B7m698Bl-DRmJ7q9F.js} +6 -6
  19. package/dist/commands/generate.d.ts.map +1 -1
  20. package/dist/{commands-DEfGxqVh.js → commands-C43NA6mx.js} +28 -6
  21. package/dist/{dist-CztDzx06.js → dist-B67Y3rCx.js} +4 -4
  22. package/dist/{dist-DOpRHzSU.js → dist-BR5pH4Kh.js} +5 -5
  23. package/dist/{dist-NpXtLFZF.js → dist-U163Kr3p.js} +3 -3
  24. package/dist/{dist-DICoECF7.js → dist-oeSjU6C9.js} +2 -2
  25. package/dist/index.js +11 -11
  26. package/dist/{oidcProvisioningPrimitives-DNP9EZlU-DZjXyAYi.js → oidcProvisioningPrimitives-Dl9qIcYS-Bnw85qhT.js} +7 -7
  27. package/dist/{operator-BD6K8-ID.js → operator-CwLtJXLm.js} +2 -2
  28. package/dist/{resolveIdentity-CkyqvctR-C7H56d7-.js → resolveIdentity-CR5p_g7K-VvVQCKEB.js} +19 -19
  29. package/dist/runtime-check.d.ts +16 -0
  30. package/dist/runtime-check.d.ts.map +1 -1
  31. package/package.json +12 -12
@@ -1,10 +1,10 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { i as tenantId, r as TenantScoped } from "./dist-DICoECF7.js";
3
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
4
- import { a as getOwnedAssetsFromCollection, o as removeOwnedAssetFromCollection, t as addOwnedAssetFromCollection } from "./dist-NpXtLFZF.js";
2
+ import { i as tenantId, r as TenantScoped } from "./dist-oeSjU6C9.js";
3
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
4
+ import { a as getOwnedAssetsFromCollection, o as removeOwnedAssetFromCollection, t as addOwnedAssetFromCollection } from "./dist-U163Kr3p.js";
5
5
  import { SmrtJunction, SmrtObject, crossPackageRef, field, foreignKey, smrt } from "@happyvertical/smrt-core";
6
- //#region ../profiles/dist/chunks/ProfileAssetCollection-CRMcjLJ-.js
7
- var ProfileAssetCollection_CRMcjLJ__exports = /* @__PURE__ */ __exportAll({
6
+ //#region ../profiles/dist/chunks/ProfileAssetCollection-BuVAdOiv.js
7
+ var ProfileAssetCollection_BuVAdOiv_exports = /* @__PURE__ */ __exportAll({
8
8
  n: () => ProfileAssetCollection_exports,
9
9
  r: () => ProfileAsset,
10
10
  t: () => ProfileAssetCollection
@@ -84,7 +84,7 @@ var ProfileAssetCollection = class extends SmrtJunction {
84
84
  profileCollectionPromise = null;
85
85
  async getProfileCollection() {
86
86
  if (!this.profileCollectionPromise) {
87
- const { ProfileCollection } = await import("./ProfileCollection-C4INKh7Y-8JNduJAI.js").then((n) => n.r).then((n) => n.r);
87
+ const { ProfileCollection } = await import("./ProfileCollection-CMS9dFc0-C0fYZz7M.js").then((n) => n.r).then((n) => n.r);
88
88
  this.profileCollectionPromise = ProfileCollection.create({ db: this.db });
89
89
  }
90
90
  return this.profileCollectionPromise;
@@ -107,4 +107,4 @@ ProfileAssetCollection = __decorateClass([smrt({
107
107
  cli: false
108
108
  })], ProfileAssetCollection);
109
109
  //#endregion
110
- export { ProfileAssetCollection_CRMcjLJ__exports as t };
110
+ export { ProfileAssetCollection_BuVAdOiv_exports as t };
@@ -1,11 +1,11 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { d as getTenantId, i as tenantId, m as withSystemContext, n as resolvePrompt, o as queryGlobal, r as TenantScoped, s as queryWithGlobals, t as definePrompt } from "./dist-DICoECF7.js";
3
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
4
- import { a as getOwnedAssetsFromCollection, i as assertValidOwnedAssetSortOrder, n as assertAssetLinkable, o as removeOwnedAssetFromCollection, r as assertValidOwnedAssetRelationship, s as resolveOwnedAssetsById, t as addOwnedAssetFromCollection } from "./dist-NpXtLFZF.js";
2
+ import { d as getTenantId, i as tenantId, m as withSystemContext, n as resolvePrompt, o as queryGlobal, r as TenantScoped, s as queryWithGlobals, t as definePrompt } from "./dist-oeSjU6C9.js";
3
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
4
+ import { a as getOwnedAssetsFromCollection, i as assertValidOwnedAssetSortOrder, n as assertAssetLinkable, o as removeOwnedAssetFromCollection, r as assertValidOwnedAssetRelationship, s as resolveOwnedAssetsById, t as addOwnedAssetFromCollection } from "./dist-U163Kr3p.js";
5
5
  import { RuntimeError, SmrtCollection, SmrtObject, ValidationError, field, foreignKey, isAbortedTransactionError, oneToMany, smrt } from "@happyvertical/smrt-core";
6
6
  import { BackfillTableUnavailableError, BackfillTracker } from "@happyvertical/smrt-core/migrations";
7
- //#region ../profiles/dist/chunks/ProfileCollection-C4INKh7Y.js
8
- var ProfileCollection_C4INKh7Y_exports = /* @__PURE__ */ __exportAll({
7
+ //#region ../profiles/dist/chunks/ProfileCollection-CMS9dFc0.js
8
+ var ProfileCollection_CMS9dFc0_exports = /* @__PURE__ */ __exportAll({
9
9
  _: () => smrtProfilesGenerateBioPrompt,
10
10
  a: () => Profile,
11
11
  d: () => isOidcProvisioningRaceConflict,
@@ -435,7 +435,7 @@ var Profile = class extends SmrtObject {
435
435
  async getTypeSlug() {
436
436
  const tenantId2 = this.tenantId || getTenantId();
437
437
  if (this.typeId && tenantId2) {
438
- const { ProfileTypeCollection } = await import("./ProfileTypeCollection-B7kwi1mU-D0H5HsjK.js").then((n) => n.n).then((n) => n.n);
438
+ const { ProfileTypeCollection } = await import("./ProfileTypeCollection-B7m698Bl-DRmJ7q9F.js").then((n) => n.n).then((n) => n.n);
439
439
  return (await (await ProfileTypeCollection.create(this.options)).getAvailableById(this.typeId, tenantId2))?.slug ?? "";
440
440
  }
441
441
  return (await this.loadRelated("typeId"))?.slug || "";
@@ -458,8 +458,8 @@ var Profile = class extends SmrtObject {
458
458
  * @param value - The value to set
459
459
  */
460
460
  async addMetadata(metafieldSlug, value) {
461
- const { ProfileMetafieldCollection } = await import("./ProfileMetafieldCollection-Buz7gzag-BBILArHK.js").then((n) => n.t).then((n) => n.n);
462
- const { ProfileMetadataCollection } = await import("./ProfileMetadataCollection-BIYKy4Y3-D89TA8sp.js").then((n) => n.t).then((n) => n.n);
461
+ const { ProfileMetafieldCollection } = await import("./ProfileMetafieldCollection-19ae6Lpf-DS57DJ8S.js").then((n) => n.t).then((n) => n.n);
462
+ const { ProfileMetadataCollection } = await import("./ProfileMetadataCollection-CAgJyjze-DYirlBQP.js").then((n) => n.t).then((n) => n.n);
463
463
  const metafield = await this.resolveMetafield(await ProfileMetafieldCollection.create(this.options), metafieldSlug);
464
464
  if (!metafield) throw new Error(`Metafield '${metafieldSlug}' not found`);
465
465
  await metafield.validateValue(value);
@@ -492,7 +492,7 @@ var Profile = class extends SmrtObject {
492
492
  * @returns Object with metafield slugs as keys
493
493
  */
494
494
  async getMetadata() {
495
- const { ProfileMetadataCollection } = await import("./ProfileMetadataCollection-BIYKy4Y3-D89TA8sp.js").then((n) => n.t).then((n) => n.n);
495
+ const { ProfileMetadataCollection } = await import("./ProfileMetadataCollection-CAgJyjze-DYirlBQP.js").then((n) => n.t).then((n) => n.n);
496
496
  return await (await ProfileMetadataCollection.create(this.options)).getMetadataObject(this.id);
497
497
  }
498
498
  /**
@@ -509,8 +509,8 @@ var Profile = class extends SmrtObject {
509
509
  * @param metafieldSlug - The slug of the metafield to remove
510
510
  */
511
511
  async removeMetadata(metafieldSlug) {
512
- const { ProfileMetafieldCollection } = await import("./ProfileMetafieldCollection-Buz7gzag-BBILArHK.js").then((n) => n.t).then((n) => n.n);
513
- const { ProfileMetadataCollection } = await import("./ProfileMetadataCollection-BIYKy4Y3-D89TA8sp.js").then((n) => n.t).then((n) => n.n);
512
+ const { ProfileMetafieldCollection } = await import("./ProfileMetafieldCollection-19ae6Lpf-DS57DJ8S.js").then((n) => n.t).then((n) => n.n);
513
+ const { ProfileMetadataCollection } = await import("./ProfileMetadataCollection-CAgJyjze-DYirlBQP.js").then((n) => n.t).then((n) => n.n);
514
514
  const metafield = await this.resolveMetafield(await ProfileMetafieldCollection.create(this.options), metafieldSlug);
515
515
  if (!metafield) throw new Error(`Metafield '${metafieldSlug}' not found`);
516
516
  const existing = await (await ProfileMetadataCollection.create(this.options)).list({
@@ -535,7 +535,7 @@ var Profile = class extends SmrtObject {
535
535
  return candidates.find((candidate) => ownerTenantId && candidate.tenantId === ownerTenantId) ?? candidates.find((candidate) => !candidate.tenantId) ?? null;
536
536
  }
537
537
  async getProfileLinkCollection() {
538
- const { ProfileLinkCollection } = await import("./ProfileLinkCollection-DFfZRsgv-Btq4mGnI.js").then((n) => n.t).then((n) => n.r);
538
+ const { ProfileLinkCollection } = await import("./ProfileLinkCollection-ChK9iEBp-8JDlgsdy.js").then((n) => n.t).then((n) => n.r);
539
539
  return ProfileLinkCollection.create({ db: this.db });
540
540
  }
541
541
  /** This profile's web links in display order. */
@@ -552,7 +552,7 @@ var Profile = class extends SmrtObject {
552
552
  return (await this.getProfileLinkCollection()).replaceForProfile(this.id, links);
553
553
  }
554
554
  async getProfileAssetCollection() {
555
- const { ProfileAssetCollection } = await import("./ProfileAssetCollection-CRMcjLJ--DI5GHTCT.js").then((n) => n.t).then((n) => n.n);
555
+ const { ProfileAssetCollection } = await import("./ProfileAssetCollection-BuVAdOiv-tCeaeksA.js").then((n) => n.t).then((n) => n.n);
556
556
  return ProfileAssetCollection.create({ db: this.db });
557
557
  }
558
558
  async getAssets(relationship) {
@@ -583,9 +583,9 @@ var Profile = class extends SmrtObject {
583
583
  * @param contextProfile - Optional context profile for tertiary relationships
584
584
  */
585
585
  async addRelationship(toProfile, relationshipSlug, contextProfile) {
586
- const { ProfileRelationshipTypeCollection } = await import("./ProfileRelationshipTypeCollection-_n22WqTb-CvN_J6A_.js").then((n) => n.t).then((n) => n.n);
587
- const { ProfileRelationshipCollection } = await import("./ProfileRelationshipCollection-C4g_QLI4-CBO-ZFG5.js").then((n) => n.t).then((n) => n.n);
588
- const { ProfileRelationshipType } = await import("./ProfileRelationshipType-U7IwF6Wf--nNtaEKl.js").then((n) => n.n).then((n) => n.n);
586
+ const { ProfileRelationshipTypeCollection } = await import("./ProfileRelationshipTypeCollection-BRBpX00F-D78l9V1y.js").then((n) => n.t).then((n) => n.n);
587
+ const { ProfileRelationshipCollection } = await import("./ProfileRelationshipCollection-BFSlTQ7J-l1ZL3VaR.js").then((n) => n.t).then((n) => n.n);
588
+ const { ProfileRelationshipType } = await import("./ProfileRelationshipType-Cevy-vaF-G82Gg40q.js").then((n) => n.n).then((n) => n.n);
589
589
  const relationshipType = await (await ProfileRelationshipTypeCollection.create(this.options)).getBySlug(relationshipSlug);
590
590
  if (!relationshipType) throw new Error(`Relationship type '${relationshipSlug}' not found`);
591
591
  const relationshipCollection = await ProfileRelationshipCollection.create(this.options);
@@ -609,8 +609,8 @@ var Profile = class extends SmrtObject {
609
609
  * @returns Array of ProfileRelationship instances
610
610
  */
611
611
  async getRelationships(options) {
612
- const { ProfileRelationshipCollection } = await import("./ProfileRelationshipCollection-C4g_QLI4-CBO-ZFG5.js").then((n) => n.t).then((n) => n.n);
613
- const { ProfileRelationshipTypeCollection } = await import("./ProfileRelationshipTypeCollection-_n22WqTb-CvN_J6A_.js").then((n) => n.t).then((n) => n.n);
612
+ const { ProfileRelationshipCollection } = await import("./ProfileRelationshipCollection-BFSlTQ7J-l1ZL3VaR.js").then((n) => n.t).then((n) => n.n);
613
+ const { ProfileRelationshipTypeCollection } = await import("./ProfileRelationshipTypeCollection-BRBpX00F-D78l9V1y.js").then((n) => n.t).then((n) => n.n);
614
614
  const relationshipCollection = await ProfileRelationshipCollection.create(this.options);
615
615
  const direction = options?.direction || "all";
616
616
  let typeId;
@@ -653,8 +653,8 @@ var Profile = class extends SmrtObject {
653
653
  * @param relationshipSlug - The type of relationship to remove
654
654
  */
655
655
  async removeRelationship(toProfile, relationshipSlug) {
656
- const { ProfileRelationshipTypeCollection } = await import("./ProfileRelationshipTypeCollection-_n22WqTb-CvN_J6A_.js").then((n) => n.t).then((n) => n.n);
657
- const { ProfileRelationshipCollection } = await import("./ProfileRelationshipCollection-C4g_QLI4-CBO-ZFG5.js").then((n) => n.t).then((n) => n.n);
656
+ const { ProfileRelationshipTypeCollection } = await import("./ProfileRelationshipTypeCollection-BRBpX00F-D78l9V1y.js").then((n) => n.t).then((n) => n.n);
657
+ const { ProfileRelationshipCollection } = await import("./ProfileRelationshipCollection-BFSlTQ7J-l1ZL3VaR.js").then((n) => n.t).then((n) => n.n);
658
658
  const relationshipType = await (await ProfileRelationshipTypeCollection.create(this.options)).getBySlug(relationshipSlug);
659
659
  if (!relationshipType) throw new Error(`Relationship type '${relationshipSlug}' not found`);
660
660
  const relationshipCollection = await ProfileRelationshipCollection.create(this.options);
@@ -747,7 +747,7 @@ var Profile = class extends SmrtObject {
747
747
  * @returns Array of API keys
748
748
  */
749
749
  async getApiKeys() {
750
- const { ApiKeyCollection } = await import("./ApiKeyCollection-CiiDNFdD-DGZkMNy8.js").then((n) => n.t).then((n) => n.n);
750
+ const { ApiKeyCollection } = await import("./ApiKeyCollection-BrJT9vo_-C2ELjR8-.js").then((n) => n.t).then((n) => n.n);
751
751
  return await (await ApiKeyCollection.create(this.options)).findByProfile(this.id);
752
752
  }
753
753
  /**
@@ -756,7 +756,7 @@ var Profile = class extends SmrtObject {
756
756
  * @returns Array of active API keys
757
757
  */
758
758
  async getActiveApiKeys() {
759
- const { ApiKeyCollection } = await import("./ApiKeyCollection-CiiDNFdD-DGZkMNy8.js").then((n) => n.t).then((n) => n.n);
759
+ const { ApiKeyCollection } = await import("./ApiKeyCollection-BrJT9vo_-C2ELjR8-.js").then((n) => n.t).then((n) => n.n);
760
760
  return await (await ApiKeyCollection.create(this.options)).findActiveByProfile(this.id);
761
761
  }
762
762
  /**
@@ -766,7 +766,7 @@ var Profile = class extends SmrtObject {
766
766
  * @returns The generated key (plaintext) and ApiKey record
767
767
  */
768
768
  async generateApiKey(options) {
769
- const { ApiKey } = await import("./ApiKey-CVmlf3V6-CpkKlftW.js").then((n) => n.n).then((n) => n.n);
769
+ const { ApiKey } = await import("./ApiKey-9YuYcpWy-BdrXOe-N.js").then((n) => n.n).then((n) => n.n);
770
770
  return await ApiKey.generate(this, {
771
771
  ...options,
772
772
  db: this.options?.db
@@ -778,7 +778,7 @@ var Profile = class extends SmrtObject {
778
778
  * @returns Array of OIDC identity records
779
779
  */
780
780
  async getOidcIdentities() {
781
- const { OidcIdentityCollection } = await import("./OidcIdentityCollection-ClOyaHeF-DRzTBrqP.js").then((n) => n.r).then((n) => n.r);
781
+ const { OidcIdentityCollection } = await import("./OidcIdentityCollection-s4mp3n62-CfC3l5CJ.js").then((n) => n.r).then((n) => n.r);
782
782
  return await (await OidcIdentityCollection.create(this.options)).findByProfile(this.id);
783
783
  }
784
784
  /**
@@ -791,7 +791,7 @@ var Profile = class extends SmrtObject {
791
791
  * type, but refuses to create or rebind authority.
792
792
  */
793
793
  async linkOidcIdentity(oidcData) {
794
- const { OidcIdentityCollection } = await import("./OidcIdentityCollection-ClOyaHeF-DRzTBrqP.js").then((n) => n.r).then((n) => n.r);
794
+ const { OidcIdentityCollection } = await import("./OidcIdentityCollection-s4mp3n62-CfC3l5CJ.js").then((n) => n.r).then((n) => n.r);
795
795
  return await (await OidcIdentityCollection.create(this.options)).linkToProfile(this, oidcData);
796
796
  }
797
797
  /**
@@ -800,7 +800,7 @@ var Profile = class extends SmrtObject {
800
800
  * @returns Array of Nostr identity records
801
801
  */
802
802
  async getNostrIdentities() {
803
- const { NostrIdentityCollection } = await import("./NostrIdentityCollection-CctlECpX-COd5JbK9.js").then((n) => n.t).then((n) => n.n);
803
+ const { NostrIdentityCollection } = await import("./NostrIdentityCollection-BPNgPOBE-ChIk8KoC.js").then((n) => n.t).then((n) => n.n);
804
804
  return await (await NostrIdentityCollection.create(this.options)).findByProfile(this.id);
805
805
  }
806
806
  /**
@@ -810,7 +810,7 @@ var Profile = class extends SmrtObject {
810
810
  * @returns The linked Nostr identity record
811
811
  */
812
812
  async linkNostrIdentity(nostrData) {
813
- const { NostrIdentityCollection } = await import("./NostrIdentityCollection-CctlECpX-COd5JbK9.js").then((n) => n.t).then((n) => n.n);
813
+ const { NostrIdentityCollection } = await import("./NostrIdentityCollection-BPNgPOBE-ChIk8KoC.js").then((n) => n.t).then((n) => n.n);
814
814
  return await (await NostrIdentityCollection.create(this.options)).linkToProfile(this, nostrData);
815
815
  }
816
816
  /**
@@ -820,7 +820,7 @@ var Profile = class extends SmrtObject {
820
820
  * @returns Array of audit log entries
821
821
  */
822
822
  async getAuditLogs(limit = 50) {
823
- const { AuditLogCollection } = await import("./AuditLogCollection-WDHL-_AF-CfRYWGys.js").then((n) => n.t).then((n) => n.n);
823
+ const { AuditLogCollection } = await import("./AuditLogCollection-BBbvr8Qc-B_vM5Xsk.js").then((n) => n.t).then((n) => n.n);
824
824
  return await (await AuditLogCollection.create(this.options)).getRecentActivity(this.id, limit);
825
825
  }
826
826
  /**
@@ -830,7 +830,7 @@ var Profile = class extends SmrtObject {
830
830
  * @returns The created audit log entry
831
831
  */
832
832
  async recordAction(options) {
833
- const { AuditLogCollection } = await import("./AuditLogCollection-WDHL-_AF-CfRYWGys.js").then((n) => n.t).then((n) => n.n);
833
+ const { AuditLogCollection } = await import("./AuditLogCollection-BBbvr8Qc-B_vM5Xsk.js").then((n) => n.t).then((n) => n.n);
834
834
  return await (await AuditLogCollection.create(this.options)).record({
835
835
  profile: this,
836
836
  ...options
@@ -1194,4 +1194,4 @@ function readRequiredString(row, key) {
1194
1194
  return value;
1195
1195
  }
1196
1196
  //#endregion
1197
- export { coordinateOidcProvisioning as a, saveOidcRaceArbiter as c, ProfileType as i, ProfileCollection as n, isOidcProvisioningRaceConflict as o, ProfileCollection_C4INKh7Y_exports as r, normalizeIdentityEmail as s, Profile as t };
1197
+ export { coordinateOidcProvisioning as a, saveOidcRaceArbiter as c, ProfileType as i, ProfileCollection as n, isOidcProvisioningRaceConflict as o, ProfileCollection_CMS9dFc0_exports as r, normalizeIdentityEmail as s, Profile as t };
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { i as tenantId, r as TenantScoped } from "./dist-DICoECF7.js";
3
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
2
+ import { i as tenantId, r as TenantScoped } from "./dist-oeSjU6C9.js";
3
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
4
4
  import { SmrtCollection, SmrtObject, field, foreignKey, isEmbeddedDatabase, smrt, withEmbeddedWriteTransaction } from "@happyvertical/smrt-core";
5
- //#region ../profiles/dist/chunks/ProfileLinkCollection-DFfZRsgv.js
6
- var ProfileLinkCollection_DFfZRsgv_exports = /* @__PURE__ */ __exportAll({
5
+ //#region ../profiles/dist/chunks/ProfileLinkCollection-ChK9iEBp.js
6
+ var ProfileLinkCollection_ChK9iEBp_exports = /* @__PURE__ */ __exportAll({
7
7
  a: () => PROFILE_LINK_MAX_URL_LENGTH,
8
8
  c: () => isProfileLinkPlatform,
9
9
  i: () => 200,
@@ -203,7 +203,7 @@ var ProfileLinkCollection = class ProfileLinkCollection extends SmrtCollection {
203
203
  /** The profile's tenant; throws when the profile is not visible here. */
204
204
  async requireProfileTenant(profileId) {
205
205
  if (!profileId) throw new Error("A profile link needs a profile");
206
- const { ProfileCollection } = await import("./ProfileCollection-C4INKh7Y-8JNduJAI.js").then((n) => n.r).then((n) => n.r);
206
+ const { ProfileCollection } = await import("./ProfileCollection-CMS9dFc0-C0fYZz7M.js").then((n) => n.r).then((n) => n.r);
207
207
  const profile = await (await ProfileCollection.create({ db: this.db })).get({ id: profileId });
208
208
  if (!profile) throw new Error(`Profile '${profileId}' not found`);
209
209
  return profile.tenantId ?? null;
@@ -238,4 +238,4 @@ function normalizeInputs(links) {
238
238
  return out;
239
239
  }
240
240
  //#endregion
241
- export { ProfileLinkCollection_DFfZRsgv_exports as t };
241
+ export { ProfileLinkCollection_ChK9iEBp_exports as t };
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { i as tenantId, r as TenantScoped } from "./dist-DICoECF7.js";
3
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
2
+ import { i as tenantId, r as TenantScoped } from "./dist-oeSjU6C9.js";
3
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
4
4
  import { SmrtCollection, SmrtObject, field, foreignKey, smrt } from "@happyvertical/smrt-core";
5
- //#region ../profiles/dist/chunks/ProfileMetadataCollection-BIYKy4Y3.js
6
- var ProfileMetadataCollection_BIYKy4Y3_exports = /* @__PURE__ */ __exportAll({
5
+ //#region ../profiles/dist/chunks/ProfileMetadataCollection-CAgJyjze.js
6
+ var ProfileMetadataCollection_CAgJyjze_exports = /* @__PURE__ */ __exportAll({
7
7
  n: () => ProfileMetadataCollection_exports,
8
8
  r: () => ProfileMetadata,
9
9
  t: () => ProfileMetadataCollection
@@ -113,4 +113,4 @@ var ProfileMetadataCollection = class extends SmrtCollection {
113
113
  }
114
114
  };
115
115
  //#endregion
116
- export { ProfileMetadataCollection_BIYKy4Y3_exports as t };
116
+ export { ProfileMetadataCollection_CAgJyjze_exports as t };
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { i as tenantId, r as TenantScoped } from "./dist-DICoECF7.js";
3
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
2
+ import { i as tenantId, r as TenantScoped } from "./dist-oeSjU6C9.js";
3
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
4
4
  import { SmrtCollection, SmrtObject, field, smrt } from "@happyvertical/smrt-core";
5
- //#region ../profiles/dist/chunks/ProfileMetafieldCollection-Buz7gzag.js
6
- var ProfileMetafieldCollection_Buz7gzag_exports = /* @__PURE__ */ __exportAll({
5
+ //#region ../profiles/dist/chunks/ProfileMetafieldCollection-19ae6Lpf.js
6
+ var ProfileMetafieldCollection_19ae6Lpf_exports = /* @__PURE__ */ __exportAll({
7
7
  n: () => ProfileMetafieldCollection_exports,
8
8
  r: () => ProfileMetafield,
9
9
  t: () => ProfileMetafieldCollection
@@ -150,4 +150,4 @@ var ProfileMetafieldCollection = class extends SmrtCollection {
150
150
  }
151
151
  };
152
152
  //#endregion
153
- export { ProfileMetafieldCollection_Buz7gzag_exports as t };
153
+ export { ProfileMetafieldCollection_19ae6Lpf_exports as t };
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { i as tenantId, r as TenantScoped } from "./dist-DICoECF7.js";
3
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
2
+ import { i as tenantId, r as TenantScoped } from "./dist-oeSjU6C9.js";
3
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
4
4
  import { SmrtCollection, SmrtObject, foreignKey, oneToMany, smrt } from "@happyvertical/smrt-core";
5
- //#region ../profiles/dist/chunks/ProfileRelationshipCollection-C4g_QLI4.js
6
- var ProfileRelationshipCollection_C4g_QLI4_exports = /* @__PURE__ */ __exportAll({
5
+ //#region ../profiles/dist/chunks/ProfileRelationshipCollection-BFSlTQ7J.js
6
+ var ProfileRelationshipCollection_BFSlTQ7J_exports = /* @__PURE__ */ __exportAll({
7
7
  n: () => ProfileRelationshipCollection_exports,
8
8
  r: () => ProfileRelationship,
9
9
  t: () => ProfileRelationshipCollection
@@ -54,7 +54,7 @@ var ProfileRelationship = class extends SmrtObject {
54
54
  async addTerm(startedAt, endedAt) {
55
55
  if (!this.id) throw new Error("ProfileRelationship.addTerm requires a persisted relationship (missing id)");
56
56
  const relationshipId = this.id;
57
- const { ProfileRelationshipTermCollection } = await import("./ProfileRelationshipTermCollection-C9J7mC7P-B1qRgesq.js").then((n) => n.t).then((n) => n.n);
57
+ const { ProfileRelationshipTermCollection } = await import("./ProfileRelationshipTermCollection-OluL8BGP-n4626fEI.js").then((n) => n.t).then((n) => n.n);
58
58
  await (await (await ProfileRelationshipTermCollection.create(this.options)).create({
59
59
  relationshipId,
60
60
  startedAt,
@@ -76,7 +76,7 @@ var ProfileRelationship = class extends SmrtObject {
76
76
  * @returns Array of ProfileRelationshipTerm instances
77
77
  */
78
78
  async getTerms() {
79
- const { ProfileRelationshipTermCollection } = await import("./ProfileRelationshipTermCollection-C9J7mC7P-B1qRgesq.js").then((n) => n.t).then((n) => n.n);
79
+ const { ProfileRelationshipTermCollection } = await import("./ProfileRelationshipTermCollection-OluL8BGP-n4626fEI.js").then((n) => n.t).then((n) => n.n);
80
80
  return await (await ProfileRelationshipTermCollection.create(this.options)).getByRelationship(this.id);
81
81
  }
82
82
  /**
@@ -85,7 +85,7 @@ var ProfileRelationship = class extends SmrtObject {
85
85
  * @returns Current term or null if none active
86
86
  */
87
87
  async getActiveTerm() {
88
- const { ProfileRelationshipTermCollection } = await import("./ProfileRelationshipTermCollection-C9J7mC7P-B1qRgesq.js").then((n) => n.t).then((n) => n.n);
88
+ const { ProfileRelationshipTermCollection } = await import("./ProfileRelationshipTermCollection-OluL8BGP-n4626fEI.js").then((n) => n.t).then((n) => n.n);
89
89
  return await (await ProfileRelationshipTermCollection.create(this.options)).getActiveTerm(this.id);
90
90
  }
91
91
  };
@@ -166,4 +166,4 @@ var ProfileRelationshipCollection = class extends SmrtCollection {
166
166
  }
167
167
  };
168
168
  //#endregion
169
- export { ProfileRelationshipCollection_C4g_QLI4_exports as t };
169
+ export { ProfileRelationshipCollection_BFSlTQ7J_exports as t };
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
2
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
3
3
  import { SmrtCollection, SmrtObject, field, foreignKey, smrt } from "@happyvertical/smrt-core";
4
- //#region ../profiles/dist/chunks/ProfileRelationshipTermCollection-C9J7mC7P.js
5
- var ProfileRelationshipTermCollection_C9J7mC7P_exports = /* @__PURE__ */ __exportAll({
4
+ //#region ../profiles/dist/chunks/ProfileRelationshipTermCollection-OluL8BGP.js
5
+ var ProfileRelationshipTermCollection_OluL8BGP_exports = /* @__PURE__ */ __exportAll({
6
6
  n: () => ProfileRelationshipTermCollection_exports,
7
7
  r: () => ProfileRelationshipTerm,
8
8
  t: () => ProfileRelationshipTermCollection
@@ -112,4 +112,4 @@ var ProfileRelationshipTermCollection = class extends SmrtCollection {
112
112
  }
113
113
  };
114
114
  //#endregion
115
- export { ProfileRelationshipTermCollection_C9J7mC7P_exports as t };
115
+ export { ProfileRelationshipTermCollection_OluL8BGP_exports as t };
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
2
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
3
3
  import { SmrtObject, field, smrt } from "@happyvertical/smrt-core";
4
- //#region ../profiles/dist/chunks/ProfileRelationshipType-U7IwF6Wf.js
5
- var ProfileRelationshipType_U7IwF6Wf_exports = /* @__PURE__ */ __exportAll({
4
+ //#region ../profiles/dist/chunks/ProfileRelationshipType-Cevy-vaF.js
5
+ var ProfileRelationshipType_Cevy_vaF_exports = /* @__PURE__ */ __exportAll({
6
6
  n: () => ProfileRelationshipType_exports,
7
7
  t: () => ProfileRelationshipType
8
8
  });
@@ -106,4 +106,4 @@ ProfileRelationshipType = __decorateClass([smrt({
106
106
  cli: { skipApiCheck: true }
107
107
  })], ProfileRelationshipType);
108
108
  //#endregion
109
- export { ProfileRelationshipType_U7IwF6Wf_exports as n, ProfileRelationshipType as t };
109
+ export { ProfileRelationshipType_Cevy_vaF_exports as n, ProfileRelationshipType as t };
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
3
- import { t as ProfileRelationshipType } from "./ProfileRelationshipType-U7IwF6Wf--nNtaEKl.js";
2
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
3
+ import { t as ProfileRelationshipType } from "./ProfileRelationshipType-Cevy-vaF-G82Gg40q.js";
4
4
  import { SmrtCollection } from "@happyvertical/smrt-core";
5
- //#region ../profiles/dist/chunks/ProfileRelationshipTypeCollection-_n22WqTb.js
6
- var ProfileRelationshipTypeCollection__n22WqTb_exports = /* @__PURE__ */ __exportAll({
5
+ //#region ../profiles/dist/chunks/ProfileRelationshipTypeCollection-BRBpX00F.js
6
+ var ProfileRelationshipTypeCollection_BRBpX00F_exports = /* @__PURE__ */ __exportAll({
7
7
  n: () => ProfileRelationshipTypeCollection_exports,
8
8
  t: () => ProfileRelationshipTypeCollection
9
9
  });
@@ -54,4 +54,4 @@ var ProfileRelationshipTypeCollection = class extends SmrtCollection {
54
54
  }
55
55
  };
56
56
  //#endregion
57
- export { ProfileRelationshipTypeCollection__n22WqTb_exports as t };
57
+ export { ProfileRelationshipTypeCollection_BRBpX00F_exports as t };
@@ -1,10 +1,10 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-8H4AJuhK.js";
2
- import { l as withTenantGlobalRead, p as isSystemContext } from "./dist-DICoECF7.js";
3
- import { n as __exportAll$1 } from "./NostrIdentity-AC8fAdxe-Crl0np5c.js";
4
- import { i as ProfileType } from "./ProfileCollection-C4INKh7Y-8JNduJAI.js";
2
+ import { l as withTenantGlobalRead, p as isSystemContext } from "./dist-oeSjU6C9.js";
3
+ import { n as __exportAll$1 } from "./NostrIdentity-RJaATTCt-BbRHWyee.js";
4
+ import { i as ProfileType } from "./ProfileCollection-CMS9dFc0-C0fYZz7M.js";
5
5
  import { SmrtCollection } from "@happyvertical/smrt-core";
6
- //#region ../profiles/dist/chunks/ProfileTypeCollection-B7kwi1mU.js
7
- var ProfileTypeCollection_B7kwi1mU_exports = /* @__PURE__ */ __exportAll({
6
+ //#region ../profiles/dist/chunks/ProfileTypeCollection-B7m698Bl.js
7
+ var ProfileTypeCollection_B7m698Bl_exports = /* @__PURE__ */ __exportAll({
8
8
  n: () => ProfileTypeCollection_exports,
9
9
  t: () => ProfileTypeCollection
10
10
  });
@@ -100,4 +100,4 @@ var ProfileTypeCollection = class extends SmrtCollection {
100
100
  }
101
101
  };
102
102
  //#endregion
103
- export { ProfileTypeCollection_B7kwi1mU_exports as n, ProfileTypeCollection as t };
103
+ export { ProfileTypeCollection_B7m698Bl_exports as n, ProfileTypeCollection as t };
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAwDtD;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAqkBvD,CAAC"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAwDtD;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAukBvD,CAAC"}
@@ -5298,6 +5298,7 @@ var generateCommands = {
5298
5298
  for (const [objectName, objectDef] of Object.entries(manifestObjects)) {
5299
5299
  const def = objectDef;
5300
5300
  if (def.visibility === "test") continue;
5301
+ if (isCollectionClass(def)) continue;
5301
5302
  const dedupeKey = def.qualifiedName || `${packageName}:${def.className || objectName}`;
5302
5303
  if (seenQualifiedNames.has(dedupeKey)) continue;
5303
5304
  seenQualifiedNames.add(dedupeKey);
@@ -5316,7 +5317,6 @@ var generateCommands = {
5316
5317
  else imports.push(`import { ${exportName} } from '${importPath}';`);
5317
5318
  importedEntryCount++;
5318
5319
  packageImportedEntryCount++;
5319
- if (isCollectionClass(def)) continue;
5320
5320
  const registrationOptions = [`name: ${JSON.stringify(registrationName)}`, `packageName: ${JSON.stringify(registrationPackageName)}`].join(", ");
5321
5321
  registrations.push(`ObjectRegistry.register(${exportName}, { ${registrationOptions} });`);
5322
5322
  if (hasCollection && collectionExportName) registrations.push(`ObjectRegistry.registerCollection('${tableName}', ${collectionExportName});`);
@@ -8404,7 +8404,7 @@ var dbMaterializeTenantHierarchyCommand = {
8404
8404
  if (!config.database?.url || config.database.url === ":memory:") throw new Error("Database configuration required for db:materialize-tenant-hierarchy. Configure database.url in smrt.config.ts (or DATABASE_URL).");
8405
8405
  const dbType = config.database.type || "sqlite";
8406
8406
  const { getDatabase } = await import("@happyvertical/sql");
8407
- const { materializeTenantHierarchy, TenantHierarchyMaterializationError } = await import("./dist-CztDzx06.js");
8407
+ const { materializeTenantHierarchy, TenantHierarchyMaterializationError } = await import("./dist-B67Y3rCx.js");
8408
8408
  db = await getDatabase({
8409
8409
  type: dbType,
8410
8410
  url: config.database.url
@@ -8613,7 +8613,7 @@ var dbMigrateLedgerAccountsCommand = {
8613
8613
  if (dbType !== "postgres") throw new Error("db:migrate-ledger-accounts currently supports PostgreSQL only; no changes were made. See the smrt-ledgers README for SQLite.");
8614
8614
  await autoDiscoverAndLoad();
8615
8615
  const { getDatabase } = await import("@happyvertical/sql");
8616
- const { migrateLedgerAccountsTable, planLedgerAccountsTableMove } = await import("./dist-DOpRHzSU.js");
8616
+ const { migrateLedgerAccountsTable, planLedgerAccountsTableMove } = await import("./dist-BR5pH4Kh.js");
8617
8617
  db = await getDatabase({
8618
8618
  type: dbType,
8619
8619
  url: config.database.url
@@ -10201,6 +10201,7 @@ function flattenManifestEntries(manifest, source, fallbackPackageName) {
10201
10201
  const manifestPackageName = getManifestPackageName(manifest, fallbackPackageName);
10202
10202
  return Object.entries(manifest.objects || {}).map(([key, objectDef]) => ({
10203
10203
  manifestPackageName: resolveManifestEntryPackageName(key, objectDef, manifestPackageName),
10204
+ containerPackageName: manifestPackageName,
10204
10205
  manifestSource: source,
10205
10206
  key,
10206
10207
  definition: objectDef
@@ -10232,7 +10233,7 @@ function entryMatchesShortName(entry, name) {
10232
10233
  }
10233
10234
  function resolveEntryByName(manifests, name) {
10234
10235
  const entries = flattenRuntimeEntries(manifests);
10235
- const qualifiedMatches = entries.filter((entry) => entryMatchesQualifiedName(entry, name));
10236
+ const qualifiedMatches = distinctClasses(entries.filter((entry) => entryMatchesQualifiedName(entry, name)));
10236
10237
  if (qualifiedMatches.length === 1) return {
10237
10238
  kind: "resolved",
10238
10239
  entry: qualifiedMatches[0]
@@ -10243,7 +10244,7 @@ function resolveEntryByName(manifests, name) {
10243
10244
  matches: qualifiedMatches
10244
10245
  };
10245
10246
  const shortName = isQualifiedName(name) ? parseQualifiedName(name).className : name;
10246
- const shortNameMatches = entries.filter((entry) => entryMatchesShortName(entry, shortName));
10247
+ const shortNameMatches = distinctClasses(entries.filter((entry) => entryMatchesShortName(entry, shortName)));
10247
10248
  if (shortNameMatches.length === 1) return {
10248
10249
  kind: "resolved",
10249
10250
  entry: shortNameMatches[0]
@@ -10258,6 +10259,27 @@ function resolveEntryByName(manifests, name) {
10258
10259
  name
10259
10260
  };
10260
10261
  }
10262
+ /**
10263
+ * One entry per class. A package's manifest may also carry objects it
10264
+ * consumed from another package under their own qualified names, so one class
10265
+ * can appear in several manifests; that is not an ambiguity (#4176). The copy
10266
+ * held by the owning package's own manifest wins, whatever the order.
10267
+ */
10268
+ function distinctClasses(matches) {
10269
+ const byClass = /* @__PURE__ */ new Map();
10270
+ const unqualified = [];
10271
+ for (const entry of matches) {
10272
+ const qualifiedName = describeEntry(entry);
10273
+ if (!isQualifiedName(qualifiedName)) {
10274
+ unqualified.push(entry);
10275
+ continue;
10276
+ }
10277
+ const identity = qualifiedName.toLowerCase();
10278
+ const owned = parseQualifiedName(qualifiedName).packageName === entry.containerPackageName;
10279
+ if (!byClass.has(identity) || owned) byClass.set(identity, entry);
10280
+ }
10281
+ return [...byClass.values(), ...unqualified];
10282
+ }
10261
10283
  function describeEntry(entry) {
10262
10284
  return getEntryQualifiedName(entry.key, entry.definition, entry.manifestPackageName);
10263
10285
  }
@@ -10766,7 +10788,7 @@ var usersProvisionOwnerCommand = {
10766
10788
  const config = getPackageConfig("cli", DEFAULT_CLI_CONFIG);
10767
10789
  if (config.database?.type !== "postgres" || !config.database.url) throw new Error(FAILURE);
10768
10790
  const { getDatabase } = await import("@happyvertical/sql");
10769
- const { provisionPasswordOwner } = await import("./operator-BD6K8-ID.js");
10791
+ const { provisionPasswordOwner } = await import("./operator-CwLtJXLm.js");
10770
10792
  db = await getDatabase({
10771
10793
  type: "postgres",
10772
10794
  url: config.database.url