qss 0.6.0 → 0.7.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +345 -175
- data/QSS-MANIFESTO.md +16 -4
- data/README.md +62 -166
- data/app/assets/javascripts/qss/qss-engine.js +16 -6
- data/app/assets/stylesheets/qss/qss_core.css +12024 -0
- data/app/assets/stylesheets/qss/qss_core.scss +15 -0
- data/config/grammar.yml +6 -0
- data/config/integrity.json +2 -2
- data/docs/DESIGN_HISTORY.md +882 -0
- data/docs/HOWTO.md +269 -0
- data/exe/qss-core-render-check +38 -0
- data/exe/qss-engine-render-check +8 -2
- data/lib/qss/qss_auditor.rb +5 -1
- data/lib/qss/version.rb +1 -1
- metadata +12 -8
|
@@ -216,6 +216,21 @@ $qss-scope: if($qss-portal-root == "", $qss-anchor, "#{$qss-anchor}, #{$qss-port
|
|
|
216
216
|
@include qss-dsl-boost(".qss-rounded\\[full\\]") { border-radius: 9999px; }
|
|
217
217
|
@include qss-dsl-boost(".qss-rounded-full") { border-radius: 9999px; }
|
|
218
218
|
|
|
219
|
+
/* Clamped percentage-of-parent spacing (DESIGN_HISTORY #17.2, 2026-11-02). A gap that's allowed to
|
|
220
|
+
flex with its immediate containing block's actual rendered size -- the rule-of-thirds "headroom"
|
|
221
|
+
case -- rather than holding rigidly proportional to the canvas (qss-pos-y[N]) or growing
|
|
222
|
+
unbounded with the parent (qss-pos-y-pct[N] alone). Can't be one 3-param bracket class: that would
|
|
223
|
+
need every min*pct*max combination precompiled, unlike the single-index loops above. Instead,
|
|
224
|
+
three composable value-setters feed one trigger class's clamp(), the same stacking-many-atomic-
|
|
225
|
+
classes idiom the rest of this grammar already uses. Usage: stack qss-elastic-y-min[N],
|
|
226
|
+
qss-elastic-y-pct[N], qss-elastic-y-max[N] and the bare qss-elastic-y trigger on one element. */
|
|
227
|
+
@for $i from 0 through map-get($qss-quantization, "units") {
|
|
228
|
+
@include qss-dsl-boost(".qss-elastic-y-min\\[#{$i}\\]") { --qss-ey-min: calc(#{$i} * var(--qnt)); }
|
|
229
|
+
@include qss-dsl-boost(".qss-elastic-y-max\\[#{$i}\\]") { --qss-ey-max: calc(#{$i} * var(--qnt)); }
|
|
230
|
+
@include qss-dsl-boost(".qss-elastic-y-pct\\[#{$i}\\]") { --qss-ey-pct: #{percentage($i * 0.001)}; }
|
|
231
|
+
}
|
|
232
|
+
@include qss-dsl-boost(".qss-elastic-y") { top: clamp(var(--qss-ey-min, 0px), var(--qss-ey-pct, 0%), var(--qss-ey-max, 0px)); }
|
|
233
|
+
|
|
219
234
|
/* Palette Generation -- each color is also a real custom property (--c-{name}),
|
|
220
235
|
not just a Sass compile-time value, so color-mix() can read it at the point of use. */
|
|
221
236
|
:root {
|
data/config/grammar.yml
CHANGED
|
@@ -25,6 +25,12 @@ adjectives:
|
|
|
25
25
|
- qss-pos-r
|
|
26
26
|
- qss-pos-b
|
|
27
27
|
- qss-pos
|
|
28
|
+
# Clamped percentage-of-parent spacing (DESIGN_HISTORY #17.2, 2026-11-02). Three composable
|
|
29
|
+
# value-setters plus a trigger class -- see qss_core.scss for why this isn't one 3-param bracket.
|
|
30
|
+
- qss-elastic-y-min
|
|
31
|
+
- qss-elastic-y-pct
|
|
32
|
+
- qss-elastic-y-max
|
|
33
|
+
- qss-elastic-y
|
|
28
34
|
|
|
29
35
|
# 1b. Flow-Relative: Positioning that doesn't break document flow
|
|
30
36
|
flow_relative:
|
data/config/integrity.json
CHANGED