+ (direct descendants only)
+
+
…wide / scrollable content…
+
+
+*/
+@utility st-full-bleed-content {
+ @apply -mx-2 sm:-mx-6 md:-mx-12 min-w-0;
+
+ & > * {
+ @apply px-2 sm:px-6 md:px-12 min-w-0 pb-6;
+ }
+}
+.content-card:has(.st-full-bleed-content) {
+ min-width: 0;
+ overflow-x: clip;
+ padding-bottom: 0;
+}
+[data-max-width-wrapper]:has(.st-full-bleed-content) {
+ max-width: none !important;
+}
+
+@utility max-h-screen-px {
+ max-height: calc(100vh - 1px) !important;
+}
+
/* UTILITIES / TEXT
=================================================== */
/* Prefix things with `st-text-` (st for Statamic) because `text-` is a Tailwind prefix */
diff --git a/resources/css/cp.css b/resources/css/cp.css
index cb32123428f..d3aef6130c6 100644
--- a/resources/css/cp.css
+++ b/resources/css/cp.css
@@ -18,6 +18,7 @@
@import './components/notifications.css';
@import './components/page-tree.css';
@import './components/forms.css';
+@import './components/forms/logic-tree.css';
@import './components/pagination.css';
@import './components/popover.css';
@import './components/preview.css';
diff --git a/resources/js/components/forms/builder/ImportField.vue b/resources/js/components/forms/builder/ImportField.vue
index a749c8795a2..b7d5c81fb15 100644
--- a/resources/js/components/forms/builder/ImportField.vue
+++ b/resources/js/components/forms/builder/ImportField.vue
@@ -4,7 +4,6 @@ import { computed } from 'vue';
import { usePage } from '@inertiajs/vue3';
import FieldNumber from '@/components/forms/FieldNumber.vue';
import { injectBuilderContext, InspectorType } from '@/pages/forms/Builder.vue';
-import { categoryColorClasses } from './categories';
import { __ } from '@/bootstrap/globals';
const props = defineProps<{
@@ -23,10 +22,11 @@ const fieldsets = Object.values(usePage().props.fieldsets);
const isInspecting = computed(() => inspectorType.value === InspectorType.FieldsetImport && inspecting.value?._id === props.field._id);
+const fieldset = computed(() => fieldsets.find((fs) => fs.handle === props.field.fieldset));
+
const fieldsetFields = computed(() => {
- const fieldset = fieldsets.find((fs) => fs.handle === props.field.fieldset);
- if (!fieldset) return [];
- return fieldset.fields.filter((f) => f.type !== 'import');
+ if (!fieldset.value) return [];
+ return fieldset.value.fields.filter((f) => f.type !== 'import');
});
const inspectFieldsetImport = () => inspect(InspectorType.FieldsetImport, props.field);
@@ -72,14 +72,19 @@ const errorMessage = computed(() => {