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 / util / helpers / dimensionHelpers.js

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

902 lines 25.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import { hasVal } from "./hasVal";
2
3 // function to generate New Dimensions-Control's attributes for multiple Dimensions control based on the array of values(prefixs)
4 export const generateDimensionsAttributes = (controlName, defaults = {}) => {
5 const {
6 top,
7 right,
8 bottom,
9 left,
10 isLinked = true,
11 disableLeftRight = false,
12 } = defaults;
13
14 const desktopTop = hasVal(top)
15 ? {
16 [`${controlName}Top`]: {
17 type: "string",
18 default: `${top}`,
19 },
20 }
21 : {
22 [`${controlName}Top`]: {
23 type: "string",
24 },
25 };
26
27 const desktopRight = hasVal(right)
28 ? {
29 [`${controlName}Right`]: {
30 type: "string",
31 default: `${right}`,
32 },
33 }
34 : {
35 [`${controlName}Right`]: {
36 type: "string",
37 },
38 };
39
40 const desktopBottom = hasVal(bottom)
41 ? {
42 [`${controlName}Bottom`]: {
43 type: "string",
44 default: `${bottom}`,
45 },
46 }
47 : {
48 [`${controlName}Bottom`]: {
49 type: "string",
50 },
51 };
52
53 const desktopLeft = hasVal(left)
54 ? {
55 [`${controlName}Left`]: {
56 type: "string",
57 default: `${left}`,
58 },
59 }
60 : {
61 [`${controlName}Left`]: {
62 type: "string",
63 },
64 };
65
66 const objsAfterCaringForDisableLeftRightProp = disableLeftRight
67 ? {
68 ...desktopTop,
69 ...desktopBottom,
70
71 [`TAB${controlName}Top`]: {
72 type: "string",
73 },
74 [`TAB${controlName}Bottom`]: {
75 type: "string",
76 },
77
78 [`MOB${controlName}Top`]: {
79 type: "string",
80 },
81 [`MOB${controlName}Bottom`]: {
82 type: "string",
83 },
84 }
85 : {
86 ...desktopTop,
87 ...desktopRight,
88 ...desktopBottom,
89 ...desktopLeft,
90
91 [`TAB${controlName}Top`]: {
92 type: "string",
93 },
94 [`TAB${controlName}Right`]: {
95 type: "string",
96 },
97 [`TAB${controlName}Bottom`]: {
98 type: "string",
99 },
100 [`TAB${controlName}Left`]: {
101 type: "string",
102 },
103
104 [`MOB${controlName}Top`]: {
105 type: "string",
106 },
107 [`MOB${controlName}Right`]: {
108 type: "string",
109 },
110 [`MOB${controlName}Bottom`]: {
111 type: "string",
112 },
113 [`MOB${controlName}Left`]: {
114 type: "string",
115 },
116 };
117
118 return {
119 [`${controlName}isLinked`]: {
120 type: "boolean",
121 default: isLinked,
122 },
123 [`${controlName}Unit`]: {
124 type: "string",
125 default: "px",
126 },
127 [`TAB${controlName}Unit`]: {
128 type: "string",
129 default: "px",
130 },
131 [`MOB${controlName}Unit`]: {
132 type: "string",
133 default: "px",
134 },
135 ...objsAfterCaringForDisableLeftRightProp,
136 };
137 };
138
139 //
140 // function to generate dimensions-controls styles for an element based on it's controlName(prefix)
141 export const generateDimensionsControlStyles = ({
142 controlName,
143 styleFor,
144 attributes,
145 disableLeftRight = false,
146 }) => {
147 const {
148 [`${controlName}isLinked`]: isLinked,
149
150 [`${controlName}Unit`]: dimensionUnit,
151 [`${controlName}Top`]: dimensionTop,
152 [`${controlName}Right`]: dimensionRight,
153 [`${controlName}Bottom`]: dimensionBottom,
154 [`${controlName}Left`]: dimensionLeft,
155
156 [`TAB${controlName}Unit`]: TABdimensionUnit,
157 [`TAB${controlName}Top`]: TABdimensionTop,
158 [`TAB${controlName}Right`]: TABdimensionRight,
159 [`TAB${controlName}Bottom`]: TABdimensionBottom,
160 [`TAB${controlName}Left`]: TABdimensionLeft,
161
162 [`MOB${controlName}Unit`]: MOBdimensionUnit,
163 [`MOB${controlName}Top`]: MOBdimensionTop,
164 [`MOB${controlName}Right`]: MOBdimensionRight,
165 [`MOB${controlName}Bottom`]: MOBdimensionBottom,
166 [`MOB${controlName}Left`]: MOBdimensionLeft,
167 } = attributes;
168
169 let dimensionStylesDesktop = " ";
170 let dimensionStylesTab = " ";
171 let dimensionStylesMobile = " ";
172
173 if (isLinked === true && disableLeftRight === false) {
174 if (styleFor === "border") {
175 dimensionStylesDesktop = `
176 ${
177 dimensionTop
178 ? `border-width: ${parseFloat(dimensionTop)}${dimensionUnit}; `
179 : " "
180 }
181
182 `;
183
184 dimensionStylesTab = `
185 ${
186 TABdimensionTop
187 ? `border-width: ${parseFloat(
188 TABdimensionTop
189 )}${TABdimensionUnit};`
190 : " "
191 }
192
193 `;
194
195 dimensionStylesMobile = `
196 ${
197 MOBdimensionTop
198 ? `border-width: ${parseFloat(
199 MOBdimensionTop
200 )}${MOBdimensionUnit};`
201 : " "
202 }
203
204 `;
205 } else if (styleFor === "border-radius") {
206 dimensionStylesDesktop = `
207 ${
208 dimensionTop
209 ? `border-radius: ${parseFloat(
210 dimensionTop
211 )}${dimensionUnit};`
212 : " "
213 }
214
215 `;
216
217 dimensionStylesTab = `
218 ${
219 TABdimensionTop
220 ? `border-radius: ${parseFloat(
221 TABdimensionTop
222 )}${TABdimensionUnit};`
223 : " "
224 }
225
226 `;
227
228 dimensionStylesMobile = `
229 ${
230 MOBdimensionTop
231 ? `border-radius: ${parseFloat(
232 MOBdimensionTop
233 )}${MOBdimensionUnit};`
234 : " "
235 }
236
237 `;
238 } else {
239 dimensionStylesDesktop = `
240 ${
241 dimensionTop
242 ? `${styleFor}: ${parseFloat(dimensionTop)}${dimensionUnit};`
243 : " "
244 }
245
246 `;
247
248 dimensionStylesTab = `
249 ${
250 TABdimensionTop
251 ? `${styleFor}: ${parseFloat(
252 TABdimensionTop
253 )}${TABdimensionUnit};`
254 : " "
255 }
256
257 `;
258
259 dimensionStylesMobile = `
260 ${
261 MOBdimensionTop
262 ? `${styleFor}: ${parseFloat(
263 MOBdimensionTop
264 )}${MOBdimensionUnit};`
265 : " "
266 }
267
268 `;
269 }
270 } else if (isLinked === false && disableLeftRight === false) {
271 if (styleFor === "border") {
272 dimensionStylesDesktop = `
273 ${
274 dimensionTop
275 ? `border-top-width: ${parseFloat(
276 dimensionTop
277 )}${dimensionUnit};`
278 : " "
279 }
280 ${
281 dimensionRight
282 ? `border-right-width: ${parseFloat(
283 dimensionRight
284 )}${dimensionUnit};`
285 : " "
286 }
287 ${
288 dimensionLeft
289 ? `border-left-width: ${parseFloat(
290 dimensionLeft
291 )}${dimensionUnit};`
292 : " "
293 }
294 ${
295 dimensionBottom
296 ? `border-bottom-width: ${parseFloat(
297 dimensionBottom
298 )}${dimensionUnit};`
299 : " "
300 }
301
302 `;
303
304 dimensionStylesTab = `
305 ${
306 TABdimensionTop
307 ? `border-top-width: ${parseFloat(
308 TABdimensionTop
309 )}${TABdimensionUnit};`
310 : " "
311 }
312 ${
313 TABdimensionRight
314 ? `border-right-width: ${parseFloat(
315 TABdimensionRight
316 )}${TABdimensionUnit};`
317 : " "
318 }
319 ${
320 TABdimensionLeft
321 ? `border-left-width: ${parseFloat(
322 TABdimensionLeft
323 )}${TABdimensionUnit};`
324 : " "
325 }
326 ${
327 TABdimensionBottom
328 ? `border-bottom-width: ${parseFloat(
329 TABdimensionBottom
330 )}${TABdimensionUnit};`
331 : " "
332 }
333
334 `;
335
336 dimensionStylesMobile = `
337 ${
338 MOBdimensionTop
339 ? `border-top-width: ${parseFloat(
340 MOBdimensionTop
341 )}${MOBdimensionUnit};`
342 : " "
343 }
344 ${
345 MOBdimensionRight
346 ? `border-right-width: ${parseFloat(
347 MOBdimensionRight
348 )}${MOBdimensionUnit};`
349 : " "
350 }
351 ${
352 MOBdimensionLeft
353 ? `border-left-width: ${parseFloat(
354 MOBdimensionLeft
355 )}${MOBdimensionUnit};`
356 : " "
357 }
358 ${
359 MOBdimensionBottom
360 ? `border-bottom-width: ${parseFloat(
361 MOBdimensionBottom
362 )}${MOBdimensionUnit};`
363 : " "
364 }
365
366 `;
367 } else if (styleFor === "border-radius") {
368 dimensionStylesDesktop = `
369 ${
370 dimensionTop
371 ? `border-top-left-radius: ${parseFloat(
372 dimensionTop
373 )}${dimensionUnit};`
374 : " "
375 }
376 ${
377 dimensionRight
378 ? `border-top-right-radius: ${parseFloat(
379 dimensionRight
380 )}${dimensionUnit};`
381 : " "
382 }
383 ${
384 dimensionLeft
385 ? `border-bottom-left-radius: ${parseFloat(
386 dimensionLeft
387 )}${dimensionUnit};`
388 : " "
389 }
390 ${
391 dimensionBottom
392 ? `border-bottom-right-radius: ${parseFloat(
393 dimensionBottom
394 )}${dimensionUnit};`
395 : " "
396 }
397
398 `;
399
400 dimensionStylesTab = `
401 ${
402 TABdimensionTop
403 ? `border-top-left-radius: ${parseFloat(
404 TABdimensionTop
405 )}${TABdimensionUnit};`
406 : " "
407 }
408 ${
409 TABdimensionRight
410 ? `border-top-right-radius: ${parseFloat(
411 TABdimensionRight
412 )}${TABdimensionUnit};`
413 : " "
414 }
415 ${
416 TABdimensionLeft
417 ? `border-bottom-left-radius: ${parseFloat(
418 TABdimensionLeft
419 )}${TABdimensionUnit};`
420 : " "
421 }
422 ${
423 TABdimensionBottom
424 ? `border-bottom-right-radius: ${parseFloat(
425 TABdimensionBottom
426 )}${TABdimensionUnit};`
427 : " "
428 }
429
430 `;
431
432 dimensionStylesMobile = `
433 ${
434 MOBdimensionTop
435 ? `border-top-left-radius: ${parseFloat(
436 MOBdimensionTop
437 )}${MOBdimensionUnit};`
438 : " "
439 }
440 ${
441 MOBdimensionRight
442 ? `border-top-right-radius: ${parseFloat(
443 MOBdimensionRight
444 )}${MOBdimensionUnit};`
445 : " "
446 }
447 ${
448 MOBdimensionLeft
449 ? `border-bottom-left-radius: ${parseFloat(
450 MOBdimensionLeft
451 )}${MOBdimensionUnit};`
452 : " "
453 }
454 ${
455 MOBdimensionBottom
456 ? `border-bottom-right-radius: ${parseFloat(
457 MOBdimensionBottom
458 )}${MOBdimensionUnit};`
459 : " "
460 }
461
462 `;
463 } else {
464 dimensionStylesDesktop = `
465 ${
466 dimensionTop
467 ? `${styleFor}-top: ${parseFloat(
468 dimensionTop
469 )}${dimensionUnit};`
470 : " "
471 }
472 ${
473 dimensionRight
474 ? `${styleFor}-right: ${parseFloat(
475 dimensionRight
476 )}${dimensionUnit};`
477 : " "
478 }
479 ${
480 dimensionLeft
481 ? `${styleFor}-left: ${parseFloat(
482 dimensionLeft
483 )}${dimensionUnit};`
484 : " "
485 }
486 ${
487 dimensionBottom
488 ? `${styleFor}-bottom: ${parseFloat(
489 dimensionBottom
490 )}${dimensionUnit};`
491 : " "
492 }
493
494 `;
495
496 dimensionStylesTab = `
497 ${
498 TABdimensionTop
499 ? `${styleFor}-top: ${parseFloat(
500 TABdimensionTop
501 )}${TABdimensionUnit};`
502 : " "
503 }
504 ${
505 TABdimensionRight
506 ? `${styleFor}-right: ${parseFloat(
507 TABdimensionRight
508 )}${TABdimensionUnit};`
509 : " "
510 }
511 ${
512 TABdimensionLeft
513 ? `${styleFor}-left: ${parseFloat(
514 TABdimensionLeft
515 )}${TABdimensionUnit};`
516 : " "
517 }
518 ${
519 TABdimensionBottom
520 ? `${styleFor}-bottom: ${parseFloat(
521 TABdimensionBottom
522 )}${TABdimensionUnit};`
523 : " "
524 }
525
526 `;
527
528 dimensionStylesMobile = `
529 ${
530 MOBdimensionTop
531 ? `${styleFor}-top: ${parseFloat(
532 MOBdimensionTop
533 )}${MOBdimensionUnit};`
534 : " "
535 }
536 ${
537 MOBdimensionRight
538 ? `${styleFor}-right: ${parseFloat(
539 MOBdimensionRight
540 )}${MOBdimensionUnit};`
541 : " "
542 }
543 ${
544 MOBdimensionLeft
545 ? `${styleFor}-left: ${parseFloat(
546 MOBdimensionLeft
547 )}${MOBdimensionUnit};`
548 : " "
549 }
550 ${
551 MOBdimensionBottom
552 ? `${styleFor}-bottom: ${parseFloat(
553 MOBdimensionBottom
554 )}${MOBdimensionUnit};`
555 : " "
556 }
557
558 `;
559 }
560 } else if (isLinked === true && disableLeftRight === true) {
561 if (styleFor === "border") {
562 dimensionStylesDesktop = `
563 ${
564 dimensionTop
565 ? `border-top-width: ${parseFloat(
566 dimensionTop
567 )}${dimensionUnit}; `
568 : " "
569 }
570 ${
571 dimensionBottom
572 ? `border-bottom-width: ${parseFloat(
573 dimensionBottom
574 )}${dimensionUnit}; `
575 : " "
576 }
577
578 `;
579
580 dimensionStylesTab = `
581 ${
582 TABdimensionTop
583 ? `border-top-width: ${parseFloat(
584 TABdimensionTop
585 )}${TABdimensionUnit};`
586 : " "
587 }
588 ${
589 TABdimensionBottom
590 ? `border-bottom-width: ${parseFloat(
591 TABdimensionBottom
592 )}${TABdimensionUnit};`
593 : " "
594 }
595
596 `;
597
598 dimensionStylesMobile = `
599 ${
600 MOBdimensionTop
601 ? `border-top-width: ${parseFloat(
602 MOBdimensionTop
603 )}${MOBdimensionUnit};`
604 : " "
605 }
606 ${
607 MOBdimensionBottom
608 ? `border-bottom-width: ${parseFloat(
609 MOBdimensionBottom
610 )}${MOBdimensionUnit};`
611 : " "
612 }
613
614 `;
615 } else if (styleFor === "border-radius") {
616 dimensionStylesDesktop = `
617 ${
618 dimensionTop
619 ? `border-top-left-radius: ${parseFloat(
620 dimensionTop
621 )}${dimensionUnit};`
622 : " "
623 }
624
625 ${
626 dimensionBottom
627 ? `border-bottom-right-radius: ${parseFloat(
628 dimensionBottom
629 )}${dimensionUnit};`
630 : " "
631 }
632
633 `;
634
635 dimensionStylesTab = `
636 ${
637 TABdimensionTop
638 ? `border-top-left-radius: ${parseFloat(
639 TABdimensionTop
640 )}${TABdimensionUnit};`
641 : " "
642 }
643
644 ${
645 TABdimensionBottom
646 ? `border-bottom-right-radius: ${parseFloat(
647 TABdimensionBottom
648 )}${TABdimensionUnit};`
649 : " "
650 }
651
652 `;
653
654 dimensionStylesMobile = `
655 ${
656 MOBdimensionTop
657 ? `border-top-left-radius: ${parseFloat(
658 MOBdimensionTop
659 )}${MOBdimensionUnit};`
660 : " "
661 }
662
663 ${
664 MOBdimensionBottom
665 ? `border-bottom-right-radius: ${parseFloat(
666 MOBdimensionBottom
667 )}${MOBdimensionUnit};`
668 : " "
669 }
670
671 `;
672 } else {
673 dimensionStylesDesktop = `
674 ${
675 dimensionTop
676 ? `${styleFor}-top: ${parseFloat(
677 dimensionTop
678 )}${dimensionUnit};`
679 : " "
680 }
681
682 ${
683 dimensionBottom
684 ? `${styleFor}-bottom: ${parseFloat(
685 dimensionBottom
686 )}${dimensionUnit};`
687 : " "
688 }
689
690 `;
691
692 dimensionStylesTab = `
693 ${
694 TABdimensionTop
695 ? `${styleFor}-top: ${parseFloat(
696 TABdimensionTop
697 )}${TABdimensionUnit};`
698 : " "
699 }
700
701 ${
702 TABdimensionBottom
703 ? `${styleFor}-bottom: ${parseFloat(
704 TABdimensionBottom
705 )}${TABdimensionUnit};`
706 : " "
707 }
708
709 `;
710
711 dimensionStylesMobile = `
712 ${
713 MOBdimensionTop
714 ? `${styleFor}-top: ${parseFloat(
715 MOBdimensionTop
716 )}${MOBdimensionUnit};`
717 : " "
718 }
719
720 ${
721 MOBdimensionBottom
722 ? `${styleFor}-bottom: ${parseFloat(
723 MOBdimensionBottom
724 )}${MOBdimensionUnit};`
725 : " "
726 }
727
728 `;
729 }
730 } else if (isLinked === false && disableLeftRight === true) {
731 if (styleFor === "border") {
732 dimensionStylesDesktop = `
733 ${
734 dimensionTop
735 ? `border-top-width: ${parseFloat(
736 dimensionTop
737 )}${dimensionUnit};`
738 : " "
739 }
740 ${
741 dimensionBottom
742 ? `border-bottom-width: ${parseFloat(
743 dimensionBottom
744 )}${dimensionUnit};`
745 : " "
746 }
747
748 `;
749
750 dimensionStylesTab = `
751 ${
752 TABdimensionTop
753 ? `border-top-width: ${parseFloat(
754 TABdimensionTop
755 )}${TABdimensionUnit};`
756 : " "
757 }
758 ${
759 TABdimensionBottom
760 ? `border-bottom-width: ${parseFloat(
761 TABdimensionBottom
762 )}${TABdimensionUnit};`
763 : " "
764 }
765
766 `;
767
768 dimensionStylesMobile = `
769 ${
770 MOBdimensionTop
771 ? `border-top-width: ${parseFloat(
772 MOBdimensionTop
773 )}${MOBdimensionUnit};`
774 : " "
775 }
776 ${
777 MOBdimensionBottom
778 ? `border-bottom-width: ${parseFloat(
779 MOBdimensionBottom
780 )}${MOBdimensionUnit};`
781 : " "
782 }
783
784 `;
785 } else if (styleFor === "border-radius") {
786 dimensionStylesDesktop = `
787 ${
788 dimensionTop
789 ? `border-top-left-radius: ${parseFloat(
790 dimensionTop
791 )}${dimensionUnit};`
792 : " "
793 }
794 ${
795 dimensionBottom
796 ? `border-bottom-right-radius: ${parseFloat(
797 dimensionBottom
798 )}${dimensionUnit};`
799 : " "
800 }
801
802 `;
803
804 dimensionStylesTab = `
805 ${
806 TABdimensionTop
807 ? `border-top-left-radius: ${parseFloat(
808 TABdimensionTop
809 )}${TABdimensionUnit};`
810 : " "
811 }
812 ${
813 TABdimensionBottom
814 ? `border-bottom-right-radius: ${parseFloat(
815 TABdimensionBottom
816 )}${TABdimensionUnit};`
817 : " "
818 }
819
820 `;
821
822 dimensionStylesMobile = `
823 ${
824 MOBdimensionTop
825 ? `border-top-left-radius: ${parseFloat(
826 MOBdimensionTop
827 )}${MOBdimensionUnit};`
828 : " "
829 }
830 ${
831 MOBdimensionBottom
832 ? `border-bottom-right-radius: ${parseFloat(
833 MOBdimensionBottom
834 )}${MOBdimensionUnit};`
835 : " "
836 }
837
838 `;
839 } else {
840 dimensionStylesDesktop = `
841 ${
842 dimensionTop
843 ? `${styleFor}-top: ${parseFloat(
844 dimensionTop
845 )}${dimensionUnit};`
846 : " "
847 }
848 ${
849 dimensionBottom
850 ? `${styleFor}-bottom: ${parseFloat(
851 dimensionBottom
852 )}${dimensionUnit};`
853 : " "
854 }
855
856 `;
857
858 dimensionStylesTab = `
859 ${
860 TABdimensionTop
861 ? `${styleFor}-top: ${parseFloat(
862 TABdimensionTop
863 )}${TABdimensionUnit};`
864 : " "
865 }
866 ${
867 TABdimensionBottom
868 ? `${styleFor}-bottom: ${parseFloat(
869 TABdimensionBottom
870 )}${TABdimensionUnit};`
871 : " "
872 }
873
874 `;
875
876 dimensionStylesMobile = `
877 ${
878 MOBdimensionTop
879 ? `${styleFor}-top: ${parseFloat(
880 MOBdimensionTop
881 )}${MOBdimensionUnit};`
882 : " "
883 }
884 ${
885 MOBdimensionBottom
886 ? `${styleFor}-bottom: ${parseFloat(
887 MOBdimensionBottom
888 )}${MOBdimensionUnit};`
889 : " "
890 }
891
892 `;
893 }
894 }
895
896 return {
897 dimensionStylesDesktop,
898 dimensionStylesTab,
899 dimensionStylesMobile,
900 };
901 };
902