From 1e8a9410590bb30274b9348ac4e9021aeace5f4c Mon Sep 17 00:00:00 2001
From: Anton Kulyk <kuliks.anton@gmail.com>
Date: Thu, 1 Dec 2022 19:36:38 +0000
Subject: [PATCH] Remove `is_write` card property on the FE (#26879)

---
 frontend/src/metabase-lib/Question.ts              |  4 ++--
 frontend/src/metabase/entities/questions.js        |  1 -
 frontend/src/metabase/entities/questions/forms.js  |  6 ------
 .../query_builder/components/QuestionActions.tsx   | 14 +-------------
 4 files changed, 3 insertions(+), 22 deletions(-)

diff --git a/frontend/src/metabase-lib/Question.ts b/frontend/src/metabase-lib/Question.ts
index 565cdfaf7b9..fcac701b5ba 100644
--- a/frontend/src/metabase-lib/Question.ts
+++ b/frontend/src/metabase-lib/Question.ts
@@ -272,7 +272,7 @@ class QuestionInner {
   }
 
   isAction() {
-    return this._card && this._card.is_write;
+    return false;
   }
 
   setPersisted(isPersisted) {
@@ -290,7 +290,7 @@ class QuestionInner {
   }
 
   setIsAction(isAction) {
-    return this.setCard(assoc(this.card(), "is_write", isAction));
+    return this.card();
   }
 
   // locking the display prevents auto-selection
diff --git a/frontend/src/metabase/entities/questions.js b/frontend/src/metabase/entities/questions.js
index 0941d500b8a..6d756460139 100644
--- a/frontend/src/metabase/entities/questions.js
+++ b/frontend/src/metabase/entities/questions.js
@@ -113,7 +113,6 @@ const Questions = createEntity({
     "collection_position",
     "collection_preview",
     "result_metadata",
-    "is_write",
   ],
 
   getAnalyticsMetadata([object], { action }, getState) {
diff --git a/frontend/src/metabase/entities/questions/forms.js b/frontend/src/metabase/entities/questions/forms.js
index 12157ec36fa..748952f403b 100644
--- a/frontend/src/metabase/entities/questions/forms.js
+++ b/frontend/src/metabase/entities/questions/forms.js
@@ -13,12 +13,6 @@ const FORM_FIELDS = [
     type: "text",
     placeholder: t`It's optional but oh, so helpful`,
   },
-  {
-    name: "is_write",
-    title: t`Is Write`,
-    description: t`Write questions can be used for experimental actions.`,
-    type: "boolean",
-  },
 ];
 
 export default {
diff --git a/frontend/src/metabase/query_builder/components/QuestionActions.tsx b/frontend/src/metabase/query_builder/components/QuestionActions.tsx
index 334924efe5b..3931c051785 100644
--- a/frontend/src/metabase/query_builder/components/QuestionActions.tsx
+++ b/frontend/src/metabase/query_builder/components/QuestionActions.tsx
@@ -73,8 +73,6 @@ const QuestionActions = ({
   question,
   setQueryBuilderMode,
   turnDatasetIntoQuestion,
-  turnQuestionIntoAction,
-  turnActionIntoQuestion,
   onInfoClick,
   onModelPersistenceChange,
   isModerator,
@@ -86,7 +84,6 @@ const QuestionActions = ({
     ? color("brand")
     : undefined;
 
-  const isAction = question.isAction();
   const isDataset = question.isDataset();
   const canWrite = question.canWrite();
   const isSaved = question.isSaved();
@@ -169,7 +166,7 @@ const QuestionActions = ({
       action: () => onOpenModal(MODAL_TYPES.MOVE),
       testId: MOVE_TESTID,
     });
-    if (!isDataset && !isAction) {
+    if (!isDataset) {
       extraButtons.push({
         title: t`Turn into a model`,
         icon: "model",
@@ -184,15 +181,6 @@ const QuestionActions = ({
         action: turnDatasetIntoQuestion,
       });
     }
-    if (isSaved && isNative && !isDataset) {
-      extraButtons.push({
-        title: isAction
-          ? t`Turn back to saved question`
-          : t`Turn into an action`,
-        icon: "bolt",
-        action: isAction ? turnActionIntoQuestion : turnQuestionIntoAction,
-      });
-    }
   }
 
   if (!question.query().readOnly()) {
-- 
GitLab