Files
code-box/component/options/php.tsx
2025-01-07 11:30:41 +08:00

67 lines
2.0 KiB
TypeScript

import { useImperativeHandle } from "react"
import { useStorage } from "@plasmohq/storage/hook"
import CssCode from "~component/items/cssCode"
import DownloadHtml from "~component/items/downloadHtml"
import DownloadMarkdown from "~component/items/downloadMarkdown"
import DownloadPdf from "~component/items/downloadPdf"
import EditMarkdown from "~component/items/editMarkdown"
import ShowTag from "~component/items/showTag"
import { i18n } from "~tools"
export default function Php({ forwardRef }) {
const [copyCode, setCopyCode] = useStorage("php-copyCode", (v) =>
v === undefined ? true : v
)
const [closeLoginModal, setCloseLoginModal] = useStorage(
"php-closeLoginModal",
(v) => (v === undefined ? true : v)
)
function handleReset() {
setCopyCode(true)
setCloseLoginModal(true)
}
useImperativeHandle(forwardRef, () => ({
handleReset
}))
return (
<fieldset>
<legend>{i18n("phpConfig")}</legend>
<div className="item">
<span>{i18n("phpCopyCode")}</span>
<input
type="checkbox"
id="php-copyCode"
name="php-copyCode"
className="codebox-offscreen"
checked={copyCode}
onChange={(e) => setCopyCode(e.target.checked)}
/>
<label className="codebox-switch" htmlFor="php-copyCode"></label>
</div>
<div className="item">
<span>{i18n("phpCloseLoginModal")}</span>
<input
type="checkbox"
id="php-closeLoginModal"
name="php-closeLoginModal"
className="codebox-offscreen"
checked={closeLoginModal}
onChange={(e) => setCloseLoginModal(e.target.checked)}
/>
<label htmlFor="php-closeLoginModal" className="codebox-switch"></label>
</div>
<CssCode name="php" />
<ShowTag name="php" />
<EditMarkdown name="php" />
<DownloadMarkdown name="php" />
<DownloadHtml name="php" />
<DownloadPdf name="php" />
</fieldset>
)
}