@osdk/maker-experimental 0.6.0-beta.7 → 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 +23 -0
- package/build/browser/api/defineOntologyV2.js +1 -1
- package/build/browser/api/defineOntologyV2.js.map +1 -1
- package/build/browser/cli/main.js +2 -3
- package/build/browser/cli/main.js.map +1 -1
- package/build/browser/conversion/toMarketplace/convertDatasourceDefinition.js +2 -2
- package/build/browser/conversion/toMarketplace/convertDatasourceDefinition.js.map +1 -1
- package/build/browser/conversion/toMarketplace/convertLink.js +5 -4
- package/build/browser/conversion/toMarketplace/convertLink.js.map +1 -1
- package/build/browser/conversion/toMarketplace/convertOntologyDefinitionToWireBlockData.js +6 -6
- package/build/browser/conversion/toMarketplace/convertOntologyDefinitionToWireBlockData.js.map +1 -1
- package/build/browser/conversion/toMarketplace/shapeExtractors/LinkTypeShapeExtractor.js +2 -2
- package/build/browser/conversion/toMarketplace/shapeExtractors/LinkTypeShapeExtractor.js.map +1 -1
- package/build/browser/util/generateRid.js +4 -4
- package/build/browser/util/generateRid.js.map +1 -1
- package/build/cjs/{ActionTypeShapeExtractor-LH6ZRKVO.cjs → ActionTypeShapeExtractor-MWOBZ3A5.cjs} +4 -4
- package/build/cjs/{ActionTypeShapeExtractor-LH6ZRKVO.cjs.map → ActionTypeShapeExtractor-MWOBZ3A5.cjs.map} +1 -1
- package/build/cjs/{chunk-2J65CKX4.cjs → chunk-XMO5RRJG.cjs} +3 -3
- package/build/cjs/chunk-XMO5RRJG.cjs.map +1 -0
- package/build/cjs/index.cjs +56 -56
- package/build/cjs/index.cjs.map +1 -1
- package/build/cjs/index.d.cts +1 -1
- package/build/esm/api/defineOntologyV2.js +1 -1
- package/build/esm/api/defineOntologyV2.js.map +1 -1
- package/build/esm/cli/main.js +2 -3
- package/build/esm/cli/main.js.map +1 -1
- package/build/esm/conversion/toMarketplace/convertDatasourceDefinition.js +2 -2
- package/build/esm/conversion/toMarketplace/convertDatasourceDefinition.js.map +1 -1
- package/build/esm/conversion/toMarketplace/convertLink.js +5 -4
- package/build/esm/conversion/toMarketplace/convertLink.js.map +1 -1
- package/build/esm/conversion/toMarketplace/convertOntologyDefinitionToWireBlockData.js +6 -6
- package/build/esm/conversion/toMarketplace/convertOntologyDefinitionToWireBlockData.js.map +1 -1
- package/build/esm/conversion/toMarketplace/shapeExtractors/LinkTypeShapeExtractor.js +2 -2
- package/build/esm/conversion/toMarketplace/shapeExtractors/LinkTypeShapeExtractor.js.map +1 -1
- package/build/esm/util/generateRid.js +4 -4
- package/build/esm/util/generateRid.js.map +1 -1
- package/build/types/conversion/toMarketplace/convertLink.d.ts.map +1 -1
- package/build/types/conversion/toMarketplace/convertOntologyDefinitionToWireBlockData.d.ts.map +1 -1
- package/build/types/util/generateRid.d.ts +2 -2
- package/build/types/util/generateRid.d.ts.map +1 -1
- package/package.json +4 -4
- package/build/cjs/chunk-2J65CKX4.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convertOntologyDefinitionToWireBlockData.js","names":["cleanAndValidateLinkTypeId","OntologyEntityTypeEnum","ReadableIdGenerator","convertAction","convertInterface","convertLink","convertObject","convertSpt","MIGRATION_SHAPE_READABLE_ID","convertOntologyDefinitionToWireBlockData","ontology","ridGenerator","objectTypes","Object","fromEntries","entries","OBJECT_TYPE","map","apiName","objectType","generateRidForObjectType","sharedPropertyTypes","SHARED_PROPERTY_TYPE","spt","generateSptRid","sharedPropertyType","interfaceTypes","INTERFACE_TYPE","interfaceType","generateRidForInterface","linkTypes","LINK_TYPE","id","link","generateRidForLinkType","actionTypes","ACTION_TYPE","action","generateRidForActionType","knownIdentifiers","buildKnownIdentifiers","blockOutputCompassLocations","ruleSets","blockPermissionInformation","filter","validation","restrictionStatus","hasRolesApplied","ontologyPackageRid","interfaceMappings","Array","from","getInterfaceRids","inverse","rid","readableId","toBlockInternalId","sharedPropertyMappings","getSharedPropertyTypeRids","interfaceLinkMappings","getInterfaceLinkTypeRids","backingDatasourceMappings","getDatasourceLocators","locator","filesDatasourceMappings","getFilesDatasourceLocators","objectTypeRids","getObjectTypeRids","objectTypeIds","objectTypeApiName","getObjectTypeIds","get","getForObjectType","propertyTypeIds","forEach","propMap","properties","property","getForObjectProperty","objTypeId","propertyRids","getPropertyTypeRids","datasourceColumns","getColumnShapes","shape","timeSeriesSyncs","getTimeSeriesSyncs","geotimeSeriesSyncs","getGeotimeSeriesIntegrationRids","linkTypeIds","keys","linkTypeId","getForLinkType","linkTypeRids","getLinkTypeRids","actionTypeMappings","getActionTypeRids","actionParameterMappings","getParameterRidAndIds","biMap","ridAndId","actionParameterIdMappings","actionTypeRid","actionReadableId","actionTypeApiName","replace","paramBiMap","paramMap","paramReadableId","groupMappings","getGroupIds","groupId","interfacePropertyMappings","getInterfacePropertyTypeRids","valueTypeMappings","getConsumedValueTypeReferences","asMap","valueTypeRef","versionId","markingEntries","prop","type","markingInputGroupName","push","markingId","markingType","datasources","ds","propertySecurityGroups","psg","appliedMarkings","markingsMappings","seenMarkings","Set","key","has","add","getForMarking","blockInternalId","actionParameterIds","actionParameters","filesDatasources","functions","groupIds","interfaceLinkTypes","interfacePropertyTypes","markings","propertyTypes","shapeIdForOntologyAllowSchemaMigrations","shapeIdForInstallPrefix","valueTypes","webhooks","workshopModules"],"sources":["convertOntologyDefinitionToWireBlockData.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 ActionTypeBlockDataV2,\n ActionTypePermissionInformation,\n InterfaceTypeBlockDataV2,\n LinkTypeBlockDataV2,\n ObjectTypeBlockDataV2,\n OntologyBlockDataV2,\n SharedPropertyTypeBlockDataV2,\n} from \"@osdk/client.unstable\";\nimport type { OntologyDefinition } from \"@osdk/maker\";\nimport {\n cleanAndValidateLinkTypeId,\n OntologyEntityTypeEnum,\n} from \"@osdk/maker\";\nimport type { OntologyRidGenerator } from \"../../util/generateRid.js\";\nimport { ReadableIdGenerator } from \"../../util/generateRid.js\";\nimport { convertAction } from \"./convertActionHelpers.js\";\nimport { convertInterface } from \"./convertInterface.js\";\nimport { convertLink } from \"./convertLink.js\";\nimport { convertObject } from \"./convertObject.js\";\nimport { convertSpt } from \"./convertSpt.js\";\nimport { MIGRATION_SHAPE_READABLE_ID } from \"./shapeExtractors/IrShapeExtractor.js\";\n\nexport function convertOntologyDefinitionToWireBlockData(\n ontology: OntologyDefinition,\n ridGenerator: OntologyRidGenerator,\n): OntologyBlockDataV2 {\n // Convert all entity types first to populate ridGenerator's BiMaps\n const objectTypes = Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.OBJECT_TYPE]).map<\n [string, ObjectTypeBlockDataV2]\n >(([apiName, objectType]) => {\n return [\n ridGenerator.generateRidForObjectType(apiName),\n convertObject(objectType, ridGenerator),\n ];\n }),\n );\n\n const sharedPropertyTypes = Object.fromEntries(\n Object.entries(\n ontology[OntologyEntityTypeEnum.SHARED_PROPERTY_TYPE],\n )\n .map<[string, SharedPropertyTypeBlockDataV2]>((\n [apiName, spt],\n ) => [ridGenerator.generateSptRid(apiName), {\n sharedPropertyType: convertSpt(spt, ridGenerator),\n }]),\n );\n\n const interfaceTypes = Object.fromEntries(\n Object.entries(\n ontology[OntologyEntityTypeEnum.INTERFACE_TYPE],\n )\n .map<[string, InterfaceTypeBlockDataV2]>(\n ([apiName, interfaceType]) => {\n return [ridGenerator.generateRidForInterface(apiName), {\n interfaceType: convertInterface(interfaceType, ridGenerator),\n }];\n },\n ),\n );\n\n const linkTypes = Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.LINK_TYPE]).map<\n [string, LinkTypeBlockDataV2]\n >(([id, link]) => {\n return [\n ridGenerator.generateRidForLinkType(cleanAndValidateLinkTypeId(id)),\n convertLink(link, ridGenerator),\n ];\n }),\n );\n\n const actionTypes = Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.ACTION_TYPE]).map<\n [string, ActionTypeBlockDataV2]\n >(([apiName, action]) => {\n return [\n ridGenerator.generateRidForActionType(apiName),\n convertAction(action, ridGenerator),\n ];\n }),\n );\n\n // Build knownIdentifiers from ridGenerator's BiMaps\n const knownIdentifiers = buildKnownIdentifiers(\n ontology,\n ridGenerator,\n );\n\n return ({\n objectTypes,\n sharedPropertyTypes,\n interfaceTypes,\n linkTypes,\n actionTypes,\n // TODO: Add proper blockOutputCompassLocations mapping\n blockOutputCompassLocations: {},\n knownIdentifiers,\n ruleSets: {},\n blockPermissionInformation: {\n actionTypes: Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.ACTION_TYPE])\n .filter(([apiName, action]) => action.validation)\n .map<\n [string, ActionTypePermissionInformation]\n >(([apiName, action]) => {\n return [ridGenerator.generateRidForActionType(apiName), {\n restrictionStatus: {\n hasRolesApplied: true,\n ontologyPackageRid: null,\n },\n }];\n }),\n ),\n linkTypes: {},\n objectTypes: {},\n },\n });\n}\n\nfunction buildKnownIdentifiers(\n ontology: OntologyDefinition,\n ridGenerator: OntologyRidGenerator,\n) {\n // Interface types: InterfaceTypeRid -> BlockInternalId\n const interfaceMappings = Object.fromEntries(\n Array.from(ridGenerator.getInterfaceRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Shared property types: SharedPropertyTypeRid -> BlockInternalId\n const sharedPropertyMappings = Object.fromEntries(\n Array.from(ridGenerator.getSharedPropertyTypeRids().inverse().entries())\n .map(([rid, readableId]) => [\n rid,\n ridGenerator.toBlockInternalId(readableId),\n ]),\n );\n\n // Interface link types: InterfaceLinkTypeRid -> BlockInternalId\n const interfaceLinkMappings = Object.fromEntries(\n Array.from(ridGenerator.getInterfaceLinkTypeRids().inverse().entries())\n .map(([rid, readableId]) => [\n rid,\n ridGenerator.toBlockInternalId(readableId),\n ]),\n );\n\n // Datasources: BlockInternalId -> DatasourceLocator\n const backingDatasourceMappings = Object.fromEntries(\n Array.from(ridGenerator.getDatasourceLocators().entries()).map((\n [readableId, locator],\n ) => [ridGenerator.toBlockInternalId(readableId), locator]),\n );\n\n // Files datasources: BlockInternalId -> FilesDatasourceLocator\n const filesDatasourceMappings = Object.fromEntries(\n Array.from(ridGenerator.getFilesDatasourceLocators().entries()).map((\n [readableId, locator],\n ) => [ridGenerator.toBlockInternalId(readableId), locator]),\n );\n\n // Object type RIDs: ObjectTypeRid -> BlockInternalId\n const objectTypeRids = Object.fromEntries(\n Array.from(ridGenerator.getObjectTypeRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Object type IDs: ObjectTypeId -> BlockInternalId\n const objectTypeIds = Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.OBJECT_TYPE]).map((\n [objectTypeApiName, objectType],\n ) => [\n ridGenerator.getObjectTypeIds().get(\n ReadableIdGenerator.getForObjectType(objectTypeApiName),\n ),\n ridGenerator.toBlockInternalId(\n ReadableIdGenerator.getForObjectType(objectTypeApiName),\n ),\n ]),\n );\n\n // Property type IDs: ObjectTypeId -> (PropertyTypeId -> BlockInternalId)\n const propertyTypeIds: Record<string, Record<string, string>> = {};\n Object.entries(ontology[OntologyEntityTypeEnum.OBJECT_TYPE]).forEach((\n [objectTypeApiName, objectType],\n ) => {\n const propMap: Record<string, string> = {};\n (objectType.properties ?? []).forEach((property) => {\n propMap[property.apiName] = ridGenerator.toBlockInternalId(\n ReadableIdGenerator.getForObjectProperty(\n objectTypeApiName,\n property.apiName,\n ),\n );\n });\n const objTypeId = ridGenerator.getObjectTypeIds().get(\n ReadableIdGenerator.getForObjectType(objectTypeApiName),\n )!;\n propertyTypeIds[objTypeId] = propMap;\n });\n\n // Property type RIDs: PropertyTypeRid -> BlockInternalId\n const propertyRids = Object.fromEntries(\n Array.from(ridGenerator.getPropertyTypeRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Datasource columns: BlockInternalId -> ResolvedDatasourceColumnShape\n const datasourceColumns = Object.fromEntries(\n Array.from(ridGenerator.getColumnShapes().entries()).map((\n [readableId, shape],\n ) => [ridGenerator.toBlockInternalId(readableId), shape]),\n );\n\n // Time series syncs: TimeSeriesSyncRid -> BlockInternalId\n const timeSeriesSyncs = Object.fromEntries(\n Array.from(ridGenerator.getTimeSeriesSyncs().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Geotime series syncs: GeotimeSeriesIntegrationRid -> BlockInternalId\n const geotimeSeriesSyncs = Object.fromEntries(\n Array.from(\n ridGenerator.getGeotimeSeriesIntegrationRids().inverse().entries(),\n ).map(([rid, readableId]) => [\n rid,\n ridGenerator.toBlockInternalId(readableId),\n ]),\n );\n\n // Link type IDs: LinkTypeId -> BlockInternalId\n const linkTypeIds = Object.fromEntries(\n Object.keys(ontology[OntologyEntityTypeEnum.LINK_TYPE]).map((\n linkTypeId,\n link,\n ) => [\n cleanAndValidateLinkTypeId(linkTypeId),\n ridGenerator.toBlockInternalId(\n ReadableIdGenerator.getForLinkType(\n cleanAndValidateLinkTypeId(linkTypeId),\n ),\n ),\n ]),\n );\n\n // Link type RIDs: LinkTypeRid -> BlockInternalId\n const linkTypeRids = Object.fromEntries(\n Array.from(ridGenerator.getLinkTypeRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Action types: ActionTypeRid -> BlockInternalId\n const actionTypeMappings = Object.fromEntries(\n Array.from(ridGenerator.getActionTypeRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Action parameters: ParameterRid -> BlockInternalId\n const actionParameterMappings: Record<string, string> = {};\n ridGenerator.getParameterRidAndIds().forEach((biMap, _actionApiName) => {\n Array.from(biMap.entries()).forEach(([readableId, ridAndId]) => {\n actionParameterMappings[ridAndId.rid] = ridGenerator.toBlockInternalId(\n readableId,\n );\n });\n });\n\n // Action parameter IDs: ActionTypeRid -> (ParameterId -> BlockInternalId)\n const actionParameterIdMappings: Record<string, Record<string, string>> = {};\n Array.from(ridGenerator.getActionTypeRids().inverse().entries()).forEach((\n [actionTypeRid, actionReadableId],\n ) => {\n // Extract action type API name from readable ID\n const actionTypeApiName = actionReadableId.replace(\n /^action-type-/,\n \"\",\n );\n const paramBiMap = ridGenerator.getParameterRidAndIds().get(\n actionTypeApiName,\n );\n if (paramBiMap) {\n const paramMap: Record<string, string> = {};\n Array.from(paramBiMap.entries()).forEach((\n [paramReadableId, ridAndId],\n ) => {\n paramMap[ridAndId.id] = ridGenerator.toBlockInternalId(\n paramReadableId,\n );\n });\n actionParameterIdMappings[actionTypeRid] = paramMap;\n }\n });\n\n // Group IDs: GroupId -> BlockInternalId\n const groupMappings = Object.fromEntries(\n Array.from(ridGenerator.getGroupIds().inverse().entries()).map((\n [groupId, readableId],\n ) => [groupId, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Interface property types: InterfacePropertyTypeRid -> BlockInternalId\n const interfacePropertyMappings = Object.fromEntries(\n Array.from(ridGenerator.getInterfacePropertyTypeRids().inverse().entries())\n .map(([rid, readableId]) => [\n rid,\n ridGenerator.toBlockInternalId(readableId),\n ]),\n );\n\n // Value types: ValueTypeRid -> (ValueTypeVersionId -> BlockInternalId)\n const valueTypeMappings: Record<string, Record<string, string>> = {};\n ridGenerator.getConsumedValueTypeReferences().asMap().forEach((\n valueTypeRef,\n readableId,\n ) => {\n if (!valueTypeMappings[valueTypeRef.rid]) {\n valueTypeMappings[valueTypeRef.rid] = {};\n }\n valueTypeMappings[valueTypeRef.rid][valueTypeRef.versionId] = ridGenerator\n .toBlockInternalId(readableId);\n });\n\n // Build markings mapping: BlockInternalId -> [markingId]\n // Collect marking shapes from object type marking properties and additionalMandatoryMarkings\n const markingEntries: Array<\n { markingId: string; markingType: \"CBAC\" | \"MANDATORY\" }\n > = [];\n Object.entries(ontology[OntologyEntityTypeEnum.OBJECT_TYPE]).forEach(\n ([objectTypeApiName, objectType]) => {\n // Marking properties\n (objectType.properties ?? []).forEach((prop) => {\n if (\n typeof prop.type === \"object\" && prop.type.type === \"marking\"\n && prop.type.markingInputGroupName\n ) {\n markingEntries.push({\n markingId: prop.type.markingInputGroupName,\n markingType: prop.type.markingType as \"CBAC\" | \"MANDATORY\",\n });\n }\n });\n // additionalMandatoryMarkings from property security groups\n (objectType.datasources ?? []).forEach((ds) => {\n if (\"propertySecurityGroups\" in ds && ds.propertySecurityGroups) {\n ds.propertySecurityGroups.forEach((psg) => {\n if (psg.appliedMarkings) {\n Object.entries(psg.appliedMarkings).forEach(\n ([markingId, markingType]) => {\n markingEntries.push({\n markingId,\n markingType: markingType as \"CBAC\" | \"MANDATORY\",\n });\n },\n );\n }\n });\n }\n });\n },\n );\n\n // Deduplicate and build mapping\n const markingsMappings: Record<string, string[]> = {};\n const seenMarkings = new Set<string>();\n markingEntries.forEach(({ markingId, markingType }) => {\n const key = `${markingId}-${markingType}`;\n if (seenMarkings.has(key)) return;\n seenMarkings.add(key);\n const readableId = ReadableIdGenerator.getForMarking(\n markingId,\n markingType,\n );\n const blockInternalId = ridGenerator.toBlockInternalId(readableId);\n markingsMappings[blockInternalId] = [markingId];\n });\n\n return {\n actionParameterIds: actionParameterIdMappings,\n actionParameters: actionParameterMappings,\n actionTypes: actionTypeMappings,\n datasourceColumns: datasourceColumns,\n datasources: backingDatasourceMappings,\n filesDatasources: filesDatasourceMappings,\n functions: {},\n geotimeSeriesSyncs: geotimeSeriesSyncs,\n groupIds: groupMappings,\n interfaceLinkTypes: interfaceLinkMappings,\n interfacePropertyTypes: interfacePropertyMappings,\n interfaceTypes: interfaceMappings,\n linkTypeIds: linkTypeIds,\n linkTypes: linkTypeRids,\n markings: markingsMappings,\n objectTypeIds: objectTypeIds,\n objectTypes: objectTypeRids,\n propertyTypeIds: propertyTypeIds,\n propertyTypes: propertyRids,\n sharedPropertyTypes: sharedPropertyMappings,\n shapeIdForOntologyAllowSchemaMigrations: ridGenerator.toBlockInternalId(\n MIGRATION_SHAPE_READABLE_ID,\n ),\n shapeIdForInstallPrefix: null,\n timeSeriesSyncs: timeSeriesSyncs,\n valueTypes: valueTypeMappings,\n webhooks: {},\n workshopModules: {},\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"convertOntologyDefinitionToWireBlockData.js","names":["cleanAndValidateLinkTypeId","OntologyEntityTypeEnum","ReadableIdGenerator","convertAction","convertInterface","convertLink","convertObject","convertSpt","MIGRATION_SHAPE_READABLE_ID","convertOntologyDefinitionToWireBlockData","ontology","ridGenerator","objectTypes","Object","fromEntries","entries","OBJECT_TYPE","map","apiName","objectType","generateRidForObjectType","sharedPropertyTypes","SHARED_PROPERTY_TYPE","spt","generateSptRid","sharedPropertyType","interfaceTypes","INTERFACE_TYPE","interfaceType","generateRidForInterface","linkTypes","LINK_TYPE","id","link","generateRidForLinkType","actionTypes","ACTION_TYPE","action","generateRidForActionType","knownIdentifiers","buildKnownIdentifiers","blockOutputCompassLocations","ruleSets","blockPermissionInformation","filter","validation","restrictionStatus","hasRolesApplied","ontologyPackageRid","interfaceMappings","Array","from","getInterfaceRids","inverse","rid","readableId","toBlockInternalId","sharedPropertyMappings","getSharedPropertyTypeRids","interfaceLinkMappings","getInterfaceLinkTypeRids","backingDatasourceMappings","getDatasourceLocators","locator","filesDatasourceMappings","getFilesDatasourceLocators","objectTypeRids","getObjectTypeRids","objectTypeIds","objectTypeApiName","getObjectTypeIds","get","getForObjectType","propertyTypeIds","forEach","propMap","properties","property","getForObjectProperty","objTypeId","propertyRids","getPropertyTypeRids","datasourceColumns","getColumnShapes","shape","timeSeriesSyncs","getTimeSeriesSyncs","geotimeSeriesSyncs","getGeotimeSeriesIntegrationRids","linkTypeIds","keys","linkTypeId","getForLinkType","linkTypeRids","getLinkTypeRids","actionTypeMappings","getActionTypeRids","actionParameterMappings","getParameterRidAndIds","biMap","ridAndId","actionParameterIdMappings","actionTypeRid","actionReadableId","actionTypeApiName","replace","paramBiMap","paramMap","paramReadableId","groupMappings","getGroupIds","groupId","interfacePropertyMappings","getInterfacePropertyTypeRids","valueTypeMappings","getConsumedValueTypeReferences","asMap","valueTypeRef","versionId","markingEntries","prop","type","markingInputGroupName","push","markingId","markingType","datasources","ds","propertySecurityGroups","psg","appliedMarkings","markingsMappings","seenMarkings","Set","key","has","add","getForMarking","blockInternalId","actionParameterIds","actionParameters","filesDatasources","functions","groupIds","interfaceLinkTypes","interfacePropertyTypes","markings","propertyTypes","shapeIdForOntologyAllowSchemaMigrations","shapeIdForInstallPrefix","valueTypes","webhooks","workshopModules"],"sources":["convertOntologyDefinitionToWireBlockData.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 ActionTypeBlockDataV2,\n ActionTypePermissionInformation,\n InterfaceTypeBlockDataV2,\n KnownMarketplaceIdentifiers,\n LinkTypeBlockDataV2,\n ObjectTypeBlockDataV2,\n OntologyBlockDataV2,\n SharedPropertyTypeBlockDataV2,\n} from \"@osdk/client.unstable\";\nimport type { OntologyDefinition } from \"@osdk/maker\";\nimport {\n cleanAndValidateLinkTypeId,\n OntologyEntityTypeEnum,\n} from \"@osdk/maker\";\nimport type { OntologyRidGenerator } from \"../../util/generateRid.js\";\nimport { ReadableIdGenerator } from \"../../util/generateRid.js\";\nimport { convertAction } from \"./convertActionHelpers.js\";\nimport { convertInterface } from \"./convertInterface.js\";\nimport { convertLink } from \"./convertLink.js\";\nimport { convertObject } from \"./convertObject.js\";\nimport { convertSpt } from \"./convertSpt.js\";\nimport { MIGRATION_SHAPE_READABLE_ID } from \"./shapeExtractors/IrShapeExtractor.js\";\n\nexport function convertOntologyDefinitionToWireBlockData(\n ontology: OntologyDefinition,\n ridGenerator: OntologyRidGenerator,\n): OntologyBlockDataV2 {\n // Convert all entity types first to populate ridGenerator's BiMaps\n const objectTypes = Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.OBJECT_TYPE]).map<\n [string, ObjectTypeBlockDataV2]\n >(([apiName, objectType]) => {\n return [\n ridGenerator.generateRidForObjectType(apiName),\n convertObject(objectType, ridGenerator),\n ];\n }),\n );\n\n const sharedPropertyTypes = Object.fromEntries(\n Object.entries(\n ontology[OntologyEntityTypeEnum.SHARED_PROPERTY_TYPE],\n )\n .map<[string, SharedPropertyTypeBlockDataV2]>((\n [apiName, spt],\n ) => [ridGenerator.generateSptRid(apiName), {\n sharedPropertyType: convertSpt(spt, ridGenerator),\n }]),\n );\n\n const interfaceTypes = Object.fromEntries(\n Object.entries(\n ontology[OntologyEntityTypeEnum.INTERFACE_TYPE],\n )\n .map<[string, InterfaceTypeBlockDataV2]>(\n ([apiName, interfaceType]) => {\n return [ridGenerator.generateRidForInterface(apiName), {\n interfaceType: convertInterface(interfaceType, ridGenerator),\n }];\n },\n ),\n );\n\n const linkTypes = Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.LINK_TYPE]).map<\n [string, LinkTypeBlockDataV2]\n >(([id, link]) => {\n return [\n ridGenerator.generateRidForLinkType(cleanAndValidateLinkTypeId(id)),\n convertLink(link, ridGenerator),\n ];\n }),\n );\n\n const actionTypes = Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.ACTION_TYPE]).map<\n [string, ActionTypeBlockDataV2]\n >(([apiName, action]) => {\n return [\n ridGenerator.generateRidForActionType(apiName),\n convertAction(action, ridGenerator),\n ];\n }),\n );\n\n // Build knownIdentifiers from ridGenerator's BiMaps\n const knownIdentifiers = buildKnownIdentifiers(\n ontology,\n ridGenerator,\n );\n\n return ({\n objectTypes,\n sharedPropertyTypes,\n interfaceTypes,\n linkTypes,\n actionTypes,\n // TODO: Add proper blockOutputCompassLocations mapping\n blockOutputCompassLocations: {},\n knownIdentifiers,\n ruleSets: {},\n blockPermissionInformation: {\n actionTypes: Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.ACTION_TYPE])\n .filter(([apiName, action]) => action.validation)\n .map<\n [string, ActionTypePermissionInformation]\n >(([apiName, action]) => {\n return [ridGenerator.generateRidForActionType(apiName), {\n restrictionStatus: {\n hasRolesApplied: true,\n ontologyPackageRid: null,\n },\n }];\n }),\n ),\n linkTypes: {},\n objectTypes: {},\n },\n });\n}\n\nfunction buildKnownIdentifiers(\n ontology: OntologyDefinition,\n ridGenerator: OntologyRidGenerator,\n): KnownMarketplaceIdentifiers {\n // Interface types: InterfaceTypeRid -> BlockInternalId\n const interfaceMappings = Object.fromEntries(\n Array.from(ridGenerator.getInterfaceRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Shared property types: SharedPropertyTypeRid -> BlockInternalId\n const sharedPropertyMappings = Object.fromEntries(\n Array.from(ridGenerator.getSharedPropertyTypeRids().inverse().entries())\n .map(([rid, readableId]) => [\n rid,\n ridGenerator.toBlockInternalId(readableId),\n ]),\n );\n\n // Interface link types: InterfaceLinkTypeRid -> BlockInternalId\n const interfaceLinkMappings = Object.fromEntries(\n Array.from(ridGenerator.getInterfaceLinkTypeRids().inverse().entries())\n .map(([rid, readableId]) => [\n rid,\n ridGenerator.toBlockInternalId(readableId),\n ]),\n );\n\n // Datasources: BlockInternalId -> DatasourceLocator\n const backingDatasourceMappings = Object.fromEntries(\n Array.from(ridGenerator.getDatasourceLocators().entries()).map((\n [readableId, locator],\n ) => [ridGenerator.toBlockInternalId(readableId), locator]),\n );\n\n // Files datasources: BlockInternalId -> FilesDatasourceLocator\n const filesDatasourceMappings = Object.fromEntries(\n Array.from(ridGenerator.getFilesDatasourceLocators().entries()).map((\n [readableId, locator],\n ) => [ridGenerator.toBlockInternalId(readableId), locator]),\n );\n\n // Object type RIDs: ObjectTypeRid -> BlockInternalId\n const objectTypeRids = Object.fromEntries(\n Array.from(ridGenerator.getObjectTypeRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Object type IDs: ObjectTypeId -> BlockInternalId\n const objectTypeIds = Object.fromEntries(\n Object.entries(ontology[OntologyEntityTypeEnum.OBJECT_TYPE]).map((\n [objectTypeApiName, objectType],\n ) => [\n ridGenerator.getObjectTypeIds().get(\n ReadableIdGenerator.getForObjectType(objectTypeApiName),\n ),\n ridGenerator.toBlockInternalId(\n ReadableIdGenerator.getForObjectType(objectTypeApiName),\n ),\n ]),\n );\n\n // Property type IDs: ObjectTypeId -> (PropertyTypeId -> BlockInternalId)\n const propertyTypeIds: Record<string, Record<string, string>> = {};\n Object.entries(ontology[OntologyEntityTypeEnum.OBJECT_TYPE]).forEach((\n [objectTypeApiName, objectType],\n ) => {\n const propMap: Record<string, string> = {};\n (objectType.properties ?? []).forEach((property) => {\n propMap[property.apiName] = ridGenerator.toBlockInternalId(\n ReadableIdGenerator.getForObjectProperty(\n objectTypeApiName,\n property.apiName,\n ),\n );\n });\n const objTypeId = ridGenerator.getObjectTypeIds().get(\n ReadableIdGenerator.getForObjectType(objectTypeApiName),\n )!;\n propertyTypeIds[objTypeId] = propMap;\n });\n\n // Property type RIDs: PropertyTypeRid -> BlockInternalId\n const propertyRids = Object.fromEntries(\n Array.from(ridGenerator.getPropertyTypeRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Datasource columns: BlockInternalId -> ResolvedDatasourceColumnShape\n const datasourceColumns = Object.fromEntries(\n Array.from(ridGenerator.getColumnShapes().entries()).map((\n [readableId, shape],\n ) => [ridGenerator.toBlockInternalId(readableId), shape]),\n );\n\n // Time series syncs: TimeSeriesSyncRid -> BlockInternalId\n const timeSeriesSyncs = Object.fromEntries(\n Array.from(ridGenerator.getTimeSeriesSyncs().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Geotime series syncs: GeotimeSeriesIntegrationRid -> BlockInternalId\n const geotimeSeriesSyncs = Object.fromEntries(\n Array.from(\n ridGenerator.getGeotimeSeriesIntegrationRids().inverse().entries(),\n ).map(([rid, readableId]) => [\n rid,\n ridGenerator.toBlockInternalId(readableId),\n ]),\n );\n\n // Link type IDs: LinkTypeId -> BlockInternalId\n const linkTypeIds = Object.fromEntries(\n Object.keys(ontology[OntologyEntityTypeEnum.LINK_TYPE]).map((\n linkTypeId,\n link,\n ) => [\n cleanAndValidateLinkTypeId(linkTypeId),\n ridGenerator.toBlockInternalId(\n ReadableIdGenerator.getForLinkType(\n cleanAndValidateLinkTypeId(linkTypeId),\n ),\n ),\n ]),\n );\n\n // Link type RIDs: LinkTypeRid -> BlockInternalId\n const linkTypeRids = Object.fromEntries(\n Array.from(ridGenerator.getLinkTypeRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Action types: ActionTypeRid -> BlockInternalId\n const actionTypeMappings = Object.fromEntries(\n Array.from(ridGenerator.getActionTypeRids().inverse().entries()).map((\n [rid, readableId],\n ) => [rid, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Action parameters: ParameterRid -> BlockInternalId\n const actionParameterMappings: Record<string, string> = {};\n ridGenerator.getParameterRidAndIds().forEach((biMap, _actionApiName) => {\n Array.from(biMap.entries()).forEach(([readableId, ridAndId]) => {\n actionParameterMappings[ridAndId.rid] = ridGenerator.toBlockInternalId(\n readableId,\n );\n });\n });\n\n // Action parameter IDs: ActionTypeRid -> (ParameterId -> BlockInternalId)\n const actionParameterIdMappings: Record<string, Record<string, string>> = {};\n Array.from(ridGenerator.getActionTypeRids().inverse().entries()).forEach((\n [actionTypeRid, actionReadableId],\n ) => {\n // Extract action type API name from readable ID\n const actionTypeApiName = actionReadableId.replace(\n /^action-type-/,\n \"\",\n );\n const paramBiMap = ridGenerator.getParameterRidAndIds().get(\n actionTypeApiName,\n );\n if (paramBiMap) {\n const paramMap: Record<string, string> = {};\n Array.from(paramBiMap.entries()).forEach((\n [paramReadableId, ridAndId],\n ) => {\n paramMap[ridAndId.id] = ridGenerator.toBlockInternalId(\n paramReadableId,\n );\n });\n actionParameterIdMappings[actionTypeRid] = paramMap;\n }\n });\n\n // Group IDs: GroupId -> BlockInternalId\n const groupMappings = Object.fromEntries(\n Array.from(ridGenerator.getGroupIds().inverse().entries()).map((\n [groupId, readableId],\n ) => [groupId, ridGenerator.toBlockInternalId(readableId)]),\n );\n\n // Interface property types: InterfacePropertyTypeRid -> BlockInternalId\n const interfacePropertyMappings = Object.fromEntries(\n Array.from(ridGenerator.getInterfacePropertyTypeRids().inverse().entries())\n .map(([rid, readableId]) => [\n rid,\n ridGenerator.toBlockInternalId(readableId),\n ]),\n );\n\n // Value types: ValueTypeRid -> (ValueTypeVersionId -> BlockInternalId)\n const valueTypeMappings: Record<string, Record<string, string>> = {};\n ridGenerator.getConsumedValueTypeReferences().asMap().forEach((\n valueTypeRef,\n readableId,\n ) => {\n if (!valueTypeMappings[valueTypeRef.rid]) {\n valueTypeMappings[valueTypeRef.rid] = {};\n }\n valueTypeMappings[valueTypeRef.rid][valueTypeRef.versionId] = ridGenerator\n .toBlockInternalId(readableId);\n });\n\n // Build markings mapping: BlockInternalId -> [markingId]\n // Collect marking shapes from object type marking properties and additionalMandatoryMarkings\n const markingEntries: Array<\n { markingId: string; markingType: \"CBAC\" | \"MANDATORY\" }\n > = [];\n Object.entries(ontology[OntologyEntityTypeEnum.OBJECT_TYPE]).forEach(\n ([objectTypeApiName, objectType]) => {\n // Marking properties\n (objectType.properties ?? []).forEach((prop) => {\n if (\n typeof prop.type === \"object\" && prop.type.type === \"marking\"\n && prop.type.markingInputGroupName\n ) {\n markingEntries.push({\n markingId: prop.type.markingInputGroupName,\n markingType: prop.type.markingType as \"CBAC\" | \"MANDATORY\",\n });\n }\n });\n // additionalMandatoryMarkings from property security groups\n (objectType.datasources ?? []).forEach((ds) => {\n if (\"propertySecurityGroups\" in ds && ds.propertySecurityGroups) {\n ds.propertySecurityGroups.forEach((psg) => {\n if (psg.appliedMarkings) {\n Object.entries(psg.appliedMarkings).forEach(\n ([markingId, markingType]) => {\n markingEntries.push({\n markingId,\n markingType: markingType as \"CBAC\" | \"MANDATORY\",\n });\n },\n );\n }\n });\n }\n });\n },\n );\n\n // Deduplicate and build mapping\n const markingsMappings: Record<string, string[]> = {};\n const seenMarkings = new Set<string>();\n markingEntries.forEach(({ markingId, markingType }) => {\n const key = `${markingId}-${markingType}`;\n if (seenMarkings.has(key)) return;\n seenMarkings.add(key);\n const readableId = ReadableIdGenerator.getForMarking(\n markingId,\n markingType,\n );\n const blockInternalId = ridGenerator.toBlockInternalId(readableId);\n markingsMappings[blockInternalId] = [markingId];\n });\n\n return {\n actionParameterIds: actionParameterIdMappings,\n actionParameters: actionParameterMappings,\n actionTypes: actionTypeMappings,\n datasourceColumns,\n datasources: backingDatasourceMappings,\n filesDatasources: filesDatasourceMappings,\n functions: {},\n geotimeSeriesSyncs,\n groupIds: groupMappings,\n interfaceLinkTypes: interfaceLinkMappings,\n interfacePropertyTypes: interfacePropertyMappings,\n interfaceTypes: interfaceMappings,\n linkTypeIds,\n linkTypes: linkTypeRids,\n markings: markingsMappings,\n objectTypeIds,\n objectTypes: objectTypeRids,\n propertyTypeIds,\n propertyTypes: propertyRids,\n sharedPropertyTypes: sharedPropertyMappings,\n shapeIdForOntologyAllowSchemaMigrations: ridGenerator.toBlockInternalId(\n MIGRATION_SHAPE_READABLE_ID,\n ),\n shapeIdForInstallPrefix: null,\n timeSeriesSyncs,\n valueTypes: valueTypeMappings,\n webhooks: {},\n workshopModules: {},\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -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":"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","ignoreList":[]}
|
|
@@ -356,7 +356,7 @@ export class OntologyRidGeneratorImpl {
|
|
|
356
356
|
}
|
|
357
357
|
|
|
358
358
|
// Datasource locator methods
|
|
359
|
-
|
|
359
|
+
generateDatasetLocator(dataSetName, columnNames) {
|
|
360
360
|
const datasetRid = `ri.ontology-metadata.temp.dataset.${this.hashString(dataSetName)}`;
|
|
361
361
|
const branchId = "main";
|
|
362
362
|
|
|
@@ -370,7 +370,7 @@ export class OntologyRidGeneratorImpl {
|
|
|
370
370
|
branch: branchId
|
|
371
371
|
}
|
|
372
372
|
},
|
|
373
|
-
name
|
|
373
|
+
name
|
|
374
374
|
});
|
|
375
375
|
});
|
|
376
376
|
|
|
@@ -402,7 +402,7 @@ export class OntologyRidGeneratorImpl {
|
|
|
402
402
|
columnNames.forEach(name => {
|
|
403
403
|
this.columnShapes.put(ReadableIdGenerator.getForStreamColumn(streamName, name), {
|
|
404
404
|
datasource: marketplaceLocator,
|
|
405
|
-
name
|
|
405
|
+
name
|
|
406
406
|
});
|
|
407
407
|
});
|
|
408
408
|
|
|
@@ -425,7 +425,7 @@ export class OntologyRidGeneratorImpl {
|
|
|
425
425
|
rid: restrictedViewRid
|
|
426
426
|
}
|
|
427
427
|
},
|
|
428
|
-
name
|
|
428
|
+
name
|
|
429
429
|
});
|
|
430
430
|
});
|
|
431
431
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateRid.js","names":["createHash","toBlockShapeId","ReadableIdGenerator","get","arg1","arg2","undefined","getForInterface","interfaceTypeApiName","getForObjectType","objectTypeApiName","getForStream","streamName","getForStreamColumn","columnName","getForTimeSeriesSync","timeSeriesSyncName","getForDataset","dataSetName","getForDatasetOutput","getForDatasetColumn","getForDatasetColumnOutput","getForMediaSetView","mediaSetViewName","getForRestrictedView","restrictedViewName","getForRestrictedViewColumn","getForLinkType","linkTypeId","getForGeotimeSeriesIntegration","name","getForActionType","actionTypeApiName","getForParameter","actionName","parameterId","getForGroup","groupId","getForProducedValueType","valueTypeApiName","version","getForConsumedValueType","getForSpt","fieldApiName","getForObjectProperty","getForInterfaceProperty","interfacePropertyTypeApiName","getForInterfaceLinkType","interfaceApiName","interfaceLinkTypeApiName","getForMarking","markingId","supportedMarkingsType","BiMapImpl","create","Map","constructor","forward","backward","asMap","key","put","value","set","inverse","entries","OntologyRidGeneratorImpl","randomnessUuid","geotimeSeriesIntegrationRids","interfaceLinkTypeRids","interfacePropertyTypeRids","interfaceRids","actionTypeRids","parameterRids","sharedPropertyTypeRids","consumedValueTypeReferences","producedValueTypeReferences","objectTypeRids","datasourceLocators","filesDatasourceLocators","columnShapes","propertyTypeRids","timeSeriesSyncs","linkTypeRids","groupIds","objectTypeIds","hashString","input","stringToHash","update","digest","generateRid","generateDatasourceRid","datasourceName","generateValidationRuleRid","index","generateSectionRid","sectionId","generatePropertySecurityGroupRid","groupName","getActionTypeRids","getParameterRidAndIds","getInterfaceRids","getSharedPropertyTypeRids","getInterfaceLinkTypeRids","getInterfacePropertyTypeRids","getPropertyTypeRids","getDatasourceLocators","getFilesDatasourceLocators","getGeotimeSeriesIntegrationRids","getTimeSeriesSyncs","getColumnShapes","getObjectTypeRids","getLinkTypeRids","getGroupIds","getConsumedValueTypeReferences","getProducedValueTypeReferences","valueTypeMappingForReference","valueTypeReference","output","Error","generateRidForInterface","apiName","rid","generateRidForInterfaceLinkType","readableId","generateRidForObjectType","generateRidForValueType","versionHash","versionAsUuid","slice","versionId","generateRidForTimeSeriesSync","generateRidForLinkType","generateRidForGeotimeSeriesIntegration","generateRidForActionType","generateRidForParameter","innerMap","id","generateSptRid","generatePropertyRid","generateInterfacePropertyTypeRid","generateStructFieldRid","propertyApiName","generateLocator","columnNames","datasetRid","branchId","forEach","datasource","type","dataset","branch","generateStreamLocator","streamLocatorRid","marketplaceLocator","stream","generateRestrictedViewLocator","restrictedViewRid","restrictedView","generateMediaSetViewLocator","mediaSetRid","mediaSetBranchRid","mediaSetViewRid","mediaSet","toBlockInternalId","getObjectTypeIds","generateObjectTypeId","maybeLastId","objectTypeId","replace","toLowerCase"],"sources":["generateRid.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 { ValueTypeReference } from \"@osdk/client.unstable\";\nimport type {\n ActionTypeRid,\n DatasourceLocator,\n FilesDatasourceLocator,\n GeotimeSeriesIntegrationRid,\n GroupId,\n InputShape,\n InputShapeMetadata,\n InterfaceLinkTypeRid,\n InterfacePropertyTypeRid,\n InterfaceTypeRid,\n LinkTypeRid,\n ObjectTypeRid,\n OutputShape,\n PropertyTypeRid,\n ResolvedDatasourceColumnShape,\n SharedPropertyTypeRid,\n StructFieldRid,\n TimeSeriesSyncRid,\n} from \"@osdk/client.unstable/api\";\n// ParameterRid is defined in ontology-metadata but may not be re-exported through the main API\ntype ParameterRid = string;\nimport { createHash } from \"crypto\";\nimport { toBlockShapeId } from \"../cli/marketplaceSerialization/CodeBlockSpec.js\";\n\n// Given a unique key generates a rid deterministically (from a lock file eventually)\nexport type ReadableId = string & { __brand: \"ReadableId\" };\n\n/**\n * Placeholder interface for OntologyRidGenerator\n * This should be filled in with actual implementation\n */\n// Types for datasource locators\nexport interface DatasetDatasourceLocator {\n rid: string;\n branchId: string;\n}\n\nexport interface StreamLocator {\n streamLocatorRid: string;\n branchId: string;\n}\n\nexport interface RestrictedViewLocator {\n rid: string;\n}\n\nexport interface MediaSetViewLocator {\n mediaSetRid: string;\n mediaSetViewRid: string;\n mediaSetBranchRid: string;\n}\n\nexport interface OntologyRidGenerator {\n getActionTypeRids(): BiMap<ReadableId, ActionTypeRid>;\n getParameterRidAndIds(): Map<string, BiMap<ReadableId, ParameterRidAndId>>;\n getInterfaceRids(): BiMap<ReadableId, InterfaceTypeRid>;\n getSharedPropertyTypeRids(): BiMap<ReadableId, SharedPropertyTypeRid>;\n getInterfaceLinkTypeRids(): BiMap<ReadableId, InterfaceLinkTypeRid>;\n getInterfacePropertyTypeRids(): BiMap<ReadableId, InterfacePropertyTypeRid>;\n getPropertyTypeRids(): BiMap<ReadableId, PropertyTypeRid>;\n getDatasourceLocators(): BiMap<ReadableId, DatasourceLocator>;\n getFilesDatasourceLocators(): BiMap<ReadableId, FilesDatasourceLocator>;\n getGeotimeSeriesIntegrationRids(): BiMap<\n ReadableId,\n GeotimeSeriesIntegrationRid\n >;\n getTimeSeriesSyncs(): BiMap<ReadableId, TimeSeriesSyncRid>;\n getColumnShapes(): BiMap<ReadableId, ResolvedDatasourceColumnShape>;\n getObjectTypeRids(): BiMap<ReadableId, ObjectTypeRid>;\n getLinkTypeRids(): BiMap<ReadableId, LinkTypeRid>;\n getGroupIds(): BiMap<ReadableId, GroupId>;\n getConsumedValueTypeReferences(): BiMap<ReadableId, ValueTypeReference>;\n getProducedValueTypeReferences(): Map<ValueTypeReference, ReadableId>;\n valueTypeMappingForReference(valueTypeReference: ValueTypeReference): {\n input: ReadableId;\n output: ReadableId;\n };\n hashString(input: string): string;\n // Generic RID generation for types without specific generators (datasources, sections, etc.)\n generateRid(key: string): string;\n generateDatasourceRid(datasourceName: string): string;\n generateValidationRuleRid(actionTypeApiName: string, index: number): string;\n generateSectionRid(sectionId: string): string;\n generatePropertySecurityGroupRid(groupName: string): string;\n generateRidForInterface(apiName: string): InterfaceTypeRid;\n generateRidForInterfaceLinkType(\n apiName: string,\n interfaceTypeApiName: string,\n ): InterfaceLinkTypeRid;\n generateRidForObjectType(apiName: string): ObjectTypeRid;\n generateRidForValueType(apiName: string, version: string): ValueTypeReference;\n generateRidForTimeSeriesSync(name: string): TimeSeriesSyncRid;\n generateRidForLinkType(linkTypeId: string): LinkTypeRid;\n generateRidForGeotimeSeriesIntegration(\n name: string,\n ): GeotimeSeriesIntegrationRid;\n generateRidForActionType(apiName: string): ActionTypeRid;\n generateRidForParameter(\n actionTypeApiName: string,\n parameterId: string,\n ): ParameterRid;\n generateSptRid(apiName: string): SharedPropertyTypeRid;\n generatePropertyRid(\n apiName: string,\n objectTypeApiName: string,\n ): PropertyTypeRid;\n generateInterfacePropertyTypeRid(\n apiName: string,\n interfaceTypeApiName: string,\n ): InterfacePropertyTypeRid;\n generateStructFieldRid(\n propertyApiName: string,\n apiName: string,\n ): StructFieldRid;\n // Datasource locator methods\n generateLocator(\n dataSetName: string,\n columnNames: Set<string>,\n ): DatasetDatasourceLocator;\n generateStreamLocator(\n streamName: string,\n columnNames: Set<string>,\n ): StreamLocator;\n generateRestrictedViewLocator(\n restrictedViewName: string,\n columnNames: Set<string>,\n ): RestrictedViewLocator;\n generateMediaSetViewLocator(mediaSetViewName: string): MediaSetViewLocator;\n toBlockInternalId(readableId: ReadableId): string;\n generateObjectTypeId(objectTypeApiName: string): string;\n getObjectTypeIds(): BiMap<ReadableId, string>;\n}\n\nexport interface ParameterRidAndId {\n rid: ParameterRid;\n id: string;\n}\n\n/**\n * Simple BiMap interface (placeholder)\n */\nexport interface BiMap<K, V> {\n get(key: K): V | undefined;\n put(key: K, value: V): void;\n asMap(): Map<K, V>;\n inverse(): BiMap<V, K>;\n entries(): IterableIterator<[K, V]>;\n}\n\n/**\n * BlockShapes container for input and output shapes\n */\nexport interface BlockShapes {\n inputShapes: Map<ReadableId, InputShape>;\n outputShapes: Map<ReadableId, OutputShape>;\n inputShapeMetadata: Map<ReadableId, InputShapeMetadata>;\n}\n\n/**\n * ReadableId generator functions matching Java's ReadableIdGenerator\n */\nexport class ReadableIdGenerator {\n static get(interfaceTypeApiName: string): ReadableId;\n static get(\n interfaceApiName: string,\n interfaceLinkTypeApiName: string,\n ): ReadableId;\n static get(arg1: string, arg2?: string): ReadableId {\n if (arg2 !== undefined) {\n // Interface link type\n return `interface-link-type-${arg1}-${arg2}` as ReadableId;\n }\n // Single argument - check context to determine type\n // This will be called from specific methods\n return arg1 as ReadableId;\n }\n\n static getForInterface(interfaceTypeApiName: string): ReadableId {\n return `interface-${interfaceTypeApiName}` as ReadableId;\n }\n\n static getForObjectType(objectTypeApiName: string): ReadableId {\n return `object-type-${objectTypeApiName}` as ReadableId;\n }\n\n static getForStream(streamName: string): ReadableId {\n return `stream-datasource-${streamName}` as ReadableId;\n }\n\n static getForStreamColumn(\n streamName: string,\n columnName: string,\n ): ReadableId {\n return `stream-datasource-column-${streamName}-${columnName}` as ReadableId;\n }\n\n static getForTimeSeriesSync(timeSeriesSyncName: string): ReadableId {\n return `time-series-sync-${timeSeriesSyncName}` as ReadableId;\n }\n\n static getForDataset(dataSetName: string): ReadableId {\n return `dataset-datasource-${dataSetName}` as ReadableId;\n }\n\n static getForDatasetOutput(dataSetName: string): ReadableId {\n return `dataset-datasource-output-${dataSetName}` as ReadableId;\n }\n\n static getForDatasetColumn(\n dataSetName: string,\n columnName: string,\n ): ReadableId {\n return `dataset-datasource-column-${dataSetName}-${columnName}` as ReadableId;\n }\n\n static getForDatasetColumnOutput(\n dataSetName: string,\n columnName: string,\n ): ReadableId {\n return `dataset-datasource-column-output-${dataSetName}-${columnName}` as ReadableId;\n }\n\n static getForMediaSetView(mediaSetViewName: string): ReadableId {\n return `media-set-view-${mediaSetViewName}` as ReadableId;\n }\n\n static getForRestrictedView(restrictedViewName: string): ReadableId {\n return `restricted-view-datasource-${restrictedViewName}` as ReadableId;\n }\n\n static getForRestrictedViewColumn(\n restrictedViewName: string,\n columnName: string,\n ): ReadableId {\n return `restricted-view-datasource-column-${restrictedViewName}-${columnName}` as ReadableId;\n }\n\n static getForLinkType(linkTypeId: string): ReadableId {\n return `link-type-${linkTypeId}` as ReadableId;\n }\n\n static getForGeotimeSeriesIntegration(name: string): ReadableId {\n return `geotime-series-integration-${name}` as ReadableId;\n }\n\n static getForActionType(actionTypeApiName: string): ReadableId {\n return `action-type-${actionTypeApiName}` as ReadableId;\n }\n\n static getForParameter(actionName: string, parameterId: string): ReadableId {\n return `action-${actionName}-parameter-${parameterId}` as ReadableId;\n }\n\n static getForGroup(groupId: string): ReadableId {\n return `group-${groupId}` as ReadableId;\n }\n\n static getForProducedValueType(\n valueTypeApiName: string,\n version: string,\n ): ReadableId {\n return `produced-value-type-${valueTypeApiName}-${version}` as ReadableId;\n }\n\n static getForConsumedValueType(\n valueTypeApiName: string,\n version: string,\n ): ReadableId {\n return `consumed-value-type-${valueTypeApiName}-${version}` as ReadableId;\n }\n\n static getForSpt(fieldApiName: string): ReadableId {\n return `shared-property-type-${fieldApiName}` as ReadableId;\n }\n\n static getForObjectProperty(\n objectTypeApiName: string,\n fieldApiName: string,\n ): ReadableId {\n return `${objectTypeApiName}-property-type-${fieldApiName}` as ReadableId;\n }\n\n static getForInterfaceProperty(\n interfaceTypeApiName: string,\n interfacePropertyTypeApiName: string,\n ): ReadableId {\n return `interface-property-type-${interfaceTypeApiName}-${interfacePropertyTypeApiName}` as ReadableId;\n }\n\n static getForInterfaceLinkType(\n interfaceApiName: string,\n interfaceLinkTypeApiName: string,\n ): ReadableId {\n return `interface-link-type-${interfaceApiName}-${interfaceLinkTypeApiName}` as ReadableId;\n }\n\n static getForMarking(\n markingId: string,\n supportedMarkingsType: \"CBAC\" | \"MANDATORY\",\n ): ReadableId {\n return `marking-${markingId}-${supportedMarkingsType}` as ReadableId;\n }\n}\n\nexport class BiMapImpl<K, V> implements BiMap<K, V> {\n forward: Map<K, V>;\n backward: Map<V, K>;\n public static create<K, V>(): BiMap<K, V> {\n return new BiMapImpl(new Map<K, V>(), new Map<V, K>());\n }\n\n private constructor(forward: Map<K, V>, backward: Map<V, K>) {\n this.forward = forward;\n this.backward = backward;\n }\n asMap(): Map<K, V> {\n return this.forward;\n }\n\n get(key: K): V | undefined {\n return this.forward.get(key);\n }\n\n put(key: K, value: V): void {\n this.forward.set(key, value);\n this.backward.set(value, key);\n }\n\n inverse(): BiMap<V, K> {\n return new BiMapImpl(this.backward, this.forward);\n }\n entries(): IterableIterator<[K, V]> {\n return this.forward.entries();\n }\n}\n\nexport class OntologyRidGeneratorImpl implements OntologyRidGenerator {\n private readonly actionTypeRids: BiMap<ReadableId, ActionTypeRid>;\n private readonly parameterRids: Map<\n string,\n BiMap<ReadableId, ParameterRidAndId>\n >;\n private readonly interfaceRids: BiMap<ReadableId, InterfaceTypeRid>;\n private readonly sharedPropertyTypeRids: BiMap<\n ReadableId,\n SharedPropertyTypeRid\n >;\n private readonly interfaceLinkTypeRids: BiMap<\n ReadableId,\n InterfaceLinkTypeRid\n >;\n private readonly interfacePropertyTypeRids: BiMap<\n ReadableId,\n InterfacePropertyTypeRid\n >;\n private readonly geotimeSeriesIntegrationRids: BiMap<\n ReadableId,\n GeotimeSeriesIntegrationRid\n >;\n private readonly objectTypeRids: BiMap<ReadableId, ObjectTypeRid>;\n private readonly propertyTypeRids: BiMap<ReadableId, PropertyTypeRid>;\n private readonly consumedValueTypeReferences: BiMap<\n ReadableId,\n ValueTypeReference\n >;\n private readonly producedValueTypeReferences: Map<\n ValueTypeReference,\n ReadableId\n >;\n private readonly datasourceLocators: BiMap<ReadableId, DatasourceLocator>;\n private readonly filesDatasourceLocators: BiMap<\n ReadableId,\n FilesDatasourceLocator\n >;\n private readonly timeSeriesSyncs: BiMap<ReadableId, TimeSeriesSyncRid>;\n private readonly columnShapes: BiMap<\n ReadableId,\n ResolvedDatasourceColumnShape\n >;\n private readonly linkTypeRids: BiMap<ReadableId, LinkTypeRid>;\n private readonly groupIds: BiMap<ReadableId, GroupId>;\n private readonly objectTypeIds: BiMap<ReadableId, string>;\n private readonly randomnessUuid?: string;\n\n constructor(randomnessUuid?: string) {\n this.randomnessUuid = randomnessUuid;\n this.geotimeSeriesIntegrationRids = BiMapImpl.create();\n this.interfaceLinkTypeRids = BiMapImpl.create();\n this.interfacePropertyTypeRids = BiMapImpl.create();\n this.interfaceRids = BiMapImpl.create();\n this.actionTypeRids = BiMapImpl.create();\n this.parameterRids = new Map();\n this.sharedPropertyTypeRids = BiMapImpl.create();\n this.consumedValueTypeReferences = BiMapImpl.create();\n this.producedValueTypeReferences = new Map();\n this.objectTypeRids = BiMapImpl.create();\n this.datasourceLocators = BiMapImpl.create();\n this.filesDatasourceLocators = BiMapImpl.create();\n this.columnShapes = BiMapImpl.create();\n this.propertyTypeRids = BiMapImpl.create();\n this.timeSeriesSyncs = BiMapImpl.create();\n this.linkTypeRids = BiMapImpl.create();\n this.groupIds = BiMapImpl.create();\n this.objectTypeIds = BiMapImpl.create();\n }\n\n hashString(input: string): string {\n const stringToHash = this.randomnessUuid\n ? `${input}-${this.randomnessUuid}`\n : input;\n return createHash(\"sha256\").update(stringToHash, \"utf8\").digest(\"hex\");\n }\n\n // Generic RID generation for types without specific generators\n generateRid(key: string): string {\n return `ri.ontology-metadata.temp.unknown.${this.hashString(key)}`;\n }\n\n // Datasource RID matching Java's RidUtils.getDatasourceRidFromName format\n generateDatasourceRid(datasourceName: string): string {\n return `ri.ontology.main.datasource.${\n toBlockShapeId(datasourceName, this.randomnessUuid)\n }`;\n }\n\n // Validation rule RID matching Java's format\n generateValidationRuleRid(actionTypeApiName: string, index: number): string {\n return `ri.ontology-metadata.temp.validation-rule.${\n this.hashString(`${actionTypeApiName}.${index}`)\n }`;\n }\n\n // Section RID matching Java's format: ri.ontology-metadata.temp.section.{hash(sectionId)}\n generateSectionRid(sectionId: string): string {\n return `ri.ontology-metadata.temp.section.${this.hashString(sectionId)}`;\n }\n\n // Property security group RID matching Java's format\n generatePropertySecurityGroupRid(groupName: string): string {\n return `ri.ontology-metadata.temp.property-security-group.${\n this.hashString(groupName)\n }`;\n }\n\n getActionTypeRids(): BiMap<ReadableId, ActionTypeRid> {\n return this.actionTypeRids;\n }\n\n getParameterRidAndIds(): Map<string, BiMap<ReadableId, ParameterRidAndId>> {\n return this.parameterRids;\n }\n\n getInterfaceRids(): BiMap<ReadableId, InterfaceTypeRid> {\n return this.interfaceRids;\n }\n\n getSharedPropertyTypeRids(): BiMap<ReadableId, SharedPropertyTypeRid> {\n return this.sharedPropertyTypeRids;\n }\n\n getInterfaceLinkTypeRids(): BiMap<ReadableId, InterfaceLinkTypeRid> {\n return this.interfaceLinkTypeRids;\n }\n\n getInterfacePropertyTypeRids(): BiMap<ReadableId, InterfacePropertyTypeRid> {\n return this.interfacePropertyTypeRids;\n }\n\n getPropertyTypeRids(): BiMap<ReadableId, PropertyTypeRid> {\n return this.propertyTypeRids;\n }\n\n getDatasourceLocators(): BiMap<ReadableId, DatasourceLocator> {\n return this.datasourceLocators;\n }\n\n getFilesDatasourceLocators(): BiMap<ReadableId, FilesDatasourceLocator> {\n return this.filesDatasourceLocators;\n }\n\n getGeotimeSeriesIntegrationRids(): BiMap<\n ReadableId,\n GeotimeSeriesIntegrationRid\n > {\n return this.geotimeSeriesIntegrationRids;\n }\n\n getTimeSeriesSyncs(): BiMap<ReadableId, TimeSeriesSyncRid> {\n return this.timeSeriesSyncs;\n }\n\n getColumnShapes(): BiMap<ReadableId, ResolvedDatasourceColumnShape> {\n return this.columnShapes;\n }\n\n getObjectTypeRids(): BiMap<ReadableId, ObjectTypeRid> {\n return this.objectTypeRids;\n }\n\n getLinkTypeRids(): BiMap<ReadableId, LinkTypeRid> {\n return this.linkTypeRids;\n }\n\n getGroupIds(): BiMap<ReadableId, GroupId> {\n return this.groupIds;\n }\n\n getConsumedValueTypeReferences(): BiMap<ReadableId, ValueTypeReference> {\n return this.consumedValueTypeReferences;\n }\n\n getProducedValueTypeReferences(): Map<ValueTypeReference, ReadableId> {\n return this.producedValueTypeReferences;\n }\n\n valueTypeMappingForReference(valueTypeReference: ValueTypeReference): {\n input: ReadableId;\n output: ReadableId;\n } {\n const input = this.consumedValueTypeReferences.inverse().get(\n valueTypeReference,\n );\n const output = this.producedValueTypeReferences.get(valueTypeReference);\n\n if (!input || !output) {\n throw new Error(`Missing readable ID for value type reference`);\n }\n\n return { input, output };\n }\n\n // Interface types\n generateRidForInterface(apiName: string): InterfaceTypeRid {\n const rid = `ri.ontology-metadata.temp.interface-type.${\n this.hashString(apiName)\n }` as InterfaceTypeRid;\n this.interfaceRids.put(ReadableIdGenerator.getForInterface(apiName), rid);\n return rid;\n }\n\n // Interface Link Types\n generateRidForInterfaceLinkType(\n apiName: string,\n interfaceTypeApiName: string,\n ): InterfaceLinkTypeRid {\n const readableId = ReadableIdGenerator.getForInterfaceLinkType(\n interfaceTypeApiName,\n apiName,\n );\n const rid = `ri.ontology-metadata.temp.interface-link-type.${\n this.hashString(readableId)\n }` as InterfaceLinkTypeRid;\n this.interfaceLinkTypeRids.put(readableId, rid);\n return rid;\n }\n\n // Object Types\n generateRidForObjectType(apiName: string): ObjectTypeRid {\n const rid = `ri.ontology-metadata.temp.object-type.${\n this.hashString(apiName)\n }` as ObjectTypeRid;\n this.objectTypeRids.put(ReadableIdGenerator.getForObjectType(apiName), rid);\n return rid;\n }\n\n // Value Types\n generateRidForValueType(\n apiName: string,\n version: string,\n ): ValueTypeReference {\n const rid = `ri.ontology-metadata.temp.value-type.${\n this.hashString(apiName)\n }`;\n // Generate UUID from version string (matching Java's UUID.nameUUIDFromBytes)\n const versionHash = createHash(\"md5\").update(version, \"utf8\").digest(\"hex\");\n const versionAsUuid = `${versionHash.slice(0, 8)}-${\n versionHash.slice(8, 12)\n }-${versionHash.slice(12, 16)}-${versionHash.slice(16, 20)}-${\n versionHash.slice(20, 32)\n }`;\n\n const valueTypeReference: ValueTypeReference = {\n rid,\n versionId: versionAsUuid,\n } as ValueTypeReference;\n\n this.consumedValueTypeReferences.put(\n ReadableIdGenerator.getForConsumedValueType(apiName, version),\n valueTypeReference,\n );\n this.producedValueTypeReferences.set(\n valueTypeReference,\n ReadableIdGenerator.getForProducedValueType(apiName, version),\n );\n return valueTypeReference;\n }\n\n generateRidForTimeSeriesSync(name: string): TimeSeriesSyncRid {\n const rid = `ri.ontology-metadata.temp.time-series-sync.${\n this.hashString(name)\n }` as TimeSeriesSyncRid;\n this.timeSeriesSyncs.put(\n ReadableIdGenerator.getForTimeSeriesSync(name),\n rid,\n );\n return rid;\n }\n\n generateRidForLinkType(linkTypeId: string): LinkTypeRid {\n const rid = `ri.ontology-metadata.temp.link-type.${\n this.hashString(linkTypeId)\n }` as LinkTypeRid;\n this.linkTypeRids.put(ReadableIdGenerator.getForLinkType(linkTypeId), rid);\n return rid;\n }\n\n generateRidForGeotimeSeriesIntegration(\n name: string,\n ): GeotimeSeriesIntegrationRid {\n const rid = `ri.ontology-metadata.temp.geotime-series-integration.${\n this.hashString(name)\n }` as GeotimeSeriesIntegrationRid;\n this.geotimeSeriesIntegrationRids.put(\n ReadableIdGenerator.getForGeotimeSeriesIntegration(name),\n rid,\n );\n return rid;\n }\n\n generateRidForActionType(apiName: string): ActionTypeRid {\n const rid = `ri.ontology-metadata.temp.action-type.${\n this.hashString(apiName)\n }` as ActionTypeRid;\n this.actionTypeRids.put(ReadableIdGenerator.getForActionType(apiName), rid);\n return rid;\n }\n\n generateRidForParameter(\n actionTypeApiName: string,\n parameterId: string,\n ): ParameterRid {\n const rid = `ri.ontology-metadata.temp.parameter.${\n this.hashString(actionTypeApiName + \".\" + parameterId)\n }` as ParameterRid;\n\n let innerMap = this.parameterRids.get(actionTypeApiName);\n if (!innerMap) {\n innerMap = BiMapImpl.create();\n this.parameterRids.set(actionTypeApiName, innerMap);\n }\n\n innerMap.put(\n ReadableIdGenerator.getForParameter(actionTypeApiName, parameterId),\n { rid, id: parameterId },\n );\n return rid;\n }\n\n // Shared Property Types\n generateSptRid(apiName: string): SharedPropertyTypeRid {\n const rid = `ri.ontology-metadata.temp.shared-property-type.${\n this.hashString(apiName)\n }` as SharedPropertyTypeRid;\n this.sharedPropertyTypeRids.put(\n ReadableIdGenerator.getForSpt(apiName),\n rid,\n );\n return rid;\n }\n\n generatePropertyRid(\n apiName: string,\n objectTypeApiName: string,\n ): PropertyTypeRid {\n const rid = `ri.ontology-metadata.temp.property-type.${\n this.hashString(objectTypeApiName + \".\" + apiName)\n }` as PropertyTypeRid;\n this.propertyTypeRids.put(\n ReadableIdGenerator.getForObjectProperty(objectTypeApiName, apiName),\n rid,\n );\n return rid;\n }\n\n // Interface Property Types\n generateInterfacePropertyTypeRid(\n apiName: string,\n interfaceTypeApiName: string,\n ): InterfacePropertyTypeRid {\n const rid = `ri.ontology-metadata.temp.interface-property-type.${\n this.hashString(interfaceTypeApiName + \".\" + apiName)\n }` as InterfacePropertyTypeRid;\n this.interfacePropertyTypeRids.put(\n ReadableIdGenerator.getForInterfaceProperty(\n interfaceTypeApiName,\n apiName,\n ),\n rid,\n );\n return rid;\n }\n\n // Struct Field RIDs\n generateStructFieldRid(\n propertyApiName: string,\n apiName: string,\n ): StructFieldRid {\n const rid = `ri.ontology-metadata.temp.struct-field.${\n this.hashString(propertyApiName + \".\" + apiName)\n }` as StructFieldRid;\n return rid;\n }\n\n // Datasource locator methods\n generateLocator(\n dataSetName: string,\n columnNames: Set<string>,\n ): DatasetDatasourceLocator {\n const datasetRid = `ri.ontology-metadata.temp.dataset.${\n this.hashString(dataSetName)\n }`;\n const branchId = \"main\";\n\n // Register column shapes\n columnNames.forEach(name => {\n this.columnShapes.put(\n ReadableIdGenerator.getForDatasetColumn(dataSetName, name),\n {\n datasource: {\n type: \"dataset\",\n dataset: { rid: datasetRid, branch: branchId },\n } as DatasourceLocator,\n name: name,\n } as ResolvedDatasourceColumnShape,\n );\n });\n\n // Register datasource locator\n this.datasourceLocators.put(\n ReadableIdGenerator.getForDataset(dataSetName),\n {\n type: \"dataset\",\n dataset: { rid: datasetRid, branch: branchId },\n } as DatasourceLocator,\n );\n\n return { rid: datasetRid, branchId };\n }\n\n generateStreamLocator(\n streamName: string,\n columnNames: Set<string>,\n ): StreamLocator {\n const streamLocatorRid = `ri.ontology-metadata.temp.stream-datasource.${\n this.hashString(streamName)\n }`;\n const branchId = \"main\";\n\n const locator: StreamLocator = {\n streamLocatorRid,\n branchId,\n };\n\n const marketplaceLocator: DatasourceLocator = {\n type: \"stream\",\n stream: {\n rid: streamLocatorRid,\n branch: branchId,\n },\n } as DatasourceLocator;\n\n // Register column shapes\n columnNames.forEach(name => {\n this.columnShapes.put(\n ReadableIdGenerator.getForStreamColumn(streamName, name),\n {\n datasource: marketplaceLocator,\n name: name,\n } as ResolvedDatasourceColumnShape,\n );\n });\n\n // Register datasource locator\n this.datasourceLocators.put(\n ReadableIdGenerator.getForStream(streamName),\n marketplaceLocator,\n );\n\n return locator;\n }\n\n generateRestrictedViewLocator(\n restrictedViewName: string,\n columnNames: Set<string>,\n ): RestrictedViewLocator {\n const restrictedViewRid = `ri.ontology-metadata.temp.restricted-view.${\n this.hashString(restrictedViewName)\n }`;\n\n // Register column shapes\n columnNames.forEach(name => {\n this.columnShapes.put(\n ReadableIdGenerator.getForRestrictedViewColumn(\n restrictedViewName,\n name,\n ),\n {\n datasource: {\n type: \"restrictedView\",\n restrictedView: { rid: restrictedViewRid },\n } as DatasourceLocator,\n name: name,\n } as ResolvedDatasourceColumnShape,\n );\n });\n\n // Register datasource locator\n this.datasourceLocators.put(\n ReadableIdGenerator.getForRestrictedView(restrictedViewName),\n {\n type: \"restrictedView\",\n restrictedView: { rid: restrictedViewRid },\n } as DatasourceLocator,\n );\n\n return { rid: restrictedViewRid };\n }\n\n generateMediaSetViewLocator(mediaSetViewName: string): MediaSetViewLocator {\n const mediaSetRid = `ri.ontology-metadata.temp.media-set.${\n this.hashString(mediaSetViewName)\n }`;\n const mediaSetBranchRid = `ri.ontology-metadata.temp.media-set-branch.${\n this.hashString(mediaSetViewName)\n }`;\n const mediaSetViewRid = `ri.ontology-metadata.temp.media-set-view.${\n this.hashString(mediaSetViewName)\n }`;\n\n // Register files datasource locator\n this.filesDatasourceLocators.put(\n ReadableIdGenerator.getForMediaSetView(mediaSetViewName),\n {\n type: \"mediaSet\",\n mediaSet: {\n rid: mediaSetRid,\n branch: \"master\", // matches OntologyMetadataConstants.ONTOLOGY_DATASET_BRANCH_ID\n },\n } as FilesDatasourceLocator,\n );\n\n return {\n mediaSetRid,\n mediaSetViewRid,\n mediaSetBranchRid,\n };\n }\n\n toBlockInternalId(readableId: ReadableId): string {\n const id = toBlockShapeId(readableId, this.randomnessUuid);\n return id;\n }\n\n getObjectTypeIds(): BiMap<ReadableId, string> {\n return this.objectTypeIds;\n }\n\n generateObjectTypeId(objectTypeApiName: string): string {\n const readableId = ReadableIdGenerator.getForObjectType(objectTypeApiName);\n const maybeLastId = this.objectTypeIds.get(readableId);\n if (maybeLastId) {\n return maybeLastId;\n }\n\n // Match Java: apiName.replace(\".\", \"-\").toLowerCase()\n const objectTypeId = objectTypeApiName.replace(/\\./g, \"-\").toLowerCase();\n this.objectTypeIds.put(readableId, objectTypeId);\n return objectTypeId;\n }\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAuBA;;AAEA,SAASA,UAAU,QAAQ,QAAQ;AACnC,SAASC,cAAc,QAAQ,kDAAkD;;AAEjF;;AAGA;AACA;AACA;AACA;AACA;;AA2GA;AACA;AACA;;AASA;AACA;AACA;;AAOA;AACA;AACA;AACA,OAAO,MAAMC,mBAAmB,CAAC;EAM/B,OAAOC,GAAGA,CAACC,IAAY,EAAEC,IAAa,EAAc;IAClD,IAAIA,IAAI,KAAKC,SAAS,EAAE;MACtB;MACA,OAAO,uBAAuBF,IAAI,IAAIC,IAAI,EAAE;IAC9C;IACA;IACA;IACA,OAAOD,IAAI;EACb;EAEA,OAAOG,eAAeA,CAACC,oBAA4B,EAAc;IAC/D,OAAO,aAAaA,oBAAoB,EAAE;EAC5C;EAEA,OAAOC,gBAAgBA,CAACC,iBAAyB,EAAc;IAC7D,OAAO,eAAeA,iBAAiB,EAAE;EAC3C;EAEA,OAAOC,YAAYA,CAACC,UAAkB,EAAc;IAClD,OAAO,qBAAqBA,UAAU,EAAE;EAC1C;EAEA,OAAOC,kBAAkBA,CACvBD,UAAkB,EAClBE,UAAkB,EACN;IACZ,OAAO,4BAA4BF,UAAU,IAAIE,UAAU,EAAE;EAC/D;EAEA,OAAOC,oBAAoBA,CAACC,kBAA0B,EAAc;IAClE,OAAO,oBAAoBA,kBAAkB,EAAE;EACjD;EAEA,OAAOC,aAAaA,CAACC,WAAmB,EAAc;IACpD,OAAO,sBAAsBA,WAAW,EAAE;EAC5C;EAEA,OAAOC,mBAAmBA,CAACD,WAAmB,EAAc;IAC1D,OAAO,6BAA6BA,WAAW,EAAE;EACnD;EAEA,OAAOE,mBAAmBA,CACxBF,WAAmB,EACnBJ,UAAkB,EACN;IACZ,OAAO,6BAA6BI,WAAW,IAAIJ,UAAU,EAAE;EACjE;EAEA,OAAOO,yBAAyBA,CAC9BH,WAAmB,EACnBJ,UAAkB,EACN;IACZ,OAAO,oCAAoCI,WAAW,IAAIJ,UAAU,EAAE;EACxE;EAEA,OAAOQ,kBAAkBA,CAACC,gBAAwB,EAAc;IAC9D,OAAO,kBAAkBA,gBAAgB,EAAE;EAC7C;EAEA,OAAOC,oBAAoBA,CAACC,kBAA0B,EAAc;IAClE,OAAO,8BAA8BA,kBAAkB,EAAE;EAC3D;EAEA,OAAOC,0BAA0BA,CAC/BD,kBAA0B,EAC1BX,UAAkB,EACN;IACZ,OAAO,qCAAqCW,kBAAkB,IAAIX,UAAU,EAAE;EAChF;EAEA,OAAOa,cAAcA,CAACC,UAAkB,EAAc;IACpD,OAAO,aAAaA,UAAU,EAAE;EAClC;EAEA,OAAOC,8BAA8BA,CAACC,IAAY,EAAc;IAC9D,OAAO,8BAA8BA,IAAI,EAAE;EAC7C;EAEA,OAAOC,gBAAgBA,CAACC,iBAAyB,EAAc;IAC7D,OAAO,eAAeA,iBAAiB,EAAE;EAC3C;EAEA,OAAOC,eAAeA,CAACC,UAAkB,EAAEC,WAAmB,EAAc;IAC1E,OAAO,UAAUD,UAAU,cAAcC,WAAW,EAAE;EACxD;EAEA,OAAOC,WAAWA,CAACC,OAAe,EAAc;IAC9C,OAAO,SAASA,OAAO,EAAE;EAC3B;EAEA,OAAOC,uBAAuBA,CAC5BC,gBAAwB,EACxBC,OAAe,EACH;IACZ,OAAO,uBAAuBD,gBAAgB,IAAIC,OAAO,EAAE;EAC7D;EAEA,OAAOC,uBAAuBA,CAC5BF,gBAAwB,EACxBC,OAAe,EACH;IACZ,OAAO,uBAAuBD,gBAAgB,IAAIC,OAAO,EAAE;EAC7D;EAEA,OAAOE,SAASA,CAACC,YAAoB,EAAc;IACjD,OAAO,wBAAwBA,YAAY,EAAE;EAC/C;EAEA,OAAOC,oBAAoBA,CACzBlC,iBAAyB,EACzBiC,YAAoB,EACR;IACZ,OAAO,GAAGjC,iBAAiB,kBAAkBiC,YAAY,EAAE;EAC7D;EAEA,OAAOE,uBAAuBA,CAC5BrC,oBAA4B,EAC5BsC,4BAAoC,EACxB;IACZ,OAAO,2BAA2BtC,oBAAoB,IAAIsC,4BAA4B,EAAE;EAC1F;EAEA,OAAOC,uBAAuBA,CAC5BC,gBAAwB,EACxBC,wBAAgC,EACpB;IACZ,OAAO,uBAAuBD,gBAAgB,IAAIC,wBAAwB,EAAE;EAC9E;EAEA,OAAOC,aAAaA,CAClBC,SAAiB,EACjBC,qBAA2C,EAC/B;IACZ,OAAO,WAAWD,SAAS,IAAIC,qBAAqB,EAAE;EACxD;AACF;AAEA,OAAO,MAAMC,SAAS,CAA8B;EAGlD,OAAcC,MAAMA,CAAA,EAAsB;IACxC,OAAO,IAAID,SAAS,CAAC,IAAIE,GAAG,CAAO,CAAC,EAAE,IAAIA,GAAG,CAAO,CAAC,CAAC;EACxD;EAEQC,WAAWA,CAACC,OAAkB,EAAEC,QAAmB,EAAE;IAC3D,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,QAAQ,GAAGA,QAAQ;EAC1B;EACAC,KAAKA,CAAA,EAAc;IACjB,OAAO,IAAI,CAACF,OAAO;EACrB;EAEAtD,GAAGA,CAACyD,GAAM,EAAiB;IACzB,OAAO,IAAI,CAACH,OAAO,CAACtD,GAAG,CAACyD,GAAG,CAAC;EAC9B;EAEAC,GAAGA,CAACD,GAAM,EAAEE,KAAQ,EAAQ;IAC1B,IAAI,CAACL,OAAO,CAACM,GAAG,CAACH,GAAG,EAAEE,KAAK,CAAC;IAC5B,IAAI,CAACJ,QAAQ,CAACK,GAAG,CAACD,KAAK,EAAEF,GAAG,CAAC;EAC/B;EAEAI,OAAOA,CAAA,EAAgB;IACrB,OAAO,IAAIX,SAAS,CAAC,IAAI,CAACK,QAAQ,EAAE,IAAI,CAACD,OAAO,CAAC;EACnD;EACAQ,OAAOA,CAAA,EAA6B;IAClC,OAAO,IAAI,CAACR,OAAO,CAACQ,OAAO,CAAC,CAAC;EAC/B;AACF;AAEA,OAAO,MAAMC,wBAAwB,CAAiC;EAgDpEV,WAAWA,CAACW,cAAuB,EAAE;IACnC,IAAI,CAACA,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,4BAA4B,GAAGf,SAAS,CAACC,MAAM,CAAC,CAAC;IACtD,IAAI,CAACe,qBAAqB,GAAGhB,SAAS,CAACC,MAAM,CAAC,CAAC;IAC/C,IAAI,CAACgB,yBAAyB,GAAGjB,SAAS,CAACC,MAAM,CAAC,CAAC;IACnD,IAAI,CAACiB,aAAa,GAAGlB,SAAS,CAACC,MAAM,CAAC,CAAC;IACvC,IAAI,CAACkB,cAAc,GAAGnB,SAAS,CAACC,MAAM,CAAC,CAAC;IACxC,IAAI,CAACmB,aAAa,GAAG,IAAIlB,GAAG,CAAC,CAAC;IAC9B,IAAI,CAACmB,sBAAsB,GAAGrB,SAAS,CAACC,MAAM,CAAC,CAAC;IAChD,IAAI,CAACqB,2BAA2B,GAAGtB,SAAS,CAACC,MAAM,CAAC,CAAC;IACrD,IAAI,CAACsB,2BAA2B,GAAG,IAAIrB,GAAG,CAAC,CAAC;IAC5C,IAAI,CAACsB,cAAc,GAAGxB,SAAS,CAACC,MAAM,CAAC,CAAC;IACxC,IAAI,CAACwB,kBAAkB,GAAGzB,SAAS,CAACC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAACyB,uBAAuB,GAAG1B,SAAS,CAACC,MAAM,CAAC,CAAC;IACjD,IAAI,CAAC0B,YAAY,GAAG3B,SAAS,CAACC,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC2B,gBAAgB,GAAG5B,SAAS,CAACC,MAAM,CAAC,CAAC;IAC1C,IAAI,CAAC4B,eAAe,GAAG7B,SAAS,CAACC,MAAM,CAAC,CAAC;IACzC,IAAI,CAAC6B,YAAY,GAAG9B,SAAS,CAACC,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC8B,QAAQ,GAAG/B,SAAS,CAACC,MAAM,CAAC,CAAC;IAClC,IAAI,CAAC+B,aAAa,GAAGhC,SAAS,CAACC,MAAM,CAAC,CAAC;EACzC;EAEAgC,UAAUA,CAACC,KAAa,EAAU;IAChC,MAAMC,YAAY,GAAG,IAAI,CAACrB,cAAc,GACpC,GAAGoB,KAAK,IAAI,IAAI,CAACpB,cAAc,EAAE,GACjCoB,KAAK;IACT,OAAOvF,UAAU,CAAC,QAAQ,CAAC,CAACyF,MAAM,CAACD,YAAY,EAAE,MAAM,CAAC,CAACE,MAAM,CAAC,KAAK,CAAC;EACxE;;EAEA;EACAC,WAAWA,CAAC/B,GAAW,EAAU;IAC/B,OAAO,qCAAqC,IAAI,CAAC0B,UAAU,CAAC1B,GAAG,CAAC,EAAE;EACpE;;EAEA;EACAgC,qBAAqBA,CAACC,cAAsB,EAAU;IACpD,OAAO,+BACL5F,cAAc,CAAC4F,cAAc,EAAE,IAAI,CAAC1B,cAAc,CAAC,EACnD;EACJ;;EAEA;EACA2B,yBAAyBA,CAAC9D,iBAAyB,EAAE+D,KAAa,EAAU;IAC1E,OAAO,6CACL,IAAI,CAACT,UAAU,CAAC,GAAGtD,iBAAiB,IAAI+D,KAAK,EAAE,CAAC,EAChD;EACJ;;EAEA;EACAC,kBAAkBA,CAACC,SAAiB,EAAU;IAC5C,OAAO,qCAAqC,IAAI,CAACX,UAAU,CAACW,SAAS,CAAC,EAAE;EAC1E;;EAEA;EACAC,gCAAgCA,CAACC,SAAiB,EAAU;IAC1D,OAAO,qDACL,IAAI,CAACb,UAAU,CAACa,SAAS,CAAC,EAC1B;EACJ;EAEAC,iBAAiBA,CAAA,EAAqC;IACpD,OAAO,IAAI,CAAC5B,cAAc;EAC5B;EAEA6B,qBAAqBA,CAAA,EAAsD;IACzE,OAAO,IAAI,CAAC5B,aAAa;EAC3B;EAEA6B,gBAAgBA,CAAA,EAAwC;IACtD,OAAO,IAAI,CAAC/B,aAAa;EAC3B;EAEAgC,yBAAyBA,CAAA,EAA6C;IACpE,OAAO,IAAI,CAAC7B,sBAAsB;EACpC;EAEA8B,wBAAwBA,CAAA,EAA4C;IAClE,OAAO,IAAI,CAACnC,qBAAqB;EACnC;EAEAoC,4BAA4BA,CAAA,EAAgD;IAC1E,OAAO,IAAI,CAACnC,yBAAyB;EACvC;EAEAoC,mBAAmBA,CAAA,EAAuC;IACxD,OAAO,IAAI,CAACzB,gBAAgB;EAC9B;EAEA0B,qBAAqBA,CAAA,EAAyC;IAC5D,OAAO,IAAI,CAAC7B,kBAAkB;EAChC;EAEA8B,0BAA0BA,CAAA,EAA8C;IACtE,OAAO,IAAI,CAAC7B,uBAAuB;EACrC;EAEA8B,+BAA+BA,CAAA,EAG7B;IACA,OAAO,IAAI,CAACzC,4BAA4B;EAC1C;EAEA0C,kBAAkBA,CAAA,EAAyC;IACzD,OAAO,IAAI,CAAC5B,eAAe;EAC7B;EAEA6B,eAAeA,CAAA,EAAqD;IAClE,OAAO,IAAI,CAAC/B,YAAY;EAC1B;EAEAgC,iBAAiBA,CAAA,EAAqC;IACpD,OAAO,IAAI,CAACnC,cAAc;EAC5B;EAEAoC,eAAeA,CAAA,EAAmC;IAChD,OAAO,IAAI,CAAC9B,YAAY;EAC1B;EAEA+B,WAAWA,CAAA,EAA+B;IACxC,OAAO,IAAI,CAAC9B,QAAQ;EACtB;EAEA+B,8BAA8BA,CAAA,EAA0C;IACtE,OAAO,IAAI,CAACxC,2BAA2B;EACzC;EAEAyC,8BAA8BA,CAAA,EAAwC;IACpE,OAAO,IAAI,CAACxC,2BAA2B;EACzC;EAEAyC,4BAA4BA,CAACC,kBAAsC,EAGjE;IACA,MAAM/B,KAAK,GAAG,IAAI,CAACZ,2BAA2B,CAACX,OAAO,CAAC,CAAC,CAAC7D,GAAG,CAC1DmH,kBACF,CAAC;IACD,MAAMC,MAAM,GAAG,IAAI,CAAC3C,2BAA2B,CAACzE,GAAG,CAACmH,kBAAkB,CAAC;IAEvE,IAAI,CAAC/B,KAAK,IAAI,CAACgC,MAAM,EAAE;MACrB,MAAM,IAAIC,KAAK,CAAC,8CAA8C,CAAC;IACjE;IAEA,OAAO;MAAEjC,KAAK;MAAEgC;IAAO,CAAC;EAC1B;;EAEA;EACAE,uBAAuBA,CAACC,OAAe,EAAoB;IACzD,MAAMC,GAAG,GAAG,4CACV,IAAI,CAACrC,UAAU,CAACoC,OAAO,CAAC,EACJ;IACtB,IAAI,CAACnD,aAAa,CAACV,GAAG,CAAC3D,mBAAmB,CAACK,eAAe,CAACmH,OAAO,CAAC,EAAEC,GAAG,CAAC;IACzE,OAAOA,GAAG;EACZ;;EAEA;EACAC,+BAA+BA,CAC7BF,OAAe,EACflH,oBAA4B,EACN;IACtB,MAAMqH,UAAU,GAAG3H,mBAAmB,CAAC6C,uBAAuB,CAC5DvC,oBAAoB,EACpBkH,OACF,CAAC;IACD,MAAMC,GAAG,GAAG,iDACV,IAAI,CAACrC,UAAU,CAACuC,UAAU,CAAC,EACH;IAC1B,IAAI,CAACxD,qBAAqB,CAACR,GAAG,CAACgE,UAAU,EAAEF,GAAG,CAAC;IAC/C,OAAOA,GAAG;EACZ;;EAEA;EACAG,wBAAwBA,CAACJ,OAAe,EAAiB;IACvD,MAAMC,GAAG,GAAG,yCACV,IAAI,CAACrC,UAAU,CAACoC,OAAO,CAAC,EACP;IACnB,IAAI,CAAC7C,cAAc,CAAChB,GAAG,CAAC3D,mBAAmB,CAACO,gBAAgB,CAACiH,OAAO,CAAC,EAAEC,GAAG,CAAC;IAC3E,OAAOA,GAAG;EACZ;;EAEA;EACAI,uBAAuBA,CACrBL,OAAe,EACflF,OAAe,EACK;IACpB,MAAMmF,GAAG,GAAG,wCACV,IAAI,CAACrC,UAAU,CAACoC,OAAO,CAAC,EACxB;IACF;IACA,MAAMM,WAAW,GAAGhI,UAAU,CAAC,KAAK,CAAC,CAACyF,MAAM,CAACjD,OAAO,EAAE,MAAM,CAAC,CAACkD,MAAM,CAAC,KAAK,CAAC;IAC3E,MAAMuC,aAAa,GAAG,GAAGD,WAAW,CAACE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAC9CF,WAAW,CAACE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IACtBF,WAAW,CAACE,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IAAIF,WAAW,CAACE,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,IACxDF,WAAW,CAACE,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EACzB;IAEF,MAAMZ,kBAAsC,GAAG;MAC7CK,GAAG;MACHQ,SAAS,EAAEF;IACb,CAAuB;IAEvB,IAAI,CAACtD,2BAA2B,CAACd,GAAG,CAClC3D,mBAAmB,CAACuC,uBAAuB,CAACiF,OAAO,EAAElF,OAAO,CAAC,EAC7D8E,kBACF,CAAC;IACD,IAAI,CAAC1C,2BAA2B,CAACb,GAAG,CAClCuD,kBAAkB,EAClBpH,mBAAmB,CAACoC,uBAAuB,CAACoF,OAAO,EAAElF,OAAO,CAC9D,CAAC;IACD,OAAO8E,kBAAkB;EAC3B;EAEAc,4BAA4BA,CAACtG,IAAY,EAAqB;IAC5D,MAAM6F,GAAG,GAAG,8CACV,IAAI,CAACrC,UAAU,CAACxD,IAAI,CAAC,EACA;IACvB,IAAI,CAACoD,eAAe,CAACrB,GAAG,CACtB3D,mBAAmB,CAACa,oBAAoB,CAACe,IAAI,CAAC,EAC9C6F,GACF,CAAC;IACD,OAAOA,GAAG;EACZ;EAEAU,sBAAsBA,CAACzG,UAAkB,EAAe;IACtD,MAAM+F,GAAG,GAAG,uCACV,IAAI,CAACrC,UAAU,CAAC1D,UAAU,CAAC,EACZ;IACjB,IAAI,CAACuD,YAAY,CAACtB,GAAG,CAAC3D,mBAAmB,CAACyB,cAAc,CAACC,UAAU,CAAC,EAAE+F,GAAG,CAAC;IAC1E,OAAOA,GAAG;EACZ;EAEAW,sCAAsCA,CACpCxG,IAAY,EACiB;IAC7B,MAAM6F,GAAG,GAAG,wDACV,IAAI,CAACrC,UAAU,CAACxD,IAAI,CAAC,EACU;IACjC,IAAI,CAACsC,4BAA4B,CAACP,GAAG,CACnC3D,mBAAmB,CAAC2B,8BAA8B,CAACC,IAAI,CAAC,EACxD6F,GACF,CAAC;IACD,OAAOA,GAAG;EACZ;EAEAY,wBAAwBA,CAACb,OAAe,EAAiB;IACvD,MAAMC,GAAG,GAAG,yCACV,IAAI,CAACrC,UAAU,CAACoC,OAAO,CAAC,EACP;IACnB,IAAI,CAAClD,cAAc,CAACX,GAAG,CAAC3D,mBAAmB,CAAC6B,gBAAgB,CAAC2F,OAAO,CAAC,EAAEC,GAAG,CAAC;IAC3E,OAAOA,GAAG;EACZ;EAEAa,uBAAuBA,CACrBxG,iBAAyB,EACzBG,WAAmB,EACL;IACd,MAAMwF,GAAG,GAAG,uCACV,IAAI,CAACrC,UAAU,CAACtD,iBAAiB,GAAG,GAAG,GAAGG,WAAW,CAAC,EACtC;IAElB,IAAIsG,QAAQ,GAAG,IAAI,CAAChE,aAAa,CAACtE,GAAG,CAAC6B,iBAAiB,CAAC;IACxD,IAAI,CAACyG,QAAQ,EAAE;MACbA,QAAQ,GAAGpF,SAAS,CAACC,MAAM,CAAC,CAAC;MAC7B,IAAI,CAACmB,aAAa,CAACV,GAAG,CAAC/B,iBAAiB,EAAEyG,QAAQ,CAAC;IACrD;IAEAA,QAAQ,CAAC5E,GAAG,CACV3D,mBAAmB,CAAC+B,eAAe,CAACD,iBAAiB,EAAEG,WAAW,CAAC,EACnE;MAAEwF,GAAG;MAAEe,EAAE,EAAEvG;IAAY,CACzB,CAAC;IACD,OAAOwF,GAAG;EACZ;;EAEA;EACAgB,cAAcA,CAACjB,OAAe,EAAyB;IACrD,MAAMC,GAAG,GAAG,kDACV,IAAI,CAACrC,UAAU,CAACoC,OAAO,CAAC,EACC;IAC3B,IAAI,CAAChD,sBAAsB,CAACb,GAAG,CAC7B3D,mBAAmB,CAACwC,SAAS,CAACgF,OAAO,CAAC,EACtCC,GACF,CAAC;IACD,OAAOA,GAAG;EACZ;EAEAiB,mBAAmBA,CACjBlB,OAAe,EACfhH,iBAAyB,EACR;IACjB,MAAMiH,GAAG,GAAG,2CACV,IAAI,CAACrC,UAAU,CAAC5E,iBAAiB,GAAG,GAAG,GAAGgH,OAAO,CAAC,EAC/B;IACrB,IAAI,CAACzC,gBAAgB,CAACpB,GAAG,CACvB3D,mBAAmB,CAAC0C,oBAAoB,CAAClC,iBAAiB,EAAEgH,OAAO,CAAC,EACpEC,GACF,CAAC;IACD,OAAOA,GAAG;EACZ;;EAEA;EACAkB,gCAAgCA,CAC9BnB,OAAe,EACflH,oBAA4B,EACF;IAC1B,MAAMmH,GAAG,GAAG,qDACV,IAAI,CAACrC,UAAU,CAAC9E,oBAAoB,GAAG,GAAG,GAAGkH,OAAO,CAAC,EACzB;IAC9B,IAAI,CAACpD,yBAAyB,CAACT,GAAG,CAChC3D,mBAAmB,CAAC2C,uBAAuB,CACzCrC,oBAAoB,EACpBkH,OACF,CAAC,EACDC,GACF,CAAC;IACD,OAAOA,GAAG;EACZ;;EAEA;EACAmB,sBAAsBA,CACpBC,eAAuB,EACvBrB,OAAe,EACC;IAChB,MAAMC,GAAG,GAAG,0CACV,IAAI,CAACrC,UAAU,CAACyD,eAAe,GAAG,GAAG,GAAGrB,OAAO,CAAC,EAC9B;IACpB,OAAOC,GAAG;EACZ;;EAEA;EACAqB,eAAeA,CACb9H,WAAmB,EACnB+H,WAAwB,EACE;IAC1B,MAAMC,UAAU,GAAG,qCACjB,IAAI,CAAC5D,UAAU,CAACpE,WAAW,CAAC,EAC5B;IACF,MAAMiI,QAAQ,GAAG,MAAM;;IAEvB;IACAF,WAAW,CAACG,OAAO,CAACtH,IAAI,IAAI;MAC1B,IAAI,CAACkD,YAAY,CAACnB,GAAG,CACnB3D,mBAAmB,CAACkB,mBAAmB,CAACF,WAAW,EAAEY,IAAI,CAAC,EAC1D;QACEuH,UAAU,EAAE;UACVC,IAAI,EAAE,SAAS;UACfC,OAAO,EAAE;YAAE5B,GAAG,EAAEuB,UAAU;YAAEM,MAAM,EAAEL;UAAS;QAC/C,CAAsB;QACtBrH,IAAI,EAAEA;MACR,CACF,CAAC;IACH,CAAC,CAAC;;IAEF;IACA,IAAI,CAACgD,kBAAkB,CAACjB,GAAG,CACzB3D,mBAAmB,CAACe,aAAa,CAACC,WAAW,CAAC,EAC9C;MACEoI,IAAI,EAAE,SAAS;MACfC,OAAO,EAAE;QAAE5B,GAAG,EAAEuB,UAAU;QAAEM,MAAM,EAAEL;MAAS;IAC/C,CACF,CAAC;IAED,OAAO;MAAExB,GAAG,EAAEuB,UAAU;MAAEC;IAAS,CAAC;EACtC;EAEAM,qBAAqBA,CACnB7I,UAAkB,EAClBqI,WAAwB,EACT;IACf,MAAMS,gBAAgB,GAAG,+CACvB,IAAI,CAACpE,UAAU,CAAC1E,UAAU,CAAC,EAC3B;IACF,MAAMuI,QAAQ,GAAG,MAAM;IAOvB,MAAMQ,kBAAqC,GAAG;MAC5CL,IAAI,EAAE,QAAQ;MACdM,MAAM,EAAE;QACNjC,GAAG,EAAE+B,gBAAgB;QACrBF,MAAM,EAAEL;MACV;IACF,CAAsB;;IAEtB;IACAF,WAAW,CAACG,OAAO,CAACtH,IAAI,IAAI;MAC1B,IAAI,CAACkD,YAAY,CAACnB,GAAG,CACnB3D,mBAAmB,CAACW,kBAAkB,CAACD,UAAU,EAAEkB,IAAI,CAAC,EACxD;QACEuH,UAAU,EAAEM,kBAAkB;QAC9B7H,IAAI,EAAEA;MACR,CACF,CAAC;IACH,CAAC,CAAC;;IAEF;IACA,IAAI,CAACgD,kBAAkB,CAACjB,GAAG,CACzB3D,mBAAmB,CAACS,YAAY,CAACC,UAAU,CAAC,EAC5C+I,kBACF,CAAC;IAED,OA9B+B;MAC7BD,gBAAgB;MAChBP;IACF,CAAC;EA4BH;EAEAU,6BAA6BA,CAC3BpI,kBAA0B,EAC1BwH,WAAwB,EACD;IACvB,MAAMa,iBAAiB,GAAG,6CACxB,IAAI,CAACxE,UAAU,CAAC7D,kBAAkB,CAAC,EACnC;;IAEF;IACAwH,WAAW,CAACG,OAAO,CAACtH,IAAI,IAAI;MAC1B,IAAI,CAACkD,YAAY,CAACnB,GAAG,CACnB3D,mBAAmB,CAACwB,0BAA0B,CAC5CD,kBAAkB,EAClBK,IACF,CAAC,EACD;QACEuH,UAAU,EAAE;UACVC,IAAI,EAAE,gBAAgB;UACtBS,cAAc,EAAE;YAAEpC,GAAG,EAAEmC;UAAkB;QAC3C,CAAsB;QACtBhI,IAAI,EAAEA;MACR,CACF,CAAC;IACH,CAAC,CAAC;;IAEF;IACA,IAAI,CAACgD,kBAAkB,CAACjB,GAAG,CACzB3D,mBAAmB,CAACsB,oBAAoB,CAACC,kBAAkB,CAAC,EAC5D;MACE6H,IAAI,EAAE,gBAAgB;MACtBS,cAAc,EAAE;QAAEpC,GAAG,EAAEmC;MAAkB;IAC3C,CACF,CAAC;IAED,OAAO;MAAEnC,GAAG,EAAEmC;IAAkB,CAAC;EACnC;EAEAE,2BAA2BA,CAACzI,gBAAwB,EAAuB;IACzE,MAAM0I,WAAW,GAAG,uCAClB,IAAI,CAAC3E,UAAU,CAAC/D,gBAAgB,CAAC,EACjC;IACF,MAAM2I,iBAAiB,GAAG,8CACxB,IAAI,CAAC5E,UAAU,CAAC/D,gBAAgB,CAAC,EACjC;IACF,MAAM4I,eAAe,GAAG,4CACtB,IAAI,CAAC7E,UAAU,CAAC/D,gBAAgB,CAAC,EACjC;;IAEF;IACA,IAAI,CAACwD,uBAAuB,CAAClB,GAAG,CAC9B3D,mBAAmB,CAACoB,kBAAkB,CAACC,gBAAgB,CAAC,EACxD;MACE+H,IAAI,EAAE,UAAU;MAChBc,QAAQ,EAAE;QACRzC,GAAG,EAAEsC,WAAW;QAChBT,MAAM,EAAE,QAAQ,CAAE;MACpB;IACF,CACF,CAAC;IAED,OAAO;MACLS,WAAW;MACXE,eAAe;MACfD;IACF,CAAC;EACH;EAEAG,iBAAiBA,CAACxC,UAAsB,EAAU;IAChD,MAAMa,EAAE,GAAGzI,cAAc,CAAC4H,UAAU,EAAE,IAAI,CAAC1D,cAAc,CAAC;IAC1D,OAAOuE,EAAE;EACX;EAEA4B,gBAAgBA,CAAA,EAA8B;IAC5C,OAAO,IAAI,CAACjF,aAAa;EAC3B;EAEAkF,oBAAoBA,CAAC7J,iBAAyB,EAAU;IACtD,MAAMmH,UAAU,GAAG3H,mBAAmB,CAACO,gBAAgB,CAACC,iBAAiB,CAAC;IAC1E,MAAM8J,WAAW,GAAG,IAAI,CAACnF,aAAa,CAAClF,GAAG,CAAC0H,UAAU,CAAC;IACtD,IAAI2C,WAAW,EAAE;MACf,OAAOA,WAAW;IACpB;;IAEA;IACA,MAAMC,YAAY,GAAG/J,iBAAiB,CAACgK,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAACC,WAAW,CAAC,CAAC;IACxE,IAAI,CAACtF,aAAa,CAACxB,GAAG,CAACgE,UAAU,EAAE4C,YAAY,CAAC;IAChD,OAAOA,YAAY;EACrB;AACF","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"generateRid.js","names":["createHash","toBlockShapeId","ReadableIdGenerator","get","arg1","arg2","undefined","getForInterface","interfaceTypeApiName","getForObjectType","objectTypeApiName","getForStream","streamName","getForStreamColumn","columnName","getForTimeSeriesSync","timeSeriesSyncName","getForDataset","dataSetName","getForDatasetOutput","getForDatasetColumn","getForDatasetColumnOutput","getForMediaSetView","mediaSetViewName","getForRestrictedView","restrictedViewName","getForRestrictedViewColumn","getForLinkType","linkTypeId","getForGeotimeSeriesIntegration","name","getForActionType","actionTypeApiName","getForParameter","actionName","parameterId","getForGroup","groupId","getForProducedValueType","valueTypeApiName","version","getForConsumedValueType","getForSpt","fieldApiName","getForObjectProperty","getForInterfaceProperty","interfacePropertyTypeApiName","getForInterfaceLinkType","interfaceApiName","interfaceLinkTypeApiName","getForMarking","markingId","supportedMarkingsType","BiMapImpl","create","Map","constructor","forward","backward","asMap","key","put","value","set","inverse","entries","OntologyRidGeneratorImpl","randomnessUuid","geotimeSeriesIntegrationRids","interfaceLinkTypeRids","interfacePropertyTypeRids","interfaceRids","actionTypeRids","parameterRids","sharedPropertyTypeRids","consumedValueTypeReferences","producedValueTypeReferences","objectTypeRids","datasourceLocators","filesDatasourceLocators","columnShapes","propertyTypeRids","timeSeriesSyncs","linkTypeRids","groupIds","objectTypeIds","hashString","input","stringToHash","update","digest","generateRid","generateDatasourceRid","datasourceName","generateValidationRuleRid","index","generateSectionRid","sectionId","generatePropertySecurityGroupRid","groupName","getActionTypeRids","getParameterRidAndIds","getInterfaceRids","getSharedPropertyTypeRids","getInterfaceLinkTypeRids","getInterfacePropertyTypeRids","getPropertyTypeRids","getDatasourceLocators","getFilesDatasourceLocators","getGeotimeSeriesIntegrationRids","getTimeSeriesSyncs","getColumnShapes","getObjectTypeRids","getLinkTypeRids","getGroupIds","getConsumedValueTypeReferences","getProducedValueTypeReferences","valueTypeMappingForReference","valueTypeReference","output","Error","generateRidForInterface","apiName","rid","generateRidForInterfaceLinkType","readableId","generateRidForObjectType","generateRidForValueType","versionHash","versionAsUuid","slice","versionId","generateRidForTimeSeriesSync","generateRidForLinkType","generateRidForGeotimeSeriesIntegration","generateRidForActionType","generateRidForParameter","innerMap","id","generateSptRid","generatePropertyRid","generateInterfacePropertyTypeRid","generateStructFieldRid","propertyApiName","generateDatasetLocator","columnNames","datasetRid","branchId","forEach","datasource","type","dataset","branch","generateStreamLocator","streamLocatorRid","marketplaceLocator","stream","generateRestrictedViewLocator","restrictedViewRid","restrictedView","generateMediaSetViewLocator","mediaSetRid","mediaSetBranchRid","mediaSetViewRid","mediaSet","toBlockInternalId","getObjectTypeIds","generateObjectTypeId","maybeLastId","objectTypeId","replace","toLowerCase"],"sources":["generateRid.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 { ValueTypeReference } from \"@osdk/client.unstable\";\nimport type {\n ActionTypeRid,\n DatasourceLocator,\n FilesDatasourceLocator,\n GeotimeSeriesIntegrationRid,\n GroupId,\n InputShape,\n InputShapeMetadata,\n InterfaceLinkTypeRid,\n InterfacePropertyTypeRid,\n InterfaceTypeRid,\n LinkTypeRid,\n ObjectTypeRid,\n OutputShape,\n PropertyTypeRid,\n ResolvedDatasourceColumnShape,\n SharedPropertyTypeRid,\n StructFieldRid,\n TimeSeriesSyncRid,\n} from \"@osdk/client.unstable/api\";\n// ParameterRid is defined in ontology-metadata but may not be re-exported through the main API\ntype ParameterRid = string;\nimport { createHash } from \"crypto\";\nimport { toBlockShapeId } from \"../cli/marketplaceSerialization/CodeBlockSpec.js\";\n\n// Given a unique key generates a rid deterministically (from a lock file eventually)\nexport type ReadableId = string & { __brand: \"ReadableId\" };\n\n/**\n * Placeholder interface for OntologyRidGenerator\n * This should be filled in with actual implementation\n */\n// Types for datasource locators\nexport interface DatasetDatasourceLocator {\n rid: string;\n branchId: string;\n}\n\nexport interface StreamLocator {\n streamLocatorRid: string;\n branchId: string;\n}\n\nexport interface RestrictedViewLocator {\n rid: string;\n}\n\nexport interface MediaSetViewLocator {\n mediaSetRid: string;\n mediaSetViewRid: string;\n mediaSetBranchRid: string;\n}\n\nexport interface OntologyRidGenerator {\n getActionTypeRids(): BiMap<ReadableId, ActionTypeRid>;\n getParameterRidAndIds(): Map<string, BiMap<ReadableId, ParameterRidAndId>>;\n getInterfaceRids(): BiMap<ReadableId, InterfaceTypeRid>;\n getSharedPropertyTypeRids(): BiMap<ReadableId, SharedPropertyTypeRid>;\n getInterfaceLinkTypeRids(): BiMap<ReadableId, InterfaceLinkTypeRid>;\n getInterfacePropertyTypeRids(): BiMap<ReadableId, InterfacePropertyTypeRid>;\n getPropertyTypeRids(): BiMap<ReadableId, PropertyTypeRid>;\n getDatasourceLocators(): BiMap<ReadableId, DatasourceLocator>;\n getFilesDatasourceLocators(): BiMap<ReadableId, FilesDatasourceLocator>;\n getGeotimeSeriesIntegrationRids(): BiMap<\n ReadableId,\n GeotimeSeriesIntegrationRid\n >;\n getTimeSeriesSyncs(): BiMap<ReadableId, TimeSeriesSyncRid>;\n getColumnShapes(): BiMap<ReadableId, ResolvedDatasourceColumnShape>;\n getObjectTypeRids(): BiMap<ReadableId, ObjectTypeRid>;\n getLinkTypeRids(): BiMap<ReadableId, LinkTypeRid>;\n getGroupIds(): BiMap<ReadableId, GroupId>;\n getConsumedValueTypeReferences(): BiMap<ReadableId, ValueTypeReference>;\n getProducedValueTypeReferences(): Map<ValueTypeReference, ReadableId>;\n valueTypeMappingForReference(valueTypeReference: ValueTypeReference): {\n input: ReadableId;\n output: ReadableId;\n };\n hashString(input: string): string;\n // Generic RID generation for types without specific generators (datasources, sections, etc.)\n generateRid(key: string): string;\n generateDatasourceRid(datasourceName: string): string;\n generateValidationRuleRid(actionTypeApiName: string, index: number): string;\n generateSectionRid(sectionId: string): string;\n generatePropertySecurityGroupRid(groupName: string): string;\n generateRidForInterface(apiName: string): InterfaceTypeRid;\n generateRidForInterfaceLinkType(\n apiName: string,\n interfaceTypeApiName: string,\n ): InterfaceLinkTypeRid;\n generateRidForObjectType(apiName: string): ObjectTypeRid;\n generateRidForValueType(apiName: string, version: string): ValueTypeReference;\n generateRidForTimeSeriesSync(name: string): TimeSeriesSyncRid;\n generateRidForLinkType(linkTypeId: string): LinkTypeRid;\n generateRidForGeotimeSeriesIntegration(\n name: string,\n ): GeotimeSeriesIntegrationRid;\n generateRidForActionType(apiName: string): ActionTypeRid;\n generateRidForParameter(\n actionTypeApiName: string,\n parameterId: string,\n ): ParameterRid;\n generateSptRid(apiName: string): SharedPropertyTypeRid;\n generatePropertyRid(\n apiName: string,\n objectTypeApiName: string,\n ): PropertyTypeRid;\n generateInterfacePropertyTypeRid(\n apiName: string,\n interfaceTypeApiName: string,\n ): InterfacePropertyTypeRid;\n generateStructFieldRid(\n propertyApiName: string,\n apiName: string,\n ): StructFieldRid;\n // Datasource locator methods\n generateDatasetLocator(\n dataSetName: string,\n columnNames: Set<string>,\n ): DatasetDatasourceLocator;\n generateStreamLocator(\n streamName: string,\n columnNames: Set<string>,\n ): StreamLocator;\n generateRestrictedViewLocator(\n restrictedViewName: string,\n columnNames: Set<string>,\n ): RestrictedViewLocator;\n generateMediaSetViewLocator(mediaSetViewName: string): MediaSetViewLocator;\n toBlockInternalId(readableId: ReadableId): string;\n generateObjectTypeId(objectTypeApiName: string): string;\n getObjectTypeIds(): BiMap<ReadableId, string>;\n}\n\nexport interface ParameterRidAndId {\n rid: ParameterRid;\n id: string;\n}\n\n/**\n * Simple BiMap interface (placeholder)\n */\nexport interface BiMap<K, V> {\n get(key: K): V | undefined;\n put(key: K, value: V): void;\n asMap(): Map<K, V>;\n inverse(): BiMap<V, K>;\n entries(): IterableIterator<[K, V]>;\n}\n\n/**\n * BlockShapes container for input and output shapes\n */\nexport interface BlockShapes {\n inputShapes: Map<ReadableId, InputShape>;\n outputShapes: Map<ReadableId, OutputShape>;\n inputShapeMetadata: Map<ReadableId, InputShapeMetadata>;\n}\n\n/**\n * ReadableId generator functions matching Java's ReadableIdGenerator\n */\nexport class ReadableIdGenerator {\n static get(interfaceTypeApiName: string): ReadableId;\n static get(\n interfaceApiName: string,\n interfaceLinkTypeApiName: string,\n ): ReadableId;\n static get(arg1: string, arg2?: string): ReadableId {\n if (arg2 !== undefined) {\n // Interface link type\n return `interface-link-type-${arg1}-${arg2}` as ReadableId;\n }\n // Single argument - check context to determine type\n // This will be called from specific methods\n return arg1 as ReadableId;\n }\n\n static getForInterface(interfaceTypeApiName: string): ReadableId {\n return `interface-${interfaceTypeApiName}` as ReadableId;\n }\n\n static getForObjectType(objectTypeApiName: string): ReadableId {\n return `object-type-${objectTypeApiName}` as ReadableId;\n }\n\n static getForStream(streamName: string): ReadableId {\n return `stream-datasource-${streamName}` as ReadableId;\n }\n\n static getForStreamColumn(\n streamName: string,\n columnName: string,\n ): ReadableId {\n return `stream-datasource-column-${streamName}-${columnName}` as ReadableId;\n }\n\n static getForTimeSeriesSync(timeSeriesSyncName: string): ReadableId {\n return `time-series-sync-${timeSeriesSyncName}` as ReadableId;\n }\n\n static getForDataset(dataSetName: string): ReadableId {\n return `dataset-datasource-${dataSetName}` as ReadableId;\n }\n\n static getForDatasetOutput(dataSetName: string): ReadableId {\n return `dataset-datasource-output-${dataSetName}` as ReadableId;\n }\n\n static getForDatasetColumn(\n dataSetName: string,\n columnName: string,\n ): ReadableId {\n return `dataset-datasource-column-${dataSetName}-${columnName}` as ReadableId;\n }\n\n static getForDatasetColumnOutput(\n dataSetName: string,\n columnName: string,\n ): ReadableId {\n return `dataset-datasource-column-output-${dataSetName}-${columnName}` as ReadableId;\n }\n\n static getForMediaSetView(mediaSetViewName: string): ReadableId {\n return `media-set-view-${mediaSetViewName}` as ReadableId;\n }\n\n static getForRestrictedView(restrictedViewName: string): ReadableId {\n return `restricted-view-datasource-${restrictedViewName}` as ReadableId;\n }\n\n static getForRestrictedViewColumn(\n restrictedViewName: string,\n columnName: string,\n ): ReadableId {\n return `restricted-view-datasource-column-${restrictedViewName}-${columnName}` as ReadableId;\n }\n\n static getForLinkType(linkTypeId: string): ReadableId {\n return `link-type-${linkTypeId}` as ReadableId;\n }\n\n static getForGeotimeSeriesIntegration(name: string): ReadableId {\n return `geotime-series-integration-${name}` as ReadableId;\n }\n\n static getForActionType(actionTypeApiName: string): ReadableId {\n return `action-type-${actionTypeApiName}` as ReadableId;\n }\n\n static getForParameter(actionName: string, parameterId: string): ReadableId {\n return `action-${actionName}-parameter-${parameterId}` as ReadableId;\n }\n\n static getForGroup(groupId: string): ReadableId {\n return `group-${groupId}` as ReadableId;\n }\n\n static getForProducedValueType(\n valueTypeApiName: string,\n version: string,\n ): ReadableId {\n return `produced-value-type-${valueTypeApiName}-${version}` as ReadableId;\n }\n\n static getForConsumedValueType(\n valueTypeApiName: string,\n version: string,\n ): ReadableId {\n return `consumed-value-type-${valueTypeApiName}-${version}` as ReadableId;\n }\n\n static getForSpt(fieldApiName: string): ReadableId {\n return `shared-property-type-${fieldApiName}` as ReadableId;\n }\n\n static getForObjectProperty(\n objectTypeApiName: string,\n fieldApiName: string,\n ): ReadableId {\n return `${objectTypeApiName}-property-type-${fieldApiName}` as ReadableId;\n }\n\n static getForInterfaceProperty(\n interfaceTypeApiName: string,\n interfacePropertyTypeApiName: string,\n ): ReadableId {\n return `interface-property-type-${interfaceTypeApiName}-${interfacePropertyTypeApiName}` as ReadableId;\n }\n\n static getForInterfaceLinkType(\n interfaceApiName: string,\n interfaceLinkTypeApiName: string,\n ): ReadableId {\n return `interface-link-type-${interfaceApiName}-${interfaceLinkTypeApiName}` as ReadableId;\n }\n\n static getForMarking(\n markingId: string,\n supportedMarkingsType: \"CBAC\" | \"MANDATORY\",\n ): ReadableId {\n return `marking-${markingId}-${supportedMarkingsType}` as ReadableId;\n }\n}\n\nexport class BiMapImpl<K, V> implements BiMap<K, V> {\n forward: Map<K, V>;\n backward: Map<V, K>;\n public static create<K, V>(): BiMap<K, V> {\n return new BiMapImpl(new Map<K, V>(), new Map<V, K>());\n }\n\n private constructor(forward: Map<K, V>, backward: Map<V, K>) {\n this.forward = forward;\n this.backward = backward;\n }\n asMap(): Map<K, V> {\n return this.forward;\n }\n\n get(key: K): V | undefined {\n return this.forward.get(key);\n }\n\n put(key: K, value: V): void {\n this.forward.set(key, value);\n this.backward.set(value, key);\n }\n\n inverse(): BiMap<V, K> {\n return new BiMapImpl(this.backward, this.forward);\n }\n entries(): IterableIterator<[K, V]> {\n return this.forward.entries();\n }\n}\n\nexport class OntologyRidGeneratorImpl implements OntologyRidGenerator {\n private readonly actionTypeRids: BiMap<ReadableId, ActionTypeRid>;\n private readonly parameterRids: Map<\n string,\n BiMap<ReadableId, ParameterRidAndId>\n >;\n private readonly interfaceRids: BiMap<ReadableId, InterfaceTypeRid>;\n private readonly sharedPropertyTypeRids: BiMap<\n ReadableId,\n SharedPropertyTypeRid\n >;\n private readonly interfaceLinkTypeRids: BiMap<\n ReadableId,\n InterfaceLinkTypeRid\n >;\n private readonly interfacePropertyTypeRids: BiMap<\n ReadableId,\n InterfacePropertyTypeRid\n >;\n private readonly geotimeSeriesIntegrationRids: BiMap<\n ReadableId,\n GeotimeSeriesIntegrationRid\n >;\n private readonly objectTypeRids: BiMap<ReadableId, ObjectTypeRid>;\n private readonly propertyTypeRids: BiMap<ReadableId, PropertyTypeRid>;\n private readonly consumedValueTypeReferences: BiMap<\n ReadableId,\n ValueTypeReference\n >;\n private readonly producedValueTypeReferences: Map<\n ValueTypeReference,\n ReadableId\n >;\n private readonly datasourceLocators: BiMap<ReadableId, DatasourceLocator>;\n private readonly filesDatasourceLocators: BiMap<\n ReadableId,\n FilesDatasourceLocator\n >;\n private readonly timeSeriesSyncs: BiMap<ReadableId, TimeSeriesSyncRid>;\n private readonly columnShapes: BiMap<\n ReadableId,\n ResolvedDatasourceColumnShape\n >;\n private readonly linkTypeRids: BiMap<ReadableId, LinkTypeRid>;\n private readonly groupIds: BiMap<ReadableId, GroupId>;\n private readonly objectTypeIds: BiMap<ReadableId, string>;\n private readonly randomnessUuid?: string;\n\n constructor(randomnessUuid?: string) {\n this.randomnessUuid = randomnessUuid;\n this.geotimeSeriesIntegrationRids = BiMapImpl.create();\n this.interfaceLinkTypeRids = BiMapImpl.create();\n this.interfacePropertyTypeRids = BiMapImpl.create();\n this.interfaceRids = BiMapImpl.create();\n this.actionTypeRids = BiMapImpl.create();\n this.parameterRids = new Map();\n this.sharedPropertyTypeRids = BiMapImpl.create();\n this.consumedValueTypeReferences = BiMapImpl.create();\n this.producedValueTypeReferences = new Map();\n this.objectTypeRids = BiMapImpl.create();\n this.datasourceLocators = BiMapImpl.create();\n this.filesDatasourceLocators = BiMapImpl.create();\n this.columnShapes = BiMapImpl.create();\n this.propertyTypeRids = BiMapImpl.create();\n this.timeSeriesSyncs = BiMapImpl.create();\n this.linkTypeRids = BiMapImpl.create();\n this.groupIds = BiMapImpl.create();\n this.objectTypeIds = BiMapImpl.create();\n }\n\n hashString(input: string): string {\n const stringToHash = this.randomnessUuid\n ? `${input}-${this.randomnessUuid}`\n : input;\n return createHash(\"sha256\").update(stringToHash, \"utf8\").digest(\"hex\");\n }\n\n // Generic RID generation for types without specific generators\n generateRid(key: string): string {\n return `ri.ontology-metadata.temp.unknown.${this.hashString(key)}`;\n }\n\n // Datasource RID matching Java's RidUtils.getDatasourceRidFromName format\n generateDatasourceRid(datasourceName: string): string {\n return `ri.ontology.main.datasource.${\n toBlockShapeId(datasourceName, this.randomnessUuid)\n }`;\n }\n\n // Validation rule RID matching Java's format\n generateValidationRuleRid(actionTypeApiName: string, index: number): string {\n return `ri.ontology-metadata.temp.validation-rule.${\n this.hashString(`${actionTypeApiName}.${index}`)\n }`;\n }\n\n // Section RID matching Java's format: ri.ontology-metadata.temp.section.{hash(sectionId)}\n generateSectionRid(sectionId: string): string {\n return `ri.ontology-metadata.temp.section.${this.hashString(sectionId)}`;\n }\n\n // Property security group RID matching Java's format\n generatePropertySecurityGroupRid(groupName: string): string {\n return `ri.ontology-metadata.temp.property-security-group.${\n this.hashString(groupName)\n }`;\n }\n\n getActionTypeRids(): BiMap<ReadableId, ActionTypeRid> {\n return this.actionTypeRids;\n }\n\n getParameterRidAndIds(): Map<string, BiMap<ReadableId, ParameterRidAndId>> {\n return this.parameterRids;\n }\n\n getInterfaceRids(): BiMap<ReadableId, InterfaceTypeRid> {\n return this.interfaceRids;\n }\n\n getSharedPropertyTypeRids(): BiMap<ReadableId, SharedPropertyTypeRid> {\n return this.sharedPropertyTypeRids;\n }\n\n getInterfaceLinkTypeRids(): BiMap<ReadableId, InterfaceLinkTypeRid> {\n return this.interfaceLinkTypeRids;\n }\n\n getInterfacePropertyTypeRids(): BiMap<ReadableId, InterfacePropertyTypeRid> {\n return this.interfacePropertyTypeRids;\n }\n\n getPropertyTypeRids(): BiMap<ReadableId, PropertyTypeRid> {\n return this.propertyTypeRids;\n }\n\n getDatasourceLocators(): BiMap<ReadableId, DatasourceLocator> {\n return this.datasourceLocators;\n }\n\n getFilesDatasourceLocators(): BiMap<ReadableId, FilesDatasourceLocator> {\n return this.filesDatasourceLocators;\n }\n\n getGeotimeSeriesIntegrationRids(): BiMap<\n ReadableId,\n GeotimeSeriesIntegrationRid\n > {\n return this.geotimeSeriesIntegrationRids;\n }\n\n getTimeSeriesSyncs(): BiMap<ReadableId, TimeSeriesSyncRid> {\n return this.timeSeriesSyncs;\n }\n\n getColumnShapes(): BiMap<ReadableId, ResolvedDatasourceColumnShape> {\n return this.columnShapes;\n }\n\n getObjectTypeRids(): BiMap<ReadableId, ObjectTypeRid> {\n return this.objectTypeRids;\n }\n\n getLinkTypeRids(): BiMap<ReadableId, LinkTypeRid> {\n return this.linkTypeRids;\n }\n\n getGroupIds(): BiMap<ReadableId, GroupId> {\n return this.groupIds;\n }\n\n getConsumedValueTypeReferences(): BiMap<ReadableId, ValueTypeReference> {\n return this.consumedValueTypeReferences;\n }\n\n getProducedValueTypeReferences(): Map<ValueTypeReference, ReadableId> {\n return this.producedValueTypeReferences;\n }\n\n valueTypeMappingForReference(valueTypeReference: ValueTypeReference): {\n input: ReadableId;\n output: ReadableId;\n } {\n const input = this.consumedValueTypeReferences.inverse().get(\n valueTypeReference,\n );\n const output = this.producedValueTypeReferences.get(valueTypeReference);\n\n if (!input || !output) {\n throw new Error(`Missing readable ID for value type reference`);\n }\n\n return { input, output };\n }\n\n // Interface types\n generateRidForInterface(apiName: string): InterfaceTypeRid {\n const rid = `ri.ontology-metadata.temp.interface-type.${\n this.hashString(apiName)\n }` as InterfaceTypeRid;\n this.interfaceRids.put(ReadableIdGenerator.getForInterface(apiName), rid);\n return rid;\n }\n\n // Interface Link Types\n generateRidForInterfaceLinkType(\n apiName: string,\n interfaceTypeApiName: string,\n ): InterfaceLinkTypeRid {\n const readableId = ReadableIdGenerator.getForInterfaceLinkType(\n interfaceTypeApiName,\n apiName,\n );\n const rid = `ri.ontology-metadata.temp.interface-link-type.${\n this.hashString(readableId)\n }` as InterfaceLinkTypeRid;\n this.interfaceLinkTypeRids.put(readableId, rid);\n return rid;\n }\n\n // Object Types\n generateRidForObjectType(apiName: string): ObjectTypeRid {\n const rid = `ri.ontology-metadata.temp.object-type.${\n this.hashString(apiName)\n }` as ObjectTypeRid;\n this.objectTypeRids.put(ReadableIdGenerator.getForObjectType(apiName), rid);\n return rid;\n }\n\n // Value Types\n generateRidForValueType(\n apiName: string,\n version: string,\n ): ValueTypeReference {\n const rid = `ri.ontology-metadata.temp.value-type.${\n this.hashString(apiName)\n }`;\n // Generate UUID from version string (matching Java's UUID.nameUUIDFromBytes)\n const versionHash = createHash(\"md5\").update(version, \"utf8\").digest(\"hex\");\n const versionAsUuid = `${versionHash.slice(0, 8)}-${\n versionHash.slice(8, 12)\n }-${versionHash.slice(12, 16)}-${versionHash.slice(16, 20)}-${\n versionHash.slice(20, 32)\n }`;\n\n const valueTypeReference: ValueTypeReference = {\n rid,\n versionId: versionAsUuid,\n } as ValueTypeReference;\n\n this.consumedValueTypeReferences.put(\n ReadableIdGenerator.getForConsumedValueType(apiName, version),\n valueTypeReference,\n );\n this.producedValueTypeReferences.set(\n valueTypeReference,\n ReadableIdGenerator.getForProducedValueType(apiName, version),\n );\n return valueTypeReference;\n }\n\n generateRidForTimeSeriesSync(name: string): TimeSeriesSyncRid {\n const rid = `ri.ontology-metadata.temp.time-series-sync.${\n this.hashString(name)\n }` as TimeSeriesSyncRid;\n this.timeSeriesSyncs.put(\n ReadableIdGenerator.getForTimeSeriesSync(name),\n rid,\n );\n return rid;\n }\n\n generateRidForLinkType(linkTypeId: string): LinkTypeRid {\n const rid = `ri.ontology-metadata.temp.link-type.${\n this.hashString(linkTypeId)\n }` as LinkTypeRid;\n this.linkTypeRids.put(ReadableIdGenerator.getForLinkType(linkTypeId), rid);\n return rid;\n }\n\n generateRidForGeotimeSeriesIntegration(\n name: string,\n ): GeotimeSeriesIntegrationRid {\n const rid = `ri.ontology-metadata.temp.geotime-series-integration.${\n this.hashString(name)\n }` as GeotimeSeriesIntegrationRid;\n this.geotimeSeriesIntegrationRids.put(\n ReadableIdGenerator.getForGeotimeSeriesIntegration(name),\n rid,\n );\n return rid;\n }\n\n generateRidForActionType(apiName: string): ActionTypeRid {\n const rid = `ri.ontology-metadata.temp.action-type.${\n this.hashString(apiName)\n }` as ActionTypeRid;\n this.actionTypeRids.put(ReadableIdGenerator.getForActionType(apiName), rid);\n return rid;\n }\n\n generateRidForParameter(\n actionTypeApiName: string,\n parameterId: string,\n ): ParameterRid {\n const rid = `ri.ontology-metadata.temp.parameter.${\n this.hashString(actionTypeApiName + \".\" + parameterId)\n }` as ParameterRid;\n\n let innerMap = this.parameterRids.get(actionTypeApiName);\n if (!innerMap) {\n innerMap = BiMapImpl.create();\n this.parameterRids.set(actionTypeApiName, innerMap);\n }\n\n innerMap.put(\n ReadableIdGenerator.getForParameter(actionTypeApiName, parameterId),\n { rid, id: parameterId },\n );\n return rid;\n }\n\n // Shared Property Types\n generateSptRid(apiName: string): SharedPropertyTypeRid {\n const rid = `ri.ontology-metadata.temp.shared-property-type.${\n this.hashString(apiName)\n }` as SharedPropertyTypeRid;\n this.sharedPropertyTypeRids.put(\n ReadableIdGenerator.getForSpt(apiName),\n rid,\n );\n return rid;\n }\n\n generatePropertyRid(\n apiName: string,\n objectTypeApiName: string,\n ): PropertyTypeRid {\n const rid = `ri.ontology-metadata.temp.property-type.${\n this.hashString(objectTypeApiName + \".\" + apiName)\n }` as PropertyTypeRid;\n this.propertyTypeRids.put(\n ReadableIdGenerator.getForObjectProperty(objectTypeApiName, apiName),\n rid,\n );\n return rid;\n }\n\n // Interface Property Types\n generateInterfacePropertyTypeRid(\n apiName: string,\n interfaceTypeApiName: string,\n ): InterfacePropertyTypeRid {\n const rid = `ri.ontology-metadata.temp.interface-property-type.${\n this.hashString(interfaceTypeApiName + \".\" + apiName)\n }` as InterfacePropertyTypeRid;\n this.interfacePropertyTypeRids.put(\n ReadableIdGenerator.getForInterfaceProperty(\n interfaceTypeApiName,\n apiName,\n ),\n rid,\n );\n return rid;\n }\n\n // Struct Field RIDs\n generateStructFieldRid(\n propertyApiName: string,\n apiName: string,\n ): StructFieldRid {\n const rid = `ri.ontology-metadata.temp.struct-field.${\n this.hashString(propertyApiName + \".\" + apiName)\n }` as StructFieldRid;\n return rid;\n }\n\n // Datasource locator methods\n generateDatasetLocator(\n dataSetName: string,\n columnNames: Set<string>,\n ): DatasetDatasourceLocator {\n const datasetRid = `ri.ontology-metadata.temp.dataset.${\n this.hashString(dataSetName)\n }`;\n const branchId = \"main\";\n\n // Register column shapes\n columnNames.forEach(name => {\n this.columnShapes.put(\n ReadableIdGenerator.getForDatasetColumn(dataSetName, name),\n {\n datasource: {\n type: \"dataset\",\n dataset: { rid: datasetRid, branch: branchId },\n } as DatasourceLocator,\n name,\n } as ResolvedDatasourceColumnShape,\n );\n });\n\n // Register datasource locator\n this.datasourceLocators.put(\n ReadableIdGenerator.getForDataset(dataSetName),\n {\n type: \"dataset\",\n dataset: { rid: datasetRid, branch: branchId },\n } as DatasourceLocator,\n );\n\n return { rid: datasetRid, branchId };\n }\n\n generateStreamLocator(\n streamName: string,\n columnNames: Set<string>,\n ): StreamLocator {\n const streamLocatorRid = `ri.ontology-metadata.temp.stream-datasource.${\n this.hashString(streamName)\n }`;\n const branchId = \"main\";\n\n const locator: StreamLocator = {\n streamLocatorRid,\n branchId,\n };\n\n const marketplaceLocator: DatasourceLocator = {\n type: \"stream\",\n stream: {\n rid: streamLocatorRid,\n branch: branchId,\n },\n } as DatasourceLocator;\n\n // Register column shapes\n columnNames.forEach(name => {\n this.columnShapes.put(\n ReadableIdGenerator.getForStreamColumn(streamName, name),\n {\n datasource: marketplaceLocator,\n name,\n } as ResolvedDatasourceColumnShape,\n );\n });\n\n // Register datasource locator\n this.datasourceLocators.put(\n ReadableIdGenerator.getForStream(streamName),\n marketplaceLocator,\n );\n\n return locator;\n }\n\n generateRestrictedViewLocator(\n restrictedViewName: string,\n columnNames: Set<string>,\n ): RestrictedViewLocator {\n const restrictedViewRid = `ri.ontology-metadata.temp.restricted-view.${\n this.hashString(restrictedViewName)\n }`;\n\n // Register column shapes\n columnNames.forEach(name => {\n this.columnShapes.put(\n ReadableIdGenerator.getForRestrictedViewColumn(\n restrictedViewName,\n name,\n ),\n {\n datasource: {\n type: \"restrictedView\",\n restrictedView: { rid: restrictedViewRid },\n } as DatasourceLocator,\n name,\n } as ResolvedDatasourceColumnShape,\n );\n });\n\n // Register datasource locator\n this.datasourceLocators.put(\n ReadableIdGenerator.getForRestrictedView(restrictedViewName),\n {\n type: \"restrictedView\",\n restrictedView: { rid: restrictedViewRid },\n } as DatasourceLocator,\n );\n\n return { rid: restrictedViewRid };\n }\n\n generateMediaSetViewLocator(mediaSetViewName: string): MediaSetViewLocator {\n const mediaSetRid = `ri.ontology-metadata.temp.media-set.${\n this.hashString(mediaSetViewName)\n }`;\n const mediaSetBranchRid = `ri.ontology-metadata.temp.media-set-branch.${\n this.hashString(mediaSetViewName)\n }`;\n const mediaSetViewRid = `ri.ontology-metadata.temp.media-set-view.${\n this.hashString(mediaSetViewName)\n }`;\n\n // Register files datasource locator\n this.filesDatasourceLocators.put(\n ReadableIdGenerator.getForMediaSetView(mediaSetViewName),\n {\n type: \"mediaSet\",\n mediaSet: {\n rid: mediaSetRid,\n branch: \"master\", // matches OntologyMetadataConstants.ONTOLOGY_DATASET_BRANCH_ID\n },\n } as FilesDatasourceLocator,\n );\n\n return {\n mediaSetRid,\n mediaSetViewRid,\n mediaSetBranchRid,\n };\n }\n\n toBlockInternalId(readableId: ReadableId): string {\n const id = toBlockShapeId(readableId, this.randomnessUuid);\n return id;\n }\n\n getObjectTypeIds(): BiMap<ReadableId, string> {\n return this.objectTypeIds;\n }\n\n generateObjectTypeId(objectTypeApiName: string): string {\n const readableId = ReadableIdGenerator.getForObjectType(objectTypeApiName);\n const maybeLastId = this.objectTypeIds.get(readableId);\n if (maybeLastId) {\n return maybeLastId;\n }\n\n // Match Java: apiName.replace(\".\", \"-\").toLowerCase()\n const objectTypeId = objectTypeApiName.replace(/\\./g, \"-\").toLowerCase();\n this.objectTypeIds.put(readableId, objectTypeId);\n return objectTypeId;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAEE,qBACA,sBAEK,uBAAwB;AAC/B,cACE,UACA,YACA,sBACA,0BACK,aAAc;AAQrB,cAAc,4BAA4B,2BAA4B;AAGtE,OAAO,iBAAS,YACdA,UAAU,UACVC,cAAc,uBACb;
|
|
1
|
+
{"mappings":"AAgBA,cAEE,qBACA,sBAEK,uBAAwB;AAC/B,cACE,UACA,YACA,sBACA,0BACK,aAAc;AAQrB,cAAc,4BAA4B,2BAA4B;AAGtE,OAAO,iBAAS,YACdA,UAAU,UACVC,cAAc,uBACb;AA4PH,OAAO,iBAAS,UACdC,iBAAiB,uBAChB;CAAE;CAAiB,QAAQ;AAAY;AAY1C,OAAO,iBAAS,kBACdC,QAAQ,gCACRF,cAAc,uBACb","names":["linkType: LinkType","ridGenerator: OntologyRidGenerator","object: string | ObjectTypeDefinition","status: UserLinkTypeStatus | undefined"],"sources":["../../../../src/conversion/toMarketplace/convertLink.ts"],"version":3,"file":"convertLink.d.ts"}
|
package/build/types/conversion/toMarketplace/convertOntologyDefinitionToWireBlockData.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,
|
|
1
|
+
{"mappings":"AAgBA,cAOE,2BAEK,uBAAwB;AAC/B,cAAc,0BAA0B,aAAc;AAKtD,cAAc,4BAA4B,2BAA4B;AAStE,OAAO,iBAAS,yCACdA,UAAU,oBACVC,cAAc,uBACb","names":["ontology: OntologyDefinition","ridGenerator: OntologyRidGenerator"],"sources":["../../../../src/conversion/toMarketplace/convertOntologyDefinitionToWireBlockData.ts"],"version":3,"file":"convertOntologyDefinitionToWireBlockData.d.ts"}
|
|
@@ -65,7 +65,7 @@ export interface OntologyRidGenerator {
|
|
|
65
65
|
generatePropertyRid(apiName: string, objectTypeApiName: string): PropertyTypeRid;
|
|
66
66
|
generateInterfacePropertyTypeRid(apiName: string, interfaceTypeApiName: string): InterfacePropertyTypeRid;
|
|
67
67
|
generateStructFieldRid(propertyApiName: string, apiName: string): StructFieldRid;
|
|
68
|
-
|
|
68
|
+
generateDatasetLocator(dataSetName: string, columnNames: Set<string>): DatasetDatasourceLocator;
|
|
69
69
|
generateStreamLocator(streamName: string, columnNames: Set<string>): StreamLocator;
|
|
70
70
|
generateRestrictedViewLocator(restrictedViewName: string, columnNames: Set<string>): RestrictedViewLocator;
|
|
71
71
|
generateMediaSetViewLocator(mediaSetViewName: string): MediaSetViewLocator;
|
|
@@ -207,7 +207,7 @@ export declare class OntologyRidGeneratorImpl implements OntologyRidGenerator {
|
|
|
207
207
|
generatePropertyRid(apiName: string, objectTypeApiName: string): PropertyTypeRid;
|
|
208
208
|
generateInterfacePropertyTypeRid(apiName: string, interfaceTypeApiName: string): InterfacePropertyTypeRid;
|
|
209
209
|
generateStructFieldRid(propertyApiName: string, apiName: string): StructFieldRid;
|
|
210
|
-
|
|
210
|
+
generateDatasetLocator(dataSetName: string, columnNames: Set<string>): DatasetDatasourceLocator;
|
|
211
211
|
generateStreamLocator(streamName: string, columnNames: Set<string>): StreamLocator;
|
|
212
212
|
generateRestrictedViewLocator(restrictedViewName: string, columnNames: Set<string>): RestrictedViewLocator;
|
|
213
213
|
generateMediaSetViewLocator(mediaSetViewName: string): MediaSetViewLocator;
|