@gravity-ui/page-constructor 1.7.0-alpha.7 → 1.7.0-alpha.8
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/README.md +58 -36
- package/build/cjs/blocks/Tabs/Tabs.css +23 -49
- package/build/cjs/blocks/Tabs/Tabs.d.ts +1 -1
- package/build/cjs/blocks/Tabs/Tabs.js +27 -29
- package/build/cjs/components/Image/Image.js +1 -3
- package/build/cjs/components/OverflowScroller/OverflowScroller.css +2 -0
- package/build/cjs/components/RouterLink/RouterLink.d.ts +1 -0
- package/build/cjs/components/VideoBlock/VideoBlock.js +1 -1
- package/build/cjs/components/index.d.ts +2 -0
- package/build/cjs/components/index.js +40 -39
- package/build/cjs/components/navigation/components/Header/Header.css +85 -0
- package/build/cjs/components/navigation/components/Header/Header.d.ts +8 -0
- package/build/cjs/components/navigation/components/Header/Header.js +51 -0
- package/build/cjs/components/navigation/components/Logo/Logo.css +23 -0
- package/build/cjs/components/navigation/components/Logo/Logo.d.ts +7 -0
- package/build/cjs/components/navigation/components/Logo/Logo.js +17 -0
- package/build/cjs/components/navigation/components/MobileNavigation/MobileNavigation.css +58 -0
- package/build/cjs/components/navigation/components/MobileNavigation/MobileNavigation.d.ts +13 -0
- package/build/cjs/components/navigation/components/MobileNavigation/MobileNavigation.js +45 -0
- package/build/cjs/components/navigation/components/Navigation/Navigation.css +43 -0
- package/build/cjs/components/navigation/components/Navigation/Navigation.d.ts +18 -0
- package/build/cjs/components/navigation/components/Navigation/Navigation.js +71 -0
- package/build/cjs/components/navigation/components/NavigationItem/NavigationItem.css +41 -0
- package/build/cjs/components/navigation/components/NavigationItem/NavigationItem.d.ts +12 -0
- package/build/cjs/components/navigation/components/NavigationItem/NavigationItem.js +60 -0
- package/build/cjs/components/navigation/components/NavigationPopup/NavigationPopup.css +33 -0
- package/build/cjs/components/navigation/components/NavigationPopup/NavigationPopup.d.ts +10 -0
- package/build/cjs/components/navigation/components/NavigationPopup/NavigationPopup.js +45 -0
- package/build/cjs/components/navigation/components/SocialIcon/SocialIcon.css +20 -0
- package/build/cjs/components/navigation/components/SocialIcon/SocialIcon.d.ts +7 -0
- package/build/cjs/components/navigation/components/SocialIcon/SocialIcon.js +14 -0
- package/build/cjs/components/navigation/components/index.d.ts +7 -0
- package/build/cjs/components/navigation/components/index.js +20 -0
- package/build/cjs/components/navigation/containers/Layout/Layout.css +10 -0
- package/build/cjs/components/navigation/containers/Layout/Layout.d.ts +7 -0
- package/build/cjs/components/navigation/containers/Layout/Layout.js +11 -0
- package/build/cjs/constructor-items.d.ts +1 -1
- package/build/cjs/containers/PageConstructor/PageConstructor.d.ts +3 -2
- package/build/cjs/containers/PageConstructor/PageConstructor.js +12 -10
- package/build/cjs/context/locationContext/locationContext.d.ts +1 -0
- package/build/cjs/icons/NavigationArrow.d.ts +2 -0
- package/build/cjs/icons/NavigationArrow.js +9 -0
- package/build/cjs/icons/NavigationClose.d.ts +2 -0
- package/build/cjs/icons/NavigationClose.js +9 -0
- package/build/cjs/icons/NavigationOpen.d.ts +2 -0
- package/build/cjs/icons/NavigationOpen.js +11 -0
- package/build/cjs/icons/index.d.ts +3 -0
- package/build/cjs/icons/index.js +3 -0
- package/build/cjs/models/constructor-items/blocks.d.ts +4 -7
- package/build/cjs/models/index.d.ts +1 -0
- package/build/cjs/models/index.js +1 -0
- package/build/cjs/models/navigation.d.ts +60 -0
- package/build/cjs/models/navigation.js +10 -0
- package/build/cjs/text-transform/blocks.js +4 -11
- package/build/cjs/text-transform/utils.js +1 -1
- package/build/esm/blocks/Tabs/Tabs.css +23 -49
- package/build/esm/blocks/Tabs/Tabs.d.ts +1 -1
- package/build/esm/blocks/Tabs/Tabs.js +27 -29
- package/build/esm/components/Image/Image.d.ts +0 -1
- package/build/esm/components/Image/Image.js +1 -4
- package/build/esm/components/OverflowScroller/OverflowScroller.css +2 -0
- package/build/esm/components/RouterLink/RouterLink.d.ts +1 -0
- package/build/esm/components/VideoBlock/VideoBlock.js +1 -1
- package/build/esm/components/index.d.ts +2 -0
- package/build/esm/components/index.js +2 -0
- package/build/esm/components/navigation/components/Header/Header.css +85 -0
- package/build/esm/components/navigation/components/Header/Header.d.ts +9 -0
- package/build/esm/components/navigation/components/Header/Header.js +47 -0
- package/build/esm/components/navigation/components/Logo/Logo.css +23 -0
- package/build/esm/components/navigation/components/Logo/Logo.d.ts +8 -0
- package/build/esm/components/navigation/components/Logo/Logo.js +15 -0
- package/build/esm/components/navigation/components/MobileNavigation/MobileNavigation.css +58 -0
- package/build/esm/components/navigation/components/MobileNavigation/MobileNavigation.d.ts +14 -0
- package/build/esm/components/navigation/components/MobileNavigation/MobileNavigation.js +43 -0
- package/build/esm/components/navigation/components/Navigation/Navigation.css +43 -0
- package/build/esm/components/navigation/components/Navigation/Navigation.d.ts +19 -0
- package/build/esm/components/navigation/components/Navigation/Navigation.js +70 -0
- package/build/esm/components/navigation/components/NavigationItem/NavigationItem.css +41 -0
- package/build/esm/components/navigation/components/NavigationItem/NavigationItem.d.ts +13 -0
- package/build/esm/components/navigation/components/NavigationItem/NavigationItem.js +59 -0
- package/build/esm/components/navigation/components/NavigationPopup/NavigationPopup.css +33 -0
- package/build/esm/components/navigation/components/NavigationPopup/NavigationPopup.d.ts +11 -0
- package/build/esm/components/navigation/components/NavigationPopup/NavigationPopup.js +41 -0
- package/build/esm/components/navigation/components/SocialIcon/SocialIcon.css +20 -0
- package/build/esm/components/navigation/components/SocialIcon/SocialIcon.d.ts +8 -0
- package/build/esm/components/navigation/components/SocialIcon/SocialIcon.js +12 -0
- package/build/esm/components/navigation/components/index.d.ts +7 -0
- package/build/esm/components/navigation/components/index.js +7 -0
- package/build/esm/components/navigation/containers/Layout/Layout.css +10 -0
- package/build/esm/components/navigation/containers/Layout/Layout.d.ts +8 -0
- package/build/esm/components/navigation/containers/Layout/Layout.js +9 -0
- package/build/esm/constructor-items.d.ts +1 -1
- package/build/esm/containers/PageConstructor/PageConstructor.d.ts +3 -2
- package/build/esm/containers/PageConstructor/PageConstructor.js +12 -10
- package/build/esm/context/locationContext/locationContext.d.ts +1 -0
- package/build/esm/icons/NavigationArrow.d.ts +2 -0
- package/build/esm/icons/NavigationArrow.js +4 -0
- package/build/esm/icons/NavigationClose.d.ts +2 -0
- package/build/esm/icons/NavigationClose.js +4 -0
- package/build/esm/icons/NavigationOpen.d.ts +2 -0
- package/build/esm/icons/NavigationOpen.js +6 -0
- package/build/esm/icons/index.d.ts +3 -0
- package/build/esm/icons/index.js +3 -0
- package/build/esm/models/constructor-items/blocks.d.ts +4 -7
- package/build/esm/models/index.d.ts +1 -0
- package/build/esm/models/index.js +1 -0
- package/build/esm/models/navigation.d.ts +60 -0
- package/build/esm/models/navigation.js +7 -0
- package/build/esm/text-transform/blocks.js +4 -11
- package/build/esm/text-transform/utils.js +1 -1
- package/package.json +1 -4
- package/server/models/constructor-items/blocks.d.ts +4 -7
- package/server/models/index.d.ts +1 -0
- package/server/models/index.js +1 -0
- package/server/models/navigation.d.ts +60 -0
- package/server/models/navigation.js +10 -0
- package/server/text-transform/blocks.js +4 -11
- package/server/text-transform/utils.js +1 -1
- package/styles/mixins.scss +38 -0
- package/build/cjs/components/ButtonTabs/ButtonTabs.css +0 -12
- package/build/cjs/components/ButtonTabs/ButtonTabs.d.ts +0 -13
- package/build/cjs/components/ButtonTabs/ButtonTabs.js +0 -27
- package/build/cjs/components/Image/Image.css +0 -3
- package/build/esm/components/ButtonTabs/ButtonTabs.css +0 -12
- package/build/esm/components/ButtonTabs/ButtonTabs.d.ts +0 -14
- package/build/esm/components/ButtonTabs/ButtonTabs.js +0 -25
- package/build/esm/components/Image/Image.css +0 -3
package/styles/mixins.scss
CHANGED
|
@@ -442,3 +442,41 @@ unpredictable css rules order in build */
|
|
|
442
442
|
@mixin font-feature-settings {
|
|
443
443
|
font-feature-settings: 'liga', 'kern', 'pnum' on, 'lnum' on, 'ss03' on;
|
|
444
444
|
}
|
|
445
|
+
|
|
446
|
+
@mixin navigation-popup {
|
|
447
|
+
z-index: 101;
|
|
448
|
+
|
|
449
|
+
display: flex;
|
|
450
|
+
flex-direction: column;
|
|
451
|
+
|
|
452
|
+
min-width: 220px;
|
|
453
|
+
padding: $indentXS;
|
|
454
|
+
|
|
455
|
+
border: 1px solid var(--yc-color-line-generic);
|
|
456
|
+
border-top-width: 0;
|
|
457
|
+
border-radius: calc(#{$borderRadius} / 2);
|
|
458
|
+
background: var(--yc-color-base-float);
|
|
459
|
+
box-shadow: 0 3px 10px var(--yc-color-sfx-shadow);
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
@mixin navigation-item {
|
|
463
|
+
color: var(--yc-color-text-primary);
|
|
464
|
+
@include reset-link-style();
|
|
465
|
+
@include islands-focus();
|
|
466
|
+
|
|
467
|
+
&:hover,
|
|
468
|
+
&_active {
|
|
469
|
+
color: var(--yc-color-text-link);
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
@mixin navigation-link() {
|
|
474
|
+
cursor: pointer;
|
|
475
|
+
@include islands-focus();
|
|
476
|
+
@include reset-link-style();
|
|
477
|
+
|
|
478
|
+
&:hover,
|
|
479
|
+
&:active {
|
|
480
|
+
color: var(--yc-color-text-link);
|
|
481
|
+
}
|
|
482
|
+
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/* use this for style redefinitions to awoid problems with
|
|
2
|
-
unpredictable css rules order in build */
|
|
3
|
-
.pc-button-tabs {
|
|
4
|
-
margin-bottom: 20px;
|
|
5
|
-
}
|
|
6
|
-
.pc-button-tabs__item {
|
|
7
|
-
margin-right: 8px;
|
|
8
|
-
margin-bottom: 12px;
|
|
9
|
-
}
|
|
10
|
-
.pc-button-tabs__item_active {
|
|
11
|
-
pointer-events: none;
|
|
12
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { ButtonProps } from '../../models';
|
|
2
|
-
export interface ButtonTabsItemProps extends Omit<ButtonProps, 'url' | 'primary' | 'target' | 'text'> {
|
|
3
|
-
id: string;
|
|
4
|
-
title: string;
|
|
5
|
-
}
|
|
6
|
-
export interface ButtonTabsProps {
|
|
7
|
-
className?: string;
|
|
8
|
-
items: ButtonTabsItemProps[];
|
|
9
|
-
activeTab?: string;
|
|
10
|
-
onSelectTab?: (tabId: string) => void;
|
|
11
|
-
}
|
|
12
|
-
declare const ButtonTabs: (props: ButtonTabsProps) => JSX.Element;
|
|
13
|
-
export default ButtonTabs;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
const react_1 = (0, tslib_1.__importStar)(require("react"));
|
|
5
|
-
const utils_1 = require("../../utils");
|
|
6
|
-
const index_1 = require("../index");
|
|
7
|
-
const b = (0, utils_1.block)('button-tabs');
|
|
8
|
-
const ButtonTabs = (props) => {
|
|
9
|
-
const { className, items, activeTab, onSelectTab } = props;
|
|
10
|
-
// const isMobile = useContext(MobileContext);
|
|
11
|
-
const activeTabId = (0, react_1.useMemo)(() => {
|
|
12
|
-
if (activeTab) {
|
|
13
|
-
return activeTab;
|
|
14
|
-
}
|
|
15
|
-
return items[0].id;
|
|
16
|
-
}, [activeTab, items]);
|
|
17
|
-
const handleClick = (0, react_1.useCallback)((tabId) => {
|
|
18
|
-
if (onSelectTab) {
|
|
19
|
-
onSelectTab(tabId);
|
|
20
|
-
}
|
|
21
|
-
}, [onSelectTab]);
|
|
22
|
-
return (react_1.default.createElement("div", { className: b(null, className) }, items.map((item) => {
|
|
23
|
-
const isActive = item.id === activeTabId;
|
|
24
|
-
return (react_1.default.createElement(index_1.Button, { text: item.title, className: b('item', { active: isActive }), key: item.title, size: 'l', onClick: () => handleClick(item.id), theme: isActive ? 'monochrome' : 'normal' }));
|
|
25
|
-
})));
|
|
26
|
-
};
|
|
27
|
-
exports.default = ButtonTabs;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/* use this for style redefinitions to awoid problems with
|
|
2
|
-
unpredictable css rules order in build */
|
|
3
|
-
.pc-button-tabs {
|
|
4
|
-
margin-bottom: 20px;
|
|
5
|
-
}
|
|
6
|
-
.pc-button-tabs__item {
|
|
7
|
-
margin-right: 8px;
|
|
8
|
-
margin-bottom: 12px;
|
|
9
|
-
}
|
|
10
|
-
.pc-button-tabs__item_active {
|
|
11
|
-
pointer-events: none;
|
|
12
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { ButtonProps } from '../../models';
|
|
2
|
-
import './ButtonTabs.css';
|
|
3
|
-
export interface ButtonTabsItemProps extends Omit<ButtonProps, 'url' | 'primary' | 'target' | 'text'> {
|
|
4
|
-
id: string;
|
|
5
|
-
title: string;
|
|
6
|
-
}
|
|
7
|
-
export interface ButtonTabsProps {
|
|
8
|
-
className?: string;
|
|
9
|
-
items: ButtonTabsItemProps[];
|
|
10
|
-
activeTab?: string;
|
|
11
|
-
onSelectTab?: (tabId: string) => void;
|
|
12
|
-
}
|
|
13
|
-
declare const ButtonTabs: (props: ButtonTabsProps) => JSX.Element;
|
|
14
|
-
export default ButtonTabs;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import React, { useCallback, useMemo } from 'react';
|
|
2
|
-
import { block } from '../../utils';
|
|
3
|
-
import { Button } from '../index';
|
|
4
|
-
import './ButtonTabs.css';
|
|
5
|
-
const b = block('button-tabs');
|
|
6
|
-
const ButtonTabs = (props) => {
|
|
7
|
-
const { className, items, activeTab, onSelectTab } = props;
|
|
8
|
-
// const isMobile = useContext(MobileContext);
|
|
9
|
-
const activeTabId = useMemo(() => {
|
|
10
|
-
if (activeTab) {
|
|
11
|
-
return activeTab;
|
|
12
|
-
}
|
|
13
|
-
return items[0].id;
|
|
14
|
-
}, [activeTab, items]);
|
|
15
|
-
const handleClick = useCallback((tabId) => {
|
|
16
|
-
if (onSelectTab) {
|
|
17
|
-
onSelectTab(tabId);
|
|
18
|
-
}
|
|
19
|
-
}, [onSelectTab]);
|
|
20
|
-
return (React.createElement("div", { className: b(null, className) }, items.map((item) => {
|
|
21
|
-
const isActive = item.id === activeTabId;
|
|
22
|
-
return (React.createElement(Button, { text: item.title, className: b('item', { active: isActive }), key: item.title, size: 'l', onClick: () => handleClick(item.id), theme: isActive ? 'monochrome' : 'normal' }));
|
|
23
|
-
})));
|
|
24
|
-
};
|
|
25
|
-
export default ButtonTabs;
|