source dump of claude code
at main 163 lines 14 kB view raw
1import { c as _c } from "react/compiler-runtime"; 2import * as React from 'react'; 3import { Box, Text } from 'src/ink.js'; 4import { type NetworkHostPattern, shouldAllowManagedSandboxDomainsOnly } from 'src/utils/sandbox/sandbox-adapter.js'; 5import { type AnalyticsMetadata_I_VERIFIED_THIS_IS_NOT_CODE_OR_FILEPATHS, logEvent } from '../../services/analytics/index.js'; 6import { Select } from '../CustomSelect/select.js'; 7import { PermissionDialog } from './PermissionDialog.js'; 8export type SandboxPermissionRequestProps = { 9 hostPattern: NetworkHostPattern; 10 onUserResponse: (response: { 11 allow: boolean; 12 persistToSettings: boolean; 13 }) => void; 14}; 15export function SandboxPermissionRequest(t0) { 16 const $ = _c(22); 17 const { 18 hostPattern: t1, 19 onUserResponse 20 } = t0; 21 const { 22 host 23 } = t1; 24 let t2; 25 if ($[0] !== onUserResponse) { 26 t2 = function onSelect(value) { 27 bb4: switch (value) { 28 case "yes": 29 { 30 onUserResponse({ 31 allow: true, 32 persistToSettings: false 33 }); 34 break bb4; 35 } 36 case "yes-dont-ask-again": 37 { 38 onUserResponse({ 39 allow: true, 40 persistToSettings: true 41 }); 42 break bb4; 43 } 44 case "no": 45 { 46 onUserResponse({ 47 allow: false, 48 persistToSettings: false 49 }); 50 } 51 } 52 }; 53 $[0] = onUserResponse; 54 $[1] = t2; 55 } else { 56 t2 = $[1]; 57 } 58 const onSelect = t2; 59 let t3; 60 if ($[2] === Symbol.for("react.memo_cache_sentinel")) { 61 t3 = shouldAllowManagedSandboxDomainsOnly(); 62 $[2] = t3; 63 } else { 64 t3 = $[2]; 65 } 66 const managedDomainsOnly = t3; 67 let t4; 68 if ($[3] === Symbol.for("react.memo_cache_sentinel")) { 69 t4 = { 70 label: "Yes", 71 value: "yes" 72 }; 73 $[3] = t4; 74 } else { 75 t4 = $[3]; 76 } 77 let t5; 78 if ($[4] !== host) { 79 t5 = !managedDomainsOnly ? [{ 80 label: <Text>Yes, and don't ask again for <Text bold={true}>{host}</Text></Text>, 81 value: "yes-dont-ask-again" 82 }] : []; 83 $[4] = host; 84 $[5] = t5; 85 } else { 86 t5 = $[5]; 87 } 88 let t6; 89 if ($[6] === Symbol.for("react.memo_cache_sentinel")) { 90 t6 = { 91 label: <Text>No, and tell Claude what to do differently <Text bold={true}>(esc)</Text></Text>, 92 value: "no" 93 }; 94 $[6] = t6; 95 } else { 96 t6 = $[6]; 97 } 98 let t7; 99 if ($[7] !== t5) { 100 t7 = [t4, ...t5, t6]; 101 $[7] = t5; 102 $[8] = t7; 103 } else { 104 t7 = $[8]; 105 } 106 const options = t7; 107 let t8; 108 if ($[9] === Symbol.for("react.memo_cache_sentinel")) { 109 t8 = <Text dimColor={true}>Host:</Text>; 110 $[9] = t8; 111 } else { 112 t8 = $[9]; 113 } 114 let t9; 115 if ($[10] !== host) { 116 t9 = <Box>{t8}<Text> {host}</Text></Box>; 117 $[10] = host; 118 $[11] = t9; 119 } else { 120 t9 = $[11]; 121 } 122 let t10; 123 if ($[12] === Symbol.for("react.memo_cache_sentinel")) { 124 t10 = <Box marginTop={1}><Text>Do you want to allow this connection?</Text></Box>; 125 $[12] = t10; 126 } else { 127 t10 = $[12]; 128 } 129 let t11; 130 if ($[13] !== onUserResponse) { 131 t11 = () => { 132 onUserResponse({ 133 allow: false, 134 persistToSettings: false 135 }); 136 }; 137 $[13] = onUserResponse; 138 $[14] = t11; 139 } else { 140 t11 = $[14]; 141 } 142 let t12; 143 if ($[15] !== onSelect || $[16] !== options || $[17] !== t11) { 144 t12 = <Box><Select options={options} onChange={onSelect} onCancel={t11} /></Box>; 145 $[15] = onSelect; 146 $[16] = options; 147 $[17] = t11; 148 $[18] = t12; 149 } else { 150 t12 = $[18]; 151 } 152 let t13; 153 if ($[19] !== t12 || $[20] !== t9) { 154 t13 = <PermissionDialog title="Network request outside of sandbox"><Box flexDirection="column" paddingX={2} paddingY={1}>{t9}{t10}{t12}</Box></PermissionDialog>; 155 $[19] = t12; 156 $[20] = t9; 157 $[21] = t13; 158 } else { 159 t13 = $[21]; 160 } 161 return t13; 162} 163//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkJveCIsIlRleHQiLCJOZXR3b3JrSG9zdFBhdHRlcm4iLCJzaG91bGRBbGxvd01hbmFnZWRTYW5kYm94RG9tYWluc09ubHkiLCJBbmFseXRpY3NNZXRhZGF0YV9JX1ZFUklGSUVEX1RISVNfSVNfTk9UX0NPREVfT1JfRklMRVBBVEhTIiwibG9nRXZlbnQiLCJTZWxlY3QiLCJQZXJtaXNzaW9uRGlhbG9nIiwiU2FuZGJveFBlcm1pc3Npb25SZXF1ZXN0UHJvcHMiLCJob3N0UGF0dGVybiIsIm9uVXNlclJlc3BvbnNlIiwicmVzcG9uc2UiLCJhbGxvdyIsInBlcnNpc3RUb1NldHRpbmdzIiwiU2FuZGJveFBlcm1pc3Npb25SZXF1ZXN0IiwidDAiLCIkIiwiX2MiLCJ0MSIsImhvc3QiLCJ0MiIsIm9uU2VsZWN0IiwidmFsdWUiLCJiYjQiLCJ0MyIsIlN5bWJvbCIsImZvciIsIm1hbmFnZWREb21haW5zT25seSIsInQ0IiwibGFiZWwiLCJ0NSIsInQ2IiwidDciLCJvcHRpb25zIiwidDgiLCJ0OSIsInQxMCIsInQxMSIsInQxMiIsInQxMyJdLCJzb3VyY2VzIjpbIlNhbmRib3hQZXJtaXNzaW9uUmVxdWVzdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCb3gsIFRleHQgfSBmcm9tICdzcmMvaW5rLmpzJ1xuaW1wb3J0IHtcbiAgdHlwZSBOZXR3b3JrSG9zdFBhdHRlcm4sXG4gIHNob3VsZEFsbG93TWFuYWdlZFNhbmRib3hEb21haW5zT25seSxcbn0gZnJvbSAnc3JjL3V0aWxzL3NhbmRib3gvc2FuZGJveC1hZGFwdGVyLmpzJ1xuaW1wb3J0IHtcbiAgdHlwZSBBbmFseXRpY3NNZXRhZGF0YV9JX1ZFUklGSUVEX1RISVNfSVNfTk9UX0NPREVfT1JfRklMRVBBVEhTLFxuICBsb2dFdmVudCxcbn0gZnJvbSAnLi4vLi4vc2VydmljZXMvYW5hbHl0aWNzL2luZGV4LmpzJ1xuaW1wb3J0IHsgU2VsZWN0IH0gZnJvbSAnLi4vQ3VzdG9tU2VsZWN0L3NlbGVjdC5qcydcbmltcG9ydCB7IFBlcm1pc3Npb25EaWFsb2cgfSBmcm9tICcuL1Blcm1pc3Npb25EaWFsb2cuanMnXG5cbmV4cG9ydCB0eXBlIFNhbmRib3hQZXJtaXNzaW9uUmVxdWVzdFByb3BzID0ge1xuICBob3N0UGF0dGVybjogTmV0d29ya0hvc3RQYXR0ZXJuXG4gIG9uVXNlclJlc3BvbnNlOiAocmVzcG9uc2U6IHtcbiAgICBhbGxvdzogYm9vbGVhblxuICAgIHBlcnNpc3RUb1NldHRpbmdzOiBib29sZWFuXG4gIH0pID0+IHZvaWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFNhbmRib3hQZXJtaXNzaW9uUmVxdWVzdCh7XG4gIGhvc3RQYXR0ZXJuOiB7IGhvc3QgfSxcbiAgb25Vc2VyUmVzcG9uc2UsXG59OiBTYW5kYm94UGVybWlzc2lvblJlcXVlc3RQcm9wcyk6IFJlYWN0LlJlYWN0Tm9kZSB7XG4gIGZ1bmN0aW9uIG9uU2VsZWN0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAvLyBXZSBtYXkgd2FudCB0byBiZXR0ZXIgdW5pZnkgdGhpcyBkaWFsb2cgd2l0aCBvdGhlciBwZXJtaXNzaW9uIGRpYWxvZ3NcbiAgICAvLyBhbmQgdXNlIHRoZWlyIGxvZ2dpbmcsIGJ1dCB0aGlzIGlzIHNsaWdodGx5IGRpZmZlcmVudCBhbmQgd2UgZG9uJ3QgaGF2ZVxuICAgIC8vIHRoZSB0b29sIGNvbnRleHQgaGVyZS4gRm9yIG5vdywganVzdCB1c2UgYmFzaWMgbG9nZ2luZyBmb3IgYmFzaWMgZGF0YS5cbiAgICBpZiAoXCJleHRlcm5hbFwiID09PSAnYW50Jykge1xuICAgICAgbG9nRXZlbnQoJ3Rlbmd1X3NhbmRib3hfbmV0d29ya19kaWFsb2dfcmVzdWx0Jywge1xuICAgICAgICBob3N0OiBob3N0IGFzIEFuYWx5dGljc01ldGFkYXRhX0lfVkVSSUZJRURfVEhJU19JU19OT1RfQ09ERV9PUl9GSUxFUEFUSFMsXG4gICAgICAgIHJlc3VsdDpcbiAgICAgICAgICB2YWx1ZSBhcyBBbmFseXRpY3NNZXRhZGF0YV9JX1ZFUklGSUVEX1RISVNfSVNfTk9UX0NPREVfT1JfRklMRVBBVEhTLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHZhbHVlKSB7XG4gICAgICBjYXNlICd5ZXMnOlxuICAgICAgICBvblVzZXJSZXNwb25zZSh7IGFsbG93OiB0cnVlLCBwZXJzaXN0VG9TZXR0aW5nczogZmFsc2UgfSlcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ3llcy1kb250LWFzay1hZ2Fpbic6XG4gICAgICAgIG9uVXNlclJlc3BvbnNlKHsgYWxsb3c6IHRydWUsIHBlcnNpc3RUb1NldHRpbmdzOiB0cnVlIH0pXG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlICdubyc6XG4gICAgICAgIG9uVXNlclJlc3BvbnNlKHsgYWxsb3c6IGZhbHNlLCBwZXJzaXN0VG9TZXR0aW5nczogZmFsc2UgfSlcbiAgICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICBjb25zdCBtYW5hZ2VkRG9tYWluc09ubHkgPSBzaG91bGRBbGxvd01hbmFnZWRTYW5kYm94RG9tYWluc09ubHkoKVxuXG4gIGNvbnN0IG9wdGlvbnMgPSBbXG4gICAgeyBsYWJlbDogJ1llcycsIHZhbHVlOiAneWVzJyB9LFxuICAgIC4uLighbWFuYWdlZERvbWFpbnNPbmx5XG4gICAgICA/IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBsYWJlbDogKFxuICAgICAgICAgICAgICA8VGV4dD5cbiAgICAgICAgICAgICAgICBZZXMsIGFuZCBkb24mYXBvczt0IGFzayBhZ2FpbiBmb3IgPFRleHQgYm9sZD57aG9zdH08L1RleHQ+XG4gICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB2YWx1ZTogJ3llcy1kb250LWFzay1hZ2FpbicsXG4gICAgICAgICAgfSxcbiAgICAgICAgXVxuICAgICAgOiBbXSksXG4gICAge1xuICAgICAgbGFiZWw6IChcbiAgICAgICAgPFRleHQ+XG4gICAgICAgICAgTm8sIGFuZCB0ZWxsIENsYXVkZSB3aGF0IHRvIGRvIGRpZmZlcmVudGx5IDxUZXh0IGJvbGQ+KGVzYyk8L1RleHQ+XG4gICAgICAgIDwvVGV4dD5cbiAgICAgICksXG4gICAgICB2YWx1ZTogJ25vJyxcbiAgICB9LFxuICBdXG5cbiAgcmV0dXJuIChcbiAgICA8UGVybWlzc2lvbkRpYWxvZyB0aXRsZT1cIk5ldHdvcmsgcmVxdWVzdCBvdXRzaWRlIG9mIHNhbmRib3hcIj5cbiAgICAgIDxCb3ggZmxleERpcmVjdGlvbj1cImNvbHVtblwiIHBhZGRpbmdYPXsyfSBwYWRkaW5nWT17MX0+XG4gICAgICAgIDxCb3g+XG4gICAgICAgICAgPFRleHQgZGltQ29sb3I+SG9zdDo8L1RleHQ+XG4gICAgICAgICAgPFRleHQ+IHtob3N0fTwvVGV4dD5cbiAgICAgICAgPC9Cb3g+XG4gICAgICAgIDxCb3ggbWFyZ2luVG9wPXsxfT5cbiAgICAgICAgICA8VGV4dD5EbyB5b3Ugd2FudCB0byBhbGxvdyB0aGlzIGNvbm5lY3Rpb24/PC9UZXh0PlxuICAgICAgICA8L0JveD5cbiAgICAgICAgPEJveD5cbiAgICAgICAgICA8U2VsZWN0XG4gICAgICAgICAgICBvcHRpb25zPXtvcHRpb25zfVxuICAgICAgICAgICAgb25DaGFuZ2U9e29uU2VsZWN0fVxuICAgICAgICAgICAgb25DYW5jZWw9eygpID0+IHtcbiAgICAgICAgICAgICAgaWYgKFwiZXh0ZXJuYWxcIiA9PT0gJ2FudCcpIHtcbiAgICAgICAgICAgICAgICBsb2dFdmVudCgndGVuZ3Vfc2FuZGJveF9uZXR3b3JrX2RpYWxvZ19yZXN1bHQnLCB7XG4gICAgICAgICAgICAgICAgICBob3N0OiBob3N0IGFzIEFuYWx5dGljc01ldGFkYXRhX0lfVkVSSUZJRURfVEhJU19JU19OT1RfQ09ERV9PUl9GSUxFUEFUSFMsXG4gICAgICAgICAgICAgICAgICByZXN1bHQ6XG4gICAgICAgICAgICAgICAgICAgICdjYW5jZWwnIGFzIEFuYWx5dGljc01ldGFkYXRhX0lfVkVSSUZJRURfVEhJU19JU19OT1RfQ09ERV9PUl9GSUxFUEFUSFMsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBvblVzZXJSZXNwb25zZSh7IGFsbG93OiBmYWxzZSwgcGVyc2lzdFRvU2V0dGluZ3M6IGZhbHNlIH0pXG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvQm94PlxuICAgICAgPC9Cb3g+XG4gICAgPC9QZXJtaXNzaW9uRGlhbG9nPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLFNBQVNDLEdBQUcsRUFBRUMsSUFBSSxRQUFRLFlBQVk7QUFDdEMsU0FDRSxLQUFLQyxrQkFBa0IsRUFDdkJDLG9DQUFvQyxRQUMvQixzQ0FBc0M7QUFDN0MsU0FDRSxLQUFLQywwREFBMEQsRUFDL0RDLFFBQVEsUUFDSCxtQ0FBbUM7QUFDMUMsU0FBU0MsTUFBTSxRQUFRLDJCQUEyQjtBQUNsRCxTQUFTQyxnQkFBZ0IsUUFBUSx1QkFBdUI7QUFFeEQsT0FBTyxLQUFLQyw2QkFBNkIsR0FBRztFQUMxQ0MsV0FBVyxFQUFFUCxrQkFBa0I7RUFDL0JRLGNBQWMsRUFBRSxDQUFDQyxRQUFRLEVBQUU7SUFDekJDLEtBQUssRUFBRSxPQUFPO0lBQ2RDLGlCQUFpQixFQUFFLE9BQU87RUFDNUIsQ0FBQyxFQUFFLEdBQUcsSUFBSTtBQUNaLENBQUM7QUFFRCxPQUFPLFNBQUFDLHlCQUFBQyxFQUFBO0VBQUEsTUFBQUMsQ0FBQSxHQUFBQyxFQUFBO0VBQWtDO0lBQUFSLFdBQUEsRUFBQVMsRUFBQTtJQUFBUjtFQUFBLElBQUFLLEVBR1Q7RUFGakI7SUFBQUk7RUFBQSxJQUFBRCxFQUFRO0VBQUEsSUFBQUUsRUFBQTtFQUFBLElBQUFKLENBQUEsUUFBQU4sY0FBQTtJQUdyQlUsRUFBQSxZQUFBQyxTQUFBQyxLQUFBO01BQUFDLEdBQUEsRUFZ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