@itwin/core-backend 3.5.0-dev.8 → 3.6.0-dev.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/CHANGELOG.md +92 -1
  2. package/lib/cjs/BriefcaseManager.d.ts +7 -2
  3. package/lib/cjs/BriefcaseManager.d.ts.map +1 -1
  4. package/lib/cjs/BriefcaseManager.js +11 -3
  5. package/lib/cjs/BriefcaseManager.js.map +1 -1
  6. package/lib/cjs/ChangeSummaryManager.d.ts.map +1 -1
  7. package/lib/cjs/ChangeSummaryManager.js +2 -0
  8. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  9. package/lib/cjs/ClassRegistry.d.ts +8 -0
  10. package/lib/cjs/ClassRegistry.d.ts.map +1 -1
  11. package/lib/cjs/ClassRegistry.js +47 -13
  12. package/lib/cjs/ClassRegistry.js.map +1 -1
  13. package/lib/cjs/CloudSqlite.d.ts +1 -0
  14. package/lib/cjs/CloudSqlite.d.ts.map +1 -1
  15. package/lib/cjs/CloudSqlite.js +1 -0
  16. package/lib/cjs/CloudSqlite.js.map +1 -1
  17. package/lib/cjs/ConcurrentQuery.d.ts +3 -1
  18. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  19. package/lib/cjs/ConcurrentQuery.js +6 -0
  20. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  21. package/lib/cjs/CustomViewState3dCreator.d.ts +3 -14
  22. package/lib/cjs/CustomViewState3dCreator.d.ts.map +1 -1
  23. package/lib/cjs/CustomViewState3dCreator.js +11 -43
  24. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  25. package/lib/cjs/DisplayStyle.d.ts +9 -9
  26. package/lib/cjs/DisplayStyle.d.ts.map +1 -1
  27. package/lib/cjs/DisplayStyle.js +12 -12
  28. package/lib/cjs/DisplayStyle.js.map +1 -1
  29. package/lib/cjs/Element.d.ts +23 -30
  30. package/lib/cjs/Element.d.ts.map +1 -1
  31. package/lib/cjs/Element.js +42 -46
  32. package/lib/cjs/Element.js.map +1 -1
  33. package/lib/cjs/ElementAspect.d.ts +24 -4
  34. package/lib/cjs/ElementAspect.d.ts.map +1 -1
  35. package/lib/cjs/ElementAspect.js +35 -2
  36. package/lib/cjs/ElementAspect.js.map +1 -1
  37. package/lib/cjs/Entity.d.ts +31 -1
  38. package/lib/cjs/Entity.d.ts.map +1 -1
  39. package/lib/cjs/Entity.js +52 -0
  40. package/lib/cjs/Entity.js.map +1 -1
  41. package/lib/cjs/EntityReferences.d.ts +50 -0
  42. package/lib/cjs/EntityReferences.d.ts.map +1 -0
  43. package/lib/cjs/EntityReferences.js +96 -0
  44. package/lib/cjs/EntityReferences.js.map +1 -0
  45. package/lib/cjs/ExternalSource.d.ts +3 -1
  46. package/lib/cjs/ExternalSource.d.ts.map +1 -1
  47. package/lib/cjs/ExternalSource.js +6 -0
  48. package/lib/cjs/ExternalSource.js.map +1 -1
  49. package/lib/cjs/GeoCoordConfig.d.ts.map +1 -1
  50. package/lib/cjs/GeoCoordConfig.js +10 -7
  51. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  52. package/lib/cjs/HubMock.d.ts +1 -0
  53. package/lib/cjs/HubMock.d.ts.map +1 -1
  54. package/lib/cjs/HubMock.js +34 -2
  55. package/lib/cjs/HubMock.js.map +1 -1
  56. package/lib/cjs/IModelCloneContext.d.ts +5 -82
  57. package/lib/cjs/IModelCloneContext.d.ts.map +1 -1
  58. package/lib/cjs/IModelCloneContext.js +7 -142
  59. package/lib/cjs/IModelCloneContext.js.map +1 -1
  60. package/lib/cjs/IModelDb.d.ts +21 -2
  61. package/lib/cjs/IModelDb.d.ts.map +1 -1
  62. package/lib/cjs/IModelDb.js +64 -14
  63. package/lib/cjs/IModelDb.js.map +1 -1
  64. package/lib/cjs/IModelElementCloneContext.d.ts +90 -0
  65. package/lib/cjs/IModelElementCloneContext.d.ts.map +1 -0
  66. package/lib/cjs/IModelElementCloneContext.js +160 -0
  67. package/lib/cjs/IModelElementCloneContext.js.map +1 -0
  68. package/lib/cjs/IModelHost.d.ts +9 -0
  69. package/lib/cjs/IModelHost.d.ts.map +1 -1
  70. package/lib/cjs/IModelHost.js +9 -2
  71. package/lib/cjs/IModelHost.js.map +1 -1
  72. package/lib/cjs/IpcHost.d.ts +6 -0
  73. package/lib/cjs/IpcHost.d.ts.map +1 -1
  74. package/lib/cjs/IpcHost.js +47 -3
  75. package/lib/cjs/IpcHost.js.map +1 -1
  76. package/lib/cjs/Model.d.ts +8 -2
  77. package/lib/cjs/Model.d.ts.map +1 -1
  78. package/lib/cjs/Model.js +15 -1
  79. package/lib/cjs/Model.js.map +1 -1
  80. package/lib/cjs/NativeHost.d.ts.map +1 -1
  81. package/lib/cjs/NativeHost.js +10 -15
  82. package/lib/cjs/NativeHost.js.map +1 -1
  83. package/lib/cjs/PromiseMemoizer.d.ts +4 -4
  84. package/lib/cjs/PromiseMemoizer.d.ts.map +1 -1
  85. package/lib/cjs/PromiseMemoizer.js +44 -44
  86. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  87. package/lib/cjs/Relationship.d.ts +18 -2
  88. package/lib/cjs/Relationship.d.ts.map +1 -1
  89. package/lib/cjs/Relationship.js +30 -1
  90. package/lib/cjs/Relationship.js.map +1 -1
  91. package/lib/cjs/RpcBackend.d.ts +0 -23
  92. package/lib/cjs/RpcBackend.d.ts.map +1 -1
  93. package/lib/cjs/RpcBackend.js +13 -108
  94. package/lib/cjs/RpcBackend.js.map +1 -1
  95. package/lib/cjs/SqliteStatement.d.ts +81 -4
  96. package/lib/cjs/SqliteStatement.d.ts.map +1 -1
  97. package/lib/cjs/SqliteStatement.js +163 -25
  98. package/lib/cjs/SqliteStatement.js.map +1 -1
  99. package/lib/cjs/ViewDefinition.d.ts +14 -10
  100. package/lib/cjs/ViewDefinition.d.ts.map +1 -1
  101. package/lib/cjs/ViewDefinition.js +31 -20
  102. package/lib/cjs/ViewDefinition.js.map +1 -1
  103. package/lib/cjs/ViewStateHydrator.js +2 -2
  104. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  105. package/lib/cjs/core-backend.d.ts +4 -2
  106. package/lib/cjs/core-backend.d.ts.map +1 -1
  107. package/lib/cjs/core-backend.js +4 -2
  108. package/lib/cjs/core-backend.js.map +1 -1
  109. package/lib/cjs/rpc/multipart.d.ts +12 -0
  110. package/lib/cjs/rpc/multipart.d.ts.map +1 -0
  111. package/lib/cjs/rpc/multipart.js +71 -0
  112. package/lib/cjs/rpc/multipart.js.map +1 -0
  113. package/lib/cjs/rpc/tracing.d.ts +29 -0
  114. package/lib/cjs/rpc/tracing.d.ts.map +1 -0
  115. package/lib/cjs/rpc/tracing.js +74 -0
  116. package/lib/cjs/rpc/tracing.js.map +1 -0
  117. package/lib/cjs/rpc/web/logging.d.ts +10 -0
  118. package/lib/cjs/rpc/web/logging.d.ts.map +1 -0
  119. package/lib/cjs/rpc/web/logging.js +43 -0
  120. package/lib/cjs/rpc/web/logging.js.map +1 -0
  121. package/lib/cjs/rpc/web/request.d.ts +7 -0
  122. package/lib/cjs/rpc/web/request.d.ts.map +1 -0
  123. package/lib/cjs/rpc/web/request.js +74 -0
  124. package/lib/cjs/rpc/web/request.js.map +1 -0
  125. package/lib/cjs/rpc/web/response.d.ts +7 -0
  126. package/lib/cjs/rpc/web/response.d.ts.map +1 -0
  127. package/lib/cjs/rpc/web/response.js +106 -0
  128. package/lib/cjs/rpc/web/response.js.map +1 -0
  129. package/lib/cjs/rpc-impl/IModelReadRpcImpl.d.ts +4 -2
  130. package/lib/cjs/rpc-impl/IModelReadRpcImpl.d.ts.map +1 -1
  131. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js +80 -51
  132. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  133. package/lib/cjs/rpc-impl/IModelTileRpcImpl.d.ts.map +1 -1
  134. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js +13 -15
  135. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  136. package/lib/cjs/workspace/Workspace.d.ts +1 -1
  137. package/lib/cjs/workspace/Workspace.d.ts.map +1 -1
  138. package/lib/cjs/workspace/Workspace.js +2 -2
  139. package/lib/cjs/workspace/Workspace.js.map +1 -1
  140. package/package.json +14 -14
