@dahawa/hawa-code 1.42.2 → 2.0.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.
@@ -903,10 +903,21 @@ html, body {
903
903
  }
904
904
 
905
905
  .setting-row {
906
- display: flex;
906
+ display: grid;
907
+ grid-template-columns: minmax(120px, 160px) 1fr;
907
908
  align-items: center;
908
- justify-content: space-between;
909
- gap: 16px;
909
+ gap: 12px;
910
+ }
911
+
912
+ .setting-row > *:last-child {
913
+ justify-self: start;
914
+ }
915
+
916
+ .setting-row > .setting-input,
917
+ .setting-row > .setting-select {
918
+ width: 100%;
919
+ min-width: 0;
920
+ justify-self: stretch;
910
921
  }
911
922
 
912
923
  .setting-key {
@@ -1708,3 +1719,481 @@ html, body {
1708
1719
  .tool-confirm-reject:hover {
1709
1720
  background: rgba(239, 83, 80, 0.1);
1710
1721
  }
1722
+
1723
+ /* ============================================
1724
+ Prompt Input Bar
1725
+ ============================================ */
1726
+
1727
+ .prompt-input-bar {
1728
+ display: flex;
1729
+ flex-direction: column;
1730
+ padding: 8px 16px;
1731
+ background: var(--bg-secondary);
1732
+ border-top: 1px solid var(--border-color);
1733
+ flex-shrink: 0;
1734
+ gap: 4px;
1735
+ }
1736
+
1737
+ .prompt-input-inner {
1738
+ display: flex;
1739
+ align-items: flex-start;
1740
+ gap: 8px;
1741
+ }
1742
+
1743
+ .prompt-input-mode {
1744
+ display: flex;
1745
+ align-items: center;
1746
+ justify-content: center;
1747
+ flex-shrink: 0;
1748
+ width: 24px;
1749
+ height: 28px;
1750
+ color: var(--accent-green);
1751
+ font-weight: 600;
1752
+ user-select: none;
1753
+ }
1754
+
1755
+ .prompt-input-mode.bash {
1756
+ color: var(--accent-yellow);
1757
+ }
1758
+
1759
+ .prompt-input-mode.command {
1760
+ color: var(--accent-blue);
1761
+ }
1762
+
1763
+ .prompt-input-field {
1764
+ flex: 1;
1765
+ min-width: 0;
1766
+ background: var(--bg-primary);
1767
+ border: 1px solid var(--border-color);
1768
+ border-radius: 4px;
1769
+ color: var(--text-primary);
1770
+ padding: 6px 8px;
1771
+ font-family: var(--font-mono);
1772
+ font-size: 13px;
1773
+ line-height: 1.5;
1774
+ resize: none;
1775
+ overflow: hidden;
1776
+ min-height: 28px;
1777
+ max-height: 200px;
1778
+ }
1779
+
1780
+ .prompt-input-field:focus {
1781
+ outline: none;
1782
+ border-color: var(--accent-green);
1783
+ }
1784
+
1785
+ .prompt-input-field:disabled {
1786
+ background: var(--bg-secondary);
1787
+ color: var(--text-dimmed);
1788
+ cursor: not-allowed;
1789
+ }
1790
+
1791
+ .prompt-input-field::placeholder {
1792
+ color: var(--text-dimmed);
1793
+ }
1794
+
1795
+ .prompt-input-send {
1796
+ flex-shrink: 0;
1797
+ background: transparent;
1798
+ border: 1px solid var(--border-color);
1799
+ color: var(--text-secondary);
1800
+ padding: 6px 14px;
1801
+ border-radius: 4px;
1802
+ cursor: pointer;
1803
+ font-family: var(--font-mono);
1804
+ font-size: 12px;
1805
+ transition: all 0.15s ease;
1806
+ }
1807
+
1808
+ .prompt-input-send:hover:not(:disabled) {
1809
+ background: var(--bg-hover);
1810
+ color: var(--text-primary);
1811
+ border-color: var(--accent-green);
1812
+ }
1813
+
1814
+ .prompt-input-send:disabled {
1815
+ opacity: 0.5;
1816
+ cursor: not-allowed;
1817
+ }
1818
+
1819
+ .prompt-input-interrupt {
1820
+ flex-shrink: 0;
1821
+ background: transparent;
1822
+ border: 1px solid var(--border-color);
1823
+ color: var(--accent-red);
1824
+ padding: 6px 14px;
1825
+ border-radius: 4px;
1826
+ cursor: pointer;
1827
+ font-family: var(--font-mono);
1828
+ font-size: 12px;
1829
+ transition: all 0.15s ease;
1830
+ }
1831
+
1832
+ .prompt-input-interrupt:hover {
1833
+ background: rgba(239, 83, 80, 0.1);
1834
+ border-color: var(--accent-red);
1835
+ }
1836
+
1837
+ .prompt-input-status {
1838
+ font-size: 11px;
1839
+ padding-left: 32px;
1840
+ color: var(--text-dimmed);
1841
+ }
1842
+
1843
+ .prompt-input-status.received {
1844
+ color: var(--accent-blue);
1845
+ }
1846
+
1847
+ .prompt-input-status.queued {
1848
+ color: var(--accent-yellow);
1849
+ }
1850
+
1851
+ .prompt-input-status.executing {
1852
+ color: var(--accent-green);
1853
+ }
1854
+
1855
+ .prompt-input-status.rejected {
1856
+ color: var(--accent-red);
1857
+ }
1858
+
1859
+ .prompt-input-status.completed {
1860
+ color: var(--text-secondary);
1861
+ }
1862
+
1863
+ /* ============================================
1864
+ Ask User Question Inline Form
1865
+ ============================================ */
1866
+
1867
+ .ask-user-question-form {
1868
+ background: var(--bg-secondary);
1869
+ border: 1px solid var(--border-color);
1870
+ border-left: 3px solid var(--accent-purple);
1871
+ border-radius: 4px;
1872
+ padding: 12px 16px;
1873
+ margin-top: 4px;
1874
+ display: flex;
1875
+ flex-direction: column;
1876
+ gap: 10px;
1877
+ }
1878
+
1879
+ .ask-user-question-header {
1880
+ display: flex;
1881
+ flex-wrap: wrap;
1882
+ gap: 8px;
1883
+ font-size: 11px;
1884
+ color: var(--text-dimmed);
1885
+ padding-bottom: 8px;
1886
+ border-bottom: 1px solid var(--border-color);
1887
+ }
1888
+
1889
+ .ask-user-question-step {
1890
+ padding: 2px 8px;
1891
+ border-radius: 3px;
1892
+ border: 1px solid var(--border-color);
1893
+ background: var(--bg-primary);
1894
+ }
1895
+
1896
+ .ask-user-question-step.answered {
1897
+ border-color: var(--accent-green);
1898
+ color: var(--accent-green);
1899
+ }
1900
+
1901
+ .ask-user-question-step.active {
1902
+ border-color: var(--accent-purple);
1903
+ color: var(--accent-purple);
1904
+ font-weight: 600;
1905
+ }
1906
+
1907
+ .ask-user-question-title {
1908
+ color: var(--text-primary);
1909
+ font-size: 13px;
1910
+ font-weight: 600;
1911
+ }
1912
+
1913
+ .ask-user-question-hint {
1914
+ color: var(--text-dimmed);
1915
+ font-size: 11px;
1916
+ font-style: italic;
1917
+ }
1918
+
1919
+ .ask-user-question-options {
1920
+ display: flex;
1921
+ flex-direction: column;
1922
+ gap: 6px;
1923
+ }
1924
+
1925
+ .ask-user-question-option {
1926
+ display: flex;
1927
+ align-items: flex-start;
1928
+ gap: 8px;
1929
+ padding: 8px 10px;
1930
+ border-radius: 4px;
1931
+ border: 1px solid var(--border-color);
1932
+ background: var(--bg-primary);
1933
+ cursor: pointer;
1934
+ transition: all 0.15s ease;
1935
+ flex-wrap: wrap;
1936
+ }
1937
+
1938
+ .ask-user-question-option:hover {
1939
+ background: var(--bg-hover);
1940
+ }
1941
+
1942
+ .ask-user-question-option.selected {
1943
+ border-color: var(--accent-green);
1944
+ background: rgba(129, 199, 132, 0.1);
1945
+ }
1946
+
1947
+ .ask-user-question-option input {
1948
+ flex-shrink: 0;
1949
+ cursor: pointer;
1950
+ margin-top: 1px;
1951
+ }
1952
+
1953
+ .ask-user-question-option-label {
1954
+ color: var(--text-primary);
1955
+ font-size: 12px;
1956
+ font-weight: 600;
1957
+ flex-shrink: 0;
1958
+ padding-top: 1px;
1959
+ }
1960
+
1961
+ .ask-user-question-option-description {
1962
+ color: var(--text-dimmed);
1963
+ font-size: 11px;
1964
+ flex: 1;
1965
+ min-width: 120px;
1966
+ word-break: break-word;
1967
+ padding-top: 2px;
1968
+ }
1969
+
1970
+ .ask-user-question-custom-input {
1971
+ width: 100%;
1972
+ background: var(--bg-primary);
1973
+ border: 1px solid var(--border-color);
1974
+ border-radius: 4px;
1975
+ color: var(--text-primary);
1976
+ padding: 8px 10px;
1977
+ font-family: var(--font-mono);
1978
+ font-size: 13px;
1979
+ }
1980
+
1981
+ .ask-user-question-custom-input:focus {
1982
+ outline: none;
1983
+ border-color: var(--accent-purple);
1984
+ }
1985
+
1986
+ .ask-user-question-custom-input:disabled {
1987
+ background: var(--bg-secondary);
1988
+ color: var(--text-dimmed);
1989
+ cursor: not-allowed;
1990
+ }
1991
+
1992
+ .ask-user-question-custom-inline {
1993
+ margin-top: 6px;
1994
+ margin-left: 28px;
1995
+ padding: 10px 12px;
1996
+ border: 1px dashed var(--border-color);
1997
+ border-radius: 4px;
1998
+ background: var(--bg-primary);
1999
+ display: flex;
2000
+ flex-direction: column;
2001
+ gap: 8px;
2002
+ }
2003
+
2004
+ .ask-user-question-custom-inline-actions {
2005
+ display: flex;
2006
+ gap: 8px;
2007
+ }
2008
+
2009
+ .ask-user-question-custom-inline-actions button {
2010
+ background: transparent;
2011
+ border: 1px solid var(--border-color);
2012
+ color: var(--text-secondary);
2013
+ padding: 4px 12px;
2014
+ border-radius: 4px;
2015
+ cursor: pointer;
2016
+ font-family: var(--font-mono);
2017
+ font-size: 11px;
2018
+ transition: all 0.15s ease;
2019
+ }
2020
+
2021
+ .ask-user-question-custom-inline-actions button:hover:not(:disabled) {
2022
+ background: var(--bg-hover);
2023
+ color: var(--text-primary);
2024
+ }
2025
+
2026
+ .ask-user-question-custom-inline-actions button:disabled {
2027
+ opacity: 0.5;
2028
+ cursor: not-allowed;
2029
+ }
2030
+
2031
+ .ask-user-question-custom-inline-actions button:first-of-type {
2032
+ border-color: var(--accent-green);
2033
+ color: var(--accent-green);
2034
+ }
2035
+
2036
+ .ask-user-question-custom-inline-actions button:first-of-type:hover:not(:disabled) {
2037
+ background: rgba(129, 199, 132, 0.1);
2038
+ }
2039
+
2040
+ .ask-user-question-custom-inline-actions button:last-of-type {
2041
+ border-color: var(--text-dimmed);
2042
+ color: var(--text-dimmed);
2043
+ }
2044
+
2045
+ .ask-user-question-custom-inline-actions button:last-of-type:hover:not(:disabled) {
2046
+ border-color: var(--text-secondary);
2047
+ color: var(--text-secondary);
2048
+ }
2049
+
2050
+ .ask-user-question-actions {
2051
+ display: flex;
2052
+ gap: 10px;
2053
+ padding-top: 8px;
2054
+ border-top: 1px solid var(--border-color);
2055
+ }
2056
+
2057
+ .ask-user-question-actions button {
2058
+ background: transparent;
2059
+ border: 1px solid var(--border-color);
2060
+ color: var(--text-secondary);
2061
+ padding: 6px 14px;
2062
+ border-radius: 4px;
2063
+ cursor: pointer;
2064
+ font-family: var(--font-mono);
2065
+ font-size: 12px;
2066
+ transition: all 0.15s ease;
2067
+ }
2068
+
2069
+ .ask-user-question-actions button:hover:not(:disabled) {
2070
+ background: var(--bg-hover);
2071
+ color: var(--text-primary);
2072
+ }
2073
+
2074
+ .ask-user-question-actions button:disabled {
2075
+ opacity: 0.5;
2076
+ cursor: not-allowed;
2077
+ }
2078
+
2079
+ .ask-user-question-actions button[type="submit"],
2080
+ .ask-user-question-actions button:first-of-type {
2081
+ border-color: var(--accent-green);
2082
+ color: var(--accent-green);
2083
+ }
2084
+
2085
+ .ask-user-question-actions button[type="submit"]:hover:not(:disabled),
2086
+ .ask-user-question-actions button:first-of-type:hover:not(:disabled) {
2087
+ background: rgba(129, 199, 132, 0.1);
2088
+ }
2089
+
2090
+ .ask-user-question-actions button:last-of-type {
2091
+ border-color: var(--accent-red);
2092
+ color: var(--accent-red);
2093
+ }
2094
+
2095
+ .ask-user-question-actions button:last-of-type:hover:not(:disabled) {
2096
+ background: rgba(239, 83, 80, 0.1);
2097
+ }
2098
+
2099
+ /* ============================================
2100
+ Plan Mode Inline Forms (Enter/Exit Plan Mode)
2101
+ ============================================ */
2102
+
2103
+ .plan-mode-inline-form {
2104
+ background: var(--bg-secondary);
2105
+ border: 1px solid var(--border-color);
2106
+ border-left: 3px solid var(--accent-blue);
2107
+ border-radius: 4px;
2108
+ padding: 12px 16px;
2109
+ margin-top: 4px;
2110
+ display: flex;
2111
+ flex-direction: column;
2112
+ gap: 10px;
2113
+ }
2114
+
2115
+ .plan-mode-inline-title {
2116
+ color: var(--text-primary);
2117
+ font-size: 13px;
2118
+ font-weight: 600;
2119
+ }
2120
+
2121
+ .plan-mode-inline-description {
2122
+ color: var(--text-dimmed);
2123
+ font-size: 12px;
2124
+ line-height: 1.4;
2125
+ }
2126
+
2127
+ .plan-mode-inline-plan {
2128
+ background: var(--bg-primary);
2129
+ border: 1px solid var(--border-color);
2130
+ border-radius: 4px;
2131
+ padding: 10px 12px;
2132
+ max-height: 300px;
2133
+ overflow: auto;
2134
+ }
2135
+
2136
+ .plan-mode-inline-plan pre {
2137
+ color: var(--text-primary);
2138
+ font-family: var(--font-mono);
2139
+ font-size: 12px;
2140
+ line-height: 1.5;
2141
+ white-space: pre-wrap;
2142
+ word-break: break-word;
2143
+ margin: 0;
2144
+ }
2145
+
2146
+ .plan-mode-inline-path {
2147
+ color: var(--text-dimmed);
2148
+ font-size: 11px;
2149
+ font-family: var(--font-mono);
2150
+ }
2151
+
2152
+ .plan-mode-inline-actions {
2153
+ display: flex;
2154
+ gap: 10px;
2155
+ padding-top: 8px;
2156
+ border-top: 1px solid var(--border-color);
2157
+ }
2158
+
2159
+ .plan-mode-inline-actions button {
2160
+ background: transparent;
2161
+ border: 1px solid var(--border-color);
2162
+ color: var(--text-secondary);
2163
+ padding: 6px 14px;
2164
+ border-radius: 4px;
2165
+ cursor: pointer;
2166
+ font-family: var(--font-mono);
2167
+ font-size: 12px;
2168
+ transition: all 0.15s ease;
2169
+ }
2170
+
2171
+ .plan-mode-inline-actions button:hover:not(:disabled) {
2172
+ background: var(--bg-hover);
2173
+ color: var(--text-primary);
2174
+ }
2175
+
2176
+ .plan-mode-inline-actions button:disabled {
2177
+ opacity: 0.5;
2178
+ cursor: not-allowed;
2179
+ }
2180
+
2181
+ .plan-mode-inline-actions button:first-of-type,
2182
+ .plan-mode-inline-actions button:nth-of-type(2) {
2183
+ border-color: var(--accent-green);
2184
+ color: var(--accent-green);
2185
+ }
2186
+
2187
+ .plan-mode-inline-actions button:first-of-type:hover:not(:disabled),
2188
+ .plan-mode-inline-actions button:nth-of-type(2):hover:not(:disabled) {
2189
+ background: rgba(129, 199, 132, 0.1);
2190
+ }
2191
+
2192
+ .plan-mode-inline-actions button:last-of-type {
2193
+ border-color: var(--accent-red);
2194
+ color: var(--accent-red);
2195
+ }
2196
+
2197
+ .plan-mode-inline-actions button:last-of-type:hover:not(:disabled) {
2198
+ background: rgba(239, 83, 80, 0.1);
2199
+ }