@smwb/ui-styles 1.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 (138) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +60 -0
  3. package/less/_prelude.less +6 -0
  4. package/less/components/accordion/accordion.entry.less +2 -0
  5. package/less/components/accordion/accordion.less +36 -0
  6. package/less/components/appBar/appBar.entry.less +2 -0
  7. package/less/components/appBar/appBar.less +95 -0
  8. package/less/components/appLayout/appLayout.entry.less +2 -0
  9. package/less/components/appLayout/appLayout.less +112 -0
  10. package/less/components/avatar/avatar.entry.less +2 -0
  11. package/less/components/avatar/avatar.less +74 -0
  12. package/less/components/badge/badge.entry.less +2 -0
  13. package/less/components/badge/badge.less +66 -0
  14. package/less/components/bottomBar/bottomBar.entry.less +2 -0
  15. package/less/components/bottomBar/bottomBar.less +84 -0
  16. package/less/components/breadcrumbs/breadcrumbs.entry.less +2 -0
  17. package/less/components/breadcrumbs/breadcrumbs.less +57 -0
  18. package/less/components/button/button.entry.less +2 -0
  19. package/less/components/button/button.less +164 -0
  20. package/less/components/buttonGroup/buttonGroup.entry.less +2 -0
  21. package/less/components/buttonGroup/buttonGroup.less +95 -0
  22. package/less/components/card/card.entry.less +2 -0
  23. package/less/components/card/card.less +56 -0
  24. package/less/components/carousel/carousel.entry.less +2 -0
  25. package/less/components/carousel/carousel.less +75 -0
  26. package/less/components/chat/chat.entry.less +2 -0
  27. package/less/components/chat/chat.less +623 -0
  28. package/less/components/chat/chat.variables.less +9 -0
  29. package/less/components/checkbox/checkbox.entry.less +2 -0
  30. package/less/components/checkbox/checkbox.less +109 -0
  31. package/less/components/chip/chip.entry.less +2 -0
  32. package/less/components/chip/chip.less +121 -0
  33. package/less/components/datePicker/dataPicker.entry.less +2 -0
  34. package/less/components/datePicker/dataPicker.less +235 -0
  35. package/less/components/divider/divider.entry.less +2 -0
  36. package/less/components/divider/divider.less +69 -0
  37. package/less/components/expansionPanel/expansionPanel.entry.less +2 -0
  38. package/less/components/expansionPanel/expansionPanel.less +136 -0
  39. package/less/components/fileDrop/fileDrop.entry.less +2 -0
  40. package/less/components/fileDrop/fileDrop.less +67 -0
  41. package/less/components/fileInput/fileInput.entry.less +2 -0
  42. package/less/components/fileInput/fileInput.less +4 -0
  43. package/less/components/floatingButton/floatingButton.entry.less +2 -0
  44. package/less/components/floatingButton/floatingButton.less +94 -0
  45. package/less/components/grid/grid.entry.less +2 -0
  46. package/less/components/grid/grid.less +174 -0
  47. package/less/components/icon/icon.entry.less +2 -0
  48. package/less/components/icon/icon.less +27 -0
  49. package/less/components/imagesList/imagesList.entry.less +2 -0
  50. package/less/components/imagesList/imagesList.less +35 -0
  51. package/less/components/imagesList/imagesListItem/imagesListItem.entry.less +2 -0
  52. package/less/components/imagesList/imagesListItem/imagesListItem.less +117 -0
  53. package/less/components/list/list.entry.less +2 -0
  54. package/less/components/list/list.less +87 -0
  55. package/less/components/menu/menu.entry.less +2 -0
  56. package/less/components/menu/menu.less +121 -0
  57. package/less/components/message/message.entry.less +2 -0
  58. package/less/components/message/message.less +103 -0
  59. package/less/components/modal/modal.entry.less +2 -0
  60. package/less/components/modal/modal.less +215 -0
  61. package/less/components/page/page.entry.less +2 -0
  62. package/less/components/page/page.less +39 -0
  63. package/less/components/pageHeader/pageHeader.entry.less +2 -0
  64. package/less/components/pageHeader/pageHeader.less +49 -0
  65. package/less/components/pagination/pagination.entry.less +2 -0
  66. package/less/components/pagination/pagination.less +103 -0
  67. package/less/components/progressIndicator/progressIndicator.entry.less +2 -0
  68. package/less/components/progressIndicator/progressIndicator.less +107 -0
  69. package/less/components/radioButton/radioButton.entry.less +2 -0
  70. package/less/components/radioButton/radioButton.less +138 -0
  71. package/less/components/rating/rating.entry.less +2 -0
  72. package/less/components/rating/rating.less +65 -0
  73. package/less/components/ripple/ripple.entry.less +2 -0
  74. package/less/components/ripple/ripple.less +24 -0
  75. package/less/components/screenDivider/screenDivider.entry.less +2 -0
  76. package/less/components/screenDivider/screenDivider.less +56 -0
  77. package/less/components/selectField/selectField.entry.less +2 -0
  78. package/less/components/selectField/selectField.less +182 -0
  79. package/less/components/sheet/sheet.entry.less +2 -0
  80. package/less/components/sheet/sheet.less +243 -0
  81. package/less/components/sidebar/sidebar.entry.less +2 -0
  82. package/less/components/sidebar/sidebar.less +137 -0
  83. package/less/components/skeleton/skeleton.entry.less +2 -0
  84. package/less/components/skeleton/skeleton.less +67 -0
  85. package/less/components/slider/slider.entry.less +2 -0
  86. package/less/components/slider/slider.less +294 -0
  87. package/less/components/snackbar/snackbar.entry.less +2 -0
  88. package/less/components/snackbar/snackbar.less +157 -0
  89. package/less/components/stack/stack.entry.less +2 -0
  90. package/less/components/stack/stack.less +10 -0
  91. package/less/components/stepper/stepper.entry.less +2 -0
  92. package/less/components/stepper/stepper.less +142 -0
  93. package/less/components/table/table.entry.less +2 -0
  94. package/less/components/table/table.less +192 -0
  95. package/less/components/table/tablePagination/tablePagination.entry.less +2 -0
  96. package/less/components/table/tablePagination/tablePagination.less +62 -0
  97. package/less/components/tabs/tab/tab.entry.less +2 -0
  98. package/less/components/tabs/tab/tab.less +114 -0
  99. package/less/components/tabs/tabs.entry.less +2 -0
  100. package/less/components/tabs/tabs.less +44 -0
  101. package/less/components/textField/textField.entry.less +2 -0
  102. package/less/components/textField/textField.less +373 -0
  103. package/less/components/timePicker/timePicker.entry.less +2 -0
  104. package/less/components/timePicker/timePicker.less +95 -0
  105. package/less/components/toggle/toggle.entry.less +2 -0
  106. package/less/components/toggle/toggle.less +110 -0
  107. package/less/components/tooltip/tooltip.entry.less +2 -0
  108. package/less/components/tooltip/tooltip.less +36 -0
  109. package/less/components/treeView/treeView.entry.less +2 -0
  110. package/less/components/treeView/treeView.less +71 -0
  111. package/less/components/typography/typography.entry.less +2 -0
  112. package/less/components/typography/typography.less +86 -0
  113. package/less/components.less +59 -0
  114. package/less/connects/rt/table.less +26 -0
  115. package/less/connects.less +1 -0
  116. package/less/default/globals/default.variables.less +584 -0
  117. package/less/foundation/breakpoints.less +80 -0
  118. package/less/foundation/elevation.less +61 -0
  119. package/less/foundation/palette.less +310 -0
  120. package/less/foundation/radius.less +21 -0
  121. package/less/foundation/sizing.less +35 -0
  122. package/less/foundation/spacing.less +164 -0
  123. package/less/foundation/typography.less +25 -0
  124. package/less/foundation.less +18 -0
  125. package/less/headless-base.less +2 -0
  126. package/less/responsive.less +41 -0
  127. package/less/site/globals/site.variables.less +25 -0
  128. package/less/templates/adminDashboard/adminDashboard.less +27 -0
  129. package/less/templates/summer-ui/auth.less +30 -0
  130. package/less/templates/summer-ui/authCard.less +33 -0
  131. package/less/templates/summer-ui/authLayout.less +11 -0
  132. package/less/templates.less +4 -0
  133. package/less/theme.less +30 -0
  134. package/less/themes/material/variables.less +370 -0
  135. package/less/themes/summer/variables.less +380 -0
  136. package/less/variables.less +260 -0
  137. package/normalize.css +484 -0
  138. package/package.json +21 -0
