···
const didDocument = await didDocPromise;
const pdsEndpoint = getPdsEndpoint(didDocument);
···
const [validSchema, setValidSchema] = createSignal<boolean | undefined>(undefined);
const [schema, setSchema] = createSignal<ResolvedSchema>();
const [lexiconNotFound, setLexiconNotFound] = createSignal<boolean>();
+
const [remoteValidation, setRemoteValidation] = createSignal<boolean>();
···
const validateRemoteSchema = async (record: Record<string, unknown>) => {
+
setRemoteValidation(true);
const { resolved, failed } = await resolveAllLexicons(params.collection as Nsid);
···
setValidationError(err.message || String(err));
+
setRemoteValidation(false);
const verifyRecordIntegrity = async () => {
···
<Show when={validRecord() === false}>
+
<div class="text-xs wrap-break-word">{verifyError()}</div>
···
"iconify lucide--check text-green-500 dark:text-green-400":
"iconify lucide--x text-red-500 dark:text-red-400": validSchema() === false,
+
"iconify lucide--loader-circle animate-spin":
+
validSchema() === undefined && remoteValidation(),
<Show when={validSchema() === false}>
+
<div class="text-xs wrap-break-word">{validationError()}</div>
+
validSchema() === undefined &&
+
!(params.collection in lexicons)
+
<Button onClick={() => validateRemoteSchema(record()!.value)}>
<Show when={lexiconUri()}>