@itwin/map-layers-formats 3.6.0 → 3.6.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 (174) hide show
  1. package/.rush/temp/operation/build_ci/state.json +1 -1
  2. package/.rush/temp/operation/cover/state.json +1 -1
  3. package/.rush/temp/operation/docs/state.json +1 -1
  4. package/.rush/temp/package-deps_build_ci.json +36 -0
  5. package/.rush/temp/package-deps_cover.json +4 -4
  6. package/.rush/temp/package-deps_docs.json +4 -4
  7. package/.rush/temp/shrinkwrap-deps.json +15 -15
  8. package/CHANGELOG.json +18 -0
  9. package/CHANGELOG.md +16 -1
  10. package/lib/cjs/ArcGisFeature/ArcGisFeatureFormat.d.ts +8 -8
  11. package/lib/cjs/ArcGisFeature/ArcGisFeatureFormat.js +14 -14
  12. package/lib/cjs/ArcGisFeature/ArcGisFeatureFormat.js.map +1 -1
  13. package/lib/cjs/ArcGisFeature/ArcGisFeatureJSON.d.ts +14 -14
  14. package/lib/cjs/ArcGisFeature/ArcGisFeatureJSON.js +134 -134
  15. package/lib/cjs/ArcGisFeature/ArcGisFeatureJSON.js.map +1 -1
  16. package/lib/cjs/ArcGisFeature/ArcGisFeaturePBF.d.ts +14 -14
  17. package/lib/cjs/ArcGisFeature/ArcGisFeaturePBF.js +205 -205
  18. package/lib/cjs/ArcGisFeature/ArcGisFeaturePBF.js.map +1 -1
  19. package/lib/cjs/ArcGisFeature/ArcGisFeatureProvider.d.ts +44 -44
  20. package/lib/cjs/ArcGisFeature/ArcGisFeatureProvider.js +426 -426
  21. package/lib/cjs/ArcGisFeature/ArcGisFeatureProvider.js.map +1 -1
  22. package/lib/cjs/ArcGisFeature/ArcGisFeatureQuery.d.ts +92 -92
  23. package/lib/cjs/ArcGisFeature/ArcGisFeatureQuery.js +82 -82
  24. package/lib/cjs/ArcGisFeature/ArcGisFeatureQuery.js.map +1 -1
  25. package/lib/cjs/ArcGisFeature/ArcGisFeatureReader.d.ts +17 -17
  26. package/lib/cjs/ArcGisFeature/ArcGisFeatureReader.js +33 -33
  27. package/lib/cjs/ArcGisFeature/ArcGisFeatureReader.js.map +1 -1
  28. package/lib/cjs/ArcGisFeature/ArcGisFeatureRenderer.d.ts +32 -32
  29. package/lib/cjs/ArcGisFeature/ArcGisFeatureRenderer.js +142 -142
  30. package/lib/cjs/ArcGisFeature/ArcGisFeatureRenderer.js.map +1 -1
  31. package/lib/cjs/ArcGisFeature/ArcGisFeatureResponse.d.ts +16 -16
  32. package/lib/cjs/ArcGisFeature/ArcGisFeatureResponse.js +43 -43
  33. package/lib/cjs/ArcGisFeature/ArcGisFeatureResponse.js.map +1 -1
  34. package/lib/cjs/ArcGisFeature/ArcGisSymbologyRenderer.d.ts +85 -85
  35. package/lib/cjs/ArcGisFeature/ArcGisSymbologyRenderer.js +192 -192
  36. package/lib/cjs/ArcGisFeature/ArcGisSymbologyRenderer.js.map +1 -1
  37. package/lib/cjs/ArcGisFeature/esriPBuffer.gen.d.ts +1063 -1063
  38. package/lib/cjs/ArcGisFeature/esriPBuffer.gen.js +2270 -2270
  39. package/lib/cjs/ArcGisFeature/esriPBuffer.gen.js.map +1 -1
  40. package/lib/cjs/map-layers-formats.d.ts +8 -8
  41. package/lib/cjs/map-layers-formats.js +24 -24
  42. package/lib/cjs/map-layers-formats.js.map +1 -1
  43. package/lib/cjs/mapLayersFormats.d.ts +10 -10
  44. package/lib/cjs/mapLayersFormats.js +28 -28
  45. package/lib/cjs/mapLayersFormats.js.map +1 -1
  46. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.d.ts +1 -1
  47. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.js +34 -34
  48. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.js.map +1 -1
  49. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureJSON.test.d.ts +1 -1
  50. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureJSON.test.js +161 -161
  51. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureJSON.test.js.map +1 -1
  52. package/lib/cjs/test/ArcGisFeature/ArcGisFeaturePBF.test.d.ts +1 -1
  53. package/lib/cjs/test/ArcGisFeature/ArcGisFeaturePBF.test.js +167 -167
  54. package/lib/cjs/test/ArcGisFeature/ArcGisFeaturePBF.test.js.map +1 -1
  55. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureProvider.test.d.ts +1 -1
  56. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureProvider.test.js +680 -680
  57. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureProvider.test.js.map +1 -1
  58. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureQuery.test.d.ts +1 -1
  59. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureQuery.test.js +103 -103
  60. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureQuery.test.js.map +1 -1
  61. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureRenderer.test.d.ts +1 -1
  62. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureRenderer.test.js +214 -214
  63. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureRenderer.test.js.map +1 -1
  64. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureResponse.test.d.ts +1 -1
  65. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureResponse.test.js +94 -94
  66. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureResponse.test.js.map +1 -1
  67. package/lib/cjs/test/ArcGisFeature/ArcGisSymbologyRenderer.test.d.ts +1 -1
  68. package/lib/cjs/test/ArcGisFeature/ArcGisSymbologyRenderer.test.js +59 -59
  69. package/lib/cjs/test/ArcGisFeature/ArcGisSymbologyRenderer.test.js.map +1 -1
  70. package/lib/cjs/test/ArcGisFeature/Mocks.d.ts +6 -6
  71. package/lib/cjs/test/ArcGisFeature/Mocks.js +18 -18
  72. package/lib/cjs/test/ArcGisFeature/Mocks.js.map +1 -1
  73. package/lib/cjs/test/ArcGisFeature/NewYorkDataset.d.ts +55 -55
  74. package/lib/cjs/test/ArcGisFeature/NewYorkDataset.js +419 -419
  75. package/lib/cjs/test/ArcGisFeature/NewYorkDataset.js.map +1 -1
  76. package/lib/cjs/test/ArcGisFeature/PhillyLandmarksDataset.d.ts +1042 -1042
  77. package/lib/cjs/test/ArcGisFeature/PhillyLandmarksDataset.js +426 -426
  78. package/lib/cjs/test/ArcGisFeature/PhillyLandmarksDataset.js.map +1 -1
  79. package/lib/cjs/test/coverage/.nyc_output/72034554-e901-4bd4-b967-175a695cc5fc.json +1 -0
  80. package/lib/cjs/test/coverage/.nyc_output/processinfo/2346e1fb-eaff-4b76-945e-379d1224f2b4.json +1 -0
  81. package/lib/cjs/test/coverage/.nyc_output/processinfo/{6ccfeaae-8c1c-493c-8422-53d517a02798.json → 72034554-e901-4bd4-b967-175a695cc5fc.json} +1 -1
  82. package/lib/cjs/test/coverage/.nyc_output/processinfo/index.json +1 -1
  83. package/lib/cjs/test/coverage/cobertura-coverage.xml +1 -1
  84. package/lib/cjs/test/coverage/lcov-report/index.html +1 -1
  85. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureFormat.ts.html +1 -1
  86. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureJSON.ts.html +1 -1
  87. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeaturePBF.ts.html +1 -1
  88. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureProvider.ts.html +1 -1
  89. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureQuery.ts.html +1 -1
  90. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureReader.ts.html +1 -1
  91. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureRenderer.ts.html +1 -1
  92. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureResponse.ts.html +1 -1
  93. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisSymbologyRenderer.ts.html +1 -1
  94. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/index.html +1 -1
  95. package/lib/cjs/test/coverage/lcov-report/src/index.html +1 -1
  96. package/lib/cjs/test/coverage/lcov-report/src/map-layers-formats.ts.html +1 -1
  97. package/lib/cjs/test/coverage/lcov-report/src/mapLayersFormats.ts.html +1 -1
  98. package/lib/cjs/tsconfig.tsbuildinfo +1 -1
  99. package/lib/esm/ArcGisFeature/ArcGisFeatureFormat.d.ts +8 -8
  100. package/lib/esm/ArcGisFeature/ArcGisFeatureFormat.js +10 -10
  101. package/lib/esm/ArcGisFeature/ArcGisFeatureFormat.js.map +1 -1
  102. package/lib/esm/ArcGisFeature/ArcGisFeatureJSON.d.ts +14 -14
  103. package/lib/esm/ArcGisFeature/ArcGisFeatureJSON.js +130 -130
  104. package/lib/esm/ArcGisFeature/ArcGisFeatureJSON.js.map +1 -1
  105. package/lib/esm/ArcGisFeature/ArcGisFeaturePBF.d.ts +14 -14
  106. package/lib/esm/ArcGisFeature/ArcGisFeaturePBF.js +201 -201
  107. package/lib/esm/ArcGisFeature/ArcGisFeaturePBF.js.map +1 -1
  108. package/lib/esm/ArcGisFeature/ArcGisFeatureProvider.d.ts +44 -44
  109. package/lib/esm/ArcGisFeature/ArcGisFeatureProvider.js +422 -422
  110. package/lib/esm/ArcGisFeature/ArcGisFeatureProvider.js.map +1 -1
  111. package/lib/esm/ArcGisFeature/ArcGisFeatureQuery.d.ts +92 -92
  112. package/lib/esm/ArcGisFeature/ArcGisFeatureQuery.js +78 -78
  113. package/lib/esm/ArcGisFeature/ArcGisFeatureQuery.js.map +1 -1
  114. package/lib/esm/ArcGisFeature/ArcGisFeatureReader.d.ts +17 -17
  115. package/lib/esm/ArcGisFeature/ArcGisFeatureReader.js +29 -29
  116. package/lib/esm/ArcGisFeature/ArcGisFeatureReader.js.map +1 -1
  117. package/lib/esm/ArcGisFeature/ArcGisFeatureRenderer.d.ts +32 -32
  118. package/lib/esm/ArcGisFeature/ArcGisFeatureRenderer.js +138 -138
  119. package/lib/esm/ArcGisFeature/ArcGisFeatureRenderer.js.map +1 -1
  120. package/lib/esm/ArcGisFeature/ArcGisFeatureResponse.d.ts +16 -16
  121. package/lib/esm/ArcGisFeature/ArcGisFeatureResponse.js +39 -39
  122. package/lib/esm/ArcGisFeature/ArcGisFeatureResponse.js.map +1 -1
  123. package/lib/esm/ArcGisFeature/ArcGisSymbologyRenderer.d.ts +85 -85
  124. package/lib/esm/ArcGisFeature/ArcGisSymbologyRenderer.js +185 -185
  125. package/lib/esm/ArcGisFeature/ArcGisSymbologyRenderer.js.map +1 -1
  126. package/lib/esm/ArcGisFeature/esriPBuffer.gen.d.ts +1063 -1063
  127. package/lib/esm/ArcGisFeature/esriPBuffer.gen.js +2267 -2267
  128. package/lib/esm/ArcGisFeature/esriPBuffer.gen.js.map +1 -1
  129. package/lib/esm/map-layers-formats.d.ts +8 -8
  130. package/lib/esm/map-layers-formats.js +12 -12
  131. package/lib/esm/map-layers-formats.js.map +1 -1
  132. package/lib/esm/mapLayersFormats.d.ts +10 -10
  133. package/lib/esm/mapLayersFormats.js +24 -24
  134. package/lib/esm/mapLayersFormats.js.map +1 -1
  135. package/lib/esm/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.d.ts +1 -1
  136. package/lib/esm/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.js +32 -32
  137. package/lib/esm/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.js.map +1 -1
  138. package/lib/esm/test/ArcGisFeature/ArcGisFeatureJSON.test.d.ts +1 -1
  139. package/lib/esm/test/ArcGisFeature/ArcGisFeatureJSON.test.js +159 -159
  140. package/lib/esm/test/ArcGisFeature/ArcGisFeatureJSON.test.js.map +1 -1
  141. package/lib/esm/test/ArcGisFeature/ArcGisFeaturePBF.test.d.ts +1 -1
  142. package/lib/esm/test/ArcGisFeature/ArcGisFeaturePBF.test.js +165 -165
  143. package/lib/esm/test/ArcGisFeature/ArcGisFeaturePBF.test.js.map +1 -1
  144. package/lib/esm/test/ArcGisFeature/ArcGisFeatureProvider.test.d.ts +1 -1
  145. package/lib/esm/test/ArcGisFeature/ArcGisFeatureProvider.test.js +678 -678
  146. package/lib/esm/test/ArcGisFeature/ArcGisFeatureProvider.test.js.map +1 -1
  147. package/lib/esm/test/ArcGisFeature/ArcGisFeatureQuery.test.d.ts +1 -1
  148. package/lib/esm/test/ArcGisFeature/ArcGisFeatureQuery.test.js +101 -101
  149. package/lib/esm/test/ArcGisFeature/ArcGisFeatureQuery.test.js.map +1 -1
  150. package/lib/esm/test/ArcGisFeature/ArcGisFeatureRenderer.test.d.ts +1 -1
  151. package/lib/esm/test/ArcGisFeature/ArcGisFeatureRenderer.test.js +212 -212
  152. package/lib/esm/test/ArcGisFeature/ArcGisFeatureRenderer.test.js.map +1 -1
  153. package/lib/esm/test/ArcGisFeature/ArcGisFeatureResponse.test.d.ts +1 -1
  154. package/lib/esm/test/ArcGisFeature/ArcGisFeatureResponse.test.js +92 -92
  155. package/lib/esm/test/ArcGisFeature/ArcGisFeatureResponse.test.js.map +1 -1
  156. package/lib/esm/test/ArcGisFeature/ArcGisSymbologyRenderer.test.d.ts +1 -1
  157. package/lib/esm/test/ArcGisFeature/ArcGisSymbologyRenderer.test.js +57 -57
  158. package/lib/esm/test/ArcGisFeature/ArcGisSymbologyRenderer.test.js.map +1 -1
  159. package/lib/esm/test/ArcGisFeature/Mocks.d.ts +6 -6
  160. package/lib/esm/test/ArcGisFeature/Mocks.js +15 -15
  161. package/lib/esm/test/ArcGisFeature/Mocks.js.map +1 -1
  162. package/lib/esm/test/ArcGisFeature/NewYorkDataset.d.ts +55 -55
  163. package/lib/esm/test/ArcGisFeature/NewYorkDataset.js +415 -415
  164. package/lib/esm/test/ArcGisFeature/NewYorkDataset.js.map +1 -1
  165. package/lib/esm/test/ArcGisFeature/PhillyLandmarksDataset.d.ts +1042 -1042
  166. package/lib/esm/test/ArcGisFeature/PhillyLandmarksDataset.js +422 -422
  167. package/lib/esm/test/ArcGisFeature/PhillyLandmarksDataset.js.map +1 -1
  168. package/lib/esm/tsconfig.tsbuildinfo +1 -1
  169. package/lib/test/junit_results.xml +46 -46
  170. package/package.json +12 -12
  171. package/.rush/temp/83059ff507d1eb49c6a24966e0eef43438794a4a.log +0 -10
  172. package/lib/cjs/test/coverage/.nyc_output/6ccfeaae-8c1c-493c-8422-53d517a02798.json +0 -1
  173. package/lib/cjs/test/coverage/.nyc_output/processinfo/70f83ac4-65c3-49c9-a671-0b0517739a3f.json +0 -1
  174. /package/lib/cjs/test/coverage/.nyc_output/{70f83ac4-65c3-49c9-a671-0b0517739a3f.json → 2346e1fb-eaff-4b76-945e-379d1224f2b4.json} +0 -0
@@ -1,9 +1,9 @@
1
- import { ImageMapLayerSettings } from "@itwin/core-common";
2
- import { ImageryMapLayerFormat, MapLayerImageryProvider, MapLayerSourceValidation } from "@itwin/core-frontend";
3
- /** @internal */
4
- export declare class ArcGisFeatureMapLayerFormat extends ImageryMapLayerFormat {
5
- static formatId: string;
6
- static createImageryProvider(settings: ImageMapLayerSettings): MapLayerImageryProvider | undefined;
7
- static validateSource(url: string, userName?: string, password?: string, ignoreCache?: boolean): Promise<MapLayerSourceValidation>;
8
- }
1
+ import { ImageMapLayerSettings } from "@itwin/core-common";
2
+ import { ImageryMapLayerFormat, MapLayerImageryProvider, MapLayerSourceValidation } from "@itwin/core-frontend";
3
+ /** @internal */
4
+ export declare class ArcGisFeatureMapLayerFormat extends ImageryMapLayerFormat {
5
+ static formatId: string;
6
+ static createImageryProvider(settings: ImageMapLayerSettings): MapLayerImageryProvider | undefined;
7
+ static validateSource(url: string, userName?: string, password?: string, ignoreCache?: boolean): Promise<MapLayerSourceValidation>;
8
+ }
9
9
  //# sourceMappingURL=ArcGisFeatureFormat.d.ts.map
@@ -1,11 +1,11 @@
1
- import { ArcGisUtilities, ImageryMapLayerFormat } from "@itwin/core-frontend";
2
- import { ArcGisFeatureProvider } from "./ArcGisFeatureProvider";
3
- /** @internal */
4
- export class ArcGisFeatureMapLayerFormat extends ImageryMapLayerFormat {
5
- static createImageryProvider(settings) { return new ArcGisFeatureProvider(settings); }
6
- static async validateSource(url, userName, password, ignoreCache) {
7
- return ArcGisUtilities.validateSource(url, this.formatId, ["query"], userName, password, ignoreCache);
8
- }
9
- }
10
- ArcGisFeatureMapLayerFormat.formatId = "ArcGISFeature";
1
+ import { ArcGisUtilities, ImageryMapLayerFormat } from "@itwin/core-frontend";
2
+ import { ArcGisFeatureProvider } from "./ArcGisFeatureProvider";
3
+ /** @internal */
4
+ export class ArcGisFeatureMapLayerFormat extends ImageryMapLayerFormat {
5
+ static createImageryProvider(settings) { return new ArcGisFeatureProvider(settings); }
6
+ static async validateSource(url, userName, password, ignoreCache) {
7
+ return ArcGisUtilities.validateSource(url, this.formatId, ["query"], userName, password, ignoreCache);
8
+ }
9
+ }
10
+ ArcGisFeatureMapLayerFormat.formatId = "ArcGISFeature";
11
11
  //# sourceMappingURL=ArcGisFeatureFormat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArcGisFeatureFormat.js","sourceRoot":"","sources":["../../../src/ArcGisFeature/ArcGisFeatureFormat.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAqD,MAAM,sBAAsB,CAAC;AACjI,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,gBAAgB;AAChB,MAAM,OAAO,2BAA4B,SAAQ,qBAAqB;IAE7D,MAAM,CAAU,qBAAqB,CAAC,QAA+B,IAAyC,OAAO,IAAI,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3J,MAAM,CAAU,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,QAAiB,EAAE,QAAiB,EAAE,WAAqB;QAClH,OAAO,eAAe,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACxG,CAAC;;AAJsB,oCAAQ,GAAG,eAAe,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*--------------------------------------------------------------------------------------------*/\nimport { ImageMapLayerSettings } from \"@itwin/core-common\";\nimport { ArcGisUtilities, ImageryMapLayerFormat, MapLayerImageryProvider, MapLayerSourceValidation } from \"@itwin/core-frontend\";\nimport { ArcGisFeatureProvider } from \"./ArcGisFeatureProvider\";\n\n/** @internal */\nexport class ArcGisFeatureMapLayerFormat extends ImageryMapLayerFormat {\n public static override formatId = \"ArcGISFeature\";\n public static override createImageryProvider(settings: ImageMapLayerSettings): MapLayerImageryProvider | undefined { return new ArcGisFeatureProvider(settings); }\n public static override async validateSource(url: string, userName?: string, password?: string, ignoreCache?: boolean): Promise<MapLayerSourceValidation> {\n return ArcGisUtilities.validateSource(url, this.formatId, [\"query\"], userName, password, ignoreCache);\n }\n}\n"]}
1
+ {"version":3,"file":"ArcGisFeatureFormat.js","sourceRoot":"","sources":["../../../src/ArcGisFeature/ArcGisFeatureFormat.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAqD,MAAM,sBAAsB,CAAC;AACjI,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,gBAAgB;AAChB,MAAM,OAAO,2BAA4B,SAAQ,qBAAqB;IAE7D,MAAM,CAAU,qBAAqB,CAAC,QAA+B,IAAyC,OAAO,IAAI,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3J,MAAM,CAAU,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,QAAiB,EAAE,QAAiB,EAAE,WAAqB;QAClH,OAAO,eAAe,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACxG,CAAC;;AAJsB,oCAAQ,GAAG,eAAe,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\nimport { ImageMapLayerSettings } from \"@itwin/core-common\";\r\nimport { ArcGisUtilities, ImageryMapLayerFormat, MapLayerImageryProvider, MapLayerSourceValidation } from \"@itwin/core-frontend\";\r\nimport { ArcGisFeatureProvider } from \"./ArcGisFeatureProvider\";\r\n\r\n/** @internal */\r\nexport class ArcGisFeatureMapLayerFormat extends ImageryMapLayerFormat {\r\n public static override formatId = \"ArcGISFeature\";\r\n public static override createImageryProvider(settings: ImageMapLayerSettings): MapLayerImageryProvider | undefined { return new ArcGisFeatureProvider(settings); }\r\n public static override async validateSource(url: string, userName?: string, password?: string, ignoreCache?: boolean): Promise<MapLayerSourceValidation> {\r\n return ArcGisUtilities.validateSource(url, this.formatId, [\"query\"], userName, password, ignoreCache);\r\n }\r\n}\r\n"]}
@@ -1,15 +1,15 @@
1
- import { ImageMapLayerSettings } from "@itwin/core-common";
2
- import { MapLayerFeatureInfo } from "@itwin/core-frontend";
3
- import { Transform } from "@itwin/core-geometry";
4
- import { ArcGisFeatureReader } from "./ArcGisFeatureReader";
5
- import { ArcGisFeatureRenderer } from "./ArcGisFeatureRenderer";
6
- import { ArcGisResponseData } from "./ArcGisFeatureResponse";
7
- /** @internal */
8
- export declare class ArcGisFeatureJSON extends ArcGisFeatureReader {
9
- transform: Transform | undefined;
10
- constructor(settings: ImageMapLayerSettings, layerMetadata: any);
11
- readAndRender(response: ArcGisResponseData, renderer: ArcGisFeatureRenderer): void;
12
- protected static deflateCoordinates(coordinates: number[][], flatCoordinates: number[], stride: number, offset: number): number;
13
- readFeatureInfo(response: ArcGisResponseData, featureInfos: MapLayerFeatureInfo[]): void;
14
- }
1
+ import { ImageMapLayerSettings } from "@itwin/core-common";
2
+ import { MapLayerFeatureInfo } from "@itwin/core-frontend";
3
+ import { Transform } from "@itwin/core-geometry";
4
+ import { ArcGisFeatureReader } from "./ArcGisFeatureReader";
5
+ import { ArcGisFeatureRenderer } from "./ArcGisFeatureRenderer";
6
+ import { ArcGisResponseData } from "./ArcGisFeatureResponse";
7
+ /** @internal */
8
+ export declare class ArcGisFeatureJSON extends ArcGisFeatureReader {
9
+ transform: Transform | undefined;
10
+ constructor(settings: ImageMapLayerSettings, layerMetadata: any);
11
+ readAndRender(response: ArcGisResponseData, renderer: ArcGisFeatureRenderer): void;
12
+ protected static deflateCoordinates(coordinates: number[][], flatCoordinates: number[], stride: number, offset: number): number;
13
+ readFeatureInfo(response: ArcGisResponseData, featureInfos: MapLayerFeatureInfo[]): void;
14
+ }
15
15
  //# sourceMappingURL=ArcGisFeatureJSON.d.ts.map
