|
1 | 1 | <script lang="ts"> |
| 2 | + import classNames from 'classnames'; |
2 | 3 | import type { SocialMediaLinkType, SocialMediaType, SiteType } from '../types'; |
3 | 4 | export let site: SiteType; |
4 | 5 | export let links: SocialMediaLinkType[]; |
|
7 | 8 | export let divClass: string = 'md:flex md:justify-between'; |
8 | 9 | export let divClass2: string = 'mb-6 md:mb-0'; |
9 | 10 | export let siteLinkClass: string = 'flex items-center'; |
10 | | - export let siteNameSpanClass: string = 'self-center text-2xl font-semibold whitespace-nowrap dark:text-white'; |
| 11 | + export let siteNameSpanClass: string = |
| 12 | + 'self-center text-2xl font-semibold whitespace-nowrap dark:text-white'; |
11 | 13 | export let imgClass: string = 'mr-3 h-8'; |
12 | 14 | export let linksDivClass: string = 'grid grid-cols-2 gap-8 sm:gap-6 sm:grid-cols-3'; |
13 | | - export let parentClass: string = 'mb-6 text-sm font-semibold text-gray-900 uppercase dark:text-white'; |
| 15 | + export let parentClass: string = |
| 16 | + 'mb-6 text-sm font-semibold text-gray-900 uppercase dark:text-white'; |
14 | 17 | export let ulClass: string = 'text-gray-600 dark:text-gray-400'; |
15 | 18 | export let liClass: string = 'mb-4'; |
16 | 19 | export let linkClass: string = 'hover:underline'; |
17 | 20 | export let hrClass: string = 'my-6 border-gray-200 sm:mx-auto dark:border-gray-700 lg:my-8'; |
18 | 21 | export let copyrightDivClass: string = 'sm:flex sm:items-center sm:justify-between'; |
19 | 22 | export let copyrightClass: string = 'text-sm text-gray-500 sm:text-center dark:text-gray-400'; |
20 | 23 | export let socialMediaDivClass: string = 'flex mt-4 space-x-6 sm:justify-center sm:mt-0'; |
21 | | - export let socialMediaLinkClass: string = 'text-gray-500 hover:text-gray-900 dark:hover:text-white'; |
| 24 | + export let socialMediaLinkClass: string = |
| 25 | + 'text-gray-500 hover:text-gray-900 dark:hover:text-white'; |
22 | 26 | export let iconClass: string = 'h-5 w-5 mr-2'; |
23 | 27 | export let copyrightYear: string = '© 2022'; |
24 | 28 | export let allRightsReserved: string = 'All Rights Reserved.'; |
25 | 29 | </script> |
26 | 30 |
|
27 | | -<footer class="{footerClass} {$$props.class ? $$props.class : ''}"> |
| 31 | +<footer class={classNames(footerClass, $$props.class)}> |
28 | 32 | <div class={divClass}> |
29 | 33 | <div class={divClass2}> |
30 | 34 | <a href={site.href} class={siteLinkClass}> |
31 | 35 | <img src={site.img} class={imgClass} alt={site.name} /> |
32 | 36 | <span class={siteNameSpanClass}>{site.name}</span> |
33 | 37 | </a> |
| 38 | + <slot /> |
34 | 39 | </div> |
35 | 40 | <div class={linksDivClass}> |
36 | 41 | {#each links as { parent, children }} |
|
0 commit comments