@@ -1 +1 @@
1
- {"version":3,"file":"CustomViewState3dCreator.js","sourceRoot":"","sources":["../../src/CustomViewState3dCreator.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport { CompressedId64Set, Id64Array, Id64String, Logger, StopWatch } from \"@itwin/core-bentley\";\r\nimport { CustomViewState3dCreatorOptions, CustomViewState3dProps, IModelError, IModelStatus, QueryRowFormat } from \"@itwin/core-common\";\r\nimport { Range3d } from \"@itwin/core-geometry\";\r\nimport { BackendLoggerCategory } from \"./BackendLoggerCategory\";\r\nimport { IModelDb } from \"./IModelDb\";\r\n\r\nconst loggerCategory = BackendLoggerCategory.CustomViewState3dCreator;\r\n\r\n/**\r\n * Class which helps to generate a custom ViewState3d.\r\n * @internal\r\n */\r\nexport class CustomViewState3dCreator {\r\n private _imodel: IModelDb;\r\n public constructor(iModel: IModelDb) {\r\n this._imodel = iModel;\r\n }\r\n /**\r\n * Gets default view state data such as category Ids and modelextents. If no model ids are passed in, all 3D models in the iModel are used.\r\n * @param [modelIds] Ids of models to display in the view.\r\n * @throws [IModelError]($common) If no 3d models are found in the iModel.\r\n * @returns CustomViewState3dProps\r\n */\r\n public async getCustomViewState3dData(options: CustomViewState3dCreatorOptions): Promise<CustomViewState3dProps> {\r\n let decompressedModelIds;\r\n if (options?.modelIds !== undefined)\r\n decompressedModelIds = CompressedId64Set.decompressArray(options.modelIds);\r\n const models: Id64Array = decompressedModelIds ?? await this._getAllModels();\r\n const categories: Id64Array = await this._getAllCategories();\r\n const modelExtents: Range3d = await this._getModelExtents(models);\r\n return {\r\n modelIds: CompressedId64Set.sortAndCompress(models),\r\n categoryIds: CompressedId64Set.sortAndCompress(categories),\r\n modelExtents: modelExtents.toJSON(),\r\n };\r\n }\r\n\r\n private async _getAllCategories(): Promise<Id64Array> {\r\n // Only use categories with elements in them\r\n Logger.logInfo(loggerCategory, \"Starting getAllCategories query.\");\r\n const query = `SELECT DISTINCT Category.Id AS id FROM BisCore.GeometricElement3d WHERE Category.Id IN (SELECT ECInstanceId FROM BisCore.SpatialCategory)`;\r\n const categories: Id64Array = await this._executeQuery(query);\r\n Logger.logInfo(loggerCategory, \"Finished getAllCategories query.\");\r\n return categories;\r\n }\r\n\r\n /**\r\n * Gets the union of the extents of each model id passed in. Can return null range if no ids are passed, or no geometry found for the models.\r\n * @param modelIdsList array of modelIds to get extents for\r\n * @returns Range3d, the union of the extents of each model id\r\n */\r\n private async _getModelExtents(modelIdsList: Id64String[]): Promise<Range3d> {\r\n const modelExtents = new Range3d();\r\n if (modelIdsList.length === 0)\r\n return modelExtents;\r\n const modelIds = new Set(modelIdsList);\r\n for (const id of modelIds) {\r\n const modelExtentsStopWatch = new StopWatch(\"getModelExtents query\", false);\r\n try {\r\n await new Promise((resolve) => setImmediate(resolve)); // Free up main thread temporarily. Ideally we get queryModelExtents off the main thread and do not need to do this.\r\n Logger.logInfo(loggerCategory, \"Starting getModelExtents query.\", {modelId: id});\r\n modelExtentsStopWatch.start();\r\n const props = this._imodel.nativeDb.queryModelExtents({ id }).modelExtents;\r\n modelExtentsStopWatch.stop();\r\n Logger.logInfo(loggerCategory, \"Finished getModelExtents query.\", {timeElapsedMs: modelExtentsStopWatch.elapsed, modelId: id});\r\n modelExtents.union(Range3d.fromJSON(props), modelExtents);\r\n } catch (err: any) {\r\n modelExtentsStopWatch.stop();\r\n if ((err as IModelError).errorNumber === IModelStatus.NoGeometry) { // if there was no geometry, just return null range\r\n Logger.logInfo(loggerCategory, \"Finished getModelExtents query with NoGeometry error.\", {timeElapsedMs: modelExtentsStopWatch.elapsed, modelId: id});\r\n continue;\r\n }\r\n Logger.logInfo(loggerCategory, \"Finished getModelExtents query with error.\", {timeElapsedMs: modelExtentsStopWatch.elapsed, modelId: id, errorMessage: err?.message, errorNumber: err?.errorNumber});\r\n\r\n if (modelIds.size === 1)\r\n throw err; // if they're asking for more than one model, don't throw on error.\r\n continue;\r\n }\r\n }\r\n return modelExtents;\r\n }\r\n\r\n /**\r\n * Get all PhysicalModel ids in the iModel\r\n */\r\n private async _getAllModels(): Promise<Id64Array> {\r\n // Note: IsNotSpatiallyLocated was introduced in a later version of the BisCore ECSchema.\r\n // If the iModel has an earlier version, the statement will throw because the property does not exist.\r\n // If the iModel was created from an earlier version and later upgraded to a newer version, the property may be NULL for models created prior to the upgrade.\r\n const select = \"SELECT ECInstanceId FROM Bis.GeometricModel3D WHERE IsPrivate = false AND IsTemplate = false\";\r\n const spatialCriterion = \"AND (IsNotSpatiallyLocated IS NULL OR IsNotSpatiallyLocated = false)\";\r\n let models = [];\r\n Logger.logInfo(loggerCategory, \"Starting getAllModels query.\");\r\n try {\r\n models = await this._executeQuery(`${select} ${spatialCriterion}`);\r\n } catch {\r\n models = await this._executeQuery(select);\r\n }\r\n Logger.logInfo(loggerCategory, \"Finished getAllModels query.\");\r\n return models;\r\n }\r\n /**\r\n * Helper function to execute ECSql queries.\r\n */\r\n private _executeQuery = async (query: string) => {\r\n const rows = [];\r\n for await (const row of this._imodel.query(query, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames }))\r\n rows.push(row.id);\r\n\r\n return rows;\r\n };\r\n}\r\n"]}
1
+ {"version":3,"file":"CustomViewState3dCreator.js","sourceRoot":"","sources":["../../src/CustomViewState3dCreator.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport { CompressedId64Set, Id64Array, Id64String, Logger, StopWatch } from \"@itwin/core-bentley\";\r\nimport { CustomViewState3dCreatorOptions, CustomViewState3dProps, QueryRowFormat } from \"@itwin/core-common\";\r\nimport { Range3d } from \"@itwin/core-geometry\";\r\nimport { BackendLoggerCategory } from \"./BackendLoggerCategory\";\r\nimport { IModelDb } from \"./IModelDb\";\r\n\r\nconst loggerCategory = BackendLoggerCategory.CustomViewState3dCreator;\r\n\r\n/**\r\n * Class which helps to generate a custom ViewState3d.\r\n * @internal\r\n */\r\nexport class CustomViewState3dCreator {\r\n private _imodel: IModelDb;\r\n public constructor(iModel: IModelDb) {\r\n this._imodel = iModel;\r\n }\r\n /** Gets default view state data such as category Ids and modelextents. If no model ids are passed in, all 3D models in the iModel are used.\r\n * @param [modelIds] Ids of models to display in the view.\r\n * @throws [IModelError]($common) If no 3d models are found in the iModel.\r\n */\r\n public async getCustomViewState3dData(options: CustomViewState3dCreatorOptions): Promise<CustomViewState3dProps> {\r\n let decompressedModelIds;\r\n if (options?.modelIds !== undefined)\r\n decompressedModelIds = CompressedId64Set.decompressArray(options.modelIds);\r\n\r\n const models: Id64Array = decompressedModelIds ?? await this._getAllModels();\r\n const categories: Id64Array = await this._getAllCategories();\r\n const modelExtents: Range3d = await this._getModelExtents(models);\r\n return {\r\n modelIds: CompressedId64Set.sortAndCompress(models),\r\n categoryIds: CompressedId64Set.sortAndCompress(categories),\r\n modelExtents: modelExtents.toJSON(),\r\n };\r\n }\r\n\r\n private async _getAllCategories(): Promise<Id64Array> {\r\n // Only use categories with elements in them\r\n Logger.logInfo(loggerCategory, \"Starting getAllCategories query.\");\r\n const query = `SELECT DISTINCT Category.Id AS id FROM BisCore.GeometricElement3d WHERE Category.Id IN (SELECT ECInstanceId FROM BisCore.SpatialCategory)`;\r\n const categories: Id64Array = await this._executeQuery(query);\r\n Logger.logInfo(loggerCategory, \"Finished getAllCategories query.\");\r\n return categories;\r\n }\r\n\r\n /** Compute the union of the extents of all the specified models. */\r\n private async _getModelExtents(modelIds: Id64String[]): Promise<Range3d> {\r\n if (modelIds.length === 0)\r\n return new Range3d();\r\n\r\n const timer = new StopWatch(\"getModelExtents query\", true);\r\n const range = await this._imodel.models.queryRange(modelIds);\r\n\r\n timer.stop();\r\n Logger.logInfo(loggerCategory, \"Finished getModelExtents query.\", {timeElapsedMs: timer.elapsed});\r\n\r\n return range;\r\n }\r\n\r\n /** Get the Ids of all spatially-located, non-template 3d models in the iModel. */\r\n private async _getAllModels(): Promise<Id64Array> {\r\n // Note: IsNotSpatiallyLocated was introduced in a later version of the BisCore ECSchema.\r\n // If the iModel has an earlier version, the statement will throw because the property does not exist.\r\n // If the iModel was created from an earlier version and later upgraded to a newer version, the property may be NULL for models created prior to the upgrade.\r\n const select = \"SELECT ECInstanceId FROM Bis.GeometricModel3D WHERE IsPrivate = false AND IsTemplate = false\";\r\n const spatialCriterion = \"AND (IsNotSpatiallyLocated IS NULL OR IsNotSpatiallyLocated = false)\";\r\n\r\n let models = [];\r\n Logger.logInfo(loggerCategory, \"Starting getAllModels query.\");\r\n try {\r\n models = await this._executeQuery(`${select} ${spatialCriterion}`);\r\n } catch {\r\n models = await this._executeQuery(select);\r\n }\r\n\r\n Logger.logInfo(loggerCategory, \"Finished getAllModels query.\");\r\n return models;\r\n }\r\n\r\n private _executeQuery = async (query: string) => {\r\n const rows = [];\r\n for await (const row of this._imodel.query(query, undefined, { rowFormat: QueryRowFormat.UseJsPropertyNames }))\r\n rows.push(row.id);\r\n\r\n return rows;\r\n };\r\n}\r\n"]}
@@ -1,11 +1,11 @@
1
1
  /** @packageDocumentation
2
2
  * @module ViewDefinitions
3
3
  */
