@vertigis/viewer-spec
Version:
VertiGIS Viewer Specification
1 lines • 367 kB
JSON
{"$schema":"http://json-schema.org/draft-04/schema#","definitions":{"Action":{"description":"Defines an action to perform."},"AddressModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for an address component.","properties":{"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"hiddenFrom":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is hidden from a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."},"icon":{"description":"An icon ID for this model.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"isLandmark":{"description":"Whether this model should be included in landmarks.","type":"boolean"},"title":{"description":"A human-readable title for this model.","type":"string"},"visibleTo":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is visible to a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."}},"type":"object"},"AddressModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/AddressModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^address$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"AnalyticsModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for the Analytics Service.","properties":{"anonymizeUserInfo":{"description":"Indicates whether the application should anonymize user information in\nanalytics. Default is `true`, meaning user information is anonymized.","type":"boolean"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"url":{"description":"The URL used by VertiGIS Studio Analytics for tracking this application.","type":"string"}},"type":"object"},"AnalyticsModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/AnalyticsModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^analytics$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"AnnotationLayerJson":{"description":"Annotation layers can be created by referencing a layer from a feature\nservice. Annotation layers honor any feature templates configured in the\nsource document."},"ArcGISRequestHelper":{"description":"The request helper to be used when making requests through ArcGIS objects."},"ArcGISServiceTableExtensionProperties":{"$schema":"http://json-schema.org/draft-04/schema#","definitions":{},"description":"Properties that can be passed into the constructor for\n{@link ArcGISServiceTableExtension}.","properties":{"attachmentTypes":{"description":"A list of the valid file MIME types that can be uploaded as attachments.\nFor list of supported attachment types, see:\nhttps://developers.arcgis.com/rest/services-reference/enterprise/query-attachments-feature-service-layer-.htm.","items":{"type":"string"},"type":"array"},"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"featureActions":{"anyOf":[{"$ref":"#/definitions/MenuProperties"},{"$ref":"#/definitions/Menu"}],"description":"A menu for actions specifically related to features from this source."},"featureSettings":{"$ref":"#/definitions/FeatureSettingsProperties","description":"See {@link data /FeatureSource!FeatureSource.featureSettings}."},"featureSourceActions":{"anyOf":[{"$ref":"#/definitions/MenuProperties"},{"$ref":"#/definitions/Menu"}],"description":"A menu for actions specifically related to this source."},"hyperlinks":{"description":"See {@link data /FeatureSource!FeatureSource.hyperlinks}.","items":{"anyOf":[{"$ref":"#/definitions/HyperlinkProperties"},{"$ref":"#/definitions/Hyperlink"}]},"type":"array"},"iconUrl":{"description":"See {@link data /FeatureSource!FeatureSource.iconUrl}.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"onAddFeature":{"$ref":"#/definitions/Action","description":"See {@link data /FeatureSource!FeatureSource.onAddFeature}."},"onEditFeature":{"$ref":"#/definitions/Action","description":"See {@link data /FeatureSource!FeatureSource.onEditFeature}."},"relationships":{"description":"See {@link data /_TableExtension!TableExtension.relationships}.","items":{"anyOf":[{"$ref":"#/definitions/Relationship"},{"$ref":"#/definitions/RelationshipProperties"}]},"type":"array"},"requestHelper":{"$ref":"#/definitions/ArcGISRequestHelper","description":"Request helper used to download table information."},"schema":{"$ref":"#/definitions/SchemaProperties","description":"See {@link data /FeatureSource!FeatureSource.schema}."},"table":{"anyOf":[{"$ref":"#/definitions/esri.FeatureLayer"},{"$ref":"#/definitions/TableProperties"}],"description":"The Geocortex ArcGISServiceTable object being extended."},"taskSettings":{"$ref":"#/definitions/TaskSettingsProperties","description":"See {@link data /FeatureSource!FeatureSource.taskSettings}."}},"type":"object"},"ArcGISServiceTableExtensionPropertiesItem":{"allOf":[{"$ref":"#/definitions/ArcGISServiceTableExtensionProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^table-extension$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"AreaMeasurementUnits":{"description":"The units for area measurements supported by ArcGIS."},"BasemapExtension":{"description":"Extends the capabilities of an Esri Basemap object."},"BasemapExtensionProperties":{"description":"Properties that can be passed into the constructor for\n{@link mapping /BasemapExtension!BasemapExtension}.","properties":{"baseLayerExtensions":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.baseLayerExtensions}.","items":{"anyOf":[{"$ref":"#/definitions/LayerExtensionProperties"},{"$ref":"#/definitions/LayerExtension"}]},"type":"array"},"basemap":{"anyOf":[{"$ref":"#/definitions/esri.Basemap"},{"$ref":"#/definitions/BasemapProperties"},{"type":"string"}],"description":"The Esri Basemap object being extended. This property can also be a\nstring representing the ID of a well-known basemap, e.g. \"streets\". See\nhttps://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap\nfor a complete list."},"description":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.description}.","type":"string"},"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"iconUrl":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.iconUrl}.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"included":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.included}.","type":"boolean"},"isSeries":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.isSeries}.","type":"boolean"},"onClick":{"$ref":"#/definitions/Action","description":"See {@link mapping /BasemapExtension!BasemapExtension.onClick}."},"referenceLayerExtensions":{"description":"See\n{@link mapping /BasemapExtension!BasemapExtension.referenceLayerExtensions}.","items":{"anyOf":[{"$ref":"#/definitions/LayerExtensionProperties"},{"$ref":"#/definitions/LayerExtension"}]},"type":"array"},"taskSettings":{"$ref":"#/definitions/TaskSettingsProperties","description":"See {@link data /FeatureSource!FeatureSource.taskSettings}."}},"type":"object"},"BasemapExtensionPropertiesItem":{"allOf":[{"$ref":"#/definitions/BasemapExtensionProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^basemap-extension$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"BasemapLayerJson":{"description":"A base map layer in a web map/scene."},"BasemapModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for a Basemap component.","properties":{"baseLayerExtensions":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.baseLayerExtensions}.","items":{"anyOf":[{"$ref":"#/definitions/LayerExtensionProperties"},{"$ref":"#/definitions/LayerExtension"}]},"type":"array"},"basemap":{"anyOf":[{"$ref":"#/definitions/esri.Basemap"},{"$ref":"#/definitions/BasemapProperties"},{"type":"string"}],"description":"The Esri Basemap object being extended. This property can also be a\nstring representing the ID of a well-known basemap, e.g. \"streets\". See\nhttps://developers.arcgis.com/javascript/latest/api-reference/esri-Map.html#basemap\nfor a complete list."},"description":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.description}.","type":"string"},"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"iconUrl":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.iconUrl}.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"included":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.included}.","type":"boolean"},"isSeries":{"description":"See {@link mapping /BasemapExtension!BasemapExtension.isSeries}.","type":"boolean"},"onClick":{"$ref":"#/definitions/Action","description":"See {@link mapping /BasemapExtension!BasemapExtension.onClick}."},"referenceLayerExtensions":{"description":"See\n{@link mapping /BasemapExtension!BasemapExtension.referenceLayerExtensions}.","items":{"anyOf":[{"$ref":"#/definitions/LayerExtensionProperties"},{"$ref":"#/definitions/LayerExtension"}]},"type":"array"},"showInfoIcon":{"description":"Whether the info icon should be shown in the basemap picker.","type":"boolean"},"taskSettings":{"$ref":"#/definitions/TaskSettingsProperties","description":"See {@link data /FeatureSource!FeatureSource.taskSettings}."}},"type":"object"},"BasemapModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/BasemapModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^basemap-extension$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"BasemapPickerModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","properties":{"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"hiddenFrom":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is hidden from a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."},"icon":{"description":"An icon ID for this model.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"isLandmark":{"description":"Whether this model should be included in landmarks.","type":"boolean"},"title":{"description":"A human-readable title for this model.","type":"string"},"visibleTo":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is visible to a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."}},"type":"object"},"BasemapPickerModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/BasemapPickerModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^basemap-picker$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"BasemapProperties":{"description":"Properties that can be specified for the\n{@link mapping /BasemapExtension!BasemapExtensionProperties.basemap} property.","properties":{"baseMapLayers":{"description":"An array of BasemapLayer objects defining the basemaps used in the web\nmap/web scene.","items":{"$ref":"#/definitions/BasemapLayerJson"},"type":"array"},"elevationLayers":{"description":"Deprecated, use ground.layers instead. An array of elevationLayer objects\ndefining the basemaps used in the web scene.","items":{"$ref":"#/definitions/ElevationLayerJson"},"type":"array"},"id":{"description":"An identifier used to refer to the basemap when referencing it elsewhere.\n\nNOTE: Only available in web scenes!","type":"string"},"title":{"description":"String title for the basemap that can be used in a table of contents. If\nnot defined, then it takes the title of the first baseMapLayer in the\narray.","type":"string"}},"type":"object"},"BingLayerJson":{"description":"Indicates if working with Microsoft Bing layers. There are three layer types\nassociated with Bing Layers: BingMapsAerial, BingMapsRoad, and\nBingMapsHybrid.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/bingLayer/}."},"Bookmark":{"description":"A bookmark for a map extension. Consists of a title and a viewpoint.\nBookmarks can be created stand-alone or initialized from webmap bookmarks or\nfrom slides on web scene presentations."},"BookmarkProperties":{"description":"Properties that can be passed into the constructor for\n{@link mapping /Bookmark!Bookmark}.","properties":{"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"source":{"$ref":"#/definitions/BookmarkSource","description":"See {@link mapping /Bookmark!Bookmark.source}."},"title":{"description":"See {@link mapping /Bookmark!Bookmark.title}.","type":"string"},"viewpoint":{"anyOf":[{"$ref":"#/definitions/esri.Viewpoint"},{"$ref":"#/definitions/ViewpointJson"}],"description":"See {@link mapping /Bookmark!Bookmark.viewpoint}."}},"type":"object"},"BookmarkSource":{"description":"The source of the bookmark."},"BookmarksModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","properties":{"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"hiddenFrom":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is hidden from a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."},"icon":{"description":"An icon ID for this model.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"isLandmark":{"description":"Whether this model should be included in landmarks.","type":"boolean"},"onClick":{"$ref":"#/definitions/Action","description":"The command to execute when the user clicks a bookmark."},"title":{"description":"A human-readable title for this model.","type":"string"},"userBookmarks":{"description":"User preferences bookmarks.","items":{"anyOf":[{"$ref":"#/definitions/BookmarkProperties"},{"type":"string"}]},"type":"array"},"visibleTo":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is visible to a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."}},"type":"object"},"BookmarksModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/BookmarksModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^bookmarks$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"BrandingColors":{"description":"Configuration for a branding theme's colors."},"BrandingModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Properties for the branding service.","properties":{"activeTheme":{"description":"The currently active theme.","type":"string"},"applicationName":{"description":"The name to be used as the application name.","type":"string"},"density":{"$ref":"#/definitions/UIDensity","description":"Specifies the density of UI elements in the application."},"favIcon":{"description":"A link to an icon or png to be used as the application favIcon.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"splashScreenSettings":{"$ref":"#/definitions/SplashScreenModelProperties","description":"The splash screen configuration options."},"themes":{"description":"A list of configured themes.","items":{"$ref":"#/definitions/BrandingThemeProperties"},"type":"array"}},"type":"object"},"BrandingModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/BrandingModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^branding$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"BrandingThemeProperties":{"description":"A branding theme specifies the look and feel of the viewer.","properties":{"accentColor":{"anyOf":[{"$ref":"#/definitions/esri.Color"},{"description":"Color is represented as a four-element array. The four elements represent\nvalues for red, green, blue, and alpha in that order. Values range from 0\nthrough 255. If color is undefined for a symbol, the color value is null. See\n{@link https://developers.arcgis.com/web-map-specification/objects/color/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/color/}.","items":{"type":"number"},"type":"array"}],"description":"The accent color used to generate this theme, if it was automatically\ngenerated."},"colors":{"$ref":"#/definitions/BrandingColors","description":"The color keys and values."},"id":{"description":"A unique ID for this theme.","type":"string"},"template":{"$ref":"#/definitions/BrandingThemeTemplate","description":"The template used to generate this theme, if it was automatically\ngenerated."},"title":{"description":"The display title for this theme.","type":"string"}},"required":["colors","id","title"],"type":"object"},"BrandingThemeTemplate":{"description":"The App Designer template that was used to generate a branding theme, if it\nwas generated."},"BuildingSceneLayerJson":{"description":"The BuildingSceneLayer is a layer type designed for on-demand streaming and\ndisplaying building data."},"CIMSymbolJson":{"description":"Represents a symbol reference that contains a CIM symbol. In addition to type\nlisted below, a symbol reference will contain additional properties. More\ndetails on CIM symbol reference and CIM symbols are available on github:\nhttps://github.com/Esri/cim-spec/blob/master/docs/v2/Overview-Symbols.md.\n\nSee\n{@link https://developers.arcgis.com/web-scene-specification/objects/polygonSymbol3D/}."},"CIMSymbolReferenceJson":{"description":"Represents a symbol reference that contains a CIM symbol. More properties and\ndetails on CIM symbol reference and CIM symbols are available on github:\nhttps://github.com/Esri/cim-spec/blob/main/docs/v3/Overview-Symbols.md,\nhttps://github.com/Esri/cim-spec/blob/main/docs/v3/CIMRenderers.md#CIMSymbolReference.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/cimSymbolReference/}."},"CSVLayerJson":{"description":"The CSV layer type references a CSV or TXT file from a publicly-accessible\nweb server. It then dynamically loads into the map at run time. The CSV layer\nwill maintain a reference to the CSV resource.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/csvLayer/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/csvLayer/}."},"CardSize":{"description":"Specifies what card size a results list component should use to display\nresult items."},"ChartModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for a chart component.","properties":{"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"hiddenFrom":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is hidden from a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."},"highchartsModules":{"description":"An optional list of highcharts modules that will be utilized by your\ncharts configuration.","items":{"$ref":"#/definitions/HighChartsModule"},"type":"array"},"icon":{"description":"An icon ID for this model.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"isLandmark":{"description":"Whether this model should be included in landmarks.","type":"boolean"},"results":{"$ref":"#/definitions/FeatureSetProperties","description":"The set of features contained by the chart model. This property is only\nserialized into saved projects. Web only."},"template":{"$ref":"#/definitions/highcharts.highcharts.Options","description":"The chart template. This is based on Highcharts config defined at\nhttps://api.highcharts.com/highcharts/\nwith support for arcade expressions in the following syntax:\n```.\n{\n \"$script\": \"arcade expression\"\n \"$source\": \"item://layer-extension/id\"\n}\n```.\n\nThe Arcade script supports basic arcade functionality as well as operations\nthat target Arcade feature sets. The charts features from the specified source\nwill be available to the arcade script as a $features global variable.\n\nThe source specified can be any configured app item that can produce features\nex:\n```.\n Item://layer-extension/id\n item://table-extension/id\n item://workflow/id\n```.\n\nOur config also supports callbacks with the following syntax\nex:\n```\n {\n ...,\n events: {\n click: {@link Action}\n }\n }\n```\nThe action will be executed with the event argument provided by Highcharts."},"title":{"description":"A human-readable title for this model.","type":"string"},"visibleTo":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is visible to a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."}},"required":["template"],"type":"object"},"ChartModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/ChartModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^chart$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"ColorConfig":{"anyOf":[{"$ref":"#/definitions/esri.Color"},{"description":"Color is represented as a four-element array. The four elements represent\nvalues for red, green, blue, and alpha in that order. Values range from 0\nthrough 255. If color is undefined for a symbol, the color value is null. See\n{@link https://developers.arcgis.com/web-map-specification/objects/color/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/color/}.","items":{"type":"number"},"type":"array"}],"description":"A color."},"CompassModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","properties":{"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"hiddenFrom":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is hidden from a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."},"icon":{"description":"An icon ID for this model.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"isLandmark":{"description":"Whether this model should be included in landmarks.","type":"boolean"},"title":{"description":"A human-readable title for this model.","type":"string"},"visibleTo":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is visible to a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."}},"type":"object"},"CompassModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/CompassModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^compass$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"ContentProperties":{"description":"Properties that extend the ArcGis portal representation of a PopupContent.","properties":{"$ref":{"$ref":"#/definitions/ContentRef","description":"A popupContent name referring to an existing popupContent in a\nfeatureSettings. The popupContent extension will attempt to find an\nexisting popupContent in its parent featureSettings."},"attributes":{"description":"A dictionary of key value pairs representing attributes to be used\ninstead of fields and their values. This property is only used when the\nelement is of type expression and should be returned as part of the\narcade expression itself. This property allows passing arcade derived\nattribute values into fields or media elements."},"description":{"description":"An optional string value describing the element in detail. This property\ndoes not apply when the type is text or expression.","type":"string"},"displayCount":{"description":"This property applies to elements of type relationship. An integer that\nindicates the maximum number of records to display.","type":"number"},"displayType":{"description":"This property applies to elements of type attachments and relationship. A\nstring value indicating how to display the attachment. Possible values\nare, 'preview', and 'list' for attachments types, and 'list' for\nrelationship types. If list is specified, attachments show as links.","type":"string"},"expressionInfo":{"$ref":"#/definitions/PopupExpressionInfoJson","description":"This property applies to elements of type expression. An Arcade\nexpression that defines the pop-up element content."},"fieldInfos":{"description":"This property applies to elements of type fields. It is an array of\npopupInfo.fieldInfo objects representing a field/value pair displayed as\na table within the popupElement. If the fieldInfos property is not\nprovided, the popupElement will display whatever is specified directly in\nthe popupInfo.fieldInfos property.","items":{"$ref":"#/definitions/FieldInfoJson"},"type":"array"},"mediaInfos":{"description":"This property applies to elements of type media. An array of\npopupInfo.mediaInfo objects representing an image or chart for display.\nIf no mediaInfos property is provided, the popupElement will display\nwhatever is specified in the popupInfo.mediaInfo property.","items":{"$ref":"#/definitions/MediaInfoJson"},"type":"array"},"orderByFields":{"description":"This property applies to elements of type relationship. Array of\norderByFields objects indicating the field display order for the related\nrecords and whether they should be sorted in ascending 'asc' or\ndescending 'desc' order.","items":{"$ref":"#/definitions/OrderByFieldsJson"},"type":"array"},"relationshipId":{"description":"This property applies to elements of type relationship. The id of the\nrelationship as defined in the feature layer definition.","type":"number"},"text":{"description":"This property applies to elements of type text. This is string value\nindicating the text to be displayed within the popupElement. If no text\nproperty is provided, the popupElement will display whatever is specified\nin the popupInfo.description property.","type":"string"},"title":{"description":"An optional string value indicating what the element represents. This\nproperty does not apply when the type is text or expression.","type":"string"},"type":{"description":"String value indicating which element to use.","enum":["attachments","expression","fields","media","relationship","text"],"type":"string"}},"type":"object"},"ContentRef":{"description":"A set of properties used to reference an ESRI Content instance."},"CoordinateFormat":{"description":"The format in which a map coordinate could be displayed."},"CoordinateModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","properties":{"activeCoordinateOption":{"description":"The ID of the active coordinate option being used in the application.\nDefaults to the first item in the list of coordinateOptions.","type":"string"},"coordinateOptions":{"description":"A list of configuration options for displaying map coordinates in the\napplication.","items":{"$ref":"#/definitions/CoordinateOptionProperties"},"type":"array"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"transformations":{"description":"Rules to apply when transforming coordinates between coordinate systems.","items":{"anyOf":[{"$ref":"#/definitions/Transformation"},{"$ref":"#/definitions/TransformationJson"}]},"type":"array"}},"type":"object"},"CoordinateModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/CoordinateModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^coordinate-settings$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"CoordinateOptionProperties":{"description":"Options for configuring the display of map coordinates.","properties":{"format":{"$ref":"#/definitions/CoordinateFormat","description":"The format to display map coordinates in."},"id":{"description":"The unique ID of the Coordinate Option.","type":"string"},"precision":{"description":"For LAT_LONG and XY coordinate formats, this property depicts the number\nof decimal places displayed. For MGRS and USNG coordinate formats, this\nproperty depicts the precision of the coordinates using an integer\nbetween 0 and 8 (inclusive). This Value is ignored by UTM coordinate\nformats. The default values for coordinate formats are as follows:\nLAT_LONG=4, XY=2, MGRS=5, and USNG=5.","type":"number"},"spatialReference":{"$ref":"#/definitions/SpatialReferenceJson","description":"The spatial reference to display map coordinates in. If this property is\nnot defined, the spatial reference of the map will be used."},"title":{"description":"The display name of the CoordinateOption.","type":"string"}},"required":["format","id","title"],"type":"object"},"DataLinkSourceProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for a Data Link source.","properties":{"attachmentTypes":{"description":"See {@link data /FeatureSource!FeatureSource.attachmentTypes}.","items":{"type":"string"},"type":"array"},"featureSettings":{"$ref":"#/definitions/FeatureSettingsProperties","description":"See {@link data /FeatureSource!FeatureSource.featureSettings}."},"hyperlinks":{"description":"See {@link data /FeatureSource!FeatureSource.hyperlinks}.","items":{"anyOf":[{"$ref":"#/definitions/HyperlinkProperties"},{"$ref":"#/definitions/Hyperlink"}]},"type":"array"},"iconUrl":{"description":"URL to an icon that represents this layer.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"onAddFeature":{"$ref":"#/definitions/Action","description":"See {@link data /FeatureSource!FeatureSource.onAddFeature}."},"onEditFeature":{"$ref":"#/definitions/Action","description":"See {@link data /FeatureSource!FeatureSource.onEditFeature}."},"relationships":{"description":"See {@link data /FeatureSource!FeatureSource.relationships}.","items":{"anyOf":[{"$ref":"#/definitions/Relationship"},{"$ref":"#/definitions/RelationshipProperties"}]},"type":"array"},"schema":{"$ref":"#/definitions/SchemaProperties","description":"See {@link data /FeatureSource!FeatureSource.schema}."},"taskSettings":{"$ref":"#/definitions/TaskSettingsProperties","description":"See {@link data /FeatureSource!FeatureSource.taskSettings}."},"title":{"description":"The title of the data link source.","type":"string"}},"type":"object"},"DataLinkSourcePropertiesItem":{"allOf":[{"$ref":"#/definitions/DataLinkSourceProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^data-link$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"DefinitionEditorJson":{"description":"The definitionEditor stores interactive filters at the same level as\nlayerDefinition.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/definitionEditor/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/definitionEditor/}."},"DialogModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","properties":{"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"hiddenFrom":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is hidden from a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."},"icon":{"description":"An icon ID for this model.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"isLandmark":{"description":"Whether this model should be included in landmarks.","type":"boolean"},"title":{"description":"A human-readable title for this model.","type":"string"},"visibleTo":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is visible to a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."}},"type":"object"},"DialogModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/DialogModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^dialog$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"DisplayMode":{"description":"Specifies which map mode(s) to display highlights."},"DomainJson":{"description":"A domain specifies the set of valid values for a field.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/domain/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/domain/}."},"DrawModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for the draw service.","properties":{"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"lineSymbol":{"anyOf":[{"$ref":"#/definitions/esri.SimpleLineSymbol"},{"$ref":"#/definitions/SimpleLineSymbolJson"}],"description":"The symbol used to draw line markup."},"lineSymbol3D":{"anyOf":[{"$ref":"#/definitions/esri.LineSymbol3D"},{"$ref":"#/definitions/LineSymbol3DJson"}],"description":"The symbol used to draw 3D line markup."},"pointSymbol":{"anyOf":[{"$ref":"#/definitions/esri.PictureMarkerSymbol"},{"$ref":"#/definitions/esri.SimpleMarkerSymbol"},{"$ref":"#/definitions/PictureMarkerSymbolJson"},{"$ref":"#/definitions/SimpleMarkerSymbolJson"}],"description":"The symbol used to draw point markup."},"pointSymbol3D":{"anyOf":[{"$ref":"#/definitions/esri.PointSymbol3D"},{"$ref":"#/definitions/PointSymbol3DJson"}],"description":"The symbol used to draw 3D point markup."},"polygonSymbol":{"anyOf":[{"$ref":"#/definitions/esri.PictureFillSymbol"},{"$ref":"#/definitions/esri.SimpleFillSymbol"},{"$ref":"#/definitions/PictureFillSymbolJson"},{"$ref":"#/definitions/SimpleFillSymbolJson"}],"description":"The symbol used to draw polygon markup."},"polygonSymbol3D":{"anyOf":[{"$ref":"#/definitions/esri.PolygonSymbol3D"},{"$ref":"#/definitions/PolygonSymbol3DJson"}],"description":"The symbol used to draw 3D polygon markup."},"showOnlySymbolPresets":{"description":"Shows only symbol presets and no fine-grain controls when a symbol is\nbeing edited. If no symbol presets are configured, this property is\nignored.","type":"boolean"},"symbolPresets":{"description":"A list of SymbolPresets that can be assigned to graphics.","items":{"$ref":"#/definitions/SymbolPresetProperties"},"type":"array"},"synced":{"description":"Whether draw syncing is enabled. If enabled, draw syncing will propagate\nall graphics drawn on any map to all other maps in the layout.","type":"boolean"},"textSymbol":{"anyOf":[{"$ref":"#/definitions/esri.TextSymbol"},{"$ref":"#/definitions/TextSymbolJson"}],"description":"The symbol used to draw text markup."}},"type":"object"},"DrawModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/DrawModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^draw$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"ElevationLayerJson":{"description":"Elevation layers that can be used in a web scene's ground."},"ExpandModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for a an expand component.","properties":{"icon":{"description":"An icon ID for this model.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"title":{"description":"A human-readable title for this model.","type":"string"}},"type":"object"},"ExpandModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/ExpandModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^expand$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"ExtentJson":{"description":"This object defines the bounding geometry given the lower-left and\nupper-right corners of the bounding box. A spatial reference is also\nrequired. See\n{@link https://developers.arcgis.com/web-map-specification/objects/envelope_geometry/}\n{@link https://developers.arcgis.com/web-map-specification/objects/extent/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/extent/}."},"FailureMode":{"description":"Possible modes of failure when there is an error resolving or initializing an\nitem."},"Feature":{"description":"Represents a record in a {@link data /FeatureSource!FeatureSource}. Both\nspatial and non-spatial features have attributes, while only spatial features\nhave geometry."},"FeatureDetailsModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Properties for a feature-details component.","properties":{"enableOneToOneAttributeDisplay":{"description":"Whether or not the attributes from all one-to-one related records in a\nfeature will display as if they part of the feature. All one-to-one\nrelated records will also not display in the Related Records section\nwhile this is enabled. Defaults to true. Web only.","type":"boolean"},"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"featureActions":{"description":"A menu of actions used to create clickable action buttons within the\ncomponent. (MenuModel). For Mobile, the first four actions are designated\nas primary actions, with the remainder designated as secondary actions.\nIf feature actions are configured globally as well as for the feature's\nsource, then all actions will be displayed, with the feature source level\nactions shown first.","type":"string"},"hiddenFrom":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is hidden from a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."},"icon":{"description":"An icon ID for this model.","type":"string"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"isLandmark":{"description":"Whether this model should be included in landmarks.","type":"boolean"},"onFeatureAdd":{"$ref":"#/definitions/Action","description":"A command or set of commands to execute when a feature is added into the\ncollection."},"onFeatureEdit":{"$ref":"#/definitions/Action","description":"A command or set of commands to execute when an interactive feature\nediting session begins."},"onFeatureHide":{"$ref":"#/definitions/Action","description":"A command or set of commands to execute when a feature becomes invisible\nwithin the component."},"onFeatureRemove":{"$ref":"#/definitions/Action","description":"A command or set of commands to execute when a feature is removed from\nthe collection."},"onFeatureShow":{"$ref":"#/definitions/Action","description":"A command or set of commands to execute when a feature becomes visible\nwithin the component."},"onRelatedRecordClick":{"$ref":"#/definitions/Action","description":"A command or set of commands to execute when a related record is clicked.\nThe related Feature is passed in as the argument for the command(s)."},"results":{"$ref":"#/definitions/FeatureListProperties","description":"The set of features contained by the feature-details model. This property\nis only serialized into saved projects. Web only."},"showDeleteButton":{"description":"If true, the feature details instance will show a button that deletes the\nfeature permanently.","type":"boolean"},"showEditButton":{"description":"If true, the feature details instance will show a button that runs the\naction that places the feature in edit mode.","type":"boolean"},"title":{"description":"A human-readable title for this model.","type":"string"},"visibleTo":{"$ref":"#/definitions/Iterable","description":"Filters that determine whether the UI element is visible to a given\nend-user. If both visibleTo and hiddenFrom are undefined/empty, the\ncomponent will be visible to all users."}},"type":"object"},"FeatureDetailsModelPropertiesItem":{"allOf":[{"$ref":"#/definitions/FeatureDetailsModelProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^feature-details$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"FeatureJson":{"description":"Contains information about an attribute field and feature geometry.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/feature/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/feature/}."},"FeatureLayerJson":{"description":"Feature layers can be created by referencing a layer from either a map\nservice or a feature service or by specifying a feature collection object.\nUse a map service if you just want to retrieve geometries and attributes from\nthe server and symbolize them yourself. Use a feature service if you want to\ntake advantage of symbols from the service's source map document. Also, use a\nfeature service if you plan on doing editing with the feature layer. Feature\nlayers honor any feature templates configured in the source map document.\nFeature collection objects are used to create a feature layer based on the\nsupplied definition.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/featureLayer/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/featureLayer/}."},"FeatureListProperties":{"$schema":"http://json-schema.org/draft-04/schema#","definitions":{},"description":"Properties that can be passed into the constructor for\n{@link data /FeatureList!FeatureList}.","properties":{"featureSet":{"anyOf":[{"$ref":"#/definitions/FeatureSet"},{"$ref":"#/definitions/FeatureSetProperties"},{"items":{"anyOf":[{"$ref":"#/definitions/Feature"},{"$ref":"#/definitions/FeatureProperties"}]},"type":"array"}],"description":"The features contained in the list."},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"title":{"description":"See {@link data /FeatureList!FeatureList.title}.","type":"string"}},"type":"object"},"FeatureListPropertiesItem":{"allOf":[{"$ref":"#/definitions/FeatureListProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^feature-list$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"FeatureProperties":{"$schema":"http://json-schema.org/draft-04/schema#","definitions":{},"description":"Properties that can be passed into the constructor for\n{@link data /Feature!Feature}.","properties":{"attributes":{"anyOf":[{},{"$ref":"#/definitions/Map"}],"description":"The feature's attributes, keyed by field name."},"failureMode":{"$ref":"#/definitions/FailureMode","description":"See {@link support /InitializableBase!InitializableBase.failureMode}."},"geometry":{"anyOf":[{"$ref":"#/definitions/esri.Extent"},{"$ref":"#/definitions/esri.Multipoint"},{"$ref":"#/definitions/esri.Point"},{"$ref":"#/definitions/esri.Polygon"},{"$ref":"#/definitions/esri.Polyline"},{"$ref":"#/definitions/esri.Mesh"},{"$ref":"#/definitions/PointJson"},{"$ref":"#/definitions/MultipointJson"},{"$ref":"#/definitions/PolylineJson"},{"$ref":"#/definitions/PolygonJson"},{"$ref":"#/definitions/ExtentJson"}],"description":"The feature's geometry."},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"schema":{"$ref":"#/definitions/SchemaProperties","description":"Metadata about the feature, such as fields, domains, geometry type, etc."},"settings":{"$ref":"#/definitions/FeatureSettingsProperties","description":"Settings for this feature."},"source":{"$ref":"#/definitions/FeatureSource","description":"The source of the feature."}},"type":"object"},"FeaturePropertiesItem":{"allOf":[{"$ref":"#/definitions/FeatureProperties"},{"properties":{"$type":{"description":"The item's type. See {@link ItemType}.","pattern":"^feature$","type":"string"},"id":{"description":"The item's ID. No two items of the same type within an App can have the\nsame ID (however, items of different types can have the same ID).","type":"string"}},"type":"object"}]},"FeatureSet":{"description":"A set of features that share a common schema."},"FeatureSetJson":{"description":"Contains the geometry and attributes of features in a layer. This object is\nused with feature collections only. For more information, see Layer.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/featureSet/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/featureSet/}."},"FeatureSetProperties":{"$schema":"http://json-schema.org/draft-04/schema#","definitions":{},"description":"Properties that can be passed into the constructor for\n{@link data /FeatureSet!FeatureSet}.","properties":{"features":{"description":"The features contained in the set.","items":{"anyOf":[{"$ref":"#/definitions/Feature"},{"$ref":"#/definitions/FeatureProperties"}]},"type":"array"},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"schema":{"$ref":"#/definitions/SchemaProperties","description":"Metadata about features such as fields, domains, and geometry type."},"settings":{"$ref":"#/definitions/FeatureSettingsProperties","description":"Default settings that apply to features in this set."},"source":{"$ref":"#/definitions/FeatureSource","description":"The source for the features."},"title":{"description":"A human-readable name for the feature set.","type":"string"}},"type":"object"},"FeatureS