kuinetic 0.1.0 → 0.1.2

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.
package/dist/kuinetic.css CHANGED
@@ -105,9 +105,11 @@
105
105
  }
106
106
  [data-kui-fx~=confetti-burst] {
107
107
  --kui-feedback-burst-duration: 900ms;
108
+ --kui-pop-scale: 1.15;
108
109
  }
109
110
  [data-kui-fx~=count-bump] {
110
111
  --kui-feedback-pop-duration: 280ms;
112
+ --kui-pop-scale: 1.3;
111
113
  }
112
114
  [data-kui-fx~=count-compact] {
113
115
  --kui-from: 0;
@@ -202,6 +204,10 @@
202
204
  }
203
205
  [data-kui-fx~=heart-burst] {
204
206
  --kui-feedback-burst-duration: 700ms;
207
+ --kui-pop-scale: 1.4;
208
+ }
209
+ [data-kui-fx~=highlight-sweep] {
210
+ --kui-sweep-color: gold;
205
211
  }
206
212
  [data-kui-fx~=line-grid-drift] {
207
213
  --kui-ambient-gradient-duration: 16s;
@@ -785,7 +791,7 @@
785
791
  @keyframes kui-blur-up {
786
792
  from {
787
793
  translate: 0 var(--kui-distance, 24px);
788
- filter: blur(16px);
794
+ filter: blur(var(--kui-blur, 16px));
789
795
  }
790
796
  to {
791
797
  translate: 0 0;
@@ -986,7 +992,7 @@
986
992
  linear-gradient(
987
993
  100deg,
988
994
  transparent 30%,
989
- color-mix(in srgb, currentColor 70%, transparent) 50%,
995
+ color-mix(in srgb, var(--kui-sweep-color, currentColor) 70%, transparent) 50%,
990
996
  transparent 70%);
991
997
  background-size: 260% 100%;
992
998
  -webkit-background-clip: text;
@@ -1002,7 +1008,7 @@
1002
1008
  }
1003
1009
  }
1004
1010
  [data-kui-fx~=highlight-sweep] {
1005
- background-image: linear-gradient(90deg, color-mix(in srgb, gold 55%, transparent) 0 100%);
1011
+ background-image: linear-gradient(90deg, color-mix(in srgb, var(--kui-sweep-color, currentColor) 55%, transparent) 0 100%);
1006
1012
  background-repeat: no-repeat;
1007
1013
  background-size: 0% 100%;
1008
1014
  padding: 0 0.05em;
@@ -1013,7 +1019,7 @@
1013
1019
  }
1014
1020
  }
1015
1021
  [data-kui-fx~=underline-draw] {
1016
- background-image: linear-gradient(currentColor, currentColor);
1022
+ background-image: linear-gradient(var(--kui-sweep-color, currentColor), var(--kui-sweep-color, currentColor));
1017
1023
  background-repeat: no-repeat;
1018
1024
  background-position: 0 100%;
1019
1025
  background-size: 0% 2px;
@@ -1054,7 +1060,7 @@
1054
1060
  font-style: oblique var(--kui-from-slant, 0deg);
1055
1061
  }
1056
1062
  to {
1057
- font-style: oblique var(--kui-to-slant, -10deg);
1063
+ font-style: oblique var(--kui-to-slant, 10deg);
1058
1064
  }
1059
1065
  }
1060
1066
  [data-kui-fx~=marquee],
@@ -1071,6 +1077,7 @@
1071
1077
  translate: -50% 0;
1072
1078
  }
1073
1079
  }
