summaryrefslogtreecommitdiffstats
path: root/chromium/chrome/browser/resources/settings/privacy_page/security_keys_credential_management_dialog.html
blob: 070ed2d6abba461edbd51e7a1c538bb41d87ed36 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<link rel="import" href="chrome://resources/html/polymer.html">

<link rel="import" href="chrome://resources/html/assert.html">
<link rel="import" href="chrome://resources/cr_elements/cr_button/cr_button.html">
<link rel="import" href="chrome://resources/cr_elements/cr_checkbox/cr_checkbox.html">
<link rel="import" href="chrome://resources/cr_elements/cr_dialog/cr_dialog.html">
<link rel="import" href="chrome://resources/html/i18n_behavior.html">
<link rel="import" href="chrome://resources/html/web_ui_listener_behavior.html">
<link rel="import" href="chrome://resources/polymer/v1_0/iron-list/iron-list.html">
<link rel="import" href="chrome://resources/polymer/v1_0/iron-pages/iron-pages.html">
<link rel="import" href="chrome://resources/polymer/v1_0/paper-spinner/paper-spinner-lite.html">

<link rel="import" href="../i18n_setup.html">
<link rel="import" href="../settings_shared_css.html">
<link rel="import" href="../site_favicon.html">
<link rel="import" href="security_keys_browser_proxy.html">
<link rel="import" href="security_keys_pin_field.html">

<dom-module id="settings-security-keys-credential-management-dialog">
  <template>
    <style include="settings-shared">
      paper-spinner-lite {
        padding-bottom: 12px;
      }

      #header {
        display: flex;
      }

      .site {
        flex: 3;
      }

      .user {
        flex: 2;
      }

      .list-item .site {
        align-items: center;
        display: flex;
      }

      .list-item .site,
      .list-item .user {
        word-break: break-word;
      }

      site-favicon {
        margin-inline-end: 8px;
        min-width: 16px;
      }

      .checkbox-placeholder {
        width: var(--cr-icon-ripple-size);
      }
    </style>

    <cr-dialog id="dialog" close-text="$i18n{cancel}" ignore-popstate
        on-close="onDialogClosed_">
      <div slot="title">$i18n{securityKeysCredentialManagementDialogTitle}</div>

      <div slot="body">
        <iron-pages attr-for-selected="id" selected="[[dialogPage_]]"
            on-iron-select="onIronSelect_">
          <div id="initial">
            <p>$i18n{securityKeysCredentialManagementTouch}</p>
            <paper-spinner-lite active></paper-spinner-lite>
          </div>

          <div id="pinPrompt">
            <p>$i18nRaw{securityKeysCredentialManagementPinPrompt}</p>
            <settings-security-keys-pin-field
                id="pin" label="$i18n{securityKeysPIN}">
            </settings-security-keys-pin-field>
          </div>

          <div id="credentials">
            <div id="header" class="list-item column-header">
              <div class="site">$i18n{securityKeysCredentialWebsite}</div>
              <div class="user">$i18n{securityKeysCredentialUsername}</div>
              <div class="checkbox-placeholder"></div>
            </div>

            <div id="container">
              <iron-list id="credentialList" items="[[credentials_]]"
                  class="cr-separators list-with-header">
                <template>
                  <div class="list-item">
                    <div class="site" aria-label="[[item.relyingPartyId]]">
                      <site-favicon url="[[item.relyingPartyId]]">
                      </site-favicon>
                      <div>[[item.relyingPartyId]]</div>
                    </div>
                    <div class="user">[[formatUser_(item)]]</div>
                    <cr-checkbox on-change="checkedCredentialsChanged_"
                        data-id$="[[item.id]]"
                        checked="[[credentialIsChecked_(item.id)]]"
                        disabled="[[deleteInProgress_]]"></cr-checkbox>
                  </div>
                </template>
              </iron-list>
            </div>
          </div>

          <div id="error">[[errorMsg_]]</div>
        </iron-pages>
      </div>

      <div slot="button-container">
        <cr-button id="cancelButton" class="cancel-button"
            on-click="close_" hidden="[[!cancelButtonVisible_]]">
          $i18n{cancel}
        </cr-button>
        <cr-button id="confirmButton" class="action-button"
            on-click="confirmButtonClick_"
            disabled="[[confirmButtonDisabled_]]"
            hidden="[[!confirmButtonVisible_]]">
          [[confirmButtonLabel_]]
        </cr-button>
        <cr-button id="closeButton" class="action-button"
            on-click="close_"
            hidden="[[!closeButtonVisible_]]">
          $i18n{close}
        </cr-button>
      </div>
    </cr-dialog>

  </template>
  <script src="security_keys_credential_management_dialog.js"></script>
</dom-module>