@vectoriox/iox-builder 2.7.0 → 2.8.1
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.
|
@@ -151,6 +151,9 @@ var TraitInputType;
|
|
|
151
151
|
TraitInputType["Range"] = "range";
|
|
152
152
|
TraitInputType["Icon"] = "icon";
|
|
153
153
|
TraitInputType["Media"] = "media";
|
|
154
|
+
/** Ordered list of images (URL / one-by-one / filebox; per-item binding in a later phase).
|
|
155
|
+
* Controller registered in the consumer (iox-cms-client) as `mediaList`. Value: GalleryImage[]. */
|
|
156
|
+
TraitInputType["MediaList"] = "mediaList";
|
|
154
157
|
TraitInputType["FontFamily"] = "fontFamily";
|
|
155
158
|
TraitInputType["GridTemplate"] = "gridTemplate";
|
|
156
159
|
TraitInputType["SectionLabel"] = "sectionLabel";
|
|
@@ -224,6 +227,7 @@ function resolveTraitControllerType(type) {
|
|
|
224
227
|
case TraitInputType.SectionLabel: return 'sectionLabel';
|
|
225
228
|
case TraitInputType.Icon: return 'icon';
|
|
226
229
|
case TraitInputType.Media: return 'media';
|
|
230
|
+
case TraitInputType.MediaList: return 'mediaList';
|
|
227
231
|
case TraitInputType.FontFamily: return 'select';
|
|
228
232
|
case TraitInputType.GridTemplate: return 'gridTemplate';
|
|
229
233
|
case TraitInputType.Textarea: return 'textarea';
|
|
@@ -7998,6 +8002,53 @@ class BuilderDividerComponentConfig extends ComponentConfig {
|
|
|
7998
8002
|
}
|
|
7999
8003
|
}
|
|
8000
8004
|
|
|
8005
|
+
/**
|
|
8006
|
+
* Gallery — crossfade image gallery (working name; "fade" is the first effect, not the component).
|
|
8007
|
+
*
|
|
8008
|
+
* The RENDER component is the shared engine twin `ClientGalleryComponent` (`iox-gallery`) from
|
|
8009
|
+
* `@vectoriox/iox-ui` — reused directly in the builder (like Image reuses BuilderImageComponent), so
|
|
8010
|
+
* there is ONE implementation of the crossfade for both canvas and live site. This config only
|
|
8011
|
+
* declares the editable traits + the minimal style groups (size + spacing, per product decision).
|
|
8012
|
+
*
|
|
8013
|
+
* Population (v1): the `images` MediaList trait (URL / one-by-one / filebox / paste). Data-source
|
|
8014
|
+
* binding (`source`/`sourcePath`) is a later phase. See gallery-component-plan.md.
|
|
8015
|
+
*/
|
|
8016
|
+
class GalleryConfig extends ComponentConfig {
|
|
8017
|
+
constructor() {
|
|
8018
|
+
super('Gallery', 'iox-gallery', 'ph-thin ph-images', 'Media');
|
|
8019
|
+
this.traits = [
|
|
8020
|
+
// ── Images ────────────────────────────────────────────────────────
|
|
8021
|
+
new TraitConfig('__imagesLabel', 'Images', TraitInputType.SectionLabel),
|
|
8022
|
+
new TraitConfig('images', 'Images', TraitInputType.MediaList, undefined, []),
|
|
8023
|
+
// ── Playback ──────────────────────────────────────────────────────
|
|
8024
|
+
new TraitConfig('__playbackLabel', 'Playback', TraitInputType.SectionLabel),
|
|
8025
|
+
// Effect is a Select scaffolded for future effects; v1 lists only Fade.
|
|
8026
|
+
new TraitConfig('effect', 'Effect', TraitInputType.Select, [{ label: 'Fade', value: 'fade' }], 'fade'),
|
|
8027
|
+
// Durations are milliseconds — use a plain Number field (Scrub renders a px unit label).
|
|
8028
|
+
new TraitConfig('showDuration', 'Show duration (ms)', TraitInputType.Number, undefined, 4000),
|
|
8029
|
+
new TraitConfig('fadeDuration', 'Fade duration (ms)', TraitInputType.Number, undefined, 1000),
|
|
8030
|
+
new TraitConfig('autoStart', 'Auto start', TraitInputType.Checkbox, undefined, true),
|
|
8031
|
+
];
|
|
8032
|
+
// Styling: size + spacing + border + background (letterbox). No typography (not text-bearing).
|
|
8033
|
+
this.styleTraits = [
|
|
8034
|
+
new PositionGroupStyleConfig(),
|
|
8035
|
+
new SizeGroupStyleConfig(),
|
|
8036
|
+
new SpacingGroupStyleConfig(),
|
|
8037
|
+
new BorderGroupStyleConfig(),
|
|
8038
|
+
new BackgroundGroupStyleConfig(),
|
|
8039
|
+
];
|
|
8040
|
+
// Size traits stay at their group default (auto) so a gallery starts unconstrained. The one
|
|
8041
|
+
// exception is `minHeight: 200px` — the image layers are absolutely positioned (no intrinsic
|
|
8042
|
+
// height), so without a floor a freshly-dropped, unsized gallery would collapse to 0px and be
|
|
8043
|
+
// invisible. min-height is a style-engine default on `.iox-node` (not scoped component CSS),
|
|
8044
|
+
// so the user can freely override it.
|
|
8045
|
+
this.applyStyleDefaults({
|
|
8046
|
+
minHeight: '200px',
|
|
8047
|
+
backgroundColor: '#000000',
|
|
8048
|
+
});
|
|
8049
|
+
}
|
|
8050
|
+
}
|
|
8051
|
+
|
|
8001
8052
|
class BuilderHeadingComponentConfig extends ComponentConfig {
|
|
8002
8053
|
constructor() {
|
|
8003
8054
|
super('Heading', 'app-builder-heading', 'ph-thin ph-text-h', 'Basic');
|
|
@@ -8399,5 +8450,5 @@ class BuilderSpacerComponentConfig extends ComponentConfig {
|
|
|
8399
8450
|
* Generated bundle index. Do not edit.
|
|
8400
8451
|
*/
|
|
8401
8452
|
|
|
8402
|
-
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$1 as EASING_OPTIONS, EffectsGroupStyleConfig, GroupStyleConfig, INTERACTION_STATES, INVERSE_ACTION, IOX_DATA_SOURCE_ENDPOINTS, IOX_FONT_MANAGER, InteractionEngineService, InteractionPresetRegistryService, InteractionsPanelComponent, 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, 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 };
|
|
8453
|
+
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$1 as EASING_OPTIONS, EffectsGroupStyleConfig, GalleryConfig, GroupStyleConfig, INTERACTION_STATES, INVERSE_ACTION, IOX_DATA_SOURCE_ENDPOINTS, IOX_FONT_MANAGER, InteractionEngineService, InteractionPresetRegistryService, InteractionsPanelComponent, 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, 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 };
|
|
8403
8454
|
//# sourceMappingURL=vectoriox-iox-builder.mjs.map
|