@kusena/wui-single 18.0.1

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 (117) hide show
  1. package/README.md +24 -0
  2. package/esm2022/kusena-wui-single.mjs +5 -0
  3. package/esm2022/lib/components/app/app.component.mjs +63 -0
  4. package/esm2022/lib/components/app-bar/app-bar.component.mjs +16 -0
  5. package/esm2022/lib/components/avatar/avatar.component.mjs +35 -0
  6. package/esm2022/lib/components/dialog/dialog.component.mjs +54 -0
  7. package/esm2022/lib/components/drawer/drawer-item.component.mjs +41 -0
  8. package/esm2022/lib/components/drawer/drawer.component.mjs +82 -0
  9. package/esm2022/lib/components/drawer/drawer.directive.mjs +22 -0
  10. package/esm2022/lib/components/form-field/wui-form-field.component.mjs +63 -0
  11. package/esm2022/lib/components/form-field/wui-input.directive.mjs +68 -0
  12. package/esm2022/lib/components/icon/icon.component.mjs +22 -0
  13. package/esm2022/lib/components/list/list.component.mjs +31 -0
  14. package/esm2022/lib/components/loading/loading.component.mjs +60 -0
  15. package/esm2022/lib/components/loading-dialog/loading-dialog.component.mjs +24 -0
  16. package/esm2022/lib/components/menu/menu.component.mjs +134 -0
  17. package/esm2022/lib/components/modal/modal-host.component.mjs +21 -0
  18. package/esm2022/lib/components/modal/modal-overlay.mjs +63 -0
  19. package/esm2022/lib/components/modal/modal.component.mjs +38 -0
  20. package/esm2022/lib/components/nav/nav.component.mjs +85 -0
  21. package/esm2022/lib/components/page/page-host.component.mjs +21 -0
  22. package/esm2022/lib/components/page/page-overlay.service.mjs +63 -0
  23. package/esm2022/lib/components/page/page.component.mjs +23 -0
  24. package/esm2022/lib/components/snackbar/snackbar.component.mjs +65 -0
  25. package/esm2022/lib/components/toggle/toggle.component.mjs +79 -0
  26. package/esm2022/lib/directives/menu.directive.mjs +79 -0
  27. package/esm2022/lib/directives/nav.directive.mjs +78 -0
  28. package/esm2022/lib/directives/num-input.directive.mjs +105 -0
  29. package/esm2022/lib/directives/page-header.directive.mjs +48 -0
  30. package/esm2022/lib/directives/ripple.directive.mjs +87 -0
  31. package/esm2022/lib/directives/scroll-end.directive.mjs +27 -0
  32. package/esm2022/lib/directives/sortable.directive.mjs +99 -0
  33. package/esm2022/lib/index.mjs +39 -0
  34. package/esm2022/lib/services/message.service.mjs +22 -0
  35. package/esm2022/lib/services/modal.service.mjs +26 -0
  36. package/esm2022/lib/services/nav.service.mjs +55 -0
  37. package/esm2022/lib/services/page.service.mjs +38 -0
  38. package/esm2022/lib/services/router.service.mjs +42 -0
  39. package/esm2022/lib/services/wui.service.mjs +43 -0
  40. package/esm2022/lib/wui-single.component.mjs +19 -0
  41. package/esm2022/lib/wui.providers.mjs +20 -0
  42. package/esm2022/public-api.mjs +5 -0
  43. package/fesm2022/kusena-wui-single.mjs +1841 -0
  44. package/fesm2022/kusena-wui-single.mjs.map +1 -0
  45. package/index.d.ts +5 -0
  46. package/lib/components/app/app.component.d.ts +16 -0
  47. package/lib/components/app-bar/app-bar.component.d.ts +5 -0
  48. package/lib/components/avatar/avatar.component.d.ts +10 -0
  49. package/lib/components/dialog/dialog.component.d.ts +9 -0
  50. package/lib/components/drawer/drawer-item.component.d.ts +8 -0
  51. package/lib/components/drawer/drawer.component.d.ts +21 -0
  52. package/lib/components/drawer/drawer.directive.d.ts +7 -0
  53. package/lib/components/form-field/wui-form-field.component.d.ts +13 -0
  54. package/lib/components/form-field/wui-input.directive.d.ts +17 -0
  55. package/lib/components/icon/icon.component.d.ts +7 -0
  56. package/lib/components/list/list.component.d.ts +9 -0
  57. package/lib/components/loading/loading.component.d.ts +9 -0
  58. package/lib/components/loading-dialog/loading-dialog.component.d.ts +8 -0
  59. package/lib/components/menu/menu.component.d.ts +27 -0
  60. package/lib/components/modal/modal-host.component.d.ts +10 -0
  61. package/lib/components/modal/modal-overlay.d.ts +25 -0
  62. package/lib/components/modal/modal.component.d.ts +11 -0
  63. package/lib/components/nav/nav.component.d.ts +17 -0
  64. package/lib/components/page/page-host.component.d.ts +10 -0
  65. package/lib/components/page/page-overlay.service.d.ts +25 -0
  66. package/lib/components/page/page.component.d.ts +5 -0
  67. package/lib/components/snackbar/snackbar.component.d.ts +18 -0
  68. package/lib/components/toggle/toggle.component.d.ts +21 -0
  69. package/lib/directives/menu.directive.d.ts +17 -0
  70. package/lib/directives/nav.directive.d.ts +30 -0
  71. package/lib/directives/num-input.directive.d.ts +27 -0
  72. package/lib/directives/page-header.directive.d.ts +13 -0
  73. package/lib/directives/ripple.directive.d.ts +16 -0
  74. package/lib/directives/scroll-end.directive.d.ts +9 -0
  75. package/lib/directives/sortable.directive.d.ts +19 -0
  76. package/lib/index.d.ts +33 -0
  77. package/lib/services/message.service.d.ts +9 -0
  78. package/lib/services/modal.service.d.ts +13 -0
  79. package/lib/services/nav.service.d.ts +14 -0
  80. package/lib/services/page.service.d.ts +16 -0
  81. package/lib/services/router.service.d.ts +16 -0
  82. package/lib/services/wui.service.d.ts +16 -0
  83. package/lib/wui-single.component.d.ts +5 -0
  84. package/lib/wui.providers.d.ts +2 -0
  85. package/package.json +25 -0
  86. package/public-api.d.ts +1 -0
  87. package/scss/screen/appbar.scss +71 -0
  88. package/scss/screen/avatar.scss +17 -0
  89. package/scss/screen/backdrop.scss +15 -0
  90. package/scss/screen/box.scss +67 -0
  91. package/scss/screen/breadcrumb.scss +34 -0
  92. package/scss/screen/buttons.scss +177 -0
  93. package/scss/screen/core.scss +103 -0
  94. package/scss/screen/drawer.scss +273 -0
  95. package/scss/screen/formfields.scss +288 -0
  96. package/scss/screen/icon.scss +33 -0
  97. package/scss/screen/list.scss +90 -0
  98. package/scss/screen/loading.scss +169 -0
  99. package/scss/screen/menu.scss +120 -0
  100. package/scss/screen/modal.scss +238 -0
  101. package/scss/screen/normalize.scss +340 -0
  102. package/scss/screen/page.scss +115 -0
  103. package/scss/screen/pagination.scss +46 -0
  104. package/scss/screen/ripple.scss +18 -0
  105. package/scss/screen/scrollbar.scss +108 -0
  106. package/scss/screen/searchbox.scss +40 -0
  107. package/scss/screen/selection.scss +190 -0
  108. package/scss/screen/snackbar.scss +25 -0
  109. package/scss/screen/sortable.scss +10 -0
  110. package/scss/screen/table.scss +199 -0
  111. package/scss/screen/tabs.scss +71 -0
  112. package/scss/screen/toogle.scss +79 -0
  113. package/scss/screen/tooltip.scss +16 -0
  114. package/scss/screen/utils.scss +140 -0
  115. package/scss/variables/colors.scss +180 -0
  116. package/scss/variables/defaults.scss +0 -0
  117. package/scss/wui.scss +2 -0
