<commit_before><section class="horizontal-form">
  <form>
    <div class="container-fluid">
      <div class="over-hr mb-20">
        <span>{{t 'machine.driverExoscale.accountSection'}}</span>
      </div>

      <div class="row {{if isStep1 'form-group'}}">
        <div class="col span-2 form-label">
          <label class="form-control-static">{{t 'machine.driverExoscale.apiKey.label'}}</label>
        </div>
        <div class="col span-10">
          {{#if isStep1}}
            {{input type="text" name="username" classNames="form-control" placeholder=(t 'machine.driverExoscale.apiKey.placeholder') value=exoscaleConfig.apiKey}}
          {{else}}
            <div class="form-control-static">{{exoscaleConfig.apiKey}}</div>
          {{/if}}
        </div>
      </div>
      <div class="row {{if isStep1 'form-group'}}">
        <div class="col span-2 form-label">
          <label class="form-control-static">{{t 'machine.driverExoscale.secretKey.label'}}</label>
        </div>
        <div class="col span-10">
          {{#if isStep1}}
            {{input type="password" name="password" classNames="form-control" placeholder=(t 'machine.driverExoscale.secretKey.placeholder') value=exoscaleConfig.apiSecretKey}}
          {{else}}
            <div class="form-control-static text-muted text-italic">{{t 'machine.driverExoscale.secretKey.provided'}}</div>
          {{/if}}
          {{#if isStep1}}
            <p class="help-block">{{t 'machine.driverExoscale.accountHelp'}}</p>
          {{/if}}
        </div>
      </div>
    </div>
    {{#if isStep1}}
      {{top-errors errors=errors}}

      <div class="footer-actions">
        <button {{action "exoscaleLogin"}} name="submit" class="btn bg-primary">{{t 'machine.driverExoscale.loginAction'}}</button>
<<<<<<< e6a8abc72a1caeac482b12c7513395985e02b1b5
        <button {{action "cancel"}} class="btn bg-transparent">{{t 'generic.cancel'}}</button>
=======
        <button {{action "cancel"}} class="btn btn-link">{{t 'generic.cancel'}}</button>
>>>>>>> bg btn
      </div>
    {{/if}}
  </form>
</section>

<section class="horizontal-form pt-0 {{unless isStep2 'hide'}}">
  <div class="text-center">
    <i class="icon icon-spinner icon-spin"></i> {{t 'machine.driverExoscale.loadingSecurity'}}
  </div>
</section>

<section class="horizontal-form pt-0 {{unless isGteStep3 'hide'}}">
  <div class="container-fluid">
    <div class="over-hr mt-20 mb-20">
      <span>{{t 'machine.driverExoscale.securityGroupSection'}}</span>
    </div>

    <div class="row {{if isStep3 'form-group'}}">
      <div class="col span-2 form-label">
        <label class="form-control-static">{{t 'machine.driverExoscale.securityGroup.label'}}</label>
      </div>
      <div class="col span-10">
        {{#if isStep3}}
          <div class="radio pt-10"><label>
            {{radio-button selection=whichSecurityGroup value="default"}}
            {{#if defaultSecurityGroup}}
              {{format-html-message 'machine.driverExoscale.securityGroup.defaultExisting' groupName=defaultSecurityGroupName}}
            {{else}}
              {{format-html-message 'machine.driverExoscale.securityGroup.defaultCreate' groupName=defaultSecurityGroupName}}
            {{/if}}
          </label></div>

          {{#if (and settings.isRancher (not isCustomSecurityGroup))}}
            <p class="help-block ml-20"><a href="{{settings.docsBase}}/hosts/exoscale/#required-ports-for-rancher-to-work" target="_blank">{{t 'machine.driverExoscale.portHelp.link'}}</a> {{t 'machine.driverExoscale.portHelp.text'}}</p>
          {{/if}}

          <div class="radio"><label>{{radio-button selection=whichSecurityGroup value="custom"}} {{t 'machine.driverExoscale.securityGroup.custom'}}</label></div>
          {{#if isCustomSecurityGroup}}
            <select class="form-control" onchange={{action (mut selectedSecurityGroup) value="target.value"}}>
              {{#each allSecurityGroups as |choice|}}
                <option value={{choice.name}} selected={{eq selectedSecurityGroup choice.name}}>{{choice.name}}</option>
              {{/each}}
            </select>

            <p style="m-0 mt-10">{{t 'machine.driverExoscale.needs.label' appName=settings.appName}}</p>
            <ul>
              <li>{{format-html-message 'machine.driverExoscale.needs.item1' appName=settings.appName}}</li>
              <li>{{format-html-message 'machine.driverExoscale.needs.item2' appName=settings.appName}}</li>
              <li>{{format-html-message 'machine.driverExoscale.needs.item3' appName=settings.appName}}</li>
            </ul>
          {{/if}}
        {{else}}
          <div class="form-control-static">
            {{exoscaleConfig.securityGroup}}
          </div>
        {{/if}}
      </div>
    </div>
  </div>
  {{#if isStep3}}
    {{top-errors errors=errors}}

    <div class="footer-actions">
      <button {{action "selectSecurityGroup"}} class="btn bg-primary">{{t 'machine.driverExoscale.selectSecurityGroupAction'}}</button>
<<<<<<< e6a8abc72a1caeac482b12c7513395985e02b1b5
      <button {{action "cancel"}} class="btn bg-transparent">Cancel</button>
=======
      <button {{action "cancel"}} class="btn btn-link">Cancel</button>
>>>>>>> bg btn
    </div>
  {{/if}}
</section>

<section class="horizontal-form {{unless isStep4 'hide'}}" style="padding-top: 0">
  <div class="text-center">
    <i class="icon icon-spinner icon-spin"></i>
    {{#if defaultSecurityGroup}}
      {{t 'machine.driverExoscale.securityGroup.updating'}}
    {{else}}
      {{t 'machine.driverExoscale.securityGroup.creating'}}
    {{/if}}
  </div>
</section>
<commit_msg>links<commit_after><section class="horizontal-form">
  <form>
    <div class="container-fluid">
      <div class="over-hr mb-20">
        <span>{{t 'machine.driverExoscale.accountSection'}}</span>
      </div>

      <div class="row {{if isStep1 'form-group'}}">
        <div class="col span-2 form-label">
          <label class="form-control-static">{{t 'machine.driverExoscale.apiKey.label'}}</label>
        </div>
        <div class="col span-10">
          {{#if isStep1}}
            {{input type="text" name="username" classNames="form-control" placeholder=(t 'machine.driverExoscale.apiKey.placeholder') value=exoscaleConfig.apiKey}}
          {{else}}
            <div class="form-control-static">{{exoscaleConfig.apiKey}}</div>
          {{/if}}
        </div>
      </div>
      <div class="row {{if isStep1 'form-group'}}">
        <div class="col span-2 form-label">
          <label class="form-control-static">{{t 'machine.driverExoscale.secretKey.label'}}</label>
        </div>
        <div class="col span-10">
          {{#if isStep1}}
            {{input type="password" name="password" classNames="form-control" placeholder=(t 'machine.driverExoscale.secretKey.placeholder') value=exoscaleConfig.apiSecretKey}}
          {{else}}
            <div class="form-control-static text-muted text-italic">{{t 'machine.driverExoscale.secretKey.provided'}}</div>
          {{/if}}
          {{#if isStep1}}
            <p class="help-block">{{t 'machine.driverExoscale.accountHelp'}}</p>
          {{/if}}
        </div>
      </div>
    </div>
    {{#if isStep1}}
      {{top-errors errors=errors}}

      <div class="footer-actions">
        <button {{action "exoscaleLogin"}} name="submit" class="btn bg-primary">{{t 'machine.driverExoscale.loginAction'}}</button>
        <button {{action "cancel"}} class="btn bg-transparent">{{t 'generic.cancel'}}</button>
        </div>
    {{/if}}
  </form>
</section>

<section class="horizontal-form pt-0 {{unless isStep2 'hide'}}">
  <div class="text-center">
    <i class="icon icon-spinner icon-spin"></i> {{t 'machine.driverExoscale.loadingSecurity'}}
  </div>
</section>

<section class="horizontal-form pt-0 {{unless isGteStep3 'hide'}}">
  <div class="container-fluid">
    <div class="over-hr mt-20 mb-20">
      <span>{{t 'machine.driverExoscale.securityGroupSection'}}</span>
    </div>

    <div class="row {{if isStep3 'form-group'}}">
      <div class="col span-2 form-label">
        <label class="form-control-static">{{t 'machine.driverExoscale.securityGroup.label'}}</label>
      </div>
      <div class="col span-10">
        {{#if isStep3}}
          <div class="radio pt-10"><label>
            {{radio-button selection=whichSecurityGroup value="default"}}
            {{#if defaultSecurityGroup}}
              {{format-html-message 'machine.driverExoscale.securityGroup.defaultExisting' groupName=defaultSecurityGroupName}}
            {{else}}
              {{format-html-message 'machine.driverExoscale.securityGroup.defaultCreate' groupName=defaultSecurityGroupName}}
            {{/if}}
          </label></div>

          {{#if (and settings.isRancher (not isCustomSecurityGroup))}}
            <p class="help-block ml-20"><a href="{{settings.docsBase}}/hosts/exoscale/#required-ports-for-rancher-to-work" target="_blank">{{t 'machine.driverExoscale.portHelp.link'}}</a> {{t 'machine.driverExoscale.portHelp.text'}}</p>
          {{/if}}

          <div class="radio"><label>{{radio-button selection=whichSecurityGroup value="custom"}} {{t 'machine.driverExoscale.securityGroup.custom'}}</label></div>
          {{#if isCustomSecurityGroup}}
            <select class="form-control" onchange={{action (mut selectedSecurityGroup) value="target.value"}}>
              {{#each allSecurityGroups as |choice|}}
                <option value={{choice.name}} selected={{eq selectedSecurityGroup choice.name}}>{{choice.name}}</option>
              {{/each}}
            </select>

            <p style="m-0 mt-10">{{t 'machine.driverExoscale.needs.label' appName=settings.appName}}</p>
            <ul>
              <li>{{format-html-message 'machine.driverExoscale.needs.item1' appName=settings.appName}}</li>
              <li>{{format-html-message 'machine.driverExoscale.needs.item2' appName=settings.appName}}</li>
              <li>{{format-html-message 'machine.driverExoscale.needs.item3' appName=settings.appName}}</li>
            </ul>
          {{/if}}
        {{else}}
          <div class="form-control-static">
            {{exoscaleConfig.securityGroup}}
          </div>
        {{/if}}
      </div>
    </div>
  </div>
  {{#if isStep3}}
    {{top-errors errors=errors}}

    <div class="footer-actions">
      <button {{action "selectSecurityGroup"}} class="btn bg-primary">{{t 'machine.driverExoscale.selectSecurityGroupAction'}}</button>
      <button {{action "cancel"}} class="btn bg-transparent">Cancel</button>
    </div>
  {{/if}}
</section>

<section class="horizontal-form {{unless isStep4 'hide'}}" style="padding-top: 0">
  <div class="text-center">
    <i class="icon icon-spinner icon-spin"></i>
    {{#if defaultSecurityGroup}}
      {{t 'machine.driverExoscale.securityGroup.updating'}}
    {{else}}
      {{t 'machine.driverExoscale.securityGroup.creating'}}
    {{/if}}
  </div>
</section>

{'fraction_non_alphanumeric': 0.18653846153846154, 'fraction_numerical': 0.011721611721611722, 'mean_word_length': 3.0674115456238362, 'pattern_counts': {'":': 0, '<': 221, '<?xml version=': 0, '>': 221, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5038734', 'n_tokens_mistral': 3506, 'n_tokens_neox': 3376, 'n_words': 577}