From dbd01b11cafe9b102cc371b9812f99aec718d106 Mon Sep 17 00:00:00 2001 From: Tormak <63308171+Tormak9970@users.noreply.github.com> Date: Wed, 1 Feb 2023 17:24:17 -0600 Subject: [PATCH] feat: support for non-interactable reordering --- src/custom-components/ReorderableList.tsx | 27 +++++++++-------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/src/custom-components/ReorderableList.tsx b/src/custom-components/ReorderableList.tsx index 93e3b97..e1a1667 100644 --- a/src/custom-components/ReorderableList.tsx +++ b/src/custom-components/ReorderableList.tsx @@ -1,7 +1,5 @@ -import { Fragment, JSXElementConstructor, ReactElement, useState } from "react" -import { FaEllipsisH } from "react-icons/fa" -import { DialogButton, Field, Focusable, GamepadButton } from "../deck-components" -import { IconType } from "react-icons" +import { Fragment, JSXElementConstructor, ReactElement, useState } from "react"; +import { Field, FieldProps, Focusable, GamepadButton } from "../deck-components"; export type ReorderableEntry = { label: string, @@ -11,10 +9,9 @@ export type ReorderableEntry = { type ListProps = { entries: ReorderableEntry[], - onAction: (entryReference: ReorderableEntry) => void, onSave: (entries: ReorderableEntry[]) => void, - secondButton?: JSXElementConstructor<{entry:ReorderableEntry}>, - primaryIcon?:IconType + interactables?: JSXElementConstructor<{entry:ReorderableEntry}>, + fieldProps?: FieldProps } /** @@ -63,8 +60,8 @@ export function ReorderableList(props: ListProps) { onClick={toggleReorderEnabled}> { entryList.map((entry: ReorderableEntry) => ( - - {props.secondButton ? : null} + + {props.interactables ? : null} )) } @@ -75,13 +72,12 @@ export function ReorderableList(props: ListProps) { } type ListEntryProps = { + fieldProps?: FieldProps, listData: ReorderableEntry[], entryData: ReorderableEntry, reorderEntryFunc: CallableFunction, reorderEnabled: boolean, - onAction: (entryReference: ReorderableEntry) => void, - children:ReactElement|null, - primaryIcon: IconType + children:ReactElement|null } function ReorderableItem(props: ListEntryProps) { @@ -124,12 +120,9 @@ function ReorderableItem(props: ListEntryProps) { return( // @ts-ignore - - + + {props.children} - props.onAction(props.entryData)} onOKButton={() => props.onAction(props.entryData)}> - - );