diff --git a/src/servers/ManageServersRow.tsx b/src/servers/ManageServersRow.tsx index 0ba40f7c..6f537d4f 100644 --- a/src/servers/ManageServersRow.tsx +++ b/src/servers/ManageServersRow.tsx @@ -1,9 +1,8 @@ import { faCheck as checkIcon } from '@fortawesome/free-solid-svg-icons'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { Table } from '@shlinkio/shlink-frontend-kit/tailwind'; +import { Table, Tooltip, useTooltip } from '@shlinkio/shlink-frontend-kit/tailwind'; import type { FC } from 'react'; import { Link } from 'react-router'; -import { UncontrolledTooltip } from 'reactstrap'; import type { FCWithDeps } from '../container/utils'; import { componentFactory, useDependencies } from '../container/utils'; import type { ServerWithId } from './data'; @@ -20,6 +19,7 @@ type ManageServersRowDeps = { const ManageServersRow: FCWithDeps = ({ server, hasAutoConnect }) => { const { ManageServersRowDropdown } = useDependencies(ManageServersRow); + const { anchor, tooltip } = useTooltip(); return ( @@ -30,11 +30,9 @@ const ManageServersRow: FCWithDeps - - Auto-connect to this server - + Auto-connect to this server )} diff --git a/src/servers/helpers/ImportServersBtn.tsx b/src/servers/helpers/ImportServersBtn.tsx index a0a1efeb..038414b1 100644 --- a/src/servers/helpers/ImportServersBtn.tsx +++ b/src/servers/helpers/ImportServersBtn.tsx @@ -1,10 +1,9 @@ import { faFileUpload as importIcon } from '@fortawesome/free-solid-svg-icons'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; -import { useElementRef, useToggle } from '@shlinkio/shlink-frontend-kit'; -import { Button } from '@shlinkio/shlink-frontend-kit/tailwind'; +import { useToggle } from '@shlinkio/shlink-frontend-kit'; +import { Button, Tooltip, useTooltip } from '@shlinkio/shlink-frontend-kit/tailwind'; import type { ChangeEvent, PropsWithChildren } from 'react'; -import { useCallback, useRef , useState } from 'react'; -import { UncontrolledTooltip } from 'reactstrap'; +import { useCallback, useRef, useState } from 'react'; import type { FCWithDeps } from '../../container/utils'; import { componentFactory, useDependencies } from '../../container/utils'; import type { ServerData, ServersMap, ServerWithId } from '../data'; @@ -38,9 +37,10 @@ const ImportServersBtn: FCWithDeps { const { ServersImporter: serversImporter } = useDependencies(ImportServersBtn); - const ref = useElementRef(); + const fileInputRef = useRef(null); + const { anchor, tooltip } = useTooltip({ placement: tooltipPlacement }); const [duplicatedServers, setDuplicatedServers] = useState([]); - const [isModalOpen,, showModal, hideModal] = useToggle(); + const { flag: isModalOpen, setToTrue: showModal, setToFalse: hideModal } = useToggle(false, true); const newServersCreatedRef = useRef(false); const onFile = useCallback( @@ -84,12 +84,12 @@ const ImportServersBtn: FCWithDeps - - + You can create servers by importing a CSV file with name, apiKey and url columns. - + diff --git a/test/servers/__snapshots__/ManageServersRow.test.tsx.snap b/test/servers/__snapshots__/ManageServersRow.test.tsx.snap index d30a8eea..0b14fc1f 100644 --- a/test/servers/__snapshots__/ManageServersRow.test.tsx.snap +++ b/test/servers/__snapshots__/ManageServersRow.test.tsx.snap @@ -28,7 +28,6 @@ exports[` > renders auto-connect icon only if server is auto data-icon="check" data-prefix="fas" focusable="false" - id="autoConnectIcon" role="img" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg"