@itwin/core-common 5.1.0-dev.9 → 5.2.0-dev.2

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 (240) hide show
  1. package/CHANGELOG.md +91 -1
  2. package/lib/cjs/BackgroundMapSettings.d.ts +2 -2
  3. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  4. package/lib/cjs/ChangesetProps.d.ts +28 -0
  5. package/lib/cjs/ChangesetProps.d.ts.map +1 -1
  6. package/lib/cjs/ChangesetProps.js.map +1 -1
  7. package/lib/cjs/ClipStyle.d.ts +1 -1
  8. package/lib/cjs/ClipStyle.d.ts.map +1 -1
  9. package/lib/cjs/ClipStyle.js.map +1 -1
  10. package/lib/cjs/CommonLoggerCategory.d.ts +2 -0
  11. package/lib/cjs/CommonLoggerCategory.d.ts.map +1 -1
  12. package/lib/cjs/CommonLoggerCategory.js +2 -0
  13. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  14. package/lib/cjs/ConcurrentQuery.d.ts +8 -23
  15. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  16. package/lib/cjs/ConcurrentQuery.js +1 -11
  17. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  18. package/lib/cjs/ContextRealityModel.d.ts +8 -8
  19. package/lib/cjs/ContextRealityModel.js +8 -8
  20. package/lib/cjs/ContextRealityModel.js.map +1 -1
  21. package/lib/cjs/ElementProps.d.ts +64 -54
  22. package/lib/cjs/ElementProps.d.ts.map +1 -1
  23. package/lib/cjs/ElementProps.js +6 -6
  24. package/lib/cjs/ElementProps.js.map +1 -1
  25. package/lib/cjs/EntityProps.d.ts +10 -10
  26. package/lib/cjs/EntityProps.d.ts.map +1 -1
  27. package/lib/cjs/EntityProps.js +4 -2
  28. package/lib/cjs/EntityProps.js.map +1 -1
  29. package/lib/cjs/Fonts.d.ts +2 -2
  30. package/lib/cjs/Fonts.js +1 -1
  31. package/lib/cjs/Fonts.js.map +1 -1
  32. package/lib/cjs/GeoCoordinateServices.d.ts +1 -1
  33. package/lib/cjs/GeoCoordinateServices.js +1 -1
  34. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  35. package/lib/cjs/GeometryParams.d.ts +3 -1
  36. package/lib/cjs/GeometryParams.d.ts.map +1 -1
  37. package/lib/cjs/GeometryParams.js +3 -1
  38. package/lib/cjs/GeometryParams.js.map +1 -1
  39. package/lib/cjs/GraphicParams.d.ts +1 -0
  40. package/lib/cjs/GraphicParams.d.ts.map +1 -1
  41. package/lib/cjs/GraphicParams.js +1 -0
  42. package/lib/cjs/GraphicParams.js.map +1 -1
  43. package/lib/cjs/IModel.d.ts +3 -3
  44. package/lib/cjs/IModel.js.map +1 -1
  45. package/lib/cjs/ITwinCoreErrors.d.ts +1 -1
  46. package/lib/cjs/ITwinCoreErrors.d.ts.map +1 -1
  47. package/lib/cjs/ITwinCoreErrors.js.map +1 -1
  48. package/lib/cjs/MassProperties.d.ts +2 -2
  49. package/lib/cjs/MassProperties.js.map +1 -1
  50. package/lib/cjs/MaterialProps.d.ts +6 -3
  51. package/lib/cjs/MaterialProps.d.ts.map +1 -1
  52. package/lib/cjs/MaterialProps.js.map +1 -1
  53. package/lib/cjs/RenderSchedule.d.ts +14 -0
  54. package/lib/cjs/RenderSchedule.d.ts.map +1 -1
  55. package/lib/cjs/RenderSchedule.js +4 -0
  56. package/lib/cjs/RenderSchedule.js.map +1 -1
  57. package/lib/cjs/RenderTexture.d.ts +1 -1
  58. package/lib/cjs/RenderTexture.d.ts.map +1 -1
  59. package/lib/cjs/RenderTexture.js.map +1 -1
  60. package/lib/cjs/TerrainSettings.d.ts +1 -1
  61. package/lib/cjs/TerrainSettings.d.ts.map +1 -1
  62. package/lib/cjs/TerrainSettings.js.map +1 -1
  63. package/lib/cjs/annotation/TextAnnotation.d.ts +78 -2
  64. package/lib/cjs/annotation/TextAnnotation.d.ts.map +1 -1
  65. package/lib/cjs/annotation/TextAnnotation.js +63 -10
  66. package/lib/cjs/annotation/TextAnnotation.js.map +1 -1
  67. package/lib/cjs/annotation/TextBlock.d.ts +179 -44
  68. package/lib/cjs/annotation/TextBlock.d.ts.map +1 -1
  69. package/lib/cjs/annotation/TextBlock.js +210 -57
  70. package/lib/cjs/annotation/TextBlock.js.map +1 -1
  71. package/lib/cjs/annotation/TextBlockGeometryProps.d.ts +1 -1
  72. package/lib/cjs/annotation/TextBlockGeometryProps.js.map +1 -1
  73. package/lib/cjs/annotation/TextBlockLayoutResult.d.ts +1 -1
  74. package/lib/cjs/annotation/TextBlockLayoutResult.d.ts.map +1 -1
  75. package/lib/cjs/annotation/TextBlockLayoutResult.js.map +1 -1
  76. package/lib/cjs/annotation/TextStyle.d.ts +115 -34
  77. package/lib/cjs/annotation/TextStyle.d.ts.map +1 -1
  78. package/lib/cjs/annotation/TextStyle.js +118 -37
  79. package/lib/cjs/annotation/TextStyle.js.map +1 -1
  80. package/lib/cjs/geometry/AdditionalTransform.d.ts +4 -0
  81. package/lib/cjs/geometry/AdditionalTransform.d.ts.map +1 -1
  82. package/lib/cjs/geometry/AdditionalTransform.js +9 -0
  83. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  84. package/lib/cjs/geometry/ElementGeometry.d.ts +1 -1
  85. package/lib/cjs/geometry/ElementGeometry.d.ts.map +1 -1
  86. package/lib/cjs/geometry/ElementGeometry.js +2 -2
  87. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  88. package/lib/cjs/internal/BackendTypes.d.ts +3 -3
  89. package/lib/cjs/internal/BackendTypes.d.ts.map +1 -1
  90. package/lib/cjs/internal/BackendTypes.js.map +1 -1
  91. package/lib/cjs/internal/RenderMesh.d.ts +19 -5
  92. package/lib/cjs/internal/RenderMesh.d.ts.map +1 -1
  93. package/lib/cjs/internal/RenderMesh.js +11 -8
  94. package/lib/cjs/internal/RenderMesh.js.map +1 -1
  95. package/lib/cjs/internal/cross-package.d.ts +1 -1
  96. package/lib/cjs/internal/cross-package.d.ts.map +1 -1
  97. package/lib/cjs/internal/cross-package.js.map +1 -1
  98. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +1 -1
  99. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts.map +1 -1
  100. package/lib/cjs/rpc/IModelReadRpcInterface.js +1 -1
  101. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  102. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +4 -4
  103. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +4 -4
  104. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  105. package/lib/cjs/rpc/core/RpcConstants.d.ts +6 -6
  106. package/lib/cjs/rpc/core/RpcConstants.d.ts.map +1 -1
  107. package/lib/cjs/rpc/core/RpcConstants.js +6 -6
  108. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  109. package/lib/cjs/rpc/web/OpenAPI.d.ts +1 -1
  110. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  111. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  112. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +2 -2
  113. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  114. package/lib/cjs/tile/IModelTileIO.d.ts +2 -2
  115. package/lib/cjs/tile/IModelTileIO.js +2 -2
  116. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  117. package/lib/cjs/tile/TileMetadata.d.ts +6 -2
  118. package/lib/cjs/tile/TileMetadata.d.ts.map +1 -1
  119. package/lib/cjs/tile/TileMetadata.js +10 -4
  120. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  121. package/lib/esm/BackgroundMapSettings.d.ts +2 -2
  122. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  123. package/lib/esm/ChangesetProps.d.ts +28 -0
  124. package/lib/esm/ChangesetProps.d.ts.map +1 -1
  125. package/lib/esm/ChangesetProps.js.map +1 -1
  126. package/lib/esm/ClipStyle.d.ts +1 -1
  127. package/lib/esm/ClipStyle.d.ts.map +1 -1
  128. package/lib/esm/ClipStyle.js.map +1 -1
  129. package/lib/esm/CommonLoggerCategory.d.ts +2 -0
  130. package/lib/esm/CommonLoggerCategory.d.ts.map +1 -1
  131. package/lib/esm/CommonLoggerCategory.js +2 -0
  132. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  133. package/lib/esm/ConcurrentQuery.d.ts +8 -23
  134. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  135. package/lib/esm/ConcurrentQuery.js +1 -11
  136. package/lib/esm/ConcurrentQuery.js.map +1 -1
  137. package/lib/esm/ContextRealityModel.d.ts +8 -8
  138. package/lib/esm/ContextRealityModel.js +8 -8
  139. package/lib/esm/ContextRealityModel.js.map +1 -1
  140. package/lib/esm/ElementProps.d.ts +64 -54
  141. package/lib/esm/ElementProps.d.ts.map +1 -1
  142. package/lib/esm/ElementProps.js +6 -6
  143. package/lib/esm/ElementProps.js.map +1 -1
  144. package/lib/esm/EntityProps.d.ts +10 -10
  145. package/lib/esm/EntityProps.d.ts.map +1 -1
  146. package/lib/esm/EntityProps.js +4 -2
  147. package/lib/esm/EntityProps.js.map +1 -1
  148. package/lib/esm/Fonts.d.ts +2 -2
  149. package/lib/esm/Fonts.js +1 -1
  150. package/lib/esm/Fonts.js.map +1 -1
  151. package/lib/esm/GeoCoordinateServices.d.ts +1 -1
  152. package/lib/esm/GeoCoordinateServices.js +1 -1
  153. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  154. package/lib/esm/GeometryParams.d.ts +3 -1
  155. package/lib/esm/GeometryParams.d.ts.map +1 -1
  156. package/lib/esm/GeometryParams.js +3 -1
  157. package/lib/esm/GeometryParams.js.map +1 -1
  158. package/lib/esm/GraphicParams.d.ts +1 -0
  159. package/lib/esm/GraphicParams.d.ts.map +1 -1
  160. package/lib/esm/GraphicParams.js +1 -0
  161. package/lib/esm/GraphicParams.js.map +1 -1
  162. package/lib/esm/IModel.d.ts +3 -3
  163. package/lib/esm/IModel.js.map +1 -1
  164. package/lib/esm/ITwinCoreErrors.d.ts +1 -1
  165. package/lib/esm/ITwinCoreErrors.d.ts.map +1 -1
  166. package/lib/esm/ITwinCoreErrors.js.map +1 -1
  167. package/lib/esm/MassProperties.d.ts +2 -2
  168. package/lib/esm/MassProperties.js.map +1 -1
  169. package/lib/esm/MaterialProps.d.ts +6 -3
  170. package/lib/esm/MaterialProps.d.ts.map +1 -1
  171. package/lib/esm/MaterialProps.js.map +1 -1
  172. package/lib/esm/RenderSchedule.d.ts +14 -0
  173. package/lib/esm/RenderSchedule.d.ts.map +1 -1
  174. package/lib/esm/RenderSchedule.js +4 -0
  175. package/lib/esm/RenderSchedule.js.map +1 -1
  176. package/lib/esm/RenderTexture.d.ts +1 -1
  177. package/lib/esm/RenderTexture.d.ts.map +1 -1
  178. package/lib/esm/RenderTexture.js.map +1 -1
  179. package/lib/esm/TerrainSettings.d.ts +1 -1
  180. package/lib/esm/TerrainSettings.d.ts.map +1 -1
  181. package/lib/esm/TerrainSettings.js.map +1 -1
  182. package/lib/esm/annotation/TextAnnotation.d.ts +78 -2
  183. package/lib/esm/annotation/TextAnnotation.d.ts.map +1 -1
  184. package/lib/esm/annotation/TextAnnotation.js +63 -10
  185. package/lib/esm/annotation/TextAnnotation.js.map +1 -1
  186. package/lib/esm/annotation/TextBlock.d.ts +179 -44
  187. package/lib/esm/annotation/TextBlock.d.ts.map +1 -1
  188. package/lib/esm/annotation/TextBlock.js +207 -56
  189. package/lib/esm/annotation/TextBlock.js.map +1 -1
  190. package/lib/esm/annotation/TextBlockGeometryProps.d.ts +1 -1
  191. package/lib/esm/annotation/TextBlockGeometryProps.js.map +1 -1
  192. package/lib/esm/annotation/TextBlockLayoutResult.d.ts +1 -1
  193. package/lib/esm/annotation/TextBlockLayoutResult.d.ts.map +1 -1
  194. package/lib/esm/annotation/TextBlockLayoutResult.js.map +1 -1
  195. package/lib/esm/annotation/TextStyle.d.ts +115 -34
  196. package/lib/esm/annotation/TextStyle.d.ts.map +1 -1
  197. package/lib/esm/annotation/TextStyle.js +116 -34
  198. package/lib/esm/annotation/TextStyle.js.map +1 -1
  199. package/lib/esm/geometry/AdditionalTransform.d.ts +4 -0
  200. package/lib/esm/geometry/AdditionalTransform.d.ts.map +1 -1
  201. package/lib/esm/geometry/AdditionalTransform.js +10 -1
  202. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  203. package/lib/esm/geometry/ElementGeometry.d.ts +1 -1
  204. package/lib/esm/geometry/ElementGeometry.d.ts.map +1 -1
  205. package/lib/esm/geometry/ElementGeometry.js +2 -2
  206. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  207. package/lib/esm/internal/BackendTypes.d.ts +3 -3
  208. package/lib/esm/internal/BackendTypes.d.ts.map +1 -1
  209. package/lib/esm/internal/BackendTypes.js.map +1 -1
  210. package/lib/esm/internal/RenderMesh.d.ts +19 -5
  211. package/lib/esm/internal/RenderMesh.d.ts.map +1 -1
  212. package/lib/esm/internal/RenderMesh.js +11 -8
  213. package/lib/esm/internal/RenderMesh.js.map +1 -1
  214. package/lib/esm/internal/cross-package.d.ts +1 -1
  215. package/lib/esm/internal/cross-package.d.ts.map +1 -1
  216. package/lib/esm/internal/cross-package.js.map +1 -1
  217. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +1 -1
  218. package/lib/esm/rpc/IModelReadRpcInterface.d.ts.map +1 -1
  219. package/lib/esm/rpc/IModelReadRpcInterface.js +1 -1
  220. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  221. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +4 -4
  222. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +4 -4
  223. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  224. package/lib/esm/rpc/core/RpcConstants.d.ts +6 -6
  225. package/lib/esm/rpc/core/RpcConstants.d.ts.map +1 -1
  226. package/lib/esm/rpc/core/RpcConstants.js +6 -6
  227. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  228. package/lib/esm/rpc/web/OpenAPI.d.ts +1 -1
  229. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  230. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  231. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +2 -2
  232. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  233. package/lib/esm/tile/IModelTileIO.d.ts +2 -2
  234. package/lib/esm/tile/IModelTileIO.js +2 -2
  235. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  236. package/lib/esm/tile/TileMetadata.d.ts +6 -2
  237. package/lib/esm/tile/TileMetadata.d.ts.map +1 -1
  238. package/lib/esm/tile/TileMetadata.js +10 -4
  239. package/lib/esm/tile/TileMetadata.js.map +1 -1
  240. package/package.json +9 -8
