ProjectData

DSHDLib.Editors. Namespace

ProjectData

Source:

Namespaces

ElementUpdates
NewElements
RenderCustomizationObjects

Type Definitions

AudioTrack

Description:
  • Object containing all properties of audio tracks
Source:
Properties:
Name Type Attributes Description
element_id string The unique identifer automatically assigned to the audio track upon creation
template_element bool Value indicating whether this element was part of a template or added by the user
type string Always "audio"
track_name string An optional user-assigned name
duration number The duration of the track in seconds
delay number The delay before the track starts in seconds, relative to its containing scene/page or the video/presentation as a whole if global
trim_start number <optional>
The start of the trimmed clip relative to the full duration. Only included if the audio has been trimmed
trim_end number <optional>
The end of the trimmed clip relative to the full duration. Only included if the audio has been trimmed
asset_id number The internal asset_id of the file
asset_code string <optional>
The id of the file in the originating repository
import_progress number <optional>
If the imported audio is immediately available for use in the editor, but still requires asynchronous backend import, this shows its import progress percentage - from 0 to 1
Object containing all properties of audio tracks

ContainerElementVectorProperties

Description:
  • Properties specific to vector elements referenced as a container on images/videos
Source:
Properties:
Name Type Attributes Description
vector_type string One of: "shape", "svg"
shape_type string <optional>
If vector_type is "shape", one of: "rectangle", "ellipse", "triangle"
path_count number The number of paths in the vector
width number The width of the vector in the unit type of the project
height number The height of the vector in the unit type of the project
angle number <optional>
The rotation degrees. Excluded if not rotated
left number <nullable>
The x coordinate of the top of the vector in the unit type of the project. Null when rotated or flipped
top number <nullable>
The y coordinate of the top of the vector in the unit type of the project. Null when rotated or flipped
bounding_box Object <optional>
Coordinates of a box fully containing the zone. Only included if rotated or flipped
Properties
Name Type Description
top number The y coordinate of the top of the box in the unit type of the project
right number The x coordinate of the right side of the box in the unit type of the project
bottom number The y coordinate of the bottom of the box in the unit type of the project
left number The x coordinate of the left side of the box in the unit type of the project
background_color string <optional>
The color filling the vector if/when the vector or its contained element is semi-transparent
asset_id number <optional>
The internal asset_id of the file for imported vectors
asset_code string <optional>
The id of the file in the originating repository
Properties specific to vector elements referenced as a container on images/videos

ContainerElementZoneProperties

Description:
  • Properties specific to zone elements referenced as a container on vectors/images/videos
Source:
Properties:
Name Type Attributes Description
zone_type string Either "fit" or "mask" depending on if contained element is sized to fully fit within the zone boundary or masked to fully fill the zone boundary
enforce_boundary bool <optional>
If zone_type is "fit", a value indicating whether the zone restricts movement of its contained element to its boundary
width number The width of the zone in the unit type of the project
height number The height of the zone in the unit type of the project
angle number <optional>
The rotation degrees. Excluded if not rotated
left number <nullable>
The x coordinate of the top of the zone in the unit type of the project. Null when rotated
top number <nullable>
The y coordinate of the top of the zone in the unit type of the project. Null when rotated
bounding_box Object <optional>
Coordinates of a box fully containing the zone. Only included if rotated
Properties
Name Type Description
top number The y coordinate of the top of the box in the unit type of the project
right number The x coordinate of the right side of the box in the unit type of the project
bottom number The y coordinate of the bottom of the box in the unit type of the project
left number The x coordinate of the left side of the box in the unit type of the project
Properties specific to zone elements referenced as a container on vectors/images/videos

ElementProperties

Description:
  • Base type for shared properties across all element types
