@pacem/pacem-theme-less 1.0.0-amaldi

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 (211) hide show
  1. package/LICENSE +191 -0
  2. package/NOTICE +4 -0
  3. package/README.md +23 -0
  4. package/fonts-empty.less +11 -0
  5. package/pacem/2d/index.less +14 -0
  6. package/pacem/2d/stage.less +31 -0
  7. package/pacem/2d/text.less +16 -0
  8. package/pacem/3d/index.less +24 -0
  9. package/pacem/3d/stage.less +30 -0
  10. package/pacem/attributes.less +8 -0
  11. package/pacem/basic/dock.less +19 -0
  12. package/pacem/basic/drag-drop.less +75 -0
  13. package/pacem/basic/index.less +42 -0
  14. package/pacem/basic/repeater.less +3 -0
  15. package/pacem/basic/rescale.less +157 -0
  16. package/pacem/basic/resize.less +3 -0
  17. package/pacem/basic/scroll-aware.less +4 -0
  18. package/pacem/basic/swipe.less +22 -0
  19. package/pacem/basic/viewport-aware.less +4 -0
  20. package/pacem/body.less +197 -0
  21. package/pacem/charts/dark/column-line.less +10 -0
  22. package/pacem/charts/dark/column.less +61 -0
  23. package/pacem/charts/dark/index.less +9 -0
  24. package/pacem/charts/dark/line.less +111 -0
  25. package/pacem/charts/dark/pie.less +210 -0
  26. package/pacem/charts/dark/shared.less +88 -0
  27. package/pacem/charts/index.less +1 -0
  28. package/pacem/charts/light/index.less +2 -0
  29. package/pacem/charts/phousys/index.less +2 -0
  30. package/pacem/cms/datagrid-columns.less +41 -0
  31. package/pacem/cms/grid.less +23 -0
  32. package/pacem/cms/index.less +3 -0
  33. package/pacem/cms/shared.less +3 -0
  34. package/pacem/cms/widget.less +81 -0
  35. package/pacem/fonts-dark.less +7 -0
  36. package/pacem/fonts-light.less +7 -0
  37. package/pacem/fonts-none.less +1 -0
  38. package/pacem/fonts-phousys.less +8 -0
  39. package/pacem/fx/fancy.less +138 -0
  40. package/pacem/fx/gradient.less +21 -0
  41. package/pacem/fx/hero.less +12 -0
  42. package/pacem/fx/index.less +6 -0
  43. package/pacem/fx/list.less +11 -0
  44. package/pacem/fx/pulse.less +105 -0
  45. package/pacem/fx/ripple.less +66 -0
  46. package/pacem/icons.less +76 -0
  47. package/pacem/layout/animations.less +37 -0
  48. package/pacem/layout/dark/address.less +37 -0
  49. package/pacem/layout/dark/borders.less +102 -0
  50. package/pacem/layout/dark/breadcrumbs.less +85 -0
  51. package/pacem/layout/dark/cards.less +555 -0
  52. package/pacem/layout/dark/coloring.less +184 -0
  53. package/pacem/layout/dark/container.less +50 -0
  54. package/pacem/layout/dark/datatable.less +454 -0
  55. package/pacem/layout/dark/elevation.less +74 -0
  56. package/pacem/layout/dark/fetch-feedback.less +124 -0
  57. package/pacem/layout/dark/grid-system.less +181 -0
  58. package/pacem/layout/dark/grids.less +268 -0
  59. package/pacem/layout/dark/index.less +27 -0
  60. package/pacem/layout/dark/interactive.less +10 -0
  61. package/pacem/layout/dark/layout.less +616 -0
  62. package/pacem/layout/dark/lists.less +112 -0
  63. package/pacem/layout/dark/other.less +29 -0
  64. package/pacem/layout/dark/panels.less +299 -0
  65. package/pacem/layout/dark/positioning.less +273 -0
  66. package/pacem/layout/dark/scroll.less +93 -0
  67. package/pacem/layout/dark/shapes.less +22 -0
  68. package/pacem/layout/dark/sizing.less +108 -0
  69. package/pacem/layout/dark/spacing.less +296 -0
  70. package/pacem/layout/dark/superposition-system.less +116 -0
  71. package/pacem/layout/dark/tiles.less +71 -0
  72. package/pacem/layout/dark/tokens-chips.less +16 -0
  73. package/pacem/layout/dark/toolbar.less +32 -0
  74. package/pacem/layout/dark/typography.less +110 -0
  75. package/pacem/layout/dark/visibility.less +406 -0
  76. package/pacem/layout/index.less +2 -0
  77. package/pacem/layout/light/index.less +2 -0
  78. package/pacem/layout/light/layout.less +2 -0
  79. package/pacem/layout/mixins.less +445 -0
  80. package/pacem/layout/phousys/index.less +2 -0
  81. package/pacem/layout/phousys/layout.less +2 -0
  82. package/pacem/layout/shared.less +18 -0
  83. package/pacem/logging/console.less +3 -0
  84. package/pacem/logging/fps.less +6 -0
  85. package/pacem/logging/index.less +2 -0
  86. package/pacem/maps/index.less +21 -0
  87. package/pacem/media/dark/index.less +6 -0
  88. package/pacem/media/index.less +1 -0
  89. package/pacem/media/light/index.less +2 -0
  90. package/pacem/media/phousys/index.less +2 -0
  91. package/pacem/pacem-animations.less +202 -0
  92. package/pacem/pacem.less +448 -0
  93. package/pacem/palette-dark.less +0 -0
  94. package/pacem/palette-light.less +0 -0
  95. package/pacem/plus/carousel.less +370 -0
  96. package/pacem/plus/context-menu.less +31 -0
  97. package/pacem/plus/datagrid/datacell.less +10 -0
  98. package/pacem/plus/datagrid/headcell.less +32 -0
  99. package/pacem/plus/datagrid/index.less +48 -0
  100. package/pacem/plus/edit.less +42 -0
  101. package/pacem/plus/gallery.less +239 -0
  102. package/pacem/plus/index.less +7 -0
  103. package/pacem/plus/modal-form.less +27 -0
  104. package/pacem/plus/router-hash-state.less +6 -0
  105. package/pacem/reset.less +51 -0
  106. package/pacem/scaffolding/dark/calendar-picker.less +415 -0
  107. package/pacem/scaffolding/dark/char-counter.less +68 -0
  108. package/pacem/scaffolding/dark/chars.less +29 -0
  109. package/pacem/scaffolding/dark/checkbox-radio-shared.less +150 -0
  110. package/pacem/scaffolding/dark/checkbox.less +232 -0
  111. package/pacem/scaffolding/dark/childform.less +191 -0
  112. package/pacem/scaffolding/dark/color.less +128 -0
  113. package/pacem/scaffolding/dark/contenteditable/alignment.less +6 -0
  114. package/pacem/scaffolding/dark/contenteditable/dashboard.less +253 -0
  115. package/pacem/scaffolding/dark/contenteditable/index.less +4 -0
  116. package/pacem/scaffolding/dark/contenteditable/picture.less +74 -0
  117. package/pacem/scaffolding/dark/contenteditable/placeholder.less +24 -0
  118. package/pacem/scaffolding/dark/contenteditable.less +157 -0
  119. package/pacem/scaffolding/dark/datepicker.less +129 -0
  120. package/pacem/scaffolding/dark/dialog-overrides.less +32 -0
  121. package/pacem/scaffolding/dark/element-picker.less +11 -0
  122. package/pacem/scaffolding/dark/expression.less +34 -0
  123. package/pacem/scaffolding/dark/form.less +16 -0
  124. package/pacem/scaffolding/dark/formfield.less +1149 -0
  125. package/pacem/scaffolding/dark/geolocate.less +12 -0
  126. package/pacem/scaffolding/dark/hierarchy.less +82 -0
  127. package/pacem/scaffolding/dark/image.less +195 -0
  128. package/pacem/scaffolding/dark/index.less +57 -0
  129. package/pacem/scaffolding/dark/input.less +134 -0
  130. package/pacem/scaffolding/dark/latlng.less +163 -0
  131. package/pacem/scaffolding/dark/markdown.less +20 -0
  132. package/pacem/scaffolding/dark/namevalue-list.less +13 -0
  133. package/pacem/scaffolding/dark/number.less +12 -0
  134. package/pacem/scaffolding/dark/password.less +12 -0
  135. package/pacem/scaffolding/dark/property-picker.less +11 -0
  136. package/pacem/scaffolding/dark/radio.less +78 -0
  137. package/pacem/scaffolding/dark/search.less +29 -0
  138. package/pacem/scaffolding/dark/select.less +55 -0
  139. package/pacem/scaffolding/dark/slider.less +176 -0
  140. package/pacem/scaffolding/dark/snapshot.less +183 -0
  141. package/pacem/scaffolding/dark/suggest.less +115 -0
  142. package/pacem/scaffolding/dark/tags.less +149 -0
  143. package/pacem/scaffolding/dark/tel.less +11 -0
  144. package/pacem/scaffolding/dark/textarea.less +29 -0
  145. package/pacem/scaffolding/dark/upload.less +252 -0
  146. package/pacem/scaffolding/dark/url.less +9 -0
  147. package/pacem/scaffolding/dark/validators.less +36 -0
  148. package/pacem/scaffolding/index.less +2 -0
  149. package/pacem/scaffolding/light/index.less +2 -0
  150. package/pacem/scaffolding/phousys/index.less +2 -0
  151. package/pacem/scaffolding/shared.less +249 -0
  152. package/pacem/text-overrides.less +219 -0
  153. package/pacem/theme-dark.less +676 -0
  154. package/pacem/theme-light.less +119 -0
  155. package/pacem/theme-phousys-old.less +130 -0
  156. package/pacem/theme-phousys.less +153 -0
  157. package/pacem/transforms/index.less +7 -0
  158. package/pacem/ui/dark/anchor.less +45 -0
  159. package/pacem/ui/dark/balloon.less +566 -0
  160. package/pacem/ui/dark/binder.less +50 -0
  161. package/pacem/ui/dark/blade.less +110 -0
  162. package/pacem/ui/dark/body.less +5 -0
  163. package/pacem/ui/dark/bottom-sheet.less +69 -0
  164. package/pacem/ui/dark/button.less +716 -0
  165. package/pacem/ui/dark/calendar.less +660 -0
  166. package/pacem/ui/dark/collapse.less +23 -0
  167. package/pacem/ui/dark/dialog.less +17 -0
  168. package/pacem/ui/dark/divider.less +49 -0
  169. package/pacem/ui/dark/header-footer.less +5 -0
  170. package/pacem/ui/dark/icon.less +141 -0
  171. package/pacem/ui/dark/image.less +90 -0
  172. package/pacem/ui/dark/index.less +82 -0
  173. package/pacem/ui/dark/infinite-scroller.less +5 -0
  174. package/pacem/ui/dark/led.less +142 -0
  175. package/pacem/ui/dark/lightbox.less +140 -0
  176. package/pacem/ui/dark/loader.less +219 -0
  177. package/pacem/ui/dark/markdown.less +292 -0
  178. package/pacem/ui/dark/marquee.less +49 -0
  179. package/pacem/ui/dark/menu.less +578 -0
  180. package/pacem/ui/dark/pager.less +166 -0
  181. package/pacem/ui/dark/picture.less +146 -0
  182. package/pacem/ui/dark/progressbar.less +167 -0
  183. package/pacem/ui/dark/sidebar.less +144 -0
  184. package/pacem/ui/dark/slideshow.less +1 -0
  185. package/pacem/ui/dark/social.less +5 -0
  186. package/pacem/ui/dark/sticky-header.less +41 -0
  187. package/pacem/ui/dark/tabs.less +423 -0
  188. package/pacem/ui/dark/ticker.less +173 -0
  189. package/pacem/ui/dark/timeline.less +159 -0
  190. package/pacem/ui/dark/toast.less +232 -0
  191. package/pacem/ui/dark/toc.less +47 -0
  192. package/pacem/ui/dark/tuner.less +155 -0
  193. package/pacem/ui/dark/view.less +17 -0
  194. package/pacem/ui/dark/window.less +313 -0
  195. package/pacem/ui/dialog-vars.less +159 -0
  196. package/pacem/ui/index.less +1 -0
  197. package/pacem/ui/light/button.less +8 -0
  198. package/pacem/ui/light/index.less +3 -0
  199. package/pacem/ui/light/loader.less +2 -0
  200. package/pacem/ui/light/menu.less +2 -0
  201. package/pacem/ui/light/sidebar.less +2 -0
  202. package/pacem/ui/phousys/button.less +8 -0
  203. package/pacem/ui/phousys/index.less +3 -0
  204. package/pacem/ui/phousys/loader.less +2 -0
  205. package/pacem/ui/phousys/menu.less +2 -0
  206. package/pacem/ui/phousys/sidebar.less +2 -0
  207. package/pacem/ui/shared.less +125 -0
  208. package/package.json +39 -0
  209. package/shared.less +161 -0
  210. package/theme-empty.less +116 -0
  211. package/themebuilder.js +290 -0
