@vertigis/viewer-spec 45.2.0 → 46.0.0

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.
@@ -21,14 +21,13 @@ import type { SimpleFillSymbol as SimpleFillSymbolProperties } from "@vertigis/a
21
21
  import type { SimpleLineSymbol as SimpleLineSymbolProperties } from "@vertigis/arcgis-extensions/portal/SimpleLineSymbol";
22
22
  import type { SimpleMarkerSymbol as SimpleMarkerSymbolProperties } from "@vertigis/arcgis-extensions/portal/SimpleMarkerSymbol";
23
23
  import type { Symbol as SymbolJson } from "@vertigis/arcgis-extensions/portal/Symbol";
24
- import type { ItemRef } from "../../app-config/common/ItemRef.js";
25
24
  import type { Command } from "../Command.js";
26
25
  import { CommandRegistry } from "../CommandRegistry.js";
27
26
  import type { Event } from "../Event.js";
28
27
  import { EventRegistry } from "../EventRegistry.js";
29
28
  import type { Operation } from "../Operation.js";
30
29
  import { OperationRegistry } from "../OperationRegistry.js";
31
- import type { FeaturesLike, GeometryLike, GraphicsLike, HasMaps, MapsLike } from "../common.js";
30
+ import type { FeaturesLike, GeometryLike, GraphicsLike, HasMaps, Maps, MapsLike } from "../common.js";
32
31
  import type { EditSymbolResult } from "./drawing.js";
33
32
  import type { GeodeticCurveType, LengthUnits, LengthUnitsMobile, ReferenceLine } from "./geometry.js";
34
33
  /**
@@ -101,7 +100,9 @@ export declare enum SketchTool {
101
100
  */
102
101
  export declare type AddNodeOrder = "add-after-active" | "add-before-active";
103
102
  /**
104
- * The arguments for the "sketching.move-node" command.
103
+ * Deprecated - use "sketching.move-point" with {@link MovePointArgs}.
104
+ *
105
+ * @deprecated
105
106
  */