@@ -1,131 +1,131 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- import { PropertyValueFormat, StandardTypeNames } from "@itwin/appui-abstract";
6
- import { MapFeatureInfoRecord } from "@itwin/core-frontend";
7
- import { ArcGisFeatureReader } from "./ArcGisFeatureReader";
8
- /** @internal */
9
- export class ArcGisFeatureJSON extends ArcGisFeatureReader {
10
- constructor(settings, layerMetadata) {
11
- super(settings, layerMetadata);
12
- }
13
- readAndRender(response, renderer) {
14
- var _a, _b, _c, _d;
15
- const responseObj = response.data;
16
- if ((responseObj === null || responseObj === void 0 ? void 0 : responseObj.geometryType) === "esriGeometryPolyline" || (responseObj === null || responseObj === void 0 ? void 0 : responseObj.geometryType) === "esriGeometryPolygon") {
17
- const fill = (responseObj.geometryType === "esriGeometryPolygon");
18
- for (const feature of responseObj.features) {
19
- let offset = 0;
20
- const lengths = [];
21
- const coords = [];
22
- if ((_a = feature === null || feature === void 0 ? void 0 : feature.geometry) === null || _a === void 0 ? void 0 : _a.rings) {
23
- for (const ring of (_b = feature === null || feature === void 0 ? void 0 : feature.geometry) === null || _b === void 0 ? void 0 : _b.rings) {
24
- offset = ArcGisFeatureJSON.deflateCoordinates(ring, coords, 2, offset);
25
- lengths.push(ring.length);
26
- }
27
- }
28
- else if ((_c = feature === null || feature === void 0 ? void 0 : feature.geometry) === null || _c === void 0 ? void 0 : _c.paths) {
29
- for (const path of (_d = feature === null || feature === void 0 ? void 0 : feature.geometry) === null || _d === void 0 ? void 0 : _d.paths) {
30
- offset = ArcGisFeatureJSON.deflateCoordinates(path, coords, 2, offset);
31
- lengths.push(path.length);
32
- }
33
- }
34
- renderer.renderPath(lengths, coords, fill, 2, renderer.transform === undefined);
35
- }
36
- }
37
- else if ((responseObj === null || responseObj === void 0 ? void 0 : responseObj.geometryType) === "esriGeometryPoint" || (responseObj === null || responseObj === void 0 ? void 0 : responseObj.geometryType) === "esriGeometryMultiPoint") {
38
- for (const feature of responseObj.features) {
39
- // TODO: Add support for multipoint
40
- if (feature.geometry) {
41
- const lengths = [];
42
- const coords = [feature.geometry.x, feature.geometry.y];
43
- renderer.renderPoint(lengths, coords, 2, renderer.transform === undefined);
44
- }
45
- }
46
- }
47
- }
48
- // Converts an [[x1,y1], [x2,y2], ...] to [x1,y1,x2,y2, ...]
49
- // stride is the number of dimensions
50
- // https://github.com/openlayers/openlayers/blob/7a2f87caca9ddc1912d910f56eb5637445fc11f6/src/ol/geom/flat/deflate.js#L26
51
- static deflateCoordinates(coordinates, flatCoordinates, stride, offset) {
52
- for (let i = 0, ii = coordinates.length; i < ii; ++i) {
53
- const coordinate = coordinates[i];
54
- for (let j = 0; j < stride; ++j)
55
- flatCoordinates[offset++] = coordinate[j];
56
- }
57
- return offset;
58
- }
59
- readFeatureInfo(response, featureInfos) {
60
- var _a;
61
- const responseObj = response.data;
62
- if (responseObj === undefined || !Array.isArray(responseObj.features))
63
- return;
64
- const layerInfo = { layerName: this._settings.name };
65
- // Create a signature index for every field name / type.
66
- const fieldsType = {};
67
- for (const fieldInfo of responseObj.fields) {
68
- fieldsType[fieldInfo.name] = fieldInfo.type;
69
- }
70
- const getStandardTypeName = (fieldType) => {
71
- switch (fieldType) {
72
- case "esriFieldTypeInteger":
73
- case "esriFieldTypeSmallInteger":
74
- case "esriFieldTypeOID":
75
- return StandardTypeNames.Integer;
76
- case "esriFieldTypeDouble":
77
- return StandardTypeNames.Double;
78
- case "esriFieldTypeSingle":
79
- return StandardTypeNames.Float;
80
- case "esriFieldTypeDate":
81
- return StandardTypeNames.DateTime;
82
- default:
83
- return StandardTypeNames.String;
84
- }
85
- };
86
- const getRecordInfo = (fieldName, value) => {
87
- const propertyValue = { valueFormat: PropertyValueFormat.Primitive };
88
- if (value === null) {
89
- value = undefined;
90
- }
91
- const strValue = `${value}`;
92
- const fieldType = fieldsType[fieldName];
93
- switch (fieldType) {
94
- case "esriFieldTypeInteger":
95
- case "esriFieldTypeSmallInteger":
96
- case "esriFieldTypeOID":
97
- propertyValue.value = value;
98
- break;
99
- case "esriFieldTypeDouble":
100
- case "esriFieldTypeSingle":
101
- propertyValue.value = this.toFixedWithoutPadding(value);
102
- break;
103
- case "esriFieldTypeDate":
104
- propertyValue.value = new Date(value);
105
- break;
106
- default:
107
- if (value !== undefined)
108
- propertyValue.value = strValue;
109
- break;
110
- }
111
- const typename = getStandardTypeName(fieldType);
112
- propertyValue.displayValue = this.getDisplayValue(typename, propertyValue.value);
113
- return new MapFeatureInfoRecord(propertyValue, { name: fieldName, displayLabel: fieldName, typename });
114
- };
115
- for (const feature of responseObj.features) {
116
- const subLayerInfo = {
117
- subLayerName: this._layerMetadata.name,
118
- displayFieldName: this._layerMetadata.name,
119
- records: [],
120
- };
121
- for (const [key, value] of Object.entries(feature.attributes))
122
- (_a = subLayerInfo.records) === null || _a === void 0 ? void 0 : _a.push(getRecordInfo(key, value));
123
- if (layerInfo.info === undefined)
124
- layerInfo.info = [];
125
- if (!(layerInfo.info instanceof HTMLElement))
126
- layerInfo.info.push(subLayerInfo);
127
- }
128
- featureInfos.push(layerInfo);
129
- }
130
- }
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ import { PropertyValueFormat, StandardTypeNames } from "@itwin/appui-abstract";
6
+ import { MapFeatureInfoRecord } from "@itwin/core-frontend";
7
+ import { ArcGisFeatureReader } from "./ArcGisFeatureReader";
8
+ /** @internal */
9
+ export class ArcGisFeatureJSON extends ArcGisFeatureReader {
10
+ constructor(settings, layerMetadata) {
11
+ super(settings, layerMetadata);
12
+ }
13
+ readAndRender(response, renderer) {
14
+ var _a, _b, _c, _d;
15
+ const responseObj = response.data;
16
+ if ((responseObj === null || responseObj === void 0 ? void 0 : responseObj.geometryType) === "esriGeometryPolyline" || (responseObj === null || responseObj === void 0 ? void 0 : responseObj.geometryType) === "esriGeometryPolygon") {
17
+ const fill = (responseObj.geometryType === "esriGeometryPolygon");
18
+ for (const feature of responseObj.features) {
19
+ let offset = 0;
20
+ const lengths = [];
21
+ const coords = [];
22
+ if ((_a = feature === null || feature === void 0 ? void 0 : feature.geometry) === null || _a === void 0 ? void 0 : _a.rings) {
23
+ for (const ring of (_b = feature === null || feature === void 0 ? void 0 : feature.geometry) === null || _b === void 0 ? void 0 : _b.rings) {
24
+ offset = ArcGisFeatureJSON.deflateCoordinates(ring, coords, 2, offset);
25
+ lengths.push(ring.length);
26
+ }
27
+ }
28
+ else if ((_c = feature === null || feature === void 0 ? void 0 : feature.geometry) === null || _c === void 0 ? void 0 : _c.paths) {
29
+ for (const path of (_d = feature === null || feature === void 0 ? void 0 : feature.geometry) === null || _d === void 0 ? void 0 : _d.paths) {
30
+ offset = ArcGisFeatureJSON.deflateCoordinates(path, coords, 2, offset);
31
+ lengths.push(path.length);
32
+ }
33
+ }
34
+ renderer.renderPath(lengths, coords, fill, 2, renderer.transform === undefined);
35
+ }
36
+ }
37
+ else if ((responseObj === null || responseObj === void 0 ? void 0 : responseObj.geometryType) === "esriGeometryPoint" || (responseObj === null || responseObj === void 0 ? void 0 : responseObj.geometryType) === "esriGeometryMultiPoint") {
38
+ for (const feature of responseObj.features) {
39
+ // TODO: Add support for multipoint
40
+ if (feature.geometry) {
41
+ const lengths = [];
42
+ const coords = [feature.geometry.x, feature.geometry.y];
43
+ renderer.renderPoint(lengths, coords, 2, renderer.transform === undefined);
44
+ }
45
+ }
46
+ }
47
+ }
48
+ // Converts an [[x1,y1], [x2,y2], ...] to [x1,y1,x2,y2, ...]
49
+ // stride is the number of dimensions
50
+ // https://github.com/openlayers/openlayers/blob/7a2f87caca9ddc1912d910f56eb5637445fc11f6/src/ol/geom/flat/deflate.js#L26
51
+ static deflateCoordinates(coordinates, flatCoordinates, stride, offset) {
52
+ for (let i = 0, ii = coordinates.length; i < ii; ++i) {
53
+ const coordinate = coordinates[i];
54
+ for (let j = 0; j < stride; ++j)
55
+ flatCoordinates[offset++] = coordinate[j];
56
+ }
57
+ return offset;
58
+ }
59
+ readFeatureInfo(response, featureInfos) {
60
+ var _a;
61
+ const responseObj = response.data;
62
+ if (responseObj === undefined || !Array.isArray(responseObj.features))
63
+ return;
64
+ const layerInfo = { layerName: this._settings.name };
65
+ // Create a signature index for every field name / type.
66
+ const fieldsType = {};
67
+ for (const fieldInfo of responseObj.fields) {
68
+ fieldsType[fieldInfo.name] = fieldInfo.type;
69
+ }
70
+ const getStandardTypeName = (fieldType) => {
71
+ switch (fieldType) {
72
+ case "esriFieldTypeInteger":
73
+ case "esriFieldTypeSmallInteger":
74
+ case "esriFieldTypeOID":
75
+ return StandardTypeNames.Integer;
76
+ case "esriFieldTypeDouble":
77
+ return StandardTypeNames.Double;
78
+ case "esriFieldTypeSingle":
79
+ return StandardTypeNames.Float;
80
+ case "esriFieldTypeDate":
81
+ return StandardTypeNames.DateTime;
82
+ default:
83
+ return StandardTypeNames.String;
84
+ }
85
+ };
86
+ const getRecordInfo = (fieldName, value) => {
87
+ const propertyValue = { valueFormat: PropertyValueFormat.Primitive };
88
+ if (value === null) {
89
+ value = undefined;
90
+ }
91
+ const strValue = `${value}`;
92
+ const fieldType = fieldsType[fieldName];
93
+ switch (fieldType) {
94
+ case "esriFieldTypeInteger":
95
+ case "esriFieldTypeSmallInteger":
96
+ case "esriFieldTypeOID":
97
+ propertyValue.value = value;
98
+ break;
99
+ case "esriFieldTypeDouble":
100
+ case "esriFieldTypeSingle":
101
+ propertyValue.value = this.toFixedWithoutPadding(value);
102
+ break;
103
+ case "esriFieldTypeDate":
104
+ propertyValue.value = new Date(value);
105
+ break;
106
+ default:
107
+ if (value !== undefined)
108
+ propertyValue.value = strValue;
109
+ break;
110
+ }
111
+ const typename = getStandardTypeName(fieldType);
112
+ propertyValue.displayValue = this.getDisplayValue(typename, propertyValue.value);
113
+ return new MapFeatureInfoRecord(propertyValue, { name: fieldName, displayLabel: fieldName, typename });
114
+ };
115
+ for (const feature of responseObj.features) {
116
+ const subLayerInfo = {
117
+ subLayerName: this._layerMetadata.name,
118
+ displayFieldName: this._layerMetadata.name,
119
+ records: [],
120
+ };
121
+ for (const [key, value] of Object.entries(feature.attributes))
122
+ (_a = subLayerInfo.records) === null || _a === void 0 ? void 0 : _a.push(getRecordInfo(key, value));
123
+ if (layerInfo.info === undefined)
124
+ layerInfo.info = [];
125
+ if (!(layerInfo.info instanceof HTMLElement))
126
+ layerInfo.info.push(subLayerInfo);
127
+ }
128
+ featureInfos.push(layerInfo);
129
+ }
130
+ }
131
131
  //# sourceMappingURL=ArcGisFeatureJSON.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArcGisFeatureJSON.js","sourceRoot":"","sources":["../../../src/ArcGisFeature/ArcGisFeatureJSON.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\nimport { PrimitiveValue, PropertyValueFormat, StandardTypeNames } from \"@itwin/appui-abstract\";\nimport { ImageMapLayerSettings } from \"@itwin/core-common\";\nimport { MapFeatureInfoRecord, MapLayerFeatureInfo, MapSubLayerFeatureInfo } from \"@itwin/core-frontend\";\nimport { Transform } from \"@itwin/core-geometry\";\nimport { ArcGisFeatureReader } from \"./ArcGisFeatureReader\";\nimport { ArcGisFeatureRenderer } from \"./ArcGisFeatureRenderer\";\nimport { ArcGisFieldType, ArcGisResponseData } from \"./ArcGisFeatureResponse\";\n\n/** @internal */\nexport class ArcGisFeatureJSON extends ArcGisFeatureReader {\n public transform: Transform|undefined;\n\n public constructor(settings: ImageMapLayerSettings, layerMetadata: any) {\n super(settings, layerMetadata);\n }\n\n public readAndRender(response: ArcGisResponseData, renderer: ArcGisFeatureRenderer) {\n const responseObj = response.data;\n\n if (responseObj?.geometryType === \"esriGeometryPolyline\" || responseObj?.geometryType === \"esriGeometryPolygon\") {\n const fill = (responseObj.geometryType === \"esriGeometryPolygon\");\n for (const feature of responseObj.features) {\n let offset = 0;\n const lengths: number[] = [];\n const coords: number[] = [];\n\n if (feature?.geometry?.rings) {\n for (const ring of feature?.geometry?.rings) {\n offset = ArcGisFeatureJSON.deflateCoordinates(ring, coords, 2, offset);\n lengths.push(ring.length);\n }\n } else if (feature?.geometry?.paths) {\n for (const path of feature?.geometry?.paths) {\n offset = ArcGisFeatureJSON.deflateCoordinates(path, coords, 2, offset);\n lengths.push(path.length);\n }\n }\n renderer.renderPath(lengths, coords, fill, 2, renderer.transform === undefined);\n\n }\n } else if (responseObj?.geometryType === \"esriGeometryPoint\" || responseObj?.geometryType === \"esriGeometryMultiPoint\") {\n for (const feature of responseObj.features) {\n // TODO: Add support for multipoint\n if (feature.geometry) {\n const lengths: number[] = [];\n const coords: number[] = [feature.geometry.x, feature.geometry.y];\n renderer.renderPoint(lengths, coords, 2, renderer.transform === undefined);\n }\n }\n }\n }\n\n // Converts an [[x1,y1], [x2,y2], ...] to [x1,y1,x2,y2, ...]\n // stride is the number of dimensions\n // https://github.com/openlayers/openlayers/blob/7a2f87caca9ddc1912d910f56eb5637445fc11f6/src/ol/geom/flat/deflate.js#L26\n protected static deflateCoordinates( coordinates: number[][], flatCoordinates: number[], stride: number, offset: number) {\n for (let i = 0, ii = coordinates.length; i < ii; ++i) {\n const coordinate = coordinates[i];\n for (let j = 0; j < stride; ++j)\n flatCoordinates[offset++] = coordinate[j];\n }\n\n return offset;\n }\n\n public readFeatureInfo(response: ArcGisResponseData, featureInfos: MapLayerFeatureInfo[]) {\n const responseObj = response.data;\n if (responseObj === undefined || !Array.isArray(responseObj.features))\n return;\n\n const layerInfo: MapLayerFeatureInfo = {layerName: this._settings.name};\n\n // Create a signature index for every field name / type.\n const fieldsType: {[key: string]: ArcGisFieldType} = {};\n for (const fieldInfo of responseObj.fields) {\n fieldsType[fieldInfo.name] = fieldInfo.type;\n }\n\n const getStandardTypeName = (fieldType: ArcGisFieldType) => {\n switch (fieldType) {\n case \"esriFieldTypeInteger\":\n case \"esriFieldTypeSmallInteger\":\n case \"esriFieldTypeOID\":\n return StandardTypeNames.Integer;\n case \"esriFieldTypeDouble\":\n return StandardTypeNames.Double;\n case \"esriFieldTypeSingle\":\n return StandardTypeNames.Float;\n case \"esriFieldTypeDate\":\n return StandardTypeNames.DateTime;\n default:\n return StandardTypeNames.String;\n }\n };\n\n const getRecordInfo = (fieldName: string, value: any) => {\n const propertyValue: PrimitiveValue = {valueFormat: PropertyValueFormat.Primitive};\n\n if (value === null) {\n value = undefined;\n }\n\n const strValue = `${value}`;\n const fieldType = fieldsType[fieldName];\n switch (fieldType) {\n case \"esriFieldTypeInteger\":\n case \"esriFieldTypeSmallInteger\":\n case \"esriFieldTypeOID\":\n propertyValue.value = value as number;\n break;\n case \"esriFieldTypeDouble\":\n case \"esriFieldTypeSingle\":\n propertyValue.value = this.toFixedWithoutPadding(value);\n break;\n case \"esriFieldTypeDate\":\n propertyValue.value = new Date(value);\n break;\n default:\n if (value !== undefined)\n propertyValue.value = strValue;\n\n break;\n }\n\n const typename = getStandardTypeName(fieldType);\n propertyValue.displayValue = this.getDisplayValue(typename, propertyValue.value);\n\n return new MapFeatureInfoRecord (propertyValue, {name: fieldName, displayLabel: fieldName, typename});\n };\n\n for (const feature of responseObj.features) {\n const subLayerInfo: MapSubLayerFeatureInfo = {\n subLayerName: this._layerMetadata.name,\n displayFieldName: this._layerMetadata.name,\n records : [],\n };\n\n for (const [key, value] of Object.entries(feature.attributes))\n subLayerInfo.records?.push(getRecordInfo(key,value));\n\n if (layerInfo.info === undefined)\n layerInfo.info = [];\n\n if (!(layerInfo.info instanceof HTMLElement))\n layerInfo.info.push(subLayerInfo);\n }\n\n featureInfos.push(layerInfo);\n }\n}\n"]}
