@pacem/pacem-theme-css 0.0.0-stage → 2.0.0-abel

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 (153) hide show
  1. package/LICENSE +191 -0
  2. package/NOTICE +4 -0
  3. package/README.md +142 -3
  4. package/cli.js +26 -0
  5. package/pacem-themes.json +10 -0
  6. package/package.json +45 -6
  7. package/src/2d/index.css +44 -0
  8. package/src/3d/index.css +49 -0
  9. package/src/base/animations.css +82 -0
  10. package/src/base/attributes.css +19 -0
  11. package/src/base/backgrounds.css +37 -0
  12. package/src/base/body.css +199 -0
  13. package/src/base/content.css +4 -0
  14. package/src/base/icons.css +74 -0
  15. package/src/base/logging.css +5 -0
  16. package/src/base/overrides.css +3 -0
  17. package/src/base/preloader.css +17 -0
  18. package/src/base/reset.css +50 -0
  19. package/src/base/shell.css +3 -0
  20. package/src/base/text.css +184 -0
  21. package/src/basic/index.css +285 -0
  22. package/src/charts/generated/colors.css +49 -0
  23. package/src/charts/index.css +573 -0
  24. package/src/fx/index.css +230 -0
  25. package/src/layout/address.css +46 -0
  26. package/src/layout/animations.css +33 -0
  27. package/src/layout/borders.css +63 -0
  28. package/src/layout/box.css +271 -0
  29. package/src/layout/breadcrumbs.css +114 -0
  30. package/src/layout/cards.css +246 -0
  31. package/src/layout/coloring.css +862 -0
  32. package/src/layout/container.css +40 -0
  33. package/src/layout/corners.css +52 -0
  34. package/src/layout/datatable.css +324 -0
  35. package/src/layout/elevation.css +73 -0
  36. package/src/layout/fetch-feedback.css +125 -0
  37. package/src/layout/generated/borders.css +403 -0
  38. package/src/layout/generated/card-ribbon.css +94 -0
  39. package/src/layout/generated/card-sides.css +888 -0
  40. package/src/layout/generated/grid-system.css +308 -0
  41. package/src/layout/generated/grids.css +952 -0
  42. package/src/layout/generated/layout-stretch.css +132 -0
  43. package/src/layout/generated/positioning.css +323 -0
  44. package/src/layout/generated/sizing.css +478 -0
  45. package/src/layout/generated/spacing.css +1988 -0
  46. package/src/layout/generated/visibility.css +384 -0
  47. package/src/layout/grid-system.css +49 -0
  48. package/src/layout/grids.css +92 -0
  49. package/src/layout/index.css +39 -0
  50. package/src/layout/interactive.css +11 -0
  51. package/src/layout/layout.css +479 -0
  52. package/src/layout/lists.css +104 -0
  53. package/src/layout/other.css +25 -0
  54. package/src/layout/panels.css +337 -0
  55. package/src/layout/positioning.css +108 -0
  56. package/src/layout/scroll.css +85 -0
  57. package/src/layout/shapes.css +20 -0
  58. package/src/layout/shell.css +3 -0
  59. package/src/layout/sizing.css +25 -0
  60. package/src/layout/spacing.css +17 -0
  61. package/src/layout/superposition-system.css +116 -0
  62. package/src/layout/tokens-chips.css +15 -0
  63. package/src/layout/toolbar.css +30 -0
  64. package/src/layout/typography.css +106 -0
  65. package/src/layout/visibility.css +231 -0
  66. package/src/maps/index.css +20 -0
  67. package/src/media/index.css +6 -0
  68. package/src/media.css +18 -0
  69. package/src/pacem-content.css +24 -0
  70. package/src/pacem-shell.css +14 -0
  71. package/src/pacem.css +35 -0
  72. package/src/plus/carousel.css +327 -0
  73. package/src/plus/datagrid.css +68 -0
  74. package/src/plus/gallery.css +186 -0
  75. package/src/plus/icons.css +25 -0
  76. package/src/plus/index.css +7 -0
  77. package/src/plus/misc.css +194 -0
  78. package/src/scaffolding/calendar-picker.css +291 -0
  79. package/src/scaffolding/checkbox-radio.css +118 -0
  80. package/src/scaffolding/checkbox.css +200 -0
  81. package/src/scaffolding/childform.css +156 -0
  82. package/src/scaffolding/color.css +129 -0
  83. package/src/scaffolding/contenteditable.css +403 -0
  84. package/src/scaffolding/datepicker.css +126 -0
  85. package/src/scaffolding/elements.css +30 -0
  86. package/src/scaffolding/fieldset.css +346 -0
  87. package/src/scaffolding/form.css +36 -0
  88. package/src/scaffolding/formfield.css +364 -0
  89. package/src/scaffolding/generated/calendar-picker.css +40 -0
  90. package/src/scaffolding/generated/colors.css +115 -0
  91. package/src/scaffolding/generated/formfield.css +500 -0
  92. package/src/scaffolding/hierarchy.css +76 -0
  93. package/src/scaffolding/icons.css +64 -0
  94. package/src/scaffolding/image.css +195 -0
  95. package/src/scaffolding/index.css +40 -0
  96. package/src/scaffolding/input.css +163 -0
  97. package/src/scaffolding/inputs.css +77 -0
  98. package/src/scaffolding/latlng.css +173 -0
  99. package/src/scaffolding/markdown.css +14 -0
  100. package/src/scaffolding/password.css +7 -0
  101. package/src/scaffolding/pickers.css +150 -0
  102. package/src/scaffolding/radio.css +68 -0
  103. package/src/scaffolding/select.css +59 -0
  104. package/src/scaffolding/slider.css +236 -0
  105. package/src/scaffolding/snapshot.css +167 -0
  106. package/src/scaffolding/suggest.css +92 -0
  107. package/src/scaffolding/tags.css +132 -0
  108. package/src/scaffolding/textarea.css +45 -0
  109. package/src/scaffolding/upload.css +283 -0
  110. package/src/scaffolding/validators.css +29 -0
  111. package/src/tokens/colors.css +403 -0
  112. package/src/tokens/components.css +16 -0
  113. package/src/tokens/system.css +92 -0
  114. package/src/tokens/theme.css +221 -0
  115. package/src/traits.css +18 -0
  116. package/src/transforms/index.css +5 -0
  117. package/src/ui/anchor.css +55 -0
  118. package/src/ui/balloon.css +573 -0
  119. package/src/ui/binder.css +28 -0
  120. package/src/ui/blade.css +83 -0
  121. package/src/ui/bottom-sheet.css +53 -0
  122. package/src/ui/button.css +626 -0
  123. package/src/ui/calendar.css +415 -0
  124. package/src/ui/collapse.css +25 -0
  125. package/src/ui/dialog.css +230 -0
  126. package/src/ui/divider.css +42 -0
  127. package/src/ui/generated/calendar.css +363 -0
  128. package/src/ui/hidden.css +40 -0
  129. package/src/ui/icon.css +90 -0
  130. package/src/ui/image.css +140 -0
  131. package/src/ui/index.css +30 -0
  132. package/src/ui/led.css +84 -0
  133. package/src/ui/loader.css +174 -0
  134. package/src/ui/markdown.css +352 -0
  135. package/src/ui/marquee.css +41 -0
  136. package/src/ui/menu.css +386 -0
  137. package/src/ui/pager.css +133 -0
  138. package/src/ui/progressbar.css +137 -0
  139. package/src/ui/shell.css +4 -0
  140. package/src/ui/sidebar.css +103 -0
  141. package/src/ui/sticky-header.css +22 -0
  142. package/src/ui/tabs.css +355 -0
  143. package/src/ui/ticker.css +105 -0
  144. package/src/ui/timeline.css +106 -0
  145. package/src/ui/toast.css +182 -0
  146. package/src/ui/toc.css +58 -0
  147. package/src/ui/tuner.css +196 -0
  148. package/src/ui/view.css +30 -0
  149. package/src/ui/window.css +287 -0
  150. package/templates/theme.css +28 -0
  151. package/themebuilder.js +19 -0
  152. package/themes/dark.css +6 -0
  153. package/themes/light.css +97 -0
