UNPKG

@vertigis/viewer-spec

Version:

VertiGIS Viewer Specification

1 lines 318 kB
{"$schema":"http://json-schema.org/draft-04/schema#","definitions":{"Action":{"description":"Defines an action to perform."},"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."},"ApplicationPropertiesJson":{"description":"The applicationProperties object is one of the objects at the top level of\nthe JSON web map JSON schema. This is responsible for containing the viewing\nand editing properties of the web map. There are specific objects within this\nobject that are applicable only to Collector and are explained within the\nproperty descriptions.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/applicationProperties/}.","properties":{"editing":{"$ref":"#/definitions/__type","description":"If locationTracking is set and enabled, the Collector application will\nupdate the feature service at the defined interval with the current\nlocation of the user logged into the Collector app. See\n{@link https://developers.arcgis.com/web-map-specification/objects/editing/}."},"offline":{"$ref":"#/definitions/__type","description":"Use if working with offline maps. See\n{@link https://developers.arcgis.com/web-map-specification/objects/offline/}."},"viewing":{"$ref":"#/definitions/__type","description":"An object containing all the viewing properties of the web map. If this\nis null or not defined, the client should assume a logical default. See\n{@link https://developers.arcgis.com/web-map-specification/objects/viewing/}."}},"type":"object"},"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"}]},"AuthoringInfoFilterBlockJson":{"description":"The filter authoring info object contains metadata about the authoring\nprocess for creating a filter block object. This allows the authoring client\nto save specific, overridable settings. The next time it is accessed via an\nauthoring client, their selections are remembered. Non-authoring clients can\nignore it.","properties":{"filterTypes":{"description":"Array of defined filter types. Each filter type has an array of filter\nvalues.","items":{"$ref":"#/definitions/AuthoringInfoFilterTypeJson"},"type":"array"}},"type":"object"},"AuthoringInfoFilterTypeJson":{"description":"The file authoring information for a filter, including the filter type and\nits value settings.","properties":{"filterType":{"description":"Represents the filter type name. Name is a unique identifier.","type":"string"},"filterValues":{"description":"Array of filter values. Filter values are the attributes that can be\nstored for individual fields in a layer.","items":{"type":"string"},"type":"array"}},"type":"object"},"AuthoringInfoJson":{"description":"The authoringInfo is an object containing metadata about the authoring\nprocess for creating a renderer object. This allows the authoring clients to\nsave specific overridable settings so that next time it is accessed via the\nUI, their selections are remembered. Non-authoring clients should ignore it.\nIn order to support the slider with color/size/transparency information, the\nselection of the various themes, classification, and additional properties\nare saved within this object.\n\nNote: The authoringInfo object is not required with a renderer. It is only\nused if rendering was generated using Map Viewer rendering tools.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/authoringInfo/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/authoringInfo/}.","properties":{"classificationMethod":{"$ref":"#/definitions/ClassificationMethodJsonType","description":"Used for classed color or size. The default value is esriClassifyManual."},"colorRamp":{"$ref":"#/definitions/ColorRampJson","description":"A colorRamp object is used to specify a range of colors that are applied\nto a group of symbols."},"field":{"$ref":"#/definitions/FieldJson","description":"Contains information about an attribute field."},"fields":{"description":"An array of string values representing field names used for creating\npredominance renderers.","type":"string"},"standardDeviationInterval":{"description":"Use if the classificationMethod is esriClassifyStandardDeviation.\nPossible values: 0.25, 0.33, 0.5, 1.","type":"number"},"type":{"$ref":"#/definitions/AuthoringInfoJsonType","description":"In case of classed renderers this is set to either classedSize or\nclassedColor."},"visualVariables":{"$ref":"#/definitions/VisualVariableJson","description":"An array of visualVariable objects used for continuous color or size,\nsimple, and unique values with feature opacity."}},"type":"object"},"AuthoringInfoJsonType":{"description":"The type of the AuthoringInfo.","enum":["classedColor","classedSize","predominance"],"type":"string"},"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"}]},"BasemapJson":{"description":"A basemap layer is a layer that provides geographic context to the map. A web\nmap always contains a basemap. A web scene is not required to always contain\na basemap. The basemap has a title and is the combination of each\nBasemapLayer.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/basemap/}.","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"},"BasemapLayerJson":{"description":"A base map layer in a web map/scene."},"BasemapPickerModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for a basemap picker 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"},"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/}."},"BloomEffectFunctionJson":{"description":"An Effect Function for the bloom effect.","properties":{"radius":{"description":"Determines the radius of the blur. Negative values are not allowed.\nLeaves the pixels inside the radius untouched.","type":"number"},"strength":{"description":"The intensity of the bloom effect. The higher the value, the brighter the\nglow. Negative values are not allowed.","type":"number"},"threshold":{"description":"The minimum color luminosity for a pixel to bloom, where at 0 all pixels\nbloom and 1 only the pixels with 100% luminosity colors bloom.","type":"number"},"type":{"const":"bloom","description":"Effect type.","type":"string"}},"required":["type"],"type":"object"},"BlurEffectFunctionJson":{"description":"An Effect Function for the blur effect.","properties":{"radius":{"description":"The radius of the blur in points. It defines the value of the standard\ndeviation to the Gaussian function. Negative values are not allowed.","type":"number"},"type":{"const":"blur","description":"Effect type.","type":"string"}},"required":["type"],"type":"object"},"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."},"BookmarkJson":{"description":"Predefined bookmarks for use by the application. A bookmark is a saved map\nextent that allows end users to quickly navigate to a particular area of\ninterest.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/bookmark/}.","properties":{"extent":{"$ref":"#/definitions/ExtentJson"},"name":{"description":"A string name for the bookmark.","type":"string"},"thumbnail":{"$ref":"#/definitions/__type","description":"Object containing a thumbnail image."},"viewpoint":{"$ref":"#/definitions/ViewpointJson","description":"Represents the location displayed on the map. If viewpoint is defined,\nignore the extent. If viewpoint is not defined, use the extent property.\nFor backwards compatibility, please save both extent and viewpoint\nproperties."}},"required":["name"],"type":"object"},"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#","description":"Configuration for a bookmarks 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"},"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"}},"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"}]},"BorderJson":{"description":"Optional border on the line that is used to improve the contrast of the line\ncolor against various background colors.","properties":{"color":{"description":"The color of the border.","items":{"type":"number"},"type":"array"},"transparency":{"description":"A value between 100 (full transparency) and 0 (full opacity).","type":"number"}},"type":"object"},"BrandingColors":{"description":"Configuration for a branding theme's colors."},"BrandingModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration.","properties":{"activeTheme":{"description":"The currently active theme.","type":"string"},"density":{"$ref":"#/definitions/UIDensity","description":"Specifies the density of UI elements in the application."},"id":{"description":"The unique ID to assign to the entity. If not specified, one will be\ngenerated.","type":"string"},"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."},"BrightnessEffectFunctionJson":{"description":"An Effect Function for the brightness effect.","properties":{"amount":{"description":"Amount of effect. A value of 0 leaves the input unchanged. Grayscale,\ninvert, sepia, and opacity effects accept a maximum amount of 1 which\napplies the effect at 100%. Brightness, contrast, and saturate can accept\namount above 1. Negative values are not allowed.","type":"number"},"type":{"const":"brightness","description":"Effect type.","type":"string"}},"required":["type"],"type":"object"},"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/}.","properties":{"type":{"const":"CIMSymbolReference","description":"Specifies the type of symbol used.","type":"string"}},"required":["type"],"type":"object"},"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/}."},"CalloutJson":{"description":"Callout configuration for a symbol.","properties":{"border":{"$ref":"#/definitions/BorderJson","description":"Optional border on the line that is used to improve the contrast of the\nline color against various background colors."},"color":{"description":"The color of the line.","items":{"type":"number"},"type":"array"},"size":{"description":"The width of the line in points.","type":"number"},"transparency":{"description":"A value between 100 (full transparency) and 0 (full opacity).","type":"number"},"type":{"const":"line","description":"The type of the callout. A callout of type line connects an offset symbol\nor label with its location.","type":"string"}},"required":["type"],"type":"object"},"ClassBreakInfoJson":{"description":"The classBreaksInfo object provides information about the class breaks\nassociated with the renderer.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/classBreakInfo/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/classBreakInfo/}.","properties":{"classMaxValue":{"description":"A numeric value used to specify the maximum value for a break.","type":"number"},"classMinValue":{"description":"A numeric value used to specify discontinuous class breaks. If this value\nis null or is missing, the map server will calculate the minimum value\nbased on the preceding class' maximum value.","type":"number"},"description":{"description":"String value used to describe the drawn symbol.","type":"string"},"label":{"description":"String value used to label the drawn symbol.","type":"string"},"symbol":{"$ref":"#/definitions/SymbolJson","description":"An object used to display the value."}},"required":["classMaxValue","symbol"],"type":"object"},"ClassBreaksRendererJson":{"description":"A class breaks renderer symbolizes based on the value of some numeric\nattribute. The classBreakInfo define the values at which the symbology\nchanges.\n\nIf the Normalization Type property is defined than the class breaks contain a\nnormalized min/max value instead of the actual value. The data value,\nobtained from the field property, is normalized using one of the following\nfunctions before it is compared with the class breaks.\n\n1. Field - Divide the data value using the attribute value of the field\n specified by the normalizationField property.\n2. Log - Compute the base 10 logarithm of the data value. This can be a useful\n approach for some data distributions because it reduced the influence of\n very large data values.\n3. Percent-of-total - Divide the data value by the sum of all data values then\n multiply by 100. Use the normalizationTotal property to determine the\n total value.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/classBreaks_renderer/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/classBreaksRenderer/}.","properties":{"authoringInfo":{"$ref":"#/definitions/AuthoringInfoJson","description":"An object containing metadata about the authoring process for creating a\nrenderer object. This allows the authoring clients to save specific\noverridable settings so that next time it is accessed via the UI, their\nselections are remembered. Non-authoring clients should ignore it."},"backgroundFillSymbol":{"anyOf":[{"$ref":"#/definitions/SimpleFillSymbolJson"},{"$ref":"#/definitions/PolygonSymbol3DJson"}],"description":"Supported only for polygon features. It is a SimpleFillSymbol."},"classBreakInfos":{"description":"Array of objects with value, label, and description.","items":{"$ref":"#/definitions/ClassBreakInfoJson"},"type":"array"},"classificationMethod":{"$ref":"#/definitions/ClassificationMethodJsonType","description":"Determines the classification method that was used to generate class\nbreaks."},"defaultLabel":{"description":"Default string for the default symbol used to draw unspecified values.","type":"string"},"defaultSymbol":{"$ref":"#/definitions/SymbolJson","description":"Symbol used when a value cannot be classified."},"field":{"description":"String value specifying the numeric field used in generating the class\nbreaks.","type":"string"},"minValue":{"description":"The minimum numeric data value needed to begin class breaks.","type":"number"},"normalizationField":{"description":"Used when normalizationType is NormalizationType.BY_FIELD.","type":"string"},"normalizationTotal":{"description":"Used when normalizationType is NormalizationType.BY_FIELD.","type":"number"},"normalizationType":{"description":"One of the NormalizationType constants.","enum":["esriNormalizeByField","esriNormalizeByLog","esriNormalizeByPercentOfTotal"],"type":"string"},"rotationExpression":{"description":"A constant value or an expression that derives the angle of rotation\nbased on a feature attribute value. When an attribute name is specified,\nit's enclosed in square brackets.","type":"string"},"rotationType":{"$ref":"#/definitions/RotationJsonType","description":"String value (either geographic or arithmetic) which controls the origin\nand direction of rotation on point features. If the rotationType is\ndefined as 'arithmetic', the symbol is rotated from East in a\ncounter-clockwise direction where East is the 0� axis. If the\nrotationType is defined as 'geographic', the symbol is rotated from North\nin a clockwise direction where North is the 0� axis."},"type":{"const":"classBreaks","description":"The type of renderer. See {@link RendererJsonType}.","type":"string"},"visualVariables":{"description":"An array of visualVariable objects used for continuous color or size,\nsimple, and unique values with feature opacity.","items":{"$ref":"#/definitions/VisualVariableJson"},"type":"array"}},"required":["classBreakInfos","classificationMethod","field","type"],"type":"object"},"ClassificationMethodJsonType":{"description":"The classification method for ClassBreaksRenderer.","enum":["esriClassifyEqualInterval","esriClassifyGeometricalInterval","esriClassifyManual","esriClassifyNaturalBreaks","esriClassifyQuantile","esriClassifyStandardDeviation"],"type":"string"},"CloudyWeatherJson":{"description":"Object containing information for changing the weather conditions in the\nscene to cloudy.\n\nSee\n{@link https://developers.arcgis.com/web-scene-specification/objects/cloudyWeather/}.","properties":{"cloudCover":{"description":"Specifies the amount of cloud cover in the sky.","type":"number"},"type":{"const":"cloudy","description":"The type of weather.","type":"string"}},"required":["type"],"type":"object"},"CodedValueJson":{"description":"A set of valid coded values with unique names. See\n{@link https://developers.arcgis.com/web-map-specification/objects/codedValue/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/codedValue_domain/}.","properties":{"code":{"description":"Value indicating which unique code is used to identify the feature\nattribute.","type":["string","number"]},"name":{"description":"The human-readable name for the coded value.","type":"string"}},"required":["code","name"],"type":"object"},"ColorBackgroundJson":{"description":"Specifies a single color to fill the background of the scene with. The scene\nbackground is displayed behind any scene objects, stars and atmosphere.\n\nSee\n{@link https://developers.arcgis.com/web-scene-specification/objects/environment_background_color/}.","properties":{"color":{"description":"Color is represented as a three or four-element array.","items":{"type":"number"},"type":"array"},"transparency":{"description":"The value has to lie between 100 (full transparency) and 0 (full\nopacity). Web scenes only.","type":"number"},"type":{"const":"color","description":"The type of background. Web scenes only.","type":"string"}},"required":["type"],"type":"object"},"ColorClassBreakInfoJson":{"description":"The classBreaksInfo object provides information about the class breaks\nassociated with the renderer.\n\nSee\n{@link https://developers.arcgis.com/web-scene-specification/objects/colorClassBreakInfo/}.","properties":{"classMaxValue":{"description":"A numeric value used to specify the maximum value for a break.","type":"number"},"classMinValue":{"description":"A numeric value used to specify discontinuous class breaks. If this value\nis null or is missing, the map server will calculate the minimum value\nbased on the preceding class' maximum value.","type":"number"},"color":{"description":"Color is represented as a three or four-element array.","items":{"type":"number"},"type":"array"},"description":{"description":"String value used to describe the class.","type":"string"},"label":{"description":"String value used to label the class.","type":"string"}},"type":"object"},"ColorInfoJson":{"description":"The colorInfo visual variable defines how a continuous color ramp is applied\nto features based on the values of a numeric field attribute. The minimum and\nmaximum values of the data should be indicated along with their respective\ncolor values. You must specify either colors or stops to construct the color\nramp.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/colorInfo_visualVariable/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/colorInfo_visualVariable/}.","properties":{"colors":{"description":"An array of colors that define the color ramp. Either colors or stops\nmust be specified to construct the color ramp.","items":{"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"},"type":"array"},"field":{"description":"A string value indicating the name of the feature attribute field that\ncontains the data value to render.","type":"string"},"legendOptions":{"description":"Options available for the legend. See\n{@link https://developers.arcgis.com/web-map-specification/objects/legendOptions/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/legendOptions/}.","properties":{"title":{"description":"The title of the legend.","type":"string"}},"type":"object"},"maxDataValue":{"description":"The maximum data value.","type":"number"},"minDataValue":{"description":"The minimum data value.","type":"number"},"normalizationField":{"description":"String value indicating the name of the attribute field used to normalize\nthe data.","type":"string"},"stops":{"description":"An array of stop objects.","items":{"$ref":"#/definitions/ColorStopJson"},"type":"array"},"type":{"const":"colorInfo","description":"The type of the VisualVariable.","type":"string"}},"required":["field","type"],"type":"object"},"ColorRampJson":{"description":"A colorRamp object is used to specify a range of colors that are applied to a\ngroup of symbols. See\n{@link https://developers.arcgis.com/web-map-specification/objects/colorRamp/}.","properties":{"algorithm":{"description":"Algorithm used for calculating the ramp.","enum":["esriCIELabAlgorithm","esriHSVAlgorithm","esriLabLChAlgorithm"],"type":"string"},"colorRamps":{"description":"A multipart color ramp is defined by a list of constituent color ramps.","items":{"$ref":"#/definitions/ColorRampJson"},"type":"array"},"fromColor":{"description":"Array representing the initial color to start the ramp from.","items":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"maxItems":4,"minItems":4,"type":"array"},"toColor":{"description":"Array representing the final color to end the ramp with.","items":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"maxItems":4,"minItems":4,"type":"array"},"type":{"description":"Value indicating the type of colorRamp.","enum":["algorithmic","multipart"],"type":"string"}},"required":["type"],"type":"object"},"ColorStopJson":{"description":"A sizeStop object describes the size of the symbol at various values of the\nexpression.","properties":{"color":{"anyOf":[{"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"},{"type":"string"}],"description":"A CSS color string or an array of rbga values. The color to place at the\nstop indicated by either a ratio or value."},"label":{"description":"Value if a label is needed on the legend for a stop.","type":"string"},"value":{"description":"The pixel intensity value. Describes the pixel intensity value that the\ncolor should be associated with. Just like in colorInfo, using value will\nignore maxPixelIntensity and minPixelIntensity properties. It will\nactually set those properties to maximum and minimum values you set in\nthe colorStops array. The hard values are converted to ratios to create\nthe color gradient that is used in the heatmap calculations. Setting\nminPixelIntensity or maxPixelIntensity, after setting colorStops with\nvalues, removes the hard link between the color ramp and the pixel\nintensity values that were used to create it.","type":"number"}},"type":"object"},"ColorUniqueValueInfosJson":{"description":"The classBreaksInfo object provides information about the class breaks\nassociated with the renderer.\n\nSee\n{@link https://developers.arcgis.com/web-scene-specification/objects/colorUniqueValueInfo/}.","properties":{"color":{"description":"Color is represented as a three or four-element array.","items":{"type":"number"},"type":"array"},"description":{"description":"String value used to describe the class.","type":"string"},"label":{"description":"String value used to label the class.","type":"string"},"values":{"description":"List of string values used to classify points.","items":{"type":"string"},"type":"array"}},"type":"object"},"CompassModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for a compass 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"},"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."},"ContrastEffectFunctionJson":{"description":"An Effect Function for the contrast effect.","properties":{"amount":{"description":"Amount of effect. A value of 0 leaves the input unchanged. Grayscale,\ninvert, sepia, and opacity effects accept a maximum amount of 1 which\napplies the effect at 100%. Brightness, contrast, and saturate can accept\namount above 1. Negative values are not allowed.","type":"number"},"type":{"const":"contrast","description":"Effect type.","type":"string"}},"required":["type"],"type":"object"},"CoordinateModelProperties":{"$schema":"http://json-schema.org/draft-04/schema#","description":"Configuration for the coordinate service.","properties":{"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"}]},"DataSourceJson":{"anyOf":[{"$ref":"#/definitions/JoinTableDataSourceJson"},{"$ref":"#/definitions/QueryTableDataSourceJson"},{"$ref":"#/definitions/RasterDataSourceJson"},{"$ref":"#/definitions/TableDataSourceJson"}],"description":"This object applies if the layerDefinition source is set to DynamicDataLayer.\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/dataSource/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/dataSource/}."},"DateFormatJsonType":{"description":"Possible date formats for {@link FormatJson.dateFormat}.","enum":["dayShortMonthYear","dayShortMonthYearLongTime","dayShortMonthYearLongTime24","dayShortMonthYearShortTime","dayShortMonthYearShortTime24","longDate","longDateLongTime","longDateLongTime24","longDateShortTime","longDateShortTime24","longMonthDayYear","longMonthDayYearLongTime","longMonthDayYearLongTime24","longMonthDayYearShortTime","longMonthDayYearShortTime24","longMonthYear","shortDate","shortDateLE","shortDateLELongTime","shortDateLELongTime24","shortDateLEShortTime","shortDateLEShortTime24","shortDateLongTime","shortDateLongTime24","shortDateShortTime","shortDateShortTime24","shortMonthYear","year"],"type":"string"},"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#","description":"Configuration for a dialog 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"},"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/}."},"DrawingInfoJson":{"description":"The drawingInfo object contains drawing information for a feature collection\nor a single layer in a map service. This object is used in LayerDefinition.\n\nSee\n{@link https://developers.arcgis.com/web-map-specification/objects/drawingInfo/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/drawingInfo/}.","properties":{"filters":{"description":"Filters for PointCloud layers.","items":{"$ref":"#/definitions/PointCloudFilterJson"},"type":"array"},"fixedSymbols":{"description":"Only used for feature collections with a renderer. The feature's symbol\nis defined by the layer's renderer. Not implemented in JSAPI 4.x.","type":"boolean"},"labelingInfo":{"description":"An object defining the properties used for labeling the layer.","items":{"$ref":"#/definitions/LabelingInfoJson"},"type":"array"},"renderer":{"$ref":"#/definitions/RendererJson","description":"A renderer object that provides the symbology for the layer."},"scaleSymbols":{"description":"Boolean property indicating whether symbols should stay the same size in\nscreen units as you zoom in. A value of false means the symbols stay the\nsame size in screen units regardless of the map scale. Not implemented in\nJSAPI 4.x.","type":"boolean"},"showLabels":{"description":"Defines whether labels should be shown or not. This is only valid for\nsublayers.","type":"boolean"},"transparency":{"description":"Number value ranging between 0 (no transparency) to 100 (completely\ntransparent).","type":"number"}},"type":"object"},"DropShadowEffectFunctionJson":{"description":"An Effect Function for the drop-shadow effect.","properties":{"blurRadius":{"description":"The radius of the blur in points. It defines the value of the standard\ndeviation to the Gaussian function.","type":"number"},"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.","items":{"type":"number"},"type":"array"},"type":{"const":"drop-shadow","description":"Effect type.","type":"string"},"xoffset":{"description":"The distance of the shadow on the x-axis in points.","type":"number"},"yoffset":{"description":"The distance of the shadow on the y-axis in points.","type":"number"}},"required":["type"],"type":"object"},"DynamicDataLayerJson":{"description":"A dynamic data layer derived from a registered workspace. More information on\nthis can be found in the ArcGIS REST API help. See\n{@link https://developers.arcgis.com/web-map-specification/objects/dynamicDataLayer_source/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/dynamicDataLayer_source/}.","properties":{"dataSource":{"$ref":"#/definitions/DataSourceJson","description":"This object applies if the layerDefinition source is set to\nDynamicDataLayer. See\n{@link https://developers.arcgis.com/web-map-specification/objects/dataSource/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/dataSource/}."},"fields":{"description":"An array of objects specifying information about an attribute field.","items":{"$ref":"#/definitions/FieldJson"},"type":"array"},"type":{"const":"dataLayer","description":"A string value indicating the type. This value is dataLayer.","type":"string"}},"required":["type"],"type":"object"},"DynamicMapLayerJson":{"description":"A dynamic map layer refers to a layer in the current map service. More\ninformation on this can be found in the ArcGIS REST API help. See\n{@link https://developers.arcgis.com/web-map-specification/objects/dynamicMapLayer_source/}\n{@link https://developers.arcgis.com/web-scene-specification/objects/dynamicMapLayer_source/}.","properties":{"gdbVersion":{"description":"If applicable, specify this to use an alternate geodatabase version.","type":"string"},"mapLay