|
8 | 8 | FormMessage,
|
9 | 9 | } from "@follow/components/ui/form/index.jsx"
|
10 | 10 | import { Input } from "@follow/components/ui/input/Input.js"
|
| 11 | +import { LoadingCircle } from "@follow/components/ui/loading/index.jsx" |
11 | 12 | import type { RSSHubModel } from "@follow/models"
|
12 | 13 | import { zodResolver } from "@hookform/resolvers/zod"
|
13 | 14 | import { useEffect } from "react"
|
@@ -79,41 +80,47 @@ FOLLOW_PRICE=${instance?.price || 100} # The monthly price of yo
|
79 | 80 | FOLLOW_USER_LIMIT=${instance?.userLimit || 1000} # The user limit of your instance, set it to 0 or 1 can make your instance private, leaving it empty means no restriction`}
|
80 | 81 | language="dotenv"
|
81 | 82 | />
|
82 |
| - <Form {...form}> |
83 |
| - <form onSubmit={form.handleSubmit(onSubmit)} className="space-y-4"> |
84 |
| - <FormField |
85 |
| - control={form.control} |
86 |
| - name="baseUrl" |
87 |
| - render={({ field }) => ( |
88 |
| - <FormItem> |
89 |
| - <FormLabel>{t("rsshub.addModal.base_url_label")}</FormLabel> |
90 |
| - <FormControl> |
91 |
| - <Input placeholder="https://" {...field} /> |
92 |
| - </FormControl> |
93 |
| - <FormMessage /> |
94 |
| - </FormItem> |
95 |
| - )} |
96 |
| - /> |
97 |
| - <FormField |
98 |
| - control={form.control} |
99 |
| - name="accessKey" |
100 |
| - render={({ field }) => ( |
101 |
| - <FormItem> |
102 |
| - <FormLabel>{t("rsshub.addModal.access_key_label")}</FormLabel> |
103 |
| - <FormControl> |
104 |
| - <Input {...field} /> |
105 |
| - </FormControl> |
106 |
| - <FormMessage /> |
107 |
| - </FormItem> |
108 |
| - )} |
109 |
| - /> |
110 |
| - <div className="flex items-center justify-end"> |
111 |
| - <Button type="submit" isLoading={addRSSHubMutation.isPending}> |
112 |
| - {t("rsshub.addModal.add")} |
113 |
| - </Button> |
114 |
| - </div> |
115 |
| - </form> |
116 |
| - </Form> |
| 83 | + {details.isLoading ? ( |
| 84 | + <div className="center mt-12 flex w-full flex-col gap-8"> |
| 85 | + <LoadingCircle size="large" /> |
| 86 | + </div> |
| 87 | + ) : ( |
| 88 | + <Form {...form}> |
| 89 | + <form onSubmit={form.handleSubmit(onSubmit)} className="space-y-4"> |
| 90 | + <FormField |
| 91 | + control={form.control} |
| 92 | + name="baseUrl" |
| 93 | + render={({ field }) => ( |
| 94 | + <FormItem> |
| 95 | + <FormLabel>{t("rsshub.addModal.base_url_label")}</FormLabel> |
| 96 | + <FormControl> |
| 97 | + <Input placeholder="https://" {...field} /> |
| 98 | + </FormControl> |
| 99 | + <FormMessage /> |
| 100 | + </FormItem> |
| 101 | + )} |
| 102 | + /> |
| 103 | + <FormField |
| 104 | + control={form.control} |
| 105 | + name="accessKey" |
| 106 | + render={({ field }) => ( |
| 107 | + <FormItem> |
| 108 | + <FormLabel>{t("rsshub.addModal.access_key_label")}</FormLabel> |
| 109 | + <FormControl> |
| 110 | + <Input {...field} /> |
| 111 | + </FormControl> |
| 112 | + <FormMessage /> |
| 113 | + </FormItem> |
| 114 | + )} |
| 115 | + /> |
| 116 | + <div className="flex items-center justify-end"> |
| 117 | + <Button type="submit" isLoading={addRSSHubMutation.isPending}> |
| 118 | + {t("rsshub.addModal.add")} |
| 119 | + </Button> |
| 120 | + </div> |
| 121 | + </form> |
| 122 | + </Form> |
| 123 | + )} |
117 | 124 | </div>
|
118 | 125 | )
|
119 | 126 | }
|
0 commit comments