106
107
  export interface MoveNodeArgs extends HasMaps {
107
108
  /**
@@ -115,7 +116,53 @@ export interface MoveNodeArgs extends HasMaps {
115
116
  position: Geometry;
116
117
  }
117
118
  /**
118
- * The arguments for the "sketching.switch-active-node" command.
119
+ * The arguments for the "sketching.move-point" command.
120
+ */
121
+ export interface MovePointArgs extends HasMaps {
122
+ /**
123
+ * The point to move, which must already exist within the active sketch. If
124
+ * this property is undefined and no geometry and pointIndex are specified,
125
+ * the active point(s) will be moved.
126
+ */
127
+ point?: Point;
128
+ /**
129
+ * The geometry where the point exists, if multiple are present in an active
130
+ * editing session. This property is required if pointIndex and/or partIndex
131
+ * are defined.
132
+ */
133
+ geometry?: Geometry;
134
+ /**
135
+ * The index of the point. If this property is defined, the 'geometry'
136
+ * property must also be defined.
137
+ */
138
+ pointIndex?: number;
139
+ /**
140
+ * The part of the geometry where the point exists. Required for polyline
141
+ * and polygon geometry types when the geometry and pointIndex properties
142
+ * are defined.
143
+ */
144
+ partIndex?: number;
145
+ /**
146
+ * The new point that will replace the target point within an active sketch
147
+ * or edit geometry. If this property is defined, the distance property
148
+ * will be ignored.
149
+ */
150
+ newPoint?: Point;
151
+ /**
152
+ * An amount to move the point(s) on the X and Y axes. If the newPoint
153
+ * property is defined, this property will be ignored.
154
+ */
155
+ distance?: Vector2D;
156
+ /**
157
+ * The units of the above distance. Optional, will default to the units used
158
+ * by the measurement service associated with the map.
159
+ */
160
+ units?: LengthUnits;
161
+ }
162
+ /**
163
+ * Deprecated - use "sketching.set-active-points" with {@link SetActivePointsArgs}.
164
+ *
165
+ * @deprecated
119
166
  */
120
167
  export interface SwitchActiveNodeArgs extends HasMaps {
121
168
  /**
@@ -123,6 +170,34 @@ export interface SwitchActiveNodeArgs extends HasMaps {
123
170
  */
124
171
  node: Point;
125
172
  }
173
+ /**
174
+ * The arguments for the "sketching.set-active-points" command.
175
+ */
176
+ export interface SetActivePointsArgs extends HasMaps {
177
+ /**
178
+ * The new point(s) that will become active in the sketch or editing
179
+ * session. Sketching only supports one active point; if multiple are
180
+ * specified, then only the first will be set as active.
181
+ */
182
+ points?: Point | Point[];
183
+ /**
184
+ * The geometry where the new active point exists, if multiple are present
185
+ * in an active editing session. This property is required if pointIndex
186
+ * and/or partIndex are defined.
187
+ */
188
+ geometry?: Geometry;
189
+ /**
190
+ * The index of the new active point. If this property is defined, the
191
+ * geometry property must be defined.
192
+ */
193
+ pointIndex?: number;
194
+ /**
195
+ * The part of the geometry where the new active point exists. Required for
196
+ * polyline and polygon geometry types when the geometry and pointIndex
197
+ * properties are defined.
198
+ */
199
+ partIndex?: number;
200
+ }
126
201
  /**
127
202
  * Arguments for the "sketching.capture-geometry" operation.
128
203
  */
@@ -237,12 +312,23 @@ export interface EditGeometryOptions {
237
312
  * Defaults to true.
238
313
  */
239
314
  enableScaleModeToggle?: boolean;
315
+ /**
316
+ * Whether to allow the user to add, move, and remove vertices from a
317
+ * geometry. Defaults to true.
318
+ */
319
+ enableVertexEditing?: boolean;
240
320
  /**
241
321
  * Setting "free" allows independent scaling on the x and y axis,
242
322
  * "preserve-aspect-ratio" constrains scaling to the original aspect ratio.
243
323
  * Defaults to "preserve-aspect-ratio".
244
324
  */
245
325
  scaleMode?: "free" | "preserve-aspect-ratio";
326
+ /**
327
+ * Whether the resulting geometry is validated before it's returned from the
328
+ * operation. If the geometry is invalid upon completion, an error is
329
+ * thrown. Defaults to true.
330
+ */
331
+ validateGeometry?: boolean;
246
332
  /**
247
333
  * Where to anchor the geometry when performing a free scale operation.
248
334
  * Defaults to "center".
@@ -307,7 +393,49 @@ export interface StopGeometryEditArgs {
307
393
  validateGeometry?: boolean;
308
394
  }
309
395
  /**
310
- * Arguments for the "sketching.add-node-to-geometry" operation.
396
+ * Arguments for the "sketching.add-point" command.
397
+ */
398
+ export interface AddPointArgs extends HasMaps {
399
+ /**
400
+ * The new point to be added.
401
+ */
402
+ newPoint: Point;
403
+ /**
404
+ * The geometry to add the point to, if multiple are present in an active
405
+ * editing session. Not supported by Mobile.
406
+ */
407
+ geometry?: Geometry;
408
+ }
409
+ /**
410
+ * Arguments for the "sketching.insert-point" command.
411
+ */
412
+ export interface InsertPointArgs extends HasMaps {
413
+ /**
414
+ * The index of the part to which the point will be added. If null, the last
415
+ * part will be used.
416
+ */
417
+ partIndex?: number;
418
+ /**
419
+ * The index at which the point will be added. If null, the point will be
420
+ * added as the last point.
421
+ */
422
+ pointIndex?: number;
423
+ /**
424
+ * The new point to be added.
425
+ */
426
+ newPoint: Point;
427
+ /**
428
+ * The geometry to add the point to, if multiple are present in an active
429
+ * editing session. Not supported by Mobile.
430
+ */
431
+ geometry?: Geometry;
432
+ }
433
+ /**
434
+ * Deprecated - Mobile users should rather use "geometry.add-point"; Web users
435
+ * should use "sketching.add-point" with {@link AddPointArgs} or
436
+ * "sketching.insert-point" with {@link InsertPointArgs} instead.
437
+ *
438
+ * @deprecated
311
439
  */
312
440
  export interface AddNodeToGeometryArgs extends HasMaps {
313
441
  /**
@@ -338,10 +466,28 @@ export interface AddNodeToGeometryArgs extends HasMaps {
338
466
  */
339
467
  export interface DeleteGeometryArgs extends HasMaps {
340
468
  /**
341
- * The point to delete from the active sketch. Not supported in Geocortex
342
- * Mobile.
469
+ * The point to remove from the geometry. If this property is defined, the
470
+ * 'pointIndex' and 'partIndex' properties are ignored. If no point nor
471
+ * pointIndex/partIndex are specified, any active points will be deleted. If
472
+ * there are no active points, the entire geometry will be deleted.
473
+ */
474
+ point?: Point;
475
+ /**
476
+ * The geometry to remove a point from. If this property is not specified,
477
+ * any active vertices will be deleted.
478
+ */
479
+ geometry?: Geometry;
480
+ /**
481
+ * The index of the point that should be removed from the geometry. If this
482
+ * property is defined, the geometry property must also be defined.
343
483
  */
344
- geometry?: Point;
484
+ pointIndex?: number;
485
+ /**
486
+ * The index of the part of the geometry that the point should be removed
487
+ * from. Required for polyline and polygon geometry types when the geometry
488
+ * and pointIndex properties are defined.
489
+ */
490
+ partIndex?: number;
345
491
  }
346
492
  /**
347
493
  * Arguments for the "sketching.set-geometry-mode" command.
@@ -402,8 +548,12 @@ export interface GeometryEditorSettings {
402
548
  editorInteractionMode?: EditorInteractionMode;
403
549
  }
404
550
  /**
405
- * Result returned from the 'sketching.get-active-sketch' and
406
- * 'sketching.get-active-node' operations.
551
+ * Result returned from the 'sketching.get-active-points' operation.
552
+ */
553
+ export interface GetActivePointsResult extends GetActiveSketchResult {
554
+ }
555
+ /**
556
+ * Result returned from the 'sketching.get-active-sketch' operation.
407
557
  */
408
558
  export interface GetActiveSketchResult {
409
559
  /**
@@ -415,6 +565,25 @@ export interface GetActiveSketchResult {
415
565
  */
416
566
  maps: MapExtension;
417
567
  }
568
+ /**
569
+ * Specifies if a desired point comes before or after a given reference point.
570
+ */
571
+ export declare type PointOffset = "before" | "after";
572
+ /**
573
+ * Arguments for the 'sketching.get-adjacent-point' operation.
574
+ */
575
+ export interface GetAdjacentPointArgs extends HasMaps {
576
+ /**
577
+ * A point geometry that represents a vertex within an active editing
578
+ * graphic.
579
+ */
580
+ referencePoint: Point;
581
+ /**
582
+ * Specifies if the desired point comes before or after the referencePoint.
583
+ * Defaults to 'after'.
584
+ */
585
+ relativeOffset?: PointOffset;
586
+ }
418
587
  /**
419
588
  * Arguments for the "sketching.set-constraints" command.
420
589
  */
@@ -474,34 +643,6 @@ export interface ClearConstraintsArgs extends HasMaps {
474
643
  */
475
644
  clearAngleConstraint?: boolean;
476
645
  }
477
- /**
478
- * Arguments for the "sketching.add-point" command.
479
- */
480
- export interface AddPointArgs extends HasMaps {
481
- /**
482
- * The new point to be added.
483
- */
484
- newPoint: Point;
485
- }
486
- /**
487
- * Arguments for the "sketching.insert-point" command.
488
- */
489
- export interface InsertPointArgs extends HasMaps {
490
- /**
491
- * The index of the part to which the point will be added. If null, the last
492
- * part will be used.
493
- */
494
- partIndex?: number;
495
- /**
496
- * The index at which the point will be added. If null, the point will be
497
- * added as the last point.
498
- */
499
- pointIndex?: number;
500
- /**
501
- * The new point to be added.
502
- */
503
- newPoint: Point;
504
- }
505
646
  export declare class SketchingOperations extends OperationRegistry {
506
647
  /**
507
648
  * Allows the user to create geometry by sketching on a map. Returns the
@@ -547,20 +688,20 @@ export declare class SketchingOperations extends OperationRegistry {
547
688
  * they are not required for this operation.
548
689
  *
549
690
  * @webOnly
550
- *
551
691
  */
552
692
  get rotateGeometry(): Operation<RotateGeometryArgs, GeometryOperationBase>;
553
693
  /**
554
694
  * Stops geometry capturing or editing on a given map. Returns the current
555
695
  * geometry. If validateGeometry parameter is true and geometry is invalid,
556
- * returns null.
696
+ * the operation will return null.
557
697
  */
558
698
  get stop(): Operation<StopGeometryEditArgs | void, CaptureGeometryResult>;
559
699
  /**
560
- * Adds a point to a given polyline or polygon geometry. Returns the
561
- * resulting geometry.
700
+ * Deprecated - Mobile users should rather use "geometry.add-point"; Web
701
+ * users should use "sketching.add-point" or "sketching.insert-point"
702
+ * instead.
562
703
  *
563
- * Deprecated in Mobile, use geometry.add-point instead.
704
+ * @deprecated
564
705
  */
565
706
  get addNodeToGeometry(): Operation<AddNodeToGeometryArgs, Geometry>;
566
707
  /**
@@ -570,11 +711,27 @@ export declare class SketchingOperations extends OperationRegistry {
570
711
  */
571
712
  get getActiveSketch(): Operation<void, GetActiveSketchResult>;
572
713
  /**
573
- * Returns the active point graphic of the active sketch on a map.
714
+ * Deprecated - use 'sketching.get-active-points' instead.
715
+ *
716
+ * @deprecated
717
+ * @webOnly
718
+ */
719
+ get getActiveNode(): Operation<Maps, GetActivePointsResult>;
720
+ /**
721
+ * Returns the active point graphics of the active sketch or edit session on
722
+ * a map.
574
723
  *
575
724
  * @webOnly
576
725
  */
577
- get getActiveNode(): Operation<ItemRef, GetActiveSketchResult>;
726
+ get getActivePoints(): Operation<Maps, GetActivePointsResult>;
727
+ /**
728
+ * Return the adjacent point graphic(s), relative to a given vertex that's a
729
+ * part of an active editing or sketching session. This operation is only
730
+ * supported for Polyline and Polygon geometries.
731
+ *
732
+ * @webOnly
733
+ */
734
+ get getAdjacentPoint(): Operation<GetAdjacentPointArgs, GetActiveSketchResult>;
578
735
  /**
579
736
  * Checks whether streaming is active.
580
737
  *
@@ -626,22 +783,37 @@ export declare class SketchingCommands extends CommandRegistry {
626
783
  /**
627
784
  * If a point is supplied while a sketching or editing operation is active,
628
785
  * the vertex at that point will be deleted from the current geometry. If no
629
- * point is supplied and a geometry editing session is active, the entire
630
- * geometry will be deleted.
786
+ * point is supplied, any active points in the session will be deleted. If
787
+ * there are no active points in the session, the entire geometry will be
788
+ * deleted.
631
789
  */
632
- get delete(): Command<DeleteGeometryArgs>;
790
+ get delete(): Command<void | DeleteGeometryArgs>;
633
791
  /**
634
- * Moves a point within an active sketch to a new location.
792
+ * Deprecated - use 'sketching.move-point' instead.
635
793
  *
794
+ * @deprecated
636
795
  * @webOnly
637
796
  */
638
797
  get moveNode(): Command<MoveNodeArgs>;
639
798
  /**
640
- * Switches the active point of an active sketch.
799
+ * Moves a point within an active sketch to a new location.
641
800
  *
642
801
  * @webOnly
643
802
  */
803
+ get movePoint(): Command<MovePointArgs>;
804
+ /**
805
+ * Deprecated - use 'sketching.set-active-points' instead.
806
+ *
807
+ * @deprecated
808
+ * @webOnly
809
+ */
644
810
  get switchActiveNode(): Command<SwitchActiveNodeArgs>;
811
+ /**
812
+ * Switches the active point of an active sketch.
813
+ *
814
+ * @webOnly
815
+ */
816
+ get setActivePoints(): Command<SetActivePointsArgs>;
645
817
  /**
646
818
  * Sets the interaction mode of the geometry editor.
647
819
  *
@@ -685,14 +857,14 @@ export declare class SketchingCommands extends CommandRegistry {
685
857
  */
686
858
  get clearConstraints(): Command<ClearConstraintsArgs>;
687
859
  /**
688
- * Inserts a point into a polygon or polyline at the specified index. If the
689
- * partIndex is null, then the last part is used. If the pointIndex is null,
690
- * then the new point is inserted at the end.
860
+ * Inserts a point into a polygon, polyline, or multipoint at the specified
861
+ * index. If the partIndex is null, then the last part is used. If the
862
+ * pointIndex is null, then the new point is inserted at the end.
691
863
  */
692
864
  get insertPoint(): Command<InsertPointArgs>;
693
865
  /**
694
- * Adds a point to polygon or polyline using the selected index as the point
695
- * to insert after.
866
+ * Adds a point to polygon, polyline, or multipoint using the selected index
867
+ * as the point to insert after.
696
868
  */
697
869
  get addPoint(): Command<AddPointArgs>;
698
870
  /**
@@ -1 +1 @@
1
- import{CommandRegistry}from"../CommandRegistry.js";import{EventRegistry}from"../EventRegistry.js";import{OperationRegistry}from"../OperationRegistry.js";export var SketchTool;!function(e){e.POINT="point",e.MULTIPOINT="multipoint",e.LINE="line",e.POLYLINE="polyline",e.POLYGON="polygon",e.EXTENT="extent",e.SQUARE="square",e.CIRCLE="circle"}(SketchTool||(SketchTool={}));export class SketchingOperations extends OperationRegistry{get captureGeometry(){return this._messages.operation("sketching.capture-geometry")}get editActiveSymbol(){return this._messages.operation("sketching.edit-active-symbol")}get editGeometry(){return this._messages.operation("sketching.edit-geometry")}get moveGeometry(){return this._messages.operation("sketching.move-geometry")}get scaleGeometry(){return this._messages.operation("sketching.scale-geometry")}get rotateGeometry(){return this._messages.operation("sketching.rotate-geometry")}get stop(){return this._messages.operation("sketching.stop")}get addNodeToGeometry(){return this._messages.operation("sketching.add-node-to-geometry")}get getActiveSketch(){return this._messages.operation("sketching.get-active-sketch")}get getActiveNode(){return this._messages.operation("sketching.get-active-node")}get isStreaming(){return this._messages.operation("sketching.is-streaming")}}export class SketchingCommands extends CommandRegistry{get cancel(){return this._messages.command("sketching.cancel")}get undo(){return this._messages.command("sketching.undo")}get redo(){return this._messages.command("sketching.redo")}get setGeometryMode(){return this._messages.command("sketching.set-geometry-mode")}get addPointAtCenter(){return this._messages.command("sketching.add-point-at-center")}get addPointAtCurrentLocation(){return this._messages.command("sketching.add-point-at-current-location")}get setPointAtCurrentLocation(){return this._messages.command("sketching.set-point-at-current-location")}get delete(){return this._messages.command("sketching.delete")}get moveNode(){return this._messages.command("sketching.move-node")}get switchActiveNode(){return this._messages.command("sketching.switch-active-node")}get setInteractionMode(){return this._messages.command("sketching.set-interaction-mode")}get enableFreeScaleMode(){return this._messages.command("sketching.enable-free-scale-mode")}get disableFreeScaleMode(){return this._messages.command("sketching.disable-free-scale-mode")}get enablePrecisionMode(){return this._messages.command("sketching.enable-precision-mode")}get disablePrecisionMode(){return this._messages.command("sketching.disable-precision-mode")}get setConstraints(){return this._messages.command("sketching.set-constraints")}get clearConstraints(){return this._messages.command("sketching.clear-constraints")}get insertPoint(){return this._messages.command("sketching.insert-point")}get addPoint(){return this._messages.command("sketching.add-point")}get startStreaming(){return this._messages.command("sketching.start-streaming")}get stopStreaming(){return this._messages.command("sketching.stop-streaming")}}export class SketchingEvents extends EventRegistry{get streamingStarted(){return this._messages.event("sketching.streaming-started")}get streamingStopped(){return this._messages.event("sketching.streaming-stopped")}}
1
+ import{CommandRegistry}from"../CommandRegistry.js";import{EventRegistry}from"../EventRegistry.js";import{OperationRegistry}from"../OperationRegistry.js";export var SketchTool;!function(e){e.POINT="point",e.MULTIPOINT="multipoint",e.LINE="line",e.POLYLINE="polyline",e.POLYGON="polygon",e.EXTENT="extent",e.SQUARE="square",e.CIRCLE="circle"}(SketchTool||(SketchTool={}));export class SketchingOperations extends OperationRegistry{get captureGeometry(){return this._messages.operation("sketching.capture-geometry")}get editActiveSymbol(){return this._messages.operation("sketching.edit-active-symbol")}get editGeometry(){return this._messages.operation("sketching.edit-geometry")}get moveGeometry(){return this._messages.operation("sketching.move-geometry")}get scaleGeometry(){return this._messages.operation("sketching.scale-geometry")}get rotateGeometry(){return this._messages.operation("sketching.rotate-geometry")}get stop(){return this._messages.operation("sketching.stop")}get addNodeToGeometry(){return this._messages.operation("sketching.add-node-to-geometry")}get getActiveSketch(){return this._messages.operation("sketching.get-active-sketch")}get getActiveNode(){return this._messages.operation("sketching.get-active-node")}get getActivePoints(){return this._messages.operation("sketching.get-active-points")}get getAdjacentPoint(){return this._messages.operation("sketching.get-adjacent-point")}get isStreaming(){return this._messages.operation("sketching.is-streaming")}}export class SketchingCommands extends CommandRegistry{get cancel(){return this._messages.command("sketching.cancel")}get undo(){return this._messages.command("sketching.undo")}get redo(){return this._messages.command("sketching.redo")}get setGeometryMode(){return this._messages.command("sketching.set-geometry-mode")}get addPointAtCenter(){return this._messages.command("sketching.add-point-at-center")}get addPointAtCurrentLocation(){return this._messages.command("sketching.add-point-at-current-location")}get setPointAtCurrentLocation(){return this._messages.command("sketching.set-point-at-current-location")}get delete(){return this._messages.command("sketching.delete")}get moveNode(){return this._messages.command("sketching.move-node")}get movePoint(){return this._messages.command("sketching.move-point")}get switchActiveNode(){return this._messages.command("sketching.switch-active-node")}get setActivePoints(){return this._messages.command("sketching.set-active-points")}get setInteractionMode(){return this._messages.command("sketching.set-interaction-mode")}get enableFreeScaleMode(){return this._messages.command("sketching.enable-free-scale-mode")}get disableFreeScaleMode(){return this._messages.command("sketching.disable-free-scale-mode")}get enablePrecisionMode(){return this._messages.command("sketching.enable-precision-mode")}get disablePrecisionMode(){return this._messages.command("sketching.disable-precision-mode")}get setConstraints(){return this._messages.command("sketching.set-constraints")}get clearConstraints(){return this._messages.command("sketching.clear-constraints")}get insertPoint(){return this._messages.command("sketching.insert-point")}get addPoint(){return this._messages.command("sketching.add-point")}get startStreaming(){return this._messages.command("sketching.start-streaming")}get stopStreaming(){return this._messages.command("sketching.stop-streaming")}}export class SketchingEvents extends EventRegistry{get streamingStarted(){return this._messages.event("sketching.streaming-started")}get streamingStopped(){return this._messages.event("sketching.streaming-stopped")}}
@@ -1,5 +1,5 @@
1
1
  import type { UIDensity } from "../../app-config/common/BrandingModelProperties.js";
2
- import type { TranslateOptions } from "../../app-config/common/TranslatableText.js";
2
+ import type { TranslatableText, TranslateOptions } from "../../app-config/common/TranslatableText.js";
3
3
  import type { Command } from "../Command.js";
4
4
  import { CommandRegistry } from "../CommandRegistry.js";
5
5
  import type { Event } from "../Event.js";
@@ -77,9 +77,10 @@ export interface DisplayNotificationArgs {
77
77
  */
78
78
  category?: NotificationCategory;
79
79
  /**
80
- * The message to be displayed in the notification.
80
+ * The message to be displayed in the notification. Mobile only supports a
81
+ * string for this property.
81
82
  */
82
- message: string;
83
+ message: TranslatableText;
83
84
  /**
84
85
  * The position of the notification on the screen.
85
86
  */
@@ -463,7 +463,7 @@
463
463
  },
464
464
  "AddNodeToGeometryArgs": {
465
465
  "additionalProperties": false,
466
- "description": "Arguments for the \"sketching.add-node-to-geometry\" operation.",
466
+ "description": "Deprecated - Mobile users should rather use \"geometry.add-point\"; Web users should use \"sketching.add-point\" with {@link AddPointArgs} or \"sketching.insert-point\" with {@link InsertPointArgs} instead.",
467
467
  "properties": {
468
468
  "geometry": {
469
469
  "$ref": "#/definitions/esri.Geometry",
@@ -497,6 +497,10 @@
497
497
  "additionalProperties": false,
498
498
  "description": "Arguments for the \"sketching.add-point\" command.",
499
499
  "properties": {
500
+ "geometry": {
501
+ "$ref": "#/definitions/esri.Geometry",
502
+ "description": "The geometry to add the point to, if multiple are present in an active editing session. Not supported by Mobile."
503
+ },
500
504
  "maps": {
501
505
  "$ref": "MapsLike",
502
506
  "description": "Map(s) to use for the command/operation."
@@ -682,12 +686,24 @@
682
686
  "description": "Arguments for the \"sketching.delete\" command.",
683
687
  "properties": {
684
688
  "geometry": {
685
- "$ref": "#/definitions/esri.Point",
686
- "description": "The point to delete from the active sketch. Not supported in Geocortex Mobile."
689
+ "$ref": "#/definitions/esri.Geometry",
690
+ "description": "The geometry to remove a point from. If this property is not specified, any active vertices will be deleted."
687
691
  },
688
692
  "maps": {
689
693
  "$ref": "MapsLike",
690
694
  "description": "Map(s) to use for the command/operation."
695
+ },
696
+ "partIndex": {
697
+ "description": "The index of the part of the geometry that the point should be removed from. Required for polyline and polygon geometry types when the geometry and pointIndex properties are defined.",
698
+ "type": "number"
699
+ },
700
+ "point": {
701
+ "$ref": "#/definitions/esri.Point",
702
+ "description": "The point to remove from the geometry. If this property is defined, the 'pointIndex' and 'partIndex' properties are ignored. If no point nor pointIndex/partIndex are specified, any active points will be deleted. If there are no active points, the entire geometry will be deleted."
703
+ },
704
+ "pointIndex": {
705
+ "description": "The index of the point that should be removed from the geometry. If this property is defined, the geometry property must also be defined.",
706
+ "type": "number"
691
707
  }
692
708
  },
693
709
  "type": "object"
@@ -705,8 +721,8 @@
705
721
  "type": "boolean"
706
722
  },
707
723
  "message": {
708
- "description": "The message to be displayed in the notification.",
709
- "type": "string"
724
+ "$ref": "#/definitions/TranslatableText",
725
+ "description": "The message to be displayed in the notification. Mobile only supports a string for this property."
710
726
  },
711
727
  "notificationGroup": {
712
728
  "description": "Notifications in the same notification group are mutually exclusive, and will supersede one another. Mobile only.",
@@ -815,6 +831,10 @@
815
831
  "description": "Whether to allow scaling of the edited geometry. Defaults to true.",
816
832
  "type": "boolean"
817
833
  },
834
+ "enableVertexEditing": {
835
+ "description": "Whether to allow the user to add, move, and remove vertices from a geometry. Defaults to true.",
836
+ "type": "boolean"
837
+ },
818
838
  "scaleMode": {
819
839
  "description": "Setting \"free\" allows independent scaling on the x and y axis, \"preserve-aspect-ratio\" constrains scaling to the original aspect ratio. Defaults to \"preserve-aspect-ratio\".",
820
840
  "enum": [
@@ -822,6 +842,10 @@
822
842
  "preserve-aspect-ratio"
823
843
  ],
824
844
  "type": "string"
845
+ },
846
+ "validateGeometry": {
847
+ "description": "Whether the resulting geometry is validated before it's returned from the operation. If the geometry is invalid upon completion, an error is thrown. Defaults to true.",
848
+ "type": "boolean"
825
849
  }
826
850
  },
827
851
  "type": "object"
@@ -1246,6 +1270,10 @@
1246
1270
  "additionalProperties": false,
1247
1271
  "description": "Arguments for the \"sketching.insert-point\" command.",
1248
1272
  "properties": {
1273
+ "geometry": {
1274
+ "$ref": "#/definitions/esri.Geometry",
1275
+ "description": "The geometry to add the point to, if multiple are present in an active editing session. Not supported by Mobile."
1276
+ },
1249
1277
  "maps": {
1250
1278
  "$ref": "MapsLike",
1251
1279
  "description": "Map(s) to use for the command/operation."
@@ -1808,6 +1836,61 @@
1808
1836
  },
1809
1837
  "type": "object"
1810
1838
  },
1839
+ "TranslatableText": {
1840
+ "anyOf": [
1841
+ {
1842
+ "$ref": "#/definitions/TranslateOptions"
1843
+ },
1844
+ {
1845
+ "type": "string"
1846
+ }
1847
+ ],
1848
+ "description": "A translatable string, either a language string or a language string with arguments to pass into it."
1849
+ },
1850
+ "TranslateOptions": {
1851
+ "additionalProperties": false,
1852
+ "description": "The available options for the Locale Service translate function.",
1853
+ "properties": {
1854
+ "args": {
1855
+ "description": "The values to substitute into the format string if it contains substitution placeholders (see utilities/string/format in Geocortex API).",
1856
+ "items": {
1857
+ },
1858
+ "type": "array"
1859
+ },
1860
+ "currency": {
1861
+ "description": "The default unit of currency to use when formatting currency. See {@link NumberSettings.currency}.",
1862
+ "type": "string"
1863
+ },
1864
+ "dateFormat": {
1865
+ "description": "The default format to use when formatting dates. See {@link DateFormatter.format}.",
1866
+ "type": "string"
1867
+ },
1868
+ "fractionalDigits": {
1869
+ "description": "The default number of digits to show after the decimal point when formatting numbers. See {@link NumberSettings.fractionalDigits}.",
1870
+ "type": "number"
1871
+ },
1872
+ "locale": {
1873
+ "description": "The locale to use for translation. If not specified, the current locale will be used.",
1874
+ "type": "string"
1875
+ },
1876
+ "numberFormat": {
1877
+ "description": "The default format to use when formatting numbers. See {@link NumberFormatter.format}.",
1878
+ "type": "string"
1879
+ },
1880
+ "text": {
1881
+ "description": "The string to translate. If the text is a language resource key, then a localized version of that resource will be used if one exists, otherwise the original text is returned.",
1882
+ "type": "string"
1883
+ },
1884
+ "timeZone": {
1885
+ "description": "The time zone of a date being formatted.",
1886
+ "type": "string"
1887
+ }
1888
+ },
1889
+ "required": [
1890
+ "text"
1891
+ ],
1892
+ "type": "object"
1893
+ },
1811
1894
  "UpdateResultsFeaturesArgs": {
1812
1895
  "additionalProperties": false,
1813
1896
  "description": "Arguments for various commands that affect a result component's features.",
@@ -11172,7 +11255,7 @@
11172
11255
  ]
11173
11256
  },
11174
11257
  "sketching.add-node-to-geometry": {
11175
- "description": "Adds a point to a given polyline or polygon geometry. Returns the resulting geometry. Deprecated in Mobile, use geometry.add-point instead.",
11258
+ "description": "Deprecated - Mobile users should rather use \"geometry.add-point\"; Web users should use \"sketching.add-point\" or \"sketching.insert-point\" instead.",
11176
11259
  "enum": [
11177
11260
  "sketching.add-node-to-geometry"
11178
11261
  ]
@@ -11184,7 +11267,7 @@
11184
11267
  "$ref": "#/definitions/esri.Geometry"
11185
11268
  },
11186
11269
  "sketching.add-point": {
11187
- "description": "Adds a point to polygon or polyline using the selected index as the point to insert after.",
11270
+ "description": "Adds a point to polygon, polyline, or multipoint using the selected index as the point to insert after.",
11188
11271
  "enum": [
11189
11272
  "sketching.add-point"
11190
11273
  ]
@@ -11205,13 +11288,20 @@
11205
11288
  "$ref": "#/definitions/CaptureGeometryResult"
11206
11289
  },
11207
11290
  "sketching.delete": {
11208
- "description": "If a point is supplied while a sketching or editing operation is active, the vertex at that point will be deleted from the current geometry. If no point is supplied and a geometry editing session is active, the entire geometry will be deleted.",
11291
+ "description": "If a point is supplied while a sketching or editing operation is active, the vertex at that point will be deleted from the current geometry. If no point is supplied, any active points in the session will be deleted. If there are no active points in the session, the entire geometry will be deleted.",
11209
11292
  "enum": [
11210
11293
  "sketching.delete"
11211
11294
  ]
11212
11295
  },
11213
11296
  "sketching.delete:input": {
11214
- "$ref": "#/definitions/DeleteGeometryArgs"
11297
+ "anyOf": [
11298
+ {
11299
+ "$ref": "#/definitions/DeleteGeometryArgs"
11300
+ },
11301
+ {
11302
+ "type": "null"
11303
+ }
11304
+ ]
11215
11305
  },
11216
11306
  "sketching.edit-geometry": {
11217
11307
  "description": "Allows the user to edit an existing geometry by drawing on a map. Returns the geometry that was edited, or the supplied feature with the altered geometry applied, along with the map that it was drawn on.",
@@ -11226,7 +11316,7 @@
11226
11316
  "$ref": "#/definitions/EditGeometryResult"
11227
11317
  },
11228
11318
  "sketching.insert-point": {
11229
- "description": "Inserts a point into a polygon or polyline at the specified index. If the partIndex is null, then the last part is used. If the pointIndex is null, then the new point is inserted at the end.",
11319
+ "description": "Inserts a point into a polygon, polyline, or multipoint at the specified index. If the partIndex is null, then the last part is used. If the pointIndex is null, then the new point is inserted at the end.",
11230
11320
  "enum": [
11231
11321
  "sketching.insert-point"
11232
11322
  ]
@@ -11253,7 +11343,7 @@
11253
11343
  "$ref": "#/definitions/SetGeometryModeArgs"
11254
11344
  },
11255
11345
  "sketching.stop": {
11256
- "description": "Stops geometry capturing or editing on a given map. Returns the current geometry. If validateGeometry parameter is true and geometry is invalid, returns null.",
11346
+ "description": "Stops geometry capturing or editing on a given map. Returns the current geometry. If validateGeometry parameter is true and geometry is invalid, the operation will return null.",
11257
11347
  "enum": [
11258
11348
  "sketching.stop"
11259
11349
  ]