UNPKG

@veracity/vui

Version:

Veracity UI is a React component library crafted for use within Veracity applications and pages. Based on Styled Components and @xstyled.

57 lines (56 loc) 2.24 kB
import { ThemingProps } from "../theme/types.js"; import "../theme/index.js"; import { BoxProps } from "../box/box.types.js"; import "../box/index.js"; import { JSX } from "react"; //#region src/footer/footer.types.d.ts /** Column consists of one ore more sections with a heading and links. */ type FooterColumnData = FooterSectionData[]; type FooterColumnProps = BoxProps & { /** Data structure for sections and links */ sections?: FooterSectionData[]; }; type FooterColumnsProps = BoxProps & { columns?: FooterColumnData[]; }; type FooterContentProps = BoxProps; type FooterContext = Pick<FooterProps, 'size' | 'variant'>; /** Link includes the label text and URL address. */ type FooterLinkData = { /** Unique name that identifies a link in the links dictionary. */ id?: string; text: string; url?: string; target?: '_blank' | '_self' | '_parent' | '_top'; items?: FooterLinkData[]; }; type FooterProps = Omit<BoxProps, 'size' | 'variant'> & ThemingProps<'Footer'> & Pick<FooterTrademarkProps, 'linkedIn'> & { applicationLinks?: FooterLinkData[]; applicationSocialLinks?: FooterLinkData[]; applicationStaticItems?: string[]; /** Data defining content of multiple columns. */ columns?: FooterColumnData[]; isApplication?: boolean; isSlim?: boolean; isDNV?: boolean; }; type ApplicationFooterProps = Omit<FooterProps, 'isApplication' | 'isSlim'> & {}; /** Section consists of multiple links with text (label) and url */ type FooterSectionData = { heading?: string; /** Array of objects defining each link. */ links?: FooterLinkData[]; }; type FooterSectionProps = BoxProps & { /** Socket for a heading on top of the section. */ heading?: FooterSectionData['heading'] | JSX.Element; /** Socket for a list of links below the heading. */ links?: FooterSectionData['links'] | JSX.Element; }; type FooterTrademarkProps = BoxProps & { /** Url provided to the LinkedIn icon in the Trademark section. */ linkedIn?: string; }; //#endregion export { ApplicationFooterProps, FooterColumnData, FooterColumnProps, FooterColumnsProps, FooterContentProps, FooterContext, FooterLinkData, FooterProps, FooterSectionData, FooterSectionProps, FooterTrademarkProps }; //# sourceMappingURL=footer.types.d.ts.map