@itcase/ui 1.3.19 → 1.3.21

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.
@@ -16,12 +16,12 @@ require('lodash/upperFirst');
16
16
  require('../hooks/styleAttributes.js');
17
17
 
18
18
  function Grid(props) {
19
- var id = props.id, children = props.children, after = props.after, before = props.before, className = props.className, dataTour = props.dataTour, horizontalResizing = props.horizontalResizing, horizontalScroll = props.horizontalScroll, _a = props.tag, Tag = _a === undefined ? 'div' : _a, type = props.type, useGridSystem = props.useGridSystem, verticalResizing = props.verticalResizing, style = props.style, onClick = props.onClick;
19
+ var id = props.id, children = props.children, after = props.after, before = props.before, className = props.className, dataTour = props.dataTour, horizontalResizing = props.horizontalResizing, horizontalScroll = props.horizontalScroll, _a = props.tag, Tag = _a === undefined ? 'div' : _a, type = props.type, useGridSystem = props.useGridSystem, verticalResizing = props.verticalResizing, onClick = props.onClick, onDoubleClick = props.onDoubleClick;
20
20
  var classGenerator = useDeviceTargetClassGenerator.useDeviceTargetClassGenerator(props);
21
21
  var alignContentClass = classGenerator.alignContentClass, alignItemsClass = classGenerator.alignItemsClass, borderColorClass = classGenerator.borderColorClass, columnGapClass = classGenerator.columnGapClass, columnsClass = classGenerator.columnsClass, fillClass = classGenerator.fillClass, justifyContentClass = classGenerator.justifyContentClass, justifyItemsClass = classGenerator.justifyItemsClass, rowGapClass = classGenerator.rowGapClass, rowsClass = classGenerator.rowsClass;
22
22
  // @ts-expect-error
23
23
  var gridStyles = useStyles.useStyles(props).styles;
24
- return (jsxRuntime.jsxs(Tag, { className: clsx(className, 'grid', useGridSystem && "grid_state_system", horizontalScroll && "grid_scroll_horizontal", type && "grid_type_".concat(type), columnsClass && "grid_columns_".concat(columnsClass), rowsClass && "grid_rows_".concat(rowsClass), rowGapClass && "grid_row-gap_".concat(rowGapClass), columnGapClass && "grid_column-gap_".concat(columnGapClass), alignContentClass && "grid_align-content_".concat(alignContentClass), alignItemsClass && "grid_align-items_".concat(alignItemsClass), borderColorClass && "border-color_".concat(borderColorClass), justifyContentClass && "grid_justify-content_".concat(justifyContentClass), justifyItemsClass && "grid_justify-items_".concat(justifyItemsClass), fillClass && "fill_".concat(fillClass), horizontalResizing && "grid_horizontal-resizing_".concat(horizontalResizing), verticalResizing && "grid_vertical-resizing_".concat(verticalResizing)), "data-tour": dataTour, id: id, style: Object.assign({}, gridStyles, style), onClick: onClick, children: [before && jsxRuntime.jsx("div", { className: "grid__before", children: before }), children, after && jsxRuntime.jsx("div", { className: "grid__after", children: after })] }));
24
+ return (jsxRuntime.jsxs(Tag, { className: clsx(className, 'grid', useGridSystem && "grid_state_system", horizontalScroll && "grid_scroll_horizontal", type && "grid_type_".concat(type), columnsClass && "grid_columns_".concat(columnsClass), rowsClass && "grid_rows_".concat(rowsClass), rowGapClass && "grid_row-gap_".concat(rowGapClass), columnGapClass && "grid_column-gap_".concat(columnGapClass), alignContentClass && "grid_align-content_".concat(alignContentClass), alignItemsClass && "grid_align-items_".concat(alignItemsClass), borderColorClass && "border-color_".concat(borderColorClass), justifyContentClass && "grid_justify-content_".concat(justifyContentClass), justifyItemsClass && "grid_justify-items_".concat(justifyItemsClass), fillClass && "fill_".concat(fillClass), horizontalResizing && "grid_horizontal-resizing_".concat(horizontalResizing), verticalResizing && "grid_vertical-resizing_".concat(verticalResizing)), "data-tour": dataTour, id: id, style: gridStyles, onClick: onClick, onDoubleClick: onDoubleClick, children: [before && jsxRuntime.jsx("div", { className: "grid__before", children: before }), children, after && jsxRuntime.jsx("div", { className: "grid__after", children: after })] }));
25
25
  }
