Files
UT-Registration-Plus/src/views/components/calendar/ImportantLinks.tsx
Ethan Lanting be1dccfcb9 feat: add dining app promo (#598)
* feat: add DiningAppPromo component and integrate it into Calendar

* feat: update WhatsNewPopup with new features and app download link

* fix: remove outdated links

* chore: run lint

* chore: run prettier

* feat: enhance DiningAppPromo with close button and integrate user preference for promo visibility

* chore: run lint

* chore: run check types

* fix: correct promo visibility logic in Calendar component

* feat: centralize app store URLs in appUrls.ts

* chore: run lint

* feat: integrate UT Dining promo image

* chore: run lint

* fix: update logo in WhatsNew popup to use LD icon

* fix: convert URLs to URL objects for consistency

* fix: update LD icon in WhatsNew popup to new version

* fix: update description for Coffee Shops feature to clarify operating times

* fix: rename promo state and storage key to showUTDiningPromo for clarity

---------

Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
2025-05-28 20:13:45 -05:00

69 lines
1.9 KiB
TypeScript

import { ArrowUpRight } from '@phosphor-icons/react';
import Text from '@views/components/common/Text/Text';
import clsx from 'clsx';
import React from 'react';
type Props = {
className?: string;
};
interface LinkItem {
text: string;
url: string;
}
const links: LinkItem[] = [
// {
// text: "Spring '25 Course Schedule",
// url: 'https://utdirect.utexas.edu/apps/registrar/course_schedule/20252/',
// },
{
text: 'Course Schedule Archives',
url: 'https://registrar.utexas.edu/schedules/archive',
},
// {
// text: "Summer '24 Course Schedule",
// url: 'https://utdirect.utexas.edu/apps/registrar/course_schedule/20246/',
// },
{
text: "'24-'25 Academic Calendar",
url: 'https://registrar.utexas.edu/calendars/24-25',
},
{
text: 'Registration Info Sheet',
url: 'https://utdirect.utexas.edu/registrar/ris.WBX',
},
{
text: 'Register for Courses',
url: 'https://utdirect.utexas.edu/registration/chooseSemester.WBX',
},
{
text: 'Degree Audit',
url: 'https://utdirect.utexas.edu/apps/degree/audits/',
},
];
/**
* The "Important Links" section of the calendar website
* @returns
*/
export default function ImportantLinks({ className }: Props): JSX.Element {
return (
<article className={clsx(className, 'flex flex-col gap-2')}>
<Text variant='h3'>Useful Links</Text>
{links.map(link => (
<a
key={link.text}
href={link.url}
className='flex items-center gap-0.5 text-ut-burntorange underline-offset-2 hover:underline'
target='_blank'
rel='noreferrer'
>
<Text variant='p'>{link.text}</Text>
<ArrowUpRight className='h-4 w-4' />
</a>
))}
</article>
);
}