cinqcinqdev-seo 0.1.70 → 0.1.72

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.
@@ -104,9 +104,11 @@ export const DEFAULT_SECTIONS = {
104
104
  paddingBottom: "",
105
105
  marginTop: "",
106
106
  marginBottom: "",
107
- overlay: null,
107
+ paddingX: "",
108
+ overlay: "auto",
108
109
  overlayDirection: "to top",
109
- overlayStrength: "medium"
110
+ overlayStrength: "medium",
111
+ overlayColor: ""
110
112
  },
111
113
  groups: [
112
114
  { key: "design", label: "Design" },
@@ -142,28 +144,30 @@ export const DEFAULT_SECTIONS = {
142
144
  contentWidth: { type: "cards", label: "Content Width", group: "design", options: contentWidthOptions },
143
145
  textSize: { type: "cards", label: "Text Size", group: "design", options: textSizeOptions },
144
146
  overlay: { type: "cards", label: "Gradient Overlay", group: "overlay", options: [
145
- { value: null, label: "Auto", icon: "\u2B24" },
146
- { value: true, label: "On", icon: "\u2713" },
147
- { value: false, label: "Off", icon: "\u2715" }
147
+ { value: "auto", label: "Auto", icon: "\u2B24" },
148
+ { value: "on", label: "On", icon: "\u2713" },
149
+ { value: "off", label: "Off", icon: "\u2715" }
148
150
  ] },
149
- overlayDirection: { type: "select", label: "Direction", group: "overlay", options: [
150
- { value: "to top", label: "Bottom \u2192 Top" },
151
- { value: "to bottom", label: "Top \u2192 Bottom" },
152
- { value: "to right", label: "Left \u2192 Right" },
153
- { value: "to left", label: "Right \u2192 Left" },
151
+ overlayColor: { type: "color", label: "Couleur du gradient", group: "overlay", showIf: (p) => p.overlay !== "off" },
152
+ overlayDirection: { type: "select", label: "Direction", group: "overlay", showIf: (p) => p.overlay !== "off", options: [
153
+ { value: "to top", label: "Bas \u2192 Haut" },
154
+ { value: "to bottom", label: "Haut \u2192 Bas" },
155
+ { value: "to right", label: "Gauche \u2192 Droite" },
156
+ { value: "to left", label: "Droite \u2192 Gauche" },
154
157
  { value: "to bottom right", label: "Diagonal \u2198" },
155
158
  { value: "to bottom left", label: "Diagonal \u2199" }
156
159
  ] },
157
- overlayStrength: { type: "cards", label: "Strength", group: "overlay", options: [
158
- { value: "light", label: "Light", icon: "\u25CB" },
159
- { value: "medium", label: "Medium", icon: "\u25D1" },
160
- { value: "strong", label: "Strong", icon: "\u25CF" }
160
+ overlayStrength: { type: "cards", label: "Intensit\xE9", group: "overlay", showIf: (p) => p.overlay !== "off", options: [
161
+ { value: "light", label: "L\xE9ger", icon: "\u25CB" },
162
+ { value: "medium", label: "Moyen", icon: "\u25D1" },
163
+ { value: "strong", label: "Fort", icon: "\u25CF" }
161
164
  ] },
162
165
  animation: { type: "cards", label: "Animation", group: "animation", options: animationOptions },
163
166
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
164
167
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
165
168
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
166
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
169
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
170
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
167
171
  }
168
172
  },
169
173
  HeroSlider: {
@@ -193,7 +197,8 @@ export const DEFAULT_SECTIONS = {
193
197
  paddingTop: "",
194
198
  paddingBottom: "",
195
199
  marginTop: "",
196
- marginBottom: ""
200
+ marginBottom: "",
201
+ paddingX: ""
197
202
  },
198
203
  fields: {
199
204
  slides: { type: "list", label: "Slides", itemLabel: "title", itemFields: {
@@ -245,7 +250,8 @@ export const DEFAULT_SECTIONS = {
245
250
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
246
251
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
247
252
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
248
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
253
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
254
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
249
255
  }
250
256
  },
251
257
  HeroFan: {
@@ -274,7 +280,8 @@ export const DEFAULT_SECTIONS = {
274
280
  paddingTop: "",
275
281
  paddingBottom: "",
276
282
  marginTop: "",
277
- marginBottom: ""
283
+ marginBottom: "",
284
+ paddingX: ""
278
285
  },
279
286
  fields: {
280
287
  titleTag: { type: "select", label: "SEO Tag", options: tagOptions },
@@ -308,7 +315,8 @@ export const DEFAULT_SECTIONS = {
308
315
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
309
316
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
310
317
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
311
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
318
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
319
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
312
320
  }
313
321
  },
314
322
  TextVisual: {
@@ -337,7 +345,8 @@ export const DEFAULT_SECTIONS = {
337
345
  paddingTop: "",
338
346
  paddingBottom: "",
339
347
  marginTop: "",
340
- marginBottom: ""
348
+ marginBottom: "",
349
+ paddingX: ""
341
350
  },
342
351
  fields: {
343
352
  layout: { type: "cards", label: "Layout", options: [
@@ -376,7 +385,8 @@ export const DEFAULT_SECTIONS = {
376
385
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
377
386
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
378
387
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
379
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
388
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
389
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
380
390
  }
381
391
  },
382
392
  ServiceGrid: {
@@ -402,7 +412,8 @@ export const DEFAULT_SECTIONS = {
402
412
  paddingTop: "",
403
413
  paddingBottom: "",
404
414
  marginTop: "",
405
- marginBottom: ""
415
+ marginBottom: "",
416
+ paddingX: ""
406
417
  },
407
418
  fields: {
408
419
  layout: { type: "cards", label: "Layout", options: [
@@ -434,7 +445,8 @@ export const DEFAULT_SECTIONS = {
434
445
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
435
446
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
436
447
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
437
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
448
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
449
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
438
450
  }
439
451
  },
440
452
  Features: {
@@ -453,7 +465,8 @@ export const DEFAULT_SECTIONS = {
453
465
  paddingTop: "",
454
466
  paddingBottom: "",
455
467
  marginTop: "",
456
- marginBottom: ""
468
+ marginBottom: "",
469
+ paddingX: ""
457
470
  },
458
471
  fields: {
459
472
  title: { type: "text", label: "Section Title", i18n: true },
@@ -471,7 +484,8 @@ export const DEFAULT_SECTIONS = {
471
484
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
472
485
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
473
486
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
474
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
487
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
488
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
475
489
  }
476
490
  },
477
491
  FAQ: {
@@ -490,7 +504,8 @@ export const DEFAULT_SECTIONS = {
490
504
  paddingTop: "",
491
505
  paddingBottom: "",
492
506
  marginTop: "",
493
- marginBottom: ""
507
+ marginBottom: "",
508
+ paddingX: ""
494
509
  },
495
510
  fields: {
496
511
  title: { type: "text", label: "Title", i18n: true },
@@ -508,7 +523,8 @@ export const DEFAULT_SECTIONS = {
508
523
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
509
524
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
510
525
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
511
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
526
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
527
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
512
528
  }
513
529
  },
514
530
  Process: {
@@ -531,7 +547,8 @@ export const DEFAULT_SECTIONS = {
531
547
  paddingTop: "",
532
548
  paddingBottom: "",
533
549
  marginTop: "",
534
- marginBottom: ""
550
+ marginBottom: "",
551
+ paddingX: ""
535
552
  },
536
553
  fields: {
537
554
  layout: { type: "cards", label: "Layout", options: [
@@ -560,7 +577,8 @@ export const DEFAULT_SECTIONS = {
560
577
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
561
578
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
562
579
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
563
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
580
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
581
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
564
582
  }
565
583
  },
566
584
  Testimonials: {
@@ -583,7 +601,8 @@ export const DEFAULT_SECTIONS = {
583
601
  paddingTop: "",
584
602
  paddingBottom: "",
585
603
  marginTop: "",
586
- marginBottom: ""
604
+ marginBottom: "",
605
+ paddingX: ""
587
606
  },
588
607
  fields: {
589
608
  layout: { type: "cards", label: "Layout", options: [
@@ -614,7 +633,8 @@ export const DEFAULT_SECTIONS = {
614
633
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
615
634
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
616
635
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
617
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
636
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
637
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
618
638
  }
619
639
  },
620
640
  Pricing: {
@@ -637,7 +657,8 @@ export const DEFAULT_SECTIONS = {
637
657
  paddingTop: "",
638
658
  paddingBottom: "",
639
659
  marginTop: "",
640
- marginBottom: ""
660
+ marginBottom: "",
661
+ paddingX: ""
641
662
  },
642
663
  fields: {
643
664
  layout: { type: "cards", label: "Layout", options: [
@@ -668,7 +689,8 @@ export const DEFAULT_SECTIONS = {
668
689
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
669
690
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
670
691
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
671
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
692
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
693
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
672
694
  }
673
695
  },
674
696
  ContactForm: {
@@ -690,7 +712,8 @@ export const DEFAULT_SECTIONS = {
690
712
  paddingTop: "",
691
713
  paddingBottom: "",
692
714
  marginTop: "",
693
- marginBottom: ""
715
+ marginBottom: "",
716
+ paddingX: ""
694
717
  },
695
718
  fields: {
696
719
  layout: { type: "cards", label: "Layout", options: [
@@ -712,7 +735,8 @@ export const DEFAULT_SECTIONS = {
712
735
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
713
736
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
714
737
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
715
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
738
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
739
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
716
740
  }
717
741
  },
718
742
  // ── Blog sections ─────────────────────────────────────────────────────────
@@ -741,7 +765,8 @@ export const DEFAULT_SECTIONS = {
741
765
  paddingTop: "",
742
766
  paddingBottom: "",
743
767
  marginTop: "",
744
- marginBottom: ""
768
+ marginBottom: "",
769
+ paddingX: ""
745
770
  },
746
771
  fields: {
747
772
  layout: { type: "cards", label: "Layout", options: [
@@ -773,7 +798,8 @@ export const DEFAULT_SECTIONS = {
773
798
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
774
799
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
775
800
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
776
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
801
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
802
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
777
803
  }
778
804
  },
779
805
  RichText: {
@@ -796,7 +822,8 @@ export const DEFAULT_SECTIONS = {
796
822
  paddingTop: "",
797
823
  paddingBottom: "",
798
824
  marginTop: "",
799
- marginBottom: ""
825
+ marginBottom: "",
826
+ paddingX: ""
800
827
  },
801
828
  fields: {
802
829
  layout: { type: "cards", label: "Width", options: [
@@ -824,7 +851,8 @@ export const DEFAULT_SECTIONS = {
824
851
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
825
852
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
826
853
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
827
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
854
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
855
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
828
856
  }
829
857
  },
830
858
  CallToAction: {
@@ -849,7 +877,8 @@ export const DEFAULT_SECTIONS = {
849
877
  paddingTop: "",
850
878
  paddingBottom: "",
851
879
  marginTop: "",
852
- marginBottom: ""
880
+ marginBottom: "",
881
+ paddingX: ""
853
882
  },
854
883
  fields: {
855
884
  layout: { type: "cards", label: "Layout", options: [
@@ -874,7 +903,8 @@ export const DEFAULT_SECTIONS = {
874
903
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
875
904
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
876
905
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
877
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
906
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
907
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
878
908
  }
879
909
  },
880
910
  Quote: {
@@ -895,7 +925,8 @@ export const DEFAULT_SECTIONS = {
895
925
  paddingTop: "",
896
926
  paddingBottom: "",
897
927
  marginTop: "",
898
- marginBottom: ""
928
+ marginBottom: "",
929
+ paddingX: ""
899
930
  },
900
931
  fields: {
901
932
  layout: { type: "cards", label: "Layout", options: [
@@ -916,7 +947,8 @@ export const DEFAULT_SECTIONS = {
916
947
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
917
948
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
918
949
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
919
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
950
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
951
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
920
952
  }
921
953
  },
922
954
  DataTable: {
@@ -958,7 +990,8 @@ export const DEFAULT_SECTIONS = {
958
990
  paddingTop: "",
959
991
  paddingBottom: "",
960
992
  marginTop: "",
961
- marginBottom: ""
993
+ marginBottom: "",
994
+ paddingX: ""
962
995
  },
963
996
  fields: {
964
997
  layout: { type: "cards", label: "Layout", options: [
@@ -1004,7 +1037,8 @@ export const DEFAULT_SECTIONS = {
1004
1037
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
1005
1038
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
1006
1039
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
1007
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
1040
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
1041
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
1008
1042
  }
1009
1043
  },
1010
1044
  Comparison: {
@@ -1034,7 +1068,8 @@ export const DEFAULT_SECTIONS = {
1034
1068
  paddingTop: "",
1035
1069
  paddingBottom: "",
1036
1070
  marginTop: "",
1037
- marginBottom: ""
1071
+ marginBottom: "",
1072
+ paddingX: ""
1038
1073
  },
1039
1074
  fields: {
1040
1075
  layout: { type: "cards", label: "Layout", options: [
@@ -1073,7 +1108,8 @@ export const DEFAULT_SECTIONS = {
1073
1108
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
1074
1109
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
1075
1110
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
1076
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
1111
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
1112
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
1077
1113
  }
1078
1114
  },
1079
1115
  RelatedPages: {
@@ -1099,7 +1135,8 @@ export const DEFAULT_SECTIONS = {
1099
1135
  paddingTop: "",
1100
1136
  paddingBottom: "",
1101
1137
  marginTop: "",
1102
- marginBottom: ""
1138
+ marginBottom: "",
1139
+ paddingX: ""
1103
1140
  },
1104
1141
  fields: {
1105
1142
  layout: { type: "cards", label: "Layout", options: [
@@ -1128,7 +1165,8 @@ export const DEFAULT_SECTIONS = {
1128
1165
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
1129
1166
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
1130
1167
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
1131
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
1168
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
1169
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
1132
1170
  }
1133
1171
  },
1134
1172
  Newsletter: {
@@ -1152,7 +1190,8 @@ export const DEFAULT_SECTIONS = {
1152
1190
  paddingTop: "",
1153
1191
  paddingBottom: "",
1154
1192
  marginTop: "",
1155
- marginBottom: ""
1193
+ marginBottom: "",
1194
+ paddingX: ""
1156
1195
  },
1157
1196
  fields: {
1158
1197
  layout: { type: "cards", label: "Layout", options: [
@@ -1176,7 +1215,8 @@ export const DEFAULT_SECTIONS = {
1176
1215
  paddingTop: { type: "select", label: "Padding Top", options: paddingOptions },
1177
1216
  paddingBottom: { type: "select", label: "Padding Bottom", options: paddingOptions },
1178
1217
  marginTop: { type: "select", label: "Margin Top", options: marginOptions },
1179
- marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions }
1218
+ marginBottom: { type: "select", label: "Margin Bottom", options: marginOptions },
1219
+ paddingX: { type: "select", label: "Padding X", options: marginOptions }
1180
1220
  }
1181
1221
  }
1182
1222
  };
@@ -381,10 +381,13 @@ const CONTENT_FIELD_TYPES = ["text", "textarea", "image", "list", "richtext"];
381
381
  const visibleFields = computed(() => {
382
382
  const cfg = selectedCMSConfig.value;
383
383
  if (!cfg?.fields) return {};
384
+ const props = page.value?.content[selectedBlockIndex.value]?.props ?? {};
384
385
  return Object.fromEntries(
385
386
  Object.entries(cfg.fields).filter(([, f]) => {
386
387
  const isContent = CONTENT_FIELD_TYPES.includes(f.type);
387
- return selectedFieldGroup.value === "contenu" ? isContent : !isContent;
388
+ if (selectedFieldGroup.value === "contenu" ? !isContent : isContent) return false;
389
+ if (typeof f.showIf === "function" && !f.showIf(props)) return false;
390
+ return true;
388
391
  })
389
392
  );
390
393
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cinqcinqdev-seo",
3
- "version": "0.1.70",
3
+ "version": "0.1.72",
4
4
  "description": "A reusable Nuxt 3 admin CMS module with visual page editor powered by Supabase",
5
5
  "license": "MIT",
6
6
  "module": "./dist/module.mjs",