4
- import { Id64Set, Id64String } from "@itwin/core-bentley";
5
- import { Code, CodeScopeProps, ColorDef, DisplayStyle3dProps, DisplayStyle3dSettings, DisplayStyle3dSettingsProps, DisplayStyleProps, DisplayStyleSettings, RenderSchedule, ViewFlags } from "@itwin/core-common";
4
+ import { Id64String } from "@itwin/core-bentley";
5
+ import { Code, CodeScopeProps, ColorDef, DisplayStyle3dProps, DisplayStyle3dSettings, DisplayStyle3dSettingsProps, DisplayStyleProps, DisplayStyleSettings, EntityReferenceSet, RenderSchedule, ViewFlags } from "@itwin/core-common";
6
6
  import { DefinitionElement } from "./Element";
7
- import { IModelCloneContext } from "./IModelCloneContext";
8
7
  import { IModelDb } from "./IModelDb";
8
+ import { IModelElementCloneContext } from "./IModelElementCloneContext";
9
9
  /** A DisplayStyle defines the parameters for 'styling' the contents of a view.
10
10
  * Internally a DisplayStyle consists of a dictionary of several named 'styles' describing specific aspects of the display style as a whole.
11
11
  * Many ViewDefinitions may share the same DisplayStyle.
@@ -23,10 +23,10 @@ export declare abstract class DisplayStyle extends DefinitionElement {
23
23
  * @param codeValue The DisplayStyle name
24
24
  */
25
25
  static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
26
+ /** @internal */
27
+ protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
26
28
  /** @alpha */
27
- protected collectReferenceIds(referenceIds: Id64Set): void;
28
- /** @alpha */
29
- protected static onCloned(context: IModelCloneContext, sourceElementProps: DisplayStyleProps, targetElementProps: DisplayStyleProps): void;
29
+ protected static onCloned(context: IModelElementCloneContext, sourceElementProps: DisplayStyleProps, targetElementProps: DisplayStyleProps): void;
30
30
  loadScheduleScript(): RenderSchedule.ScriptReference | undefined;
31
31
  }
32
32
  /** A DisplayStyle for 2d views.
@@ -82,10 +82,10 @@ export declare class DisplayStyle3d extends DisplayStyle {
82
82
  get settings(): DisplayStyle3dSettings;
83
83
  /** @internal */
84
84
  constructor(props: DisplayStyle3dProps, iModel: IModelDb);
85
+ /** @internal */
86
+ protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
85
87
  /** @alpha */