1
+ {"version":3,"file":"ArcGisFeatureJSON.js","sourceRoot":"","sources":["../../../src/ArcGisFeature/ArcGisFeatureJSON.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAE/F,OAAO,EAAkB,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/F,OAAO,EAAE,oBAAoB,EAA+C,MAAM,sBAAsB,CAAC;AAEzG,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAI5D,gBAAgB;AAChB,MAAM,OAAO,iBAAmB,SAAQ,mBAAmB;IAGzD,YAAmB,QAA+B,EAAE,aAAkB;QACpE,KAAK,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACjC,CAAC;IAEM,aAAa,CAAC,QAA4B,EAAE,QAA+B;;QAChF,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC;QAElC,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,YAAY,MAAK,sBAAsB,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,YAAY,MAAK,qBAAqB,EAAE;YAC/G,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,YAAY,KAAK,qBAAqB,CAAC,CAAC;YAClE,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,QAAQ,EAAE;gBAC1C,IAAI,MAAM,GAAG,CAAC,CAAC;gBACf,MAAM,OAAO,GAAa,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;gBAE5B,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,0CAAE,KAAK,EAAE;oBAC5B,KAAK,MAAM,IAAI,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,0CAAE,KAAK,EAAE;wBAC3C,MAAM,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;wBACvE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBAC3B;iBACF;qBAAM,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,0CAAE,KAAK,EAAE;oBACnC,KAAK,MAAM,IAAI,IAAI,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,0CAAE,KAAK,EAAE;wBAC3C,MAAM,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;wBACvE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBAC3B;iBACF;gBACD,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;aAEjF;SACF;aAAM,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,YAAY,MAAK,mBAAmB,IAAI,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,YAAY,MAAK,wBAAwB,EAAE;YACtH,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,QAAQ,EAAE;gBAC1C,mCAAmC;gBACnC,IAAI,OAAO,CAAC,QAAQ,EAAE;oBACpB,MAAM,OAAO,GAAa,EAAE,CAAC;oBAC7B,MAAM,MAAM,GAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;oBAClE,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;iBAC5E;aACF;SACF;IACH,CAAC;IAED,4DAA4D;IAC5D,qCAAqC;IACrC,yHAAyH;IAC/G,MAAM,CAAC,kBAAkB,CAAE,WAAuB,EAAE,eAAyB,EAAE,MAAc,EAAE,MAAc;QACrH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE;YACpD,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,EAAE,CAAC;gBAC7B,eAAe,CAAC,MAAM,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;SAC7C;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,eAAe,CAAC,QAA4B,EAAE,YAAmC;;QACtF,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC;QAClC,IAAI,WAAW,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC;YACnE,OAAO;QAET,MAAM,SAAS,GAAwB,EAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAC,CAAC;QAExE,wDAAwD;QACxD,MAAM,UAAU,GAAqC,EAAE,CAAC;QACxD,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,MAAM,EAAE;YAC1C,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC;SAC7C;QAED,MAAM,mBAAmB,GAAG,CAAC,SAA0B,EAAE,EAAE;YACzD,QAAQ,SAAS,EAAE;gBACjB,KAAK,sBAAsB,CAAC;gBAC5B,KAAK,2BAA2B,CAAC;gBACjC,KAAK,kBAAkB;oBACrB,OAAO,iBAAiB,CAAC,OAAO,CAAC;gBACnC,KAAK,qBAAqB;oBACxB,OAAO,iBAAiB,CAAC,MAAM,CAAC;gBAClC,KAAK,qBAAqB;oBACxB,OAAO,iBAAiB,CAAC,KAAK,CAAC;gBACjC,KAAK,mBAAmB;oBACtB,OAAO,iBAAiB,CAAC,QAAQ,CAAC;gBACpC;oBACE,OAAO,iBAAiB,CAAC,MAAM,CAAC;aACnC;QACH,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAE,KAAU,EAAE,EAAE;YACtD,MAAM,aAAa,GAAmB,EAAC,WAAW,EAAE,mBAAmB,CAAC,SAAS,EAAC,CAAC;YAEnF,IAAI,KAAK,KAAK,IAAI,EAAE;gBAClB,KAAK,GAAG,SAAS,CAAC;aACnB;YAED,MAAM,QAAQ,GAAG,GAAG,KAAK,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;YACxC,QAAQ,SAAS,EAAE;gBACjB,KAAK,sBAAsB,CAAC;gBAC5B,KAAK,2BAA2B,CAAC;gBACjC,KAAK,kBAAkB;oBACrB,aAAa,CAAC,KAAK,GAAG,KAAe,CAAC;oBACtC,MAAM;gBACR,KAAK,qBAAqB,CAAC;gBAC3B,KAAK,qBAAqB;oBACxB,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;oBACxD,MAAM;gBACR,KAAK,mBAAmB;oBACtB,aAAa,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;oBACtC,MAAM;gBACR;oBACE,IAAI,KAAK,KAAK,SAAS;wBACrB,aAAa,CAAC,KAAK,GAAG,QAAQ,CAAC;oBAEjC,MAAM;aACT;YAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;YAChD,aAAa,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;YAEjF,OAAO,IAAI,oBAAoB,CAAE,aAAa,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAG,QAAQ,EAAC,CAAC,CAAC;QACzG,CAAC,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,QAAQ,EAAE;YAC1C,MAAM,YAAY,GAA2B;gBAC3C,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI;gBACtC,gBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI;gBAC1C,OAAO,EAAG,EAAE;aACb,CAAC;YAEF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;gBAC3D,MAAA,YAAY,CAAC,OAAO,0CAAE,IAAI,CAAC,aAAa,CAAC,GAAG,EAAC,KAAK,CAAC,CAAC,CAAC;YAEvD,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS;gBAC9B,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC;YAEtB,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,YAAY,WAAW,CAAC;gBAC1C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SACrC;QAED,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n\r\nimport { PrimitiveValue, PropertyValueFormat, StandardTypeNames } from \"@itwin/appui-abstract\";\r\nimport { ImageMapLayerSettings } from \"@itwin/core-common\";\r\nimport { MapFeatureInfoRecord, MapLayerFeatureInfo, MapSubLayerFeatureInfo } from \"@itwin/core-frontend\";\r\nimport { Transform } from \"@itwin/core-geometry\";\r\nimport { ArcGisFeatureReader } from \"./ArcGisFeatureReader\";\r\nimport { ArcGisFeatureRenderer } from \"./ArcGisFeatureRenderer\";\r\nimport { ArcGisFieldType, ArcGisResponseData } from \"./ArcGisFeatureResponse\";\r\n\r\n/** @internal */\r\nexport class ArcGisFeatureJSON extends ArcGisFeatureReader {\r\n public transform: Transform|undefined;\r\n\r\n public constructor(settings: ImageMapLayerSettings, layerMetadata: any) {\r\n super(settings, layerMetadata);\r\n }\r\n\r\n public readAndRender(response: ArcGisResponseData, renderer: ArcGisFeatureRenderer) {\r\n const responseObj = response.data;\r\n\r\n if (responseObj?.geometryType === \"esriGeometryPolyline\" || responseObj?.geometryType === \"esriGeometryPolygon\") {\r\n const fill = (responseObj.geometryType === \"esriGeometryPolygon\");\r\n for (const feature of responseObj.features) {\r\n let offset = 0;\r\n const lengths: number[] = [];\r\n const coords: number[] = [];\r\n\r\n if (feature?.geometry?.rings) {\r\n for (const ring of feature?.geometry?.rings) {\r\n offset = ArcGisFeatureJSON.deflateCoordinates(ring, coords, 2, offset);\r\n lengths.push(ring.length);\r\n }\r\n } else if (feature?.geometry?.paths) {\r\n for (const path of feature?.geometry?.paths) {\r\n offset = ArcGisFeatureJSON.deflateCoordinates(path, coords, 2, offset);\r\n lengths.push(path.length);\r\n }\r\n }\r\n renderer.renderPath(lengths, coords, fill, 2, renderer.transform === undefined);\r\n\r\n }\r\n } else if (responseObj?.geometryType === \"esriGeometryPoint\" || responseObj?.geometryType === \"esriGeometryMultiPoint\") {\r\n for (const feature of responseObj.features) {\r\n // TODO: Add support for multipoint\r\n if (feature.geometry) {\r\n const lengths: number[] = [];\r\n const coords: number[] = [feature.geometry.x, feature.geometry.y];\r\n renderer.renderPoint(lengths, coords, 2, renderer.transform === undefined);\r\n }\r\n }\r\n }\r\n }\r\n\r\n // Converts an [[x1,y1], [x2,y2], ...] to [x1,y1,x2,y2, ...]\r\n // stride is the number of dimensions\r\n // https://github.com/openlayers/openlayers/blob/7a2f87caca9ddc1912d910f56eb5637445fc11f6/src/ol/geom/flat/deflate.js#L26\r\n protected static deflateCoordinates( coordinates: number[][], flatCoordinates: number[], stride: number, offset: number) {\r\n for (let i = 0, ii = coordinates.length; i < ii; ++i) {\r\n const coordinate = coordinates[i];\r\n for (let j = 0; j < stride; ++j)\r\n flatCoordinates[offset++] = coordinate[j];\r\n }\r\n\r\n return offset;\r\n }\r\n\r\n public readFeatureInfo(response: ArcGisResponseData, featureInfos: MapLayerFeatureInfo[]) {\r\n const responseObj = response.data;\r\n if (responseObj === undefined || !Array.isArray(responseObj.features))\r\n return;\r\n\r\n const layerInfo: MapLayerFeatureInfo = {layerName: this._settings.name};\r\n\r\n // Create a signature index for every field name / type.\r\n const fieldsType: {[key: string]: ArcGisFieldType} = {};\r\n for (const fieldInfo of responseObj.fields) {\r\n fieldsType[fieldInfo.name] = fieldInfo.type;\r\n }\r\n\r\n const getStandardTypeName = (fieldType: ArcGisFieldType) => {\r\n switch (fieldType) {\r\n case \"esriFieldTypeInteger\":\r\n case \"esriFieldTypeSmallInteger\":\r\n case \"esriFieldTypeOID\":\r\n return StandardTypeNames.Integer;\r\n case \"esriFieldTypeDouble\":\r\n return StandardTypeNames.Double;\r\n case \"esriFieldTypeSingle\":\r\n return StandardTypeNames.Float;\r\n case \"esriFieldTypeDate\":\r\n return StandardTypeNames.DateTime;\r\n default:\r\n return StandardTypeNames.String;\r\n }\r\n };\r\n\r\n const getRecordInfo = (fieldName: string, value: any) => {\r\n const propertyValue: PrimitiveValue = {valueFormat: PropertyValueFormat.Primitive};\r\n\r\n if (value === null) {\r\n value = undefined;\r\n }\r\n\r\n const strValue = `${value}`;\r\n const fieldType = fieldsType[fieldName];\r\n switch (fieldType) {\r\n case \"esriFieldTypeInteger\":\r\n case \"esriFieldTypeSmallInteger\":\r\n case \"esriFieldTypeOID\":\r\n propertyValue.value = value as number;\r\n break;\r\n case \"esriFieldTypeDouble\":\r\n case \"esriFieldTypeSingle\":\r\n propertyValue.value = this.toFixedWithoutPadding(value);\r\n break;\r\n case \"esriFieldTypeDate\":\r\n propertyValue.value = new Date(value);\r\n break;\r\n default:\r\n if (value !== undefined)\r\n propertyValue.value = strValue;\r\n\r\n break;\r\n }\r\n\r\n const typename = getStandardTypeName(fieldType);\r\n propertyValue.displayValue = this.getDisplayValue(typename, propertyValue.value);\r\n\r\n return new MapFeatureInfoRecord (propertyValue, {name: fieldName, displayLabel: fieldName, typename});\r\n };\r\n\r\n for (const feature of responseObj.features) {\r\n const subLayerInfo: MapSubLayerFeatureInfo = {\r\n subLayerName: this._layerMetadata.name,\r\n displayFieldName: this._layerMetadata.name,\r\n records : [],\r\n };\r\n\r\n for (const [key, value] of Object.entries(feature.attributes))\r\n subLayerInfo.records?.push(getRecordInfo(key,value));\r\n\r\n if (layerInfo.info === undefined)\r\n layerInfo.info = [];\r\n\r\n if (!(layerInfo.info instanceof HTMLElement))\r\n layerInfo.info.push(subLayerInfo);\r\n }\r\n\r\n featureInfos.push(layerInfo);\r\n }\r\n}\r\n"]}
@@ -1,15 +1,15 @@
1
- import { ArcGisFeatureRenderer } from "./ArcGisFeatureRenderer";
2
- import { esriPBuffer } from "../ArcGisFeature/esriPBuffer.gen";
3
- import { MapLayerFeatureInfo } from "@itwin/core-frontend";
4
- import { ImageMapLayerSettings } from "@itwin/core-common";
5
- import { ArcGisFeatureReader } from "./ArcGisFeatureReader";
6
- import { ArcGisResponseData } from "./ArcGisFeatureResponse";
7
- import { ArcGisFeatureGeometryType } from "./ArcGisFeatureQuery";
8
- /** @internal */
9
- export declare class ArcGisFeaturePBF extends ArcGisFeatureReader {
10
- constructor(settings: ImageMapLayerSettings, layerMetadata: any);
11
- static getArcGisFeatureGeometryType(geomType: esriPBuffer.FeatureCollectionPBuffer.GeometryType): ArcGisFeatureGeometryType;
12
- readAndRender(response: ArcGisResponseData, renderer: ArcGisFeatureRenderer): void;
13
- readFeatureInfo(response: ArcGisResponseData, featureInfos: MapLayerFeatureInfo[]): void;
14
- }
1
+ import { ArcGisFeatureRenderer } from "./ArcGisFeatureRenderer";
2
+ import { esriPBuffer } from "../ArcGisFeature/esriPBuffer.gen";
3
+ import { MapLayerFeatureInfo } from "@itwin/core-frontend";
4
+ import { ImageMapLayerSettings } from "@itwin/core-common";
5
+ import { ArcGisFeatureReader } from "./ArcGisFeatureReader";
6
+ import { ArcGisResponseData } from "./ArcGisFeatureResponse";
7
+ import { ArcGisFeatureGeometryType } from "./ArcGisFeatureQuery";
8
+ /** @internal */
9
+ export declare class ArcGisFeaturePBF extends ArcGisFeatureReader {
10
+ constructor(settings: ImageMapLayerSettings, layerMetadata: any);
11
+ static getArcGisFeatureGeometryType(geomType: esriPBuffer.FeatureCollectionPBuffer.GeometryType): ArcGisFeatureGeometryType;
12
+ readAndRender(response: ArcGisResponseData, renderer: ArcGisFeatureRenderer): void;
13
+ readFeatureInfo(response: ArcGisResponseData, featureInfos: MapLayerFeatureInfo[]): void;
14
+ }
15
15
  //# sourceMappingURL=ArcGisFeaturePBF.d.ts.map