claude-plugin-viban 1.1.1 → 1.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/.claude-plugin/plugin.json +1 -1
- package/bin/viban +28 -21
- package/package.json +1 -1
package/bin/viban
CHANGED
|
@@ -336,8 +336,9 @@ init_json() {
|
|
|
336
336
|
if [[ ! -f "$VIBAN_JSON" ]]; then
|
|
337
337
|
local max_wt_id=0
|
|
338
338
|
if [[ -d "$VIBAN_DATA_DIR/worktrees" ]]; then
|
|
339
|
+
local wt_id
|
|
339
340
|
for d in "$VIBAN_DATA_DIR/worktrees/"*(/N); do
|
|
340
|
-
|
|
341
|
+
wt_id="${d:t}"
|
|
341
342
|
[[ "$wt_id" =~ ^[0-9]+$ ]] && (( wt_id > max_wt_id )) && max_wt_id=$wt_id
|
|
342
343
|
done
|
|
343
344
|
fi
|
|
@@ -700,14 +701,15 @@ build_column_lines() {
|
|
|
700
701
|
done <<< "$_batch_output"
|
|
701
702
|
else
|
|
702
703
|
# All-ASCII fast path - no Python needed
|
|
704
|
+
local _t _mw _fc _d
|
|
703
705
|
for (( _i=1; _i<=_n; _i++ )); do
|
|
704
|
-
|
|
706
|
+
_t="${_titles[$_i]}" _mw=${_title_max_ws[$_i]}
|
|
705
707
|
(( ${#_t} > _mw )) && _t="${_t:0:$_mw}"
|
|
706
708
|
_short_titles+=("$_t")
|
|
707
|
-
|
|
709
|
+
_fc="${_title_pfxs[$_i]}${_t}"
|
|
708
710
|
_title_cws+=(${#_fc})
|
|
709
711
|
|
|
710
|
-
|
|
712
|
+
_d="${_descs[$_i]}"
|
|
711
713
|
(( ${#_d} > _desc_max_w )) && _d="${_d:0:$_desc_max_w}"
|
|
712
714
|
_short_descs+=("$_d")
|
|
713
715
|
_desc_cws+=($((2 + ${#_d})))
|
|
@@ -717,29 +719,34 @@ build_column_lines() {
|
|
|
717
719
|
|
|
718
720
|
# --- Pass 3: Render cards ---
|
|
719
721
|
local shown=0
|
|
722
|
+
local id priority issue_type ext_id did
|
|
723
|
+
local spinner_prefix title_content title_pad
|
|
724
|
+
local desc_content desc_pad
|
|
725
|
+
local priority_tag priority_color type_tag type_color tags_w tags_pad
|
|
726
|
+
local border_color text_color desc_color
|
|
720
727
|
for (( _i=1; _i<=_n; _i++ )); do
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
728
|
+
id="${_ids[$_i]}"
|
|
729
|
+
priority="${_priorities[$_i]}"
|
|
730
|
+
issue_type="${_types[$_i]}"
|
|
731
|
+
ext_id="${_ext_ids[$_i]}"
|
|
732
|
+
did=$(display_id "$id" "$ext_id")
|
|
726
733
|
|
|
727
734
|
# Title line
|
|
728
|
-
|
|
735
|
+
spinner_prefix=""
|
|
729
736
|
[[ "$st" == "in_progress" ]] && spinner_prefix="${SPINNER_FRAMES[$((SPINNER_IDX % ${#SPINNER_FRAMES[@]} + 1))]} "
|
|
730
|
-
|
|
731
|
-
|
|
737
|
+
title_content=" ${spinner_prefix}${did} ${_short_titles[$_i]}"
|
|
738
|
+
title_pad=$((card_inner - ${_title_cws[$_i]}))
|
|
732
739
|
(( title_pad < 0 )) && title_pad=0
|
|
733
740
|
|
|
734
741
|
# Description line
|
|
735
|
-
|
|
736
|
-
|
|
742
|
+
desc_content=" ${_short_descs[$_i]}"
|
|
743
|
+
desc_pad=$((card_inner - ${_desc_cws[$_i]}))
|
|
737
744
|
(( desc_pad < 0 )) && desc_pad=0
|
|
738
745
|
|
|
739
746
|
# Priority and type tags
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
747
|
+
priority_tag="[$priority]"
|
|
748
|
+
priority_color="${PRIORITY_COLOR[$priority]:-$A_DIM}"
|
|
749
|
+
type_tag="" type_color="" tags_w=0
|
|
743
750
|
if [[ -n "$issue_type" ]]; then
|
|
744
751
|
type_tag="[${TYPE_LABEL[$issue_type]:-$issue_type}]"
|
|
745
752
|
type_color="${TYPE_COLOR[$issue_type]:-$A_DIM}"
|
|
@@ -747,11 +754,11 @@ build_column_lines() {
|
|
|
747
754
|
else
|
|
748
755
|
tags_w=${#priority_tag}
|
|
749
756
|
fi
|
|
750
|
-
|
|
757
|
+
tags_pad=$((card_inner - tags_w - 2))
|
|
751
758
|
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
759
|
+
border_color="$A_DIM"
|
|
760
|
+
text_color="$A_FG"
|
|
761
|
+
desc_color="$A_DIM"
|
|
755
762
|
if (( is_col_selected && shown == card_sel )); then
|
|
756
763
|
border_color="${A_SELECTED}"
|
|
757
764
|
text_color="${A_BOLD}${A_ACCENT}"
|