import AttachmentsViewModel from "@arcgis/core/widgets/Attachments/AttachmentsViewModel.js";
            const AttachmentsViewModel = await $arcgis.import("@arcgis/core/widgets/Attachments/AttachmentsViewModel.js");
            @arcgis/core/widgets/Attachments/AttachmentsViewModel
        Provides the logic for the Attachments widget.
- See also
Constructors
- 
  
  
  
  
  
  
  
  
    Parameterproperties ObjectoptionalSee the properties for a list of all the properties that may be passed into the constructor. 
Property Overview
| Name | Type | Summary | Class | 
|---|---|---|---|
| The current AttachmentInfo being edited. | AttachmentsViewModel | ||
| A collection of AttachmentInfo defined on a feature. | AttachmentsViewModel | ||
| An array of strings used to identify attachment(s). | AttachmentsViewModel | ||
| An array of strings representing MIME types. | AttachmentsViewModel | ||
| Configures the attachment editing functionality that can be performed by the user. | AttachmentsViewModel | ||
| The name of the class. | Accessor | ||
| The graphic for the attachments. | AttachmentsViewModel | ||
| The current mode performed by the user. | AttachmentsViewModel | ||
| An array of AttachmentsOrderByInfo indicating the display order for the attachments, and whether they should be sorted in ascending  | AttachmentsViewModel | ||
| The current state of the widget. | AttachmentsViewModel | ||
| Defines whether or not the feature supports resizing attachments. | AttachmentsViewModel | 
Property Details
- 
  
  activeAttachmentInfoPropertyactiveAttachmentInfo AttachmentInfo |null |undefined
- 
  
    The current AttachmentInfo being edited. 
- 
  
  attachmentInfosPropertyattachmentInfos Collection<AttachmentInfo>readonly
- 
  
    A collection of AttachmentInfo defined on a feature. 
- 
  
    An array of strings used to identify attachment(s). When attachments are displayed, this property is used to query attachments using an exact match on the keywords provided. - Default Value:null
 
- 
  
    An array of strings representing MIME types. When attachments are displayed, this property is used to query attachments based on MIME type. Valid values: application, audio, image, model, text, and video. - Default Value:null
 
- 
  
  capabilitiesPropertycapabilities AttachmentsCapabilitiesSince: ArcGIS Maps SDK for JavaScript 4.27AttachmentsViewModel since 4.15, capabilities added at 4.27. 
- 
  
    Configures the attachment editing functionality that can be performed by the user. 
- 
  
  modePropertymode String
- 
  
    The current mode performed by the user. Possible Values:"view" |"add" |"edit" - Default Value:"view"
 
- 
  
  orderByFieldsPropertyorderByFields AttachmentsOrderByInfo[] |null |undefinedautocast
- 
  
    An array of AttachmentsOrderByInfo indicating the display order for the attachments, and whether they should be sorted in ascending ascor descendingdescorder.
- 
  
  statePropertystate Stringreadonly
- 
  
    The current state of the widget. Possible Values:"ready" |"disabled" |"loading" - Default Value:"ready"
 
- 
  
  supportsResizeAttachmentsPropertysupportsResizeAttachments Booleanreadonly
- 
  
    Defines whether or not the feature supports resizing attachments. This depends on whether the feature layer's capabilities.attachment.supportsResize is set to true.
Method Overview
| Name | Return Type | Summary | Class | 
|---|---|---|---|
| Adds one or more handles which are to be tied to the lifecycle of the object. | Accessor | ||
| Promise<AttachmentInfo[]> | Queries for the attachments on a feature. | AttachmentsViewModel | |
| Returns true if a named group of handles exist. | Accessor | ||
| Removes a group of handles owned by the object. | Accessor | 
Method Details
- 
  
  
  
  Inherited from AccessorSince: ArcGIS Maps SDK for JavaScript 4.25Accessor 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();ParametershandleOrHandles WatchHandle|WatchHandle[]Handles marked for removal once the object is destroyed. groupKey *optionalKey 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. 
- 
  
  getAttachmentsMethodgetAttachments(){Promise<AttachmentInfo[]>}
- 
  
  
    Queries for the attachments on a feature. Attachments for multiple features can be queried if the layer's capabilities.operations.supportsQueryAttachments is true.ReturnsType Description Promise<AttachmentInfo[]> When resolved, returns the AttachmentInfo of the queried feature. - See also
 
- 
  
  hasHandlesInheritedMethodhasHandles(groupKey){Boolean}Inherited from AccessorSince: ArcGIS Maps SDK for JavaScript 4.25Accessor since 4.0, hasHandles added at 4.25. 
- 
  
  
    Returns true if a named group of handles exist. ParametergroupKey *optionalA group key. ReturnsType Description Boolean Returns trueif 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"); }
- 
  
  
  
  Inherited from AccessorSince: ArcGIS Maps SDK for JavaScript 4.25Accessor since 4.0, removeHandles added at 4.25. 
- 
  
  
    Removes a group of handles owned by the object. ParametergroupKey *optionalA group key or an array or collection of group keys to remove. Exampleobj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");
Type Definitions
- 
  
    An object that specifies the available attachments capabilities. - Properties
- 
  optionalediting BooleanIndicates whether to allow attachment editing. The feature layer must be enabled to support editing. Default value is false.optionaloperations ObjectDescribes the configurable attachments operations. See the object specification below. - Specification
- 
  optionaladd BooleanIndicates whether to allow adding attachments. Default value is true.optionalupdate BooleanIndicates whether to allow updating an existing attachment. Default value is true.optionaldelete BooleanIndicates whether to allow deleting an existing attachment. Default value is true.