diff --git a/packages/repl/src/components/settings/import/AuthKeyImportDialog.tsx b/packages/repl/src/components/settings/import/AuthKeyImportDialog.tsx index 05066eb..59940a6 100644 --- a/packages/repl/src/components/settings/import/AuthKeyImportDialog.tsx +++ b/packages/repl/src/components/settings/import/AuthKeyImportDialog.tsx @@ -1,9 +1,11 @@ import { workerInvoke } from 'mtcute-repl-worker/client' -import { createEffect, createSignal, on } from 'solid-js' +import { createEffect, createSignal, on, Show } from 'solid-js' +import { unwrap } from 'solid-js/store' import { Button } from '../../../lib/components/ui/button.tsx' import { Checkbox, CheckboxControl, CheckboxLabel } from '../../../lib/components/ui/checkbox.tsx' import { Dialog, DialogContent, DialogDescription, DialogHeader } from '../../../lib/components/ui/dialog.tsx' import { TextField, TextFieldErrorMessage, TextFieldFrame, TextFieldLabel, TextFieldRoot } from '../../../lib/components/ui/text-field.tsx' +import { CustomApiForm, useCustomApiFormState } from '../login/CustomApiDialog.tsx' export function AuthKeyImportDialog(props: { open: boolean @@ -15,6 +17,9 @@ export function AuthKeyImportDialog(props: { const [error, setError] = createSignal() const [loading, setLoading] = createSignal(false) + const [useCustomApi, setUseCustomApi] = createSignal(false) + const [customApi, setCustomApi] = useCustomApiFormState() + let abortController: AbortController | undefined const handleSubmit = async () => { if (!['1', '2', '4', '5'].includes(dcId())) { @@ -32,6 +37,7 @@ export function AuthKeyImportDialog(props: { dcId: Number(dcId()), testMode: testMode(), abortSignal: abortController.signal, + apiOptions: useCustomApi() ? unwrap(customApi) : undefined, }) props.onClose() @@ -66,7 +72,7 @@ export function AuthKeyImportDialog(props: { - + Datacenter ID @@ -79,7 +85,7 @@ export function AuthKeyImportDialog(props: { - + Hex-encoded auth key setError(undefined)} @@ -114,11 +120,30 @@ export function AuthKeyImportDialog(props: { onChange={setTestMode} > - + Use test servers + + + + Use custom connection options + + + + + + +