@@ -0,0 +1,49 @@
1
+ @import "../shared";
2
+
3
+ @{P}-divider {
4
+ display: block;
5
+
6
+ &::part(divider) {
7
+ display: flex;
8
+ flex-direction: row;
9
+ align-items: center;
10
+ justify-content: center;
11
+ }
12
+
13
+ &::part(content) {
14
+ flex: 0 1 auto;
15
+ }
16
+
17
+ &::part(append),
18
+ &::part(prepend) {
19
+ flex: 1 1 100%;
20
+ display: block;
21
+ height: 0;
22
+ border-left: 0;
23
+ border-right: 0;
24
+ border-top: 1px solid @color_border_dark;
25
+ border-bottom: 1px solid @color_border_light;
26
+ }
27
+
28
+ &.divider-horizontal {
29
+ // default
30
+ }
31
+
32
+ &.divider-vertical {
33
+
34
+ &::part(divider) {
35
+ height: 100%;
36
+ flex-direction: column;
37
+ }
38
+
39
+ &::part(append),
40
+ &::part(prepend) {
41
+ width: 0;
42
+ height: 100%;
43
+ border-top: 0;
44
+ border-bottom: 0;
45
+ border-left: 1px solid @color_border_dark;
46
+ border-right: 1px solid @color_border_light;
47
+ }
48
+ }
49
+ }
@@ -0,0 +1,5 @@
1
+ @import "../shared";
2
+
3
+ @media (min-width: 1200px) {
4
+
5
+ }
@@ -0,0 +1,141 @@
1
+ @import "../shared";
2
+
3
+ @{P}-icon {
4
+ display: inline-block;
5
+ vertical-align: middle;
6
+ border-radius: 50%;
7
+
8
+ > i,
9
+ > i.@{PCSS}-icon,
10
+ > i.material-icons,
11
+ > i.material-symbols-outlined,
12
+ > i.material-symbols-sharp,
13
+ > i.material-symbols-rounded,
14
+ > img,
15
+ > svg {
16
+ display: block;
17
+ }
18
+
19
+ &.icon-fill {
20
+ > i {
21
+ .IconVariation(1);
22
+ }
23
+ }
24
+
25
+ &.icon-outline {
26
+ > i {
27
+ .IconVariation(0);
28
+ }
29
+ }
30
+
31
+ &.icon-text-bottom {
32
+ vertical-align: text-bottom;
33
+ }
34
+
35
+ &.icon-text-top {
36
+ vertical-align: text-top;
37
+ }
38
+
39
+ &.icon-top {
40
+ vertical-align: top;
41
+ }
42
+
43
+ &.icon-bottom {
44
+ vertical-align: bottom;
45
+ }
46
+ // icon rotations
47
+ &.icon-rotate {
48
+ transform-origin: center center;
49
+ // rotate
50
+ &.rotate-45 {
51
+ transform: rotate(45deg);
52
+ }
53
+
54
+ &.rotate-90 {
55
+ transform: rotate(90deg);
56
+ }
57
+
58
+ &.rotate-135 {
59
+ transform: rotate(135deg);
60
+ }
61
+
62
+ &.rotate-180 {
63
+ transform: rotate(180deg);
64
+ }
65
+
66
+ &.rotate-225 {
67
+ transform: rotate(225deg);
68
+ }
69
+
70
+ &.rotate-270 {
71
+ transform: rotate(270deg);
72
+ }
73
+
74
+ &.rotate-315 {
75
+ transform: rotate(315deg);
76
+ }
77
+ }
78
+
79
+ &.icon-flip {
80
+ &.flip-horizontal {
81
+ transform: scale(-1,1);
82
+ }
83
+
84
+ &.flip-vertical {
85
+ transform: scale(1,-1);
86
+ }
87
+ }
88
+ }
89
+
90
+ // sizes
91
+ @{P}-icon, i.@{PCSS}-icon {
92
+
93
+ &.icon-size-small {
94
+ font-size: .9 * @font_icon_size;
95
+ }
96
+
97
+ &.icon-size-smaller {
98
+ font-size: .8667 * @font_icon_size;
99
+ }
100
+
101
+ &.icon-size-tiny {
102
+ font-size: .75 * @font_icon_size;
103
+ }
104
+
105
+ &.icon-size-smallest {
106
+ font-size: .6667 * @font_icon_size;
107
+ }
108
+
109
+ &.icon-size-big {
110
+ font-size: 1.3333 * @font_icon_size;
111
+ }
112
+
113
+ &.icon-size-bigger {
114
+ font-size: 1.6667 * @font_icon_size;
115
+ }
116
+
117
+ &.icon-size-huge {
118
+ font-size: 2 * @font_icon_size;
119
+ }
120
+
121
+ &.icon-size-biggest {
122
+ font-size: 2.5 * @font_icon_size;
123
+ }
124
+
125
+ &.icon-size-regular {
126
+ font-size: @font_icon_size;
127
+ }
128
+
129
+ &.icon-size {
130
+
131
+ each(range(12), {
132
+
133
+ &.icon-size-@{value}{
134
+ font-size: ~"var(--@{PCSS}-size-@{value})";
135
+ }
136
+ &.icon-size--@{value}{
137
+ font-size: ~"var(--@{PCSS}-size--@{value})";
138
+ }
139
+ });
140
+ }
141
+ }
@@ -0,0 +1,90 @@
1
+ @import "../shared";
2
+
3
+ @{P}-img {
4
+ background-position: center center;
5
+ background-repeat: no-repeat;
6
+ display: inline-block;
7
+ position: relative;
8
+ }
9
+
10
+ @{P}-img::before {
11
+ @_size: 2 * @grid_spacing;
12
+ @_brd: @grid_spacing/8;
13
+
14
+ display: block;
15
+ content: '';
16
+ width: @_size;
17
+ height: $width;
18
+ border-radius: 50%;
19
+ border: @_brd solid @color_border;
20
+ border-top-color: @color_default;
21
+ animation: rotate-anim linear 1s infinite both;
22
+ top: 50%;
23
+ left: 50%;
24
+ margin-left: -(@_size * .5 + @_brd);
25
+ margin-top: $margin-left;
26
+ position: absolute;
27
+ transition: transform .2s @easing_in_out_sine, opacity .2s linear;
28
+ pointer-events: none;
29
+ }
30
+
31
+ @{P}-img.img-ready::before {
32
+ transform: scale(0);
33
+ opacity: 0;
34
+ animation: none;
35
+ }
36
+
37
+ .ImageBlend(@clr) {
38
+ background-color: @clr;
39
+
40
+ & when (@blur = true) {
41
+ opacity: .6667;
42
+ }
43
+ }
44
+
45
+ @{P}-img.img-ready {
46
+
47
+ &.img-blend {
48
+ background-blend-mode: luminosity;
49
+
50
+ &.blend-accent {
51
+ .ImageBlend(@color_accent);
52
+ }
53
+
54
+ &.blend-success {
55
+ .ImageBlend(@color_success);
56
+ }
57
+
58
+ &.blend-warning {
59
+ .ImageBlend(@color_warning);
60
+ }
61
+
62
+ &.blend-primary {
63
+ .ImageBlend(@color_primary);
64
+ }
65
+
66
+ &.blend-danger {
67
+ .ImageBlend(@color_danger);
68
+ }
69
+
70
+ &.blend-error {
71
+ .ImageBlend(@color_error);
72
+ }
73
+
74
+ &.blend-default {
75
+ .ImageBlend(@color_background);
76
+ }
77
+
78
+ &.blend-invert {
79
+ .ImageBlend(@color_default);
80
+ }
81
+
82
+ &.blend-alt {
83
+ .ImageBlend(@color_background_alt);
84
+ }
85
+ }
86
+ }
87
+
88
+ @{P}-img.img-grayscale{
89
+ .Grayscale();
90
+ }
@@ -0,0 +1,82 @@
1
+ /*#region HIDDEN*/
2
+
3
+ .@{PCSS}-hidden {
4
+ transition: all .3s cubic-bezier(0.6, -0.28, 0.735, 0.045);
5
+ //display: none !important;
6
+ opacity: 0;
7
+ transform: scale(0,0);
8
+
9
+ &.slide {
10
+ transition: all .3s cubic-bezier(0.95, 0.05, 0.795, 0.035);
11
+ transform: none;
12
+ overflow: hidden;
13
+ height: 0;
14
+
15
+ &.horizontal {
16
+ height: auto;
17
+ width: 0;
18
+ }
19
+ }
20
+ }
21
+
22
+ .@{PCSS}-shown {
23
+ transition: all .3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
24
+ //display: normal;
25
+ opacity: 1;
26
+ transform: scale(1,1);
27
+
28
+ &.slide {
29
+ transition: all .3s cubic-bezier(0.19, 1, 0.22, 1);
30
+ transform: none;
31
+ overflow: hidden;
32
+ }
33
+ }
34
+
35
+ /*#endregion*/
36
+
37
+ // non-UI components
38
+ @{P}-media-query,
39
+ @{P}-vibrate {
40
+ .Inert();
41
+ }
42
+
43
+ @import "body";
44
+ @import "header-footer";
45
+ @import "collapse";
46
+ @import "calendar";
47
+ @import "balloon";
48
+ @import "toast";
49
+ @import "infinite-scroller";
50
+ @import "anchor";
51
+ @import "button";
52
+ @import "pager";
53
+ @import "icon";
54
+ @import "image";
55
+ @import "picture";
56
+ @import "progressbar";
57
+ @import "tuner";
58
+ @import "dialog";
59
+ @import "lightbox";
60
+
61
+ // to be imported separately by the shell css
62
+ // @import "menu";
63
+ // @import "sidebar";
64
+ @import "binder";
65
+ @import "markdown";
66
+ @import "social";
67
+ @import "marquee";
68
+ @import "tabs";
69
+ @import "toc";
70
+ @import "led";
71
+
72
+ // to be imported separately by the shell css
73
+ // @import "loader";
74
+ @import "view";
75
+ @import "slideshow";
76
+ @import "timeline";
77
+ @import "window";
78
+ @import "sticky-header";
79
+ @import "blade";
80
+ @import "divider";
81
+ @import "ticker";
82
+ @import "bottom-sheet";
@@ -0,0 +1,5 @@
1
+ @import "../shared";
2
+
3
+ @{P}-infinite-scroller{
4
+ display: block;
5
+ }
@@ -0,0 +1,142 @@
1
+ @import "../shared";
2
+
3
+ .LedSize(@size) {
4
+ width: @size;
5
+ height: $width;
6
+
7
+ & when (@dark_theme = true) {
8
+ padding: ceil($width / 8);
9
+ }
10
+
11
+ & when (@dark_theme = false) {
12
+ padding: ceil($width / 12);
13
+ }
14
+ }
15
+
16
+ .LedOn(@clr) {
17
+ &::before {
18
+ background-color: @clr;
19
+
20
+ & when (@gradients = true) {
21
+ .LedOutset(@clr);
22
+ }
23
+
24
+ & when (@glows = true) {
25
+ .LedGlow(@clr)
26
+ }
27
+ }
28
+
29
+ &.led-outset::before {
30
+ .LedOutset(@clr);
31
+ }
32
+
33
+ &.led-glow::before {
34
+ .LedGlow(@clr)
35
+ }
36
+ }
37
+
38
+ .LedOutset(@clr) {
39
+ .GradientRadial(0, 50%, lighten(@clr, 10), @clr);
40
+ }
41
+
42
+ .LedGlow(@clr) {
43
+ box-shadow: 0 0 8px @clr;
44
+ }
45
+
46
+ .LedInset() {
47
+ & when (@dark_theme = false) {
48
+ .GradientVertical(0, 100%, rgba(0,0,0,.25), rgba(255,255,255,1));
49
+ }
50
+
51
+ & when (@dark_theme = true) {
52
+ .GradientVertical(0, 100%, rgba(0,0,0,.5), rgba(255,255,255,.2));
53
+ }
54
+ }
55
+
56
+ @keyframes led-blink {
57
+ 0% {
58
+ opacity: .5;
59
+ }
60
+
61
+ 100% {
62
+ opacity: 1;
63
+ }
64
+ }
65
+
66
+ .@{PCSS}-led {
67
+ border-radius: 50%;
68
+ display: inline-block;
69
+ background-color: transparent;
70
+ .LedSize( @grid_spacing);
71
+
72
+ & when(@shadows = true) {
73
+ .LedInset();
74
+ }
75
+
76
+ &.led-inset {
77
+ .LedInset();
78
+ }
79
+
80
+ &::before {
81
+ display: block;
82
+ border-radius: 50%;
83
+ height: 100%;
84
+ content: '';
85
+ background-color: @color_background;
86
+ }
87
+
88
+ &.led-small {
89
+ .LedSize(@grid_spacing * 2 / 3);
90
+ }
91
+
92
+ &.led-smaller {
93
+ .LedSize(@grid_spacing / 2);
94
+ }
95
+
96
+ &.led-tiny {
97
+ .LedSize(@grid_spacing / 3);
98
+ }
99
+
100
+ &.led-big {
101
+ .LedSize(@grid_spacing * 1.25);
102
+ }
103
+
104
+ &.led-bigger {
105
+ .LedSize(@grid_spacing * 1.5);
106
+ }
107
+
108
+ &.led-on {
109
+
110
+ &.led-accent {
111
+ .LedOn(@color_accent);
112
+ }
113
+
114
+ &.led-primary {
115
+ .LedOn(@color_primary);
116
+ }
117
+
118
+ &.led-success {
119
+ .LedOn(@color_success);
120
+ }
121
+
122
+ &.led-error {
123
+ .LedOn(@color_error);
124
+ }
125
+
126
+ &.led-warning {
127
+ .LedOn(@color_warning);
128
+ }
129
+
130
+ &.led-danger {
131
+ .LedOn(@color_danger);
132
+ }
133
+
134
+ &.led-disabled {
135
+ .LedOn(@color_disabled);
136
+ }
137
+
138
+ &.led-blink::before {
139
+ animation: led-blink .3s ease-in-out alternate-reverse infinite;
140
+ }
141
+ }
142
+ }
@@ -0,0 +1,140 @@
1
+ @import "../dialog-vars";
2
+
3
+ /*#region LIGHTBOX*/
4
+ @_lbPadding: @grid_spacing;
5
+
6
+ @{P}-lightbox {
7
+ pointer-events: none;
8
+
9
+ &::part(close) {
10
+ position: absolute;
11
+ top: 0;
12
+ right: 0;
13
+ margin: ~"var(--@{PCSS}-size-1)";
14
+ z-index: 2;
15
+ }
16
+
17
+ &::part(lightbox-wrapper) {
18
+ z-index: @lightbox_z_index;
19
+ box-sizing: border-box;
20
+ background-color: transparent;
21
+ position: fixed;
22
+ top: 0;
23
+ left: 0;
24
+ right: 0;
25
+ bottom: 0;
26
+ padding: @_lbPadding;
27
+ display: flex;
28
+ flex-direction: column;
29
+ align-items: center;
30
+ justify-content: center;
31
+ // overscroll-behavior: contain;
32
+ }
33
+
34
+ &::part(lightbox-wrapper-shown) {
35
+ background-color: @color_lightbox_back;
36
+ pointer-events: auto;
37
+ }
38
+
39
+ &::part(lightbox) {
40
+ width: 100%;
41
+ position: relative;
42
+ display: grid;
43
+ grid-template-rows: auto 1fr auto;
44
+ }
45
+
46
+ &::part(top) {
47
+ grid-row: 1;
48
+ overflow: hidden;
49
+ }
50
+
51
+ &::part(scrollable) {
52
+ grid-row: 2;
53
+ }
54
+
55
+ &::part(bottom) {
56
+ grid-row: 3;
57
+ overflow: hidden;
58
+ }
59
+ }
60
+
61
+ @{P}-lightbox.lightbox-corners::part(lightbox) when (@border_radius = 0) {
62
+ .Corners(fade(@color_border, 100), 0, @corner_size);
63
+ }
64
+
65
+ @{P}-lightbox {
66
+ &::part(lightbox) {
67
+ @_clr: @color_lightbox;
68
+ @_fore_clr: @color_default;
69
+ color: @_fore_clr;
70
+ max-width: 80vw;
71
+ @_totalPad: 2 * @_lbPadding;
72
+ max-height: ~"calc(100vh - @{_totalPad})";
73
+ box-sizing: border-box;
74
+ border-radius: @border_radius;
75
+
76
+ & when (@blur = false) {
77
+ background-color: @_clr;
78
+ }
79
+
80
+ & when (@blur = true) {
81
+ .Blur(6px, @_clr);
82
+ }
83
+ }
84
+
85
+ &::part(scrollable) {
86
+ position: relative;
87
+ max-width: 80vw;
88
+ height: 100%;
89
+ box-sizing: border-box;
90
+ border: @lightbox_padding solid transparent; // @_clr;
91
+ border-top-left-radius: @border_radius;
92
+ border-top-right-radius: @border_radius;
93
+ overflow-x: hidden;
94
+ overflow-y: auto;
95
+ }
96
+ }
97
+
98
+ @{P}-lightbox::part(lightbox) when (@dark_theme = false) {
99
+ box-shadow: 0 @grid_spacing/4 3 * @grid_spacing/4 rgba(0,0,0,0.2);
100
+ }
101
+
102
+ @{P}-lightbox::part(lightbox) when (@dark_theme = true) {
103
+ box-shadow: 0 @grid_spacing/4 @grid_spacing rgba(0,0,0,0.75);
104
+ }
105
+
106
+ @{P}-lightbox {
107
+ .DialogPositioning(lightbox);
108
+ .DialogAlignment(lightbox);
109
+ .DialogSize(lightbox);
110
+ }
111
+ /*#endregion*/
112
+
113
+ .@{PCSS}-animations {
114
+
115
+ @{P}-lightbox {
116
+ &::part(lightbox-wrapper) {
117
+ transition: background-color .25s;
118
+ }
119
+
120
+ &::part(lightbox) {
121
+ opacity: 0;
122
+ transform: translateY(@grid_spacing);
123
+ }
124
+
125
+ &.lightbox-top::part(lightbox) {
126
+ transform: translateY(-1 * @grid_spacing);
127
+ }
128
+
129
+ &::part(lightbox-wrapper-shown) {
130
+ transition: background-color .4s .15s;
131
+ }
132
+
133
+ &.lightbox-top::part(lightbox-shown),
134
+ &::part(lightbox-shown) {
135
+ transition: opacity .2s, transform .35s ease-out;
136
+ opacity: 1;
137
+ transform: none;
138
+ }
139
+ }
140
+ }