From f1bf06b8cd17a7f508f55f622786a7733df41471 Mon Sep 17 00:00:00 2001 From: Dev Gupta <73140257+dev265545@users.noreply.github.com> Date: Tue, 4 Apr 2023 09:19:48 +0530 Subject: [PATCH] FIX #2897 Admin: "Copy" button for stream keys copy asterisks if key is hidden (#2901) * Update StreamKeys.tsx * Prettified Code! --------- Co-authored-by: dev265545 --- .../admin/config/server/StreamKeys.tsx | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/web/components/admin/config/server/StreamKeys.tsx b/web/components/admin/config/server/StreamKeys.tsx index ff353fead..2a680a3fa 100644 --- a/web/components/admin/config/server/StreamKeys.tsx +++ b/web/components/admin/config/server/StreamKeys.tsx @@ -1,5 +1,5 @@ import React, { useContext, useEffect, useState } from 'react'; -import { Table, Space, Button, Typography, Alert, Input, Form } from 'antd'; +import { Table, Space, Button, Typography, Alert, Input, Form, message } from 'antd'; import dynamic from 'next/dynamic'; import { ServerStatusContext } from '../../../../utils/server-status-context'; @@ -136,6 +136,12 @@ const AddKeyButton = ({ setShowAddKeyForm }) => ( ); +const copyText = (text: string) => { + navigator.clipboard + .writeText(text) + .then(() => message.success('Copied to clipboard')) + .catch(() => message.error('Failed to copy to clipboard')); +}; const StreamKeys = () => { const serverStatusData = useContext(ServerStatusContext); @@ -168,7 +174,14 @@ const StreamKeys = () => { key: 'key', render: text => ( - {showKeyMap[text] ? text : '**********'} + copyText(text), + }} + > + {showKeyMap[text] ? text : '**********'} +