@@ -0,0 +1,114 @@
1
+ .pacem-breadcrumbs {
2
+ display: flex;
3
+ flex-direction: row;
4
+ align-items: center;
5
+
6
+ > .breadcrumb {
7
+ flex-basis: auto;
8
+ flex-grow: 0;
9
+ flex-shrink: 1;
10
+ margin-right: calc(var(--pacem-grid-spacing) / 2);
11
+
12
+ &:last-child {
13
+ margin-right: 0;
14
+ }
15
+ }
16
+
17
+ height: var(--pacem-grid-cell);
18
+ }
19
+
20
+ .breadcrumb {
21
+ display: grid;
22
+ grid-column-gap: calc(var(--pacem-grid-spacing) / 2);
23
+ grid-row-gap: 0;
24
+ grid-template-columns: auto minmax(calc(3 * var(--pacem-grid-spacing)), auto);
25
+ grid-template-rows: 1fr repeat(2, auto) 1fr;
26
+ grid-template-areas: "pad1 main" "extra main" "detail main" "pad2 main";
27
+ /* reset */
28
+ text-align: left;
29
+ text-transform: none;
30
+ margin: 0;
31
+ box-sizing: border-box;
32
+ white-space: nowrap;
33
+ padding: calc(var(--pacem-grid-spacing) / 4) calc(var(--pacem-grid-spacing) / 2);
34
+ align-items: center;
35
+ color: var(--pacem-color-secondary);
36
+
37
+ &:hover,
38
+ &:focus {
39
+ text-shadow: none;
40
+ }
41
+
42
+ &.breadcrumb-border {
43
+ border: 1px solid var(--pacem-color-border);
44
+ }
45
+
46
+ > .breadcrumb-extra {
47
+ grid-area: extra;
48
+ font-family: var(--pacem-font-tech);
49
+ font-size: calc(.86rem * var(--pacem-font-rem-factor));
50
+ line-height: 1;
51
+ text-align: right;
52
+ }
53
+
54
+ > .breadcrumb-detail {
55
+ grid-area: detail;
56
+ font-family: var(--pacem-font-main);
57
+ font-size: calc(1rem * var(--pacem-font-rem-factor));
58
+ line-height: 1;
59
+ text-align: right;
60
+ }
61
+
62
+ > .breadcrumb-main {
63
+ grid-area: main;
64
+ font-family: var(--pacem-font-std);
65
+ font-size: calc(2rem * var(--pacem-font-std-rem-factor));
66
+ font-weight: var(--pacem-font-weight);
67
+ min-width: calc(3 * var(--pacem-grid-spacing));
68
+ height: calc(2 * var(--pacem-grid-spacing));
69
+ line-height: calc(2 * var(--pacem-grid-spacing));
70
+ }
71
+
72
+ /* .BoxLayout(breadcrumb) */
73
+ &.breadcrumb-border {
74
+ border-color: rgb(from var(--pacem-color-default) r g b / 20%);
75
+ }
76
+
77
+ &.breadcrumb-filled {
78
+ background-color: rgb(from var(--pacem-color-default) r g b / 10%);
79
+ }
80
+
81
+ &.breadcrumb-corners {
82
+ --pacem--corners-color: var(--pacem-color-default);
83
+ --pacem--corners-radius: var(--pacem-border-radius);
84
+ }
85
+
86
+ &.breadcrumb-accent { --pacem--crumb: var(--pacem-color-accent); }
87
+ &.breadcrumb-warning { --pacem--crumb: var(--pacem-color-warning); }
88
+ &.breadcrumb-success { --pacem--crumb: var(--pacem-color-success); }
89
+ &.breadcrumb-danger { --pacem--crumb: var(--pacem-color-danger); }
90
+ &.breadcrumb-error { --pacem--crumb: var(--pacem-color-error); }
91
+ &.breadcrumb-primary { --pacem--crumb: var(--pacem-color-primary); }
92
+ &.breadcrumb-secondary { --pacem--crumb: var(--pacem-color-secondary); }
93
+ &.breadcrumb-disabled { --pacem--crumb: var(--pacem-color-disabled); }
94
+
95
+ &:is(.breadcrumb-accent, .breadcrumb-warning, .breadcrumb-success, .breadcrumb-danger, .breadcrumb-error, .breadcrumb-primary, .breadcrumb-secondary, .breadcrumb-disabled) {
96
+ &.breadcrumb-border {
97
+ border-color: rgb(from var(--pacem--crumb) r g b / 20%);
98
+ }
99
+
100
+ &.breadcrumb-filled {
101
+ background-color: rgb(from var(--pacem--crumb) r g b / 10%);
102
+ }
103
+
104
+ &.breadcrumb-corners {
105
+ --pacem--corners-color: var(--pacem--crumb);
106
+ }
107
+ }
108
+
109
+ &.home {
110
+ background-color: var(--pacem-color-background-alt);
111
+ color: var(--pacem-color-breadcrumb-home-fore);
112
+ border-color: rgb(from var(--pacem-color-breadcrumb-home-fore) r g b / 20%);
113
+ }
114
+ }
@@ -0,0 +1,246 @@
1
+ /* the .Panel() mixin (shared with panels): box.css, imported before this file */
2
+
3
+ .pacem-card {
4
+ display: grid;
5
+ grid-template-columns: auto 1fr auto;
6
+ grid-template-rows: minmax(calc(var(--pacem-grid-spacing) * 3.5 + var(--pacem-grid-cell)), 1fr) repeat(3, auto);
7
+ grid-template-areas: 'ribbon ribbon ribbon' 'heading heading heading' 'body body body' 'footer footer footer';
8
+
9
+ > .card-heading,
10
+ > .card-tools,
11
+ > .card-body,
12
+ > .card-footer {
13
+ order: 1;
14
+ z-index: 1;
15
+ }
16
+
17
+ > .card-body {
18
+ grid-area: body;
19
+ }
20
+
21
+ > .card-heading {
22
+ grid-area: heading;
23
+ box-sizing: border-box;
24
+ text-align: center;
25
+ }
26
+
27
+ :--shadows & > .card-img {
28
+ box-shadow: inset 0 calc(var(--pacem-grid-spacing) / -8) var(--pacem-grid-spacing) rgba(0, 0, 0, 0.5);
29
+ }
30
+
31
+ :--no-shadows & > .card-heading {
32
+ color: #fff;
33
+ text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.75);
34
+ }
35
+
36
+ > .card-img {
37
+ grid-column: 1 / -1;
38
+ grid-row: 1 / 3;
39
+ order: 0;
40
+ z-index: 0;
41
+ height: 100%;
42
+ width: 100%;
43
+ top: 0;
44
+ left: 0;
45
+ position: absolute;
46
+ border-top-left-radius: var(--pacem-border-card-radius);
47
+ border-top-right-radius: var(--pacem-border-card-radius);
48
+ overflow: hidden;
49
+
50
+ &.img-auto {
51
+ position: static;
52
+ height: auto;
53
+ }
54
+
55
+ &.img-top {
56
+ grid-row: 1 / 2;
57
+
58
+ & ~ .card-heading {
59
+ text-shadow: none;
60
+ color: inherit;
61
+ text-align: start;
62
+ }
63
+ }
64
+ }
65
+
66
+ > .card-ribbon {
67
+ grid-area: ribbon;
68
+ order: 2;
69
+ z-index: 2;
70
+ align-self: center;
71
+ justify-self: center;
72
+ margin-top: calc(var(--pacem-grid-spacing) * 2);
73
+ margin-bottom: var(--pacem-grid-spacing);
74
+ margin-right: calc(2 * var(--pacem-grid-spacing) / 3);
75
+ margin-left: calc(2 * var(--pacem-grid-spacing) / 3);
76
+ }
77
+
78
+ > .card-img.img-top {
79
+ & ~ .card-ribbon {
80
+ margin-bottom: calc(2 * var(--pacem-grid-spacing));
81
+ }
82
+ }
83
+
84
+ > .card-footer {
85
+ grid-area: footer;
86
+ }
87
+
88
+ > .card-tools {
89
+ grid-column: 3;
90
+ grid-row: 1;
91
+ padding: calc(var(--pacem-grid-spacing) / 2);
92
+ /* reset */
93
+ position: static;
94
+ /* override */
95
+ align-self: start;
96
+ display: flex;
97
+ flex-direction: row;
98
+ flex-wrap: nowrap;
99
+ align-items: center;
100
+ }
101
+ }
102
+
103
+ .pacem-card.card-full {
104
+ grid-template-areas: 'ribbon ribbon tools' 'ribbon ribbon .' 'heading heading heading' 'body body body' 'footer footer footer';
105
+ min-height: calc(var(--pacem-grid-spacing) * 3.5 + var(--pacem-grid-cell));
106
+ grid-template-rows: auto 1fr repeat(3, auto);
107
+
108
+ > .card-img {
109
+ position: absolute;
110
+ height: 100%;
111
+ width: 100%;
112
+ box-shadow: none;
113
+ grid-row: 1 / -1;
114
+ border-bottom-left-radius: var(--pacem-border-card-radius);
115
+ border-bottom-right-radius: var(--pacem-border-card-radius);
116
+ }
117
+
118
+ > .card-heading {
119
+ height: calc(var(--pacem-grid-spacing) * 3.5 + var(--pacem-grid-cell));
120
+ display: flex;
121
+ align-items: flex-end;
122
+ text-align: start;
123
+ }
124
+
125
+ > .card-body,
126
+ > .card-footer {
127
+ color: rgba(255, 255, 255, 0.8);
128
+ text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
129
+ }
130
+
131
+ > .card-ribbon {
132
+ margin: 0;
133
+ grid-area: unset;
134
+ position: absolute;
135
+ left: calc(2 * var(--pacem-grid-spacing) / 3);
136
+ top: calc(2 * var(--pacem-grid-spacing) / 3);
137
+ }
138
+ }
139
+
140
+ /* .card-left, .card-right (also responsive, e.g. .card-md-left): generated/card-sides.css */
141
+
142
+ /* #region RIBBON */
143
+
144
+ .pacem-card > .card-ribbon {
145
+ aspect-ratio: 1 / 1;
146
+ display: flex;
147
+ align-items: center;
148
+ justify-content: center;
149
+ overflow: hidden;
150
+ box-sizing: border-box;
151
+
152
+ &.ribbon-offset {
153
+ top: calc(var(--pacem-grid-spacing) / -4) !important;
154
+ }
155
+
156
+ /* avoid declaring default colors, since they will override any fill-specific classes for the ribbon (e.g. 'fill-primary-container'). */
157
+
158
+ &:not(.shape-circle, .shape-square) {
159
+ border-radius: var(--pacem-border-card-radius);
160
+ }
161
+
162
+ &.accent,
163
+ &.ribbon-accent {
164
+ background-color: var(--pacem-color-accent);
165
+ color: var(--pacem-color-accent-inverse);
166
+ }
167
+
168
+ &.danger,
169
+ &.ribbon-danger {
170
+ background-color: var(--pacem-color-danger);
171
+ color: var(--pacem-color-danger-inverse);
172
+ }
173
+
174
+ &.primary,
175
+ &.ribbon-primary {
176
+ background-color: var(--pacem-color-primary);
177
+ color: var(--pacem-color-primary-inverse);
178
+ }
179
+
180
+ &.success,
181
+ &.ribbon-success {
182
+ background-color: var(--pacem-color-success);
183
+ color: var(--pacem-color-success-inverse);
184
+ }
185
+
186
+ &.ribbon-invert {
187
+ background-color: var(--pacem-color-default);
188
+ color: var(--pacem-color-default-inverse);
189
+ }
190
+
191
+ &.ribbon-disabled {
192
+ background-color: var(--pacem-color-disabled);
193
+ color: var(--pacem-color-disabled-inverse);
194
+ }
195
+
196
+ &.ribbon-default {
197
+ background-color: var(--pacem-color-default-inverse);
198
+ color: var(--pacem-color-default);
199
+ }
200
+
201
+ &.warning,
202
+ &.ribbon-warning {
203
+ background-color: var(--pacem-color-warning);
204
+ color: var(--pacem-color-warning-inverse);
205
+ }
206
+
207
+ &.circular,
208
+ &.ribbon-circle {
209
+ border-radius: 50%;
210
+ }
211
+ }
212
+
213
+ /* ribbon sizes (.CardRibbonSize()): generated/card-ribbon.css */
214
+
215
+ /* #endregion */
216
+
217
+ /* #region ANCHOR/BUTTON-FIXES */
218
+ .pacem-card {
219
+ pacem-button,
220
+ .pacem-button {
221
+ text-shadow: none;
222
+ }
223
+ }
224
+
225
+ pacem-a.pacem-card {
226
+ position: relative;
227
+ color: var(--pacem-color-default);
228
+
229
+ .card-body, .card-heading, .card-footer {
230
+ position: relative;
231
+ }
232
+ }
233
+
234
+ /* #endregion */
235
+
236
+ .pacem-body {
237
+ &.pacem-anim,
238
+ &.pacem-animations {
239
+ .pacem-card.pacem-anim.card-rise.anim-rise {
240
+ animation-name: anim-rise;
241
+ animation-fill-mode: both;
242
+ animation-duration: .667s;
243
+ animation-timing-function: var(--pacem-easing-out-sine);
244
+ }
245
+ }
246
+ }