Source:
Properties:
Name Type Attributes Description
element_id string <optional>
The unique identifer automatically assigned to the element upon creation.
element_name string <nullable>
An optional user-assigned name
element_classes Array.<string> An optional list of user-assigned classes
template_element bool Value indicating whether this element was part of a template or added by the user
type string One of: "text", "image", "vector", "video", "lottie", "zone"
width number The width of the element in the unit type of the project
height number The height of the element in the unit type of the project
angle number <optional>
The rotation degrees. Excluded if not rotated
left number <nullable>
The x coordinate of the top of the element in the unit type of the project. Null when rotated, flipped or cropped
top number <nullable>
The y coordinate of the top of the element in the unit type of the project. Null when rotated, flipped or cropped
bounding_box Object <optional>
Coordinates of a box fully containing the element. Only included if rotated, flipped or cropped
Properties
Name Type Description
top number The y coordinate of the top of the box in the unit type of the project
right number The x coordinate of the right side of the box in the unit type of the project
bottom number The y coordinate of the bottom of the box in the unit type of the project
left number The x coordinate of the left side of the box in the unit type of the project
opacity number The percentage opacity of the element, between 0 and 1
selected bool <optional>
Value indicating whether this element is currently selected in the editor
Base type for shared properties across all element types

FontProperties

Description:
  • Properties for fonts associated with text elements
Source:
Properties:
Name Type Attributes Description
font_file_id number <optional>
The id of the specific font variation. Not present on "project" specific fonts (e.g. partial fonts extracted from imported files)
font_type string One of: "system", "partner", "brand", "user", "pdf", "project"
name string The name of the font family or specific font variation
weight string <optional>
"Bold" if a bold variation in a font family
style number <optional>
"Italic" if an italic variation in a font family
Properties for fonts associated with text elements

ImageElementProperties

Description:
Source:
Properties:
Name Type Attributes Description
file_type string The file extension of the source image (e.g. "png", "jpg", "webp", "heic", "tiff")
source_width number The full width of the source image in pixels
source_height number The full height of the source image in pixels
asset_opaque bool <optional>
If the image has been fully analyzed (true for all recently added images), this property will indicate whether or not any pixels with transparency exist
asset_id number The internal asset_id of the file
asset_code string <optional>
The id of the file in the originating repository
zone DSHDLib.Editors.ProjectData.ContainerElementZoneProperties <optional>
Zone information if this element is inside of a zone
masking_vector DSHDLib.Editors.ProjectData.ContainerElementVectorProperties <optional>
Vector information if this element is masked in a vector
Properties specific to image elements - See ElementProperties for common properties
Type:

LottieElementProperties

Description:
Source:
Properties:
Name Type Attributes Description
duration number The duration of the lottie in seconds
speed number The speed factor of the lottie
loop bool Value indicating whether the lottie is set to loop
source_width number The full width of the source lottie
source_height number The full height of the source lottie
colors Array.<string> All colors used in the lottie
text Array.<DSHDLib.Editors.ProjectData.LottieTextProperties> All text used in the lottie
images Array.<DSHDLib.Editors.ProjectData.LottieImageProperties> <optional>
All images used in the lottie if any are present
layers Object.<string, DSHDLib.Editors.ProjectData.LottieLayerProperties> The list of layers contained in the lottie keyed off the layer name used in the lottie
asset_id number The internal asset_id of the file
asset_code string <optional>
The id of the file in the originating repository
zone DSHDLib.Editors.ProjectData.ContainerElementZoneProperties <optional>
Zone information if this element is inside of a zone
Properties specific to lottie elements - See ElementProperties for common properties
Type:

LottieImageProperties

Description:
  • Properties for embedded images in lottie elements
Source:
Properties:
Name Type Attributes Description
asset_id number The internal asset_id of the file
asset_code string <optional>
The id of the file in the originating repository
initial_source_width number The width of the original embedded image in pixels
initial_source_height number The height of the original embedded image in pixels
Properties for embedded images in lottie elements

LottieLayerProperties

Description:
  • Properties for layers in lottie elements
Source:
Properties:
Name Type Attributes Description
color_index number <optional>
The color used in this layer referencing the colors array
text_index number <optional>
The text used in this layer referencing the text array
image_index number <optional>
The image used in this layer referencing the images array
Properties for layers in lottie elements

LottieTextProperties

Description:
  • Properties for text fields in lottie elements
Source:
Properties:
Name Type Description
text string The actual text displayed
font DSHDLib.Editors.ProjectData.FontProperties The font applied to this text
letter_spacing number The letter spacing in pixels
Properties for text fields in lottie elements

