@things-factory/auth-ui 7.0.0-alpha.9 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. package/client/auth-style-sign.ts +45 -33
  2. package/client/bootstrap.ts +6 -10
  3. package/client/components/abstract-auth-page.ts +48 -24
  4. package/client/components/abstract-password-reset.ts +13 -9
  5. package/client/components/abstract-sign.ts +105 -0
  6. package/client/components/change-password.ts +4 -4
  7. package/client/components/contact-us.ts +20 -26
  8. package/client/components/create-domain-popup.ts +16 -12
  9. package/client/components/create-role.ts +14 -16
  10. package/client/components/create-user.ts +15 -14
  11. package/client/components/credential-manager.ts +64 -0
  12. package/client/components/delete-user-popup.ts +4 -3
  13. package/client/components/domain-switch.ts +18 -15
  14. package/client/components/invite-customer.ts +6 -10
  15. package/client/components/invite-user.ts +5 -8
  16. package/client/components/my-login-history.ts +2 -2
  17. package/client/components/ownership-transfer-popup.ts +7 -7
  18. package/client/components/partner-info-card.ts +6 -6
  19. package/client/components/partner-role-editor.ts +15 -23
  20. package/client/components/profile-component.ts +71 -15
  21. package/client/components/role-edit-form.ts +3 -3
  22. package/client/components/role-privilege-editor.ts +19 -29
  23. package/client/components/role-selector.ts +7 -7
  24. package/client/components/user-role-editor.ts +43 -50
  25. package/client/entries/auth/activate.ts +20 -21
  26. package/client/entries/auth/checkin.ts +29 -31
  27. package/client/entries/auth/forgot-password.ts +15 -9
  28. package/client/entries/auth/result.ts +21 -18
  29. package/client/entries/auth/signin.ts +4 -0
  30. package/client/entries/auth/signup.ts +31 -14
  31. package/client/entries/oauth2/oauth2-decision-error-page.ts +2 -2
  32. package/client/entries/oauth2/oauth2-decision-page.ts +56 -55
  33. package/client/entries/public/home.ts +52 -28
  34. package/client/index.ts +93 -66
  35. package/client/pages/app-binding/app-binding.ts +48 -30
  36. package/client/pages/app-binding/app-bindings.ts +26 -7
  37. package/client/pages/appliance/appliance.ts +85 -26
  38. package/client/pages/appliance/home.ts +28 -6
  39. package/client/pages/appliance/register.ts +7 -7
  40. package/client/pages/application/application.ts +108 -76
  41. package/client/pages/application/applications.ts +29 -15
  42. package/client/pages/application/register.ts +8 -8
  43. package/client/pages/attribute/attribute-set-item-list.ts +13 -19
  44. package/client/pages/attribute/attribute-set-management.ts +14 -20
  45. package/client/pages/auth-provider/auth-provider-management.ts +10 -16
  46. package/client/pages/domain/domain-management.ts +4 -9
  47. package/client/pages/partner/partner-management.ts +2 -2
  48. package/client/pages/profile.ts +1 -1
  49. package/client/pages/role/role-management.ts +14 -12
  50. package/client/pages/user/user-management.ts +7 -5
  51. package/client/themes/auth-theme.css +7 -10
  52. package/dist-client/auth-style-sign.js +45 -33
  53. package/dist-client/auth-style-sign.js.map +1 -1
  54. package/dist-client/bootstrap.d.ts +1 -1
  55. package/dist-client/bootstrap.js +5 -5
  56. package/dist-client/bootstrap.js.map +1 -1
  57. package/dist-client/components/abstract-auth-page.d.ts +5 -4
  58. package/dist-client/components/abstract-auth-page.js +46 -24
  59. package/dist-client/components/abstract-auth-page.js.map +1 -1
  60. package/dist-client/components/abstract-password-reset.d.ts +3 -2
  61. package/dist-client/components/abstract-password-reset.js +12 -9
  62. package/dist-client/components/abstract-password-reset.js.map +1 -1
  63. package/dist-client/components/abstract-sign.d.ts +3 -0
  64. package/dist-client/components/abstract-sign.js +86 -0
  65. package/dist-client/components/abstract-sign.js.map +1 -1
  66. package/dist-client/components/change-password.js +4 -4
  67. package/dist-client/components/change-password.js.map +1 -1
  68. package/dist-client/components/contact-us.d.ts +4 -4
  69. package/dist-client/components/contact-us.js +19 -26
  70. package/dist-client/components/contact-us.js.map +1 -1
  71. package/dist-client/components/create-domain-popup.d.ts +1 -1
  72. package/dist-client/components/create-domain-popup.js +16 -12
  73. package/dist-client/components/create-domain-popup.js.map +1 -1
  74. package/dist-client/components/create-role.d.ts +1 -1
  75. package/dist-client/components/create-role.js +14 -16
  76. package/dist-client/components/create-role.js.map +1 -1
  77. package/dist-client/components/create-user.d.ts +2 -1
  78. package/dist-client/components/create-user.js +14 -14
  79. package/dist-client/components/create-user.js.map +1 -1
  80. package/dist-client/components/credential-manager.d.ts +11 -0
  81. package/dist-client/components/credential-manager.js +64 -0
  82. package/dist-client/components/credential-manager.js.map +1 -0
  83. package/dist-client/components/delete-user-popup.js +4 -3
  84. package/dist-client/components/delete-user-popup.js.map +1 -1
  85. package/dist-client/components/domain-switch.d.ts +2 -0
  86. package/dist-client/components/domain-switch.js +20 -15
  87. package/dist-client/components/domain-switch.js.map +1 -1
  88. package/dist-client/components/invite-customer.d.ts +1 -1
  89. package/dist-client/components/invite-customer.js +6 -9
  90. package/dist-client/components/invite-customer.js.map +1 -1
  91. package/dist-client/components/invite-user.js +5 -8
  92. package/dist-client/components/invite-user.js.map +1 -1
  93. package/dist-client/components/my-login-history.js +2 -2
  94. package/dist-client/components/my-login-history.js.map +1 -1
  95. package/dist-client/components/ownership-transfer-popup.d.ts +1 -1
  96. package/dist-client/components/ownership-transfer-popup.js +7 -7
  97. package/dist-client/components/ownership-transfer-popup.js.map +1 -1
  98. package/dist-client/components/partner-info-card.js +6 -6
  99. package/dist-client/components/partner-info-card.js.map +1 -1
  100. package/dist-client/components/partner-role-editor.d.ts +2 -2
  101. package/dist-client/components/partner-role-editor.js +15 -23
  102. package/dist-client/components/partner-role-editor.js.map +1 -1
  103. package/dist-client/components/profile-component.d.ts +7 -0
  104. package/dist-client/components/profile-component.js +70 -15
  105. package/dist-client/components/profile-component.js.map +1 -1
  106. package/dist-client/components/role-edit-form.js +3 -3
  107. package/dist-client/components/role-edit-form.js.map +1 -1
  108. package/dist-client/components/role-privilege-editor.js +19 -29
  109. package/dist-client/components/role-privilege-editor.js.map +1 -1
  110. package/dist-client/components/role-selector.js +7 -7
  111. package/dist-client/components/role-selector.js.map +1 -1
  112. package/dist-client/components/user-role-editor.d.ts +2 -0
  113. package/dist-client/components/user-role-editor.js +42 -49
  114. package/dist-client/components/user-role-editor.js.map +1 -1
  115. package/dist-client/entries/auth/activate.d.ts +5 -4
  116. package/dist-client/entries/auth/activate.js +19 -21
  117. package/dist-client/entries/auth/activate.js.map +1 -1
  118. package/dist-client/entries/auth/checkin.d.ts +5 -5
  119. package/dist-client/entries/auth/checkin.js +27 -28
  120. package/dist-client/entries/auth/checkin.js.map +1 -1
  121. package/dist-client/entries/auth/forgot-password.d.ts +2 -1
  122. package/dist-client/entries/auth/forgot-password.js +15 -9
  123. package/dist-client/entries/auth/forgot-password.js.map +1 -1
  124. package/dist-client/entries/auth/reset-password.js.map +1 -1
  125. package/dist-client/entries/auth/result.d.ts +5 -5
  126. package/dist-client/entries/auth/result.js +20 -18
  127. package/dist-client/entries/auth/result.js.map +1 -1
  128. package/dist-client/entries/auth/signin.d.ts +1 -0
  129. package/dist-client/entries/auth/signin.js +3 -0
  130. package/dist-client/entries/auth/signin.js.map +1 -1
  131. package/dist-client/entries/auth/signup.js +31 -14
  132. package/dist-client/entries/auth/signup.js.map +1 -1
  133. package/dist-client/entries/auth/unlock-user.js.map +1 -1
  134. package/dist-client/entries/oauth2/oauth2-decision-error-page.d.ts +1 -1
  135. package/dist-client/entries/oauth2/oauth2-decision-error-page.js +2 -2
  136. package/dist-client/entries/oauth2/oauth2-decision-error-page.js.map +1 -1
  137. package/dist-client/entries/oauth2/oauth2-decision-page.d.ts +1 -1
  138. package/dist-client/entries/oauth2/oauth2-decision-page.js +55 -54
  139. package/dist-client/entries/oauth2/oauth2-decision-page.js.map +1 -1
  140. package/dist-client/entries/public/home.d.ts +6 -5
  141. package/dist-client/entries/public/home.js +52 -28
  142. package/dist-client/entries/public/home.js.map +1 -1
  143. package/dist-client/index.d.ts +11 -2
  144. package/dist-client/index.js +74 -66
  145. package/dist-client/index.js.map +1 -1
  146. package/dist-client/pages/app-binding/app-binding.d.ts +1 -1
  147. package/dist-client/pages/app-binding/app-binding.js +47 -30
  148. package/dist-client/pages/app-binding/app-binding.js.map +1 -1
  149. package/dist-client/pages/app-binding/app-bindings.d.ts +2 -1
  150. package/dist-client/pages/app-binding/app-bindings.js +25 -7
  151. package/dist-client/pages/app-binding/app-bindings.js.map +1 -1
  152. package/dist-client/pages/appliance/appliance.d.ts +1 -1
  153. package/dist-client/pages/appliance/appliance.js +84 -26
  154. package/dist-client/pages/appliance/appliance.js.map +1 -1
  155. package/dist-client/pages/appliance/home.d.ts +2 -1
  156. package/dist-client/pages/appliance/home.js +27 -6
  157. package/dist-client/pages/appliance/home.js.map +1 -1
  158. package/dist-client/pages/appliance/register.js +7 -7
  159. package/dist-client/pages/appliance/register.js.map +1 -1
  160. package/dist-client/pages/application/application.d.ts +1 -1
  161. package/dist-client/pages/application/application.js +107 -76
  162. package/dist-client/pages/application/application.js.map +1 -1
  163. package/dist-client/pages/application/applications.d.ts +2 -1
  164. package/dist-client/pages/application/applications.js +28 -15
  165. package/dist-client/pages/application/applications.js.map +1 -1
  166. package/dist-client/pages/application/register.js +8 -8
  167. package/dist-client/pages/application/register.js.map +1 -1
  168. package/dist-client/pages/attribute/attribute-set-item-list.d.ts +1 -1
  169. package/dist-client/pages/attribute/attribute-set-item-list.js +11 -18
  170. package/dist-client/pages/attribute/attribute-set-item-list.js.map +1 -1
  171. package/dist-client/pages/attribute/attribute-set-management.d.ts +11 -2
  172. package/dist-client/pages/attribute/attribute-set-management.js +7 -11
  173. package/dist-client/pages/attribute/attribute-set-management.js.map +1 -1
  174. package/dist-client/pages/auth-provider/auth-provider-management.d.ts +11 -2
  175. package/dist-client/pages/auth-provider/auth-provider-management.js +8 -11
  176. package/dist-client/pages/auth-provider/auth-provider-management.js.map +1 -1
  177. package/dist-client/pages/domain/domain-management.d.ts +1 -0
  178. package/dist-client/pages/domain/domain-management.js +3 -7
  179. package/dist-client/pages/domain/domain-management.js.map +1 -1
  180. package/dist-client/pages/partner/partner-management.js +2 -2
  181. package/dist-client/pages/partner/partner-management.js.map +1 -1
  182. package/dist-client/pages/profile.js +1 -1
  183. package/dist-client/pages/profile.js.map +1 -1
  184. package/dist-client/pages/role/role-management.js +13 -10
  185. package/dist-client/pages/role/role-management.js.map +1 -1
  186. package/dist-client/pages/user/user-management.d.ts +1 -0
  187. package/dist-client/pages/user/user-management.js +6 -5
  188. package/dist-client/pages/user/user-management.js.map +1 -1
  189. package/dist-client/route.js.map +1 -1
  190. package/dist-client/themes/auth-theme.css +7 -10
  191. package/dist-client/tsconfig.tsbuildinfo +1 -1
  192. package/dist-client/utils/password-rule.js.map +1 -1
  193. package/dist-server/index.d.ts +0 -0
  194. package/dist-server/tsconfig.tsbuildinfo +1 -1
  195. package/package.json +14 -18
  196. package/translations/en.json +2 -0
  197. package/translations/ja.json +2 -0
  198. package/translations/ko.json +2 -1
  199. package/translations/ms.json +2 -0
  200. package/translations/zh.json +2 -0
  201. package/views/auth-page.html +5 -3
  202. package/views/oauth2-page.html +3 -2
