source dump of claude code
at main 211 lines 21 kB view raw
1import { c as _c } from "react/compiler-runtime"; 2import React, { useCallback, useState } from 'react'; 3import TextInput from '../../components/TextInput.js'; 4import { useTerminalSize } from '../../hooks/useTerminalSize.js'; 5import { Box, Text } from '../../ink.js'; 6import { useKeybindings } from '../../keybindings/useKeybinding.js'; 7interface ChooseRepoStepProps { 8 currentRepo: string | null; 9 useCurrentRepo: boolean; 10 repoUrl: string; 11 onRepoUrlChange: (value: string) => void; 12 onToggleUseCurrentRepo: (useCurrentRepo: boolean) => void; 13 onSubmit: () => void; 14} 15export function ChooseRepoStep(t0) { 16 const $ = _c(49); 17 const { 18 currentRepo, 19 useCurrentRepo, 20 repoUrl, 21 onRepoUrlChange, 22 onSubmit, 23 onToggleUseCurrentRepo 24 } = t0; 25 const [cursorOffset, setCursorOffset] = useState(0); 26 const [showEmptyError, setShowEmptyError] = useState(false); 27 const terminalSize = useTerminalSize(); 28 const textInputColumns = terminalSize.columns; 29 let t1; 30 if ($[0] !== currentRepo || $[1] !== onSubmit || $[2] !== repoUrl || $[3] !== useCurrentRepo) { 31 t1 = () => { 32 const repoName = useCurrentRepo ? currentRepo : repoUrl; 33 if (!repoName?.trim()) { 34 setShowEmptyError(true); 35 return; 36 } 37 onSubmit(); 38 }; 39 $[0] = currentRepo; 40 $[1] = onSubmit; 41 $[2] = repoUrl; 42 $[3] = useCurrentRepo; 43 $[4] = t1; 44 } else { 45 t1 = $[4]; 46 } 47 const handleSubmit = t1; 48 const isTextInputVisible = !useCurrentRepo || !currentRepo; 49 let t2; 50 if ($[5] !== onToggleUseCurrentRepo) { 51 t2 = () => { 52 onToggleUseCurrentRepo(true); 53 setShowEmptyError(false); 54 }; 55 $[5] = onToggleUseCurrentRepo; 56 $[6] = t2; 57 } else { 58 t2 = $[6]; 59 } 60 const handlePrevious = t2; 61 let t3; 62 if ($[7] !== onToggleUseCurrentRepo) { 63 t3 = () => { 64 onToggleUseCurrentRepo(false); 65 setShowEmptyError(false); 66 }; 67 $[7] = onToggleUseCurrentRepo; 68 $[8] = t3; 69 } else { 70 t3 = $[8]; 71 } 72 const handleNext = t3; 73 let t4; 74 if ($[9] !== handleNext || $[10] !== handlePrevious || $[11] !== handleSubmit) { 75 t4 = { 76 "confirm:previous": handlePrevious, 77 "confirm:next": handleNext, 78 "confirm:yes": handleSubmit 79 }; 80 $[9] = handleNext; 81 $[10] = handlePrevious; 82 $[11] = handleSubmit; 83 $[12] = t4; 84 } else { 85 t4 = $[12]; 86 } 87 const t5 = !isTextInputVisible; 88 let t6; 89 if ($[13] !== t5) { 90 t6 = { 91 context: "Confirmation", 92 isActive: t5 93 }; 94 $[13] = t5; 95 $[14] = t6; 96 } else { 97 t6 = $[14]; 98 } 99 useKeybindings(t4, t6); 100 let t7; 101 if ($[15] !== handleNext || $[16] !== handlePrevious) { 102 t7 = { 103 "confirm:previous": handlePrevious, 104 "confirm:next": handleNext 105 }; 106 $[15] = handleNext; 107 $[16] = handlePrevious; 108 $[17] = t7; 109 } else { 110 t7 = $[17]; 111 } 112 let t8; 113 if ($[18] !== isTextInputVisible) { 114 t8 = { 115 context: "Confirmation", 116 isActive: isTextInputVisible 117 }; 118 $[18] = isTextInputVisible; 119 $[19] = t8; 120 } else { 121 t8 = $[19]; 122 } 123 useKeybindings(t7, t8); 124 let t9; 125 if ($[20] === Symbol.for("react.memo_cache_sentinel")) { 126 t9 = <Box flexDirection="column" marginBottom={1}><Text bold={true}>Install GitHub App</Text><Text dimColor={true}>Select GitHub repository</Text></Box>; 127 $[20] = t9; 128 } else { 129 t9 = $[20]; 130 } 131 let t10; 132 if ($[21] !== currentRepo || $[22] !== useCurrentRepo) { 133 t10 = currentRepo && <Box marginBottom={1}><Text bold={useCurrentRepo} color={useCurrentRepo ? "permission" : undefined}>{useCurrentRepo ? "> " : " "}Use current repository: {currentRepo}</Text></Box>; 134 $[21] = currentRepo; 135 $[22] = useCurrentRepo; 136 $[23] = t10; 137 } else { 138 t10 = $[23]; 139 } 140 const t11 = !useCurrentRepo || !currentRepo; 141 const t12 = !useCurrentRepo || !currentRepo ? "permission" : undefined; 142 const t13 = !useCurrentRepo || !currentRepo ? "> " : " "; 143 const t14 = currentRepo ? "Enter a different repository" : "Enter repository"; 144 let t15; 145 if ($[24] !== t11 || $[25] !== t12 || $[26] !== t13 || $[27] !== t14) { 146 t15 = <Box marginBottom={1}><Text bold={t11} color={t12}>{t13}{t14}</Text></Box>; 147 $[24] = t11; 148 $[25] = t12; 149 $[26] = t13; 150 $[27] = t14; 151 $[28] = t15; 152 } else { 153 t15 = $[28]; 154 } 155 let t16; 156 if ($[29] !== currentRepo || $[30] !== cursorOffset || $[31] !== handleSubmit || $[32] !== onRepoUrlChange || $[33] !== repoUrl || $[34] !== textInputColumns || $[35] !== useCurrentRepo) { 157 t16 = (!useCurrentRepo || !currentRepo) && <Box marginLeft={2} marginBottom={1}><TextInput value={repoUrl} onChange={value => { 158 onRepoUrlChange(value); 159 setShowEmptyError(false); 160 }} onSubmit={handleSubmit} focus={true} placeholder={"Enter a repo as owner/repo or https://github.com/owner/repo\u2026"} columns={textInputColumns} cursorOffset={cursorOffset} onChangeCursorOffset={setCursorOffset} showCursor={true} /></Box>; 161 $[29] = currentRepo; 162 $[30] = cursorOffset; 163 $[31] = handleSubmit; 164 $[32] = onRepoUrlChange; 165 $[33] = repoUrl; 166 $[34] = textInputColumns; 167 $[35] = useCurrentRepo; 168 $[36] = t16; 169 } else { 170 t16 = $[36]; 171 } 172 let t17; 173 if ($[37] !== t10 || $[38] !== t15 || $[39] !== t16) { 174 t17 = <Box flexDirection="column" borderStyle="round" paddingX={1}>{t9}{t10}{t15}{t16}</Box>; 175 $[37] = t10; 176 $[38] = t15; 177 $[39] = t16; 178 $[40] = t17; 179 } else { 180 t17 = $[40]; 181 } 182 let t18; 183 if ($[41] !== showEmptyError) { 184 t18 = showEmptyError && <Box marginLeft={3} marginBottom={1}><Text color="error">Please enter a repository name to continue</Text></Box>; 185 $[41] = showEmptyError; 186 $[42] = t18; 187 } else { 188 t18 = $[42]; 189 } 190 const t19 = currentRepo ? "\u2191/\u2193 to select \xB7 " : ""; 191 let t20; 192 if ($[43] !== t19) { 193 t20 = <Box marginLeft={3}><Text dimColor={true}>{t19}Enter to continue</Text></Box>; 194 $[43] = t19; 195 $[44] = t20; 196 } else { 197 t20 = $[44]; 198 } 199 let t21; 200 if ($[45] !== t17 || $[46] !== t18 || $[47] !== t20) { 201 t21 = <>{t17}{t18}{t20}</>; 202 $[45] = t17; 203 $[46] = t18; 204 $[47] = t20; 205 $[48] = t21; 206 } else { 207 t21 = $[48]; 208 } 209 return t21; 210} 211//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZUNhbGxiYWNrIiwidXNlU3RhdGUiLCJUZXh0SW5wdXQiLCJ1c2VUZXJtaW5hbFNpemUiLCJCb3giLCJUZXh0IiwidXNlS2V5YmluZGluZ3MiLCJDaG9vc2VSZXBvU3RlcFByb3BzIiwiY3VycmVudFJlcG8iLCJ1c2VDdXJyZW50UmVwbyIsInJlcG9VcmwiLCJvblJlcG9VcmxDaGFuZ2UiLCJ2YWx1ZSIsIm9uVG9nZ2xlVXNlQ3VycmVudFJlcG8iLCJvblN1Ym1pdCIsIkNob29zZVJlcG9TdGVwIiwidDAiLCIkIiwiX2MiLCJjdXJzb3JPZmZzZXQiLCJzZXRDdXJzb3JPZmZzZXQiLCJzaG93RW1wdHlFcnJvciIsInNldFNob3dFbXB0eUVycm9yIiwidGVybWluYWxTaXplIiwidGV4dElucHV0Q29sdW1ucyIsImNvbHVtbnMiLCJ0MSIsInJlcG9OYW1lIiwidHJpbSIsImhhbmRsZVN1Ym1pdCIsImlzVGV4dElucHV0VmlzaWJsZSIsInQyIiwiaGFuZGxlUHJldmlvdXMiLCJ0MyIsImhhbmRsZU5leHQiLCJ0NCIsInQ1IiwidDYiLCJjb250ZXh0IiwiaXNBY3RpdmUiLCJ0NyIsInQ4IiwidDkiLCJTeW1ib2wiLCJmb3IiLCJ0MTAiLCJ1bmRlZmluZWQiLCJ0MTEiLCJ0MTIiLCJ0MTMiLCJ0MTQiLCJ0MTUiLCJ0MTYiLCJ0MTciLCJ0MTgiLCJ0MTkiLCJ0MjAiLCJ0MjEiXSwic291cmNlcyI6WyJDaG9vc2VSZXBvU3RlcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IFRleHRJbnB1dCBmcm9tICcuLi8uLi9jb21wb25lbnRzL1RleHRJbnB1dC5qcydcbmltcG9ydCB7IHVzZVRlcm1pbmFsU2l6ZSB9IGZyb20gJy4uLy4uL2hvb2tzL3VzZVRlcm1pbmFsU2l6ZS5qcydcbmltcG9ydCB7IEJveCwgVGV4dCB9IGZyb20gJy4uLy4uL2luay5qcydcbmltcG9ydCB7IHVzZUtleWJpbmRpbmdzIH0gZnJvbSAnLi4vLi4va2V5YmluZGluZ3MvdXNlS2V5YmluZGluZy5qcydcblxuaW50ZXJmYWNlIENob29zZVJlcG9TdGVwUHJvcHMge1xuICBjdXJyZW50UmVwbzogc3RyaW5nIHwgbnVsbFxuICB1c2VDdXJyZW50UmVwbzogYm9vbGVhblxuICByZXBvVXJsOiBzdHJpbmdcbiAgb25SZXBvVXJsQ2hhbmdlOiAodmFsdWU6IHN0cmluZykgPT4gdm9pZFxuICBvblRvZ2dsZVVzZUN1cnJlbnRSZXBvOiAodXNlQ3VycmVudFJlcG86IGJvb2xlYW4pID0+IHZvaWRcbiAgb25TdWJtaXQ6ICgpID0+IHZvaWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENob29zZVJlcG9TdGVwKHtcbiAgY3VycmVudFJlcG8sXG4gIHVzZUN1cnJlbnRSZXBvLFxuICByZXBvVXJsLFxuICBvblJlcG9VcmxDaGFuZ2UsXG4gIG9uU3VibWl0LFxuICBvblRvZ2dsZVVzZUN1cnJlbnRSZXBvLFxufTogQ2hvb3NlUmVwb1N0ZXBQcm9wcykge1xuICBjb25zdCBbY3Vyc29yT2Zmc2V0LCBzZXRDdXJzb3JPZmZzZXRdID0gdXNlU3RhdGUoMClcbiAgY29uc3QgW3Nob3dFbXB0eUVycm9yLCBzZXRTaG93RW1wdHlFcnJvcl0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgdGVybWluYWxTaXplID0gdXNlVGVybWluYWxTaXplKClcbiAgY29uc3QgdGV4dElucHV0Q29sdW1ucyA9IHRlcm1pbmFsU2l6ZS5jb2x1bW5zXG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGNvbnN0IHJlcG9OYW1lID0gdXNlQ3VycmVudFJlcG8gPyBjdXJyZW50UmVwbyA6IHJlcG9VcmxcbiAgICBpZiAoIXJlcG9OYW1lPy50cmltKCkpIHtcbiAgICAgIHNldFNob3dFbXB0eUVycm9yKHRydWUpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgb25TdWJtaXQoKVxuICB9LCBbdXNlQ3VycmVudFJlcG8sIGN1cnJlbnRSZXBvLCByZXBvVXJsLCBvblN1Ym1pdF0pXG5cbiAgLy8gV2hlbiB0aGUgdGV4dCBpbnB1dCBpcyB2aXNpYmxlLCBvbWl0IGNvbmZpcm06eWVzIHNvIGJhcmUgJ3knIHBhc3Nlc1xuICAvLyB0aHJvdWdoIHRvIHRoZSBpbnB1dCBpbnN0ZWFkIG9mIHN1Ym1pdHRpbmcuIFRleHRJbnB1dCdzIG9uU3VibWl0IGhhbmRsZXNcbiAgLy8gRW50ZXIuIEtlZXAgdGhlIENvbmZpcm1hdGlvbiBjb250ZXh0IChub3QgU2V0dGluZ3MpIHRvIGF2b2lkIGovayBiaW5kaW5ncy5cbiAgY29uc3QgaXNUZXh0SW5wdXRWaXNpYmxlID0gIXVzZUN1cnJlbnRSZXBvIHx8ICFjdXJyZW50UmVwb1xuICBjb25zdCBoYW5kbGVQcmV2aW91cyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBvblRvZ2dsZVVzZUN1cnJlbnRSZXBvKHRydWUpXG4gICAgc2V0U2hvd0VtcHR5RXJyb3IoZmFsc2UpXG4gIH0sIFtvblRvZ2dsZVVzZUN1cnJlbnRSZXBvXSlcbiAgY29uc3QgaGFuZGxlTmV4dCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBvblRvZ2dsZVVzZUN1cnJlbnRSZXBvKGZhbHNlKVxuICAgIHNldFNob3dFbXB0eUVycm9yKGZhbHNlKVxuICB9LCBbb25Ub2dnbGVVc2VDdXJyZW50UmVwb10pXG5cbiAgdXNlS2V5YmluZGluZ3MoXG4gICAge1xuICAgICAgJ2NvbmZpcm06cHJldmlvdXMnOiBoYW5kbGVQcmV2aW91cyxcbiAgICAgICdjb25maXJtOm5leHQnOiBoYW5kbGVOZXh0LFxuICAgICAgJ2NvbmZpcm06eWVzJzogaGFuZGxlU3VibWl0LFxuICAgIH0sXG4gICAgeyBjb250ZXh0OiAnQ29uZmlybWF0aW9uJywgaXNBY3RpdmU6ICFpc1RleHRJbnB1dFZpc2libGUgfSxcbiAgKVxuICB1c2VLZXliaW5kaW5ncyhcbiAgICB7XG4gICAgICAnY29uZmlybTpwcmV2aW91cyc6IGhhbmRsZVByZXZpb3VzLFxuICAgICAgJ2NvbmZpcm06bmV4dCc6IGhhbmRsZU5leHQsXG4gICAgfSxcbiAgICB7IGNvbnRleHQ6ICdDb25maXJtYXRpb24nLCBpc0FjdGl2ZTogaXNUZXh0SW5wdXRWaXNpYmxlIH0sXG4gIClcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8Qm94IGZsZXhEaXJlY3Rpb249XCJjb2x1bW5cIiBib3JkZXJTdHlsZT1cInJvdW5kXCIgcGFkZGluZ1g9ezF9PlxuICAgICAgICA8Qm94IGZsZXhEaXJlY3Rpb249XCJjb2x1bW5cIiBtYXJnaW5Cb3R0b209ezF9PlxuICAgICAgICAgIDxUZXh0IGJvbGQ+SW5zdGFsbCBHaXRIdWIgQXBwPC9UZXh0PlxuICAgICAgICAgIDxUZXh0IGRpbUNvbG9yPlNlbGVjdCBHaXRIdWIgcmVwb3NpdG9yeTwvVGV4dD5cbiAgICAgICAgPC9Cb3g+XG4gICAgICAgIHtjdXJyZW50UmVwbyAmJiAoXG4gICAgICAgICAgPEJveCBtYXJnaW5Cb3R0b209ezF9PlxuICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgYm9sZD17dXNlQ3VycmVudFJlcG99XG4gICAgICAgICAgICAgIGNvbG9yPXt1c2VDdXJyZW50UmVwbyA/ICdwZXJtaXNzaW9uJyA6IHVuZGVmaW5lZH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3VzZUN1cnJlbnRSZXBvID8gJz4gJyA6ICcgICd9XG4gICAgICAgICAgICAgIFVzZSBjdXJyZW50IHJlcG9zaXRvcnk6IHtjdXJyZW50UmVwb31cbiAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICA8L0JveD5cbiAgICAgICAgKX1cbiAgICAgICAgPEJveCBtYXJnaW5Cb3R0b209ezF9PlxuICAgICAgICAgIDxUZXh0XG4gICAgICAgICAgICBib2xkPXshdXNlQ3VycmVudFJlcG8gfHwgIWN1cnJlbnRSZXBvfVxuICAgICAgICAgICAgY29sb3I9eyF1c2VDdXJyZW50UmVwbyB8fCAhY3VycmVudFJlcG8gPyAncGVybWlzc2lvbicgOiB1bmRlZmluZWR9XG4gICAgICAgICAgPlxuICAgICAgICAgICAgeyF1c2VDdXJyZW50UmVwbyB8fCAhY3VycmVudFJlcG8gPyAnPiAnIDogJyAgJ31cbiAgICAgICAgICAgIHtjdXJyZW50UmVwbyA/ICdFbnRlciBhIGRpZmZlcmVudCByZXBvc2l0b3J5JyA6ICdFbnRlciByZXBvc2l0b3J5J31cbiAgICAgICAgICA8L1RleHQ+XG4gICAgICAgIDwvQm94PlxuICAgICAgICB7KCF1c2VDdXJyZW50UmVwbyB8fCAhY3VycmVudFJlcG8pICYmIChcbiAgICAgICAgICA8Qm94IG1hcmdpbkxlZnQ9ezJ9IG1hcmdpbkJvdHRvbT17MX0+XG4gICAgICAgICAgICA8VGV4dElucHV0XG4gICAgICAgICAgICAgIHZhbHVlPXtyZXBvVXJsfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17dmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgIG9uUmVwb1VybENoYW5nZSh2YWx1ZSlcbiAgICAgICAgICAgICAgICBzZXRTaG93RW1wdHlFcnJvcihmYWxzZSlcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgb25TdWJtaXQ9e2hhbmRsZVN1Ym1pdH1cbiAgICAgICAgICAgICAgZm9jdXM9e3RydWV9XG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiRW50ZXIgYSByZXBvIGFzIG93bmVyL3JlcG8gb3IgaHR0cHM6Ly9naXRodWIuY29tL293bmVyL3JlcG/igKZcIlxuICAgICAgICAgICAgICBjb2x1bW5zPXt0ZXh0SW5wdXRDb2x1bW5zfVxuICAgICAgICAgICAgICBjdXJzb3JPZmZzZXQ9e2N1cnNvck9mZnNldH1cbiAgICAgICAgICAgICAgb25DaGFuZ2VDdXJzb3JPZmZzZXQ9e3NldEN1cnNvck9mZnNldH1cbiAgICAgICAgICAgICAgc2hvd0N1cnNvcj17dHJ1ZX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9Cb3g+XG4gICAgICAgICl9XG4gICAgICA8L0JveD5cbiAgICAgIHtzaG93RW1wdHlFcnJvciAmJiAoXG4gICAgICAgIDxCb3ggbWFyZ2luTGVmdD17M30gbWFyZ2luQm90dG9tPXsxfT5cbiAgICAgICAgICA8VGV4dCBjb2xvcj1cImVycm9yXCI+UGxlYXNlIGVudGVyIGEgcmVwb3NpdG9yeSBuYW1lIHRvIGNvbnRpbnVlPC9UZXh0PlxuICAgICAgICA8L0JveD5cbiAgICAgICl9XG4gICAgICA8Qm94IG1hcmdpbkxlZnQ9ezN9PlxuICAgICAgICA8VGV4dCBkaW1Db2xvcj5cbiAgICAgICAgICB7Y3VycmVudFJlcG8gPyAn4oaRL+KGkyB0byBzZWxlY3QgwrcgJyA6ICcnfUVudGVyIHRvIGNvbnRpbnVlXG4gICAgICAgIDwvVGV4dD5cbiAgICAgIDwvQm94PlxuICAgIDwvPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPQSxLQUFLLElBQUlDLFdBQVcsRUFBRUMsUUFBUSxRQUFRLE9BQU87QUFDcEQsT0FBT0MsU0FBUyxNQUFNLCtCQUErQjtBQUNyRCxTQUFTQyxlQUFlLFFBQVEsZ0NBQWdDO0FBQ2hFLFNBQVNDLEdBQUcsRUFBRUMsSUFBSSxRQUFRLGNBQWM7QUFDeEMsU0FBU0MsY0FBYyxRQUFRLG9DQUFvQztBQUVuRSxVQUFVQyxtQkFBbUIsQ0FBQztFQUM1QkMsV0FBVyxFQUFFLE1BQU0sR0FBRyxJQUFJO0VBQzFCQyxjQUFjLEVBQUUsT0FBTztFQUN2QkMsT0FBTyxFQUFFLE1BQU07RUFDZkMsZUFBZSxFQUFFLENBQUNDLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJO0VBQ3hDQyxzQkFBc0IsRUFBRSxDQUFDSixjQUFjLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSTtFQUN6REssUUFBUSxFQUFFLEdBQUcsR0FBRyxJQUFJO0FBQ3RCO0FBRUEsT0FBTyxTQUFBQyxlQUFBQyxFQUFBO0VBQUEsTUFBQUMsQ0FBQSxHQUFBQyxFQUFBO0VBQXdCO0lBQUFWLFdBQUE7SUFBQUMsY0FBQTtJQUFBQyxPQUFBO0lBQUFD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