This is an automated email from the ASF dual-hosted git repository.

jscheffl pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 62bdf11fdc Hide logical date and run id in trigger UI form (#35284)
62bdf11fdc is described below

commit 62bdf11fdc49c501ccf5571ab765c51363fa1cc7
Author: Jens Scheffler <[email protected]>
AuthorDate: Wed Nov 8 23:29:03 2023 +0100

    Hide logical date and run id in trigger UI form (#35284)
    
    * Move Run ID and Logical Date into hidden section, layout fixes
    * Make DAG docs display per default in trigger DAG UI
    * Update UI Screenshot in docs
    * Add form elements to legacy form as well
    ---------
    
    Co-authored-by: Jens Scheffler 
<[email protected]>
---
 airflow/www/templates/airflow/trigger.html         |  54 +++++++++++++++------
 airflow/www/templates/appbuilder/dag_docs.html     |  12 ++---
 .../img/trigger-dag-tutorial-form.png              | Bin 219254 -> 247468 bytes
 3 files changed, 45 insertions(+), 21 deletions(-)

diff --git a/airflow/www/templates/airflow/trigger.html 
b/airflow/www/templates/airflow/trigger.html
index 67ca7060b3..cff3ea4de2 100644
--- a/airflow/www/templates/airflow/trigger.html
+++ b/airflow/www/templates/airflow/trigger.html
@@ -158,23 +158,11 @@
     Trigger DAG: <a href="{{ url_for('Airflow.'+ dag.get_default_view(), 
dag_id=dag.dag_id) }}">{{ dag.dag_id }}</a>
     <small class="text-muted">{{ dag.description[0:150] + '…' if 
dag.description and dag.description|length > 150 else 
dag.description|default('', true) }}</small>
   </h2>
-  {{ dag_docs(doc_md) }}
+  {{ dag_docs(doc_md, False) }}
   <form method="POST" id="trigger_form">
     <input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
     <input type="hidden" name="dag_id" value="{{ dag_id }}">
     <input type="hidden" name="origin" value="{{ origin }}">
-    <div class="form-group">
-      <label for="execution_date">Logical date</label>
-      <div class="input-group">
-        {{ form.execution_date(class_="form-control", disabled=False) }}
-      </div>
-    </div>
-    <div class="form-group row">
-      <div class="col-md-2">
-        <label for="run_id">Run id (Optional)</label>
-        <input type="text" class="form-control" placeholder="Run ID" 
name="run_id">
-      </div>
-    </div>
     {% if recent_confs|length > 0 %}
     <div class="form-group row">
       <div class="col-md-2">
@@ -243,12 +231,36 @@
           <div class="panel panel-default">
             <div class="panel-heading">
               <h4 class="panel-title">
-                <a class="accordion-toggle" data-toggle="collapse" 
data-parent="#accordion_json_conf" href="#accordion_json_conf_href" 
data-original-title="" title="" id="generated_json_toggle">Generated 
Configuration JSON<span class="caret"></span></a>
+                <a class="accordion-toggle" data-toggle="collapse" 
data-parent="#accordion_json_conf" href="#accordion_json_conf_href" 
data-original-title="" title="" id="generated_json_toggle">Generated 
Configuration JSON and Dagrun Options<span class="caret"></span></a>
               </h4>
             </div>
             <div id="accordion_json_conf_href" class="panel-collapse collapse">
               <div class="panel-body">
-                <textarea name="conf" id="json">{{ conf }}</textarea>
+                <table class="table table-hover table-bordered">
+                  <tbody>
+                    <tr>
+                      <td class="col-lg-2">
+                        <label for="execution_date" control-label="">Logical 
date:</label>
+                      </td>
+                      <td>
+                        {{ form.execution_date(class_="form-control", 
disabled=False) }}
+                      </td>
+                    </tr>
+                    <tr>
+                      <td class="col-lg-2">
+                        <label for="run_id" control-label="">Run id:</label>
+                      </td>
+                      <td>
+                        <input type="text" class="form-control" 
placeholder="Run id, optional - will be generated if not provided" 
name="run_id" id="run_id">
+                      </td>
+                    </tr>
+                    <tr>
+                      <td colspan="2">
+                        <textarea name="conf" id="json">{{ conf }}</textarea>
+                      </td>
+                    </tr>
+                  </tbody>
+                </table>
               </div>
             </div>
           </div>
@@ -256,6 +268,18 @@
       </div>
     </div>
     {%- else %}
+    <div class="form-group">
+      <label for="execution_date">Logical date</label>
+      <div class="input-group">
+        {{ form.execution_date(class_="form-control", disabled=False) }}
+      </div>
+    </div>
+    <div class="form-group row">
+      <div class="col-md-2">
+        <label for="run_id">Run id (Optional)</label>
+        <input type="text" class="form-control" placeholder="Run ID" 
name="run_id">
+      </div>
+    </div>
     <label for="conf">Configuration JSON (Optional, must be a dict 
object)</label>
     <textarea class="form-control" name="conf" id="json">{{ conf }}</textarea>
     {%- endif %}
diff --git a/airflow/www/templates/appbuilder/dag_docs.html 
b/airflow/www/templates/appbuilder/dag_docs.html
index 47d3a5ab9c..f64340f2a3 100644
--- a/airflow/www/templates/appbuilder/dag_docs.html
+++ b/airflow/www/templates/appbuilder/dag_docs.html
@@ -17,20 +17,20 @@
  under the License.
 #}
 
-{% macro dag_docs(doc_md) %}
+{% macro dag_docs(doc_md, folded=True) %}
   {% if doc_md is defined and doc_md is not none %}
     <div class="panel-group" id="accordion" role="tablist" 
aria-multiselectable="true" style="margin-top: 16px;">
-      <div class="panel panel-default">
+      <div class="panel panel-primary">
         <div class="panel-heading" role="tab" id="headingOne">
           <h4 class="panel-title">
-            <a role="button" data-toggle="collapse" data-parent="#accordion" 
href="#collapseOne" aria-expanded="true" aria-controls="collapseOne" 
class="accordion-toggle collapsed">
-              <span class="material-icons" 
aria-hidden="true">info_outline</span>
+            <a role="button" data-toggle="collapse" data-parent="#accordion" 
href="#collapseOne" aria-expanded="true" aria-controls="collapseOne"{% if 
folded %}  class="accordion-togglecollapsed{% endif %}">
+              {% if folded %}<span class="material-icons" 
aria-hidden="true">info_outline</span>{% endif %}
               DAG Docs
-              <span class="material-icons pull-right toggle-direction" 
aria-hidden="true">expand_less</span>
+              {% if folded %}<span class="material-icons pull-right 
toggle-direction" aria-hidden="true">expand_less</span>{% endif %}
             </a>
           </h4>
         </div>
-        <div id="collapseOne" class="panel-collapse collapse" role="tabpanel" 
aria-labelledby="headingOne">
+        <div id="collapseOne" class="panel-collapse{% if folded %} collapse{% 
endif %}" role="tabpanel" aria-labelledby="headingOne">
           <div class="panel-body">
             {{ doc_md }}
           </div>
diff --git a/docs/apache-airflow/img/trigger-dag-tutorial-form.png 
b/docs/apache-airflow/img/trigger-dag-tutorial-form.png
index 14d9ec55d8..4eb7f88663 100644
Binary files a/docs/apache-airflow/img/trigger-dag-tutorial-form.png and 
b/docs/apache-airflow/img/trigger-dag-tutorial-form.png differ

Reply via email to