@gravity-ui/page-constructor 1.7.0-alpha.5 → 1.7.0-alpha.7

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.
Files changed (114) hide show
  1. package/build/cjs/blocks/Tabs/Tabs.css +49 -23
  2. package/build/cjs/blocks/Tabs/Tabs.d.ts +1 -1
  3. package/build/cjs/blocks/Tabs/Tabs.js +29 -27
  4. package/build/cjs/components/ButtonTabs/ButtonTabs.css +12 -0
  5. package/build/cjs/components/ButtonTabs/ButtonTabs.d.ts +13 -0
  6. package/build/cjs/components/ButtonTabs/ButtonTabs.js +27 -0
  7. package/build/cjs/components/Image/Image.css +3 -0
  8. package/build/cjs/components/Image/Image.js +3 -1
  9. package/build/cjs/components/RouterLink/RouterLink.d.ts +0 -1
  10. package/build/cjs/components/VideoBlock/VideoBlock.js +1 -1
  11. package/build/cjs/components/index.d.ts +0 -1
  12. package/build/cjs/components/index.js +1 -3
  13. package/build/cjs/constructor-items.d.ts +1 -1
  14. package/build/cjs/containers/PageConstructor/PageConstructor.d.ts +0 -2
  15. package/build/cjs/containers/PageConstructor/PageConstructor.js +2 -4
  16. package/build/cjs/context/locationContext/locationContext.d.ts +0 -1
  17. package/build/cjs/icons/index.d.ts +0 -3
  18. package/build/cjs/icons/index.js +0 -3
  19. package/build/cjs/models/constructor-items/blocks.d.ts +7 -4
  20. package/build/cjs/models/index.d.ts +0 -1
  21. package/build/cjs/models/index.js +0 -1
  22. package/build/cjs/text-transform/blocks.js +11 -4
  23. package/build/cjs/text-transform/utils.js +1 -1
  24. package/build/esm/blocks/Tabs/Tabs.css +49 -23
  25. package/build/esm/blocks/Tabs/Tabs.d.ts +1 -1
  26. package/build/esm/blocks/Tabs/Tabs.js +29 -27
  27. package/build/esm/components/ButtonTabs/ButtonTabs.css +12 -0
  28. package/build/esm/components/ButtonTabs/ButtonTabs.d.ts +14 -0
  29. package/build/esm/components/ButtonTabs/ButtonTabs.js +25 -0
  30. package/build/esm/components/Image/Image.css +3 -0
  31. package/build/esm/components/Image/Image.d.ts +1 -0
  32. package/build/esm/components/Image/Image.js +4 -1
  33. package/build/esm/components/RouterLink/RouterLink.d.ts +0 -1
  34. package/build/esm/components/VideoBlock/VideoBlock.js +1 -1
  35. package/build/esm/components/index.d.ts +0 -1
  36. package/build/esm/components/index.js +0 -1
  37. package/build/esm/constructor-items.d.ts +1 -1
  38. package/build/esm/containers/PageConstructor/PageConstructor.d.ts +0 -2
  39. package/build/esm/containers/PageConstructor/PageConstructor.js +2 -4
  40. package/build/esm/context/locationContext/locationContext.d.ts +0 -1
  41. package/build/esm/icons/index.d.ts +0 -3
  42. package/build/esm/icons/index.js +0 -3
  43. package/build/esm/models/constructor-items/blocks.d.ts +7 -4
  44. package/build/esm/models/index.d.ts +0 -1
  45. package/build/esm/models/index.js +0 -1
  46. package/build/esm/text-transform/blocks.js +11 -4
  47. package/build/esm/text-transform/utils.js +1 -1
  48. package/package.json +1 -1
  49. package/server/models/constructor-items/blocks.d.ts +7 -4
  50. package/server/models/index.d.ts +0 -1
  51. package/server/models/index.js +0 -1
  52. package/server/text-transform/blocks.js +11 -4
  53. package/server/text-transform/utils.js +1 -1
  54. package/styles/mixins.scss +0 -38
  55. package/build/cjs/components/navigation/components/Header/Header.css +0 -85
  56. package/build/cjs/components/navigation/components/Header/Header.d.ts +0 -28
  57. package/build/cjs/components/navigation/components/Header/Header.js +0 -81
  58. package/build/cjs/components/navigation/components/Logo/Logo.css +0 -23
  59. package/build/cjs/components/navigation/components/Logo/Logo.d.ts +0 -7
  60. package/build/cjs/components/navigation/components/Logo/Logo.js +0 -17
  61. package/build/cjs/components/navigation/components/MobileNavigation/MobileNavigation.css +0 -58
  62. package/build/cjs/components/navigation/components/MobileNavigation/MobileNavigation.d.ts +0 -13
  63. package/build/cjs/components/navigation/components/MobileNavigation/MobileNavigation.js +0 -45
  64. package/build/cjs/components/navigation/components/Navigation/Navigation.css +0 -43
  65. package/build/cjs/components/navigation/components/Navigation/Navigation.d.ts +0 -11
  66. package/build/cjs/components/navigation/components/Navigation/Navigation.js +0 -70
  67. package/build/cjs/components/navigation/components/NavigationItem/NavigationItem.css +0 -41
  68. package/build/cjs/components/navigation/components/NavigationItem/NavigationItem.d.ts +0 -12
  69. package/build/cjs/components/navigation/components/NavigationItem/NavigationItem.js +0 -55
  70. package/build/cjs/components/navigation/components/NavigationPopup/NavigationPopup.css +0 -33
  71. package/build/cjs/components/navigation/components/NavigationPopup/NavigationPopup.d.ts +0 -10
  72. package/build/cjs/components/navigation/components/NavigationPopup/NavigationPopup.js +0 -46
  73. package/build/cjs/components/navigation/components/SocialIcon/SocialIcon.css +0 -20
  74. package/build/cjs/components/navigation/components/SocialIcon/SocialIcon.d.ts +0 -7
  75. package/build/cjs/components/navigation/components/SocialIcon/SocialIcon.js +0 -14
  76. package/build/cjs/icons/NavigationArrow.d.ts +0 -2
  77. package/build/cjs/icons/NavigationArrow.js +0 -9
  78. package/build/cjs/icons/NavigationClose.d.ts +0 -2
  79. package/build/cjs/icons/NavigationClose.js +0 -9
  80. package/build/cjs/icons/NavigationOpen.d.ts +0 -2
  81. package/build/cjs/icons/NavigationOpen.js +0 -11
  82. package/build/cjs/models/navigation.d.ts +0 -59
  83. package/build/cjs/models/navigation.js +0 -10
  84. package/build/esm/components/navigation/components/Header/Header.css +0 -85
  85. package/build/esm/components/navigation/components/Header/Header.d.ts +0 -29
  86. package/build/esm/components/navigation/components/Header/Header.js +0 -79
  87. package/build/esm/components/navigation/components/Logo/Logo.css +0 -23
  88. package/build/esm/components/navigation/components/Logo/Logo.d.ts +0 -8
  89. package/build/esm/components/navigation/components/Logo/Logo.js +0 -15
  90. package/build/esm/components/navigation/components/MobileNavigation/MobileNavigation.css +0 -58
  91. package/build/esm/components/navigation/components/MobileNavigation/MobileNavigation.d.ts +0 -14
  92. package/build/esm/components/navigation/components/MobileNavigation/MobileNavigation.js +0 -43
  93. package/build/esm/components/navigation/components/Navigation/Navigation.css +0 -43
  94. package/build/esm/components/navigation/components/Navigation/Navigation.d.ts +0 -12
  95. package/build/esm/components/navigation/components/Navigation/Navigation.js +0 -69
  96. package/build/esm/components/navigation/components/NavigationItem/NavigationItem.css +0 -41
  97. package/build/esm/components/navigation/components/NavigationItem/NavigationItem.d.ts +0 -13
  98. package/build/esm/components/navigation/components/NavigationItem/NavigationItem.js +0 -54
  99. package/build/esm/components/navigation/components/NavigationPopup/NavigationPopup.css +0 -33
  100. package/build/esm/components/navigation/components/NavigationPopup/NavigationPopup.d.ts +0 -11
  101. package/build/esm/components/navigation/components/NavigationPopup/NavigationPopup.js +0 -42
  102. package/build/esm/components/navigation/components/SocialIcon/SocialIcon.css +0 -20
  103. package/build/esm/components/navigation/components/SocialIcon/SocialIcon.d.ts +0 -8
  104. package/build/esm/components/navigation/components/SocialIcon/SocialIcon.js +0 -12
  105. package/build/esm/icons/NavigationArrow.d.ts +0 -2
  106. package/build/esm/icons/NavigationArrow.js +0 -4
  107. package/build/esm/icons/NavigationClose.d.ts +0 -2
  108. package/build/esm/icons/NavigationClose.js +0 -4
  109. package/build/esm/icons/NavigationOpen.d.ts +0 -2
  110. package/build/esm/icons/NavigationOpen.js +0 -6
  111. package/build/esm/models/navigation.d.ts +0 -59
  112. package/build/esm/models/navigation.js +0 -7
  113. package/server/models/navigation.d.ts +0 -59
  114. package/server/models/navigation.js +0 -10
@@ -1,12 +0,0 @@
1
- import React from 'react';
2
- import { NavigationItem as NavigationItemModel } from '../../../../models/navigation';
3
- import './Navigation.css';
4
- export interface NavigationProps {
5
- links: NavigationItemModel[];
6
- activeItemIndex: number;
7
- onActiveItemChange: (index: number) => void;
8
- className?: string;
9
- highlightActiveItem?: boolean;
10
- }
11
- declare const Navigation: React.FC<NavigationProps>;
12
- export default Navigation;
@@ -1,69 +0,0 @@
1
- import { __rest } from "tslib";
2
- import _ from 'lodash';
3
- import block from 'bem-cn-lite';
4
- import React, { Fragment, useState, useEffect, useCallback, useContext, useRef, } from 'react';
5
- import OverflowScroller from '../../../OverflowScroller/OverflowScroller';
6
- import { NavigationItemType, } from '../../../../models/navigation';
7
- import NavigationPopup from '../NavigationPopup/NavigationPopup';
8
- import NavigationItem from '../NavigationItem/NavigationItem';
9
- import { LocationContext } from '../../../../context/locationContext';
10
- import './Navigation.css';
11
- const b = block('navigation');
12
- const Navigation = ({ className, onActiveItemChange, links, activeItemIndex, highlightActiveItem, }) => {
13
- const { asPath, pathname } = useContext(LocationContext);
14
- const itemRefs = useRef([]);
15
- const [itemPositions, setItemPosition] = useState([]);
16
- const [lastLeftScroll, setLastLeftScroll] = useState(0);
17
- const hidePopup = useCallback(() => {
18
- onActiveItemChange(-1);
19
- }, [onActiveItemChange]);
20
- const getItemClickHandler = useCallback((index) => (e) => {
21
- e.stopPropagation();
22
- onActiveItemChange(index === activeItemIndex ? -1 : index);
23
- }, [activeItemIndex, onActiveItemChange]);
24
- const renderNavDropdown = (data, onClick, isActive, position) => {
25
- const { text, items } = data, popupProps = __rest(data, ["text", "items"]);
26
- return (React.createElement(Fragment, null,
27
- React.createElement(NavigationItem, { className: b('link'), onClick: onClick, isOpened: isActive, data: { text, type: NavigationItemType.Dropdown } }),
28
- isActive && (React.createElement(NavigationPopup, Object.assign({ left: position, onClose: hidePopup, items: items }, popupProps)))));
29
- };
30
- const slider = (React.createElement("div", { className: b('slider-container') },
31
- React.createElement("div", { className: b('slider') })));
32
- const content = (React.createElement("nav", null,
33
- React.createElement("ul", { className: b('links') }, links.map((link, index) => {
34
- const isActive = index === activeItemIndex;
35
- const onClick = getItemClickHandler(index);
36
- return (React.createElement("li", { ref: (el) => itemRefs.current.push(el), key: index, className: b('links-item') },
37
- link.type === NavigationItemType.Dropdown ? (renderNavDropdown(link, onClick, isActive, itemPositions[index])) : (React.createElement(NavigationItem, { data: link, onClick: onClick })),
38
- highlightActiveItem && isActive && slider));
39
- }))));
40
- const calculateItemPositions = useCallback(() => {
41
- if (itemRefs.current.length) {
42
- const currentItemPositions = itemRefs.current.map((itemRef) => (itemRef && itemRef.getBoundingClientRect().left) || 0);
43
- setItemPosition(currentItemPositions);
44
- }
45
- }, []);
46
- useEffect(() => {
47
- const debouncedCalculateItemPositions = _.debounce(calculateItemPositions, 100);
48
- const calculateOnScroll = _.debounce(() => {
49
- const curLeftScroll = window.pageXOffset;
50
- if (curLeftScroll !== lastLeftScroll) {
51
- setLastLeftScroll(window.pageXOffset);
52
- calculateItemPositions();
53
- }
54
- }, 100);
55
- calculateItemPositions();
56
- setLastLeftScroll(window.pageXOffset);
57
- window.addEventListener('resize', debouncedCalculateItemPositions);
58
- window.addEventListener('scroll', calculateOnScroll);
59
- return () => {
60
- window.removeEventListener(`resize`, calculateItemPositions);
61
- window.removeEventListener('scroll', calculateOnScroll);
62
- };
63
- }, [calculateItemPositions, itemRefs, lastLeftScroll]);
64
- useEffect(() => {
65
- hidePopup();
66
- }, [hidePopup, asPath, pathname]);
67
- return (React.createElement(OverflowScroller, { className: b(null, className), onScrollStart: hidePopup, onScrollEnd: calculateItemPositions }, content));
68
- };
69
- export default Navigation;
@@ -1,41 +0,0 @@
1
- /* use this for style redefinitions to awoid problems with
2
- unpredictable css rules order in build */
3
- .navigation-item {
4
- position: relative;
5
- display: flex;
6
- align-items: center;
7
- }
8
- .navigation-item_type_link {
9
- color: var(--yc-color-text-primary);
10
- color: inherit;
11
- text-decoration: none;
12
- outline: none;
13
- }
14
- .utilityfocus .navigation-item_type_link:focus {
15
- outline: 2px solid #ffdb4d;
16
- }
17
- .navigation-item_type_link:hover, .navigation-item_type_link_active {
18
- color: var(--yc-color-text-link);
19
- }
20
- .navigation-item_type_button {
21
- display: inline-block;
22
- }
23
- .navigation-item__arrow {
24
- position: relative;
25
- top: -2px;
26
- width: 9px;
27
- height: 9px;
28
- margin-left: 5px;
29
- }
30
- .navigation-item__icon {
31
- display: flex;
32
- width: 20px;
33
- height: 20px;
34
- margin-right: 8px;
35
- border-radius: 50%;
36
- object-fit: cover;
37
- }
38
- .navigation-item__dropdown {
39
- margin-left: 7px;
40
- color: var(--yc-color-text-secondary);
41
- }
@@ -1,13 +0,0 @@
1
- import React, { MouseEventHandler } from 'react';
2
- import { NavigationButtonItem, NavigationDropdownItem, NavigationSocialItem, NavigationLinkItem } from '../../../../models';
3
- import './NavigationItem.css';
4
- declare type DropdownItemData = Omit<NavigationDropdownItem, 'items'>;
5
- export declare type NavigationItemData = NavigationLinkItem | NavigationButtonItem | NavigationSocialItem | DropdownItemData;
6
- export interface NavigationItemProps {
7
- data: NavigationItemData;
8
- className?: string;
9
- onClick?: MouseEventHandler;
10
- isOpened?: boolean;
11
- }
12
- declare const NavigationItem: React.FC<NavigationItemProps>;
13
- export default NavigationItem;
@@ -1,54 +0,0 @@
1
- import { __rest } from "tslib";
2
- import React, { Fragment, useContext, useMemo } from 'react';
3
- import block from 'bem-cn-lite';
4
- import { RouterLink, ToggleArrow, Button, Image } from '../../../index';
5
- import { getLinkProps } from '../../../../utils';
6
- import { LocationContext } from '../../../../context/locationContext';
7
- import { NavigationItemType, } from '../../../../models';
8
- import { NavigationArrow } from '../../../../icons';
9
- import SocialIcon from '../SocialIcon/SocialIcon';
10
- import { getMediaImage } from '../../../Media/Image/utils';
11
- import './NavigationItem.css';
12
- const b = block('navigation-item');
13
- const Content = ({ text, icon }) => (React.createElement(Fragment, null,
14
- icon && React.createElement(Image, Object.assign({ className: b('icon') }, icon)),
15
- React.createElement("span", { className: b('text') }, text)));
16
- const NavigationDropdown = (_a) => {
17
- var { text, icon, isOpened } = _a, props = __rest(_a, ["text", "icon", "isOpened"]);
18
- const iconData = icon && getMediaImage(icon);
19
- return (React.createElement("span", Object.assign({}, props),
20
- React.createElement(Content, { text: text, icon: iconData }),
21
- React.createElement(ToggleArrow, { className: b('dropdown'), size: 12, type: 'vertical', iconType: "navigation", open: isOpened })));
22
- };
23
- const NavigationLink = (props) => {
24
- const { hostname } = useContext(LocationContext);
25
- const { url, text, icon, arrow, target } = props, rest = __rest(props, ["url", "text", "icon", "arrow", "target"]);
26
- const linkExtraProps = getLinkProps(url, hostname, target);
27
- const iconData = icon && getMediaImage(icon);
28
- const content = (React.createElement(Fragment, null,
29
- React.createElement(Content, { text: text, icon: iconData }),
30
- arrow && React.createElement(NavigationArrow, { className: b('arrow') })));
31
- return (linkExtraProps === null || linkExtraProps === void 0 ? void 0 : linkExtraProps.target) ? (React.createElement("a", Object.assign({ href: url, title: text }, rest, linkExtraProps), content)) : (React.createElement(RouterLink, { href: url, passHref: true },
32
- React.createElement("a", Object.assign({}, rest), content)));
33
- };
34
- const NavigationButton = (props) => {
35
- const { url, target } = props;
36
- return target ? (React.createElement(Button, Object.assign({}, props, { url: url }))) : (React.createElement(RouterLink, { href: url },
37
- React.createElement(Button, Object.assign({}, props, { url: url }))));
38
- };
39
- //todo: add types support form component in map
40
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
41
- const NavigationItemsMap = {
42
- [NavigationItemType.Button]: NavigationButton,
43
- [NavigationItemType.Social]: SocialIcon,
44
- [NavigationItemType.Dropdown]: NavigationDropdown,
45
- [NavigationItemType.Link]: NavigationLink,
46
- };
47
- const NavigationItem = (_a) => {
48
- var { data, className } = _a, props = __rest(_a, ["data", "className"]);
49
- const { type = NavigationItemType.Link } = data;
50
- const Component = NavigationItemsMap[type];
51
- const componentProps = useMemo(() => (Object.assign(Object.assign({ className: b({ type }, className) }, data), props)), [className, data, props, type]);
52
- return React.createElement(Component, Object.assign({}, componentProps));
53
- };
54
- export default NavigationItem;
@@ -1,33 +0,0 @@
1
- /* use this for style redefinitions to awoid problems with
2
- unpredictable css rules order in build */
3
- .navigation-popup {
4
- position: fixed;
5
- top: calc(var(--header-height) - 16px);
6
- padding-right: 4px;
7
- padding-left: 4px;
8
- transform: translateX(calc(calc(8px * 2) * -1));
9
- z-index: 101;
10
- display: flex;
11
- flex-direction: column;
12
- min-width: 220px;
13
- padding: 16px;
14
- border: 1px solid var(--yc-color-line-generic);
15
- border-top-width: 0;
16
- border-radius: calc(var(--pc-border-radius) / 2);
17
- background: var(--yc-color-base-float);
18
- box-shadow: 0 3px 10px var(--yc-color-sfx-shadow);
19
- }
20
- @media (max-width: 768px) {
21
- .navigation-popup {
22
- display: none;
23
- }
24
- }
25
- .navigation-popup__link {
26
- height: 36px;
27
- padding: 8px 12px;
28
- border-radius: 8px;
29
- }
30
- .navigation-popup__link:hover {
31
- color: var(--yc-color-text-primary);
32
- background-color: var(--yc-color-base-simple-hover);
33
- }
@@ -1,11 +0,0 @@
1
- import React from 'react';
2
- import { NavigationLinkItem } from '../../../../models';
3
- import './NavigationPopup.css';
4
- export interface NavigationPopupProps {
5
- items: NavigationLinkItem[];
6
- onClose: () => void;
7
- left?: number;
8
- className?: string;
9
- }
10
- export declare const NavigationPopup: React.FC<NavigationPopupProps>;
11
- export default NavigationPopup;
@@ -1,42 +0,0 @@
1
- import _ from 'lodash';
2
- import block from 'bem-cn-lite';
3
- import React, { Fragment, useRef, useState, useEffect, useCallback } from 'react';
4
- import { Portal } from '@gravity-ui/uikit';
5
- import { OutsideClick } from '../../../index';
6
- import NavigationItem from '../NavigationItem/NavigationItem';
7
- import './NavigationPopup.css';
8
- const b = block('navigation-popup');
9
- export const NavigationPopup = ({ items, left, onClose }) => {
10
- const [calculatedLeft, setCalculatedLeft] = useState(left);
11
- const popupRef = useRef(null);
12
- const calculateLeft = useCallback(() => {
13
- if (popupRef && popupRef.current && left) {
14
- const right = left + popupRef.current.offsetWidth;
15
- const docWidth = document.body.clientWidth;
16
- const currentLeft = right > docWidth ? left - (right - docWidth) : left;
17
- setCalculatedLeft(currentLeft);
18
- }
19
- else {
20
- setCalculatedLeft(left);
21
- }
22
- }, [left]);
23
- useEffect(() => {
24
- const debounceCalculateLeft = _.debounce(calculateLeft, 100);
25
- calculateLeft();
26
- window.addEventListener('resize', debounceCalculateLeft);
27
- return () => {
28
- window.removeEventListener('resize', debounceCalculateLeft);
29
- };
30
- }, [calculateLeft]);
31
- useEffect(() => {
32
- calculateLeft();
33
- }, [calculateLeft, left]);
34
- if (!document || !document.body) {
35
- return null;
36
- }
37
- const renderDefaultPopup = (React.createElement(Fragment, null, items.map((item) => (React.createElement(NavigationItem, { key: item.text, className: b('link'), data: item })))));
38
- return (React.createElement(Portal, null,
39
- React.createElement("div", { ref: popupRef, className: b(), style: { left: calculatedLeft } },
40
- React.createElement(OutsideClick, { onOutsideClick: onClose }, renderDefaultPopup))));
41
- };
42
- export default NavigationPopup;
@@ -1,20 +0,0 @@
1
- /* use this for style redefinitions to awoid problems with
2
- unpredictable css rules order in build */
3
- .social-icon {
4
- display: flex;
5
- justify-content: center;
6
- align-items: center;
7
- width: 40px;
8
- height: 40px;
9
- margin-right: 8px;
10
- color: var(--yc-color-base-background);
11
- border-radius: 50%;
12
- background-color: var(--yc-color-base-generic);
13
- }
14
- .social-icon:hover {
15
- background-color: var(--yc-color-base-generic-hover);
16
- }
17
- .social-icon__icon {
18
- width: 16px;
19
- height: 16px;
20
- }
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- import { NavigationSocialItem } from '../../../../models/navigation';
3
- import './SocialIcon.css';
4
- export interface NavigationSocialItemProps extends NavigationSocialItem {
5
- className?: string;
6
- }
7
- declare const SocialIcon: React.FC<NavigationSocialItemProps>;
8
- export default SocialIcon;
@@ -1,12 +0,0 @@
1
- import React from 'react';
2
- import block from 'bem-cn-lite';
3
- import { Image } from '../../../index';
4
- import { getMediaImage } from '../../../Media/Image/utils';
5
- import './SocialIcon.css';
6
- const b = block('social-icon');
7
- const SocialIcon = ({ icon, url, className }) => {
8
- const iconData = getMediaImage(icon);
9
- return (React.createElement("a", { href: url, target: "_blank", rel: "noopener noreferrer", className: b(null, className) },
10
- React.createElement(Image, Object.assign({ className: b('icon') }, iconData))));
11
- };
12
- export default SocialIcon;
@@ -1,2 +0,0 @@
1
- import React from 'react';
2
- export declare const NavigationArrow: React.FC<React.SVGProps<SVGSVGElement>>;
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { a11yHiddenSvgProps } from '../utils/svg';
3
- export const NavigationArrow = (props) => (React.createElement("svg", Object.assign({ xmlns: "http://www.w3.org/2000/svg", width: "9", height: "9", fill: "none", viewBox: "0 0 9 9" }, a11yHiddenSvgProps, props),
4
- React.createElement("path", { d: "M3 1H8M8 1V6M8 1L1 8", stroke: "currentColor", strokeOpacity: "0.7", strokeWidth: "1.2", strokeLinecap: "square" })));
@@ -1,2 +0,0 @@
1
- import React from 'react';
2
- export declare const NavigationClose: React.FC<React.SVGProps<SVGSVGElement>>;
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { a11yHiddenSvgProps } from '../utils/svg';
3
- export const NavigationClose = (props) => (React.createElement("svg", Object.assign({ xmlns: "http://www.w3.org/2000/svg", width: "36", height: "36", fill: "none" }, a11yHiddenSvgProps, props),
4
- React.createElement("path", { d: "M26 10 10 26m16 0L10 10", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round" })));
@@ -1,2 +0,0 @@
1
- import React from 'react';
2
- export declare const NavigationOpen: React.FC<React.SVGProps<SVGSVGElement>>;
@@ -1,6 +0,0 @@
1
- import React from 'react';
2
- import { a11yHiddenSvgProps } from '../utils/svg';
3
- export const NavigationOpen = (props) => (React.createElement("svg", Object.assign({ xmlns: "http://www.w3.org/2000/svg", width: "36", height: "36", fill: "none" }, a11yHiddenSvgProps, props),
4
- React.createElement("rect", { x: "8", y: "10", width: "20", height: "2", rx: "1", fill: "currentColor" }),
5
- React.createElement("rect", { x: "8", y: "17", width: "20", height: "2", rx: "1", fill: "currentColor" }),
6
- React.createElement("rect", { x: "8", y: "24", width: "20", height: "2", rx: "1", fill: "currentColor" })));
@@ -1,59 +0,0 @@
1
- import { ImageProps, ButtonProps } from './constructor-items';
2
- export declare enum NavigationItemType {
3
- Link = "link",
4
- Dropdown = "dropdown",
5
- Button = "button",
6
- Social = "social"
7
- }
8
- export interface NavigationItemBase {
9
- text: string;
10
- icon?: ImageProps;
11
- url?: string;
12
- }
13
- export interface NavigationLinkItem extends NavigationItemBase {
14
- type: NavigationItemType.Link;
15
- url: string;
16
- arrow?: boolean;
17
- target?: string;
18
- }
19
- export interface NavigationButtonItem extends ButtonProps {
20
- type: NavigationItemType.Button;
21
- url: string;
22
- target?: string;
23
- }
24
- export interface NavigationDropdownItem extends NavigationItemBase {
25
- type: NavigationItemType.Dropdown;
26
- items: NavigationLinkItem[];
27
- }
28
- export interface NavigationSocialItem extends Omit<NavigationItemBase, 'text'> {
29
- type: NavigationItemType.Social;
30
- icon: ImageProps;
31
- url: string;
32
- }
33
- export declare type NavigationItem = NavigationLinkItem | NavigationButtonItem | NavigationDropdownItem;
34
- export interface NavigationLogo extends Omit<NavigationItemBase, 'text'> {
35
- icon: ImageProps;
36
- text?: string;
37
- }
38
- export interface HeaderData {
39
- leftItems: NavigationItem[];
40
- rightItems?: NavigationItem[];
41
- }
42
- export interface FooterColumn {
43
- title: string;
44
- links: NavigationItem[];
45
- }
46
- export interface FooterUnderline {
47
- links?: NavigationItem[];
48
- copyright?: string;
49
- }
50
- export interface FooterData {
51
- columns: FooterColumn[];
52
- social?: NavigationSocialItem[];
53
- underline?: FooterUnderline;
54
- }
55
- export interface NavigationData {
56
- logo: NavigationLogo;
57
- header: HeaderData;
58
- footer?: FooterData;
59
- }
@@ -1,7 +0,0 @@
1
- export var NavigationItemType;
2
- (function (NavigationItemType) {
3
- NavigationItemType["Link"] = "link";
4
- NavigationItemType["Dropdown"] = "dropdown";
5
- NavigationItemType["Button"] = "button";
6
- NavigationItemType["Social"] = "social";
7
- })(NavigationItemType || (NavigationItemType = {}));
@@ -1,59 +0,0 @@
1
- import { ImageProps, ButtonProps } from './constructor-items';
2
- export declare enum NavigationItemType {
3
- Link = "link",
4
- Dropdown = "dropdown",
5
- Button = "button",
6
- Social = "social"
7
- }
8
- export interface NavigationItemBase {
9
- text: string;
10
- icon?: ImageProps;
11
- url?: string;
12
- }
13
- export interface NavigationLinkItem extends NavigationItemBase {
14
- type: NavigationItemType.Link;
15
- url: string;
16
- arrow?: boolean;
17
- target?: string;
18
- }
19
- export interface NavigationButtonItem extends ButtonProps {
20
- type: NavigationItemType.Button;
21
- url: string;
22
- target?: string;
23
- }
24
- export interface NavigationDropdownItem extends NavigationItemBase {
25
- type: NavigationItemType.Dropdown;
26
- items: NavigationLinkItem[];
27
- }
28
- export interface NavigationSocialItem extends Omit<NavigationItemBase, 'text'> {
29
- type: NavigationItemType.Social;
30
- icon: ImageProps;
31
- url: string;
32
- }
33
- export declare type NavigationItem = NavigationLinkItem | NavigationButtonItem | NavigationDropdownItem;
34
- export interface NavigationLogo extends Omit<NavigationItemBase, 'text'> {
35
- icon: ImageProps;
36
- text?: string;
37
- }
38
- export interface HeaderData {
39
- leftItems: NavigationItem[];
40
- rightItems?: NavigationItem[];
41
- }
42
- export interface FooterColumn {
43
- title: string;
44
- links: NavigationItem[];
45
- }
46
- export interface FooterUnderline {
47
- links?: NavigationItem[];
48
- copyright?: string;
49
- }
50
- export interface FooterData {
51
- columns: FooterColumn[];
52
- social?: NavigationSocialItem[];
53
- underline?: FooterUnderline;
54
- }
55
- export interface NavigationData {
56
- logo: NavigationLogo;
57
- header: HeaderData;
58
- footer?: FooterData;
59
- }
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NavigationItemType = void 0;
4
- var NavigationItemType;
5
- (function (NavigationItemType) {
6
- NavigationItemType["Link"] = "link";
7
- NavigationItemType["Dropdown"] = "dropdown";
8
- NavigationItemType["Button"] = "button";
9
- NavigationItemType["Social"] = "social";
10
- })(NavigationItemType = exports.NavigationItemType || (exports.NavigationItemType = {}));