@memberjunction/ng-entity-relationship-diagram 5.3.1 → 5.4.0

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":"entity-to-erd-adapter.js","sourceRoot":"","sources":["../../../src/lib/utils/entity-to-erd-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-to-erd-adapter.js","sourceRoot":"","sources":["../../../src/lib/utils/entity-to-erd-adapter.ts"],"names":[],"mappings":"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","sourcesContent":["import { EntityInfo, EntityFieldInfo } from '@memberjunction/core';\nimport { ERDNode, ERDField, ERDFieldValue, ERDLink } from '../interfaces/erd-types';\n\n/**\n * Converts MemberJunction EntityFieldInfo to generic ERDField format.\n */\nexport function entityFieldToERDField(field: EntityFieldInfo): ERDField {\n const erdField: ERDField = {\n id: field.ID,\n name: field.Name,\n type: field.Type,\n isPrimaryKey: field.IsPrimaryKey,\n description: field.Description,\n allowsNull: field.AllowsNull,\n defaultValue: field.DefaultValue,\n length: field.Length,\n precision: field.Precision,\n scale: field.Scale,\n isVirtual: field.IsVirtual,\n autoIncrement: field.AutoIncrement\n };\n\n // Add related entity info for foreign keys\n if (field.RelatedEntityID) {\n erdField.relatedNodeId = field.RelatedEntityID;\n erdField.relatedNodeName = field.RelatedEntity;\n erdField.relatedFieldName = field.RelatedEntityFieldName;\n }\n\n // Add possible values if they exist\n if (field.EntityFieldValues && field.EntityFieldValues.length > 0) {\n erdField.possibleValues = field.EntityFieldValues.map(v => ({\n id: v.ID,\n value: v.Value,\n code: v.Code,\n description: v.Description,\n sequence: v.Sequence\n } as ERDFieldValue));\n }\n\n return erdField;\n}\n\n/**\n * Converts MemberJunction EntityInfo to generic ERDNode format.\n */\nexport function entityInfoToERDNode(entity: EntityInfo): ERDNode {\n return {\n id: entity.ID,\n name: entity.Name,\n schemaName: entity.SchemaName,\n description: entity.Description,\n status: entity.Status,\n baseTable: entity.BaseTable,\n fields: entity.Fields.map(f => entityFieldToERDField(f)),\n customData: {\n // Store original entity for reverse lookup if needed\n originalEntity: entity\n }\n };\n}\n\n/**\n * Converts an array of MemberJunction EntityInfo objects to ERDNode format.\n */\nexport function entitiesToERDNodes(entities: EntityInfo[]): ERDNode[] {\n return entities.map(e => entityInfoToERDNode(e));\n}\n\n/**\n * Extracts the original EntityInfo from an ERDNode's customData.\n * Returns null if not found.\n */\nexport function getOriginalEntityFromERDNode(node: ERDNode): EntityInfo | null {\n if (node.customData && node.customData['originalEntity']) {\n return node.customData['originalEntity'] as EntityInfo;\n }\n return null;\n}\n\n/**\n * Finds an EntityInfo by node ID from an array.\n */\nexport function findEntityByNodeId(nodeId: string, entities: EntityInfo[]): EntityInfo | undefined {\n return entities.find(e => e.ID === nodeId);\n}\n\n/**\n * Options for building ERD data from entities.\n */\nexport interface BuildERDDataOptions {\n /** Include incoming relationships (entities that reference these entities). Default: true */\n includeIncoming?: boolean;\n /** Include outgoing relationships (entities these reference via FK). Default: true */\n includeOutgoing?: boolean;\n /** All entities in the system (for relationship lookups). Required for includeIncoming/includeOutgoing. */\n allEntities?: EntityInfo[];\n /** Relationship depth - how many hops to include. Default: 1 */\n depth?: number;\n}\n\n/**\n * Result of building ERD data from entities.\n */\nexport interface BuildERDDataResult {\n nodes: ERDNode[];\n links: ERDLink[];\n}\n\n/**\n * Builds ERD nodes and links from an array of EntityInfo objects.\n * This handles the transformation and automatic relationship discovery.\n *\n * @param entities - The primary entities to display\n * @param options - Options for relationship discovery\n * @returns Object containing nodes and links arrays\n *\n * @example\n * ```typescript\n * // Single entity with all related entities\n * const result = buildERDDataFromEntities([myEntity], {\n * allEntities: metadata.Entities,\n * includeIncoming: true,\n * includeOutgoing: true,\n * depth: 1\n * });\n * ```\n */\nexport function buildERDDataFromEntities(\n entities: EntityInfo[],\n options: BuildERDDataOptions = {}\n): BuildERDDataResult {\n const {\n includeIncoming = true,\n includeOutgoing = true,\n allEntities = [],\n depth = 1\n } = options;\n\n const nodes: ERDNode[] = [];\n const links: ERDLink[] = [];\n const addedNodeIds = new Set<string>();\n const addedLinkKeys = new Set<string>();\n\n // Helper to add a node if not already added\n const addNode = (entity: EntityInfo): void => {\n if (!addedNodeIds.has(entity.ID)) {\n nodes.push(entityInfoToERDNode(entity));\n addedNodeIds.add(entity.ID);\n }\n };\n\n // Helper to add a link if not already added\n const addLink = (link: ERDLink): void => {\n const key = `${link.sourceNodeId}->${link.targetNodeId}:${link.sourceField.id}`;\n if (!addedLinkKeys.has(key)) {\n links.push(link);\n addedLinkKeys.add(key);\n }\n };\n\n // First, add all primary entities\n for (const entity of entities) {\n addNode(entity);\n }\n\n // Process relationships for each primary entity\n for (const entity of entities) {\n // Outgoing relationships (this entity references others via FK)\n if (includeOutgoing) {\n for (const field of entity.Fields) {\n if (field.RelatedEntityID) {\n const relatedEntity = allEntities.find(e => e.ID === field.RelatedEntityID);\n if (relatedEntity) {\n addNode(relatedEntity);\n\n const pkField = relatedEntity.Fields.find(f => f.IsPrimaryKey);\n addLink({\n sourceNodeId: entity.ID,\n targetNodeId: field.RelatedEntityID,\n sourceField: entityFieldToERDField(field),\n targetField: pkField ? entityFieldToERDField(pkField) : undefined,\n isSelfReference: entity.ID === field.RelatedEntityID,\n relationshipType: 'many-to-one'\n });\n }\n }\n }\n }\n\n // Incoming relationships (other entities reference this one)\n if (includeIncoming) {\n for (const rel of entity.RelatedEntities) {\n // rel.RelatedEntity is the entity that has the FK pointing to this entity\n const relEntity = allEntities.find(e => e.Name === rel.RelatedEntity);\n if (relEntity) {\n addNode(relEntity);\n\n const fkField = relEntity.Fields.find(f => f.Name === rel.RelatedEntityJoinField);\n const pkField = entity.Fields.find(f => f.IsPrimaryKey);\n\n if (fkField) {\n addLink({\n sourceNodeId: relEntity.ID,\n targetNodeId: entity.ID,\n sourceField: entityFieldToERDField(fkField),\n targetField: pkField ? entityFieldToERDField(pkField) : undefined,\n isSelfReference: relEntity.ID === entity.ID,\n relationshipType: 'many-to-one'\n });\n }\n }\n }\n }\n }\n\n // If depth > 1, recursively expand relationships\n if (depth > 1) {\n const processedIds = new Set(entities.map(e => e.ID));\n let currentDepthEntities = [...nodes]\n .map(n => getOriginalEntityFromERDNode(n))\n .filter((e): e is EntityInfo => e !== null && !processedIds.has(e.ID));\n\n for (let d = 1; d < depth; d++) {\n const nextDepthEntities: EntityInfo[] = [];\n\n for (const entity of currentDepthEntities) {\n if (processedIds.has(entity.ID)) continue;\n processedIds.add(entity.ID);\n\n // Outgoing\n if (includeOutgoing) {\n for (const field of entity.Fields) {\n if (field.RelatedEntityID && !addedNodeIds.has(field.RelatedEntityID)) {\n const relatedEntity = allEntities.find(e => e.ID === field.RelatedEntityID);\n if (relatedEntity) {\n addNode(relatedEntity);\n nextDepthEntities.push(relatedEntity);\n\n const pkField = relatedEntity.Fields.find(f => f.IsPrimaryKey);\n addLink({\n sourceNodeId: entity.ID,\n targetNodeId: field.RelatedEntityID,\n sourceField: entityFieldToERDField(field),\n targetField: pkField ? entityFieldToERDField(pkField) : undefined,\n isSelfReference: entity.ID === field.RelatedEntityID,\n relationshipType: 'many-to-one'\n });\n }\n }\n }\n }\n\n // Incoming\n if (includeIncoming) {\n for (const rel of entity.RelatedEntities) {\n // rel.RelatedEntity is the entity that has the FK pointing to this entity\n const relEntity = allEntities.find(e => e.Name === rel.RelatedEntity);\n if (relEntity && !addedNodeIds.has(relEntity.ID)) {\n addNode(relEntity);\n nextDepthEntities.push(relEntity);\n\n const fkField = relEntity.Fields.find(f => f.Name === rel.RelatedEntityJoinField);\n const pkField = entity.Fields.find(f => f.IsPrimaryKey);\n\n if (fkField) {\n addLink({\n sourceNodeId: relEntity.ID,\n targetNodeId: entity.ID,\n sourceField: entityFieldToERDField(fkField),\n targetField: pkField ? entityFieldToERDField(pkField) : undefined,\n isSelfReference: relEntity.ID === entity.ID,\n relationshipType: 'many-to-one'\n });\n }\n }\n }\n }\n }\n\n currentDepthEntities = nextDepthEntities;\n }\n }\n\n return { nodes, links };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"public-api.js","sourceRoot":"","sources":["../src/public-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,SAAS;AACT,cAAc,0CAA0C,CAAC;AAEzD,uBAAuB;AACvB,cAAc,4BAA4B,CAAC;AAE3C,aAAa;AACb,cAAc,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,0DAA0D,CAAC;AACzE,cAAc,oEAAoE,CAAC;AACnF,cAAc,wDAAwD,CAAC;AAEvE,yCAAyC;AACzC,cAAc,mCAAmC,CAAC"}
1
+ {"version":3,"file":"public-api.js","sourceRoot":"","sources":["../src/public-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,SAAS;AACT,cAAc,0CAA0C,CAAC;AAEzD,uBAAuB;AACvB,cAAc,4BAA4B,CAAC;AAE3C,aAAa;AACb,cAAc,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,0DAA0D,CAAC;AACzE,cAAc,oEAAoE,CAAC;AACnF,cAAc,wDAAwD,CAAC;AAEvE,yCAAyC;AACzC,cAAc,mCAAmC,CAAC","sourcesContent":["/*\n * Public API Surface of @memberjunction/ng-entity-relationship-diagram\n */\n\n// Module\nexport * from './lib/entity-relationship-diagram.module';\n\n// Interfaces and types\nexport * from './lib/interfaces/erd-types';\n\n// Components\nexport * from './lib/components/erd-diagram.component';\nexport * from './lib/components/mj-entity-erd.component';\nexport * from './lib/components/entity-details/entity-details.component';\nexport * from './lib/components/entity-filter-panel/entity-filter-panel.component';\nexport * from './lib/components/erd-composite/erd-composite.component';\n\n// Utilities for MJ entity transformation\nexport * from './lib/utils/entity-to-erd-adapter';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-entity-relationship-diagram",
3
- "version": "5.3.1",
3
+ "version": "5.4.0",
4
4
  "description": "MemberJunction: Entity Relationship Diagram (ERD) component for visualizing entity relationships using D3.js force-directed graphs",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -36,7 +36,7 @@
36
36
  "dependencies": {
37
37
  "@angular/forms": "21.1.3",
38
38
  "@dagrejs/dagre": "^1.1.8",
39
- "@memberjunction/core": "5.3.1",
39
+ "@memberjunction/core": "5.4.0",
40
40
  "@progress/kendo-angular-layout": "22.0.1",
41
41
  "@types/d3": "^7.4.3",
42
42
  "d3": "^7.9.0",