@dillingerstaffing/strand-svelte 0.11.0 → 0.12.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 {
@@ -1593,11 +1619,35 @@
1593
1619
  .strand-reveal-group > .strand-reveal:nth-child(5) { transition-delay: calc(var(--strand-stagger-delay) * 4); }
1594
1620
  .strand-reveal-group > .strand-reveal:nth-child(6) { transition-delay: var(--strand-duration-slow); }
1595
1621
 
1622
+ /* ── CSS-only scroll-driven animation (no JS required) ── */
1623
+ @supports (animation-timeline: view()) {
1624
+ .strand-reveal {
1625
+ opacity: 0;
1626
+ transform: translateY(24px);
1627
+ transition: none;
1628
+ animation: strand-reveal-up linear both;
1629
+ animation-timeline: view();
1630
+ animation-range: entry 0% entry 100%;
1631
+ }
1632
+
1633
+ .strand-reveal-group > .strand-reveal {
1634
+ animation: strand-reveal-up linear both;
1635
+ animation-timeline: view();
1636
+ animation-range: entry 0% entry 100%;
1637
+ }
1638
+
1639
+ @keyframes strand-reveal-up {
1640
+ from { opacity: 0; transform: translateY(24px); }
1641
+ to { opacity: 1; transform: translateY(0); }
1642
+ }
1643
+ }
1644
+
1596
1645
  @media (prefers-reduced-motion: reduce) {
1597
1646
  .strand-reveal {
1598
1647
  opacity: 1;
1599
1648
  transform: none;
1600
1649
  transition: none;
1650
+ animation: none;
1601
1651
  }
1602
1652
  }
1603
1653
 
@@ -1634,6 +1684,11 @@
1634
1684
  background-color: var(--strand-surface-recessed);
1635
1685
  }
1636
1686
 
1687
+ /* ── Border variant ── */
1688
+ .strand-section--border-top {
1689
+ border-top: 1px solid var(--strand-gray-200);
1690
+ }
1691
+
1637
1692
 
1638
1693
  /* Select */
1639
1694
  /*! Strand UI | MIT License | dillingerstaffing.com */
@@ -2897,3 +2952,43 @@
2897
2952
  color: var(--strand-gray-400);
2898
2953
  }
2899
2954
 
2955
+ /* ══════════════════════════════════════════════════
2956
+ UTILITIES
2957
+ ══════════════════════════════════════════════════ */
2958
+
2959
+ /* ── Screen reader only ── */
2960
+ .strand-sr-only {
2961
+ position: absolute;
2962
+ width: 1px;
2963
+ height: 1px;
2964
+ padding: 0;
2965
+ margin: -1px;
2966
+ overflow: hidden;
2967
+ clip: rect(0, 0, 0, 0);
2968
+ white-space: nowrap;
2969
+ border: 0;
2970
+ }
2971
+
2972
+ /* ── Section header ──
2973
+ Derivation: section-boundary production (DL 11.10).
2974
+ Centered heading group with bottom margin. */
2975
+ .strand-section-header {
2976
+ margin-bottom: clamp(2rem, 4vw, 4rem);
2977
+ }
2978
+
2979
+ /* ── Step indicator ──
2980
+ Numbered position indicator for sequential steps. */
2981
+ .strand-step-indicator {
2982
+ display: inline-flex;
2983
+ align-items: center;
2984
+ justify-content: center;
2985
+ width: var(--strand-space-8);
2986
+ height: var(--strand-space-8);
2987
+ border-radius: var(--strand-radius-full);
2988
+ background: var(--strand-blue-glow);
2989
+ color: var(--strand-blue-primary);
2990
+ font-family: var(--strand-font-mono);
2991
+ font-size: var(--strand-text-sm);
2992
+ font-weight: var(--strand-weight-semibold);
2993
+ }
2994
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dillingerstaffing/strand-svelte",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "Strand UI - Svelte component library built on the Strand Design Language",
5
5
  "author": "Dillinger Staffing <engineering@dillingerstaffing.com> (https://dillingerstaffing.com)",
6
6
  "license": "MIT",
@@ -55,7 +55,7 @@
55
55
  "svelte": "^4.0.0 || ^5.0.0"
56
56
  },
57
57
  "dependencies": {
58
- "@dillingerstaffing/strand": "^0.11.0"
58
+ "@dillingerstaffing/strand": "^0.12.0"
59
59
  },
60
60
  "devDependencies": {
61
61
  "@sveltejs/vite-plugin-svelte": "^5.0.0",