@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.
- package/client/auth-style-sign.ts +45 -33
- package/client/bootstrap.ts +6 -10
- package/client/components/abstract-auth-page.ts +48 -24
- package/client/components/abstract-password-reset.ts +13 -9
- package/client/components/abstract-sign.ts +105 -0
- package/client/components/change-password.ts +4 -4
- package/client/components/contact-us.ts +20 -26
- package/client/components/create-domain-popup.ts +16 -12
- package/client/components/create-role.ts +14 -16
- package/client/components/create-user.ts +15 -14
- package/client/components/credential-manager.ts +64 -0
- package/client/components/delete-user-popup.ts +4 -3
- package/client/components/domain-switch.ts +18 -15
- package/client/components/invite-customer.ts +6 -10
- package/client/components/invite-user.ts +5 -8
- package/client/components/my-login-history.ts +2 -2
- package/client/components/ownership-transfer-popup.ts +7 -7
- package/client/components/partner-info-card.ts +6 -6
- package/client/components/partner-role-editor.ts +15 -23
- package/client/components/profile-component.ts +71 -15
- package/client/components/role-edit-form.ts +3 -3
- package/client/components/role-privilege-editor.ts +19 -29
- package/client/components/role-selector.ts +7 -7
- package/client/components/user-role-editor.ts +43 -50
- package/client/entries/auth/activate.ts +20 -21
- package/client/entries/auth/checkin.ts +29 -31
- package/client/entries/auth/forgot-password.ts +15 -9
- package/client/entries/auth/result.ts +21 -18
- package/client/entries/auth/signin.ts +4 -0
- package/client/entries/auth/signup.ts +31 -14
- package/client/entries/oauth2/oauth2-decision-error-page.ts +2 -2
- package/client/entries/oauth2/oauth2-decision-page.ts +56 -55
- package/client/entries/public/home.ts +52 -28
- package/client/index.ts +93 -66
- package/client/pages/app-binding/app-binding.ts +48 -30
- package/client/pages/app-binding/app-bindings.ts +26 -7
- package/client/pages/appliance/appliance.ts +85 -26
- package/client/pages/appliance/home.ts +28 -6
- package/client/pages/appliance/register.ts +7 -7
- package/client/pages/application/application.ts +108 -76
- package/client/pages/application/applications.ts +29 -15
- package/client/pages/application/register.ts +8 -8
- package/client/pages/attribute/attribute-set-item-list.ts +13 -19
- package/client/pages/attribute/attribute-set-management.ts +14 -20
- package/client/pages/auth-provider/auth-provider-management.ts +10 -16
- package/client/pages/domain/domain-management.ts +4 -9
- package/client/pages/partner/partner-management.ts +2 -2
- package/client/pages/profile.ts +1 -1
- package/client/pages/role/role-management.ts +14 -12
- package/client/pages/user/user-management.ts +7 -5
- package/client/themes/auth-theme.css +7 -10
- package/dist-client/auth-style-sign.js +45 -33
- package/dist-client/auth-style-sign.js.map +1 -1
- package/dist-client/bootstrap.d.ts +1 -1
- package/dist-client/bootstrap.js +5 -5
- package/dist-client/bootstrap.js.map +1 -1
- package/dist-client/components/abstract-auth-page.d.ts +5 -4
- package/dist-client/components/abstract-auth-page.js +46 -24
- package/dist-client/components/abstract-auth-page.js.map +1 -1
- package/dist-client/components/abstract-password-reset.d.ts +3 -2
- package/dist-client/components/abstract-password-reset.js +12 -9
- package/dist-client/components/abstract-password-reset.js.map +1 -1
- package/dist-client/components/abstract-sign.d.ts +3 -0
- package/dist-client/components/abstract-sign.js +86 -0
- package/dist-client/components/abstract-sign.js.map +1 -1
- package/dist-client/components/change-password.js +4 -4
- package/dist-client/components/change-password.js.map +1 -1
- package/dist-client/components/contact-us.d.ts +4 -4
- package/dist-client/components/contact-us.js +19 -26
- package/dist-client/components/contact-us.js.map +1 -1
- package/dist-client/components/create-domain-popup.d.ts +1 -1
- package/dist-client/components/create-domain-popup.js +16 -12
- package/dist-client/components/create-domain-popup.js.map +1 -1
- package/dist-client/components/create-role.d.ts +1 -1
- package/dist-client/components/create-role.js +14 -16
- package/dist-client/components/create-role.js.map +1 -1
- package/dist-client/components/create-user.d.ts +2 -1
- package/dist-client/components/create-user.js +14 -14
- package/dist-client/components/create-user.js.map +1 -1
- package/dist-client/components/credential-manager.d.ts +11 -0
- package/dist-client/components/credential-manager.js +64 -0
- package/dist-client/components/credential-manager.js.map +1 -0
- package/dist-client/components/delete-user-popup.js +4 -3
- package/dist-client/components/delete-user-popup.js.map +1 -1
- package/dist-client/components/domain-switch.d.ts +2 -0
- package/dist-client/components/domain-switch.js +20 -15
- package/dist-client/components/domain-switch.js.map +1 -1
- package/dist-client/components/invite-customer.d.ts +1 -1
- package/dist-client/components/invite-customer.js +6 -9
- package/dist-client/components/invite-customer.js.map +1 -1
- package/dist-client/components/invite-user.js +5 -8
- package/dist-client/components/invite-user.js.map +1 -1
- package/dist-client/components/my-login-history.js +2 -2
- package/dist-client/components/my-login-history.js.map +1 -1
- package/dist-client/components/ownership-transfer-popup.d.ts +1 -1
- package/dist-client/components/ownership-transfer-popup.js +7 -7
- package/dist-client/components/ownership-transfer-popup.js.map +1 -1
- package/dist-client/components/partner-info-card.js +6 -6
- package/dist-client/components/partner-info-card.js.map +1 -1
- package/dist-client/components/partner-role-editor.d.ts +2 -2
- package/dist-client/components/partner-role-editor.js +15 -23
- package/dist-client/components/partner-role-editor.js.map +1 -1
- package/dist-client/components/profile-component.d.ts +7 -0
- package/dist-client/components/profile-component.js +70 -15
- package/dist-client/components/profile-component.js.map +1 -1
- package/dist-client/components/role-edit-form.js +3 -3
- package/dist-client/components/role-edit-form.js.map +1 -1
- package/dist-client/components/role-privilege-editor.js +19 -29
- package/dist-client/components/role-privilege-editor.js.map +1 -1
- package/dist-client/components/role-selector.js +7 -7
- package/dist-client/components/role-selector.js.map +1 -1
- package/dist-client/components/user-role-editor.d.ts +2 -0
- package/dist-client/components/user-role-editor.js +42 -49
- package/dist-client/components/user-role-editor.js.map +1 -1
- package/dist-client/entries/auth/activate.d.ts +5 -4
- package/dist-client/entries/auth/activate.js +19 -21
- package/dist-client/entries/auth/activate.js.map +1 -1
- package/dist-client/entries/auth/checkin.d.ts +5 -5
- package/dist-client/entries/auth/checkin.js +27 -28
- package/dist-client/entries/auth/checkin.js.map +1 -1
- package/dist-client/entries/auth/forgot-password.d.ts +2 -1
- package/dist-client/entries/auth/forgot-password.js +15 -9
- package/dist-client/entries/auth/forgot-password.js.map +1 -1
- package/dist-client/entries/auth/reset-password.js.map +1 -1
- package/dist-client/entries/auth/result.d.ts +5 -5
- package/dist-client/entries/auth/result.js +20 -18
- package/dist-client/entries/auth/result.js.map +1 -1
- package/dist-client/entries/auth/signin.d.ts +1 -0
- package/dist-client/entries/auth/signin.js +3 -0
- package/dist-client/entries/auth/signin.js.map +1 -1
- package/dist-client/entries/auth/signup.js +31 -14
- package/dist-client/entries/auth/signup.js.map +1 -1
- package/dist-client/entries/auth/unlock-user.js.map +1 -1
- package/dist-client/entries/oauth2/oauth2-decision-error-page.d.ts +1 -1
- package/dist-client/entries/oauth2/oauth2-decision-error-page.js +2 -2
- package/dist-client/entries/oauth2/oauth2-decision-error-page.js.map +1 -1
- package/dist-client/entries/oauth2/oauth2-decision-page.d.ts +1 -1
- package/dist-client/entries/oauth2/oauth2-decision-page.js +55 -54
- package/dist-client/entries/oauth2/oauth2-decision-page.js.map +1 -1
- package/dist-client/entries/public/home.d.ts +6 -5
- package/dist-client/entries/public/home.js +52 -28
- package/dist-client/entries/public/home.js.map +1 -1
- package/dist-client/index.d.ts +11 -2
- package/dist-client/index.js +74 -66
- package/dist-client/index.js.map +1 -1
- package/dist-client/pages/app-binding/app-binding.d.ts +1 -1
- package/dist-client/pages/app-binding/app-binding.js +47 -30
- package/dist-client/pages/app-binding/app-binding.js.map +1 -1
- package/dist-client/pages/app-binding/app-bindings.d.ts +2 -1
- package/dist-client/pages/app-binding/app-bindings.js +25 -7
- package/dist-client/pages/app-binding/app-bindings.js.map +1 -1
- package/dist-client/pages/appliance/appliance.d.ts +1 -1
- package/dist-client/pages/appliance/appliance.js +84 -26
- package/dist-client/pages/appliance/appliance.js.map +1 -1
- package/dist-client/pages/appliance/home.d.ts +2 -1
- package/dist-client/pages/appliance/home.js +27 -6
- package/dist-client/pages/appliance/home.js.map +1 -1
- package/dist-client/pages/appliance/register.js +7 -7
- package/dist-client/pages/appliance/register.js.map +1 -1
- package/dist-client/pages/application/application.d.ts +1 -1
- package/dist-client/pages/application/application.js +107 -76
- package/dist-client/pages/application/application.js.map +1 -1
- package/dist-client/pages/application/applications.d.ts +2 -1
- package/dist-client/pages/application/applications.js +28 -15
- package/dist-client/pages/application/applications.js.map +1 -1
- package/dist-client/pages/application/register.js +8 -8
- package/dist-client/pages/application/register.js.map +1 -1
- package/dist-client/pages/attribute/attribute-set-item-list.d.ts +1 -1
- package/dist-client/pages/attribute/attribute-set-item-list.js +11 -18
- package/dist-client/pages/attribute/attribute-set-item-list.js.map +1 -1
- package/dist-client/pages/attribute/attribute-set-management.d.ts +11 -2
- package/dist-client/pages/attribute/attribute-set-management.js +7 -11
- package/dist-client/pages/attribute/attribute-set-management.js.map +1 -1
- package/dist-client/pages/auth-provider/auth-provider-management.d.ts +11 -2
- package/dist-client/pages/auth-provider/auth-provider-management.js +8 -11
- package/dist-client/pages/auth-provider/auth-provider-management.js.map +1 -1
- package/dist-client/pages/domain/domain-management.d.ts +1 -0
- package/dist-client/pages/domain/domain-management.js +3 -7
- package/dist-client/pages/domain/domain-management.js.map +1 -1
- package/dist-client/pages/partner/partner-management.js +2 -2
- package/dist-client/pages/partner/partner-management.js.map +1 -1
- package/dist-client/pages/profile.js +1 -1
- package/dist-client/pages/profile.js.map +1 -1
- package/dist-client/pages/role/role-management.js +13 -10
- package/dist-client/pages/role/role-management.js.map +1 -1
- package/dist-client/pages/user/user-management.d.ts +1 -0
- package/dist-client/pages/user/user-management.js +6 -5
- package/dist-client/pages/user/user-management.js.map +1 -1
- package/dist-client/route.js.map +1 -1
- package/dist-client/themes/auth-theme.css +7 -10
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-client/utils/password-rule.js.map +1 -1
- package/dist-server/index.d.ts +0 -0
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +14 -18
- package/translations/en.json +2 -0
- package/translations/ja.json +2 -0
- package/translations/ko.json +2 -1
- package/translations/ms.json +2 -0
- package/translations/zh.json +2 -0
- package/views/auth-page.html +5 -3
- 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(--
|
|
23
|
-
padding: var(--
|
|
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
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
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
|
-
|
|
48
|
+
[icon] img {
|
|
49
|
+
max-width: 100%;
|
|
50
|
+
max-height: 100%;
|
|
49
51
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
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
|
-
|
|
56
|
-
|
|
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(--
|
|
60
|
-
margin: var(--
|
|
61
|
-
padding: var(--
|
|
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-
|
|
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(--
|
|
157
|
+
margin: var(--spacing-medium) 0 var(--spacing-medium) var(--spacing-medium);
|
|
104
158
|
float: right;
|
|
105
159
|
text-decoration: none;
|
|
106
160
|
}
|
|
107
|
-
|
|
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><
|
|
212
|
+
<h2><md-icon>devices</md-icon> ${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(--
|
|
15
|
-
padding: var(--
|
|
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(--
|
|
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(--
|
|
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(--
|
|
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
|
-
<
|
|
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(--
|
|
16
|
-
padding: var(--
|
|
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(--
|
|
38
|
-
padding: var(--
|
|
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-
|
|
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
|
-
<
|
|
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
|
-
|
|
22
|
-
|
|
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
|
-
|
|
47
|
-
|
|
48
|
-
color: var(--
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
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
|
-
|
|
66
|
-
|
|
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(--
|
|
70
|
-
margin: var(--
|
|
71
|
-
padding: var(--
|
|
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-
|
|
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:
|
|
106
|
-
right:
|
|
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
|
-
|
|
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><
|
|
206
|
+
<h2><md-icon>apps</md-icon> ${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
|
-
<
|
|
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
|
-
<
|
|
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
|
-
<
|
|
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
|
-
<
|
|
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
|
-
<
|
|
278
|
-
|
|
279
|
-
|
|
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
|
`
|