@co0ontty/wand 1.43.0 → 1.43.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.
|
@@ -15678,110 +15678,219 @@
|
|
|
15678
15678
|
font-weight: 700;
|
|
15679
15679
|
}
|
|
15680
15680
|
|
|
15681
|
-
|
|
15681
|
+
/* ================================================================
|
|
15682
|
+
Quick-Git magnetic dock
|
|
15683
|
+
Layout: [ free field with Commit/Tag/Push chips ] [ ▶ pad ]
|
|
15684
|
+
- Selected chips snap into one cluster (always Commit → Tag → Push).
|
|
15685
|
+
- Unselected chips rest on a lower tray row.
|
|
15686
|
+
- Drag a chip onto the cluster to add it, away to remove it, tap to toggle.
|
|
15687
|
+
- Fling any chip into the ▶ pad (or tap it) to fire compose(selected).
|
|
15688
|
+
Commit is always included. Empty message / tag → auto-generated on submit.
|
|
15689
|
+
================================================================ */
|
|
15690
|
+
.qc-dock-wrap {
|
|
15691
|
+
display: flex;
|
|
15692
|
+
flex-direction: column;
|
|
15693
|
+
gap: 8px;
|
|
15682
15694
|
padding-top: 2px;
|
|
15683
15695
|
}
|
|
15684
|
-
.qc-
|
|
15685
|
-
|
|
15686
|
-
|
|
15696
|
+
.qc-dock-wrap[data-disabled="1"] { opacity: 0.55; pointer-events: none; }
|
|
15697
|
+
|
|
15698
|
+
/* Busy panel (replaces the dock while a request is in flight) */
|
|
15699
|
+
.qc-dock-busy {
|
|
15700
|
+
display: inline-flex;
|
|
15701
|
+
align-items: center;
|
|
15702
|
+
gap: 8px;
|
|
15703
|
+
align-self: flex-start;
|
|
15704
|
+
padding: 10px 14px;
|
|
15705
|
+
border-radius: 12px;
|
|
15706
|
+
background: rgba(197, 101, 61, 0.10);
|
|
15707
|
+
border: 1px solid rgba(197, 101, 61, 0.20);
|
|
15708
|
+
color: var(--accent);
|
|
15709
|
+
font-size: 0.82rem;
|
|
15710
|
+
font-weight: 700;
|
|
15711
|
+
}
|
|
15712
|
+
.qc-dock-busy-dot {
|
|
15713
|
+
width: 8px;
|
|
15714
|
+
height: 8px;
|
|
15715
|
+
border-radius: 50%;
|
|
15716
|
+
background: var(--accent);
|
|
15717
|
+
animation: qc-dock-busy-pulse 1.2s ease-in-out infinite;
|
|
15718
|
+
}
|
|
15719
|
+
@keyframes qc-dock-busy-pulse {
|
|
15720
|
+
0%, 100% { opacity: 0.4; transform: scale(0.85); }
|
|
15721
|
+
50% { opacity: 1; transform: scale(1.15); }
|
|
15722
|
+
}
|
|
15723
|
+
|
|
15724
|
+
/* Stage = free-drag field on the left + launch pad on the right.
|
|
15725
|
+
--qc-tone follows the composed action so the whole stage echoes the combo color. */
|
|
15726
|
+
.qc-dock-stage {
|
|
15727
|
+
--qc-tone: var(--accent);
|
|
15728
|
+
--qc-tone-soft: rgba(197, 101, 61, 0.20);
|
|
15729
|
+
display: grid;
|
|
15730
|
+
grid-template-columns: minmax(0, 1fr) 96px;
|
|
15731
|
+
gap: 10px;
|
|
15732
|
+
height: 150px;
|
|
15733
|
+
padding: 8px;
|
|
15734
|
+
border-radius: 16px;
|
|
15735
|
+
border: 1px solid rgba(125, 91, 57, 0.16);
|
|
15736
|
+
background:
|
|
15737
|
+
radial-gradient(120% 120% at 30% 30%, rgba(255, 255, 255, 0.55), rgba(255, 245, 235, 0.16)),
|
|
15738
|
+
linear-gradient(180deg, rgba(255, 255, 255, 0.46), rgba(255, 245, 235, 0.22));
|
|
15739
|
+
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 1px 3px rgba(89, 58, 32, 0.05);
|
|
15740
|
+
user-select: none;
|
|
15741
|
+
}
|
|
15742
|
+
.qc-dock-stage[data-action="commit-tag"] { --qc-tone: #4a6fa5; --qc-tone-soft: rgba(74, 111, 165, 0.22); }
|
|
15743
|
+
.qc-dock-stage[data-action="commit-push"] { --qc-tone: #4f7a58; --qc-tone-soft: rgba(79, 122, 88, 0.22); }
|
|
15744
|
+
.qc-dock-stage[data-action="commit-tag-push"] { --qc-tone: #7c5aa8; --qc-tone-soft: rgba(124, 90, 168, 0.24); }
|
|
15745
|
+
|
|
15746
|
+
.qc-dock-field {
|
|
15687
15747
|
position: relative;
|
|
15688
|
-
min-
|
|
15689
|
-
|
|
15690
|
-
|
|
15691
|
-
border: 1px solid rgba(125, 91, 57, 0.14);
|
|
15692
|
-
background: rgba(255, 255, 255, 0.52);
|
|
15693
|
-
overflow: hidden;
|
|
15748
|
+
min-width: 0;
|
|
15749
|
+
border-radius: 12px;
|
|
15750
|
+
background: repeating-linear-gradient(45deg, rgba(125, 91, 57, 0.035) 0 8px, transparent 8px 16px);
|
|
15694
15751
|
touch-action: none;
|
|
15695
|
-
|
|
15752
|
+
overflow: hidden;
|
|
15696
15753
|
}
|
|
15697
|
-
|
|
15754
|
+
|
|
15755
|
+
/* Cluster backdrop — the tray that selected chips snap onto. JS sizes/positions it. */
|
|
15756
|
+
.qc-dock-cluster {
|
|
15698
15757
|
position: absolute;
|
|
15699
|
-
|
|
15700
|
-
|
|
15701
|
-
|
|
15702
|
-
background:
|
|
15703
|
-
|
|
15758
|
+
left: 0;
|
|
15759
|
+
top: 0;
|
|
15760
|
+
border-radius: 14px;
|
|
15761
|
+
background: color-mix(in srgb, var(--qc-tone) 10%, transparent);
|
|
15762
|
+
border: 1.5px dashed color-mix(in srgb, var(--qc-tone) 38%, transparent);
|
|
15763
|
+
box-shadow: 0 4px 14px var(--qc-tone-soft);
|
|
15704
15764
|
pointer-events: none;
|
|
15765
|
+
z-index: 0;
|
|
15766
|
+
opacity: 0;
|
|
15767
|
+
transition: transform 0.22s cubic-bezier(0.22, 1, 0.36, 1),
|
|
15768
|
+
width 0.22s cubic-bezier(0.22, 1, 0.36, 1),
|
|
15769
|
+
height 0.22s cubic-bezier(0.22, 1, 0.36, 1),
|
|
15770
|
+
opacity 0.18s ease, background 0.2s ease, border-color 0.2s ease;
|
|
15705
15771
|
}
|
|
15706
|
-
|
|
15707
|
-
|
|
15708
|
-
|
|
15709
|
-
.
|
|
15772
|
+
/* Only visible while two or more chips are travelling together. */
|
|
15773
|
+
.qc-dock-cluster.is-active { opacity: 1; }
|
|
15774
|
+
|
|
15775
|
+
/* Chips — absolutely positioned; JS sets transform. */
|
|
15776
|
+
.qc-chip {
|
|
15710
15777
|
position: absolute;
|
|
15711
|
-
|
|
15712
|
-
|
|
15713
|
-
|
|
15778
|
+
left: 0;
|
|
15779
|
+
top: 0;
|
|
15780
|
+
display: inline-flex;
|
|
15714
15781
|
align-items: center;
|
|
15715
|
-
|
|
15782
|
+
gap: 7px;
|
|
15783
|
+
height: 38px;
|
|
15784
|
+
padding: 0 14px;
|
|
15785
|
+
border: 1px solid rgba(125, 91, 57, 0.22);
|
|
15786
|
+
border-radius: 999px;
|
|
15787
|
+
background: rgba(255, 255, 255, 0.92);
|
|
15788
|
+
color: var(--text-secondary);
|
|
15789
|
+
font-family: var(--font-sans);
|
|
15790
|
+
font-size: 0.82rem;
|
|
15791
|
+
font-weight: 700;
|
|
15792
|
+
letter-spacing: 0.01em;
|
|
15793
|
+
white-space: nowrap;
|
|
15794
|
+
cursor: grab;
|
|
15795
|
+
touch-action: none;
|
|
15796
|
+
box-shadow: 0 2px 6px rgba(89, 58, 32, 0.08);
|
|
15797
|
+
z-index: 2;
|
|
15798
|
+
transition: box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
|
|
15716
15799
|
}
|
|
15717
|
-
|
|
15718
|
-
|
|
15719
|
-
|
|
15720
|
-
|
|
15721
|
-
font-size: 0.7rem;
|
|
15722
|
-
font-weight: 800;
|
|
15723
|
-
color: var(--text-muted);
|
|
15724
|
-
letter-spacing: 0.03em;
|
|
15725
|
-
text-transform: uppercase;
|
|
15800
|
+
/* Only animate position while settling, so live drag stays glued to the pointer. */
|
|
15801
|
+
.qc-chip.qc-chip--anim {
|
|
15802
|
+
transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
|
|
15803
|
+
box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease, color 0.18s ease;
|
|
15726
15804
|
}
|
|
15727
|
-
.qc-
|
|
15728
|
-
|
|
15729
|
-
|
|
15730
|
-
|
|
15731
|
-
height: 7px;
|
|
15732
|
-
margin: 0 auto 5px;
|
|
15733
|
-
border-radius: 50%;
|
|
15734
|
-
background: rgba(125, 91, 57, 0.22);
|
|
15735
|
-
box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.75);
|
|
15805
|
+
.qc-chip.is-grabbing {
|
|
15806
|
+
cursor: grabbing;
|
|
15807
|
+
z-index: 5;
|
|
15808
|
+
box-shadow: 0 12px 26px rgba(89, 58, 32, 0.22);
|
|
15736
15809
|
}
|
|
15737
|
-
.qc-
|
|
15738
|
-
|
|
15810
|
+
.qc-chip:disabled { cursor: not-allowed; }
|
|
15811
|
+
.qc-chip:not(:disabled):hover { border-color: var(--qc-tone); }
|
|
15812
|
+
|
|
15813
|
+
.qc-chip-dot {
|
|
15814
|
+
width: 9px;
|
|
15815
|
+
height: 9px;
|
|
15816
|
+
border-radius: 50%;
|
|
15817
|
+
background: rgba(125, 91, 57, 0.30);
|
|
15818
|
+
box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.6);
|
|
15819
|
+
transition: background 0.18s ease, transform 0.18s ease;
|
|
15739
15820
|
}
|
|
15740
|
-
.qc-
|
|
15741
|
-
|
|
15821
|
+
.qc-chip--commit .qc-chip-dot { background: var(--accent); }
|
|
15822
|
+
.qc-chip--tag .qc-chip-dot { background: #4a6fa5; }
|
|
15823
|
+
.qc-chip--push .qc-chip-dot { background: #4f7a58; }
|
|
15824
|
+
|
|
15825
|
+
/* Each chip carries its own identity tint at rest. */
|
|
15826
|
+
.qc-chip--commit { border-color: color-mix(in srgb, var(--accent) 30%, rgba(125, 91, 57, 0.2)); }
|
|
15827
|
+
.qc-chip--tag { border-color: color-mix(in srgb, #4a6fa5 30%, rgba(125, 91, 57, 0.2)); }
|
|
15828
|
+
.qc-chip--push { border-color: color-mix(in srgb, #4f7a58 30%, rgba(125, 91, 57, 0.2)); }
|
|
15829
|
+
|
|
15830
|
+
/* Grabbed or magnetically attached → lifts and lights up in its own color. */
|
|
15831
|
+
.qc-chip.is-grabbing, .qc-chip.is-attached {
|
|
15832
|
+
color: var(--text-primary);
|
|
15833
|
+
box-shadow: 0 12px 26px var(--qc-tone-soft);
|
|
15834
|
+
z-index: 5;
|
|
15742
15835
|
}
|
|
15743
|
-
.qc-
|
|
15744
|
-
|
|
15745
|
-
|
|
15746
|
-
|
|
15747
|
-
|
|
15748
|
-
|
|
15749
|
-
|
|
15750
|
-
|
|
15751
|
-
|
|
15752
|
-
border: 0;
|
|
15753
|
-
border-radius: 8px;
|
|
15754
|
-
background: var(--accent);
|
|
15755
|
-
color: white;
|
|
15756
|
-
font-family: var(--font-sans);
|
|
15757
|
-
font-size: 0.84rem;
|
|
15758
|
-
font-weight: 800;
|
|
15759
|
-
display: inline-flex;
|
|
15836
|
+
.qc-chip.is-grabbing .qc-chip-dot, .qc-chip.is-attached .qc-chip-dot { transform: scale(1.1); }
|
|
15837
|
+
.qc-chip--commit.is-grabbing, .qc-chip--commit.is-attached { background: linear-gradient(180deg, #fff, color-mix(in srgb, var(--accent) 16%, #fff)); border-color: color-mix(in srgb, var(--accent) 46%, transparent); }
|
|
15838
|
+
.qc-chip--tag.is-grabbing, .qc-chip--tag.is-attached { background: linear-gradient(180deg, #fff, color-mix(in srgb, #4a6fa5 16%, #fff)); border-color: color-mix(in srgb, #4a6fa5 46%, transparent); }
|
|
15839
|
+
.qc-chip--push.is-grabbing, .qc-chip--push.is-attached { background: linear-gradient(180deg, #fff, color-mix(in srgb, #4f7a58 16%, #fff)); border-color: color-mix(in srgb, #4f7a58 46%, transparent); }
|
|
15840
|
+
|
|
15841
|
+
/* Launch pad — drop target on the right; also tappable. */
|
|
15842
|
+
.qc-dock-launch {
|
|
15843
|
+
display: flex;
|
|
15844
|
+
flex-direction: column;
|
|
15760
15845
|
align-items: center;
|
|
15761
15846
|
justify-content: center;
|
|
15762
|
-
gap:
|
|
15763
|
-
|
|
15764
|
-
|
|
15765
|
-
|
|
15766
|
-
|
|
15847
|
+
gap: 4px;
|
|
15848
|
+
border-radius: 14px;
|
|
15849
|
+
border: 1.5px dashed rgba(125, 91, 57, 0.32);
|
|
15850
|
+
background: rgba(255, 255, 255, 0.4);
|
|
15851
|
+
color: var(--text-muted);
|
|
15852
|
+
cursor: pointer;
|
|
15767
15853
|
touch-action: none;
|
|
15854
|
+
transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease,
|
|
15855
|
+
transform 0.2s ease, box-shadow 0.2s ease;
|
|
15768
15856
|
}
|
|
15769
|
-
.qc-
|
|
15770
|
-
|
|
15771
|
-
|
|
15857
|
+
.qc-dock-launch:not(:disabled):hover {
|
|
15858
|
+
border-color: var(--qc-tone);
|
|
15859
|
+
color: var(--qc-tone);
|
|
15860
|
+
background: color-mix(in srgb, var(--qc-tone) 8%, rgba(255, 255, 255, 0.5));
|
|
15772
15861
|
}
|
|
15773
|
-
.qc-
|
|
15774
|
-
|
|
15775
|
-
|
|
15862
|
+
.qc-dock-launch:disabled { cursor: not-allowed; }
|
|
15863
|
+
.qc-dock-launch-arrow { display: inline-flex; transition: transform 0.2s ease; }
|
|
15864
|
+
.qc-dock-launch-label {
|
|
15865
|
+
font-size: 0.72rem;
|
|
15866
|
+
font-weight: 800;
|
|
15867
|
+
letter-spacing: 0.04em;
|
|
15776
15868
|
}
|
|
15777
|
-
|
|
15778
|
-
|
|
15779
|
-
|
|
15869
|
+
/* Hot = a chip is hovering over the pad; release to fire. */
|
|
15870
|
+
.qc-dock-stage[data-hot="1"] .qc-dock-launch {
|
|
15871
|
+
border-style: solid;
|
|
15872
|
+
border-color: var(--qc-tone);
|
|
15873
|
+
background: var(--qc-tone);
|
|
15874
|
+
color: #fff;
|
|
15875
|
+
transform: scale(1.04);
|
|
15876
|
+
box-shadow: 0 8px 22px var(--qc-tone-soft), 0 0 0 5px color-mix(in srgb, var(--qc-tone) 18%, transparent);
|
|
15780
15877
|
}
|
|
15781
|
-
.qc-
|
|
15782
|
-
|
|
15783
|
-
|
|
15784
|
-
|
|
15878
|
+
.qc-dock-stage[data-hot="1"] .qc-dock-launch-arrow { transform: translateX(3px); }
|
|
15879
|
+
|
|
15880
|
+
.qc-dock-hint {
|
|
15881
|
+
min-height: 1em;
|
|
15882
|
+
font-size: 0.7rem;
|
|
15883
|
+
color: var(--text-muted);
|
|
15884
|
+
text-align: center;
|
|
15885
|
+
letter-spacing: 0.02em;
|
|
15886
|
+
opacity: 0.8;
|
|
15887
|
+
}
|
|
15888
|
+
|
|
15889
|
+
@media (prefers-reduced-motion: reduce) {
|
|
15890
|
+
.qc-chip, .qc-chip--anim, .qc-dock-cluster, .qc-dock-launch, .qc-dock-busy-dot {
|
|
15891
|
+
animation: none !important;
|
|
15892
|
+
transition: none !important;
|
|
15893
|
+
}
|
|
15785
15894
|
}
|
|
15786
15895
|
|
|
15787
15896
|
@media (max-width: 720px) {
|
|
@@ -15800,10 +15909,17 @@
|
|
|
15800
15909
|
grid-template-columns: 1fr 18px 1fr;
|
|
15801
15910
|
gap: 6px;
|
|
15802
15911
|
}
|
|
15803
|
-
.qc-
|
|
15804
|
-
|
|
15805
|
-
|
|
15912
|
+
.qc-dock-stage {
|
|
15913
|
+
height: 160px;
|
|
15914
|
+
grid-template-columns: minmax(0, 1fr) 82px;
|
|
15915
|
+
gap: 8px;
|
|
15916
|
+
}
|
|
15917
|
+
.qc-chip {
|
|
15918
|
+
height: 36px;
|
|
15919
|
+
padding: 0 12px;
|
|
15920
|
+
font-size: 0.8rem;
|
|
15806
15921
|
}
|
|
15922
|
+
.qc-dock-launch-label { font-size: 0.68rem; }
|
|
15807
15923
|
}
|
|
15808
15924
|
|
|
15809
15925
|
/* ============================================================ */
|