@ilo-org/react 0.13.0 → 0.14.1

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.
Files changed (290) hide show
  1. package/lib/cjs/components/Cards/CardGroup/CardGroup.js +0 -1
  2. package/lib/cjs/components/Cards/CardGroup/index.js +197 -160
  3. package/lib/cjs/components/Cards/FactlistCard/FactListCard.js +0 -1
  4. package/lib/cjs/components/Cards/FactlistCard/index.js +0 -1
  5. package/lib/cjs/components/Cards/TextCard/TextCard.js +1 -1
  6. package/lib/cjs/components/List/List.js +9 -11
  7. package/lib/cjs/components/List/ListItem.js +4 -7
  8. package/lib/cjs/components/List/index.js +1 -2
  9. package/lib/cjs/components/index.js +0 -1
  10. package/lib/cjs/index.js +0 -1
  11. package/lib/esm/components/Cards/CardGroup/CardGroup.js +0 -1
  12. package/lib/esm/components/Cards/CardGroup/index.js +197 -160
  13. package/lib/esm/components/Cards/FactlistCard/FactListCard.js +0 -1
  14. package/lib/esm/components/Cards/FactlistCard/index.js +0 -1
  15. package/lib/esm/components/Cards/TextCard/TextCard.js +1 -1
  16. package/lib/esm/components/List/List.js +10 -12
  17. package/lib/esm/components/List/ListItem.js +4 -7
  18. package/lib/esm/components/List/index.js +1 -2
  19. package/lib/esm/components/index.js +0 -1
  20. package/lib/esm/index.js +0 -1
  21. package/lib/types/react/src/components/List/List.props.d.ts +2 -9
  22. package/lib/types/react/src/components/List/ListItem.props.d.ts +0 -6
  23. package/lib/types/react/src/types/index.d.ts +0 -2
  24. package/package.json +35 -12
  25. package/.eslintrc.cjs +0 -39
  26. package/CHANGELOG.md +0 -858
  27. package/lib/cjs/ListCtx-14aa546f.js +0 -9
  28. package/lib/esm/ListCtx-da435fdf.js +0 -6
  29. package/lib/types/react/src/components/List/ListCtx.d.ts +0 -4
  30. package/rollup.config.mjs +0 -70
  31. package/src/components/Accordion/Accordion.args.ts +0 -16
  32. package/src/components/Accordion/Accordion.props.ts +0 -41
  33. package/src/components/Accordion/Accordion.tsx +0 -62
  34. package/src/components/Accordion/AccordionButton.props.ts +0 -13
  35. package/src/components/Accordion/AccordionButton.tsx +0 -58
  36. package/src/components/Accordion/AccordionCtx.ts +0 -9
  37. package/src/components/Accordion/AccordionItem.props.ts +0 -25
  38. package/src/components/Accordion/AccordionItem.tsx +0 -27
  39. package/src/components/Accordion/AccordionPanel.props.ts +0 -25
  40. package/src/components/Accordion/AccordionPanel.tsx +0 -46
  41. package/src/components/Accordion/index.ts +0 -4
  42. package/src/components/Breadcrumb/Breadcrumb.args.ts +0 -61
  43. package/src/components/Breadcrumb/Breadcrumb.props.ts +0 -13
  44. package/src/components/Breadcrumb/Breadcrumb.tsx +0 -82
  45. package/src/components/Breadcrumb/index.ts +0 -1
  46. package/src/components/Button/Button.args.ts +0 -35
  47. package/src/components/Button/Button.props.ts +0 -89
  48. package/src/components/Button/Button.tsx +0 -77
  49. package/src/components/Button/index.ts +0 -2
  50. package/src/components/Callout/Callout.args.ts +0 -38
  51. package/src/components/Callout/Callout.props.ts +0 -60
  52. package/src/components/Callout/Callout.tsx +0 -80
  53. package/src/components/Callout/index.ts +0 -2
  54. package/src/components/Cards/CardGroup/CardGroup.args.ts +0 -768
  55. package/src/components/Cards/CardGroup/CardGroup.props.ts +0 -78
  56. package/src/components/Cards/CardGroup/CardGroup.tsx +0 -54
  57. package/src/components/Cards/CardGroup/index.tsx +0 -3
  58. package/src/components/Cards/DataCard/DataCard.args.ts +0 -69
  59. package/src/components/Cards/DataCard/DataCard.props.ts +0 -60
  60. package/src/components/Cards/DataCard/DataCard.tsx +0 -107
  61. package/src/components/Cards/DataCard/index.tsx +0 -3
  62. package/src/components/Cards/DetailCard/DetailCard.args.ts +0 -17
  63. package/src/components/Cards/DetailCard/DetailCard.props.ts +0 -43
  64. package/src/components/Cards/DetailCard/DetailCard.tsx +0 -62
  65. package/src/components/Cards/DetailCard/index.tsx +0 -3
  66. package/src/components/Cards/FactlistCard/FactListCard.args.ts +0 -14
  67. package/src/components/Cards/FactlistCard/FactListCard.props.ts +0 -19
  68. package/src/components/Cards/FactlistCard/FactListCard.tsx +0 -42
  69. package/src/components/Cards/FactlistCard/index.tsx +0 -3
  70. package/src/components/Cards/FeatureCard/FeatureCard.args.ts +0 -30
  71. package/src/components/Cards/FeatureCard/FeatureCard.props.ts +0 -38
  72. package/src/components/Cards/FeatureCard/FeatureCard.tsx +0 -69
  73. package/src/components/Cards/FeatureCard/index.tsx +0 -3
  74. package/src/components/Cards/MultilinkCard/MultiLinkCard.tsx +0 -76
  75. package/src/components/Cards/MultilinkCard/MultilinkCard.args.ts +0 -33
  76. package/src/components/Cards/MultilinkCard/MultilinkCard.props.ts +0 -30
  77. package/src/components/Cards/MultilinkCard/index.tsx +0 -3
  78. package/src/components/Cards/PromoCard/PromoCard.args.ts +0 -19
  79. package/src/components/Cards/PromoCard/PromoCard.props.ts +0 -36
  80. package/src/components/Cards/PromoCard/PromoCard.tsx +0 -60
  81. package/src/components/Cards/PromoCard/index.tsx +0 -3
  82. package/src/components/Cards/StatCard/StatCard.args.ts +0 -14
  83. package/src/components/Cards/StatCard/StatCard.props.ts +0 -21
  84. package/src/components/Cards/StatCard/StatCard.tsx +0 -36
  85. package/src/components/Cards/StatCard/index.tsx +0 -3
  86. package/src/components/Cards/TextCard/TextCard.args.ts +0 -21
  87. package/src/components/Cards/TextCard/TextCard.props.ts +0 -32
  88. package/src/components/Cards/TextCard/TextCard.tsx +0 -62
  89. package/src/components/Cards/TextCard/index.tsx +0 -3
  90. package/src/components/Checkbox/Checkbox.args.ts +0 -42
  91. package/src/components/Checkbox/Checkbox.props.ts +0 -5
  92. package/src/components/Checkbox/Checkbox.tsx +0 -94
  93. package/src/components/Checkbox/index.ts +0 -2
  94. package/src/components/Collapse/Collapse.props.ts +0 -92
  95. package/src/components/Collapse/Collapse.tsx +0 -130
  96. package/src/components/Collapse/index.ts +0 -1
  97. package/src/components/ContextMenu/ContextMenu.args.ts +0 -62
  98. package/src/components/ContextMenu/ContextMenu.props.ts +0 -28
  99. package/src/components/ContextMenu/ContextMenu.tsx +0 -32
  100. package/src/components/ContextMenu/index.ts +0 -1
  101. package/src/components/Credit/Credit.args.ts +0 -14
  102. package/src/components/Credit/Credit.props.ts +0 -11
  103. package/src/components/Credit/Credit.tsx +0 -41
  104. package/src/components/Credit/index.ts +0 -1
  105. package/src/components/DatePicker/DatePicker.args.ts +0 -56
  106. package/src/components/DatePicker/DatePicker.props.ts +0 -26
  107. package/src/components/DatePicker/DatePicker.tsx +0 -80
  108. package/src/components/DatePicker/index.ts +0 -1
  109. package/src/components/Dropdown/Dropdown.args.ts +0 -70
  110. package/src/components/Dropdown/Dropdown.props.ts +0 -53
  111. package/src/components/Dropdown/Dropdown.tsx +0 -95
  112. package/src/components/Dropdown/index.ts +0 -1
  113. package/src/components/Empty/Empty.props.ts +0 -13
  114. package/src/components/Empty/Empty.tsx +0 -16
  115. package/src/components/Empty/index.ts +0 -1
  116. package/src/components/Fieldset/Fieldset.props.ts +0 -33
  117. package/src/components/Fieldset/Fieldset.tsx +0 -96
  118. package/src/components/Fieldset/index.ts +0 -1
  119. package/src/components/FileUpload/FileUpload.args.ts +0 -60
  120. package/src/components/FileUpload/FileUpload.props.ts +0 -21
  121. package/src/components/FileUpload/FileUpload.tsx +0 -116
  122. package/src/components/FileUpload/index.ts +0 -1
  123. package/src/components/Footer/Footer.args.ts +0 -74
  124. package/src/components/Footer/Footer.props.ts +0 -60
  125. package/src/components/Footer/Footer.tsx +0 -99
  126. package/src/components/Footer/index.ts +0 -1
  127. package/src/components/Form/Form.args.ts +0 -5
  128. package/src/components/Form/Form.props.ts +0 -8
  129. package/src/components/Form/Form.tsx +0 -23
  130. package/src/components/Form/index.ts +0 -2
  131. package/src/components/FormControl/FormControl.props.ts +0 -72
  132. package/src/components/FormControl/FormControl.tsx +0 -169
  133. package/src/components/FormControl/index.ts +0 -2
  134. package/src/components/FormElement/FormElement.props.ts +0 -60
  135. package/src/components/FormElement/FormElement.tsx +0 -19
  136. package/src/components/FormElement/index.ts +0 -1
  137. package/src/components/GlobalProvider/GlobalCtx.ts +0 -6
  138. package/src/components/GlobalProvider/GlobalProvider.props.ts +0 -15
  139. package/src/components/GlobalProvider/GlobalProvider.tsx +0 -21
  140. package/src/components/GlobalProvider/index.ts +0 -2
  141. package/src/components/Heading/Heading.args.ts +0 -49
  142. package/src/components/Heading/Heading.props.ts +0 -24
  143. package/src/components/Heading/Heading.tsx +0 -28
  144. package/src/components/Heading/index.ts +0 -1
  145. package/src/components/Hero/Hero.args.ts +0 -136
  146. package/src/components/Hero/Hero.props.ts +0 -62
  147. package/src/components/Hero/Hero.tsx +0 -94
  148. package/src/components/Hero/HeroCard.props.ts +0 -54
  149. package/src/components/Hero/HeroCard.tsx +0 -65
  150. package/src/components/Hero/index.ts +0 -2
  151. package/src/components/Icon/Icon.args.ts +0 -15
  152. package/src/components/Icon/Icon.props.ts +0 -16
  153. package/src/components/Icon/Icon.tsx +0 -25
  154. package/src/components/Icon/index.ts +0 -1
  155. package/src/components/Image/Image.args.ts +0 -29
  156. package/src/components/Image/Image.props.ts +0 -43
  157. package/src/components/Image/Image.tsx +0 -51
  158. package/src/components/Image/index.ts +0 -1
  159. package/src/components/Input/Input.args.ts +0 -139
  160. package/src/components/Input/Input.props.ts +0 -65
  161. package/src/components/Input/Input.tsx +0 -65
  162. package/src/components/Input/index.ts +0 -1
  163. package/src/components/Link/Link.props.ts +0 -39
  164. package/src/components/Link/Link.tsx +0 -42
  165. package/src/components/Link/index.ts +0 -1
  166. package/src/components/LinkList/LinkList.args.ts +0 -193
  167. package/src/components/LinkList/LinkList.props.ts +0 -52
  168. package/src/components/LinkList/LinkList.tsx +0 -59
  169. package/src/components/LinkList/index.ts +0 -1
  170. package/src/components/List/List.args.ts +0 -34
  171. package/src/components/List/List.props.ts +0 -37
  172. package/src/components/List/List.tsx +0 -41
  173. package/src/components/List/ListCtx.ts +0 -7
  174. package/src/components/List/ListItem.props.ts +0 -25
  175. package/src/components/List/ListItem.tsx +0 -22
  176. package/src/components/List/index.ts +0 -2
  177. package/src/components/Loading/Loading.args.ts +0 -55
  178. package/src/components/Loading/Loading.props.ts +0 -23
  179. package/src/components/Loading/Loading.tsx +0 -24
  180. package/src/components/Loading/index.ts +0 -1
  181. package/src/components/LocalNav/LocalNav.args.ts +0 -64
  182. package/src/components/LocalNav/LocalNav.props.ts +0 -56
  183. package/src/components/LocalNav/LocalNav.tsx +0 -181
  184. package/src/components/LocalNav/index.ts +0 -1
  185. package/src/components/Logo/Logo.args.ts +0 -45
  186. package/src/components/Logo/Logo.props.ts +0 -67
  187. package/src/components/Logo/Logo.tsx +0 -247
  188. package/src/components/Logo/index.ts +0 -1
  189. package/src/components/LogoGrid/LogoGrid.args.ts +0 -50
  190. package/src/components/LogoGrid/LogoGrid.props.ts +0 -28
  191. package/src/components/LogoGrid/LogoGrid.tsx +0 -53
  192. package/src/components/LogoGrid/index.ts +0 -1
  193. package/src/components/Navigation/Navigation.args.ts +0 -113
  194. package/src/components/Navigation/Navigation.props.ts +0 -120
  195. package/src/components/Navigation/Navigation.tsx +0 -246
  196. package/src/components/Navigation/index.ts +0 -1
  197. package/src/components/Notification/Notification.args.ts +0 -157
  198. package/src/components/Notification/Notification.props.ts +0 -67
  199. package/src/components/Notification/Notification.tsx +0 -78
  200. package/src/components/Notification/index.ts +0 -1
  201. package/src/components/NumberPicker/NumberPicker.args.ts +0 -50
  202. package/src/components/NumberPicker/NumberPicker.props.ts +0 -26
  203. package/src/components/NumberPicker/NumberPicker.tsx +0 -88
  204. package/src/components/NumberPicker/index.ts +0 -1
  205. package/src/components/Pagination/Pagination.args.ts +0 -43
  206. package/src/components/Pagination/Pagination.props.ts +0 -66
  207. package/src/components/Pagination/Pagination.tsx +0 -115
  208. package/src/components/Pagination/index.ts +0 -1
  209. package/src/components/Profile/Profile.args.ts +0 -58
  210. package/src/components/Profile/Profile.props.ts +0 -55
  211. package/src/components/Profile/Profile.tsx +0 -51
  212. package/src/components/Profile/index.ts +0 -1
  213. package/src/components/Radio/Radio.args.ts +0 -15
  214. package/src/components/Radio/Radio.props.ts +0 -6
  215. package/src/components/Radio/Radio.tsx +0 -102
  216. package/src/components/Radio/index.ts +0 -2
  217. package/src/components/ReadMore/ReadMore.args.ts +0 -23
  218. package/src/components/ReadMore/ReadMore.props.ts +0 -38
  219. package/src/components/ReadMore/ReadMore.tsx +0 -55
  220. package/src/components/ReadMore/index.ts +0 -1
  221. package/src/components/RichText/RichText.props.ts +0 -11
  222. package/src/components/RichText/RichText.tsx +0 -22
  223. package/src/components/RichText/index.ts +0 -1
  224. package/src/components/RichText/richText.args.ts +0 -38
  225. package/src/components/SearchField/SearchField.args.ts +0 -73
  226. package/src/components/SearchField/SearchField.props.ts +0 -35
  227. package/src/components/SearchField/SearchField.tsx +0 -83
  228. package/src/components/SearchField/index.ts +0 -1
  229. package/src/components/SocialMedia/SocialMedia.args.ts +0 -54
  230. package/src/components/SocialMedia/SocialMedia.props.ts +0 -45
  231. package/src/components/SocialMedia/SocialMedia.tsx +0 -46
  232. package/src/components/SocialMedia/index.ts +0 -3
  233. package/src/components/TableOfContents/TableOfContents.args.ts +0 -35
  234. package/src/components/TableOfContents/TableOfContents.props.ts +0 -23
  235. package/src/components/TableOfContents/TableOfContents.tsx +0 -32
  236. package/src/components/TableOfContents/index.ts +0 -1
  237. package/src/components/Tabs/Tabs.args.tsx +0 -201
  238. package/src/components/Tabs/Tabs.props.ts +0 -13
  239. package/src/components/Tabs/Tabs.tsx +0 -60
  240. package/src/components/Tabs/index.ts +0 -1
  241. package/src/components/Tag/Tag.args.ts +0 -15
  242. package/src/components/Tag/Tag.props.ts +0 -34
  243. package/src/components/Tag/Tag.tsx +0 -104
  244. package/src/components/Tag/TagCtx.ts +0 -4
  245. package/src/components/Tag/TagSet.args.ts +0 -37
  246. package/src/components/Tag/TagSet.props.ts +0 -37
  247. package/src/components/Tag/TagSet.tsx +0 -61
  248. package/src/components/Tag/index.ts +0 -2
  249. package/src/components/TextInput/TextInput.args.ts +0 -75
  250. package/src/components/TextInput/TextInput.props.ts +0 -20
  251. package/src/components/TextInput/TextInput.tsx +0 -71
  252. package/src/components/TextInput/index.ts +0 -2
  253. package/src/components/Textarea/Textarea.args.ts +0 -34
  254. package/src/components/Textarea/Textarea.props.ts +0 -45
  255. package/src/components/Textarea/Textarea.tsx +0 -52
  256. package/src/components/Textarea/index.ts +0 -3
  257. package/src/components/Toggle/Toggle.args.ts +0 -62
  258. package/src/components/Toggle/Toggle.props.ts +0 -27
  259. package/src/components/Toggle/Toggle.tsx +0 -85
  260. package/src/components/Toggle/index.ts +0 -3
  261. package/src/components/Tooltip/Tooltip.args.ts +0 -39
  262. package/src/components/Tooltip/Tooltip.props.ts +0 -38
  263. package/src/components/Tooltip/Tooltip.tsx +0 -119
  264. package/src/components/Tooltip/index.ts +0 -1
  265. package/src/components/Video/Video.args.ts +0 -47
  266. package/src/components/Video/Video.props.ts +0 -35
  267. package/src/components/Video/Video.tsx +0 -34
  268. package/src/components/Video/VideoPlayer.props.ts +0 -51
  269. package/src/components/Video/VideoPlayer.tsx +0 -71
  270. package/src/components/Video/index.ts +0 -1
  271. package/src/components/Video/media-file-poster.jpg +0 -0
  272. package/src/components/index.ts +0 -46
  273. package/src/declarations.d.ts +0 -36
  274. package/src/hooks/index.ts +0 -2
  275. package/src/hooks/useGlobalSettings.ts +0 -13
  276. package/src/hooks/usePrevious.ts +0 -15
  277. package/src/hooks/useVideoPlayer.ts +0 -85
  278. package/src/index.ts +0 -1
  279. package/src/types/forms.args.ts +0 -288
  280. package/src/types/index.ts +0 -139
  281. package/src/types/temp.d.ts +0 -9
  282. package/src/utils/checkArrayDuplicates.ts +0 -3
  283. package/src/utils/createChainedFunction.ts +0 -31
  284. package/src/utils/getDefaultDimensionValue.ts +0 -28
  285. package/src/utils/hoursMinutesSeconds.ts +0 -8
  286. package/src/utils/index.ts +0 -6
  287. package/src/utils/transitionEndListener.ts +0 -29
  288. package/src/utils/triggerBrowserReflow.ts +0 -4
  289. package/tsconfig.build.json +0 -19
  290. package/tsconfig.json +0 -8
