diff --git a/web/src/components/table/tokens/modals/EditTokenModal.jsx b/web/src/components/table/tokens/modals/EditTokenModal.jsx index fce4820..4f09f20 100644 --- a/web/src/components/table/tokens/modals/EditTokenModal.jsx +++ b/web/src/components/table/tokens/modals/EditTokenModal.jsx @@ -62,6 +62,7 @@ const EditTokenModal = (props) => { const formApiRef = useRef(null); const [models, setModels] = useState([]); const [groups, setGroups] = useState([]); + const [channels, setChannels] = useState([]); const isEdit = props.editingToken.id !== undefined; const getInitValues = () => ({ @@ -75,6 +76,7 @@ const EditTokenModal = (props) => { group: '', cross_group_retry: false, tokenCount: 1, + bound_channel_id: null, }); const handleCancel = () => { @@ -149,6 +151,20 @@ const EditTokenModal = (props) => { } }; + const loadChannels = async () => { + let res = await API.get(`/api/channel/`); + const { success, message, data } = res.data; + if (success) { + let localChannelOptions = (data || []).map((channel) => ({ + label: `${channel.name} (ID: ${channel.id})`, + value: channel.id, + })); + setChannels(localChannelOptions); + } else { + showError(t(message)); + } + }; + const loadToken = async () => { setLoading(true); let res = await API.get(`/api/token/${props.editingToken.id}`); @@ -179,6 +195,7 @@ const EditTokenModal = (props) => { } loadModels(); loadGroups(); + loadChannels(); }, [props.editingToken.id]); useEffect(() => { @@ -559,6 +576,17 @@ const EditTokenModal = (props) => { style={{ width: '100%' }} /> + + +