AuthoringInfo

AMD: require(["esri/renderers/support/AuthoringInfo"], (AuthoringInfo) => { /* code goes here */ });
ESM: import AuthoringInfo from "@arcgis/core/renderers/support/AuthoringInfo.js";
Class: esri/renderers/support/AuthoringInfo
Inheritance: AuthoringInfo Accessor
Since: ArcGIS Maps SDK for JavaScript 4.6

Authoring information related to generating renderers and visual variables with the Smart Mapping methods. This includes information from UI elements such as sliders and selected classification methods and themes. This allows the authoring clients to save settings so that their selections can be remembered.

See also

Constructors

AuthoringInfo

Constructor
new AuthoringInfo(properties)
Parameter
properties Object
optional

See the properties for a list of all the properties that may be passed into the constructor.

Property Overview

Any properties can be set, retrieved or listened to. See the Working with Properties topic.
Show inherited properties Hide inherited properties
Name Type Summary Class
String

Indicates which classification method was used if a classed color or classed size renderer was generated using one of the Smart Mapping functions.

AuthoringInfo
ColorRamp

Indicates the color ramp was used to create the symbols for Unique Value or Class Breaks renderer for Imagery Layer.

AuthoringInfo
String

The name of the class.

Accessor
Number

Only applicable to HeatmapRenderer created with the heatmap renderer creator.

AuthoringInfo
Object

A numeric field used for generating a relationship renderer along with field2.

AuthoringInfo
Object

A numeric field used for generating a relationship renderer along with field1.

AuthoringInfo
String[]

An array of string values representing field names used for creating a predominance renderer.

AuthoringInfo
String

Only applicable to flow renderers.

AuthoringInfo
String

The focus of a relationship renderer.

AuthoringInfo
Boolean

Indicates whether the renderer was created internally by the JS API's rendering engine for default FeatureReductionCluster visualizations.

AuthoringInfo
String

Only applicable to renderer used in web scenes.

AuthoringInfo
Number

Indicates the value of the upper handle if a slider was used to generate the dot value for dot density renderer.

AuthoringInfo
Number

Indicates the value of the lower handle if a slider was used to generate the dot value for dot density renderer.

AuthoringInfo
Number

The number of classes used to classify each field of a relationship renderer.

AuthoringInfo
Number

Indicates the standard deviation interval for each stop in a classed color or classed size renderer that was generated using the standard-deviation classification method.

AuthoringInfo
Object

Only for renderers of type univariate-color-size with an above-and-belowunivariateTheme.

AuthoringInfo
String

Indicates the renderer type generated from one of the Smart Mapping functions.

AuthoringInfo
String

Only applicable to univariateColorSize renderers with an above-and-belowunivariateTheme.

AuthoringInfo
String

Only applicable to univariateColorSize renderers.

AuthoringInfo
AuthoringInfoVisualVariable[]

Contains authoring properties of visual variables generated from one of the Smart Mapping methods or sliders.

AuthoringInfo

Property Details

classificationMethod

Property
classificationMethod String

Indicates which classification method was used if a classed color or classed size renderer was generated using one of the Smart Mapping functions.

Possible Values:"equal-interval"|"defined-interval"|"manual"|"natural-breaks"|"quantile"|"standard-deviation"

colorRamp

Property
colorRamp ColorRamp

Indicates the color ramp was used to create the symbols for Unique Value or Class Breaks renderer for Imagery Layer.

declaredClass

Inherited
Property
declaredClass Stringreadonly
Inherited from Accessor
Since: ArcGIS Maps SDK for JavaScript 4.7 Accessor since 4.0, declaredClass added at 4.7.

The name of the class. The declared class name is formatted as esri.folder.className.

fadeRatio

Property
fadeRatio Number
Since: ArcGIS Maps SDK for JavaScript 4.25 AuthoringInfo since 4.6, fadeRatio added at 4.25.

Only applicable to HeatmapRenderer created with the heatmap renderer creator. Indicates how much the user opted to fade the edges of the heatmap to transparent.

field1

Property
field1 Object

A numeric field used for generating a relationship renderer along with field2. In the default visualization, the values of this field are rendered along the vertical axis of the Legend.

Properties
field String

The name of a numeric field.

normalizationField String
optional

