refactor: drop io-ts

This commit is contained in:
rusconn
2024-03-23 14:03:56 +09:00
parent c4f2ddd69a
commit 749c79c8e4
3 changed files with 6 additions and 16 deletions

View File

@@ -2,7 +2,6 @@
import { useCallback, useState } from "react";
import { range } from "fp-ts/NonEmptyArray";
import * as t from "io-ts";
import { toolGroups } from "@/config/tools";
import { uuid } from "@/lib/uuid";
@@ -26,8 +25,11 @@ const versions = {
v4: "4",
} as const;
const uuidVersions = t.keyof({ [versions.v1]: null, [versions.v4]: null });
type UuidVersion = t.TypeOf<typeof uuidVersions>;
type UuidVersion = (typeof versions)[keyof typeof versions];
function isUuidVersion(s: string): s is UuidVersion {
return Object.values(versions).includes(s as UuidVersion);
}
export default function Page() {
const [hyphens, setHyphens] = useState(true);
@@ -42,7 +44,7 @@ export default function Page() {
const clearUuids = useCallback(() => setUuids([]), []);
const onUuidVersionChange: NonNullable<Select.Props["onValueChange"]> = useCallback(value => {
if (uuidVersions.is(value)) {
if (isUuidVersion(value)) {
setUuidVersion(value);
}
}, []);