@metaobjectsdev/docs-site 1.0.2 → 1.0.4-rc.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"link-graph.d.ts","sourceRoot":"","sources":["../src/link-graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAgC,MAAM,0BAA0B,CAAC;AAEvF,OAAO,EAAE,KAAK,WAAW,EAAU,MAAM,WAAW,CAAC;AAErD,MAAM,WAAW,OAAO;IAAG,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;CAAE;AAC1J,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IACtC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,cAAc,GAAG,QAAQ,CAAC;IACtF,WAAW,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AACD,MAAM,WAAW,SAAS;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAAE;AAExE,wBAAgB,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAE5C;AACD,wBAAgB,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAG5C;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,GAAG,CAA4B;IACvC,OAAO,CAAC,MAAM,CAAgC;IAC9C,OAAO,CAAC,QAAQ,CAAkC;gBAEtC,KAAK,EAAE,WAAW;IA4H9B,KAAK,IAAI,OAAO,EAAE;IAClB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE;IAC5B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE;IAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI3B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,EAAE;IAClC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE;IACnC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,EAAE;IAWjC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE;IAKpF,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;CA2BlD"}
1
+ {"version":3,"file":"link-graph.d.ts","sourceRoot":"","sources":["../src/link-graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAgC,MAAM,0BAA0B,CAAC;AAEvF,OAAO,EAAE,KAAK,WAAW,EAAU,MAAM,WAAW,CAAC;AAErD,MAAM,WAAW,OAAO;IAAG,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;CAAE;AAC1J,MAAM,WAAW,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IACtC,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,cAAc,GAAG,QAAQ,CAAC;IACtF,WAAW,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AACD,MAAM,WAAW,SAAS;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;CAAE;AAExE,wBAAgB,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAE5C;AACD,wBAAgB,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAG5C;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,GAAG,CAA4B;IACvC,OAAO,CAAC,MAAM,CAAgC;IAC9C,OAAO,CAAC,QAAQ,CAAkC;gBAEtC,KAAK,EAAE,WAAW;IAoI9B,KAAK,IAAI,OAAO,EAAE;IAClB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE;IAC5B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE;IAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI3B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,EAAE;IAClC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE;IACnC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,EAAE;IAWjC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE;IAKpF,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;CA2BlD"}
@@ -1,4 +1,4 @@
1
- import { deriveM2MFields, stripPackage } from "@metaobjectsdev/metadata";
1
+ import { deriveM2MFields, resolveRelationshipReference, stripPackage } from "@metaobjectsdev/metadata";
2
2
  import { treeOf } from "./load.js";
3
3
  export function pkgOf(node) {
4
4
  return (node.package ?? node.fileDefaultPackage ?? "");
@@ -88,10 +88,18 @@ export class LinkGraph {
88
88
  addM2mEdge(fqn, to, rel, obj, dn.pkg, onDelete, subtype); // Task 3 helper
89
89
  continue;
90
90
  }
91
- // belongs-to (1:N, one) — find the matching identity.reference to dedupe (mirrors
92
- // relation-resolver: first reference whose target matches, package-stripped).
91
+ // belongs-to (1:N, one) — resolve the identity.reference this relationship
92
+ // actually navigates, so the FK loop below can dedupe the edge it supersedes.
93
+ // #368: an entity may declare more than one reference onto the same target
94
+ // (e.g. Match.homeTeamRef/awayTeamRef -> Team), so a bare "target matches"
95
+ // `.find()` picked the same candidate for every same-target relationship —
96
+ // resolveRelationshipReference is the SSOT ladder (unique candidate,
97
+ // @sourceRefField, or unique name-pairing) that relation-resolver itself now
98
+ // uses; ambiguous cases resolve to undefined and simply leave every candidate
99
+ // reference to draw its own "fk" edge, which is the safe (extra-info, not
100
+ // missing-edge) outcome for a docs graph.
93
101
  const target = stripPackage(objectRef);
94
- const match = obj.referenceIdentities().find((r) => stripPackage(r.targetEntity ?? "") === target);
102
+ const match = resolveRelationshipReference(obj, rel.name, target, rel.sourceRefField);
95
103
  const fkField = match?.fields?.[0];
96
104
  if (fkField)
97
105
  coveredFk.add(`${to}::${fkField}`);
@@ -1 +1 @@
1
- {"version":3,"file":"link-graph.js","sourceRoot":"","sources":["../src/link-graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"link-graph.js","sourceRoot":"","sources":["../src/link-graph.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metaobjectsdev/docs-site",
3
- "version": "1.0.2",
3
+ "version": "1.0.4-rc.1",
4
4
  "description": "HTML documentation-site generator for metaobjects models — a browsable multi-page site (nav, search, per-object/package pages, kind-aware ER diagrams). Powers the `meta docs --site` surface.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -48,8 +48,8 @@
48
48
  "access": "public"
49
49
  },
50
50
  "dependencies": {
51
- "@metaobjectsdev/metadata": "1.0.2",
52
- "@metaobjectsdev/render": "1.0.2",
51
+ "@metaobjectsdev/metadata": "1.0.4-rc.1",
52
+ "@metaobjectsdev/render": "1.0.4-rc.1",
53
53
  "yaml": "^2.9.0"
54
54
  },
55
55
  "devDependencies": {
package/src/link-graph.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { MetaData, MetaObject, MetaRelationship } from "@metaobjectsdev/metadata";
2
- import { deriveM2MFields, stripPackage } from "@metaobjectsdev/metadata";
2
+ import { deriveM2MFields, resolveRelationshipReference, stripPackage } from "@metaobjectsdev/metadata";
3
3
  import { type LoadedModel, treeOf } from "./load.js";
4
4
 
5
5
  export interface DocNode { kind: "object" | "prompt" | "output"; name: string; pkg: string; pkgPath: string; href: string; node: MetaData; tree: string; }
@@ -99,10 +99,18 @@ export class LinkGraph {
99
99
  addM2mEdge(fqn, to, rel, obj, dn.pkg, onDelete, subtype); // Task 3 helper
100
100
  continue;
101
101
  }
102
- // belongs-to (1:N, one) — find the matching identity.reference to dedupe (mirrors
103
- // relation-resolver: first reference whose target matches, package-stripped).
102
+ // belongs-to (1:N, one) — resolve the identity.reference this relationship
103
+ // actually navigates, so the FK loop below can dedupe the edge it supersedes.
104
+ // #368: an entity may declare more than one reference onto the same target
105
+ // (e.g. Match.homeTeamRef/awayTeamRef -> Team), so a bare "target matches"
106
+ // `.find()` picked the same candidate for every same-target relationship —
107
+ // resolveRelationshipReference is the SSOT ladder (unique candidate,
108
+ // @sourceRefField, or unique name-pairing) that relation-resolver itself now
109
+ // uses; ambiguous cases resolve to undefined and simply leave every candidate
110
+ // reference to draw its own "fk" edge, which is the safe (extra-info, not
111
+ // missing-edge) outcome for a docs graph.
104
112
  const target = stripPackage(objectRef);
105
- const match = obj.referenceIdentities().find((r) => stripPackage(r.targetEntity ?? "") === target);
113
+ const match = resolveRelationshipReference(obj, rel.name, target, rel.sourceRefField);
106
114
  const fkField = match?.fields?.[0];
107
115
  if (fkField) coveredFk.add(`${to}::${fkField}`);
108
116
  addRef({ from: fqn, to, via: rel.name, kind: "relationship", cardinality, onDelete, subtype });