Options
All
  • Public
  • Public/Protected
  • All
Menu

The Application responsible for displaying and editing a single JournalEntryPage video document.

Hierarchy

Index

Constructors

Methods

  • getData(options?: {}): any
  • An application should define the data object used to render its template. This function may either return an Object directly, or a Promise which resolves to an Object If undefined, the default implementation will return an empty object allowing only for rendering of static HTML

    Parameters

    • options: {} = {}

      Returns any

    • activateListeners(html: any): void
    • After rendering, activate event listeners which provide interactivity for the Application. This is where user-defined Application subclasses should attach their event-handling logic.

      Parameters

      • html: any

      Returns void

    • _getSubmitData(updateData?: {}): any
    • Get an object of update data used to update the form's target object

      Parameters

      • updateData: {} = {}

        Additional data that should be merged with the form data

        Returns any

        The prepared update data

      • activateEditor(name: any, options?: {}, initialContent?: string): Promise<any>
      • Activate a named TinyMCE text editor

        Parameters

        • name: any

          The named data field which the editor modifies.

        • options: {} = {}

          Editor initialization options passed to TextEditor.create.

          • initialContent: string = ""

            Initial text content for the editor area.

          Returns Promise<any>

        • _renderInner(...args: any[]): Promise<jQuery>
        • Render the inner application content

          Parameters

          • Rest ...args: any[]

            The data used to render the inner template

          Returns Promise<jQuery>

          A promise resolving to the constructed jQuery object

        • close(options?: {}): Promise<void>
        • Close the application and un-register references to it within UI mappings This function returns a Promise which resolves once the window closing animation concludes

          Parameters

          • options: {} = {}

            Returns Promise<void>

            A Promise which resolves once the application is closed

          • _activateCoreListeners(html: any): void
          • Activate required listeners which must be enabled on every Application. These are internal interactions which should not be overridden by downstream subclasses.

            Parameters

            • html: any

            Returns void

          • Render the Application by evaluating it's HTML template against the object of data provided by the getData method If the Application is rendered as a pop-out window, wrap the contained HTML in an outer frame with window controls

            Parameters

            • force: boolean = false

              Add the rendered application to the DOM if it is not already present. If false, the Application will only be re-rendered if it is already present.

            • options: {} = {}

              Additional rendering options which are applied to customize the way that the Application is rendered in the DOM.

              Returns Application | JournalVideoPageSheet

              The rendered Application instance

            • _renderOuter(): Promise<jQuery>
            • Render the outer application wrapper

              Returns Promise<jQuery>

              A promise resolving to the constructed jQuery object

            • _updateObject(event: any, formData: any): Promise<any>
            • This method is called upon form submission after form data is validated

              Parameters

              • event: any

                The initial triggering submission event

              • formData: any

                The object of validated form data with which to update the object

              Returns Promise<any>

              A Promise which resolves once the update operation has completed

            • _render(force: any, options: any): Promise<void>
            • An asynchronous inner function which handles the rendering of the Application

              Parameters

              • force: any

                Render and display the application even if it is not currently displayed.

              • options: any

                Additional options which update the current values of the Application#options object

              Returns Promise<void>

              A Promise that resolves to the Application once rendering is complete

            • saveEditor(name: string, [remove]?: boolean): Promise<void>
            • Handle saving the content of a specific editor by name

              Parameters

              • name: string

                The named editor to save

              • [remove]: boolean = {}

                Remove the editor after saving its content

              Returns Promise<void>

            • Submit the contents of a Form Application, processing its content as defined by the Application

              Parameters

              • options: any = {}

              Returns FormApplication

              Return a self-reference for convenient method chaining

            • activateTab(tabName: string, options?: { group: string; triggerCallback: boolean }): void
            • Change the currently active tab

              Parameters

              • tabName: string

                The target tab name to switch to

              • options: { group: string; triggerCallback: boolean } = {}

                Options which configure changing the tab

                • group: string

                  A specific named tab group, useful if multiple sets of tabs are present

                • triggerCallback: boolean

                  Whether to trigger tab-change callback functions

              Returns void

            • bringToTop(): void
            • minimize(): Promise<void>
            • Minimize the pop-out window, collapsing it to a small tab Take no action for applications which are not of the pop-out variety or apps which are already minimized

              Returns Promise<void>

              A Promise which resolves once the minimization action has completed

            • maximize(): Promise<void>
            • Maximize the pop-out window, expanding it to its original size Take no action for applications which are not of the pop-out variety or are already maximized

              Returns Promise<void>

              A Promise which resolves once the maximization action has completed

            • setPosition(position?: { left: number; top: number; width: number; height: string | number; scale: number }): void | { left: number; top: number; width: number; height: number; scale: number }
            • Set the application position and store its new location. Returns the updated position object for the application containing the new values.

              Parameters

              • position: { left: number; top: number; width: number; height: string | number; scale: number } = {}

                Positional data

                • left: number

                  The left offset position in pixels

                • top: number

                  The top offset position in pixels

                • width: number

                  The application width in pixels

                • height: string | number

                  The application height in pixels

                • scale: number

                  The application scale as a numeric factor where 1.0 is default

              Returns void | { left: number; top: number; width: number; height: number; scale: number }

              |void}

            • _getYouTubeVars(): any
            • Get the YouTube player parameters depending on whether the sheet is being viewed or edited.

              Returns any

            • _timeComponentsToTimestamp(components?: {}): number
            • Convert time components to a timestamp in seconds.

              Parameters

              • components: {} = {}

                The time components.

                Returns number

                The timestamp, in seconds.

              • _timestampToTimeComponents(timestamp: number): {}
              • Convert a timestamp in seconds into separate time components.

                Parameters

                • timestamp: number

                  The timestamp, in seconds.

                Returns {}

                The individual time components.

                • _createDocumentIdLink(html: jQuery): void
                • Create an ID link button in the document sheet header which displays the document ID and copies to clipboard

                  Parameters

                  • html: jQuery

                  Returns void

                • _canUserView(user: User): boolean
                • Test whether a certain User has permission to view this Document Sheet.

                  Parameters

                  • user: User

                    The user requesting to render the sheet

                  Returns boolean

                  Does the User have permission to view this sheet?

                • _getSecretContent(secret: HTMLElement): string
                • Get the HTML content that a given secret block is embedded in.

                  Parameters

                  • secret: HTMLElement

                    The secret block.

                  Returns string

                • _updateSecret(secret: HTMLElement, content: string): Promise<Document>
                • Update the HTML content that a given secret block is embedded in.

                  Parameters

                  • secret: HTMLElement

                    The secret block.

                  • content: string

                    The new content.

                  Returns Promise<Document>

                  The updated Document.

                • _disableFields(form: HTMLElement): void
                • If the form is not editable, disable its input fields

                  Parameters

                  • form: HTMLElement

                    The form HTML

                  Returns void

                • _onSubmit(event: Event, __namedParameters?: any): Promise<any>
                • Handle standard form submission steps

                  Parameters

                  • event: Event

                    The submit event which triggered this handler

                  • __namedParameters: any = {}

                  Returns Promise<any>

                  A promise which resolves to the validated update data

                • _onChangeInput(event: Event): Promise<any>
                • Handle changes to an input element, submitting the form if options.submitOnChange is true. Do not preventDefault in this handler as other interactions on the form may also be occurring.

                  Parameters

                  • event: Event

                    The initial change event

                  Returns Promise<any>

                • _onChangeColorPicker(event: Event): void
                • Handle the change of a color picker input which enters it's chosen value into a related input field

                  Parameters

                  • event: Event

                    The color picker change event

                  Returns void

                • _onChangeRange(event: Event): void
                • Handle changes to a range type input by propagating those changes to the sibling range-value element

                  Parameters

                  • event: Event

                    The initial change event

                  Returns void

                • _onSelectFile(selection: string, filePicker: FilePicker): void
                • Additional handling which should trigger when a FilePicker contained within this FormApplication is submitted.

                  Parameters

                  • selection: string

                    The target path which was selected

                  • filePicker: FilePicker

                    The FilePicker instance which was submitted

                  Returns void

                • _activateEditor(div: HTMLElement): void
                • Activate an editor instance present within the form

                  Parameters

                  • div: HTMLElement

                    The element which contains the editor

                  Returns void

                • _configureProseMirrorPlugins(name: string, [options]?: { remove: boolean }): any
                • Configure ProseMirror plugins for this sheet.

                  Parameters

                  • name: string

                    The name of the editor.

                  • [options]: { remove: boolean } = {}

                    Additional options to configure the plugins.

                    • remove: boolean

                  Returns any

                • _activateFilePicker(event: PointerEvent): Promise<any>
                • Activate a FilePicker instance present within the form

                  Parameters

                  • event: PointerEvent

                    The mouse click event on a file picker activation button

                  Returns Promise<any>

                • _getFilePickerOptions(event: PointerEvent): any
                • Determine the configuration options used to initialize a FilePicker instance within this FormApplication. Subclasses can extend this method to customize the behavior of pickers within their form.

                  Parameters

                  • event: PointerEvent

                    The initiating mouse click event which opens the picker

                  Returns any

                  Options passed to the FilePicker constructor

                • _saveScrollPositions(html: jQuery): void
                • Persist the scroll positions of containers within the app before re-rendering the content

                  Parameters

                  • html: jQuery

                    The HTML object being traversed

                  Returns void

                • _restoreScrollPositions(html: jQuery): void
                • Restore the scroll positions of containers within the app after re-rendering the content

                  Parameters

                  • html: jQuery

                    The HTML object being traversed

                  Returns void

                • _onChangeTab(event: MouseEvent, tabs: Tabs, active: string): void
                • Handle changes to the active tab in a configured Tabs controller

                  Parameters

                  • event: MouseEvent

                    A left click event

                  • tabs: Tabs

                    The Tabs controller

                  • active: string

                    The new active tab name

                  Returns void

                • _onSearchFilter(event: KeyboardEvent, query: string, rgx: RegExp, html: HTMLElement): void
                • Handle changes to search filtering controllers which are bound to the Application

                  Parameters

                  • event: KeyboardEvent

                    The key-up event from keyboard input

                  • query: string

                    The raw string input to the search field

                  • rgx: RegExp

                    The regular expression to test against

                  • html: HTMLElement

                    The HTML element which should be filtered

                  Returns void

                • _canDragStart(selector: string): boolean
                • Define whether a user is able to begin a dragstart workflow for a given drag selector

                  Parameters

                  • selector: string

                    The candidate HTML selector for dragging

                  Returns boolean

                  Can the current user drag this selector?

                • _canDragDrop(selector: string): boolean
                • Define whether a user is able to conclude a drag-and-drop workflow for a given drop selector

                  Parameters

                  • selector: string

                    The candidate HTML selector for the drop target

                  Returns boolean

                  Can the current user drop on this selector?

                • _onDragStart(event: DragEvent): void
                • Callback actions which occur at the beginning of a drag start workflow.

                  Parameters

                  • event: DragEvent

                    The originating DragEvent

                  Returns void

                • _onDragOver(event: DragEvent): void
                • Callback actions which occur when a dragged element is over a drop target.

                  Parameters

                  • event: DragEvent

                    The originating DragEvent

                  Returns void

                • _onDrop(event: DragEvent): void
                • Callback actions which occur when a dragged element is dropped on a target.

                  Parameters

                  • event: DragEvent

                    The originating DragEvent

                  Returns void

                Accessors

                • get template(): string
                • inheritdoc

                  Returns string

                • get title(): any
                • inheritdoc

                  Returns any

                • get document(): Document
                • A semantic convenience reference to the Document instance which is the target object for this form.

                  Returns Document

                • get id(): string
                • inheritdoc

                  Returns string

                • get isEditable(): any
                • inheritdoc

                  Returns any

                • get element(): jQuery
                • Return the active application element, if it currently exists in the DOM

                  Returns jQuery

                • get popOut(): boolean
                • Control the rendering style of the application. If popOut is true, the application is rendered in its own wrapper window, otherwise only the inner app content is rendered

                  Returns boolean

                • get rendered(): boolean
                • Return a flag for whether the Application instance is currently rendered

                  Returns boolean

                • get defaultOptions(): any
                • inheritdoc

                  Returns any

                Properties

                _secrets: HTMLSecret[]
                object: any

                The object target which we are using this form to modify

                form: HTMLElement

                A convenience reference to the form HTMLElement

                filepickers: FilePicker[]

                Keep track of any FilePicker instances which are associated with this form The values of this Array are inner-objects with references to the FilePicker instances and other metadata

                editors: Object

                Keep track of any mce editors which may be active as part of this form The values of this object are inner-objects with references to the MCE editor and other metadata

                _submitting: boolean
                _state: any

                The current render state of the Application

                options: any

                The options provided to this application upon initialization

                appId: number

                The application ID is a unique incrementing integer which is used to identify every application window drawn by the VTT

                _element: jQuery

                An internal reference to the HTML element this application renders

                position: any

                Track the current position and dimensions of the Application UI

                _dragDrop: DragDrop[]

                DragDrop workflow handlers which are active for this Application

                _tabs: Tabs[]

                Tab navigation handlers which are active for this Application

                _searchFilters: SearchFilter[]

                SearchFilter handlers which are active for this Application

                _minimized: boolean

                Track whether the Application is currently minimized

                _scrollPositions: any

                Track the most recent scroll positions for any vertically scrolling containers

                _priorState: number

                The prior render state of this Application. This allows for rendering logic to understand if the application is being rendered for the first time.

                see

                {Application.RENDER_STATES}

                RENDER_STATES: Readonly<{ CLOSING: -2; CLOSED: -1; NONE: 0; RENDERING: 1; RENDERED: 2; ERROR: 3 }> = ...

                The sequence of rendering states that track the Application life-cycle.