@co0ontty/wand 1.43.0 β 1.43.1
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.
|
@@ -15678,110 +15678,296 @@
|
|
|
15678
15678
|
font-weight: 700;
|
|
15679
15679
|
}
|
|
15680
15680
|
|
|
15681
|
+
/* ================================================================
|
|
15682
|
+
Quick-Git drag slider β v2
|
|
15683
|
+
Layout: [ π Commit ] βββββ [ Tag ] βββββ [ Push ]
|
|
15684
|
+
- Tap (no drag) β Commit
|
|
15685
|
+
- Drag straight to Push β Commit + Push (skipped Tag β fast through)
|
|
15686
|
+
- Drag to Tag, dwell ~600ms β Tag latch arms
|
|
15687
|
+
- Released at Tag (armed) β Commit + Tag
|
|
15688
|
+
- Continue armed β Push β Commit + Tag + Push
|
|
15689
|
+
Empty commit message / tag β auto-generated by the backend on submit
|
|
15690
|
+
================================================================ */
|
|
15681
15691
|
.qc-drag-wrap {
|
|
15682
|
-
padding-top:
|
|
15692
|
+
padding-top: 4px;
|
|
15693
|
+
display: flex;
|
|
15694
|
+
flex-direction: column;
|
|
15695
|
+
gap: 6px;
|
|
15683
15696
|
}
|
|
15684
15697
|
.qc-drag-track {
|
|
15685
15698
|
--qc-progress: 0%;
|
|
15686
|
-
--qc-knob-x:
|
|
15699
|
+
--qc-knob-x: 6px;
|
|
15700
|
+
--qc-tone: var(--accent);
|
|
15701
|
+
--qc-tone-soft: rgba(197, 101, 61, 0.20);
|
|
15702
|
+
/* Keep in sync with QUICK_COMMIT_TAG_DWELL_MS in scripts.js */
|
|
15703
|
+
--qc-dwell-ms: 1100ms;
|
|
15687
15704
|
position: relative;
|
|
15688
|
-
|
|
15689
|
-
padding:
|
|
15690
|
-
border-radius:
|
|
15691
|
-
border: 1px solid rgba(125, 91, 57, 0.
|
|
15692
|
-
background:
|
|
15705
|
+
height: 76px;
|
|
15706
|
+
padding: 10px 12px;
|
|
15707
|
+
border-radius: 14px;
|
|
15708
|
+
border: 1px solid rgba(125, 91, 57, 0.18);
|
|
15709
|
+
background:
|
|
15710
|
+
radial-gradient(120% 100% at 50% 50%, rgba(255, 255, 255, 0.58), rgba(255, 245, 235, 0.20)),
|
|
15711
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.5), rgba(255, 245, 235, 0.24));
|
|
15712
|
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75), 0 1px 3px rgba(89, 58, 32, 0.05);
|
|
15693
15713
|
overflow: hidden;
|
|
15694
15714
|
touch-action: none;
|
|
15695
15715
|
user-select: none;
|
|
15716
|
+
transition: border-color 0.2s ease, box-shadow 0.2s ease;
|
|
15717
|
+
}
|
|
15718
|
+
.qc-drag-track:hover {
|
|
15719
|
+
border-color: rgba(125, 91, 57, 0.30);
|
|
15720
|
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85), 0 2px 8px rgba(89, 58, 32, 0.08);
|
|
15696
15721
|
}
|
|
15697
|
-
.
|
|
15722
|
+
/* Track tone shifts per current action so the whole panel echoes the knob color. */
|
|
15723
|
+
.qc-drag-track[data-action="commit-tag"] { --qc-tone: #4a6fa5; --qc-tone-soft: rgba(74, 111, 165, 0.20); }
|
|
15724
|
+
.qc-drag-track[data-action="commit-push"] { --qc-tone: #4f7a58; --qc-tone-soft: rgba(79, 122, 88, 0.22); }
|
|
15725
|
+
.qc-drag-track[data-action="commit-tag-push"] { --qc-tone: #7c5aa8; --qc-tone-soft: rgba(124, 90, 168, 0.24); }
|
|
15726
|
+
|
|
15727
|
+
/* Baseline rail β Commit β Tag β Push. Segments brighten as the knob crosses them. */
|
|
15728
|
+
.qc-drag-baseline {
|
|
15698
15729
|
position: absolute;
|
|
15699
|
-
inset: 0
|
|
15700
|
-
width: calc(
|
|
15701
|
-
|
|
15702
|
-
background: linear-gradient(90deg, rgba(197, 101, 61, 0.18), rgba(60, 130, 200, 0.18));
|
|
15703
|
-
transition: width 0.16s ease;
|
|
15730
|
+
inset: 0 14px;
|
|
15731
|
+
width: calc(100% - 28px);
|
|
15732
|
+
height: 100%;
|
|
15704
15733
|
pointer-events: none;
|
|
15705
15734
|
}
|
|
15706
|
-
.qc-
|
|
15707
|
-
|
|
15735
|
+
.qc-baseline-rail {
|
|
15736
|
+
stroke: rgba(125, 91, 57, 0.16);
|
|
15737
|
+
stroke-width: 2;
|
|
15738
|
+
stroke-linecap: round;
|
|
15708
15739
|
}
|
|
15740
|
+
.qc-baseline-seg {
|
|
15741
|
+
stroke: var(--qc-tone);
|
|
15742
|
+
stroke-width: 2;
|
|
15743
|
+
stroke-linecap: round;
|
|
15744
|
+
opacity: 0;
|
|
15745
|
+
transition: opacity 0.2s ease, stroke 0.2s ease;
|
|
15746
|
+
}
|
|
15747
|
+
.qc-drag-track[data-zone="tag"] .qc-baseline-seg--left,
|
|
15748
|
+
.qc-drag-track[data-zone="push"] .qc-baseline-seg--left { opacity: 0.85; }
|
|
15749
|
+
.qc-drag-track[data-zone="push"] .qc-baseline-seg--right { opacity: 0.85; }
|
|
15750
|
+
|
|
15751
|
+
/* Three marching chevrons β drag this way */
|
|
15752
|
+
.qc-chevrons {
|
|
15753
|
+
position: absolute;
|
|
15754
|
+
top: 50%;
|
|
15755
|
+
right: 16px;
|
|
15756
|
+
transform: translateY(-50%);
|
|
15757
|
+
display: flex;
|
|
15758
|
+
align-items: center;
|
|
15759
|
+
gap: 3px;
|
|
15760
|
+
pointer-events: none;
|
|
15761
|
+
color: rgba(125, 91, 57, 0.42);
|
|
15762
|
+
z-index: 1;
|
|
15763
|
+
}
|
|
15764
|
+
.qc-chevron {
|
|
15765
|
+
opacity: 0.16;
|
|
15766
|
+
animation: qc-chevron-march 1.3s ease-in-out infinite;
|
|
15767
|
+
}
|
|
15768
|
+
.qc-chevron:nth-child(1) { animation-delay: 0s; }
|
|
15769
|
+
.qc-chevron:nth-child(2) { animation-delay: 0.16s; }
|
|
15770
|
+
.qc-chevron:nth-child(3) { animation-delay: 0.32s; }
|
|
15771
|
+
.qc-drag-track[data-zone="tag"] .qc-chevrons { color: var(--qc-tone); }
|
|
15772
|
+
.qc-drag-track[data-zone="push"] .qc-chevrons { opacity: 0.25; }
|
|
15773
|
+
.qc-drag-track[data-tag-dwell="armed"] .qc-chevrons { color: var(--qc-tone); }
|
|
15774
|
+
.qc-drag-track[data-tag-dwell="armed"] .qc-chevron { animation-duration: 0.8s; }
|
|
15775
|
+
.qc-drag-track.is-dragging .qc-chevron { animation-play-state: paused; opacity: 0.55; }
|
|
15776
|
+
@keyframes qc-chevron-march {
|
|
15777
|
+
0%, 100% { opacity: 0.10; transform: translateX(-4px); }
|
|
15778
|
+
45% { opacity: 0.95; transform: translateX(0); }
|
|
15779
|
+
75% { opacity: 0.45; transform: translateX(3px); }
|
|
15780
|
+
}
|
|
15781
|
+
|
|
15782
|
+
/* Stage labels along the rail */
|
|
15709
15783
|
.qc-drag-stages {
|
|
15710
15784
|
position: absolute;
|
|
15711
|
-
inset:
|
|
15785
|
+
inset: 12px 18px;
|
|
15712
15786
|
display: grid;
|
|
15713
|
-
grid-template-columns:
|
|
15714
|
-
align-items:
|
|
15787
|
+
grid-template-columns: 1fr 1fr 1fr;
|
|
15788
|
+
align-items: end;
|
|
15715
15789
|
pointer-events: none;
|
|
15790
|
+
z-index: 2;
|
|
15716
15791
|
}
|
|
15717
15792
|
.qc-drag-stage {
|
|
15718
|
-
|
|
15719
|
-
|
|
15720
|
-
|
|
15721
|
-
font-size: 0.7rem;
|
|
15793
|
+
align-self: end;
|
|
15794
|
+
padding-bottom: 6px;
|
|
15795
|
+
font-size: 0.68rem;
|
|
15722
15796
|
font-weight: 800;
|
|
15723
15797
|
color: var(--text-muted);
|
|
15724
|
-
letter-spacing: 0.
|
|
15798
|
+
letter-spacing: 0.06em;
|
|
15725
15799
|
text-transform: uppercase;
|
|
15726
|
-
|
|
15727
|
-
|
|
15800
|
+
transition: color 0.18s ease, transform 0.18s ease;
|
|
15801
|
+
}
|
|
15802
|
+
.qc-stage-commit { justify-self: start; padding-left: 4px; }
|
|
15803
|
+
.qc-stage-tag { justify-self: center; }
|
|
15804
|
+
.qc-stage-push { justify-self: end; padding-right: 4px; }
|
|
15805
|
+
.qc-drag-stage.is-passed { color: var(--qc-tone); }
|
|
15806
|
+
.qc-drag-stage.is-active { transform: translateY(-1px); }
|
|
15807
|
+
/* Tag stage gets a little dot indicator that pulses while user dwells. */
|
|
15808
|
+
.qc-stage-tag::before {
|
|
15728
15809
|
content: "";
|
|
15729
15810
|
display: block;
|
|
15730
|
-
width:
|
|
15731
|
-
height:
|
|
15732
|
-
margin: 0 auto
|
|
15811
|
+
width: 6px;
|
|
15812
|
+
height: 6px;
|
|
15813
|
+
margin: 0 auto 4px;
|
|
15733
15814
|
border-radius: 50%;
|
|
15734
|
-
background: rgba(125, 91, 57, 0.
|
|
15735
|
-
|
|
15815
|
+
background: rgba(125, 91, 57, 0.30);
|
|
15816
|
+
transition: background 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
|
|
15736
15817
|
}
|
|
15737
|
-
.qc-drag-stage.is-passed {
|
|
15738
|
-
|
|
15818
|
+
.qc-drag-stage.qc-stage-tag.is-passed::before {
|
|
15819
|
+
background: var(--qc-tone);
|
|
15820
|
+
box-shadow: 0 0 0 4px color-mix(in srgb, var(--qc-tone) 22%, transparent);
|
|
15739
15821
|
}
|
|
15740
|
-
.qc-drag-
|
|
15741
|
-
background: var(--
|
|
15822
|
+
.qc-drag-track[data-tag-dwell="active"] .qc-stage-tag::before {
|
|
15823
|
+
background: var(--qc-tone);
|
|
15824
|
+
animation: qc-tag-dot-pulse var(--qc-dwell-ms) ease-out forwards;
|
|
15742
15825
|
}
|
|
15826
|
+
.qc-drag-track[data-tag-dwell="armed"] .qc-stage-tag::before {
|
|
15827
|
+
background: var(--qc-tone);
|
|
15828
|
+
transform: scale(1.4);
|
|
15829
|
+
box-shadow: 0 0 0 6px color-mix(in srgb, var(--qc-tone) 22%, transparent);
|
|
15830
|
+
}
|
|
15831
|
+
@keyframes qc-tag-dot-pulse {
|
|
15832
|
+
0% { transform: scale(1); }
|
|
15833
|
+
100% { transform: scale(1.35); box-shadow: 0 0 0 6px color-mix(in srgb, var(--qc-tone) 18%, transparent); }
|
|
15834
|
+
}
|
|
15835
|
+
|
|
15836
|
+
/* The draggable knob β starts at left, breathes when idle, snaps colors per zone. */
|
|
15743
15837
|
.qc-drag-action {
|
|
15744
15838
|
position: absolute;
|
|
15745
|
-
left:
|
|
15746
|
-
top:
|
|
15747
|
-
z-index:
|
|
15839
|
+
left: var(--qc-knob-x, 6px);
|
|
15840
|
+
top: 50%;
|
|
15841
|
+
z-index: 3;
|
|
15748
15842
|
width: 42%;
|
|
15749
|
-
min-width:
|
|
15750
|
-
max-width:
|
|
15751
|
-
height:
|
|
15843
|
+
min-width: 138px;
|
|
15844
|
+
max-width: 200px;
|
|
15845
|
+
height: 56px;
|
|
15846
|
+
padding: 0 16px;
|
|
15752
15847
|
border: 0;
|
|
15753
|
-
border-radius:
|
|
15754
|
-
background: var(--
|
|
15848
|
+
border-radius: 12px;
|
|
15849
|
+
background: linear-gradient(180deg, var(--qc-tone), color-mix(in srgb, var(--qc-tone) 84%, black));
|
|
15755
15850
|
color: white;
|
|
15756
15851
|
font-family: var(--font-sans);
|
|
15757
|
-
font-size: 0.
|
|
15852
|
+
font-size: 0.86rem;
|
|
15758
15853
|
font-weight: 800;
|
|
15854
|
+
letter-spacing: 0.01em;
|
|
15759
15855
|
display: inline-flex;
|
|
15760
15856
|
align-items: center;
|
|
15761
15857
|
justify-content: center;
|
|
15762
|
-
gap:
|
|
15858
|
+
gap: 10px;
|
|
15763
15859
|
cursor: grab;
|
|
15764
|
-
box-shadow:
|
|
15765
|
-
|
|
15766
|
-
|
|
15860
|
+
box-shadow:
|
|
15861
|
+
0 8px 22px var(--qc-tone-soft),
|
|
15862
|
+
inset 0 1px 0 rgba(255, 255, 255, 0.35);
|
|
15863
|
+
transform: translateY(-50%);
|
|
15864
|
+
transition: left 0.22s cubic-bezier(0.4, 0.0, 0.2, 1),
|
|
15865
|
+
background 0.18s ease,
|
|
15866
|
+
box-shadow 0.18s ease;
|
|
15767
15867
|
touch-action: none;
|
|
15868
|
+
overflow: hidden;
|
|
15869
|
+
animation: qc-knob-breathe 2.4s ease-in-out infinite;
|
|
15768
15870
|
}
|
|
15769
15871
|
.qc-drag-track.is-dragging .qc-drag-action {
|
|
15770
15872
|
cursor: grabbing;
|
|
15771
|
-
transition: background 0.
|
|
15873
|
+
transition: background 0.12s ease, box-shadow 0.12s ease;
|
|
15874
|
+
animation: none;
|
|
15772
15875
|
}
|
|
15773
|
-
.qc-drag-
|
|
15774
|
-
|
|
15775
|
-
|
|
15876
|
+
.qc-drag-grip {
|
|
15877
|
+
display: inline-flex;
|
|
15878
|
+
flex-direction: column;
|
|
15879
|
+
align-items: center;
|
|
15880
|
+
justify-content: center;
|
|
15881
|
+
gap: 2px;
|
|
15882
|
+
margin-right: 2px;
|
|
15883
|
+
opacity: 0.7;
|
|
15884
|
+
flex: 0 0 auto;
|
|
15776
15885
|
}
|
|
15777
|
-
.qc-drag-
|
|
15778
|
-
|
|
15779
|
-
|
|
15886
|
+
.qc-drag-grip i {
|
|
15887
|
+
display: block;
|
|
15888
|
+
width: 12px;
|
|
15889
|
+
height: 1.5px;
|
|
15890
|
+
border-radius: 1px;
|
|
15891
|
+
background: rgba(255, 255, 255, 0.85);
|
|
15892
|
+
}
|
|
15893
|
+
.qc-drag-label {
|
|
15894
|
+
white-space: nowrap;
|
|
15895
|
+
overflow: hidden;
|
|
15896
|
+
text-overflow: ellipsis;
|
|
15780
15897
|
}
|
|
15781
15898
|
.qc-drag-action:disabled {
|
|
15782
|
-
opacity: 0.
|
|
15899
|
+
opacity: 0.5;
|
|
15783
15900
|
cursor: not-allowed;
|
|
15784
15901
|
box-shadow: none;
|
|
15902
|
+
animation: none;
|
|
15903
|
+
}
|
|
15904
|
+
/* Dwell progress bar β bottom of the knob, fills leftβright over DWELL_MS */
|
|
15905
|
+
.qc-drag-dwell-bar {
|
|
15906
|
+
position: absolute;
|
|
15907
|
+
left: 0;
|
|
15908
|
+
right: 0;
|
|
15909
|
+
bottom: 0;
|
|
15910
|
+
height: 3px;
|
|
15911
|
+
background: rgba(255, 255, 255, 0.78);
|
|
15912
|
+
transform: scaleX(0);
|
|
15913
|
+
transform-origin: left center;
|
|
15914
|
+
border-radius: 0 0 12px 12px;
|
|
15915
|
+
pointer-events: none;
|
|
15916
|
+
transition: opacity 0.2s ease;
|
|
15917
|
+
opacity: 0;
|
|
15918
|
+
}
|
|
15919
|
+
.qc-drag-track[data-tag-dwell="active"] .qc-drag-dwell-bar {
|
|
15920
|
+
opacity: 1;
|
|
15921
|
+
animation: qc-dwell-fill var(--qc-dwell-ms) linear forwards;
|
|
15922
|
+
}
|
|
15923
|
+
.qc-drag-track[data-tag-dwell="armed"] .qc-drag-dwell-bar {
|
|
15924
|
+
opacity: 0.55;
|
|
15925
|
+
transform: scaleX(1);
|
|
15926
|
+
}
|
|
15927
|
+
@keyframes qc-dwell-fill {
|
|
15928
|
+
from { transform: scaleX(0); }
|
|
15929
|
+
to { transform: scaleX(1); }
|
|
15930
|
+
}
|
|
15931
|
+
@keyframes qc-knob-breathe {
|
|
15932
|
+
0%, 100% { box-shadow: 0 6px 18px var(--qc-tone-soft), inset 0 1px 0 rgba(255, 255, 255, 0.35); }
|
|
15933
|
+
50% { box-shadow: 0 10px 28px var(--qc-tone-soft),
|
|
15934
|
+
0 0 0 4px color-mix(in srgb, var(--qc-tone) 22%, transparent),
|
|
15935
|
+
inset 0 1px 0 rgba(255, 255, 255, 0.4); }
|
|
15936
|
+
}
|
|
15937
|
+
@media (prefers-reduced-motion: reduce) {
|
|
15938
|
+
.qc-drag-action,
|
|
15939
|
+
.qc-chevron,
|
|
15940
|
+
.qc-drag-dwell-bar { animation: none !important; transition: none !important; }
|
|
15941
|
+
}
|
|
15942
|
+
|
|
15943
|
+
/* Cancel mode β user has ventured past Commit, then dragged back. Release here = no-op. */
|
|
15944
|
+
.qc-drag-track[data-cancel-mode="1"] {
|
|
15945
|
+
--qc-tone: #8c735f;
|
|
15946
|
+
--qc-tone-soft: rgba(125, 91, 57, 0.16);
|
|
15947
|
+
}
|
|
15948
|
+
.qc-drag-track[data-cancel-mode="1"] .qc-drag-action {
|
|
15949
|
+
background: linear-gradient(180deg, #a3897a, #7a604c);
|
|
15950
|
+
box-shadow: 0 4px 12px rgba(125, 91, 57, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.25);
|
|
15951
|
+
animation: none;
|
|
15952
|
+
}
|
|
15953
|
+
.qc-drag-track[data-cancel-mode="1"] .qc-drag-dwell-bar,
|
|
15954
|
+
.qc-drag-track[data-cancel-mode="1"] .qc-baseline-seg,
|
|
15955
|
+
.qc-drag-track[data-cancel-mode="1"] .qc-chevrons { opacity: 0.25 !important; }
|
|
15956
|
+
.qc-drag-track[data-cancel-mode="1"] .qc-drag-label {
|
|
15957
|
+
animation: qc-cancel-shake 0.6s ease-in-out infinite;
|
|
15958
|
+
}
|
|
15959
|
+
@keyframes qc-cancel-shake {
|
|
15960
|
+
0%, 100% { transform: translateX(0); }
|
|
15961
|
+
25% { transform: translateX(-1.5px); }
|
|
15962
|
+
75% { transform: translateX(1.5px); }
|
|
15963
|
+
}
|
|
15964
|
+
|
|
15965
|
+
.qc-drag-help {
|
|
15966
|
+
font-size: 0.7rem;
|
|
15967
|
+
color: var(--text-muted);
|
|
15968
|
+
text-align: center;
|
|
15969
|
+
letter-spacing: 0.02em;
|
|
15970
|
+
opacity: 0.78;
|
|
15785
15971
|
}
|
|
15786
15972
|
|
|
15787
15973
|
@media (max-width: 720px) {
|
|
@@ -15800,10 +15986,13 @@
|
|
|
15800
15986
|
grid-template-columns: 1fr 18px 1fr;
|
|
15801
15987
|
gap: 6px;
|
|
15802
15988
|
}
|
|
15989
|
+
.qc-drag-track { height: 80px; }
|
|
15803
15990
|
.qc-drag-action {
|
|
15804
|
-
width:
|
|
15805
|
-
min-width:
|
|
15991
|
+
width: 46%;
|
|
15992
|
+
min-width: 122px;
|
|
15993
|
+
height: 54px;
|
|
15806
15994
|
}
|
|
15995
|
+
.qc-chevrons { right: 10px; }
|
|
15807
15996
|
}
|
|
15808
15997
|
|
|
15809
15998
|
/* ============================================================ */
|