@@ -0,0 +1,177 @@
1
+ @import "../variables/colors.scss";
2
+
3
+ .wui-button {
4
+ border: none;
5
+ cursor: pointer;
6
+ padding-right: 1rem;
7
+ padding-left: 1rem;
8
+ height: 2.5rem;
9
+ line-height: 1;
10
+ display: inline-flex;
11
+ justify-content: center;
12
+ align-items: center;
13
+ white-space: nowrap;
14
+ text-overflow: ellipsis;
15
+ border-radius: .5rem;
16
+ vertical-align: middle;
17
+ color: #333;
18
+ background-color: #EFEFEF;
19
+
20
+ &:hover {
21
+ color: #222;
22
+ background-color: #DEDEDE;
23
+ text-decoration: none;
24
+ }
25
+
26
+ &:focus {
27
+ color: #222;
28
+ background-color: #CDCDCD;
29
+ }
30
+
31
+ &-small {
32
+ height: 2rem;
33
+ font-size: .875rem;
34
+ padding-left: .875rem;
35
+ padding-right:.875rem;
36
+ border-radius: .375rem;
37
+ }
38
+
39
+ &-large {
40
+ height: 3rem;
41
+ font-size: 1.125rem;
42
+ padding-left: 1.25rem;
43
+ padding-right: 1.25rem;
44
+ border-radius: .625rem;
45
+
46
+ wui-icon {
47
+ margin-right: .75rem;
48
+ }
49
+ }
50
+
51
+ &-rounded {
52
+ border-radius: 1.25rem;
53
+
54
+ &.wui-button {
55
+ &-small {
56
+ border-radius: 1rem;
57
+ }
58
+
59
+ &-large {
60
+ border-radius: 1.5rem;
61
+ }
62
+ }
63
+ }
64
+
65
+ &-block {
66
+ width: 100%;
67
+ }
68
+
69
+ &-primary {
70
+ background-color: $theme-primary;
71
+ color: white !important;
72
+
73
+ &:hover {
74
+ background-color: darken($theme-primary, 5%);
75
+ }
76
+
77
+ &:focus {
78
+ background-color: darken($theme-primary, 10%);
79
+ }
80
+
81
+ &:active {
82
+ background-color: darken($theme-primary, 15%);
83
+ }
84
+ }
85
+
86
+ wui-icon {
87
+ margin-left: 0;
88
+ margin-right: .5rem;
89
+
90
+ &.trailing {
91
+ margin-right: 0;
92
+ margin-left: .5rem;
93
+ }
94
+ }
95
+
96
+ &-square {
97
+ padding-left: 0;
98
+ padding-right: 0;
99
+ width: 2.25rem;
100
+
101
+ wui-icon {
102
+ margin-left: 0;
103
+ margin-right: 0;
104
+ }
105
+
106
+ &.wui-button {
107
+ &-rounded {
108
+ border-radius: 50%;
109
+ padding-left: 0;
110
+ padding-right: 0;
111
+ }
112
+
113
+ &-large {
114
+ padding-left: 0;
115
+ padding-right: 0;
116
+ width: 3rem;
117
+
118
+ wui-icon {
119
+ margin-right: 0;
120
+ }
121
+ }
122
+ }
123
+ }
124
+
125
+ &-smooth {
126
+ background-color: transparent;
127
+
128
+ &:hover {
129
+ background-color: rgba(0,0,0,0.04);
130
+ }
131
+
132
+ &:focus {
133
+ background-color: rgba(0,0,0,0.08);
134
+ }
135
+
136
+ &.wui-button-primary {
137
+ color: $theme-primary;
138
+
139
+ &:hover {
140
+ background-color: rgba($theme-primary, .12);
141
+ }
142
+
143
+ &:focus {
144
+ background-color: rgba($theme-primary, .20)
145
+ }
146
+ }
147
+ }
148
+
149
+ &-icon {
150
+ width: 2.25rem;
151
+ height: 2.25rem;
152
+ border-radius: 50%;
153
+ padding: 0;
154
+
155
+ wui-icon {
156
+ margin-left: 0;
157
+ margin-right: 0;
158
+ }
159
+
160
+ &.wui-button-large {
161
+ width: 3rem;
162
+ height: 3rem;
163
+ }
164
+ }
165
+
166
+ &-fab {
167
+ position: fixed;
168
+ bottom: 1.5rem;
169
+ right: 1.5rem;
170
+ z-index: 9;
171
+ }
172
+
173
+ &:disabled {
174
+ opacity: .5;
175
+ }
176
+
177
+ }
@@ -0,0 +1,103 @@
1
+ @import "../variables/colors.scss";
2
+ @import "../variables/defaults.scss";
3
+
4
+ * {
5
+ -webkit-tap-highlight-color: transparent;
6
+ box-sizing:border-box;
7
+ outline:none;
8
+ }
9
+
10
+ html, body{
11
+ font-family: 'Inter', sans-serif;
12
+ color: var(--wui-color-blueGrey-800);
13
+ width: 100%;
14
+ height: 100%;
15
+ overflow: hidden;
16
+ line-height: 1.5;
17
+ }
18
+
19
+ body {
20
+ font-size: .875rem;
21
+ margin: 0;
22
+ }
23
+
24
+ a {
25
+ color: var(--wui-color-blue-700);
26
+ cursor: pointer;
27
+ text-decoration: none;
28
+
29
+ &:hover {
30
+ color: var(--theme-text-link-hover, darken($theme-primary, 10%));
31
+ text-decoration: underline;
32
+ }
33
+ }
34
+
35
+ wui-app {
36
+ position: absolute;
37
+ top: 0; left: 0;
38
+ display: flex;
39
+ width: 100%;
40
+ height: 100%;
41
+
42
+ wui-drawer {
43
+ flex: 0 0 auto;
44
+ }
45
+
46
+ div.wui-app-main {
47
+ flex: 1 1 auto;
48
+ position: relative;
49
+ }
50
+
51
+ wui-nav {
52
+ flex: 1 1 auto;
53
+ position: relative;
54
+ }
55
+ }
56
+
57
+ button,
58
+ input,
59
+ optgroup,
60
+ select,
61
+ textarea {
62
+ font-family: inherit;
63
+ font-size: 100%;
64
+ line-height: 1.15;
65
+ margin: 0;
66
+ }
67
+
68
+ h1, h2, h3, h4, h5, h6 {
69
+ color: var(--wui-color-blueGrey-900);
70
+ }
71
+
72
+ @import "loading.scss";
73
+ @import "scrollbar.scss";
74
+ @import "box.scss";
75
+ @import "table.scss";
76
+ @import "ripple.scss";
77
+ @import "utils.scss";
78
+
79
+ @import "tooltip.scss";
80
+ @import "list.scss";
81
+ @import "pagination.scss";
82
+ @import "breadcrumb.scss";
83
+ @import "searchbox.scss";
84
+ @import "modal.scss";
85
+
86
+ @import "selection.scss";
87
+ @import "buttons.scss";
88
+
89
+ @import "normalize.scss";
90
+ @import "backdrop.scss";
91
+ @import "icon.scss";
92
+ @import "avatar.scss";
93
+ @import "appbar.scss";
94
+ @import "drawer.scss";
95
+ @import "page.scss";
96
+ @import "formfields.scss";
97
+ @import "menu.scss";
98
+ @import "loading.scss";
99
+ @import "tabs.scss";
100
+ @import "snackbar.scss";
101
+ @import "sortable.scss";
102
+
103
+ @import "toogle.scss";
@@ -0,0 +1,273 @@
1
+ @import '../variables/colors.scss';
2
+
3
+ wui-drawer {
4
+ height: 100%;
5
+ position: fixed;
6
+ z-index: -1;
7
+ top: 0; left: 0;
8
+ width: 100%;
9
+
10
+ &-item {
11
+ font-size: .875rem;
12
+ font-weight: 500;
13
+ line-height: 1.25rem;
14
+ padding: .5rem 1.5rem;
15
+ position: relative;
16
+ cursor: pointer;
17
+ white-space: nowrap;
18
+ text-overflow: ellipsis;
19
+ overflow: hidden;
20
+ display: flex;
21
+ align-items: center;
22
+ border-top-right-radius: 1.25rem;
23
+ border-bottom-right-radius: 1.25rem;
24
+ max-width: 14.5rem;
25
+ color: $theme-text;
26
+
27
+ wui-icon {
28
+ margin-right: 1.5rem;
29
+ }
30
+
31
+ &.active {
32
+ background-color: rgba($theme-primary, .12);
33
+ color: $theme-primary;
34
+ font-weight: 500;
35
+ }
36
+
37
+ &:hover:not(.active) {
38
+ color: $theme-primary;
39
+ }
40
+ }
41
+
42
+ .wui-drawer {
43
+ &-inner {
44
+ overflow-y: auto;
45
+ height: 100%;
46
+ position: relative;
47
+ padding-top: 1.5rem;
48
+ padding-bottom: 1.5rem;
49
+ max-width: 16rem;
50
+ background-color: white;
51
+ }
52
+
53
+ &-divider {
54
+ overflow: hidden;
55
+ text-overflow: ellipsis;
56
+ white-space: nowrap;
57
+ padding-top: 1rem;
58
+ padding-bottom: .5rem;
59
+
60
+ &-label {
61
+ padding-left: 1.5rem;
62
+ font-size: 0.75rem;
63
+ font-weight: bold;
64
+ color: rgba(0, 0, 0, 0.54);
65
+ }
66
+ }
67
+
68
+ &-header {
69
+ text-overflow: ellipsis;
70
+ white-space: nowrap;
71
+ overflow: hidden;
72
+ padding-bottom: 1.5rem;
73
+
74
+ &-avatar {
75
+ padding-left: 1.5rem;
76
+ padding-bottom: .5rem;
77
+
78
+ img {
79
+ width: 4rem;
80
+ height: 4rem;
81
+ border-radius: 2rem;
82
+ }
83
+ }
84
+
85
+ &-title {
86
+ text-overflow: ellipsis;
87
+ white-space: nowrap;
88
+ padding-top: 1rem;
89
+ padding-left: 1.5rem;
90
+ width: 100%;
91
+ }
92
+
93
+ &-subtitle {
94
+ text-overflow: ellipsis;
95
+ white-space: nowrap;
96
+ font-size: 0.875rem;
97
+ padding: 0 1.5rem;
98
+ width: 100%;
99
+ }
100
+
101
+ &-button{
102
+ display: flex;
103
+ align-items: center;
104
+ color: $theme-text;
105
+ padding: .75rem 1rem .75rem 1.5rem;
106
+ overflow: hidden;
107
+ width: 100%;
108
+
109
+ &:hover {
110
+ text-decoration: none;
111
+ background-color: rgba(0,0,0,0.02);
112
+ }
113
+
114
+ &-caption {
115
+ flex: 1 1 auto;
116
+ }
117
+
118
+
119
+
120
+ wui-icon {
121
+ flex: 0 0 auto;
122
+ }
123
+ }
124
+ }
125
+ }
126
+
127
+ &.show {
128
+ z-index: 99;
129
+
130
+ .wui-drawer {
131
+ &-backdrop {
132
+ z-index: 0;
133
+ background-color: rgba(0,0,0,0.5);
134
+ position: absolute;
135
+ top: 0;
136
+ left: 0;
137
+ width: 100%;
138
+ height: 100%;
139
+ }
140
+ }
141
+ }
142
+ }
143
+
144
+ @media screen and (min-width: 768px){
145
+ wui-drawer {
146
+ position: relative;
147
+ max-width: 6rem;
148
+ z-index: 0;
149
+
150
+ &-item {
151
+ max-width: 5rem;
152
+
153
+ .content {
154
+ display: none;
155
+ }
156
+ }
157
+
158
+ .wui-drawer {
159
+ &-header {
160
+ &-avatar {
161
+ padding-left: 1rem;
162
+
163
+ img {
164
+ width: 3rem;
165
+ height: 3rem;
166
+ }
167
+ }
168
+
169
+ &-title, &-subtitle {
170
+ display: none;
171
+ }
172
+ }
173
+
174
+ &-inner {
175
+ max-width: none;
176
+ }
177
+
178
+ &-backdrop {
179
+ display: none;
180
+ }
181
+
182
+ &-divider {
183
+ &-label {
184
+ display: none;
185
+ }
186
+ }
187
+ }
188
+
189
+ &.show {
190
+ max-width: 16rem;
191
+ z-index: 0;
192
+
193
+ wui-drawer{
194
+ &-item {
195
+ max-width: 14.5rem;
196
+
197
+ .content {
198
+ display: block;
199
+ }
200
+ }
201
+ }
202
+
203
+ .wui-drawer {
204
+ &-header {
205
+ &-avatar {
206
+ padding-left: 1.5rem;
207
+
208
+ img {
209
+ width: 4rem;
210
+ height: 4rem;
211
+ }
212
+ }
213
+
214
+ &-title, &-subtitle {
215
+ display: block;
216
+ }
217
+ }
218
+
219
+ &-divider {
220
+ &-label {
221
+ display: block;
222
+ }
223
+ }
224
+ }
225
+ }
226
+
227
+ &:hover:not(.show) {
228
+ overflow-x: visible;
229
+ z-index: 99;
230
+
231
+ wui-drawer{
232
+ &-item {
233
+ max-width: 14.5rem;
234
+ .content {
235
+ display: block;
236
+ }
237
+ }
238
+ }
239
+
240
+ .wui-drawer {
241
+ &-header {
242
+ &-avatar {
243
+ padding-left: 1.5rem;
244
+
245
+ img {
246
+ width: 4rem;
247
+ height: 4rem;
248
+ }
249
+ }
250
+
251
+ &-title, &-subtitle {
252
+ display: block;
253
+ }
254
+ }
255
+
256
+ &-inner {
257
+ width: 16rem;
258
+ position: absolute;
259
+ top: 0; left: 0;
260
+ z-index: 999;
261
+ background-color: white;
262
+ box-shadow: 0 0 .5rem 0.25rem rgba(0,0,0,0.1);
263
+ }
264
+
265
+ &-divider {
266
+ &-label {
267
+ display: block;
268
+ }
269
+ }
270
+ }
271
+ }
272
+ }
273
+ }