mirror of
https://github.com/idanoo/autobrr
synced 2025-07-27 02:39:13 +00:00
* refactor(APIClient): updated the newly added findQuery function to use URLSearchParams instead of manually crafting the URI string itself. * refactor: moved duplicate dashboard/release code to a separate folder: components/data-table. * refactor(SlideOver): added proper typings to the SlideOver component and added a sanity check to prevent passing of null/undefined values to the child component before rendering. * refactor: removed the redundant Network and Channel typings and updated relevant typings to match the backend. adapted relevant code to match these changes. * fix(ChannelsFieldArray): fixed a bug where it was unable to add a new irc network due to the validation object being initialized as non-empty (formik requires that successful validated entries return empty objects) * refactor(screens/settings/Irc): replaced incorrect typings, sanitized potentially null values and cleaned up the code. * fix: included changes should fix issue #158 as well. * feat: send chan empty array
This commit is contained in:
parent
5a45851677
commit
9ea29d02a2
23 changed files with 974 additions and 1187 deletions
|
@ -7,22 +7,31 @@ import { useToggle } from "../../hooks/hooks";
|
|||
import { DeleteModal } from "../modals";
|
||||
import { classNames } from "../../utils";
|
||||
|
||||
interface SlideOverProps {
|
||||
interface SlideOverProps<DataType> {
|
||||
title: string;
|
||||
initialValues: any;
|
||||
validate?: any;
|
||||
onSubmit: any;
|
||||
initialValues: DataType;
|
||||
validate?: (values?: any) => void;
|
||||
onSubmit: (values?: DataType) => void;
|
||||
isOpen: boolean;
|
||||
toggle: any;
|
||||
children?: (values: any) => React.ReactNode;
|
||||
deleteAction?: any
|
||||
toggle: () => void;
|
||||
children?: (values: DataType) => React.ReactNode;
|
||||
deleteAction?: () => void;
|
||||
type: "CREATE" | "UPDATE";
|
||||
}
|
||||
|
||||
function SlideOver({ title, initialValues, validate, onSubmit, deleteAction, isOpen, toggle, type, children }: SlideOverProps) {
|
||||
const [deleteModalIsOpen, toggleDeleteModal] = useToggle(false)
|
||||
|
||||
const cancelModalButtonRef = useRef(null)
|
||||
function SlideOver<DataType>({
|
||||
title,
|
||||
initialValues,
|
||||
validate,
|
||||
onSubmit,
|
||||
deleteAction,
|
||||
isOpen,
|
||||
toggle,
|
||||
type,
|
||||
children
|
||||
}: SlideOverProps<DataType>): React.ReactElement {
|
||||
const cancelModalButtonRef = useRef(null);
|
||||
const [deleteModalIsOpen, toggleDeleteModal] = useToggle(false);
|
||||
|
||||
return (
|
||||
<Transition.Root show={isOpen} as={Fragment}>
|
||||
|
@ -84,7 +93,9 @@ function SlideOver({ title, initialValues, validate, onSubmit, deleteAction, isO
|
|||
</div>
|
||||
</div>
|
||||
|
||||
{children !== undefined && children(values)}
|
||||
{!!values && children !== undefined ? (
|
||||
children(values)
|
||||
) : null}
|
||||
</div>
|
||||
|
||||
<div className="flex-shrink-0 px-4 border-t border-gray-200 dark:border-gray-700 py-5 sm:px-6">
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue