github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/ui/app/components/das/recommendation-card.hbs (about)

     1  {{#if this.interstitialComponent}}
     2    <section class="das-interstitial" style={{this.interstitialStyle}}>
     3      {{component (concat 'das/' this.interstitialComponent) proceed=this.proceedPromiseResolve error=this.error}}
     4    </section>
     5  {{else if @summary.taskGroup}}
     6    <section
     7      ...attributes
     8      data-test-task-group-recommendations
     9      class='recommendation-card'
    10      {{did-insert this.cardInserted}}
    11    >
    12  
    13      <h2 class="top overview inner-container">Resource Recommendation</h2>
    14  
    15      <header class="overview inner-container">
    16        <h3 class="slug">
    17          <span class="job" data-test-job-name>{{@summary.taskGroup.job.name}}</span>
    18          <span class="group" data-test-task-group-name>{{@summary.taskGroup.name}}</span>
    19        </h3>
    20        <h4 class="namespace">
    21          <span class="namespace-label">Namespace:</span> <span data-test-namespace>{{@summary.jobNamespace}}</span>
    22        </h4>
    23      </header>
    24  
    25      <section class="diffs overview inner-container">
    26        <Das::DiffsTable
    27          data-test-group-totals
    28          @model={{@summary.taskGroup}}
    29          @recommendations={{@summary.recommendations}}
    30          @excludedRecommendations={{@summary.excludedRecommendations}}
    31        />
    32      </section>
    33  
    34      <section class="narrative overview inner-container">
    35        <p data-test-narrative>{{this.narrative}}</p>
    36      </section>
    37  
    38      <section class="main overview inner-container task-toggles">
    39        <table data-test-toggles-table>
    40          <thead data-test-tasks-head>
    41            <tr>
    42              {{#if this.showToggleAllToggles}}
    43                <th>Task</th>
    44                <th class="toggle-all">Toggle All</th>
    45                <th class="toggle-cell">
    46                  <Toggle
    47                    data-test-cpu-toggle
    48                    @isActive={{and this.allCpuToggleActive (not this.allCpuToggleDisabled)}}
    49                    @isDisabled={{this.allCpuToggleDisabled}}
    50                    @onToggle={{action this.toggleAllRecommendationsForResource 'CPU'}}
    51                    title='Toggle CPU recommendations for all tasks'
    52                  >
    53                    <div class="label-wrapper">CPU</div>
    54                  </Toggle>
    55                </th>
    56                <th class="toggle-cell">
    57                  <Toggle
    58                    data-test-memory-toggle
    59                    @isActive={{and this.allMemoryToggleActive (not this.allMemoryToggleDisabled)}}
    60                    @isDisabled={{this.allMemoryToggleDisabled}}
    61                    @onToggle={{action this.toggleAllRecommendationsForResource 'MemoryMB'}}
    62                    title='Toggle memory recommendations for all tasks'
    63                  >
    64                    <div class="label-wrapper">Mem</div>
    65                  </Toggle>
    66                </th>
    67              {{else}}
    68                <th colspan="2">Task</th>
    69                <th class="toggle-cell">CPU</th>
    70                <th class="toggle-cell">Mem</th>
    71              {{/if}}
    72            </tr>
    73          </thead>
    74          <tbody>
    75            {{#each this.taskToggleRows key="task.name" as |taskToggleRow index|}}
    76              <Das::TaskRow
    77                @task={{taskToggleRow.task}}
    78                @active={{eq this.activeTaskToggleRowIndex index}}
    79                @cpu={{taskToggleRow.cpu}}
    80                @memory={{taskToggleRow.memory}}
    81                @onClick={{action (mut this.activeTaskToggleRowIndex) index}}
    82                @toggleRecommendation={{@summary.toggleRecommendation}}
    83              />
    84            {{/each}}
    85          </tbody>
    86        </table>
    87      </section>
    88  
    89      <section class="actions overview inner-container">
    90        <button class='button is-primary' type='button' disabled={{this.cannotAccept}} data-test-accept {{on "click" this.accept}}>Accept</button>
    91        <button class='button is-light' type='button' data-test-dismiss {{on "click" this.dismiss}}>Dismiss</button>
    92      </section>
    93  
    94      <section class="active-task-group" data-test-active-task>
    95        <section class="top active-task inner-container">
    96          <CopyButton data-test-copy-button @clipboardText={{this.copyButtonLink}}>
    97            {{@summary.taskGroup.job.name}}
    98            /
    99            {{@summary.taskGroup.name}}
   100          </CopyButton>
   101  
   102          {{#if @onCollapse}}
   103            <button
   104              data-test-accordion-toggle
   105              class="button is-light is-compact pull-right accordion-toggle"
   106              {{on "click" @onCollapse}}
   107              type="button">
   108              Collapse
   109            </button>
   110          {{/if}}
   111        </section>
   112  
   113        <header class="active-task inner-container">
   114          <h3 data-test-task-name>{{this.activeTask.name}} task</h3>
   115        </header>
   116  
   117        <section class="diffs active-task inner-container">
   118          <Das::DiffsTable
   119            @model={{this.activeTask}}
   120            @recommendations={{this.activeTaskToggleRow.recommendations}}
   121            @excludedRecommendations={{@summary.excludedRecommendations}}
   122          />
   123        </section>
   124  
   125        <ul class="main active-task inner-container">
   126          {{#each this.activeTaskToggleRow.recommendations as |recommendation|}}
   127            <li data-test-recommendation>
   128              <Das::RecommendationChart
   129                data-test-chart-for={{recommendation.resource}}
   130                @resource={{recommendation.resource}}
   131                @currentValue={{recommendation.currentValue}}
   132                @recommendedValue={{recommendation.value}}
   133                @stats={{recommendation.stats}}
   134                @disabled={{includes recommendation @summary.excludedRecommendations}}
   135              />
   136            </li>
   137          {{/each}}
   138        </ul>
   139      </section>
   140  
   141    </section>
   142  {{/if}}