@themarioga/grid-editor 4.0.0 → 5.0.0

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.
Files changed (65) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/README.md +121 -9
  3. package/UPGRADING.md +55 -0
  4. package/dist/grideditor.css +609 -0
  5. package/dist/grideditor.min.css +1 -1
  6. package/dist/grideditor.min.css.map +1 -1
  7. package/dist/jquery.grideditor.bundle.min.js +2 -2
  8. package/dist/jquery.grideditor.js +1189 -118
  9. package/dist/jquery.grideditor.min.js +1 -1
  10. package/dist/jquery.grideditor.min.js.map +1 -1
  11. package/dist/locales/grideditor.es.js +58 -0
  12. package/dist/locales/grideditor.es.min.js +1 -1
  13. package/dist/locales/grideditor.es.min.js.map +1 -1
  14. package/dist/plugins/grideditor.alignment.js +81 -0
  15. package/dist/plugins/grideditor.alignment.min.js +2 -0
  16. package/dist/plugins/grideditor.alignment.min.js.map +1 -0
  17. package/dist/plugins/grideditor.float.js +56 -0
  18. package/dist/plugins/grideditor.float.min.js +2 -0
  19. package/dist/plugins/grideditor.float.min.js.map +1 -0
  20. package/dist/plugins/grideditor.gutters.js +145 -0
  21. package/dist/plugins/grideditor.gutters.min.js +2 -0
  22. package/dist/plugins/grideditor.gutters.min.js.map +1 -0
  23. package/dist/plugins/grideditor.order.js +206 -0
  24. package/dist/plugins/grideditor.order.min.js +2 -0
  25. package/dist/plugins/grideditor.order.min.js.map +1 -0
  26. package/dist/plugins/grideditor.sections.js +199 -0
  27. package/dist/plugins/grideditor.sections.min.js +2 -0
  28. package/dist/plugins/grideditor.sections.min.js.map +1 -0
  29. package/dist/plugins/grideditor.spacing.js +299 -0
  30. package/dist/plugins/grideditor.spacing.min.js +2 -0
  31. package/dist/plugins/grideditor.spacing.min.js.map +1 -0
  32. package/dist/plugins/grideditor.textalign.js +60 -0
  33. package/dist/plugins/grideditor.textalign.min.js +2 -0
  34. package/dist/plugins/grideditor.textalign.min.js.map +1 -0
  35. package/dist/plugins/grideditor.visibility.js +172 -0
  36. package/dist/plugins/grideditor.visibility.min.js +2 -0
  37. package/dist/plugins/grideditor.visibility.min.js.map +1 -0
  38. package/docs/events.md +32 -2
  39. package/docs/locale-keys.md +88 -1
  40. package/docs/plugins.md +141 -3
  41. package/example/autocols.html +137 -0
  42. package/example/autosave.html +5 -0
  43. package/example/basic.html +5 -0
  44. package/example/breakpoints.html +12 -5
  45. package/example/ckeditor.html +5 -0
  46. package/example/containers.html +4 -0
  47. package/example/elements.html +5 -0
  48. package/example/index.html +38 -1
  49. package/example/locale.html +5 -0
  50. package/example/plugins.html +5 -0
  51. package/example/summernote.html +5 -0
  52. package/example/utilities.html +166 -0
  53. package/example/wrap_content.html +5 -0
  54. package/package.json +1 -1
  55. package/src/js/jquery.grideditor.js +1190 -119
  56. package/src/js/locales/grideditor.es.js +58 -0
  57. package/src/js/plugins/grideditor.alignment.js +81 -0
  58. package/src/js/plugins/grideditor.float.js +56 -0
  59. package/src/js/plugins/grideditor.gutters.js +145 -0
  60. package/src/js/plugins/grideditor.order.js +206 -0
  61. package/src/js/plugins/grideditor.sections.js +199 -0
  62. package/src/js/plugins/grideditor.spacing.js +299 -0
  63. package/src/js/plugins/grideditor.textalign.js +60 -0
  64. package/src/js/plugins/grideditor.visibility.js +172 -0
  65. package/src/less/grideditor.less +299 -0
@@ -28,7 +28,10 @@
28
28
  }
29
29
  .ge-mainControls .ge-addRowGroup .ge-row-icon {
30
30
  width: 48px;
31
+ /* A button shrinks to its content, and an equal column has none */
32
+ flex: 0 0 48px;
31
33
  margin: 0;
34
+ /* Nothing inside to be as wide as */
32
35
  }
33
36
  .ge-mainControls .ge-addRowGroup .ge-row-icon .column {
34
37
  height: 10px;
@@ -36,6 +39,9 @@
36
39
  padding: 0;
37
40
  border-left: 2px solid #f4f4f4;
38
41
  }
42
+ .ge-mainControls .ge-addRowGroup .ge-row-icon .col-auto {
43
+ min-width: 8px;
44
+ }
39
45
  .ge-mainControls .ge-layout-mode {
40
46
  margin-left: 5px;
41
47
  }
@@ -155,6 +161,8 @@
155
161
  margin: 0 -5px 5px;
156
162
  display: block;
157
163
  width: calc(100% + 2 * 5px);
164
+ /* Its node may align text, and the drawer's tools would follow */
165
+ text-align: left;
158
166
  }
159
167
  .ge-canvas.ge-editing .ge-tools-drawer.ge-picker-open {
160
168
  z-index: 200;
@@ -171,6 +179,7 @@
171
179
  padding: 5px;
172
180
  border-top: 1px solid rgba(0, 0, 0, 0.05);
173
181
  display: none;
182
+ /* The utility plugins' fields, folded under one toggle */
174
183
  }
