@breadstone/mosaik-elements-foundation 0.0.216 → 0.0.218
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +101 -0
- package/Controls/Components/Abstracts/CustomElement.d.ts +38 -1
- package/Controls/Components/Abstracts/CustomElement.d.ts.map +1 -1
- package/Controls/Components/Abstracts/CustomElement.js +35 -6
- package/Controls/Components/Abstracts/CustomElement.js.map +1 -1
- package/Controls/Components/Buttons/Anchor/AnchorElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Buttons/Anchor/AnchorElementTemplate.js +1 -0
- package/Controls/Components/Buttons/Anchor/AnchorElementTemplate.js.map +1 -1
- package/Controls/Components/Buttons/Button/ButtonElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Buttons/Button/ButtonElementTemplate.js +2 -1
- package/Controls/Components/Buttons/Button/ButtonElementTemplate.js.map +1 -1
- package/Controls/Components/Cells/CellElement.d.ts +1 -1
- package/Controls/Components/Cells/CellElement.js +1 -1
- package/Controls/Components/Grouping/Toolbar/ToolbarElement.d.ts +2 -2
- package/Controls/Components/Grouping/Toolbar/ToolbarElement.js +2 -2
- package/Controls/Components/Inputs/AutoCompleteBox/AutoCompleteBoxElement.d.ts +0 -6
- package/Controls/Components/Inputs/AutoCompleteBox/AutoCompleteBoxElement.d.ts.map +1 -1
- package/Controls/Components/Inputs/AutoCompleteBox/AutoCompleteBoxItemRenderer.d.ts +9 -0
- package/Controls/Components/Inputs/AutoCompleteBox/AutoCompleteBoxItemRenderer.d.ts.map +1 -0
- package/Controls/Components/Inputs/AutoCompleteBox/AutoCompleteBoxItemRenderer.js +3 -0
- package/Controls/Components/Inputs/AutoCompleteBox/AutoCompleteBoxItemRenderer.js.map +1 -0
- package/Controls/Components/Inputs/AutoCompleteBox/IAutoCompleteBoxElementProps.d.ts +1 -8
- package/Controls/Components/Inputs/AutoCompleteBox/IAutoCompleteBoxElementProps.d.ts.map +1 -1
- package/Controls/Components/Inputs/CheckBox/CheckBoxElement.d.ts +0 -1
- package/Controls/Components/Inputs/CheckBox/CheckBoxElement.d.ts.map +1 -1
- package/Controls/Components/Inputs/CheckBox/CheckBoxElement.js +0 -1
- package/Controls/Components/Inputs/CheckBox/CheckBoxElement.js.map +1 -1
- package/Controls/Components/Inputs/Radio/RadioElement.d.ts +0 -1
- package/Controls/Components/Inputs/Radio/RadioElement.d.ts.map +1 -1
- package/Controls/Components/Inputs/Radio/RadioElement.js +0 -1
- package/Controls/Components/Inputs/Radio/RadioElement.js.map +1 -1
- package/Controls/Components/Inputs/Select/SelectItemElement.d.ts +1 -0
- package/Controls/Components/Inputs/Select/SelectItemElement.d.ts.map +1 -1
- package/Controls/Components/Inputs/Select/SelectItemElement.js +7 -1
- package/Controls/Components/Inputs/Select/SelectItemElement.js.map +1 -1
- package/Controls/Components/Layouts/Page/PageContentElement.d.ts.map +1 -1
- package/Controls/Components/Layouts/Page/PageElement.d.ts.map +1 -1
- package/Controls/Components/Layouts/Page/PageHeaderElement.d.ts.map +1 -1
- package/Controls/Components/Layouts/Page/PagePreContentElement.d.ts.map +1 -1
- package/Controls/Components/Layouts/Page/PagePreHeaderElement.d.ts.map +1 -1
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeCancelEventDetail.d.ts +18 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeCancelEventDetail.d.ts.map +1 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeCancelEventDetail.js +3 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeCancelEventDetail.js.map +1 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeEndEventDetail.d.ts +18 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeEndEventDetail.d.ts.map +1 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeEndEventDetail.js +3 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeEndEventDetail.js.map +1 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeEventDetail.d.ts +18 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeEventDetail.d.ts.map +1 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeEventDetail.js +3 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeEventDetail.js.map +1 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeStartEventDetail.d.ts +18 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeStartEventDetail.d.ts.map +1 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeStartEventDetail.js +3 -0
- package/Controls/Components/Layouts/Resize/Events/IResizeResizeStartEventDetail.js.map +1 -0
- package/Controls/Components/Layouts/Resize/IResizeElementProps.d.ts +13 -0
- package/Controls/Components/Layouts/Resize/IResizeElementProps.d.ts.map +1 -0
- package/Controls/Components/Layouts/Resize/IResizeElementProps.js +3 -0
- package/Controls/Components/Layouts/Resize/IResizeElementProps.js.map +1 -0
- package/Controls/Components/Layouts/Resize/ResizeElement.d.ts +148 -0
- package/Controls/Components/Layouts/Resize/ResizeElement.d.ts.map +1 -0
- package/Controls/Components/Layouts/Resize/ResizeElement.js +299 -0
- package/Controls/Components/Layouts/Resize/ResizeElement.js.map +1 -0
- package/Controls/Components/Layouts/Resize/ResizeElementTemplate.d.ts +9 -0
- package/Controls/Components/Layouts/Resize/ResizeElementTemplate.d.ts.map +1 -0
- package/Controls/Components/Layouts/Resize/ResizeElementTemplate.js +56 -0
- package/Controls/Components/Layouts/Resize/ResizeElementTemplate.js.map +1 -0
- package/Controls/Components/Layouts/Resize/Themes/ResizeElement.Joy.d.ts +6 -0
- package/Controls/Components/Layouts/Resize/Themes/ResizeElement.Joy.d.ts.map +1 -0
- package/Controls/Components/Layouts/Resize/Themes/ResizeElement.Joy.js +118 -0
- package/Controls/Components/Layouts/Resize/Themes/ResizeElement.Joy.js.map +1 -0
- package/Controls/Components/Layouts/Split/SplitElement.d.ts +19 -19
- package/Controls/Components/Layouts/Split/SplitElement.d.ts.map +1 -1
- package/Controls/Components/Layouts/Split/SplitElement.js +45 -45
- package/Controls/Components/Layouts/Split/SplitElement.js.map +1 -1
- package/Controls/Components/Layouts/Split/SplitElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Layouts/Split/SplitElementTemplate.js +6 -7
- package/Controls/Components/Layouts/Split/SplitElementTemplate.js.map +1 -1
- package/Controls/Components/Layouts/Split/Themes/SplitElement.Cosmopolitan.d.ts.map +1 -1
- package/Controls/Components/Layouts/Split/Themes/SplitElement.Cosmopolitan.js +6 -13
- package/Controls/Components/Layouts/Split/Themes/SplitElement.Cosmopolitan.js.map +1 -1
- package/Controls/Components/Layouts/Split/Themes/SplitElement.Joy.d.ts.map +1 -1
- package/Controls/Components/Layouts/Split/Themes/SplitElement.Joy.js +6 -18
- package/Controls/Components/Layouts/Split/Themes/SplitElement.Joy.js.map +1 -1
- package/Controls/Components/Layouts/Split/Themes/SplitElement.Memphis.d.ts.map +1 -1
- package/Controls/Components/Layouts/Split/Themes/SplitElement.Memphis.js +6 -13
- package/Controls/Components/Layouts/Split/Themes/SplitElement.Memphis.js.map +1 -1
- package/Controls/Components/Layouts/Stack/StackElement.d.ts +4 -4
- package/Controls/Components/Layouts/Stack/StackElement.js +4 -4
- package/Controls/Components/Layouts/TileList/Themes/TileListItemElement.Cosmopolitan.d.ts.map +1 -1
- package/Controls/Components/Layouts/TileList/Themes/TileListItemElement.Cosmopolitan.js +12 -0
- package/Controls/Components/Layouts/TileList/Themes/TileListItemElement.Cosmopolitan.js.map +1 -1
- package/Controls/Components/Layouts/TileList/Themes/TileListItemElement.Joy.d.ts.map +1 -1
- package/Controls/Components/Layouts/TileList/Themes/TileListItemElement.Joy.js +12 -0
- package/Controls/Components/Layouts/TileList/Themes/TileListItemElement.Joy.js.map +1 -1
- package/Controls/Components/Layouts/TileList/Themes/TileListItemElement.Memphis.d.ts.map +1 -1
- package/Controls/Components/Layouts/TileList/Themes/TileListItemElement.Memphis.js +12 -0
- package/Controls/Components/Layouts/TileList/Themes/TileListItemElement.Memphis.js.map +1 -1
- package/Controls/Components/Layouts/TileList/TileListElement.d.ts +5 -5
- package/Controls/Components/Layouts/TileList/TileListElement.d.ts.map +1 -1
- package/Controls/Components/Layouts/TileList/TileListElement.js +11 -11
- package/Controls/Components/Layouts/TileList/TileListElement.js.map +1 -1
- package/Controls/Components/Layouts/TileList/TileListItemElement.d.ts +21 -5
- package/Controls/Components/Layouts/TileList/TileListItemElement.d.ts.map +1 -1
- package/Controls/Components/Layouts/TileList/TileListItemElement.js +32 -13
- package/Controls/Components/Layouts/TileList/TileListItemElement.js.map +1 -1
- package/Controls/Components/Layouts/TileList/TileListItemElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Layouts/TileList/TileListItemElementTemplate.js +39 -6
- package/Controls/Components/Layouts/TileList/TileListItemElementTemplate.js.map +1 -1
- package/Controls/Components/Layouts/TileManager/Events/LayoutChangeEvent.d.ts +31 -0
- package/Controls/Components/Layouts/TileManager/Events/LayoutChangeEvent.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/LayoutChangeEvent.js +3 -0
- package/Controls/Components/Layouts/TileManager/Events/LayoutChangeEvent.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragCancelEvent.d.ts +34 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragCancelEvent.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragCancelEvent.js +3 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragCancelEvent.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragEndEvent.d.ts +34 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragEndEvent.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragEndEvent.js +3 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragEndEvent.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragStartEvent.d.ts +34 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragStartEvent.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragStartEvent.js +3 -0
- package/Controls/Components/Layouts/TileManager/Events/TileDragStartEvent.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileFullscreenEvent.d.ts +34 -0
- package/Controls/Components/Layouts/TileManager/Events/TileFullscreenEvent.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileFullscreenEvent.js +3 -0
- package/Controls/Components/Layouts/TileManager/Events/TileFullscreenEvent.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileMaximizeEvent.d.ts +34 -0
- package/Controls/Components/Layouts/TileManager/Events/TileMaximizeEvent.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileMaximizeEvent.js +3 -0
- package/Controls/Components/Layouts/TileManager/Events/TileMaximizeEvent.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeCancelEvent.d.ts +38 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeCancelEvent.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeCancelEvent.js +3 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeCancelEvent.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeEndEvent.d.ts +38 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeEndEvent.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeEndEvent.js +3 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeEndEvent.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeStartEvent.d.ts +38 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeStartEvent.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeStartEvent.js +3 -0
- package/Controls/Components/Layouts/TileManager/Events/TileResizeStartEvent.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/IResizeProps.d.ts +14 -0
- package/Controls/Components/Layouts/TileManager/IResizeProps.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/IResizeProps.js +2 -0
- package/Controls/Components/Layouts/TileManager/IResizeProps.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/IResizeSpanProps.d.ts +15 -0
- package/Controls/Components/Layouts/TileManager/IResizeSpanProps.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/IResizeSpanProps.js +3 -0
- package/Controls/Components/Layouts/TileManager/IResizeSpanProps.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/ISerializedLayout.d.ts +10 -0
- package/Controls/Components/Layouts/TileManager/ISerializedLayout.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/ISerializedLayout.js +3 -0
- package/Controls/Components/Layouts/TileManager/ISerializedLayout.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/ISerializedTile.d.ts +14 -0
- package/Controls/Components/Layouts/TileManager/ISerializedTile.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/ISerializedTile.js +2 -0
- package/Controls/Components/Layouts/TileManager/ISerializedTile.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/ISnappedDimension.d.ts +10 -0
- package/Controls/Components/Layouts/TileManager/ISnappedDimension.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/ISnappedDimension.js +2 -0
- package/Controls/Components/Layouts/TileManager/ISnappedDimension.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileGridDimension.d.ts +11 -0
- package/Controls/Components/Layouts/TileManager/ITileGridDimension.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileGridDimension.js +2 -0
- package/Controls/Components/Layouts/TileManager/ITileGridDimension.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileGridPosition.d.ts +11 -0
- package/Controls/Components/Layouts/TileManager/ITileGridPosition.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileGridPosition.js +3 -0
- package/Controls/Components/Layouts/TileManager/ITileGridPosition.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileManagerElementProps.d.ts +41 -0
- package/Controls/Components/Layouts/TileManager/ITileManagerElementProps.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileManagerElementProps.js +3 -0
- package/Controls/Components/Layouts/TileManager/ITileManagerElementProps.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileManagerTileElementProps.d.ts +46 -0
- package/Controls/Components/Layouts/TileManager/ITileManagerTileElementProps.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileManagerTileElementProps.js +2 -0
- package/Controls/Components/Layouts/TileManager/ITileManagerTileElementProps.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITilePosition.d.ts +10 -0
- package/Controls/Components/Layouts/TileManager/ITilePosition.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITilePosition.js +2 -0
- package/Controls/Components/Layouts/TileManager/ITilePosition.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileResizeDimensions.d.ts +10 -0
- package/Controls/Components/Layouts/TileManager/ITileResizeDimensions.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/ITileResizeDimensions.js +2 -0
- package/Controls/Components/Layouts/TileManager/ITileResizeDimensions.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Index.d.ts +28 -0
- package/Controls/Components/Layouts/TileManager/Index.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Index.js +8 -0
- package/Controls/Components/Layouts/TileManager/Index.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Cosmopolitan.d.ts +6 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Cosmopolitan.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Cosmopolitan.js +134 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Cosmopolitan.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Joy.d.ts +6 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Joy.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Joy.js +134 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Joy.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Memphis.d.ts +6 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Memphis.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Memphis.js +134 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerElement.Memphis.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Cosmopolitan.d.ts +6 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Cosmopolitan.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Cosmopolitan.js +292 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Cosmopolitan.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Joy.d.ts +6 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Joy.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Joy.js +292 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Joy.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Memphis.d.ts +6 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Memphis.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Memphis.js +292 -0
- package/Controls/Components/Layouts/TileManager/Themes/TileManagerTileElement.Memphis.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerElement.d.ts +195 -0
- package/Controls/Components/Layouts/TileManager/TileManagerElement.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerElement.js +332 -0
- package/Controls/Components/Layouts/TileManager/TileManagerElement.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerElementTemplate.d.ts +12 -0
- package/Controls/Components/Layouts/TileManager/TileManagerElementTemplate.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerElementTemplate.js +57 -0
- package/Controls/Components/Layouts/TileManager/TileManagerElementTemplate.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerGhostUtil.d.ts +47 -0
- package/Controls/Components/Layouts/TileManager/TileManagerGhostUtil.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerGhostUtil.js +165 -0
- package/Controls/Components/Layouts/TileManager/TileManagerGhostUtil.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerPosition.d.ts +143 -0
- package/Controls/Components/Layouts/TileManager/TileManagerPosition.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerPosition.js +294 -0
- package/Controls/Components/Layouts/TileManager/TileManagerPosition.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerResizeState.d.ts +130 -0
- package/Controls/Components/Layouts/TileManager/TileManagerResizeState.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerResizeState.js +332 -0
- package/Controls/Components/Layouts/TileManager/TileManagerResizeState.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerResizeUtil.d.ts +55 -0
- package/Controls/Components/Layouts/TileManager/TileManagerResizeUtil.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerResizeUtil.js +151 -0
- package/Controls/Components/Layouts/TileManager/TileManagerResizeUtil.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerSerializer.d.ts +45 -0
- package/Controls/Components/Layouts/TileManager/TileManagerSerializer.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerSerializer.js +81 -0
- package/Controls/Components/Layouts/TileManager/TileManagerSerializer.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerTileElement.d.ts +585 -0
- package/Controls/Components/Layouts/TileManager/TileManagerTileElement.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerTileElement.js +1341 -0
- package/Controls/Components/Layouts/TileManager/TileManagerTileElement.js.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerTileElementTemplate.d.ts +12 -0
- package/Controls/Components/Layouts/TileManager/TileManagerTileElementTemplate.d.ts.map +1 -0
- package/Controls/Components/Layouts/TileManager/TileManagerTileElementTemplate.js +102 -0
- package/Controls/Components/Layouts/TileManager/TileManagerTileElementTemplate.js.map +1 -0
- package/Controls/Components/Media/Badge/BadgeElement.d.ts +4 -36
- package/Controls/Components/Media/Badge/BadgeElement.d.ts.map +1 -1
- package/Controls/Components/Media/Badge/BadgeElement.js +18 -46
- package/Controls/Components/Media/Badge/BadgeElement.js.map +1 -1
- package/Controls/Components/Media/Badge/BadgeElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Media/Badge/BadgeElementTemplate.js +10 -16
- package/Controls/Components/Media/Badge/BadgeElementTemplate.js.map +1 -1
- package/Controls/Components/Media/Badge/IBadgeElementProps.d.ts +10 -1
- package/Controls/Components/Media/Badge/IBadgeElementProps.d.ts.map +1 -1
- package/Controls/Components/Media/Badge/Themes/BadgeElement.Cosmopolitan.d.ts.map +1 -1
- package/Controls/Components/Media/Badge/Themes/BadgeElement.Cosmopolitan.js +101 -34
- package/Controls/Components/Media/Badge/Themes/BadgeElement.Cosmopolitan.js.map +1 -1
- package/Controls/Components/Media/Badge/Themes/BadgeElement.Joy.d.ts.map +1 -1
- package/Controls/Components/Media/Badge/Themes/BadgeElement.Joy.js +308 -115
- package/Controls/Components/Media/Badge/Themes/BadgeElement.Joy.js.map +1 -1
- package/Controls/Components/Media/Badge/Themes/BadgeElement.Memphis.d.ts.map +1 -1
- package/Controls/Components/Media/Badge/Themes/BadgeElement.Memphis.js +290 -60
- package/Controls/Components/Media/Badge/Themes/BadgeElement.Memphis.js.map +1 -1
- package/Controls/Components/Media/Chat/Events/IChatAttachmentRejectEvent.d.ts +1 -1
- package/Controls/Components/Media/Chat/Events/IChatAttachmentRejectEvent.d.ts.map +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecCancelEvent.d.ts +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecCancelEvent.d.ts.map +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecPauseEvent.d.ts +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecPauseEvent.d.ts.map +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecResumeEvent.d.ts +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecResumeEvent.d.ts.map +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecStartEvent.d.ts +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecStartEvent.d.ts.map +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecStopEvent.d.ts +1 -1
- package/Controls/Components/Media/Chat/Tools/Events/IRecorderRecStopEvent.d.ts.map +1 -1
- package/Controls/Components/Media/Icon/IconElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Media/Icon/IconElementTemplate.js +1 -3
- package/Controls/Components/Media/Icon/IconElementTemplate.js.map +1 -1
- package/Controls/Components/Primitives/Divider/DividerElement.d.ts.map +1 -1
- package/Controls/Components/Primitives/Portal/PortalElement.d.ts.map +1 -1
- package/Controls/Components/Primitives/Portal/PortalElement.js +1 -0
- package/Controls/Components/Primitives/Portal/PortalElement.js.map +1 -1
- package/Controls/Components/Primitives/ResizeThumb/IResizeThumbElementProps.d.ts +1 -1
- package/Controls/Components/Primitives/ResizeThumb/IResizeThumbElementProps.d.ts.map +1 -1
- package/Controls/Components/Primitives/ResizeThumb/ResizeThumbElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Primitives/ResizeThumb/ResizeThumbElementTemplate.js +27 -1
- package/Controls/Components/Primitives/ResizeThumb/ResizeThumbElementTemplate.js.map +1 -1
- package/Controls/Components/Primitives/ResizeThumb/Themes/ResizeThumbElement.Cosmopolitan.d.ts.map +1 -1
- package/Controls/Components/Primitives/ResizeThumb/Themes/ResizeThumbElement.Cosmopolitan.js +23 -12
- package/Controls/Components/Primitives/ResizeThumb/Themes/ResizeThumbElement.Cosmopolitan.js.map +1 -1
- package/Controls/Components/Primitives/ResizeThumb/Themes/ResizeThumbElement.Joy.d.ts.map +1 -1
- package/Controls/Components/Primitives/ResizeThumb/Themes/ResizeThumbElement.Joy.js +23 -100
- package/Controls/Components/Primitives/ResizeThumb/Themes/ResizeThumbElement.Joy.js.map +1 -1
- package/Controls/Components/Primitives/ResizeThumb/Themes/ResizeThumbElement.Memphis.d.ts.map +1 -1
- package/Controls/Components/Primitives/ResizeThumb/Themes/ResizeThumbElement.Memphis.js +23 -12
- package/Controls/Components/Primitives/ResizeThumb/Themes/ResizeThumbElement.Memphis.js.map +1 -1
- package/Controls/Components/Primitives/Summary/SummaryElement.d.ts +2 -1
- package/Controls/Components/Primitives/Summary/SummaryElement.d.ts.map +1 -1
- package/Controls/Components/Primitives/Summary/SummaryElement.js +2 -1
- package/Controls/Components/Primitives/Summary/SummaryElement.js.map +1 -1
- package/Controls/Components/Primitives/Summary/SummaryElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Primitives/Summary/SummaryElementTemplate.js +6 -9
- package/Controls/Components/Primitives/Summary/SummaryElementTemplate.js.map +1 -1
- package/Controls/Components/Primitives/Summary/Themes/SummaryElement.Cosmopolitan.d.ts.map +1 -1
- package/Controls/Components/Primitives/Summary/Themes/SummaryElement.Cosmopolitan.js +12 -1
- package/Controls/Components/Primitives/Summary/Themes/SummaryElement.Cosmopolitan.js.map +1 -1
- package/Controls/Components/Primitives/Summary/Themes/SummaryElement.Joy.d.ts.map +1 -1
- package/Controls/Components/Primitives/Summary/Themes/SummaryElement.Joy.js +12 -1
- package/Controls/Components/Primitives/Summary/Themes/SummaryElement.Joy.js.map +1 -1
- package/Controls/Components/Primitives/Summary/Themes/SummaryElement.Memphis.d.ts.map +1 -1
- package/Controls/Components/Primitives/Summary/Themes/SummaryElement.Memphis.js +12 -1
- package/Controls/Components/Primitives/Summary/Themes/SummaryElement.Memphis.js.map +1 -1
- package/Controls/Components/Primitives/Text/TextElement.d.ts.map +1 -1
- package/Controls/Components/Primitives/Text/TextElement.js +10 -1
- package/Controls/Components/Primitives/Text/TextElement.js.map +1 -1
- package/Controls/Components/Primitives/Text/Themes/TextElement.Joy.js +5 -5
- package/Controls/Components/Primitives/ghost/GhostElement.d.ts +58 -0
- package/Controls/Components/Primitives/ghost/GhostElement.d.ts.map +1 -0
- package/Controls/Components/Primitives/ghost/GhostElement.js +119 -0
- package/Controls/Components/Primitives/ghost/GhostElement.js.map +1 -0
- package/Controls/Components/Primitives/ghost/GhostElementTemplate.d.ts +9 -0
- package/Controls/Components/Primitives/ghost/GhostElementTemplate.d.ts.map +1 -0
- package/Controls/Components/Primitives/ghost/GhostElementTemplate.js +24 -0
- package/Controls/Components/Primitives/ghost/GhostElementTemplate.js.map +1 -0
- package/Controls/Components/Primitives/ghost/IGhostElementProps.d.ts +12 -0
- package/Controls/Components/Primitives/ghost/IGhostElementProps.d.ts.map +1 -0
- package/Controls/Components/Primitives/ghost/IGhostElementProps.js +3 -0
- package/Controls/Components/Primitives/ghost/IGhostElementProps.js.map +1 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Cosmopolitan.d.ts +6 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Cosmopolitan.d.ts.map +1 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Cosmopolitan.js +86 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Cosmopolitan.js.map +1 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Joy.d.ts +6 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Joy.d.ts.map +1 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Joy.js +86 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Joy.js.map +1 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Memphis.d.ts +6 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Memphis.d.ts.map +1 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Memphis.js +86 -0
- package/Controls/Components/Primitives/ghost/themes/GhostElement.Memphis.js.map +1 -0
- package/Controls/Components/Primitives/thumb/IThumbElementProps.d.ts +11 -0
- package/Controls/Components/Primitives/thumb/IThumbElementProps.d.ts.map +1 -0
- package/Controls/Components/Primitives/thumb/IThumbElementProps.js +3 -0
- package/Controls/Components/Primitives/thumb/IThumbElementProps.js.map +1 -0
- package/Controls/Components/Primitives/thumb/ThumbElement.d.ts +49 -0
- package/Controls/Components/Primitives/thumb/ThumbElement.d.ts.map +1 -0
- package/Controls/Components/Primitives/thumb/ThumbElement.js +87 -0
- package/Controls/Components/Primitives/thumb/ThumbElement.js.map +1 -0
- package/Controls/Components/Primitives/thumb/ThumbElementTemplate.d.ts +9 -0
- package/Controls/Components/Primitives/thumb/ThumbElementTemplate.d.ts.map +1 -0
- package/Controls/Components/Primitives/thumb/ThumbElementTemplate.js +14 -0
- package/Controls/Components/Primitives/thumb/ThumbElementTemplate.js.map +1 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Cosmopolitan.d.ts +6 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Cosmopolitan.d.ts.map +1 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Cosmopolitan.js +127 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Cosmopolitan.js.map +1 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Joy.d.ts +6 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Joy.d.ts.map +1 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Joy.js +144 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Joy.js.map +1 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Memphis.d.ts +6 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Memphis.d.ts.map +1 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Memphis.js +127 -0
- package/Controls/Components/Primitives/thumb/themes/ThumbElement.Memphis.js.map +1 -0
- package/Controls/Components/Ranges/MeterBar/IMeterBarElementProps.d.ts +2 -0
- package/Controls/Components/Ranges/MeterBar/IMeterBarElementProps.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterBar/MeterBarElement.d.ts +43 -0
- package/Controls/Components/Ranges/MeterBar/MeterBarElement.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterBar/MeterBarElement.js +81 -3
- package/Controls/Components/Ranges/MeterBar/MeterBarElement.js.map +1 -1
- package/Controls/Components/Ranges/MeterBar/MeterBarElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterBar/MeterBarElementTemplate.js +19 -5
- package/Controls/Components/Ranges/MeterBar/MeterBarElementTemplate.js.map +1 -1
- package/Controls/Components/Ranges/MeterBar/Themes/MeterBarElement.Cosmopolitan.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterBar/Themes/MeterBarElement.Cosmopolitan.js +50 -0
- package/Controls/Components/Ranges/MeterBar/Themes/MeterBarElement.Cosmopolitan.js.map +1 -1
- package/Controls/Components/Ranges/MeterBar/Themes/MeterBarElement.Joy.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterBar/Themes/MeterBarElement.Joy.js +55 -1
- package/Controls/Components/Ranges/MeterBar/Themes/MeterBarElement.Joy.js.map +1 -1
- package/Controls/Components/Ranges/MeterBar/Themes/MeterBarElement.Memphis.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterBar/Themes/MeterBarElement.Memphis.js +50 -0
- package/Controls/Components/Ranges/MeterBar/Themes/MeterBarElement.Memphis.js.map +1 -1
- package/Controls/Components/Ranges/MeterRing/IMeterRingElementProps.d.ts +2 -0
- package/Controls/Components/Ranges/MeterRing/IMeterRingElementProps.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterRing/MeterRingElement.d.ts +119 -6
- package/Controls/Components/Ranges/MeterRing/MeterRingElement.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterRing/MeterRingElement.js +174 -19
- package/Controls/Components/Ranges/MeterRing/MeterRingElement.js.map +1 -1
- package/Controls/Components/Ranges/MeterRing/MeterRingElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterRing/MeterRingElementTemplate.js +31 -16
- package/Controls/Components/Ranges/MeterRing/MeterRingElementTemplate.js.map +1 -1
- package/Controls/Components/Ranges/MeterRing/Themes/MeterRingElement.Cosmopolitan.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterRing/Themes/MeterRingElement.Cosmopolitan.js +87 -3
- package/Controls/Components/Ranges/MeterRing/Themes/MeterRingElement.Cosmopolitan.js.map +1 -1
- package/Controls/Components/Ranges/MeterRing/Themes/MeterRingElement.Joy.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterRing/Themes/MeterRingElement.Joy.js +82 -22
- package/Controls/Components/Ranges/MeterRing/Themes/MeterRingElement.Joy.js.map +1 -1
- package/Controls/Components/Ranges/MeterRing/Themes/MeterRingElement.Memphis.d.ts.map +1 -1
- package/Controls/Components/Ranges/MeterRing/Themes/MeterRingElement.Memphis.js +102 -18
- package/Controls/Components/Ranges/MeterRing/Themes/MeterRingElement.Memphis.js.map +1 -1
- package/Controls/Components/Ranges/ProgressBar/Themes/ProgressBarElement.Cosmopolitan.d.ts.map +1 -1
- package/Controls/Components/Ranges/ProgressBar/Themes/ProgressBarElement.Cosmopolitan.js +44 -20
- package/Controls/Components/Ranges/ProgressBar/Themes/ProgressBarElement.Cosmopolitan.js.map +1 -1
- package/Controls/Components/Ranges/ProgressBar/Themes/ProgressBarElement.Joy.d.ts.map +1 -1
- package/Controls/Components/Ranges/ProgressBar/Themes/ProgressBarElement.Joy.js +33 -31
- package/Controls/Components/Ranges/ProgressBar/Themes/ProgressBarElement.Joy.js.map +1 -1
- package/Controls/Components/Ranges/ProgressBar/Themes/ProgressBarElement.Memphis.d.ts.map +1 -1
- package/Controls/Components/Ranges/ProgressBar/Themes/ProgressBarElement.Memphis.js +68 -20
- package/Controls/Components/Ranges/ProgressBar/Themes/ProgressBarElement.Memphis.js.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/ProgressRingElement.d.ts +1 -2
- package/Controls/Components/Ranges/ProgressRing/ProgressRingElement.d.ts.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/ProgressRingElement.js +1 -2
- package/Controls/Components/Ranges/ProgressRing/ProgressRingElement.js.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/ProgressRingElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/ProgressRingElementTemplate.js +4 -5
- package/Controls/Components/Ranges/ProgressRing/ProgressRingElementTemplate.js.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/Themes/ProgressRingElement.Cosmopolitan.d.ts.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/Themes/ProgressRingElement.Cosmopolitan.js +31 -21
- package/Controls/Components/Ranges/ProgressRing/Themes/ProgressRingElement.Cosmopolitan.js.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/Themes/ProgressRingElement.Joy.d.ts.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/Themes/ProgressRingElement.Joy.js +51 -41
- package/Controls/Components/Ranges/ProgressRing/Themes/ProgressRingElement.Joy.js.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/Themes/ProgressRingElement.Memphis.d.ts.map +1 -1
- package/Controls/Components/Ranges/ProgressRing/Themes/ProgressRingElement.Memphis.js +31 -21
- package/Controls/Components/Ranges/ProgressRing/Themes/ProgressRingElement.Memphis.js.map +1 -1
- package/Controls/Components/Selectors/Combo/ComboElement.d.ts +9 -0
- package/Controls/Components/Selectors/Combo/ComboElement.d.ts.map +1 -1
- package/Controls/Components/Selectors/Combo/ComboElement.js +84 -14
- package/Controls/Components/Selectors/Combo/ComboElement.js.map +1 -1
- package/Controls/Components/Selectors/Combo/ComboItemElement.d.ts +1 -0
- package/Controls/Components/Selectors/Combo/ComboItemElement.d.ts.map +1 -1
- package/Controls/Components/Selectors/Combo/ComboItemElement.js +7 -1
- package/Controls/Components/Selectors/Combo/ComboItemElement.js.map +1 -1
- package/Controls/Components/Selectors/Combo/ComboItemElementTemplate.d.ts.map +1 -1
- package/Controls/Components/Selectors/Combo/ComboItemElementTemplate.js +2 -1
- package/Controls/Components/Selectors/Combo/ComboItemElementTemplate.js.map +1 -1
- package/Controls/Components/Shell/AppElement.d.ts +2 -2
- package/Controls/Components/Shell/AppElement.js +2 -2
- package/Controls/Controllers/AutoCompleteController.d.ts +10 -0
- package/Controls/Controllers/AutoCompleteController.d.ts.map +1 -1
- package/Controls/Controllers/AutoCompleteController.js +12 -0
- package/Controls/Controllers/AutoCompleteController.js.map +1 -1
- package/Controls/Controllers/DragController.d.ts +433 -0
- package/Controls/Controllers/DragController.d.ts.map +1 -0
- package/Controls/Controllers/DragController.js +605 -0
- package/Controls/Controllers/DragController.js.map +1 -0
- package/Controls/Controllers/DragResizeController.d.ts +419 -0
- package/Controls/Controllers/DragResizeController.d.ts.map +1 -0
- package/Controls/Controllers/DragResizeController.js +557 -0
- package/Controls/Controllers/DragResizeController.js.map +1 -0
- package/Controls/Controllers/ResizeContainerController.d.ts +88 -0
- package/Controls/Controllers/ResizeContainerController.d.ts.map +1 -0
- package/Controls/Controllers/ResizeContainerController.js +263 -0
- package/Controls/Controllers/ResizeContainerController.js.map +1 -0
- package/Controls/Directives/Directives.d.ts +2 -1
- package/Controls/Directives/Directives.d.ts.map +1 -1
- package/Controls/Directives/Directives.js.map +1 -1
- package/Controls/Directives/part-map/PartMapDirective.d.ts +15 -0
- package/Controls/Directives/part-map/PartMapDirective.d.ts.map +1 -0
- package/Controls/Directives/part-map/PartMapDirective.js +49 -0
- package/Controls/Directives/part-map/PartMapDirective.js.map +1 -0
- package/Controls/Types/ContainerResizeMode.d.ts +22 -0
- package/Controls/Types/ContainerResizeMode.d.ts.map +1 -0
- package/Controls/Types/ContainerResizeMode.js +19 -0
- package/Controls/Types/ContainerResizeMode.js.map +1 -0
- package/Controls/Types/MeterScale.d.ts +25 -0
- package/Controls/Types/MeterScale.d.ts.map +1 -0
- package/Controls/Types/MeterScale.js +22 -0
- package/Controls/Types/MeterScale.js.map +1 -0
- package/Controls/Types/ThumbEdge.d.ts +23 -0
- package/Controls/Types/ThumbEdge.d.ts.map +1 -0
- package/Controls/Types/ThumbEdge.js +20 -0
- package/Controls/Types/ThumbEdge.js.map +1 -0
- package/Controls/Types/TileManagerDragMode.d.ts +26 -0
- package/Controls/Types/TileManagerDragMode.d.ts.map +1 -0
- package/Controls/Types/TileManagerDragMode.js +23 -0
- package/Controls/Types/TileManagerDragMode.js.map +1 -0
- package/Controls/Types/TileManagerResizeMode.d.ts +26 -0
- package/Controls/Types/TileManagerResizeMode.d.ts.map +1 -0
- package/Controls/Types/TileManagerResizeMode.js +23 -0
- package/Controls/Types/TileManagerResizeMode.js.map +1 -0
- package/Dom/AbortHandle.d.ts +31 -0
- package/Dom/AbortHandle.d.ts.map +1 -0
- package/Dom/AbortHandle.js +50 -0
- package/Dom/AbortHandle.js.map +1 -0
- package/Index.d.ts +19 -3
- package/Index.d.ts.map +1 -1
- package/Index.js +13 -0
- package/Index.js.map +1 -1
- package/custom-elements.json +20665 -16228
- package/package.json +3 -3
- package/Controls/Components/Inputs/AutoCompleteBox/Providers/GoogleFontsProvider.d.ts +0 -131
- package/Controls/Components/Inputs/AutoCompleteBox/Providers/GoogleFontsProvider.d.ts.map +0 -1
- package/Controls/Components/Inputs/AutoCompleteBox/Providers/GoogleFontsProvider.js +0 -353
- package/Controls/Components/Inputs/AutoCompleteBox/Providers/GoogleFontsProvider.js.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/BottomSheetElement.d.ts +0 -139
- package/Controls/Components/Overlays/BottomSheet/BottomSheetElement.d.ts.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/BottomSheetElement.js +0 -344
- package/Controls/Components/Overlays/BottomSheet/BottomSheetElement.js.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/BottomSheetElementTemplate.d.ts +0 -9
- package/Controls/Components/Overlays/BottomSheet/BottomSheetElementTemplate.d.ts.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/BottomSheetElementTemplate.js +0 -53
- package/Controls/Components/Overlays/BottomSheet/BottomSheetElementTemplate.js.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/BottomSheetService.d.ts +0 -134
- package/Controls/Components/Overlays/BottomSheet/BottomSheetService.d.ts.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/BottomSheetService.js +0 -250
- package/Controls/Components/Overlays/BottomSheet/BottomSheetService.js.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/IBottomSheetElementProps.d.ts +0 -28
- package/Controls/Components/Overlays/BottomSheet/IBottomSheetElementProps.d.ts.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/IBottomSheetElementProps.js +0 -3
- package/Controls/Components/Overlays/BottomSheet/IBottomSheetElementProps.js.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/IBottomSheetServiceConfig.d.ts +0 -30
- package/Controls/Components/Overlays/BottomSheet/IBottomSheetServiceConfig.d.ts.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/IBottomSheetServiceConfig.js +0 -11
- package/Controls/Components/Overlays/BottomSheet/IBottomSheetServiceConfig.js.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Cosmopolitan.d.ts +0 -6
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Cosmopolitan.d.ts.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Cosmopolitan.js +0 -180
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Cosmopolitan.js.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Joy.d.ts +0 -6
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Joy.d.ts.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Joy.js +0 -179
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Joy.js.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Memphis.d.ts +0 -6
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Memphis.d.ts.map +0 -1
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Memphis.js +0 -180
- package/Controls/Components/Overlays/BottomSheet/Themes/BottomSheetElement.Memphis.js.map +0 -1
- package/Controls/Components/Overlays/Dialog/DialogStackBehavior.d.ts +0 -127
- package/Controls/Components/Overlays/Dialog/DialogStackBehavior.d.ts.map +0 -1
- package/Controls/Components/Overlays/Dialog/DialogStackBehavior.js +0 -246
- package/Controls/Components/Overlays/Dialog/DialogStackBehavior.js.map +0 -1
- package/Controls/Components/Overlays/Dialog/IDialogStackConfig.d.ts +0 -80
- package/Controls/Components/Overlays/Dialog/IDialogStackConfig.d.ts.map +0 -1
- package/Controls/Components/Overlays/Dialog/IDialogStackConfig.js +0 -17
- package/Controls/Components/Overlays/Dialog/IDialogStackConfig.js.map +0 -1
- package/Controls/Components/Overlays/Drawer/DrawerStackBehavior.d.ts +0 -136
- package/Controls/Components/Overlays/Drawer/DrawerStackBehavior.d.ts.map +0 -1
- package/Controls/Components/Overlays/Drawer/DrawerStackBehavior.js +0 -298
- package/Controls/Components/Overlays/Drawer/DrawerStackBehavior.js.map +0 -1
- package/Controls/Components/Overlays/Drawer/IDrawerStackConfig.d.ts +0 -73
- package/Controls/Components/Overlays/Drawer/IDrawerStackConfig.d.ts.map +0 -1
- package/Controls/Components/Overlays/Drawer/IDrawerStackConfig.js +0 -16
- package/Controls/Components/Overlays/Drawer/IDrawerStackConfig.js.map +0 -1
- package/Controls/Components/Selectors/Menu/SubMenuMode.d.ts +0 -20
- package/Controls/Components/Selectors/Menu/SubMenuMode.d.ts.map +0 -1
- package/Controls/Components/Selectors/Menu/SubMenuMode.js +0 -18
- package/Controls/Components/Selectors/Menu/SubMenuMode.js.map +0 -1
- package/Theming/ITheme2ElementProps.d.ts +0 -11
- package/Theming/ITheme2ElementProps.d.ts.map +0 -1
- package/Theming/ITheme2ElementProps.js +0 -3
- package/Theming/ITheme2ElementProps.js.map +0 -1
- package/Theming/Theme2.d.ts +0 -143
- package/Theming/Theme2.d.ts.map +0 -1
- package/Theming/Theme2.js +0 -253
- package/Theming/Theme2.js.map +0 -1
|
@@ -0,0 +1,1341 @@
|
|
|
1
|
+
// #region Imports
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var TileManagerTileElement_1;
|
|
12
|
+
import { emit, HTMLElementEventEmitter } from '@breadstone/mosaik-elements';
|
|
13
|
+
import { Attribute } from '../../../Decorators/AttributeDecorator';
|
|
14
|
+
import { Component } from '../../../Decorators/ComponentDecorator';
|
|
15
|
+
import { CustomElement } from '../../Abstracts/CustomElement';
|
|
16
|
+
import { Themeable } from '../../../Behaviors/Themeable';
|
|
17
|
+
import { tileManagerTileElementTemplate } from './TileManagerTileElementTemplate';
|
|
18
|
+
import { tileManagerTileElementJoyStyle } from './Themes/TileManagerTileElement.Joy';
|
|
19
|
+
import { tileManagerTileElementMemphisStyle } from './Themes/TileManagerTileElement.Memphis';
|
|
20
|
+
import { tileManagerTileElementCosmopolitanStyle } from './Themes/TileManagerTileElement.Cosmopolitan';
|
|
21
|
+
import { createTileManagerResizeState } from './TileManagerResizeState';
|
|
22
|
+
import { createTileGhost, createTileDragGhost } from './TileManagerGhostUtil';
|
|
23
|
+
import { addDragController } from '../../../Controllers/DragController';
|
|
24
|
+
import { addDragResizeController } from '../../../Controllers/DragResizeController';
|
|
25
|
+
import { createRef } from 'lit/directives/ref.js';
|
|
26
|
+
import { ButtonElement } from '../../Buttons/Button/ButtonElement';
|
|
27
|
+
import { createTileManagerDragStack, swapTiles } from './TileManagerPosition';
|
|
28
|
+
// #endregion
|
|
29
|
+
let nextTileId = 1;
|
|
30
|
+
/**
|
|
31
|
+
* Finds an element matching a predicate in the event's composed path.
|
|
32
|
+
*
|
|
33
|
+
* @param predicate - The predicate function.
|
|
34
|
+
* @param event - The event.
|
|
35
|
+
* @returns The matching element or undefined.
|
|
36
|
+
*
|
|
37
|
+
* @internal
|
|
38
|
+
*/
|
|
39
|
+
function findElementFromEventPath(predicate, event) {
|
|
40
|
+
const path = event.composedPath();
|
|
41
|
+
for (const element of path) {
|
|
42
|
+
if (element instanceof Element && predicate(element)) {
|
|
43
|
+
return element;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return undefined;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Checks if the element's direction is LTR.
|
|
50
|
+
*
|
|
51
|
+
* @param element - The element to check.
|
|
52
|
+
* @returns True if the element's direction is LTR.
|
|
53
|
+
*
|
|
54
|
+
* @internal
|
|
55
|
+
*/
|
|
56
|
+
function isLTR(element) {
|
|
57
|
+
return getComputedStyle(element).direction !== 'rtl';
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Starts a view transition if supported, otherwise executes callback immediately.
|
|
61
|
+
*
|
|
62
|
+
* @param callback - The callback to execute.
|
|
63
|
+
* @returns The view transition or a promise.
|
|
64
|
+
*
|
|
65
|
+
* @internal
|
|
66
|
+
*/
|
|
67
|
+
function startViewTransition(callback) {
|
|
68
|
+
if ('startViewTransition' in document) {
|
|
69
|
+
const transition = document.startViewTransition(callback);
|
|
70
|
+
return { transition };
|
|
71
|
+
}
|
|
72
|
+
callback();
|
|
73
|
+
return {};
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Dispatches a cancelable custom event.
|
|
77
|
+
*
|
|
78
|
+
* @param target - The event target.
|
|
79
|
+
* @param eventName - The event name.
|
|
80
|
+
* @param detail - The event detail.
|
|
81
|
+
* @returns The dispatched event.
|
|
82
|
+
*
|
|
83
|
+
* @internal
|
|
84
|
+
*/
|
|
85
|
+
function dispatchCancelableEvent(target, eventName, detail) {
|
|
86
|
+
const event = new CustomEvent(eventName, {
|
|
87
|
+
bubbles: true,
|
|
88
|
+
cancelable: true,
|
|
89
|
+
composed: true,
|
|
90
|
+
detail: detail
|
|
91
|
+
});
|
|
92
|
+
target.dispatchEvent(event);
|
|
93
|
+
return event;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* The tile component is used within the `mosaik-tile-manager` as a container
|
|
97
|
+
* for displaying various types of information.
|
|
98
|
+
*
|
|
99
|
+
* @element mosaik-tile-manager-tile
|
|
100
|
+
* @category Layout
|
|
101
|
+
*
|
|
102
|
+
* @fires tileFullscreen - Fired when tile the fullscreen state changes.
|
|
103
|
+
* @fires tileMaximize - Fired when tile the maximize state changes.
|
|
104
|
+
* @fires tileDragStart - Fired when a drag operation on a tile is about to begin.
|
|
105
|
+
* @fires tileDragEnd - Fired when a drag operation with a tile is successfully completed.
|
|
106
|
+
* @fires tileDragCancel - Fired when a tile drag operation is canceled by the user.
|
|
107
|
+
* @fires tileResizeStart - Fired when a resize operation on a tile is about to begin.
|
|
108
|
+
* @fires tileResizeEnd - Fired when a resize operation on a tile is successfully completed.
|
|
109
|
+
* @fires tileResizeCancel - Fired when a resize operation on a tile is canceled by the user.
|
|
110
|
+
*
|
|
111
|
+
* @slot - Default slot for the tile's content.
|
|
112
|
+
* @slot title - Renders the title of the tile header.
|
|
113
|
+
* @slot maximize-action - Renders the maximize action element of the tile header.
|
|
114
|
+
* @slot fullscreen-action - Renders the fullscreen action element of the tile header.
|
|
115
|
+
* @slot actions - Renders items after the default actions in the tile header.
|
|
116
|
+
* @slot side-adorner - Renders the side resize handle of the tile.
|
|
117
|
+
* @slot corner-adorner - Renders the corner resize handle of the tile.
|
|
118
|
+
* @slot bottom-adorner - Renders the bottom resize handle of the tile.
|
|
119
|
+
*
|
|
120
|
+
* @csspart base - The wrapper for the entire tile content, header and content.
|
|
121
|
+
* @csspart header - The container for the tile header, including title and actions.
|
|
122
|
+
* @csspart title - The title container of the tile.
|
|
123
|
+
* @csspart actions - The actions container of the tile header.
|
|
124
|
+
* @csspart content-container - The container wrapping the tile's main content.
|
|
125
|
+
* @csspart trigger-side - The side resize handle.
|
|
126
|
+
* @csspart trigger - The corner resize handle.
|
|
127
|
+
* @csspart trigger-bottom - The bottom resize handle.
|
|
128
|
+
*
|
|
129
|
+
* @public
|
|
130
|
+
*/
|
|
131
|
+
let TileManagerTileElement = TileManagerTileElement_1 = class TileManagerTileElement extends Themeable(CustomElement) {
|
|
132
|
+
// #region Fields
|
|
133
|
+
_colSpan;
|
|
134
|
+
_rowSpan;
|
|
135
|
+
_colStart;
|
|
136
|
+
_rowStart;
|
|
137
|
+
_position;
|
|
138
|
+
_maximized;
|
|
139
|
+
_fullscreen;
|
|
140
|
+
_disableResize;
|
|
141
|
+
_disableFullscreen;
|
|
142
|
+
_disableMaximize;
|
|
143
|
+
_isDragging;
|
|
144
|
+
_resizeStartRect;
|
|
145
|
+
_headerRef;
|
|
146
|
+
_tileContentRef;
|
|
147
|
+
_resizeState;
|
|
148
|
+
_dragStack;
|
|
149
|
+
_dragController;
|
|
150
|
+
_resizeController;
|
|
151
|
+
_tileFullscreen;
|
|
152
|
+
_tileMaximize;
|
|
153
|
+
_tileDragStart;
|
|
154
|
+
_tileDragEnd;
|
|
155
|
+
_tileDragCancel;
|
|
156
|
+
_tileResizeStart;
|
|
157
|
+
_tileResizeEnd;
|
|
158
|
+
_tileResizeCancel;
|
|
159
|
+
// #endregion
|
|
160
|
+
// #region Ctor
|
|
161
|
+
/**
|
|
162
|
+
* Constructs a new instance of the `TileManagerTileElement` class.
|
|
163
|
+
*
|
|
164
|
+
* @public
|
|
165
|
+
*/
|
|
166
|
+
constructor() {
|
|
167
|
+
super();
|
|
168
|
+
this._colSpan = 1;
|
|
169
|
+
this._rowSpan = 1;
|
|
170
|
+
this._colStart = null;
|
|
171
|
+
this._rowStart = null;
|
|
172
|
+
this._position = -1;
|
|
173
|
+
this._maximized = false;
|
|
174
|
+
this._fullscreen = false;
|
|
175
|
+
this._disableResize = false;
|
|
176
|
+
this._disableFullscreen = false;
|
|
177
|
+
this._disableMaximize = false;
|
|
178
|
+
this._isDragging = false;
|
|
179
|
+
this._resizeStartRect = null;
|
|
180
|
+
this._headerRef = createRef();
|
|
181
|
+
this._tileContentRef = createRef();
|
|
182
|
+
this._resizeState = createTileManagerResizeState();
|
|
183
|
+
this._dragStack = createTileManagerDragStack();
|
|
184
|
+
// Initialize drag controller with callbacks bound to this instance
|
|
185
|
+
this._dragController = addDragController(this, {
|
|
186
|
+
skip: this._skipDrag.bind(this),
|
|
187
|
+
matchTarget: this._matchDragTarget.bind(this),
|
|
188
|
+
ghost: this._createDragGhost.bind(this),
|
|
189
|
+
start: this._handleDragStart.bind(this),
|
|
190
|
+
over: this._handleDragOver.bind(this),
|
|
191
|
+
end: this._handleDragEnd.bind(this),
|
|
192
|
+
cancel: this._handleDragCancel.bind(this)
|
|
193
|
+
});
|
|
194
|
+
// Initialize resize controller with deferred mode and grid snapping
|
|
195
|
+
this._resizeController = addDragResizeController(this, {
|
|
196
|
+
enabled: false,
|
|
197
|
+
mode: 'deferred',
|
|
198
|
+
minWidth: 50,
|
|
199
|
+
minHeight: 50,
|
|
200
|
+
matchHandle: this._matchResizeHandle.bind(this),
|
|
201
|
+
ghost: this._createResizeGhost.bind(this),
|
|
202
|
+
snap: this._calculateSnappedDimensions.bind(this),
|
|
203
|
+
start: this.handleResizeStart.bind(this),
|
|
204
|
+
resize: this.handleResize.bind(this),
|
|
205
|
+
end: this.handleResizeEnd.bind(this),
|
|
206
|
+
cancel: this.handleResizeCancelled.bind(this)
|
|
207
|
+
});
|
|
208
|
+
this._tileFullscreen = new HTMLElementEventEmitter(this, 'tileFullscreen');
|
|
209
|
+
this._tileMaximize = new HTMLElementEventEmitter(this, 'tileMaximize');
|
|
210
|
+
this._tileDragStart = new HTMLElementEventEmitter(this, 'tileDragStart');
|
|
211
|
+
this._tileDragEnd = new HTMLElementEventEmitter(this, 'tileDragEnd');
|
|
212
|
+
this._tileDragCancel = new HTMLElementEventEmitter(this, 'tileDragCancel');
|
|
213
|
+
this._tileResizeStart = new HTMLElementEventEmitter(this, 'tileResizeStart');
|
|
214
|
+
this._tileResizeEnd = new HTMLElementEventEmitter(this, 'tileResizeEnd');
|
|
215
|
+
this._tileResizeCancel = new HTMLElementEventEmitter(this, 'tileResizeCancel');
|
|
216
|
+
}
|
|
217
|
+
// #endregion
|
|
218
|
+
// #region Properties
|
|
219
|
+
/**
|
|
220
|
+
* Returns the `{@link is}` property.
|
|
221
|
+
*
|
|
222
|
+
* @public
|
|
223
|
+
* @static
|
|
224
|
+
* @readonly
|
|
225
|
+
*/
|
|
226
|
+
static get is() {
|
|
227
|
+
return 'mosaik-tile-manager-tile';
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Gets or sets the `colSpan` property.
|
|
231
|
+
*
|
|
232
|
+
* @public
|
|
233
|
+
* @attr
|
|
234
|
+
*/
|
|
235
|
+
get colSpan() {
|
|
236
|
+
return this._colSpan;
|
|
237
|
+
}
|
|
238
|
+
set colSpan(value) {
|
|
239
|
+
const newValue = Math.max(1, value);
|
|
240
|
+
if (this._colSpan !== newValue) {
|
|
241
|
+
this._colSpan = newValue;
|
|
242
|
+
this.style.setProperty('--tile-col-span', this._colSpan.toString());
|
|
243
|
+
this.requestUpdate('colSpan');
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Gets or sets the `rowSpan` property.
|
|
248
|
+
*
|
|
249
|
+
* @public
|
|
250
|
+
* @attr
|
|
251
|
+
*/
|
|
252
|
+
get rowSpan() {
|
|
253
|
+
return this._rowSpan;
|
|
254
|
+
}
|
|
255
|
+
set rowSpan(value) {
|
|
256
|
+
const newValue = Math.max(1, value);
|
|
257
|
+
if (this._rowSpan !== newValue) {
|
|
258
|
+
this._rowSpan = newValue;
|
|
259
|
+
this.style.setProperty('--tile-row-span', this._rowSpan.toString());
|
|
260
|
+
this.requestUpdate('rowSpan');
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Gets or sets the `colStart` property.
|
|
265
|
+
*
|
|
266
|
+
* @public
|
|
267
|
+
* @attr
|
|
268
|
+
*/
|
|
269
|
+
get colStart() {
|
|
270
|
+
return this._colStart;
|
|
271
|
+
}
|
|
272
|
+
set colStart(value) {
|
|
273
|
+
const newValue = value !== null ? Math.max(0, value) || null : null;
|
|
274
|
+
if (this._colStart !== newValue) {
|
|
275
|
+
this._colStart = newValue;
|
|
276
|
+
this.style.setProperty('--tile-col-start', this._colStart ? this._colStart.toString() : null);
|
|
277
|
+
this.requestUpdate('colStart');
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
/**
|
|
281
|
+
* Gets or sets the `rowStart` property.
|
|
282
|
+
*
|
|
283
|
+
* @public
|
|
284
|
+
* @attr
|
|
285
|
+
*/
|
|
286
|
+
get rowStart() {
|
|
287
|
+
return this._rowStart;
|
|
288
|
+
}
|
|
289
|
+
set rowStart(value) {
|
|
290
|
+
const newValue = value !== null ? Math.max(0, value) || null : null;
|
|
291
|
+
if (this._rowStart !== newValue) {
|
|
292
|
+
this._rowStart = newValue;
|
|
293
|
+
this.style.setProperty('--tile-row-start', this._rowStart ? this._rowStart.toString() : null);
|
|
294
|
+
this.requestUpdate('rowStart');
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Gets or sets the `position` property.
|
|
299
|
+
*
|
|
300
|
+
* @public
|
|
301
|
+
* @attr
|
|
302
|
+
*/
|
|
303
|
+
get position() {
|
|
304
|
+
return this._position;
|
|
305
|
+
}
|
|
306
|
+
set position(value) {
|
|
307
|
+
if (this._position !== value) {
|
|
308
|
+
this._position = value;
|
|
309
|
+
this.style.order = this._position.toString();
|
|
310
|
+
this.requestUpdate('position');
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
/**
|
|
314
|
+
* Gets or sets the `maximized` property.
|
|
315
|
+
*
|
|
316
|
+
* @public
|
|
317
|
+
* @attr
|
|
318
|
+
*/
|
|
319
|
+
get maximized() {
|
|
320
|
+
return this._maximized;
|
|
321
|
+
}
|
|
322
|
+
set maximized(value) {
|
|
323
|
+
if (this._maximized !== value) {
|
|
324
|
+
this._maximized = value;
|
|
325
|
+
this.requestUpdate('maximized');
|
|
326
|
+
this.tileManager?.requestUpdate();
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
* Indicates whether the tile occupies the whole screen.
|
|
331
|
+
*
|
|
332
|
+
* @public
|
|
333
|
+
* @readonly
|
|
334
|
+
*/
|
|
335
|
+
get fullscreen() {
|
|
336
|
+
return this._fullscreen;
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Gets or sets the `disableResize` property.
|
|
340
|
+
*
|
|
341
|
+
* @public
|
|
342
|
+
* @attr
|
|
343
|
+
*/
|
|
344
|
+
get disableResize() {
|
|
345
|
+
return this._disableResize;
|
|
346
|
+
}
|
|
347
|
+
set disableResize(value) {
|
|
348
|
+
if (this._disableResize !== value) {
|
|
349
|
+
this._disableResize = value;
|
|
350
|
+
this.requestUpdate('disableResize');
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
/**
|
|
354
|
+
* Gets or sets the `disableFullscreen` property.
|
|
355
|
+
*
|
|
356
|
+
* @public
|
|
357
|
+
* @attr
|
|
358
|
+
*/
|
|
359
|
+
get disableFullscreen() {
|
|
360
|
+
return this._disableFullscreen;
|
|
361
|
+
}
|
|
362
|
+
set disableFullscreen(value) {
|
|
363
|
+
if (this._disableFullscreen !== value) {
|
|
364
|
+
this._disableFullscreen = value;
|
|
365
|
+
this.requestUpdate('disableFullscreen');
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
/**
|
|
369
|
+
* Gets or sets the `disableMaximize` property.
|
|
370
|
+
*
|
|
371
|
+
* @public
|
|
372
|
+
* @attr
|
|
373
|
+
*/
|
|
374
|
+
get disableMaximize() {
|
|
375
|
+
return this._disableMaximize;
|
|
376
|
+
}
|
|
377
|
+
set disableMaximize(value) {
|
|
378
|
+
if (this._disableMaximize !== value) {
|
|
379
|
+
this._disableMaximize = value;
|
|
380
|
+
this.requestUpdate('disableMaximize');
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
/**
|
|
384
|
+
* Gets the parent tile manager element.
|
|
385
|
+
*
|
|
386
|
+
* @public
|
|
387
|
+
* @readonly
|
|
388
|
+
*/
|
|
389
|
+
get tileManager() {
|
|
390
|
+
return this.closest('mosaik-tile-manager');
|
|
391
|
+
}
|
|
392
|
+
/**
|
|
393
|
+
* Gets the current resize mode from the parent tile manager.
|
|
394
|
+
*
|
|
395
|
+
* @public
|
|
396
|
+
* @readonly
|
|
397
|
+
*/
|
|
398
|
+
get resizeMode() {
|
|
399
|
+
return this.tileManager?.resizeMode ?? 'none';
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* Gets whether resize is disabled for this tile.
|
|
403
|
+
*
|
|
404
|
+
* @public
|
|
405
|
+
* @readonly
|
|
406
|
+
*/
|
|
407
|
+
get resizeDisabled() {
|
|
408
|
+
return (this.disableResize ||
|
|
409
|
+
this.maximized ||
|
|
410
|
+
this.fullscreen ||
|
|
411
|
+
this.resizeMode === 'none');
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* Gets whether the tile is currently resizing.
|
|
415
|
+
*
|
|
416
|
+
* @public
|
|
417
|
+
* @readonly
|
|
418
|
+
*/
|
|
419
|
+
get isResizing() {
|
|
420
|
+
return this._resizeController.isResizing;
|
|
421
|
+
}
|
|
422
|
+
/**
|
|
423
|
+
* Gets whether the tile is currently being dragged.
|
|
424
|
+
*
|
|
425
|
+
* @public
|
|
426
|
+
* @readonly
|
|
427
|
+
*/
|
|
428
|
+
get isDragging() {
|
|
429
|
+
return this._isDragging;
|
|
430
|
+
}
|
|
431
|
+
/**
|
|
432
|
+
* Gets whether the tile is draggable.
|
|
433
|
+
*
|
|
434
|
+
* @public
|
|
435
|
+
* @readonly
|
|
436
|
+
*/
|
|
437
|
+
get isDraggable() {
|
|
438
|
+
return this.tileManager?.dragMode !== 'none';
|
|
439
|
+
}
|
|
440
|
+
/**
|
|
441
|
+
* Gets the header reference for tile-header drag mode.
|
|
442
|
+
*
|
|
443
|
+
* @public
|
|
444
|
+
* @readonly
|
|
445
|
+
*/
|
|
446
|
+
get headerRef() {
|
|
447
|
+
return this._headerRef;
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* Gets the tile content reference.
|
|
451
|
+
*
|
|
452
|
+
* @public
|
|
453
|
+
* @readonly
|
|
454
|
+
*/
|
|
455
|
+
get tileContentRef() {
|
|
456
|
+
return this._tileContentRef;
|
|
457
|
+
}
|
|
458
|
+
/**
|
|
459
|
+
* Gets whether the tile is resizable.
|
|
460
|
+
*
|
|
461
|
+
* @public
|
|
462
|
+
* @readonly
|
|
463
|
+
*/
|
|
464
|
+
get isResizable() {
|
|
465
|
+
return !this.disableResize && this.tileManager?.resizeMode !== 'none';
|
|
466
|
+
}
|
|
467
|
+
/**
|
|
468
|
+
* Gets the CSS grid container from the tile manager.
|
|
469
|
+
*
|
|
470
|
+
* @public
|
|
471
|
+
* @readonly
|
|
472
|
+
*/
|
|
473
|
+
get cssContainer() {
|
|
474
|
+
return this.tileManager?.renderRoot.querySelector('[part~="base"]');
|
|
475
|
+
}
|
|
476
|
+
/**
|
|
477
|
+
* Gets the tileFullscreen event emitter.
|
|
478
|
+
*
|
|
479
|
+
* @public
|
|
480
|
+
* @readonly
|
|
481
|
+
*/
|
|
482
|
+
get tileFullscreenEvent() {
|
|
483
|
+
return this._tileFullscreen;
|
|
484
|
+
}
|
|
485
|
+
/**
|
|
486
|
+
* Gets the tileMaximize event emitter.
|
|
487
|
+
*
|
|
488
|
+
* @public
|
|
489
|
+
* @readonly
|
|
490
|
+
*/
|
|
491
|
+
get tileMaximizeEvent() {
|
|
492
|
+
return this._tileMaximize;
|
|
493
|
+
}
|
|
494
|
+
/**
|
|
495
|
+
* Gets the tileDragStart event emitter.
|
|
496
|
+
*
|
|
497
|
+
* @public
|
|
498
|
+
* @readonly
|
|
499
|
+
*/
|
|
500
|
+
get tileDragStartEvent() {
|
|
501
|
+
return this._tileDragStart;
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* Gets the tileDragEnd event emitter.
|
|
505
|
+
*
|
|
506
|
+
* @public
|
|
507
|
+
* @readonly
|
|
508
|
+
*/
|
|
509
|
+
get tileDragEndEvent() {
|
|
510
|
+
return this._tileDragEnd;
|
|
511
|
+
}
|
|
512
|
+
/**
|
|
513
|
+
* Gets the tileDragCancel event emitter.
|
|
514
|
+
*
|
|
515
|
+
* @public
|
|
516
|
+
* @readonly
|
|
517
|
+
*/
|
|
518
|
+
get tileDragCancelEvent() {
|
|
519
|
+
return this._tileDragCancel;
|
|
520
|
+
}
|
|
521
|
+
/**
|
|
522
|
+
* Gets the tileResizeStart event emitter.
|
|
523
|
+
*
|
|
524
|
+
* @public
|
|
525
|
+
* @readonly
|
|
526
|
+
*/
|
|
527
|
+
get tileResizeStartEvent() {
|
|
528
|
+
return this._tileResizeStart;
|
|
529
|
+
}
|
|
530
|
+
/**
|
|
531
|
+
* Gets the tileResizeEnd event emitter.
|
|
532
|
+
*
|
|
533
|
+
* @public
|
|
534
|
+
* @readonly
|
|
535
|
+
*/
|
|
536
|
+
get tileResizeEndEvent() {
|
|
537
|
+
return this._tileResizeEnd;
|
|
538
|
+
}
|
|
539
|
+
/**
|
|
540
|
+
* Gets the tileResizeCancel event emitter.
|
|
541
|
+
*
|
|
542
|
+
* @public
|
|
543
|
+
* @readonly
|
|
544
|
+
*/
|
|
545
|
+
get tileResizeCancelEvent() {
|
|
546
|
+
return this._tileResizeCancel;
|
|
547
|
+
}
|
|
548
|
+
// #endregion
|
|
549
|
+
// #region Methods
|
|
550
|
+
/**
|
|
551
|
+
* @public
|
|
552
|
+
* @override
|
|
553
|
+
*/
|
|
554
|
+
connectedCallback() {
|
|
555
|
+
super.connectedCallback();
|
|
556
|
+
this.id = this.id || 'tile-' + (nextTileId++).toString();
|
|
557
|
+
this.style.viewTransitionName = this.style.viewTransitionName || 'tile-transition-' + this.id;
|
|
558
|
+
// Set up ARIA attributes
|
|
559
|
+
this.setAttribute('role', 'gridcell');
|
|
560
|
+
this.setAttribute('tabindex', '0');
|
|
561
|
+
this.updateAriaAttributes();
|
|
562
|
+
// Listen for fullscreen changes to sync state
|
|
563
|
+
document.addEventListener('fullscreenchange', this._handleFullscreenChange);
|
|
564
|
+
// Listen for keyboard events
|
|
565
|
+
this.addEventListener('keydown', this.handleKeyDown);
|
|
566
|
+
}
|
|
567
|
+
/**
|
|
568
|
+
* @public
|
|
569
|
+
* @override
|
|
570
|
+
*/
|
|
571
|
+
disconnectedCallback() {
|
|
572
|
+
super.disconnectedCallback();
|
|
573
|
+
document.removeEventListener('fullscreenchange', this._handleFullscreenChange);
|
|
574
|
+
this.removeEventListener('keydown', this.handleKeyDown);
|
|
575
|
+
}
|
|
576
|
+
/**
|
|
577
|
+
* Sets the drag state (visual appearance while dragging).
|
|
578
|
+
*
|
|
579
|
+
* @param state - Whether dragging is active.
|
|
580
|
+
*
|
|
581
|
+
* @public
|
|
582
|
+
*/
|
|
583
|
+
setDragState(state = true) {
|
|
584
|
+
this._isDragging = state;
|
|
585
|
+
// Set the tile content opacity
|
|
586
|
+
const tileContent = this._tileContentRef.value;
|
|
587
|
+
if (tileContent) {
|
|
588
|
+
tileContent.style.opacity = state ? '0' : '';
|
|
589
|
+
}
|
|
590
|
+
this.style.pointerEvents = state ? 'none' : '';
|
|
591
|
+
this.part.toggle('dragging', state);
|
|
592
|
+
this.requestUpdate();
|
|
593
|
+
}
|
|
594
|
+
/**
|
|
595
|
+
* Handles the maximize button click.
|
|
596
|
+
* When maximized, toggles to restored state and vice versa.
|
|
597
|
+
*
|
|
598
|
+
* @public
|
|
599
|
+
*/
|
|
600
|
+
async handleMaximize() {
|
|
601
|
+
const newState = !this.maximized;
|
|
602
|
+
const event = dispatchCancelableEvent(this, 'tileMaximize', {
|
|
603
|
+
tile: this,
|
|
604
|
+
state: newState
|
|
605
|
+
});
|
|
606
|
+
if (event.defaultPrevented) {
|
|
607
|
+
return;
|
|
608
|
+
}
|
|
609
|
+
this.style.zIndex = '1';
|
|
610
|
+
await startViewTransition(() => {
|
|
611
|
+
this.maximized = newState;
|
|
612
|
+
}).transition?.finished;
|
|
613
|
+
this.style.zIndex = '';
|
|
614
|
+
}
|
|
615
|
+
/**
|
|
616
|
+
* Handles the fullscreen button click.
|
|
617
|
+
*
|
|
618
|
+
* @public
|
|
619
|
+
*/
|
|
620
|
+
handleFullscreen() {
|
|
621
|
+
const newState = !this._fullscreen;
|
|
622
|
+
const event = dispatchCancelableEvent(this, 'tileFullscreen', {
|
|
623
|
+
tile: this,
|
|
624
|
+
state: newState
|
|
625
|
+
});
|
|
626
|
+
if (event.defaultPrevented) {
|
|
627
|
+
return;
|
|
628
|
+
}
|
|
629
|
+
this._fullscreen = newState;
|
|
630
|
+
if (this._fullscreen) {
|
|
631
|
+
void this.requestFullscreen();
|
|
632
|
+
}
|
|
633
|
+
else if (document.fullscreenElement === this) {
|
|
634
|
+
void document.exitFullscreen();
|
|
635
|
+
}
|
|
636
|
+
this.requestUpdate('fullscreen');
|
|
637
|
+
}
|
|
638
|
+
/**
|
|
639
|
+
* Handles resize pointer down - delegates to DragResizeController.
|
|
640
|
+
* This method is called from the template's pointer event handlers.
|
|
641
|
+
*
|
|
642
|
+
* @param _event - The pointer event (handled by controller).
|
|
643
|
+
*
|
|
644
|
+
* @public
|
|
645
|
+
*/
|
|
646
|
+
handleResizePointerDown(_event) {
|
|
647
|
+
// Resize is now handled entirely by the DragResizeController
|
|
648
|
+
// This method is kept for backward compatibility with the template
|
|
649
|
+
}
|
|
650
|
+
/**
|
|
651
|
+
* Handles resize pointer move - delegates to DragResizeController.
|
|
652
|
+
*
|
|
653
|
+
* @param _event - The pointer event (handled by controller).
|
|
654
|
+
*
|
|
655
|
+
* @public
|
|
656
|
+
*/
|
|
657
|
+
handleResizePointerMove(_event) {
|
|
658
|
+
// Resize is now handled entirely by the DragResizeController
|
|
659
|
+
}
|
|
660
|
+
/**
|
|
661
|
+
* Handles resize pointer up - delegates to DragResizeController.
|
|
662
|
+
*
|
|
663
|
+
* @public
|
|
664
|
+
*/
|
|
665
|
+
handleResizePointerUp() {
|
|
666
|
+
// Resize is now handled entirely by the DragResizeController
|
|
667
|
+
}
|
|
668
|
+
/**
|
|
669
|
+
* Handles resize cancel (e.g., Escape key).
|
|
670
|
+
* This can be called externally to cancel an in-progress resize.
|
|
671
|
+
*
|
|
672
|
+
* @public
|
|
673
|
+
*/
|
|
674
|
+
handleResizeCancel() {
|
|
675
|
+
if (!this._resizeController.isResizing) {
|
|
676
|
+
return;
|
|
677
|
+
}
|
|
678
|
+
this._resizeController.dispose();
|
|
679
|
+
}
|
|
680
|
+
/**
|
|
681
|
+
* Called after the component's first update cycle has completed.
|
|
682
|
+
* At this point the template has rendered and refs are available.
|
|
683
|
+
*
|
|
684
|
+
* @protected
|
|
685
|
+
* @override
|
|
686
|
+
*/
|
|
687
|
+
firstUpdated() {
|
|
688
|
+
// Configure drag controller after template has rendered so refs are available
|
|
689
|
+
this._setDragConfiguration();
|
|
690
|
+
// Configure resize controller
|
|
691
|
+
this._setResizeConfiguration();
|
|
692
|
+
}
|
|
693
|
+
/**
|
|
694
|
+
* @protected
|
|
695
|
+
* @override
|
|
696
|
+
*/
|
|
697
|
+
updated(_changedProperties) {
|
|
698
|
+
super.updated(_changedProperties);
|
|
699
|
+
this.style.gridColumn = 'var(--tile-col-start, auto) / span var(--tile-col-span, 1)';
|
|
700
|
+
this.style.gridRow = 'var(--tile-row-start, auto) / span var(--tile-row-span, 1)';
|
|
701
|
+
// Update ARIA attributes when relevant properties change
|
|
702
|
+
this.updateAriaAttributes();
|
|
703
|
+
// Update resize controller when relevant properties change
|
|
704
|
+
if (_changedProperties.has('disableResize') ||
|
|
705
|
+
_changedProperties.has('maximized') ||
|
|
706
|
+
_changedProperties.has('fullscreen')) {
|
|
707
|
+
this._setResizeConfiguration();
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
/**
|
|
711
|
+
* Configures the drag controller based on the current drag mode.
|
|
712
|
+
*
|
|
713
|
+
* @private
|
|
714
|
+
*/
|
|
715
|
+
_setDragConfiguration() {
|
|
716
|
+
const dragMode = this.tileManager?.dragMode ?? 'none';
|
|
717
|
+
const enabled = dragMode !== 'none' && !this.maximized && !this.fullscreen;
|
|
718
|
+
this._dragController.set({
|
|
719
|
+
enabled,
|
|
720
|
+
trigger: dragMode === 'tile-header'
|
|
721
|
+
? () => this._headerRef.value ?? null
|
|
722
|
+
: undefined
|
|
723
|
+
});
|
|
724
|
+
}
|
|
725
|
+
/**
|
|
726
|
+
* Configures the resize controller based on the current resize mode.
|
|
727
|
+
*
|
|
728
|
+
* @private
|
|
729
|
+
*/
|
|
730
|
+
_setResizeConfiguration() {
|
|
731
|
+
const resizeMode = this.resizeMode;
|
|
732
|
+
const enabled = !this.resizeDisabled;
|
|
733
|
+
this._resizeController.set({
|
|
734
|
+
enabled,
|
|
735
|
+
mode: 'deferred'
|
|
736
|
+
});
|
|
737
|
+
}
|
|
738
|
+
/**
|
|
739
|
+
* Handles the fullscreenchange event to sync internal state.
|
|
740
|
+
*
|
|
741
|
+
* @private
|
|
742
|
+
*/
|
|
743
|
+
_handleFullscreenChange = () => {
|
|
744
|
+
// If this tile was in fullscreen but now fullscreen element is null or different
|
|
745
|
+
if (this._fullscreen && document.fullscreenElement !== this) {
|
|
746
|
+
this._fullscreen = false;
|
|
747
|
+
this.requestUpdate('fullscreen');
|
|
748
|
+
}
|
|
749
|
+
};
|
|
750
|
+
/**
|
|
751
|
+
* Determines whether a drag operation should be skipped.
|
|
752
|
+
*
|
|
753
|
+
* @param event - The pointer event.
|
|
754
|
+
* @returns True if the drag should be skipped.
|
|
755
|
+
*
|
|
756
|
+
* @private
|
|
757
|
+
*/
|
|
758
|
+
_skipDrag(event) {
|
|
759
|
+
// Skip if maximized or fullscreen
|
|
760
|
+
if (this.maximized || this.fullscreen) {
|
|
761
|
+
return true;
|
|
762
|
+
}
|
|
763
|
+
// Skip if resizing
|
|
764
|
+
if (this.isResizing) {
|
|
765
|
+
return true;
|
|
766
|
+
}
|
|
767
|
+
// Skip if click is on an interactive element (trigger, actions, buttons)
|
|
768
|
+
return Boolean(findElementFromEventPath((element) => element.matches('[part*=trigger]') ||
|
|
769
|
+
element.matches('#tile-actions') ||
|
|
770
|
+
element.matches('[part*=button]') ||
|
|
771
|
+
element.matches('mosaik-button') ||
|
|
772
|
+
element.matches('button'), event));
|
|
773
|
+
}
|
|
774
|
+
/**
|
|
775
|
+
* Determines if an element is a valid drop target.
|
|
776
|
+
*
|
|
777
|
+
* @param element - The element to check.
|
|
778
|
+
* @returns True if the element is a valid drop target.
|
|
779
|
+
*
|
|
780
|
+
* @private
|
|
781
|
+
*/
|
|
782
|
+
_matchDragTarget(element) {
|
|
783
|
+
return element !== this && TileManagerTileElement_1.is === element.localName;
|
|
784
|
+
}
|
|
785
|
+
/**
|
|
786
|
+
* Creates a drag ghost element.
|
|
787
|
+
*
|
|
788
|
+
* @returns The ghost element.
|
|
789
|
+
*
|
|
790
|
+
* @private
|
|
791
|
+
*/
|
|
792
|
+
_createDragGhost() {
|
|
793
|
+
return createTileDragGhost(this);
|
|
794
|
+
}
|
|
795
|
+
/**
|
|
796
|
+
* Handles drag start.
|
|
797
|
+
*
|
|
798
|
+
* @param _params - The drag callback parameters.
|
|
799
|
+
* @returns False to cancel the drag, otherwise undefined/true.
|
|
800
|
+
*
|
|
801
|
+
* @private
|
|
802
|
+
*/
|
|
803
|
+
_handleDragStart(_params) {
|
|
804
|
+
const event = dispatchCancelableEvent(this, 'tileDragStart', {
|
|
805
|
+
tile: this,
|
|
806
|
+
position: this.position
|
|
807
|
+
});
|
|
808
|
+
if (event.defaultPrevented) {
|
|
809
|
+
return false;
|
|
810
|
+
}
|
|
811
|
+
this.setDragState(true);
|
|
812
|
+
this._dragStack.push(this);
|
|
813
|
+
return undefined;
|
|
814
|
+
}
|
|
815
|
+
/**
|
|
816
|
+
* Handles dragging over a potential drop target.
|
|
817
|
+
*
|
|
818
|
+
* @param params - The drag callback parameters.
|
|
819
|
+
*
|
|
820
|
+
* @private
|
|
821
|
+
*/
|
|
822
|
+
_handleDragOver(params) {
|
|
823
|
+
const match = params.state.element;
|
|
824
|
+
if (!match) {
|
|
825
|
+
return;
|
|
826
|
+
}
|
|
827
|
+
// Check if this is the same tile as the top of the stack
|
|
828
|
+
if (this._dragStack.peek() === match) {
|
|
829
|
+
// Check if we should swap back
|
|
830
|
+
if (this._shouldSwap(params.event, params.state.pointerState.direction, match)) {
|
|
831
|
+
this._dragStack.pop();
|
|
832
|
+
this._dragStack.push(match);
|
|
833
|
+
this._performSwap(match);
|
|
834
|
+
}
|
|
835
|
+
return;
|
|
836
|
+
}
|
|
837
|
+
// New tile encountered, push and swap
|
|
838
|
+
this._dragStack.push(match);
|
|
839
|
+
this._performSwap(match);
|
|
840
|
+
}
|
|
841
|
+
/**
|
|
842
|
+
* Determines whether tiles should be swapped based on pointer position and direction.
|
|
843
|
+
*
|
|
844
|
+
* @param event - The pointer event.
|
|
845
|
+
* @param direction - The drag direction.
|
|
846
|
+
* @param match - The matched tile.
|
|
847
|
+
* @returns True if tiles should be swapped.
|
|
848
|
+
*
|
|
849
|
+
* @private
|
|
850
|
+
*/
|
|
851
|
+
_shouldSwap(event, direction, match) {
|
|
852
|
+
const ltr = isLTR(this);
|
|
853
|
+
const { left, top, width, height } = match.getBoundingClientRect();
|
|
854
|
+
const relativeX = (event.clientX - left) / width;
|
|
855
|
+
const relativeY = (event.clientY - top) / height;
|
|
856
|
+
switch (direction) {
|
|
857
|
+
case 'start':
|
|
858
|
+
return (this.position > match.position &&
|
|
859
|
+
(ltr ? relativeX <= 0.25 : relativeX >= 0.75));
|
|
860
|
+
case 'end':
|
|
861
|
+
return (this.position < match.position &&
|
|
862
|
+
(ltr ? relativeX >= 0.75 : relativeX <= 0.25));
|
|
863
|
+
case 'top':
|
|
864
|
+
return this.position > match.position && relativeY <= 0.25;
|
|
865
|
+
case 'bottom':
|
|
866
|
+
return this.position < match.position && relativeY >= 0.75;
|
|
867
|
+
default:
|
|
868
|
+
return false;
|
|
869
|
+
}
|
|
870
|
+
}
|
|
871
|
+
/**
|
|
872
|
+
* Performs the swap animation with the matched tile.
|
|
873
|
+
*
|
|
874
|
+
* @param match - The tile to swap with.
|
|
875
|
+
*
|
|
876
|
+
* @private
|
|
877
|
+
*/
|
|
878
|
+
_performSwap(match) {
|
|
879
|
+
startViewTransition(() => swapTiles(this, match));
|
|
880
|
+
}
|
|
881
|
+
/**
|
|
882
|
+
* Handles drag end.
|
|
883
|
+
*
|
|
884
|
+
* @param _params - The drag callback parameters.
|
|
885
|
+
*
|
|
886
|
+
* @private
|
|
887
|
+
*/
|
|
888
|
+
_handleDragEnd(_params) {
|
|
889
|
+
this.setDragState(false);
|
|
890
|
+
this._dragStack.reset();
|
|
891
|
+
emit(this, 'tileDragEnd', {
|
|
892
|
+
tile: this,
|
|
893
|
+
position: this.position
|
|
894
|
+
});
|
|
895
|
+
}
|
|
896
|
+
/**
|
|
897
|
+
* Handles drag cancel.
|
|
898
|
+
*
|
|
899
|
+
* @private
|
|
900
|
+
*/
|
|
901
|
+
_handleDragCancel() {
|
|
902
|
+
startViewTransition(() => {
|
|
903
|
+
this._dragStack.restore();
|
|
904
|
+
this._dragStack.reset();
|
|
905
|
+
});
|
|
906
|
+
this._dragController.dispose();
|
|
907
|
+
this.setDragState(false);
|
|
908
|
+
emit(this, 'tileDragCancel', {
|
|
909
|
+
tile: this,
|
|
910
|
+
position: this.position
|
|
911
|
+
});
|
|
912
|
+
}
|
|
913
|
+
/**
|
|
914
|
+
* Determines the resize handle type from the target element.
|
|
915
|
+
*
|
|
916
|
+
* @param target - The target element.
|
|
917
|
+
* @returns The resize handle type.
|
|
918
|
+
*
|
|
919
|
+
* @private
|
|
920
|
+
*/
|
|
921
|
+
_determineResizeHandle(target) {
|
|
922
|
+
if (target.classList.contains('side')) {
|
|
923
|
+
return 'side';
|
|
924
|
+
}
|
|
925
|
+
if (target.classList.contains('corner')) {
|
|
926
|
+
return 'corner';
|
|
927
|
+
}
|
|
928
|
+
return 'bottom';
|
|
929
|
+
}
|
|
930
|
+
/**
|
|
931
|
+
* Matches the resize handle from an element.
|
|
932
|
+
* Used by DragResizeController.
|
|
933
|
+
*
|
|
934
|
+
* @param element - The element to check.
|
|
935
|
+
* @returns The resize handle type or null.
|
|
936
|
+
*
|
|
937
|
+
* @private
|
|
938
|
+
*/
|
|
939
|
+
_matchResizeHandle(element) {
|
|
940
|
+
if (!element.classList.contains('resize-handle')) {
|
|
941
|
+
return null;
|
|
942
|
+
}
|
|
943
|
+
if (element.classList.contains('side')) {
|
|
944
|
+
return 'side';
|
|
945
|
+
}
|
|
946
|
+
if (element.classList.contains('corner')) {
|
|
947
|
+
return 'corner';
|
|
948
|
+
}
|
|
949
|
+
if (element.classList.contains('bottom')) {
|
|
950
|
+
return 'bottom';
|
|
951
|
+
}
|
|
952
|
+
return 'corner';
|
|
953
|
+
}
|
|
954
|
+
/**
|
|
955
|
+
* Creates a resize ghost element for the deferred resize mode.
|
|
956
|
+
* Used by DragResizeController.
|
|
957
|
+
*
|
|
958
|
+
* @returns The ghost element.
|
|
959
|
+
*
|
|
960
|
+
* @private
|
|
961
|
+
*/
|
|
962
|
+
_createResizeGhost() {
|
|
963
|
+
return createTileGhost(this);
|
|
964
|
+
}
|
|
965
|
+
/**
|
|
966
|
+
* Calculates snapped dimensions during resize operations.
|
|
967
|
+
* Uses the TileManagerResizeState for grid-aware snapping.
|
|
968
|
+
*
|
|
969
|
+
* @param dimensions - The current dimensions.
|
|
970
|
+
* @param delta - The delta from start position.
|
|
971
|
+
* @param handle - The resize handle being used.
|
|
972
|
+
* @returns The snapped dimensions.
|
|
973
|
+
*
|
|
974
|
+
* @private
|
|
975
|
+
*/
|
|
976
|
+
_calculateSnappedDimensions(dimensions, delta, handle) {
|
|
977
|
+
if (!this._resizeStartRect) {
|
|
978
|
+
return dimensions;
|
|
979
|
+
}
|
|
980
|
+
const isWidthResize = handle === 'side' || handle === 'corner';
|
|
981
|
+
const isHeightResize = handle === 'bottom' || handle === 'corner';
|
|
982
|
+
let snappedWidth = dimensions.width;
|
|
983
|
+
let snappedHeight = dimensions.height;
|
|
984
|
+
if (isWidthResize) {
|
|
985
|
+
snappedWidth = this._resizeState.calculateSnappedWidth({
|
|
986
|
+
deltaX: delta.x,
|
|
987
|
+
current: { width: dimensions.width }
|
|
988
|
+
});
|
|
989
|
+
}
|
|
990
|
+
if (isHeightResize) {
|
|
991
|
+
snappedHeight = this._resizeState.calculateSnappedHeight({
|
|
992
|
+
deltaY: delta.y,
|
|
993
|
+
current: { height: dimensions.height }
|
|
994
|
+
});
|
|
995
|
+
}
|
|
996
|
+
return {
|
|
997
|
+
width: snappedWidth,
|
|
998
|
+
height: snappedHeight
|
|
999
|
+
};
|
|
1000
|
+
}
|
|
1001
|
+
/**
|
|
1002
|
+
* Handles resize start from the DragResizeController.
|
|
1003
|
+
*
|
|
1004
|
+
* @param params - The resize callback parameters.
|
|
1005
|
+
* @returns False to cancel the resize, otherwise undefined.
|
|
1006
|
+
*
|
|
1007
|
+
* @private
|
|
1008
|
+
*/
|
|
1009
|
+
handleResizeStart(params) {
|
|
1010
|
+
const event = dispatchCancelableEvent(this, 'tileResizeStart', {
|
|
1011
|
+
tile: this,
|
|
1012
|
+
colSpan: this.colSpan,
|
|
1013
|
+
rowSpan: this.rowSpan
|
|
1014
|
+
});
|
|
1015
|
+
if (event.defaultPrevented) {
|
|
1016
|
+
return false;
|
|
1017
|
+
}
|
|
1018
|
+
// Store initial rect for snap calculations
|
|
1019
|
+
this._resizeStartRect = this.getBoundingClientRect();
|
|
1020
|
+
// Initialize resize state for grid-aware snapping
|
|
1021
|
+
const cssContainer = this.cssContainer;
|
|
1022
|
+
if (cssContainer) {
|
|
1023
|
+
this._resizeState.updateState(this._resizeStartRect, this, cssContainer);
|
|
1024
|
+
}
|
|
1025
|
+
this.style.zIndex = '1';
|
|
1026
|
+
this.part.add('resizing');
|
|
1027
|
+
this.requestUpdate();
|
|
1028
|
+
return undefined;
|
|
1029
|
+
}
|
|
1030
|
+
/**
|
|
1031
|
+
* Handles resize movement from the DragResizeController.
|
|
1032
|
+
*
|
|
1033
|
+
* @param _params - The resize callback parameters.
|
|
1034
|
+
*
|
|
1035
|
+
* @private
|
|
1036
|
+
*/
|
|
1037
|
+
handleResize(_params) {
|
|
1038
|
+
// The controller handles ghost updates via the snap callback
|
|
1039
|
+
// Additional UI updates can be done here if needed
|
|
1040
|
+
}
|
|
1041
|
+
/**
|
|
1042
|
+
* Handles resize end from the DragResizeController.
|
|
1043
|
+
*
|
|
1044
|
+
* @param params - The resize callback parameters.
|
|
1045
|
+
*
|
|
1046
|
+
* @private
|
|
1047
|
+
*/
|
|
1048
|
+
handleResizeEnd(params) {
|
|
1049
|
+
const { state } = params;
|
|
1050
|
+
const { dimensions, ghost } = state;
|
|
1051
|
+
// Calculate new grid spans from final dimensions
|
|
1052
|
+
let newColSpan = this.colSpan;
|
|
1053
|
+
let newRowSpan = this.rowSpan;
|
|
1054
|
+
if (ghost) {
|
|
1055
|
+
const ghostRect = new DOMRect(parseFloat(ghost.style.left), parseFloat(ghost.style.top), dimensions.width, dimensions.height);
|
|
1056
|
+
const { colSpan, rowSpan } = this._resizeState.calculateResizedGridPosition(ghostRect);
|
|
1057
|
+
newColSpan = colSpan;
|
|
1058
|
+
newRowSpan = rowSpan;
|
|
1059
|
+
// Apply new spans with view transition
|
|
1060
|
+
void startViewTransition(() => {
|
|
1061
|
+
this.colSpan = newColSpan;
|
|
1062
|
+
this.rowSpan = newRowSpan;
|
|
1063
|
+
}).transition?.updateCallbackDone;
|
|
1064
|
+
}
|
|
1065
|
+
// Reset state
|
|
1066
|
+
this._resizeStartRect = null;
|
|
1067
|
+
this.style.zIndex = '';
|
|
1068
|
+
this.part.remove('resizing');
|
|
1069
|
+
emit(this, 'tileResizeEnd', {
|
|
1070
|
+
tile: this,
|
|
1071
|
+
colSpan: newColSpan,
|
|
1072
|
+
rowSpan: newRowSpan
|
|
1073
|
+
});
|
|
1074
|
+
this.requestUpdate();
|
|
1075
|
+
}
|
|
1076
|
+
/**
|
|
1077
|
+
* Handles resize cancel from the DragResizeController.
|
|
1078
|
+
*
|
|
1079
|
+
* @param _state - The resize state at cancel.
|
|
1080
|
+
*
|
|
1081
|
+
* @private
|
|
1082
|
+
*/
|
|
1083
|
+
handleResizeCancelled(_state) {
|
|
1084
|
+
this._resizeStartRect = null;
|
|
1085
|
+
this.style.zIndex = '';
|
|
1086
|
+
this.part.remove('resizing');
|
|
1087
|
+
emit(this, 'tileResizeCancel', {
|
|
1088
|
+
tile: this,
|
|
1089
|
+
colSpan: this.colSpan,
|
|
1090
|
+
rowSpan: this.rowSpan
|
|
1091
|
+
});
|
|
1092
|
+
this.requestUpdate();
|
|
1093
|
+
}
|
|
1094
|
+
/**
|
|
1095
|
+
* Updates ARIA attributes based on current state.
|
|
1096
|
+
*
|
|
1097
|
+
* @private
|
|
1098
|
+
*/
|
|
1099
|
+
updateAriaAttributes() {
|
|
1100
|
+
// Set aria-label with tile info
|
|
1101
|
+
const titleSlot = this.querySelector('[slot="title"]');
|
|
1102
|
+
const titleText = titleSlot?.textContent?.trim() ?? `Tile ${(this.position + 1).toString()}`;
|
|
1103
|
+
this.setAttribute('aria-label', titleText);
|
|
1104
|
+
// Set aria-expanded for maximized/fullscreen states
|
|
1105
|
+
if (this.maximized || this.fullscreen) {
|
|
1106
|
+
this.setAttribute('aria-expanded', 'true');
|
|
1107
|
+
}
|
|
1108
|
+
else {
|
|
1109
|
+
this.removeAttribute('aria-expanded');
|
|
1110
|
+
}
|
|
1111
|
+
// Set aria-grabbed during drag operations
|
|
1112
|
+
if (this._isDragging) {
|
|
1113
|
+
this.setAttribute('aria-grabbed', 'true');
|
|
1114
|
+
}
|
|
1115
|
+
else {
|
|
1116
|
+
this.removeAttribute('aria-grabbed');
|
|
1117
|
+
}
|
|
1118
|
+
// Set column/row position for grid cell
|
|
1119
|
+
if (this.colStart !== null) {
|
|
1120
|
+
this.setAttribute('aria-colindex', this.colStart.toString());
|
|
1121
|
+
}
|
|
1122
|
+
if (this.rowStart !== null) {
|
|
1123
|
+
this.setAttribute('aria-rowindex', this.rowStart.toString());
|
|
1124
|
+
}
|
|
1125
|
+
// Set span info
|
|
1126
|
+
this.setAttribute('aria-colspan', this.colSpan.toString());
|
|
1127
|
+
this.setAttribute('aria-rowspan', this.rowSpan.toString());
|
|
1128
|
+
}
|
|
1129
|
+
/**
|
|
1130
|
+
* Handles keyboard events for accessibility.
|
|
1131
|
+
*
|
|
1132
|
+
* @param event - The keyboard event.
|
|
1133
|
+
*
|
|
1134
|
+
* @private
|
|
1135
|
+
*/
|
|
1136
|
+
handleKeyDown = (event) => {
|
|
1137
|
+
// Don't handle if target is an interactive element within the tile
|
|
1138
|
+
if (event.target !== this) {
|
|
1139
|
+
return;
|
|
1140
|
+
}
|
|
1141
|
+
const tileManager = this.tileManager;
|
|
1142
|
+
if (!tileManager) {
|
|
1143
|
+
return;
|
|
1144
|
+
}
|
|
1145
|
+
switch (event.key) {
|
|
1146
|
+
case 'Enter':
|
|
1147
|
+
case ' ':
|
|
1148
|
+
// Toggle maximize on Enter/Space
|
|
1149
|
+
if (!this.disableMaximize) {
|
|
1150
|
+
event.preventDefault();
|
|
1151
|
+
void this.handleMaximize();
|
|
1152
|
+
}
|
|
1153
|
+
break;
|
|
1154
|
+
case 'F11':
|
|
1155
|
+
case 'f':
|
|
1156
|
+
// Toggle fullscreen on F11 or 'f'
|
|
1157
|
+
if (!this.disableFullscreen && (event.key === 'F11' || event.ctrlKey)) {
|
|
1158
|
+
event.preventDefault();
|
|
1159
|
+
this.handleFullscreen();
|
|
1160
|
+
}
|
|
1161
|
+
break;
|
|
1162
|
+
case 'Escape':
|
|
1163
|
+
// Exit maximized/fullscreen state
|
|
1164
|
+
if (this.maximized) {
|
|
1165
|
+
event.preventDefault();
|
|
1166
|
+
void this.handleMaximize();
|
|
1167
|
+
}
|
|
1168
|
+
else if (this.fullscreen) {
|
|
1169
|
+
event.preventDefault();
|
|
1170
|
+
this.handleFullscreen();
|
|
1171
|
+
}
|
|
1172
|
+
else if (this.isResizing) {
|
|
1173
|
+
event.preventDefault();
|
|
1174
|
+
this.handleResizeCancel();
|
|
1175
|
+
}
|
|
1176
|
+
break;
|
|
1177
|
+
case 'ArrowUp':
|
|
1178
|
+
case 'ArrowDown':
|
|
1179
|
+
case 'ArrowLeft':
|
|
1180
|
+
case 'ArrowRight':
|
|
1181
|
+
this.handleArrowKeyNavigation(event);
|
|
1182
|
+
break;
|
|
1183
|
+
case 'Home':
|
|
1184
|
+
// Focus first tile
|
|
1185
|
+
event.preventDefault();
|
|
1186
|
+
this.focusTile(0);
|
|
1187
|
+
break;
|
|
1188
|
+
case 'End':
|
|
1189
|
+
// Focus last tile
|
|
1190
|
+
event.preventDefault();
|
|
1191
|
+
this.focusTile(tileManager.tiles.length - 1);
|
|
1192
|
+
break;
|
|
1193
|
+
}
|
|
1194
|
+
};
|
|
1195
|
+
/**
|
|
1196
|
+
* Handles arrow key navigation between tiles.
|
|
1197
|
+
*
|
|
1198
|
+
* @param event - The keyboard event.
|
|
1199
|
+
*
|
|
1200
|
+
* @private
|
|
1201
|
+
*/
|
|
1202
|
+
handleArrowKeyNavigation(event) {
|
|
1203
|
+
const tileManager = this.tileManager;
|
|
1204
|
+
if (!tileManager) {
|
|
1205
|
+
return;
|
|
1206
|
+
}
|
|
1207
|
+
event.preventDefault();
|
|
1208
|
+
const tiles = tileManager.tiles;
|
|
1209
|
+
const currentIndex = this.position;
|
|
1210
|
+
let targetIndex = currentIndex;
|
|
1211
|
+
// Calculate target based on arrow key
|
|
1212
|
+
// This is a simplified grid navigation - assumes tiles are in order
|
|
1213
|
+
switch (event.key) {
|
|
1214
|
+
case 'ArrowUp':
|
|
1215
|
+
targetIndex = Math.max(0, currentIndex - 1);
|
|
1216
|
+
break;
|
|
1217
|
+
case 'ArrowDown':
|
|
1218
|
+
targetIndex = Math.min(tiles.length - 1, currentIndex + 1);
|
|
1219
|
+
break;
|
|
1220
|
+
case 'ArrowLeft':
|
|
1221
|
+
if (isLTR(this)) {
|
|
1222
|
+
targetIndex = Math.max(0, currentIndex - 1);
|
|
1223
|
+
}
|
|
1224
|
+
else {
|
|
1225
|
+
targetIndex = Math.min(tiles.length - 1, currentIndex + 1);
|
|
1226
|
+
}
|
|
1227
|
+
break;
|
|
1228
|
+
case 'ArrowRight':
|
|
1229
|
+
if (isLTR(this)) {
|
|
1230
|
+
targetIndex = Math.min(tiles.length - 1, currentIndex + 1);
|
|
1231
|
+
}
|
|
1232
|
+
else {
|
|
1233
|
+
targetIndex = Math.max(0, currentIndex - 1);
|
|
1234
|
+
}
|
|
1235
|
+
break;
|
|
1236
|
+
}
|
|
1237
|
+
// If Shift is held and drag is enabled, swap tiles
|
|
1238
|
+
if (event.shiftKey && tileManager.dragMode !== 'none') {
|
|
1239
|
+
const targetTile = tiles.find((t) => t.position === targetIndex);
|
|
1240
|
+
if (targetTile && targetTile !== this) {
|
|
1241
|
+
startViewTransition(() => swapTiles(this, targetTile));
|
|
1242
|
+
}
|
|
1243
|
+
}
|
|
1244
|
+
else {
|
|
1245
|
+
// Just focus the target tile
|
|
1246
|
+
this.focusTile(targetIndex);
|
|
1247
|
+
}
|
|
1248
|
+
}
|
|
1249
|
+
/**
|
|
1250
|
+
* Focuses a tile by its position index.
|
|
1251
|
+
*
|
|
1252
|
+
* @param position - The position index of the tile to focus.
|
|
1253
|
+
*
|
|
1254
|
+
* @private
|
|
1255
|
+
*/
|
|
1256
|
+
focusTile(position) {
|
|
1257
|
+
const tileManager = this.tileManager;
|
|
1258
|
+
if (!tileManager) {
|
|
1259
|
+
return;
|
|
1260
|
+
}
|
|
1261
|
+
const tiles = tileManager.tiles;
|
|
1262
|
+
const targetTile = tiles.find((t) => t.position === position);
|
|
1263
|
+
if (targetTile) {
|
|
1264
|
+
targetTile.focus();
|
|
1265
|
+
}
|
|
1266
|
+
}
|
|
1267
|
+
};
|
|
1268
|
+
__decorate([
|
|
1269
|
+
Attribute({ type: Number }),
|
|
1270
|
+
__metadata("design:type", Number),
|
|
1271
|
+
__metadata("design:paramtypes", [Number])
|
|
1272
|
+
], TileManagerTileElement.prototype, "colSpan", null);
|
|
1273
|
+
__decorate([
|
|
1274
|
+
Attribute({ type: Number }),
|
|
1275
|
+
__metadata("design:type", Number),
|
|
1276
|
+
__metadata("design:paramtypes", [Number])
|
|
1277
|
+
], TileManagerTileElement.prototype, "rowSpan", null);
|
|
1278
|
+
__decorate([
|
|
1279
|
+
Attribute({ type: Number }),
|
|
1280
|
+
__metadata("design:type", Object),
|
|
1281
|
+
__metadata("design:paramtypes", [Object])
|
|
1282
|
+
], TileManagerTileElement.prototype, "colStart", null);
|
|
1283
|
+
__decorate([
|
|
1284
|
+
Attribute({ type: Number }),
|
|
1285
|
+
__metadata("design:type", Object),
|
|
1286
|
+
__metadata("design:paramtypes", [Object])
|
|
1287
|
+
], TileManagerTileElement.prototype, "rowStart", null);
|
|
1288
|
+
__decorate([
|
|
1289
|
+
Attribute({ type: Number }),
|
|
1290
|
+
__metadata("design:type", Number),
|
|
1291
|
+
__metadata("design:paramtypes", [Number])
|
|
1292
|
+
], TileManagerTileElement.prototype, "position", null);
|
|
1293
|
+
__decorate([
|
|
1294
|
+
Attribute({
|
|
1295
|
+
type: Boolean,
|
|
1296
|
+
useDefault: true
|
|
1297
|
+
}),
|
|
1298
|
+
__metadata("design:type", Boolean),
|
|
1299
|
+
__metadata("design:paramtypes", [Boolean])
|
|
1300
|
+
], TileManagerTileElement.prototype, "maximized", null);
|
|
1301
|
+
__decorate([
|
|
1302
|
+
Attribute({
|
|
1303
|
+
type: Boolean,
|
|
1304
|
+
useDefault: true
|
|
1305
|
+
}),
|
|
1306
|
+
__metadata("design:type", Boolean),
|
|
1307
|
+
__metadata("design:paramtypes", [Boolean])
|
|
1308
|
+
], TileManagerTileElement.prototype, "disableResize", null);
|
|
1309
|
+
__decorate([
|
|
1310
|
+
Attribute({
|
|
1311
|
+
type: Boolean,
|
|
1312
|
+
useDefault: true
|
|
1313
|
+
}),
|
|
1314
|
+
__metadata("design:type", Boolean),
|
|
1315
|
+
__metadata("design:paramtypes", [Boolean])
|
|
1316
|
+
], TileManagerTileElement.prototype, "disableFullscreen", null);
|
|
1317
|
+
__decorate([
|
|
1318
|
+
Attribute({
|
|
1319
|
+
type: Boolean,
|
|
1320
|
+
useDefault: true
|
|
1321
|
+
}),
|
|
1322
|
+
__metadata("design:type", Boolean),
|
|
1323
|
+
__metadata("design:paramtypes", [Boolean])
|
|
1324
|
+
], TileManagerTileElement.prototype, "disableMaximize", null);
|
|
1325
|
+
TileManagerTileElement = TileManagerTileElement_1 = __decorate([
|
|
1326
|
+
Component({
|
|
1327
|
+
selector: 'mosaik-tile-manager-tile',
|
|
1328
|
+
template: tileManagerTileElementTemplate,
|
|
1329
|
+
themes: {
|
|
1330
|
+
joy: tileManagerTileElementJoyStyle,
|
|
1331
|
+
memphis: tileManagerTileElementMemphisStyle,
|
|
1332
|
+
cosmopolitan: tileManagerTileElementCosmopolitanStyle
|
|
1333
|
+
},
|
|
1334
|
+
imports: [
|
|
1335
|
+
ButtonElement
|
|
1336
|
+
]
|
|
1337
|
+
}),
|
|
1338
|
+
__metadata("design:paramtypes", [])
|
|
1339
|
+
], TileManagerTileElement);
|
|
1340
|
+
export { TileManagerTileElement };
|
|
1341
|
+
//# sourceMappingURL=TileManagerTileElement.js.map
|