@@ -6,7 +6,7 @@ import { Id64String } from "@itwin/core-bentley";
6
6
  * between the backend and frontend.
7
7
  * EntityProps and all of its sub-types like [[ElementProps]] are "plain old Javascript objects" - that is, objects containing
8
8
  * no methods and no properties of `class` type.
9
- * @public
9
+ * @public @preview
10
10
  * @extensions
11
11
  */
12
12
  export interface EntityProps {
@@ -24,7 +24,7 @@ export interface EntityProps {
24
24
  };
25
25
  }
26
26
  /** Specifies the source and target elements of a [[Relationship]] instance.
27
- * @public
27
+ * @public @preview
28
28
  * @extensions
29
29
  */
30
30
  export interface SourceAndTarget {
@@ -32,13 +32,13 @@ export interface SourceAndTarget {
32
32
  targetId: Id64String;
33
33
  }
34
34
  /** Properties that are common to all types of link table ECRelationships
35
- * @public
35
+ * @public @preview
36
36
  * @extensions
37
37
  */
38
38
  export interface RelationshipProps extends EntityProps, SourceAndTarget {
39
39
  }
40
40
  /** Parameters for performing a query on [Entity]($backend) classes.
41
- * @public
41
+ * @public @preview
42
42
  * @extensions
43
43
  */
44
44
  export interface EntityQueryParams {
@@ -77,7 +77,7 @@ export declare enum PrimitiveTypeCode {
77
77
  }
78
78
  /** A callback function to process properties of an Entity
79
79
  * @beta
80
- * @deprecated in 5.0. Use `PropertyHandler` from `@itwin/ecschema-metadata` instead.
80
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `PropertyHandler` from `@itwin/ecschema-metadata` instead.
81
81
  *
82
82
  * @example
83
83
  * ```typescript
@@ -95,7 +95,7 @@ export declare enum PrimitiveTypeCode {
95
95
  export type PropertyCallback = (name: string, meta: PropertyMetaData) => void;
96
96
  /** A custom attribute instance
97
97
  * @beta
98
- * @deprecated in 5.0. Use `CustomAttribute` interface from `@itwin/ecschema-metadata` instead.
98
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `CustomAttribute` interface from `@itwin/ecschema-metadata` instead.
99
99
  */
100
100
  export interface CustomAttribute {
101
101
  /** The class of the CustomAttribute */
@@ -107,7 +107,7 @@ export interface CustomAttribute {
107
107
  }
108
108
  /**
109
109
  * @beta
110
- * @deprecated in 5.0. Use `@itwin/ecschema-metadata` instead.
110
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `@itwin/ecschema-metadata` instead.
111
111
  */
112
112
  export interface PropertyMetaDataProps {
113
113
  primitiveType?: number;
@@ -131,7 +131,7 @@ export interface PropertyMetaDataProps {
131
131
  }
132
132
  /** Metadata for a property.
133
133
  * @beta
134
- * @deprecated in 5.0. Use the `Property` class from @itwin/ecschema-metadata` instead.
134
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use the `Property` class from @itwin/ecschema-metadata` instead.
135
135
  */
136
136
  export declare class PropertyMetaData implements PropertyMetaDataProps {
137
137
  primitiveType?: PrimitiveTypeCode;
@@ -162,7 +162,7 @@ export declare class PropertyMetaData implements PropertyMetaDataProps {
162
162
  }
163
163
  /**
164
164
  * @beta
165
- * @deprecated in 5.0. Use `@itwin/ecschema-metadata` instead.
165
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `@itwin/ecschema-metadata` instead.
166
166
  */
167
167
  export interface EntityMetaDataProps {
168
168
  classId: Id64String;
@@ -181,7 +181,7 @@ export interface EntityMetaDataProps {
181
181
  }
182
182
  /** Metadata for an Entity.
183
183
  * @beta
184
- * @deprecated in 5.0. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.
184
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.
185
185
  */
186
186
  export declare class EntityMetaData implements EntityMetaDataProps {
187
187
  /** The Id of the class in the [[IModelDb]] from which the metadata was obtained. */
@@ -1 +1 @@
1
- {"version":3,"file":"EntityProps.d.ts","sourceRoot":"","sources":["../../src/EntityProps.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAQ,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAIvD;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC;IACpC,mIAAmI;IACnI,aAAa,EAAE,MAAM,CAAC;IACtB,+FAA+F;IAC/F,EAAE,CAAC,EAAE,UAAU,CAAC;IAChB,sHAAsH;IACtH,cAAc,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;CACzC;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,UAAU,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW,EAAE,eAAe;CACtE;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8FAA8F;IAC9F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+FAA+F;IAC/F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,aAAa,IAAO;IACpB,MAAM,MAAQ;IACd,OAAO,MAAQ;IACf,QAAQ,MAAQ;IAChB,MAAM,OAAQ;IACd,OAAO,OAAQ;IACf,IAAI,OAAQ;IACZ,OAAO,OAAQ,CAAE,mDAAmD;IACpE,OAAO,OAAQ,CAAE,mDAAmD;IACpE,MAAM,OAAQ;IACd,SAAS,OAAQ;CAClB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAE9E;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,yGAAyG;IACzG,UAAU,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;CACzC;AAID;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;CACtC;AAED;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,qBAAqB;IACrD,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;gBAGzB,OAAO,EAAE,qBAAqB;IA2BjD,mFAAmF;IACnF,OAAO,CAAC,kBAAkB;IAS1B,kFAAkF;IAC3E,cAAc,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG;IAyBxC,8DAA8D;IAC9D,IAAW,YAAY,IAAI,OAAO,CAEjC;CACF;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gKAAgK;IAChK,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,2CAA2C;IAE3C,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrC,qFAAqF;IAErF,UAAU,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAC;CACtD;AAED;;;GAGG;AACH,qBAAa,cAAe,YAAW,mBAAmB;IACxD,oFAAoF;IACpF,SAAgB,OAAO,EAAE,UAAU,CAAC;IACpC,sBAAsB;IACtB,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,SAAgB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrC,SAAgB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClC,SAAgB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtC,uIAAuI;IACvI,SAAgB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtC,2CAA2C;IAE3C,SAAgB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IACrD,qFAAqF;IAErF,SAAgB,UAAU,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAC;gBAGlD,OAAO,EAAE,mBAAmB;CAehD"}
1
+ {"version":3,"file":"EntityProps.d.ts","sourceRoot":"","sources":["../../src/EntityProps.ts"],"names":[],"mappings":"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"}
@@ -30,8 +30,9 @@ var PrimitiveTypeCode;
30
30
  })(PrimitiveTypeCode || (exports.PrimitiveTypeCode = PrimitiveTypeCode = {}));
31
31
  /** Metadata for a property.
32
32
  * @beta
33
- * @deprecated in 5.0. Use the `Property` class from @itwin/ecschema-metadata` instead.
33
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use the `Property` class from @itwin/ecschema-metadata` instead.
34
34
  */
35
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
35
36
  class PropertyMetaData {
36
37
  primitiveType;
37
38
  structName;
@@ -116,8 +117,9 @@ class PropertyMetaData {
116
117
  exports.PropertyMetaData = PropertyMetaData;
117
118
  /** Metadata for an Entity.
118
119
  * @beta
119
- * @deprecated in 5.0. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.
120
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.
120
121
  */
122
+ // eslint-disable-next-line @typescript-eslint/no-deprecated
121
123
  class EntityMetaData {
122
124
  /** The Id of the class in the [[IModelDb]] from which the metadata was obtained. */
123
125
  classId;
@@ -1 +1 @@
1
- {"version":3,"file":"EntityProps.js","sourceRoot":"","sources":["../../src/EntityProps.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Entities\n */\n\nimport { Id64, Id64String } from \"@itwin/core-bentley\";\nimport { Point2d, Point3d } from \"@itwin/core-geometry\";\nimport { RelatedElement } from \"./ElementProps\";\n\n/** The persistent format of an [Entity]($backend), also used as the \"wire format\" when transmitting information about entities\n * between the backend and frontend.\n * EntityProps and all of its sub-types like [[ElementProps]] are \"plain old Javascript objects\" - that is, objects containing\n * no methods and no properties of `class` type.\n * @public\n * @extensions\n */\nexport interface EntityProps {\n /** A non-existent property used to discriminate between [[EntityProps]] and [Entity]($backend).\n * @see [Entity.isInstanceOfEntity]($backend).\n */\n readonly isInstanceOfEntity?: never;\n /** The full name of the [ECClass]($docs/bis/guide/references/glossary/#ecclass) for this entity, in the form \"Schema:ClassName\" */\n classFullName: string;\n /** The Id of the entity. Must be present for SELECT, UPDATE, or DELETE, ignored for INSERT. */\n id?: Id64String;\n /** Optional [json properties]($docs/bis/guide/fundamentals/element-fundamentals.md#jsonproperties) of this Entity. */\n jsonProperties?: { [key: string]: any };\n}\n\n/** Specifies the source and target elements of a [[Relationship]] instance.\n * @public\n * @extensions\n */\nexport interface SourceAndTarget {\n sourceId: Id64String;\n targetId: Id64String;\n}\n\n/** Properties that are common to all types of link table ECRelationships\n * @public\n * @extensions\n */\nexport interface RelationshipProps extends EntityProps, SourceAndTarget {\n}\n\n/** Parameters for performing a query on [Entity]($backend) classes.\n * @public\n * @extensions\n */\nexport interface EntityQueryParams {\n /** The sql className, in the form \"Schema.ClassName\", of the class to search. */\n from?: string;\n /** Set to true to limit results to *not* include sub-classes of \"from\" class */\n only?: boolean;\n /** Optional \"WHERE\" clause to filter entities. Note: do *not* include the \"WHERE\" keyword. */\n where?: string;\n /** Optional \"ORDERBY\" clause to sort results. Note: do *not* include the \"ORDERBY\" keyword. */\n orderBy?: string;\n /** Optional \"LIMIT\" clause to limit the number of rows returned. */\n limit?: number;\n /** Optional \"OFFSET\" clause. Only valid if Limit is also present. */\n offset?: number;\n /** Bindings for parameterized values.\n * @see [[ECSqlStatement.bindValues]]\n */\n bindings?: any[] | object;\n}\n\n/** The primitive types of an Entity property.\n * @beta\n */\nexport enum PrimitiveTypeCode {\n Uninitialized = 0x00,\n Binary = 0x101,\n Boolean = 0x201,\n DateTime = 0x301,\n Double = 0x401,\n Integer = 0x501,\n Long = 0x601,\n Point2d = 0x701, // eslint-disable-line @typescript-eslint/no-shadow\n Point3d = 0x801, // eslint-disable-line @typescript-eslint/no-shadow\n String = 0x901,\n IGeometry = 0xa01, // Used for Bentley.Geometry.Common.IGeometry types\n}\n\n/** A callback function to process properties of an Entity\n * @beta\n * @deprecated in 5.0. Use `PropertyHandler` from `@itwin/ecschema-metadata` instead.\n *\n * @example\n * ```typescript\n * // Current usage:\n * const callback: PropertyCallback = (name: string, propMetaData: PropertyMetaData) => {\n * console.log(`Property name: ${name}, Property type: ${propMetaData.primitiveType}`);\n * };\n *\n * // Replacement:\n * const callback: PropertyHandler = (propName: string, property: Property) => {\n * console.log(`Property name: ${propName}, Property type: ${property.propertyType}`);\n * };\n * ```\n */\nexport type PropertyCallback = (name: string, meta: PropertyMetaData) => void;\n\n/** A custom attribute instance\n * @beta\n * @deprecated in 5.0. Use `CustomAttribute` interface from `@itwin/ecschema-metadata` instead.\n */\nexport interface CustomAttribute {\n /** The class of the CustomAttribute */\n ecclass: string;\n /** An object whose properties correspond by name to the properties of this custom attribute instance. */\n properties: { [propName: string]: any };\n}\n\ntype FactoryFunc = (jsonObj: any) => any;\n\n/**\n * @beta\n * @deprecated in 5.0. Use `@itwin/ecschema-metadata` instead.\n */\nexport interface PropertyMetaDataProps {\n primitiveType?: number;\n structName?: string;\n extendedType?: string;\n description?: string;\n displayLabel?: string;\n minimumValue?: any;\n maximumValue?: any;\n minimumLength?: number;\n maximumLength?: number;\n readOnly?: boolean;\n kindOfQuantity?: string;\n isCustomHandled?: boolean;\n isCustomHandledOrphan?: boolean;\n minOccurs?: number;\n maxOccurs?: number;\n direction?: string;\n relationshipClass?: string;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n customAttributes?: CustomAttribute[];\n}\n\n/** Metadata for a property.\n * @beta\n * @deprecated in 5.0. Use the `Property` class from @itwin/ecschema-metadata` instead.\n */\nexport class PropertyMetaData implements PropertyMetaDataProps {\n public primitiveType?: PrimitiveTypeCode;\n public structName?: string;\n public extendedType?: string;\n public description?: string;\n public displayLabel?: string;\n public minimumValue?: any;\n public maximumValue?: any;\n public minimumLength?: number;\n public maximumLength?: number;\n public readOnly?: boolean;\n public kindOfQuantity?: string;\n public isCustomHandled?: boolean;\n public isCustomHandledOrphan?: boolean;\n public minOccurs?: number;\n public maxOccurs?: number;\n public direction?: string;\n public relationshipClass?: string;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public customAttributes?: CustomAttribute[];\n\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public constructor(jsonObj: PropertyMetaDataProps) {\n this.primitiveType = jsonObj.primitiveType;\n if (jsonObj.structName)\n this.structName = jsonObj.structName;\n this.extendedType = jsonObj.extendedType;\n this.description = jsonObj.description;\n this.displayLabel = jsonObj.displayLabel;\n if (undefined !== jsonObj.minimumValue)\n this.minimumValue = jsonObj.minimumValue;\n if (undefined !== jsonObj.maximumValue)\n this.maximumValue = jsonObj.maximumValue;\n if (undefined !== jsonObj.minimumLength)\n this.minimumLength = jsonObj.minimumLength;\n if (undefined !== jsonObj.maximumLength)\n this.maximumLength = jsonObj.maximumLength;\n this.readOnly = jsonObj.readOnly;\n this.kindOfQuantity = jsonObj.kindOfQuantity;\n this.isCustomHandled = jsonObj.isCustomHandled;\n if (undefined !== jsonObj.minOccurs)\n this.minOccurs = jsonObj.minOccurs;\n if (undefined !== jsonObj.maxOccurs)\n this.maxOccurs = jsonObj.maxOccurs;\n this.direction = jsonObj.direction;\n this.relationshipClass = jsonObj.relationshipClass;\n this.customAttributes = jsonObj.customAttributes;\n }\n\n /** Create a typed value, or array of values, from a factory and an input object */\n private createValueOrArray(func: FactoryFunc, jsonObj: any) {\n if (undefined === this.minOccurs)\n return func(jsonObj); // not an array\n\n const val: any = [];\n jsonObj.forEach((element: any) => val.push(func(element)));\n return val;\n }\n\n /** construct a single property from an input object according to this metadata */\n public createProperty(jsonObj: any): any {\n if (jsonObj === undefined)\n return undefined;\n\n if (undefined !== this.primitiveType) {\n switch (this.primitiveType) {\n case PrimitiveTypeCode.Boolean:\n case PrimitiveTypeCode.Double:\n case PrimitiveTypeCode.Integer:\n case PrimitiveTypeCode.String:\n return jsonObj; // this works even for arrays or strings that are JSON because the parsed JSON is already the right type\n\n case PrimitiveTypeCode.Point2d:\n return this.createValueOrArray((obj) => Point2d.fromJSON(obj), jsonObj);\n\n case PrimitiveTypeCode.Point3d:\n return this.createValueOrArray((obj) => Point3d.fromJSON(obj), jsonObj);\n }\n }\n if (this.isNavigation)\n return jsonObj.id !== undefined ? new RelatedElement(jsonObj) : Id64.fromJSON(jsonObj);\n\n return jsonObj;\n }\n\n /** Return `true` if this property is a NavigationProperty. */\n public get isNavigation(): boolean {\n return (this.direction !== undefined); // the presence of `direction` means it is a navigation property\n }\n}\n\n/**\n * @beta\n * @deprecated in 5.0. Use `@itwin/ecschema-metadata` instead.\n */\nexport interface EntityMetaDataProps {\n classId: Id64String;\n ecclass: string;\n description?: string;\n modifier?: string;\n displayLabel?: string;\n /** The base classes from which this class derives. If more than one, the first is the super class and the others are [mixins]($docs/bis/ec/ec-mixin-class). */\n baseClasses: string[];\n /** The Custom Attributes for this class */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n customAttributes?: CustomAttribute[];\n /** An object whose properties correspond by name to the properties of this class. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n properties: { [propName: string]: PropertyMetaData };\n}\n\n/** Metadata for an Entity.\n * @beta\n * @deprecated in 5.0. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.\n */\nexport class EntityMetaData implements EntityMetaDataProps {\n /** The Id of the class in the [[IModelDb]] from which the metadata was obtained. */\n public readonly classId: Id64String;\n /** The Entity name */\n public readonly ecclass: string;\n public readonly description?: string;\n public readonly modifier?: string;\n public readonly displayLabel?: string;\n /** The base class that this class is derives from. If more than one, the first is the actual base class and the others are mixins. */\n public readonly baseClasses: string[];\n /** The Custom Attributes for this class */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public readonly customAttributes?: CustomAttribute[];\n /** An object whose properties correspond by name to the properties of this class. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public readonly properties: { [propName: string]: PropertyMetaData };\n\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public constructor(jsonObj: EntityMetaDataProps) {\n this.classId = jsonObj.classId;\n this.ecclass = jsonObj.ecclass;\n this.description = jsonObj.description;\n this.modifier = jsonObj.modifier;\n this.displayLabel = jsonObj.displayLabel;\n this.baseClasses = jsonObj.baseClasses;\n this.customAttributes = jsonObj.customAttributes;\n this.properties = {};\n\n for (const propName in jsonObj.properties) { // eslint-disable-line guard-for-in\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n this.properties[propName] = new PropertyMetaData(jsonObj.properties[propName]);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"EntityProps.js","sourceRoot":"","sources":["../../src/EntityProps.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Entities\n */\n\nimport { Id64, Id64String } from \"@itwin/core-bentley\";\nimport { Point2d, Point3d } from \"@itwin/core-geometry\";\nimport { RelatedElement } from \"./ElementProps\";\n\n/** The persistent format of an [Entity]($backend), also used as the \"wire format\" when transmitting information about entities\n * between the backend and frontend.\n * EntityProps and all of its sub-types like [[ElementProps]] are \"plain old Javascript objects\" - that is, objects containing\n * no methods and no properties of `class` type.\n * @public @preview\n * @extensions\n */\nexport interface EntityProps {\n /** A non-existent property used to discriminate between [[EntityProps]] and [Entity]($backend).\n * @see [Entity.isInstanceOfEntity]($backend).\n */\n readonly isInstanceOfEntity?: never;\n /** The full name of the [ECClass]($docs/bis/guide/references/glossary/#ecclass) for this entity, in the form \"Schema:ClassName\" */\n classFullName: string;\n /** The Id of the entity. Must be present for SELECT, UPDATE, or DELETE, ignored for INSERT. */\n id?: Id64String;\n /** Optional [json properties]($docs/bis/guide/fundamentals/element-fundamentals.md#jsonproperties) of this Entity. */\n jsonProperties?: { [key: string]: any };\n}\n\n/** Specifies the source and target elements of a [[Relationship]] instance.\n * @public @preview\n * @extensions\n */\nexport interface SourceAndTarget {\n sourceId: Id64String;\n targetId: Id64String;\n}\n\n/** Properties that are common to all types of link table ECRelationships\n * @public @preview\n * @extensions\n */\nexport interface RelationshipProps extends EntityProps, SourceAndTarget {\n}\n\n/** Parameters for performing a query on [Entity]($backend) classes.\n * @public @preview\n * @extensions\n */\nexport interface EntityQueryParams {\n /** The sql className, in the form \"Schema.ClassName\", of the class to search. */\n from?: string;\n /** Set to true to limit results to *not* include sub-classes of \"from\" class */\n only?: boolean;\n /** Optional \"WHERE\" clause to filter entities. Note: do *not* include the \"WHERE\" keyword. */\n where?: string;\n /** Optional \"ORDERBY\" clause to sort results. Note: do *not* include the \"ORDERBY\" keyword. */\n orderBy?: string;\n /** Optional \"LIMIT\" clause to limit the number of rows returned. */\n limit?: number;\n /** Optional \"OFFSET\" clause. Only valid if Limit is also present. */\n offset?: number;\n /** Bindings for parameterized values.\n * @see [[ECSqlStatement.bindValues]]\n */\n bindings?: any[] | object;\n}\n\n/** The primitive types of an Entity property.\n * @beta\n */\nexport enum PrimitiveTypeCode {\n Uninitialized = 0x00,\n Binary = 0x101,\n Boolean = 0x201,\n DateTime = 0x301,\n Double = 0x401,\n Integer = 0x501,\n Long = 0x601,\n Point2d = 0x701, // eslint-disable-line @typescript-eslint/no-shadow\n Point3d = 0x801, // eslint-disable-line @typescript-eslint/no-shadow\n String = 0x901,\n IGeometry = 0xa01, // Used for Bentley.Geometry.Common.IGeometry types\n}\n\n/** A callback function to process properties of an Entity\n * @beta\n * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `PropertyHandler` from `@itwin/ecschema-metadata` instead.\n *\n * @example\n * ```typescript\n * // Current usage:\n * const callback: PropertyCallback = (name: string, propMetaData: PropertyMetaData) => {\n * console.log(`Property name: ${name}, Property type: ${propMetaData.primitiveType}`);\n * };\n *\n * // Replacement:\n * const callback: PropertyHandler = (propName: string, property: Property) => {\n * console.log(`Property name: ${propName}, Property type: ${property.propertyType}`);\n * };\n * ```\n */\nexport type PropertyCallback = (name: string, meta: PropertyMetaData) => void;\n\n/** A custom attribute instance\n * @beta\n * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `CustomAttribute` interface from `@itwin/ecschema-metadata` instead.\n */\nexport interface CustomAttribute {\n /** The class of the CustomAttribute */\n ecclass: string;\n /** An object whose properties correspond by name to the properties of this custom attribute instance. */\n properties: { [propName: string]: any };\n}\n\ntype FactoryFunc = (jsonObj: any) => any;\n\n/**\n * @beta\n * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `@itwin/ecschema-metadata` instead.\n */\nexport interface PropertyMetaDataProps {\n primitiveType?: number;\n structName?: string;\n extendedType?: string;\n description?: string;\n displayLabel?: string;\n minimumValue?: any;\n maximumValue?: any;\n minimumLength?: number;\n maximumLength?: number;\n readOnly?: boolean;\n kindOfQuantity?: string;\n isCustomHandled?: boolean;\n isCustomHandledOrphan?: boolean;\n minOccurs?: number;\n maxOccurs?: number;\n direction?: string;\n relationshipClass?: string;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n customAttributes?: CustomAttribute[];\n}\n\n/** Metadata for a property.\n * @beta\n * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use the `Property` class from @itwin/ecschema-metadata` instead.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport class PropertyMetaData implements PropertyMetaDataProps {\n public primitiveType?: PrimitiveTypeCode;\n public structName?: string;\n public extendedType?: string;\n public description?: string;\n public displayLabel?: string;\n public minimumValue?: any;\n public maximumValue?: any;\n public minimumLength?: number;\n public maximumLength?: number;\n public readOnly?: boolean;\n public kindOfQuantity?: string;\n public isCustomHandled?: boolean;\n public isCustomHandledOrphan?: boolean;\n public minOccurs?: number;\n public maxOccurs?: number;\n public direction?: string;\n public relationshipClass?: string;\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public customAttributes?: CustomAttribute[];\n\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public constructor(jsonObj: PropertyMetaDataProps) {\n this.primitiveType = jsonObj.primitiveType;\n if (jsonObj.structName)\n this.structName = jsonObj.structName;\n this.extendedType = jsonObj.extendedType;\n this.description = jsonObj.description;\n this.displayLabel = jsonObj.displayLabel;\n if (undefined !== jsonObj.minimumValue)\n this.minimumValue = jsonObj.minimumValue;\n if (undefined !== jsonObj.maximumValue)\n this.maximumValue = jsonObj.maximumValue;\n if (undefined !== jsonObj.minimumLength)\n this.minimumLength = jsonObj.minimumLength;\n if (undefined !== jsonObj.maximumLength)\n this.maximumLength = jsonObj.maximumLength;\n this.readOnly = jsonObj.readOnly;\n this.kindOfQuantity = jsonObj.kindOfQuantity;\n this.isCustomHandled = jsonObj.isCustomHandled;\n if (undefined !== jsonObj.minOccurs)\n this.minOccurs = jsonObj.minOccurs;\n if (undefined !== jsonObj.maxOccurs)\n this.maxOccurs = jsonObj.maxOccurs;\n this.direction = jsonObj.direction;\n this.relationshipClass = jsonObj.relationshipClass;\n this.customAttributes = jsonObj.customAttributes;\n }\n\n /** Create a typed value, or array of values, from a factory and an input object */\n private createValueOrArray(func: FactoryFunc, jsonObj: any) {\n if (undefined === this.minOccurs)\n return func(jsonObj); // not an array\n\n const val: any = [];\n jsonObj.forEach((element: any) => val.push(func(element)));\n return val;\n }\n\n /** construct a single property from an input object according to this metadata */\n public createProperty(jsonObj: any): any {\n if (jsonObj === undefined)\n return undefined;\n\n if (undefined !== this.primitiveType) {\n switch (this.primitiveType) {\n case PrimitiveTypeCode.Boolean:\n case PrimitiveTypeCode.Double:\n case PrimitiveTypeCode.Integer:\n case PrimitiveTypeCode.String:\n return jsonObj; // this works even for arrays or strings that are JSON because the parsed JSON is already the right type\n\n case PrimitiveTypeCode.Point2d:\n return this.createValueOrArray((obj) => Point2d.fromJSON(obj), jsonObj);\n\n case PrimitiveTypeCode.Point3d:\n return this.createValueOrArray((obj) => Point3d.fromJSON(obj), jsonObj);\n }\n }\n if (this.isNavigation)\n return jsonObj.id !== undefined ? new RelatedElement(jsonObj) : Id64.fromJSON(jsonObj);\n\n return jsonObj;\n }\n\n /** Return `true` if this property is a NavigationProperty. */\n public get isNavigation(): boolean {\n return (this.direction !== undefined); // the presence of `direction` means it is a navigation property\n }\n}\n\n/**\n * @beta\n * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `@itwin/ecschema-metadata` instead.\n */\nexport interface EntityMetaDataProps {\n classId: Id64String;\n ecclass: string;\n description?: string;\n modifier?: string;\n displayLabel?: string;\n /** The base classes from which this class derives. If more than one, the first is the super class and the others are [mixins]($docs/bis/ec/ec-mixin-class). */\n baseClasses: string[];\n /** The Custom Attributes for this class */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n customAttributes?: CustomAttribute[];\n /** An object whose properties correspond by name to the properties of this class. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n properties: { [propName: string]: PropertyMetaData };\n}\n\n/** Metadata for an Entity.\n * @beta\n * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use `EntityClass` class from `@itwin/ecschema-metadata` instead.\n */\n// eslint-disable-next-line @typescript-eslint/no-deprecated\nexport class EntityMetaData implements EntityMetaDataProps {\n /** The Id of the class in the [[IModelDb]] from which the metadata was obtained. */\n public readonly classId: Id64String;\n /** The Entity name */\n public readonly ecclass: string;\n public readonly description?: string;\n public readonly modifier?: string;\n public readonly displayLabel?: string;\n /** The base class that this class is derives from. If more than one, the first is the actual base class and the others are mixins. */\n public readonly baseClasses: string[];\n /** The Custom Attributes for this class */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public readonly customAttributes?: CustomAttribute[];\n /** An object whose properties correspond by name to the properties of this class. */\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public readonly properties: { [propName: string]: PropertyMetaData };\n\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n public constructor(jsonObj: EntityMetaDataProps) {\n this.classId = jsonObj.classId;\n this.ecclass = jsonObj.ecclass;\n this.description = jsonObj.description;\n this.modifier = jsonObj.modifier;\n this.displayLabel = jsonObj.displayLabel;\n this.baseClasses = jsonObj.baseClasses;\n this.customAttributes = jsonObj.customAttributes;\n this.properties = {};\n\n for (const propName in jsonObj.properties) { // eslint-disable-line guard-for-in\n // eslint-disable-next-line @typescript-eslint/no-deprecated\n this.properties[propName] = new PropertyMetaData(jsonObj.properties[propName]);\n }\n }\n}\n"]}
@@ -86,7 +86,7 @@ export interface RscFontEncodingProps {
86
86
  /** The properties of a FontMap
87
87
  * @public
88
88
  * @extensions
89
- * @deprecated in 5.0.0. Use [IModelDb.fonts]($backend)
89
+ * @deprecated in 5.0.0 - will not be removed until after 2026-06-13. Use [IModelDb.fonts]($backend)
90
90
  */
91
91
  export interface FontMapProps {
92
92
  fonts: FontProps[];
@@ -97,7 +97,7 @@ export interface FontMapProps {
97
97
  * This class maps FontIds to FontProps.
98
98
  * @note This API has never worked properly. Don't use it. Use [IModelDb.fonts]($backend) instead.
99
99
  * @public
100
- * @deprecated in 5.0.0. Use [IModelDb.fonts]($backend) instead.
100
+ * @deprecated in 5.0.0 - will not be removed until after 2026-06-13. Use [IModelDb.fonts]($backend) instead.
101
101
  */
102
102
  export declare class FontMap {
103
103
  readonly fonts: Map<number, FontProps>;
package/lib/cjs/Fonts.js CHANGED
@@ -39,7 +39,7 @@ var FontType;
39
39
  * This class maps FontIds to FontProps.
40
40
  * @note This API has never worked properly. Don't use it. Use [IModelDb.fonts]($backend) instead.
41
41
  * @public
42
- * @deprecated in 5.0.0. Use [IModelDb.fonts]($backend) instead.
42
+ * @deprecated in 5.0.0 - will not be removed until after 2026-06-13. Use [IModelDb.fonts]($backend) instead.
43
43
  */
44
44
  class FontMap {
45
45
  fonts = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"Fonts.js","sourceRoot":"","sources":["../../src/Fonts.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;;GAIG;AACH,IAAY,QAkBX;AAlBD,WAAY,QAAQ;IAClB;;;;OAIG;IACH,+CAAY,CAAA;IACZ;;;;OAIG;IACH,qCAAO,CAAA;IACP;;;OAGG;IACH,qCAAO,CAAA;AACT,CAAC,EAlBW,QAAQ,wBAAR,QAAQ,QAkBnB;AAyED;;;;;;;GAOG;AACH,MAAa,OAAO;IACF,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;IACrD,YAAY,KAAoB;QAC9B,IAAI,SAAS,KAAK,KAAK;YACrB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACM,QAAQ,CAAC,KAAkB;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;IACM,MAAM;QACX,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IACD,iFAAiF;IAC1E,OAAO,CAAC,GAAoB;QACjC,IAAI,OAAO,GAAG,KAAK,QAAQ;YACzB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE7B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACpC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE;gBAC/C,OAAO,IAAI,CAAC;QAEhB,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAzBD,0BAyBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Symbology\n */\n\n/** The [FontFile]($backend) encodings understood by iTwin.js.\n * @see [this article]($docs/learning/backend/Fonts.md) to learn more about fonts in iModels.\n * @public\n * @extensions\n */\nexport enum FontType {\n /** [OpenType](https://en.wikipedia.org/wiki/OpenType) format, derived from and compatible with the earlier [TrueType](https://en.wikipedia.org/wiki/TrueType) format.\n * The vast majority of modern, scalable, aesthetically-pleasing fonts are delivered in this format.\n * OpenType files typically use one of the following suffixes: .ttf, .ttc, .otf, and .otc.\n * @see [FontFile.createFromTrueTypeFileName]($backend) to work with font files in this format.\n */\n TrueType = 1,\n /** [RSC](https://docs.bentley.com/LiveContent/web/MicroStation%20Help-v27/en/GUID-FC78484C-E42F-30BF-BF68-2B2C025AE040.html) is a simple font format\n * originating in [MicroStation](https://en.wikipedia.org/wiki/MicroStation). In MicroStation, they are defined in \"resource files\" with a \".rsc\" suffix.\n * In iModels, they are encoded in a binary format. Currently, no APIs exist to convert to this binary format, but some [connectors]($docs/learning/imodel-connectors.md) can\n * perform the conversion.\n */\n Rsc = 2,\n /** [SHX](https://help.autodesk.com/view/OARX/2024/ENU/?guid=GUID-DE941DB5-7044-433C-AA68-2A9AE98A5713) is a simple font format originating in\n * [AutoCAD](https://en.wikipedia.org/wiki/AutoCAD). SHX fonts are generally distributed as files with a \".shx\" suffix.\n * @see [FontFile.createFromShxFontBlob]($backend) to work with font files in this format.\n */\n Shx = 3,\n}\n\n/** An unsigned integer uniquely identifying a [font family]($docs/learning/backend/Fonts.md) in the context of an [[IModel]].\n * The iModel stores a mapping between `FontId`s and [[FontFamilyDescriptor]]s.\n * [[TextString]]s refer to fonts by the their `FontId`s.\n * A font Id of zero represents an invalid/non-existent font.\n * @see [IModelDbFonts]($backend) to work with font Ids.\n * @public\n * @extensions\n */\nexport type FontId = number;\n\n/** Uniquely describes one or more [[FontFace]]s sharing the same name and type comprising a single [font family]($docs/learning/backend/Fonts.md).\n * @public\n */\nexport interface FontFamilyDescriptor {\n /** The encoding in which the font family's faces are stored. */\n type: FontType;\n /** The name of the family. */\n name: string;\n}\n\n/** A [[FontFamilyDescriptor]] in which the [[FontType]] is optional, used when querying [[FontId]]s via [IModelDbFonts.findId]($backend).\n * If a font type is provided, this selector exactly identifies a unique font family, just like [[FontFamilyDescriptor]] does.\n * If the type is omitted, then the selector refers to the first font family that matches the specified [[name]]. If multiple families\n * with the same name exist, then a TrueType font will be preferred over a RSC font, and a RSC font preferred over an SHX font.\n * @beta\n */\nexport interface FontFamilySelector {\n /** The encoding in which the font family's faces are stored. */\n type?: FontType;\n /** The name of the family. */\n name: string;\n}\n\n/** Represents a [[FontFamilyDescriptor]] stored in an iModel with a unique numeric Id.\n * @public\n */\nexport interface FontProps extends FontFamilyDescriptor {\n /** An integer that uniquely identifies this font family in the context of the iModel in which it is stored. */\n id: FontId;\n}\n\n/** A specific variation of the glyphs defined by a [font family]($docs/learning/backend/Fonts.md).\n * Each face can be italicized, bolded, both, or neither.\n * Font faces are stored in [FontFile]($backend)s.\n * @beta\n */\nexport interface FontFace {\n /** The name of the font family to which this face belongs. */\n familyName: string;\n isBold: boolean;\n isItalic: boolean;\n}\n\n/** Information about the encoding of a [[FontType.Rsc]] [FontFile]($backend), used when embedding such a font into an iModel.\n * Currently, no public APIs exist to create such fonts.\n * @alpha\n */\nexport interface RscFontEncodingProps {\n codePage?: number;\n degree?: number;\n plusMinus?: number;\n diameter?: number;\n}\n\n/** The properties of a FontMap\n * @public\n * @extensions\n * @deprecated in 5.0.0. Use [IModelDb.fonts]($backend)\n */\nexport interface FontMapProps { fonts: FontProps[] }\n\n/**\n * A FontMap holds the set of font names available in an iModel.\n * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.\n * This class maps FontIds to FontProps.\n * @note This API has never worked properly. Don't use it. Use [IModelDb.fonts]($backend) instead.\n * @public\n * @deprecated in 5.0.0. Use [IModelDb.fonts]($backend) instead.\n */\nexport class FontMap {\n public readonly fonts = new Map<FontId, FontProps>();\n constructor(props?: FontMapProps) { // eslint-disable-line @typescript-eslint/no-deprecated\n if (undefined !== props)\n this.addFonts(props.fonts);\n }\n public addFonts(fonts: FontProps[]) {\n fonts.forEach((font) => this.fonts.set(font.id, font));\n }\n public toJSON(): FontMapProps { // eslint-disable-line @typescript-eslint/no-deprecated\n const fonts: FontProps[] = [];\n this.fonts.forEach((font) => fonts.push(font));\n return { fonts };\n }\n /** look up a font by case insensitive name or number and return its FontProps */\n public getFont(arg: string | FontId): FontProps | undefined {\n if (typeof arg === \"number\")\n return this.fonts.get(arg);\n\n for (const font of this.fonts.values())\n if (font.name.toLowerCase() === arg.toLowerCase())\n return font;\n\n return undefined;\n }\n}\n"]}
1
+ {"version":3,"file":"Fonts.js","sourceRoot":"","sources":["../../src/Fonts.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH;;;;GAIG;AACH,IAAY,QAkBX;AAlBD,WAAY,QAAQ;IAClB;;;;OAIG;IACH,+CAAY,CAAA;IACZ;;;;OAIG;IACH,qCAAO,CAAA;IACP;;;OAGG;IACH,qCAAO,CAAA;AACT,CAAC,EAlBW,QAAQ,wBAAR,QAAQ,QAkBnB;AAyED;;;;;;;GAOG;AACH,MAAa,OAAO;IACF,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;IACrD,YAAY,KAAoB;QAC9B,IAAI,SAAS,KAAK,KAAK;YACrB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACM,QAAQ,CAAC,KAAkB;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;IACM,MAAM;QACX,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IACD,iFAAiF;IAC1E,OAAO,CAAC,GAAoB;QACjC,IAAI,OAAO,GAAG,KAAK,QAAQ;YACzB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE7B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACpC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE;gBAC/C,OAAO,IAAI,CAAC;QAEhB,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAzBD,0BAyBC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Symbology\n */\n\n/** The [FontFile]($backend) encodings understood by iTwin.js.\n * @see [this article]($docs/learning/backend/Fonts.md) to learn more about fonts in iModels.\n * @public\n * @extensions\n */\nexport enum FontType {\n /** [OpenType](https://en.wikipedia.org/wiki/OpenType) format, derived from and compatible with the earlier [TrueType](https://en.wikipedia.org/wiki/TrueType) format.\n * The vast majority of modern, scalable, aesthetically-pleasing fonts are delivered in this format.\n * OpenType files typically use one of the following suffixes: .ttf, .ttc, .otf, and .otc.\n * @see [FontFile.createFromTrueTypeFileName]($backend) to work with font files in this format.\n */\n TrueType = 1,\n /** [RSC](https://docs.bentley.com/LiveContent/web/MicroStation%20Help-v27/en/GUID-FC78484C-E42F-30BF-BF68-2B2C025AE040.html) is a simple font format\n * originating in [MicroStation](https://en.wikipedia.org/wiki/MicroStation). In MicroStation, they are defined in \"resource files\" with a \".rsc\" suffix.\n * In iModels, they are encoded in a binary format. Currently, no APIs exist to convert to this binary format, but some [connectors]($docs/learning/imodel-connectors.md) can\n * perform the conversion.\n */\n Rsc = 2,\n /** [SHX](https://help.autodesk.com/view/OARX/2024/ENU/?guid=GUID-DE941DB5-7044-433C-AA68-2A9AE98A5713) is a simple font format originating in\n * [AutoCAD](https://en.wikipedia.org/wiki/AutoCAD). SHX fonts are generally distributed as files with a \".shx\" suffix.\n * @see [FontFile.createFromShxFontBlob]($backend) to work with font files in this format.\n */\n Shx = 3,\n}\n\n/** An unsigned integer uniquely identifying a [font family]($docs/learning/backend/Fonts.md) in the context of an [[IModel]].\n * The iModel stores a mapping between `FontId`s and [[FontFamilyDescriptor]]s.\n * [[TextString]]s refer to fonts by the their `FontId`s.\n * A font Id of zero represents an invalid/non-existent font.\n * @see [IModelDbFonts]($backend) to work with font Ids.\n * @public\n * @extensions\n */\nexport type FontId = number;\n\n/** Uniquely describes one or more [[FontFace]]s sharing the same name and type comprising a single [font family]($docs/learning/backend/Fonts.md).\n * @public\n */\nexport interface FontFamilyDescriptor {\n /** The encoding in which the font family's faces are stored. */\n type: FontType;\n /** The name of the family. */\n name: string;\n}\n\n/** A [[FontFamilyDescriptor]] in which the [[FontType]] is optional, used when querying [[FontId]]s via [IModelDbFonts.findId]($backend).\n * If a font type is provided, this selector exactly identifies a unique font family, just like [[FontFamilyDescriptor]] does.\n * If the type is omitted, then the selector refers to the first font family that matches the specified [[name]]. If multiple families\n * with the same name exist, then a TrueType font will be preferred over a RSC font, and a RSC font preferred over an SHX font.\n * @beta\n */\nexport interface FontFamilySelector {\n /** The encoding in which the font family's faces are stored. */\n type?: FontType;\n /** The name of the family. */\n name: string;\n}\n\n/** Represents a [[FontFamilyDescriptor]] stored in an iModel with a unique numeric Id.\n * @public\n */\nexport interface FontProps extends FontFamilyDescriptor {\n /** An integer that uniquely identifies this font family in the context of the iModel in which it is stored. */\n id: FontId;\n}\n\n/** A specific variation of the glyphs defined by a [font family]($docs/learning/backend/Fonts.md).\n * Each face can be italicized, bolded, both, or neither.\n * Font faces are stored in [FontFile]($backend)s.\n * @beta\n */\nexport interface FontFace {\n /** The name of the font family to which this face belongs. */\n familyName: string;\n isBold: boolean;\n isItalic: boolean;\n}\n\n/** Information about the encoding of a [[FontType.Rsc]] [FontFile]($backend), used when embedding such a font into an iModel.\n * Currently, no public APIs exist to create such fonts.\n * @alpha\n */\nexport interface RscFontEncodingProps {\n codePage?: number;\n degree?: number;\n plusMinus?: number;\n diameter?: number;\n}\n\n/** The properties of a FontMap\n * @public\n * @extensions\n * @deprecated in 5.0.0 - will not be removed until after 2026-06-13. Use [IModelDb.fonts]($backend)\n */\nexport interface FontMapProps { fonts: FontProps[] }\n\n/**\n * A FontMap holds the set of font names available in an iModel.\n * Within the GeometryStream of an Element, a specific font is referenced by its FontId that is local to the iModel.\n * This class maps FontIds to FontProps.\n * @note This API has never worked properly. Don't use it. Use [IModelDb.fonts]($backend) instead.\n * @public\n * @deprecated in 5.0.0 - will not be removed until after 2026-06-13. Use [IModelDb.fonts]($backend) instead.\n */\nexport class FontMap {\n public readonly fonts = new Map<FontId, FontProps>();\n constructor(props?: FontMapProps) { // eslint-disable-line @typescript-eslint/no-deprecated\n if (undefined !== props)\n this.addFonts(props.fonts);\n }\n public addFonts(fonts: FontProps[]) {\n fonts.forEach((font) => this.fonts.set(font.id, font));\n }\n public toJSON(): FontMapProps { // eslint-disable-line @typescript-eslint/no-deprecated\n const fonts: FontProps[] = [];\n this.fonts.forEach((font) => fonts.push(font));\n return { fonts };\n }\n /** look up a font by case insensitive name or number and return its FontProps */\n public getFont(arg: string | FontId): FontProps | undefined {\n if (typeof arg === \"number\")\n return this.fonts.get(arg);\n\n for (const font of this.fonts.values())\n if (font.name.toLowerCase() === arg.toLowerCase())\n return font;\n\n return undefined;\n }\n}\n"]}
@@ -51,7 +51,7 @@ export declare enum GeoCoordStatus {
51
51
  /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend
52
52
  * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).
53
53
  * At the completion of the conversion promise no coordinates should have this status.
54
- * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.
54
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Pending is no longer returned as a status for coordinate conversions.
55
55
  */
56
56
  Pending = -41556
57
57
  }
@@ -59,7 +59,7 @@ var GeoCoordStatus;
59
59
  /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend
60
60
  * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).
61
61
  * At the completion of the conversion promise no coordinates should have this status.
62
- * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.
62
+ * @deprecated in 5.0 - will not be removed until after 2026-06-13. Pending is no longer returned as a status for coordinate conversions.
63
63
  */
64
64
  GeoCoordStatus[GeoCoordStatus["Pending"] = -41556] = "Pending";
65
65
  })(GeoCoordStatus || (exports.GeoCoordStatus = GeoCoordStatus = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"GeoCoordinateServices.js","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA+DH,sDAaC;AA1ED,qDAAqD;AAErD,sDAAuD;AAIvD;;;;;;GAMG;AACH,IAAY,cA2CX;AA3CD,WAAY,cAAc;IACxB,kDAAkD;IAClD,yDAAW,CAAA;IACX,sIAAsI;IACtI,qEAAkB,CAAA;IAClB;;;;;;;;;;OAUG;IACH,2EAAoB,CAAA;IACpB;;;;OAIG;IACH,yFAA2B,CAAA;IAC3B;;;;OAIG;IACH,4EAAqB,CAAA;IACrB;;;;OAIG;IACH,8FAA8B,CAAA;IAC9B,sGAAsG;IACtG,kEAAiB,CAAA;IACjB;;;;OAIG;IACH,8DAAgB,CAAA;AAClB,CAAC,EA3CW,cAAc,8BAAd,cAAc,QA2CzB;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,CAAiB;IACrD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,+BAAgB,CAAC,OAAO,CAAC;QAC7D,KAAK,cAAc,CAAC,YAAY,CAAC,CAAC,OAAO,+BAAgB,CAAC,aAAa,CAAC;QACxE,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,+BAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,+BAAgB,CAAC,uBAAuB,CAAC;QAC7F,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,+BAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,yBAAyB,CAAC,CAAC,OAAO,+BAAgB,CAAC,yBAAyB,CAAC;QACjG,KAAK,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,+BAAgB,CAAC,UAAU,CAAC;QACnE,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,+BAAgB,CAAC,OAAO,CAAC,CAAC,uDAAuD;QACrH;YACE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACpF,CAAC;AACH,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module iModels\n */\n\n// cspell:ignore NGVD, NAVD, COMPD_CS, PROJCS, GEOGCS\n\nimport { GeoServiceStatus } from \"@itwin/core-bentley\";\nimport { XYZProps } from \"@itwin/core-geometry\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\n\n/** This enumeration lists all possible status as returned from a coordinate conversion to or from a\n * [[GeographicCRS]] and either another [[GeographicCRS]] or a [[GeodeticDatum]].\n * @see [[GeoConverter]] to perform coordinate conversions.\n * @see [[PointWithStatus]] for the result of a coordinate conversion, including its status code.\n * @public\n * @extensions\n */\nexport enum GeoCoordStatus {\n /** Indicates successful coordinate conversion. */\n Success = 0,\n /** Indicates that the source or target of the conversion is not defined, usually the iModel Geographic Coordinate Reference System.*/\n NoGCSDefined = 100,\n /** This value indicates that the conversion was performed outside of the normal use of application of either Geographic Coordinate Reference Systems.\n * This return value can often be treated as a warning in specific cases. For example, global imagery extent spans the whole globe and\n * may extend far beyond the normal area of the iModel project extents and the extent of normal use of its Geographic Coordinate Reference System.\n * In such cases this value can be considered a warning as accuracy and precision is not expected in this specific case and approximate localization\n * of global imagery or other low accuracy context data is not essential far from the project.\n * If this status is returned for high accuracy data then it indicates that either Geographic Coordinate Reference Systems were inappropriately selected\n * for the iModel or other geolocated data. If this is the case the status should be somehow reported so action\n * can be performed to verify used geolocation parameters.\n * In either case the returned coordinates are to be considered valid though they may be inaccurate or result in some unexpected distortion of graphical\n * elements.\n */\n OutOfUsefulRange = 1,\n /** Indicates a hard error where conversions were requested outside of the area of the mathematical capacity of the conversion process for either\n * Geographic Coordinate Reference Systems involved. An example could be to attempt a conversion involving a Transverse Mercator more than 60 degrees\n * East or West of the projection central meridian.\n * The values returned may or may not be valid and should be discarded.\n */\n OutOfMathematicalDomain = 2,\n /** Indicates that datum transformation between the two Geographic Coordinate Reference Systems could not be performed.\n * This error is usually the result of a datum transformation path requiring use of latitude/longitude grid shift files that could not be obtained\n * or installed. In this case the latitude/longitude transformation is bypassed but the remainder of the conversion process is completed.\n * This error can be ignored for low accuracy data but should be somehow reported so actions can be performed to provide the missing files.\n */\n NoDatumConverter = 25,\n /** Indicates that a problem occurred during vertical datum conversion. This may the result of the inability to access the\n * Geoid separation data or vertical datum differential data (such as used by NGVD29 to NAVD88 conversion).\n * The horizontal coordinates returned are valid but the elevation ordinate will be returned unchanged or partially changed.\n * This status should be somehow reported so actions can be performed to provide the missing information.\n */\n VerticalDatumConvertError = 26,\n /** General inner conversion engine error. Coordinates returned are invalid and should be discarded */\n CSMapError = 4096,\n /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend\n * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).\n * At the completion of the conversion promise no coordinates should have this status.\n * @deprecated in 5.0. Pending is no longer returned as a status for coordinate conversions.\n */\n Pending = -41556,\n}\n\n/** Maps a GeoCoordStatus to the equivalent GeoServiceStatus.\n * @public\n */\nexport function mapToGeoServiceStatus(s: GeoCoordStatus): GeoServiceStatus {\n switch (s) {\n case GeoCoordStatus.Success: return GeoServiceStatus.Success;\n case GeoCoordStatus.NoGCSDefined: return GeoServiceStatus.NoGeoLocation;\n case GeoCoordStatus.OutOfUsefulRange: return GeoServiceStatus.OutOfUsefulRange;\n case GeoCoordStatus.OutOfMathematicalDomain: return GeoServiceStatus.OutOfMathematicalDomain;\n case GeoCoordStatus.NoDatumConverter: return GeoServiceStatus.NoDatumConverter;\n case GeoCoordStatus.VerticalDatumConvertError: return GeoServiceStatus.VerticalDatumConvertError;\n case GeoCoordStatus.CSMapError: return GeoServiceStatus.CSMapError;\n case GeoCoordStatus.Pending: return GeoServiceStatus.Pending; // eslint-disable-line @typescript-eslint/no-deprecated\n default:\n throw new Error(\"GeoCoordStatus -> GeoServiceStatus - Missing enum conversion\");\n }\n}\n\n/** Information required to request conversion of an array of Geographic coordinates (Longitude/Latitude) to iModel coordinates\n * @beta\n */\nexport interface IModelCoordinatesRequestProps {\n source: string;\n geoCoords: XYZProps[];\n}\n\n/** A point converted to iModel coordinates to geographic coordinates or vice-versa by a [[GeoConverter]].\n * The status [[s]] indicates the converted point [[p]]'s degree of accuracy.\n * @public\n */\nexport interface PointWithStatus {\n /** A JSON representation of the converted point. */\n p: XYZProps;\n /** A status code indicating the degree of accuracy with the point [[p]] was converted. */\n s: GeoCoordStatus;\n}\n\n/** @beta */\nexport interface IModelCoordinatesResponseProps {\n iModelCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to request conversion of an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesRequestProps {\n target: string;\n iModelCoords: XYZProps[];\n}\n\n/** Information returned from a request to convert an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesResponseProps {\n geoCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to interpret or complete a Geographic CRS in the specified format.\n * The only currently supported formats are JSON (for completion) and WKT (OGC Well Known Text)\n * @beta\n */\nexport interface GeographicCRSInterpretRequestProps {\n /** The format of the geographic CRS definition provided in the geographicCRSDef property. */\n format: \"WKT\" | \"JSON\";\n /** The geographic CRS definition in the format specified in the format property.\n * Note that when the WKT is used the WKT fragment provided can start with a COMPD_CS clause\n * which should then contain both the horizontal CRS definition as well as the vertical CRS specification.\n * WKT fragments starting with PROJCS or GEOGCS are also supported but the vertical CRS will be assigned a\n * default value.\n */\n geographicCRSDef: string;\n}\n\n/** Information returned from a request to interpret or complete a Geographic CRS\n * @beta\n */\nexport interface GeographicCRSInterpretResponseProps {\n /** The result status of the interpret operation. A value of zero indicates successful interpretation.\n * Any value other than zero is to be considered a hard error and no valid result will\n * be returned in the geographicCRS property.\n */\n status: number;\n /** The property that receives the interpreted geographic CRS if the process was successful. */\n geographicCRS?: GeographicCRSProps;\n}\n"]}
1
+ {"version":3,"file":"GeoCoordinateServices.js","sourceRoot":"","sources":["../../src/GeoCoordinateServices.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AA+DH,sDAaC;AA1ED,qDAAqD;AAErD,sDAAuD;AAIvD;;;;;;GAMG;AACH,IAAY,cA2CX;AA3CD,WAAY,cAAc;IACxB,kDAAkD;IAClD,yDAAW,CAAA;IACX,sIAAsI;IACtI,qEAAkB,CAAA;IAClB;;;;;;;;;;OAUG;IACH,2EAAoB,CAAA;IACpB;;;;OAIG;IACH,yFAA2B,CAAA;IAC3B;;;;OAIG;IACH,4EAAqB,CAAA;IACrB;;;;OAIG;IACH,8FAA8B,CAAA;IAC9B,sGAAsG;IACtG,kEAAiB,CAAA;IACjB;;;;OAIG;IACH,8DAAgB,CAAA;AAClB,CAAC,EA3CW,cAAc,8BAAd,cAAc,QA2CzB;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,CAAiB;IACrD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,+BAAgB,CAAC,OAAO,CAAC;QAC7D,KAAK,cAAc,CAAC,YAAY,CAAC,CAAC,OAAO,+BAAgB,CAAC,aAAa,CAAC;QACxE,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,+BAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,uBAAuB,CAAC,CAAC,OAAO,+BAAgB,CAAC,uBAAuB,CAAC;QAC7F,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC,OAAO,+BAAgB,CAAC,gBAAgB,CAAC;QAC/E,KAAK,cAAc,CAAC,yBAAyB,CAAC,CAAC,OAAO,+BAAgB,CAAC,yBAAyB,CAAC;QACjG,KAAK,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,+BAAgB,CAAC,UAAU,CAAC;QACnE,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,+BAAgB,CAAC,OAAO,CAAC,CAAC,uDAAuD;QACrH;YACE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IACpF,CAAC;AACH,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module iModels\n */\n\n// cspell:ignore NGVD, NAVD, COMPD_CS, PROJCS, GEOGCS\n\nimport { GeoServiceStatus } from \"@itwin/core-bentley\";\nimport { XYZProps } from \"@itwin/core-geometry\";\nimport { GeographicCRSProps } from \"./geometry/CoordinateReferenceSystem\";\n\n/** This enumeration lists all possible status as returned from a coordinate conversion to or from a\n * [[GeographicCRS]] and either another [[GeographicCRS]] or a [[GeodeticDatum]].\n * @see [[GeoConverter]] to perform coordinate conversions.\n * @see [[PointWithStatus]] for the result of a coordinate conversion, including its status code.\n * @public\n * @extensions\n */\nexport enum GeoCoordStatus {\n /** Indicates successful coordinate conversion. */\n Success = 0,\n /** Indicates that the source or target of the conversion is not defined, usually the iModel Geographic Coordinate Reference System.*/\n NoGCSDefined = 100,\n /** This value indicates that the conversion was performed outside of the normal use of application of either Geographic Coordinate Reference Systems.\n * This return value can often be treated as a warning in specific cases. For example, global imagery extent spans the whole globe and\n * may extend far beyond the normal area of the iModel project extents and the extent of normal use of its Geographic Coordinate Reference System.\n * In such cases this value can be considered a warning as accuracy and precision is not expected in this specific case and approximate localization\n * of global imagery or other low accuracy context data is not essential far from the project.\n * If this status is returned for high accuracy data then it indicates that either Geographic Coordinate Reference Systems were inappropriately selected\n * for the iModel or other geolocated data. If this is the case the status should be somehow reported so action\n * can be performed to verify used geolocation parameters.\n * In either case the returned coordinates are to be considered valid though they may be inaccurate or result in some unexpected distortion of graphical\n * elements.\n */\n OutOfUsefulRange = 1,\n /** Indicates a hard error where conversions were requested outside of the area of the mathematical capacity of the conversion process for either\n * Geographic Coordinate Reference Systems involved. An example could be to attempt a conversion involving a Transverse Mercator more than 60 degrees\n * East or West of the projection central meridian.\n * The values returned may or may not be valid and should be discarded.\n */\n OutOfMathematicalDomain = 2,\n /** Indicates that datum transformation between the two Geographic Coordinate Reference Systems could not be performed.\n * This error is usually the result of a datum transformation path requiring use of latitude/longitude grid shift files that could not be obtained\n * or installed. In this case the latitude/longitude transformation is bypassed but the remainder of the conversion process is completed.\n * This error can be ignored for low accuracy data but should be somehow reported so actions can be performed to provide the missing files.\n */\n NoDatumConverter = 25,\n /** Indicates that a problem occurred during vertical datum conversion. This may the result of the inability to access the\n * Geoid separation data or vertical datum differential data (such as used by NGVD29 to NAVD88 conversion).\n * The horizontal coordinates returned are valid but the elevation ordinate will be returned unchanged or partially changed.\n * This status should be somehow reported so actions can be performed to provide the missing information.\n */\n VerticalDatumConvertError = 26,\n /** General inner conversion engine error. Coordinates returned are invalid and should be discarded */\n CSMapError = 4096,\n /** This temporary status is used to mark coordinates for which the conversion has not yet been processed by the backend\n * as opposed to other coordinate conversions that may have been resolved otherwise (typically a cache).\n * At the completion of the conversion promise no coordinates should have this status.\n * @deprecated in 5.0 - will not be removed until after 2026-06-13. Pending is no longer returned as a status for coordinate conversions.\n */\n Pending = -41556,\n}\n\n/** Maps a GeoCoordStatus to the equivalent GeoServiceStatus.\n * @public\n */\nexport function mapToGeoServiceStatus(s: GeoCoordStatus): GeoServiceStatus {\n switch (s) {\n case GeoCoordStatus.Success: return GeoServiceStatus.Success;\n case GeoCoordStatus.NoGCSDefined: return GeoServiceStatus.NoGeoLocation;\n case GeoCoordStatus.OutOfUsefulRange: return GeoServiceStatus.OutOfUsefulRange;\n case GeoCoordStatus.OutOfMathematicalDomain: return GeoServiceStatus.OutOfMathematicalDomain;\n case GeoCoordStatus.NoDatumConverter: return GeoServiceStatus.NoDatumConverter;\n case GeoCoordStatus.VerticalDatumConvertError: return GeoServiceStatus.VerticalDatumConvertError;\n case GeoCoordStatus.CSMapError: return GeoServiceStatus.CSMapError;\n case GeoCoordStatus.Pending: return GeoServiceStatus.Pending; // eslint-disable-line @typescript-eslint/no-deprecated\n default:\n throw new Error(\"GeoCoordStatus -> GeoServiceStatus - Missing enum conversion\");\n }\n}\n\n/** Information required to request conversion of an array of Geographic coordinates (Longitude/Latitude) to iModel coordinates\n * @beta\n */\nexport interface IModelCoordinatesRequestProps {\n source: string;\n geoCoords: XYZProps[];\n}\n\n/** A point converted to iModel coordinates to geographic coordinates or vice-versa by a [[GeoConverter]].\n * The status [[s]] indicates the converted point [[p]]'s degree of accuracy.\n * @public\n */\nexport interface PointWithStatus {\n /** A JSON representation of the converted point. */\n p: XYZProps;\n /** A status code indicating the degree of accuracy with the point [[p]] was converted. */\n s: GeoCoordStatus;\n}\n\n/** @beta */\nexport interface IModelCoordinatesResponseProps {\n iModelCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to request conversion of an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesRequestProps {\n target: string;\n iModelCoords: XYZProps[];\n}\n\n/** Information returned from a request to convert an array of iModel coordinates to Geographic Coordinates (longitude and latitude)\n * @beta\n */\nexport interface GeoCoordinatesResponseProps {\n geoCoords: PointWithStatus[];\n fromCache: number; // the number that were read from the cache rather than calculated.\n}\n\n/** Information required to interpret or complete a Geographic CRS in the specified format.\n * The only currently supported formats are JSON (for completion) and WKT (OGC Well Known Text)\n * @beta\n */\nexport interface GeographicCRSInterpretRequestProps {\n /** The format of the geographic CRS definition provided in the geographicCRSDef property. */\n format: \"WKT\" | \"JSON\";\n /** The geographic CRS definition in the format specified in the format property.\n * Note that when the WKT is used the WKT fragment provided can start with a COMPD_CS clause\n * which should then contain both the horizontal CRS definition as well as the vertical CRS specification.\n * WKT fragments starting with PROJCS or GEOGCS are also supported but the vertical CRS will be assigned a\n * default value.\n */\n geographicCRSDef: string;\n}\n\n/** Information returned from a request to interpret or complete a Geographic CRS\n * @beta\n */\nexport interface GeographicCRSInterpretResponseProps {\n /** The result status of the interpret operation. A value of zero indicates successful interpretation.\n * Any value other than zero is to be considered a hard error and no valid result will\n * be returned in the geographicCRS property.\n */\n status: number;\n /** The property that receives the interpreted geographic CRS if the process was successful. */\n geographicCRS?: GeographicCRSProps;\n}\n"]}
@@ -17,7 +17,9 @@ export declare enum FillDisplay {
17
17
  ByView = 1,
18
18
  /** always fill, even if the fill attribute is off for the viewport */
19
19
  Always = 2,
20
- /** always fill, fill will always be behind other geometry */
20
+ /** always fill, fill will always be behind other geometry belonging to the same element.
21
+ * @note Edge geometry is not produced for shapes with this fill type. If you want an outline, add it as separate geometry.
22
+ */
21
23
  Blanking = 3
22
24
  }
23
25
  /** Describes how a view's background color affects the interior area of a closed region.
@@ -1 +1 @@
1
- {"version":3,"file":"GeometryParams.d.ts","sourceRoot":"","sources":["../../src/GeometryParams.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAQ,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC;;;GAGG;AACH,oBAAY,WAAW;IACrB,gEAAgE;IAChE,KAAK,IAAI;IACT,wDAAwD;IACxD,MAAM,IAAI;IACV,sEAAsE;IACtE,MAAM,IAAI;IACV,6DAA6D;IAC7D,QAAQ,IAAI;CACb;AAED;;;GAGG;AACH,oBAAY,cAAc;IACxB,kGAAkG;IAClG,IAAI,IAAI;IACR,8EAA8E;IAC9E,KAAK,IAAI;IACT,gGAAgG;IAChG,OAAO,IAAI;CACZ;AAED;;;;;;GAMG;AACH,oBAAY,aAAa;IACvB,kGAAkG;IAClG,OAAO,IAAI;IACX,qHAAqH;IACrH,YAAY,IAAI;IAChB,mFAAmF;IACnF,SAAS,IAAI;IACb,mGAAmG;IACnG,OAAO,IAAI;CACZ;AAED;;;GAGG;AACH,qBAAa,cAAc;IA+DN,UAAU,EAAE,UAAU;IAAS,aAAa;IA9D/D;;OAEG;IACI,UAAU,CAAC,EAAE,UAAU,CAAC;IAC/B;;OAEG;IACI,WAAW,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACI,MAAM,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACI,SAAS,CAAC,EAAE,QAAQ,CAAC;IAC5B;;;OAGG;IACI,SAAS,CAAC,EAAE,QAAQ,CAAC;IAC5B;;OAEG;IACI,cAAc,CAAC,EAAE,cAAc,CAAC;IACvC;;;OAGG;IACI,WAAW,CAAC,EAAE,WAAW,CAAC;IACjC;;;OAGG;IACI,eAAe,CAAC,EAAE,MAAM,CAAC;IAChC;;;OAGG;IACI,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACjC;;OAEG;IACI,aAAa,CAAC,EAAE,aAAa,CAAC;IACrC;;OAEG;IACI,SAAS,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC;IAClC;;OAEG;IACI,QAAQ,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC;IAChC;;OAEG;IACI,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC;IAEpC;;;;OAIG;gBACgB,UAAU,EAAE,UAAU,EAAS,aAAa,SAAe;IAKvE,KAAK,IAAI,cAAc;IAkB9B,wGAAwG;IACjG,eAAe;IAgBtB,6JAA6J;IACtJ,YAAY,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO;IA8DnD,oLAAoL;IAC7K,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,wBAAwB,UAAO;IAO5E,gHAAgH;IACzG,gBAAgB,CAAC,aAAa,EAAE,UAAU,EAAE,wBAAwB,UAAO;CAKnF"}
1
+ {"version":3,"file":"GeometryParams.d.ts","sourceRoot":"","sources":["../../src/GeometryParams.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAQ,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC;;;GAGG;AACH,oBAAY,WAAW;IACrB,gEAAgE;IAChE,KAAK,IAAI;IACT,wDAAwD;IACxD,MAAM,IAAI;IACV,sEAAsE;IACtE,MAAM,IAAI;IACV;;OAEG;IACH,QAAQ,IAAI;CACb;AAED;;;GAGG;AACH,oBAAY,cAAc;IACxB,kGAAkG;IAClG,IAAI,IAAI;IACR,8EAA8E;IAC9E,KAAK,IAAI;IACT,gGAAgG;IAChG,OAAO,IAAI;CACZ;AAED;;;;;;GAMG;AACH,oBAAY,aAAa;IACvB,kGAAkG;IAClG,OAAO,IAAI;IACX,qHAAqH;IACrH,YAAY,IAAI;IAChB,mFAAmF;IACnF,SAAS,IAAI;IACb,mGAAmG;IACnG,OAAO,IAAI;CACZ;AAED;;;GAGG;AACH,qBAAa,cAAc;IA+DN,UAAU,EAAE,UAAU;IAAS,aAAa;IA9D/D;;OAEG;IACI,UAAU,CAAC,EAAE,UAAU,CAAC;IAC/B;;OAEG;IACI,WAAW,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACI,MAAM,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACI,SAAS,CAAC,EAAE,QAAQ,CAAC;IAC5B;;;OAGG;IACI,SAAS,CAAC,EAAE,QAAQ,CAAC;IAC5B;;OAEG;IACI,cAAc,CAAC,EAAE,cAAc,CAAC;IACvC;;;OAGG;IACI,WAAW,CAAC,EAAE,WAAW,CAAC;IACjC;;;OAGG;IACI,eAAe,CAAC,EAAE,MAAM,CAAC;IAChC;;;OAGG;IACI,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACjC;;OAEG;IACI,aAAa,CAAC,EAAE,aAAa,CAAC;IACrC;;OAEG;IACI,SAAS,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC;IAClC;;OAEG;IACI,QAAQ,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC;IAChC;;OAEG;IACI,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC;IAEpC;;;;OAIG;gBACgB,UAAU,EAAE,UAAU,EAAS,aAAa,SAAe;IAKvE,KAAK,IAAI,cAAc;IAkB9B,wGAAwG;IACjG,eAAe;IAgBtB,6JAA6J;IACtJ,YAAY,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO;IA8DnD,oLAAoL;IAC7K,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,wBAAwB,UAAO;IAO5E,gHAAgH;IACzG,gBAAgB,CAAC,aAAa,EAAE,UAAU,EAAE,wBAAwB,UAAO;CAKnF"}
@@ -22,7 +22,9 @@ var FillDisplay;
22
22
  FillDisplay[FillDisplay["ByView"] = 1] = "ByView";
23
23
  /** always fill, even if the fill attribute is off for the viewport */
24
24
  FillDisplay[FillDisplay["Always"] = 2] = "Always";
25
- /** always fill, fill will always be behind other geometry */
25
+ /** always fill, fill will always be behind other geometry belonging to the same element.
26
+ * @note Edge geometry is not produced for shapes with this fill type. If you want an outline, add it as separate geometry.
27
+ */
26
28
  FillDisplay[FillDisplay["Blanking"] = 3] = "Blanking";
27
29
  })(FillDisplay || (exports.FillDisplay = FillDisplay = {}));
28
30
  /** Describes how a view's background color affects the interior area of a closed region.
@@ -1 +1 @@
1
- {"version":3,"file":"GeometryParams.js","sourceRoot":"","sources":["../../src/GeometryParams.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Symbology\n */\n\nimport { Id64, Id64String } from \"@itwin/core-bentley\";\nimport { ColorDef } from \"./ColorDef\";\nimport { AreaPattern } from \"./geometry/AreaPattern\";\nimport { LineStyle } from \"./geometry/LineStyle\";\nimport { Gradient } from \"./Gradient\";\nimport { IModel } from \"./IModel\";\n\n/** Whether a closed region should be drawn for wireframe display with its internal area filled or not.\n * @public\n * @extensions\n */\nexport enum FillDisplay {\n /** don't fill, even if fill attribute is on for the viewport */\n Never = 0,\n /** fill if the fill attribute is on for the viewport */\n ByView = 1,\n /** always fill, even if the fill attribute is off for the viewport */\n Always = 2,\n /** always fill, fill will always be behind other geometry */\n Blanking = 3,\n}\n\n/** Describes how a view's background color affects the interior area of a closed region.\n * @public\n * @extensions\n */\nexport enum BackgroundFill {\n /** single color fill uses the fill color and line color to draw either a solid or outline fill */\n None = 0,\n /** single color fill uses the view's background color to draw a solid fill */\n Solid = 1,\n /** single color fill uses the view's background color and line color to draw an outline fill */\n Outline = 2,\n}\n\n/** Categorizes a piece of geometry within a GeometryStream. Visibility of classes of geometry can be toggled\n * within a view using [[ViewFlags]].\n * @see [[GeometryStreamProps]].\n * @see [[Feature]].\n * @public\n * @extensions\n */\nexport enum GeometryClass {\n /** Used to classify the \"real\" geometry within a model. Most geometry falls within this class. */\n Primary = 0,\n /** Used to classify geometry used as a drawing aid in constructing the Primary geometry. For example, grid lines. */\n Construction = 1,\n /** Used to classify annotations which dimension (measure) the Primary geometry. */\n Dimension = 2,\n /** Used to classify geometry used to fill planar regions with a 2d pattern (e.g., hatch lines). */\n Pattern = 3,\n}\n\n/** Describes the display properties of graphics in a persistent element's GeometryStream that aren't inherited from [[SubCategoryAppearance]].\n * @see [[GeometryStreamProps]].\n * @public\n */\nexport class GeometryParams {\n /** Optional render material to override [[SubCategoryAppearance.materialId]].\n * Specify an invalid [[Id64]] to override [[SubCategoryAppearance.materialId]] with no material.\n */\n public materialId?: Id64String;\n /** Optional display priority added to [[SubCategoryAppearance.priority]].\n * The net display priority value is used to control z ordering when drawing to 2d views.\n */\n public elmPriority?: number;\n /** Optional line weight to override [[SubCategoryAppearance.weight]].\n * The weight is an integer in the range of [0,31] that by default corresponds to a pixel width of weight+1.\n */\n public weight?: number;\n /** Optional line color to override [[SubCategoryAppearance.color]].\n * The transparency component is ignored and should instead be specified using [[elmTransparency]].\n */\n public lineColor?: ColorDef;\n /** Optional fill color for region interiors. Set the same as [[lineColor]] for an opaque fill.\n * Valid when [[fillDisplay]] is not [[FillDisplay.Never]], [[gradient]] is undefined, and [[backgroundFill]] is [[BackgroundFill.None]].\n * The transparency component is ignored and should instead be specified using [[fillTransparency]].\n */\n public fillColor?: ColorDef;\n /** Optional fill using the current view background color for region interiors.\n * Valid when [[fillDisplay]] is not [[FillDisplay.Never]] and [[gradient]] is undefined. Default is [[BackgroundFill.None]].\n */\n public backgroundFill?: BackgroundFill;\n /** Optional fill specification that determines when and if a region interior will display using [[gradient]], [[backgroundFill]], or [[fillColor]] in that order of preference.\n * Fill only applies to [[RenderMode.Wireframe]] views. In a [[RenderMode.SmoothShade]] or [[RenderMode.SolidFill]] view, regions will always display as surfaces preferring [[fillColor]] when present over [[lineColor]].\n * Default is [[FillDisplay.Never]].\n */\n public fillDisplay?: FillDisplay;\n /** Optional line color transparency to combine with [[SubCategoryAppearance.transparency]].\n * Transparency values are combined by multiplying the opaqueness. A 50% transparent element on a 50% transparent sub-category creates a 75% transparent result (1 - ((1 - .5) * (1 - .5)) = 0.75).\n * Value range is [0.0,1.0]. Pass 0.0 for completely opaque and 1.0 for completely transparent.\n */\n public elmTransparency?: number;\n /** Optional fill color transparency to combine with [[SubCategoryAppearance.transparency]].\n * Transparency values are combined by multiplying the opaqueness. A 50% transparent fill on a 50% transparent sub-category creates a 75% transparent result (1 - ((1 - .5) * (1 - .5)) = 0.75).\n * Value range is [0.0,1.0]. Pass 0.0 for completely opaque, 1.0 for completely transparent, or leave undefined to use [[elmTransparency]].\n */\n public fillTransparency?: number;\n /** Optional geometry classification that can be toggled off with a [[ViewFlags]] independent of [[SubCategoryAppearance.invisible]].\n * Default is [[GeometryClass.Primary]].\n */\n public geometryClass?: GeometryClass;\n /** Optional line style to override [[SubCategoryAppearance.styleId]] plus modifiers to override the line style definition.\n * Specify an invalid [[Id64]] to override [[SubCategoryAppearance.styleId]] with a solid line.\n */\n public styleInfo?: LineStyle.Info;\n /** Optional gradient fill settings for region interiors.\n * Valid when [[fillDisplay]] is not [[FillDisplay.Never]].\n */\n public gradient?: Gradient.Symb;\n /** Optional area pattern settings for region interiors.\n * Independent of fill, a region can have both fill and pattern.\n */\n public pattern?: AreaPattern.Params;\n\n /** Create a GeometryParams given a [[Category]] Id for a [[GeometricElement]] and optional [[SubCategory]] Id. The [[SubCategory.appearance]] establishes the non-overriden display properties of\n * graphics in a GeometricElement's [[GeometryStreamProps]]. A GeometricElement refers to a single Category through [[GeometricElement.category]], while it's graphics can appear on multiple SubCategories\n * by adding a [[GeometryAppearanceProps]] with a SubCategory change to the GeometryStream.\n * @note If a valid SubCategory Id is not supplied, the default SubCategory for the parent Category is used. To be considered valid, [[SubCategory.getCategoryId]] must refer to the specified Category Id.\n */\n constructor(public categoryId: Id64String, public subCategoryId = Id64.invalid) {\n if (!Id64.isValid(subCategoryId))\n this.subCategoryId = IModel.getDefaultSubCategoryId(categoryId);\n }\n\n public clone(): GeometryParams {\n const retVal = new GeometryParams(this.categoryId, this.subCategoryId);\n retVal.materialId = this.materialId;\n retVal.elmPriority = this.elmPriority;\n retVal.weight = this.weight;\n retVal.lineColor = this.lineColor;\n retVal.fillColor = this.fillColor;\n retVal.backgroundFill = this.backgroundFill;\n retVal.fillDisplay = this.fillDisplay;\n retVal.elmTransparency = this.elmTransparency;\n retVal.fillTransparency = this.fillTransparency;\n retVal.geometryClass = this.geometryClass;\n retVal.styleInfo = this.styleInfo ? this.styleInfo.clone() : undefined;\n retVal.gradient = this.gradient ? this.gradient.clone() : undefined;\n retVal.pattern = this.pattern ? this.pattern.clone() : undefined;\n return retVal;\n }\n\n /** Clears [[SubCategoryAppearance]] overrides while preserving [[categoryId]] and [[subCategoryId]]. */\n public resetAppearance() {\n this.materialId = undefined;\n this.elmPriority = undefined;\n this.weight = undefined;\n this.lineColor = undefined;\n this.fillColor = undefined;\n this.backgroundFill = undefined;\n this.fillDisplay = undefined;\n this.elmTransparency = undefined;\n this.fillTransparency = undefined;\n this.geometryClass = undefined;\n this.styleInfo = undefined;\n this.gradient = undefined;\n this.pattern = undefined;\n }\n\n /** Compare two [[GeometryParams]] for equivalence, i.e. both values are undefined and inherited from [[SubCategoryAppearance]] or have the same override. */\n public isEquivalent(other: GeometryParams): boolean {\n if (this === other)\n return true; // Same pointer\n\n if (this.categoryId !== other.categoryId)\n return false;\n if (this.subCategoryId !== other.subCategoryId)\n return false;\n if (this.geometryClass !== other.geometryClass)\n return false;\n\n if (this.elmPriority !== other.elmPriority)\n return false;\n if (this.elmTransparency !== other.elmTransparency)\n return false;\n if (this.fillTransparency !== other.fillTransparency)\n return false;\n\n if ((this.lineColor === undefined) !== (other.lineColor === undefined))\n return false;\n if (this.lineColor && !this.lineColor.equals(other.lineColor!))\n return false;\n\n if (this.weight !== other.weight)\n return false;\n\n if ((this.materialId === undefined) !== (other.materialId === undefined))\n return false;\n if (this.materialId && this.materialId !== other.materialId!)\n return false;\n\n if ((this.styleInfo === undefined) !== (other.styleInfo === undefined))\n return false;\n if (this.styleInfo && !this.styleInfo.equals(other.styleInfo!))\n return false;\n\n if (this.fillDisplay !== other.fillDisplay)\n return false;\n\n if (this.fillDisplay !== undefined && this.fillDisplay !== FillDisplay.Never) {\n if ((this.gradient === undefined) !== (other.gradient === undefined))\n return false;\n if (this.gradient && !this.gradient.equals(other.gradient!))\n return false;\n if (this.backgroundFill !== other.backgroundFill)\n return false;\n if (this.backgroundFill === undefined || this.backgroundFill === BackgroundFill.None) {\n if ((this.fillColor === undefined) !== (other.fillColor === undefined))\n return false;\n if (this.fillColor && !this.fillColor.equals(other.fillColor!))\n return false;\n }\n }\n\n if ((this.pattern === undefined) !== (other.pattern === undefined))\n return false;\n if (this.pattern && !this.pattern.equals(other.pattern!))\n return false;\n\n return true;\n }\n\n /** Change [[categoryId]] to the supplied id, [[subCategoryId]] to the supplied category's the default subCategory, and optionally clear any [[SubCategoryAppearance]] overrides. */\n public setCategoryId(categoryId: Id64String, clearAppearanceOverrides = true) {\n this.categoryId = categoryId;\n this.subCategoryId = IModel.getDefaultSubCategoryId(categoryId);\n if (clearAppearanceOverrides)\n this.resetAppearance();\n }\n\n /** Change [[subCategoryId]] to the supplied id and optionally clear any [[SubCategoryAppearance]] overrides. */\n public setSubCategoryId(subCategoryId: Id64String, clearAppearanceOverrides = true) {\n this.subCategoryId = subCategoryId;\n if (clearAppearanceOverrides)\n this.resetAppearance();\n }\n}\n"]}
1
+ {"version":3,"file":"GeometryParams.js","sourceRoot":"","sources":["../../src/GeometryParams.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Symbology\n */\n\nimport { Id64, Id64String } from \"@itwin/core-bentley\";\nimport { ColorDef } from \"./ColorDef\";\nimport { AreaPattern } from \"./geometry/AreaPattern\";\nimport { LineStyle } from \"./geometry/LineStyle\";\nimport { Gradient } from \"./Gradient\";\nimport { IModel } from \"./IModel\";\n\n/** Whether a closed region should be drawn for wireframe display with its internal area filled or not.\n * @public\n * @extensions\n */\nexport enum FillDisplay {\n /** don't fill, even if fill attribute is on for the viewport */\n Never = 0,\n /** fill if the fill attribute is on for the viewport */\n ByView = 1,\n /** always fill, even if the fill attribute is off for the viewport */\n Always = 2,\n /** always fill, fill will always be behind other geometry belonging to the same element.\n * @note Edge geometry is not produced for shapes with this fill type. If you want an outline, add it as separate geometry.\n */\n Blanking = 3,\n}\n\n/** Describes how a view's background color affects the interior area of a closed region.\n * @public\n * @extensions\n */\nexport enum BackgroundFill {\n /** single color fill uses the fill color and line color to draw either a solid or outline fill */\n None = 0,\n /** single color fill uses the view's background color to draw a solid fill */\n Solid = 1,\n /** single color fill uses the view's background color and line color to draw an outline fill */\n Outline = 2,\n}\n\n/** Categorizes a piece of geometry within a GeometryStream. Visibility of classes of geometry can be toggled\n * within a view using [[ViewFlags]].\n * @see [[GeometryStreamProps]].\n * @see [[Feature]].\n * @public\n * @extensions\n */\nexport enum GeometryClass {\n /** Used to classify the \"real\" geometry within a model. Most geometry falls within this class. */\n Primary = 0,\n /** Used to classify geometry used as a drawing aid in constructing the Primary geometry. For example, grid lines. */\n Construction = 1,\n /** Used to classify annotations which dimension (measure) the Primary geometry. */\n Dimension = 2,\n /** Used to classify geometry used to fill planar regions with a 2d pattern (e.g., hatch lines). */\n Pattern = 3,\n}\n\n/** Describes the display properties of graphics in a persistent element's GeometryStream that aren't inherited from [[SubCategoryAppearance]].\n * @see [[GeometryStreamProps]].\n * @public\n */\nexport class GeometryParams {\n /** Optional render material to override [[SubCategoryAppearance.materialId]].\n * Specify an invalid [[Id64]] to override [[SubCategoryAppearance.materialId]] with no material.\n */\n public materialId?: Id64String;\n /** Optional display priority added to [[SubCategoryAppearance.priority]].\n * The net display priority value is used to control z ordering when drawing to 2d views.\n */\n public elmPriority?: number;\n /** Optional line weight to override [[SubCategoryAppearance.weight]].\n * The weight is an integer in the range of [0,31] that by default corresponds to a pixel width of weight+1.\n */\n public weight?: number;\n /** Optional line color to override [[SubCategoryAppearance.color]].\n * The transparency component is ignored and should instead be specified using [[elmTransparency]].\n */\n public lineColor?: ColorDef;\n /** Optional fill color for region interiors. Set the same as [[lineColor]] for an opaque fill.\n * Valid when [[fillDisplay]] is not [[FillDisplay.Never]], [[gradient]] is undefined, and [[backgroundFill]] is [[BackgroundFill.None]].\n * The transparency component is ignored and should instead be specified using [[fillTransparency]].\n */\n public fillColor?: ColorDef;\n /** Optional fill using the current view background color for region interiors.\n * Valid when [[fillDisplay]] is not [[FillDisplay.Never]] and [[gradient]] is undefined. Default is [[BackgroundFill.None]].\n */\n public backgroundFill?: BackgroundFill;\n /** Optional fill specification that determines when and if a region interior will display using [[gradient]], [[backgroundFill]], or [[fillColor]] in that order of preference.\n * Fill only applies to [[RenderMode.Wireframe]] views. In a [[RenderMode.SmoothShade]] or [[RenderMode.SolidFill]] view, regions will always display as surfaces preferring [[fillColor]] when present over [[lineColor]].\n * Default is [[FillDisplay.Never]].\n */\n public fillDisplay?: FillDisplay;\n /** Optional line color transparency to combine with [[SubCategoryAppearance.transparency]].\n * Transparency values are combined by multiplying the opaqueness. A 50% transparent element on a 50% transparent sub-category creates a 75% transparent result (1 - ((1 - .5) * (1 - .5)) = 0.75).\n * Value range is [0.0,1.0]. Pass 0.0 for completely opaque and 1.0 for completely transparent.\n */\n public elmTransparency?: number;\n /** Optional fill color transparency to combine with [[SubCategoryAppearance.transparency]].\n * Transparency values are combined by multiplying the opaqueness. A 50% transparent fill on a 50% transparent sub-category creates a 75% transparent result (1 - ((1 - .5) * (1 - .5)) = 0.75).\n * Value range is [0.0,1.0]. Pass 0.0 for completely opaque, 1.0 for completely transparent, or leave undefined to use [[elmTransparency]].\n */\n public fillTransparency?: number;\n /** Optional geometry classification that can be toggled off with a [[ViewFlags]] independent of [[SubCategoryAppearance.invisible]].\n * Default is [[GeometryClass.Primary]].\n */\n public geometryClass?: GeometryClass;\n /** Optional line style to override [[SubCategoryAppearance.styleId]] plus modifiers to override the line style definition.\n * Specify an invalid [[Id64]] to override [[SubCategoryAppearance.styleId]] with a solid line.\n */\n public styleInfo?: LineStyle.Info;\n /** Optional gradient fill settings for region interiors.\n * Valid when [[fillDisplay]] is not [[FillDisplay.Never]].\n */\n public gradient?: Gradient.Symb;\n /** Optional area pattern settings for region interiors.\n * Independent of fill, a region can have both fill and pattern.\n */\n public pattern?: AreaPattern.Params;\n\n /** Create a GeometryParams given a [[Category]] Id for a [[GeometricElement]] and optional [[SubCategory]] Id. The [[SubCategory.appearance]] establishes the non-overriden display properties of\n * graphics in a GeometricElement's [[GeometryStreamProps]]. A GeometricElement refers to a single Category through [[GeometricElement.category]], while it's graphics can appear on multiple SubCategories\n * by adding a [[GeometryAppearanceProps]] with a SubCategory change to the GeometryStream.\n * @note If a valid SubCategory Id is not supplied, the default SubCategory for the parent Category is used. To be considered valid, [[SubCategory.getCategoryId]] must refer to the specified Category Id.\n */\n constructor(public categoryId: Id64String, public subCategoryId = Id64.invalid) {\n if (!Id64.isValid(subCategoryId))\n this.subCategoryId = IModel.getDefaultSubCategoryId(categoryId);\n }\n\n public clone(): GeometryParams {\n const retVal = new GeometryParams(this.categoryId, this.subCategoryId);\n retVal.materialId = this.materialId;\n retVal.elmPriority = this.elmPriority;\n retVal.weight = this.weight;\n retVal.lineColor = this.lineColor;\n retVal.fillColor = this.fillColor;\n retVal.backgroundFill = this.backgroundFill;\n retVal.fillDisplay = this.fillDisplay;\n retVal.elmTransparency = this.elmTransparency;\n retVal.fillTransparency = this.fillTransparency;\n retVal.geometryClass = this.geometryClass;\n retVal.styleInfo = this.styleInfo ? this.styleInfo.clone() : undefined;\n retVal.gradient = this.gradient ? this.gradient.clone() : undefined;\n retVal.pattern = this.pattern ? this.pattern.clone() : undefined;\n return retVal;\n }\n\n /** Clears [[SubCategoryAppearance]] overrides while preserving [[categoryId]] and [[subCategoryId]]. */\n public resetAppearance() {\n this.materialId = undefined;\n this.elmPriority = undefined;\n this.weight = undefined;\n this.lineColor = undefined;\n this.fillColor = undefined;\n this.backgroundFill = undefined;\n this.fillDisplay = undefined;\n this.elmTransparency = undefined;\n this.fillTransparency = undefined;\n this.geometryClass = undefined;\n this.styleInfo = undefined;\n this.gradient = undefined;\n this.pattern = undefined;\n }\n\n /** Compare two [[GeometryParams]] for equivalence, i.e. both values are undefined and inherited from [[SubCategoryAppearance]] or have the same override. */\n public isEquivalent(other: GeometryParams): boolean {\n if (this === other)\n return true; // Same pointer\n\n if (this.categoryId !== other.categoryId)\n return false;\n if (this.subCategoryId !== other.subCategoryId)\n return false;\n if (this.geometryClass !== other.geometryClass)\n return false;\n\n if (this.elmPriority !== other.elmPriority)\n return false;\n if (this.elmTransparency !== other.elmTransparency)\n return false;\n if (this.fillTransparency !== other.fillTransparency)\n return false;\n\n if ((this.lineColor === undefined) !== (other.lineColor === undefined))\n return false;\n if (this.lineColor && !this.lineColor.equals(other.lineColor!))\n return false;\n\n if (this.weight !== other.weight)\n return false;\n\n if ((this.materialId === undefined) !== (other.materialId === undefined))\n return false;\n if (this.materialId && this.materialId !== other.materialId!)\n return false;\n\n if ((this.styleInfo === undefined) !== (other.styleInfo === undefined))\n return false;\n if (this.styleInfo && !this.styleInfo.equals(other.styleInfo!))\n return false;\n\n if (this.fillDisplay !== other.fillDisplay)\n return false;\n\n if (this.fillDisplay !== undefined && this.fillDisplay !== FillDisplay.Never) {\n if ((this.gradient === undefined) !== (other.gradient === undefined))\n return false;\n if (this.gradient && !this.gradient.equals(other.gradient!))\n return false;\n if (this.backgroundFill !== other.backgroundFill)\n return false;\n if (this.backgroundFill === undefined || this.backgroundFill === BackgroundFill.None) {\n if ((this.fillColor === undefined) !== (other.fillColor === undefined))\n return false;\n if (this.fillColor && !this.fillColor.equals(other.fillColor!))\n return false;\n }\n }\n\n if ((this.pattern === undefined) !== (other.pattern === undefined))\n return false;\n if (this.pattern && !this.pattern.equals(other.pattern!))\n return false;\n\n return true;\n }\n\n /** Change [[categoryId]] to the supplied id, [[subCategoryId]] to the supplied category's the default subCategory, and optionally clear any [[SubCategoryAppearance]] overrides. */\n public setCategoryId(categoryId: Id64String, clearAppearanceOverrides = true) {\n this.categoryId = categoryId;\n this.subCategoryId = IModel.getDefaultSubCategoryId(categoryId);\n if (clearAppearanceOverrides)\n this.resetAppearance();\n }\n\n /** Change [[subCategoryId]] to the supplied id and optionally clear any [[SubCategoryAppearance]] overrides. */\n public setSubCategoryId(subCategoryId: Id64String, clearAppearanceOverrides = true) {\n this.subCategoryId = subCategoryId;\n if (clearAppearanceOverrides)\n this.resetAppearance();\n }\n}\n"]}
@@ -18,6 +18,7 @@ export declare enum FillFlags {
18
18
  Always = 2,
19
19
  /** Render the fill behind other geometry belonging to the same element.
20
20
  * For example if an element's geometry contains text with background fill, the text always renders in front of the fill.
21
+ * @note [GraphicBuilder]($frontend) will not produce edge geometry for shapes with this fill flag. If you want an outline, add it separately.
21
22
  */
22
23
  Behind = 4,
23
24
  /** Combines Behind and Always flags. */
@@ -1 +1 @@
1
- {"version":3,"file":"GraphicParams.d.ts","sourceRoot":"","sources":["../../src/GraphicParams.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;GAGG;AACH,oBAAY,SAAS;IACnB,cAAc;IACd,IAAI,IAAI;IACR,qFAAqF;IACrF,MAAM,IAAS;IACf,2FAA2F;IAC3F,MAAM,IAAS;IACf;;OAEG;IACH,MAAM,IAAS;IACf,wCAAwC;IACxC,QAAQ,IAAkB;IAC1B,2EAA2E;IAC3E,UAAU,IAAS;CACpB;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,yEAAyE;IAClE,SAAS,YAAkB;IAClC,oDAAoD;IAC7C,UAAU,aAAoB;IACrC,gGAAgG;IACzF,WAAW,SAAK;IACvB,qCAAqC;IAC9B,SAAS,WAAkB;IAClC,6BAA6B;IACtB,SAAS,WAAkB;IAClC,oCAAoC;IAC7B,QAAQ,CAAC,EAAE,cAAc,CAAC;IACjC,yCAAyC;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC;IAEhC,6FAA6F;IACtF,mBAAmB,CAAC,YAAY,EAAE,MAAM;IAE/C,6FAA6F;IACtF,mBAAmB,CAAC,YAAY,EAAE,MAAM;IAExC,KAAK,CAAC,GAAG,CAAC,EAAE,aAAa,GAAG,aAAa;IAchD,6EAA6E;WAC/D,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,aAAmB,GAAG,aAAa;IAStI;;OAEG;WACW,gBAAgB,CAAC,SAAS,EAAE,QAAQ,GAAG,aAAa;CAMnE"}
1
+ {"version":3,"file":"GraphicParams.d.ts","sourceRoot":"","sources":["../../src/GraphicParams.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;GAGG;AACH,oBAAY,SAAS;IACnB,cAAc;IACd,IAAI,IAAI;IACR,qFAAqF;IACrF,MAAM,IAAS;IACf,2FAA2F;IAC3F,MAAM,IAAS;IACf;;;OAGG;IACH,MAAM,IAAS;IACf,wCAAwC;IACxC,QAAQ,IAAkB;IAC1B,2EAA2E;IAC3E,UAAU,IAAS;CACpB;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,yEAAyE;IAClE,SAAS,YAAkB;IAClC,oDAAoD;IAC7C,UAAU,aAAoB;IACrC,gGAAgG;IACzF,WAAW,SAAK;IACvB,qCAAqC;IAC9B,SAAS,WAAkB;IAClC,6BAA6B;IACtB,SAAS,WAAkB;IAClC,oCAAoC;IAC7B,QAAQ,CAAC,EAAE,cAAc,CAAC;IACjC,yCAAyC;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC;IAEhC,6FAA6F;IACtF,mBAAmB,CAAC,YAAY,EAAE,MAAM;IAE/C,6FAA6F;IACtF,mBAAmB,CAAC,YAAY,EAAE,MAAM;IAExC,KAAK,CAAC,GAAG,CAAC,EAAE,aAAa,GAAG,aAAa;IAchD,6EAA6E;WAC/D,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,aAAmB,GAAG,aAAa;IAStI;;OAEG;WACW,gBAAgB,CAAC,SAAS,EAAE,QAAQ,GAAG,aAAa;CAMnE"}
@@ -24,6 +24,7 @@ var FillFlags;
24
24
  FillFlags[FillFlags["Always"] = 2] = "Always";
25
25
  /** Render the fill behind other geometry belonging to the same element.
26
26
  * For example if an element's geometry contains text with background fill, the text always renders in front of the fill.
27
+ * @note [GraphicBuilder]($frontend) will not produce edge geometry for shapes with this fill flag. If you want an outline, add it separately.
27
28
  */
28
29
  FillFlags[FillFlags["Behind"] = 4] = "Behind";
29
30
  /** Combines Behind and Always flags. */
@@ -1 +1 @@
1
- {"version":3,"file":"GraphicParams.js","sourceRoot":"","sources":["../../src/GraphicParams.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,yCAAsC;AAEtC,6CAA0C;AAG1C;;;GAGG;AACH,IAAY,SAeX;AAfD,WAAY,SAAS;IACnB,cAAc;IACd,yCAAQ,CAAA;IACR,qFAAqF;IACrF,6CAAe,CAAA;IACf,2FAA2F;IAC3F,6CAAe,CAAA;IACf;;OAEG;IACH,6CAAe,CAAA;IACf,wCAAwC;IACxC,iDAA0B,CAAA;IAC1B,2EAA2E;IAC3E,qDAAmB,CAAA;AACrB,CAAC,EAfW,SAAS,yBAAT,SAAS,QAepB;AAED;;;GAGG;AACH,MAAa,aAAa;IACxB,yEAAyE;IAClE,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;IAClC,oDAAoD;IAC7C,UAAU,GAAG,uBAAU,CAAC,KAAK,CAAC;IACrC,gGAAgG;IACzF,WAAW,GAAG,CAAC,CAAC;IACvB,qCAAqC;IAC9B,SAAS,GAAG,mBAAQ,CAAC,KAAK,CAAC;IAClC,6BAA6B;IACtB,SAAS,GAAG,mBAAQ,CAAC,KAAK,CAAC;IAClC,oCAAoC;IAC7B,QAAQ,CAAkB;IACjC,yCAAyC;IAClC,QAAQ,CAAiB;IAEhC,6FAA6F;IACtF,mBAAmB,CAAC,YAAoB,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAEpH,6FAA6F;IACtF,mBAAmB,CAAC,YAAoB,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAE7G,KAAK,CAAC,GAAmB;QAC9B,GAAG,GAAG,GAAG,IAAI,IAAI,aAAa,EAAE,CAAC;QAEjC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACjC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACnC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7B,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAE7B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,6EAA6E;IACtE,MAAM,CAAC,aAAa,CAAC,SAAmB,EAAE,SAAmB,EAAE,SAAiB,EAAE,UAAU,GAAG,uBAAU,CAAC,KAAK;QACpH,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;QACpC,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;QACpC,aAAa,CAAC,WAAW,GAAG,SAAS,CAAC;QACtC,aAAa,CAAC,UAAU,GAAG,UAAU,CAAC;QACtC,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,gBAAgB,CAAC,SAAmB;QAChD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;QACpC,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC;QAC7C,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AAvDD,sCAuDC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Symbology\n */\n\nimport { ColorDef } from \"./ColorDef\";\nimport { Gradient } from \"./Gradient\";\nimport { LinePixels } from \"./LinePixels\";\nimport { RenderMaterial } from \"./RenderMaterial\";\n\n/** Flags indicating whether and how the interiors of closed planar regions is displayed within a view.\n * @public\n * @extensions\n */\nexport enum FillFlags {\n /** No fill */\n None = 0,\n /** Use the element's fill color when fill is enabled in the view's [[ViewFlags]]. */\n ByView = 1 << 0,\n /** Use the element's fill color even when fill is disabled in the view's [[ViewFlags]]. */\n Always = 1 << 1,\n /** Render the fill behind other geometry belonging to the same element.\n * For example if an element's geometry contains text with background fill, the text always renders in front of the fill.\n */\n Behind = 1 << 2,\n /** Combines Behind and Always flags. */\n Blanking = Behind | Always,\n /** Use the view's background color instead of the element's fill color. */\n Background = 1 << 3,\n}\n\n/** The \"cooked\" material and symbology for a [[RenderGraphic]]. This determines the appearance\n * (e.g. texture, color, width, linestyle, etc.) used to draw Geometry.\n * @public\n */\nexport class GraphicParams {\n /** Describes how fill is applied to planar regions in wireframe mode. */\n public fillFlags = FillFlags.None;\n /** The line pattern applied to curves and edges. */\n public linePixels = LinePixels.Solid;\n /** The width, in pixels, of curves and edges. Values are clamped to [1..31] at display time. */\n public rasterWidth = 1;\n /** The color of curves and edges. */\n public lineColor = ColorDef.black;\n /** The color of surfaces. */\n public fillColor = ColorDef.black;\n /** Material applied to surfaces. */\n public material?: RenderMaterial;\n /** Gradient fill applied to surfaces. */\n public gradient?: Gradient.Symb;\n\n /** Set the transparency of the line color, where 0=fully opaque and 255=full transparent. */\n public setLineTransparency(transparency: number) { this.lineColor = this.lineColor.withTransparency(transparency); }\n\n /** Set the transparency of the fill color, where 0=fully opaque and 255=full transparent. */\n public setFillTransparency(transparency: number) { this.fillColor = this.fillColor.withTransparency(transparency); }\n\n public clone(out?: GraphicParams): GraphicParams {\n out = out ?? new GraphicParams();\n\n out.fillFlags = this.fillFlags;\n out.linePixels = this.linePixels;\n out.rasterWidth = this.rasterWidth;\n out.lineColor = this.lineColor;\n out.fillColor = this.fillColor;\n out.material = this.material;\n out.gradient = this.gradient;\n\n return out;\n }\n\n /** Conveniently create a GraphicParams the most commonly-used properties. */\n public static fromSymbology(lineColor: ColorDef, fillColor: ColorDef, lineWidth: number, linePixels = LinePixels.Solid): GraphicParams {\n const graphicParams = new GraphicParams();\n graphicParams.lineColor = lineColor;\n graphicParams.fillColor = fillColor;\n graphicParams.rasterWidth = lineWidth;\n graphicParams.linePixels = linePixels;\n return graphicParams;\n }\n\n /** Create a GraphicParams with blanking fill of the specified color.\n * @see [[FillFlags.Blanking]].\n */\n public static fromBlankingFill(fillColor: ColorDef): GraphicParams {\n const graphicParams = new GraphicParams();\n graphicParams.fillColor = fillColor;\n graphicParams.fillFlags = FillFlags.Blanking;\n return graphicParams;\n }\n}\n"]}
1
+ {"version":3,"file":"GraphicParams.js","sourceRoot":"","sources":["../../src/GraphicParams.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAEH,yCAAsC;AAEtC,6CAA0C;AAG1C;;;GAGG;AACH,IAAY,SAgBX;AAhBD,WAAY,SAAS;IACnB,cAAc;IACd,yCAAQ,CAAA;IACR,qFAAqF;IACrF,6CAAe,CAAA;IACf,2FAA2F;IAC3F,6CAAe,CAAA;IACf;;;OAGG;IACH,6CAAe,CAAA;IACf,wCAAwC;IACxC,iDAA0B,CAAA;IAC1B,2EAA2E;IAC3E,qDAAmB,CAAA;AACrB,CAAC,EAhBW,SAAS,yBAAT,SAAS,QAgBpB;AAED;;;GAGG;AACH,MAAa,aAAa;IACxB,yEAAyE;IAClE,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;IAClC,oDAAoD;IAC7C,UAAU,GAAG,uBAAU,CAAC,KAAK,CAAC;IACrC,gGAAgG;IACzF,WAAW,GAAG,CAAC,CAAC;IACvB,qCAAqC;IAC9B,SAAS,GAAG,mBAAQ,CAAC,KAAK,CAAC;IAClC,6BAA6B;IACtB,SAAS,GAAG,mBAAQ,CAAC,KAAK,CAAC;IAClC,oCAAoC;IAC7B,QAAQ,CAAkB;IACjC,yCAAyC;IAClC,QAAQ,CAAiB;IAEhC,6FAA6F;IACtF,mBAAmB,CAAC,YAAoB,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAEpH,6FAA6F;IACtF,mBAAmB,CAAC,YAAoB,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAE7G,KAAK,CAAC,GAAmB;QAC9B,GAAG,GAAG,GAAG,IAAI,IAAI,aAAa,EAAE,CAAC;QAEjC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACjC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACnC,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7B,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAE7B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,6EAA6E;IACtE,MAAM,CAAC,aAAa,CAAC,SAAmB,EAAE,SAAmB,EAAE,SAAiB,EAAE,UAAU,GAAG,uBAAU,CAAC,KAAK;QACpH,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;QACpC,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;QACpC,aAAa,CAAC,WAAW,GAAG,SAAS,CAAC;QACtC,aAAa,CAAC,UAAU,GAAG,UAAU,CAAC;QACtC,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,gBAAgB,CAAC,SAAmB;QAChD,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;QACpC,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC;QAC7C,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AAvDD,sCAuDC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Symbology\n */\n\nimport { ColorDef } from \"./ColorDef\";\nimport { Gradient } from \"./Gradient\";\nimport { LinePixels } from \"./LinePixels\";\nimport { RenderMaterial } from \"./RenderMaterial\";\n\n/** Flags indicating whether and how the interiors of closed planar regions is displayed within a view.\n * @public\n * @extensions\n */\nexport enum FillFlags {\n /** No fill */\n None = 0,\n /** Use the element's fill color when fill is enabled in the view's [[ViewFlags]]. */\n ByView = 1 << 0,\n /** Use the element's fill color even when fill is disabled in the view's [[ViewFlags]]. */\n Always = 1 << 1,\n /** Render the fill behind other geometry belonging to the same element.\n * For example if an element's geometry contains text with background fill, the text always renders in front of the fill.\n * @note [GraphicBuilder]($frontend) will not produce edge geometry for shapes with this fill flag. If you want an outline, add it separately.\n */\n Behind = 1 << 2,\n /** Combines Behind and Always flags. */\n Blanking = Behind | Always,\n /** Use the view's background color instead of the element's fill color. */\n Background = 1 << 3,\n}\n\n/** The \"cooked\" material and symbology for a [[RenderGraphic]]. This determines the appearance\n * (e.g. texture, color, width, linestyle, etc.) used to draw Geometry.\n * @public\n */\nexport class GraphicParams {\n /** Describes how fill is applied to planar regions in wireframe mode. */\n public fillFlags = FillFlags.None;\n /** The line pattern applied to curves and edges. */\n public linePixels = LinePixels.Solid;\n /** The width, in pixels, of curves and edges. Values are clamped to [1..31] at display time. */\n public rasterWidth = 1;\n /** The color of curves and edges. */\n public lineColor = ColorDef.black;\n /** The color of surfaces. */\n public fillColor = ColorDef.black;\n /** Material applied to surfaces. */\n public material?: RenderMaterial;\n /** Gradient fill applied to surfaces. */\n public gradient?: Gradient.Symb;\n\n /** Set the transparency of the line color, where 0=fully opaque and 255=full transparent. */\n public setLineTransparency(transparency: number) { this.lineColor = this.lineColor.withTransparency(transparency); }\n\n /** Set the transparency of the fill color, where 0=fully opaque and 255=full transparent. */\n public setFillTransparency(transparency: number) { this.fillColor = this.fillColor.withTransparency(transparency); }\n\n public clone(out?: GraphicParams): GraphicParams {\n out = out ?? new GraphicParams();\n\n out.fillFlags = this.fillFlags;\n out.linePixels = this.linePixels;\n out.rasterWidth = this.rasterWidth;\n out.lineColor = this.lineColor;\n out.fillColor = this.fillColor;\n out.material = this.material;\n out.gradient = this.gradient;\n\n return out;\n }\n\n /** Conveniently create a GraphicParams the most commonly-used properties. */\n public static fromSymbology(lineColor: ColorDef, fillColor: ColorDef, lineWidth: number, linePixels = LinePixels.Solid): GraphicParams {\n const graphicParams = new GraphicParams();\n graphicParams.lineColor = lineColor;\n graphicParams.fillColor = fillColor;\n graphicParams.rasterWidth = lineWidth;\n graphicParams.linePixels = linePixels;\n return graphicParams;\n }\n\n /** Create a GraphicParams with blanking fill of the specified color.\n * @see [[FillFlags.Blanking]].\n */\n public static fromBlankingFill(fillColor: ColorDef): GraphicParams {\n const graphicParams = new GraphicParams();\n graphicParams.fillColor = fillColor;\n graphicParams.fillFlags = FillFlags.Blanking;\n return graphicParams;\n }\n}\n"]}
@@ -167,15 +167,15 @@ export interface CreateSnapshotIModelProps {
167
167
  */
168
168
  export type CreateEmptySnapshotIModelProps = CreateIModelProps & CreateSnapshotIModelProps;
169
169
  /** Options that can be supplied when creating standalone iModels.
170
- * @internal
170
+ * @public
171
171
  */
172
172
  export interface CreateStandaloneIModelProps {
173
173
  /** If present, file will allow local editing, but cannot be used to create changesets */
174
174
  readonly allowEdit?: string;
175
175
  }
176
176
  /** The options that can be specified when creating an *empty* standalone iModel.
177
- * @see [standalone.createEmpty]($backend)
178
- * @internal
177
+ * @see [StandaloneDb.createEmpty]($backend)
178
+ * @public
179
179
  */
180
180
  export type CreateEmptyStandaloneIModelProps = CreateIModelProps & CreateStandaloneIModelProps;
181
181
  /**