@uob-web-and-digital/component-library 0.0.85 → 0.0.86
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/atoms/Icons/Icons.d.ts +1 -1
- package/dist/components/molecules/FullModal/FullModal.d.ts +5 -1
- package/dist/components/molecules/ListingResultCard/Cards/CourseCard.d.ts +2 -1
- package/dist/components/molecules/ListingResultCard/ListingResultCard.stories.d.ts +1 -0
- package/dist/components/organisms/EmbedWrapper/EmbedWrapper.d.ts +2 -1
- package/dist/components/organisms/EmbedWrapper/EmbedWrapper.stories.d.ts +1 -0
- package/dist/components/organisms/LocationSection/LocationSection.d.ts +12 -0
- package/dist/components/organisms/LocationSection/LocationSection.stories.d.ts +10 -0
- package/dist/components/organisms/LocationSection/defaultProps.d.ts +2 -0
- package/dist/components/organisms/ModalCTA/ModalCTA.d.ts +14 -0
- package/dist/components/organisms/ModalCTA/ModalCTA.stories.d.ts +11 -0
- package/dist/components/organisms/ModalCTA/defaultProps.d.ts +2 -0
- package/dist/index.d.ts +25 -3
- package/dist/main.css +1 -1
- package/dist/main.js +4 -4
- package/dist/module.js +4 -4
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ReactElement } from 'react';
|
|
2
2
|
import { ThemeProps } from '../../../themeProps';
|
|
3
3
|
import './icons.scss';
|
|
4
|
-
export type IconType = 'twitter' | 'facebook' | 'wechat' | 'weibo' | 'youtube' | 'instagram' | 'linkedin' | 'tiktok' | 'chevron-down' | 'chevron-right' | 'arrow-right' | 'arrow-right-large' | 'location' | 'hamburger' | 'cross' | 'slim-cross' | 'arrow-left' | 'search' | 'arrow-down' | 'play' | 'person' | 'people' | 'computer' | 'book' | 'mortar-board' | 'document' | 'briefcase' | 'notepad' | 'external' | 'clearing-tick' | 'phone' | 'email' | 'quote-marks' | 'calendar' | 'clock' | 'internet' | 'slim-location' | 'bathroom' | 'catering' | 'pound' | 'scroll' | 'settings' | 'rocket' | 'staggered-arrow' | 'segmented-pie-chart' | 'home' | 'domain' | 'note-add' | 'flight' | 'one' | 'two' | 'one-two-three' | 'camping' | 'groups' | 'bed' | 'restaurant' | 'success' | 'warning-light' | 'warning-dark' | 'information' | 'star' | 'menu' | 'co-present' | 'assignment-add' | 'cast-for-education' | 'live-tv' | 'supervisor-account' | 'experiment';
|
|
4
|
+
export type IconType = 'twitter' | 'facebook' | 'wechat' | 'weibo' | 'youtube' | 'instagram' | 'linkedin' | 'tiktok' | 'chevron-down' | 'chevron-right' | 'arrow-right' | 'arrow-right-large' | 'location' | 'hamburger' | 'cross' | 'slim-cross' | 'arrow-left' | 'search' | 'arrow-down' | 'play' | 'person' | 'people' | 'computer' | 'book' | 'mortar-board' | 'document' | 'briefcase' | 'notepad' | 'external' | 'clearing-tick' | 'phone' | 'email' | 'quote-marks' | 'calendar' | 'clock' | 'internet' | 'slim-location' | 'bathroom' | 'catering' | 'pound' | 'scroll' | 'settings' | 'rocket' | 'staggered-arrow' | 'segmented-pie-chart' | 'home' | 'domain' | 'note-add' | 'flight' | 'one' | 'two' | 'one-two-three' | 'camping' | 'groups' | 'bed' | 'restaurant' | 'success' | 'warning-light' | 'warning-dark' | 'information' | 'star' | 'menu' | 'co-present' | 'assignment-add' | 'cast-for-education' | 'live-tv' | 'supervisor-account' | 'experiment' | 'footprint';
|
|
5
5
|
export type IconProps = {
|
|
6
6
|
/**
|
|
7
7
|
* The theme to use
|
|
@@ -22,8 +22,12 @@ export interface FullModalProps {
|
|
|
22
22
|
* Pass in the is open state
|
|
23
23
|
*/
|
|
24
24
|
isOpen: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Whether the modal should be placed in the centre
|
|
27
|
+
*/
|
|
28
|
+
centred?: boolean;
|
|
25
29
|
}
|
|
26
30
|
/**
|
|
27
31
|
* Primary UI component for user interaction
|
|
28
32
|
*/
|
|
29
|
-
export declare const FullModal: ({ theme, isOpen, closeModal, children }: FullModalProps) => ReactElement;
|
|
33
|
+
export declare const FullModal: ({ theme, isOpen, closeModal, children, centred }: FullModalProps) => ReactElement;
|
|
@@ -7,6 +7,7 @@ export interface CourseCardProps {
|
|
|
7
7
|
type: 'course';
|
|
8
8
|
image?: ImageProps;
|
|
9
9
|
title: string;
|
|
10
|
+
titleTag?: string;
|
|
10
11
|
url: string;
|
|
11
12
|
description?: string;
|
|
12
13
|
supervisors?: string;
|
|
@@ -14,4 +15,4 @@ export interface CourseCardProps {
|
|
|
14
15
|
details: Omit<SearchResultDetailProps, 'theme'>[];
|
|
15
16
|
showCategory?: boolean;
|
|
16
17
|
}
|
|
17
|
-
export default function CourseCard({ theme, type, image, title, url, description, supervisors, department, details, showCategory }: CourseCardProps): ReactElement;
|
|
18
|
+
export default function CourseCard({ theme, type, image, title, titleTag, url, description, supervisors, department, details, showCategory }: CourseCardProps): ReactElement;
|
|
@@ -14,5 +14,6 @@ export interface EmbedWrapperProps {
|
|
|
14
14
|
* The child components to show in the panel
|
|
15
15
|
*/
|
|
16
16
|
children: ReactNode;
|
|
17
|
+
fullWidth?: boolean;
|
|
17
18
|
}
|
|
18
|
-
export default function EmbedWrapper({ theme, inverse, children }: EmbedWrapperProps): ReactElement;
|
|
19
|
+
export default function EmbedWrapper({ theme, inverse, children, fullWidth }: EmbedWrapperProps): ReactElement;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ReactElement, ReactNode } from 'react';
|
|
2
|
+
import { ThemeProps } from '../../../themeProps';
|
|
3
|
+
import { GenericDetailProps } from '../../molecules/GenericDetail/GenericDetail';
|
|
4
|
+
import './LocationSection.scss';
|
|
5
|
+
export interface LocationSectionProps {
|
|
6
|
+
theme: ThemeProps;
|
|
7
|
+
embedChildren: ReactNode;
|
|
8
|
+
googleMapLink: string;
|
|
9
|
+
address: string[];
|
|
10
|
+
services?: Omit<GenericDetailProps, 'theme'>[];
|
|
11
|
+
}
|
|
12
|
+
export default function LocationSection({ theme, embedChildren, googleMapLink, address, services }: LocationSectionProps): ReactElement;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { StoryObj } from '@storybook/react';
|
|
2
|
+
import LocationSection from './LocationSection';
|
|
3
|
+
declare const meta: {
|
|
4
|
+
title: string;
|
|
5
|
+
component: typeof LocationSection;
|
|
6
|
+
tags: string[];
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
type Story = StoryObj<typeof meta>;
|
|
10
|
+
export declare const Default: Story;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ReactElement, ReactNode } from 'react';
|
|
2
|
+
import { ThemeProps } from '../../../themeProps';
|
|
3
|
+
import { HeadingProps } from '../../atoms/Heading/Heading';
|
|
4
|
+
import './modalCTA.scss';
|
|
5
|
+
export interface ModalCTAProps {
|
|
6
|
+
theme: ThemeProps;
|
|
7
|
+
heading: string;
|
|
8
|
+
inverse?: boolean;
|
|
9
|
+
description?: string;
|
|
10
|
+
buttonLabel: string;
|
|
11
|
+
modalChildren: ReactNode;
|
|
12
|
+
htmlTag?: HeadingProps['htmlTag'];
|
|
13
|
+
}
|
|
14
|
+
export default function ModalCTA({ theme, heading, inverse, description, buttonLabel, modalChildren, htmlTag }: ModalCTAProps): ReactElement;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { StoryObj } from '@storybook/react';
|
|
2
|
+
import ModalCTA from './ModalCTA';
|
|
3
|
+
declare const meta: {
|
|
4
|
+
title: string;
|
|
5
|
+
component: typeof ModalCTA;
|
|
6
|
+
tags: string[];
|
|
7
|
+
};
|
|
8
|
+
export default meta;
|
|
9
|
+
type Story = StoryObj<typeof meta>;
|
|
10
|
+
export declare const Dark: Story;
|
|
11
|
+
export declare const Light: Story;
|
package/dist/index.d.ts
CHANGED
|
@@ -363,7 +363,7 @@ interface ParagraphLinkProps {
|
|
|
363
363
|
externalLink?: boolean;
|
|
364
364
|
}
|
|
365
365
|
|
|
366
|
-
type IconType = 'twitter' | 'facebook' | 'wechat' | 'weibo' | 'youtube' | 'instagram' | 'linkedin' | 'tiktok' | 'chevron-down' | 'chevron-right' | 'arrow-right' | 'arrow-right-large' | 'location' | 'hamburger' | 'cross' | 'slim-cross' | 'arrow-left' | 'search' | 'arrow-down' | 'play' | 'person' | 'people' | 'computer' | 'book' | 'mortar-board' | 'document' | 'briefcase' | 'notepad' | 'external' | 'clearing-tick' | 'phone' | 'email' | 'quote-marks' | 'calendar' | 'clock' | 'internet' | 'slim-location' | 'bathroom' | 'catering' | 'pound' | 'scroll' | 'settings' | 'rocket' | 'staggered-arrow' | 'segmented-pie-chart' | 'home' | 'domain' | 'note-add' | 'flight' | 'one' | 'two' | 'one-two-three' | 'camping' | 'groups' | 'bed' | 'restaurant' | 'success' | 'warning-light' | 'warning-dark' | 'information' | 'star' | 'menu' | 'co-present' | 'assignment-add' | 'cast-for-education' | 'live-tv' | 'supervisor-account' | 'experiment';
|
|
366
|
+
type IconType = 'twitter' | 'facebook' | 'wechat' | 'weibo' | 'youtube' | 'instagram' | 'linkedin' | 'tiktok' | 'chevron-down' | 'chevron-right' | 'arrow-right' | 'arrow-right-large' | 'location' | 'hamburger' | 'cross' | 'slim-cross' | 'arrow-left' | 'search' | 'arrow-down' | 'play' | 'person' | 'people' | 'computer' | 'book' | 'mortar-board' | 'document' | 'briefcase' | 'notepad' | 'external' | 'clearing-tick' | 'phone' | 'email' | 'quote-marks' | 'calendar' | 'clock' | 'internet' | 'slim-location' | 'bathroom' | 'catering' | 'pound' | 'scroll' | 'settings' | 'rocket' | 'staggered-arrow' | 'segmented-pie-chart' | 'home' | 'domain' | 'note-add' | 'flight' | 'one' | 'two' | 'one-two-three' | 'camping' | 'groups' | 'bed' | 'restaurant' | 'success' | 'warning-light' | 'warning-dark' | 'information' | 'star' | 'menu' | 'co-present' | 'assignment-add' | 'cast-for-education' | 'live-tv' | 'supervisor-account' | 'experiment' | 'footprint';
|
|
367
367
|
type IconProps = {
|
|
368
368
|
/**
|
|
369
369
|
* The theme to use
|
|
@@ -464,8 +464,9 @@ interface EmbedWrapperProps {
|
|
|
464
464
|
* The child components to show in the panel
|
|
465
465
|
*/
|
|
466
466
|
children: ReactNode;
|
|
467
|
+
fullWidth?: boolean;
|
|
467
468
|
}
|
|
468
|
-
declare function EmbedWrapper({ theme, inverse, children }: EmbedWrapperProps): ReactElement;
|
|
469
|
+
declare function EmbedWrapper({ theme, inverse, children, fullWidth }: EmbedWrapperProps): ReactElement;
|
|
469
470
|
|
|
470
471
|
interface CardFactProps {
|
|
471
472
|
theme: ThemeProps;
|
|
@@ -989,6 +990,7 @@ interface CourseCardProps {
|
|
|
989
990
|
type: 'course';
|
|
990
991
|
image?: ImageProps;
|
|
991
992
|
title: string;
|
|
993
|
+
titleTag?: string;
|
|
992
994
|
url: string;
|
|
993
995
|
description?: string;
|
|
994
996
|
supervisors?: string;
|
|
@@ -1564,4 +1566,24 @@ interface ScrollableTableProps extends RichTextProps {
|
|
|
1564
1566
|
}
|
|
1565
1567
|
declare function ScrollableTable({ text, theme, inverse, fullWidth, removeBottomPadding, tableCategory }: ScrollableTableProps): ReactElement;
|
|
1566
1568
|
|
|
1567
|
-
|
|
1569
|
+
interface ModalCTAProps {
|
|
1570
|
+
theme: ThemeProps;
|
|
1571
|
+
heading: string;
|
|
1572
|
+
inverse?: boolean;
|
|
1573
|
+
description?: string;
|
|
1574
|
+
buttonLabel: string;
|
|
1575
|
+
modalChildren: ReactNode;
|
|
1576
|
+
htmlTag?: HeadingProps$1['htmlTag'];
|
|
1577
|
+
}
|
|
1578
|
+
declare function ModalCTA({ theme, heading, inverse, description, buttonLabel, modalChildren, htmlTag }: ModalCTAProps): ReactElement;
|
|
1579
|
+
|
|
1580
|
+
interface LocationSectionProps {
|
|
1581
|
+
theme: ThemeProps;
|
|
1582
|
+
embedChildren: ReactNode;
|
|
1583
|
+
googleMapLink: string;
|
|
1584
|
+
address: string[];
|
|
1585
|
+
services?: Omit<GenericDetailProps, 'theme'>[];
|
|
1586
|
+
}
|
|
1587
|
+
declare function LocationSection({ theme, embedChildren, googleMapLink, address, services }: LocationSectionProps): ReactElement;
|
|
1588
|
+
|
|
1589
|
+
export { Accordion, type AccordionProps, type AccreditationPromotionProps, AcreditationPromotion, AlertBanner, type AlertBannerProps, AnchorTarget, type AnchorTargetProps, Breadcrumbs, type BreadcrumbsProps, CTAComponent, type CTAComponentProps, Carousel, type CarouselProps, type CenterWrapperProps, CenterWrapper as CentreWrapper, ClearingBanner, type ClearingBannerProps, CourseDeliveryPills, type CourseDeliveryPillsProps, EmbedWrapper, type EmbedWrapperProps, FactBoxes, type FactBoxesProps, FeaturedContent, type FeaturedContentProps, FeaturedSignpost, type FeaturedSignpostProps, FeaturedVideo, type FeaturedVideoProps, FiveArticlesGrid, type FiveArticlesGridProps, Footer, type FooterProps, GeneralSearchFilter, type GeneralSearchFilterProps, GenericDetailSection, type GenericDetailSectionProps, Header, type HeaderProps, Hero, HeroArticle, type HeroArticleProps, HeroCarousel, type HeroCarouselProps, HeroCourses, type HeroCoursesProps, type HeroProps, ImageBlock, type ImageBlockProps, ImageCarousel, type ImageCarouselProps, InPageNavigation, type InPageNavigationProps, IntroText, type IntroTextProps, LeadNewsArticles, type LeadNewsArticlesProps, ListingFilterWrapper, type ListingFilterWrapperProps, ListingResults, ListingResultsCount, type ListingResultsCountProps, type ListingResultsProps, LocationSection, type LocationSectionProps, LocationSelector, type LocationSelectorProps, MainWrapper, type MainWrapperProps, ModalCTA, type ModalCTAProps, NewsArticlesPromoBlock, type NewsArticlesPromoBlockProps, Pagination, type PaginationProps, PromoBlock, PromoBlockGrid, type PromoBlockProps$1 as PromoBlockProps, QuoteBlock, type QuoteBlockProps, RelatedCourses, type RelatedCoursesProps, ResearchStoryCarousel, type ResearchStoryCarouselProps, RichText, type RichTextProps, ScrollableTable, ScrollableTableCategory, type ScrollableTableProps, SearchCourses, type SearchCoursesProps, SidebarWrapper, type SidebarWrapperProps, SignPost, type SignPostProps, SingleButton, type SingleButtonProps, SkipToContent, type SkipToContentProps, StaffListingCarousel, type StaffListingCarouselProps, StandardListingFilter, type StandardListingFilterProps, TabsBlock, type TabsBlockProps, TextWithBackground, type TextWithBackgroundProps, TopicSelector, type TopicSelectorProps, VideoCardComponent, type VideoCardComponentProps, VideoEmbed, type VideoEmbedProps };
|