26
26
 
27
27
  function GridItem(props) {
@@ -0,0 +1,60 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var React = require('react');
5
+ var clsx = require('clsx');
6
+ var UIContext = require('../context/UIContext.js');
7
+ var useDeviceTargetClassGenerator = require('../hooks/useDeviceTargetClassGenerator.js');
8
+ var useStyles = require('../hooks/useStyles.js');
9
+ require('../hooks/useMediaQueries.js');
10
+ require('react-responsive');
11
+ require('../../tslib.es6-CCZ3TN_7.js');
12
+ require('lodash/camelCase');
13
+ require('lodash/castArray');
14
+ require('lodash/maxBy');
15
+ require('lodash/upperFirst');
16
+ require('../hooks/styleAttributes.js');
17
+
18
+ var heroTitleAppearance = {
19
+ dev: {
20
+ textColor: 'surfaceTextPrimary',
21
+ },
22
+ };
23
+
24
+ var heroTitleConfig = {
25
+ appearance: heroTitleAppearance,
26
+ setAppearance: function (newComponent) {
27
+ heroTitleConfig.appearance = newComponent;
28
+ },
29
+ };
30
+ function HeroTitle(props) {
31
+ var children = props.children, after = props.after, afterWrapper = props.afterWrapper, appearance = props.appearance, before = props.before, beforeWrapper = props.beforeWrapper, className = props.className, dataTour = props.dataTour, mode = props.mode, _a = props.size, size = _a === undefined ? 'h3' : _a, sizeDesktop = props.sizeDesktop, sizeMobile = props.sizeMobile, sizeTablet = props.sizeTablet, _b = props.tag, tag = _b === undefined ? 'span' : _b, text = props.text, textWrap = props.textWrap, onClick = props.onClick;
32
+ var _c = UIContext.useUserDeviceContext(), isMobile = _c.isMobile, isTablet = _c.isTablet, isDesktop = _c.isDesktop;
33
+ // @ts-expect-error
34
+ var appearanceConfig = heroTitleConfig.appearance && heroTitleConfig.appearance[appearance];
35
+ var classGenerator = useDeviceTargetClassGenerator.useDeviceTargetClassGenerator(props, appearanceConfig);
36
+ var directionClass = classGenerator.directionClass, fillClass = classGenerator.fillClass, heightClass = classGenerator.heightClass, svgFillClass = classGenerator.svgFillClass, svgFillHoverClass = classGenerator.svgFillHoverClass, textAlignClass = classGenerator.textAlignClass, textColorActiveClass = classGenerator.textColorActiveClass, textColorClass = classGenerator.textColorClass, textColorGradientClass = classGenerator.textColorGradientClass, textColorHoverClass = classGenerator.textColorHoverClass, textStyleClass = classGenerator.textStyleClass, textTruncateClass = classGenerator.textTruncateClass, textWeightClass = classGenerator.textWeightClass, typeClass = classGenerator.typeClass, widthClass = classGenerator.widthClass, wrapperDirectionClass = classGenerator.wrapperDirectionClass;
37
+ // @ts-expect-error
38
+ var _d = useStyles.useStyles(props), heroTitleStyles = _d.styles, heroTitleWrapperStyles = _d.wrapper;
39
+ // Element type (h1, h2, ..., h6)
40
+ var Tag = React.useMemo(function () {
41
+ if (tag) {
42
+ return tag;
43
+ }
44
+ if (isMobile && sizeMobile) {
45
+ return sizeMobile;
46
+ }
47
+ if (isTablet && sizeTablet) {
48
+ return sizeTablet;
49
+ }
50
+ if (isDesktop && sizeDesktop) {
51
+ return sizeDesktop;
52
+ }
53
+ return size ? size : 'span';
54
+ }, [isMobile, isTablet, isDesktop]);
55
+ return (jsxRuntime.jsxs(Tag, { className: clsx(className, 'heroTitle', fillClass && "fill_".concat(fillClass), svgFillClass && "svg_fill_".concat(svgFillClass), svgFillHoverClass && "svg_fill_hover_".concat(svgFillHoverClass), widthClass && "width_".concat(widthClass), heightClass && "height_".concat(heightClass), size && "hero-title_size_".concat(size), mode && "hero-title_mode_".concat(mode), directionClass && "hero-title_direction_".concat(directionClass), 'text', textColorClass && "text-color_".concat(textColorClass), textColorActiveClass && "text-color_active_".concat(textColorActiveClass), textColorHoverClass && "text-color_hover_".concat(textColorHoverClass), typeClass && "hero-title_type_".concat(typeClass), textColorGradientClass && "text-gradient_".concat(textColorGradientClass), textStyleClass && "text-style_".concat(textStyleClass), textWeightClass && "text-weight_".concat(textWeightClass), textWrap && "word-wrap_".concat(textWrap)), "data-tour": dataTour, style: heroTitleStyles, onClick: onClick, children: [before, jsxRuntime.jsxs("span", { className: clsx(textAlignClass && "text-align_".concat(textAlignClass), wrapperDirectionClass && "hero-title-direction_".concat(wrapperDirectionClass), 'hero-title__wrapper', textTruncateClass && "text-truncate_".concat(textTruncateClass)), style: heroTitleWrapperStyles, children: [beforeWrapper, children || text, afterWrapper] }), after] }));
56
+ }
57
+
58
+ exports.HeroTitle = HeroTitle;
59
+ exports.heroTitleAppearance = heroTitleAppearance;
60
+ exports.heroTitleConfig = heroTitleConfig;
@@ -14,12 +14,12 @@ import 'lodash/upperFirst';
14
14
  import '../hooks/styleAttributes.js';
15
15
 
16
16
  function Grid(props) {
17
- var id = props.id, children = props.children, after = props.after, before = props.before, className = props.className, dataTour = props.dataTour, horizontalResizing = props.horizontalResizing, horizontalScroll = props.horizontalScroll, _a = props.tag, Tag = _a === undefined ? 'div' : _a, type = props.type, useGridSystem = props.useGridSystem, verticalResizing = props.verticalResizing, style = props.style, onClick = props.onClick;
17
+ var id = props.id, children = props.children, after = props.after, before = props.before, className = props.className, dataTour = props.dataTour, horizontalResizing = props.horizontalResizing, horizontalScroll = props.horizontalScroll, _a = props.tag, Tag = _a === undefined ? 'div' : _a, type = props.type, useGridSystem = props.useGridSystem, verticalResizing = props.verticalResizing, onClick = props.onClick, onDoubleClick = props.onDoubleClick;
18
18
  var classGenerator = useDeviceTargetClassGenerator(props);
19
19
  var alignContentClass = classGenerator.alignContentClass, alignItemsClass = classGenerator.alignItemsClass, borderColorClass = classGenerator.borderColorClass, columnGapClass = classGenerator.columnGapClass, columnsClass = classGenerator.columnsClass, fillClass = classGenerator.fillClass, justifyContentClass = classGenerator.justifyContentClass, justifyItemsClass = classGenerator.justifyItemsClass, rowGapClass = classGenerator.rowGapClass, rowsClass = classGenerator.rowsClass;
20
20
  // @ts-expect-error
21
21
  var gridStyles = useStyles(props).styles;
22
- return (jsxs(Tag, { className: clsx(className, 'grid', useGridSystem && "grid_state_system", horizontalScroll && "grid_scroll_horizontal", type && "grid_type_".concat(type), columnsClass && "grid_columns_".concat(columnsClass), rowsClass && "grid_rows_".concat(rowsClass), rowGapClass && "grid_row-gap_".concat(rowGapClass), columnGapClass && "grid_column-gap_".concat(columnGapClass), alignContentClass && "grid_align-content_".concat(alignContentClass), alignItemsClass && "grid_align-items_".concat(alignItemsClass), borderColorClass && "border-color_".concat(borderColorClass), justifyContentClass && "grid_justify-content_".concat(justifyContentClass), justifyItemsClass && "grid_justify-items_".concat(justifyItemsClass), fillClass && "fill_".concat(fillClass), horizontalResizing && "grid_horizontal-resizing_".concat(horizontalResizing), verticalResizing && "grid_vertical-resizing_".concat(verticalResizing)), "data-tour": dataTour, id: id, style: Object.assign({}, gridStyles, style), onClick: onClick, children: [before && jsx("div", { className: "grid__before", children: before }), children, after && jsx("div", { className: "grid__after", children: after })] }));
22
+ return (jsxs(Tag, { className: clsx(className, 'grid', useGridSystem && "grid_state_system", horizontalScroll && "grid_scroll_horizontal", type && "grid_type_".concat(type), columnsClass && "grid_columns_".concat(columnsClass), rowsClass && "grid_rows_".concat(rowsClass), rowGapClass && "grid_row-gap_".concat(rowGapClass), columnGapClass && "grid_column-gap_".concat(columnGapClass), alignContentClass && "grid_align-content_".concat(alignContentClass), alignItemsClass && "grid_align-items_".concat(alignItemsClass), borderColorClass && "border-color_".concat(borderColorClass), justifyContentClass && "grid_justify-content_".concat(justifyContentClass), justifyItemsClass && "grid_justify-items_".concat(justifyItemsClass), fillClass && "fill_".concat(fillClass), horizontalResizing && "grid_horizontal-resizing_".concat(horizontalResizing), verticalResizing && "grid_vertical-resizing_".concat(verticalResizing)), "data-tour": dataTour, id: id, style: gridStyles, onClick: onClick, onDoubleClick: onDoubleClick, children: [before && jsx("div", { className: "grid__before", children: before }), children, after && jsx("div", { className: "grid__after", children: after })] }));
23
23
  }
24
24
 
25
25
  function GridItem(props) {
@@ -0,0 +1,56 @@
1
+ import { jsxs } from 'react/jsx-runtime';
2
+ import { useMemo } from 'react';
3
+ import clsx from 'clsx';
4
+ import { useUserDeviceContext } from '../context/UIContext.js';
5
+ import { useDeviceTargetClassGenerator } from '../hooks/useDeviceTargetClassGenerator.js';
6
+ import { useStyles } from '../hooks/useStyles.js';
7
+ import '../hooks/useMediaQueries.js';
8
+ import 'react-responsive';
9
+ import '../tslib.es6-5FtW-kfi.js';
10
+ import 'lodash/camelCase';
11
+ import 'lodash/castArray';
12
+ import 'lodash/maxBy';
13
+ import 'lodash/upperFirst';
14
+ import '../hooks/styleAttributes.js';
15
+
16
+ var heroTitleAppearance = {
17
+ dev: {
18
+ textColor: 'surfaceTextPrimary',
19
+ },
20
+ };
21
+
22
+ var heroTitleConfig = {
23
+ appearance: heroTitleAppearance,
24
+ setAppearance: function (newComponent) {
25
+ heroTitleConfig.appearance = newComponent;
26
+ },
27
+ };
28
+ function HeroTitle(props) {
29
+ var children = props.children, after = props.after, afterWrapper = props.afterWrapper, appearance = props.appearance, before = props.before, beforeWrapper = props.beforeWrapper, className = props.className, dataTour = props.dataTour, mode = props.mode, _a = props.size, size = _a === undefined ? 'h3' : _a, sizeDesktop = props.sizeDesktop, sizeMobile = props.sizeMobile, sizeTablet = props.sizeTablet, _b = props.tag, tag = _b === undefined ? 'span' : _b, text = props.text, textWrap = props.textWrap, onClick = props.onClick;
30
+ var _c = useUserDeviceContext(), isMobile = _c.isMobile, isTablet = _c.isTablet, isDesktop = _c.isDesktop;
31
+ // @ts-expect-error
32
+ var appearanceConfig = heroTitleConfig.appearance && heroTitleConfig.appearance[appearance];
33
+ var classGenerator = useDeviceTargetClassGenerator(props, appearanceConfig);
34
+ var directionClass = classGenerator.directionClass, fillClass = classGenerator.fillClass, heightClass = classGenerator.heightClass, svgFillClass = classGenerator.svgFillClass, svgFillHoverClass = classGenerator.svgFillHoverClass, textAlignClass = classGenerator.textAlignClass, textColorActiveClass = classGenerator.textColorActiveClass, textColorClass = classGenerator.textColorClass, textColorGradientClass = classGenerator.textColorGradientClass, textColorHoverClass = classGenerator.textColorHoverClass, textStyleClass = classGenerator.textStyleClass, textTruncateClass = classGenerator.textTruncateClass, textWeightClass = classGenerator.textWeightClass, typeClass = classGenerator.typeClass, widthClass = classGenerator.widthClass, wrapperDirectionClass = classGenerator.wrapperDirectionClass;
35
+ // @ts-expect-error
36
+ var _d = useStyles(props), heroTitleStyles = _d.styles, heroTitleWrapperStyles = _d.wrapper;
37
+ // Element type (h1, h2, ..., h6)
38
+ var Tag = useMemo(function () {
39
+ if (tag) {
40
+ return tag;
41
+ }
42
+ if (isMobile && sizeMobile) {
43
+ return sizeMobile;
44
+ }
45
+ if (isTablet && sizeTablet) {
46
+ return sizeTablet;
47
+ }
48
+ if (isDesktop && sizeDesktop) {
49
+ return sizeDesktop;
50
+ }
51
+ return size ? size : 'span';
52
+ }, [isMobile, isTablet, isDesktop]);
53
+ return (jsxs(Tag, { className: clsx(className, 'heroTitle', fillClass && "fill_".concat(fillClass), svgFillClass && "svg_fill_".concat(svgFillClass), svgFillHoverClass && "svg_fill_hover_".concat(svgFillHoverClass), widthClass && "width_".concat(widthClass), heightClass && "height_".concat(heightClass), size && "hero-title_size_".concat(size), mode && "hero-title_mode_".concat(mode), directionClass && "hero-title_direction_".concat(directionClass), 'text', textColorClass && "text-color_".concat(textColorClass), textColorActiveClass && "text-color_active_".concat(textColorActiveClass), textColorHoverClass && "text-color_hover_".concat(textColorHoverClass), typeClass && "hero-title_type_".concat(typeClass), textColorGradientClass && "text-gradient_".concat(textColorGradientClass), textStyleClass && "text-style_".concat(textStyleClass), textWeightClass && "text-weight_".concat(textWeightClass), textWrap && "word-wrap_".concat(textWrap)), "data-tour": dataTour, style: heroTitleStyles, onClick: onClick, children: [before, jsxs("span", { className: clsx(textAlignClass && "text-align_".concat(textAlignClass), wrapperDirectionClass && "hero-title-direction_".concat(wrapperDirectionClass), 'hero-title__wrapper', textTruncateClass && "text-truncate_".concat(textTruncateClass)), style: heroTitleWrapperStyles, children: [beforeWrapper, children || text, afterWrapper] }), after] }));
54
+ }
55
+
56
+ export { HeroTitle, heroTitleAppearance, heroTitleConfig };
@@ -8,6 +8,10 @@
8
8
  justify-content: space-between;
9
9
  align-items: center;
10
10
  gap: 8px;
11
+ ^^&__title,
12
+ ^^&__value {
13
+ width: 100%;
14
+ }
11
15
  }
12
16
  ^&__icon {
13
17
  }
@@ -2,7 +2,7 @@
2
2
  }
