// @bun
import {
  Select,
  gracefulShutdownSync,
  init_CustomSelect,
  init_gracefulShutdown
} from "./chunk-cnjb8b86.js";
import"./chunk-k60b56gr.js";
import"./chunk-14p6wvsq.js";
import"./chunk-g4yawavx.js";
import"./chunk-28jd8qjx.js";
import"./chunk-djt39ze3.js";
import"./chunk-9a9g5hbj.js";
import"./chunk-ptxteaeh.js";
import"./chunk-jvzheknj.js";
import"./chunk-6xgts8yv.js";
import"./chunk-cq5x2ww9.js";
import"./chunk-z4ata4ab.js";
import"./chunk-3gv0thgq.js";
import"./chunk-vk8zvq17.js";
import"./chunk-9hn8e6h1.js";
import"./chunk-rgyzsbs3.js";
import"./chunk-qn6me9n1.js";
import"./chunk-m13584y2.js";
import"./chunk-zd4jrzbr.js";
import"./chunk-71sdcaq6.js";
import"./chunk-mmtwa757.js";
import"./chunk-tj8te4np.js";
import"./chunk-mshbqz1a.js";
import"./chunk-dr2x4ze7.js";
import"./chunk-8ad8jmrf.js";
import"./chunk-24kv69g3.js";
import"./chunk-bfy3xx3x.js";
import"./chunk-2eb4hvmp.js";
import"./chunk-4gyjc4jm.js";
import"./chunk-4spgkgr3.js";
import"./chunk-e8dhxycp.js";
import"./chunk-hf0jvnz1.js";
import"./chunk-9pygs2bc.js";
import"./chunk-60fkafk2.js";
import"./chunk-gaazk5m4.js";
import"./chunk-5p22q3zt.js";
import"./chunk-093ej2sf.js";
import"./chunk-7tfdhkpy.js";
import"./chunk-nde5ym6a.js";
import"./chunk-rqg87cdf.js";
import"./chunk-p16xrfdy.js";
import"./chunk-hkxtwqh5.js";
import"./chunk-8v909swg.js";
import"./chunk-hxjpqg2s.js";
import"./chunk-4nctdw69.js";
import"./chunk-vhghhw4q.js";
import"./chunk-935nrvdb.js";
import"./chunk-8zz4z1q3.js";
import"./chunk-40rkf49m.js";
import"./chunk-hqxp6b72.js";
import"./chunk-vpdngjbx.js";
import"./chunk-c9mjtja4.js";
import"./chunk-w5hnghah.js";
import"./chunk-egpny0k9.js";
import"./chunk-x59e8cv0.js";
import"./chunk-s76nvx50.js";
import"./chunk-7jyr5758.js";
import {
  init_settings1 as init_settings,
  updateSettingsForSource
} from "./chunk-ym4hbqxs.js";
import"./chunk-nkg1b3qw.js";
import"./chunk-c1kx8bry.js";
import"./chunk-epvbnq43.js";
import"./chunk-swgt1px0.js";
import"./chunk-8kf8h7xf.js";
import"./chunk-swz6krys.js";
import"./chunk-7eywm3ed.js";
import"./chunk-bgan4cpf.js";
import"./chunk-jmv7k0jn.js";
import"./chunk-25w7rxtr.js";
import"./chunk-5xfj4jkd.js";
import"./chunk-c1t99xmt.js";
import"./chunk-vwenx8ke.js";
import"./chunk-8thwr7p8.js";
import"./chunk-v4ypszbb.js";
import"./chunk-bk6ck5c2.js";
import"./chunk-ym6j0wv1.js";
import"./chunk-hjmatcgt.js";
import"./chunk-6mdh70q0.js";
import"./chunk-ch92ycde.js";
import"./chunk-e4dsy4g1.js";
import"./chunk-326zehp8.js";
import"./chunk-kc67kt75.js";
import"./chunk-40t1d75v.js";
import"./chunk-rt34thxn.js";
import"./chunk-e3abfxpy.js";
import"./chunk-q44zc68f.js";
import"./chunk-fejeqe61.js";
import"./chunk-kgkdmr0x.js";
import"./chunk-hn4w9pkj.js";
import {
  Dialog,
  Link,
  Newline,
  ThemedBox_default,
  ThemedText,
  init_src,
  require_react
} from "./chunk-cswpvb8x.js";
import {
  require_jsx_runtime
} from "./chunk-gxyx8b8w.js";
import {
  init_analytics,
  logEvent
} from "./chunk-j1mep9ck.js";
import"./chunk-6x35ffpx.js";
import"./chunk-1zbwhcbt.js";
import"./chunk-ddaxg4xh.js";
import"./chunk-vvh31np8.js";
import"./chunk-tywrrc1m.js";
import"./chunk-e3j7m7k2.js";
import"./chunk-4p0hxk2c.js";
import"./chunk-c4dyxsat.js";
import"./chunk-34rn09za.js";
import"./chunk-m28vg9w4.js";
import"./chunk-rk9fgqmg.js";
import"./chunk-nw4zt0y4.js";
import"./chunk-c1yc761e.js";
import"./chunk-c5g9shkw.js";
import"./chunk-k9jzhhww.js";
import"./chunk-kb3758f7.js";
import"./chunk-xqs9r7pg.js";
import"./chunk-tj0dzck2.js";
import"./chunk-aeysytks.js";
import"./chunk-ns1htxgd.js";
import"./chunk-ztqzmfx1.js";
import"./chunk-6k1rsk85.js";
import"./chunk-nxzx0ey9.js";
import"./chunk-yes1my80.js";
import"./chunk-pecy49yr.js";
import"./chunk-azbab59e.js";
import"./chunk-3nk9q8dr.js";
import {
  __toESM
} from "./chunk-hhsxm2yr.js";

