@dillingerstaffing/strand-vue 0.11.0 → 0.13.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.
@@ -1174,6 +1174,32 @@
1174
1174
  outline-offset: 2px;
1175
1175
  }
1176
1176
 
1177
+ /* ── CTA link variant ── */
1178
+ .strand-link--cta {
1179
+ display: inline-flex;
1180
+ align-items: center;
1181
+ min-height: var(--strand-touch-target);
1182
+ padding-block: var(--strand-space-2);
1183
+ font-size: var(--strand-text-sm);
1184
+ }
1185
+
1186
+ .strand-link--cta:hover {
1187
+ color: var(--strand-blue-vivid);
1188
+ }
1189
+
1190
+ /* ── Monospace link variant (footer, overline-style) ── */
1191
+ .strand-link--mono {
1192
+ font-family: var(--strand-font-mono);
1193
+ font-size: var(--strand-text-xs);
1194
+ letter-spacing: var(--strand-tracking-wider);
1195
+ color: var(--strand-gray-400);
1196
+ background-image: none;
1197
+ }
1198
+
1199
+ .strand-link--mono:hover {
1200
+ color: var(--strand-blue-primary);
1201
+ }
1202
+
1177
1203
  /* ── Reduced motion ── */
1178
1204
  @media (prefers-reduced-motion: reduce) {
1179
1205
  .strand-link {
@@ -1356,6 +1382,21 @@
1356
1382
  }
1357
1383
  }
1358
1384
 
1385
+ /* ── Glassmorphic variant (DL 11.5: "white or glassmorphic") ── */
1386
+ .strand-nav--glass {
1387
+ position: fixed;
1388
+ top: 0;
1389
+ left: 0;
1390
+ right: 0;
1391
+ z-index: 100;
1392
+ height: auto;
1393
+ padding: var(--strand-space-4) 0;
1394
+ background: rgba(250, 252, 254, 0.85);
1395
+ backdrop-filter: blur(12px);
1396
+ -webkit-backdrop-filter: blur(12px);
1397
+ border-bottom: 1px solid rgba(148, 163, 184, 0.1);
1398
+ }
1399
+
1359
1400
  /* ── Reduced motion ── */
1360
1401
  @media (prefers-reduced-motion: reduce) {
1361
1402
  .strand-nav__link,
@@ -1593,11 +1634,35 @@
1593
1634
  .strand-reveal-group > .strand-reveal:nth-child(5) { transition-delay: calc(var(--strand-stagger-delay) * 4); }
1594
1635
  .strand-reveal-group > .strand-reveal:nth-child(6) { transition-delay: var(--strand-duration-slow); }
1595
1636
 
1637
+ /* ── CSS-only scroll-driven animation (no JS required) ── */
1638
+ @supports (animation-timeline: view()) {
1639
+ .strand-reveal {
1640
+ opacity: 0;
1641
+ transform: translateY(24px);
1642
+ transition: none;
1643
+ animation: strand-reveal-up linear both;
1644
+ animation-timeline: view();
1645
+ animation-range: entry 0% entry 100%;
1646
+ }
1647
+
1648
+ .strand-reveal-group > .strand-reveal {
1649
+ animation: strand-reveal-up linear both;
1650
+ animation-timeline: view();
1651
+ animation-range: entry 0% entry 100%;
1652
+ }
1653
+
1654
+ @keyframes strand-reveal-up {
1655
+ from { opacity: 0; transform: translateY(24px); }
1656
+ to { opacity: 1; transform: translateY(0); }
1657
+ }
1658
+ }
1659
+
1596
1660
  @media (prefers-reduced-motion: reduce) {
1597
1661
  .strand-reveal {
1598
1662
  opacity: 1;
1599
1663
  transform: none;
1600
1664
  transition: none;
1665
+ animation: none;
1601
1666
  }
1602
1667
  }
1603
1668
 
@@ -1634,6 +1699,16 @@
1634
1699
  background-color: var(--strand-surface-recessed);
1635
1700
  }
1636
1701
 