@@ -0,0 +1,67 @@
1
+ .smwb-file-drop {
2
+ background-color: var(--smui-toggleTrackColor);
3
+ width: 326px;
4
+ height: 200px;
5
+
6
+ &__input {
7
+ display: flex;
8
+ justify-content: center;
9
+ align-items: center;
10
+ flex-wrap: wrap;
11
+ height: 100%;
12
+ width: 100%;
13
+ border: 3px dashed purple;
14
+
15
+ &-text {
16
+ text-align: center;
17
+ }
18
+ }
19
+
20
+ &__preview {
21
+ position: relative;
22
+ height: 100%;
23
+ width: 100%;
24
+
25
+ &-button {
26
+ position: absolute;
27
+ top: -18px;
28
+ right: -18px;
29
+ z-index: 1;
30
+ }
31
+
32
+ &-gallery {
33
+ height: 100%;
34
+ overflow: auto;
35
+ border: 3px solid purple;
36
+ border-radius: 4px;
37
+
38
+ &-image {
39
+ width: 100%;
40
+ height: 100%;
41
+ }
42
+
43
+ &-file {
44
+ width: calc(100% - 4px);
45
+ height: calc(100% - 4px);
46
+ display: flex;
47
+ align-items: center;
48
+ justify-content: center;
49
+ border: 1px solid purple;
50
+ user-select: none;
51
+ margin: 2px;
52
+ }
53
+ }
54
+
55
+ &-count {
56
+ display: flex;
57
+ align-items: center;
58
+ justify-content: center;
59
+ padding: 1px 4px;
60
+ height: 100%;
61
+ width: 100%;
62
+ overflow: auto;
63
+ border: 3px solid purple;
64
+ border-radius: 4px;
65
+ }
66
+ }
67
+ }
@@ -0,0 +1,2 @@
1
+ @import (reference) "../../_prelude.less";
2
+ @import "./fileInput.less";
@@ -0,0 +1,4 @@
1
+ .file-input {
2
+ width: 100px;
3
+ height: 30px;
4
+ }
@@ -0,0 +1,2 @@
1
+ @import (reference) "../../_prelude.less";
2
+ @import "./floatingButton.less";
@@ -0,0 +1,94 @@
1
+ .smwb-fab {
2
+ box-shadow: 0px 3px 5px -1px rgb(0 0 0 / 20%), 0px 6px 10px 0px rgb(0 0 0 / 14%), 0px 1px 18px 0px rgb(0 0 0 / 12%);
3
+ display: inline-flex;
4
+ align-items: center;
5
+ justify-content: center;
6
+ background-color: var(--smui-primaryContainer);
7
+ color: var(--smui-onPrimaryContainer);
8
+ transition: all 0.2s ease-in-out;
9
+ position: relative;
10
+ overflow: hidden;
11
+ animation: scale 0.3s ease-in-out;
12
+ animation-iteration-count: 1;
13
+ align-self: flex-start;
14
+
15
+ @keyframes scale {
16
+ from {
17
+ transform: scale(0);
18
+ }
19
+ to {
20
+ transform: scale(1);
21
+ }
22
+ }
23
+
24
+ &.smwb-default {
25
+ width: 56px;
26
+ height: 56px;
27
+ border-radius: @fabBorderRadius;
28
+ &.smwb-medium {
29
+ height: 48px;
30
+ width: 48px;
31
+ }
32
+ &.smwb-large {
33
+ height: 56px;
34
+ width: 56px;
35
+ }
36
+ &.smwb-small {
37
+ height: 40px;
38
+ width: 40px;
39
+ }
40
+ }
41
+ &.smwb-extended {
42
+ border-radius: 24px;
43
+ padding: 0 @fabExtendedPaddingX;
44
+ min-width: 48px;
45
+ height: 48px;
46
+ &.smwb-medium {
47
+ height: 40px;
48
+ }
49
+ &.smwb-large {
50
+ height: 48px;
51
+ }
52
+ &.smwb-small {
53
+ height: 34px;
54
+ padding: 0 @fabExtendedSmallPaddingX;
55
+ }
56
+ }
57
+ &:hover {
58
+ background-color: var(--smui-fabHoverBg);
59
+ }
60
+ &:focus {
61
+ background-color: var(--smui-fabFocusBg);
62
+ }
63
+ &:active {
64
+ background-color: var(--smui-fabActiveBg);
65
+ box-shadow: 0px 7px 8px -4px rgb(0 0 0 / 20%), 0px 12px 17px 2px rgb(0 0 0 / 14%), 0px 5px 22px 4px rgb(0 0 0 / 12%);
66
+ }
67
+
68
+ // Semantic color modifiers (additive; primary keeps the default look)
69
+ .smui-fab-color(@name; @c; @on; @h; @f; @a) {
70
+ &_color-@{name} {
71
+ background-color: @c;
72
+ color: @on;
73
+ &:hover {
74
+ background-color: @h;
75
+ }
76
+ &:focus {
77
+ background-color: @f;
78
+ }
79
+ &:active {
80
+ background-color: @a;
81
+ }
82
+ }
83
+ }
84
+ .smui-fab-color(secondary; var(--smui-secondaryColor); var(--smui-onSecondaryColor);
85
+ var(--smui-secondaryColorHover); var(--smui-secondaryColorFocus); var(--smui-secondaryColorActive));
86
+ .smui-fab-color(error; var(--smui-errorColor); var(--smui-onErrorColor);
87
+ var(--smui-errorColorHover); var(--smui-errorColorFocus); var(--smui-errorColorActive));
88
+ .smui-fab-color(success; var(--smui-successColor); var(--smui-onSuccessColor);
89
+ var(--smui-successColorHover); var(--smui-successColorFocus); var(--smui-successColorActive));
90
+ .smui-fab-color(warning; var(--smui-warningColor); var(--smui-onWarningColor);
91
+ var(--smui-warningColorHover); var(--smui-warningColorFocus); var(--smui-warningColorActive));
92
+ .smui-fab-color(info; var(--smui-infoColor); var(--smui-onInfoColor);
93
+ var(--smui-infoColorHover); var(--smui-infoColorFocus); var(--smui-infoColorActive));
94
+ }
@@ -0,0 +1,2 @@
1
+ @import (reference) "../../_prelude.less";
2
+ @import "./grid.less";
@@ -0,0 +1,174 @@
1
+ @gridCount: 12;
2
+ @gridBreakpoints: {
3
+ xs: @xs;
4
+ sm: @sm;
5
+ md: @md;
6
+ lg: @lg;
7
+ xl: @xl;
8
+ };
9
+ @gridSpacingCount: 20;
10
+ @gridSpacingWidth: @smui-spacing-unit;
11
+ @gridJustifyContent: center, flex-end, space-between, space-around, space-evenly;
12
+ @gridAlignItems: center, flex-end, stretch, baseline;
13
+ @gridDirection: row-reverse, column, column-reverse;
14
+
15
+ .generate-spacing-class-count(@prefix, @index: 1) when (@index <= @gridSpacingCount) {
16
+ &--@{prefix}-@{index} {
17
+ width: calc(100% + (@gridSpacingWidth * @index));
18
+ margin-top: (@gridSpacingWidth * -@index);
19
+ margin-left: (@gridSpacingWidth * -@index);
20
+ }
21
+
22
+ &--@{prefix}-@{index} > * {
23
+ padding-top: (@gridSpacingWidth * @index);
24
+ padding-left: (@gridSpacingWidth * @index);
25
+ }
26
+
27
+ &:not(:first-child) {
28
+ margin-top: 0;
29
+ }
30
+
31
+ .generate-spacing-class-count(@prefix, (@index + 1));
32
+ }
33
+
34
+ .generate-class-count(@prefix, @index: 1) when (@index <= @gridCount) {
35
+ @width: percentage((@index / @gridCount));
36
+
37
+ &--@{prefix}-@{index} {
38
+ flex-basis: @width;
39
+ max-width: @width;
40
+ }
41
+
42
+ .generate-class-count(@prefix, (@index + 1));
43
+ }
44
+
45
+ .generate-offset-count(@prefix, @index: 1) when (@index < @gridCount) {
46
+ &--@{prefix}-offset-@{index} {
47
+ margin-left: percentage((@index / @gridCount));
48
+ }
49
+
50
+ .generate-offset-count(@prefix, (@index + 1));
51
+ }
52
+
53
+ .generate-class-named(@prefix) {
54
+ &--@{prefix}-auto {
55
+ flex-shrink: 0;
56
+ max-width: none;
57
+ width: auto;
58
+ flex-basis: auto;
59
+ }
60
+
61
+ &--@{prefix}-true {
62
+ flex-basis: 0;
63
+ flex-grow: 1;
64
+ max-width: 100%;
65
+ }
66
+ }
67
+
68
+ .smwb-grid {
69
+ display: flex;
70
+ flex-wrap: wrap;
71
+ width: 100%;
72
+ box-sizing: border-box;
73
+
74
+ &__row {
75
+ display: flex;
76
+ flex-wrap: wrap;
77
+ width: 100%;
78
+ box-sizing: border-box;
79
+
80
+ .generate-spacing-class-count(spacing);
81
+
82
+ &--nowrap {
83
+ flex-wrap: nowrap;
84
+ }
85
+
86
+ &--wrap-reverse {
87
+ flex-wrap: wrap-reverse;
88
+ }
89
+
90
+ &--justifyContent {
91
+ each(@gridJustifyContent, {
92
+ &-@{value} {
93
+ justify-content: @value;
94
+ }
95
+ });
96
+ }
97
+
98
+ &--alignItems {
99
+ each(@gridAlignItems, {
100
+ &-@{value} {
101
+ align-items: @value;
102
+ }
103
+ });
104
+ }
105
+
106
+ &--direction {
107
+ each(@gridDirection, {
108
+ &-@{value} {
109
+ flex-direction: @value;
110
+ }
111
+ });
112
+ }
113
+ }
114
+
115
+ &__column {
116
+ flex-grow: 0;
117
+
118
+ each(@gridBreakpoints, {
119
+ & when (@index = 1) {
120
+ .generate-class-named(@key);
121
+ .generate-class-count(@key);
122
+ .generate-offset-count(@key);
123
+
124
+ &--hidden,
125
+ &--hidden-@{key} {
126
+ display: none;
127
+ }
128
+ }
129
+
130
+ & when (@index > 1) {
131
+ @media (min-width: @value) {
132
+ .generate-class-named(@key);
133
+ .generate-class-count(@key);
134
+ .generate-offset-count(@key);
135
+
136
+ &--hidden-@{key} {
137
+ display: none;
138
+ }
139
+
140
+ &--visible-@{key} {
141
+ display: block;
142
+ }
143
+ }
144
+ }
145
+ });
146
+ }
147
+ }
148
+
149
+ .smwb-container {
150
+ width: 100%;
151
+ margin-left: auto;
152
+ margin-right: auto;
153
+ box-sizing: border-box;
154
+ padding-left: @smui-space-lg;
155
+ padding-right: @smui-space-lg;
156
+
157
+ &--gutterless {
158
+ padding-left: 0;
159
+ padding-right: 0;
160
+ }
161
+
162
+ &--sm {
163
+ max-width: @smui-bp-sm;
164
+ }
165
+ &--md {
166
+ max-width: @smui-bp-md;
167
+ }
168
+ &--lg {
169
+ max-width: @smui-bp-lg;
170
+ }
171
+ &--xl {
172
+ max-width: @smui-bp-xl;
173
+ }
174
+ }
@@ -0,0 +1,2 @@
1
+ @import (reference) "../../_prelude.less";
2
+ @import "./icon.less";
@@ -0,0 +1,27 @@
1
+ .smwb-icon__wrapper {
2
+ display: inline-flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+
6
+ &.smwb-icon_color-primary {
7
+ color: var(--smui-primaryColor);
8
+ }
9
+ &.smwb-icon_color-secondary {
10
+ color: var(--smui-secondaryColor);
11
+ }
12
+ &.smwb-icon_color-error {
13
+ color: var(--smui-errorColor);
14
+ }
15
+ &.smwb-icon_color-success {
16
+ color: var(--smui-successColor);
17
+ }
18
+ &.smwb-icon_color-warning {
19
+ color: var(--smui-warningColor);
20
+ }
21
+ &.smwb-icon_color-info {
22
+ color: var(--smui-infoColor);
23
+ }
24
+ &.smwb-icon_color-disabled {
25
+ color: var(--smui-disabledTextColor);
26
+ }
27
+ }
@@ -0,0 +1,2 @@
1
+ @import (reference) "../../_prelude.less";
2
+ @import "./imagesList.less";
@@ -0,0 +1,35 @@
1
+ .smwb-gallery {
2
+ display: flex;
3
+ flex-direction: column;
4
+ width: 100%;
5
+ &__list {
6
+ &.smwb-default,
7
+ &.smwb-woven {
8
+ display: grid;
9
+ grid-template-columns: repeat(var(--cols-count), 1fr);
10
+ justify-content: center;
11
+ align-items: center;
12
+ padding: calc(var(--gap) / 2);
13
+ }
14
+ &.smwb-masonry {
15
+ display: block;
16
+ column-count: var(--cols-count);
17
+ -webkit-column-count: var(--cols-count);
18
+ -moz-column-count: var(--cols-count);
19
+ column-gap: var(--gap);
20
+ padding: 0;
21
+ }
22
+
23
+ &__item {
24
+ &.smwb-default,
25
+ &.smwb-woven {
26
+ padding: calc(var(--gap) / 2);
27
+ }
28
+ &.smwb-masonry {
29
+ padding: 0;
30
+ margin-bottom: var(--gap);
31
+ height: auto;
32
+ }
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,2 @@
1
+ @import (reference) "../../../_prelude.less";
2
+ @import "./imagesListItem.less";
@@ -0,0 +1,117 @@
1
+ .smwb-gallery-item {
2
+ width: 100%;
3
+ position: relative;
4
+ cursor: pointer;
5
+ overflow: hidden;
6
+ display: flex;
7
+ flex-direction: column;
8
+ &.smwb-woven {
9
+ height: 100%;
10
+ &:nth-of-type(even) {
11
+ height: 70%;
12
+ }
13
+ }
14
+ &__img {
15
+ object-fit: cover;
16
+ width: 100%;
17
+ height: 100%;
18
+ max-width: 100%;
19
+ max-height: 100%;
20
+ display: block;
21
+ position: relative;
22
+ left: 50%;
23
+ transform: translateX(-50%);
24
+ &.smwb-rounded {
25
+ border-radius: 16px;
26
+ }
27
+ }
28
+ &__img-wrapper {
29
+ display: block;
30
+ height: 100%;
31
+ position: relative;
32
+ overflow: hidden;
33
+ }
34
+ &__inner {
35
+ width: 100%;
36
+ height: 100%;
37
+ position: relative;
38
+ display: flex;
39
+ flex-direction: column;
40
+ }
41
+
42
+ &__bar {
43
+ padding: 0 @imagesListItemBarPaddingX;
44
+ height: 48px;
45
+ display: flex;
46
+ flex-direction: column;
47
+ justify-content: center;
48
+ position: absolute;
49
+ background-color: rgba(#000, 0.5);
50
+ width: 100%;
51
+ color: #fff;
52
+ overflow: hidden;
53
+ transition: all 0.2s ease-in-out;
54
+ left: 0;
55
+ cursor: default;
56
+ &.smwb-top {
57
+ top: 0;
58
+ &.smwb-rounded {
59
+ border-radius: 16px 16px 0 0;
60
+ }
61
+ }
62
+ &.smwb-bottom {
63
+ bottom: 0;
64
+ &.smwb-rounded {
65
+ border-radius: 0 0 16px 16px;
66
+ }
67
+ }
68
+ &.smwb-under {
69
+ position: static;
70
+ background-color: transparent;
71
+ color: var(--smui-primaryTextColor);
72
+ padding: @imagesListItemBarPadding;
73
+ }
74
+ }
75
+ }
76
+
77
+ .smwb-image-modal {
78
+ max-height: 90%;
79
+ max-width: 100%;
80
+ &__overlay {
81
+ width: 100%;
82
+ height: 100%;
83
+ display: flex;
84
+ flex-direction: column;
85
+ align-items: center;
86
+ justify-content: center;
87
+ position: fixed;
88
+ top: 0;
89
+ left: 0;
90
+ right: 0;
91
+ bottom: 0;
92
+ background-color: #000;
93
+ z-index: 1111;
94
+ transition: all 0.2s ease-in-out;
95
+ &-enter-done {
96
+ opacity: 1;
97
+ .smwb-image-modal__img {
98
+ transform: scale(1);
99
+ opacity: 1;
100
+ }
101
+ }
102
+ }
103
+
104
+ &__img {
105
+ transform: scale(0.5);
106
+ opacity: 0;
107
+ transition: all 0.2s ease-in-out;
108
+ width: auto;
109
+ max-width: 100%;
110
+ height: auto;
111
+ max-height: 100%;
112
+ display: block;
113
+ line-height: 0;
114
+ margin: 0 auto;
115
+ object-fit: cover;
116
+ }
117
+ }
@@ -0,0 +1,2 @@
1
+ @import (reference) "../../_prelude.less";
2
+ @import "./list.less";
@@ -0,0 +1,87 @@
1
+ .smwb-list {
2
+ display: flex;
3
+ flex-direction: column;
4
+ background-color: var(--smui-surfaceBackground);
5
+ width: 100%;
6
+ &__item {
7
+ padding: @listItemPadding;
8
+ cursor: pointer;
9
+ display: flex;
10
+ align-items: center;
11
+ line-height: 1.5;
12
+ transition: all 0.15s ease-in-out;
13
+ width: 100%;
14
+ color: var(--smui-onSurfaceColor);
15
+ min-height: 48px;
16
+ gap: @listItemGap;
17
+ &.smwb-disabled {
18
+ pointer-events: none;
19
+ opacity: 0.38;
20
+ }
21
+ &.smwb-selected {
22
+ background-color: var(--smui-primaryColorHover);
23
+ color: var(--smui-primaryColor);
24
+ &:hover {
25
+ background-color: var(--smui-primaryColorHover);
26
+ }
27
+ &:focus {
28
+ background-color: var(--smui-primaryColorFocus);
29
+ }
30
+ &:active {
31
+ background-color: var(--smui-primaryColorActive);
32
+ }
33
+ }
34
+ &:hover {
35
+ background-color: var(--smui-onSurfaceHover);
36
+ }
37
+ &:focus {
38
+ background-color: var(--smui-onSurfaceFocus);
39
+ }
40
+ &:active {
41
+ background-color: var(--smui-onSurfaceActive);
42
+ }
43
+
44
+ &__start,
45
+ &__end {
46
+ color: var(--smui-onSurfaceVariant);
47
+ flex-shrink: 0;
48
+ display: flex;
49
+ flex-direction: column;
50
+ align-items: center;
51
+ justify-content: center;
52
+ }
53
+ &__main {
54
+ flex: auto;
55
+ line-height: 1.2;
56
+ display: flex;
57
+ flex-direction: column;
58
+ justify-content: center;
59
+ }
60
+
61
+ &_dense {
62
+ min-height: 36px;
63
+ padding-top: @smui-space-xs;
64
+ padding-bottom: @smui-space-xs;
65
+ }
66
+
67
+ &_divider {
68
+ border-bottom: 1px solid var(--smui-dividerColor);
69
+ }
70
+ }
71
+
72
+ &_dense .smwb-list__item {
73
+ min-height: 36px;
74
+ padding-top: @smui-space-xs;
75
+ padding-bottom: @smui-space-xs;
76
+ }
77
+
78
+ &__subheader {
79
+ padding: @smui-space-sm @smui-space-lg;
80
+ color: var(--smui-onSurfaceVariant);
81
+ font-size: 0.8125rem;
82
+ font-weight: 600;
83
+ text-transform: uppercase;
84
+ letter-spacing: 0.04em;
85
+ list-style: none;
86
+ }
87
+ }
@@ -0,0 +1,2 @@
1
+ @import (reference) "../../_prelude.less";
2
+ @import "./menu.less";