@@ -1,3 +1,5 @@
1
+ import '@material/web/icon/icon.js'
2
+
1
3
  import Clipboard from 'clipboard'
2
4
  import gql from 'graphql-tag'
3
5
  import { css, html } from 'lit'
@@ -18,79 +20,131 @@ class Appliance extends connect(store)(PageView) {
18
20
  display: flex;
19
21
  flex-direction: column;
20
22
  overflow-y: auto;
23
+ position: relative;
21
24
 
22
- background-color: var(--main-section-background-color);
23
- padding: var(--padding-wide);
25
+ background-color: var(--md-sys-color-background);
26
+ padding: var(--spacing-large);
24
27
  }
28
+
25
29
  h2 {
26
30
  margin: var(--title-margin);
27
31
  font: var(--title-font);
28
32
  color: var(--title-text-color);
29
33
  }
34
+
30
35
  [page-description] {
31
36
  margin: var(--page-description-margin);
32
37
  font: var(--page-description-font);
33
38
  color: var(--page-description-color);
34
39
  }
35
40
 
36
- label {
37
- font: var(--label-font);
38
- color: var(--label-color);
39
- text-transform: var(--label-text-transform);
41
+ [icon] {
42
+ position: absolute;
43
+ top: 10px;
44
+ right: 10px;
45
+ max-width: 80px;
40
46
  }
41
- input {
42
- border: var(--border-dark-color);
43
- border-radius: var(--border-radius);
44
- margin: var(--input-margin);
45
- padding: var(--input-padding);
46
- font: var(--input-font);
47
47
 
48
- flex: 1;
48
+ [icon] img {
49
+ max-width: 100%;
50
+ max-height: 100%;
49
51
  }
50
- select:focus,
51
- input:focus,
52
- button {
53
- outline: none;
52
+
53
+ [button-primary] {
54
+ background-color: var(--button-primary-background-color);
55
+ border: var(--button-border);
56
+ border-radius: var(--button-border-radius);
57
+ margin: var(--button-margin);
58
+ padding: var(--button-primary-padding);
59
+ color: var(--button-primary-color);
60
+ font: var(--button-primary-font);
61
+ text-transform: var(--button-text-transform);
62
+
63
+ text-decoration: none;
54
64
  }
55
- form {
56
- max-width: var(--content-container-max-width);
65
+
66
+ [button-primary]:hover {
67
+ background-color: var(--button-primary-active-background-color);
68
+ box-shadow: var(--button-active-box-shadow);
57
69
  }
70
+
58
71
  [fieldset-container] {
59
- background-color: var(--theme-white-color);
60
- margin: var(--margin-wide) 0 var(--margin-default) 0;
61
- padding: var(--padding-default);
72
+ background-color: var(--md-sys-color-surface);
73
+ margin: var(--spacing-large) 0 var(--spacing-medium) 0;
74
+ padding: var(--spacing-medium);
62
75
  border-radius: var(--border-radius);
63
76
  box-shadow: var(--box-shadow);
77
+
78
+ label {
79
+ font: var(--label-font);
80
+ color: var(--label-color, var(--md-sys-color-on-surface));
81
+ text-transform: var(--label-text-transform);
82
+ }
83
+
84
+ input,
85
+ select {
86
+ border: var(--border-dim-color);
87
+ border-radius: var(--border-radius);
88
+ margin: var(--input-margin);
89
+ padding: var(--input-padding);
90
+ font: var(--input-font);
91
+
92
+ flex: 1;
93
+ }
94
+
95
+ select:focus,
96
+ input:focus,
97
+ button {
98
+ outline: none;
99
+ }
100
+
101
+ form {
102
+ max-width: var(--content-container-max-width);
103
+ }
64
104
  }
105
+
65
106
  [fieldset-container] fieldset {
66
107
  margin: 0;
67
108
  margin-top: -15px;
68
109
  }
110
+
69
111
  fieldset {
70
112
  border-radius: var(--border-radius);
71
- border: var(--border-dark-color);
113
+ border: var(--border-dim-color);
72
114
  margin: var(--fieldset-margin);
73
115
  padding: var(--fieldset-padding);
74
116
  }
117
+
75
118
  legend {
76
119
  padding: var(--legend-padding);
77
120
  font-weight: bold;
78
121
  color: var(--legend-color);
79
122
  }
123
+
80
124
  [field-2column] {
81
125
  display: grid;
82
126
  grid-template-columns: 1fr 1fr;
83
127
  grid-gap: 15px;
84
128
  }
129
+
85
130
  [field] {
86
131
  display: flex;
87
132
  flex-direction: column;
88
133
  position: relative;
89
134
  }
135
+
90
136
  [grid-span] {
91
137
  grid-column: span 2;
92
138
  }
139
+
140
+ button {
141
+ display: flex;
142
+ align-items: center;
143
+ gap: var(--spacing-small);
144
+ }
145
+
93
146
  button,
147
+ input[type='submit'],
94
148
  [button-in-field] {
95
149
  background-color: var(--button-background-color);
96
150
  border: var(--button-border);
@@ -100,14 +154,17 @@ class Appliance extends connect(store)(PageView) {
100
154
  font: var(--button-font);
101
155
  text-transform: var(--button-text-transform);
102
156
 
103
- margin: var(--margin-default) 0 var(--margin-default) var(--margin-default);
157
+ margin: var(--spacing-medium) 0 var(--spacing-medium) var(--spacing-medium);
104
158
  float: right;
105
159
  text-decoration: none;
106
160
  }
107
- button:hover {
161
+
162
+ button:hover,
163
+ input[type='submit']:hover {
108
164
  border: var(--button-activ-border);
109
165
  box-shadow: var(--button-active-box-shadow);
110
166
  }
167
+
111
168
  [button-in-field] {
112
169
  border-radius: 0 var(--button-border-radius) var(--button-border-radius) 0;
113
170
  position: absolute;
@@ -115,10 +172,12 @@ class Appliance extends connect(store)(PageView) {
115
172
  right: 0;
116
173
  max-height: 36px;
117
174
  }
175
+
118
176
  [input-hint] {
119
177
  font: var(--input-hint-font);
120
178
  color: var(--input-hint-color);
121
179
  }
180
+
122
181
  @media screen and (max-width: 480px) {
123
182
  [field] {
124
183
  grid-column: span 2;
@@ -150,7 +209,7 @@ class Appliance extends connect(store)(PageView) {
150
209
 
151
210
  return html`
152
211
  <div>
153
- <h2><mwc-icon>devices</mwc-icon>&nbsp;${appliance.name}</h2>
212
+ <h2><md-icon>devices</md-icon>&nbsp;${appliance.name}</h2>
154
213
  <p page-description>${appliance.description}</p>
155
214
  </div>
156
215
 
@@ -1,3 +1,6 @@
1
+ import '@material/web/button/elevated-button.js'
2
+ import '@material/web/button/outlined-button.js'
3
+
1
4
  import gql from 'graphql-tag'
2
5
  import { css, html } from 'lit'
3
6
  import { customElement, property } from 'lit/decorators.js'
@@ -11,17 +14,28 @@ class Appliances extends connect(store)(PageView) {
11
14
  static styles = [
12
15
  css`
13
16
  :host {
14
- background-color: var(--main-section-background-color);
15
- padding: var(--padding-wide);
17
+ background-color: var(--md-sys-color-background);
18
+ padding: var(--spacing-large);
16
19
 
17
20
  overflow: auto;
18
21
  }
19
22
 
23
+ md-elevated-button {
24
+ text-transform: capitalize;
25
+ }
26
+
27
+ md-outlined-button {
28
+ float: right;
29
+ margin-top: var(--spacing-medium);
30
+ text-transform: capitalize;
31
+ }
32
+
20
33
  h2 {
21
34
  margin: var(--title-margin);
22
35
  font: var(--title-font);
23
36
  color: var(--title-text-color);
24
37
  }
38
+
25
39
  [page-description] {
26
40
  margin: var(--page-description-margin);
27
41
  font: var(--page-description-font);
@@ -30,18 +44,22 @@ class Appliances extends connect(store)(PageView) {
30
44
 
31
45
  table {
32
46
  width: 100%;
33
- margin: var(--margin-wide) 0;
47
+ margin: var(--spacing-large) 0;
34
48
  border-collapse: collapse;
35
49
  }
50
+
36
51
  tr {
37
52
  background-color: var(--tr-background-color);
38
53
  }
54
+
39
55
  tr:nth-child(odd) {
40
56
  background-color: var(--tr-background-odd-color);
41
57
  }
58
+
42
59
  tr:hover {
43
60
  background-color: var(--tr-background-hover-color);
44
61
  }
62
+
45
63
  th {
46
64
  border-top: var(--th-border-top);
47
65
  border-bottom: var(--td-border-bottom);
@@ -52,29 +70,33 @@ class Appliances extends connect(store)(PageView) {
52
70
  text-transform: var(--th-text-transform);
53
71
  text-align: left;
54
72
  }
73
+
55
74
  td {
56
75
  padding: var(--td-padding);
57
76
  border-bottom: var(--td-border-bottom);
58
77
  font: var(--td-font);
59
78
  color: var(--td-color);
60
79
  }
80
+
61
81
  td a {
62
- color: var(--secondary-text-color);
82
+ color: var(--md-sys-color-primary);
63
83
  font: bold 16px var(--theme-font);
64
84
 
65
85
  display: block;
66
86
  text-decoration: none;
67
87
  }
88
+
68
89
  .text-align-center {
69
90
  text-align: center;
70
91
  }
92
+
71
93
  .text-align-right {
72
94
  text-align: right;
73
95
  }
74
96
 
75
97
  @media screen and (max-width: 480px) {
76
98
  :host {
77
- padding: var(--padding-default);
99
+ padding: var(--spacing-medium);
78
100
  }
79
101
  }
80
102
  `
@@ -99,7 +121,7 @@ class Appliances extends connect(store)(PageView) {
99
121
  What type of appliance are you building?<br />Choose the app type that best suits the audience you’re building
100
122
  for. The appliance type can’t be changed after it’s created.
101
123
  </p>
102
- <mwc-button raised @click=${e => navigate('appliance-register')} label="register new appliance"></mwc-button>
124
+ <md-elevated-button @click=${e => navigate('appliance-register')}>register new appliance</md-elevated-button>
103
125
  </div>
104
126
 
105
127
  <table>
@@ -12,8 +12,8 @@ class ApplianceRegister extends connect(store)(PageView) {
12
12
  return [
13
13
  css`
14
14
  :host {
15
- background-color: var(--main-section-background-color);
16
- padding: var(--padding-wide);
15
+ background-color: var(--md-sys-color-background);
16
+ padding: var(--spacing-large);
17
17
 
18
18
  display: flex;
19
19
  flex-direction: column;
@@ -34,8 +34,8 @@ class ApplianceRegister extends connect(store)(PageView) {
34
34
  }
35
35
 
36
36
  [form-container] {
37
- background-color: var(--theme-white-color);
38
- padding: var(--padding-wide);
37
+ background-color: var(--md-sys-color-surface);
38
+ padding: var(--spacing-large);
39
39
  border-radius: var(--border-radius);
40
40
  box-shadow: var(--box-shadow);
41
41
  min-width: 60%;
@@ -45,11 +45,11 @@ class ApplianceRegister extends connect(store)(PageView) {
45
45
  }
46
46
  label {
47
47
  font: var(--label-font);
48
- color: var(--label-color);
48
+ color: var(--label-color, var(--md-sys-color-on-surface));
49
49
  text-transform: var(--label-text-transform);
50
50
  }
51
51
  input {
52
- border: var(--border-dark-color);
52
+ border: var(--border-dim-color);
53
53
  border-radius: var(--border-radius);
54
54
  margin: var(--input-margin);
55
55
  padding: var(--input-padding);
@@ -136,7 +136,7 @@ class ApplianceRegister extends connect(store)(PageView) {
136
136
  <input id="netmask" type="text" name="netmask" />
137
137
  </div>
138
138
 
139
- <mwc-button grid-span @click=${this.createAppliance.bind(this)} raised label="register"></mwc-button>
139
+ <md-elevated-button grid-span @click=${this.createAppliance.bind(this)}>register</md-elevated-button>
140
140
  </div>
141
141
  </form>
142
142
  </div>
@@ -1,3 +1,5 @@
1
+ import '@material/web/icon/icon.js'
2
+
1
3
  import Clipboard from 'clipboard'
2
4
  import gql from 'graphql-tag'
3
5
  import { css, html } from 'lit'
@@ -18,107 +20,163 @@ class Application extends connect(store)(PageView) {
18
20
  flex-direction: column;
19
21
  overflow-y: auto;
20
22
  position: relative;
21
- background-color: var(--main-section-background-color);
22
- padding: var(--padding-wide);
23
+
24
+ background-color: var(--md-sys-color-background);
25
+ padding: var(--spacing-large);
23
26
  }
27
+
24
28
  h2 {
25
- display: flex;
26
- align-items: center;
27
29
  margin: var(--title-margin);
28
30
  font: var(--title-font);
29
31
  color: var(--title-text-color);
30
32
  }
33
+
31
34
  [page-description] {
32
35
  margin: var(--page-description-margin);
33
36
  font: var(--page-description-font);
34
37
  color: var(--page-description-color);
35
38
  }
39
+
36
40
  [icon] {
37
41
  position: absolute;
38
42
  top: 10px;
39
43
  right: 10px;
40
44
  max-width: 80px;
41
45
  }
46
+
42
47
  [icon] img {
43
48
  max-width: 100%;
44
49
  max-height: 100%;
45
50
  }
46
- label {
47
- font: var(--label-font);
48
- color: var(--label-color);
49
- text-transform: var(--label-text-transform);
50
- }
51
- input,
52
- select {
53
- border: var(--border-dark-color);
54
- border-radius: var(--border-radius);
55
- margin: var(--input-margin);
56
- padding: var(--input-padding);
57
- font: var(--input-font);
58
- flex: 1;
59
- }
60
- select:focus,
61
- input:focus,
62
- button {
63
- outline: none;
51
+
52
+ [button-primary] {
53
+ background-color: var(--button-primary-background-color);
54
+ border: var(--button-border);
55
+ border-radius: var(--button-border-radius);
56
+ margin: var(--button-margin);
57
+ padding: var(--button-primary-padding);
58
+ color: var(--button-primary-color);
59
+ font: var(--button-primary-font);
60
+ text-transform: var(--button-text-transform);
61
+
62
+ text-decoration: none;
64
63
  }
65
- form {
66
- max-width: var(--content-container-max-width);
64
+
65
+ [button-primary]:hover {
66
+ background-color: var(--button-primary-active-background-color);
67
+ box-shadow: var(--button-active-box-shadow);
67
68
  }
69
+
68
70
  [fieldset-container] {
69
- background-color: var(--theme-white-color);
70
- margin: var(--margin-wide) 0 var(--margin-default) 0;
71
- padding: var(--padding-default);
71
+ background-color: var(--md-sys-color-surface);
72
+ margin: var(--spacing-large) 0 var(--spacing-medium) 0;
73
+ padding: var(--spacing-medium);
72
74
  border-radius: var(--border-radius);
73
75
  box-shadow: var(--box-shadow);
76
+
77
+ label {
78
+ font: var(--label-font);
79
+ color: var(--label-color, var(--md-sys-color-on-surface));
80
+ text-transform: var(--label-text-transform);
81
+ }
82
+
83
+ input,
84
+ select {
85
+ border: var(--border-dim-color);
86
+ border-radius: var(--border-radius);
87
+ margin: var(--input-margin);
88
+ padding: var(--input-padding);
89
+ font: var(--input-font);
90
+
91
+ flex: 1;
92
+ }
93
+
94
+ select:focus,
95
+ input:focus,
96
+ button {
97
+ outline: none;
98
+ }
99
+
100
+ form {
101
+ max-width: var(--content-container-max-width);
102
+ }
74
103
  }
104
+
75
105
  [fieldset-container] fieldset {
76
106
  margin: 0;
77
107
  margin-top: -15px;
78
108
  }
109
+
79
110
  fieldset {
80
111
  border-radius: var(--border-radius);
81
- border: var(--border-dark-color);
112
+ border: var(--border-dim-color);
82
113
  margin: var(--fieldset-margin);
83
114
  padding: var(--fieldset-padding);
84
115
  }
116
+
85
117
  legend {
86
118
  padding: var(--legend-padding);
87
119
  font-weight: bold;
88
120
  color: var(--legend-color);
89
121
  }
122
+
90
123
  [field-2column] {
91
124
  display: grid;
92
125
  grid-template-columns: 1fr 1fr;
93
126
  grid-gap: 15px;
94
127
  }
128
+
95
129
  [field] {
96
130
  display: flex;
97
131
  flex-direction: column;
98
132
  position: relative;
99
133
  }
134
+
100
135
  [grid-span] {
101
136
  grid-column: span 2;
102
137
  }
138
+
139
+ button {
140
+ display: flex;
141
+ align-items: center;
142
+ gap: var(--spacing-small);
143
+ }
144
+
145
+ button,
146
+ input[type='submit'],
147
+ [button-in-field] {
148
+ background-color: var(--button-background-color);
149
+ border: var(--button-border);
150
+ border-radius: var(--button-border-radius);
151
+ padding: var(--button-padding);
152
+ color: var(--button-color);
153
+ font: var(--button-font);
154
+ text-transform: var(--button-text-transform);
155
+
156
+ margin: var(--spacing-medium) 0 var(--spacing-medium) var(--spacing-medium);
157
+ float: right;
158
+ text-decoration: none;
159
+ }
160
+
161
+ button:hover,
162
+ input[type='submit']:hover {
163
+ border: var(--button-activ-border);
164
+ box-shadow: var(--button-active-box-shadow);
165
+ }
166
+
103
167
  [button-in-field] {
168
+ border-radius: 0 var(--button-border-radius) var(--button-border-radius) 0;
104
169
  position: absolute;
105
- top: 24px;
106
- right: 4px;
170
+ top: 12px;
171
+ right: 0;
172
+ max-height: 36px;
107
173
  }
174
+
108
175
  [input-hint] {
109
176
  font: var(--input-hint-font);
110
177
  color: var(--input-hint-color);
111
178
  }
112
- [danger] {
113
- --mdc-theme-primary: var(--mdc-danger-button-primary-color);
114
- }
115
- .button-container {
116
- margin-top: var(--margin-wide);
117
- text-align: right;
118
- }
119
- .button-container mwc-button {
120
- margin-left: var(--margin-narrow);
121
- }
179
+
122
180
  @media screen and (max-width: 480px) {
123
181
  [field] {
124
182
  grid-column: span 2;
@@ -145,7 +203,7 @@ class Application extends connect(store)(PageView) {
145
203
 
146
204
  return html`
147
205
  <div>
148
- <h2><mwc-icon>apps</mwc-icon>&nbsp;${app.name}</h2>
206
+ <h2><md-icon>apps</md-icon>&nbsp;${app.name}</h2>
149
207
  <p page-description>${app.description}</p>
150
208
  </div>
151
209
 
@@ -211,28 +269,14 @@ class Application extends connect(store)(PageView) {
211
269
  <div field grid-span>
212
270
  <label for="auth-url">auth URL</label>
213
271
  <input id="auth-url" type="text" .value=${app.authUrl} readonly />
214
- <mwc-button
215
- dense
216
- unelevated
217
- button-in-field
218
- clipboard-copy
219
- @click=${e => e.preventDefault()}
220
- label="copy"
221
- ></mwc-button>
272
+ <button dense button-in-field clipboard-copy @click=${e => e.preventDefault()}>copy</button>
222
273
  The endpoint for authorization server. This is used to get the authorization code.
223
274
  </div>
224
275
 
225
276
  <div field grid-span>
226
277
  <label for="access-token-url">access token URL</label>
227
278
  <input id="access-token-url" type="text" .value=${app.accessTokenUrl} readonly />
228
- <mwc-button
229
- dense
230
- unelevated
231
- button-in-field
232
- clipboard-copy
233
- @click=${e => e.preventDefault()}
234
- label="copy"
235
- ></mwc-button>
279
+ <button dense button-in-field clipboard-copy @click=${e => e.preventDefault()}>copy</button>
236
280
  The endpoint for authentication server. This is used to exchange the authorization code for an access
237
281
  token.
238
282
  </div>
@@ -247,36 +291,24 @@ class Application extends connect(store)(PageView) {
247
291
  <div field grid-span>
248
292
  <label for="app-key">appKey</label>
249
293
  <input id="app-key" type="text" .value=${app.appKey} readonly />
250
- <mwc-button
251
- dense
252
- unelevated
253
- button-in-field
254
- clipboard-copy
255
- @click=${e => e.preventDefault()}
256
- label="copy"
257
- ></mwc-button>
294
+ <button dense button-in-field clipboard-copy @click=${e => e.preventDefault()}>copy</button>
258
295
  </div>
259
296
 
260
297
  <div field grid-span>
261
298
  <label for="app-secret">appSecret</label>
262
299
  <input id="app-secret" type="text" .value=${app.appSecret} readonly />
263
- <mwc-button
264
- dense
265
- unelevated
266
- button-in-field
267
- clipboard-copy
268
- @click=${e => e.preventDefault()}
269
- label="copy"
270
- ></mwc-button>
300
+ <button dense button-in-field clipboard-copy @click=${e => e.preventDefault()}>copy</button>
271
301
  </div>
272
302
  </div>
273
303
  </fieldset>
274
304
  </div>
275
305
 
276
306
  <div class="button-container">
277
- <mwc-button raised danger label="delete this app" @click=${this.deleteApplication.bind(this)}></mwc-button>
278
- <mwc-button raised label="update" @click=${this.updateApplication.bind(this)}></mwc-button>
279
- <mwc-button outlined label="generate new secret"></mwc-button>
307
+ <button danger @click=${this.deleteApplication.bind(this)}>
308
+ <md-icon>delete_forever</md-icon>delete this app
309
+ </button>
310
+ <button @click=${this.updateApplication.bind(this)}><md-icon>save</md-icon>update</button>
311
+ <button><md-icon>passkey</md-icon>generate new secret</button>
280
312
  </div>
281
313
  </form>
282
314
  `