PluginProbe
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot / 4.9.5
BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot v4.9.5
4.9.5 4.9.4 4.9.3 4.9.2 4.9.1 4.9.0 4.8.2 4.8.1 4.8.0 4.7.0 4.6.2 4.6.1 4.6.0 4.5.6 4.5.5 4.5.4 4.5.3 4.5.2 4.5.1 4.5.0 4.4.1 4.4.0 3.3.4 3.4.0 3.4.1 All 203 releases
betterdocs / react-src / gutenberg / blocks / categorybox / src / cssProperties.js

cssProperties.js in BetterDocs – AI Documentation, Knowledge Base, MCP Server, Docs, Wikis, FAQ & Chatbot 4.9.5, at react-src/gutenberg/blocks/categorybox/src/cssProperties.js

286 lines 12.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import * as BOX from "./constants";
2 import * as BOXTypo from "./typographyPrefixConstants";
3 import { addProperty } from "../../../helpers/helper";
4
5
6 export default ({ blockId, layout }) => {
7 const containerWrapper = `.${blockId}.betterdocs-category-box-wrapper`;
8 const innerWrapperSelector = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper`;
9 const singleBoxSelector = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper .betterdocs-single-category-wrapper`;
10 const iconSelector1 = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper .betterdocs-single-category-wrapper .betterdocs-category-icon`;
11 const iconSelector2 = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper .betterdocs-single-category-wrapper .betterdocs-category-icon .betterdocs-category-icon-img`
12 const titleSelector = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper .betterdocs-single-category-wrapper .betterdocs-category-title`;
13 const titleHoverSelector = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper .betterdocs-single-category-wrapper:hover .betterdocs-category-title`;
14 const countSelector1 = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper .betterdocs-single-category-wrapper .betterdocs-category-items-counts`;
15 const countSelector2 = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper .betterdocs-single-category-wrapper .betterdocs-category-items-counts span`;
16 const countSelector3 = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper .betterdocs-single-category-wrapper:hover .betterdocs-category-items-counts span`;
17
18 const innerWrapperSelectorLayout4 = `.${blockId}.betterdocs-category-box-wrapper .betterdocs-category-box-inner-wrapper`;
19 const singleBoxSelectorLayout4 = `.${blockId} .betterdocs-categories-folder.layout-4 .category-box`;
20 const iconSelectorLayout4 = `.${blockId} .betterdocs-categories-folder.layout-4 .category-box .betterdocs-single-category-inner .betterdocs-category-header-inner .betterdocs-folder-icon`;
21 const iconSelectorLayout4Image = `.${blockId} .betterdocs-categories-folder.layout-4 .category-box .betterdocs-single-category-inner .betterdocs-category-header-inner .betterdocs-folder-icon img`;
22 const titleSelectorLayout4 = `.${blockId} .betterdocs-categories-folder.layout-4 .category-box .betterdocs-single-category-inner .betterdocs-category-header-inner .betterdocs-category-title-counts .betterdocs-category-title`;
23 const titleSelectorLayout4Hover = `.${blockId} .betterdocs-categories-folder.layout-4 .category-box .betterdocs-single-category-inner .betterdocs-category-header-inner .betterdocs-category-title-counts .betterdocs-category-title:hover`;
24 const countSelectorLayout4 = `.${blockId} .betterdocs-categories-folder.layout-4 .category-box .betterdocs-single-category-inner .betterdocs-category-header-inner .betterdocs-category-title-counts .betterdocs-sub-category-items-counts`;
25 const countSelectorHoverLayout4 = `.${blockId} .betterdocs-categories-folder.layout-4 .category-box .betterdocs-single-category-inner .betterdocs-category-header-inner .betterdocs-category-title-counts:hover .betterdocs-sub-category-items-counts`;
26 const lastUpdatedTimeWrapper = `.${blockId} .betterdocs-categories-folder.layout-4 .category-box .betterdocs-single-category-inner .betterdocs-category-header-inner .betterdocs-category-title-counts .betterdocs-last-update`;
27
28 const styleArray = layout != 'layout-4' ? [
29 addProperty('dimension', BOX.CONTAINER_SECTION_MARGIN, {
30 args: { styleFor: "margin" },
31 cssSelector: containerWrapper
32 }),
33 addProperty('dimension', BOX.CONTAINER_SECTION_PADDING, {
34 args: { styleFor: "padding" },
35 cssSelector: containerWrapper
36 }),
37 addProperty('background', BOX.CONTAINER_SECTION_BACKGROUND, {
38 args: { noOverlay: true },
39 cssSelector: containerWrapper
40 }),
41 addProperty('dimension', BOX.WRAPPER_MARGIN, {
42 args: { styleFor: "margin" },
43 cssSelector: `.${blockId}.betterdocs-category-box-wrapper`
44 }),
45 addProperty('dimension', BOX.WRAPPER_PADDING, {
46 args: { styleFor: "padding" },
47 cssSelector: `.${blockId}.betterdocs-category-box-wrapper`
48 }),
49 addProperty('responsive', BOX.COLUMNS, {
50 defaultData: {
51 desktop: 3,
52 tab: 2,
53 mobile: 1,
54 },
55 args: { property: '' },
56 class: true,
57 attr: true,
58 attrPrefix: 'column',
59 classPrefix: 'betterdocs-column-',
60 filter: 'number',
61 cssSelector: innerWrapperSelector
62 }),
63
64 addProperty('dimension', BOX.BOX_PADDING, {
65 args: { styleFor: "padding" },
66 cssSelector: singleBoxSelector
67 }),
68
69 addProperty('dimension', BOX.BOX_MARGIN, {
70 args: { styleFor: "margin" },
71 cssSelector: singleBoxSelector
72 }),
73
74 addProperty('background', BOX.BOX_BACKGROUND, {
75 args: { noOverlay: true },
76 cssSelector: singleBoxSelector
77 }),
78
79 addProperty('border', BOX.BOX_BORDER, {
80 cssSelector: singleBoxSelector
81 }),
82
83 addProperty('responsive', 'iconAreaHeight', {
84 args: { property: "height", controlName: BOX.ICON_AREA },
85 cssSelector: iconSelector1
86 }),
87 addProperty('responsive', 'iconAreaWidth', {
88 args: { property: "width", controlName: BOX.ICON_AREA },
89 cssSelector: iconSelector1
90 }),
91 addProperty('responsive', 'iconAreaFlexBasis', {
92 args: { property: "width", controlName: BOX.ICON_AREA },
93 cssSelector: iconSelector1 //FIXME: selector needs to be changed. based on layout
94 }),
95
96 //should have custom unit like % for this controller
97 addProperty('responsive', BOX.ICON_SIZE, {
98 args: { property: "width" },
99 cssSelector: iconSelector2
100 }),
101
102 addProperty('background', BOX.ICON_BACKGROUND, {
103 args: { noOverlay: true, noMainBgi: true },
104 cssSelector: iconSelector1
105 }),
106
107 addProperty('border', BOX.ICON_BORDER, {
108 args: { noShadow: true },
109 cssSelector: iconSelector1
110 }),
111
112 addProperty('dimension', BOX.ICON_PADDING, {
113 args: { styleFor: "padding" },
114 cssSelector: iconSelector1
115 }),
116
117 addProperty('dimension', BOX.ICON_MARGIN, {
118 args: { styleFor: "margin" },
119 cssSelector: iconSelector1
120 }),
121
122 addProperty('typography', BOXTypo.typoPrefix_title, {
123 args: {
124 defaultFontSize: 20,
125 prefixConstant: BOXTypo.typoPrefix_title,
126 },
127 cssSelector: titleSelector
128 }),
129
130 addProperty('color', 'titleColor', {
131 args: { hover: 'titleHoverColor' },
132 cssSelector: titleSelector,
133 hoverSelector: titleHoverSelector,
134 }),
135
136 addProperty('dimension', BOX.TITLE_MARGIN, {
137 args: { styleFor: "margin" },
138 cssSelector: titleSelector
139 }),
140
141 addProperty('typography', BOXTypo.typoPrefix_count, {
142 args: {
143 defaultFontSize: 20,
144 prefixConstant: BOXTypo.typoPrefix_count,
145 },
146 cssSelector: countSelector2
147 }),
148
149 addProperty('color', 'countColor', {
150 args: { hover: 'countHoverColor' },
151 cssSelector: countSelector2,
152 hoverSelector:countSelector3
153 }),
154
155 addProperty('dimension', BOX.COUNT_MARGIN, {
156 args: { styleFor: "margin" },
157 cssSelector: countSelector1
158 }),
159 ] : [
160 addProperty('dimension', BOX.WRAPPER_MARGIN, {
161 args: { styleFor: "margin" },
162 cssSelector: `.${blockId}.betterdocs-category-box-wrapper`
163 }),
164 addProperty('dimension', BOX.WRAPPER_PADDING, {
165 args: { styleFor: "padding" },
166 cssSelector: `.${blockId}.betterdocs-category-box-wrapper`
167 }),
168 addProperty('dimension', BOX.BOX_PADDING_LAYOUT_4, {
169 args: { styleFor: "padding" },
170 cssSelector: singleBoxSelectorLayout4
171 }),
172 addProperty('dimension', BOX.BOX_PADDING, {
173 args: { styleFor: "padding" },
174 cssSelector: singleBoxSelectorLayout4
175 }),
176 addProperty('background', BOX.BOX_BACKGROUND_LAYOUT_4, {
177 args: { noOverlay: true },
178 cssSelector: singleBoxSelectorLayout4
179 }),
180 addProperty('border', BOX.BOX_BORDER_LAYOUT_4, {
181 cssSelector: singleBoxSelectorLayout4
182 }),
183 addProperty('responsive', 'iconAreaHeightLayout4', {
184 args: { property: "height", controlName: BOX.ICON_AREA_LAYOUT_4 },
185 cssSelector: iconSelectorLayout4
186 }),
187 addProperty('responsive', 'iconAreaWidthLayout4', {
188 args: { property: "width", controlName: BOX.ICON_AREA_LAYOUT_4 },
189 cssSelector: iconSelectorLayout4
190 }),
191 addProperty('responsive', 'iconImageHeightLayout4', {
192 args: { property: "height", controlName: BOX.ICON_IMAGE_HEIGHT_LAYOUT_4 },
193 cssSelector: iconSelectorLayout4Image
194 }),
195 addProperty('responsive', 'iconImageWidtjLayout4', {
196 args: { property: "width", controlName: BOX.ICON_IMAGE_WIDTH_LAYOUT_4 },
197 cssSelector: iconSelectorLayout4Image
198 }),
199 addProperty('responsive', BOX.ICON_SIZE_LAYOUT_4, {
200 args: { property: "width" },
201 cssSelector: iconSelectorLayout4
202 }),
203 addProperty('background', BOX.ICON_BACKGROUND_LAYOUT_4, {
204 args: { noOverlay: true, noMainBgi: true },
205 cssSelector: iconSelectorLayout4
206 }),
207 addProperty('border', BOX.ICON_BORDER_LAYOUT_4, {
208 args: { noShadow: true },
209 cssSelector: iconSelectorLayout4
210 }),
211 addProperty('dimension', BOX.ICON_PADDING_LAYOUT_4, {
212 args: { styleFor: "padding" },
213 cssSelector: iconSelectorLayout4
214 }),
215 addProperty('dimension', BOX.ICON_MARGIN_LAYOUT_4, {
216 args: { styleFor: "margin" },
217 cssSelector: iconSelectorLayout4
218 }),
219
220 addProperty('typography', BOXTypo.typoPrefix_title_layout_4, {
221 args: {
222 defaultFontSize: 24,
223 prefixConstant: BOXTypo.typoPrefix_title_layout_4,
224 },
225 cssSelector: titleSelectorLayout4
226 }),
227
228 addProperty('color', 'titleColorLayout4', {
229 args: { hover: 'titleHoverColorLayout4' },
230 cssSelector: titleSelectorLayout4,
231 }),
232
233 addProperty('dimension', BOX.TITLE_MARGIN_LAYOUT_4, {
234 args: { styleFor: "margin" },
235 cssSelector: titleSelectorLayout4
236 }),
237
238 addProperty('typography', BOXTypo.typoPrefix_count_layout_4, {
239 args: {
240 defaultFontSize: 16,
241 prefixConstant: BOXTypo.typoPrefix_count_layout_4,
242 },
243 cssSelector: countSelectorLayout4
244 }),
245 addProperty('color', 'countColorLayout4', {
246 args: { hover: 'countHoverColorLayout4' },
247 cssSelector: countSelectorLayout4,
248 }),
249 addProperty('dimension', BOX.COUNT_MARGIN_LAYOUT_4, {
250 args: { styleFor: "margin" },
251 cssSelector: countSelectorLayout4
252 }),
253
254 addProperty('typography', BOXTypo.typoPrefix_last_updated_time, {
255 args: {
256 defaultFontSize: 12,
257 prefixConstant: BOXTypo.typoPrefix_last_updated_time,
258 },
259 cssSelector: lastUpdatedTimeWrapper
260 }),
261
262 addProperty('color', 'lastUpdatedTimeColor', {
263 args: { hover: 'lastUpdatedTimeHoverColor' },
264 cssSelector: lastUpdatedTimeWrapper,
265 hoverSelector: lastUpdatedTimeWrapper + ':hover',
266 }),
267
268 addProperty('background', BOX.LAST_UPDATED_BACKGROUND_COLOR_LAYOUT_4, {
269 args: { noOverlay: true },
270 cssSelector: lastUpdatedTimeWrapper
271 }),
272
273 addProperty('dimension', BOX.LAST_UPDATED_MARGIN, {
274 args: { styleFor: "margin" },
275 cssSelector: lastUpdatedTimeWrapper
276 }),
277
278 addProperty('dimension', BOX.LAST_UPDATED_PADDING, {
279 args: { styleFor: "padding" },
280 cssSelector: lastUpdatedTimeWrapper
281 }),
282 ];
283
284 return styleArray
285 }
286