// src/components/BypassPermissionsModeDialog.tsx
init_analytics();
init_src();
init_gracefulShutdown();
init_settings();
init_CustomSelect();
init_src();
var import_react = __toESM(require_react(), 1);
var jsx_runtime = __toESM(require_jsx_runtime(), 1);
function BypassPermissionsModeDialog({ onAccept }) {
  const [pendingExitCode, setPendingExitCode] = import_react.default.useState(null);
  import_react.default.useEffect(() => {
    if (pendingExitCode !== null) {
      const code = pendingExitCode;
      const timer = setTimeout(() => gracefulShutdownSync(code));
      return () => clearTimeout(timer);
    }
  }, [pendingExitCode]);
  import_react.default.useEffect(() => {
    logEvent("tengu_bypass_permissions_mode_dialog_shown", {});
  }, []);
  function onChange(value) {
    switch (value) {
      case "accept": {
        logEvent("tengu_bypass_permissions_mode_dialog_accept", {});
        updateSettingsForSource("userSettings", {
          skipDangerousModePermissionPrompt: true
        });
        onAccept();
        break;
      }
      case "decline": {
        setPendingExitCode(1);
        break;
      }
    }
  }
  const handleEscape = import_react.useCallback(() => {
    setPendingExitCode(0);
  }, []);
  if (pendingExitCode !== null) {
    return null;
  }
  return /* @__PURE__ */ jsx_runtime.jsxs(Dialog, {
    title: "WARNING: Claude Code running in Bypass Permissions mode",
    color: "error",
    onCancel: handleEscape,
    children: [
      /* @__PURE__ */ jsx_runtime.jsxs(ThemedBox_default, {
        flexDirection: "column",
        gap: 1,
        children: [
          /* @__PURE__ */ jsx_runtime.jsxs(ThemedText, {
            children: [
              "In Bypass Permissions mode, Claude Code will not ask for your approval before running potentially dangerous commands.",
              /* @__PURE__ */ jsx_runtime.jsx(Newline, {}),
              "This mode should only be used in a sandboxed container/VM that has restricted internet access and can easily be restored if damaged."
            ]
          }),
          /* @__PURE__ */ jsx_runtime.jsx(ThemedText, {
            children: "By proceeding, you accept all responsibility for actions taken while running in Bypass Permissions mode."
          }),
          /* @__PURE__ */ jsx_runtime.jsx(Link, {
            url: "https://code.claude.com/docs/en/security"
          })
        ]
      }),
      /* @__PURE__ */ jsx_runtime.jsx(Select, {
        options: [
          { label: "No, exit", value: "decline" },
          { label: "Yes, I accept", value: "accept" }
        ],
        onChange: (value) => onChange(value)
      })
    ]
  });
}
export {
  BypassPermissionsModeDialog
};

//# debugId=27DB13140D4DF5C064756E2164756E21
//# sourceMappingURL=chunk-w5y4yc6w.js.map