1080
+ @property --kui-redaction-x { syntax: "<percentage>"; inherits: true; initial-value: 0%; }
1074
1081
  [data-kui-fx~=redaction-reveal] {
1075
1082
  position: relative;
1076
1083
  display: inline-block;
@@ -1079,12 +1086,12 @@
1079
1086
  content: "";
1080
1087
  position: absolute;
1081
1088
  inset: 0;
1082
- background: #111;
1083
- clip-path: inset(0 0 0 0);
1089
+ background: var(--kui-bar-color, #111);
1090
+ clip-path: inset(0 0 0 var(--kui-redaction-x));
1084
1091
  }
1085
1092
  @keyframes kui-redaction-reveal {
1086
1093
  to {
1087
- clip-path: inset(0 0 0 100%);
1094
+ --kui-redaction-x: 100%;
1088
1095
  }
1089
1096
  }
1090
1097
  [data-kui-fx~=text-3d-extrude] {
@@ -1099,8 +1106,8 @@
1099
1106
  }
1100
1107
  @keyframes kui-text-3d-extrude {
1101
1108
  from {
1102
- rotate: -6deg;
1103
- translate: 0 12px;
1109
+ rotate: var(--kui-from-angle, -20deg);
1110
+ translate: 0 var(--kui-distance, 32px);
1104
1111
  }
1105
1112
  to {
1106
1113
  rotate: 0deg;
@@ -1230,14 +1237,30 @@
1230
1237
  [data-kui-fx~=strength-meter][data-kui-strength-level="1"] ~ .kui-meter > *:nth-child(-n+1),
1231
1238
  [data-kui-fx~=strength-meter][data-kui-strength-level="2"] ~ .kui-meter > *:nth-child(-n+2),
1232
1239
  [data-kui-fx~=strength-meter][data-kui-strength-level="3"] ~ .kui-meter > *:nth-child(-n+3),
1233
- [data-kui-fx~=strength-meter][data-kui-strength-level="4"] ~ .kui-meter > *:nth-child(-n+4) {
1240
+ [data-kui-fx~=strength-meter][data-kui-strength-level="4"] ~ .kui-meter > *:nth-child(-n+4),
1241
+ [data-kui-fx~=strength-meter][data-kui-strength-level="5"] ~ .kui-meter > *:nth-child(-n+5),
1242
+ [data-kui-fx~=strength-meter][data-kui-strength-level="6"] ~ .kui-meter > *:nth-child(-n+6),
1243
+ [data-kui-fx~=strength-meter][data-kui-strength-level="7"] ~ .kui-meter > *:nth-child(-n+7),
1244
+ [data-kui-fx~=strength-meter][data-kui-strength-level="8"] ~ .kui-meter > *:nth-child(-n+8),
1245
+ [data-kui-fx~=strength-meter][data-kui-strength-level="9"] ~ .kui-meter > *:nth-child(-n+9),
1246
+ [data-kui-fx~=strength-meter][data-kui-strength-level="10"] ~ .kui-meter > *:nth-child(-n+10),
1247
+ [data-kui-fx~=strength-meter][data-kui-strength-level="11"] ~ .kui-meter > *:nth-child(-n+11),
1248
+ [data-kui-fx~=strength-meter][data-kui-strength-level="12"] ~ .kui-meter > *:nth-child(-n+12),
1249
+ [data-kui-fx~=strength-meter][data-kui-strength-level="13"] ~ .kui-meter > *:nth-child(-n+13),
1250
+ [data-kui-fx~=strength-meter][data-kui-strength-level="14"] ~ .kui-meter > *:nth-child(-n+14),
1251
+ [data-kui-fx~=strength-meter][data-kui-strength-level="15"] ~ .kui-meter > *:nth-child(-n+15),
1252
+ [data-kui-fx~=strength-meter][data-kui-strength-level="16"] ~ .kui-meter > *:nth-child(-n+16),
1253
+ [data-kui-fx~=strength-meter][data-kui-strength-level="17"] ~ .kui-meter > *:nth-child(-n+17),
1254
+ [data-kui-fx~=strength-meter][data-kui-strength-level="18"] ~ .kui-meter > *:nth-child(-n+18),
1255
+ [data-kui-fx~=strength-meter][data-kui-strength-level="19"] ~ .kui-meter > *:nth-child(-n+19),
1256
+ [data-kui-fx~=strength-meter][data-kui-strength-level="20"] ~ .kui-meter > *:nth-child(-n+20) {
1234
1257
  opacity: 1;
1235
1258
  background: var(--kui-meter-on, #2e9e5b);
1236
1259
  }
1237
1260
  [data-kui-fx~=toggle-morph] ~ .kui-track {
1238
1261
  display: inline-block;
1239
- width: 40px;
1240
- height: 22px;
1262
+ width: calc(40px * var(--kui-toggle-scale, 1));
1263
+ height: calc(22px * var(--kui-toggle-scale, 1));
1241
1264
  border-radius: 999px;
1242
1265
  background: var(--dim, #9a8d80);
1243
1266
  transition: background-color 200ms ease-out;
@@ -1245,12 +1268,12 @@
1245
1268
  }
1246
1269
  [data-kui-fx~=toggle-morph] ~ .kui-track .kui-thumb {
1247
1270
  position: absolute;
1248
- top: 2px;
1249
- left: 2px;
1250
- width: 18px;
1251
- height: 18px;
1271
+ top: calc(2px * var(--kui-toggle-scale, 1));
1272
+ left: calc(2px * var(--kui-toggle-scale, 1));
1273
+ width: calc(18px * var(--kui-toggle-scale, 1));
1274
+ height: calc(18px * var(--kui-toggle-scale, 1));
1252
1275
  border-radius: 50%;
1253
- background: #fff;
1276
+ background: var(--kui-thumb-color, #fff);
1254
1277
  translate: 0 0;
1255
1278
  transition: translate 200ms ease-out;
1256
1279
  }
@@ -1258,7 +1281,7 @@
1258
1281
  background: var(--accent, #d2691e);
1259
1282
  }
1260
1283
  [data-kui-fx~=toggle-morph]:checked ~ .kui-track .kui-thumb {
1261
- translate: 18px 0;
1284
+ translate: calc(18px * var(--kui-toggle-scale, 1)) 0;
1262
1285
  }
1263
1286
  [data-kui-fx~=checkbox-draw] ~ svg path {
1264
1287
  stroke-dasharray: 24;
@@ -1270,8 +1293,8 @@
1270
1293
  }
1271
1294
  [data-kui-fx~=radio-fill] ~ .kui-dot {
1272
1295
  display: inline-block;
1273
- width: 10px;
1274
- height: 10px;
1296
+ width: calc(10px * var(--kui-radio-scale, 1));
1297
+ height: calc(10px * var(--kui-radio-scale, 1));
1275
1298
  border-radius: 50%;
1276
1299
  background: var(--accent, #d2691e);
1277
1300
  scale: 0;
@@ -1329,7 +1352,21 @@
1329
1352
  [data-kui-fx~=step-progress][data-kui-step="2"] > *:nth-child(-n+3),
1330
1353
  [data-kui-fx~=step-progress][data-kui-step="3"] > *:nth-child(-n+4),
1331
1354
  [data-kui-fx~=step-progress][data-kui-step="4"] > *:nth-child(-n+5),
1332
- [data-kui-fx~=step-progress][data-kui-step="5"] > *:nth-child(-n+6) {
1355
+ [data-kui-fx~=step-progress][data-kui-step="5"] > *:nth-child(-n+6),
1356
+ [data-kui-fx~=step-progress][data-kui-step="6"] > *:nth-child(-n+7),
1357
+ [data-kui-fx~=step-progress][data-kui-step="7"] > *:nth-child(-n+8),
1358
+ [data-kui-fx~=step-progress][data-kui-step="8"] > *:nth-child(-n+9),
1359
+ [data-kui-fx~=step-progress][data-kui-step="9"] > *:nth-child(-n+10),
1360
+ [data-kui-fx~=step-progress][data-kui-step="10"] > *:nth-child(-n+11),
1361
+ [data-kui-fx~=step-progress][data-kui-step="11"] > *:nth-child(-n+12),
1362
+ [data-kui-fx~=step-progress][data-kui-step="12"] > *:nth-child(-n+13),
1363
+ [data-kui-fx~=step-progress][data-kui-step="13"] > *:nth-child(-n+14),
1364
+ [data-kui-fx~=step-progress][data-kui-step="14"] > *:nth-child(-n+15),
1365
+ [data-kui-fx~=step-progress][data-kui-step="15"] > *:nth-child(-n+16),
1366
+ [data-kui-fx~=step-progress][data-kui-step="16"] > *:nth-child(-n+17),
1367
+ [data-kui-fx~=step-progress][data-kui-step="17"] > *:nth-child(-n+18),
1368
+ [data-kui-fx~=step-progress][data-kui-step="18"] > *:nth-child(-n+19),
1369
+ [data-kui-fx~=step-progress][data-kui-step="19"] > *:nth-child(-n+20) {
1333
1370
  opacity: 1;
1334
1371
  background: var(--accent, #d2691e);
1335
1372
  }
@@ -1647,7 +1684,7 @@
1647
1684
  opacity: 0.6;
1648
1685
  }
1649
1686
  50% {
1650
- scale: 1.15;
1687
+ scale: var(--kui-pulse-scale, 1.15);
1651
1688
  opacity: 1;
1652
1689
  }
1653
1690
  }
@@ -1708,11 +1745,11 @@
1708
1745
  }
1709
1746
  [data-kui-fx~=spinner-dots] {
1710
1747
  display: inline-block;
1711
- width: 8px;
1712
- height: 8px;
1748
+ width: var(--kui-dot-size, 8px);
1749
+ height: var(--kui-dot-size, 8px);
1713
1750
  border-radius: 50%;
1714
1751
  background: currentColor;
1715
- box-shadow: -16px 0 currentColor, 16px 0 currentColor;
1752
+ box-shadow: calc(var(--kui-dot-size, 8px) * -2) 0 currentColor, calc(var(--kui-dot-size, 8px) * 2) 0 currentColor;
1716
1753
  --kui-fx-spinner-dots-iterations: infinite;
1717
1754
  }
1718
1755
  @keyframes kui-spinner-dots {
@@ -1828,7 +1865,7 @@
1828
1865
  scale: 0.4;
1829
1866
  }
1830
1867
  60% {
1831
- scale: 1.18;
1868
+ scale: var(--kui-pop-scale, 1.18);
1832
1869
  }
1833
1870
  100% {
1834
1871
  scale: 1;
@@ -1839,7 +1876,7 @@
1839
1876
  scale: 1;
1840
1877
  }
1841
1878
  50% {
1842
- scale: 1.3;
1879
+ scale: var(--kui-pop-scale, 1.18);
1843
1880
  }
1844
1881
  }
1845
1882
  [data-kui-fx~=heart-burst] {
@@ -1850,7 +1887,7 @@
1850
1887
  scale: 1;
1851
1888
  }
1852
1889
  30% {
1853
- scale: 1.4;
1890
+ scale: var(--kui-pop-scale, 1.18);
1854
1891
  }
1855
1892
  55% {
1856
1893
  scale: 0.9;
@@ -1863,23 +1900,23 @@
1863
1900
  background-image:
1864
1901
  radial-gradient(
1865
1902
  circle at 20% 20%,
1866
- #f43f5e 0 3px,
1903
+ var(--kui-c1, #f43f5e) 0 3px,
1867
1904
  transparent 3px),
1868
1905
  radial-gradient(
1869
1906
  circle at 75% 15%,
1870
- #fbbf24 0 3px,
1907
+ var(--kui-c2, #fbbf24) 0 3px,
1871
1908
  transparent 3px),
1872
1909
  radial-gradient(
1873
1910
  circle at 50% 75%,
1874
- #34d399 0 3px,
1911
+ var(--kui-c3, #34d399) 0 3px,
1875
1912
  transparent 3px),
1876
1913
  radial-gradient(
1877
1914
  circle at 85% 65%,
1878
- #60a5fa 0 3px,
1915
+ var(--kui-c4, #60a5fa) 0 3px,
1879
1916
  transparent 3px),
1880
1917
  radial-gradient(
1881
1918
  circle at 15% 65%,
1882
- #c084fc 0 3px,
1919
+ var(--kui-c5, #c084fc) 0 3px,
1883
1920
  transparent 3px);
1884
1921
  background-repeat: no-repeat;
1885
1922
  }
@@ -1889,7 +1926,7 @@
1889
1926
  opacity: 0;
1890
1927
  }
1891
1928
  40% {
1892
- scale: 1.15;
1929
+ scale: var(--kui-pop-scale, 1.18);
1893
1930
  opacity: 1;
1894
1931
  }
1895
1932
  100% {
@@ -1916,7 +1953,7 @@
1916
1953
  translate: 0 0;
1917
1954
  }
1918
1955
  45% {
1919
- translate: 0 36px;
1956
+ translate: 0 var(--kui-pull-distance, 36px);
1920
1957
  }
1921
1958
  100% {
1922
1959
  translate: 0 0;
@@ -2023,13 +2060,13 @@
2023
2060
  transition: translate var(--kui-lift-duration, 220ms) var(--kui-lift-ease, ease-out);
2024
2061
  }
2025
2062
  [data-kui-fx~=lift]:focus-visible {
2026
- translate: 0 -6px;
2063
+ translate: 0 calc(var(--kui-lift-distance, 6px) * -1);
2027
2064
  }
2028
2065
  [data-kui-fx~=lift-shadow] {
2029
2066
  transition: translate var(--kui-lift-shadow-duration, 220ms) var(--kui-lift-shadow-ease, ease-out), box-shadow var(--kui-lift-shadow-duration, 220ms) var(--kui-lift-shadow-ease, ease-out);
2030
2067
  }
2031
2068
  [data-kui-fx~=lift-shadow]:focus-visible {
2032
- translate: 0 -6px;
2069
+ translate: 0 calc(var(--kui-lift-distance, 6px) * -1);
2033
2070
  box-shadow: 0 14px 28px -12px rgb(0 0 0 / 0.45);
2034
2071
  }
2035
2072
  [data-kui-fx~=shine-sweep] {
@@ -2044,7 +2081,7 @@
2044
2081
  linear-gradient(
2045
2082
  115deg,
2046
2083
  transparent 40%,
2047
- rgb(255 255 255 / 0.35) 50%,
2084
+ var(--kui-c1, rgb(255 255 255 / 0.35)) 50%,
2048
2085
  transparent 60%);
2049
2086
  background-size: 220% 100%;
2050
2087
  background-position: 120% 0;
@@ -2232,10 +2269,10 @@
2232
2269
  }
2233
2270
  @media (hover: hover) and (pointer: fine) {
2234
2271
  [data-kui-fx~=lift]:hover {
2235
- translate: 0 -6px;
2272
+ translate: 0 calc(var(--kui-lift-distance, 6px) * -1);
2236
2273
  }
2237
2274
  [data-kui-fx~=lift-shadow]:hover {
2238
- translate: 0 -6px;
2275
+ translate: 0 calc(var(--kui-lift-distance, 6px) * -1);
2239
2276
  box-shadow: 0 14px 28px -12px rgb(0 0 0 / 0.45);
2240
2277
  }
2241
2278
  [data-kui-fx~=shine-sweep]:hover::after {
@@ -2312,7 +2349,7 @@
2312
2349
  background: var(--accent, #d2691e);
2313
2350
  }
2314
2351
  .kui-cursor-dot-invert {
2315
- background: #fff;
2352
+ background: var(--kui-invert-color, #fff);
2316
2353
  mix-blend-mode: difference;
2317
2354
  }
2318
2355
  .kui-cursor-dot-label {
@@ -2320,7 +2357,7 @@
2320
2357
  padding: 0.4em 0.8em;
2321
2358
  border-radius: 999px;
2322
2359
  background: var(--accent, #d2691e);
2323
- color: #fff;
2360
+ color: var(--kui-label-color, #fff);
2324
2361
  font-size: 0.75rem;
2325
2362
  font-family:
2326
2363
  ui-monospace,