PageData

Description:
  • Object containing all properties of a page in a project and all its contained elements
Source:
Properties:
Name Type Attributes Description
page_id string The unique identifer automatically assigned to the page upon creation
dimensions Object
Properties
Name Type Description
width number The width of the page in the unit type returned
height number The height of the page in the unit type returned
unit_type_id string One of: "px", "in", "mm"
group_id string <optional>
The scene slide group this page is associated with on a presentation project. Reference this id in scene_slide_groups in ProjectData
masking_vector_element_id string <optional>
A reference to a vector element that is masking the entire canvas
background_element_id string <optional>
A reference to an image/video element acting as the special background layer
background_color string <optional>
The color filling the background layer
background_classes Array.<string> An optional list of user-assigned classes associated with the background layer of this page
canvas_border Object <optional>
The border (outer stroke) applied to a custom shaped canvas (with a masking_vector_element_id). Set via updateCanvasBorder
Properties
Name Type Description
width number The width of the border/stroke in the unit type of the project
color string The color of the border/stroke
rounded bool A value indicating whether the border/stroke is rounded around the edges of the canvas shape
elements Object.<string, (DSHDLib.Editors.ProjectData.ElementProperties|DSHDLib.Editors.ProjectData.AudioTrack)> The list of elements contained in the page
Object containing all properties of a page in a project and all its contained elements

ProjectData

Description:
  • Object containing all properties and metadata related to the project and all its contained pages/scenes and ther contained elements
Source:
Properties:
Name Type Attributes Description
project_id string The unique identifer associated with the project
project_title string The current title of the project. Defaults to the template title if not supplied during project creation.
media_type string One of: "digital", "print", "video", "presentation"
tags Array.<string> A list of tags associated with the project
metadata Object <optional>
Any metadata assigned to the project programmatically
approval_status string <optional>
If previously submitted for approval, one of: "approved", "denied", "awaiting_revisions", "pending_review"
pages Array.<DSHDLib.Editors.ProjectData.PageData> <optional>
A list of all pages the their contained elements for digital, print and presentation projects
scenes Array.<DSHDLib.Editors.ProjectData.SceneData> <optional>
A list of all scenes the their contained elements for video projects
duration number <optional>
The total duration of a video project in seconds
layouts Array.<DSHDLib.Editors.ProjectData.PageData> | Array.<DSHDLib.Editors.ProjectData.SceneData> <optional>
A list of all pages/scenes stored as available layouts
global_audio_tracks Array.<DSHDLib.Editors.ProjectData.AudioTrack> <optional>
A list of all audio tracks not associated with a specific scene on a video project
scene_slide_groups Object.<string, DSHDLib.Editors.ProjectData.SceneSlideGroup> <optional>
A list of groups associated with scene slides on a video or presenation project
current_page_id string <optional>
The currently open page on digital, print and presentation projects
current_scene_id string <optional>
The currently open page on video projects
unsaved_locking_config bool Value indicating whether any modifications to the locking config have been saved for admin context uses
Object containing all properties and metadata related to the project and all its contained pages/scenes and ther contained elements

SceneData

Description:
  • Object containing all properties of a scene in a project and all its contained elements
Source:
Properties:
Name Type Attributes Description
scene_id string The unique identifer automatically assigned to the scene upon creation
dimensions Object
Properties
Name Type Description
width number The width of the scene in pixels
height number The height of the scene in pixels
unit_type_id string Always "px"
group_id string <optional>
The scene slide group this scene is associated with. Reference this id in scene_slide_groups in ProjectData
duration number The duration of the scene in seconds
background_element_id string <optional>
A reference to an image/video element acting as the special background layer
background_color string <optional>
The color filling the background layer
background_classes Array.<string> An optional list of user-assigned classes associated with the background layer of this scene
elements Object.<string, (DSHDLib.Editors.ProjectData.ElementProperties|DSHDLib.Editors.ProjectData.AudioTrack)> The list of elements contained in the scene
Object containing all properties of a scene in a project and all its contained elements

SceneSlideGroup

Description:
  • Object containing metadata about scene slide groups