3
3
  .dot {
4
4
  &_size {
5
- @each $size in s, m, l {
5
+ @each $size in xs, s, m, l {
6
6
  &_$(size) {
7
7
  min-width: var(--dot-size-$(size)-width, 16px);
8
8
  min-height: var(--dot-size-$(size)-height, 16px);
@@ -0,0 +1,59 @@
1
+ .hero-title {
2
+ &__wrapper {
3
+ display: inline-block;
4
+ }
5
+ }
6
+ .hero-title {
7
+ &&_mode {
8
+ &_skeleton {
9
+ color: transparent;
10
+ background-image: linear-gradient(
11
+ 90deg,
12
+ var(--color-surface-secondary),
13
+ var(--color-surface-tertiary),
14
+ var(--color-surface-secondary)
15
+ );
16
+ background-size: 200%;
17
+ border-radius: 6px;
18
+ animation: hero-title-skeleton 3s infinite linear;
19
+ }
20
+ }
21
+ }
22
+ @keyframes hero-title-skeleton {
23
+ 0% {
24
+ background-position: 200%;
25
+ }
26
+ 100% {
27
+ background-position: -200%;
28
+ }
29
+ }
30
+ .hero-title_size {
31
+ @each $size in h1, h2, h3, h4, h5, h6 {
32
+ &_$(size) {
33
+ padding: 0;
34
+ margin: 0;
35
+ @mixin hero_$(size);
36
+ }
37
+ }
38
+ }
39
+ .hero-title {
40
+ &&_type {
41
+ @each $type in accent, primary, secondary, tertiary, surface, success, error {
42
+ &_$(type) {
43
+ color: var(--color-$(type)-text-$(type));
44
+ }
45
+ }
46
+ }
47
+ }
48
+ .hero-title_direction {
49
+ &_horizontal {
50
+ display: flex;
51
+ flex-direction: row;
52
+ align-items: flex-start;
53
+ }
54
+ &_vertical {
55
+ display: flex;
56
+ flex-direction: column;
57
+ align-items: flex-start;
58
+ }
59
+ }
@@ -40,6 +40,48 @@
40
40
  var(--typography-h6-font, system-ui);
41
41
  }
42
42
 
43
+ @define-mixin hero_h1 $weight: normal, $minLetterSpacing: 0, $maxLetterSpacing: 0 {
44
+ @mixin font $weight, var(--typography-hero1-min, 32px), var(--typography-hero1-max, 38px),
45
+ $minLetterSpacing, var(--typography-hero1-min-line-height, 64px),
46
+ var(--typography-hero1-max-line-height, 80px), $maxLetterSpacing,
47
+ var(--typography-hero1-font, system-ui);
48
+ }
49
+
50
+ @define-mixin hero_h2 $weight: normal, $minLetterSpacing: 0, $maxLetterSpacing: 0 {
51
+ @mixin font $weight, var(--typography-hero2-min, 26px), var(--typography-hero2-max, 32px),
52
+ $minLetterSpacing, var(--typography-hero2-min-line-height, 46px),
53
+ var(--typography-hero2-max-line-height, 58px), $maxLetterSpacing,
54
+ var(--typography-hero2-font, system-ui);
55
+ }
56
+
57
+ @define-mixin hero_h3 $weight: normal, $minLetterSpacing: 0, $maxLetterSpacing: 0 {
58
+ @mixin font $weight, var(--typography-hero3-min, 18px), var(--typography-hero3-max, 24px),
59
+ $minLetterSpacing, var(--typography-hero3-min-line-height, 32px),
60
+ var(--typography-hero3-max-line-height, 40px), $maxLetterSpacing,
61
+ var(--typography-hero3-font, system-ui);
62
+ }
63
+
64
+ @define-mixin hero_h4 $weight: normal, $minLetterSpacing: 0, $maxLetterSpacing: 0 {
65
+ @mixin font $weight, var(--typography-hero4-min, 16px), var(--typography-hero4-max, 18px),
66
+ $minLetterSpacing, var(--typography-hero4-min-line-height, 24px),
67
+ var(--typography-hero4-max-line-height, 30px), $maxLetterSpacing,
68
+ var(--typography-hero4-font, system-ui);
69
+ }
70
+
71
+ @define-mixin hero_h5 $weight: normal, $minLetterSpacing: 0, $maxLetterSpacing: 0 {
72
+ @mixin font $weight, var(--typography-hero5-min, 14px), var(--typography-hero5-max, 16px),
73
+ $minLetterSpacing, var(--typography-hero5-min-line-height, 18px),
74
+ var(--typography-hero5-max-line-height, 26px), $maxLetterSpacing,
75
+ var(--typography-hero5-font, system-ui);
76
+ }
77
+
78
+ @define-mixin h6 $weight: normal, $minLetterSpacing: 0, $maxLetterSpacing: 0 {
79
+ @mixin font $weight, var(--typography-hero6-min, 12px), var(--typography-hero6-max, 18px),
80
+ $minLetterSpacing, var(--typography-hero6-min-line-height, 16px),
81
+ var(--typography-hero6-max-line-height, 24px), $maxLetterSpacing,
82
+ var(--typography-hero6-font, system-ui);
83
+ }
84
+
43
85
  @define-mixin p $weight: normal, $minLetterSpacing: 0, $maxLetterSpacing: 0 {
44
86
  @mixin font $weight, var(--typography-p-min, 16px), var(--typography-p-max, 24px),
45
87
  $minLetterSpacing, var(--typography-p-min-line-height, 24px),
@@ -0,0 +1,31 @@
1
+ import { Canvas, Meta } from '@storybook/blocks'
2
+
3
+ import * as HeroTitleStories from './HeroTitle.stories.tsx'
4
+
5
+ <Meta of={HeroTitleStories} />
6
+
7
+ # Size
8
+
9
+ ## SizeH1
10
+
11
+ <Canvas sourceState="shown" of={HeroTitleStories.SizeH1} />
12
+
13
+ ## SizeH2
14
+
15
+ <Canvas sourceState="shown" of={HeroTitleStories.SizeH2} />
16
+
17
+ ## SizeH3
18
+
19
+ <Canvas sourceState="shown" of={HeroTitleStories.SizeH3} />
20
+
21
+ ## SizeH4
22
+
23
+ <Canvas sourceState="shown" of={HeroTitleStories.SizeH4} />
24
+
25
+ ## SizeH5
26
+
27
+ <Canvas sourceState="shown" of={HeroTitleStories.SizeH5} />
28
+
29
+ ## SizeH6
30
+
31
+ <Canvas sourceState="shown" of={HeroTitleStories.SizeH6} />
@@ -0,0 +1,2 @@
1
+ import { tAppearance } from './HeroTitle.interface';
2
+ export declare const heroTitleAppearance: tAppearance;
@@ -0,0 +1,4 @@
1
+ import type { iHeroTitleConfig, iHeroTitleProps } from './HeroTitle.interface';
2
+ declare const heroTitleConfig: iHeroTitleConfig;
3
+ declare function HeroTitle(props: iHeroTitleProps): import("react/jsx-runtime").JSX.Element;
4
+ export { HeroTitle, heroTitleConfig };
@@ -0,0 +1,53 @@
1
+ import { CSSProperties, ElementType, ReactNode } from 'react';
2
+ import { tFillProps, tSvgFillProps, tTextAlignProps, tTextColorActiveProps, tTextColorHoverProps, tTextColorProps, tTextGradientProps, tTextStyleProps, tTextWeightProps, tTextWrapProps, tHeroTitleSizeProps } from 'types';
3
+ import { tAppearanceKeysDefault } from 'types/componentProps/appearanceKeys';
4
+ import { iStyleAttributes } from '../../hooks/styleAttributes.interface';
5
+ interface iHeroTitleThemeColor {
6
+ [key: number | string | symbol]: any;
7
+ fill?: tFillProps;
8
+ size?: tHeroTitleSizeProps;
9
+ sizeDesktop?: tHeroTitleSizeProps;
10
+ sizeMobile?: tHeroTitleSizeProps;
11
+ sizeTablet?: tHeroTitleSizeProps;
12
+ svgFill?: tSvgFillProps;
13
+ svgFillHover?: tSvgFillProps;
14
+ textColor?: tTextColorProps;
15
+ textColorActive?: tTextColorActiveProps;
16
+ textColorHover?: tTextColorHoverProps;
17
+ textGradient?: tTextGradientProps;
18
+ textStyle?: tTextStyleProps;
19
+ textWeight?: tTextWeightProps;
20
+ textWrap?: tTextWrapProps;
21
+ weight?: tTextWeightProps;
22
+ }
23
+ type tAppearanceKeys = tAppearanceKeysDefault & {};
24
+ export type tAppearance = {
25
+ [key in tAppearanceKeys]: iHeroTitleThemeColor;
26
+ };
27
+ export interface iHeroTitleConfig {
28
+ [key: number | string | symbol]: any;
29
+ appearance: tAppearance | undefined;
30
+ setAppearance: (newComponent: tAppearance) => void;
31
+ }
32
+ export interface iHeroTitleProps extends iHeroTitleThemeColor, iStyleAttributes {
33
+ [key: number | string | symbol]: any;
34
+ after?: any;
35
+ afterWrapper?: any;
36
+ appearance?: tAppearanceKeys;
37
+ before?: any;
38
+ beforeWrapper?: any;
39
+ children: ReactNode;
40
+ className?: string;
41
+ dataTour?: string;
42
+ direction?: string;
43
+ directionWrapper?: string;
44
+ mode?: string;
45
+ style?: CSSProperties;
46
+ tag?: ElementType;
47
+ text?: string;
48
+ textAlign?: tTextAlignProps;
49
+ textTruncate?: string;
50
+ type?: string;
51
+ onClick?: () => void;
52
+ }
53
+ export {};
@@ -0,0 +1,2 @@
1
+ export { HeroTitle, heroTitleConfig } from './HeroTitle';
2
+ export { heroTitleAppearance } from './HeroTitle.appearance';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itcase/ui",
3
- "version": "1.3.19",
3
+ "version": "1.3.21",
4
4
  "description": "UI components (Modal, Loader, Popup, etc)",
5
5
  "keywords": [
6
6
  "Modal",
@@ -87,10 +87,10 @@
87
87
  "dependencies": {
88
88
  "@emotion/is-prop-valid": "^1.3.1",
89
89
  "@itcase/common": "^1.2.17",
90
- "@itcase/icons": "^1.0.18",
90
+ "@itcase/icons": "^1.0.19",
91
91
  "clsx": "^2.1.1",
92
92
  "date-fns": "^4.1.0",
93
- "framer-motion": "^12.0.5",
93
+ "framer-motion": "^12.0.6",
94
94
  "js-cookie": "^3.0.5",
95
95
  "lodash": "^4.17.21",
96
96
  "rc-slider": "^11.1.8",
@@ -103,7 +103,7 @@
103
103
  "react-modal-sheet": "^4.0.1",
104
104
  "react-modern-drawer": "^1.4.0",
105
105
  "react-otp-input": "^3.1.1",
106
- "react-paginate": "^8.2.0",
106
+ "react-paginate": "^8.3.0",
107
107
  "react-responsive": "^10.0.0",
108
108
  "react-scroll": "^1.9.0",
109
109
  "react-scrollbars-custom": "^4.1.1",
@@ -119,7 +119,7 @@
119
119
  "@babel/preset-react": "^7.26.3",
120
120
  "@commitlint/cli": "^19.6.1",
121
121
  "@commitlint/config-conventional": "^19.6.0",
122
- "@itcase/icons": "^1.0.18",
122
+ "@itcase/icons": "^1.0.19",
123
123
  "@itcase/lint": "^1.0.36",
124
124
  "@lehoczky/postcss-fluid": "^1.0.3",
125
125
  "@rollup/plugin-babel": "^6.0.4",
@@ -132,16 +132,16 @@
132
132
  "@semantic-release/changelog": "^6.0.3",
133
133
  "@semantic-release/git": "^10.0.1",
134
134
  "@semantic-release/release-notes-generator": "14.0.3",
135
- "@storybook/addon-essentials": "^8.5.1",
136
- "@storybook/addon-interactions": "^8.5.1",
135
+ "@storybook/addon-essentials": "^8.5.2",
136
+ "@storybook/addon-interactions": "^8.5.2",
137
137
  "@storybook/addon-styling-webpack": "^1.0.1",
138
- "@storybook/addon-themes": "^8.5.1",
138
+ "@storybook/addon-themes": "^8.5.2",
139
139
  "@storybook/addon-webpack5-compiler-swc": "^2.0.0",
140
- "@storybook/blocks": "^8.5.1",
141
- "@storybook/react": "^8.5.1",
142
- "@storybook/react-webpack5": "^8.5.1",
140
+ "@storybook/blocks": "^8.5.2",
141
+ "@storybook/react": "^8.5.2",
142
+ "@storybook/react-webpack5": "^8.5.2",
143
143
  "@types/js-cookie": "^3.0.6",
144
- "@types/lodash": "^4.17.14",
144
+ "@types/lodash": "^4.17.15",
145
145
  "@types/react": "^19",
146
146
  "@types/react-datepicker": "^7.0.0",
147
147
  "@types/react-dom": "^19.0.2",
@@ -155,7 +155,7 @@
155
155
  "eslint": "9.19.0",
156
156
  "husky": "^9.1.7",
157
157
  "lint-staged": "^15.4.3",
158
- "npm": "^11.0.0",
158
+ "npm": "^11.1.0",
159
159
  "postcss": "^8.5.1",
160
160
  "postcss-aspect-ratio-polyfill": "^2.0.0",
161
161
  "postcss-cli": "^11.0.0",
@@ -178,14 +178,14 @@
178
178
  "postcss-pxtorem": "^6.1.0",
179
179
  "postcss-sort-media-queries": "^5.2.0",
180
180
  "prettier": "^3.4.2",
181
- "rollup": "^4.32.0",
181
+ "rollup": "^4.32.1",
182
182
  "rollup-plugin-copy": "^3.5.0",
183
183
  "rollup-plugin-dts": "^6.1.1",
184
184
  "rollup-plugin-peer-deps-external": "^2.2.4",
185
185
  "rollup-preserve-directives": "^1.1.3",
186
186
  "semantic-release": "^24.2.1",
187
- "storybook": "^8.5.1",
188
- "stylelint": "^16.14.0",
187
+ "storybook": "^8.5.2",
188
+ "stylelint": "^16.14.1",
189
189
  "typescript": "^5.7.3"
190
190
  }
191
191
  }