@vectoriox/iox-ui 5.83.1 → 5.85.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/actions-core/index.d.ts +18 -2
- package/composite-core/index.d.ts +93 -15
- package/design-core/index.d.ts +566 -4
- package/fesm2022/vectoriox-iox-ui-actions-core.mjs +18 -1
- package/fesm2022/vectoriox-iox-ui-actions-core.mjs.map +1 -1
- package/fesm2022/vectoriox-iox-ui-composite-core.mjs +307 -39
- package/fesm2022/vectoriox-iox-ui-composite-core.mjs.map +1 -1
- package/fesm2022/vectoriox-iox-ui-design-core.mjs +680 -15
- package/fesm2022/vectoriox-iox-ui-design-core.mjs.map +1 -1
- package/fesm2022/vectoriox-iox-ui-generation-core.mjs +665 -24
- package/fesm2022/vectoriox-iox-ui-generation-core.mjs.map +1 -1
- package/fesm2022/vectoriox-iox-ui-harness-core.mjs +39 -1
- package/fesm2022/vectoriox-iox-ui-harness-core.mjs.map +1 -1
- package/fesm2022/vectoriox-iox-ui-scene-core.mjs +101 -5
- package/fesm2022/vectoriox-iox-ui-scene-core.mjs.map +1 -1
- package/fesm2022/vectoriox-iox-ui.mjs +285 -12
- package/fesm2022/vectoriox-iox-ui.mjs.map +1 -1
- package/generation-core/index.d.ts +414 -8
- package/harness-core/index.d.ts +81 -3
- package/index.d.ts +143 -42
- package/package.json +1 -1
- package/scene-core/index.d.ts +32 -4
- package/src/actions-core/dialog-motion.ts +25 -0
- package/src/composite-core/header.ts +25 -0
- package/src/composite-core/public-api.ts +1 -0
- package/src/composite-core/slider-runtime.ts +82 -0
- package/src/composite-core/slider.ts +194 -27
- package/src/composite-core/structure.ts +14 -9
- package/src/design-core/flavor-spec.generated.ts +596 -9
- package/src/design-core/header-behaviour.ts +76 -0
- package/src/design-core/public-api.ts +1 -0
- package/src/design-core/theme-color.ts +21 -5
- package/src/generation-core/ai-run.ts +10 -2
- package/src/generation-core/art-direction.ts +122 -0
- package/src/generation-core/audit-site.ts +14 -0
- package/src/generation-core/compose-site.ts +8 -0
- package/src/generation-core/node-baselines.generated.ts +17 -3
- package/src/generation-core/patterns.ts +2 -0
- package/src/generation-core/pictures.ts +464 -0
- package/src/generation-core/plan-wire.ts +2 -0
- package/src/generation-core/public-api.ts +2 -0
- package/src/generation-core/site-build-run.ts +3 -0
- package/src/generation-core/site-plan.model.ts +4 -0
- package/src/generation-core/site-spec.generated.ts +126 -1
- package/src/generation-core/stock-photos.ts +40 -10
- package/src/generation-core/validate-site-plan.ts +14 -0
- package/src/harness-core/business-types.ts +3 -1
- package/src/harness-core/generation-view.ts +50 -1
- package/src/harness-core/harness-spec.generated.ts +30 -0
- package/src/scene-core/scene.ts +18 -0
- package/src/scene-core/scroll-driver.ts +83 -6
- package/styles/iox-design.css +232 -1
- package/styles/iox-forms.css +5 -2
|
@@ -6,16 +6,16 @@ import { Subject, fromEvent } from 'rxjs';
|
|
|
6
6
|
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
7
7
|
import * as i1 from '@angular/common';
|
|
8
8
|
import { CommonModule, isPlatformBrowser } from '@angular/common';
|
|
9
|
-
import { SPEC_AXES, resolveDesignMotion } from '@vectoriox/iox-ui/design-core';
|
|
9
|
+
import { SPEC_AXES, resolveDesignMotion, HeaderAttribute, HeaderBehaviour, headerAttributes, HeaderTrait } from '@vectoriox/iox-ui/design-core';
|
|
10
10
|
export * from '@vectoriox/iox-ui/design-core';
|
|
11
11
|
import Lenis from 'lenis';
|
|
12
|
-
import { SLIDER_WORDS, sliderPartElement, SliderRole, sliderWords, attachCarouselA11y, isSliderPart } from '@vectoriox/iox-ui/composite-core';
|
|
12
|
+
import { SLIDER_WORDS, sliderPartElement, SliderRole, sliderWords, attachCarouselA11y, attachSliderBar, isSliderPart, SLIDE_TYPE, SLIDE_CAPTION_TRAIT } from '@vectoriox/iox-ui/composite-core';
|
|
13
|
+
import { SceneAttribute, SCENE_WAKE_EVENT, SCENE_REVEAL_DEFAULT, SceneRevealFrom, revealClipPath, TextRevealBy, playTextReveal } from '@vectoriox/iox-ui/scene-core';
|
|
13
14
|
import { getByPath } from '@vectoriox/iox-ui/data-core';
|
|
14
15
|
export * from '@vectoriox/iox-ui/data-core';
|
|
15
16
|
import { dialogOpenerAttributes, dialogDomId } from '@vectoriox/iox-ui/actions-core';
|
|
16
17
|
import { VideoKind, planVideo, videoRootAttributes, videoInnerHtml, videoWords, VideoAttribute, attachVideoAt, VideoClass } from '@vectoriox/iox-ui/media-core';
|
|
17
18
|
import * as i1$1 from '@angular/platform-browser';
|
|
18
|
-
import { SCENE_REVEAL_DEFAULT, SceneRevealFrom, revealClipPath, TextRevealBy, playTextReveal } from '@vectoriox/iox-ui/scene-core';
|
|
19
19
|
|
|
20
20
|
class ViewPositionDirective {
|
|
21
21
|
constructor(_elr) {
|
|
@@ -2140,10 +2140,19 @@ function stateTransitionProperties(stateStyles, responsive, type) {
|
|
|
2140
2140
|
}
|
|
2141
2141
|
return out;
|
|
2142
2142
|
}
|
|
2143
|
+
/**
|
|
2144
|
+
* What an element style animates beyond the properties its states change (premium M4): a link's underline is DRAWN by
|
|
2145
|
+
* the shared CSS (`iox-design.css`) as a background line that grows from the reading start on hover — its growth is a
|
|
2146
|
+
* `background-size` the node's own transition must name, or it would jump.
|
|
2147
|
+
*/
|
|
2148
|
+
const ELEMENT_STYLE_TRANSITION_EXTRAS = {
|
|
2149
|
+
link: ['background-size'],
|
|
2150
|
+
};
|
|
2143
2151
|
/**
|
|
2144
2152
|
* `styleProps` as a renderer compiles them: a hovering node with no timing of its own takes the default hover timing,
|
|
2145
|
-
* and a node whose transition names no properties gets the ones its states change
|
|
2146
|
-
* (or a raw `transition`) always wins. Pure:
|
|
2153
|
+
* and a node whose transition names no properties gets the ones its states change (and what its element style draws,
|
|
2154
|
+
* `ELEMENT_STYLE_TRANSITION_EXTRAS`). An author's own `transitionProperty` (or a raw `transition`) always wins. Pure:
|
|
2155
|
+
* the node's stored styles are never touched.
|
|
2147
2156
|
*/
|
|
2148
2157
|
function withStateTransitions(styleProps, stateStyles, elementStyle, responsive, type) {
|
|
2149
2158
|
let out = styleProps;
|
|
@@ -2151,6 +2160,9 @@ function withStateTransitions(styleProps, stateStyles, elementStyle, responsive,
|
|
|
2151
2160
|
out = { ...out, ...defaultHoverTransitionTraits(elementStyle) };
|
|
2152
2161
|
if (!isFilled(out['transitionProperty']) && !isFilled(out['transition'])) {
|
|
2153
2162
|
const props = stateTransitionProperties(stateStyles, responsive, type);
|
|
2163
|
+
for (const extra of (elementStyle ? ELEMENT_STYLE_TRANSITION_EXTRAS[elementStyle] : null) ?? [])
|
|
2164
|
+
if (props.length && !props.includes(extra))
|
|
2165
|
+
props.push(extra);
|
|
2154
2166
|
if (props.length)
|
|
2155
2167
|
out = { ...out, transitionProperty: props.join(', ') };
|
|
2156
2168
|
}
|
|
@@ -2840,6 +2852,16 @@ const LEGACY_SWIPER_CONTROLS = {
|
|
|
2840
2852
|
pagination: '.swiper-pagination',
|
|
2841
2853
|
scrollbar: '.swiper-scrollbar',
|
|
2842
2854
|
};
|
|
2855
|
+
/**
|
|
2856
|
+
* The feel every live slider gets (premium M4, T3 — Emil 114/121): past either end a drag meets friction, not a wall
|
|
2857
|
+
* (resistance), and a swipe commits only after a few px of travel, so a vertical scroll that drifts never moves a slide.
|
|
2858
|
+
* The easing of the slides is the look's (`slider-ease`, iox-design.css).
|
|
2859
|
+
*/
|
|
2860
|
+
const SLIDER_FEEL = { resistanceRatio: 0.65, threshold: 6 };
|
|
2861
|
+
/** At or under this width one picture takes the full width (M1.3) unless the author said otherwise there. */
|
|
2862
|
+
const SLIDER_PHONE_BREAKPOINT = 'mobile';
|
|
2863
|
+
/** Effects that always show one slide (a stack, a turn): a phone keeps their own layout. */
|
|
2864
|
+
const ONE_SLIDE_EFFECTS = new Set(['fade', 'cube', 'flip', 'cards']);
|
|
2843
2865
|
/** The pagination part's classes — Swiper's own position CSS (`.swiper-pagination-bullets.swiper-pagination-horizontal`)
|
|
2844
2866
|
* must not pin a PART: its place is its own styles'. The dots keep Swiper's bullet class. */
|
|
2845
2867
|
const PART_PAGINATION_MODIFIER = 'iox-slider-pagination-';
|
|
@@ -2862,6 +2884,24 @@ function perView(v) {
|
|
|
2862
2884
|
const n = num$1(v, 1);
|
|
2863
2885
|
return n > 0 ? n : 'auto';
|
|
2864
2886
|
}
|
|
2887
|
+
/**
|
|
2888
|
+
* One picture the full width on a phone (M1.3) — the default the M1 prototype proved: a 1.15 "peek" left an empty strip
|
|
2889
|
+
* beside the picture. Added as a phone layer only where the author set no slides-per-view at a phone width; an effect
|
|
2890
|
+
* that shows one slide anyway keeps its own (a "cards" stack stays a centred card, iox-design.css).
|
|
2891
|
+
*/
|
|
2892
|
+
function withPhoneDefaults(inputs) {
|
|
2893
|
+
const responsive = inputs.responsive ?? null;
|
|
2894
|
+
if (ONE_SLIDE_EFFECTS.has(String(inputs.effect ?? 'slide')))
|
|
2895
|
+
return responsive;
|
|
2896
|
+
const authored = (bp) => {
|
|
2897
|
+
const layer = responsive?.[bp];
|
|
2898
|
+
return layer?.inputs?.['slidesPerView'] !== undefined;
|
|
2899
|
+
};
|
|
2900
|
+
if (authored('mobile') || authored('small'))
|
|
2901
|
+
return responsive;
|
|
2902
|
+
const phone = responsive?.[SLIDER_PHONE_BREAKPOINT];
|
|
2903
|
+
return { ...(responsive ?? {}), [SLIDER_PHONE_BREAKPOINT]: { ...(phone ?? {}), inputs: { ...(phone?.inputs ?? {}), slidesPerView: 1 } } };
|
|
2904
|
+
}
|
|
2865
2905
|
function collectResponsiveInputs(inputs) {
|
|
2866
2906
|
const all = { slidesPerView: inputs.slidesPerView, slidesPerGroup: inputs.slidesPerGroup, spaceBetween: inputs.spaceBetween };
|
|
2867
2907
|
const out = {};
|
|
@@ -2876,7 +2916,10 @@ function planSwiperOptions(inputs, ctx) {
|
|
|
2876
2916
|
const edit = !!ctx.edit;
|
|
2877
2917
|
const hasNav = parts ? !!(parts.prev || parts.next) : on(inputs.enableNavigation);
|
|
2878
2918
|
const hasDots = parts ? !!parts.pagination : on(inputs.enablePagination);
|
|
2879
|
-
|
|
2919
|
+
// M4: a slider the scroll plays is moved by the page's scroll only (and only while motion is allowed — under reduced
|
|
2920
|
+
// motion it is an ordinary slider).
|
|
2921
|
+
const played = !edit && on(inputs.scrollPlays) && ctx.motion;
|
|
2922
|
+
const autoplay = !edit && !played && on(inputs.enableAutoplay);
|
|
2880
2923
|
const flags = {
|
|
2881
2924
|
enableNavigation: hasNav,
|
|
2882
2925
|
enablePagination: hasDots,
|
|
@@ -2915,10 +2958,17 @@ function planSwiperOptions(inputs, ctx) {
|
|
|
2915
2958
|
// disabling them at either end (a disabled <button> takes no click).
|
|
2916
2959
|
options['rewind'] = true;
|
|
2917
2960
|
}
|
|
2961
|
+
else if (played) {
|
|
2962
|
+
options['allowTouchMove'] = false;
|
|
2963
|
+
options['simulateTouch'] = false;
|
|
2964
|
+
options['grabCursor'] = false;
|
|
2965
|
+
options['loop'] = false;
|
|
2966
|
+
options['rewind'] = false;
|
|
2967
|
+
}
|
|
2918
2968
|
else {
|
|
2919
2969
|
options['grabCursor'] = inputs.grabCursor !== false;
|
|
2920
2970
|
options['slideToClickedSlide'] = on(inputs.slideToClickedSlide);
|
|
2921
|
-
Object.assign(options, swiperLoopOptions(inputs.loop));
|
|
2971
|
+
Object.assign(options, swiperLoopOptions(inputs.loop), SLIDER_FEEL);
|
|
2922
2972
|
if (on(inputs.freeMode))
|
|
2923
2973
|
options['freeMode'] = true;
|
|
2924
2974
|
}
|
|
@@ -2966,7 +3016,7 @@ function planSwiperOptions(inputs, ctx) {
|
|
|
2966
3016
|
containerRole: ctx.named ? 'region' : 'group',
|
|
2967
3017
|
};
|
|
2968
3018
|
if (!edit) {
|
|
2969
|
-
const derived = buildSwiperBreakpoints(collectResponsiveInputs(inputs), inputs
|
|
3019
|
+
const derived = buildSwiperBreakpoints(collectResponsiveInputs(inputs), withPhoneDefaults(inputs));
|
|
2970
3020
|
const map = mergeSwiperBreakpoints(derived, inputs.breakpoints ?? '');
|
|
2971
3021
|
if (map)
|
|
2972
3022
|
options['breakpoints'] = map;
|
|
@@ -3020,8 +3070,46 @@ async function bootSlider(el, inputs, options = {}) {
|
|
|
3020
3070
|
const swiper = new Swiper(el, { ...plan.options, modules, on });
|
|
3021
3071
|
if (!options.edit)
|
|
3022
3072
|
attachCarouselA11y(swiper, { words });
|
|
3073
|
+
attachSliderBar(swiper);
|
|
3074
|
+
if (inputs.scrollPlays)
|
|
3075
|
+
prepareScrollPlay(el, swiper);
|
|
3023
3076
|
return swiper;
|
|
3024
3077
|
}
|
|
3078
|
+
/** The element a slider the scroll plays is held in: its runway, the Scene root the ONE driver drives (premium M4). */
|
|
3079
|
+
const SLIDER_RUNWAY_CLASS = 'iox-slider-runway';
|
|
3080
|
+
/** The runway's steps (slides − 1): how many half-screens of scroll it reserves (iox-design.css). */
|
|
3081
|
+
const SLIDER_STEPS_PROPERTY = '--slider-steps';
|
|
3082
|
+
/**
|
|
3083
|
+
* The runway a slider the scroll plays sits in — ONE answer for the string path (it writes this wrapper, steps known at
|
|
3084
|
+
* render, so the page never shifts) and the component path (the same class and Scene root; its boot writes the steps).
|
|
3085
|
+
* Null when the scroll does not play it.
|
|
3086
|
+
*/
|
|
3087
|
+
function sliderRunwayHtml(inputs, slideCount) {
|
|
3088
|
+
if (!(inputs?.scrollPlays === true || inputs?.scrollPlays === 'true'))
|
|
3089
|
+
return null;
|
|
3090
|
+
const steps = Math.max(0, Math.floor(slideCount) - 1);
|
|
3091
|
+
return { open: `<div class="${SLIDER_RUNWAY_CLASS}" ${SceneAttribute.Root}="" style="${SLIDER_STEPS_PROPERTY}: ${steps}">`, close: '</div>' };
|
|
3092
|
+
}
|
|
3093
|
+
/**
|
|
3094
|
+
* Ready a slider the scroll plays: its runway learns how tall it is (it holds the slider mid-screen — iox-design.css) and
|
|
3095
|
+
* how many steps it has, its stage is marked for the scene driver, and the driver is woken — the Swiper it plays has
|
|
3096
|
+
* just arrived (an event, never a DOM scroll). Measured on resize, never per frame.
|
|
3097
|
+
*/
|
|
3098
|
+
function prepareScrollPlay(el, swiper) {
|
|
3099
|
+
const runway = el.closest(`.${SLIDER_RUNWAY_CLASS}`);
|
|
3100
|
+
// The stage is what the runway holds: the `.swiper` itself, or the canvas's shell around it.
|
|
3101
|
+
const stage = runway ? Array.from(runway.children).find(c => c.contains(el)) : undefined;
|
|
3102
|
+
if (!runway || !stage)
|
|
3103
|
+
return;
|
|
3104
|
+
stage.setAttribute(SceneAttribute.Stage, '');
|
|
3105
|
+
runway.style.setProperty(SLIDER_STEPS_PROPERTY, String(Math.max(0, (swiper.slides?.length ?? 1) - 1)));
|
|
3106
|
+
const measure = () => runway.style.setProperty('--slider-h', `${stage.offsetHeight}px`);
|
|
3107
|
+
measure();
|
|
3108
|
+
const Observer = stage.ownerDocument?.defaultView?.ResizeObserver;
|
|
3109
|
+
if (Observer)
|
|
3110
|
+
new Observer(measure).observe(stage);
|
|
3111
|
+
el.dispatchEvent(new CustomEvent(SCENE_WAKE_EVENT, { bubbles: true }));
|
|
3112
|
+
}
|
|
3025
3113
|
/** The inputs a string-path slider carries (`data-iox-slider`), or null. */
|
|
3026
3114
|
function sliderInputsOf(el) {
|
|
3027
3115
|
const raw = el.getAttribute(SLIDER_INPUTS_ATTRIBUTE);
|
|
@@ -3041,6 +3129,7 @@ const SLIDER_INPUT_NAMES = [
|
|
|
3041
3129
|
'autoHeight', 'slideToClickedSlide', 'freeMode', 'loop', 'enableNavigation', 'enablePagination', 'enableScrollbar', 'enableAutoplay',
|
|
3042
3130
|
'enableKeyboard', 'enableMousewheel', 'enableZoom', 'enableGrid', 'enableParallax', 'autoplayDelay', 'autoplayPauseOnMouseEnter',
|
|
3043
3131
|
'autoplayDisableOnInteraction', 'paginationType', 'paginationClickable', 'paginationDynamicBullets', 'gridRows', 'breakpoints',
|
|
3132
|
+
'scrollPlays',
|
|
3044
3133
|
];
|
|
3045
3134
|
function sliderInputsFromProps(props, responsive) {
|
|
3046
3135
|
const out = {};
|
|
@@ -3057,7 +3146,8 @@ function sliderInputsFromProps(props, responsive) {
|
|
|
3057
3146
|
* shared boot). The slides render into `.swiper-wrapper` (`childrenHost` — the `.swiper-slide` direct-child invariant,
|
|
3058
3147
|
* slider.md); the control PARTS (CC3: Previous, Next, Pause, Pagination — `childHostFor`) render beside it, inside
|
|
3059
3148
|
* `.swiper`: those before the first slide before the wrapper, the rest after it. A saved slider with no parts keeps
|
|
3060
|
-
* Swiper-drawn controls (the legacy switches). Swiper is booted by the ONE shared `bootSlider`.
|
|
3149
|
+
* Swiper-drawn controls (the legacy switches). Swiper is booted by the ONE shared `bootSlider`. A slider the scroll plays
|
|
3150
|
+
* (premium M4) sits in its runway — the string path writes the same `iox-slider-runway` wrapper.
|
|
3061
3151
|
*/
|
|
3062
3152
|
class ClientSliderContainerComponent {
|
|
3063
3153
|
constructor(platformId) {
|
|
@@ -3103,6 +3193,9 @@ class ClientSliderContainerComponent {
|
|
|
3103
3193
|
this.responsive = null;
|
|
3104
3194
|
/** The slider's controls are parts (set by the renderer from the node): Swiper draws none of its own. */
|
|
3105
3195
|
this.controlParts = false;
|
|
3196
|
+
/** Premium M4: the scroll plays it — a runway (a Scene root the ONE driver drives) holds it mid-screen; otherwise the
|
|
3197
|
+
* wrapper is `display: contents` and the slider lays out exactly as before. */
|
|
3198
|
+
this.scrollPlays = false;
|
|
3106
3199
|
this.swiper = null;
|
|
3107
3200
|
this.slidesSeen = false;
|
|
3108
3201
|
this.instanceRegistry = inject(ComponentInstanceRegistryService);
|
|
@@ -3151,11 +3244,12 @@ class ClientSliderContainerComponent {
|
|
|
3151
3244
|
enableZoom: this.enableZoom, enableGrid: this.enableGrid, enableParallax: this.enableParallax, autoplayDelay: this.autoplayDelay,
|
|
3152
3245
|
autoplayPauseOnMouseEnter: this.autoplayPauseOnMouseEnter, autoplayDisableOnInteraction: this.autoplayDisableOnInteraction,
|
|
3153
3246
|
paginationType: this.paginationType, paginationClickable: this.paginationClickable, paginationDynamicBullets: this.paginationDynamicBullets,
|
|
3154
|
-
gridRows: this.gridRows, breakpoints: this.breakpoints, responsive: this.responsive,
|
|
3247
|
+
gridRows: this.gridRows, breakpoints: this.breakpoints, responsive: this.responsive, scrollPlays: this.scrollPlays,
|
|
3155
3248
|
};
|
|
3156
3249
|
}
|
|
3157
3250
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: ClientSliderContainerComponent, deps: [{ token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3158
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.31", type: ClientSliderContainerComponent, isStandalone: false, selector: "iox-slider-container", inputs: { nodeId: "nodeId", dir: "dir", direction: "direction", loop: "loop", slidesPerView: "slidesPerView", slidesPerGroup: "slidesPerGroup", spaceBetween: "spaceBetween", speed: "speed", effect: "effect", grabCursor: "grabCursor", centeredSlides: "centeredSlides", initialSlide: "initialSlide", autoHeight: "autoHeight", slideToClickedSlide: "slideToClickedSlide", freeMode: "freeMode", enableNavigation: "enableNavigation", enablePagination: "enablePagination", enableScrollbar: "enableScrollbar", enableAutoplay: "enableAutoplay", enableKeyboard: "enableKeyboard", enableMousewheel: "enableMousewheel", enableZoom: "enableZoom", enableGrid: "enableGrid", enableParallax: "enableParallax", autoplayDelay: "autoplayDelay", autoplayPauseOnMouseEnter: "autoplayPauseOnMouseEnter", autoplayDisableOnInteraction: "autoplayDisableOnInteraction", paginationType: "paginationType", paginationClickable: "paginationClickable", paginationDynamicBullets: "paginationDynamicBullets", navigationColor: "navigationColor", paginationColor: "paginationColor", gridRows: "gridRows", breakpoints: "breakpoints", responsive: "responsive", controlParts: "controlParts" }, viewQueries: [{ propertyName: "childrenHost", first: true, predicate: ["childrenHost"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "leadHost", first: true, predicate: ["leadHost"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "trailHost", first: true, predicate: ["trailHost"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "swiperEl", first: true, predicate: ["swiperEl"], descendants: true, static: true }], ngImport: i0, template: `
|
|
3251
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.31", type: ClientSliderContainerComponent, isStandalone: false, selector: "iox-slider-container", inputs: { nodeId: "nodeId", dir: "dir", direction: "direction", loop: "loop", slidesPerView: "slidesPerView", slidesPerGroup: "slidesPerGroup", spaceBetween: "spaceBetween", speed: "speed", effect: "effect", grabCursor: "grabCursor", centeredSlides: "centeredSlides", initialSlide: "initialSlide", autoHeight: "autoHeight", slideToClickedSlide: "slideToClickedSlide", freeMode: "freeMode", enableNavigation: "enableNavigation", enablePagination: "enablePagination", enableScrollbar: "enableScrollbar", enableAutoplay: "enableAutoplay", enableKeyboard: "enableKeyboard", enableMousewheel: "enableMousewheel", enableZoom: "enableZoom", enableGrid: "enableGrid", enableParallax: "enableParallax", autoplayDelay: "autoplayDelay", autoplayPauseOnMouseEnter: "autoplayPauseOnMouseEnter", autoplayDisableOnInteraction: "autoplayDisableOnInteraction", paginationType: "paginationType", paginationClickable: "paginationClickable", paginationDynamicBullets: "paginationDynamicBullets", navigationColor: "navigationColor", paginationColor: "paginationColor", gridRows: "gridRows", breakpoints: "breakpoints", responsive: "responsive", controlParts: "controlParts", scrollPlays: "scrollPlays" }, viewQueries: [{ propertyName: "childrenHost", first: true, predicate: ["childrenHost"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "leadHost", first: true, predicate: ["leadHost"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "trailHost", first: true, predicate: ["trailHost"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "swiperEl", first: true, predicate: ["swiperEl"], descendants: true, static: true }], ngImport: i0, template: `
|
|
3252
|
+
<div [class.iox-slider-runway]="scrollPlays" [attr.data-iox-scene]="scrollPlays ? '' : null" [style.display]="scrollPlays ? null : 'contents'">
|
|
3159
3253
|
<div class="swiper" [class]="'swiper iox-node-' + nodeId" [attr.dir]="dir" [style.direction]="dir"
|
|
3160
3254
|
[style.--swiper-navigation-color]="legacyControls ? (navigationColor || null) : null"
|
|
3161
3255
|
[style.--swiper-pagination-color]="legacyControls ? (paginationColor || null) : null" #swiperEl>
|
|
@@ -3169,11 +3263,13 @@ class ClientSliderContainerComponent {
|
|
|
3169
3263
|
<div *ngIf="legacyControls && enablePagination" class="swiper-pagination"></div>
|
|
3170
3264
|
<div *ngIf="enableScrollbar" class="swiper-scrollbar"></div>
|
|
3171
3265
|
</div>
|
|
3266
|
+
</div>
|
|
3172
3267
|
`, isInline: true, styles: [".swiper{width:100%;height:100%;box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
3173
3268
|
}
|
|
3174
3269
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImport: i0, type: ClientSliderContainerComponent, decorators: [{
|
|
3175
3270
|
type: Component,
|
|
3176
3271
|
args: [{ selector: 'iox-slider-container', template: `
|
|
3272
|
+
<div [class.iox-slider-runway]="scrollPlays" [attr.data-iox-scene]="scrollPlays ? '' : null" [style.display]="scrollPlays ? null : 'contents'">
|
|
3177
3273
|
<div class="swiper" [class]="'swiper iox-node-' + nodeId" [attr.dir]="dir" [style.direction]="dir"
|
|
3178
3274
|
[style.--swiper-navigation-color]="legacyControls ? (navigationColor || null) : null"
|
|
3179
3275
|
[style.--swiper-pagination-color]="legacyControls ? (paginationColor || null) : null" #swiperEl>
|
|
@@ -3187,6 +3283,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImpo
|
|
|
3187
3283
|
<div *ngIf="legacyControls && enablePagination" class="swiper-pagination"></div>
|
|
3188
3284
|
<div *ngIf="enableScrollbar" class="swiper-scrollbar"></div>
|
|
3189
3285
|
</div>
|
|
3286
|
+
</div>
|
|
3190
3287
|
`, standalone: false, styles: [".swiper{width:100%;height:100%;box-sizing:border-box}\n"] }]
|
|
3191
3288
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
3192
3289
|
type: Inject,
|
|
@@ -3263,6 +3360,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.31", ngImpo
|
|
|
3263
3360
|
type: Input
|
|
3264
3361
|
}], controlParts: [{
|
|
3265
3362
|
type: Input
|
|
3363
|
+
}], scrollPlays: [{
|
|
3364
|
+
type: Input
|
|
3266
3365
|
}], childrenHost: [{
|
|
3267
3366
|
type: ViewChild,
|
|
3268
3367
|
args: ['childrenHost', { read: ViewContainerRef, static: true }]
|
|
@@ -7771,6 +7870,170 @@ function isCurrentLink(href, currentPath, options = {}) {
|
|
|
7771
7870
|
return !!options.prefix && target !== '' && here.startsWith(`${target}/`);
|
|
7772
7871
|
}
|
|
7773
7872
|
|
|
7873
|
+
/**
|
|
7874
|
+
* A header that HIDES (premium components T2, M4): it steps aside while the page scrolls down and comes back the moment
|
|
7875
|
+
* it scrolls up — ONE runtime for the live site (the window's scroll) and the builder canvas (its Lenis scroll, handed in
|
|
7876
|
+
* through `update`). It never moves while the visitor is inside it: keyboard focus in the header, or its own drawer
|
|
7877
|
+
* open, keeps it in place, and it is always there at the top of the page.
|
|
7878
|
+
*
|
|
7879
|
+
* Motion (Emil 30/41/52/59/192): `translate` only, from the live value (a run interrupted by a change of direction turns
|
|
7880
|
+
* back from where it is — never stacked); the exit is faster than the return (dur-fast out, dur-ui back, on the look's
|
|
7881
|
+
* standard easing — the tokens collapse with the look's motion); under reduced motion it fades in place (opacity, no
|
|
7882
|
+
* movement — gentler, not zero), and is not clickable while faded. The return RELEASES (no inline frame is left), the
|
|
7883
|
+
* hidden frame is held, as every exit in the product (M2's settle rule).
|
|
7884
|
+
*
|
|
7885
|
+
* A header that only STAYS needs no runtime: the shared CSS keeps it at the top (`iox-design.css`).
|
|
7886
|
+
*/
|
|
7887
|
+
/** Page px the scroll must travel in one direction before the header answers — past a trackpad's jitter. */
|
|
7888
|
+
const HEADER_SCROLL_HYSTERESIS_PX = 6;
|
|
7889
|
+
const FALLBACK_HIDE_MS = 150;
|
|
7890
|
+
const FALLBACK_SHOW_MS = 200;
|
|
7891
|
+
const FALLBACK_EASING = 'ease-out';
|
|
7892
|
+
const HIDE_DURATION_TOKEN = '--iox-dur-fast';
|
|
7893
|
+
const SHOW_DURATION_TOKEN = '--iox-dur-ui';
|
|
7894
|
+
const EASING_TOKEN = '--iox-ease-standard';
|
|
7895
|
+
const SUPPORTED_EASING = /^(linear|ease|ease-in|ease-out|ease-in-out|cubic-bezier\(.+\)|linear\(.+\)|steps\(.+\))$/;
|
|
7896
|
+
const OPEN_DIALOG = 'dialog[open]';
|
|
7897
|
+
/** `120ms` / `0.2s` → milliseconds; anything else → null. */
|
|
7898
|
+
function durationMs(value) {
|
|
7899
|
+
const m = /^(-?\d*\.?\d+)(ms|s)$/.exec(String(value ?? '').trim());
|
|
7900
|
+
if (!m)
|
|
7901
|
+
return null;
|
|
7902
|
+
const n = Number(m[1]) * (m[2] === 's' ? 1000 : 1);
|
|
7903
|
+
return Number.isFinite(n) && n >= 0 ? n : null;
|
|
7904
|
+
}
|
|
7905
|
+
/**
|
|
7906
|
+
* Whether a hiding header should step aside now: the page moved DOWN past the header's own height, the header is not
|
|
7907
|
+
* held (focus inside, its drawer open). Pure: the direction and the offsets come from the caller.
|
|
7908
|
+
*/
|
|
7909
|
+
function headerShouldHide(offset, delta, headerHeight, held) {
|
|
7910
|
+
if (held || !(delta > 0))
|
|
7911
|
+
return false;
|
|
7912
|
+
return offset > Math.max(0, headerHeight);
|
|
7913
|
+
}
|
|
7914
|
+
class HeaderRuntime {
|
|
7915
|
+
constructor(header, options = {}) {
|
|
7916
|
+
this.header = header;
|
|
7917
|
+
this.options = options;
|
|
7918
|
+
this.lastOffset = 0;
|
|
7919
|
+
this.hidden = false;
|
|
7920
|
+
this.height = 0;
|
|
7921
|
+
this.anim = null;
|
|
7922
|
+
this.onFocusIn = () => this.setHidden(false);
|
|
7923
|
+
const view = header.ownerDocument?.defaultView;
|
|
7924
|
+
this.height = header.offsetHeight;
|
|
7925
|
+
this.resize = view?.ResizeObserver ? new view.ResizeObserver(() => { this.height = this.header.offsetHeight; }) : null;
|
|
7926
|
+
this.resize?.observe(header);
|
|
7927
|
+
header.addEventListener('focusin', this.onFocusIn);
|
|
7928
|
+
}
|
|
7929
|
+
/** True while the header has stepped aside. */
|
|
7930
|
+
get isHidden() {
|
|
7931
|
+
return this.hidden;
|
|
7932
|
+
}
|
|
7933
|
+
/** The page now stands at `offset` page px (layout px — the canvas divides out its zoom). */
|
|
7934
|
+
update(offset) {
|
|
7935
|
+
if (!Number.isFinite(offset))
|
|
7936
|
+
return;
|
|
7937
|
+
const delta = offset - this.lastOffset;
|
|
7938
|
+
if (offset <= this.height) {
|
|
7939
|
+
// Its own height from the top: the header is where it belongs, whichever way the page moves.
|
|
7940
|
+
this.lastOffset = offset;
|
|
7941
|
+
this.setHidden(false);
|
|
7942
|
+
return;
|
|
7943
|
+
}
|
|
7944
|
+
if (Math.abs(delta) < HEADER_SCROLL_HYSTERESIS_PX)
|
|
7945
|
+
return;
|
|
7946
|
+
this.lastOffset = offset;
|
|
7947
|
+
this.setHidden(headerShouldHide(offset, delta, this.height, this.held()));
|
|
7948
|
+
}
|
|
7949
|
+
/** Back in place now, with no motion (a page change, the runtime going away). */
|
|
7950
|
+
reset() {
|
|
7951
|
+
this.anim?.cancel();
|
|
7952
|
+
this.anim = null;
|
|
7953
|
+
this.hidden = false;
|
|
7954
|
+
this.header.removeAttribute(HeaderAttribute.Hidden);
|
|
7955
|
+
}
|
|
7956
|
+
destroy() {
|
|
7957
|
+
this.reset();
|
|
7958
|
+
this.resize?.disconnect();
|
|
7959
|
+
this.header.removeEventListener('focusin', this.onFocusIn);
|
|
7960
|
+
}
|
|
7961
|
+
held() {
|
|
7962
|
+
return this.header.matches(':focus-within') || !!this.header.querySelector(OPEN_DIALOG);
|
|
7963
|
+
}
|
|
7964
|
+
setHidden(hidden) {
|
|
7965
|
+
if (hidden === this.hidden)
|
|
7966
|
+
return;
|
|
7967
|
+
this.hidden = hidden;
|
|
7968
|
+
this.header.toggleAttribute(HeaderAttribute.Hidden, hidden);
|
|
7969
|
+
const reduce = prefersReducedMotion(this.options.host ?? this.header.ownerDocument?.defaultView ?? null);
|
|
7970
|
+
const prop = reduce ? 'opacity' : 'translate';
|
|
7971
|
+
const shown = reduce ? '1' : '0px 0px';
|
|
7972
|
+
const away = reduce ? '0' : '0px -100%';
|
|
7973
|
+
const style = this.header.ownerDocument?.defaultView?.getComputedStyle(this.header);
|
|
7974
|
+
// From the live value when a run is in flight (a change of direction mid-way turns back from where it is).
|
|
7975
|
+
const from = this.anim ? (style?.getPropertyValue(prop) || (hidden ? shown : away)) : (hidden ? shown : away);
|
|
7976
|
+
this.anim?.cancel();
|
|
7977
|
+
this.anim = null;
|
|
7978
|
+
if (typeof this.header.animate !== 'function')
|
|
7979
|
+
return;
|
|
7980
|
+
const duration = durationMs(style?.getPropertyValue(hidden ? HIDE_DURATION_TOKEN : SHOW_DURATION_TOKEN)) ?? (hidden ? FALLBACK_HIDE_MS : FALLBACK_SHOW_MS);
|
|
7981
|
+
const easing = style?.getPropertyValue(EASING_TOKEN)?.trim() ?? '';
|
|
7982
|
+
const anim = this.header.animate([{ [prop]: from }, { [prop]: hidden ? away : shown }], {
|
|
7983
|
+
duration, easing: SUPPORTED_EASING.test(easing) ? easing : FALLBACK_EASING, fill: hidden ? 'forwards' : 'none',
|
|
7984
|
+
});
|
|
7985
|
+
this.anim = anim;
|
|
7986
|
+
if (!hidden)
|
|
7987
|
+
anim.finished?.then(() => { if (this.anim === anim) {
|
|
7988
|
+
anim.cancel();
|
|
7989
|
+
this.anim = null;
|
|
7990
|
+
} }).catch(() => { });
|
|
7991
|
+
}
|
|
7992
|
+
}
|
|
7993
|
+
const HIDING_SELECTOR = `[${HeaderAttribute.Behaviour}="${HeaderBehaviour.Hides}"]`;
|
|
7994
|
+
/** The headers that hide while the page scrolls down: in `root`, or among `elements` (each, and what it holds — what a
|
|
7995
|
+
* runtime instance owns: the page's nodes or the globals'). */
|
|
7996
|
+
function hidingHeadersIn(root) {
|
|
7997
|
+
if (typeof root.querySelectorAll === 'function')
|
|
7998
|
+
return Array.from(root.querySelectorAll(HIDING_SELECTOR));
|
|
7999
|
+
const out = new Set();
|
|
8000
|
+
for (const el of root) {
|
|
8001
|
+
if (el.matches?.(HIDING_SELECTOR))
|
|
8002
|
+
out.add(el);
|
|
8003
|
+
el.querySelectorAll?.(HIDING_SELECTOR).forEach(h => out.add(h));
|
|
8004
|
+
}
|
|
8005
|
+
return [...out];
|
|
8006
|
+
}
|
|
8007
|
+
/**
|
|
8008
|
+
* The live site's door: every hiding header in `root` (or among `elements`) follows `source` (the window), through ONE
|
|
8009
|
+
* passive listener read once per frame. Returns the stop.
|
|
8010
|
+
*/
|
|
8011
|
+
function watchHeaders(source, root, options = {}) {
|
|
8012
|
+
const runtimes = hidingHeadersIn(root).map(el => new HeaderRuntime(el, options));
|
|
8013
|
+
if (!runtimes.length)
|
|
8014
|
+
return () => { };
|
|
8015
|
+
let frame = 0;
|
|
8016
|
+
const raf = typeof requestAnimationFrame === 'function' ? requestAnimationFrame : (fn) => setTimeout(() => fn(0), 16);
|
|
8017
|
+
const caf = typeof cancelAnimationFrame === 'function' ? cancelAnimationFrame : (id) => clearTimeout(id);
|
|
8018
|
+
const sync = () => {
|
|
8019
|
+
frame = 0;
|
|
8020
|
+
const offset = source.scrollY ?? source.scrollTop ?? 0;
|
|
8021
|
+
for (const r of runtimes)
|
|
8022
|
+
r.update(offset);
|
|
8023
|
+
};
|
|
8024
|
+
const onScroll = () => { if (!frame)
|
|
8025
|
+
frame = raf(sync); };
|
|
8026
|
+
source.addEventListener('scroll', onScroll, { passive: true });
|
|
8027
|
+
sync();
|
|
8028
|
+
return () => {
|
|
8029
|
+
source.removeEventListener('scroll', onScroll);
|
|
8030
|
+
if (frame)
|
|
8031
|
+
caf(frame);
|
|
8032
|
+
for (const r of runtimes)
|
|
8033
|
+
r.destroy();
|
|
8034
|
+
};
|
|
8035
|
+
}
|
|
8036
|
+
|
|
7774
8037
|
/**
|
|
7775
8038
|
* The accessibility attributes a node renders (CC1: N2 current page, N3 dialog openers, N4 a drawer
|
|
7776
8039
|
* that closes when the window widens, N6 accessible names). ONE function decides them and every
|
|
@@ -7789,6 +8052,8 @@ const SLIDER_PAUSE_ROLE = 'slider.pause';
|
|
|
7789
8052
|
const NAMED_GROUP_ROLES = ['segmented'];
|
|
7790
8053
|
/** Carries the min-width (px) at which an open dialog closes itself; the engine listens on it. */
|
|
7791
8054
|
const DIALOG_CLOSE_ABOVE_ATTRIBUTE = 'data-iox-dialog-close-above';
|
|
8055
|
+
/** A slide's caption (premium M4, T3): the Slider's Caption part shows the caption of the slide in view. */
|
|
8056
|
+
const SLIDE_CAPTION_ATTRIBUTE = 'data-iox-caption';
|
|
7792
8057
|
var A11yAttribute;
|
|
7793
8058
|
(function (A11yAttribute) {
|
|
7794
8059
|
A11yAttribute["Label"] = "aria-label";
|
|
@@ -7800,6 +8065,7 @@ var A11yAttribute;
|
|
|
7800
8065
|
const MANAGED_A11Y_ATTRIBUTES = [
|
|
7801
8066
|
A11yAttribute.Label, A11yAttribute.Hidden, A11yAttribute.Current, A11yAttribute.Id,
|
|
7802
8067
|
'aria-haspopup', 'aria-expanded', 'aria-controls', DIALOG_CLOSE_ABOVE_ATTRIBUTE,
|
|
8068
|
+
HeaderAttribute.Behaviour, HeaderAttribute.Edge, SLIDE_CAPTION_ATTRIBUTE,
|
|
7803
8069
|
];
|
|
7804
8070
|
/** A content trait's value from `props` (serialized) or `traits[]` (builder). */
|
|
7805
8071
|
function nodeTraitValue(node, name) {
|
|
@@ -7844,6 +8110,13 @@ function nodeA11yAttributes(node, ctx = {}) {
|
|
|
7844
8110
|
if (minWidth !== null)
|
|
7845
8111
|
out[DIALOG_CLOSE_ABOVE_ATTRIBUTE] = String(minWidth);
|
|
7846
8112
|
}
|
|
8113
|
+
// T2 (M4): how a header behaves as the page scrolls — the shared CSS and the header runtime read these.
|
|
8114
|
+
Object.assign(out, headerAttributes(nodeTraitValue(node, HeaderTrait.Behaviour), nodeTraitValue(node, HeaderTrait.Edge)));
|
|
8115
|
+
if (node.type === SLIDE_TYPE) {
|
|
8116
|
+
const caption = trimmed$1(nodeTraitValue(node, SLIDE_CAPTION_TRAIT));
|
|
8117
|
+
if (caption)
|
|
8118
|
+
out[SLIDE_CAPTION_ATTRIBUTE] = caption;
|
|
8119
|
+
}
|
|
7847
8120
|
return out;
|
|
7848
8121
|
}
|
|
7849
8122
|
/** The attributes as an HTML string fragment (` name="value"`…) for a string renderer. */
|
|
@@ -10383,5 +10656,5 @@ function attachStringForm(form, options = {}) {
|
|
|
10383
10656
|
* Generated bundle index. Do not edit.
|
|
10384
10657
|
*/
|
|
10385
10658
|
|
|
10386
|
-
export { A11yAttribute, A11yTrait, ACCESSIBLE_NAME_TYPES, AOSService, ARIA_CURRENT_PAGE, BACKDROP_TWIN_KEY, BACKDROP_WHOLE_KEY, BREAKPOINTS, Breakpoint, BreakpointQueryKind, BuilderButtonComponent, BuilderDividerComponent, BuilderHeadingComponent, BuilderIconComponent, BuilderImageComponent, BuilderLinkComponent, BuilderSpacerComponent, ButtonBlockComponent, CALENDAR_CLOSING_ATTRIBUTE, CALENDAR_DESIGN_ATTRIBUTE, CALENDAR_INSTANT_ATTRIBUTE, CALENDAR_SHEET_QUERY, COMPONENT_STATE_SELECTOR, CONTAINER_HTML_TAGS, CONTEXT_ACTION_TYPES, CURRENT_LINK_TYPES, CalendarClass, CardComponent, ClientGalleryComponent, ClientListComponent, ClientListItemComponent, ClientRepeaterComponent, ClientSliderContainerComponent, ClientSliderSlideComponent, ComponentInstanceRegistryService, ComponentState, ContainerComponent, ContextStore, DECORATIVE_TYPES, DEFAULT_GALLERY_SCHEDULER, DEFAULT_INTERACTION_EASING, DEFAULT_PAGE_TRANSITION, DEFAULT_PAGE_TRANSITION_DURATION, DEFAULT_PAGE_TRANSITION_EASING, DEFAULT_PAGE_TRANSITION_PERSPECTIVE, DEFAULT_PHOSPHOR_WEIGHT, DEFAULT_WIDTH_BY_TYPE, DIALOG_CLOSE_ABOVE_ATTRIBUTE, DIALOG_NODE_TYPE, DatePickerRuntime, DeclarationContext, EASING_KEYWORDS, EASING_TOKENS, ENTRANCE_ACTION_TYPES, ENTRANCE_FALLBACK_CSS, ENTRANCE_NOSCRIPT_CSS, ENTRANCE_PRESTATE_ATTRIBUTE, EXIT_ACTION_TYPES, EasingKeyword, EasingToken, FLOATING_GAP, FLOATING_MARGIN, FloatingSide, FormRenderState, FormRuntimeService, GALLERY_EFFECTS, GALLERY_EFFECT_DESCRIPTORS, GalleryLoop, HOVER_DEFAULT_TRANSITION_TRAITS, HOVER_MEDIA_QUERY, HOVER_STATES, INTERACTION_ANIMATION_ID, INTERACTION_HIDDEN_ATTRIBUTE, IOX_BUILDER_EVENTS, IOX_FORM_MESSAGES, IOX_FORM_NAVIGATOR, IOX_FORM_TRANSPORT, IS_PREVIEW, IoxAnimateContainer, IoxAosDirective, IoxAosModule, IoxBuilderComponentsModule, IoxComponentRegistryService, IoxDialogComponent, IoxFieldComponent, IoxFormComponent, IoxFormErrorComponent, IoxFormSuccessComponent, IoxPageComponent, IoxPageModule, IoxSubmitButtonComponent, IoxUiModule, IoxVideoComponent, LAST_EMITTED_STATES, LEGACY_DIRECTION_KEY, LEGACY_HOVER_TRANSITION_TRAITS, LEGACY_SWIPER_CONTROLS, LinkedContainerComponent, MANAGED_A11Y_ATTRIBUTES, MAX_LINES_KEY, NAMED_GROUP_ROLES, NO_PAGE_TRANSITION, ON_STATE_ROLES, OUTER_STYLE_PROPS, PAGE_STYLE_TOKENS, PAGE_TOKEN_FALLBACKS, PAGE_TRANSITION_CATEGORIES, PAGE_TRANSITION_PRESETS, PART_CLASS_NAMES, PART_PAGINATION_MODIFIER, PHONE_TRANSITION_QUERY, PIPE_DESCRIPTORS, PIPE_REGISTRY, PageScrollProvider, PageStyleField, PageStyleSource, PointerKind, REDUCED_MOTION_QUERY, RELATIONAL_STATE_PSEUDO, RevealActionType, SCROLLED_ATTRIBUTE, SCROLLED_STATE_ROLE, SCROLLED_THRESHOLD_PX, SCROLL_EASINGS, SELF_PLAYING_TRIGGERS, SHAKE_DURATION_MS, SHAKE_EASING, SHAKE_KEYFRAMES, SLIDER_INPUTS_ATTRIBUTE, SLIDER_INPUT_NAMES, STATE_PSEUDO_CLASS, STRUCTURAL_STATES, SUPPRESSED_STYLE_PROPS_BY_TYPE, SWIPER_A11Y_OPTIONS, SWIPER_RESPONSIVE_TRAITS, SWIPER_TRIGGER_EVENTS, ScrollEasing, SectionComponent, SettleMode, StringFormRuntime, SwiperModuleName, TARGETED_STATE_SUFFIX, TEXT_ALIGN_KEY, TEXT_DIRECTION_KEY, TRANSITION_FEELS, TRANSITION_PROPERTY_KEY, TextAlign, TextBlockComponent, VALIDATION_STATES, VALIDATION_STATE_CLASS, VIRTUAL_TRAIT_GROUPS, VIRTUAL_TRAIT_KEYS, ViewPositionDirective, ViewPositionModule, VisibilityActionType, activeActions, animateAction, applyBindingPipes, applyFeel, attachDatePicker, attachDatePickers, attachStringForm, bootSlider, breakpointDef, breakpointForWidth, breakpointQueryFor, buildInteractionKeyframes, buildPartSelector, buildSwiperBreakpoints, buildTargetedStateSelector, buildTargetedSuffixSelector, buildTransitionTimeline, cascadeChain, clearInputOverride, clearOverride, closeAboveMediaQuery, collectContextSlotKeys, compileDeclarations, compilePageStyle, componentStatesFor, composeVirtualTraits, containerHtmlTag, contextActionEffect, contextSlotKeys, countOverrides, datePickerOf, declaredInputNames, decomposeBackdropFilter, defaultHoverTransitionTraits, defaultMessageResolver, deriveSeoFromContent, describePageStyle, describeSeoFields, dialogCloseAboveMinWidth, domHasSliderParts, effectiveActionType, effectiveTransitionId, entrancePreStateStyle, entranceStartsHidden, feelFor, fieldLanguage, finalKeyframe, framesFromLiveValue, gateHoverRule, getSeoValue, hasHoverState, hasOwnPageTransition, hasOwnTransition, initialSlotValues, isActionEnabled, isContextAction, isCubicBezier, isCurrentLink, isEasingToken, isExternalOrFragment, isGradientPaint, isHoverPointer, isHoverState, isInputOverriddenAt, isInteractionEasing, isLastEmittedStateKey, isOverriddenAt, isPressFeedback, isScrolled, isStructuralState, isValidSlotKey, isWholeBackdropSet, keyframePropertyName, keyframeStyleEntries, legacyEnterToTransition, mediaQueryFor, mergeSwiperBreakpoints, migrateLegacyDirection, migrateLegacyTextAlign, motionAllowed, nearestCommonAncestorId, needsAccessibleName, needsGroupName, nodeA11yAttributes, nodeCssId, nodeTraitValue, nodeUsesContext, normalizeAppPath, normalizeGalleryImage, normalizeIconClass, orderStatesForEmit, pageTransitionOf, parentBreakpoint, parseUrlList, partClassName, placeFloating, planPartRule, planResponsiveRules, planScroll, planStateRule, planSwiperOptions, playDualLayerTransition, playInteraction, prefersReducedMotion, renderDefaultDeclarations, resetPageStyleField, resetSeoField, resolveBoundValue, resolveContextValue, resolveGalleryEffect, resolveGalleryUrls, resolveInputChain, resolveInputs, resolveInteractionEasing, resolvePageTransition, resolvePath, resolveSeo, resolveStateStyles, resolveStyleProps, resolveToggleVisibility, resolveValueChain, rewriteViewportUnits, safeSetInput, serializeA11yAttributes, setDateFieldValue, setInputOverride, setOverride, setSeoAuto, setSeoBinding, setSeoOverride, setSeoValue, settleInteraction, settleModeFor, shakeElement, showCalendarDesign, sliderControlElements, sliderInputsFromProps, sliderInputsOf, splitOuterProps, splitPressFeedback, stateNamesIn, statePseudoClass, stateSelectorSuffix, stateTransitionProperties, stringFormRuntimeOf, stripSuppressedProps, swiperAutoplayAllowed, swiperLoopOptions, swiperModuleNames, syncNodeA11yAttributes, syncSubmitButtons, targetedStateSelector, transitionPropertyList, viewportTransitionContext, watchScrolled, withContextSlots, withStateTransitions, wrapInBreakpointQuery, wrapInMediaQuery };
|
|
10659
|
+
export { A11yAttribute, A11yTrait, ACCESSIBLE_NAME_TYPES, AOSService, ARIA_CURRENT_PAGE, BACKDROP_TWIN_KEY, BACKDROP_WHOLE_KEY, BREAKPOINTS, Breakpoint, BreakpointQueryKind, BuilderButtonComponent, BuilderDividerComponent, BuilderHeadingComponent, BuilderIconComponent, BuilderImageComponent, BuilderLinkComponent, BuilderSpacerComponent, ButtonBlockComponent, CALENDAR_CLOSING_ATTRIBUTE, CALENDAR_DESIGN_ATTRIBUTE, CALENDAR_INSTANT_ATTRIBUTE, CALENDAR_SHEET_QUERY, COMPONENT_STATE_SELECTOR, CONTAINER_HTML_TAGS, CONTEXT_ACTION_TYPES, CURRENT_LINK_TYPES, CalendarClass, CardComponent, ClientGalleryComponent, ClientListComponent, ClientListItemComponent, ClientRepeaterComponent, ClientSliderContainerComponent, ClientSliderSlideComponent, ComponentInstanceRegistryService, ComponentState, ContainerComponent, ContextStore, DECORATIVE_TYPES, DEFAULT_GALLERY_SCHEDULER, DEFAULT_INTERACTION_EASING, DEFAULT_PAGE_TRANSITION, DEFAULT_PAGE_TRANSITION_DURATION, DEFAULT_PAGE_TRANSITION_EASING, DEFAULT_PAGE_TRANSITION_PERSPECTIVE, DEFAULT_PHOSPHOR_WEIGHT, DEFAULT_WIDTH_BY_TYPE, DIALOG_CLOSE_ABOVE_ATTRIBUTE, DIALOG_NODE_TYPE, DatePickerRuntime, DeclarationContext, EASING_KEYWORDS, EASING_TOKENS, ELEMENT_STYLE_TRANSITION_EXTRAS, ENTRANCE_ACTION_TYPES, ENTRANCE_FALLBACK_CSS, ENTRANCE_NOSCRIPT_CSS, ENTRANCE_PRESTATE_ATTRIBUTE, EXIT_ACTION_TYPES, EasingKeyword, EasingToken, FLOATING_GAP, FLOATING_MARGIN, FloatingSide, FormRenderState, FormRuntimeService, GALLERY_EFFECTS, GALLERY_EFFECT_DESCRIPTORS, GalleryLoop, HEADER_SCROLL_HYSTERESIS_PX, HOVER_DEFAULT_TRANSITION_TRAITS, HOVER_MEDIA_QUERY, HOVER_STATES, HeaderRuntime, INTERACTION_ANIMATION_ID, INTERACTION_HIDDEN_ATTRIBUTE, IOX_BUILDER_EVENTS, IOX_FORM_MESSAGES, IOX_FORM_NAVIGATOR, IOX_FORM_TRANSPORT, IS_PREVIEW, IoxAnimateContainer, IoxAosDirective, IoxAosModule, IoxBuilderComponentsModule, IoxComponentRegistryService, IoxDialogComponent, IoxFieldComponent, IoxFormComponent, IoxFormErrorComponent, IoxFormSuccessComponent, IoxPageComponent, IoxPageModule, IoxSubmitButtonComponent, IoxUiModule, IoxVideoComponent, LAST_EMITTED_STATES, LEGACY_DIRECTION_KEY, LEGACY_HOVER_TRANSITION_TRAITS, LEGACY_SWIPER_CONTROLS, LinkedContainerComponent, MANAGED_A11Y_ATTRIBUTES, MAX_LINES_KEY, NAMED_GROUP_ROLES, NO_PAGE_TRANSITION, ON_STATE_ROLES, OUTER_STYLE_PROPS, PAGE_STYLE_TOKENS, PAGE_TOKEN_FALLBACKS, PAGE_TRANSITION_CATEGORIES, PAGE_TRANSITION_PRESETS, PART_CLASS_NAMES, PART_PAGINATION_MODIFIER, PHONE_TRANSITION_QUERY, PIPE_DESCRIPTORS, PIPE_REGISTRY, PageScrollProvider, PageStyleField, PageStyleSource, PointerKind, REDUCED_MOTION_QUERY, RELATIONAL_STATE_PSEUDO, RevealActionType, SCROLLED_ATTRIBUTE, SCROLLED_STATE_ROLE, SCROLLED_THRESHOLD_PX, SCROLL_EASINGS, SELF_PLAYING_TRIGGERS, SHAKE_DURATION_MS, SHAKE_EASING, SHAKE_KEYFRAMES, SLIDER_FEEL, SLIDER_INPUTS_ATTRIBUTE, SLIDER_INPUT_NAMES, SLIDER_PHONE_BREAKPOINT, SLIDER_RUNWAY_CLASS, SLIDER_STEPS_PROPERTY, SLIDE_CAPTION_ATTRIBUTE, STATE_PSEUDO_CLASS, STRUCTURAL_STATES, SUPPRESSED_STYLE_PROPS_BY_TYPE, SWIPER_A11Y_OPTIONS, SWIPER_RESPONSIVE_TRAITS, SWIPER_TRIGGER_EVENTS, ScrollEasing, SectionComponent, SettleMode, StringFormRuntime, SwiperModuleName, TARGETED_STATE_SUFFIX, TEXT_ALIGN_KEY, TEXT_DIRECTION_KEY, TRANSITION_FEELS, TRANSITION_PROPERTY_KEY, TextAlign, TextBlockComponent, VALIDATION_STATES, VALIDATION_STATE_CLASS, VIRTUAL_TRAIT_GROUPS, VIRTUAL_TRAIT_KEYS, ViewPositionDirective, ViewPositionModule, VisibilityActionType, activeActions, animateAction, applyBindingPipes, applyFeel, attachDatePicker, attachDatePickers, attachStringForm, bootSlider, breakpointDef, breakpointForWidth, breakpointQueryFor, buildInteractionKeyframes, buildPartSelector, buildSwiperBreakpoints, buildTargetedStateSelector, buildTargetedSuffixSelector, buildTransitionTimeline, cascadeChain, clearInputOverride, clearOverride, closeAboveMediaQuery, collectContextSlotKeys, compileDeclarations, compilePageStyle, componentStatesFor, composeVirtualTraits, containerHtmlTag, contextActionEffect, contextSlotKeys, countOverrides, datePickerOf, declaredInputNames, decomposeBackdropFilter, defaultHoverTransitionTraits, defaultMessageResolver, deriveSeoFromContent, describePageStyle, describeSeoFields, dialogCloseAboveMinWidth, domHasSliderParts, durationMs, effectiveActionType, effectiveTransitionId, entrancePreStateStyle, entranceStartsHidden, feelFor, fieldLanguage, finalKeyframe, framesFromLiveValue, gateHoverRule, getSeoValue, hasHoverState, hasOwnPageTransition, hasOwnTransition, headerShouldHide, hidingHeadersIn, initialSlotValues, isActionEnabled, isContextAction, isCubicBezier, isCurrentLink, isEasingToken, isExternalOrFragment, isGradientPaint, isHoverPointer, isHoverState, isInputOverriddenAt, isInteractionEasing, isLastEmittedStateKey, isOverriddenAt, isPressFeedback, isScrolled, isStructuralState, isValidSlotKey, isWholeBackdropSet, keyframePropertyName, keyframeStyleEntries, legacyEnterToTransition, mediaQueryFor, mergeSwiperBreakpoints, migrateLegacyDirection, migrateLegacyTextAlign, motionAllowed, nearestCommonAncestorId, needsAccessibleName, needsGroupName, nodeA11yAttributes, nodeCssId, nodeTraitValue, nodeUsesContext, normalizeAppPath, normalizeGalleryImage, normalizeIconClass, orderStatesForEmit, pageTransitionOf, parentBreakpoint, parseUrlList, partClassName, placeFloating, planPartRule, planResponsiveRules, planScroll, planStateRule, planSwiperOptions, playDualLayerTransition, playInteraction, prefersReducedMotion, renderDefaultDeclarations, resetPageStyleField, resetSeoField, resolveBoundValue, resolveContextValue, resolveGalleryEffect, resolveGalleryUrls, resolveInputChain, resolveInputs, resolveInteractionEasing, resolvePageTransition, resolvePath, resolveSeo, resolveStateStyles, resolveStyleProps, resolveToggleVisibility, resolveValueChain, rewriteViewportUnits, safeSetInput, serializeA11yAttributes, setDateFieldValue, setInputOverride, setOverride, setSeoAuto, setSeoBinding, setSeoOverride, setSeoValue, settleInteraction, settleModeFor, shakeElement, showCalendarDesign, sliderControlElements, sliderInputsFromProps, sliderInputsOf, sliderRunwayHtml, splitOuterProps, splitPressFeedback, stateNamesIn, statePseudoClass, stateSelectorSuffix, stateTransitionProperties, stringFormRuntimeOf, stripSuppressedProps, swiperAutoplayAllowed, swiperLoopOptions, swiperModuleNames, syncNodeA11yAttributes, syncSubmitButtons, targetedStateSelector, transitionPropertyList, viewportTransitionContext, watchHeaders, watchScrolled, withContextSlots, withPhoneDefaults, withStateTransitions, wrapInBreakpointQuery, wrapInMediaQuery };
|
|
10387
10660
|
//# sourceMappingURL=vectoriox-iox-ui.mjs.map
|