From e142d2cc8178e2303fd3b25ca7c7f4729ff4d87f Mon Sep 17 00:00:00 2001
From: Sam Rose <hello@samwho.dev>
Date: Tue, 11 Mar 2025 17:08:16 +0000
Subject: [PATCH] Don't show row test data selector outside of test modal.

---
 .../SetupPanel/AutomationBlockSetup.svelte    | 93 ++++++++++---------
 1 file changed, 50 insertions(+), 43 deletions(-)

diff --git a/packages/builder/src/components/automation/SetupPanel/AutomationBlockSetup.svelte b/packages/builder/src/components/automation/SetupPanel/AutomationBlockSetup.svelte
index 488dd89391..9a1eac57d5 100644
--- a/packages/builder/src/components/automation/SetupPanel/AutomationBlockSetup.svelte
+++ b/packages/builder/src/components/automation/SetupPanel/AutomationBlockSetup.svelte
@@ -387,6 +387,55 @@
         ]
       }
 
+      const getTestDataSelector = () => {
+        if (!isTestModal) {
+          return []
+        }
+        return [{
+          type: CoreSelect,
+          title: "Row",
+          props: {
+            disabled: !table,
+            placeholder: "Select a row",
+            options: fetchedRows,
+            loading: fetchLoading,
+            value: selectedRow,
+            autocomplete: true,
+            filter: false,
+            getOptionLabel: row => row?.[primaryDisplay] || "",
+            compare: (a, b) => a?.[primaryDisplay] === b?.[primaryDisplay],
+            onChange: e => {
+              if (isTestModal) {
+                onChange({
+                  id: e.detail?._id,
+                  revision: e.detail?._rev,
+                  row: e.detail,
+                  oldRow: e.detail,
+                  meta: {
+                    fields: inputData["meta"]?.fields || {},
+                    oldFields: e.detail?.meta?.fields || {},
+                  },
+                })
+              }
+            },
+          },
+        },
+        {
+          type: InfoDisplay,
+          props: {
+            warning: true,
+            icon: "AlertCircleFilled",
+            body: `Be careful when testing this automation because your data may be modified or deleted.`,
+          },
+        },
+        {
+          type: Divider,
+          props: {
+            noMargin: true,
+          },
+        }]
+      }
+
       stepLayouts[block.stepId] = {
         row: {
           schema: schema["row"],
@@ -413,49 +462,7 @@
                 disabled: isTestModal,
               },
             },
-            {
-              type: CoreSelect,
-              title: "Row",
-              props: {
-                disabled: !table,
-                placeholder: "Select a row",
-                options: fetchedRows,
-                loading: fetchLoading,
-                value: selectedRow,
-                autocomplete: true,
-                filter: false,
-                getOptionLabel: row => row?.[primaryDisplay] || "",
-                compare: (a, b) => a?.[primaryDisplay] === b?.[primaryDisplay],
-                onChange: e => {
-                  if (isTestModal) {
-                    onChange({
-                      id: e.detail?._id,
-                      revision: e.detail?._rev,
-                      row: e.detail,
-                      oldRow: e.detail,
-                      meta: {
-                        fields: inputData["meta"]?.fields || {},
-                        oldFields: e.detail?.meta?.fields || {},
-                      },
-                    })
-                  }
-                },
-              },
-            },
-            {
-              type: InfoDisplay,
-              props: {
-                warning: true,
-                icon: "AlertCircleFilled",
-                body: `Be careful when testing this automation because your data may be modified or deleted.`,
-              },
-            },
-            {
-              type: Divider,
-              props: {
-                noMargin: true,
-              },
-            },
+            ...getTestDataSelector(),
             ...getIdConfig(),
             ...getRevConfig(),
             ...getRowTypeConfig(),