@osdk/maker-experimental 0.6.0-beta.8 → 0.6.0-beta.9

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/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # @osdk/maker-experimental
2
2
 
3
+ ## 0.6.0-beta.9
4
+
5
+ ### Minor Changes
6
+
7
+ - 4ec5877: Fix link dataset shapes
8
+
9
+ ### Patch Changes
10
+
11
+ - @osdk/api@2.8.0-beta.32
12
+ - @osdk/client.unstable@2.8.0-beta.32
13
+
3
14
  ## 0.6.0-beta.8
4
15
 
5
16
  ### Minor Changes
@@ -28,7 +28,7 @@ const apiNamespaceRegex = /^[a-z0-9-]+(\.[a-z0-9-]+)*\.$/;
28
28
  const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;
29
29
  export default async function main(args = process.argv) {
30
30
  consola.log("Generating BlockGeneratorResult for ontology...");
31
- const commandLineOpts = await yargs(hideBin(args)).version("0.6.0-beta.8" ?? "").wrap(Math.min(150, yargs().terminalWidth())).strict().help().options({
31
+ const commandLineOpts = await yargs(hideBin(args)).version("0.6.0-beta.9" ?? "").wrap(Math.min(150, yargs().terminalWidth())).strict().help().options({
32
32
  input: {
33
33
  alias: "i",
34
34
  describe: "Input file",
@@ -207,7 +207,7 @@ export class LinkTypeShapeExtractor {
207
207
  for (const column of columns) {
208
208
  for (const [id, shape] of ridGenerator.getColumnShapes().entries()) {
209
209
  if (this.datasourceLocatorsMatch(shape.datasource, datasourceLocator) && shape.name === column) {
210
- columnReferences.push(id);
210
+ columnReferences.push(ridGenerator.toBlockInternalId(id));
211
211
  break;
212
212
  }
213
213
  }
@@ -240,7 +240,7 @@ export class LinkTypeShapeExtractor {
240
240
  any: {}
241
241
  }
242
242
  },
243
- datasource: datasourceReadableId,
243
+ datasource: ridGenerator.toBlockInternalId(datasourceReadableId),
244
244
  typeclasses: []
245
245
  };
246
246
  columnShapes.set(id, {
@@ -1 +1 @@
1
- {"version":3,"file":"LinkTypeShapeExtractor.js","names":["createLocalizedAbout","fallbackTitle","fallbackDescription","localizedTitle","localizedDescription","LinkTypeShapeExtractor","extract","linkReadableId","link","ridGenerator","editsEnabled","entityMetadata","arePatchesEnabled","definition","linkType","type","extractIntermediary","intermediary","extractManyToMany","manyToMany","datasources","extractOneToMany","oneToMany","Error","linkDefinition","outputShape","about","oneToManyLinkMetadata","displayMetadata","displayName","objectTypeShapeIdOneSide","getObjectTypeShapeId","objectTypeRidOneSide","objectTypeShapeIdManySide","objectTypeRidManySide","manyToOneLinkMetadata","cardinalityHint","inputShapes","Map","outputShapes","inputShapeMetadata","dataSources","linkTypeName","objectTypeAToBLinkMetadata","objectTypeBToALinkMetadata","objectTypeShapeIdA","objectTypeRidA","objectTypeShapeIdB","objectTypeRidB","editsSupport","objectsBackendVersion","datasetShapes","datasource","datasourceDefinition","datasourceLocator","columns","datasourceType","dataset","rid","datasetRid","branch","branchId","Set","Object","values","objectTypeAPrimaryKeyMapping","map","String","objectTypeBPrimaryKeyMapping","stream","streamLocator","streamLocatorRid","datasourceReadableId","id","loc","getDatasourceLocators","entries","datasourceLocatorsMatch","columnShapes","getColumnInputShapesForManyToManyDatasets","shape","set","datasourceShape","getInputShapeForManyToManyDatasource","objectTypeAShapeId","objectTypeBShapeId","intermediaryObjectTypeShapeId","intermediaryObjectTypeRid","aToIntermediaryLinkTypeShapeId","getLinkTypeShapeId","aToIntermediaryLinkTypeRid","intermediaryToBLinkTypeShapeId","intermediaryToBLinkTypeRid","objectTypeRid","readableId","getObjectTypeRids","inverse","get","toBlockInternalId","linkTypeRid","getLinkTypeRids","columnReferences","column","getColumnShapes","name","push","schema","supportedTypes","tabularDatasource","columnShape","generic","any","typeclasses","datasourceColumn","a","b","restrictedView"],"sources":["LinkTypeShapeExtractor.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n IntermediaryLinkDefinition,\n LinkTypeBlockDataV2,\n LinkTypeRid,\n ManyToManyLinkDefinition,\n ObjectTypeRid,\n} from \"@osdk/client.unstable\";\nimport type {\n DatasourceColumnShape,\n DatasourceLocator,\n InputShape,\n LinkTypeIntermediaryShape,\n LinkTypeManyToManyOutputShape,\n LinkTypeOneToManyShape,\n LinkTypeOutputShape,\n LocalizedTitleAndDescription,\n TabularDatasourceInputShape,\n TabularDatasourceType,\n Void,\n} from \"@osdk/client.unstable/api\";\nimport type {\n BlockShapes,\n OntologyRidGenerator,\n ReadableId,\n} from \"../../../util/generateRid.js\";\n\n/**\n * Helper to create LocalizedTitleAndDescription with empty localizations\n */\nfunction createLocalizedAbout(\n fallbackTitle: string,\n fallbackDescription: string = \"\",\n): LocalizedTitleAndDescription {\n return {\n fallbackTitle,\n fallbackDescription,\n localizedTitle: {},\n localizedDescription: {},\n };\n}\n\n/**\n * TypeScript port of Java's LinkTypeShapeExtractor class\n */\nexport class LinkTypeShapeExtractor {\n /**\n * Extract shapes from a LinkType\n */\n extract(\n linkReadableId: ReadableId,\n link: LinkTypeBlockDataV2,\n ridGenerator: OntologyRidGenerator,\n ): BlockShapes {\n const editsEnabled = link.entityMetadata?.arePatchesEnabled ?? false;\n\n const definition = link.linkType.definition;\n\n switch (definition.type) {\n case \"intermediary\":\n return this.extractIntermediary(\n linkReadableId,\n definition.intermediary,\n ridGenerator,\n );\n case \"manyToMany\":\n return this.extractManyToMany(\n linkReadableId,\n definition.manyToMany,\n ridGenerator,\n link.datasources,\n editsEnabled,\n );\n case \"oneToMany\":\n return this.extractOneToMany(\n linkReadableId,\n definition.oneToMany,\n ridGenerator,\n );\n default:\n throw new Error(\n `Unknown link definition type: ${(definition as any).type}`,\n );\n }\n }\n\n /**\n * Extract one-to-many link shape\n */\n private extractOneToMany(\n linkReadableId: ReadableId,\n linkDefinition: any,\n ridGenerator: OntologyRidGenerator,\n ): BlockShapes {\n const outputShape: LinkTypeOneToManyShape = {\n about: createLocalizedAbout(\n linkDefinition.oneToManyLinkMetadata.displayMetadata.displayName,\n ),\n objectTypeShapeIdOneSide: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidOneSide,\n ),\n objectTypeShapeIdManySide: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidManySide,\n ),\n manyToOneLinkMetadata: createLocalizedAbout(\n linkDefinition.manyToOneLinkMetadata.displayMetadata.displayName,\n ),\n oneToManyLinkMetadata: createLocalizedAbout(\n linkDefinition.oneToManyLinkMetadata.displayMetadata.displayName,\n ),\n cardinalityHint: linkDefinition.cardinalityHint === \"ONE_TO_ONE\"\n ? \"ONE_TO_ONE\"\n : \"ONE_TO_MANY\",\n };\n\n return {\n inputShapes: new Map(),\n outputShapes: new Map([[linkReadableId, {\n type: \"linkType\",\n linkType: {\n type: \"oneToMany\",\n oneToMany: outputShape,\n } as LinkTypeOutputShape,\n }]]),\n inputShapeMetadata: new Map(),\n };\n }\n\n /**\n * Extract many-to-many link shape\n */\n private extractManyToMany(\n linkReadableId: ReadableId,\n linkDefinition: ManyToManyLinkDefinition,\n ridGenerator: OntologyRidGenerator,\n dataSources: any[],\n editsEnabled: boolean,\n ): BlockShapes {\n const linkTypeName =\n linkDefinition.objectTypeAToBLinkMetadata.displayMetadata.displayName;\n\n const outputShape: LinkTypeManyToManyOutputShape = {\n about: createLocalizedAbout(linkTypeName),\n objectTypeAToBLinkMetadata: createLocalizedAbout(\n linkDefinition.objectTypeAToBLinkMetadata.displayMetadata.displayName,\n ),\n objectTypeBToALinkMetadata: createLocalizedAbout(\n linkDefinition.objectTypeBToALinkMetadata.displayMetadata.displayName,\n ),\n objectTypeShapeIdA: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidA,\n ),\n objectTypeShapeIdB: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidB,\n ),\n editsSupport: editsEnabled ? \"EDITS_ENABLED\" : \"EDITS_DISABLED\",\n objectsBackendVersion: \"V2\",\n };\n\n const datasetShapes = new Map<ReadableId, InputShape>();\n\n for (const datasource of dataSources) {\n const datasourceDefinition = datasource.datasource;\n let datasourceLocator: DatasourceLocator;\n let columns: Set<string>;\n let datasourceType: TabularDatasourceType;\n\n if (datasourceDefinition.type === \"dataset\") {\n datasourceLocator = {\n type: \"dataset\",\n dataset: {\n rid: datasourceDefinition.dataset.datasetRid,\n branch: datasourceDefinition.dataset.branchId,\n },\n };\n columns = new Set([\n ...Object.values(\n datasourceDefinition.dataset.objectTypeAPrimaryKeyMapping,\n ).map(String),\n ...Object.values(\n datasourceDefinition.dataset.objectTypeBPrimaryKeyMapping,\n ).map(String),\n ]);\n datasourceType = \"DATASET\";\n } else if (datasourceDefinition.type === \"stream\") {\n datasourceLocator = {\n type: \"stream\",\n stream: {\n rid: datasourceDefinition.stream.streamLocator.streamLocatorRid,\n branch: datasourceDefinition.stream.streamLocator.branchId,\n },\n };\n columns = new Set([\n ...Object.values(\n datasourceDefinition.stream.objectTypeAPrimaryKeyMapping,\n ).map(String),\n ...Object.values(\n datasourceDefinition.stream.objectTypeBPrimaryKeyMapping,\n ).map(String),\n ]);\n datasourceType = \"STREAM\";\n } else {\n continue;\n }\n\n // Find datasource readable ID\n let datasourceReadableId: ReadableId | undefined;\n for (\n const [id, loc] of ridGenerator.getDatasourceLocators()\n .entries()\n ) {\n if (this.datasourceLocatorsMatch(loc, datasourceLocator)) {\n datasourceReadableId = id;\n break;\n }\n }\n\n if (!datasourceReadableId) continue;\n\n // Create column shapes\n const columnShapes = this.getColumnInputShapesForManyToManyDatasets(\n ridGenerator,\n columns,\n datasourceLocator,\n datasourceReadableId,\n );\n\n for (const [id, shape] of columnShapes.entries()) {\n datasetShapes.set(id, shape);\n }\n\n // Create datasource shape\n const datasourceShape = this.getInputShapeForManyToManyDatasource(\n ridGenerator,\n linkTypeName,\n columns,\n datasourceLocator,\n datasourceType,\n );\n\n datasetShapes.set(datasourceReadableId, datasourceShape);\n }\n\n return {\n inputShapes: datasetShapes,\n outputShapes: new Map([[linkReadableId, {\n type: \"linkType\",\n linkType: {\n type: \"manyToMany\",\n manyToMany: outputShape,\n } as LinkTypeOutputShape,\n }]]),\n inputShapeMetadata: new Map(),\n };\n }\n\n /**\n * Extract intermediary link shape\n */\n private extractIntermediary(\n linkReadableId: ReadableId,\n linkDefinition: IntermediaryLinkDefinition,\n ridGenerator: OntologyRidGenerator,\n ): BlockShapes {\n const outputShape: LinkTypeIntermediaryShape = {\n about: createLocalizedAbout(\n linkDefinition.objectTypeAToBLinkMetadata.displayMetadata.displayName,\n ),\n objectTypeAToBLinkMetadata: createLocalizedAbout(\n linkDefinition.objectTypeAToBLinkMetadata.displayMetadata.displayName,\n ),\n objectTypeBToALinkMetadata: createLocalizedAbout(\n linkDefinition.objectTypeBToALinkMetadata.displayMetadata.displayName,\n ),\n objectTypeAShapeId: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidA,\n ),\n objectTypeBShapeId: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidB,\n ),\n intermediaryObjectTypeShapeId: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.intermediaryObjectTypeRid,\n ),\n aToIntermediaryLinkTypeShapeId: this.getLinkTypeShapeId(\n ridGenerator,\n linkDefinition.aToIntermediaryLinkTypeRid,\n ),\n intermediaryToBLinkTypeShapeId: this.getLinkTypeShapeId(\n ridGenerator,\n linkDefinition.intermediaryToBLinkTypeRid,\n ),\n };\n\n return {\n inputShapes: new Map(),\n outputShapes: new Map([[linkReadableId, {\n type: \"linkType\",\n linkType: {\n type: \"intermediary\",\n intermediary: outputShape,\n } as LinkTypeOutputShape,\n }]]),\n inputShapeMetadata: new Map(),\n };\n }\n\n /**\n * Get object type shape ID reference\n */\n private getObjectTypeShapeId(\n ridGenerator: OntologyRidGenerator,\n objectTypeRid: ObjectTypeRid,\n ): string {\n const readableId = ridGenerator.getObjectTypeRids().inverse().get(\n objectTypeRid,\n );\n if (!readableId) {\n throw new Error(`Object type RID not found: ${objectTypeRid}`);\n }\n return ridGenerator.toBlockInternalId(readableId);\n }\n\n /**\n * Get link type shape ID reference\n */\n private getLinkTypeShapeId(\n ridGenerator: OntologyRidGenerator,\n linkTypeRid: LinkTypeRid,\n ): string {\n const readableId = ridGenerator.getLinkTypeRids().inverse().get(\n linkTypeRid,\n );\n if (!readableId) {\n throw new Error(`Object type RID not found: ${linkTypeRid}`);\n }\n return ridGenerator.toBlockInternalId(readableId);\n }\n\n /**\n * Get input shape for many-to-many datasource\n */\n private getInputShapeForManyToManyDatasource(\n ridGenerator: OntologyRidGenerator,\n linkTypeName: string,\n columns: Set<string>,\n datasourceLocator: DatasourceLocator,\n datasourceType: TabularDatasourceType,\n ): InputShape {\n const columnReferences: string[] = [];\n\n for (const column of columns) {\n for (\n const [id, shape] of ridGenerator.getColumnShapes().entries()\n ) {\n if (\n this.datasourceLocatorsMatch(shape.datasource, datasourceLocator)\n && shape.name === column\n ) {\n columnReferences.push(id);\n break;\n }\n }\n }\n\n const shape: TabularDatasourceInputShape = {\n about: createLocalizedAbout(linkTypeName),\n schema: columnReferences,\n supportedTypes: [datasourceType],\n };\n\n return {\n type: \"tabularDatasource\",\n tabularDatasource: shape,\n };\n }\n\n /**\n * Get column input shapes for many-to-many datasets\n */\n private getColumnInputShapesForManyToManyDatasets(\n ridGenerator: OntologyRidGenerator,\n columns: Set<string>,\n datasourceLocator: DatasourceLocator,\n datasourceReadableId: ReadableId,\n ): Map<ReadableId, InputShape> {\n const columnShapes = new Map<ReadableId, InputShape>();\n\n for (const column of columns) {\n for (\n const [id, shape] of ridGenerator.getColumnShapes().entries()\n ) {\n if (\n this.datasourceLocatorsMatch(shape.datasource, datasourceLocator)\n && shape.name === column\n ) {\n const columnShape: DatasourceColumnShape = {\n about: createLocalizedAbout(column),\n type: {\n type: \"generic\",\n generic: { type: \"any\", any: {} as Void },\n },\n datasource: datasourceReadableId,\n typeclasses: [],\n };\n\n columnShapes.set(id, {\n type: \"datasourceColumn\",\n datasourceColumn: columnShape,\n });\n break;\n }\n }\n }\n\n return columnShapes;\n }\n\n /**\n * Helper to compare datasource locators\n */\n private datasourceLocatorsMatch(\n a: DatasourceLocator,\n b: DatasourceLocator,\n ): boolean {\n if (a.type !== b.type) return false;\n\n if (a.type === \"dataset\" && b.type === \"dataset\") {\n return a.dataset.rid === b.dataset.rid\n && a.dataset.branch === b.dataset.branch;\n }\n\n if (a.type === \"stream\" && b.type === \"stream\") {\n return a.stream.rid === b.stream.rid\n && a.stream.branch === b.stream.branch;\n }\n\n if (a.type === \"restrictedView\" && b.type === \"restrictedView\") {\n return a.restrictedView.rid === b.restrictedView.rid;\n }\n\n return false;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"LinkTypeShapeExtractor.js","names":["createLocalizedAbout","fallbackTitle","fallbackDescription","localizedTitle","localizedDescription","LinkTypeShapeExtractor","extract","linkReadableId","link","ridGenerator","editsEnabled","entityMetadata","arePatchesEnabled","definition","linkType","type","extractIntermediary","intermediary","extractManyToMany","manyToMany","datasources","extractOneToMany","oneToMany","Error","linkDefinition","outputShape","about","oneToManyLinkMetadata","displayMetadata","displayName","objectTypeShapeIdOneSide","getObjectTypeShapeId","objectTypeRidOneSide","objectTypeShapeIdManySide","objectTypeRidManySide","manyToOneLinkMetadata","cardinalityHint","inputShapes","Map","outputShapes","inputShapeMetadata","dataSources","linkTypeName","objectTypeAToBLinkMetadata","objectTypeBToALinkMetadata","objectTypeShapeIdA","objectTypeRidA","objectTypeShapeIdB","objectTypeRidB","editsSupport","objectsBackendVersion","datasetShapes","datasource","datasourceDefinition","datasourceLocator","columns","datasourceType","dataset","rid","datasetRid","branch","branchId","Set","Object","values","objectTypeAPrimaryKeyMapping","map","String","objectTypeBPrimaryKeyMapping","stream","streamLocator","streamLocatorRid","datasourceReadableId","id","loc","getDatasourceLocators","entries","datasourceLocatorsMatch","columnShapes","getColumnInputShapesForManyToManyDatasets","shape","set","datasourceShape","getInputShapeForManyToManyDatasource","objectTypeAShapeId","objectTypeBShapeId","intermediaryObjectTypeShapeId","intermediaryObjectTypeRid","aToIntermediaryLinkTypeShapeId","getLinkTypeShapeId","aToIntermediaryLinkTypeRid","intermediaryToBLinkTypeShapeId","intermediaryToBLinkTypeRid","objectTypeRid","readableId","getObjectTypeRids","inverse","get","toBlockInternalId","linkTypeRid","getLinkTypeRids","columnReferences","column","getColumnShapes","name","push","schema","supportedTypes","tabularDatasource","columnShape","generic","any","typeclasses","datasourceColumn","a","b","restrictedView"],"sources":["LinkTypeShapeExtractor.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type {\n IntermediaryLinkDefinition,\n LinkTypeBlockDataV2,\n LinkTypeRid,\n ManyToManyLinkDefinition,\n ObjectTypeRid,\n} from \"@osdk/client.unstable\";\nimport type {\n DatasourceColumnShape,\n DatasourceLocator,\n InputShape,\n LinkTypeIntermediaryShape,\n LinkTypeManyToManyOutputShape,\n LinkTypeOneToManyShape,\n LinkTypeOutputShape,\n LocalizedTitleAndDescription,\n TabularDatasourceInputShape,\n TabularDatasourceType,\n Void,\n} from \"@osdk/client.unstable/api\";\nimport type {\n BlockShapes,\n OntologyRidGenerator,\n ReadableId,\n} from \"../../../util/generateRid.js\";\n\n/**\n * Helper to create LocalizedTitleAndDescription with empty localizations\n */\nfunction createLocalizedAbout(\n fallbackTitle: string,\n fallbackDescription: string = \"\",\n): LocalizedTitleAndDescription {\n return {\n fallbackTitle,\n fallbackDescription,\n localizedTitle: {},\n localizedDescription: {},\n };\n}\n\n/**\n * TypeScript port of Java's LinkTypeShapeExtractor class\n */\nexport class LinkTypeShapeExtractor {\n /**\n * Extract shapes from a LinkType\n */\n extract(\n linkReadableId: ReadableId,\n link: LinkTypeBlockDataV2,\n ridGenerator: OntologyRidGenerator,\n ): BlockShapes {\n const editsEnabled = link.entityMetadata?.arePatchesEnabled ?? false;\n\n const definition = link.linkType.definition;\n\n switch (definition.type) {\n case \"intermediary\":\n return this.extractIntermediary(\n linkReadableId,\n definition.intermediary,\n ridGenerator,\n );\n case \"manyToMany\":\n return this.extractManyToMany(\n linkReadableId,\n definition.manyToMany,\n ridGenerator,\n link.datasources,\n editsEnabled,\n );\n case \"oneToMany\":\n return this.extractOneToMany(\n linkReadableId,\n definition.oneToMany,\n ridGenerator,\n );\n default:\n throw new Error(\n `Unknown link definition type: ${(definition as any).type}`,\n );\n }\n }\n\n /**\n * Extract one-to-many link shape\n */\n private extractOneToMany(\n linkReadableId: ReadableId,\n linkDefinition: any,\n ridGenerator: OntologyRidGenerator,\n ): BlockShapes {\n const outputShape: LinkTypeOneToManyShape = {\n about: createLocalizedAbout(\n linkDefinition.oneToManyLinkMetadata.displayMetadata.displayName,\n ),\n objectTypeShapeIdOneSide: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidOneSide,\n ),\n objectTypeShapeIdManySide: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidManySide,\n ),\n manyToOneLinkMetadata: createLocalizedAbout(\n linkDefinition.manyToOneLinkMetadata.displayMetadata.displayName,\n ),\n oneToManyLinkMetadata: createLocalizedAbout(\n linkDefinition.oneToManyLinkMetadata.displayMetadata.displayName,\n ),\n cardinalityHint: linkDefinition.cardinalityHint === \"ONE_TO_ONE\"\n ? \"ONE_TO_ONE\"\n : \"ONE_TO_MANY\",\n };\n\n return {\n inputShapes: new Map(),\n outputShapes: new Map([[linkReadableId, {\n type: \"linkType\",\n linkType: {\n type: \"oneToMany\",\n oneToMany: outputShape,\n } as LinkTypeOutputShape,\n }]]),\n inputShapeMetadata: new Map(),\n };\n }\n\n /**\n * Extract many-to-many link shape\n */\n private extractManyToMany(\n linkReadableId: ReadableId,\n linkDefinition: ManyToManyLinkDefinition,\n ridGenerator: OntologyRidGenerator,\n dataSources: any[],\n editsEnabled: boolean,\n ): BlockShapes {\n const linkTypeName =\n linkDefinition.objectTypeAToBLinkMetadata.displayMetadata.displayName;\n\n const outputShape: LinkTypeManyToManyOutputShape = {\n about: createLocalizedAbout(linkTypeName),\n objectTypeAToBLinkMetadata: createLocalizedAbout(\n linkDefinition.objectTypeAToBLinkMetadata.displayMetadata.displayName,\n ),\n objectTypeBToALinkMetadata: createLocalizedAbout(\n linkDefinition.objectTypeBToALinkMetadata.displayMetadata.displayName,\n ),\n objectTypeShapeIdA: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidA,\n ),\n objectTypeShapeIdB: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidB,\n ),\n editsSupport: editsEnabled ? \"EDITS_ENABLED\" : \"EDITS_DISABLED\",\n objectsBackendVersion: \"V2\",\n };\n\n const datasetShapes = new Map<ReadableId, InputShape>();\n\n for (const datasource of dataSources) {\n const datasourceDefinition = datasource.datasource;\n let datasourceLocator: DatasourceLocator;\n let columns: Set<string>;\n let datasourceType: TabularDatasourceType;\n\n if (datasourceDefinition.type === \"dataset\") {\n datasourceLocator = {\n type: \"dataset\",\n dataset: {\n rid: datasourceDefinition.dataset.datasetRid,\n branch: datasourceDefinition.dataset.branchId,\n },\n };\n columns = new Set([\n ...Object.values(\n datasourceDefinition.dataset.objectTypeAPrimaryKeyMapping,\n ).map(String),\n ...Object.values(\n datasourceDefinition.dataset.objectTypeBPrimaryKeyMapping,\n ).map(String),\n ]);\n datasourceType = \"DATASET\";\n } else if (datasourceDefinition.type === \"stream\") {\n datasourceLocator = {\n type: \"stream\",\n stream: {\n rid: datasourceDefinition.stream.streamLocator.streamLocatorRid,\n branch: datasourceDefinition.stream.streamLocator.branchId,\n },\n };\n columns = new Set([\n ...Object.values(\n datasourceDefinition.stream.objectTypeAPrimaryKeyMapping,\n ).map(String),\n ...Object.values(\n datasourceDefinition.stream.objectTypeBPrimaryKeyMapping,\n ).map(String),\n ]);\n datasourceType = \"STREAM\";\n } else {\n continue;\n }\n\n // Find datasource readable ID\n let datasourceReadableId: ReadableId | undefined;\n for (\n const [id, loc] of ridGenerator.getDatasourceLocators()\n .entries()\n ) {\n if (this.datasourceLocatorsMatch(loc, datasourceLocator)) {\n datasourceReadableId = id;\n break;\n }\n }\n\n if (!datasourceReadableId) continue;\n\n // Create column shapes\n const columnShapes = this.getColumnInputShapesForManyToManyDatasets(\n ridGenerator,\n columns,\n datasourceLocator,\n datasourceReadableId,\n );\n\n for (const [id, shape] of columnShapes.entries()) {\n datasetShapes.set(id, shape);\n }\n\n // Create datasource shape\n const datasourceShape = this.getInputShapeForManyToManyDatasource(\n ridGenerator,\n linkTypeName,\n columns,\n datasourceLocator,\n datasourceType,\n );\n\n datasetShapes.set(datasourceReadableId, datasourceShape);\n }\n\n return {\n inputShapes: datasetShapes,\n outputShapes: new Map([[linkReadableId, {\n type: \"linkType\",\n linkType: {\n type: \"manyToMany\",\n manyToMany: outputShape,\n } as LinkTypeOutputShape,\n }]]),\n inputShapeMetadata: new Map(),\n };\n }\n\n /**\n * Extract intermediary link shape\n */\n private extractIntermediary(\n linkReadableId: ReadableId,\n linkDefinition: IntermediaryLinkDefinition,\n ridGenerator: OntologyRidGenerator,\n ): BlockShapes {\n const outputShape: LinkTypeIntermediaryShape = {\n about: createLocalizedAbout(\n linkDefinition.objectTypeAToBLinkMetadata.displayMetadata.displayName,\n ),\n objectTypeAToBLinkMetadata: createLocalizedAbout(\n linkDefinition.objectTypeAToBLinkMetadata.displayMetadata.displayName,\n ),\n objectTypeBToALinkMetadata: createLocalizedAbout(\n linkDefinition.objectTypeBToALinkMetadata.displayMetadata.displayName,\n ),\n objectTypeAShapeId: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidA,\n ),\n objectTypeBShapeId: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.objectTypeRidB,\n ),\n intermediaryObjectTypeShapeId: this.getObjectTypeShapeId(\n ridGenerator,\n linkDefinition.intermediaryObjectTypeRid,\n ),\n aToIntermediaryLinkTypeShapeId: this.getLinkTypeShapeId(\n ridGenerator,\n linkDefinition.aToIntermediaryLinkTypeRid,\n ),\n intermediaryToBLinkTypeShapeId: this.getLinkTypeShapeId(\n ridGenerator,\n linkDefinition.intermediaryToBLinkTypeRid,\n ),\n };\n\n return {\n inputShapes: new Map(),\n outputShapes: new Map([[linkReadableId, {\n type: \"linkType\",\n linkType: {\n type: \"intermediary\",\n intermediary: outputShape,\n } as LinkTypeOutputShape,\n }]]),\n inputShapeMetadata: new Map(),\n };\n }\n\n /**\n * Get object type shape ID reference\n */\n private getObjectTypeShapeId(\n ridGenerator: OntologyRidGenerator,\n objectTypeRid: ObjectTypeRid,\n ): string {\n const readableId = ridGenerator.getObjectTypeRids().inverse().get(\n objectTypeRid,\n );\n if (!readableId) {\n throw new Error(`Object type RID not found: ${objectTypeRid}`);\n }\n return ridGenerator.toBlockInternalId(readableId);\n }\n\n /**\n * Get link type shape ID reference\n */\n private getLinkTypeShapeId(\n ridGenerator: OntologyRidGenerator,\n linkTypeRid: LinkTypeRid,\n ): string {\n const readableId = ridGenerator.getLinkTypeRids().inverse().get(\n linkTypeRid,\n );\n if (!readableId) {\n throw new Error(`Object type RID not found: ${linkTypeRid}`);\n }\n return ridGenerator.toBlockInternalId(readableId);\n }\n\n /**\n * Get input shape for many-to-many datasource\n */\n private getInputShapeForManyToManyDatasource(\n ridGenerator: OntologyRidGenerator,\n linkTypeName: string,\n columns: Set<string>,\n datasourceLocator: DatasourceLocator,\n datasourceType: TabularDatasourceType,\n ): InputShape {\n const columnReferences: string[] = [];\n\n for (const column of columns) {\n for (\n const [id, shape] of ridGenerator.getColumnShapes().entries()\n ) {\n if (\n this.datasourceLocatorsMatch(shape.datasource, datasourceLocator)\n && shape.name === column\n ) {\n columnReferences.push(ridGenerator.toBlockInternalId(id));\n break;\n }\n }\n }\n\n const shape: TabularDatasourceInputShape = {\n about: createLocalizedAbout(linkTypeName),\n schema: columnReferences,\n supportedTypes: [datasourceType],\n };\n\n return {\n type: \"tabularDatasource\",\n tabularDatasource: shape,\n };\n }\n\n /**\n * Get column input shapes for many-to-many datasets\n */\n private getColumnInputShapesForManyToManyDatasets(\n ridGenerator: OntologyRidGenerator,\n columns: Set<string>,\n datasourceLocator: DatasourceLocator,\n datasourceReadableId: ReadableId,\n ): Map<ReadableId, InputShape> {\n const columnShapes = new Map<ReadableId, InputShape>();\n\n for (const column of columns) {\n for (\n const [id, shape] of ridGenerator.getColumnShapes().entries()\n ) {\n if (\n this.datasourceLocatorsMatch(shape.datasource, datasourceLocator)\n && shape.name === column\n ) {\n const columnShape: DatasourceColumnShape = {\n about: createLocalizedAbout(column),\n type: {\n type: \"generic\",\n generic: { type: \"any\", any: {} as Void },\n },\n datasource: ridGenerator.toBlockInternalId(datasourceReadableId),\n typeclasses: [],\n };\n\n columnShapes.set(id, {\n type: \"datasourceColumn\",\n datasourceColumn: columnShape,\n });\n break;\n }\n }\n }\n\n return columnShapes;\n }\n\n /**\n * Helper to compare datasource locators\n */\n private datasourceLocatorsMatch(\n a: DatasourceLocator,\n b: DatasourceLocator,\n ): boolean {\n if (a.type !== b.type) return false;\n\n if (a.type === \"dataset\" && b.type === \"dataset\") {\n return a.dataset.rid === b.dataset.rid\n && a.dataset.branch === b.dataset.branch;\n }\n\n if (a.type === \"stream\" && b.type === \"stream\") {\n return a.stream.rid === b.stream.rid\n && a.stream.branch === b.stream.branch;\n }\n\n if (a.type === \"restrictedView\" && b.type === \"restrictedView\") {\n return a.restrictedView.rid === b.restrictedView.rid;\n }\n\n return false;\n }\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA4BA;AACA;AACA;AACA,SAASA,oBAAoBA,CAC3BC,aAAqB,EACrBC,mBAA2B,GAAG,EAAE,EACF;EAC9B,OAAO;IACLD,aAAa;IACbC,mBAAmB;IACnBC,cAAc,EAAE,CAAC,CAAC;IAClBC,oBAAoB,EAAE,CAAC;EACzB,CAAC;AACH;;AAEA;AACA;AACA;AACA,OAAO,MAAMC,sBAAsB,CAAC;EAClC;AACF;AACA;EACEC,OAAOA,CACLC,cAA0B,EAC1BC,IAAyB,EACzBC,YAAkC,EACrB;IACb,MAAMC,YAAY,GAAGF,IAAI,CAACG,cAAc,EAAEC,iBAAiB,IAAI,KAAK;IAEpE,MAAMC,UAAU,GAAGL,IAAI,CAACM,QAAQ,CAACD,UAAU;IAE3C,QAAQA,UAAU,CAACE,IAAI;MACrB,KAAK,cAAc;QACjB,OAAO,IAAI,CAACC,mBAAmB,CAC7BT,cAAc,EACdM,UAAU,CAACI,YAAY,EACvBR,YACF,CAAC;MACH,KAAK,YAAY;QACf,OAAO,IAAI,CAACS,iBAAiB,CAC3BX,cAAc,EACdM,UAAU,CAACM,UAAU,EACrBV,YAAY,EACZD,IAAI,CAACY,WAAW,EAChBV,YACF,CAAC;MACH,KAAK,WAAW;QACd,OAAO,IAAI,CAACW,gBAAgB,CAC1Bd,cAAc,EACdM,UAAU,CAACS,SAAS,EACpBb,YACF,CAAC;MACH;QACE,MAAM,IAAIc,KAAK,CACb,iCAAkCV,UAAU,CAASE,IAAI,EAC3D,CAAC;IACL;EACF;;EAEA;AACF;AACA;EACUM,gBAAgBA,CACtBd,cAA0B,EAC1BiB,cAAmB,EACnBf,YAAkC,EACrB;IACb,MAAMgB,WAAmC,GAAG;MAC1CC,KAAK,EAAE1B,oBAAoB,CACzBwB,cAAc,CAACG,qBAAqB,CAACC,eAAe,CAACC,WACvD,CAAC;MACDC,wBAAwB,EAAE,IAAI,CAACC,oBAAoB,CACjDtB,YAAY,EACZe,cAAc,CAACQ,oBACjB,CAAC;MACDC,yBAAyB,EAAE,IAAI,CAACF,oBAAoB,CAClDtB,YAAY,EACZe,cAAc,CAACU,qBACjB,CAAC;MACDC,qBAAqB,EAAEnC,oBAAoB,CACzCwB,cAAc,CAACW,qBAAqB,CAACP,eAAe,CAACC,WACvD,CAAC;MACDF,qBAAqB,EAAE3B,oBAAoB,CACzCwB,cAAc,CAACG,qBAAqB,CAACC,eAAe,CAACC,WACvD,CAAC;MACDO,eAAe,EAAEZ,cAAc,CAACY,eAAe,KAAK,YAAY,GAC5D,YAAY,GACZ;IACN,CAAC;IAED,OAAO;MACLC,WAAW,EAAE,IAAIC,GAAG,CAAC,CAAC;MACtBC,YAAY,EAAE,IAAID,GAAG,CAAC,CAAC,CAAC/B,cAAc,EAAE;QACtCQ,IAAI,EAAE,UAAU;QAChBD,QAAQ,EAAE;UACRC,IAAI,EAAE,WAAW;UACjBO,SAAS,EAAEG;QACb;MACF,CAAC,CAAC,CAAC,CAAC;MACJe,kBAAkB,EAAE,IAAIF,GAAG,CAAC;IAC9B,CAAC;EACH;;EAEA;AACF;AACA;EACUpB,iBAAiBA,CACvBX,cAA0B,EAC1BiB,cAAwC,EACxCf,YAAkC,EAClCgC,WAAkB,EAClB/B,YAAqB,EACR;IACb,MAAMgC,YAAY,GAChBlB,cAAc,CAACmB,0BAA0B,CAACf,eAAe,CAACC,WAAW;IAEvE,MAAMJ,WAA0C,GAAG;MACjDC,KAAK,EAAE1B,oBAAoB,CAAC0C,YAAY,CAAC;MACzCC,0BAA0B,EAAE3C,oBAAoB,CAC9CwB,cAAc,CAACmB,0BAA0B,CAACf,eAAe,CAACC,WAC5D,CAAC;MACDe,0BAA0B,EAAE5C,oBAAoB,CAC9CwB,cAAc,CAACoB,0BAA0B,CAAChB,eAAe,CAACC,WAC5D,CAAC;MACDgB,kBAAkB,EAAE,IAAI,CAACd,oBAAoB,CAC3CtB,YAAY,EACZe,cAAc,CAACsB,cACjB,CAAC;MACDC,kBAAkB,EAAE,IAAI,CAAChB,oBAAoB,CAC3CtB,YAAY,EACZe,cAAc,CAACwB,cACjB,CAAC;MACDC,YAAY,EAAEvC,YAAY,GAAG,eAAe,GAAG,gBAAgB;MAC/DwC,qBAAqB,EAAE;IACzB,CAAC;IAED,MAAMC,aAAa,GAAG,IAAIb,GAAG,CAAyB,CAAC;IAEvD,KAAK,MAAMc,UAAU,IAAIX,WAAW,EAAE;MACpC,MAAMY,oBAAoB,GAAGD,UAAU,CAACA,UAAU;MAClD,IAAIE,iBAAoC;MACxC,IAAIC,OAAoB;MACxB,IAAIC,cAAqC;MAEzC,IAAIH,oBAAoB,CAACtC,IAAI,KAAK,SAAS,EAAE;QAC3CuC,iBAAiB,GAAG;UAClBvC,IAAI,EAAE,SAAS;UACf0C,OAAO,EAAE;YACPC,GAAG,EAAEL,oBAAoB,CAACI,OAAO,CAACE,UAAU;YAC5CC,MAAM,EAAEP,oBAAoB,CAACI,OAAO,CAACI;UACvC;QACF,CAAC;QACDN,OAAO,GAAG,IAAIO,GAAG,CAAC,CAChB,GAAGC,MAAM,CAACC,MAAM,CACdX,oBAAoB,CAACI,OAAO,CAACQ,4BAC/B,CAAC,CAACC,GAAG,CAACC,MAAM,CAAC,EACb,GAAGJ,MAAM,CAACC,MAAM,CACdX,oBAAoB,CAACI,OAAO,CAACW,4BAC/B,CAAC,CAACF,GAAG,CAACC,MAAM,CAAC,CACd,CAAC;QACFX,cAAc,GAAG,SAAS;MAC5B,CAAC,MAAM,IAAIH,oBAAoB,CAACtC,IAAI,KAAK,QAAQ,EAAE;QACjDuC,iBAAiB,GAAG;UAClBvC,IAAI,EAAE,QAAQ;UACdsD,MAAM,EAAE;YACNX,GAAG,EAAEL,oBAAoB,CAACgB,MAAM,CAACC,aAAa,CAACC,gBAAgB;YAC/DX,MAAM,EAAEP,oBAAoB,CAACgB,MAAM,CAACC,aAAa,CAACT;UACpD;QACF,CAAC;QACDN,OAAO,GAAG,IAAIO,GAAG,CAAC,CAChB,GAAGC,MAAM,CAACC,MAAM,CACdX,oBAAoB,CAACgB,MAAM,CAACJ,4BAC9B,CAAC,CAACC,GAAG,CAACC,MAAM,CAAC,EACb,GAAGJ,MAAM,CAACC,MAAM,CACdX,oBAAoB,CAACgB,MAAM,CAACD,4BAC9B,CAAC,CAACF,GAAG,CAACC,MAAM,CAAC,CACd,CAAC;QACFX,cAAc,GAAG,QAAQ;MAC3B,CAAC,MAAM;QACL;MACF;;MAEA;MACA,IAAIgB,oBAA4C;MAChD,KACE,MAAM,CAACC,EAAE,EAAEC,GAAG,CAAC,IAAIjE,YAAY,CAACkE,qBAAqB,CAAC,CAAC,CACpDC,OAAO,CAAC,CAAC,EACZ;QACA,IAAI,IAAI,CAACC,uBAAuB,CAACH,GAAG,EAAEpB,iBAAiB,CAAC,EAAE;UACxDkB,oBAAoB,GAAGC,EAAE;UACzB;QACF;MACF;MAEA,IAAI,CAACD,oBAAoB,EAAE;;MAE3B;MACA,MAAMM,YAAY,GAAG,IAAI,CAACC,yCAAyC,CACjEtE,YAAY,EACZ8C,OAAO,EACPD,iBAAiB,EACjBkB,oBACF,CAAC;MAED,KAAK,MAAM,CAACC,EAAE,EAAEO,KAAK,CAAC,IAAIF,YAAY,CAACF,OAAO,CAAC,CAAC,EAAE;QAChDzB,aAAa,CAAC8B,GAAG,CAACR,EAAE,EAAEO,KAAK,CAAC;MAC9B;;MAEA;MACA,MAAME,eAAe,GAAG,IAAI,CAACC,oCAAoC,CAC/D1E,YAAY,EACZiC,YAAY,EACZa,OAAO,EACPD,iBAAiB,EACjBE,cACF,CAAC;MAEDL,aAAa,CAAC8B,GAAG,CAACT,oBAAoB,EAAEU,eAAe,CAAC;IAC1D;IAEA,OAAO;MACL7C,WAAW,EAAEc,aAAa;MAC1BZ,YAAY,EAAE,IAAID,GAAG,CAAC,CAAC,CAAC/B,cAAc,EAAE;QACtCQ,IAAI,EAAE,UAAU;QAChBD,QAAQ,EAAE;UACRC,IAAI,EAAE,YAAY;UAClBI,UAAU,EAAEM;QACd;MACF,CAAC,CAAC,CAAC,CAAC;MACJe,kBAAkB,EAAE,IAAIF,GAAG,CAAC;IAC9B,CAAC;EACH;;EAEA;AACF;AACA;EACUtB,mBAAmBA,CACzBT,cAA0B,EAC1BiB,cAA0C,EAC1Cf,YAAkC,EACrB;IACb,MAAMgB,WAAsC,GAAG;MAC7CC,KAAK,EAAE1B,oBAAoB,CACzBwB,cAAc,CAACmB,0BAA0B,CAACf,eAAe,CAACC,WAC5D,CAAC;MACDc,0BAA0B,EAAE3C,oBAAoB,CAC9CwB,cAAc,CAACmB,0BAA0B,CAACf,eAAe,CAACC,WAC5D,CAAC;MACDe,0BAA0B,EAAE5C,oBAAoB,CAC9CwB,cAAc,CAACoB,0BAA0B,CAAChB,eAAe,CAACC,WAC5D,CAAC;MACDuD,kBAAkB,EAAE,IAAI,CAACrD,oBAAoB,CAC3CtB,YAAY,EACZe,cAAc,CAACsB,cACjB,CAAC;MACDuC,kBAAkB,EAAE,IAAI,CAACtD,oBAAoB,CAC3CtB,YAAY,EACZe,cAAc,CAACwB,cACjB,CAAC;MACDsC,6BAA6B,EAAE,IAAI,CAACvD,oBAAoB,CACtDtB,YAAY,EACZe,cAAc,CAAC+D,yBACjB,CAAC;MACDC,8BAA8B,EAAE,IAAI,CAACC,kBAAkB,CACrDhF,YAAY,EACZe,cAAc,CAACkE,0BACjB,CAAC;MACDC,8BAA8B,EAAE,IAAI,CAACF,kBAAkB,CACrDhF,YAAY,EACZe,cAAc,CAACoE,0BACjB;IACF,CAAC;IAED,OAAO;MACLvD,WAAW,EAAE,IAAIC,GAAG,CAAC,CAAC;MACtBC,YAAY,EAAE,IAAID,GAAG,CAAC,CAAC,CAAC/B,cAAc,EAAE;QACtCQ,IAAI,EAAE,UAAU;QAChBD,QAAQ,EAAE;UACRC,IAAI,EAAE,cAAc;UACpBE,YAAY,EAAEQ;QAChB;MACF,CAAC,CAAC,CAAC,CAAC;MACJe,kBAAkB,EAAE,IAAIF,GAAG,CAAC;IAC9B,CAAC;EACH;;EAEA;AACF;AACA;EACUP,oBAAoBA,CAC1BtB,YAAkC,EAClCoF,aAA4B,EACpB;IACR,MAAMC,UAAU,GAAGrF,YAAY,CAACsF,iBAAiB,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,CAACC,GAAG,CAC/DJ,aACF,CAAC;IACD,IAAI,CAACC,UAAU,EAAE;MACf,MAAM,IAAIvE,KAAK,CAAC,8BAA8BsE,aAAa,EAAE,CAAC;IAChE;IACA,OAAOpF,YAAY,CAACyF,iBAAiB,CAACJ,UAAU,CAAC;EACnD;;EAEA;AACF;AACA;EACUL,kBAAkBA,CACxBhF,YAAkC,EAClC0F,WAAwB,EAChB;IACR,MAAML,UAAU,GAAGrF,YAAY,CAAC2F,eAAe,CAAC,CAAC,CAACJ,OAAO,CAAC,CAAC,CAACC,GAAG,CAC7DE,WACF,CAAC;IACD,IAAI,CAACL,UAAU,EAAE;MACf,MAAM,IAAIvE,KAAK,CAAC,8BAA8B4E,WAAW,EAAE,CAAC;IAC9D;IACA,OAAO1F,YAAY,CAACyF,iBAAiB,CAACJ,UAAU,CAAC;EACnD;;EAEA;AACF;AACA;EACUX,oCAAoCA,CAC1C1E,YAAkC,EAClCiC,YAAoB,EACpBa,OAAoB,EACpBD,iBAAoC,EACpCE,cAAqC,EACzB;IACZ,MAAM6C,gBAA0B,GAAG,EAAE;IAErC,KAAK,MAAMC,MAAM,IAAI/C,OAAO,EAAE;MAC5B,KACE,MAAM,CAACkB,EAAE,EAAEO,KAAK,CAAC,IAAIvE,YAAY,CAAC8F,eAAe,CAAC,CAAC,CAAC3B,OAAO,CAAC,CAAC,EAC7D;QACA,IACE,IAAI,CAACC,uBAAuB,CAACG,KAAK,CAAC5B,UAAU,EAAEE,iBAAiB,CAAC,IAC9D0B,KAAK,CAACwB,IAAI,KAAKF,MAAM,EACxB;UACAD,gBAAgB,CAACI,IAAI,CAAChG,YAAY,CAACyF,iBAAiB,CAACzB,EAAE,CAAC,CAAC;UACzD;QACF;MACF;IACF;IAEA,MAAMO,KAAkC,GAAG;MACzCtD,KAAK,EAAE1B,oBAAoB,CAAC0C,YAAY,CAAC;MACzCgE,MAAM,EAAEL,gBAAgB;MACxBM,cAAc,EAAE,CAACnD,cAAc;IACjC,CAAC;IAED,OAAO;MACLzC,IAAI,EAAE,mBAAmB;MACzB6F,iBAAiB,EAAE5B;IACrB,CAAC;EACH;;EAEA;AACF;AACA;EACUD,yCAAyCA,CAC/CtE,YAAkC,EAClC8C,OAAoB,EACpBD,iBAAoC,EACpCkB,oBAAgC,EACH;IAC7B,MAAMM,YAAY,GAAG,IAAIxC,GAAG,CAAyB,CAAC;IAEtD,KAAK,MAAMgE,MAAM,IAAI/C,OAAO,EAAE;MAC5B,KACE,MAAM,CAACkB,EAAE,EAAEO,KAAK,CAAC,IAAIvE,YAAY,CAAC8F,eAAe,CAAC,CAAC,CAAC3B,OAAO,CAAC,CAAC,EAC7D;QACA,IACE,IAAI,CAACC,uBAAuB,CAACG,KAAK,CAAC5B,UAAU,EAAEE,iBAAiB,CAAC,IAC9D0B,KAAK,CAACwB,IAAI,KAAKF,MAAM,EACxB;UACA,MAAMO,WAAkC,GAAG;YACzCnF,KAAK,EAAE1B,oBAAoB,CAACsG,MAAM,CAAC;YACnCvF,IAAI,EAAE;cACJA,IAAI,EAAE,SAAS;cACf+F,OAAO,EAAE;gBAAE/F,IAAI,EAAE,KAAK;gBAAEgG,GAAG,EAAE,CAAC;cAAU;YAC1C,CAAC;YACD3D,UAAU,EAAE3C,YAAY,CAACyF,iBAAiB,CAAC1B,oBAAoB,CAAC;YAChEwC,WAAW,EAAE;UACf,CAAC;UAEDlC,YAAY,CAACG,GAAG,CAACR,EAAE,EAAE;YACnB1D,IAAI,EAAE,kBAAkB;YACxBkG,gBAAgB,EAAEJ;UACpB,CAAC,CAAC;UACF;QACF;MACF;IACF;IAEA,OAAO/B,YAAY;EACrB;;EAEA;AACF;AACA;EACUD,uBAAuBA,CAC7BqC,CAAoB,EACpBC,CAAoB,EACX;IACT,IAAID,CAAC,CAACnG,IAAI,KAAKoG,CAAC,CAACpG,IAAI,EAAE,OAAO,KAAK;IAEnC,IAAImG,CAAC,CAACnG,IAAI,KAAK,SAAS,IAAIoG,CAAC,CAACpG,IAAI,KAAK,SAAS,EAAE;MAChD,OAAOmG,CAAC,CAACzD,OAAO,CAACC,GAAG,KAAKyD,CAAC,CAAC1D,OAAO,CAACC,GAAG,IACjCwD,CAAC,CAACzD,OAAO,CAACG,MAAM,KAAKuD,CAAC,CAAC1D,OAAO,CAACG,MAAM;IAC5C;IAEA,IAAIsD,CAAC,CAACnG,IAAI,KAAK,QAAQ,IAAIoG,CAAC,CAACpG,IAAI,KAAK,QAAQ,EAAE;MAC9C,OAAOmG,CAAC,CAAC7C,MAAM,CAACX,GAAG,KAAKyD,CAAC,CAAC9C,MAAM,CAACX,GAAG,IAC/BwD,CAAC,CAAC7C,MAAM,CAACT,MAAM,KAAKuD,CAAC,CAAC9C,MAAM,CAACT,MAAM;IAC1C;IAEA,IAAIsD,CAAC,CAACnG,IAAI,KAAK,gBAAgB,IAAIoG,CAAC,CAACpG,IAAI,KAAK,gBAAgB,EAAE;MAC9D,OAAOmG,CAAC,CAACE,cAAc,CAAC1D,GAAG,KAAKyD,CAAC,CAACC,cAAc,CAAC1D,GAAG;IACtD;IAEA,OAAO,KAAK;EACd;AACF","ignoreList":[]}
@@ -2989,7 +2989,7 @@ var LinkTypeShapeExtractor = class {
2989
2989
  for (const column of columns) {
2990
2990
  for (const [id, shape2] of ridGenerator.getColumnShapes().entries()) {
2991
2991
  if (this.datasourceLocatorsMatch(shape2.datasource, datasourceLocator) && shape2.name === column) {
2992
- columnReferences.push(id);
2992
+ columnReferences.push(ridGenerator.toBlockInternalId(id));
2993
2993
  break;
2994
2994
  }
2995
2995
  }
@@ -3021,7 +3021,7 @@ var LinkTypeShapeExtractor = class {
3021
3021
  any: {}
3022
3022
  }
3023
3023
  },
3024
- datasource: datasourceReadableId,
3024
+ datasource: ridGenerator.toBlockInternalId(datasourceReadableId),
3025
3025
  typeclasses: []
3026
3026
  };
3027
3027
  columnShapes.set(id, {
@@ -4251,7 +4251,7 @@ var apiNamespaceRegex = /^[a-z0-9-]+(\.[a-z0-9-]+)*\.$/;
4251
4251
  var uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;
4252
4252
  async function main(args = process.argv) {
4253
4253
  consola.consola.log("Generating BlockGeneratorResult for ontology...");
4254
- const commandLineOpts = await yargs__default.default(helpers.hideBin(args)).version("0.6.0-beta.8").wrap(Math.min(150, yargs__default.default().terminalWidth())).strict().help().options({
4254
+ const commandLineOpts = await yargs__default.default(helpers.hideBin(args)).version("0.6.0-beta.9").wrap(Math.min(150, yargs__default.default().terminalWidth())).strict().help().options({
4255
4255
  input: {
4256
4256
  alias: "i",
4257
4257
  describe: "Input file",