diff --git a/src/app/components/DownloadButton.js b/src/app/components/DownloadButton.js index c2f4403e239599abc43d48c20e7e8bd56374681d..45d68e1fa5db2bf42f4d5c4f857b3551829db8ec 100644 --- a/src/app/components/DownloadButton.js +++ b/src/app/components/DownloadButton.js @@ -10,6 +10,9 @@ import { mecredURL, mecredURLv1 } from '@/axiosConfig'; */ export default function DownloadButton({ id, objects }) { + const pathAux = typeof window !== 'undefined' ? window.location.pathname : ''; + const path = pathAux.split('/')[1]; + const handleDownloadCollection = (e) => { e.preventDefault(); let zip = false; @@ -33,12 +36,14 @@ export default function DownloadButton({ id, objects }) { return ( <button id="Baixar" - className="p-2 text-sm outline outline-1 outline-ice-HC-white hover:text-darkGray-HC-dark text-darkGray-HC-white-underline bg-ice-HC-dark hover:bg-lightGray-HC-white rounded-xl max-md:my-3 font-bold normal-case flex items-center justify-center gap-2 md:px-3 md:py-2 md:w-32" + className={`p-2 text-sm outline outline-1 outline-ice-HC-white hover:text-darkGray-HC-dark text-darkGray-HC-white-underline bg-ice-HC-dark hover:bg-lightGray-HC-white rounded-xl font-bold normal-case flex items-center justify-center gap-2 md:px-3 md:py-2 max-lg:h-9 ${ + path === 'colecao' ? 'px-4' : 'w-9 lg:w-32' + }`} onClick={handleDownloadCollection} aria-label="Baixar" // Texto para leitores de tela > <DownloadOutlinedIcon /> {/* Ícone de download */} - <span className="hidden md:inline">Baixar</span> {/* Texto visível apenas em telas maiores */} + <span className={`${path === 'colecao' ? 'inline' : 'hidden lg:inline'}`}>Baixar</span> {/* Texto visível apenas em telas maiores */} </button> ); } diff --git a/src/app/components/ShareButton.js b/src/app/components/ShareButton.js index f2b32a48685df317afb5c4d0feebf5101bf19620..7ed7dba57cf3fa2e902bce065bcb19fe6d1539b6 100644 --- a/src/app/components/ShareButton.js +++ b/src/app/components/ShareButton.js @@ -12,7 +12,8 @@ export default function ShareButton({ type, id }) { const [shareOpen, setShareOpen] = useState(false); const baseUrl = typeof window !== 'undefined' ? window.location.origin : ''; - const link = `${baseUrl}/${type}/${id}`; // Gera o link dinâmico baseado no tipo e ID + const pathAux = typeof window !== 'undefined' ? window.location.pathname : ''; + const path = pathAux.split('/')[1]; return ( <> @@ -27,12 +28,16 @@ export default function ShareButton({ type, id }) { </button> ) : ( <button - className="p-2 text-sm outline outline-1 outline-ice-HC-white hover:text-darkGray-HC-dark text-darkGray-HC-white-underline bg-ice-HC-dark hover:bg-lightGray-HC-white rounded-xl font-bold normal-case flex items-center justify-center gap-2 md:w-36" + className={`p-2 text-sm outline outline-1 outline-ice-HC-white hover:text-darkGray-HC-dark text-darkGray-HC-white-underline bg-ice-HC-dark hover:bg-lightGray-HC-white rounded-xl font-bold normal-case flex items-center justify-center gap-2 max-lg:mb-2 max-lg:mr-2 max-lg:h-9 ${ + path === 'colecao' ? 'px-4' : 'w-9 lg:w-36' + }`} onClick={() => setShareOpen(true)} aria-label="Compartilhar" > <ShareOutlinedIcon fontSize="small" /> - <span className="hidden md:inline">Compartilhar</span> + <span className={`${path === 'colecao' ? 'inline' : 'hidden lg:inline'}`}> + Compartilhar + </span> </button> )} @@ -40,7 +45,8 @@ export default function ShareButton({ type, id }) { open={shareOpen} onClose={() => setShareOpen(false)} title={`Compartilhando ${type}`} - link={link} + type={type} + id={id} /> </> ); diff --git a/src/app/components/ShareModal.js b/src/app/components/ShareModal.js index d30c8c3f2f4e9e2fbe657edd96b5f03b720f9347..1ce83a62821825fc4fc6cd1df81208061bb07ba5 100644 --- a/src/app/components/ShareModal.js +++ b/src/app/components/ShareModal.js @@ -10,10 +10,10 @@ import SendOutlinedIcon from "@mui/icons-material/SendOutlined"; * @param {String} props.title Título do compartilhamento * @param {String} props.link URL a ser compartilhada */ -export default function ShareModal({ open, onClose, title, id }) { +export default function ShareModal({ open, onClose, title, type, id }) { const [clicked, setClicked] = useState(false); const baseUrl = typeof window !== 'undefined' ? window.location.origin : ''; - const link = `${baseUrl}/recurso/${id}`; // Gera o link dinâmico baseado no tipo e ID + const link = `${baseUrl}/${type}/${id}`; // Gera o link dinâmico baseado no tipo e ID useEffect(() => { setClicked(false); @@ -78,7 +78,7 @@ export default function ShareModal({ open, onClose, title, id }) { </div> <div className="flex justify-center"> <button - className="text-sm text-darkGray-HC-white-underline border-main rounded-lg normal-case h-9 font-bold bg-ice-HC-dark hover:bg-ice-HC-dark-hover" + className="text-sm text-darkGray-HC-white-underline border-main rounded-lg normal-case h-9 font-bold bg-ice-HC-dark hover:bg-lightGray-HC-white px-2 hover:text-darkGray-HC-dark-underline border border-ice-HC-white" onClick={() => { onClose(); setClicked(false); }} > Fechar diff --git a/src/app/components/publisherInfo.js b/src/app/components/publisherInfo.js index ffff4c6d7494a0cecae164b6b831fbf563643db1..0120f105e527077fc2ddb55bbb2620020c0bcbdf 100644 --- a/src/app/components/publisherInfo.js +++ b/src/app/components/publisherInfo.js @@ -70,7 +70,13 @@ export default function PublisherInfo({ publisher, disabledButton = false, userI className="m-4" /> ) : ( - <div className={`flex items-center justify-center text-xl m-2 font-bold text-ice-HC-dark rounded-full h-10 w-10 ${getRandomBg(publisher.id)}`} >{publisher.name[0]}</div> + <> + <div className="flex items-center space-x-2"> + <div className={`flex items-center justify-center text-xl font-bold text-ice-HC-dark rounded-full m-2 w-10 h-10 ${getRandomBg(publisher.id)}`} > + {publisher.name[0]} + </div> + </div> + </> )} <div className="flex flex-col justify-center p-1 text-darkGray-HC-white-underline truncate"> <div className="font-bold text-lg truncate sm:text-wrap"> diff --git a/src/app/perfil/[id]/components/EditCollectionButton.js b/src/app/perfil/[id]/components/EditCollectionButton.js index da8da03f1829bb202854586e62fcb86d5227e058..86b5747d80ea6eb506591f0b9e42ff59434d1aef 100644 --- a/src/app/perfil/[id]/components/EditCollectionButton.js +++ b/src/app/perfil/[id]/components/EditCollectionButton.js @@ -8,7 +8,7 @@ import EditOutlinedIcon from '@mui/icons-material/EditOutlined'; * @param {Number} collectionId ID da coleção a ser editada * @param {Number} CollectionData Dados da coleção */ -export default function EditCollectionButton({ collectionId, collectionData, collection, onUpdate }) { +export default function EditCollectionButton({ collectionId, collectionData, onUpdate }) { const [editOpen, setEditOpen] = useState(false); return ( @@ -16,12 +16,12 @@ export default function EditCollectionButton({ collectionId, collectionData, col <button className="p-2 text-sm outline outline-1 outline-ice-HC-white text-darkGray-HC-white-underline bg-ice-HC-dark hover:bg-lightGray-HC-white hover:text-darkGray-HC-dark-underline - rounded-xl font-bold normal-case flex items-center justify-center gap-2 md:w-32" + rounded-xl font-bold normal-case flex items-center justify-center gap-2 lg:w-32 max-lg:mr-1 w-9 max-lg:h-9" onClick={() => setEditOpen(true)} aria-label="Editar" > <EditOutlinedIcon fontSize="small" /> - <span className="hidden md:inline">Editar</span> + <span className="hidden lg:inline">Editar</span> </button> <EditCollectionModal diff --git a/src/app/perfil/[id]/components/ProfileCollections.js b/src/app/perfil/[id]/components/ProfileCollections.js index 7b12466427890ee18c0c05b8a6db6faeb560eb05..24c198732f018ff4152fd5dd2c433dc15689d739 100644 --- a/src/app/perfil/[id]/components/ProfileCollections.js +++ b/src/app/perfil/[id]/components/ProfileCollections.js @@ -200,12 +200,12 @@ export default function ProfileCollections({ id, idLogin }) { </div> {/* Botões */} - <div className="flex flex-row gap-2 justify-end"> + <div className="flex flex-row lg:gap-2 justify-end max-lg:w-24 max-lg:grid max-lg:grid-cols-2"> <DeleteCollectionModal open={deleteOpen} onClose={() => setDeleteOpen(false)} /> <DownloadButton id={item.id} objects={item.collection_items} /> <ShareButton id={item.id} type={'colecao'} /> {id === idLogin && ( - <div className="flex gap-2"> + <div className="flex lg:gap-2"> {/* Botão de Editar */} <EditCollectionButton collectionId={item.id} @@ -217,7 +217,7 @@ export default function ProfileCollections({ id, idLogin }) { <button className=" p-2 - max-md:my-3 + max-lg:w-9 max-lg:h-9 max-lg:ml-2 text-sm rounded-xl text-black-HC-white @@ -226,7 +226,8 @@ export default function ProfileCollections({ id, idLogin }) { flex justify-center items-center - gap-2 + gap-1 + lg:gap-2 hover:bg-red-HC-white hover:text-white-HC-dark" onClick={() => { diff --git a/src/app/recurso/[id]/components/actionButtons.js b/src/app/recurso/[id]/components/actionButtons.js index e593392758752c47500f906d18795f4159339aae..696a511ec6c4432f1aac97099e7e96840fe68403 100644 --- a/src/app/recurso/[id]/components/actionButtons.js +++ b/src/app/recurso/[id]/components/actionButtons.js @@ -189,12 +189,12 @@ export default function ActionButtons({ learningObject, setNeedLoginOpen, state </Button> ); - +console.log(learningObject) return ( <> <DeleteModal open={deleteOpen} onClose={() => setDeleteOpen(false)} idLogin={userData["id"]} resourceId={learningObject.id} /> <HomologationModal open={submitOpen} onClose={() => setSubmitOpen(false)} name={learningObject.name} id={learningObject.submission_id} setSubmitted={setSubmitted}/> - <ShareModal open={shareOpen} onClose={() => setShareOpen(false)} id={learningObject.id} /> + <ShareModal open={shareOpen} onClose={() => setShareOpen(false)} title='Compartilhando recurso' id={learningObject.id} type='recurso'/> <ReportModal learningObject={learningObject} open={reportOpen}