The name of a numeric field used to normalize the given field. In choropleth visualizations it is best practice to normalize your data values if they haven't already been normalized.

classBreakInfos Object[]
optional

Describes the class breaks generated for this field.

Specification
maxValue Number
optional

The maximum bound of values to visualize in the given field. If a feature's value is greater than this value, then it will be assigned the default symbol of the renderer.

minValue Number
optional

The minimum bound of values to visualize in the given field. If a feature's value is less than this value, then it will be assigned the default symbol of the renderer.

label String
optional

The label used to describe the field or variable in the legend.

field2

Property
field2 Object

A numeric field used for generating a relationship renderer along with field1. In the default visualization, the values of this field are rendered along the horizontal axis of the Legend.

Properties
field String

The name of a numeric field.

normalizationField String
optional

The name of a numeric field used to normalize the given field. In choropleth visualizations it is best practice to normalize your data values if they haven't already been normalized.

classBreakInfos Object[]
optional

Describes the class breaks generated for this field.

Specification
maxValue Number
optional

The maximum bound of values to visualize in the given field. If a feature's value is greater than this value, then it will be assigned the default symbol of the renderer.

minValue Number
optional

The minimum bound of values to visualize in the given field. If a feature's value is less than this value, then it will be assigned the default symbol of the renderer.

label String
optional

The label used to describe the field or variable in the legend.

fields

Property
fields String[]

An array of string values representing field names used for creating a predominance renderer.

flowTheme

Property
flowTheme String
Since: ArcGIS Maps SDK for JavaScript 4.23 AuthoringInfo since 4.6, flowTheme added at 4.23.

Only applicable to flow renderers. Indicates the user-selected theme of the generated renderer.

Possible Values:"flow-line"|"wave-front"

focus

Property
focus String

The focus of a relationship renderer. This determines the orientation of the legend.

isAutoGenerated

Property
isAutoGenerated Boolean

Indicates whether the renderer was created internally by the JS API's rendering engine for default FeatureReductionCluster visualizations. You should avoid setting or changing this value.

Default Value:false

lengthUnit

Property
lengthUnit String

Only applicable to renderer used in web scenes. Indicates the unit used in real-world sizes.

Possible Values:"inches"|"feet"|"yards"|"miles"|"nautical-miles"|"millimeters"|"centimeters"|"decimeters"|"meters"|"kilometers"|"decimal-degrees"

maxSliderValue

Property
maxSliderValue Number

Indicates the value of the upper handle if a slider was used to generate the dot value for dot density renderer.

minSliderValue

Property
minSliderValue Number

Indicates the value of the lower handle if a slider was used to generate the dot value for dot density renderer.

numClasses

Property
numClasses Number

The number of classes used to classify each field of a relationship renderer. This determines the number of categories in the legend.

standardDeviationInterval

Property
standardDeviationInterval Number

Indicates the standard deviation interval for each stop in a classed color or classed size renderer that was generated using the standard-deviation classification method.

Possible Values: 0.25 | 0.33 | 0.5 | 1

statistics

Property
statistics Object
Since: ArcGIS Maps SDK for JavaScript 4.18 AuthoringInfo since 4.6, statistics added at 4.18.

Only for renderers of type univariate-color-size with an above-and-below univariateTheme. Contains summary statistics about the data represented by the renderer. The Legend can use this information to avoid displaying values beyond the min and max data values of the layer.

Properties
max Number

The maximum data value of the attribute represented by the renderer. Legends displaying above-and-below themed data will not display values greater than this number.

min Number

The minimum data value of the attribute represented by the renderer. Legends displaying above-and-below themed data will not display values smaller than this number.

type

Property
type String

Indicates the renderer type generated from one of the Smart Mapping functions.

Possible Values:"class-breaks-size"|"class-breaks-color"|"classed-color"|"classed-size"|"flow"|"predominance"|"relationship"|"univariate-color-size"

univariateSymbolStyle

Property
univariateSymbolStyle String
Since: ArcGIS Maps SDK for JavaScript 4.18 AuthoringInfo since 4.6, univariateSymbolStyle added at 4.18.

Only applicable to univariateColorSize renderers with an above-and-below univariateTheme. Indicates if the above and below renderer uses a predefined symbol pair provided by the API.

The custom style indicates the renderer was authored with custom symbols not provided as a predefined symbol pair in the renderer creator.

Possible Values:"caret"|"circle-caret"|"arrow"|"circle-arrow"|"plus-minus"|"circle-plus-minus"|"square"|"circle"|"triangle"|"happy-sad"|"thumb"|"custom"

univariateTheme

Property
univariateTheme String
Since: ArcGIS Maps SDK for JavaScript 4.18 AuthoringInfo since 4.6, univariateTheme added at 4.18.

Only applicable to univariateColorSize renderers. Indicates the theme of the univariate color and size renderer.

Possible Values:"high-to-low"|"above"|"below"|"above-and-below"

visualVariables

Property
visualVariables AuthoringInfoVisualVariable[]autocast
Autocasts from Object[]

Contains authoring properties of visual variables generated from one of the Smart Mapping methods or sliders.

Method Overview

Show inherited methods Hide inherited methods
Name Return Type Summary Class

Adds one or more handles which are to be tied to the lifecycle of the object.

Accessor
AuthoringInfo

Creates a deep clone of the instance.

AuthoringInfo
*

Creates a new instance of this class and initializes it with values from a JSON object generated from an ArcGIS product.

AuthoringInfo
Boolean

Returns true if a named group of handles exist.

Accessor

Removes a group of handles owned by the object.

Accessor
Object

Converts an instance of this class to its ArcGIS portal JSON representation.

AuthoringInfo

Method Details

addHandles

Inherited
Method
addHandles(handleOrHandles, groupKey)
Inherited from Accessor
Since: ArcGIS Maps SDK for JavaScript 4.25 Accessor since 4.0, addHandles added at 4.25.

Adds one or more handles which are to be tied to the lifecycle of the object. The handles will be removed when the object is destroyed.

// Manually manage handles
const handle = reactiveUtils.when(
  () => !view.updating,
  () => {
    wkidSelect.disabled = false;
  },
  { once: true }
);

this.addHandles(handle);

// Destroy the object
this.destroy();
Parameters
handleOrHandles WatchHandle|WatchHandle[]

Handles marked for removal once the object is destroyed.

groupKey *
optional

Key identifying the group to which the handles should be added. All the handles in the group can later be removed with Accessor.removeHandles(). If no key is provided the handles are added to a default group.

clone

Method
clone(){AuthoringInfo}

Creates a deep clone of the instance.

Returns
Type Description
AuthoringInfo A deep clone of the object that invoked this method.
Example
// Creates a deep clone of the layer's authoring info
let authInfo = layer.renderer.authoringInfo.clone();

fromJSON

Method
fromJSON(json){*}static

Creates a new instance of this class and initializes it with values from a JSON object generated from an ArcGIS product. The object passed into the input json parameter often comes from a response to a query operation in the REST API or a toJSON() method from another ArcGIS product. See the Using fromJSON() topic in the Guide for details and examples of when and how to use this function.

Parameter
json Object

A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects.

Returns
Type Description
* Returns a new instance of this class.

hasHandles

Inherited
Method
hasHandles(groupKey){Boolean}
Inherited from Accessor
Since: ArcGIS Maps SDK for JavaScript 4.25 Accessor since 4.0, hasHandles added at 4.25.

Returns true if a named group of handles exist.

Parameter
groupKey *
optional

A group key.

Returns
Type Description
Boolean Returns true if a named group of handles exist.
Example
// Remove a named group of handles if they exist.
if (obj.hasHandles("watch-view-updates")) {
  obj.removeHandles("watch-view-updates");
}

removeHandles

Inherited
Method
removeHandles(groupKey)
Inherited from Accessor
Since: ArcGIS Maps SDK for JavaScript 4.25 Accessor since 4.0, removeHandles added at 4.25.

Removes a group of handles owned by the object.

Parameter
groupKey *
optional

A group key or an array or collection of group keys to remove.

Example
obj.removeHandles(); // removes handles from default group

obj.removeHandles("handle-group");
obj.removeHandles("other-handle-group");

toJSON

Method
toJSON(){Object}

Converts an instance of this class to its ArcGIS portal JSON representation. See the Using fromJSON() guide topic for more information.

Returns
Type Description
Object The ArcGIS portal JSON representation of an instance of this class.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.