Source:
Properties:
Name Type Attributes Description
group_name string An optional user-assigned group name
duration number <optional>
The duration of the scene slide group in seconds. Overrides its contained scene duration sum if not evenly split
Object containing metadata about scene slide groups

TextElementProperties

Description:
Source:
Properties:
Name Type Attributes Description
text string The actual text typed within the textbox
colors Array.<string> All fill and stroke colors applied to the text
font_size Object The current size of the font
Properties
Name Type Description
size number The actual size value
unit_type_id string One of: "px", "pt"
fonts Array.<DSHDLib.Editors.ProjectData.FontProperties> All fonts applied to the text (e.g. regular, bold, italic)
line_height number A value which, when multiplied by the font_size, indicates the height of each line of text
letter_spacing number A value indicating the spacing between characters, measured in 1/1000 em, which is relative to the font size
align string The alignment of the text within the textbox width
curve Object <optional>
Information about the curve of the text, if curved
Properties
Name Type Description
inverse bool A value indicating whether the curve is inversed
line_count number The number of lines in the textbox
longest_line_width number The width of the longest line in the unit type of the project
text_token_map Object.<string, string> <optional>
A map of tokens that may be present in the text and their respective default replacement values
cursor Object <optional>
Information about the position of the cursor and selected range of text in a currently selected text element. Useful in creating real-time text manipulation experiences in conjunction with the text_insert property in updateElements
Properties
Name Type Attributes Description
position number The 0-based index of the cursor location within the text
selected_range Array.<number> <optional>
The start and end index of the selected text when a selection is active
Properties specific to text elements - See ElementProperties for common properties
Type:

VectorElementProperties

Description:
Source:
Properties:
Name Type Attributes Description
vector_type string One of: "line", "shape", "svg", "pdf"
shape_type string <optional>
If vector_type is "shape", one of: "rectangle", "ellipse", "triangle"
colors Array.<string> All fill and stroke colors applied to the element
path_count number The number of paths in the vector
asset_id number <optional>
The internal asset_id of the file for imported vectors
asset_code string <optional>
The id of the file in the originating repository
zone DSHDLib.Editors.ProjectData.ContainerElementZoneProperties <optional>
Zone information if this element is inside of a zone
Properties specific to vector elements - See ElementProperties for common properties
Type:

VideoElementProperties

Description:
Source:
Properties:
Name Type Attributes Description
duration number The duration of the full video in seconds
source_width number The full width of the source video
source_height number The full height of the source video
audible bool Value indicating whether the video has an audio track
speed number The speed factor of the video
loop bool Value indicating whether the video is set to loop
trim_start number <optional>
The start of the trimmed clip relative to the full duration. Only included if the video has been trimmed
trim_end number <optional>
The end of the trimmed clip relative to the full duration. Only included if the video has been trimmed
asset_id number The internal asset_id of the file
asset_code string <optional>
The id of the file in the originating repository
import_progress number <optional>
If the imported video is immediately available for use in the editor, but still requires asynchronous backend import, this shows its import progress percentage - from 0 to 1
zone DSHDLib.Editors.ProjectData.ContainerElementZoneProperties <optional>
Zone information if this element is inside of a zone
masking_vector DSHDLib.Editors.ProjectData.ContainerElementVectorProperties <optional>
Vector information if this element is masked in a vector
Properties specific to video elements - See ElementProperties for common properties
Type:

ZoneElementProperties

Description:
  • Properties specific to (unpopulated) zone elements - See ElementProperties for common properties. Note that when zones are populated they become part of their contained element (image, vector, video) as its "zone" property
Source:
Properties:
Name Type Attributes Description
zone_type string Either "fit" or "mask" depending on if contained elements will be sized to fully fit within the zone boundary or be masked to fully fill the zone boundary. Note that vector elements can only be added to "fit" mode zones.
enforce_boundary bool <optional>
If zone_type is "fit", a value indicating whether the zone restricts movement of its contained element to its boundary
Properties specific to (unpopulated) zone elements - See ElementProperties for common properties. Note that when zones are populated they become part of their contained element (image, vector, video) as its "zone" property
Type: