@gravity-ui/page-constructor 3.16.0 → 4.0.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/README.md +1 -1
- package/build/cjs/blocks/Companies/Companies.css +5 -5
- package/build/cjs/blocks/Companies/Companies.js +3 -3
- package/build/cjs/blocks/ContentLayout/ContentLayout.css +4 -4
- package/build/cjs/blocks/ContentLayout/ContentLayout.js +1 -3
- package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.css +16 -16
- package/build/cjs/blocks/ExtendedFeatures/ExtendedFeatures.js +3 -3
- package/build/cjs/blocks/Header/Header.css +22 -22
- package/build/cjs/blocks/Header/Header.js +2 -2
- package/build/cjs/blocks/Icons/Icons.css +2 -2
- package/build/cjs/blocks/Info/Info.css +1 -1
- package/build/cjs/blocks/Info/Info.js +3 -3
- package/build/cjs/blocks/Media/Media.js +2 -2
- package/build/cjs/blocks/PromoFeaturesBlock/PromoFeaturesBlock.css +13 -13
- package/build/cjs/blocks/Questions/Questions.css +12 -12
- package/build/cjs/blocks/Share/Share.css +14 -12
- package/build/cjs/blocks/Slider/Arrow/Arrow.css +4 -4
- package/build/cjs/blocks/Slider/Slider.css +10 -10
- package/build/cjs/blocks/Table/Table.css +5 -5
- package/build/cjs/blocks/Tabs/Tabs.css +6 -6
- package/build/cjs/blocks/Tabs/Tabs.js +2 -2
- package/build/cjs/components/Anchor/Anchor.d.ts +2 -3
- package/build/cjs/components/AnimateBlock/AnimateBlock.d.ts +2 -3
- package/build/cjs/components/Author/Author.css +8 -8
- package/build/cjs/components/Author/Author.js +2 -2
- package/build/cjs/components/BlockBase/BlockBase.d.ts +2 -2
- package/build/cjs/components/BlockBase/BlockBase.js +1 -1
- package/build/cjs/components/Button/Button.css +4 -0
- package/build/cjs/components/Button/Button.d.ts +2 -3
- package/build/cjs/components/Button/Button.js +3 -2
- package/build/cjs/components/ButtonTabs/ButtonTabs.css +4 -0
- package/build/cjs/components/ButtonTabs/ButtonTabs.d.ts +2 -3
- package/build/cjs/components/CardBase/CardBase.css +6 -6
- package/build/cjs/components/Control/Control.css +9 -9
- package/build/cjs/components/ErrorWrapper/ErrorWrapper.css +3 -3
- package/build/cjs/components/FileLink/FileLink.css +16 -56
- package/build/cjs/components/FileLink/FileLink.js +18 -1
- package/build/cjs/components/FullWidthBackground/FullWidthBackground.css +1 -1
- package/build/cjs/components/FullscreenImage/FullscreenImage.css +3 -3
- package/build/cjs/components/FullscreenMedia/FullscreenMedia.css +3 -3
- package/build/cjs/components/HeaderBreadcrumbs/HeaderBreadcrumbs.css +11 -11
- package/build/cjs/components/Image/Image.d.ts +2 -3
- package/build/cjs/components/Link/Link.css +13 -13
- package/build/cjs/components/Media/Video/Video.js +1 -0
- package/build/cjs/components/MetaInfo/MetaInfo.css +2 -2
- package/build/cjs/components/OverflowScroller/OverflowScroller.css +1 -1
- package/build/cjs/components/ReactPlayer/CustomBarControls.css +1 -1
- package/build/cjs/components/ReactPlayer/ReactPlayer.css +2 -2
- package/build/cjs/components/Table/Table.css +8 -8
- package/build/cjs/components/Title/Title.css +4 -4
- package/build/cjs/components/Title/TitleItem.css +19 -19
- package/build/cjs/components/Title/TitleItem.d.ts +2 -3
- package/build/cjs/components/Title/TitleItem.js +2 -2
- package/build/cjs/components/UnpublishedLabel/UnpublishedLabel.css +5 -5
- package/build/cjs/components/VideoBlock/VideoBlock.css +2 -2
- package/build/cjs/components/constants.d.ts +3 -1
- package/build/cjs/components/constants.js +4 -2
- package/build/cjs/containers/PageConstructor/PageConstructor.css +50 -30
- package/build/cjs/containers/PageConstructor/PageConstructor.js +6 -3
- package/build/cjs/containers/PageConstructor/Provider.d.ts +2 -3
- package/build/cjs/containers/PageConstructor/Provider.js +2 -2
- package/build/cjs/context/theme/ThemeContext.d.ts +2 -3
- package/build/cjs/context/theme/ThemeContext.js +0 -1
- package/build/cjs/context/theme/index.d.ts +0 -1
- package/build/cjs/context/theme/index.js +0 -1
- package/build/cjs/context/theme/useTheme.d.ts +1 -1
- package/build/cjs/context/theme/useTheme.js +2 -2
- package/build/cjs/context/theme/withTheme.js +1 -1
- package/build/cjs/editor/components/AddBlock/AddBlock.css +6 -5
- package/build/cjs/editor/components/AddBlock/AddBlock.js +1 -1
- package/build/cjs/editor/components/ControlPanel/ControlPanel.css +12 -5
- package/build/cjs/editor/components/ControlPanel/ControlPanel.d.ts +4 -2
- package/build/cjs/editor/components/ControlPanel/ControlPanel.js +16 -9
- package/build/cjs/editor/components/EditBlock/EditBlock.css +2 -2
- package/build/cjs/editor/components/ErrorBoundary/ErrorBoundary.css +2 -2
- package/build/cjs/editor/components/Layout/Layout.css +11 -9
- package/build/cjs/editor/components/Layout/Layout.d.ts +4 -1
- package/build/cjs/editor/components/Layout/Layout.js +2 -2
- package/build/cjs/editor/components/NotFoundBlock/NotFoundBlock.css +4 -4
- package/build/cjs/editor/containers/Editor/Editor.js +5 -5
- package/build/cjs/editor/containers/Form/Form.css +12 -12
- package/build/cjs/editor/data/previews/default-preview.js +1 -1
- package/build/cjs/editor/data/previews/header-block.js +5 -5
- package/build/cjs/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.css +1 -1
- package/build/cjs/editor/store/index.d.ts +3 -1
- package/build/cjs/editor/store/index.js +7 -2
- package/build/cjs/editor/store/reducer.d.ts +8 -2
- package/build/cjs/editor/store/reducer.js +4 -1
- package/build/cjs/editor/styles/root.css +6 -4
- package/build/cjs/grid/Col/Col.d.ts +3 -4
- package/build/cjs/grid/Col/Col.js +2 -2
- package/build/cjs/grid/Grid/Grid.css +1 -1
- package/build/cjs/models/common.d.ts +4 -0
- package/build/cjs/models/common.js +5 -1
- package/build/cjs/models/constructor-items/blocks.d.ts +0 -4
- package/build/cjs/models/constructor-items/common.d.ts +3 -5
- package/build/cjs/navigation/components/DesktopNavigation/DesktopNavigation.css +4 -4
- package/build/cjs/navigation/components/Logo/Logo.css +3 -3
- package/build/cjs/navigation/components/Logo/Logo.js +3 -3
- package/build/cjs/navigation/components/MobileNavigation/MobileNavigation.css +7 -7
- package/build/cjs/navigation/components/Navigation/Navigation.css +2 -2
- package/build/cjs/navigation/components/NavigationItem/NavigationItem.css +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.css +1 -1
- package/build/cjs/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.css +2 -2
- package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.css +5 -5
- package/build/cjs/navigation/components/NavigationPopup/NavigationPopup.js +1 -1
- package/build/cjs/navigation/components/SocialIcon/SocialIcon.css +3 -3
- package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.css +4 -4
- package/build/cjs/sub-blocks/BackgroundCard/BackgroundCard.js +3 -3
- package/build/cjs/sub-blocks/BannerCard/BannerCard.css +16 -16
- package/build/cjs/sub-blocks/BannerCard/BannerCard.js +3 -3
- package/build/cjs/sub-blocks/Content/Content.css +22 -22
- package/build/cjs/sub-blocks/Content/ContentList/ContentList.css +6 -6
- package/build/cjs/sub-blocks/Content/ContentList/ContentList.js +3 -3
- package/build/cjs/sub-blocks/Divider/Divider.css +1 -1
- package/build/cjs/sub-blocks/HubspotForm/HubspotForm.css +39 -39
- package/build/cjs/sub-blocks/HubspotForm/index.js +2 -2
- package/build/cjs/sub-blocks/LayoutItem/LayoutItem.css +1 -1
- package/build/cjs/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.css +2 -2
- package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.css +17 -29
- package/build/cjs/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +18 -1
- package/build/cjs/sub-blocks/PriceDetailed/PriceDetails/Details/Settings.css +7 -7
- package/build/cjs/sub-blocks/PriceDetailed/PriceDetails/PriceDetails.css +5 -5
- package/build/cjs/sub-blocks/Quote/Quote.css +10 -10
- package/build/cjs/sub-blocks/Quote/Quote.js +2 -2
- package/build/cjs/utils/theme.d.ts +1 -1
- package/build/esm/blocks/Companies/Companies.css +5 -5
- package/build/esm/blocks/Companies/Companies.js +3 -3
- package/build/esm/blocks/ContentLayout/ContentLayout.css +4 -4
- package/build/esm/blocks/ContentLayout/ContentLayout.js +1 -3
- package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.css +16 -16
- package/build/esm/blocks/ExtendedFeatures/ExtendedFeatures.js +3 -3
- package/build/esm/blocks/Header/Header.css +22 -22
- package/build/esm/blocks/Header/Header.js +2 -2
- package/build/esm/blocks/Icons/Icons.css +2 -2
- package/build/esm/blocks/Info/Info.css +1 -1
- package/build/esm/blocks/Info/Info.js +3 -3
- package/build/esm/blocks/Media/Media.js +3 -3
- package/build/esm/blocks/PromoFeaturesBlock/PromoFeaturesBlock.css +13 -13
- package/build/esm/blocks/Questions/Questions.css +12 -12
- package/build/esm/blocks/Share/Share.css +14 -12
- package/build/esm/blocks/Slider/Arrow/Arrow.css +4 -4
- package/build/esm/blocks/Slider/Slider.css +10 -10
- package/build/esm/blocks/Table/Table.css +5 -5
- package/build/esm/blocks/Tabs/Tabs.css +6 -6
- package/build/esm/blocks/Tabs/Tabs.js +3 -3
- package/build/esm/components/Anchor/Anchor.d.ts +2 -3
- package/build/esm/components/AnimateBlock/AnimateBlock.d.ts +2 -3
- package/build/esm/components/Author/Author.css +8 -8
- package/build/esm/components/Author/Author.js +2 -2
- package/build/esm/components/BlockBase/BlockBase.d.ts +2 -2
- package/build/esm/components/BlockBase/BlockBase.js +1 -1
- package/build/esm/components/Button/Button.css +4 -0
- package/build/esm/components/Button/Button.d.ts +2 -3
- package/build/esm/components/Button/Button.js +4 -3
- package/build/esm/components/ButtonTabs/ButtonTabs.css +4 -0
- package/build/esm/components/ButtonTabs/ButtonTabs.d.ts +2 -3
- package/build/esm/components/CardBase/CardBase.css +6 -6
- package/build/esm/components/Control/Control.css +9 -9
- package/build/esm/components/ErrorWrapper/ErrorWrapper.css +3 -3
- package/build/esm/components/FileLink/FileLink.css +16 -56
- package/build/esm/components/FileLink/FileLink.js +18 -1
- package/build/esm/components/FullWidthBackground/FullWidthBackground.css +1 -1
- package/build/esm/components/FullscreenImage/FullscreenImage.css +3 -3
- package/build/esm/components/FullscreenMedia/FullscreenMedia.css +3 -3
- package/build/esm/components/HeaderBreadcrumbs/HeaderBreadcrumbs.css +11 -11
- package/build/esm/components/Image/Image.d.ts +2 -3
- package/build/esm/components/Link/Link.css +13 -13
- package/build/esm/components/Media/Video/Video.js +1 -0
- package/build/esm/components/MetaInfo/MetaInfo.css +2 -2
- package/build/esm/components/OverflowScroller/OverflowScroller.css +1 -1
- package/build/esm/components/ReactPlayer/CustomBarControls.css +1 -1
- package/build/esm/components/ReactPlayer/ReactPlayer.css +2 -2
- package/build/esm/components/Table/Table.css +8 -8
- package/build/esm/components/Title/Title.css +4 -4
- package/build/esm/components/Title/TitleItem.css +19 -19
- package/build/esm/components/Title/TitleItem.d.ts +2 -3
- package/build/esm/components/Title/TitleItem.js +2 -2
- package/build/esm/components/UnpublishedLabel/UnpublishedLabel.css +5 -5
- package/build/esm/components/VideoBlock/VideoBlock.css +2 -2
- package/build/esm/components/constants.d.ts +3 -1
- package/build/esm/components/constants.js +3 -1
- package/build/esm/containers/PageConstructor/PageConstructor.css +50 -30
- package/build/esm/containers/PageConstructor/PageConstructor.js +7 -4
- package/build/esm/containers/PageConstructor/Provider.d.ts +2 -3
- package/build/esm/containers/PageConstructor/Provider.js +2 -2
- package/build/esm/context/theme/ThemeContext.d.ts +2 -3
- package/build/esm/context/theme/ThemeContext.js +0 -1
- package/build/esm/context/theme/index.d.ts +0 -1
- package/build/esm/context/theme/index.js +0 -1
- package/build/esm/context/theme/useTheme.d.ts +1 -1
- package/build/esm/context/theme/useTheme.js +2 -2
- package/build/esm/context/theme/withTheme.js +1 -1
- package/build/esm/editor/components/AddBlock/AddBlock.css +6 -5
- package/build/esm/editor/components/AddBlock/AddBlock.js +1 -1
- package/build/esm/editor/components/ControlPanel/ControlPanel.css +12 -5
- package/build/esm/editor/components/ControlPanel/ControlPanel.d.ts +4 -2
- package/build/esm/editor/components/ControlPanel/ControlPanel.js +17 -10
- package/build/esm/editor/components/EditBlock/EditBlock.css +2 -2
- package/build/esm/editor/components/ErrorBoundary/ErrorBoundary.css +2 -2
- package/build/esm/editor/components/Layout/Layout.css +11 -9
- package/build/esm/editor/components/Layout/Layout.d.ts +4 -1
- package/build/esm/editor/components/Layout/Layout.js +2 -2
- package/build/esm/editor/components/NotFoundBlock/NotFoundBlock.css +4 -4
- package/build/esm/editor/containers/Editor/Editor.js +5 -5
- package/build/esm/editor/containers/Form/Form.css +12 -12
- package/build/esm/editor/data/previews/default-preview.js +1 -1
- package/build/esm/editor/data/previews/header-block.js +5 -5
- package/build/esm/editor/dynamic-forms-custom/components/OneOfCustom/OneOfCustom.css +1 -1
- package/build/esm/editor/store/index.d.ts +3 -1
- package/build/esm/editor/store/index.js +8 -3
- package/build/esm/editor/store/reducer.d.ts +8 -2
- package/build/esm/editor/store/reducer.js +3 -0
- package/build/esm/editor/styles/root.css +6 -4
- package/build/esm/grid/Col/Col.d.ts +3 -4
- package/build/esm/grid/Col/Col.js +2 -2
- package/build/esm/grid/Grid/Grid.css +1 -1
- package/build/esm/models/common.d.ts +4 -0
- package/build/esm/models/common.js +4 -0
- package/build/esm/models/constructor-items/blocks.d.ts +0 -4
- package/build/esm/models/constructor-items/common.d.ts +3 -5
- package/build/esm/navigation/components/DesktopNavigation/DesktopNavigation.css +4 -4
- package/build/esm/navigation/components/Logo/Logo.css +3 -3
- package/build/esm/navigation/components/Logo/Logo.js +3 -3
- package/build/esm/navigation/components/MobileNavigation/MobileNavigation.css +7 -7
- package/build/esm/navigation/components/Navigation/Navigation.css +2 -2
- package/build/esm/navigation/components/NavigationItem/NavigationItem.css +1 -1
- package/build/esm/navigation/components/NavigationItem/components/NavigationDropdown/NavigationDropdown.css +1 -1
- package/build/esm/navigation/components/NavigationItem/components/NavigationLink/NavigationLink.css +2 -2
- package/build/esm/navigation/components/NavigationPopup/NavigationPopup.css +5 -5
- package/build/esm/navigation/components/NavigationPopup/NavigationPopup.js +1 -1
- package/build/esm/navigation/components/SocialIcon/SocialIcon.css +3 -3
- package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.css +4 -4
- package/build/esm/sub-blocks/BackgroundCard/BackgroundCard.js +3 -3
- package/build/esm/sub-blocks/BannerCard/BannerCard.css +16 -16
- package/build/esm/sub-blocks/BannerCard/BannerCard.js +3 -3
- package/build/esm/sub-blocks/Content/Content.css +22 -22
- package/build/esm/sub-blocks/Content/ContentList/ContentList.css +6 -6
- package/build/esm/sub-blocks/Content/ContentList/ContentList.js +3 -3
- package/build/esm/sub-blocks/Divider/Divider.css +1 -1
- package/build/esm/sub-blocks/HubspotForm/HubspotForm.css +39 -39
- package/build/esm/sub-blocks/HubspotForm/index.js +2 -2
- package/build/esm/sub-blocks/LayoutItem/LayoutItem.css +1 -1
- package/build/esm/sub-blocks/PriceDetailed/CombinedPriceDetailed/CombinedPriceDetailed.css +2 -2
- package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.css +17 -29
- package/build/esm/sub-blocks/PriceDetailed/PriceDescription/PriceDescription.js +18 -1
- package/build/esm/sub-blocks/PriceDetailed/PriceDetails/Details/Settings.css +7 -7
- package/build/esm/sub-blocks/PriceDetailed/PriceDetails/PriceDetails.css +5 -5
- package/build/esm/sub-blocks/Quote/Quote.css +10 -10
- package/build/esm/sub-blocks/Quote/Quote.js +3 -3
- package/build/esm/utils/theme.d.ts +1 -1
- package/package.json +7 -5
- package/server/components/constants.d.ts +3 -1
- package/server/components/constants.js +4 -2
- package/server/models/common.d.ts +4 -0
- package/server/models/common.js +5 -1
- package/server/models/constructor-items/blocks.d.ts +0 -4
- package/server/models/constructor-items/common.d.ts +3 -5
- package/server/utils/theme.d.ts +1 -1
- package/styles/colors/dark.scss +6 -0
- package/styles/colors/light.scss +6 -0
- package/styles/colors/social.scss +10 -0
- package/styles/mixins.scss +21 -25
- package/styles/root.scss +28 -14
- package/styles/storybook/common.scss +6 -6
- package/styles/storybook/palette.scss +6 -6
- package/styles/storybook/typography.scss +46 -46
- package/styles/styles.css +15 -15
- package/styles/variables.scss +0 -8
- package/styles/yfm.scss +12 -12
- package/widget/index.js +1 -1
- package/build/cjs/context/theme/ThemeProvider.d.ts +0 -22
- package/build/cjs/context/theme/ThemeProvider.js +0 -49
- package/build/cjs/context/theme/ThemeValueContext.d.ts +0 -7
- package/build/cjs/context/theme/ThemeValueContext.js +0 -9
- package/build/cjs/context/theme/useThemeValue.d.ts +0 -2
- package/build/cjs/context/theme/useThemeValue.js +0 -11
- package/build/esm/context/theme/ThemeProvider.d.ts +0 -22
- package/build/esm/context/theme/ThemeProvider.js +0 -44
- package/build/esm/context/theme/ThemeValueContext.d.ts +0 -7
- package/build/esm/context/theme/ThemeValueContext.js +0 -5
- package/build/esm/context/theme/useThemeValue.d.ts +0 -2
- package/build/esm/context/theme/useThemeValue.js +0 -6
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import React, { PropsWithChildren } from 'react';
|
|
2
|
-
import { ThemeContextProps } from './ThemeContext';
|
|
3
|
-
import { ConstructorTheme } from './ThemeValueContext';
|
|
4
|
-
interface ThemeProviderExternalProps {
|
|
5
|
-
}
|
|
6
|
-
interface ThemeProviderDefaultProps {
|
|
7
|
-
theme: ConstructorTheme;
|
|
8
|
-
}
|
|
9
|
-
export interface ThemeProviderProps extends ThemeProviderExternalProps, Partial<ThemeProviderDefaultProps> {
|
|
10
|
-
}
|
|
11
|
-
interface ThemeProviderState extends ThemeContextProps {
|
|
12
|
-
themeValue: ConstructorTheme;
|
|
13
|
-
}
|
|
14
|
-
export declare class ThemeProvider extends React.Component<PropsWithChildren<ThemeProviderExternalProps & ThemeProviderDefaultProps>, ThemeProviderState> {
|
|
15
|
-
static defaultProps: ThemeProviderDefaultProps;
|
|
16
|
-
state: ThemeProviderState;
|
|
17
|
-
componentDidMount(): void;
|
|
18
|
-
componentDidUpdate(prevProps: ThemeProviderProps, prevState: ThemeProviderState): void;
|
|
19
|
-
render(): JSX.Element;
|
|
20
|
-
private updateBodyClassName;
|
|
21
|
-
}
|
|
22
|
-
export {};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ThemeProvider = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
-
const constants_1 = require("../../components/constants");
|
|
7
|
-
const ThemeContext_1 = require("./ThemeContext");
|
|
8
|
-
const ThemeValueContext_1 = require("./ThemeValueContext");
|
|
9
|
-
class ThemeProvider extends react_1.default.Component {
|
|
10
|
-
constructor() {
|
|
11
|
-
super(...arguments);
|
|
12
|
-
this.state = {
|
|
13
|
-
theme: this.props.theme,
|
|
14
|
-
themeValue: this.props.theme,
|
|
15
|
-
setTheme: (theme) => {
|
|
16
|
-
this.setState({ theme });
|
|
17
|
-
},
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
componentDidMount() {
|
|
21
|
-
this.updateBodyClassName(this.state.themeValue);
|
|
22
|
-
}
|
|
23
|
-
componentDidUpdate(prevProps, prevState) {
|
|
24
|
-
if (prevState.theme !== this.state.theme) {
|
|
25
|
-
this.setState({ themeValue: this.state.theme });
|
|
26
|
-
this.updateBodyClassName(this.state.theme);
|
|
27
|
-
}
|
|
28
|
-
if (prevProps.theme !== this.props.theme) {
|
|
29
|
-
this.setState({ themeValue: this.state.theme });
|
|
30
|
-
this.updateBodyClassName(this.state.theme);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
render() {
|
|
34
|
-
return (react_1.default.createElement(ThemeContext_1.ThemeContext.Provider, { value: this.state },
|
|
35
|
-
react_1.default.createElement(ThemeValueContext_1.ThemeValueContext.Provider, { value: { themeValue: this.state.themeValue } }, this.props.children)));
|
|
36
|
-
}
|
|
37
|
-
updateBodyClassName(theme) {
|
|
38
|
-
const bodyEl = document.body;
|
|
39
|
-
if (!bodyEl.classList.contains('yc-root')) {
|
|
40
|
-
bodyEl.classList.add('yc-root');
|
|
41
|
-
}
|
|
42
|
-
bodyEl.classList.toggle('yc-root_theme_light', theme === 'light');
|
|
43
|
-
bodyEl.classList.toggle('yc-root_theme_dark', theme === 'dark');
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
exports.ThemeProvider = ThemeProvider;
|
|
47
|
-
ThemeProvider.defaultProps = {
|
|
48
|
-
theme: constants_1.DEFAULT_THEME,
|
|
49
|
-
};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export type ConstructorTheme = 'light' | 'dark';
|
|
3
|
-
export interface ThemeValueContextProps {
|
|
4
|
-
themeValue: ConstructorTheme;
|
|
5
|
-
}
|
|
6
|
-
export declare const initialValue: ThemeValueContextProps;
|
|
7
|
-
export declare const ThemeValueContext: React.Context<ThemeValueContextProps>;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ThemeValueContext = exports.initialValue = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
-
exports.initialValue = {
|
|
7
|
-
themeValue: 'light',
|
|
8
|
-
};
|
|
9
|
-
exports.ThemeValueContext = react_1.default.createContext(exports.initialValue);
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useThemeValue = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const react_1 = tslib_1.__importDefault(require("react"));
|
|
6
|
-
const ThemeValueContext_1 = require("./ThemeValueContext");
|
|
7
|
-
function useThemeValue() {
|
|
8
|
-
const { themeValue } = react_1.default.useContext(ThemeValueContext_1.ThemeValueContext);
|
|
9
|
-
return themeValue;
|
|
10
|
-
}
|
|
11
|
-
exports.useThemeValue = useThemeValue;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import React, { PropsWithChildren } from 'react';
|
|
2
|
-
import { ThemeContextProps } from './ThemeContext';
|
|
3
|
-
import { ConstructorTheme } from './ThemeValueContext';
|
|
4
|
-
interface ThemeProviderExternalProps {
|
|
5
|
-
}
|
|
6
|
-
interface ThemeProviderDefaultProps {
|
|
7
|
-
theme: ConstructorTheme;
|
|
8
|
-
}
|
|
9
|
-
export interface ThemeProviderProps extends ThemeProviderExternalProps, Partial<ThemeProviderDefaultProps> {
|
|
10
|
-
}
|
|
11
|
-
interface ThemeProviderState extends ThemeContextProps {
|
|
12
|
-
themeValue: ConstructorTheme;
|
|
13
|
-
}
|
|
14
|
-
export declare class ThemeProvider extends React.Component<PropsWithChildren<ThemeProviderExternalProps & ThemeProviderDefaultProps>, ThemeProviderState> {
|
|
15
|
-
static defaultProps: ThemeProviderDefaultProps;
|
|
16
|
-
state: ThemeProviderState;
|
|
17
|
-
componentDidMount(): void;
|
|
18
|
-
componentDidUpdate(prevProps: ThemeProviderProps, prevState: ThemeProviderState): void;
|
|
19
|
-
render(): JSX.Element;
|
|
20
|
-
private updateBodyClassName;
|
|
21
|
-
}
|
|
22
|
-
export {};
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { DEFAULT_THEME } from '../../components/constants';
|
|
3
|
-
import { ThemeContext } from './ThemeContext';
|
|
4
|
-
import { ThemeValueContext } from './ThemeValueContext';
|
|
5
|
-
export class ThemeProvider extends React.Component {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(...arguments);
|
|
8
|
-
this.state = {
|
|
9
|
-
theme: this.props.theme,
|
|
10
|
-
themeValue: this.props.theme,
|
|
11
|
-
setTheme: (theme) => {
|
|
12
|
-
this.setState({ theme });
|
|
13
|
-
},
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
componentDidMount() {
|
|
17
|
-
this.updateBodyClassName(this.state.themeValue);
|
|
18
|
-
}
|
|
19
|
-
componentDidUpdate(prevProps, prevState) {
|
|
20
|
-
if (prevState.theme !== this.state.theme) {
|
|
21
|
-
this.setState({ themeValue: this.state.theme });
|
|
22
|
-
this.updateBodyClassName(this.state.theme);
|
|
23
|
-
}
|
|
24
|
-
if (prevProps.theme !== this.props.theme) {
|
|
25
|
-
this.setState({ themeValue: this.state.theme });
|
|
26
|
-
this.updateBodyClassName(this.state.theme);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
render() {
|
|
30
|
-
return (React.createElement(ThemeContext.Provider, { value: this.state },
|
|
31
|
-
React.createElement(ThemeValueContext.Provider, { value: { themeValue: this.state.themeValue } }, this.props.children)));
|
|
32
|
-
}
|
|
33
|
-
updateBodyClassName(theme) {
|
|
34
|
-
const bodyEl = document.body;
|
|
35
|
-
if (!bodyEl.classList.contains('yc-root')) {
|
|
36
|
-
bodyEl.classList.add('yc-root');
|
|
37
|
-
}
|
|
38
|
-
bodyEl.classList.toggle('yc-root_theme_light', theme === 'light');
|
|
39
|
-
bodyEl.classList.toggle('yc-root_theme_dark', theme === 'dark');
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
ThemeProvider.defaultProps = {
|
|
43
|
-
theme: DEFAULT_THEME,
|
|
44
|
-
};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export type ConstructorTheme = 'light' | 'dark';
|
|
3
|
-
export interface ThemeValueContextProps {
|
|
4
|
-
themeValue: ConstructorTheme;
|
|
5
|
-
}
|
|
6
|
-
export declare const initialValue: ThemeValueContextProps;
|
|
7
|
-
export declare const ThemeValueContext: React.Context<ThemeValueContextProps>;
|