1702
+ /* ── Compact variant ── */
1703
+ .strand-section--compact {
1704
+ padding-block: var(--strand-space-12);
1705
+ }
1706
+
1707
+ /* ── Border variant ── */
1708
+ .strand-section--border-top {
1709
+ border-top: 1px solid var(--strand-gray-200);
1710
+ }
1711
+
1637
1712
 
1638
1713
  /* Select */
1639
1714
  /*! Strand UI | MIT License | dillingerstaffing.com */
@@ -2897,3 +2972,81 @@
2897
2972
  color: var(--strand-gray-400);
2898
2973
  }
2899
2974
 
2975
+ /* ══════════════════════════════════════════════════
2976
+ UTILITIES
2977
+ ══════════════════════════════════════════════════ */
2978
+
2979
+ /* ── Screen reader only ── */
2980
+ .strand-sr-only {
2981
+ position: absolute;
2982
+ width: 1px;
2983
+ height: 1px;
2984
+ padding: 0;
2985
+ margin: -1px;
2986
+ overflow: hidden;
2987
+ clip: rect(0, 0, 0, 0);
2988
+ white-space: nowrap;
2989
+ border: 0;
2990
+ }
2991
+
2992
+ /* ── Section header ──
2993
+ Derivation: section-boundary production (DL 11.10).
2994
+ Centered heading group with bottom margin. */
2995
+ .strand-section-header {
2996
+ margin-bottom: clamp(2rem, 4vw, 4rem);
2997
+ }
2998
+
2999
+ /* ── Step indicator ──
3000
+ Numbered position indicator for sequential steps. */
3001
+ .strand-step-indicator {
3002
+ display: inline-flex;
3003
+ align-items: center;
3004
+ justify-content: center;
3005
+ width: var(--strand-space-8);
3006
+ height: var(--strand-space-8);
3007
+ border-radius: var(--strand-radius-full);
3008
+ background: var(--strand-blue-glow);
3009
+ color: var(--strand-blue-primary);
3010
+ font-family: var(--strand-font-mono);
3011
+ font-size: var(--strand-text-sm);
3012
+ font-weight: var(--strand-weight-semibold);
3013
+ margin-bottom: var(--strand-space-3);
3014
+ }
3015
+
3016
+ /* ── Text center ── */
3017
+ .strand-text-center {
3018
+ text-align: center;
3019
+ }
3020
+
3021
+ /* ── Code name (mono identifier heading) ── */
3022
+ .strand-code-name {
3023
+ font-family: var(--strand-font-mono);
3024
+ font-size: var(--strand-text-base);
3025
+ font-weight: var(--strand-weight-semibold);
3026
+ color: var(--strand-blue-midnight);
3027
+ margin: 0;
3028
+ }
3029
+
3030
+ /* ── Heading small (section heading inside cards) ── */
3031
+ .strand-heading--sm {
3032
+ font-size: var(--strand-text-lg);
3033
+ font-weight: var(--strand-weight-medium);
3034
+ color: var(--strand-gray-800);
3035
+ margin: 0;
3036
+ }
3037
+
3038
+ /* ── Viewport flex modifiers (component showcase layout) ── */
3039
+ .strand-viewport--flex {
3040
+ display: flex;
3041
+ align-items: center;
3042
+ gap: var(--strand-space-4);
3043
+ flex-wrap: wrap;
3044
+ }
3045
+
3046
+ .strand-viewport--flex-col {
3047
+ display: flex;
3048
+ flex-direction: column;
3049
+ align-items: flex-start;
3050
+ gap: var(--strand-space-4);
3051
+ }
3052
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dillingerstaffing/strand-vue",
3
- "version": "0.11.0",
3
+ "version": "0.13.0",
4
4
  "description": "Strand UI - Vue 3 component library built on the Strand Design Language",
5
5
  "author": "Dillinger Staffing <engineering@dillingerstaffing.com> (https://dillingerstaffing.com)",
6
6
  "license": "MIT",
@@ -52,7 +52,7 @@
52
52
  "vue": "^3.4.0"
53
53
  },
54
54
  "dependencies": {
55
- "@dillingerstaffing/strand": "^0.11.0"
55
+ "@dillingerstaffing/strand": "^0.13.0"
56
56
  },
57
57
  "devDependencies": {
58
58
  "@testing-library/jest-dom": "^6.6.0",