@orion-studios/payload-studio 0.6.0-beta.140 → 0.6.0-beta.142
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.
|
@@ -1125,7 +1125,8 @@ var registerProjectDynamicComponents = (editor, adapter) => {
|
|
|
1125
1125
|
name: `data-orion-${trait.name.replace(/[A-Z]/g, (char) => `-${char.toLowerCase()}`)}`,
|
|
1126
1126
|
options: trait.options,
|
|
1127
1127
|
placeholder: trait.placeholder,
|
|
1128
|
-
type: trait.type
|
|
1128
|
+
type: trait.type,
|
|
1129
|
+
...trait.type === "checkbox" ? { valueFalse: "false", valueTrue: "true" } : {}
|
|
1129
1130
|
}))
|
|
1130
1131
|
]
|
|
1131
1132
|
}
|
|
@@ -1405,10 +1406,89 @@ var decorateBuilderNumericSteppers = (root = document) => {
|
|
|
1405
1406
|
field.appendChild(stepper);
|
|
1406
1407
|
});
|
|
1407
1408
|
};
|
|
1409
|
+
var getStylePanelTabFields = (panel) => Array.from(
|
|
1410
|
+
panel.querySelectorAll(
|
|
1411
|
+
[
|
|
1412
|
+
'input:not([type="hidden"]):not([type="radio"]):not([disabled])',
|
|
1413
|
+
"select:not([disabled])",
|
|
1414
|
+
"textarea:not([disabled])"
|
|
1415
|
+
].join(",")
|
|
1416
|
+
)
|
|
1417
|
+
).filter((element) => element.tabIndex >= 0 && element.offsetParent !== null).sort((first, second) => {
|
|
1418
|
+
const firstRect = first.getBoundingClientRect();
|
|
1419
|
+
const secondRect = second.getBoundingClientRect();
|
|
1420
|
+
const rowDelta = firstRect.top - secondRect.top;
|
|
1421
|
+
if (Math.abs(rowDelta) > 4) {
|
|
1422
|
+
return rowDelta;
|
|
1423
|
+
}
|
|
1424
|
+
return firstRect.left - secondRect.left;
|
|
1425
|
+
});
|
|
1426
|
+
var decorateStylePanelTabOrder = () => {
|
|
1427
|
+
const panel = document.getElementById("orion-builder-v2-styles");
|
|
1428
|
+
if (!panel) {
|
|
1429
|
+
return;
|
|
1430
|
+
}
|
|
1431
|
+
panel.querySelectorAll('input[type="radio"]').forEach((input) => {
|
|
1432
|
+
input.tabIndex = -1;
|
|
1433
|
+
});
|
|
1434
|
+
if (panel.dataset.orionTabOrderBound === "true") {
|
|
1435
|
+
return;
|
|
1436
|
+
}
|
|
1437
|
+
panel.dataset.orionTabOrderBound = "true";
|
|
1438
|
+
panel.addEventListener(
|
|
1439
|
+
"keydown",
|
|
1440
|
+
(event) => {
|
|
1441
|
+
if (event.key !== "Tab" || event.defaultPrevented) {
|
|
1442
|
+
return;
|
|
1443
|
+
}
|
|
1444
|
+
const activeElement = document.activeElement;
|
|
1445
|
+
if (!activeElement || !panel.contains(activeElement)) {
|
|
1446
|
+
return;
|
|
1447
|
+
}
|
|
1448
|
+
const fields = getStylePanelTabFields(panel);
|
|
1449
|
+
const currentIndex = fields.indexOf(activeElement);
|
|
1450
|
+
if (currentIndex < 0) {
|
|
1451
|
+
return;
|
|
1452
|
+
}
|
|
1453
|
+
const nextIndex = event.shiftKey ? currentIndex - 1 : currentIndex + 1;
|
|
1454
|
+
const nextField = fields[nextIndex];
|
|
1455
|
+
if (!nextField) {
|
|
1456
|
+
return;
|
|
1457
|
+
}
|
|
1458
|
+
event.preventDefault();
|
|
1459
|
+
nextField.focus();
|
|
1460
|
+
if (nextField instanceof HTMLInputElement || nextField instanceof HTMLTextAreaElement) {
|
|
1461
|
+
nextField.select?.();
|
|
1462
|
+
}
|
|
1463
|
+
},
|
|
1464
|
+
true
|
|
1465
|
+
);
|
|
1466
|
+
};
|
|
1467
|
+
var decorateBuilderTraitToggles = () => {
|
|
1468
|
+
const traitsRoot = document.getElementById("orion-builder-v2-traits");
|
|
1469
|
+
if (!traitsRoot) {
|
|
1470
|
+
return;
|
|
1471
|
+
}
|
|
1472
|
+
traitsRoot.querySelectorAll('input[type="checkbox"]').forEach((input) => {
|
|
1473
|
+
const trait = input.closest(".gjs-trt-trait");
|
|
1474
|
+
trait?.classList.add("has-orion-builder-toggle-trait");
|
|
1475
|
+
input.setAttribute("role", "switch");
|
|
1476
|
+
input.setAttribute("aria-checked", input.checked ? "true" : "false");
|
|
1477
|
+
if (input.dataset.orionToggleBound === "true") {
|
|
1478
|
+
return;
|
|
1479
|
+
}
|
|
1480
|
+
input.dataset.orionToggleBound = "true";
|
|
1481
|
+
input.addEventListener("change", () => {
|
|
1482
|
+
input.setAttribute("aria-checked", input.checked ? "true" : "false");
|
|
1483
|
+
});
|
|
1484
|
+
});
|
|
1485
|
+
};
|
|
1408
1486
|
var decorateBuilderControls = (root = document) => {
|
|
1409
1487
|
decorateBuilderSettingHelp(root);
|
|
1410
1488
|
decorateBuilderColorEyeDroppers(root);
|
|
1411
1489
|
decorateBuilderNumericSteppers(root);
|
|
1490
|
+
decorateStylePanelTabOrder();
|
|
1491
|
+
decorateBuilderTraitToggles();
|
|
1412
1492
|
};
|
|
1413
1493
|
var closeBuilderHelpPopovers = (except) => {
|
|
1414
1494
|
document.querySelectorAll(".is-builder-help-open").forEach((element) => {
|
|
@@ -1001,7 +1001,8 @@ var registerProjectDynamicComponents = (editor, adapter) => {
|
|
|
1001
1001
|
name: `data-orion-${trait.name.replace(/[A-Z]/g, (char) => `-${char.toLowerCase()}`)}`,
|
|
1002
1002
|
options: trait.options,
|
|
1003
1003
|
placeholder: trait.placeholder,
|
|
1004
|
-
type: trait.type
|
|
1004
|
+
type: trait.type,
|
|
1005
|
+
...trait.type === "checkbox" ? { valueFalse: "false", valueTrue: "true" } : {}
|
|
1005
1006
|
}))
|
|
1006
1007
|
]
|
|
1007
1008
|
}
|
|
@@ -1281,10 +1282,89 @@ var decorateBuilderNumericSteppers = (root = document) => {
|
|
|
1281
1282
|
field.appendChild(stepper);
|
|
1282
1283
|
});
|
|
1283
1284
|
};
|
|
1285
|
+
var getStylePanelTabFields = (panel) => Array.from(
|
|
1286
|
+
panel.querySelectorAll(
|
|
1287
|
+
[
|
|
1288
|
+
'input:not([type="hidden"]):not([type="radio"]):not([disabled])',
|
|
1289
|
+
"select:not([disabled])",
|
|
1290
|
+
"textarea:not([disabled])"
|
|
1291
|
+
].join(",")
|
|
1292
|
+
)
|
|
1293
|
+
).filter((element) => element.tabIndex >= 0 && element.offsetParent !== null).sort((first, second) => {
|
|
1294
|
+
const firstRect = first.getBoundingClientRect();
|
|
1295
|
+
const secondRect = second.getBoundingClientRect();
|
|
1296
|
+
const rowDelta = firstRect.top - secondRect.top;
|
|
1297
|
+
if (Math.abs(rowDelta) > 4) {
|
|
1298
|
+
return rowDelta;
|
|
1299
|
+
}
|
|
1300
|
+
return firstRect.left - secondRect.left;
|
|
1301
|
+
});
|
|
1302
|
+
var decorateStylePanelTabOrder = () => {
|
|
1303
|
+
const panel = document.getElementById("orion-builder-v2-styles");
|
|
1304
|
+
if (!panel) {
|
|
1305
|
+
return;
|
|
1306
|
+
}
|
|
1307
|
+
panel.querySelectorAll('input[type="radio"]').forEach((input) => {
|
|
1308
|
+
input.tabIndex = -1;
|
|
1309
|
+
});
|
|
1310
|
+
if (panel.dataset.orionTabOrderBound === "true") {
|
|
1311
|
+
return;
|
|
1312
|
+
}
|
|
1313
|
+
panel.dataset.orionTabOrderBound = "true";
|
|
1314
|
+
panel.addEventListener(
|
|
1315
|
+
"keydown",
|
|
1316
|
+
(event) => {
|
|
1317
|
+
if (event.key !== "Tab" || event.defaultPrevented) {
|
|
1318
|
+
return;
|
|
1319
|
+
}
|
|
1320
|
+
const activeElement = document.activeElement;
|
|
1321
|
+
if (!activeElement || !panel.contains(activeElement)) {
|
|
1322
|
+
return;
|
|
1323
|
+
}
|
|
1324
|
+
const fields = getStylePanelTabFields(panel);
|
|
1325
|
+
const currentIndex = fields.indexOf(activeElement);
|
|
1326
|
+
if (currentIndex < 0) {
|
|
1327
|
+
return;
|
|
1328
|
+
}
|
|
1329
|
+
const nextIndex = event.shiftKey ? currentIndex - 1 : currentIndex + 1;
|
|
1330
|
+
const nextField = fields[nextIndex];
|
|
1331
|
+
if (!nextField) {
|
|
1332
|
+
return;
|
|
1333
|
+
}
|
|
1334
|
+
event.preventDefault();
|
|
1335
|
+
nextField.focus();
|
|
1336
|
+
if (nextField instanceof HTMLInputElement || nextField instanceof HTMLTextAreaElement) {
|
|
1337
|
+
nextField.select?.();
|
|
1338
|
+
}
|
|
1339
|
+
},
|
|
1340
|
+
true
|
|
1341
|
+
);
|
|
1342
|
+
};
|
|
1343
|
+
var decorateBuilderTraitToggles = () => {
|
|
1344
|
+
const traitsRoot = document.getElementById("orion-builder-v2-traits");
|
|
1345
|
+
if (!traitsRoot) {
|
|
1346
|
+
return;
|
|
1347
|
+
}
|
|
1348
|
+
traitsRoot.querySelectorAll('input[type="checkbox"]').forEach((input) => {
|
|
1349
|
+
const trait = input.closest(".gjs-trt-trait");
|
|
1350
|
+
trait?.classList.add("has-orion-builder-toggle-trait");
|
|
1351
|
+
input.setAttribute("role", "switch");
|
|
1352
|
+
input.setAttribute("aria-checked", input.checked ? "true" : "false");
|
|
1353
|
+
if (input.dataset.orionToggleBound === "true") {
|
|
1354
|
+
return;
|
|
1355
|
+
}
|
|
1356
|
+
input.dataset.orionToggleBound = "true";
|
|
1357
|
+
input.addEventListener("change", () => {
|
|
1358
|
+
input.setAttribute("aria-checked", input.checked ? "true" : "false");
|
|
1359
|
+
});
|
|
1360
|
+
});
|
|
1361
|
+
};
|
|
1284
1362
|
var decorateBuilderControls = (root = document) => {
|
|
1285
1363
|
decorateBuilderSettingHelp(root);
|
|
1286
1364
|
decorateBuilderColorEyeDroppers(root);
|
|
1287
1365
|
decorateBuilderNumericSteppers(root);
|
|
1366
|
+
decorateStylePanelTabOrder();
|
|
1367
|
+
decorateBuilderTraitToggles();
|
|
1288
1368
|
};
|
|
1289
1369
|
var closeBuilderHelpPopovers = (except) => {
|
|
1290
1370
|
document.querySelectorAll(".is-builder-help-open").forEach((element) => {
|
|
@@ -1180,6 +1180,79 @@
|
|
|
1180
1180
|
resize: vertical;
|
|
1181
1181
|
}
|
|
1182
1182
|
|
|
1183
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait {
|
|
1184
|
+
border: 1px solid #e4c6b3;
|
|
1185
|
+
border-radius: 8px;
|
|
1186
|
+
margin-bottom: 8px !important;
|
|
1187
|
+
min-height: 54px;
|
|
1188
|
+
padding: 10px 12px;
|
|
1189
|
+
}
|
|
1190
|
+
|
|
1191
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait .gjs-trt-trait__wrp {
|
|
1192
|
+
align-items: center !important;
|
|
1193
|
+
display: grid !important;
|
|
1194
|
+
gap: 12px !important;
|
|
1195
|
+
grid-template-columns: minmax(0, 1fr) auto !important;
|
|
1196
|
+
width: 100% !important;
|
|
1197
|
+
}
|
|
1198
|
+
|
|
1199
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait .gjs-label-wrp,
|
|
1200
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait .gjs-field-wrp,
|
|
1201
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait .gjs-trt-trait__cnt {
|
|
1202
|
+
display: block !important;
|
|
1203
|
+
margin: 0 !important;
|
|
1204
|
+
width: auto !important;
|
|
1205
|
+
}
|
|
1206
|
+
|
|
1207
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait .gjs-trt-trait__label,
|
|
1208
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait .gjs-label {
|
|
1209
|
+
margin: 0 !important;
|
|
1210
|
+
white-space: normal !important;
|
|
1211
|
+
}
|
|
1212
|
+
|
|
1213
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait .gjs-field {
|
|
1214
|
+
background: transparent !important;
|
|
1215
|
+
border: 0 !important;
|
|
1216
|
+
box-shadow: none !important;
|
|
1217
|
+
height: auto !important;
|
|
1218
|
+
min-height: 0 !important;
|
|
1219
|
+
overflow: visible !important;
|
|
1220
|
+
padding: 0 !important;
|
|
1221
|
+
width: auto !important;
|
|
1222
|
+
}
|
|
1223
|
+
|
|
1224
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait input[type='checkbox'] {
|
|
1225
|
+
appearance: none;
|
|
1226
|
+
background: radial-gradient(circle at 8px 50%, #ffffff 0 6px, transparent 6.5px), #f1e3d6;
|
|
1227
|
+
border: 1px solid #d6b7a1 !important;
|
|
1228
|
+
border-radius: 999px;
|
|
1229
|
+
box-shadow: none;
|
|
1230
|
+
box-sizing: border-box;
|
|
1231
|
+
cursor: pointer;
|
|
1232
|
+
display: block;
|
|
1233
|
+
height: 18px !important;
|
|
1234
|
+
margin: 0 !important;
|
|
1235
|
+
max-width: none !important;
|
|
1236
|
+
min-height: 0 !important;
|
|
1237
|
+
min-width: 0 !important;
|
|
1238
|
+
padding: 0 !important;
|
|
1239
|
+
transition:
|
|
1240
|
+
background-color 0.15s ease,
|
|
1241
|
+
border-color 0.15s ease,
|
|
1242
|
+
box-shadow 0.15s ease;
|
|
1243
|
+
width: 34px !important;
|
|
1244
|
+
}
|
|
1245
|
+
|
|
1246
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait input[type='checkbox']:checked {
|
|
1247
|
+
background: radial-gradient(circle at calc(100% - 8px) 50%, #ffffff 0 6px, transparent 6.5px), var(--builder-v2-accent);
|
|
1248
|
+
border-color: rgba(255, 255, 255, 0.72) !important;
|
|
1249
|
+
}
|
|
1250
|
+
|
|
1251
|
+
.orion-builder-v2-inspector #orion-builder-v2-traits .gjs-trt-trait.has-orion-builder-toggle-trait input[type='checkbox']:focus-visible {
|
|
1252
|
+
outline: 2px solid rgba(35, 54, 84, 0.32) !important;
|
|
1253
|
+
outline-offset: 3px;
|
|
1254
|
+
}
|
|
1255
|
+
|
|
1183
1256
|
.orion-builder-v2-editor .gjs-sm-sectors {
|
|
1184
1257
|
display: grid;
|
|
1185
1258
|
gap: 10px;
|
package/package.json
CHANGED