* feat: lang support * fix: type errors * feat: select voice agent * refactor: address feedback * refactor: address feedback * refactor: missing import * fix: types * feat: add inbound calls * chore: formatting * chore * feat: finish inbound call * chore: formatting * fix: update bug * fix: types * refactor: Agent Configuration Sheet (#23930) * refactor: agent configuration sheet * chore: use default phone numbre * refactor: improvements * refactor: improvements * fix: types * fix: feedback * chore: * fix: feedback * fix: prompt * fix: review * fix: review * refactor: class * refactor: class * refactor: rename * Update apps/web/public/static/locales/en/common.json * Update apps/web/public/static/locales/en/common.json * chore: update set value * fix: remove index * fix: type error * fix: update tetss * fix: use logger * refactor: don't use static * fix: type * fix: schema * refactor: --------- Co-authored-by: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com>
41 lines
1.1 KiB
TypeScript
41 lines
1.1 KiB
TypeScript
import { zodResolver } from "@hookform/resolvers/zod";
|
|
import { useState } from "react";
|
|
import { useForm } from "react-hook-form";
|
|
|
|
import type { PhoneNumberFormValues } from "../types/schemas";
|
|
import { phoneNumberFormSchema } from "../types/schemas";
|
|
|
|
export function usePhoneNumberActions() {
|
|
const [cancellingNumberId, setCancellingNumberId] = useState<number | null>(null);
|
|
const [numberToDelete, setNumberToDelete] = useState<string | null>(null);
|
|
|
|
const phoneNumberForm = useForm<PhoneNumberFormValues>({
|
|
resolver: zodResolver(phoneNumberFormSchema),
|
|
defaultValues: {
|
|
phoneNumber: "",
|
|
terminationUri: "",
|
|
sipTrunkAuthUsername: "",
|
|
sipTrunkAuthPassword: "",
|
|
nickname: "",
|
|
},
|
|
});
|
|
|
|
const handleCancelSubscription = (phoneNumberId: number) => {
|
|
setCancellingNumberId(phoneNumberId);
|
|
};
|
|
|
|
const handleDeletePhoneNumber = (phoneNumber: string) => {
|
|
setNumberToDelete(phoneNumber);
|
|
};
|
|
|
|
return {
|
|
phoneNumberForm,
|
|
cancellingNumberId,
|
|
setCancellingNumberId,
|
|
numberToDelete,
|
|
setNumberToDelete,
|
|
handleCancelSubscription,
|
|
handleDeletePhoneNumber,
|
|
};
|
|
}
|