π File detail
components/ChannelDowngradeDialog.tsx
π§© .tsxπ 102 linesπΎ 8,253 bytesπ text
β Back to All Filesπ― Use case
This file lives under βcomponents/β, which covers shared React UI pieces. On the API surface it exposes ChannelDowngradeChoice and ChannelDowngradeDialog β mainly types, interfaces, or factory objects. Dependencies touch React UI. It composes internal code from ink, CustomSelect, and design-system (relative imports).
Generated from folder role, exports, dependency roots, and inline comments β not hand-reviewed for every path.
π§ Inline summary
import { c as _c } from "react/compiler-runtime"; import React from 'react'; import { Text } from '../ink.js'; import { Select } from './CustomSelect/index.js'; import { Dialog } from './design-system/Dialog.js';
π€ Exports (heuristic)
ChannelDowngradeChoiceChannelDowngradeDialog
π External import roots
Package roots from from "β¦" (relative paths omitted).
react
π₯οΈ Source preview
import { c as _c } from "react/compiler-runtime";
import React from 'react';
import { Text } from '../ink.js';
import { Select } from './CustomSelect/index.js';
import { Dialog } from './design-system/Dialog.js';
export type ChannelDowngradeChoice = 'downgrade' | 'stay' | 'cancel';
type Props = {
currentVersion: string;
onChoice: (choice: ChannelDowngradeChoice) => void;
};
/**
* Dialog shown when switching from latest to stable channel.
* Allows user to choose whether to downgrade or stay on current version.
*/
export function ChannelDowngradeDialog(t0) {
const $ = _c(17);
const {
currentVersion,
onChoice
} = t0;
let t1;
if ($[0] !== onChoice) {
t1 = function handleSelect(value) {
onChoice(value);
};
$[0] = onChoice;
$[1] = t1;
} else {
t1 = $[1];
}
const handleSelect = t1;
let t2;
if ($[2] !== onChoice) {
t2 = function handleCancel() {
onChoice("cancel");
};
$[2] = onChoice;
$[3] = t2;
} else {
t2 = $[3];
}
const handleCancel = t2;
let t3;
if ($[4] !== currentVersion) {
t3 = <Text>The stable channel may have an older version than what you're currently running ({currentVersion}).</Text>;
$[4] = currentVersion;
$[5] = t3;
} else {
t3 = $[5];
}
let t4;
if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
t4 = <Text dimColor={true}>How would you like to handle this?</Text>;
$[6] = t4;
} else {
t4 = $[6];
}
let t5;
if ($[7] === Symbol.for("react.memo_cache_sentinel")) {
t5 = {
label: "Allow possible downgrade to stable version",
value: "downgrade" as ChannelDowngradeChoice
};
$[7] = t5;
} else {
t5 = $[7];
}
const t6 = `Stay on current version (${currentVersion}) until stable catches up`;
let t7;
if ($[8] !== t6) {
t7 = [t5, {
label: t6,
value: "stay" as ChannelDowngradeChoice
}];
$[8] = t6;
$[9] = t7;
} else {
t7 = $[9];
}
let t8;
if ($[10] !== handleSelect || $[11] !== t7) {
t8 = <Select options={t7} onChange={handleSelect} />;
$[10] = handleSelect;
$[11] = t7;
$[12] = t8;
} else {
t8 = $[12];
}
let t9;
if ($[13] !== handleCancel || $[14] !== t3 || $[15] !== t8) {
t9 = <Dialog title="Switch to Stable Channel" onCancel={handleCancel} color="permission" hideBorder={true} hideInputGuide={true}>{t3}{t4}{t8}</Dialog>;
$[13] = handleCancel;
$[14] = t3;
$[15] = t8;
$[16] = t9;
} else {
t9 = $[16];
}
return t9;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlRleHQiLCJTZWxlY3QiLCJEaWFsb2ciLCJDaGFubmVsRG93bmdyYWRlQ2hvaWNlIiwiUHJvcHMiLCJjdXJyZW50VmVyc2lvbiIsIm9uQ2hvaWNlIiwiY2hvaWNlIiwiQ2hhbm5lbERvd25ncmFkZURpYWxvZyIsInQwIiwiJCIsIl9jIiwidDEiLCJoYW5kbGVTZWxlY3QiLCJ2YWx1ZSIsInQyIiwiaGFuZGxlQ2FuY2VsIiwidDMiLCJ0NCIsIlN5bWJvbCIsImZvciIsInQ1IiwibGFiZWwiLCJ0NiIsInQ3IiwidDgiLCJ0OSJdLCJzb3VyY2VzIjpbIkNoYW5uZWxEb3duZ3JhZGVEaWFsb2cudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCdcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi9pbmsuanMnXG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICcuL0N1c3RvbVNlbGVjdC9pbmRleC5qcydcbmltcG9ydCB7IERpYWxvZyB9IGZyb20gJy4vZGVzaWduLXN5c3RlbS9EaWFsb2cuanMnXG5cbmV4cG9ydCB0eXBlIENoYW5uZWxEb3duZ3JhZGVDaG9pY2UgPSAnZG93bmdyYWRlJyB8ICdzdGF5JyB8ICdjYW5jZWwnXG5cbnR5cGUgUHJvcHMgPSB7XG4gIGN1cnJlbnRWZXJzaW9uOiBzdHJpbmdcbiAgb25DaG9pY2U6IChjaG9pY2U6IENoYW5uZWxEb3duZ3JhZGVDaG9pY2UpID0+IHZvaWRcbn1cblxuLyoqXG4gKiBEaWFsb2cgc2hvd24gd2hlbiBzd2l0Y2hpbmcgZnJvbSBsYXRlc3QgdG8gc3RhYmxlIGNoYW5uZWwuXG4gKiBBbGxvd3MgdXNlciB0byBjaG9vc2Ugd2hldGhlciB0byBkb3duZ3JhZGUgb3Igc3RheSBvbiBjdXJyZW50IHZlcnNpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBDaGFubmVsRG93bmdyYWRlRGlhbG9nKHtcbiAgY3VycmVudFZlcnNpb24sXG4gIG9uQ2hvaWNlLFxufTogUHJvcHMpOiBSZWFjdC5SZWFjdE5vZGUge1xuICBmdW5jdGlvbiBoYW5kbGVTZWxlY3QodmFsdWU6IENoYW5uZWxEb3duZ3JhZGVDaG9pY2UpOiB2b2lkIHtcbiAgICBvbkNob2ljZSh2YWx1ZSlcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZUNhbmNlbCgpOiB2b2lkIHtcbiAgICBvbkNob2ljZSgnY2FuY2VsJylcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPERpYWxvZ1xuICAgICAgdGl0bGU9XCJTd2l0Y2ggdG8gU3RhYmxlIENoYW5uZWxcIlxuICAgICAgb25DYW5jZWw9e2hhbmRsZUNhbmNlbH1cbiAgICAgIGNvbG9yPVwicGVybWlzc2lvblwiXG4gICAgICBoaWRlQm9yZGVyXG4gICAgICBoaWRlSW5wdXRHdWlkZVxuICAgID5cbiAgICAgIDxUZXh0PlxuICAgICAgICBUaGUgc3RhYmxlIGNoYW5uZWwgbWF5IGhhdmUgYW4gb2xkZXIgdmVyc2lvbiB0aGFuIHdoYXQgeW91JmFwb3M7cmVcbiAgICAgICAgY3VycmVudGx5IHJ1bm5pbmcgKHtjdXJyZW50VmVyc2lvbn0pLlxuICAgICAgPC9UZXh0PlxuICAgICAgPFRleHQgZGltQ29sb3I+SG93IHdvdWxkIHlvdSBsaWtlIHRvIGhhbmRsZSB0aGlzPzwvVGV4dD5cbiAgICAgIDxTZWxlY3RcbiAgICAgICAgb3B0aW9ucz17W1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGxhYmVsOiAnQWxsb3cgcG9zc2libGUgZG93bmdyYWRlIHRvIHN0YWJsZSB2ZXJzaW9uJyxcbiAgICAgICAgICAgIHZhbHVlOiAnZG93bmdyYWRlJyBhcyBDaGFubmVsRG93bmdyYWRlQ2hvaWNlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbGFiZWw6IGBTdGF5IG9uIGN1cnJlbnQgdmVyc2lvbiAoJHtjdXJyZW50VmVyc2lvbn0pIHVudGlsIHN0YWJsZSBjYXRjaGVzIHVwYCxcbiAgICAgICAgICAgIHZhbHVlOiAnc3RheScgYXMgQ2hhbm5lbERvd25ncmFkZUNob2ljZSxcbiAgICAgICAgICB9LFxuICAgICAgICBdfVxuICAgICAgICBvbkNoYW5nZT17aGFuZGxlU2VsZWN0fVxuICAgICAgLz5cbiAgICA8L0RpYWxvZz5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsT0FBT0EsS0FBSyxNQUFNLE9BQU87QUFDekIsU0FBU0MsSUFBSSxRQUFRLFdBQVc7QUFDaEMsU0FBU0MsTUFBTSxRQUFRLHlCQUF5QjtBQUNoRCxTQUFTQyxNQUFNLFFBQVEsMkJBQTJCO0FBRWxELE9BQU8sS0FBS0Msc0JBQXNCLEdBQUcsV0FBVyxHQUFHLE1BQU0sR0FBRyxRQUFRO0FBRXBFLEtBQUtDLEtBQUssR0FBRztFQUNYQyxjQUFjLEVBQUUsTUFBTTtFQUN0QkMsUUFBUSxFQUFFLENBQUNDLE1BQU0sRUFBRUosc0JBQXNCLEVBQUUsR0FBRyxJQUFJO0FBQ3BELENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLFNBQUFLLHVCQUFBQyxFQUFBO0VBQUEsTUFBQUMsQ0FBQSxHQUFBQyxFQUFBO0VBQWdDO0lBQUFOLGNBQUE7SUFBQUM7RUFBQSxJQUFBRyxFQUcvQjtFQUFBLElBQUFHLEVBQUE7RUFBQSxJQUFBRixDQUFBLFFBQUFKLFFBQUE7SUFDTk0sRUFBQSxZQUFBQyxhQUFBQyxLQUFBO01BQ0VSLFFBQVEsQ0FBQ1EsS0FBSyxDQUFDO0lBQUEsQ0FDaEI7SUFBQUosQ0FBQSxNQUFBSixRQUFBO0lBQUFJLENBQUEsTUFBQUUsRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQUYsQ0FBQTtFQUFBO0VBRkQsTUFBQUcsWUFBQSxHQUFBRCxFQUVDO0VBQUEsSUFBQUcsRUFBQTtFQUFBLElBQUFMLENBQUEsUUFBQUosUUFBQTtJQUVEUyxFQUFBLFlBQUFDLGFBQUE7TUFDRVYsUUFBUSxDQUFDLFFBQVEsQ0FBQztJQUFBLENBQ25CO0lBQUFJLENBQUEsTUFBQUosUUFBQTtJQUFBSSxDQUFBLE1BQUFLLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFMLENBQUE7RUFBQTtFQUZELE1BQUFNLFlBQUEsR0FBQUQsRUFFQztFQUFBLElBQUFFLEVBQUE7RUFBQSxJQUFBUCxDQUFBLFFBQUFMLGNBQUE7SUFVR1ksRUFBQSxJQUFDLElBQUksQ0FBQyxpRkFFZ0JaLGVBQWEsQ0FBRSxFQUNyQyxFQUhDLElBQUksQ0FHRTtJQUFBSyxDQUFBLE1BQUFMLGNBQUE7SUFBQUssQ0FBQSxNQUFBTyxFQUFBO0VBQUE7SUFBQUEsRUFBQSxHQUFBUCxDQUFBO0VBQUE7RUFBQSxJQUFBUSxFQUFBO0VBQUEsSUFBQVIsQ0FBQSxRQUFBUyxNQUFBLENBQUFDLEdBQUE7SUFDUEYsRUFBQSxJQUFDLElBQUksQ0FBQyxRQUFRLENBQVIsS0FBTyxDQUFDLENBQUMsa0NBQWtDLEVBQWhELElBQUksQ0FBbUQ7SUFBQVIsQ0FBQSxNQUFBUSxFQUFBO0VBQUE7SUFBQUEsRUFBQSxHQUFBUixDQUFBO0VBQUE7RUFBQSxJQUFBVyxFQUFBO0VBQUEsSUFBQVgsQ0FBQSxRQUFBUyxNQUFBLENBQUFDLEdBQUE7SUFHcERDLEVBQUE7TUFBQUMsS0FBQSxFQUNTLDRDQUE0QztNQUFBUixLQUFBLEVBQzVDLFdBQVcsSUFBSVg7SUFDeEIsQ0FBQztJQUFBTyxDQUFBLE1BQUFXLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFYLENBQUE7RUFBQTtFQUVRLE1BQUFhLEVBQUEsK0JBQTRCbEIsY0FBYywyQkFBMkI7RUFBQSxJQUFBbUIsRUFBQTtFQUFBLElBQUFkLENBQUEsUUFBQWEsRUFBQTtJQU52RUMsRUFBQSxJQUNQSCxFQUdDLEVBQ0Q7TUFBQUMsS0FBQSxFQUNTQyxFQUFxRTtNQUFBVCxLQUFBLEVBQ3JFLE1BQU0sSUFBSVg7SUFDbkIsQ0FBQyxDQUNGO0lBQUFPLENBQUEsTUFBQWEsRUFBQTtJQUFBYixDQUFBLE1BQUFjLEVBQUE7RUFBQTtJQUFBQSxFQUFBLEdBQUFkLENBQUE7RUFBQTtFQUFBLElBQUFlLEVBQUE7RUFBQSxJQUFBZixDQUFBLFNBQUFHLFlBQUEsSUFBQUgsQ0FBQSxTQUFBYyxFQUFBO0lBVkhDLEVBQUEsSUFBQyxNQUFNLENBQ0ksT0FTUixDQVRRLENBQUFELEVBU1QsQ0FBQyxDQUNTWCxRQUFZLENBQVpBLGFBQVcsQ0FBQyxHQUN0QjtJQUFBSCxDQUFBLE9BQUFHLFlBQUE7SUFBQUgsQ0FBQSxPQUFBYyxFQUFBO0lBQUFkLENBQUEsT0FBQWUsRUFBQTtFQUFBO0lBQUFBLEVBQUEsR0FBQWYsQ0FBQTtFQUFBO0VBQUEsSUFBQWdCLEVBQUE7RUFBQSxJQUFBaEIsQ0FBQSxTQUFBTSxZQUFBLElBQUFOLENBQUEsU0FBQU8sRUFBQSxJQUFBUCxDQUFBLFNBQUFlLEVBQUE7SUF4QkpDLEVBQUEsSUFBQyxNQUFNLENBQ0MsS0FBMEIsQ0FBMUIsMEJBQTBCLENBQ3RCVixRQUFZLENBQVpBLGFBQVcsQ0FBQyxDQUNoQixLQUFZLENBQVosWUFBWSxDQUNsQixVQUFVLENBQVYsS0FBUyxDQUFDLENBQ1YsY0FBYyxDQUFkLEtBQWEsQ0FBQyxDQUVkLENBQUFDLEVBR00sQ0FDTixDQUFBQyxFQUF1RCxDQUN2RCxDQUFBTyxFQVlDLENBQ0gsRUF6QkMsTUFBTSxDQXlCRTtJQUFBZixDQUFBLE9BQUFNLFlBQUE7SUFBQU4sQ0FBQSxPQUFBTyxFQUFBO0lBQUFQLENBQUEsT0FBQWUsRUFBQTtJQUFBZixDQUFBLE9BQUFnQixFQUFBO0VBQUE7SUFBQUEsRUFBQSxHQUFBaEIsQ0FBQTtFQUFBO0VBQUEsT0F6QlRnQixFQXlCUztBQUFBIiwiaWdub3JlTGlzdCI6W119