Optional
parent: TJSPositionParent | TJSPositionOptionsAllA
potential parent element or object w/ elementTarget
getter. May also be the TJSPositionOptions object
w/ 1 argument.
Optional
options: TJSPositionOptionsAllDefault values.
Returns the animation API.
Animation API.
Returns the dimension data for the readable store.
Dimension data.
Returns the current HTMLElement being positioned.
Current HTMLElement being positioned.
Returns the enabled state.
Enabled state.
Sets the enabled state.
height
left
maxHeight
maxWidth
minHeight
minWidth
Returns the associated TJSPositionParent instance.
The TJSPositionParent instance.
Sets the associated TJSPositionParent instance. Resets the style cache and default data.
rotateX
rotateY
rotateZ
alias for rotateZ
scale
Returns the state API.
TJSPosition state API.
Returns the derived writable stores for individual data variables.
Derived / writable stores.
top
Returns the transform data for the readable store.
Transform Data.
transformOrigin
translateX
translateY
translateZ
Returns the validators.
validators.
width
z-index
Static
AnimatePublic Animation API.
Static
InitialStatic
TransformReturns TJSTransformData class / constructor.
TJSTransformData class / constructor.
Static
ValidatorsReturns default validators.
Note: basicWindow
and BasicBounds
will eventually be removed.
Available validators.
Assigns current position to object passed into method.
Optional
position: object | TJSPositionDataTarget to assign current position data.
Optional
options: TJSPositionGetOptionsDefines options for specific keys and substituting null for numeric default values.
Passed in object with current position data.
All calculation and updates of position are implemented in TJSPosition. This allows position to be fully reactive and in control of updating inline styles for the application.
Note: the logic for updating position is improved and changes a few aspects from the default
globalThis.Application.setPosition. The gate on popOut
is removed, so to ensure no positional
application occurs popOut applications can set this.options.positionable
to false ensuring no positional inline
styles are applied.
The initial set call on an application with a target element will always set width / height as this is necessary for correct calculations.
When a target element is present updated styles are applied after validation. To modify the behavior of set
implement one or more validator functions and add them from the application via
this.position.validators.add(<Function>)
.
Updates to any target element are decoupled from the underlying TJSPosition data. This method returns this instance that you can then await on the target element inline style update by using TJSPosition.elementUpdated.
Optional
position: TJSPositionDataExtendedTJSPosition data to set.
This TJSPosition instance.
Callback function that is invoked on update / changes. Receives a copy of the TJSPositionData.
Unsubscribe function.
Current position data.
Static
duplicateReturns a duplicate of a given position instance copying any options and validators.
// TODO: Consider more safety over options processing.
A position instance.
TJSPosition options.
A duplicate position instance.
Provides a store for position following the subscriber protocol in addition to providing individual writable derived stores for each independent variable.