# Interface ContentProperties

Properties that extend the ArcGis portal representation of a PopupContent.

interface ContentProperties {
$ref?: ContentRef;
attributes?: Record<string, unknown>;
description?: string;
displayCount?: number;
displayType?: string;
expressionInfo?: PopupExpressionInfoJson;
fieldInfos?: FieldInfoJson[];
mediaInfos?: MediaInfoJson[];
orderByFields?: OrderByFieldsJson[];
relationshipId?: number;
text?: string;
title?: string;
type?:
| "text"
| "fields"
| "expression"
| "attachments"
| "media"
| "relationship";
}

#### Hierarchy (view full)

- PopupElementJson
  - ContentProperties

#####
Index

### Properties

$ref?
attributes?
description?
displayCount?
displayType?
expressionInfo?
fieldInfos?
mediaInfos?
orderByFields?
relationshipId?
text?
title?
type?

##
Properties

### `Optional`$ref

$ref?: ContentRef

A popupContent name referring to an existing popupContent in a featureSettings. The popupContent extension will attempt to find an existing popupContent in its parent featureSettings.

### `Optional` attributes

attributes?: Record<string, unknown>

A dictionary of key value pairs representing attributes to be used instead of fields and their values. This property is only used when the element is of type expression and should be returned as part of the arcade expression itself. This property allows passing arcade derived attribute values into fields or media elements.

Inherited from PopupElementJson.attributes

### `Optional` description

description?: string

An optional string value describing the element in detail. This property does not apply when the type is text or expression.

Inherited from PopupElementJson.description

### `Optional` displayCount

displayCount?: number

This property applies to elements of type relationship. An integer that indicates the maximum number of records to display.

Inherited from PopupElementJson.displayCount

### `Optional` displayType

displayType?: string

This property applies to elements of type attachments and relationship. A string value indicating how to display the attachment. Possible values are, 'preview', and 'list' for attachments types, and 'list' for relationship types. If list is specified, attachments show as links.

Inherited from PopupElementJson.displayType

### `Optional` expressionInfo

expressionInfo?: PopupExpressionInfoJson

This property applies to elements of type expression. An Arcade expression that defines the pop-up element content.

Inherited from PopupElementJson.expressionInfo

### `Optional` fieldInfos

fieldInfos?: FieldInfoJson[]

This property applies to elements of type fields. It is an array of popupInfo.fieldInfo objects representing a field/value pair displayed as a table within the popupElement. If the fieldInfos property is not provided, the popupElement will display whatever is specified directly in the popupInfo.fieldInfos property.

Inherited from PopupElementJson.fieldInfos

### `Optional` mediaInfos

mediaInfos?: MediaInfoJson[]

This property applies to elements of type media. An array of popupInfo.mediaInfo objects representing an image or chart for display. If no mediaInfos property is provided, the popupElement will display whatever is specified in the popupInfo.mediaInfo property.

Inherited from PopupElementJson.mediaInfos

### `Optional` orderByFields

orderByFields?: OrderByFieldsJson[]

This property applies to elements of type relationship. Array of orderByFields objects indicating the field display order for the related records and whether they should be sorted in ascending 'asc' or descending 'desc' order.

Inherited from PopupElementJson.orderByFields

### `Optional` relationshipId

relationshipId?: number

This property applies to elements of type relationship. The id of the relationship as defined in the feature layer definition.

Inherited from PopupElementJson.relationshipId

### `Optional` text

text?: string

This property applies to elements of type text. This is string value indicating the text to be displayed within the popupElement. If no text property is provided, the popupElement will display whatever is specified in the popupInfo.description property.

Inherited from PopupElementJson.text

### `Optional` title

title?: string

An optional string value indicating what the element represents. This property does not apply when the type is text or expression.

Inherited from PopupElementJson.title

### `Optional` type

type?:
| "text"
| "fields"
| "expression"
| "attachments"
| "media"
| "relationship"

String value indicating which element to use.

Inherited from PopupElementJson.type