@arcgis/core 4.34.0-next.22 → 4.34.0-next.24

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 (148) hide show
  1. package/applications/Components/arcadeFeatureUtils.d.ts +5 -0
  2. package/applications/Components/arcadeFeatureUtils.js +5 -0
  3. package/arcade/parser.js +1 -1
  4. package/arcade/validation/arcadeValidator.js +1 -1
  5. package/assets/esri/core/workers/RemoteClient.js +1 -1
  6. package/assets/esri/core/workers/chunks/026fbeb0ff5b9e6c74df.js +1 -0
  7. package/assets/esri/core/workers/chunks/0f6203ae32663b2b52db.js +1 -0
  8. package/assets/esri/core/workers/chunks/20bcd2e6cf02e057ad7d.js +1 -0
  9. package/assets/esri/core/workers/chunks/234cbc290b074eeb5dd6.js +1 -0
  10. package/assets/esri/core/workers/chunks/{00eef04fd026adaf0df8.js → 36a2a8b6547604bad2ab.js} +1 -1
  11. package/assets/esri/core/workers/chunks/{63cc4647b7775ff8aedf.js → 44d28849e59f62616e72.js} +1 -1
  12. package/assets/esri/core/workers/chunks/4c47d327815e281c457e.js +1 -0
  13. package/assets/esri/core/workers/chunks/{6bb1ecaa0afc2c7de79e.js → 4cc3eeb0b824c53793d0.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{19ae76283a0cb0fe4dee.js → 4ea96aff38bb301dc40d.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{cab1a1067f44ce374673.js → 7d7f8f2936ddee65e3da.js} +1 -1
  16. package/assets/esri/core/workers/chunks/{b57c0ef7bc57e3c91257.js → 865fccacf44ae5b70eba.js} +1 -1
  17. package/assets/esri/core/workers/chunks/{f43110391f124b8a179c.js → 909a6218db87cba2c9ba.js} +1 -1
  18. package/assets/esri/core/workers/chunks/a273f80298417edecc07.js +1 -0
  19. package/assets/esri/core/workers/chunks/{496e02cfe3d84010f675.js → a2ed7a3cd518dd136ec7.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{1d9e44bdd129cc682ae5.js → ac93b3f1ff15a95d926c.js} +1 -1
  21. package/assets/esri/core/workers/chunks/b32c1b60896a72e0ae90.js +1 -0
  22. package/assets/esri/core/workers/chunks/{6782114a752b9cc59168.js → b6b8272a74a5c24a6b86.js} +1 -1
  23. package/assets/esri/core/workers/chunks/b9f66d735a7e63417b3d.js +1 -0
  24. package/assets/esri/core/workers/chunks/d2ce360961ca4b58666c.js +1 -0
  25. package/assets/esri/core/workers/chunks/{8b19fe829a9dc26fb3fe.js → d915d0a30d9beb24bd3a.js} +1 -1
  26. package/assets/esri/core/workers/chunks/f90573c9dc36e51cd588.js +1 -0
  27. package/assets/esri/core/workers/chunks/fe1902d63f610cebd947.js +1 -0
  28. package/chunks/Bufferer-Dw9Qi4T1.js +1 -1
  29. package/chunks/Envelope.js +1 -1
  30. package/chunks/MultiPathImpl.js +1 -1
  31. package/chunks/OperatorClip.js +1 -1
  32. package/chunks/ProjectionTransformation.js +1 -1
  33. package/chunks/index.js +1 -1
  34. package/config.js +1 -1
  35. package/core/MemCachePool.js +1 -1
  36. package/core/accessorSupport/overrideDefaultsFrom.js +1 -1
  37. package/geometry/operators/gx/operatorOffset.js +1 -1
  38. package/geometry/operators/support/jsonConverter.js +1 -1
  39. package/interfaces.d.ts +157 -31
  40. package/kernel.js +1 -1
  41. package/layers/VideoLayer.js +1 -1
  42. package/layers/orientedImagery/core/ExposurePoint.js +1 -1
  43. package/layers/orientedImagery/core/bestImageUtils.js +1 -1
  44. package/layers/support/ControlPointsGeoreference.js +1 -1
  45. package/layers/support/PixelBlock.js +1 -1
  46. package/layers/support/RasterJobHandler.js +1 -1
  47. package/layers/support/RasterWorker.js +1 -1
  48. package/layers/support/SceneModification.js +1 -1
  49. package/layers/support/SceneModifications.js +1 -1
  50. package/layers/support/rasterDatasets/MRFRaster.js +1 -1
  51. package/layers/support/rasterFunctions/clipUtils.js +1 -1
  52. package/layers/support/rasterFunctions/rasterFunctionHelper.js +1 -1
  53. package/layers/video/VideoController.js +1 -1
  54. package/layers/video/videoUtils.js +1 -1
  55. package/libs/basisu/BasisUEncoder.js +1 -1
  56. package/libs/dxtEncoder/DXTEncoder.js +1 -1
  57. package/libs/i3s/I3SModule.js +1 -1
  58. package/networks/support/UtilityNetworkLookupHelper.js +1 -1
  59. package/networks/support/utils.js +1 -1
  60. package/package.json +1 -1
  61. package/renderers/support/DictionaryControlString.js +1 -1
  62. package/rest/knowledgeGraph/GraphAddFieldIndexResult.js +1 -1
  63. package/rest/knowledgeGraph/GraphAddNamedTypesResult.js +1 -1
  64. package/rest/knowledgeGraph/GraphAddPropertyResult.js +1 -1
  65. package/rest/knowledgeGraph/GraphDataModelOperationResult.d.ts +1 -1
  66. package/rest/knowledgeGraph/GraphDataModelOperationResult.js +1 -1
  67. package/rest/knowledgeGraph/GraphDeleteFieldIndexResult.js +1 -1
  68. package/rest/knowledgeGraph/GraphDeleteNamedTypeResult.js +1 -1
  69. package/rest/knowledgeGraph/GraphDeletePropertyResult.js +1 -1
  70. package/rest/knowledgeGraph/GraphUpdateNamedTypesResult.js +1 -1
  71. package/rest/knowledgeGraph/GraphUpdatePropertyResult.js +1 -1
  72. package/rest/knowledgeGraph/GraphUpdateSearchIndexResult.js +1 -1
  73. package/support/revision.js +1 -1
  74. package/symbols/cim/cimAnalyzer.js +1 -1
  75. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriterInputEvaluator.js +1 -1
  76. package/views/2d/layers/VideoLayerView2D.js +1 -1
  77. package/views/2d/layers/features/FeatureContainer.js +1 -1
  78. package/views/2d/layers/features/processor/ClusterStrategy.js +1 -1
  79. package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
  80. package/views/2d/layers/features/sources/strategies/chunks/Overrides.js +1 -1
  81. package/views/2d/layers/features/support/FeatureFilterEvaluator.js +1 -1
  82. package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
  83. package/views/3d/analysis/images/heading-rotate-svg.js +1 -1
  84. package/views/3d/analysis/images/tilt-rotate-svg.js +1 -1
  85. package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
  86. package/views/3d/layers/SceneLayerWorker.js +1 -1
  87. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  88. package/views/3d/layers/graphics/pipeline/Tile3DManager.js +1 -1
  89. package/views/3d/state/ViewStateManager.js +1 -1
  90. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  91. package/views/3d/webgl-engine/lib/Object3D.js +1 -1
  92. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  93. package/views/VideoView.js +1 -1
  94. package/views/draw/DrawScreenTool.js +1 -1
  95. package/views/draw/MultipointDrawAction.js +1 -1
  96. package/views/draw/PointDrawAction.js +1 -1
  97. package/views/draw/PolygonDrawAction.js +1 -1
  98. package/views/draw/PolylineDrawAction.js +1 -1
  99. package/views/magnifier/mask-svg.js +1 -1
  100. package/views/magnifier/overlay-svg.js +1 -1
  101. package/views/support/TextureCompressionHelper.js +1 -1
  102. package/views/support/TextureCompressionWorker.js +1 -1
  103. package/views/support/TextureCompressionWorkerHandle.js +1 -1
  104. package/webmap/Bookmark.js +1 -1
  105. package/webscene/spec-certification/spec.js +1 -1
  106. package/widgets/BasemapLayerList.js +1 -1
  107. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  108. package/widgets/BatchAttributeForm/inputs/EditableInput.js +1 -1
  109. package/widgets/BatchAttributeForm/inputs/GroupInput.js +1 -1
  110. package/widgets/BatchAttributeForm/inputs/InputBase.d.ts +1 -1
  111. package/widgets/BatchAttributeForm/inputs/InputBase.js +1 -1
  112. package/widgets/Editor/support/SketchController.js +1 -1
  113. package/widgets/Editor/workflowUtils.js +1 -1
  114. package/widgets/Editor.js +1 -1
  115. package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
  116. package/widgets/Feature/FeatureViewModel.js +1 -1
  117. package/widgets/Feature/support/arcadeFeatureUtils.js +1 -1
  118. package/widgets/LayerList.js +1 -1
  119. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  120. package/widgets/OrientedImageryViewer/components/ImageViewer.js +1 -1
  121. package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
  122. package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
  123. package/widgets/OrientedImageryViewer/navigation/NavigationManager.js +1 -1
  124. package/widgets/OrientedImageryViewer/navigation/queries.js +1 -1
  125. package/widgets/OrientedImageryViewer/navigation/utils.js +1 -1
  126. package/widgets/OrientedImageryViewer.js +1 -1
  127. package/widgets/PanoramicViewer/PanoramicViewerViewModel.js +1 -1
  128. package/widgets/PanoramicViewer.js +1 -1
  129. package/widgets/Print.js +1 -1
  130. package/widgets/Sketch/SketchViewModel.js +1 -1
  131. package/widgets/Slider/SliderViewModel.js +1 -1
  132. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeature.js +1 -1
  133. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeaturesDrillIn.js +1 -1
  134. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  135. package/widgets/support/SelectionList.js +1 -1
  136. package/widgets/support/Selector2D/SelectionOperation.js +1 -1
  137. package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +1 -1
  138. package/assets/esri/core/workers/chunks/0ba6177ba118a0f032e2.js +0 -1
  139. package/assets/esri/core/workers/chunks/573a8393bec916dcf16f.js +0 -1
  140. package/assets/esri/core/workers/chunks/58e74681ddef30ba9cb6.js +0 -1
  141. package/assets/esri/core/workers/chunks/81006d9eed65bbb82962.js +0 -1
  142. package/assets/esri/core/workers/chunks/8fa6c938e8dc7bbfaeb7.js +0 -1
  143. package/assets/esri/core/workers/chunks/9f91d519da67714f915f.js +0 -1
  144. package/assets/esri/core/workers/chunks/ad3871f497ecea1a08c9.js +0 -1
  145. package/assets/esri/core/workers/chunks/bbca1b85656d9ba71e4c.js +0 -1
  146. package/assets/esri/core/workers/chunks/cd64181298d82c8d0e9d.js +0 -1
  147. package/assets/esri/core/workers/chunks/e2cb295104ed2f8cd2ff.js +0 -1
  148. package/assets/esri/core/workers/chunks/f3d5d92e0aefc2593208.js +0 -1
package/interfaces.d.ts CHANGED
@@ -233,9 +233,11 @@ declare namespace __esri {
233
233
  export type BaseTileLayerLayerviewDestroyEventHandler = (event: BaseTileLayerLayerviewDestroyEvent) => void;
234
234
  export type BaseTileLayerRefreshEventHandler = (event: BaseTileLayerRefreshEvent) => void;
235
235
  export type BatchAttributeFormSubmitEventHandler = (event: BatchAttributeFormSubmitEvent) => void;
236
- export type BatchAttributeFormValueChangeEvent1Handler = (event: BatchAttributeFormValueChangeEvent1) => void;
237
236
  export type BatchAttributeFormValueChangeEventHandler = (event: BatchAttributeFormValueChangeEvent) => void;
238
237
  export type BatchAttributeFormViewModelSubmitEventHandler = (event: BatchAttributeFormViewModelSubmitEvent) => void;
238
+ export type BatchAttributeFormViewModelValueChangeEventHandler = (
239
+ event: BatchAttributeFormViewModelValueChangeEvent,
240
+ ) => void;
239
241
  export type BingMapsLayerLayerviewCreateErrorEventHandler = (event: BingMapsLayerLayerviewCreateErrorEvent) => void;
240
242
  export type BingMapsLayerLayerviewCreateEventHandler = (event: BingMapsLayerLayerviewCreateEvent) => void;
241
243
  export type BingMapsLayerLayerviewDestroyEventHandler = (event: BingMapsLayerLayerviewDestroyEvent) => void;
@@ -256,6 +258,7 @@ declare namespace __esri {
256
258
  export type CSVLayerLayerviewCreateEventHandler = (event: CSVLayerLayerviewCreateEvent) => void;
257
259
  export type CSVLayerLayerviewDestroyEventHandler = (event: CSVLayerLayerviewDestroyEvent) => void;
258
260
  export type CSVLayerRefreshEventHandler = (event: CSVLayerRefreshEvent) => void;
261
+ export type DaylightUserDateTimeChangeEventHandler = (event: DaylightUserDateTimeChangeEvent) => void;
259
262
  export type DaylightViewModelUserDateTimeChangeEventHandler = (
260
263
  event: DaylightViewModelUserDateTimeChangeEvent,
261
264
  ) => void;
@@ -1308,6 +1311,24 @@ declare namespace __esri {
1308
1311
  }
1309
1312
 
1310
1313
  export class VolumeMeasurementAnalysis extends Analysis {
1314
+ /**
1315
+ * The measurement type for the volume analysis.
1316
+ *
1317
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-VolumeMeasurementAnalysis.html#measureType Read more...}
1318
+ */
1319
+ measureType: "cut-fill" | "stockpile";
1320
+ /**
1321
+ * The type of analysis.
1322
+ *
1323
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-VolumeMeasurementAnalysis.html#type Read more...}
1324
+ */
1325
+ readonly type: "volume-measurement";
1326
+ /**
1327
+ * Indicates whether the analysis is ready to be computed and interacted with in the view.
1328
+ *
1329
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-VolumeMeasurementAnalysis.html#valid Read more...}
1330
+ */
1331
+ readonly valid: boolean;
1311
1332
  /**
1312
1333
  * VolumeMeasurementAnalysis computes the volume within a polygonal region and displays the measurement
1313
1334
  * in a 3D {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html SceneView}.
@@ -1315,9 +1336,28 @@ declare namespace __esri {
1315
1336
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-VolumeMeasurementAnalysis.html Read more...}
1316
1337
  */
1317
1338
  constructor(properties?: VolumeMeasurementAnalysisProperties);
1339
+ /**
1340
+ * Polygon whose volume is to be computed and displayed in the view.
1341
+ *
1342
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-VolumeMeasurementAnalysis.html#geometry Read more...}
1343
+ */
1344
+ get geometry(): Polygon | nullish;
1345
+ set geometry(value: PolygonProperties | nullish);
1318
1346
  }
1319
1347
 
1320
1348
  interface VolumeMeasurementAnalysisProperties extends AnalysisProperties {
1349
+ /**
1350
+ * Polygon whose volume is to be computed and displayed in the view.
1351
+ *
1352
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-VolumeMeasurementAnalysis.html#geometry Read more...}
1353
+ */
1354
+ geometry?: PolygonProperties | nullish;
1355
+ /**
1356
+ * The measurement type for the volume analysis.
1357
+ *
1358
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-VolumeMeasurementAnalysis.html#measureType Read more...}
1359
+ */
1360
+ measureType?: "cut-fill" | "stockpile";
1321
1361
  }
1322
1362
 
1323
1363
  /**
@@ -1354,6 +1394,48 @@ declare namespace __esri {
1354
1394
 
1355
1395
  export const analysisUtils: analysisUtils;
1356
1396
 
1397
+ /**
1398
+ * Note: reserved for internal use only, this is not part of the stable public API.
1399
+ *
1400
+ * Arcade feature utils for Components.
1401
+ */
1402
+ interface arcadeFeatureUtils {
1403
+ /**
1404
+ * Note: reserved for internal use only, this is not part of the stable public API.
1405
+ *
1406
+ * Compiles an Arcade expression into a compiled expression info.
1407
+ *
1408
+ * @param params The parameters for compilation.
1409
+ */
1410
+ compileExpression(params: arcadeFeatureUtilsCompileExpressionParams): Promise<any | nullish>;
1411
+ /**
1412
+ * Note: reserved for internal use only, this is not part of the stable public API.
1413
+ *
1414
+ * Compiles an array of Arcade expression info objects into compiled expression infos.
1415
+ *
1416
+ * @param expressionInfos Array of Arcade expression info objects.
1417
+ * @param graphic The graphic to use for context.
1418
+ */
1419
+ compileExpressionInfos(expressionInfos: popupExpressionInfo[], graphic: Graphic): Promise<any>;
1420
+ /**
1421
+ * Note: reserved for internal use only, this is not part of the stable public API.
1422
+ *
1423
+ * Formats a value returned from an Arcade expression for display.
1424
+ *
1425
+ * @param value The value to format.
1426
+ */
1427
+ formatArcadeValue(value: string): string;
1428
+ }
1429
+
1430
+ export const arcadeFeatureUtils: arcadeFeatureUtils;
1431
+
1432
+ export interface arcadeFeatureUtilsCompileExpressionParams {
1433
+ expression: string;
1434
+ createArcadeExecutor: any;
1435
+ createArcadeProfile: any;
1436
+ graphic: Graphic;
1437
+ }
1438
+
1357
1439
  /**
1358
1440
  * Note: reserved for internal use only, this is not part of the stable public API.
1359
1441
  *
@@ -1827,10 +1909,12 @@ declare namespace __esri {
1827
1909
  focused: boolean;
1828
1910
  height: number;
1829
1911
  layer: VideoLayer | nullish;
1912
+ map: Map | WebMap | nullish;
1830
1913
  ready: boolean;
1831
1914
  resizing: boolean;
1832
1915
  videoSize: number[];
1833
1916
  width: number;
1917
+ operationalDataVisible: boolean;
1834
1918
  }
1835
1919
 
1836
1920
  /**
@@ -5046,7 +5130,7 @@ declare namespace __esri {
5046
5130
 
5047
5131
  /**
5048
5132
  * A convenience module for importing {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-form-elements-Element.html Element} classes
5049
- * when developing with {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
5133
+ * when developing with {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
5050
5134
  *
5051
5135
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-form-elements.html Read more...}
5052
5136
  */
@@ -5572,7 +5656,7 @@ declare namespace __esri {
5572
5656
 
5573
5657
  /**
5574
5658
  * A convenience module for importing module:esri/form/elements/inputs/Input classes
5575
- * when developing with {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
5659
+ * when developing with {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
5576
5660
  *
5577
5661
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-form-elements-inputs.html Read more...}
5578
5662
  */
@@ -7356,7 +7440,7 @@ declare namespace __esri {
7356
7440
 
7357
7441
  /**
7358
7442
  * A convenience module for importing {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Geometry.html Geometry} classes when developing with
7359
- * {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
7443
+ * {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
7360
7444
  *
7361
7445
  * @deprecated since version 4.32. Use {@link module:esri/unionTypes} to import union types, or individual modules to import classes.
7362
7446
  *
@@ -24657,7 +24741,8 @@ declare namespace __esri {
24657
24741
  readonly spatialReference: SpatialReference;
24658
24742
  readonly type: "line-of-sight";
24659
24743
  /**
24660
- * LineOfSightLayer computes the line of sight from a single observer position towards
24744
+ * The line of sight layer enables the creation and display of visibility analysis where a line of sight
24745
+ * is computed from a single observer position towards
24661
24746
  * a set of targets.
24662
24747
  *
24663
24748
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-LineOfSightLayer.html Read more...}
@@ -50014,7 +50099,7 @@ declare namespace __esri {
50014
50099
 
50015
50100
  /**
50016
50101
  * A convenience module for importing {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-PointCloudRenderer.html PointCloudRenderer} classes when developing with
50017
- * {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
50102
+ * {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
50018
50103
  *
50019
50104
  * @deprecated since version 4.32. Use {@link module:esri/unionTypes} to import union types, or individual modules to import classes.
50020
50105
  *
@@ -50116,7 +50201,7 @@ declare namespace __esri {
50116
50201
 
50117
50202
  /**
50118
50203
  * A convenience module for importing {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-popup-content-Content.html Content} classes when developing
50119
- * with {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
50204
+ * with {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
50120
50205
  *
50121
50206
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-popup-content.html Read more...}
50122
50207
  */
@@ -55524,7 +55609,7 @@ declare namespace __esri {
55524
55609
  /**
55525
55610
  * A convenience module for importing renderer classes that can be used to render
55526
55611
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryLayer.html ImageryLayer} when developing with
55527
- * {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
55612
+ * {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
55528
55613
  *
55529
55614
  * @deprecated since version 4.32. Use {@link module:esri/unionTypes} to import union types, or individual modules to import classes.
55530
55615
  *
@@ -55655,7 +55740,7 @@ declare namespace __esri {
55655
55740
 
55656
55741
  /**
55657
55742
  * A convenience module for importing {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-renderers-Renderer.html Renderer} classes when developing with
55658
- * {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
55743
+ * {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
55659
55744
  *
55660
55745
  * @deprecated since version 4.32. Use {@link module:esri/unionTypes} to import union types, or individual modules to import classes.
55661
55746
  *
@@ -64588,7 +64673,7 @@ declare namespace __esri {
64588
64673
 
64589
64674
  /**
64590
64675
  * A convenience module for importing {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-locator.html locator} functions when developing with
64591
- * {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
64676
+ * {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
64592
64677
  *
64593
64678
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-locator.html Read more...}
64594
64679
  */
@@ -85895,7 +85980,7 @@ declare namespace __esri {
85895
85980
 
85896
85981
  /**
85897
85982
  * A convenience module for importing {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-symbols-Symbol.html Symbol} classes when developing with
85898
- * {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
85983
+ * {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
85899
85984
  *
85900
85985
  * @deprecated since version 4.32. Use {@link module:esri/unionTypes} to import union types, or individual modules to import classes.
85901
85986
  *
@@ -91110,7 +91195,7 @@ declare namespace __esri {
91110
91195
 
91111
91196
  /**
91112
91197
  * A convenience module for importing {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-tables-elements-AttributeTableElement.html AttributeTableElement} classes
91113
- * when developing with {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
91198
+ * when developing with {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
91114
91199
  *
91115
91200
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-tables-elements.html Read more...}
91116
91201
  */
@@ -91777,7 +91862,7 @@ declare namespace __esri {
91777
91862
  }
91778
91863
 
91779
91864
  /**
91780
- * A module for importing union types for use in {@link https://developers.arcgis.com/javascript/latest/typescript-setup/ TypeScript}.
91865
+ * A module for importing union types for use in {@link https://developers.arcgis.com/javascript/latest/get-started/#typescript TypeScript}.
91781
91866
  *
91782
91867
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-unionTypes.html Read more...}
91783
91868
  */
@@ -93047,7 +93132,7 @@ declare namespace __esri {
93047
93132
  /**
93048
93133
  * Tessellate a {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polygon.html Polygon} into triangles.
93049
93134
  *
93050
- * @param polygon The input geometry. *The geometry must be simple*; if the input geometry is not simple, you must first create a simplified version of it using {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#simplify geometryEngine.simplify}, and pass the simplified geometry to `tessellatePolygon`.
93135
+ * @param polygon The input geometry. *The geometry must be simple*; if the input geometry is not simple, you must first create a simplified version of it using {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-operators-simplifyOperator.html simplifyOperator}, and pass the simplified geometry to `tessellatePolygon`.
93051
93136
  *
93052
93137
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-layers-BaseLayerViewGL2D.html#tessellatePolygon Read more...}
93053
93138
  */
@@ -93055,7 +93140,7 @@ declare namespace __esri {
93055
93140
  /**
93056
93141
  * Tessellate a {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-Polyline.html Polyline} into triangles.
93057
93142
  *
93058
- * @param polyline The input geometry. *The geometry must be simple*; if the input geometry is not simple, you must first create a simplified version of it using {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-geometryEngine.html#simplify geometryEngine.simplify}, and pass the simplified geometry to `tessellatePolyline`.
93143
+ * @param polyline The input geometry. *The geometry must be simple*; if the input geometry is not simple, you must first create a simplified version of it using {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-geometry-operators-simplifyOperator.html simplifyOperator}, and pass the simplified geometry to `tessellatePolyline`.
93059
93144
  * @param width The width of the line; this will be used to scale xOffset and yOffset.
93060
93145
  *
93061
93146
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-layers-BaseLayerViewGL2D.html#tessellatePolyline Read more...}
@@ -93319,7 +93404,7 @@ declare namespace __esri {
93319
93404
  visible: boolean;
93320
93405
  constructor(properties?: any);
93321
93406
  /**
93322
- * Starts the interactive placement of a direct line measurement.
93407
+ * Starts the interactive placement of an area measurement.
93323
93408
  *
93324
93409
  * @param options An object specifying additional options.
93325
93410
  *
@@ -100383,6 +100468,14 @@ declare namespace __esri {
100383
100468
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-views-VideoView.html#layer Read more...}
100384
100469
  */
100385
100470
  layer: VideoLayer | nullish;
100471
+ /**
100472
+ * A reference to the associated {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html Map} or {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-WebMap.html WebMap}.
100473
+ *
100474
+ * @default null
100475
+ *
100476
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-views-VideoView.html#map Read more...}
100477
+ */
100478
+ map: Map | WebMap | nullish;
100386
100479
  /**
100387
100480
  * When `true`, this property indicates whether the view successfully satisfied all dependencies,
100388
100481
  * signaling that the following conditions are met.
@@ -100539,6 +100632,12 @@ declare namespace __esri {
100539
100632
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-views-VideoView.html#layer Read more...}
100540
100633
  */
100541
100634
  layer?: VideoLayer | nullish;
100635
+ /**
100636
+ * A reference to the associated {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html Map} or {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-WebMap.html WebMap}.
100637
+ *
100638
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-views-VideoView.html#map Read more...}
100639
+ */
100640
+ map?: Map | WebMap | nullish;
100542
100641
  /**
100543
100642
  * Options to configure the navigation behavior of the View.
100544
100643
  *
@@ -108063,7 +108162,6 @@ declare namespace __esri {
108063
108162
  submit(): void;
108064
108163
  on(name: "value-change", eventHandler: BatchAttributeFormValueChangeEventHandler): IHandle;
108065
108164
  on(name: "submit", eventHandler: BatchAttributeFormSubmitEventHandler): IHandle;
108066
- on(name: "value-change", eventHandler: BatchAttributeFormValueChangeEvent1Handler): IHandle;
108067
108165
  }
108068
108166
 
108069
108167
  interface BatchAttributeFormProperties extends WidgetProperties {
@@ -108335,6 +108433,7 @@ declare namespace __esri {
108335
108433
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm-BatchAttributeFormViewModel.html#submit Read more...}
108336
108434
  */
108337
108435
  submit(): void;
108436
+ on(name: "value-change", eventHandler: BatchAttributeFormViewModelValueChangeEventHandler): IHandle;
108338
108437
  on(name: "submit", eventHandler: BatchAttributeFormViewModelSubmitEventHandler): IHandle;
108339
108438
  }
108340
108439
 
@@ -108397,6 +108496,27 @@ declare namespace __esri {
108397
108496
  }
108398
108497
 
108399
108498
  export interface BatchAttributeFormViewModelSubmitEvent {
108499
+ name: "submit";
108500
+ results: SubmitResult[];
108501
+ valid: boolean;
108502
+ }
108503
+
108504
+ /**
108505
+ * Describes the state of a single feature's attribute values at the time of a form submission.
108506
+ *
108507
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm-BatchAttributeFormViewModel.html#SubmitResult Read more...}
108508
+ */
108509
+ export interface SubmitResult {
108510
+ feature: Graphic;
108511
+ invalidFields: string[];
108512
+ values: boolean;
108513
+ }
108514
+
108515
+ export interface BatchAttributeFormViewModelValueChangeEvent {
108516
+ features: Graphic[];
108517
+ fieldName: string;
108518
+ name: "value-change";
108519
+ value: number | string | nullish;
108400
108520
  }
108401
108521
 
108402
108522
  export class BatchFormInputs extends Accessor {
@@ -108413,7 +108533,7 @@ declare namespace __esri {
108413
108533
  */
108414
108534
  readonly description: string | nullish;
108415
108535
  /**
108416
- * An array of field or group inputs that make up the module:esri/widgets/BatchAttributeForm/BatchAttributeForm.
108536
+ * An array of field or group inputs that make up the {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm.html BatchAttributeForm}.
108417
108537
  *
108418
108538
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm-inputs-BatchFormInputs.html#inputs Read more...}
108419
108539
  */
@@ -108443,7 +108563,7 @@ declare namespace __esri {
108443
108563
  */
108444
108564
  readonly valid: boolean;
108445
108565
  /**
108446
- * The `BatchFormInputs` class is a read-only class that acts as a container for a set of inputs in a module:esri/widgets/BatchAttributeForm/BatchAttributeForm.
108566
+ * The `BatchFormInputs` class is a read-only class that acts as a container for a set of inputs in a {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm-BatchAttributeFormViewModel.html BatchAttributeFormViewModel}.
108447
108567
  *
108448
108568
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm-inputs-BatchFormInputs.html Read more...}
108449
108569
  */
@@ -108569,7 +108689,7 @@ declare namespace __esri {
108569
108689
  */
108570
108690
  declare readonly label: InputBase["label"];
108571
108691
  /**
108572
- * An array of layers included in the module:esri/widgets/BatchAttributeForm/BatchAttributeForm.
108692
+ * An array of layers included in the {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm.html BatchAttributeForm}.
108573
108693
  *
108574
108694
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm-inputs-FieldInput.html#layers Read more...}
108575
108695
  */
@@ -108660,7 +108780,7 @@ declare namespace __esri {
108660
108780
  */
108661
108781
  declare existsInAllLayers: InputBase["existsInAllLayers"];
108662
108782
  /**
108663
- * An array of [@link module:esri/widgets/BatchAttributeForm/input/FieldInput field inputs} contained within the group.
108783
+ * An array of {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm-inputs-FieldInput.html field inputs} contained within the group.
108664
108784
  *
108665
108785
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm-inputs-GroupInput.html#inputs Read more...}
108666
108786
  */
@@ -108672,7 +108792,7 @@ declare namespace __esri {
108672
108792
  */
108673
108793
  declare readonly label: InputBase["label"];
108674
108794
  /**
108675
- * An array of layers included in the module:esri/widgets/BatchAttributeForm/BatchAttributeForm.
108795
+ * An array of layers included in the {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm.html BatchAttributeForm}.
108676
108796
  *
108677
108797
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-BatchAttributeForm-inputs-GroupInput.html#layers Read more...}
108678
108798
  */
@@ -108733,6 +108853,9 @@ declare namespace __esri {
108733
108853
  }
108734
108854
 
108735
108855
  export interface BatchAttributeFormSubmitEvent {
108856
+ name: "submit";
108857
+ results: SubmitResult[];
108858
+ valid: boolean;
108736
108859
  }
108737
108860
 
108738
108861
  export interface BatchAttributeFormValueChangeEvent {
@@ -108742,13 +108865,6 @@ declare namespace __esri {
108742
108865
  value: number | string | nullish;
108743
108866
  }
108744
108867
 
108745
- export interface BatchAttributeFormValueChangeEvent1 {
108746
- features: Graphic[];
108747
- fieldName: string;
108748
- name: "value-change";
108749
- value: number | string | nullish;
108750
- }
108751
-
108752
108868
  /**
108753
108869
  * An object containing properties that control the visibility of certain elements within the FeatureForm widget.
108754
108870
  *
@@ -110931,6 +111047,7 @@ declare namespace __esri {
110931
111047
  */
110932
111048
  get viewModel(): DaylightViewModel;
110933
111049
  set viewModel(value: DaylightViewModelProperties);
111050
+ on(name: "user-date-time-change", eventHandler: DaylightUserDateTimeChangeEventHandler): IHandle;
110934
111051
  }
110935
111052
 
110936
111053
  interface DaylightProperties extends WidgetProperties {
@@ -111157,6 +111274,9 @@ declare namespace __esri {
111157
111274
  export interface DaylightViewModelUserDateTimeChangeEvent {
111158
111275
  }
111159
111276
 
111277
+ export interface DaylightUserDateTimeChangeEvent {
111278
+ }
111279
+
111160
111280
  /**
111161
111281
  * The visible elements that are displayed within the widget.
111162
111282
  *
@@ -112716,6 +112836,12 @@ declare namespace __esri {
112716
112836
  * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor-EditorViewModel.html#featureFormViewModel Read more...}
112717
112837
  */
112718
112838
  readonly featureFormViewModel: FeatureFormViewModel | nullish;
112839
+ /**
112840
+ * The form's view model used to support the Editor widget.
112841
+ *
112842
+ * {@link https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Editor-EditorViewModel.html#formViewModel Read more...}
112843
+ */
112844
+ readonly formViewModel: BatchAttributeFormViewModel | FeatureFormViewModel | nullish;
112719
112845
  /**
112720
112846
  * An array of editing configurations for individual layers.
112721
112847
  *
@@ -138187,8 +138313,8 @@ declare namespace __esri {
138187
138313
  export interface ResultAreaPropertiesExtend {
138188
138314
  type: "buffer" | "convexhull";
138189
138315
  distance: number;
138190
- unit: LinearUnits;
138191
- areaUnit: AreaUnits;
138316
+ unit: LengthUnit;
138317
+ areaUnit: AreaUnit;
138192
138318
  color: GraphicColor;
138193
138319
  show: boolean;
138194
138320
  }
package/kernel.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="4.34";let s,r=e;function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}r="4.34.0-next.22",has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,r as fullVersion,s as id,i as setId,e as version};
5
+ import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="4.34";let s,r=e;function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}r="4.34.0-next.24",has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,r as fullVersion,s as id,i as setId,e as version};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import t from"../Color.js";import r from"../request.js";import{deprecatedProperty as o}from"../core/deprecate.js";import i from"../core/Error.js";import s from"../core/Logger.js";import{clamp as l}from"../core/mathUtils.js";import{MultiOriginJSONMixin as n}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as a}from"../core/promiseUtils.js";import{watch as p,initial as y,whenOnce as m}from"../core/reactiveUtils.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import{Integer as d}from"../core/accessorSupport/ensureType.js";import"../core/has.js";import"../core/RandomLCG.js";import{reader as c}from"../core/accessorSupport/decorators/reader.js";import{subclass as h}from"../core/accessorSupport/decorators/subclass.js";import{OriginId as f}from"../core/accessorSupport/PropertyOrigin.js";import v from"../geometry/Extent.js";import g from"../geometry/Polyline.js";import S from"../geometry/SpatialReference.js";import b from"./Layer.js";import{ArcGISService as j}from"./mixins/ArcGISService.js";import{BlendLayer as O,effectProperty as T}from"./mixins/BlendLayer.js";import{CustomParametersMixin as w}from"./mixins/CustomParametersMixin.js";import{OperationalLayer as I}from"./mixins/OperationalLayer.js";import{PortalLayer as L}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as C}from"./mixins/ScaleRangeLayer.js";import{titleFromUrlAndName as x}from"./support/arcgisLayerUrl.js";import{opacity as U,id as P}from"./support/commonProperties.js";import{normalizeParsedUrlObject as E,urlProperty as N}from"./support/multiLayerServiceUtils.js";import M from"./support/PlaybackInfo.js";import{getVideoLayerCapabilities as k}from"./support/serviceCapabilitiesUtils.js";import V from"./support/TelemetryData.js";import F from"./support/TelemetryDisplay.js";import R from"./support/VideoFrame.js";import G from"./support/VideoTimeExtent.js";import J from"./video/VideoController.js";import{getFrameHorizonPoints as A,getGroundControlPoints as H,getTelemetryData as z,getServiceLayersInfo as q,getStyledTelemetrySymbol as D,getSensorTrailPoints as _,readVideoTimeExtent as B}from"./video/videoUtils.js";import W from"../symbols/CIMSymbol.js";import Q from"../symbols/PictureMarkerSymbol.js";import $ from"../symbols/SimpleFillSymbol.js";import Z from"../symbols/SimpleLineSymbol.js";import K from"../symbols/SimpleMarkerSymbol.js";import X from"../symbols/Symbol.js";import{write as Y}from"../symbols/support/jsonUtils.js";function ee(e,t){return{ignoreOrigin:this.originIdOf(t)<f.PORTAL_ITEM}}let te=[];const re=new t([255,127,0]),oe=new t([0,0,0,.05]),ie=new K({angle:0,color:re,size:10,style:"cross"}),se=new $({color:oe,outline:new Z({color:re,width:2})}),le=new Z({color:re,width:1}),ne=new K({angle:0,color:re,outline:{color:[255,255,255],width:1.33},size:10,style:"circle"}),ae=new Z({color:re,width:1}),pe={types:{base:X,key:"type",typeMap:{"simple-marker":K,"picture-marker":Q,cim:W}},json:{name:"drawingInfo.sensorSymbol",write:{writer:Y,overridePolicy:ee}}};function ye(e,t){return{type:t,json:{name:e,write:{overridePolicy:ee}}}}let me=class extends(O(C(j(I(L(n(w(b)))))))){constructor(e){super(e),this.capabilities=null,this.codecs=null,this.connectionInfo=null,this.controller=new J,this.copyright=null,this.created=null,this.customParameters=null,this.description=null,this.elevationSource=null,this.frame=null,this.frameCenterSymbol=ie.clone(),this.frameCount=null,this.frameEffect=null,this.frameOpacity=1,this.frameOutlineSymbol=se.clone(),this.fullExtent=null,this.initialExtent=null,this.layerId=null,this.operationalLayerType="ArcGISVideoLayer",this.playbackInfo=null,this.posterUrl=null,this.qualities=null,this.sensorSymbol=ne.clone(),this.sensorSightLineSymbol=le.clone(),this.sensorTrailSymbol=ae.clone(),this.serviceItemId=null,this.sourceJSON=null,this.sourceQuality=null,this.sourceType=null,this.spatialReference=S.WGS84,this.start=0,this.telemetryDisplay=new F,this.type="video",this.url=null,this.version=null,this.videoLayersInfo=null}initialize(){this.addHandles([p(()=>this.metadata,()=>{this.notifyChange("telemetry"),this.notifyChange("groundControlPoints"),this.notifyChange("frameHorizonPoints")}),p(()=>this.telemetry?.sensorLocation,e=>this._setSensorTrail(e),y)]),m(()=>this.loaded&&"can-play"===this.state&&this.duration>0).then(()=>{this.start>=0&&this.start<=this.duration&&this.setCurrentTime(this.start)})}destroy(){this.removeAllHandles(),this.controller&&this.controller.destroy()}load(e){const t=null!=e?e.signal:null,r=this.loadFromPortal({supportedTypes:["Video Service"],supportsData:!1},e).catch(a).then(()=>this._fetchService(t));return this.addResolvingPromise(r),Promise.resolve(this)}get autoplay(){return this.controller?.autoplay??!1}set autoplay(e){this.controller.autoplay=e}get buffered(){return this.controller.buffered}readCapabilitiesFromService(e,t){return k(t)}readConnectionInfo(e,t){const r=Object.values(t.connectionUrl);return r?.length&&(this.controller.playerUrl=r[0]),t.connectionUrl}get currentTime(){return this.controller.currentTime}get duration(){return this.controller.duration}get ended(){return this.controller.ended}get frameHorizonPoints(){return A(this.metadata)}get groundControlPoints(){return H(this.metadata)}get isLive(){return this.controller?.isLive??!1}get livestreamStatus(){return this.controller?.livestreamStatus}get loop(){return this.controller.loop}set loop(e){this.controller.loop=e}get metadata(){return this.controller?.currentMetadata}get mimeType(){return this.controller?.mimeType}get muted(){return this.controller.muted}set muted(e){this.controller.muted=e}get parsedUrl(){return E(this)}get playbackRate(){return this.controller.rate}set playbackRate(e){this.controller.rate=e}get playerUrl(){return this.controller.playerUrl}get playing(){return this.controller.playing}get started(){return this.controller?.started??!1}get state(){return this.controller.state}get telemetry(){return z(this.metadata)}readTitleFromService(e,{name:t}){return this.url?x(this.url,t):t}get videoElement(){return this.controller?.element}get videoHeight(){return this.controller?.videoHeight}readLayerInfosFromService(e,t){return q(t)}get videoTimeExtent(){return o(s.getLogger(this),"videoTimeExtent",{replacement:"fullTimeExtent",version:"4.33",warnOnce:!0}),this.fullTimeExtent}get videoWidth(){return this.controller?.videoWidth}get volume(){return this.controller?.volume??0}set volume(e){this.controller.volume=e}get waiting(){return this.controller.waiting}play(){this.controller.play()}pause(){this.controller.pause()}reset(){te=[],this.controller.reset()}setCurrentTime(e){if(this.duration<0)return;const t=l(e,0,this.duration);this.controller.setCurrentTime(t)}toGround(e,t){return this.controller?.sensorModel?.metadataSupportsTransforms?this.controller.sensorModel.transformImageToGeo(e,t):null}toVideo(e){if(!this.controller?.sensorModel?.metadataSupportsTransforms)return null;const t=this.controller.sensorModel.transformGeoToImage(e.x,e.y,e.z);return{x:t[0],y:t[1]}}updateTelemetryColor(e){this.frameCenterSymbol=D(this.frameCenterSymbol,e)??ie,this.frameOutlineSymbol=D(this.frameOutlineSymbol,e,oe)??se,this.sensorSightLineSymbol=D(this.sensorSightLineSymbol,e)??le,this.sensorTrailSymbol=D(this.sensorTrailSymbol,e)??ae,this.sensorSymbol=D(this.sensorSymbol,e)??ne}write(e,t){return null==this.layerId?(t?.messages?.push(new i("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' cannot be saved to a web map, web scene, or portal item. The ArcGIS server version must be greater than 11.2.`)),null):super.write(e,t)}async _fetchService(e){if(this.sourceJSON)return void this.read(this.sourceJSON,{origin:"service",url:this.parsedUrl});const{data:t,ssl:o}=await r(this.url,{query:{f:"json",...this.parsedUrl.query,...this.customParameters},signal:e});if(o&&(this.url=this.url.replace(/^http:/i,"https:")),!t?.currentVersion)return t.currentVersion="11.2",this.sourceJSON=t,void this.read(this.sourceJSON,{origin:"service",url:this.parsedUrl});if(this.layerId??=t.layers?.[0]?.id??null,null==this.layerId)throw new i("arcgis-layers:url-mismatch","The url is not a valid arcgis resource");const{data:s}=await r(this.parsedUrl.path,{query:{f:"json",...this.customParameters},signal:e});this.sourceJSON={...t,...s},this.read(this.sourceJSON,{origin:"service",url:this.parsedUrl})}_setSensorTrail(e){if(!e)return;const t=_(e,te);te=[...t];const r=te.map(e=>e.toArray()),o=new g({hasZ:e.hasZ,paths:[r]});this.telemetry.sensorTrail=o.clone()}};e([u({type:Boolean,json:{write:{ignoreOrigin:!0}}})],me.prototype,"autoplay",null),e([u({readOnly:!0})],me.prototype,"buffered",null),e([u({readOnly:!0})],me.prototype,"cameraInfo",void 0),e([u({readOnly:!0,json:{read:!1}})],me.prototype,"capabilities",void 0),e([c("service","capabilities",["supportsAppend","supportsCoverageQuery","supportsExportClip","supportsExportFrameset","supportsMensuration","supportsPreviews","supportsUpdate"])],me.prototype,"readCapabilitiesFromService",null),e([u({readOnly:!0})],me.prototype,"codecs",void 0),e([u({readOnly:!0})],me.prototype,"connectionInfo",void 0),e([c("connectionInfo",["connectionUrl"])],me.prototype,"readConnectionInfo",null),e([u()],me.prototype,"controller",void 0),e([u({type:String})],me.prototype,"copyright",void 0),e([u({readOnly:!0,type:Date})],me.prototype,"created",void 0),e([u({type:Number})],me.prototype,"currentTime",null),e([u({json:{write:!1}})],me.prototype,"customParameters",void 0),e([u({type:String})],me.prototype,"description",void 0),e([u({type:Number})],me.prototype,"duration",null),e([u({readOnly:!0})],me.prototype,"elevationSource",void 0),e([u({type:Boolean})],me.prototype,"ended",null),e([u({type:R})],me.prototype,"frame",void 0),e([u(ye("drawingInfo.frameCenterSymbol",K))],me.prototype,"frameCenterSymbol",void 0),e([u({readOnly:!0,type:d})],me.prototype,"frameCount",void 0),e([u(T)],me.prototype,"frameEffect",void 0),e([u(U)],me.prototype,"frameOpacity",void 0),e([u(ye("drawingInfo.frameOutlineSymbol",$))],me.prototype,"frameOutlineSymbol",void 0),e([u({type:v})],me.prototype,"fullExtent",void 0),e([u({readOnly:!0})],me.prototype,"frameHorizonPoints",null),e([u({readOnly:!0,json:{read:{reader:B,source:"time"}},type:G})],me.prototype,"fullTimeExtent",void 0),e([u({readOnly:!0})],me.prototype,"groundControlPoints",null),e([u(P)],me.prototype,"id",void 0),e([u({type:v})],me.prototype,"initialExtent",void 0),e([u({readOnly:!0})],me.prototype,"isLive",null),e([u({type:d,json:{read:!1,origins:{service:{read:{source:"id"}}}}})],me.prototype,"layerId",void 0),e([u({readOnly:!0})],me.prototype,"livestreamStatus",null),e([u({type:Boolean})],me.prototype,"loop",null),e([u({readOnly:!0})],me.prototype,"metadata",null),e([u({readOnly:!0})],me.prototype,"mimeType",null),e([u({type:Boolean,json:{write:{ignoreOrigin:!0}}})],me.prototype,"muted",null),e([u({type:["ArcGISVideoLayer"]})],me.prototype,"operationalLayerType",void 0),e([u({readOnly:!0})],me.prototype,"parsedUrl",null),e([u({type:M})],me.prototype,"playbackInfo",void 0),e([u({type:Number})],me.prototype,"playbackRate",null),e([u({readOnly:!0,type:String})],me.prototype,"playerUrl",null),e([u({readOnly:!0})],me.prototype,"playing",null),e([u({readOnly:!0,json:{read:{source:"poster"}}})],me.prototype,"posterUrl",void 0),e([u({readOnly:!0})],me.prototype,"qualities",void 0),e([u(pe)],me.prototype,"sensorSymbol",void 0),e([u(ye("drawingInfo.sensorSightLineSymbol",Z))],me.prototype,"sensorSightLineSymbol",void 0),e([u(ye("drawingInfo.sensorTrailSymbol",Z))],me.prototype,"sensorTrailSymbol",void 0),e([u({readOnly:!0})],me.prototype,"serviceItemId",void 0),e([u()],me.prototype,"sourceJSON",void 0),e([u({readOnly:!0})],me.prototype,"sourceQuality",void 0),e([u({readOnly:!0,json:{name:"serviceType"}})],me.prototype,"sourceType",void 0),e([u()],me.prototype,"spatialReference",void 0),e([u({json:{write:!0}})],me.prototype,"start",void 0),e([u({readOnly:!0})],me.prototype,"started",null),e([u({readOnly:!0,type:String})],me.prototype,"state",null),e([u({readOnly:!0,type:V})],me.prototype,"telemetry",null),e([u({type:F,nonNullable:!0,json:{write:{ignoreOrigin:!0}}})],me.prototype,"telemetryDisplay",void 0),e([c("service","title",["name"])],me.prototype,"readTitleFromService",null),e([u({readOnly:!0})],me.prototype,"type",void 0),e([u(N())],me.prototype,"url",void 0),e([u({readOnly:!0,type:Number,json:{read:{source:"currentVersion"}}})],me.prototype,"version",void 0),e([u({readOnly:!0})],me.prototype,"videoElement",null),e([u({readOnly:!0})],me.prototype,"videoHeight",null),e([u({readOnly:!0,json:{read:!1}})],me.prototype,"videoLayersInfo",void 0),e([c("service","videoLayersInfo",["id","name","poster","serviceType","type"])],me.prototype,"readLayerInfosFromService",null),e([u({type:G,readOnly:!0})],me.prototype,"videoTimeExtent",null),e([u({readOnly:!0})],me.prototype,"videoWidth",null),e([u()],me.prototype,"volume",null),e([u({readOnly:!0})],me.prototype,"waiting",null),me=e([h("esri.layers.VideoLayer")],me);const ue=me;export{ue as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import t from"../Color.js";import r from"../request.js";import{deprecatedProperty as o}from"../core/deprecate.js";import i from"../core/Error.js";import s from"../core/Logger.js";import{clamp as l}from"../core/mathUtils.js";import{MultiOriginJSONMixin as n}from"../core/MultiOriginJSONSupport.js";import{throwIfAbortError as a}from"../core/promiseUtils.js";import{watch as p,initial as y,whenOnce as m}from"../core/reactiveUtils.js";import{property as u}from"../core/accessorSupport/decorators/property.js";import{Integer as d}from"../core/accessorSupport/ensureType.js";import"../core/has.js";import"../core/RandomLCG.js";import{reader as c}from"../core/accessorSupport/decorators/reader.js";import{subclass as h}from"../core/accessorSupport/decorators/subclass.js";import{OriginId as f}from"../core/accessorSupport/PropertyOrigin.js";import v from"../geometry/Extent.js";import g from"../geometry/Polyline.js";import S from"../geometry/SpatialReference.js";import b from"./Layer.js";import{ArcGISService as O}from"./mixins/ArcGISService.js";import{BlendLayer as j,effectProperty as T}from"./mixins/BlendLayer.js";import{CustomParametersMixin as w}from"./mixins/CustomParametersMixin.js";import{OperationalLayer as I}from"./mixins/OperationalLayer.js";import{PortalLayer as L}from"./mixins/PortalLayer.js";import{ScaleRangeLayer as C}from"./mixins/ScaleRangeLayer.js";import{titleFromUrlAndName as x}from"./support/arcgisLayerUrl.js";import{opacity as U,id as P}from"./support/commonProperties.js";import{normalizeParsedUrlObject as E,urlProperty as N}from"./support/multiLayerServiceUtils.js";import M from"./support/PlaybackInfo.js";import{getVideoLayerCapabilities as k}from"./support/serviceCapabilitiesUtils.js";import V from"./support/TelemetryData.js";import F from"./support/TelemetryDisplay.js";import R from"./support/VideoFrame.js";import G from"./support/VideoTimeExtent.js";import H from"./video/VideoController.js";import{getFrameHorizonPoints as J,getGroundControlPoints as A,getTelemetryData as z,getServiceLayersInfo as q,getStyledTelemetrySymbol as D,getSensorTrailPoints as _,readVideoTimeExtent as B}from"./video/videoUtils.js";import W from"../symbols/CIMSymbol.js";import Q from"../symbols/PictureMarkerSymbol.js";import $ from"../symbols/SimpleFillSymbol.js";import Z from"../symbols/SimpleLineSymbol.js";import K from"../symbols/SimpleMarkerSymbol.js";import X from"../symbols/Symbol.js";import{write as Y}from"../symbols/support/jsonUtils.js";function ee(e,t){return{ignoreOrigin:this.originIdOf(t)<f.PORTAL_ITEM}}let te=[];const re=new t([255,127,0]),oe=new t([0,0,0,.05]),ie=new K({angle:0,color:re,size:10,style:"cross"}),se=new $({color:oe,outline:new Z({color:re,width:2})}),le=new Z({color:re,width:1}),ne=new K({angle:0,color:re,outline:{color:[255,255,255],width:1.33},size:10,style:"circle"}),ae=new Z({color:re,width:1}),pe={types:{base:X,key:"type",typeMap:{"simple-marker":K,"picture-marker":Q,cim:W}},json:{name:"drawingInfo.sensorSymbol",write:{writer:Y,overridePolicy:ee}}};function ye(e,t){return{type:t,json:{name:e,write:{overridePolicy:ee}}}}let me=class extends(j(C(O(I(L(n(w(b)))))))){constructor(e){super(e),this.capabilities=null,this.codecs=null,this.connectionInfo=null,this.controller=new H,this.copyright=null,this.created=null,this.customParameters=null,this.description=null,this.elevationSource=null,this.frame=null,this.frameCenterSymbol=ie.clone(),this.frameCount=null,this.frameEffect=null,this.frameOpacity=1,this.frameOutlineSymbol=se.clone(),this.fullExtent=null,this.initialExtent=null,this.layerId=null,this.operationalLayerType="ArcGISVideoLayer",this.playbackInfo=null,this.posterUrl=null,this.qualities=null,this.sensorSymbolOrientation={source:"platformHeading",symbolOffset:0},this.sensorSymbol=ne.clone(),this.sensorSightLineSymbol=le.clone(),this.sensorTrailSymbol=ae.clone(),this.serviceItemId=null,this.sourceJSON=null,this.sourceQuality=null,this.sourceType=null,this.spatialReference=S.WGS84,this.start=0,this.telemetryDisplay=new F,this.type="video",this.url=null,this.version=null,this.videoLayersInfo=null}initialize(){this.addHandles([p(()=>this.metadata,()=>{this.notifyChange("telemetry"),this.notifyChange("groundControlPoints"),this.notifyChange("frameHorizonPoints")}),p(()=>this.telemetry?.sensorLocation,e=>this._setSensorTrail(e),y)]),m(()=>this.loaded&&"can-play"===this.state&&this.duration>0).then(()=>{this.start>=0&&this.start<=this.duration&&this.setCurrentTime(this.start)})}destroy(){this.removeAllHandles(),this.controller&&this.controller.destroy()}load(e){const t=null!=e?e.signal:null,r=this.loadFromPortal({supportedTypes:["Video Service"],supportsData:!1},e).catch(a).then(()=>this._fetchService(t));return this.addResolvingPromise(r),Promise.resolve(this)}get autoplay(){return this.controller?.autoplay??!1}set autoplay(e){this.controller.autoplay=e}get buffered(){return this.controller.buffered}readCapabilitiesFromService(e,t){return k(t)}readConnectionInfo(e,t){const r=Object.values(t.connectionUrl);return r?.length&&(this.controller.playerUrl=r[0]),t.connectionUrl}get currentTime(){return this.controller.currentTime}get duration(){return this.controller.duration}get ended(){return this.controller.ended}get frameHorizonPoints(){return J(this.metadata)}get groundControlPoints(){return A(this.metadata)}get isLive(){return this.controller?.isLive??!1}get livestreamStatus(){return this.controller?.livestreamStatus}get loop(){return this.controller.loop}set loop(e){this.controller.loop=e}get metadata(){return this.controller?.currentMetadata}get mimeType(){return this.controller?.mimeType}get muted(){return this.controller.muted}set muted(e){this.controller.muted=e}get parsedUrl(){return E(this)}get playbackRate(){return this.controller.rate}set playbackRate(e){this.controller.rate=e}get playerUrl(){return this.controller.playerUrl}get playing(){return this.controller.playing}get started(){return this.controller?.started??!1}get state(){return this.controller.state}get telemetry(){return z(this.metadata)}readTitleFromService(e,{name:t}){return this.url?x(this.url,t):t}get videoElement(){return this.controller?.element}get videoHeight(){return this.controller?.videoHeight}readLayerInfosFromService(e,t){return q(t)}get videoTimeExtent(){return o(s.getLogger(this),"videoTimeExtent",{replacement:"fullTimeExtent",version:"4.33",warnOnce:!0}),this.fullTimeExtent}get videoWidth(){return this.controller?.videoWidth}get volume(){return this.controller?.volume??0}set volume(e){this.controller.volume=e}get waiting(){return this.controller.waiting}play(){this.controller.play()}pause(){this.controller.pause()}reset(){te=[],this.controller.reset()}setCurrentTime(e){if(this.duration<0)return;const t=l(e,0,this.duration);this.controller.setCurrentTime(t)}toGround(e,t){return this.controller?.sensorModel?.metadataSupportsTransforms?this.controller.sensorModel.transformImageToGeo(e,t):null}toVideo(e){if(!this.controller?.sensorModel?.metadataSupportsTransforms)return null;const t=this.controller.sensorModel.transformGeoToImage(e.x,e.y,e.z);return{x:t[0],y:t[1]}}updateTelemetryColor(e){this.frameCenterSymbol=D(this.frameCenterSymbol,e)??ie,this.frameOutlineSymbol=D(this.frameOutlineSymbol,e,oe)??se,this.sensorSightLineSymbol=D(this.sensorSightLineSymbol,e)??le,this.sensorTrailSymbol=D(this.sensorTrailSymbol,e)??ae,this.sensorSymbol=D(this.sensorSymbol,e)??ne}write(e,t){return null==this.layerId?(t?.messages?.push(new i("layer:unsupported",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' cannot be saved to a web map, web scene, or portal item. The ArcGIS server version must be greater than 11.2.`)),null):super.write(e,t)}async _fetchService(e){if(this.sourceJSON)return void this.read(this.sourceJSON,{origin:"service",url:this.parsedUrl});const{data:t,ssl:o}=await r(this.url,{query:{f:"json",...this.parsedUrl.query,...this.customParameters},signal:e});if(o&&(this.url=this.url.replace(/^http:/i,"https:")),!t?.currentVersion)return t.currentVersion="11.2",this.sourceJSON=t,void this.read(this.sourceJSON,{origin:"service",url:this.parsedUrl});if(this.layerId??=t.layers?.[0]?.id??null,null==this.layerId)throw new i("arcgis-layers:url-mismatch","The url is not a valid arcgis resource");const{data:s}=await r(this.parsedUrl.path,{query:{f:"json",...this.customParameters},signal:e});this.sourceJSON={...t,...s},this.read(this.sourceJSON,{origin:"service",url:this.parsedUrl})}_setSensorTrail(e){if(!e)return;const t=_(e,te);te=[...t];const r=te.map(e=>e.toArray()),o=new g({hasZ:e.hasZ,paths:[r]});this.telemetry.sensorTrail=o.clone()}};e([u({type:Boolean,json:{write:{ignoreOrigin:!0}}})],me.prototype,"autoplay",null),e([u({readOnly:!0})],me.prototype,"buffered",null),e([u({readOnly:!0})],me.prototype,"cameraInfo",void 0),e([u({readOnly:!0,json:{read:!1}})],me.prototype,"capabilities",void 0),e([c("service","capabilities",["supportsAppend","supportsCoverageQuery","supportsExportClip","supportsExportFrameset","supportsMensuration","supportsPreviews","supportsUpdate"])],me.prototype,"readCapabilitiesFromService",null),e([u({readOnly:!0})],me.prototype,"codecs",void 0),e([u({readOnly:!0})],me.prototype,"connectionInfo",void 0),e([c("connectionInfo",["connectionUrl"])],me.prototype,"readConnectionInfo",null),e([u()],me.prototype,"controller",void 0),e([u({type:String})],me.prototype,"copyright",void 0),e([u({readOnly:!0,type:Date})],me.prototype,"created",void 0),e([u({type:Number})],me.prototype,"currentTime",null),e([u({json:{write:!1}})],me.prototype,"customParameters",void 0),e([u({type:String})],me.prototype,"description",void 0),e([u({type:Number})],me.prototype,"duration",null),e([u({readOnly:!0})],me.prototype,"elevationSource",void 0),e([u({type:Boolean})],me.prototype,"ended",null),e([u({type:R})],me.prototype,"frame",void 0),e([u(ye("drawingInfo.frameCenterSymbol",K))],me.prototype,"frameCenterSymbol",void 0),e([u({readOnly:!0,type:d})],me.prototype,"frameCount",void 0),e([u(T)],me.prototype,"frameEffect",void 0),e([u(U)],me.prototype,"frameOpacity",void 0),e([u(ye("drawingInfo.frameOutlineSymbol",$))],me.prototype,"frameOutlineSymbol",void 0),e([u({type:v})],me.prototype,"fullExtent",void 0),e([u({readOnly:!0})],me.prototype,"frameHorizonPoints",null),e([u({readOnly:!0,json:{read:{reader:B,source:"time"}},type:G})],me.prototype,"fullTimeExtent",void 0),e([u({readOnly:!0})],me.prototype,"groundControlPoints",null),e([u(P)],me.prototype,"id",void 0),e([u({type:v})],me.prototype,"initialExtent",void 0),e([u({readOnly:!0})],me.prototype,"isLive",null),e([u({type:d,json:{read:!1,origins:{service:{read:{source:"id"}}}}})],me.prototype,"layerId",void 0),e([u({readOnly:!0})],me.prototype,"livestreamStatus",null),e([u({type:Boolean})],me.prototype,"loop",null),e([u({readOnly:!0})],me.prototype,"metadata",null),e([u({readOnly:!0})],me.prototype,"mimeType",null),e([u({type:Boolean,json:{write:{ignoreOrigin:!0}}})],me.prototype,"muted",null),e([u({type:["ArcGISVideoLayer"]})],me.prototype,"operationalLayerType",void 0),e([u({readOnly:!0})],me.prototype,"parsedUrl",null),e([u({type:M})],me.prototype,"playbackInfo",void 0),e([u({type:Number})],me.prototype,"playbackRate",null),e([u({readOnly:!0,type:String})],me.prototype,"playerUrl",null),e([u({readOnly:!0})],me.prototype,"playing",null),e([u({readOnly:!0,json:{read:{source:"poster"}}})],me.prototype,"posterUrl",void 0),e([u({readOnly:!0})],me.prototype,"qualities",void 0),e([u()],me.prototype,"sensorSymbolOrientation",void 0),e([u(pe)],me.prototype,"sensorSymbol",void 0),e([u(ye("drawingInfo.sensorSightLineSymbol",Z))],me.prototype,"sensorSightLineSymbol",void 0),e([u(ye("drawingInfo.sensorTrailSymbol",Z))],me.prototype,"sensorTrailSymbol",void 0),e([u({readOnly:!0})],me.prototype,"serviceItemId",void 0),e([u()],me.prototype,"sourceJSON",void 0),e([u({readOnly:!0})],me.prototype,"sourceQuality",void 0),e([u({readOnly:!0,json:{name:"serviceType"}})],me.prototype,"sourceType",void 0),e([u()],me.prototype,"spatialReference",void 0),e([u({json:{write:!0}})],me.prototype,"start",void 0),e([u({readOnly:!0})],me.prototype,"started",null),e([u({readOnly:!0,type:String})],me.prototype,"state",null),e([u({readOnly:!0,type:V})],me.prototype,"telemetry",null),e([u({type:F,nonNullable:!0,json:{write:{ignoreOrigin:!0}}})],me.prototype,"telemetryDisplay",void 0),e([c("service","title",["name"])],me.prototype,"readTitleFromService",null),e([u({readOnly:!0})],me.prototype,"type",void 0),e([u(N())],me.prototype,"url",void 0),e([u({readOnly:!0,type:Number,json:{read:{source:"currentVersion"}}})],me.prototype,"version",void 0),e([u({readOnly:!0})],me.prototype,"videoElement",null),e([u({readOnly:!0})],me.prototype,"videoHeight",null),e([u({readOnly:!0,json:{read:!1}})],me.prototype,"videoLayersInfo",void 0),e([c("service","videoLayersInfo",["id","name","poster","serviceType","type"])],me.prototype,"readLayerInfosFromService",null),e([u({type:G,readOnly:!0})],me.prototype,"videoTimeExtent",null),e([u({readOnly:!0})],me.prototype,"videoWidth",null),e([u()],me.prototype,"volume",null),e([u({readOnly:!0})],me.prototype,"waiting",null),me=e([h("esri.layers.VideoLayer")],me);const ue=me;export{ue as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../core/Clonable.js";import r from"../../../core/Error.js";import o from"../../../core/JSONSupport.js";import a from"../../../core/Logger.js";import{property as i}from"../../../core/accessorSupport/decorators/property.js";import{cast as n}from"../../../core/accessorSupport/decorators/cast.js";import{enumeration as s}from"../../../core/accessorSupport/decorators/enumeration.js";import{reader as p}from"../../../core/accessorSupport/decorators/reader.js";import{subclass as c}from"../../../core/accessorSupport/decorators/subclass.js";import{writer as l}from"../../../core/accessorSupport/decorators/writer.js";import m from"../../../geometry/Point.js";import{getGeometryZScaler as u}from"../../../geometry/support/zscale.js";import y from"./CameraOrientation.js";import d from"./cameraOrientationFactory.js";import{appendPrefixAndSuffix as f,getEffectiveElevationSource as g,getMetersPerUnitOfSR as h,orientedImageryTypeMap as v}from"./utils.js";import{CameraOrientationType as w}from"../enums/CameraOrientationType.js";import{ltpToGeographic as O}from"../transformations/utils.js";function j(e){throw new r("exposure-point:missing-default-value",`a value for ${e} is missing in default properties`)}function b(e,t){throw new r("exposure-point:missing-attribute-value",`a value for ${e} is missing in attribute table`,{exposurePoint:t})}const S=e=>({cast:e=>{const t=parseFloat(e);return Number.isFinite(t)?t:void 0},json:{name:e,write:{writer:(e,t,r)=>{t[r]=Number.isFinite(e)?e:void 0}}}}),N=e=>({cast:e=>"string"==typeof e?e.split(";").map(Number):e,json:{default:e,write:{writer:(e,t,r)=>{t[r]=e?.join(";")}}}});let I=class extends(t.ClonableMixin(o)){constructor(e){super(e),this._geometry=null,this.cameraOrientation=null,this.elevation=null,this.elevationSource=null,this.name=null,this.sourceMap=null}read(e,t){const r={},{attributes:o,geometry:a}=e,i={};for(const s in o)r[s.toLowerCase()]=o[s],i[s.toLowerCase()]=s;const n=e.layer??{};n.sequenceOrderField?.length&&(r.sequenceorder=o[n.sequenceOrderField],i.sequenceorder=n.sequenceOrderField),super.read({geometry:a,layer:n,sourceMap:i,...r},t)}write(e,t){const r=super.write(e,t),{sourceMap:o}=this;if(!o||!r)return r;const a={};for(const i in r){const e=o[i.toLowerCase()];e&&(a[e]=r[i])}return a}readCameraHeading(e,t){const{cameraheading:r,camheading:o,layer:a}=t;return r??o??a.cameraHeading}readCameraHeight(e,t){const{cameraheight:r,avghtag:o,layer:a}=t;return r??o??a.cameraHeight}readCamOffset(e,t){const{cameraoffset:r,camoffset:o}=t;return r?.split(";").map(Number)??o?.split(";").map(Number)??null}writeCameraOffset(e,t){e&&(t.cameraOffset=e.join(";"))}readCameraOrientation(e,t){const{cameraorientation:r,camori:o}=t;return r??o}readCameraPitch(e,t){const{camerapitch:r,campitch:o,layer:a}=t;return r??o??a.cameraPitch}readCameraRoll(e,t){const{cameraroll:r,camroll:o,layer:a}=t;return r??o??a.cameraRoll}readDepthImage(e,t){const{depthimage:r,depthimg:o,layer:a}=t,i=r??o??null,{depthImagePathPrefix:n,depthImagePathSuffix:s}=a??{};return f(i,n,s)}readElevationSource(e,t){const{elevationsource:r,layer:o}=t,{demPathSuffix:a,demPathPrefix:i}=o;if(r){const e=this._parseIfJSON(r);return g(e,i,a)}return o.effectiveElevationSource}readFarDistance(e,t){const{fardistance:r,fardist:o,layer:a}=t;return r??o??a.farDistance}get geometry(){const e=this._geometry.clone();if(!e)return null;const{cameraOffset:t}=this;if(t){const[r,o,a]=t;e.x+=r,e.y+=o,null!=e.z&&null!=a&&(e.z+=a)}return e}set geometry(e){this._geometry=e}writeGeometry(e,t){t.geometry=this._geometry.toJSON()}readHFOV(e,t){const{horizontalfieldofview:r,hfov:o,layer:a}=t;return r??o??a.horizontalFieldOfView}readImageURL(e,t){const{imagepath:r,layer:o}=t;r||b("imagePath",this);const{imagePathPrefix:a,imagePathSuffix:i}=o;return f(r,a,i)}readImageRotation(e,t){const{imagerotation:r,imgrot:o,layer:a}=t;return r??o??a.imageRotation}get isHorizontal(){return"horizontal"===this.orientedImageryType}get isInspection(){return"inspection"===this.orientedImageryType}get isNadir(){return"nadir"===this.orientedImageryType}get isOblique(){return"oblique"===this.orientedImageryType}get isSpherical(){return"360"===this.orientedImageryType}get location(){const{cameraOrientation:e,cameraHeight:t,elevation:r}=this;if(e){const{type:t,x:r,y:o,z:a,horizontalWKID:i,verticalWKID:n}=e,s="number"==typeof i?{wkid:i}:{wkt:i};if(t===w.LTP){const{latitude:t,longitude:r,ellipsoidRadius:o,squaredEccentricity:a,properties:i}=e,{x:n,y:s,z:p}=i;return new m(O([n,s,p],[t,r,o,a]))}const p=new m({x:r,y:o,z:a,spatialReference:s}),c=n?u("point",{wkid:n},s):null;return c&&c(p),p}if("number"!=typeof t)throw j("cameraHeight");const o=this.geometry.clone();return o.z=o.hasZ?o.z:(r??0)+t/h(o.spatialReference),o}set matrix(e){if(!e||9!==e.length)return a.getLogger(this).warn("Ignoring rotation matrix because it doesn't have 9 values",{value:e}),void this._set("matrix",null);this._set("matrix",e)}readNearDistance(e,t){const{neardistance:r,neardist:o,layer:a}=t;return r??o??a.nearDistance}readOffsetFromStart(e,t){return t.offsetfromstart??null}readOrientationAccuracy(e,t){const{accuracy:r,orientationaccuracy:o}=t;return o?.split(";").map(Number)??r?.split(";").map(Number)??null}writeOrientationAccuracy(e,t){e&&(t.orientationAccuracy=e.join(";"))}readOIType(e,t){const{orientedimagerytype:r,oitype:o,camerapitch:a,campitch:i,layer:n}=t,s=v.read(r??o??n.orientedImageryType),p=a??i??n.cameraPitch;return"oblique"===s?p<10?"nadir":"oblique":s}set radial(e){if(e)if("string"!=typeof e)this._set("radial",e);else{const[t,r,o]=e.split(";").map(Number);this._set("radial",[t??0,r??0,o??0])}else this._set("radial",[0,0,0])}readSequenceOrder(e,t){const{layer:r}=t;return t[r.sequenceOrderField.toLowerCase()]}writeSequenceOrder(e,t){if(!e)return;const{sourceMap:r}=this;if(r){t[r.sequenceorder]=e}}set tangential(e){if(e)if("string"!=typeof e)this._set("tangential",e);else{const[t,r]=e.split(";").map(Number);this._set("tangential",[t??0,r??0])}else this._set("tangential",[0,0])}readVFOV(e,t){const{verticalfieldofview:r,vfov:o,layer:a}=t;return r??o??a.verticalFieldOfView}_parseIfJSON(e){let t=null;try{t=JSON.parse(e)}catch(r){a.getLogger(this).error("couldn't parse the given elevation source JSON",e,r)}return t}clone(){const e=super.clone();return e._geometry=this._geometry.clone(),e}};e([i()],I.prototype,"_geometry",void 0),e([i(S())],I.prototype,"a0",void 0),e([i(S())],I.prototype,"a1",void 0),e([i(S())],I.prototype,"a2",void 0),e([i({type:Date,json:{write:{enabled:!0,target:"acquisitionDate"},name:"acquisitiondate"}})],I.prototype,"acquisitionDate",void 0),e([i(S())],I.prototype,"b0",void 0),e([i(S())],I.prototype,"b1",void 0),e([i(S())],I.prototype,"b2",void 0),e([i({type:Number,json:{write:!0,read:{source:["cameraheading","camheading","layer.cameraHeading"]}}})],I.prototype,"cameraHeading",void 0),e([p("cameraHeading")],I.prototype,"readCameraHeading",null),e([i({type:Number,json:{write:!0}})],I.prototype,"cameraHeight",void 0),e([p("cameraHeight",["cameraheight","avghtag","layer.cameraHeight"])],I.prototype,"readCameraHeight",null),e([i()],I.prototype,"cameraOffset",void 0),e([p("cameraOffset",["cameraoffset","camoffset"])],I.prototype,"readCamOffset",null),e([l("cameraOffset")],I.prototype,"writeCameraOffset",null),e([i({json:{write:{writer:(e,t,r)=>{t[r]=e.toString()}}},type:y}),n(e=>e?d.getCameraOrientation(e):null)],I.prototype,"cameraOrientation",void 0),e([p("cameraOrientation",["cameraorientation","camori"])],I.prototype,"readCameraOrientation",null),e([i({type:Number,json:{write:!0}})],I.prototype,"cameraPitch",void 0),e([p("cameraPitch",["camerapitch","campitch","layer.cameraPitch"])],I.prototype,"readCameraPitch",null),e([i({type:Number,json:{write:!0}})],I.prototype,"cameraRoll",void 0),e([p("cameraRoll",["cameraroll","camroll","layer.cameraRoll"])],I.prototype,"readCameraRoll",null),e([i({json:{write:!0},type:String})],I.prototype,"depthImage",void 0),e([p("depthImage",["depthimage","depthimg"])],I.prototype,"readDepthImage",null),e([i({type:Number,json:{write:!0}})],I.prototype,"elevation",void 0),e([i({json:{write:!0},clonable:"reference"})],I.prototype,"elevationSource",void 0),e([p("elevationSource",["elevationsource","layer.effectiveElevationSource"])],I.prototype,"readElevationSource",null),e([i({json:{name:"exposurestationid",write:{target:"exposureStationId"}},type:String})],I.prototype,"exposureStationId",void 0),e([i({type:Number,json:{write:!0}})],I.prototype,"farDistance",void 0),e([p("farDistance",["fardistance","fardist","layer.farDistance"])],I.prototype,"readFarDistance",null),e([i(S("focallength"))],I.prototype,"focalLength",void 0),e([i({type:m,json:{name:"geometry"}})],I.prototype,"geometry",null),e([l("geometry")],I.prototype,"writeGeometry",null),e([i({type:Number,json:{write:!0}})],I.prototype,"horizontalFieldOfView",void 0),e([p("horizontalFieldOfView",["horizontalfieldofview","hfov","layer.horizontalFieldOfView"])],I.prototype,"readHFOV",null),e([i({json:{write:!0},type:String})],I.prototype,"imagePath",void 0),e([p("imagePath",["imagepath"])],I.prototype,"readImageURL",null),e([i({type:Number,json:{write:!0}})],I.prototype,"imageRotation",void 0),e([p("imageRotation",["imagerotation","imgrot","layer.imageRotation"])],I.prototype,"readImageRotation",null),e([i()],I.prototype,"isHorizontal",null),e([i()],I.prototype,"isInspection",null),e([i()],I.prototype,"isNadir",null),e([i()],I.prototype,"isOblique",null),e([i()],I.prototype,"isSpherical",null),e([i()],I.prototype,"location",null),e([i(N())],I.prototype,"matrix",null),e([i({json:{write:!0},type:String})],I.prototype,"name",void 0),e([i({type:Number,json:{write:!0}})],I.prototype,"nearDistance",void 0),e([p("nearDistance",["neardistance","neardist","layer.nearDistance"])],I.prototype,"readNearDistance",null),e([i({json:{write:!0,name:"objectid"},type:Number})],I.prototype,"objectId",void 0),e([i({type:Number,json:{write:!0}})],I.prototype,"offsetFromStart",void 0),e([p("offsetFromStart",["offsetfromstart"])],I.prototype,"readOffsetFromStart",null),e([i()],I.prototype,"orientationAccuracy",void 0),e([p("orientationAccuracy",["accuracy","orientationaccuracy"])],I.prototype,"readOrientationAccuracy",null),e([l("orientationAccuracy")],I.prototype,"writeOrientationAccuracy",null),e([s(v)],I.prototype,"orientedImageryType",void 0),e([p("orientedImageryType",["orientedimagerytype","oitype","layer.orientedImageryType"])],I.prototype,"readOIType",null),e([i({type:Number,json:{write:!0,read:{source:"principalx"}}})],I.prototype,"principalX",void 0),e([i({type:Number,json:{write:!0,read:{source:"principaly"}}})],I.prototype,"principalY",void 0),e([i(N([0,0,0]))],I.prototype,"radial",null),e([i({type:String})],I.prototype,"sequenceOrder",void 0),e([p("sequenceOrder",["sequenceorder","layer.sequenceOrderField"])],I.prototype,"readSequenceOrder",null),e([l("sequenceOrder")],I.prototype,"writeSequenceOrder",null),e([i({type:Object})],I.prototype,"sourceMap",void 0),e([i(N([0,0]))],I.prototype,"tangential",null),e([i({type:Number,json:{write:!0}})],I.prototype,"verticalFieldOfView",void 0),e([p("verticalFieldOfView",["verticalfieldofview","vfov","layer.verticalFieldOfView"])],I.prototype,"readVFOV",null),I=e([c("esri.layers.orientedImagery.core.ExposurePoint")],I);export{I as default};
5
+ import{_ as e}from"../../../chunks/tslib.es6.js";import t from"../../../core/Clonable.js";import r from"../../../core/Error.js";import o from"../../../core/JSONSupport.js";import a from"../../../core/Logger.js";import{property as i}from"../../../core/accessorSupport/decorators/property.js";import{cast as n}from"../../../core/accessorSupport/decorators/cast.js";import{enumeration as s}from"../../../core/accessorSupport/decorators/enumeration.js";import{reader as p}from"../../../core/accessorSupport/decorators/reader.js";import{subclass as c}from"../../../core/accessorSupport/decorators/subclass.js";import{writer as l}from"../../../core/accessorSupport/decorators/writer.js";import m from"../../../geometry/Point.js";import{getGeometryZScaler as u}from"../../../geometry/support/zscale.js";import y from"./CameraOrientation.js";import d from"./cameraOrientationFactory.js";import{appendPrefixAndSuffix as f,getEffectiveElevationSource as g,getMetersPerUnitOfSR as h,orientedImageryTypeMap as v}from"./utils.js";import{CameraOrientationType as w}from"../enums/CameraOrientationType.js";import{ltpToGeographic as O}from"../transformations/utils.js";function j(e){throw new r("exposure-point:missing-default-value",`a value for ${e} is missing in default properties`)}function b(e,t){throw new r("exposure-point:missing-attribute-value",`a value for ${e} is missing in attribute table`,{exposurePoint:t})}const S=e=>({cast:e=>{const t=parseFloat(e);return Number.isFinite(t)?t:void 0},json:{name:e,write:{writer:(e,t,r)=>{t[r]=Number.isFinite(e)?e:void 0}}}}),N=e=>({cast:e=>"string"==typeof e?e.split(";").map(Number):e,json:{default:e,write:{writer:(e,t,r)=>{t[r]=e?.join(";")}}}});let I=class extends(t.ClonableMixin(o)){constructor(e){super(e),this._geometry=null,this.cameraOrientation=null,this.elevation=null,this.elevationSource=null,this.name=null,this.sourceMap=null}read(e,t){const r={},{attributes:o,geometry:a}=e,i={};for(const s in o)r[s.toLowerCase()]=o[s],i[s.toLowerCase()]=s;const n=e.layer??{};n.sequenceOrderField?.length&&(r.sequenceorder=o[n.sequenceOrderField],i.sequenceorder=n.sequenceOrderField),super.read({geometry:a,layer:n,sourceMap:i,...r},t)}write(e,t){const r=super.write(e,t),{sourceMap:o}=this;if(!o||!r)return r;const a={};for(const i in r){const e=o[i.toLowerCase()];e&&(a[e]=r[i])}return a}readCameraHeading(e,t){const{cameraheading:r,camheading:o,layer:a}=t;return r??o??a.cameraHeading}readCameraHeight(e,t){const{cameraheight:r,avghtag:o,layer:a}=t;return r??o??a.cameraHeight}readCamOffset(e,t){const{cameraoffset:r,camoffset:o}=t;return r?.split(";").map(Number)??o?.split(";").map(Number)??null}writeCameraOffset(e,t){e&&(t.cameraOffset=e.join(";"))}readCameraOrientation(e,t){const{cameraorientation:r,camori:o}=t;return r??o}readCameraPitch(e,t){const{camerapitch:r,campitch:o,layer:a}=t;return r??o??a.cameraPitch}readCameraRoll(e,t){const{cameraroll:r,camroll:o,layer:a}=t;return r??o??a.cameraRoll}readDepthImage(e,t){const{depthimage:r,depthimg:o,layer:a}=t,i=r??o??null,{depthImagePathPrefix:n,depthImagePathSuffix:s}=a??{};return f(i,n,s)}readElevationSource(e,t){const{elevationsource:r,layer:o}=t,{demPathSuffix:a,demPathPrefix:i}=o;if(r){const e=this._parseIfJSON(r);return g(e,i,a)}return o.effectiveElevationSource}readFarDistance(e,t){const{fardistance:r,fardist:o,layer:a}=t;return r??o??a.farDistance}get geometry(){const e=this._geometry.clone();if(!e)return null;const{cameraOffset:t}=this;if(t){const[r,o,a]=t;e.x+=r,e.y+=o,null!=e.z&&null!=a&&(e.z+=a)}return e}set geometry(e){this._geometry=e}writeGeometry(e,t){t.geometry=this._geometry.toJSON()}readHFOV(e,t){const{horizontalfieldofview:r,hfov:o,layer:a}=t;return r??o??a.horizontalFieldOfView}readImageURL(e,t){const{imagepath:r,layer:o}=t;r||b("imagePath",this);const{imagePathPrefix:a,imagePathSuffix:i}=o;return f(r,a,i)}readImageRotation(e,t){const{imagerotation:r,imgrot:o,layer:a}=t;return r??o??a.imageRotation}get isHorizontal(){return"horizontal"===this.orientedImageryType}get isInspection(){return"inspection"===this.orientedImageryType}get isNadir(){return"nadir"===this.orientedImageryType}get isOblique(){return"oblique"===this.orientedImageryType}get isSpherical(){return"360"===this.orientedImageryType}get location(){const{cameraOrientation:e,cameraHeight:t,elevation:r}=this;if(e){const{type:t,x:r,y:o,z:a,horizontalWKID:i,verticalWKID:n}=e,s="number"==typeof i?{wkid:i}:{wkt:i};if(t===w.LTP){const{latitude:t,longitude:r,ellipsoidRadius:o,squaredEccentricity:a,properties:i}=e,{x:n,y:s,z:p}=i;return new m(O([n,s,p],[t,r,o,a]))}const p=new m({x:r,y:o,z:a,spatialReference:s}),c=n?u("point",{wkid:n},s):null;return c&&c(p),p}if("number"!=typeof t)throw j("cameraHeight");const o=this.geometry.clone();return o.z=o.hasZ?o.z:(r??0)+t/h(o.spatialReference),o}set matrix(e){if(!e||9!==e.length)return a.getLogger(this).warn("Ignoring rotation matrix because it doesn't have 9 values",{value:e}),void this._set("matrix",null);this._set("matrix",e)}readNearDistance(e,t){const{neardistance:r,neardist:o,layer:a}=t;return r??o??a.nearDistance}readOffsetFromStart(e,t){return t.offsetfromstart??null}readOrientationAccuracy(e,t){const{accuracy:r,orientationaccuracy:o}=t;return o?.split(";").map(Number)??r?.split(";").map(Number)??null}writeOrientationAccuracy(e,t){e&&(t.orientationAccuracy=e.join(";"))}readOIType(e,t){const{orientedimagerytype:r,oitype:o,camerapitch:a,campitch:i,layer:n}=t,s=v.read(r??o??n.orientedImageryType),p=a??i??n.cameraPitch;return"oblique"===s?p<10?"nadir":"oblique":s}set radial(e){if(e){if("string"==typeof e){const[t,r,o]=e.split(";").map(Number);return void this._set("radial",[t??0,r??0,o??0])}this._set("radial",e)}else this._set("radial",[0,0,0])}readSequenceOrder(e,t){const{layer:r}=t;return t[r.sequenceOrderField.toLowerCase()]}writeSequenceOrder(e,t){if(!e)return;const{sourceMap:r}=this;if(r){t[r.sequenceorder]=e}}set tangential(e){if(e){if("string"==typeof e){const[t,r]=e.split(";").map(Number);return void this._set("tangential",[t??0,r??0])}this._set("tangential",e)}else this._set("tangential",[0,0])}readVFOV(e,t){const{verticalfieldofview:r,vfov:o,layer:a}=t;return r??o??a.verticalFieldOfView}_parseIfJSON(e){let t=null;try{t=JSON.parse(e)}catch(r){a.getLogger(this).error("couldn't parse the given elevation source JSON",e,r)}return t}clone(){const e=super.clone();return e._geometry=this._geometry.clone(),e}};e([i()],I.prototype,"_geometry",void 0),e([i(S())],I.prototype,"a0",void 0),e([i(S())],I.prototype,"a1",void 0),e([i(S())],I.prototype,"a2",void 0),e([i({type:Date,json:{write:{enabled:!0,target:"acquisitionDate"},name:"acquisitiondate"}})],I.prototype,"acquisitionDate",void 0),e([i(S())],I.prototype,"b0",void 0),e([i(S())],I.prototype,"b1",void 0),e([i(S())],I.prototype,"b2",void 0),e([i({type:Number,json:{write:!0,read:{source:["cameraheading","camheading","layer.cameraHeading"]}}})],I.prototype,"cameraHeading",void 0),e([p("cameraHeading")],I.prototype,"readCameraHeading",null),e([i({type:Number,json:{write:!0}})],I.prototype,"cameraHeight",void 0),e([p("cameraHeight",["cameraheight","avghtag","layer.cameraHeight"])],I.prototype,"readCameraHeight",null),e([i()],I.prototype,"cameraOffset",void 0),e([p("cameraOffset",["cameraoffset","camoffset"])],I.prototype,"readCamOffset",null),e([l("cameraOffset")],I.prototype,"writeCameraOffset",null),e([i({json:{write:{writer:(e,t,r)=>{t[r]=e.toString()}}},type:y}),n(e=>e?d.getCameraOrientation(e):null)],I.prototype,"cameraOrientation",void 0),e([p("cameraOrientation",["cameraorientation","camori"])],I.prototype,"readCameraOrientation",null),e([i({type:Number,json:{write:!0}})],I.prototype,"cameraPitch",void 0),e([p("cameraPitch",["camerapitch","campitch","layer.cameraPitch"])],I.prototype,"readCameraPitch",null),e([i({type:Number,json:{write:!0}})],I.prototype,"cameraRoll",void 0),e([p("cameraRoll",["cameraroll","camroll","layer.cameraRoll"])],I.prototype,"readCameraRoll",null),e([i({json:{write:!0},type:String})],I.prototype,"depthImage",void 0),e([p("depthImage",["depthimage","depthimg"])],I.prototype,"readDepthImage",null),e([i({type:Number,json:{write:!0}})],I.prototype,"elevation",void 0),e([i({json:{write:!0},clonable:"reference"})],I.prototype,"elevationSource",void 0),e([p("elevationSource",["elevationsource","layer.effectiveElevationSource"])],I.prototype,"readElevationSource",null),e([i({json:{name:"exposurestationid",write:{target:"exposureStationId"}},type:String})],I.prototype,"exposureStationId",void 0),e([i({type:Number,json:{write:!0}})],I.prototype,"farDistance",void 0),e([p("farDistance",["fardistance","fardist","layer.farDistance"])],I.prototype,"readFarDistance",null),e([i(S("focallength"))],I.prototype,"focalLength",void 0),e([i({type:m,json:{name:"geometry"}})],I.prototype,"geometry",null),e([l("geometry")],I.prototype,"writeGeometry",null),e([i({type:Number,json:{write:!0}})],I.prototype,"horizontalFieldOfView",void 0),e([p("horizontalFieldOfView",["horizontalfieldofview","hfov","layer.horizontalFieldOfView"])],I.prototype,"readHFOV",null),e([i({json:{write:!0},type:String})],I.prototype,"imagePath",void 0),e([p("imagePath",["imagepath"])],I.prototype,"readImageURL",null),e([i({type:Number,json:{write:!0}})],I.prototype,"imageRotation",void 0),e([p("imageRotation",["imagerotation","imgrot","layer.imageRotation"])],I.prototype,"readImageRotation",null),e([i()],I.prototype,"isHorizontal",null),e([i()],I.prototype,"isInspection",null),e([i()],I.prototype,"isNadir",null),e([i()],I.prototype,"isOblique",null),e([i()],I.prototype,"isSpherical",null),e([i()],I.prototype,"location",null),e([i(N())],I.prototype,"matrix",null),e([i({json:{write:!0},type:String})],I.prototype,"name",void 0),e([i({type:Number,json:{write:!0}})],I.prototype,"nearDistance",void 0),e([p("nearDistance",["neardistance","neardist","layer.nearDistance"])],I.prototype,"readNearDistance",null),e([i({json:{write:!0,name:"objectid"},type:Number})],I.prototype,"objectId",void 0),e([i({type:Number,json:{write:!0}})],I.prototype,"offsetFromStart",void 0),e([p("offsetFromStart",["offsetfromstart"])],I.prototype,"readOffsetFromStart",null),e([i()],I.prototype,"orientationAccuracy",void 0),e([p("orientationAccuracy",["accuracy","orientationaccuracy"])],I.prototype,"readOrientationAccuracy",null),e([l("orientationAccuracy")],I.prototype,"writeOrientationAccuracy",null),e([s(v)],I.prototype,"orientedImageryType",void 0),e([p("orientedImageryType",["orientedimagerytype","oitype","layer.orientedImageryType"])],I.prototype,"readOIType",null),e([i({type:Number,json:{write:!0,read:{source:"principalx"}}})],I.prototype,"principalX",void 0),e([i({type:Number,json:{write:!0,read:{source:"principaly"}}})],I.prototype,"principalY",void 0),e([i(N([0,0,0]))],I.prototype,"radial",null),e([i({type:String})],I.prototype,"sequenceOrder",void 0),e([p("sequenceOrder",["sequenceorder","layer.sequenceOrderField"])],I.prototype,"readSequenceOrder",null),e([l("sequenceOrder")],I.prototype,"writeSequenceOrder",null),e([i({type:Object})],I.prototype,"sourceMap",void 0),e([i(N([0,0]))],I.prototype,"tangential",null),e([i({type:Number,json:{write:!0}})],I.prototype,"verticalFieldOfView",void 0),e([p("verticalFieldOfView",["verticalfieldofview","vfov","layer.verticalFieldOfView"])],I.prototype,"readVFOV",null),I=e([c("esri.layers.orientedImagery.core.ExposurePoint")],I);export{I as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.34/esri/copyright.txt for details.
4
4
  */
5
- import{earth as t}from"../../../geometry/support/Ellipsoid.js";import{distance as e}from"../../../geometry/support/pointUtils.js";import a from"./ExposurePoint.js";function i(t){const{camera:e,features:a,selectedPoint:i}=t;if(!a.length)return[];t.currentImage??={attributes:{cameraHeading:0,cameraPitch:0}};const s=r(e,i,t.currentImage);return a.map(s)}function r(a,i,r){return i.z??=0,i.elevation??=0,h=>{const{hfovWeight:n,vfovWeight:o,distanceWeight:c}=s(h.attributes,a?"3d":"2d"),l=h.attributes,{cameraHeight:g,cameraHeading:M,cameraPitch:u,farDistance:f,horizontalFieldOfView:b,verticalFieldOfView:d,isOblique:m}=l,v=l.geometry,W=180*Math.atan2(v.y-i.y,v.x-i.x)/Math.PI,p=e(i,v);let y,x,P=b,I=d,q=!1;a?(y=a.heading,x=a.tilt,P=180,I=180,q=!0):!m||u<10?(y=M,x=u,q=!1):(y=r.attributes.cameraHeading,x=u,q=!0,P=180),y>180&&(y-=360);let H=1;v.spatialReference.isWebMercator&&(H=1/Math.cos(Math.PI/2-2*Math.atan(Math.exp(-1*v.y/t.radius))));const O=Math.sqrt((Math.sqrt((i.x-v.x)**2+(i.y-v.y)**2)/H)**2+((i.z??0)-(i.elevation??0)-g)**2),z=90-180*Math.atan2(i.y-v.y,i.x-v.x)/Math.PI;let j=(Math.abs(z-y)>180?Math.abs(360-Math.abs(z-y)):Math.abs(z-y))/P;j=4*j+1;const w=180*Math.acos((l.cameraHeight-(i.z??0)+(i.elevation??0))/O)/Math.PI;let E=Math.abs(w-x)/I;E=4*E+1;let F=O/Math.sqrt(f**2+g**2);F=4*F+1;const S=n*j+o*E+c*F;let V;if(q){const t=M>180?M-360:M;V=n*((Math.abs(z-t)>180?Math.abs(360-Math.abs(z-t)):Math.abs(z-t))/b*4+1)+o*(Math.abs(w-u)/d*4+1)+c*F}else V=S;return{suitability:S,trueSuitability:V,feature:h,angle:W,distance:p,verticalAngle:Math.abs(180*Math.atan(p/g)/Math.PI)}}}function s(t,e){const i="isOblique"in t?t:new a(t),{isOblique:r,isSpherical:s,isNadir:h}=i;return s?{hfovWeight:"2d"===e?0:1,vfovWeight:"2d"===e?0:.6,distanceWeight:"2d"===e?1:.5}:h?{hfovWeight:.25,vfovWeight:1,distanceWeight:1}:r?{hfovWeight:1,vfovWeight:.25,distanceWeight:1}:{hfovWeight:1,vfovWeight:1,distanceWeight:1}}export{i as calculateSuitabilities};
5
+ import{earth as t}from"../../../geometry/support/Ellipsoid.js";import{distance as e}from"../../../geometry/support/pointUtils.js";import a from"./ExposurePoint.js";function i(t){const{camera:e,features:a,selectedPoint:i}=t;if(!a.length)return[];t.currentImage??={attributes:{cameraHeading:0,cameraPitch:0}};const r=s(e,i,t.currentImage);return a.map(r)}function s(a,i,s){const h=i.clone();return h.z??=0,h.elevation=i.elevation??0,i=>{const{hfovWeight:n,vfovWeight:o,distanceWeight:c}=r(i.attributes,a?"3d":"2d"),l=i.attributes,{cameraHeight:g,cameraHeading:M,cameraPitch:u,farDistance:f,horizontalFieldOfView:b,verticalFieldOfView:d,isOblique:v}=l,m=l.geometry,W=180*Math.atan2(m.y-h.y,m.x-h.x)/Math.PI,p=e(h,m);let y,x,P=b,I=d,q=!1;a?(y=a.heading,x=a.tilt,P=180,I=180,q=!0):!v||u<10?(y=M,x=u,q=!1):(y=s.attributes.cameraHeading,x=u,q=!0,P=180),y>180&&(y-=360);let H=1;m.spatialReference.isWebMercator&&(H=1/Math.cos(Math.PI/2-2*Math.atan(Math.exp(-1*m.y/t.radius))));const O=Math.sqrt((Math.sqrt((h.x-m.x)**2+(h.y-m.y)**2)/H)**2+((h.z??0)-(h.elevation??0)-g)**2),z=90-180*Math.atan2(h.y-m.y,h.x-m.x)/Math.PI;let j=(Math.abs(z-y)>180?Math.abs(360-Math.abs(z-y)):Math.abs(z-y))/P;j=4*j+1;const w=180*Math.acos((l.cameraHeight-(h.z??0)+(h.elevation??0))/O)/Math.PI;let E=Math.abs(w-x)/I;E=4*E+1;let F=O/Math.sqrt(f**2+g**2);F=4*F+1;const S=n*j+o*E+c*F;let V;if(q){const t=M>180?M-360:M;V=n*((Math.abs(z-t)>180?Math.abs(360-Math.abs(z-t)):Math.abs(z-t))/b*4+1)+o*(Math.abs(w-u)/d*4+1)+c*F}else V=S;return{suitability:S,trueSuitability:V,feature:i,angle:W,distance:p,verticalAngle:Math.abs(180*Math.atan(p/g)/Math.PI)}}}function r(t,e){const i="isOblique"in t?t:new a(t),{isOblique:s,isSpherical:r,isNadir:h}=i;return r?{hfovWeight:"2d"===e?0:1,vfovWeight:"2d"===e?0:.6,distanceWeight:"2d"===e?1:.5}:h?{hfovWeight:.25,vfovWeight:1,distanceWeight:1}:s?{hfovWeight:1,vfovWeight:.25,distanceWeight:1}:{hfovWeight:1,vfovWeight:1,distanceWeight:1}}export{i as calculateSuitabilities};