@vertigis/viewer-spec 52.1.0 → 53.1.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.
Files changed (41) hide show
  1. package/analytics/WebAction.d.ts +1 -1
  2. package/app-config/schema/common-app-config.schema.json +1 -1
  3. package/app-config/schema/mobile-app-config.schema.json +1 -1
  4. package/app-config/schema/web-app-config.schema.json +1 -1
  5. package/app-config/web/HasVisibilityFilters.d.ts +2 -2
  6. package/app-config/web/ProjectModelProperties.d.ts +12 -0
  7. package/app-config/web/ProjectModelProperties.js +1 -0
  8. package/app-config/web/SharedProjectsModelProperties.d.ts +53 -0
  9. package/app-config/web/SharedProjectsModelProperties.js +1 -0
  10. package/app-config/web/SharedStorageModelProperties.d.ts +30 -0
  11. package/app-config/web/SharedStorageModelProperties.js +1 -0
  12. package/app-config/web/VertigisWebModelProperties.d.ts +0 -6
  13. package/layout/schema/layout-web.xsd +13 -0
  14. package/messaging/common.d.ts +22 -0
  15. package/messaging/registry/Commands.d.ts +2 -0
  16. package/messaging/registry/Commands.js +1 -1
  17. package/messaging/registry/Events.d.ts +2 -0
  18. package/messaging/registry/Events.js +1 -1
  19. package/messaging/registry/Operations.d.ts +2 -0
  20. package/messaging/registry/Operations.js +1 -1
  21. package/messaging/registry/app.d.ts +4 -2
  22. package/messaging/registry/drawing.d.ts +3 -12
  23. package/messaging/registry/layers.d.ts +83 -2
  24. package/messaging/registry/layers.js +1 -1
  25. package/messaging/registry/project.d.ts +141 -0
  26. package/messaging/registry/project.js +1 -0
  27. package/messaging/registry/results.d.ts +33 -17
  28. package/messaging/registry/results.js +1 -1
  29. package/messaging/registry/system.d.ts +25 -3
  30. package/messaging/registry/system.js +1 -1
  31. package/messaging/registry/ui.d.ts +9 -0
  32. package/messaging/registry/ui.js +1 -1
  33. package/messaging/schema/common-action.schema.json +634 -502
  34. package/messaging/schema/common-event.schema.json +371 -412
  35. package/messaging/schema/mobile-action.schema.json +665 -524
  36. package/messaging/schema/mobile-event.schema.json +406 -447
  37. package/messaging/schema/web-action.schema.json +2264 -856
  38. package/messaging/schema/web-event.schema.json +542 -481
  39. package/package.json +5 -2
  40. package/version.d.ts +1 -1
  41. package/version.js +1 -1
@@ -26,11 +26,11 @@ export interface HasVisibilityFilters {
26
26
  * end-user. If both visibleTo and hiddenFrom are undefined/empty, the
27
27
  * component will be visible to all users.
28
28
  */
29
- visibleTo?: VisibilityFilter[];
29
+ visibleTo?: Iterable<VisibilityFilter>;
30
30
  /**
31
31
  * Filters that determine whether the UI element is hidden from a given
32
32
  * end-user. If both visibleTo and hiddenFrom are undefined/empty, the
33
33
  * component will be visible to all users.
34
34
  */
35
- hiddenFrom?: VisibilityFilter[];
35
+ hiddenFrom?: Iterable<VisibilityFilter>;
36
36
  }
@@ -0,0 +1,12 @@
1
+ import type { ItemRef } from "../common/ItemRef.js";
2
+ import type { ServiceModelProperties } from "../common/ServiceModelProperties.js";
3
+ /**
4
+ * Configuration for project service.
5
+ */
6
+ export interface ProjectModelProperties extends ServiceModelProperties {
7
+ /**
8
+ * The active layout of VertiGIS Studio Web. This property is only
9
+ * serialized to saved projects.
10
+ */
11
+ layout?: ItemRef;
12
+ }
@@ -0,0 +1 @@
1
+ export{};
@@ -0,0 +1,53 @@
1
+ import type { ItemRef } from "../common/ItemRef";
2
+ import type { ComponentModelProperties } from "./ComponentModelProperties";
3
+ import type { HasVisibilityFilters, PortalUsername } from "./HasVisibilityFilters";
4
+ /**
5
+ * Configuration for a shared project.
6
+ */
7
+ export interface SharedProject extends HasVisibilityFilters {
8
+ /**
9
+ * The unique ID for this entity.
10
+ */
11
+ readonly id: string;
12
+ /**
13
+ * A human-readable title for the shared project.
14
+ */
15
+ title: string;
16
+ /**
17
+ * A description for the shared project.
18
+ */
19
+ description: string;
20
+ /**
21
+ * The created Date.
22
+ */
23
+ created: Date;
24
+ /**
25
+ * Indicates if the shared project is shared as 'read only'.
26
+ */
27
+ readOnly?: boolean;
28
+ /**
29
+ * The modified Date.
30
+ */
31
+ modified?: Date;
32
+ /**
33
+ * The username of the last modifier.
34
+ */
35
+ modifiedBy?: PortalUsername;
36
+ /**
37
+ * The username of the owner.
38
+ */
39
+ owner?: PortalUsername;
40
+ }
41
+ /**
42
+ * Configuration for the Shared Projects component.
43
+ */
44
+ export interface SharedProjectsModelProperties extends ComponentModelProperties {
45
+ /**
46
+ * The actions to be shown in the shared projects title context menu.
47
+ */
48
+ titleActions?: ItemRef;
49
+ /**
50
+ * The actions to be shown in the shared projects list context menu.
51
+ */
52
+ projectActions?: ItemRef;
53
+ }
@@ -0,0 +1 @@
1
+ export{};
@@ -0,0 +1,30 @@
1
+ import type { ServiceModelProperties } from "../common/ServiceModelProperties";
2
+ /**
3
+ * Configuration for an application specific shared storage share. Backed by an
4
+ * S3 api compatible service.
5
+ */
6
+ export interface SharedStorageModelProperties extends ServiceModelProperties {
7
+ /**
8
+ * The bucket for the share.
9
+ */
10
+ bucket?: string;
11
+ /**
12
+ * The endpoint to be used.
13
+ */
14
+ endpoint?: string;
15
+ /**
16
+ * The portal item that holds the read write credentials for shared storage.
17
+ * Access to these credentials will be limited by its portal item sharing
18
+ * settings. This portal item should never be shared publicly as this would
19
+ * provide public read write access to your endpoint. Extra care should be
20
+ * given to restrict the scope of these credentials to only the specific
21
+ * endpoint and bucket needed.
22
+ */
23
+ credentialsPortalItem?: string;
24
+ /**
25
+ * Additional config that will be passed to the S3 api config on
26
+ * initialization. (See
27
+ * https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-s3/interfaces/s3clientconfig.html).
28
+ */
29
+ additionalConfiguration?: Record<string, unknown>;
30
+ }
@@ -0,0 +1 @@
1
+ export{};
@@ -1,6 +1,5 @@
1
1
  import type { EntityProperties } from "@vertigis/arcgis-extensions/Entity";
2
2
  import type { ApplicationModelProperties } from "../common/ApplicationModelProperties.js";
3
- import type { ItemRef } from "../common/ItemRef.js";
4
3
  /**
5
4
  * The privacy policy link location options.
6
5
  */
@@ -58,11 +57,6 @@ export interface VertigisWebModelProperties extends ApplicationModelProperties {
58
57
  * configuration.
59
58
  */
60
59
  version?: string;
61
- /**
62
- * The active layout of VertiGIS Studio Web. This property is only
63
- * serialized to saved projects.
64
- */
65
- layout?: ItemRef;
66
60
  }
67
61
  /**
68
62
  * An object specifying a URL that should use a specific proxy.
@@ -197,6 +197,19 @@
197
197
  </complexType>
198
198
  </element>
199
199
 
200
+ <element name="shared-projects" substitutionGroup="base:component">
201
+ <annotation>
202
+ <documentation xml:lang="en">
203
+ A component that allows the user to manage and view shared projects.
204
+ </documentation>
205
+ </annotation>
206
+ <complexType>
207
+ <complexContent>
208
+ <extension base="base:Component" />
209
+ </complexContent>
210
+ </complexType>
211
+ </element>
212
+
200
213
  <element name="results-table" substitutionGroup="base:component">
201
214
  <annotation>
202
215
  <documentation xml:lang="en">
@@ -270,6 +270,15 @@ export interface HasSymbol {
270
270
  */
271
271
  symbol?: SymbolLike;
272
272
  }
273
+ /**
274
+ * An object that has a `symbols`property.
275
+ */
276
+ export interface HasSymbols {
277
+ /**
278
+ * The symbols to use for the command/operation.
279
+ */
280
+ symbols?: SymbolLike | SymbolLike[];
281
+ }
273
282
  /**
274
283
  * An object that is convertible to an Esri Viewpoint, or that has a viewpoint
275
284
  * property.
@@ -324,3 +333,16 @@ export interface File extends Blob {
324
333
  */
325
334
  readonly name: string;
326
335
  }
336
+ /**
337
+ * A data containing object that may or may not be named.
338
+ */
339
+ export type FileLike = File | Blob;
340
+ /**
341
+ * An object that has a `blobs` property containing data files.
342
+ */
343
+ export interface HasFiles {
344
+ /**
345
+ * The data files to use for the command/operation.
346
+ */
347
+ blobs?: FileLike[];
348
+ }
@@ -22,6 +22,7 @@ import { OfflineCommands } from "./offline.js";
22
22
  import { PanelCommands } from "./panel.js";
23
23
  import { PhotosCommands } from "./photos.js";
24
24
  import { PrintCommands } from "./printing.js";
25
+ import { ProjectCommands } from "./project.js";
25
26
  import { RegionCommands } from "./region.js";
26
27
  import { ReportsCommands } from "./reports.js";
27
28
  import { ResultsCommands } from "./results.js";
