@vectoriox/iox-builder 1.8.0 → 1.9.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.
@@ -83,6 +83,10 @@ const ROUTE_ANIMATION_OPTIONS = [
83
83
  { value: 'flip', label: 'Flip', description: 'Perspective tilt + fade' },
84
84
  ];
85
85
  const EASING_OPTIONS$1 = [
86
+ // Strong symmetric in-out — the default. Slow to leave, quick through the middle, gentle to
87
+ // settle; this is what makes a long page transition read as smooth rather than sluggish.
88
+ { label: 'Smooth (default)', value: 'cubic-bezier(0.76, 0, 0.24, 1)' },
89
+ { label: 'Expo Out', value: 'cubic-bezier(0.16, 1, 0.3, 1)' },
86
90
  { label: 'Ease', value: 'ease' },
87
91
  { label: 'Ease In', value: 'ease-in' },
88
92
  { label: 'Ease Out', value: 'ease-out' },
@@ -112,8 +116,11 @@ function defaultPageSettings() {
112
116
  routeAnimation: {
113
117
  enter: 'fade',
114
118
  leave: 'fade',
115
- duration: 400,
116
- easing: 'ease',
119
+ // Defaults mirror DEFAULT_PAGE_TRANSITION* in @vectoriox/iox-ui: the parallax look at a
120
+ // long duration with the smooth in-out curve.
121
+ transition: 'parallax-up',
122
+ duration: 1500,
123
+ easing: 'cubic-bezier(0.76, 0, 0.24, 1)',
117
124
  },
118
125
  };
119
126
  }
@@ -2232,7 +2239,11 @@ class TypographyGroupStyleConfig extends GroupStyleConfig {
2232
2239
  new TraitConfig('fontSize', 'Font Size', TraitInputType.Scrub, { min: 8, max: 200, step: 1, units: UNITS_ALL }, '16px'),
2233
2240
  new TraitConfig('fontWeight', 'Weight', TraitInputType.Scrub, { min: 100, max: 900, step: 100, units: [''] }, '400'),
2234
2241
  new TraitConfig('color', 'Color', TraitInputType.Color, { allowGradient: false, allowTransparent: false, formats: ['hex', 'rgb', 'hsl'] }, '#000000'),
2235
- new TraitConfig('lineHeight', 'Line Height', TraitInputType.Scrub, { min: 0.5, max: 5, step: 0.05, units: [''] }, '1.5'),
2242
+ // Unitless on purpose (`units: ['']`): a unitless line-height inherits as a RATIO — each
2243
+ // descendant multiplies it by its OWN font-size — whereas `1.5em`/`24px` inherits a fixed
2244
+ // computed length that ignores the child's font-size. min:0 so a line box can be collapsed
2245
+ // completely (icons/glyph-only elements), which `0.5` used to block.
2246
+ new TraitConfig('lineHeight', 'Line Height', TraitInputType.Scrub, { min: 0, max: 5, step: 0.05, units: [''] }, '1.5'),
2236
2247
  new TraitConfig('letterSpacing', 'Spacing', TraitInputType.Scrub, { min: -5, max: 50, step: 0.5, units: UNITS_FIXED }, '0px'),
2237
2248
  new TraitConfig('textAlign', '', TraitInputType.SelectButton, [
2238
2249
  { value: 'left', icon: 'ph-thin ph-text-align-left' },
@@ -7484,10 +7495,10 @@ class BuilderIconComponentConfig extends ComponentConfig {
7484
7495
  fontSize: '24px',
7485
7496
  color: '#374151',
7486
7497
  // An icon is a glyph, not a paragraph — the Typography group's default line-height of
7487
- // 1.5 adds phantom vertical space and misaligns it. Default it to 1 so the box hugs the
7488
- // glyph. Serialized into styleProps (self-describing node), so the builder AND the SSR
7489
- // engine both compile `line-height: 1` — no engine-side special-case needed.
7490
- lineHeight: '1',
7498
+ // 1.5 adds phantom vertical space and misaligns it. Default to 0 so the line box is fully
7499
+ // collapsed and the icon contributes no extra vertical space (spacing comes from
7500
+ // padding/margin instead). Serialized into styleProps (self-describing node).
7501
+ lineHeight: '0',
7491
7502
  });
7492
7503
  }
7493
7504
  }