86
- protected collectReferenceIds(referenceIds: Id64Set): void;
87
- /** @alpha */
88
- protected static onCloned(context: IModelCloneContext, sourceElementProps: DisplayStyle3dProps, targetElementProps: DisplayStyle3dProps): void;
88
+ protected static onCloned(context: IModelElementCloneContext, sourceElementProps: DisplayStyle3dProps, targetElementProps: DisplayStyle3dProps): void;
89
89
  /** Create a DisplayStyle3d for use by a ViewDefinition.
90
90
  * @param iModelDb The iModel
91
91
  * @param definitionModelId The [[DefinitionModel]]
@@ -1 +1 @@
1
- {"version":3,"file":"DisplayStyle.d.ts","sourceRoot":"","sources":["../../src/DisplayStyle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DisplayStyle.d.ts","sourceRoot":"","sources":["../../src/DisplayStyle.ts"],"names":[],"mappings":"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"}
@@ -32,21 +32,21 @@ class DisplayStyle extends Element_1.DefinitionElement {
32
32
  const codeSpec = iModel.codeSpecs.getByName(core_common_1.BisCodeSpec.displayStyle);
33
33
  return new core_common_1.Code({ spec: codeSpec.id, scope: scopeModelId, value: codeValue });
34
34
  }
35
- /** @alpha */
36
- collectReferenceIds(referenceIds) {
37
- super.collectReferenceIds(referenceIds);
35
+ /** @internal */
36
+ collectReferenceConcreteIds(referenceIds) {
37
+ super.collectReferenceConcreteIds(referenceIds);
38
38
  for (const [id] of this.settings.subCategoryOverrides) {
39
- referenceIds.add(id);
39
+ referenceIds.addElement(id);
40
40
  }
41
41
  for (const excludedElementId of this.settings.excludedElementIds)
42
- referenceIds.add(excludedElementId);
42
+ referenceIds.addElement(excludedElementId);
43
43
  if (this.settings.renderTimeline) {
44
- referenceIds.add(this.settings.renderTimeline);
44
+ referenceIds.addElement(this.settings.renderTimeline);
45
45
  }
46
46
  else {
47
47
  const script = this.loadScheduleScript();
48
48
  if (script)
49
- script.script.discloseIds(referenceIds);
49
+ script.script.discloseIds(referenceIds); // eslint-disable-line deprecation/deprecation
50
50
  }
51
51
  }
52
52
  /** @alpha */
@@ -174,14 +174,14 @@ class DisplayStyle3d extends DisplayStyle {
174
174
  /** @internal */
175
175
  static get className() { return "DisplayStyle3d"; }
176
176
  get settings() { return this._settings; }
177
- /** @alpha */
178
- collectReferenceIds(referenceIds) {
179
- super.collectReferenceIds(referenceIds);
177
+ /** @internal */
178
+ collectReferenceConcreteIds(referenceIds) {
179
+ super.collectReferenceConcreteIds(referenceIds);
180
180
  for (const textureId of this.settings.environment.sky.textureIds)
181
- referenceIds.add(textureId);
181
+ referenceIds.addElement(textureId);
182
182
  if (this.settings.planProjectionSettings)
183
183
  for (const planProjectionSetting of this.settings.planProjectionSettings)
184
- referenceIds.add(planProjectionSetting[0]);
184
+ referenceIds.addElement(planProjectionSetting[0]);
185
185
  }
186
186
  /** @alpha */
187
187
  static onCloned(context, sourceElementProps, targetElementProps) {
@@ -1 +1 @@
1
- {"version":3,"file":"DisplayStyle.js","sourceRoot":"","sources":["../../src/DisplayStyle.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ViewDefinitions\r\n */\r\n\r\nimport { CompressedId64Set, Id64, Id64Array, Id64Set, Id64String, OrderedId64Iterable } from \"@itwin/core-bentley\";\r\nimport {\r\n BisCodeSpec, Code, CodeScopeProps, CodeSpec, ColorDef, DisplayStyle3dProps, DisplayStyle3dSettings, DisplayStyle3dSettingsProps,\r\n DisplayStyleProps, DisplayStyleSettings, PlanProjectionSettingsProps, RenderSchedule, SkyBoxImageProps, ViewFlags,\r\n} from \"@itwin/core-common\";\r\nimport { DefinitionElement, RenderTimeline } from \"./Element\";\r\nimport { IModelCloneContext } from \"./IModelCloneContext\";\r\nimport { IModelDb } from \"./IModelDb\";\r\n\r\n/** A DisplayStyle defines the parameters for 'styling' the contents of a view.\r\n * Internally a DisplayStyle consists of a dictionary of several named 'styles' describing specific aspects of the display style as a whole.\r\n * Many ViewDefinitions may share the same DisplayStyle.\r\n * @public\r\n */\r\nexport abstract class DisplayStyle extends DefinitionElement {\r\n /** @internal */\r\n public static override get className(): string { return \"DisplayStyle\"; }\r\n public abstract get settings(): DisplayStyleSettings;\r\n\r\n /** @internal */\r\n protected constructor(props: DisplayStyleProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n\r\n /** Create a Code for a DisplayStyle given a name that is meant to be unique within the scope of the specified DefinitionModel.\r\n * @param iModel The IModelDb\r\n * @param scopeModelId The Id of the DefinitionModel that contains the DisplayStyle and provides the scope for its name.\r\n * @param codeValue The DisplayStyle name\r\n */\r\n public static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code {\r\n const codeSpec: CodeSpec = iModel.codeSpecs.getByName(BisCodeSpec.displayStyle);\r\n return new Code({ spec: codeSpec.id, scope: scopeModelId, value: codeValue });\r\n }\r\n\r\n /** @alpha */\r\n protected override collectReferenceIds(referenceIds: Id64Set): void {\r\n super.collectReferenceIds(referenceIds);\r\n for (const [id] of this.settings.subCategoryOverrides) {\r\n referenceIds.add(id);\r\n }\r\n\r\n for (const excludedElementId of this.settings.excludedElementIds)\r\n referenceIds.add(excludedElementId);\r\n\r\n if (this.settings.renderTimeline) {\r\n referenceIds.add(this.settings.renderTimeline);\r\n } else {\r\n const script = this.loadScheduleScript();\r\n if (script)\r\n script.script.discloseIds(referenceIds);\r\n }\r\n }\r\n\r\n /** @alpha */\r\n protected static override onCloned(context: IModelCloneContext, sourceElementProps: DisplayStyleProps, targetElementProps: DisplayStyleProps): void {\r\n super.onCloned(context, sourceElementProps, targetElementProps);\r\n\r\n if (!context.isBetweenIModels || !targetElementProps.jsonProperties?.styles)\r\n return;\r\n\r\n const settings = targetElementProps.jsonProperties.styles;\r\n if (settings.subCategoryOvr) {\r\n for (let i = 0; i < settings.subCategoryOvr.length; /* */) {\r\n const ovr = settings.subCategoryOvr[i];\r\n ovr.subCategory = context.findTargetElementId(Id64.fromJSON(ovr.subCategory));\r\n if (Id64.invalid === ovr.subCategory)\r\n settings.subCategoryOvr.splice(i, 1);\r\n else\r\n i++;\r\n }\r\n }\r\n\r\n if (settings.excludedElements) {\r\n const excluded: Id64Array = \"string\" === typeof settings.excludedElements ? CompressedId64Set.decompressArray(settings.excludedElements) : settings.excludedElements;\r\n for (let i = 0; i < excluded.length; /* */) {\r\n const remapped = context.findTargetElementId(excluded[i]);\r\n if (Id64.invalid === remapped)\r\n excluded.splice(i, 1);\r\n else\r\n excluded[i++] = remapped;\r\n }\r\n\r\n if (0 === excluded.length)\r\n delete settings.excludedElements;\r\n else\r\n settings.excludedElements = CompressedId64Set.compressIds(OrderedId64Iterable.sortArray(excluded));\r\n }\r\n\r\n if (settings.renderTimeline) {\r\n const renderTimeline = context.findTargetElementId(settings.renderTimeline);\r\n if (Id64.isValid(renderTimeline))\r\n settings.renderTimeline = renderTimeline;\r\n else\r\n delete settings.renderTimeline;\r\n } else if (settings.scheduleScript) {\r\n const scheduleScript = RenderTimeline.remapScript(context, settings.scheduleScript);\r\n if (scheduleScript.length > 0)\r\n settings.scheduleScript = scheduleScript;\r\n else\r\n delete settings.scheduleScript;\r\n }\r\n }\r\n\r\n public loadScheduleScript(): RenderSchedule.ScriptReference | undefined {\r\n let script;\r\n let sourceId;\r\n if (this.settings.renderTimeline) {\r\n const timeline = this.iModel.elements.tryGetElement<RenderTimeline>(this.settings.renderTimeline);\r\n if (timeline) {\r\n script = RenderSchedule.Script.fromJSON(timeline.scriptProps);\r\n sourceId = timeline.id;\r\n }\r\n } else if (this.settings.scheduleScriptProps) {\r\n script = RenderSchedule.Script.fromJSON(this.settings.scheduleScriptProps);\r\n sourceId = this.id;\r\n }\r\n\r\n return undefined !== sourceId && undefined !== script ? new RenderSchedule.ScriptReference(sourceId, script) : undefined;\r\n }\r\n}\r\n\r\n/** A DisplayStyle for 2d views.\r\n * @public\r\n */\r\nexport class DisplayStyle2d extends DisplayStyle {\r\n /** @internal */\r\n public static override get className(): string { return \"DisplayStyle2d\"; }\r\n private readonly _settings: DisplayStyleSettings;\r\n\r\n public get settings(): DisplayStyleSettings { return this._settings; }\r\n\r\n /** @internal */\r\n public constructor(props: DisplayStyleProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n this._settings = new DisplayStyleSettings(this.jsonProperties);\r\n }\r\n /** Create a DisplayStyle2d for use by a ViewDefinition.\r\n * @param iModelDb The iModel\r\n * @param definitionModelId The [[DefinitionModel]]\r\n * @param name The name/CodeValue of the DisplayStyle2d\r\n * @returns The newly constructed DisplayStyle2d element.\r\n * @throws [[IModelError]] if unable to create the element.\r\n */\r\n public static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string): DisplayStyle2d {\r\n const displayStyleProps: DisplayStyleProps = {\r\n classFullName: this.classFullName,\r\n code: this.createCode(iModelDb, definitionModelId, name),\r\n model: definitionModelId,\r\n isPrivate: false,\r\n jsonProperties: {\r\n styles: {\r\n backgroundColor: 0,\r\n monochromeColor: ColorDef.white.toJSON(),\r\n viewflags: ViewFlags.defaults,\r\n },\r\n },\r\n };\r\n return new DisplayStyle2d(displayStyleProps, iModelDb);\r\n }\r\n /** Insert a DisplayStyle2d for use by a ViewDefinition.\r\n * @param iModelDb Insert into this iModel\r\n * @param definitionModelId Insert the new DisplayStyle2d into this DefinitionModel\r\n * @param name The name of the DisplayStyle2d\r\n * @returns The Id of the newly inserted DisplayStyle2d element.\r\n * @throws [[IModelError]] if unable to insert the element.\r\n */\r\n public static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string): Id64String {\r\n const displayStyle = this.create(iModelDb, definitionModelId, name);\r\n return iModelDb.elements.insertElement(displayStyle.toJSON());\r\n }\r\n}\r\n\r\n/** Describes initial settings for a new [[DisplayStyle3d]].\r\n * Most properties are inherited from [DisplayStyle3dSettingsProps]($common), but for backwards compatibility reasons, this interface is slightly awkward:\r\n * - It adds a `viewFlags` member that differs only in case and type from [DisplayStyleSettingsProps.viewflags]($common); and\r\n * - It extends the type of [DisplayStyleSettingsProps.backgroundColor]($common) to include [ColorDef]($common).\r\n * These idiosyncrasies will be addressed in a future version of core-backend.\r\n * @see [[DisplayStyle3d.create]].\r\n * @public\r\n */\r\nexport interface DisplayStyleCreationOptions extends Omit<DisplayStyle3dSettingsProps, \"backgroundColor\" | \"scheduleScript\"> {\r\n /** If supplied, the [ViewFlags]($common) applied by the display style.\r\n * If undefined, [DisplayStyle3dSettingsProps.viewflags]($common) will be used if present (note the difference in case); otherwise, default-constructed [ViewFlags]($common) will be used.\r\n */\r\n viewFlags?: ViewFlags;\r\n backgroundColor?: ColorDef | number;\r\n}\r\n\r\n/** A DisplayStyle for 3d views.\r\n * See [how to create a DisplayStyle3d]$(docs/learning/backend/CreateElements.md#DisplayStyle3d).\r\n * @public\r\n */\r\nexport class DisplayStyle3d extends DisplayStyle {\r\n /** @internal */\r\n public static override get className(): string { return \"DisplayStyle3d\"; }\r\n private readonly _settings: DisplayStyle3dSettings;\r\n\r\n public get settings(): DisplayStyle3dSettings { return this._settings; }\r\n\r\n /** @internal */\r\n public constructor(props: DisplayStyle3dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n this._settings = new DisplayStyle3dSettings(this.jsonProperties);\r\n }\r\n\r\n /** @alpha */\r\n protected override collectReferenceIds(referenceIds: Id64Set): void {\r\n super.collectReferenceIds(referenceIds);\r\n for (const textureId of this.settings.environment.sky.textureIds)\r\n referenceIds.add(textureId);\r\n\r\n if (this.settings.planProjectionSettings)\r\n for (const planProjectionSetting of this.settings.planProjectionSettings)\r\n referenceIds.add(planProjectionSetting[0]);\r\n }\r\n\r\n /** @alpha */\r\n protected static override onCloned(context: IModelCloneContext, sourceElementProps: DisplayStyle3dProps, targetElementProps: DisplayStyle3dProps): void {\r\n super.onCloned(context, sourceElementProps, targetElementProps);\r\n if (context.isBetweenIModels) {\r\n const convertTexture = (id: string) => Id64.isValidId64(id) ? context.findTargetElementId(id) : id;\r\n\r\n const skyBoxImageProps: SkyBoxImageProps | undefined = targetElementProps?.jsonProperties?.styles?.environment?.sky?.image;\r\n if (skyBoxImageProps?.texture && Id64.isValidId64(skyBoxImageProps.texture))\r\n skyBoxImageProps.texture = convertTexture(skyBoxImageProps.texture);\r\n\r\n if (skyBoxImageProps?.textures) {\r\n skyBoxImageProps.textures.front = convertTexture(skyBoxImageProps.textures.front);\r\n skyBoxImageProps.textures.back = convertTexture(skyBoxImageProps.textures.back);\r\n skyBoxImageProps.textures.left = convertTexture(skyBoxImageProps.textures.left);\r\n skyBoxImageProps.textures.right = convertTexture(skyBoxImageProps.textures.right);\r\n skyBoxImageProps.textures.top = convertTexture(skyBoxImageProps.textures.top);\r\n skyBoxImageProps.textures.bottom = convertTexture(skyBoxImageProps.textures.bottom);\r\n }\r\n\r\n if (targetElementProps?.jsonProperties?.styles?.planProjections) {\r\n const remappedPlanProjections: { [modelId: string]: PlanProjectionSettingsProps } = {};\r\n for (const entry of Object.entries(targetElementProps.jsonProperties.styles.planProjections)) {\r\n const remappedModelId: Id64String = context.findTargetElementId(entry[0]);\r\n if (Id64.isValidId64(remappedModelId)) {\r\n remappedPlanProjections[remappedModelId] = entry[1];\r\n }\r\n }\r\n targetElementProps.jsonProperties.styles.planProjections = remappedPlanProjections;\r\n }\r\n }\r\n }\r\n\r\n /** Create a DisplayStyle3d for use by a ViewDefinition.\r\n * @param iModelDb The iModel\r\n * @param definitionModelId The [[DefinitionModel]]\r\n * @param name The name/CodeValue of the DisplayStyle3d\r\n * @returns The newly constructed DisplayStyle3d element.\r\n * @throws [[IModelError]] if unable to create the element.\r\n */\r\n public static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, options?: DisplayStyleCreationOptions): DisplayStyle3d {\r\n options = options ?? {};\r\n let viewflags = options.viewFlags?.toJSON();\r\n if (!viewflags)\r\n viewflags = options.viewflags ?? new ViewFlags().toJSON();\r\n\r\n const backgroundColor = options.backgroundColor instanceof ColorDef ? options.backgroundColor.toJSON() : options.backgroundColor;\r\n\r\n const settings: DisplayStyle3dSettingsProps = {\r\n ...options,\r\n viewflags,\r\n backgroundColor,\r\n };\r\n\r\n const displayStyleProps: DisplayStyle3dProps = {\r\n classFullName: this.classFullName,\r\n code: this.createCode(iModelDb, definitionModelId, name),\r\n model: definitionModelId,\r\n jsonProperties: { styles: settings },\r\n isPrivate: false,\r\n\r\n };\r\n\r\n return new DisplayStyle3d(displayStyleProps, iModelDb);\r\n }\r\n /**\r\n * Insert a DisplayStyle3d for use by a ViewDefinition.\r\n * @param iModelDb Insert into this iModel\r\n * @param definitionModelId Insert the new DisplayStyle3d into this [[DefinitionModel]]\r\n * @param name The name of the DisplayStyle3d\r\n * @returns The Id of the newly inserted DisplayStyle3d element.\r\n * @throws [[IModelError]] if unable to insert the element.\r\n */\r\n public static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, options?: DisplayStyleCreationOptions): Id64String {\r\n const displayStyle = this.create(iModelDb, definitionModelId, name, options);\r\n return iModelDb.elements.insertElement(displayStyle.toJSON());\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"DisplayStyle.js","sourceRoot":"","sources":["../../src/DisplayStyle.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ViewDefinitions\r\n */\r\n\r\nimport { CompressedId64Set, Id64, Id64Array, Id64String, OrderedId64Iterable } from \"@itwin/core-bentley\";\r\nimport {\r\n BisCodeSpec, Code, CodeScopeProps, CodeSpec, ColorDef, DisplayStyle3dProps, DisplayStyle3dSettings, DisplayStyle3dSettingsProps,\r\n DisplayStyleProps, DisplayStyleSettings, EntityReferenceSet, PlanProjectionSettingsProps, RenderSchedule, SkyBoxImageProps, ViewFlags,\r\n} from \"@itwin/core-common\";\r\nimport { DefinitionElement, RenderTimeline } from \"./Element\";\r\nimport { IModelDb } from \"./IModelDb\";\r\nimport { IModelElementCloneContext } from \"./IModelElementCloneContext\";\r\n\r\n/** A DisplayStyle defines the parameters for 'styling' the contents of a view.\r\n * Internally a DisplayStyle consists of a dictionary of several named 'styles' describing specific aspects of the display style as a whole.\r\n * Many ViewDefinitions may share the same DisplayStyle.\r\n * @public\r\n */\r\nexport abstract class DisplayStyle extends DefinitionElement {\r\n /** @internal */\r\n public static override get className(): string { return \"DisplayStyle\"; }\r\n public abstract get settings(): DisplayStyleSettings;\r\n\r\n /** @internal */\r\n protected constructor(props: DisplayStyleProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n }\r\n\r\n /** Create a Code for a DisplayStyle given a name that is meant to be unique within the scope of the specified DefinitionModel.\r\n * @param iModel The IModelDb\r\n * @param scopeModelId The Id of the DefinitionModel that contains the DisplayStyle and provides the scope for its name.\r\n * @param codeValue The DisplayStyle name\r\n */\r\n public static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code {\r\n const codeSpec: CodeSpec = iModel.codeSpecs.getByName(BisCodeSpec.displayStyle);\r\n return new Code({ spec: codeSpec.id, scope: scopeModelId, value: codeValue });\r\n }\r\n\r\n /** @internal */\r\n protected override collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void {\r\n super.collectReferenceConcreteIds(referenceIds);\r\n for (const [id] of this.settings.subCategoryOverrides) {\r\n referenceIds.addElement(id);\r\n }\r\n\r\n for (const excludedElementId of this.settings.excludedElementIds)\r\n referenceIds.addElement(excludedElementId);\r\n\r\n if (this.settings.renderTimeline) {\r\n referenceIds.addElement(this.settings.renderTimeline);\r\n } else {\r\n const script = this.loadScheduleScript();\r\n if (script)\r\n script.script.discloseIds(referenceIds); // eslint-disable-line deprecation/deprecation\r\n }\r\n }\r\n\r\n /** @alpha */\r\n protected static override onCloned(context: IModelElementCloneContext, sourceElementProps: DisplayStyleProps, targetElementProps: DisplayStyleProps): void {\r\n super.onCloned(context, sourceElementProps, targetElementProps);\r\n\r\n if (!context.isBetweenIModels || !targetElementProps.jsonProperties?.styles)\r\n return;\r\n\r\n const settings = targetElementProps.jsonProperties.styles;\r\n if (settings.subCategoryOvr) {\r\n for (let i = 0; i < settings.subCategoryOvr.length; /* */) {\r\n const ovr = settings.subCategoryOvr[i];\r\n ovr.subCategory = context.findTargetElementId(Id64.fromJSON(ovr.subCategory));\r\n if (Id64.invalid === ovr.subCategory)\r\n settings.subCategoryOvr.splice(i, 1);\r\n else\r\n i++;\r\n }\r\n }\r\n\r\n if (settings.excludedElements) {\r\n const excluded: Id64Array = \"string\" === typeof settings.excludedElements ? CompressedId64Set.decompressArray(settings.excludedElements) : settings.excludedElements;\r\n for (let i = 0; i < excluded.length; /* */) {\r\n const remapped = context.findTargetElementId(excluded[i]);\r\n if (Id64.invalid === remapped)\r\n excluded.splice(i, 1);\r\n else\r\n excluded[i++] = remapped;\r\n }\r\n\r\n if (0 === excluded.length)\r\n delete settings.excludedElements;\r\n else\r\n settings.excludedElements = CompressedId64Set.compressIds(OrderedId64Iterable.sortArray(excluded));\r\n }\r\n\r\n if (settings.renderTimeline) {\r\n const renderTimeline = context.findTargetElementId(settings.renderTimeline);\r\n if (Id64.isValid(renderTimeline))\r\n settings.renderTimeline = renderTimeline;\r\n else\r\n delete settings.renderTimeline;\r\n } else if (settings.scheduleScript) {\r\n const scheduleScript = RenderTimeline.remapScript(context, settings.scheduleScript);\r\n if (scheduleScript.length > 0)\r\n settings.scheduleScript = scheduleScript;\r\n else\r\n delete settings.scheduleScript;\r\n }\r\n }\r\n\r\n public loadScheduleScript(): RenderSchedule.ScriptReference | undefined {\r\n let script;\r\n let sourceId;\r\n if (this.settings.renderTimeline) {\r\n const timeline = this.iModel.elements.tryGetElement<RenderTimeline>(this.settings.renderTimeline);\r\n if (timeline) {\r\n script = RenderSchedule.Script.fromJSON(timeline.scriptProps);\r\n sourceId = timeline.id;\r\n }\r\n } else if (this.settings.scheduleScriptProps) {\r\n script = RenderSchedule.Script.fromJSON(this.settings.scheduleScriptProps);\r\n sourceId = this.id;\r\n }\r\n\r\n return undefined !== sourceId && undefined !== script ? new RenderSchedule.ScriptReference(sourceId, script) : undefined;\r\n }\r\n}\r\n\r\n/** A DisplayStyle for 2d views.\r\n * @public\r\n */\r\nexport class DisplayStyle2d extends DisplayStyle {\r\n /** @internal */\r\n public static override get className(): string { return \"DisplayStyle2d\"; }\r\n private readonly _settings: DisplayStyleSettings;\r\n\r\n public get settings(): DisplayStyleSettings { return this._settings; }\r\n\r\n /** @internal */\r\n public constructor(props: DisplayStyleProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n this._settings = new DisplayStyleSettings(this.jsonProperties);\r\n }\r\n /** Create a DisplayStyle2d for use by a ViewDefinition.\r\n * @param iModelDb The iModel\r\n * @param definitionModelId The [[DefinitionModel]]\r\n * @param name The name/CodeValue of the DisplayStyle2d\r\n * @returns The newly constructed DisplayStyle2d element.\r\n * @throws [[IModelError]] if unable to create the element.\r\n */\r\n public static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string): DisplayStyle2d {\r\n const displayStyleProps: DisplayStyleProps = {\r\n classFullName: this.classFullName,\r\n code: this.createCode(iModelDb, definitionModelId, name),\r\n model: definitionModelId,\r\n isPrivate: false,\r\n jsonProperties: {\r\n styles: {\r\n backgroundColor: 0,\r\n monochromeColor: ColorDef.white.toJSON(),\r\n viewflags: ViewFlags.defaults,\r\n },\r\n },\r\n };\r\n return new DisplayStyle2d(displayStyleProps, iModelDb);\r\n }\r\n /** Insert a DisplayStyle2d for use by a ViewDefinition.\r\n * @param iModelDb Insert into this iModel\r\n * @param definitionModelId Insert the new DisplayStyle2d into this DefinitionModel\r\n * @param name The name of the DisplayStyle2d\r\n * @returns The Id of the newly inserted DisplayStyle2d element.\r\n * @throws [[IModelError]] if unable to insert the element.\r\n */\r\n public static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string): Id64String {\r\n const displayStyle = this.create(iModelDb, definitionModelId, name);\r\n return iModelDb.elements.insertElement(displayStyle.toJSON());\r\n }\r\n}\r\n\r\n/** Describes initial settings for a new [[DisplayStyle3d]].\r\n * Most properties are inherited from [DisplayStyle3dSettingsProps]($common), but for backwards compatibility reasons, this interface is slightly awkward:\r\n * - It adds a `viewFlags` member that differs only in case and type from [DisplayStyleSettingsProps.viewflags]($common); and\r\n * - It extends the type of [DisplayStyleSettingsProps.backgroundColor]($common) to include [ColorDef]($common).\r\n * These idiosyncrasies will be addressed in a future version of core-backend.\r\n * @see [[DisplayStyle3d.create]].\r\n * @public\r\n */\r\nexport interface DisplayStyleCreationOptions extends Omit<DisplayStyle3dSettingsProps, \"backgroundColor\" | \"scheduleScript\"> {\r\n /** If supplied, the [ViewFlags]($common) applied by the display style.\r\n * If undefined, [DisplayStyle3dSettingsProps.viewflags]($common) will be used if present (note the difference in case); otherwise, default-constructed [ViewFlags]($common) will be used.\r\n */\r\n viewFlags?: ViewFlags;\r\n backgroundColor?: ColorDef | number;\r\n}\r\n\r\n/** A DisplayStyle for 3d views.\r\n * See [how to create a DisplayStyle3d]$(docs/learning/backend/CreateElements.md#DisplayStyle3d).\r\n * @public\r\n */\r\nexport class DisplayStyle3d extends DisplayStyle {\r\n /** @internal */\r\n public static override get className(): string { return \"DisplayStyle3d\"; }\r\n private readonly _settings: DisplayStyle3dSettings;\r\n\r\n public get settings(): DisplayStyle3dSettings { return this._settings; }\r\n\r\n /** @internal */\r\n public constructor(props: DisplayStyle3dProps, iModel: IModelDb) {\r\n super(props, iModel);\r\n this._settings = new DisplayStyle3dSettings(this.jsonProperties);\r\n }\r\n\r\n /** @internal */\r\n protected override collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void {\r\n super.collectReferenceConcreteIds(referenceIds);\r\n for (const textureId of this.settings.environment.sky.textureIds)\r\n referenceIds.addElement(textureId);\r\n\r\n if (this.settings.planProjectionSettings)\r\n for (const planProjectionSetting of this.settings.planProjectionSettings)\r\n referenceIds.addElement(planProjectionSetting[0]);\r\n }\r\n\r\n /** @alpha */\r\n protected static override onCloned(context: IModelElementCloneContext, sourceElementProps: DisplayStyle3dProps, targetElementProps: DisplayStyle3dProps): void {\r\n super.onCloned(context, sourceElementProps, targetElementProps);\r\n if (context.isBetweenIModels) {\r\n const convertTexture = (id: string) => Id64.isValidId64(id) ? context.findTargetElementId(id) : id;\r\n\r\n const skyBoxImageProps: SkyBoxImageProps | undefined = targetElementProps?.jsonProperties?.styles?.environment?.sky?.image;\r\n if (skyBoxImageProps?.texture && Id64.isValidId64(skyBoxImageProps.texture))\r\n skyBoxImageProps.texture = convertTexture(skyBoxImageProps.texture);\r\n\r\n if (skyBoxImageProps?.textures) {\r\n skyBoxImageProps.textures.front = convertTexture(skyBoxImageProps.textures.front);\r\n skyBoxImageProps.textures.back = convertTexture(skyBoxImageProps.textures.back);\r\n skyBoxImageProps.textures.left = convertTexture(skyBoxImageProps.textures.left);\r\n skyBoxImageProps.textures.right = convertTexture(skyBoxImageProps.textures.right);\r\n skyBoxImageProps.textures.top = convertTexture(skyBoxImageProps.textures.top);\r\n skyBoxImageProps.textures.bottom = convertTexture(skyBoxImageProps.textures.bottom);\r\n }\r\n\r\n if (targetElementProps?.jsonProperties?.styles?.planProjections) {\r\n const remappedPlanProjections: { [modelId: string]: PlanProjectionSettingsProps } = {};\r\n for (const entry of Object.entries(targetElementProps.jsonProperties.styles.planProjections)) {\r\n const remappedModelId: Id64String = context.findTargetElementId(entry[0]);\r\n if (Id64.isValidId64(remappedModelId)) {\r\n remappedPlanProjections[remappedModelId] = entry[1];\r\n }\r\n }\r\n targetElementProps.jsonProperties.styles.planProjections = remappedPlanProjections;\r\n }\r\n }\r\n }\r\n\r\n /** Create a DisplayStyle3d for use by a ViewDefinition.\r\n * @param iModelDb The iModel\r\n * @param definitionModelId The [[DefinitionModel]]\r\n * @param name The name/CodeValue of the DisplayStyle3d\r\n * @returns The newly constructed DisplayStyle3d element.\r\n * @throws [[IModelError]] if unable to create the element.\r\n */\r\n public static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, options?: DisplayStyleCreationOptions): DisplayStyle3d {\r\n options = options ?? {};\r\n let viewflags = options.viewFlags?.toJSON();\r\n if (!viewflags)\r\n viewflags = options.viewflags ?? new ViewFlags().toJSON();\r\n\r\n const backgroundColor = options.backgroundColor instanceof ColorDef ? options.backgroundColor.toJSON() : options.backgroundColor;\r\n\r\n const settings: DisplayStyle3dSettingsProps = {\r\n ...options,\r\n viewflags,\r\n backgroundColor,\r\n };\r\n\r\n const displayStyleProps: DisplayStyle3dProps = {\r\n classFullName: this.classFullName,\r\n code: this.createCode(iModelDb, definitionModelId, name),\r\n model: definitionModelId,\r\n jsonProperties: { styles: settings },\r\n isPrivate: false,\r\n\r\n };\r\n\r\n return new DisplayStyle3d(displayStyleProps, iModelDb);\r\n }\r\n /**\r\n * Insert a DisplayStyle3d for use by a ViewDefinition.\r\n * @param iModelDb Insert into this iModel\r\n * @param definitionModelId Insert the new DisplayStyle3d into this [[DefinitionModel]]\r\n * @param name The name of the DisplayStyle3d\r\n * @returns The Id of the newly inserted DisplayStyle3d element.\r\n * @throws [[IModelError]] if unable to insert the element.\r\n */\r\n public static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, options?: DisplayStyleCreationOptions): Id64String {\r\n const displayStyle = this.create(iModelDb, definitionModelId, name, options);\r\n return iModelDb.elements.insertElement(displayStyle.toJSON());\r\n }\r\n}\r\n"]}
@@ -2,11 +2,11 @@
2
2
  * @module Elements
3
3
  */
4
4
  import { GuidString, Id64Set, Id64String } from "@itwin/core-bentley";
5
- import { AxisAlignedBox3d, Code, CodeScopeProps, DefinitionElementProps, ElementAlignedBox3d, ElementGeometryBuilderParams, ElementGeometryBuilderParamsForPart, ElementProps, EntityMetaData, GeometricElement2dProps, GeometricElement3dProps, GeometricElementProps, GeometryPartProps, GeometryStreamProps, InformationPartitionElementProps, LineStyleProps, ModelProps, PhysicalElementProps, PhysicalTypeProps, Placement2d, Placement3d, RelatedElement, RenderSchedule, RenderTimelineProps, RepositoryLinkProps, SectionDrawingLocationProps, SectionDrawingProps, SectionType, SheetBorderTemplateProps, SheetProps, SheetTemplateProps, SubjectProps, TypeDefinition, TypeDefinitionElementProps, UrlLinkProps } from "@itwin/core-common";
5
+ import { AxisAlignedBox3d, Code, CodeScopeProps, ConcreteEntityTypes, DefinitionElementProps, ElementAlignedBox3d, ElementGeometryBuilderParams, ElementGeometryBuilderParamsForPart, ElementProps, EntityMetaData, EntityReferenceSet, GeometricElement2dProps, GeometricElement3dProps, GeometricElementProps, GeometryPartProps, GeometryStreamProps, InformationPartitionElementProps, LineStyleProps, ModelProps, PhysicalElementProps, PhysicalTypeProps, Placement2d, Placement3d, RelatedElement, RenderSchedule, RenderTimelineProps, RepositoryLinkProps, SectionDrawingLocationProps, SectionDrawingProps, SectionType, SheetBorderTemplateProps, SheetProps, SheetTemplateProps, SubjectProps, TypeDefinition, TypeDefinitionElementProps, UrlLinkProps } from "@itwin/core-common";
6
6
  import { ClipVector, Transform } from "@itwin/core-geometry";
7
7
  import { Entity } from "./Entity";
8
- import { IModelCloneContext } from "./IModelCloneContext";
9
8
  import { IModelDb } from "./IModelDb";
9
+ import { IModelElementCloneContext } from "./IModelElementCloneContext";
10
10
  /** Argument for the `Element.onXxx` static methods
11
11
  * @beta
12
12
  */
@@ -231,7 +231,7 @@ export declare class Element extends Entity {
231
231
  * @note If you override this method, you must call super.
232
232
  * @beta
233
233
  */
234
- protected static onCloned(_context: IModelCloneContext, _sourceProps: ElementProps, _targetProps: ElementProps): void;
234
+ protected static onCloned(_context: IModelElementCloneContext, _sourceProps: ElementProps, _targetProps: ElementProps): void;
235
235
  /** Called when a *root* element in a subgraph is changed and before its outputs are processed.
236
236
  * This special callback is made when:
237
237
  * * the element is part of an [[ElementDrivesElement]] graph, and
@@ -261,35 +261,26 @@ export declare class Element extends Entity {
261
261
  * @beta
262
262
  */
263
263
  protected collectPredecessorIds(predecessorIds: Id64Set): void;
264
- /** Collect the Ids of this entity's *references* at this level of the class hierarchy.
265
- * A *reference* is any entity referenced by this entity's EC Data
266
- * This is important for cloning operations but can be useful in other situations as well.
267
- * @param referenceIds The Id64Set to populate with reference Ids.
268
- * @note In order to clone/transform an entity, all referenced elements must have been previously cloned and remapped within the [IModelCloneContext]($backend).
269
- * @note This should be overridden (with `super` called) at each level the class hierarchy that introduces references.
270
- * @see getReferenceIds
271
- * @beta
272
- */
273
- protected collectReferenceIds(referenceIds: Id64Set): void;
264
+ /** @internal */
265
+ protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
274
266
  /** Get the Ids of this element's *references*. A *reference* is any element whose id is stored in the EC data of this element
275
267
  * This is important for cloning operations but can be useful in other situations as well.
276
268
  * @beta
277
269
  * @deprecated use [[getReferenceIds]] instead, the use of the term *predecessors* was confusing and became inaccurate when the transformer could handle cycles
278
270
  */
279
271
  getPredecessorIds(): Id64Set;
280
- /** Get the Ids of this element's *references*. A *reference* is an element that this element references.
281
- * This is important for cloning operations but can be useful in other situations as well.
282
- * @see collectReferenceIds
283
- * @beta
284
- */
285
- getReferenceIds(): Id64Set;
286
272
  /** A *required reference* is an element that had to be inserted before this element could have been inserted.
287
273
  * This is the list of property keys on this element that store references to those elements
288
- * @note This should be overridden (with `super` called) at each level the class hierarchy that introduces required references.
274
+ * @note This should be overridden (with `super` called) at each level of the class hierarchy that introduces required references.
289
275
  * @note any property listed here must be added to the reference ids in [[collectReferenceIds]]
290
276
  * @beta
291
277
  */
292
278
  static readonly requiredReferenceKeys: ReadonlyArray<string>;
279
+ /** A map of every [[requiredReferenceKeys]] on this class to their entity type.
280
+ * @note This should be overridden (with `super` called) at each level of the class hierarchy that introduces required references.
281
+ * @alpha
282
+ */
283
+ static readonly requiredReferenceKeyTypeMap: Record<string, ConcreteEntityTypes>;
293
284
  /** Get the class metadata for this element. */
294
285
  getClassMetaData(): EntityMetaData | undefined;
295
286
  private getAllUserProperties;
@@ -343,9 +334,11 @@ export declare abstract class GeometricElement extends Element {
343
334
  /** Obtain the JSON representation of this element. */
344
335
  toJSON(): GeometricElementProps;
345
336
  /** @internal */
346
- protected collectReferenceIds(referenceIds: Id64Set): void;
337
+ protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
347
338
  /** @beta */
348
339
  static readonly requiredReferenceKeys: ReadonlyArray<string>;
340
+ /** @alpha */
341
+ static readonly requiredReferenceKeyTypeMap: Record<string, ConcreteEntityTypes>;
349
342
  }
350
343
  /** An abstract base class to model real world entities that intrinsically have 3d geometry.
351
344
  * See [how to create a GeometricElement3d]($docs/learning/backend/CreateElements.md#GeometricElement3d).
@@ -361,7 +354,7 @@ export declare abstract class GeometricElement3d extends GeometricElement {
361
354
  /** @internal */
362
355
  toJSON(): GeometricElement3dProps;
363
356
  /** @internal */
364
- protected collectReferenceIds(referenceIds: Id64Set): void;
357
+ protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
365
358
  }
366
359
  /** A 3d Graphical Element
367
360
  * @public
@@ -385,7 +378,7 @@ export declare abstract class GeometricElement2d extends GeometricElement {
385
378
  /** @internal */
386
379
  toJSON(): GeometricElement2dProps;
387
380
  /** @internal */
388
- protected collectReferenceIds(referenceIds: Id64Set): void;
381
+ protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
389
382
  }
390
383
  /** An abstract base class for 2d Geometric Elements that are used to convey information within graphical presentations (like drawings).
391
384
  * @public
@@ -640,7 +633,7 @@ export declare class SheetTemplate extends Document {
640
633
  /** @internal */
641
634
  constructor(props: SheetTemplateProps, iModel: IModelDb);
642
635
  /** @internal */
643
- protected collectReferenceIds(referenceIds: Id64Set): void;
636
+ protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
644
637
  }
645
638
  /** A digital representation of a *sheet of paper*. Modeled by a [[SheetModel]].
646
639
  * @public
@@ -655,7 +648,7 @@ export declare class Sheet extends Document {
655
648
  /** @internal */
656
649
  constructor(props: SheetProps, iModel: IModelDb);
657
650
  /** @internal */
658
- protected collectReferenceIds(referenceIds: Id64Set): void;
651
+ protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
659
652
  /** Create a Code for a Sheet given a name that is meant to be unique within the scope of the specified DocumentListModel.
660
653
  * @param iModel The IModelDb
661
654
  * @param scopeModelId The Id of the DocumentListModel that contains the Sheet and provides the scope for its name.
@@ -750,7 +743,7 @@ export declare abstract class TypeDefinitionElement extends DefinitionElement {
750
743
  /** @internal */
751
744
  constructor(props: TypeDefinitionElementProps, iModel: IModelDb);
752
745
  /** @internal */
753
- protected collectReferenceIds(referenceIds: Id64Set): void;
746
+ protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
754
747
  }
755
748
  /** Defines a recipe for generating instances from a definition.
756
749
  * @beta
@@ -1098,13 +1091,13 @@ export declare class RenderTimeline extends InformationRecordElement {
1098
1091
  static fromJSON(props: RenderTimelineProps, iModel: IModelDb): RenderTimeline;
1099
1092
  toJSON(): RenderTimelineProps;
1100
1093
  private static parseScriptProps;
1094
+ /** @internal */
1095
+ protected collectReferenceConcreteIds(ids: EntityReferenceSet): void;
1101
1096
  /** @alpha */
1102
- protected collectReferenceIds(ids: Id64Set): void;
1103
- /** @alpha */
1104
- protected static onCloned(context: IModelCloneContext, sourceProps: RenderTimelineProps, targetProps: RenderTimelineProps): void;
1097
+ protected static onCloned(context: IModelElementCloneContext, sourceProps: RenderTimelineProps, targetProps: RenderTimelineProps): void;
1105
1098
  /** Remap Ids when cloning a RenderSchedule.Script between iModels on a DisplayStyle or RenderTimeline.
1106
1099
  * @internal
1107
1100
  */
1108
- static remapScript(context: IModelCloneContext, input: RenderSchedule.ScriptProps): RenderSchedule.ScriptProps;
1101
+ static remapScript(context: IModelElementCloneContext, input: RenderSchedule.ScriptProps): RenderSchedule.ScriptProps;
1109
1102
  }
1110
1103
  //# sourceMappingURL=Element.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Element.d.ts","sourceRoot":"","sources":["../../src/Element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Element.d.ts","sourceRoot":"","sources":["../../src/Element.ts"],"names":[],"mappings":"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"}