@@ -54,6 +55,7 @@ export declare class Commands extends CommandRegistry {
54
55
  readonly measurement: MeasurementCommands;
55
56
  readonly offline: OfflineCommands;
56
57
  readonly panel: PanelCommands;
58
+ readonly project: ProjectCommands;
57
59
  readonly photos: PhotosCommands;
58
60
  readonly printing: PrintCommands;
59
61
  readonly region: RegionCommands;
@@ -1 +1 @@
1
- import{CommandRegistry as s}from"../CommandRegistry.js";import{AppCommands as e}from"./app.js";import{AuthCommands as t}from"./auth.js";import{BasemapCommands as i}from"./basemap.js";import{ChartsCommands as m}from"./charts.js";import{DrawingCommands as r}from"./drawing.js";import{EditCommands as o}from"./edit.js";import{FileCommands as h}from"./file.js";import{GeolocationCommands as a}from"./geolocation.js";import{GeometryToolbarCommands as n}from"./geometry-toolbar.js";import{GeometryCommands as p}from"./geometry.js";import{HighlightsCommands as g}from"./highlights.js";import{IwtmCommands as w}from"./iwtm.js";import{KpiCommands as f}from"./kpi.js";import{LayerComparisonCommands as j}from"./layer-comparison.js";import{LayerPresetsCommands as _}from"./layer-presets.js";import{LayersCommands as l}from"./layers.js";import{LocationMarkerCommands as c}from"./location-marker.js";import{MapCommands as y}from"./map.js";import{MeasurementCommands as u}from"./measurement.js";import{OfflineCommands as d}from"./offline.js";import{PanelCommands as k}from"./panel.js";import{PhotosCommands as b}from"./photos.js";import{PrintCommands as C}from"./printing.js";import{RegionCommands as v}from"./region.js";import{ReportsCommands as x}from"./reports.js";import{ResultsCommands as A}from"./results.js";import{SearchCommands as M}from"./search.js";import{SketchingCommands as P}from"./sketching.js";import{StudioAnalyticsCommands as R}from"./studioAnalytics.js";import{SystemCommands as T}from"./system.js";import{UICommands as q}from"./ui.js";import{ViewerCommands as z}from"./viewer.js";import{WorkflowCommands as B}from"./workflow.js";export class Commands extends s{constructor(){super(...arguments),this.app=new e(this._messages),this.auth=new t(this._messages),this.basemap=new i(this._messages),this.charts=new m(this._messages),this.drawing=new r(this._messages),this.edit=new o(this._messages),this.file=new h(this._messages),this.geolocation=new a(this._messages),this.geometry=new p(this._messages),this.geometryToolbar=new n(this._messages),this.highlights=new g(this._messages),this.iwtm=new w(this._messages),this.kpi=new f(this._messages),this.layers=new l(this._messages),this.layerComparison=new j(this._messages),this.layerPresets=new _(this._messages),this.locationMarker=new c(this._messages),this.map=new y(this._messages),this.measurement=new u(this._messages),this.offline=new d(this._messages),this.panel=new k(this._messages),this.photos=new b(this._messages),this.printing=new C(this._messages),this.region=new v(this._messages),this.reports=new x(this._messages),this.results=new A(this._messages),this.search=new M(this._messages),this.sketching=new P(this._messages),this.studioAnalytics=new R(this._messages),this.system=new T(this._messages),this.ui=new q(this._messages),this.viewer=new z(this._messages),this.workflow=new B(this._messages)}}
1
+ import{CommandRegistry as s}from"../CommandRegistry.js";import{AppCommands as e}from"./app.js";import{AuthCommands as t}from"./auth.js";import{BasemapCommands as i}from"./basemap.js";import{ChartsCommands as m}from"./charts.js";import{DrawingCommands as r}from"./drawing.js";import{EditCommands as o}from"./edit.js";import{FileCommands as h}from"./file.js";import{GeolocationCommands as a}from"./geolocation.js";import{GeometryToolbarCommands as n}from"./geometry-toolbar.js";import{GeometryCommands as p}from"./geometry.js";import{HighlightsCommands as g}from"./highlights.js";import{IwtmCommands as w}from"./iwtm.js";import{KpiCommands as f}from"./kpi.js";import{LayerComparisonCommands as j}from"./layer-comparison.js";import{LayerPresetsCommands as _}from"./layer-presets.js";import{LayersCommands as l}from"./layers.js";import{LocationMarkerCommands as c}from"./location-marker.js";import{MapCommands as y}from"./map.js";import{MeasurementCommands as u}from"./measurement.js";import{OfflineCommands as d}from"./offline.js";import{PanelCommands as k}from"./panel.js";import{PhotosCommands as b}from"./photos.js";import{PrintCommands as C}from"./printing.js";import{ProjectCommands as v}from"./project.js";import{RegionCommands as x}from"./region.js";import{ReportsCommands as A}from"./reports.js";import{ResultsCommands as M}from"./results.js";import{SearchCommands as P}from"./search.js";import{SketchingCommands as R}from"./sketching.js";import{StudioAnalyticsCommands as T}from"./studioAnalytics.js";import{SystemCommands as q}from"./system.js";import{UICommands as z}from"./ui.js";import{ViewerCommands as B}from"./viewer.js";import{WorkflowCommands as D}from"./workflow.js";export class Commands extends s{constructor(){super(...arguments),this.app=new e(this._messages),this.auth=new t(this._messages),this.basemap=new i(this._messages),this.charts=new m(this._messages),this.drawing=new r(this._messages),this.edit=new o(this._messages),this.file=new h(this._messages),this.geolocation=new a(this._messages),this.geometry=new p(this._messages),this.geometryToolbar=new n(this._messages),this.highlights=new g(this._messages),this.iwtm=new w(this._messages),this.kpi=new f(this._messages),this.layers=new l(this._messages),this.layerComparison=new j(this._messages),this.layerPresets=new _(this._messages),this.locationMarker=new c(this._messages),this.map=new y(this._messages),this.measurement=new u(this._messages),this.offline=new d(this._messages),this.panel=new k(this._messages),this.project=new v(this._messages),this.photos=new b(this._messages),this.printing=new C(this._messages),this.region=new x(this._messages),this.reports=new A(this._messages),this.results=new M(this._messages),this.search=new P(this._messages),this.sketching=new R(this._messages),this.studioAnalytics=new T(this._messages),this.system=new q(this._messages),this.ui=new z(this._messages),this.viewer=new B(this._messages),this.workflow=new D(this._messages)}}
@@ -17,6 +17,7 @@ import { PanelEvents } from "./panel.js";
17
17
  import { PhotosEvents } from "./photos.js";
18
18
  import { PortalEvents } from "./portal.js";
19
19
  import { PrintEvents } from "./printing.js";
20
+ import { ProjectEvents } from "./project.js";
20
21
  import { RegionEvents } from "./region.js";
21
22
  import { ReportEvents } from "./reports.js";
22
23
  import { ResultsEvents } from "./results.js";
@@ -43,6 +44,7 @@ export declare class Events extends EventRegistry {
43
44
  readonly map: MapEvents;
44
45
  readonly offline: OfflineEvents;
45
46
  readonly panel: PanelEvents;
47
+ readonly project: ProjectEvents;
46
48
  readonly photos: PhotosEvents;
47
49
  readonly portal: PortalEvents;
48
50
  readonly printing: PrintEvents;
@@ -1 +1 @@
1
- import{EventRegistry as s}from"../EventRegistry.js";import{AppConfigEvents as t}from"./app-config.js";import{AppEvents as e}from"./app.js";import{AuthEvents as i}from"./auth.js";import{BookmarkEvents as o}from"./bookmark.js";import{DeviceEvents as m}from"./device.js";import{DisplayEvents as r}from"./display.js";import{EditEvents as h}from"./edit.js";import{GeolocationEvents as a}from"./geolocation.js";import{InputEvents as p}from"./input.js";import{LayersEvents as n}from"./layers.js";import{LayoutEvents as g}from"./layout.js";import{LocationMarkerEvents as f}from"./location-marker.js";import{MapEvents as w}from"./map.js";import{OfflineEvents as j}from"./offline.js";import{PanelEvents as _}from"./panel.js";import{PhotosEvents as l}from"./photos.js";import{PortalEvents as c}from"./portal.js";import{PrintEvents as u}from"./printing.js";import{RegionEvents as k}from"./region.js";import{ReportEvents as d}from"./reports.js";import{ResultsEvents as y}from"./results.js";import{SearchEvents as v}from"./search.js";import{SettingsEvents as b}from"./settings.js";import{ShortcutEvents as x}from"./shortcut.js";import{TasksEvents as E}from"./tasks.js";import{UIEvents as C}from"./ui.js";import{ViewerEvents as M}from"./viewer.js";import{WorkflowEvents as R}from"./workflow.js";export class Events extends s{constructor(){super(...arguments),this.app=new e(this._messages),this.appConfig=new t(this._messages),this.auth=new i(this._messages),this.bookmark=new o(this._messages),this.device=new m(this._messages),this.display=new r(this._messages),this.edit=new h(this._messages),this.geolocation=new a(this._messages),this.input=new p(this._messages),this.layers=new n(this._messages),this.layout=new g(this._messages),this.locationMarker=new f(this._messages),this.map=new w(this._messages),this.offline=new j(this._messages),this.panel=new _(this._messages),this.photos=new l(this._messages),this.portal=new c(this._messages),this.printing=new u(this._messages),this.region=new k(this._messages),this.reports=new d(this._messages),this.results=new y(this._messages),this.search=new v(this._messages),this.settings=new b(this._messages),this.shortcuts=new x(this._messages),this.tasks=new E(this._messages),this.ui=new C(this._messages),this.viewer=new M(this._messages),this.workflow=new R(this._messages)}}
1
+ import{EventRegistry as s}from"../EventRegistry.js";import{AppConfigEvents as t}from"./app-config.js";import{AppEvents as e}from"./app.js";import{AuthEvents as i}from"./auth.js";import{BookmarkEvents as o}from"./bookmark.js";import{DeviceEvents as r}from"./device.js";import{DisplayEvents as m}from"./display.js";import{EditEvents as h}from"./edit.js";import{GeolocationEvents as a}from"./geolocation.js";import{InputEvents as p}from"./input.js";import{LayersEvents as n}from"./layers.js";import{LayoutEvents as g}from"./layout.js";import{LocationMarkerEvents as f}from"./location-marker.js";import{MapEvents as w}from"./map.js";import{OfflineEvents as j}from"./offline.js";import{PanelEvents as _}from"./panel.js";import{PhotosEvents as l}from"./photos.js";import{PortalEvents as c}from"./portal.js";import{PrintEvents as u}from"./printing.js";import{ProjectEvents as k}from"./project.js";import{RegionEvents as d}from"./region.js";import{ReportEvents as y}from"./reports.js";import{ResultsEvents as v}from"./results.js";import{SearchEvents as b}from"./search.js";import{SettingsEvents as x}from"./settings.js";import{ShortcutEvents as E}from"./shortcut.js";import{TasksEvents as C}from"./tasks.js";import{UIEvents as M}from"./ui.js";import{ViewerEvents as R}from"./viewer.js";import{WorkflowEvents as q}from"./workflow.js";export class Events extends s{constructor(){super(...arguments),this.app=new e(this._messages),this.appConfig=new t(this._messages),this.auth=new i(this._messages),this.bookmark=new o(this._messages),this.device=new r(this._messages),this.display=new m(this._messages),this.edit=new h(this._messages),this.geolocation=new a(this._messages),this.input=new p(this._messages),this.layers=new n(this._messages),this.layout=new g(this._messages),this.locationMarker=new f(this._messages),this.map=new w(this._messages),this.offline=new j(this._messages),this.panel=new _(this._messages),this.project=new k(this._messages),this.photos=new l(this._messages),this.portal=new c(this._messages),this.printing=new u(this._messages),this.region=new d(this._messages),this.reports=new y(this._messages),this.results=new v(this._messages),this.search=new b(this._messages),this.settings=new x(this._messages),this.shortcuts=new E(this._messages),this.tasks=new C(this._messages),this.ui=new M(this._messages),this.viewer=new R(this._messages),this.workflow=new q(this._messages)}}
@@ -19,6 +19,7 @@ import { MeasurementOperations } from "./measurement.js";
19
19
  import { MessagingOperations } from "./messaging.js";
20
20
  import { NetworkOperations } from "./network.js";
21
21
  import { OfflineOperations } from "./offline.js";
22
+ import { ProjectOperations } from "./project.js";
22
23
  import { ResultsOperations } from "./results.js";
23
24
  import { SketchingOperations } from "./sketching.js";
24
25
  import { SystemOperations } from "./system.js";
@@ -46,6 +47,7 @@ export declare class Operations extends OperationRegistry {
46
47
  readonly messaging: MessagingOperations;
47
48
  readonly network: NetworkOperations;
48
49
  readonly offline: OfflineOperations;
50
+ readonly project: ProjectOperations;
49
51
  readonly sketching: SketchingOperations;
50
52
  readonly system: SystemOperations;
51
53
  readonly results: ResultsOperations;
@@ -1 +1 @@
1
- import{OperationRegistry as s}from"../OperationRegistry.js";import{AppOperations as e}from"./app.js";import{ArcadeOperations as t}from"./arcade.js";import{AuthOperations as i}from"./auth.js";import{BasemapOperations as m}from"./basemap.js";import{ChartOperations as o}from"./charts.js";import{DebugConsoleOperations as r}from"./debugConsole.js";import{DrawingOperations as h}from"./drawing.js";import{EditOperations as a}from"./edit.js";import{FileOperations as g}from"./file.js";import{GeocodeOperations as n}from"./geocode.js";import{GeolocationOperations as p}from"./geolocation.js";import{GeometryOperations as w}from"./geometry.js";import{HighlightsOperations as f}from"./highlights.js";import{KpiOperations as j}from"./kpi.js";import{LogViewerOperations as _}from"./logViewer.js";import{MapOperations as l}from"./map.js";import{MeasurementOperations as c}from"./measurement.js";import{MessagingOperations as u}from"./messaging.js";import{NetworkOperations as d}from"./network.js";import{OfflineOperations as k}from"./offline.js";import{ResultsOperations as y}from"./results.js";import{SketchingOperations as b}from"./sketching.js";import{SystemOperations as v}from"./system.js";import{TasksOperations as x}from"./tasks.js";import{UIOperations as C}from"./ui.js";import{ViewerOperations as O}from"./viewer.js";import{WorkflowOperations as V}from"./workflow.js";export class Operations extends s{constructor(){super(...arguments),this.arcade=new t(this._messages),this.auth=new i(this._messages),this.app=new e(this._messages),this.basemap=new m(this._messages),this.charts=new o(this._messages),this.edit=new a(this._messages),this.drawing=new h(this._messages),this.file=new g(this._messages),this.geocode=new n(this._messages),this.geolocation=new p(this._messages),this.geometry=new w(this._messages),this.highlights=new f(this._messages),this.kpi=new j(this._messages),this.logViewer=new _(this._messages),this.map=new l(this._messages),this.measurement=new c(this._messages),this.messaging=new u(this._messages),this.network=new d(this._messages),this.offline=new k(this._messages),this.sketching=new b(this._messages),this.system=new v(this._messages),this.results=new y(this._messages),this.tasks=new x(this._messages),this.ui=new C(this._messages),this.viewer=new O(this._messages),this.workflow=new V(this._messages),this.debugConsole=new r(this._messages)}}
1
+ import{OperationRegistry as s}from"../OperationRegistry.js";import{AppOperations as e}from"./app.js";import{ArcadeOperations as t}from"./arcade.js";import{AuthOperations as i}from"./auth.js";import{BasemapOperations as m}from"./basemap.js";import{ChartOperations as o}from"./charts.js";import{DebugConsoleOperations as r}from"./debugConsole.js";import{DrawingOperations as h}from"./drawing.js";import{EditOperations as a}from"./edit.js";import{FileOperations as g}from"./file.js";import{GeocodeOperations as n}from"./geocode.js";import{GeolocationOperations as p}from"./geolocation.js";import{GeometryOperations as w}from"./geometry.js";import{HighlightsOperations as f}from"./highlights.js";import{KpiOperations as j}from"./kpi.js";import{LogViewerOperations as _}from"./logViewer.js";import{MapOperations as l}from"./map.js";import{MeasurementOperations as c}from"./measurement.js";import{MessagingOperations as u}from"./messaging.js";import{NetworkOperations as d}from"./network.js";import{OfflineOperations as k}from"./offline.js";import{ProjectOperations as y}from"./project.js";import{ResultsOperations as b}from"./results.js";import{SketchingOperations as v}from"./sketching.js";import{SystemOperations as x}from"./system.js";import{TasksOperations as C}from"./tasks.js";import{UIOperations as O}from"./ui.js";import{ViewerOperations as V}from"./viewer.js";import{WorkflowOperations as R}from"./workflow.js";export class Operations extends s{constructor(){super(...arguments),this.arcade=new t(this._messages),this.auth=new i(this._messages),this.app=new e(this._messages),this.basemap=new m(this._messages),this.charts=new o(this._messages),this.edit=new a(this._messages),this.drawing=new h(this._messages),this.file=new g(this._messages),this.geocode=new n(this._messages),this.geolocation=new p(this._messages),this.geometry=new w(this._messages),this.highlights=new f(this._messages),this.kpi=new j(this._messages),this.logViewer=new _(this._messages),this.map=new l(this._messages),this.measurement=new c(this._messages),this.messaging=new u(this._messages),this.network=new d(this._messages),this.offline=new k(this._messages),this.project=new y(this._messages),this.sketching=new v(this._messages),this.system=new x(this._messages),this.results=new b(this._messages),this.tasks=new C(this._messages),this.ui=new O(this._messages),this.viewer=new V(this._messages),this.workflow=new R(this._messages),this.debugConsole=new r(this._messages)}}
@@ -95,8 +95,9 @@ export declare class AppCommands extends CommandRegistry {
95
95
  /**
96
96
  * Loads a project's app config and updates the application's current state,
97
97
  * accordingly. If more than one file is provided, only the first will be
98
- * loaded.
98
+ * loaded. Deprecated; use project.load instead.
99
99
  *
100
+ * @deprecated
100
101
  * @webOnly
101
102
  */
102
103
  get loadProject(): Command<AppConfig | Blob | Blob[]>;
@@ -200,8 +201,9 @@ export declare class AppOperations extends OperationRegistry {
200
201
  get getVersion(): Operation<void, string>;
201
202
  /**
202
203
  * Creates app config for a project, based on the current state of the
203
- * application.
204
+ * application. Deprecated; use project.create instead.
204
205
  *
206
+ * @deprecated
205
207
  * @webOnly
206
208
  */
207
209
  get createProject(): Operation<void, AppConfig>;
@@ -22,7 +22,7 @@ import type { Command } from "../Command.js";
22
22
  import { CommandRegistry } from "../CommandRegistry.js";
23
23
  import type { Operation } from "../Operation.js";
24
24
  import { OperationRegistry } from "../OperationRegistry.js";
25
- import type { CreateGraphicsResult, FeaturesLike, GeometryLike, HasFeatures, HasGraphics, HasLayers, HasMaps, HasSymbol, HasUITarget, SymbolLike } from "../common.js";
25
+ import type { CreateGraphicsResult, FeaturesLike, GeometryLike, HasFeatures, HasGraphics, HasLayers, HasMaps, HasSymbol, HasSymbols, HasUITarget, SymbolLike } from "../common.js";
26
26
  import type { CaptureGeometryArgs } from "./sketching.js";
27
27
  /**
28
28
  * Symbols supported for drawing.
@@ -42,16 +42,11 @@ export interface GetDefaultSymbolArgs {
42
42
  * Arguments for the drawing.edit-symbol operation. Only available in VertiGIS
43
43
  * Studio Web.
44
44
  */
45
- export interface EditSymbolArgs extends HasMaps, HasLayers, HasGraphics, HasFeatures, HasUITarget {
45
+ export interface EditSymbolArgs extends HasSymbol, HasSymbols, HasMaps, HasLayers, HasGraphics, HasFeatures, HasUITarget {
46
46
  /**
47
47
  * The geometry type for the symbol to create.
48
48
  */
49
49
  geometryType?: GeometryType;
50
- /**
51
- * The symbol to edit. (Currently supports only SimpleLineSymbol and
52
- * SimpleFillSymbol).
53
- */
54
- symbol?: Symbol;
55
50
  /**
56
51
  * Symbol presets that can be assigned to a graphic. If defined, these
57
52
  * presets will override any that are configured in the DrawService.
@@ -69,11 +64,7 @@ export interface EditSymbolArgs extends HasMaps, HasLayers, HasGraphics, HasFeat
69
64
  * Arguments for the drawing.edit-symbol operation. Only available in VertiGIS
70
65
  * Studio Web.
71
66
  */
72
- export interface EditSymbolResult extends HasMaps, HasLayers, HasGraphics, HasFeatures {
73
- /**
74
- * The symbol that is the result of the operation.
75
- */
76
- symbol: Symbol;
67
+ export interface EditSymbolResult extends HasMaps, HasLayers, HasGraphics, HasFeatures, HasSymbols, HasSymbol {
77
68
  }
78
69
  /**
79
70
  * Arguments for the "drawing.create-graphics" operation. `GeometryLike`,
@@ -1,8 +1,12 @@
1
+ import type { TaskSettingsProperties } from "@vertigis/arcgis-extensions/data/TaskSettings.js";
2
+ import type { PopupInfo } from "@vertigis/arcgis-extensions/portal/PopupInfo.js";
1
3
  import type { Command } from "../Command.js";
2
4
  import { CommandRegistry } from "../CommandRegistry.js";
3
5
  import type { Event } from "../Event.js";
4
6
  import { EventRegistry } from "../EventRegistry.js";
5
- import type { HasLayers, HasMaps, HasSymbol } from "../common.js";
7
+ import type { Operation } from "../Operation.js";
8
+ import { OperationRegistry } from "../OperationRegistry.js";
9
+ import type { HasLayers, HasMaps, HasSymbol, HasSymbols } from "../common.js";
6
10
  /**
7
11
  * Arguments for the "layer.visibility-changed" event.
8
12
  */
@@ -29,7 +33,7 @@ export interface SetLabelVisibilityArgs extends HasLayers, HasMaps {
29
33
  /**
30
34
  * Arguments for the layer.set-symbol command.
31
35
  */
32
- export type SetSymbolArgs = Required<HasSymbol & HasLayers> & Partial<HasMaps>;
36
+ export type SetSymbolArgs = HasSymbol & HasSymbols & HasLayers & HasMaps;
33
37
  /**
34
38
  * Arguments for the layer.set-visibility command. If no 'maps' are specified,
35
39
  * all active maps in the layout will be targeted. If no 'layers' are specified,
@@ -43,6 +47,28 @@ export interface SetVisibilityArgs extends HasLayers, HasMaps {
43
47
  */
44
48
  visible: boolean;
45
49
  }
50
+ /**
51
+ * Common settings for a layer.
52
+ */
53
+ export interface HasLayerSettings {
54
+ /**
55
+ * Settings relevant to layer tasks.
56
+ */
57
+ taskSettings?: TaskSettingsProperties | TaskSettingsProperties[];
58
+ /**
59
+ * Configuration for a popup template to be used by features in the layer.
60
+ */
61
+ popupTemplate?: PopupInfo | PopupInfo[];
62
+ /**
63
+ * The title of the layer.
64
+ */
65
+ title?: string | string[];
66
+ }
67
+ /**
68
+ * Arguments for a `layers.edit-settings` operation.
69
+ */
70
+ export interface LayerSettingsArgs extends HasLayerSettings, HasLayers, HasSymbols, HasMaps {
71
+ }
46
72
  export declare class LayersCommands extends CommandRegistry {
47
73
  /**
48
74
  * Guard command for enabling the layers.set-symbol command.
@@ -50,12 +76,30 @@ export declare class LayersCommands extends CommandRegistry {
50
76
  * @webOnly
51
77
  */
52
78
  get ensureCanSetSymbol(): Command<SetSymbolArgs>;
79
+ /**
80
+ * Updates the provided layer(s) with new popup template configuration.
81
+ *
82
+ * @webOnly
83
+ */
84
+ get setPopupTemplate(): Command<LayerSettingsArgs>;
53
85
  /**
54
86
  * Updates the symbol for the provided layer(s).
55
87
  *
56
88
  * @webOnly
57
89
  */
58
90
  get setSymbol(): Command<SetSymbolArgs>;
91
+ /**
92
+ * Updates the provided layer(s) with new task settings.
93
+ *
94
+ * @webOnly
95
+ */
96
+ get setTaskSettings(): Command<LayerSettingsArgs>;
97
+ /**
98
+ * Changes the title of the provided layer(s).
99
+ *
100
+ * @webOnly
101
+ */
102
+ get setTitle(): Command<LayerSettingsArgs>;
59
103
  /**
60
104
  * Updates the visibility of the provided layer(s).
61
105
  *
@@ -75,6 +119,43 @@ export declare class LayersCommands extends CommandRegistry {
75
119
  */
76
120
  get hideLabels(): Command<SetLabelVisibilityArgs>;
77
121
  }
122
+ export declare class LayersOperations extends OperationRegistry {
123
+ /**
124
+ * Retrieves the popup configuration applied to the supplied layer(s).
125
+ *
126
+ * @webOnly
127
+ */
128
+ get getPopupTemplate(): Operation<HasLayers, LayerSettingsArgs>;
129
+ /**
130
+ * Retrieves the values for the 'taskSettings' applied to the supplied
131
+ * layer(s).
132
+ *
133
+ * @webOnly
134
+ */
135
+ get getTaskSettings(): Operation<HasLayers, LayerSettingsArgs>;
136
+ /**
137
+ * Retrieves the titles of the supplied layer(s).
138
+ *
139
+ * @webOnly
140
+ */
141
+ get getTitle(): Operation<HasLayers, LayerSettingsArgs>;
142
+ /**
143
+ * Shows a UI for editing the settings on an existing layer or layers. Note
144
+ * that changes will not be applied to the supplied layers by this
145
+ * operation. Use `layers.set-*` for this.
146
+ *
147
+ * @webOnly
148
+ */
149
+ get editSettings(): Operation<LayerSettingsArgs, LayerSettingsArgs>;
150
+ /**
151
+ * Edit the symbol from an existing layer or layers. Note that changes to
152
+ * these symbols will not be applied to the layers by this operation. Use
153
+ * `layers.set-symbol` for this.
154
+ *
155
+ * @webOnly
156
+ */
157
+ get editSymbols(): Operation<SetSymbolArgs, HasLayers & HasMaps & HasSymbols>;
158
+ }
78
159
  export declare class LayersEvents extends EventRegistry {
79
160
  /**
80
161
  * Raised when a layer's visibility changes.
@@ -1 +1 @@
1
- import{CommandRegistry as s}from"../CommandRegistry.js";import{EventRegistry as e}from"../EventRegistry.js";export class LayersCommands extends s{get ensureCanSetSymbol(){return this._messages.command("layers.ensure-can-set-symbol")}get setSymbol(){return this._messages.command("layers.set-symbol")}get setVisibility(){return this._messages.command("layers.set-visibility")}get showLabels(){return this._messages.command("layers.show-labels")}get hideLabels(){return this._messages.command("layers.hide-labels")}}export class LayersEvents extends e{get visibilityChanged(){return this._messages.event("layers.visibility-changed")}}
1
+ import{CommandRegistry as e}from"../CommandRegistry.js";import{EventRegistry as s}from"../EventRegistry.js";import{OperationRegistry as t}from"../OperationRegistry.js";export class LayersCommands extends e{get ensureCanSetSymbol(){return this._messages.command("layers.ensure-can-set-symbol")}get setPopupTemplate(){return this._messages.command("layers.set-popup-template")}get setSymbol(){return this._messages.command("layers.set-symbol")}get setTaskSettings(){return this._messages.command("layers.set-task-settings")}get setTitle(){return this._messages.command("layers.set-title")}get setVisibility(){return this._messages.command("layers.set-visibility")}get showLabels(){return this._messages.command("layers.show-labels")}get hideLabels(){return this._messages.command("layers.hide-labels")}}export class LayersOperations extends t{get getPopupTemplate(){return this._messages.operation("layers.get-popup-template")}get getTaskSettings(){return this._messages.operation("layers.get-task-settings")}get getTitle(){return this._messages.operation("layers.get-title")}get editSettings(){return this._messages.operation("layers.edit-settings")}get editSymbols(){return this._messages.operation("layers.edit-symbols")}}export class LayersEvents extends s{get visibilityChanged(){return this._messages.event("layers.visibility-changed")}}
@@ -0,0 +1,141 @@
1
+ import type { AppConfig } from "../../app-config";
2
+ import type { SharedProject } from "../../app-config/web/SharedProjectsModelProperties";
3
+ import type { Command } from "../Command";
4
+ import { CommandRegistry } from "../CommandRegistry.js";
5
+ import type { Event } from "../Event";
6
+ import { EventRegistry } from "../EventRegistry.js";
7
+ import type { Operation } from "../Operation";
8
+ import { OperationRegistry } from "../OperationRegistry.js";
9
+ import type { Blob } from "../common";
10
+ /**
11
+ * An object that has a `appConfig` property.
12
+ */
13
+ export interface HasAppConfig {
14
+ /**
15
+ * The AppConfig for the command or operation.
16
+ */
17
+ appConfig?: AppConfig;
18
+ }
19
+ /**
20
+ * Arguments for the project.delete-shared command. Only available in VertiGIS
21
+ * Studio Web.
22
+ */
23
+ export interface DeleteSharedProjectArgs extends Partial<SharedProject> {
24
+ /**
25
+ * Whether to show a confirm prompt, when overwriting a shared project.
26
+ * Defaults to 'true'.
27
+ */
28
+ showConfirm?: boolean;
29
+ }
30
+ /**
31
+ * Arguments for the project.show-settings command. Only available in VertiGIS
32
+ * Studio Web.
33
+ */
34
+ export interface ShowSharedProjectArgs extends Partial<SharedProject>, HasAppConfig {
35
+ /**
36
+ * Whether to create a new project. If a project is provided it will be used
37
+ * as the starting point for configuration.
38
+ */
39
+ createNewProject?: boolean;
40
+ }
41
+ /**
42
+ * Arguments for the project.save-shared operation. Only available in VertiGIS
43
+ * Studio Web.
44
+ */
45
+ export interface SaveSharedProjectArgs extends Partial<SharedProject>, HasAppConfig {
46
+ /**
47
+ * Whether to show a confirm prompt, when overwriting a shared project.
48
+ * Defaults to 'true'.
49
+ */
50
+ showConfirm?: boolean;
51
+ }
52
+ export declare class ProjectCommands extends CommandRegistry {
53
+ /**
54
+ * Loads a project's app config and updates the application's current state,
55
+ * accordingly. If more than one file is provided, only the first will be
56
+ * loaded.
57
+ *
58
+ * @webOnly
59
+ */
60
+ get load(): Command<AppConfig | HasAppConfig | SharedProject | Blob | Blob[]>;
61
+ /**
62
+ * Create or updates a shared project with the specified shared project
63
+ * details and project config.
64
+ *
65
+ * @webOnly
66
+ */
67
+ get saveShared(): Command<SaveSharedProjectArgs>;
68
+ /**
69
+ * Guard command for enabling the project.save-shared command.
70
+ *
71
+ * @webOnly
72
+ */
73
+ get ensureCanSaveShared(): Command<SaveSharedProjectArgs>;
74
+ /**
75
+ * Shows a shared projects settings. Requires a shared-projects component to
76
+ * be in the layout.
77
+ *
78
+ * @webOnly
79
+ */
80
+ get showSettings(): Command<ShowSharedProjectArgs>;
81
+ /**
82
+ * Shows a shared projects share link. Requires a shared-projects component
83
+ * to be in the layout.
84
+ *
85
+ * @webOnly
86
+ */
87
+ get showShareLink(): Command<SharedProject>;
88
+ /**
89
+ * Deletes a shared project and its associated project config.
90
+ *
91
+ * @webOnly
92
+ */
93
+ get deleteShared(): Command<DeleteSharedProjectArgs>;
94
+ }
95
+ export declare class ProjectOperations extends OperationRegistry {
96
+ /**
97
+ * Creates app config for a project, based on the current state of the
98
+ * application.
99
+ *
100
+ * @webOnly
101
+ */
102
+ get create(): Operation<unknown, AppConfig | HasAppConfig>;
103
+ /**
104
+ * Returns a Shared Project Content.
105
+ *
106
+ * @webOnly
107
+ */
108
+ get getSharedContent(): Operation<SharedProject, HasAppConfig>;
109
+ /**
110
+ * Returns a url share link for the provided Shared Project.
111
+ *
112
+ * @webOnly
113
+ */
114
+ get getShareLink(): Operation<SharedProject, string>;
115
+ /**
116
+ * Returns a list of Shared Projects.
117
+ *
118
+ * @webOnly
119
+ */
120
+ get getShared(): Operation<void, SharedProject[]>;
121
+ }
122
+ export declare class ProjectEvents extends EventRegistry {
123
+ /**
124
+ * Raised when a project is loaded.
125
+ *
126
+ * @webOnly
127
+ */
128
+ get loaded(): Event<SharedProject>;
129
+ /**
130
+ * Raised when a shared project is added.
131
+ *
132
+ * @webOnly
133
+ */
134
+ get shareAdded(): Event<SharedProject>;
135
+ /**
136
+ * Raised when a shared project is removed.
137
+ *
138
+ * @webOnly
139
+ */
140
+ get shareRemoved(): Event<SharedProject>;
141
+ }
@@ -0,0 +1 @@
1
+ import{CommandRegistry as e}from"../CommandRegistry.js";import{EventRegistry as t}from"../EventRegistry.js";import{OperationRegistry as s}from"../OperationRegistry.js";export class ProjectCommands extends e{get load(){return this._messages.command("project.load")}get saveShared(){return this._messages.operation("project.save-shared")}get ensureCanSaveShared(){return this._messages.command("project.ensure-can-save-shared")}get showSettings(){return this._messages.operation("project.show-settings")}get showShareLink(){return this._messages.operation("project.show-share-link")}get deleteShared(){return this._messages.operation("project.delete-shared")}}export class ProjectOperations extends s{get create(){return this._messages.operation("project.create")}get getSharedContent(){return this._messages.operation("project.get-shared-content")}get getShareLink(){return this._messages.operation("project.get-share-link")}get getShared(){return this._messages.operation("project.get-shared")}}export class ProjectEvents extends t{get loaded(){return this._messages.event("project.loaded")}get shareAdded(){return this._messages.event("project.share-added")}get shareRemoved(){return this._messages.event("project.share-removed")}}