PluginProbe
Smart Post – Post Grid, Post Carousel, Post Slider Gutenberg Blocks for Blog & News / 4.0.7
Smart Post – Post Grid, Post Carousel, Post Slider Gutenberg Blocks for Blog & News v4.0.7
4.0.8 4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 4.0.2 4.0.1 2.3.5 2.3.6 2.4.0 2.4.1 2.4.10 2.4.11 2.4.12 2.4.13 2.4.14 2.4.15 2.4.16 2.4.17 2.4.18 2.4.19 2.4.2 2.4.20 2.4.21 All 88 releases
post-carousel / src / blocks / column / generalTab.js

generalTab.js in Smart Post – Post Grid, Post Carousel, Post Slider Gutenberg Blocks for Blog & News 4.0.7, at src/blocks/column/generalTab.js

104 lines 2.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import { __ } from "@wordpress/i18n";
2 import { InputControl, SPRangeControl } from "../../components";
3 import Toggle from "../../components/toggle/toggle";
4 import { useDeviceType } from "../../controls/controls";
5
6 export const ContainerColumnGeneralTab = ({ attributes, setAttributes }) => {
7 const { columnWidth } = attributes;
8 const deviceType = useDeviceType();
9 const columnWidthChangeHandler = ({ value }) => {
10 setAttributes({
11 columnWidth: {
12 ...columnWidth,
13 device: { ...columnWidth.device, [deviceType]: value },
14 },
15 });
16 };
17
18 return (
19 <SPRangeControl
20 label={__("Column Width", "post-carousel")}
21 attributes={columnWidth}
22 attributesKey={"columnWidth"}
23 setAttributes={setAttributes}
24 // units={ [ 'px', '%', 'em' ] }
25 units={["%"]}
26 onValueChange={columnWidthChangeHandler}
27 max={600}
28 step={0.1}
29 resetIcon={ true }
30 defaultValue={{ unit: "%", value: "" }}
31 />
32 );
33 };
34
35 export const ColumnAdvancedGeneralTab = ({ attributes, setAttributes }) => {
36 const { columnZIndex, columnWrapperLink, columnWrapperLinkUrl, columnWrapperLinkNewTab } = attributes;
37
38 return (
39 <>
40 <InputControl
41 label={__("Z-Index", "post-carousel")}
42 attributes={columnZIndex}
43 attributesKey={"columnZIndex"}
44 setAttributes={setAttributes}
45 inputType="number"
46 />
47 <Toggle
48 label={__("Wrapper Link", "post-carousel")}
49 attributes={columnWrapperLink}
50 attributesKey={"columnWrapperLink"}
51 setAttributes={setAttributes}
52 />
53 {columnWrapperLink && (
54 <>
55 <InputControl
56 label={__("Wrapper Link URL", "post-carousel")}
57 attributes={columnWrapperLinkUrl}
58 attributesKey={"columnWrapperLinkUrl"}
59 setAttributes={setAttributes}
60 inputType="url"
61 flex={false}
62 placeholder={"https://exaple.com"}
63 />
64 <Toggle
65 label={__("Open in new tab", "post-carousel")}
66 attributes={columnWrapperLinkNewTab}
67 attributesKey={"columnWrapperLinkNewTab"}
68 setAttributes={setAttributes}
69 />
70 </>
71 )}
72 </>
73 );
74 };
75
76 export const ColumnAdvanceAdvancedTab = ({ attributes, setAttributes }) => {
77 const { columnAdditionalID, columnAdditionalClass, customCss } = attributes;
78
79 const setCustomCss = (value) => {
80 setAttributes({ customCss: value });
81 };
82
83 return (
84 <>
85 <InputControl
86 label={__("Additional ID", "post-carousel")}
87 attributes={columnAdditionalID}
88 attributesKey={"columnAdditionalID"}
89 setAttributes={setAttributes}
90 inputType="text"
91 flex={false}
92 />
93 <InputControl
94 label={__("Additional Class(es)", "post-carousel")}
95 attributes={columnAdditionalClass}
96 attributesKey={"columnAdditionalClass"}
97 setAttributes={setAttributes}
98 inputType="text"
99 flex={false}
100 />
101 </>
102 );
103 };
104