175
184
  .ge-canvas.ge-editing .ge-tools-drawer .ge-details .btn-group a {
176
185
  color: #333;
@@ -194,6 +203,74 @@
194
203
  .ge-canvas.ge-editing .ge-tools-drawer .ge-details input.ge-classes {
195
204
  width: 200px;
196
205
  }
206
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities {
207
+ margin-top: 5px;
208
+ font-size: 11px;
209
+ /* The spacing plugin: a side and a value per group */
210
+ }
211
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities > .ge-utilities-toggle {
212
+ color: #333;
213
+ cursor: pointer;
214
+ text-decoration: none;
215
+ }
216
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities > .ge-utilities-toggle::before {
217
+ content: '\25B8';
218
+ display: inline-block;
219
+ width: 1em;
220
+ }
221
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities.ge-open > .ge-utilities-toggle::before {
222
+ content: '\25BE';
223
+ }
224
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities > .ge-utilities-body {
225
+ display: none;
226
+ flex-wrap: wrap;
227
+ gap: 4px 10px;
228
+ margin-top: 4px;
229
+ }
230
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities.ge-open > .ge-utilities-body {
231
+ display: flex;
232
+ }
233
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities .ge-utility {
234
+ display: inline-flex;
235
+ flex-direction: column;
236
+ margin: 0;
237
+ }
238
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities .ge-utility select {
239
+ border: 1px solid #7F7F7F;
240
+ border-radius: 4px;
241
+ font-size: 11px;
242
+ padding: 1px 2px;
243
+ }
244
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities .ge-utility-note {
245
+ color: #666;
246
+ font-size: 10px;
247
+ max-width: 160px;
248
+ }
249
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities .ge-spacing {
250
+ display: flex;
251
+ flex-wrap: wrap;
252
+ gap: 4px 10px;
253
+ }
254
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities .ge-spacing-group {
255
+ display: inline-flex;
256
+ flex-direction: column;
257
+ /* The group names the field once */
258
+ }
259
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities .ge-spacing-group > .ge-spacing-side {
260
+ border: 1px solid #7F7F7F;
261
+ border-radius: 4px;
262
+ font-size: 11px;
263
+ padding: 1px 2px;
264
+ margin-bottom: 2px;
265
+ }
266
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities .ge-spacing-group .ge-utility > .ge-utility-label {
267
+ display: none;
268
+ }
269
+ .ge-canvas.ge-editing .ge-tools-drawer .ge-details .ge-utilities .ge-spacing-gutter {
270
+ flex-basis: 100%;
271
+ color: #666;
272
+ font-size: 10px;
273
+ }
197
274
  .ge-canvas.ge-editing .row {
198
275
  background-color: #efefef;
199
276
  border: 1px solid #999999;
@@ -220,6 +297,9 @@
220
297
  position: relative;
221
298
  }
222
299
  .ge-canvas.ge-editing .column > .ge-tools-drawer {
300
+ /* The drawer is not content: an auto column is as wide as what
301
+ it holds, and its tools would make it as wide as a drawer */
302
+ contain: inline-size;
223
303
  background: #afd5ea;
224
304
  }
225
305
  .ge-canvas.ge-editing .column > .ge-tools-drawer a {
@@ -262,6 +342,7 @@
262
342
  background: rgba(47, 164, 231, 0.08);
263
343
  border: 1px solid rgba(47, 164, 231, 0.4);
264
344
  border-radius: 3px;
345
+ /* col and col-auto: a word, not a number */
265
346
  /* Wider than what is left of the row: allowed, but said so */
266
347
  }
267
348
  .ge-canvas.ge-editing .ge-size-picker > .ge-size:hover {
@@ -269,6 +350,11 @@
269
350
  border-color: #2FA4E7;
270
351
  color: #fff;
271
352
  }
353
+ .ge-canvas.ge-editing .ge-size-picker > .ge-size.ge-size-flex {
354
+ width: auto;
355
+ padding-left: 5px;
356
+ padding-right: 5px;
357
+ }
272
358
  .ge-canvas.ge-editing .ge-size-picker > .ge-size.ge-size-tight {
273
359
  color: #999;
274
360
  background: transparent;
@@ -451,6 +537,11 @@
451
537
  .ge-canvas.ge-layout-all {
452
538
  max-width: none;
453
539
  }
540
+ /*
541
+ * col and col-auto, in the order Bootstrap writes them: before the numbered
542
+ * sizes, so that of two classes for one tier the number wins, as it does on
543
+ * the real page.
544
+ */
454
545
  /*
455
546
  * Switching a tier off means giving the column back to bootstrap's default
456
547
  * for a row child - full width, stacked - which is what a browser really
@@ -470,6 +561,12 @@
470
561
  specificity, so the order they are written in is the rule. */
471
562
  /* this tier applies at the active one, so it is written by the pass below */
472
563
  }
564
+ .ge-canvas.ge-layout-xs .col-sm,
565
+ .ge-canvas.ge-layout-xs .col-sm-auto {
566
+ flex: 0 0 auto;
567
+ width: 100%;
568
+ max-width: 100%;
569
+ }
473
570
  .ge-canvas.ge-layout-xs .col-sm-1 {
474
571
  flex: 0 0 auto;
475
572
  width: 100%;
@@ -563,6 +660,12 @@
563
660
  .ge-canvas.ge-layout-xs .offset-sm-11 {
564
661
  margin-left: 0;
565
662
  }
663
+ .ge-canvas.ge-layout-xs .col-md,
664
+ .ge-canvas.ge-layout-xs .col-md-auto {
665
+ flex: 0 0 auto;
666
+ width: 100%;
667
+ max-width: 100%;
668
+ }
566
669
  .ge-canvas.ge-layout-xs .col-md-1 {
567
670
  flex: 0 0 auto;
568
671
  width: 100%;
@@ -656,6 +759,12 @@
656
759
  .ge-canvas.ge-layout-xs .offset-md-11 {
657
760
  margin-left: 0;
658
761
  }
762
+ .ge-canvas.ge-layout-xs .col-lg,
763
+ .ge-canvas.ge-layout-xs .col-lg-auto {
764
+ flex: 0 0 auto;
765
+ width: 100%;
766
+ max-width: 100%;
767
+ }
659
768
  .ge-canvas.ge-layout-xs .col-lg-1 {
660
769
  flex: 0 0 auto;
661
770
  width: 100%;
@@ -749,6 +858,12 @@
749
858
  .ge-canvas.ge-layout-xs .offset-lg-11 {
750
859
  margin-left: 0;
751
860
  }
861
+ .ge-canvas.ge-layout-xs .col-xl,
862
+ .ge-canvas.ge-layout-xs .col-xl-auto {
863
+ flex: 0 0 auto;
864
+ width: 100%;
865
+ max-width: 100%;
866
+ }
752
867
  .ge-canvas.ge-layout-xs .col-xl-1 {
753
868
  flex: 0 0 auto;
754
869
  width: 100%;
@@ -842,6 +957,12 @@
842
957
  .ge-canvas.ge-layout-xs .offset-xl-11 {
843
958
  margin-left: 0;
844
959
  }
960
+ .ge-canvas.ge-layout-xs .col-xxl,
961
+ .ge-canvas.ge-layout-xs .col-xxl-auto {
962
+ flex: 0 0 auto;
963
+ width: 100%;
964
+ max-width: 100%;
965
+ }
845
966
  .ge-canvas.ge-layout-xs .col-xxl-1 {
846
967
  flex: 0 0 auto;
847
968
  width: 100%;
@@ -935,6 +1056,15 @@
935
1056
  .ge-canvas.ge-layout-xs .offset-xxl-11 {
936
1057
  margin-left: 0;
937
1058
  }
1059
+ .ge-canvas.ge-layout-xs .col {
1060
+ flex: 1 0 0%;
1061
+ max-width: 100%;
1062
+ }
1063
+ .ge-canvas.ge-layout-xs .col-auto {
1064
+ flex: 0 0 auto;
1065
+ width: auto;
1066
+ max-width: 100%;
1067
+ }
938
1068
  .ge-canvas.ge-layout-xs .col-1 {
939
1069
  flex: 0 0 auto;
940
1070
  width: 8.33333333%;
@@ -1041,6 +1171,12 @@
1041
1171
  /* this tier applies at the active one, so it is written by the pass below */
1042
1172
  /* this tier applies at the active one, so it is written by the pass below */
1043
1173
  }
1174
+ .ge-canvas.ge-layout-sm .col-md,
1175
+ .ge-canvas.ge-layout-sm .col-md-auto {
1176
+ flex: 0 0 auto;
1177
+ width: 100%;
1178
+ max-width: 100%;
1179
+ }
1044
1180
  .ge-canvas.ge-layout-sm .col-md-1 {
1045
1181
  flex: 0 0 auto;
1046
1182
  width: 100%;
@@ -1134,6 +1270,12 @@
1134
1270
  .ge-canvas.ge-layout-sm .offset-md-11 {
1135
1271
  margin-left: 0;
1136
1272
  }
1273
+ .ge-canvas.ge-layout-sm .col-lg,
1274
+ .ge-canvas.ge-layout-sm .col-lg-auto {
1275
+ flex: 0 0 auto;
1276
+ width: 100%;
1277
+ max-width: 100%;
1278
+ }
1137
1279
  .ge-canvas.ge-layout-sm .col-lg-1 {
1138
1280
  flex: 0 0 auto;
1139
1281
  width: 100%;
@@ -1227,6 +1369,12 @@
1227
1369
  .ge-canvas.ge-layout-sm .offset-lg-11 {
1228
1370
  margin-left: 0;
1229
1371
  }
1372
+ .ge-canvas.ge-layout-sm .col-xl,
1373
+ .ge-canvas.ge-layout-sm .col-xl-auto {
1374
+ flex: 0 0 auto;
1375
+ width: 100%;
1376
+ max-width: 100%;
1377
+ }
1230
1378
  .ge-canvas.ge-layout-sm .col-xl-1 {
1231
1379
  flex: 0 0 auto;
1232
1380
  width: 100%;
@@ -1320,6 +1468,12 @@
1320
1468
  .ge-canvas.ge-layout-sm .offset-xl-11 {
1321
1469
  margin-left: 0;
1322
1470
  }
1471
+ .ge-canvas.ge-layout-sm .col-xxl,
1472
+ .ge-canvas.ge-layout-sm .col-xxl-auto {
1473
+ flex: 0 0 auto;
1474
+ width: 100%;
1475
+ max-width: 100%;
1476
+ }
1323
1477
  .ge-canvas.ge-layout-sm .col-xxl-1 {
1324
1478
  flex: 0 0 auto;
1325
1479
  width: 100%;
@@ -1413,6 +1567,15 @@
1413
1567
  .ge-canvas.ge-layout-sm .offset-xxl-11 {
1414
1568
  margin-left: 0;
1415
1569
  }
1570
+ .ge-canvas.ge-layout-sm .col {
1571
+ flex: 1 0 0%;
1572
+ max-width: 100%;
1573
+ }
1574
+ .ge-canvas.ge-layout-sm .col-auto {
1575
+ flex: 0 0 auto;
1576
+ width: auto;
1577
+ max-width: 100%;
1578
+ }
1416
1579
  .ge-canvas.ge-layout-sm .col-1 {
1417
1580
  flex: 0 0 auto;
1418
1581
  width: 8.33333333%;
@@ -1506,6 +1669,15 @@
1506
1669
  .ge-canvas.ge-layout-sm .offset-11 {
1507
1670
  margin-left: 91.66666667%;
1508
1671
  }
1672
+ .ge-canvas.ge-layout-sm .col-sm {
1673
+ flex: 1 0 0%;
1674
+ max-width: 100%;
1675
+ }
1676
+ .ge-canvas.ge-layout-sm .col-sm-auto {
1677
+ flex: 0 0 auto;
1678
+ width: auto;
1679
+ max-width: 100%;
1680
+ }
1509
1681
  .ge-canvas.ge-layout-sm .col-sm-1 {
1510
1682
  flex: 0 0 auto;
1511
1683
  width: 8.33333333%;
@@ -1613,6 +1785,12 @@
1613
1785
  /* this tier applies at the active one, so it is written by the pass below */
1614
1786
  /* this tier applies at the active one, so it is written by the pass below */
1615
1787
  }
1788
+ .ge-canvas.ge-layout-md .col-lg,
1789
+ .ge-canvas.ge-layout-md .col-lg-auto {
1790
+ flex: 0 0 auto;
1791
+ width: 100%;
1792
+ max-width: 100%;
1793
+ }
1616
1794
  .ge-canvas.ge-layout-md .col-lg-1 {
1617
1795
  flex: 0 0 auto;
1618
1796
  width: 100%;
@@ -1706,6 +1884,12 @@
1706
1884
  .ge-canvas.ge-layout-md .offset-lg-11 {
1707
1885
  margin-left: 0;
1708
1886
  }
1887
+ .ge-canvas.ge-layout-md .col-xl,
1888
+ .ge-canvas.ge-layout-md .col-xl-auto {
1889
+ flex: 0 0 auto;
1890
+ width: 100%;
1891
+ max-width: 100%;
1892
+ }
1709
1893
  .ge-canvas.ge-layout-md .col-xl-1 {
1710
1894
  flex: 0 0 auto;
1711
1895
  width: 100%;
@@ -1799,6 +1983,12 @@
1799
1983
  .ge-canvas.ge-layout-md .offset-xl-11 {
1800
1984
  margin-left: 0;
1801
1985
  }
1986
+ .ge-canvas.ge-layout-md .col-xxl,
1987
+ .ge-canvas.ge-layout-md .col-xxl-auto {
1988
+ flex: 0 0 auto;
1989
+ width: 100%;
1990
+ max-width: 100%;
1991
+ }
1802
1992
  .ge-canvas.ge-layout-md .col-xxl-1 {
1803
1993
  flex: 0 0 auto;
1804
1994
  width: 100%;
@@ -1892,6 +2082,15 @@
1892
2082
  .ge-canvas.ge-layout-md .offset-xxl-11 {
1893
2083
  margin-left: 0;
1894
2084
  }
2085
+ .ge-canvas.ge-layout-md .col {
2086
+ flex: 1 0 0%;
2087
+ max-width: 100%;
2088
+ }
2089
+ .ge-canvas.ge-layout-md .col-auto {
2090
+ flex: 0 0 auto;
2091
+ width: auto;
2092
+ max-width: 100%;
2093
+ }
1895
2094
  .ge-canvas.ge-layout-md .col-1 {
1896
2095
  flex: 0 0 auto;
1897
2096
  width: 8.33333333%;
@@ -1985,6 +2184,15 @@
1985
2184
  .ge-canvas.ge-layout-md .offset-11 {
1986
2185
  margin-left: 91.66666667%;
1987
2186
  }
2187
+ .ge-canvas.ge-layout-md .col-sm {
2188
+ flex: 1 0 0%;
2189
+ max-width: 100%;
2190
+ }
2191
+ .ge-canvas.ge-layout-md .col-sm-auto {
2192
+ flex: 0 0 auto;
2193
+ width: auto;
2194
+ max-width: 100%;
2195
+ }
1988
2196
  .ge-canvas.ge-layout-md .col-sm-1 {
1989
2197
  flex: 0 0 auto;
1990
2198
  width: 8.33333333%;
@@ -2078,6 +2286,15 @@
2078
2286
  .ge-canvas.ge-layout-md .offset-sm-11 {
2079
2287
  margin-left: 91.66666667%;
2080
2288
  }
2289
+ .ge-canvas.ge-layout-md .col-md {
2290
+ flex: 1 0 0%;
2291
+ max-width: 100%;
2292
+ }
2293
+ .ge-canvas.ge-layout-md .col-md-auto {
2294
+ flex: 0 0 auto;
2295
+ width: auto;
2296
+ max-width: 100%;
2297
+ }
2081
2298
  .ge-canvas.ge-layout-md .col-md-1 {
2082
2299
  flex: 0 0 auto;
2083
2300
  width: 8.33333333%;
@@ -2186,6 +2403,12 @@
2186
2403
  /* this tier applies at the active one, so it is written by the pass below */
2187
2404
  /* this tier applies at the active one, so it is written by the pass below */
2188
2405
  }
2406
+ .ge-canvas.ge-layout-lg .col-xl,
2407
+ .ge-canvas.ge-layout-lg .col-xl-auto {
2408
+ flex: 0 0 auto;
2409
+ width: 100%;
2410
+ max-width: 100%;
2411
+ }
2189
2412
  .ge-canvas.ge-layout-lg .col-xl-1 {
2190
2413
  flex: 0 0 auto;
2191
2414
  width: 100%;
@@ -2279,6 +2502,12 @@
2279
2502
  .ge-canvas.ge-layout-lg .offset-xl-11 {
2280
2503
  margin-left: 0;
2281
2504
  }
2505
+ .ge-canvas.ge-layout-lg .col-xxl,
2506
+ .ge-canvas.ge-layout-lg .col-xxl-auto {
2507
+ flex: 0 0 auto;
2508
+ width: 100%;
2509
+ max-width: 100%;
2510
+ }
2282
2511
  .ge-canvas.ge-layout-lg .col-xxl-1 {
2283
2512
  flex: 0 0 auto;
2284
2513
  width: 100%;
@@ -2372,6 +2601,15 @@
2372
2601
  .ge-canvas.ge-layout-lg .offset-xxl-11 {
2373
2602
  margin-left: 0;
2374
2603
  }
2604
+ .ge-canvas.ge-layout-lg .col {
2605
+ flex: 1 0 0%;
2606
+ max-width: 100%;
2607
+ }
2608
+ .ge-canvas.ge-layout-lg .col-auto {
2609
+ flex: 0 0 auto;
2610
+ width: auto;
2611
+ max-width: 100%;
2612
+ }
2375
2613
  .ge-canvas.ge-layout-lg .col-1 {
2376
2614
  flex: 0 0 auto;
2377
2615
  width: 8.33333333%;
@@ -2465,6 +2703,15 @@
2465
2703
  .ge-canvas.ge-layout-lg .offset-11 {
2466
2704
  margin-left: 91.66666667%;
2467
2705
  }
2706
+ .ge-canvas.ge-layout-lg .col-sm {
2707
+ flex: 1 0 0%;
2708
+ max-width: 100%;
2709
+ }
2710
+ .ge-canvas.ge-layout-lg .col-sm-auto {
2711
+ flex: 0 0 auto;
2712
+ width: auto;
2713
+ max-width: 100%;
2714
+ }
2468
2715
  .ge-canvas.ge-layout-lg .col-sm-1 {
2469
2716
  flex: 0 0 auto;
2470
2717
  width: 8.33333333%;
@@ -2558,6 +2805,15 @@
2558
2805
  .ge-canvas.ge-layout-lg .offset-sm-11 {
2559
2806
  margin-left: 91.66666667%;
2560
2807
  }
2808
+ .ge-canvas.ge-layout-lg .col-md {
2809
+ flex: 1 0 0%;
2810
+ max-width: 100%;
2811
+ }
2812
+ .ge-canvas.ge-layout-lg .col-md-auto {
2813
+ flex: 0 0 auto;
2814
+ width: auto;
2815
+ max-width: 100%;
2816
+ }
2561
2817
  .ge-canvas.ge-layout-lg .col-md-1 {
2562
2818
  flex: 0 0 auto;
2563
2819
  width: 8.33333333%;
@@ -2651,6 +2907,15 @@
2651
2907
  .ge-canvas.ge-layout-lg .offset-md-11 {
2652
2908
  margin-left: 91.66666667%;
2653
2909
  }
2910
+ .ge-canvas.ge-layout-lg .col-lg {
2911
+ flex: 1 0 0%;
2912
+ max-width: 100%;
2913
+ }
2914
+ .ge-canvas.ge-layout-lg .col-lg-auto {
2915
+ flex: 0 0 auto;
2916
+ width: auto;
2917
+ max-width: 100%;
2918
+ }
2654
2919
  .ge-canvas.ge-layout-lg .col-lg-1 {
2655
2920
  flex: 0 0 auto;
2656
2921
  width: 8.33333333%;
@@ -2760,6 +3025,12 @@
2760
3025
  /* this tier applies at the active one, so it is written by the pass below */
2761
3026
  /* this tier applies at the active one, so it is written by the pass below */
2762
3027
  }
3028
+ .ge-canvas.ge-layout-xl .col-xxl,
3029
+ .ge-canvas.ge-layout-xl .col-xxl-auto {
3030
+ flex: 0 0 auto;
3031
+ width: 100%;
3032
+ max-width: 100%;
3033
+ }
2763
3034
  .ge-canvas.ge-layout-xl .col-xxl-1 {
2764
3035
  flex: 0 0 auto;
2765
3036
  width: 100%;
@@ -2853,6 +3124,15 @@
2853
3124
  .ge-canvas.ge-layout-xl .offset-xxl-11 {
2854
3125
  margin-left: 0;
2855
3126
  }
3127
+ .ge-canvas.ge-layout-xl .col {
3128
+ flex: 1 0 0%;
3129
+ max-width: 100%;
3130
+ }
3131
+ .ge-canvas.ge-layout-xl .col-auto {
3132
+ flex: 0 0 auto;
3133
+ width: auto;
3134
+ max-width: 100%;
3135
+ }
2856
3136
  .ge-canvas.ge-layout-xl .col-1 {
2857
3137
  flex: 0 0 auto;
2858
3138
  width: 8.33333333%;
@@ -2946,6 +3226,15 @@
2946
3226
  .ge-canvas.ge-layout-xl .offset-11 {
2947
3227
  margin-left: 91.66666667%;
2948
3228
  }
3229
+ .ge-canvas.ge-layout-xl .col-sm {
3230
+ flex: 1 0 0%;
3231
+ max-width: 100%;
3232
+ }
3233
+ .ge-canvas.ge-layout-xl .col-sm-auto {
3234
+ flex: 0 0 auto;
3235
+ width: auto;
3236
+ max-width: 100%;
3237
+ }
2949
3238
  .ge-canvas.ge-layout-xl .col-sm-1 {
2950
3239
  flex: 0 0 auto;
2951
3240
  width: 8.33333333%;
@@ -3039,6 +3328,15 @@
3039
3328
  .ge-canvas.ge-layout-xl .offset-sm-11 {
3040
3329
  margin-left: 91.66666667%;
3041
3330
  }
3331
+ .ge-canvas.ge-layout-xl .col-md {
3332
+ flex: 1 0 0%;
3333
+ max-width: 100%;
3334
+ }
3335
+ .ge-canvas.ge-layout-xl .col-md-auto {
3336
+ flex: 0 0 auto;
3337
+ width: auto;
3338
+ max-width: 100%;
3339
+ }
3042
3340
  .ge-canvas.ge-layout-xl .col-md-1 {
3043
3341
  flex: 0 0 auto;
3044
3342
  width: 8.33333333%;
@@ -3132,6 +3430,15 @@
3132
3430
  .ge-canvas.ge-layout-xl .offset-md-11 {
3133
3431
  margin-left: 91.66666667%;
3134
3432
  }
3433
+ .ge-canvas.ge-layout-xl .col-lg {
3434
+ flex: 1 0 0%;
3435
+ max-width: 100%;
3436
+ }
3437
+ .ge-canvas.ge-layout-xl .col-lg-auto {
3438
+ flex: 0 0 auto;
3439
+ width: auto;
3440
+ max-width: 100%;
3441
+ }
3135
3442
  .ge-canvas.ge-layout-xl .col-lg-1 {
3136
3443
  flex: 0 0 auto;
3137
3444
  width: 8.33333333%;
@@ -3225,6 +3532,15 @@
3225
3532
  .ge-canvas.ge-layout-xl .offset-lg-11 {
3226
3533
  margin-left: 91.66666667%;
3227
3534
  }
3535
+ .ge-canvas.ge-layout-xl .col-xl {
3536
+ flex: 1 0 0%;
3537
+ max-width: 100%;
3538
+ }
3539
+ .ge-canvas.ge-layout-xl .col-xl-auto {
3540
+ flex: 0 0 auto;
3541
+ width: auto;
3542
+ max-width: 100%;
3543
+ }
3228
3544
  .ge-canvas.ge-layout-xl .col-xl-1 {
3229
3545
  flex: 0 0 auto;
3230
3546
  width: 8.33333333%;
@@ -3335,6 +3651,15 @@
3335
3651
  /* this tier applies at the active one, so it is written by the pass below */
3336
3652
  /* this tier applies at the active one, so it is written by the pass below */
3337
3653
  }
3654
+ .ge-canvas.ge-layout-xxl .col {
3655
+ flex: 1 0 0%;
3656
+ max-width: 100%;
3657
+ }
3658
+ .ge-canvas.ge-layout-xxl .col-auto {
3659
+ flex: 0 0 auto;
3660
+ width: auto;
3661
+ max-width: 100%;
3662
+ }
3338
3663
  .ge-canvas.ge-layout-xxl .col-1 {
3339
3664
  flex: 0 0 auto;
3340
3665
  width: 8.33333333%;
@@ -3428,6 +3753,15 @@
3428
3753
  .ge-canvas.ge-layout-xxl .offset-11 {
3429
3754
  margin-left: 91.66666667%;
3430
3755
  }
3756
+ .ge-canvas.ge-layout-xxl .col-sm {
3757
+ flex: 1 0 0%;
3758
+ max-width: 100%;
3759
+ }
3760
+ .ge-canvas.ge-layout-xxl .col-sm-auto {
3761
+ flex: 0 0 auto;
3762
+ width: auto;
3763
+ max-width: 100%;
3764
+ }
3431
3765
  .ge-canvas.ge-layout-xxl .col-sm-1 {
3432
3766
  flex: 0 0 auto;
3433
3767
  width: 8.33333333%;
@@ -3521,6 +3855,15 @@
3521
3855
  .ge-canvas.ge-layout-xxl .offset-sm-11 {
3522
3856
  margin-left: 91.66666667%;
3523
3857
  }
3858
+ .ge-canvas.ge-layout-xxl .col-md {
3859
+ flex: 1 0 0%;
3860
+ max-width: 100%;
3861
+ }
3862
+ .ge-canvas.ge-layout-xxl .col-md-auto {
3863
+ flex: 0 0 auto;
3864
+ width: auto;
3865
+ max-width: 100%;
3866
+ }
3524
3867
  .ge-canvas.ge-layout-xxl .col-md-1 {
3525
3868
  flex: 0 0 auto;
3526
3869
  width: 8.33333333%;
@@ -3614,6 +3957,15 @@
3614
3957
  .ge-canvas.ge-layout-xxl .offset-md-11 {
3615
3958
  margin-left: 91.66666667%;
3616
3959
  }
3960
+ .ge-canvas.ge-layout-xxl .col-lg {
3961
+ flex: 1 0 0%;
3962
+ max-width: 100%;
3963
+ }
3964
+ .ge-canvas.ge-layout-xxl .col-lg-auto {
3965
+ flex: 0 0 auto;
3966
+ width: auto;
3967
+ max-width: 100%;
3968
+ }
3617
3969
  .ge-canvas.ge-layout-xxl .col-lg-1 {
3618
3970
  flex: 0 0 auto;
3619
3971
  width: 8.33333333%;
@@ -3707,6 +4059,15 @@
3707
4059
  .ge-canvas.ge-layout-xxl .offset-lg-11 {
3708
4060
  margin-left: 91.66666667%;
3709
4061
  }
4062
+ .ge-canvas.ge-layout-xxl .col-xl {
4063
+ flex: 1 0 0%;
4064
+ max-width: 100%;
4065
+ }
4066
+ .ge-canvas.ge-layout-xxl .col-xl-auto {
4067
+ flex: 0 0 auto;
4068
+ width: auto;
4069
+ max-width: 100%;
4070
+ }
3710
4071
  .ge-canvas.ge-layout-xxl .col-xl-1 {
3711
4072
  flex: 0 0 auto;
3712
4073
  width: 8.33333333%;
@@ -3800,6 +4161,15 @@
3800
4161
  .ge-canvas.ge-layout-xxl .offset-xl-11 {
3801
4162
  margin-left: 91.66666667%;
3802
4163
  }
4164
+ .ge-canvas.ge-layout-xxl .col-xxl {
4165
+ flex: 1 0 0%;
4166
+ max-width: 100%;
4167
+ }
4168
+ .ge-canvas.ge-layout-xxl .col-xxl-auto {
4169
+ flex: 0 0 auto;
4170
+ width: auto;
4171
+ max-width: 100%;
4172
+ }
3803
4173
  .ge-canvas.ge-layout-xxl .col-xxl-1 {
3804
4174
  flex: 0 0 auto;
3805
4175
  width: 8.33333333%;
@@ -3893,3 +4263,242 @@
3893
4263
  .ge-canvas.ge-layout-xxl .offset-xxl-11 {
3894
4264
  margin-left: 91.66666667%;
3895
4265
  }
4266
+ /*
4267
+ * The visibility plugin. A node Bootstrap would hide is kept on the canvas -
4268
+ * there would be nothing left to click to show it again - and shown the way
4269
+ * the view sees it instead. The selectors outweigh Bootstrap's d-* classes,
4270
+ * which are !important too.
4271
+ */
4272
+ .ge-canvas.ge-editing {
4273
+ /* The all view: hidden at some breakpoints, said in a corner */
4274
+ }
4275
+ .ge-canvas.ge-editing .ge-visibility {
4276
+ display: block !important;
4277
+ }
4278
+ .ge-canvas.ge-editing .row.ge-visibility {
4279
+ display: flex !important;
4280
+ }
4281
+ .ge-canvas.ge-editing .ge-hidden-in-view {
4282
+ opacity: 0.45;
4283
+ background-image: repeating-linear-gradient(-45deg, transparent 0, transparent 6px, rgba(0, 0, 0, 0.07) 6px, rgba(0, 0, 0, 0.07) 12px);
4284
+ }
4285
+ .ge-canvas.ge-editing [data-ge-hidden-in] {
4286
+ position: relative;
4287
+ }
4288
+ .ge-canvas.ge-editing [data-ge-hidden-in]::after {
4289
+ content: attr(data-ge-hidden-in);
4290
+ position: absolute;
4291
+ right: 2px;
4292
+ bottom: 2px;
4293
+ z-index: 1;
4294
+ padding: 0 4px;
4295
+ border-radius: 3px;
4296
+ background: rgba(0, 0, 0, 0.6);
4297
+ color: #fff;
4298
+ font-size: 10px;
4299
+ line-height: 16px;
4300
+ pointer-events: none;
4301
+ }
4302
+ /* The order plugin: a column ordered by class in this view says where */
4303
+ .ge-canvas.ge-editing .column[data-ge-order]::before {
4304
+ content: attr(data-ge-order);
4305
+ position: absolute;
4306
+ left: 2px;
4307
+ bottom: 2px;
4308
+ z-index: 1;
4309
+ padding: 0 4px;
4310
+ border-radius: 3px;
4311
+ background: rgba(23, 138, 204, 0.85);
4312
+ color: #fff;
4313
+ font-size: 10px;
4314
+ line-height: 16px;
4315
+ pointer-events: none;
4316
+ }
4317
+ /*
4318
+ * The gutters plugin. A row with gutter classes is drawn with its real
4319
+ * gutters rather than the editor's frame: each column padded by half the
4320
+ * horizontal gutter, and the vertical gutter above each column. Bootstrap
4321
+ * takes the first line's back with a negative top margin on the row, which
4322
+ * here would pull it over the row above, so the row's drawer takes it back
4323
+ * instead and the gap shows between lines of columns only.
4324
+ */
4325
+ .ge-canvas.ge-editing .row.ge-gutters {
4326
+ margin-top: 0;
4327
+ }
4328
+ .ge-canvas.ge-editing .row.ge-gutters > .ge-tools-drawer {
4329
+ margin-top: 0;
4330
+ margin-bottom: calc(5px - var(--bs-gutter-y));
4331
+ /* Bootstrap pads every child of a row by half its gutter, the drawer
4332
+ too; it keeps the padding a row with no gutter class gives it */
4333
+ padding-left: 0.75rem;
4334
+ padding-right: 0.75rem;
4335
+ }
4336
+ .ge-canvas.ge-editing .row.ge-gutters > .column {
4337
+ padding-left: calc(var(--bs-gutter-x) * 0.5);
4338
+ padding-right: calc(var(--bs-gutter-x) * 0.5);
4339
+ }
4340
+ .ge-canvas.ge-editing .row.ge-gutters > .column > .ge-tools-drawer {
4341
+ margin-left: calc(var(--bs-gutter-x) * -0.5);
4342
+ margin-right: calc(var(--bs-gutter-x) * -0.5);
4343
+ width: calc(100% + var(--bs-gutter-x));
4344
+ }
4345
+ /* A row whose row-cols sizes its columns in this view says how many */
4346
+ .ge-canvas.ge-editing .row[data-ge-row-cols] {
4347
+ position: relative;
4348
+ }
4349
+ .ge-canvas.ge-editing .row[data-ge-row-cols]::before {
4350
+ content: attr(data-ge-row-cols);
4351
+ position: absolute;
4352
+ left: 2px;
4353
+ bottom: 2px;
4354
+ z-index: 1;
4355
+ padding: 0 4px;
4356
+ border-radius: 3px;
4357
+ background: rgba(0, 0, 0, 0.55);
4358
+ color: #fff;
4359
+ font-size: 10px;
4360
+ line-height: 16px;
4361
+ pointer-events: none;
4362
+ }
4363
+ /*
4364
+ * The sections plugin: Bootstrap's containers on the canvas. A section is
4365
+ * framed while editing, and in a breakpoint view each container class gets
4366
+ * the max-width it has at that breakpoint - Bootstrap sets it for the
4367
+ * window, and the window is not what a breakpoint view narrows.
4368
+ */
4369
+ .ge-canvas.ge-editing > .ge-section {
4370
+ border: 1px dashed #8a6d3b;
4371
+ margin-bottom: 5px;
4372
+ padding-bottom: 5px;
4373
+ }
4374
+ .ge-canvas.ge-editing > .ge-section > .ge-section-drawer {
4375
+ background: rgba(138, 109, 59, 0.15);
4376
+ margin-left: 0;
4377
+ margin-right: 0;
4378
+ width: 100%;
4379
+ }
4380
+ .ge-canvas.ge-editing > .ge-section > .ge-section-drawer > a {
4381
+ color: #785f33;
4382
+ }
4383
+ /* The width field, in the section's settings panel beside id and classes */
4384
+ .ge-canvas.ge-editing .ge-details .ge-section-width {
4385
+ display: inline-flex;
4386
+ align-items: center;
4387
+ gap: 4px;
4388
+ margin: 0;
4389
+ font-size: 11px;
4390
+ }
4391
+ .ge-canvas.ge-editing .ge-details .ge-section-width select {
4392
+ border: 1px solid #7F7F7F;
4393
+ border-radius: 4px;
4394
+ font-size: 11px;
4395
+ padding: 1px 2px;
4396
+ }
4397
+ .ge-canvas.ge-layout-xs > .container {
4398
+ max-width: 100%;
4399
+ }
4400
+ .ge-canvas.ge-layout-xs > .container-sm {
4401
+ max-width: 100%;
4402
+ }
4403
+ .ge-canvas.ge-layout-xs > .container-md {
4404
+ max-width: 100%;
4405
+ }
4406
+ .ge-canvas.ge-layout-xs > .container-lg {
4407
+ max-width: 100%;
4408
+ }
4409
+ .ge-canvas.ge-layout-xs > .container-xl {
4410
+ max-width: 100%;
4411
+ }
4412
+ .ge-canvas.ge-layout-xs > .container-xxl {
4413
+ max-width: 100%;
4414
+ }
4415
+ .ge-canvas.ge-layout-sm > .container {
4416
+ max-width: 540px;
4417
+ }
4418
+ .ge-canvas.ge-layout-sm > .container-sm {
4419
+ max-width: 540px;
4420
+ }
4421
+ .ge-canvas.ge-layout-sm > .container-md {
4422
+ max-width: 100%;
4423
+ }
4424
+ .ge-canvas.ge-layout-sm > .container-lg {
4425
+ max-width: 100%;
4426
+ }
4427
+ .ge-canvas.ge-layout-sm > .container-xl {
4428
+ max-width: 100%;
4429
+ }
4430
+ .ge-canvas.ge-layout-sm > .container-xxl {
4431
+ max-width: 100%;
4432
+ }
4433
+ .ge-canvas.ge-layout-md > .container {
4434
+ max-width: 720px;
4435
+ }
4436
+ .ge-canvas.ge-layout-md > .container-sm {
4437
+ max-width: 720px;
4438
+ }
4439
+ .ge-canvas.ge-layout-md > .container-md {
4440
+ max-width: 720px;
4441
+ }
4442
+ .ge-canvas.ge-layout-md > .container-lg {
4443
+ max-width: 100%;
4444
+ }
4445
+ .ge-canvas.ge-layout-md > .container-xl {
4446
+ max-width: 100%;
4447
+ }
4448
+ .ge-canvas.ge-layout-md > .container-xxl {
4449
+ max-width: 100%;
4450
+ }
4451
+ .ge-canvas.ge-layout-lg > .container {
4452
+ max-width: 960px;
4453
+ }
4454
+ .ge-canvas.ge-layout-lg > .container-sm {
4455
+ max-width: 960px;
4456
+ }
4457
+ .ge-canvas.ge-layout-lg > .container-md {
4458
+ max-width: 960px;
4459
+ }
4460
+ .ge-canvas.ge-layout-lg > .container-lg {
4461
+ max-width: 960px;
4462
+ }
4463
+ .ge-canvas.ge-layout-lg > .container-xl {
4464
+ max-width: 100%;
4465
+ }
4466
+ .ge-canvas.ge-layout-lg > .container-xxl {
4467
+ max-width: 100%;
4468
+ }
4469
+ .ge-canvas.ge-layout-xl > .container {
4470
+ max-width: 1140px;
4471
+ }
4472
+ .ge-canvas.ge-layout-xl > .container-sm {
4473
+ max-width: 1140px;
4474
+ }
4475
+ .ge-canvas.ge-layout-xl > .container-md {
4476
+ max-width: 1140px;
4477
+ }
4478
+ .ge-canvas.ge-layout-xl > .container-lg {
4479
+ max-width: 1140px;
4480
+ }
4481
+ .ge-canvas.ge-layout-xl > .container-xl {
4482
+ max-width: 1140px;
4483
+ }
4484
+ .ge-canvas.ge-layout-xl > .container-xxl {
4485
+ max-width: 100%;
4486
+ }
4487
+ .ge-canvas.ge-layout-xxl > .container {
4488
+ max-width: 1320px;
4489
+ }
4490
+ .ge-canvas.ge-layout-xxl > .container-sm {
4491
+ max-width: 1320px;
4492
+ }
4493
+ .ge-canvas.ge-layout-xxl > .container-md {
4494
+ max-width: 1320px;
4495
+ }
4496
+ .ge-canvas.ge-layout-xxl > .container-lg {
4497
+ max-width: 1320px;
4498
+ }
4499
+ .ge-canvas.ge-layout-xxl > .container-xl {
4500
+ max-width: 1320px;
4501
+ }
4502
+ .ge-canvas.ge-layout-xxl > .container-xxl {
4503
+ max-width: 1320px;
4504
+ }