@vectoriox/iox-builder 3.3.3 → 3.4.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vectoriox/iox-builder",
3
- "version": "3.3.3",
3
+ "version": "3.4.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=20.0.0",
6
6
  "@angular/core": ">=20.0.0",
@@ -690,6 +690,8 @@ declare class OverlayService {
690
690
  } | undefined;
691
691
  setHover(element: HTMLElement, componentName: string, mode: BuilderMode): void;
692
692
  clearHover(): void;
693
+ /** Current selection snapshot (null if nothing is selected). */
694
+ getCurrentSelection(): OverlayEntry | null;
693
695
  setSelect(element: HTMLElement, componentName: string, mode: BuilderMode, node?: ComponentNode, componentRef?: ComponentRef<any>): void;
694
696
  clearSelect(): void;
695
697
  refreshSelect(): void;
@@ -782,6 +784,9 @@ declare class SymbolRegistryService {
782
784
  static ɵprov: i0.ɵɵInjectableDeclaration<SymbolRegistryService>;
783
785
  }
784
786
 
787
+ /** Marks the overlay's dedicated drag-handle chrome (see overlay.component.html) — it carries no
788
+ * node of its own, so a drag started on it always redirects to whatever is currently selected. */
789
+ declare const DRAG_HANDLE_ATTR = "data-iox-drag-handle";
785
790
  interface DragPayload {
786
791
  type: 'internal' | 'external';
787
792
  data: ComponentNode | string;
@@ -796,7 +801,8 @@ interface IoxDropEvent {
796
801
  declare class DragEngineService {
797
802
  private registry;
798
803
  private symbolRegistry;
799
- constructor(registry: ComponentRegistryService, symbolRegistry: SymbolRegistryService);
804
+ private overlayService;
805
+ constructor(registry: ComponentRegistryService, symbolRegistry: SymbolRegistryService, overlayService: OverlayService);
800
806
  handleDrop(children: ComponentNode[], event: IoxDropEvent, dropListId: string, cdr: ChangeDetectorRef, afterDrop?: () => void): void;
801
807
  private ids;
802
808
  private elMap;
@@ -847,11 +853,18 @@ declare class DragEngineService {
847
853
  private _getEl;
848
854
  registerDropzone(id: string, el: HTMLElement, data: any[], cdr: ChangeDetectorRef, dropCb: (e: IoxDropEvent) => void, postDrop?: () => void): void;
849
855
  unregisterDropzone(id: string, el: HTMLElement): void;
856
+ /** Payload getter per registered draggable element — looked up in _onDragStart when a drag
857
+ * redirects onto the currently-selected element instead of its natural origin. */
858
+ private _payloadMap;
850
859
  registerDraggable(el: HTMLElement, getPayload: () => DragPayload): void;
851
860
  unregisterDraggable(el: HTMLElement): void;
852
861
  getData(id: string): any[] | undefined;
853
862
  getCdr(id: string): ChangeDetectorRef | undefined;
854
863
  invokePostDrop(id: string): void;
864
+ /** Which registered dropzone's data array currently contains this node — used by the
865
+ * overlay's drag-handle to resolve `ioxDragSourceId` for the selected node dynamically
866
+ * (the handle isn't rendered inside any container, so it has no source id of its own). */
867
+ findSourceIdForNode(node: ComponentNode): string | null;
855
868
  consumeDeepTarget(): string | null;
856
869
  private _onDragStart;
857
870
  private _onDragMove;
@@ -1654,6 +1667,7 @@ declare class OverlayComponent implements OnInit, OnDestroy {
1654
1667
  private styleRegistry;
1655
1668
  private panelEventService;
1656
1669
  private cdr;
1670
+ private dragEngine;
1657
1671
  toolbarAction: EventEmitter<{
1658
1672
  action: ToolbarAction;
1659
1673
  entry: OverlayEntry;
@@ -1694,7 +1708,10 @@ declare class OverlayComponent implements OnInit, OnDestroy {
1694
1708
  private boundUpdate;
1695
1709
  private boundScrollUpdate;
1696
1710
  private activeScrollContainer;
1697
- constructor(overlayService: OverlayService, viewportService: ViewportService, presetRegistry: PresetRegistryService, symbolRegistry: SymbolRegistryService, interactionPresetRegistry: InteractionPresetRegistryService, interactionEngine: InteractionEngineService, clipboard: BuilderClipboardService, styleRegistry: StyleRegistryService, panelEventService: PanelEventService, cdr: ChangeDetectorRef);
1711
+ constructor(overlayService: OverlayService, viewportService: ViewportService, presetRegistry: PresetRegistryService, symbolRegistry: SymbolRegistryService, interactionPresetRegistry: InteractionPresetRegistryService, interactionEngine: InteractionEngineService, clipboard: BuilderClipboardService, styleRegistry: StyleRegistryService, panelEventService: PanelEventService, cdr: ChangeDetectorRef, dragEngine: DragEngineService);
1712
+ /** Resolves the selected node's OWNING dropzone id dynamically — the drag-handle isn't
1713
+ * rendered inside any container (it's overlay chrome), so it has no source id of its own. */
1714
+ get dragHandleSourceId(): string | null;
1698
1715
  ngOnInit(): void;
1699
1716
  ngOnDestroy(): void;
1700
1717
  onSelectParent(event: MouseEvent): void;
@@ -2431,5 +2448,5 @@ declare class TextBlockComponentConfig extends ComponentConfig {
2431
2448
  constructor();
2432
2449
  }
2433
2450
 
2434
- export { ACTION_TYPE_OPTIONS, BackgroundGroupStyleConfig, BorderGroupStyleConfig, BuilderButtonBlockComponent, BuilderButtonComponentConfig, BuilderClipboardService, BuilderComponent, BuilderContainerComponent, BuilderContainerComponentConfig, BuilderDataSourceService, BuilderDividerComponentConfig, BuilderHeadingComponentConfig, BuilderHistoryService, BuilderIconComponentConfig, BuilderImageComponentConfig, BuilderLinkComponentConfig, BuilderLinkedContainerComponent, BuilderLinkedContainerConfig, BuilderListComponentConfig, BuilderListItemComponentConfig, BuilderMode, BuilderRepeaterComponent, BuilderSpacerComponentConfig, ButtonBlockComponentConfig, CardComponentConfig, ChildLayoutGroupStyleConfig, ComponentConfig, ComponentRegistryService, DEVICE_OPTIONS, DataSourceRegistryService, DataSourceType, DeviceMode, DimensionsGroupStyleConfig, DragEngineService, EASING_OPTIONS, EffectsGroupStyleConfig, GalleryConfig, GroupStyleConfig, INTERACTION_STATES, INVERSE_ACTION, IOX_DATA_SOURCE_ENDPOINTS, IOX_FONT_MANAGER, InteractionEngineService, InteractionPresetRegistryService, IoxBuilderModule, IoxDraggableDirective, IoxDropzoneDirective, LayerTreeComponent, LayoutGroupStyleConfig, ListGroupStyleConfig, NodeAction, OverlayComponent, OverlayService, PanelChildComponent, PanelComponent, PanelEventService, PanelEventTypes, PanelTypes, PositionGroupStyleConfig, PresetRegistryService, RELATIONAL_STATES, RELATIONAL_STATE_BASE, ROUTE_ANIMATION_OPTIONS, RenderDirective, RepeaterComponentConfig, SCREEN_WIDTH_OPTIONS, STRUCTURAL_STATES, SUPPORTED_STATES, SectionComponent, SectionComponentConfig, SizeGroupStyleConfig, SliderContainerComponent, SliderContainerConfig, SliderSlideComponent, SliderSlideConfig, SpacingGroupStyleConfig, StyleCategory, StyleRegistryService, TraitConfig as StyleTraitConfig, SymbolRegistryService, TARGETED_STATES, TARGETED_STATE_BASE, TRIGGER_OPTIONS, TextBlockComponentConfig, ToolbarAction, ToolbarComponent, TraitConfig, TraitInputType, TypographyGroupStyleConfig, UNITS_ALL, UNITS_DEG, UNITS_FIXED, UNITS_NO_VW, ViewportService, ZOOM_OPTIONS, arrayItemSchemaFields, arraySchemaFields, buildFullStyleTraits, buildPresetStyleTraits, defaultPageSettings, findNodeLocation, flattenSchemaFields, generateNodeId, resolveTraitControllerType, resolveTraitOptions, wrapNode };
2451
+ export { ACTION_TYPE_OPTIONS, BackgroundGroupStyleConfig, BorderGroupStyleConfig, BuilderButtonBlockComponent, BuilderButtonComponentConfig, BuilderClipboardService, BuilderComponent, BuilderContainerComponent, BuilderContainerComponentConfig, BuilderDataSourceService, BuilderDividerComponentConfig, BuilderHeadingComponentConfig, BuilderHistoryService, BuilderIconComponentConfig, BuilderImageComponentConfig, BuilderLinkComponentConfig, BuilderLinkedContainerComponent, BuilderLinkedContainerConfig, BuilderListComponentConfig, BuilderListItemComponentConfig, BuilderMode, BuilderRepeaterComponent, BuilderSpacerComponentConfig, ButtonBlockComponentConfig, CardComponentConfig, ChildLayoutGroupStyleConfig, ComponentConfig, ComponentRegistryService, DEVICE_OPTIONS, DRAG_HANDLE_ATTR, DataSourceRegistryService, DataSourceType, DeviceMode, DimensionsGroupStyleConfig, DragEngineService, EASING_OPTIONS, EffectsGroupStyleConfig, GalleryConfig, GroupStyleConfig, INTERACTION_STATES, INVERSE_ACTION, IOX_DATA_SOURCE_ENDPOINTS, IOX_FONT_MANAGER, InteractionEngineService, InteractionPresetRegistryService, IoxBuilderModule, IoxDraggableDirective, IoxDropzoneDirective, LayerTreeComponent, LayoutGroupStyleConfig, ListGroupStyleConfig, NodeAction, OverlayComponent, OverlayService, PanelChildComponent, PanelComponent, PanelEventService, PanelEventTypes, PanelTypes, PositionGroupStyleConfig, PresetRegistryService, RELATIONAL_STATES, RELATIONAL_STATE_BASE, ROUTE_ANIMATION_OPTIONS, RenderDirective, RepeaterComponentConfig, SCREEN_WIDTH_OPTIONS, STRUCTURAL_STATES, SUPPORTED_STATES, SectionComponent, SectionComponentConfig, SizeGroupStyleConfig, SliderContainerComponent, SliderContainerConfig, SliderSlideComponent, SliderSlideConfig, SpacingGroupStyleConfig, StyleCategory, StyleRegistryService, TraitConfig as StyleTraitConfig, SymbolRegistryService, TARGETED_STATES, TARGETED_STATE_BASE, TRIGGER_OPTIONS, TextBlockComponentConfig, ToolbarAction, ToolbarComponent, TraitConfig, TraitInputType, TypographyGroupStyleConfig, UNITS_ALL, UNITS_DEG, UNITS_FIXED, UNITS_NO_VW, ViewportService, ZOOM_OPTIONS, arrayItemSchemaFields, arraySchemaFields, buildFullStyleTraits, buildPresetStyleTraits, defaultPageSettings, findNodeLocation, flattenSchemaFields, generateNodeId, resolveTraitControllerType, resolveTraitOptions, wrapNode };
2435
2452
  export type { BuilderClipboard, ComponentEventDef, ComponentMethodDef, ComponentNode, ComponentTrait, DeviceOption, DragPayload, DsFilterByQueryParam, DsFilterByRouteParam, ElementState, HistoryEntry, InteractionAction, InteractionActionType, InteractionPreset, InteractionTrigger, IoxBinding, IoxDataSource, IoxDropEvent, IoxFontManager, IoxInteraction, IoxSymbol, NodeRef, OverlayBoxModel, OverlayBoxSpacing, OverlayEntry, PageRouteAnimationSettings, PageScrollSettings, PageSettings, PageStyleSettings, PanelEvent, QuadSizeSegment, RouteAnimationPreset, ScreenWidthOption, StylePreset, StyleTrait, StyleTraitGroup, TraitOptionMap, TraitSelectOption, TraitShowCondition, ViewportState, ZoomOption };