@@ -1,89 +0,0 @@
1
- import React, { ReactNode } from "react";
2
- import {
3
- ButtonFunctions,
4
- ButtonTypes,
5
- PositionTypes,
6
- SizeTypes,
7
- } from "../../types";
8
-
9
- export interface ButtonProps {
10
- /**
11
- * Specify the callback of your Button.
12
- */
13
- callback?: (e: React.MouseEvent<Element, MouseEvent>) => any;
14
-
15
- /**
16
- * Specify the content of your Button.
17
- */
18
- children?: ReactNode;
19
-
20
- /**
21
- * Specify an optional className to be added to your Button.
22
- */
23
- className?: string;
24
-
25
- /**
26
- * Specify the name for the Button.
27
- */
28
- name?: string;
29
-
30
- /**
31
- * Specify whether or not the button is disabled.
32
- */
33
- disabled?: boolean;
34
-
35
- /**
36
- * Specify the icon for the Button
37
- */
38
- icon?: string;
39
-
40
- /**
41
- * Specify the icon for the Button
42
- */
43
- iconPosition?: PositionTypes;
44
-
45
- /**
46
- * Does this button display an icon only?
47
- */
48
- icononly?: boolean;
49
-
50
- /**
51
- * Specify which function the button performs
52
- */
53
- kind?: ButtonFunctions;
54
-
55
- /**
56
- * Specify the label for the Button
57
- */
58
- label?: string;
59
-
60
- /**
61
- * Does this button open a modal?
62
- */
63
- opensmodal?: boolean;
64
-
65
- /**
66
- * Specify an optional className to be added to your Button.
67
- */
68
- size?: SizeTypes;
69
-
70
- /**
71
- * Specify the target for when Button is really a link
72
- */
73
- target?: string;
74
-
75
- /**
76
- * Specify an optional className to be added to your Button.
77
- */
78
- type?: ButtonTypes;
79
-
80
- /**
81
- * Specify the url for the Button's href
82
- */
83
- url?: string;
84
-
85
- /**
86
- * Inline styles to be applied to the rendered element
87
- */
88
- style?: React.CSSProperties;
89
- }
@@ -1,77 +0,0 @@
1
- import { FC } from "react";
2
- import classNames from "classnames";
3
- import useGlobalSettings from "../../hooks/useGlobalSettings";
4
- import { ButtonProps } from "./Button.props";
5
- import { Link } from "../Link";
6
- import { Icon } from "../Icon";
7
-
8
- const Button: FC<ButtonProps> = ({
9
- callback,
10
- className,
11
- disabled = false,
12
- icon,
13
- icononly,
14
- iconPosition,
15
- kind = "button",
16
- label,
17
- opensmodal,
18
- size = "large",
19
- target = "",
20
- type = "primary",
21
- url,
22
- style,
23
- name,
24
- }) => {
25
- const { prefix } = useGlobalSettings();
26
- const baseClass = `${prefix}--button`;
27
- const hasURL = !!url;
28
- const icoPos = iconPosition || "left";
29
-
30
- const ButtonClasses = classNames(className, {
31
- [baseClass]: true,
32
- [`${baseClass}--${size}`]: size,
33
- [`${baseClass}--${type}`]: type,
34
- [`icon icon__position--${icoPos}`]: icon && !icononly,
35
- [`icon icon--only`]: icon && icononly,
36
- });
37
-
38
- /**
39
- * On click, if there is a callback, call it
40
- */
41
- const handleClick = (e: React.MouseEvent<Element, MouseEvent>) => {
42
- if (callback) {
43
- callback(e);
44
- }
45
- };
46
-
47
- return (
48
- <>
49
- {hasURL ? (
50
- <Link
51
- className={ButtonClasses}
52
- target={target}
53
- url={url}
54
- label={label}
55
- style={style}
56
- >
57
- {icon && <Icon name={icon} hidden={true} />}
58
- </Link>
59
- ) : (
60
- <button
61
- className={ButtonClasses}
62
- onClick={(e) => handleClick(e)}
63
- disabled={disabled}
64
- type={kind}
65
- aria-haspopup={opensmodal ? `dialog` : false}
66
- style={style}
67
- name={name}
68
- >
69
- {label && <span className="button__label">{label}</span>}
70
- {icon && <Icon name={icon} hidden={true} />}
71
- </button>
72
- )}
73
- </>
74
- );
75
- };
76
-
77
- export default Button;
@@ -1,2 +0,0 @@
1
- export { default as Button } from "./Button";
2
- export { default as buttonArgs } from "./Button.args";
@@ -1,38 +0,0 @@
1
- import { CalloutProps } from "./Callout.props";
2
-
3
- const baseArgs: CalloutProps = {
4
- copy: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
5
- isCollapsible: false,
6
- headline: "Info Callout",
7
- type: "info",
8
- };
9
-
10
- const success: CalloutProps = {
11
- ...baseArgs,
12
- type: "success",
13
- headline: "Success Callout",
14
- };
15
-
16
- const warning: CalloutProps = {
17
- ...baseArgs,
18
- type: "warning",
19
- headline: "Warning Callout",
20
- };
21
-
22
- const error: CalloutProps = {
23
- ...baseArgs,
24
- cta: {
25
- label: "Optional CTA",
26
- url: "http://www.google.com",
27
- },
28
- isCollapsible: true,
29
- isOpen: false,
30
- headline: "Error Callout (Collapsible)",
31
- toggleOpenLabel: "Open",
32
- toggleClosedLabel: "Closed",
33
- type: "error",
34
- };
35
-
36
- const CalloutArgs = { baseArgs, success, warning, error };
37
-
38
- export default CalloutArgs;
@@ -1,60 +0,0 @@
1
- import { CalloutTypes } from "../../types";
2
-
3
- interface CTAProps {
4
- /**
5
- * Specify the label of the CTA
6
- */
7
- label?: string;
8
-
9
- /**
10
- * Specify the url of the CTA
11
- */
12
- url?: string;
13
- }
14
-
15
- export interface CalloutProps {
16
- /**
17
- * Specify the settings for an option CTA
18
- */
19
- cta?: CTAProps;
20
-
21
- /**
22
- * Specify an optional className to be added to your RichText.
23
- */
24
- className?: string;
25
-
26
- /**
27
- * Specify the copy
28
- */
29
- copy?: Required<string>;
30
-
31
- /**
32
- * Specify if callout is collapsible
33
- */
34
- isCollapsible?: boolean;
35
-
36
- /**
37
- * Specify if callout is open (only important for collapsible items)
38
- */
39
- isOpen?: boolean;
40
-
41
- /**
42
- * Specify the callout headline
43
- */
44
- headline?: string;
45
-
46
- /**
47
- * Specify the open label
48
- */
49
- toggleOpenLabel?: string;
50
-
51
- /**
52
- * Specify the open label
53
- */
54
- toggleClosedLabel?: string;
55
-
56
- /**
57
- * Describe the type of callout
58
- */
59
- type?: CalloutTypes;
60
- }
@@ -1,80 +0,0 @@
1
- import classNames from "classnames";
2
- import React, { FC, useEffect, useState } from "react";
3
- import useGlobalSettings from "../../hooks/useGlobalSettings";
4
- import { Button } from "../Button";
5
- import { ButtonProps } from "../Button/Button.props";
6
- import { CalloutProps } from "./Callout.props";
7
-
8
- const Callout: FC<CalloutProps> = ({
9
- className,
10
- copy,
11
- cta,
12
- isCollapsible,
13
- isOpen = true,
14
- toggleOpenLabel = "Less",
15
- toggleClosedLabel = "More",
16
- headline,
17
- type,
18
- }) => {
19
- const { prefix } = useGlobalSettings();
20
- const baseClass = `${prefix}--callout`;
21
- const [toggleOpen, setToggleOpen] = useState(isOpen);
22
- let toggleLabel = toggleOpen ? toggleOpenLabel : toggleClosedLabel;
23
-
24
- useEffect(() => {
25
- setToggleOpen(isOpen);
26
- toggleLabel = toggleOpen ? toggleOpenLabel : toggleClosedLabel;
27
- }, [isOpen]);
28
-
29
- const calloutClasses = classNames(className, {
30
- [baseClass]: true,
31
- [`${baseClass}--${type}`]: type,
32
- [`${baseClass}--open`]: toggleOpen,
33
- [`${baseClass}--collapse`]: isCollapsible,
34
- });
35
-
36
- const iconClasses = `icon icon--${type}`;
37
-
38
- const ctaprops: ButtonProps = {
39
- callback: undefined,
40
- className: `${baseClass}--cta`,
41
- children: false,
42
- label: cta?.label,
43
- size: "small",
44
- type: "tertiary",
45
- url: cta?.url,
46
- };
47
-
48
- const handleToggle = (e: React.MouseEvent<Element, MouseEvent>) => {
49
- e.preventDefault();
50
- toggleLabel = toggleOpen ? toggleOpenLabel : toggleClosedLabel;
51
- setToggleOpen(!toggleOpen);
52
- };
53
-
54
- return (
55
- <div className={calloutClasses}>
56
- <div className={`${baseClass}--sidebar`}>
57
- <span className={iconClasses}></span>
58
- </div>
59
- <div className={`${baseClass}--content`}>
60
- <div className={`${baseClass}--header`}>
61
- <h5 className={`${baseClass}--headline`}>{headline}</h5>
62
- {isCollapsible && (
63
- <button
64
- className={`${baseClass}--toggle`}
65
- onClick={handleToggle}
66
- type="button"
67
- >
68
- {toggleLabel}
69
- <span className={`${baseClass}--toggle--icon`}></span>
70
- </button>
71
- )}
72
- </div>
73
- <p className={`${baseClass}--copy`}>{copy}</p>
74
- {cta && <Button {...ctaprops} />}
75
- </div>
76
- </div>
77
- );
78
- };
79
-
80
- export default Callout;
@@ -1,2 +0,0 @@
1
- export { default as Callout } from "./Callout";
2
- export { default as calloutArgs } from "./Callout.args";