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 / attributes.js

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

253 lines 6.9 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 {
3 generateTypographyAttributes,
4 generateResponsiveRangeAttributes,
5 generateDimensionsAttributes,
6 generateBackgroundAttributes,
7 generateBorderShadowAttributes,
8 } from '../../../util/helpers'
9
10 import {
11 BOX_BACKGROUND,
12 BOX_BORDER,
13 BOX_MARGIN,
14 BOX_PADDING,
15 TITLE_MARGIN,
16 COUNT_MARGIN,
17 COLUMNS,
18 ICON_AREA,
19 ICON_SIZE,
20 ICON_BACKGROUND,
21 ICON_BORDER,
22 ICON_MARGIN,
23 ICON_PADDING,
24 WRAPPER_MARGIN,
25 CONTAINER_SECTION_MARGIN,
26 CONTAINER_SECTION_PADDING,
27 CONTAINER_SECTION_BACKGROUND,
28 COLUMNS_LAYOUT_4,
29 ICON_AREA_LAYOUT_4,
30 ICON_SIZE_LAYOUT_4,
31 BOX_MARGIN_LAYOUT_4,
32 BOX_PADDING_LAYOUT_4,
33 TITLE_MARGIN_LAYOUT_4,
34 COUNT_MARGIN_LAYOUT_4,
35 ICON_MARGIN_LAYOUT_4,
36 ICON_PADDING_LAYOUT_4,
37 WRAPPER_MARGIN_LAYOUT_4,
38 BOX_BACKGROUND_LAYOUT_4,
39 ICON_BACKGROUND_LAYOUT_4,
40 BOX_BORDER_LAYOUT_4,
41 ICON_BORDER_LAYOUT_4,
42 CONTAINER_SECTION_MARGIN_LAYOUT_4,
43 CONTAINER_SECTION_PADDING_LAYOUT_4,
44 CONTAINER_SECTION_BACKGROUND_LAYOUT_4,
45 LAST_UPDATED_BACKGROUND_COLOR_LAYOUT_4,
46 LAST_UPDATED_PADDING,
47 LAST_UPDATED_MARGIN,
48 WRAPPER_PADDING,
49 ICON_IMAGE_WIDTH_LAYOUT_4,
50 ICON_IMAGE_HEIGHT_LAYOUT_4
51 } from './constants'
52 import * as typoPrefixs from './typographyPrefixConstants'
53
54 const attributes = {
55 // the following 4 attributes is must required for responsive options and asset generation for frontend
56 // responsive control attributes ⬇
57 resOption: {
58 type: 'string',
59 default: 'Desktop',
60 },
61 // blockId attribute for making unique className and other uniqueness ⬇
62 blockId: {
63 type: 'string',
64 },
65 blockRoot: {
66 type: 'string',
67 default: 'better_docs',
68 },
69 // blockMeta is for keeping all the styles ⬇
70 blockMeta: {
71 type: 'object',
72 },
73 selectKB: {
74 type: 'string',
75 default: null,
76 },
77 includeCategories: {
78 type: 'string',
79 default: null,
80 },
81 excludeCategories: {
82 type: 'string',
83 },
84 boxPerPage: {
85 type: 'number',
86 default: 9,
87 },
88 orderBy: {
89 type: 'string',
90 default: 'doc_category_order',
91 },
92 order: {
93 type: 'string',
94 default: 'asc',
95 },
96 layout: {
97 type: 'string',
98 default: 'default',
99 },
100 showIcon: {
101 type: 'boolean',
102 default: true,
103 },
104 showLastUpdatedTime: {
105 type: 'boolean',
106 default: true,
107 },
108 showTitle: {
109 type: 'boolean',
110 default: true,
111 },
112 titleTag: {
113 type: 'string',
114 default: 'h2',
115 },
116 showCount: {
117 type: 'boolean',
118 default: true,
119 },
120 prefix: {
121 type: 'string',
122 },
123 suffix: {
124 type: 'string',
125 default: __('Docs', 'betterdocs'),
126 },
127 suffixSingular: {
128 type: 'string',
129 default: __('Doc', 'betterdocs'),
130 },
131 titleColor: {
132 type: 'string',
133 default: '#333333',
134 },
135 titleColorLayout4:{
136 type: 'string',
137 default: '#1D2939',
138 },
139 titleHoverColor: {
140 type: 'string',
141 },
142 titleHoverColorLayout4:{
143 type:'string',
144 },
145 countColor: {
146 type: 'string',
147 default: '#707070',
148 },
149 countColorLayout4:{
150 type: 'string',
151 default: '#475467',
152 },
153 countHoverColor: {
154 type: 'string',
155 },
156 countHoverColorLayout4: {
157 type: 'string',
158 },
159 lastUpdatedTimeColor:{
160 type:'string',
161 default:'#475467'
162 },
163 lastUpdatedTimeHoverColor:{
164 type:'string',
165 },
166 layout4Col:{
167 type:"number",
168 default:4
169 },
170 // typography attributes
171 ...generateTypographyAttributes(Object.values(typoPrefixs)),
172 // responsive range
173 ...generateResponsiveRangeAttributes(COLUMNS, {
174 defaultRange: 3,
175 noUnits: true,
176 }),
177 ...generateResponsiveRangeAttributes(ICON_AREA, {
178 defaultRange: 80,
179 }),
180 ...generateResponsiveRangeAttributes(ICON_SIZE),
181 // dimension
182 ...generateDimensionsAttributes(BOX_MARGIN),
183 ...generateDimensionsAttributes(BOX_PADDING),
184 ...generateDimensionsAttributes(TITLE_MARGIN),
185 ...generateDimensionsAttributes(COUNT_MARGIN),
186 ...generateDimensionsAttributes(ICON_MARGIN),
187 ...generateDimensionsAttributes(ICON_PADDING),
188 ...generateDimensionsAttributes(WRAPPER_MARGIN),
189 ...generateDimensionsAttributes(WRAPPER_PADDING),
190 // background
191 ...generateBackgroundAttributes(BOX_BACKGROUND, {
192 defaultFillColor: '#f8f8fc',
193 noOverlay: true,
194 }),
195 ...generateBackgroundAttributes(ICON_BACKGROUND, {
196 noOverlay: true,
197 noMainBgi: true,
198 }),
199 // border shadow attriubtes
200 ...generateBorderShadowAttributes(BOX_BORDER),
201 ...generateBorderShadowAttributes(ICON_BORDER, { noShadow: true }),
202 ...generateDimensionsAttributes(CONTAINER_SECTION_MARGIN),
203 ...generateDimensionsAttributes(CONTAINER_SECTION_PADDING),
204 ...generateBackgroundAttributes(CONTAINER_SECTION_BACKGROUND, {
205 defaultFillColor: 'rgba(255, 255, 255, 0)',
206 noOverlay: true,
207 }),
208 ...generateResponsiveRangeAttributes(ICON_AREA_LAYOUT_4, {
209 defaultRange: 32,
210 }),
211 ...generateResponsiveRangeAttributes(ICON_SIZE_LAYOUT_4),
212 ...generateResponsiveRangeAttributes(ICON_IMAGE_WIDTH_LAYOUT_4, {
213 defaultRange: 32,
214 }),
215 ...generateResponsiveRangeAttributes(ICON_IMAGE_HEIGHT_LAYOUT_4, {
216 defaultRange: 32,
217 }),
218 // dimension
219 ...generateDimensionsAttributes(BOX_MARGIN_LAYOUT_4),
220 ...generateDimensionsAttributes(LAST_UPDATED_PADDING),
221 ...generateDimensionsAttributes(LAST_UPDATED_MARGIN),
222 ...generateDimensionsAttributes(BOX_PADDING_LAYOUT_4),
223 ...generateDimensionsAttributes(TITLE_MARGIN_LAYOUT_4),
224 ...generateDimensionsAttributes(COUNT_MARGIN_LAYOUT_4),
225 ...generateDimensionsAttributes(ICON_MARGIN_LAYOUT_4),
226 ...generateDimensionsAttributes(ICON_PADDING_LAYOUT_4),
227 // background
228 ...generateBackgroundAttributes(BOX_BACKGROUND_LAYOUT_4, {
229 defaultFillColor: '#fff',
230 noOverlay: true,
231 }),
232 // background
233 ...generateBackgroundAttributes(LAST_UPDATED_BACKGROUND_COLOR_LAYOUT_4, {
234 defaultFillColor: '#FFFCF5',
235 noOverlay: true,
236 }),
237 ...generateBackgroundAttributes(ICON_BACKGROUND_LAYOUT_4, {
238 noOverlay: true,
239 noMainBgi: true,
240 }),
241 // border shadow attriubtes
242 ...generateBorderShadowAttributes(BOX_BORDER_LAYOUT_4),
243 ...generateBorderShadowAttributes(ICON_BORDER_LAYOUT_4, { noShadow: true }),
244 ...generateDimensionsAttributes(CONTAINER_SECTION_MARGIN_LAYOUT_4),
245 ...generateDimensionsAttributes(CONTAINER_SECTION_PADDING_LAYOUT_4),
246 ...generateBackgroundAttributes(CONTAINER_SECTION_BACKGROUND_LAYOUT_4, {
247 defaultFillColor: 'rgba(255, 255, 255, 0)',
248 noOverlay: true,
249 }),
250 }
251
252 export default attributes
253