@dxc-technology/halstack-react 0.0.0-da90bf9 → 0.0.0-da9270d

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 (403) hide show
  1. package/BackgroundColorContext.d.ts +1 -0
  2. package/BackgroundColorContext.js +8 -24
  3. package/HalstackContext.d.ts +1235 -0
  4. package/HalstackContext.js +310 -0
  5. package/README.md +47 -0
  6. package/accordion/Accordion.d.ts +4 -0
  7. package/accordion/Accordion.js +120 -291
  8. package/accordion/Accordion.stories.tsx +283 -0
  9. package/accordion/Accordion.test.js +56 -0
  10. package/accordion/types.d.ts +57 -0
  11. package/accordion/types.js +5 -0
  12. package/accordion-group/AccordionGroup.d.ts +8 -0
  13. package/accordion-group/AccordionGroup.js +57 -142
  14. package/accordion-group/AccordionGroup.stories.tsx +252 -0
  15. package/accordion-group/AccordionGroup.test.js +98 -0
  16. package/accordion-group/AccordionGroupAccordion.d.ts +4 -0
  17. package/accordion-group/AccordionGroupAccordion.js +31 -0
  18. package/accordion-group/types.d.ts +67 -0
  19. package/accordion-group/types.js +5 -0
  20. package/alert/Alert.d.ts +4 -0
  21. package/alert/Alert.js +55 -204
  22. package/alert/Alert.stories.tsx +198 -0
  23. package/alert/Alert.test.js +75 -0
  24. package/alert/types.d.ts +49 -0
  25. package/alert/types.js +5 -0
  26. package/badge/Badge.d.ts +4 -0
  27. package/badge/Badge.js +15 -30
  28. package/badge/types.d.ts +5 -0
  29. package/badge/types.js +5 -0
  30. package/bleed/Bleed.d.ts +3 -0
  31. package/bleed/Bleed.js +43 -0
  32. package/bleed/Bleed.stories.tsx +342 -0
  33. package/bleed/types.d.ts +37 -0
  34. package/bleed/types.js +5 -0
  35. package/box/Box.d.ts +4 -0
  36. package/box/Box.js +35 -116
  37. package/box/Box.stories.tsx +119 -0
  38. package/box/Box.test.js +13 -0
  39. package/box/types.d.ts +32 -0
  40. package/box/types.js +5 -0
  41. package/bulleted-list/BulletedList.d.ts +7 -0
  42. package/bulleted-list/BulletedList.js +89 -0
  43. package/bulleted-list/BulletedList.stories.tsx +115 -0
  44. package/bulleted-list/types.d.ts +38 -0
  45. package/bulleted-list/types.js +5 -0
  46. package/button/Button.d.ts +4 -0
  47. package/button/Button.js +67 -185
  48. package/button/Button.stories.tsx +344 -0
  49. package/button/Button.test.js +36 -0
  50. package/button/types.d.ts +57 -0
  51. package/button/types.js +5 -0
  52. package/card/Card.d.ts +4 -0
  53. package/card/Card.js +60 -194
  54. package/card/Card.stories.tsx +171 -0
  55. package/card/Card.test.js +39 -0
  56. package/card/types.d.ts +62 -0
  57. package/card/types.js +5 -0
  58. package/checkbox/Checkbox.d.ts +4 -0
  59. package/checkbox/Checkbox.js +147 -231
  60. package/checkbox/Checkbox.stories.tsx +222 -0
  61. package/checkbox/Checkbox.test.js +199 -0
  62. package/checkbox/types.d.ts +72 -0
  63. package/checkbox/types.js +5 -0
  64. package/chip/Chip.d.ts +4 -0
  65. package/chip/Chip.js +50 -194
  66. package/chip/Chip.stories.tsx +214 -0
  67. package/chip/Chip.test.js +41 -0
  68. package/chip/types.d.ts +45 -0
  69. package/chip/types.js +5 -0
  70. package/common/OpenSans.css +68 -80
  71. package/common/coreTokens.d.ts +237 -0
  72. package/common/coreTokens.js +184 -0
  73. package/common/utils.d.ts +1 -0
  74. package/common/utils.js +6 -12
  75. package/common/variables.d.ts +1381 -0
  76. package/common/variables.js +1006 -1319
  77. package/container/Container.d.ts +4 -0
  78. package/container/Container.js +194 -0
  79. package/container/Container.stories.tsx +214 -0
  80. package/container/types.d.ts +74 -0
  81. package/container/types.js +5 -0
  82. package/date-input/Calendar.d.ts +4 -0
  83. package/date-input/Calendar.js +214 -0
  84. package/date-input/DateInput.d.ts +4 -0
  85. package/date-input/DateInput.js +179 -356
  86. package/date-input/DateInput.stories.tsx +285 -0
  87. package/date-input/DateInput.test.js +808 -0
  88. package/date-input/DatePicker.d.ts +4 -0
  89. package/date-input/DatePicker.js +115 -0
  90. package/date-input/Icons.d.ts +6 -0
  91. package/date-input/Icons.js +58 -0
  92. package/date-input/YearPicker.d.ts +4 -0
  93. package/date-input/YearPicker.js +100 -0
  94. package/date-input/types.d.ts +164 -0
  95. package/date-input/types.js +5 -0
  96. package/dialog/Dialog.d.ts +4 -0
  97. package/dialog/Dialog.js +70 -184
  98. package/dialog/Dialog.stories.tsx +365 -0
  99. package/dialog/Dialog.test.js +307 -0
  100. package/dialog/types.d.ts +36 -0
  101. package/dialog/types.js +5 -0
  102. package/dropdown/Dropdown.d.ts +4 -0
  103. package/dropdown/Dropdown.js +247 -457
  104. package/dropdown/Dropdown.stories.tsx +438 -0
  105. package/dropdown/Dropdown.test.js +599 -0
  106. package/dropdown/DropdownMenu.d.ts +4 -0
  107. package/dropdown/DropdownMenu.js +63 -0
  108. package/dropdown/DropdownMenuItem.d.ts +4 -0
  109. package/dropdown/DropdownMenuItem.js +67 -0
  110. package/dropdown/types.d.ts +98 -0
  111. package/dropdown/types.js +5 -0
  112. package/file-input/FileInput.d.ts +4 -0
  113. package/file-input/FileInput.js +297 -462
  114. package/file-input/FileInput.stories.tsx +618 -0
  115. package/file-input/FileInput.test.js +459 -0
  116. package/file-input/FileItem.d.ts +4 -0
  117. package/file-input/FileItem.js +61 -213
  118. package/file-input/types.d.ts +129 -0
  119. package/file-input/types.js +5 -0
  120. package/flex/Flex.d.ts +4 -0
  121. package/flex/Flex.js +57 -0
  122. package/flex/Flex.stories.tsx +112 -0
  123. package/flex/types.d.ts +97 -0
  124. package/flex/types.js +5 -0
  125. package/footer/Footer.d.ts +4 -0
  126. package/footer/Footer.js +64 -360
  127. package/footer/Footer.stories.tsx +152 -0
  128. package/footer/Footer.test.js +85 -0
  129. package/footer/Icons.d.ts +2 -0
  130. package/footer/Icons.js +16 -21
  131. package/footer/types.d.ts +58 -0
  132. package/footer/types.js +5 -0
  133. package/grid/Grid.d.ts +7 -0
  134. package/grid/Grid.js +76 -0
  135. package/grid/Grid.stories.tsx +219 -0
  136. package/grid/types.d.ts +115 -0
  137. package/grid/types.js +5 -0
  138. package/header/Header.d.ts +8 -0
  139. package/header/Header.js +122 -372
  140. package/header/Header.stories.tsx +251 -0
  141. package/header/Header.test.js +66 -0
  142. package/header/Icons.d.ts +2 -0
  143. package/header/Icons.js +9 -39
  144. package/header/types.d.ts +33 -0
  145. package/header/types.js +5 -0
  146. package/heading/Heading.d.ts +4 -0
  147. package/heading/Heading.js +31 -124
  148. package/heading/Heading.stories.tsx +54 -0
  149. package/heading/Heading.test.js +169 -0
  150. package/heading/types.d.ts +33 -0
  151. package/heading/types.js +5 -0
  152. package/image/Image.d.ts +4 -0
  153. package/image/Image.js +70 -0
  154. package/image/Image.stories.tsx +127 -0
  155. package/image/types.d.ts +72 -0
  156. package/image/types.js +5 -0
  157. package/inset/Inset.d.ts +3 -0
  158. package/inset/Inset.js +43 -0
  159. package/inset/Inset.stories.tsx +230 -0
  160. package/inset/types.d.ts +37 -0
  161. package/inset/types.js +5 -0
  162. package/layout/ApplicationLayout.d.ts +20 -0
  163. package/layout/ApplicationLayout.js +85 -278
  164. package/layout/ApplicationLayout.stories.tsx +162 -0
  165. package/layout/Icons.d.ts +8 -0
  166. package/layout/Icons.js +51 -48
  167. package/layout/SidenavContext.d.ts +5 -0
  168. package/layout/SidenavContext.js +13 -0
  169. package/layout/types.d.ts +41 -0
  170. package/layout/types.js +5 -0
  171. package/link/Link.d.ts +4 -0
  172. package/link/Link.js +67 -189
  173. package/link/Link.stories.tsx +253 -0
  174. package/link/Link.test.js +63 -0
  175. package/link/types.d.ts +54 -0
  176. package/link/types.js +5 -0
  177. package/main.d.ts +46 -40
  178. package/main.js +117 -140
  179. package/nav-tabs/NavTabs.d.ts +8 -0
  180. package/nav-tabs/NavTabs.js +90 -0
  181. package/nav-tabs/NavTabs.stories.tsx +274 -0
  182. package/nav-tabs/NavTabs.test.js +75 -0
  183. package/nav-tabs/Tab.d.ts +4 -0
  184. package/nav-tabs/Tab.js +117 -0
  185. package/nav-tabs/types.d.ts +52 -0
  186. package/nav-tabs/types.js +5 -0
  187. package/number-input/NumberInput.d.ts +11 -0
  188. package/number-input/NumberInput.js +32 -101
  189. package/number-input/NumberInput.stories.tsx +131 -0
  190. package/number-input/NumberInput.test.js +830 -0
  191. package/number-input/types.d.ts +130 -0
  192. package/number-input/types.js +5 -0
  193. package/package.json +53 -49
  194. package/paginator/Icons.d.ts +5 -0
  195. package/paginator/Icons.js +26 -52
  196. package/paginator/Paginator.d.ts +4 -0
  197. package/paginator/Paginator.js +41 -211
  198. package/paginator/Paginator.stories.tsx +87 -0
  199. package/paginator/Paginator.test.js +335 -0
  200. package/paginator/types.d.ts +38 -0
  201. package/paginator/types.js +5 -0
  202. package/paragraph/Paragraph.d.ts +5 -0
  203. package/paragraph/Paragraph.js +22 -0
  204. package/paragraph/Paragraph.stories.tsx +27 -0
  205. package/password-input/Icons.d.ts +6 -0
  206. package/password-input/Icons.js +35 -0
  207. package/password-input/PasswordInput.d.ts +4 -0
  208. package/password-input/PasswordInput.js +66 -172
  209. package/password-input/PasswordInput.stories.tsx +99 -0
  210. package/password-input/PasswordInput.test.js +198 -0
  211. package/password-input/types.d.ts +111 -0
  212. package/password-input/types.js +5 -0
  213. package/progress-bar/ProgressBar.d.ts +4 -0
  214. package/progress-bar/ProgressBar.js +76 -174
  215. package/progress-bar/ProgressBar.stories.tsx +93 -0
  216. package/progress-bar/ProgressBar.test.js +93 -0
  217. package/progress-bar/types.d.ts +37 -0
  218. package/progress-bar/types.js +5 -0
  219. package/quick-nav/QuickNav.d.ts +4 -0
  220. package/quick-nav/QuickNav.js +94 -0
  221. package/quick-nav/QuickNav.stories.tsx +356 -0
  222. package/quick-nav/types.d.ts +21 -0
  223. package/quick-nav/types.js +5 -0
  224. package/radio-group/Radio.d.ts +4 -0
  225. package/radio-group/Radio.js +124 -0
  226. package/radio-group/RadioGroup.d.ts +4 -0
  227. package/radio-group/RadioGroup.js +235 -0
  228. package/radio-group/RadioGroup.stories.tsx +214 -0
  229. package/radio-group/RadioGroup.test.js +756 -0
  230. package/radio-group/types.d.ts +114 -0
  231. package/radio-group/types.js +5 -0
  232. package/resultset-table/Icons.d.ts +7 -0
  233. package/resultset-table/Icons.js +47 -0
  234. package/resultset-table/ResultsetTable.d.ts +4 -0
  235. package/resultset-table/ResultsetTable.js +159 -0
  236. package/resultset-table/ResultsetTable.stories.tsx +300 -0
  237. package/resultset-table/ResultsetTable.test.js +305 -0
  238. package/resultset-table/types.d.ts +67 -0
  239. package/resultset-table/types.js +5 -0
  240. package/select/Icons.d.ts +10 -0
  241. package/select/Icons.js +89 -0
  242. package/select/Listbox.d.ts +4 -0
  243. package/select/Listbox.js +143 -0
  244. package/select/Option.d.ts +4 -0
  245. package/select/Option.js +80 -0
  246. package/select/Select.d.ts +4 -0
  247. package/select/Select.js +294 -849
  248. package/select/Select.stories.tsx +971 -0
  249. package/select/Select.test.js +2370 -0
  250. package/select/types.d.ts +209 -0
  251. package/select/types.js +5 -0
  252. package/sidenav/Icons.d.ts +7 -0
  253. package/sidenav/Icons.js +47 -0
  254. package/sidenav/Sidenav.d.ts +10 -0
  255. package/sidenav/Sidenav.js +134 -117
  256. package/sidenav/Sidenav.stories.tsx +282 -0
  257. package/sidenav/Sidenav.test.js +37 -0
  258. package/sidenav/types.d.ts +76 -0
  259. package/sidenav/types.js +5 -0
  260. package/slider/Slider.d.ts +4 -0
  261. package/slider/Slider.js +172 -291
  262. package/slider/Slider.test.js +254 -0
  263. package/slider/types.d.ts +86 -0
  264. package/slider/types.js +5 -0
  265. package/spinner/Spinner.d.ts +4 -0
  266. package/spinner/Spinner.js +66 -241
  267. package/spinner/Spinner.stories.tsx +129 -0
  268. package/spinner/Spinner.test.js +55 -0
  269. package/spinner/types.d.ts +32 -0
  270. package/spinner/types.js +5 -0
  271. package/switch/Switch.d.ts +4 -0
  272. package/switch/Switch.js +153 -161
  273. package/switch/Switch.stories.tsx +137 -0
  274. package/switch/Switch.test.js +180 -0
  275. package/switch/types.d.ts +66 -0
  276. package/switch/types.js +5 -0
  277. package/table/Table.d.ts +4 -0
  278. package/table/Table.js +14 -50
  279. package/table/Table.stories.tsx +356 -0
  280. package/table/Table.test.js +21 -0
  281. package/table/types.d.ts +21 -0
  282. package/table/types.js +5 -0
  283. package/tabs/Tab.d.ts +4 -0
  284. package/tabs/Tab.js +113 -0
  285. package/tabs/Tabs.d.ts +4 -0
  286. package/tabs/Tabs.js +322 -281
  287. package/tabs/Tabs.stories.tsx +226 -0
  288. package/tabs/Tabs.test.js +294 -0
  289. package/tabs/types.d.ts +92 -0
  290. package/tabs/types.js +5 -0
  291. package/tag/Tag.d.ts +4 -0
  292. package/tag/Tag.js +61 -192
  293. package/tag/Tag.stories.tsx +155 -0
  294. package/tag/Tag.test.js +49 -0
  295. package/tag/types.d.ts +69 -0
  296. package/tag/types.js +5 -0
  297. package/text-input/Icons.d.ts +8 -0
  298. package/text-input/Icons.js +56 -0
  299. package/text-input/Suggestion.d.ts +4 -0
  300. package/text-input/Suggestion.js +67 -0
  301. package/text-input/Suggestions.d.ts +4 -0
  302. package/text-input/Suggestions.js +84 -0
  303. package/text-input/TextInput.d.ts +4 -0
  304. package/text-input/TextInput.js +360 -757
  305. package/text-input/TextInput.stories.tsx +465 -0
  306. package/text-input/TextInput.test.js +1739 -0
  307. package/text-input/types.d.ts +205 -0
  308. package/text-input/types.js +5 -0
  309. package/textarea/Textarea.d.ts +4 -0
  310. package/textarea/Textarea.js +105 -240
  311. package/textarea/Textarea.stories.tsx +174 -0
  312. package/textarea/Textarea.test.js +406 -0
  313. package/textarea/types.d.ts +141 -0
  314. package/textarea/types.js +5 -0
  315. package/toggle-group/ToggleGroup.d.ts +4 -0
  316. package/toggle-group/ToggleGroup.js +107 -233
  317. package/toggle-group/ToggleGroup.stories.tsx +218 -0
  318. package/toggle-group/ToggleGroup.test.js +137 -0
  319. package/toggle-group/types.d.ts +114 -0
  320. package/toggle-group/types.js +5 -0
  321. package/typography/Typography.d.ts +4 -0
  322. package/typography/Typography.js +23 -0
  323. package/typography/Typography.stories.tsx +198 -0
  324. package/typography/types.d.ts +18 -0
  325. package/typography/types.js +5 -0
  326. package/useTheme.d.ts +1134 -0
  327. package/useTheme.js +4 -11
  328. package/useTranslatedLabels.d.ts +85 -0
  329. package/useTranslatedLabels.js +14 -0
  330. package/utils/BaseTypography.d.ts +21 -0
  331. package/utils/BaseTypography.js +94 -0
  332. package/utils/FocusLock.d.ts +13 -0
  333. package/utils/FocusLock.js +121 -0
  334. package/wizard/Wizard.d.ts +4 -0
  335. package/wizard/Wizard.js +138 -293
  336. package/wizard/Wizard.stories.tsx +253 -0
  337. package/wizard/Wizard.test.js +114 -0
  338. package/wizard/types.d.ts +64 -0
  339. package/wizard/types.js +5 -0
  340. package/ThemeContext.js +0 -250
  341. package/V3Select/V3Select.js +0 -549
  342. package/V3Select/index.d.ts +0 -27
  343. package/V3Textarea/V3Textarea.js +0 -264
  344. package/V3Textarea/index.d.ts +0 -27
  345. package/accordion/index.d.ts +0 -28
  346. package/accordion-group/index.d.ts +0 -16
  347. package/alert/index.d.ts +0 -51
  348. package/box/index.d.ts +0 -25
  349. package/button/Button.stories.js +0 -27
  350. package/button/index.d.ts +0 -24
  351. package/card/index.d.ts +0 -22
  352. package/checkbox/index.d.ts +0 -24
  353. package/chip/index.d.ts +0 -22
  354. package/common/RequiredComponent.js +0 -40
  355. package/date/Date.js +0 -379
  356. package/date/index.d.ts +0 -27
  357. package/date-input/index.d.ts +0 -95
  358. package/dialog/index.d.ts +0 -18
  359. package/dropdown/index.d.ts +0 -26
  360. package/file-input/index.d.ts +0 -81
  361. package/footer/index.d.ts +0 -25
  362. package/header/index.d.ts +0 -25
  363. package/heading/index.d.ts +0 -17
  364. package/input-text/Icons.js +0 -22
  365. package/input-text/InputText.js +0 -705
  366. package/input-text/index.d.ts +0 -36
  367. package/link/index.d.ts +0 -23
  368. package/number-input/NumberInputContext.js +0 -16
  369. package/number-input/index.d.ts +0 -113
  370. package/paginator/index.d.ts +0 -20
  371. package/password-input/index.d.ts +0 -94
  372. package/progress-bar/index.d.ts +0 -18
  373. package/radio/Radio.js +0 -209
  374. package/radio/index.d.ts +0 -23
  375. package/resultsetTable/ResultsetTable.js +0 -358
  376. package/resultsetTable/index.d.ts +0 -19
  377. package/select/index.d.ts +0 -131
  378. package/sidenav/index.d.ts +0 -13
  379. package/slider/index.d.ts +0 -29
  380. package/spinner/index.d.ts +0 -17
  381. package/switch/index.d.ts +0 -24
  382. package/table/index.d.ts +0 -13
  383. package/tabs/index.d.ts +0 -19
  384. package/tag/index.d.ts +0 -24
  385. package/text-input/index.d.ts +0 -135
  386. package/textarea/index.d.ts +0 -117
  387. package/toggle/Toggle.js +0 -220
  388. package/toggle/index.d.ts +0 -21
  389. package/toggle-group/index.d.ts +0 -21
  390. package/upload/Upload.js +0 -205
  391. package/upload/buttons-upload/ButtonsUpload.js +0 -135
  392. package/upload/buttons-upload/Icons.js +0 -40
  393. package/upload/dragAndDropArea/DragAndDropArea.js +0 -329
  394. package/upload/dragAndDropArea/Icons.js +0 -39
  395. package/upload/file-upload/FileToUpload.js +0 -189
  396. package/upload/file-upload/Icons.js +0 -66
  397. package/upload/files-upload/FilesToUpload.js +0 -123
  398. package/upload/index.d.ts +0 -15
  399. package/upload/transaction/Icons.js +0 -160
  400. package/upload/transaction/Transaction.js +0 -148
  401. package/upload/transactions/Transactions.js +0 -138
  402. package/wizard/Icons.js +0 -65
  403. package/wizard/index.d.ts +0 -18
@@ -0,0 +1,54 @@
1
+ import React from "react";
2
+ import DxcHeading from "./Heading";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+
6
+ export default {
7
+ title: "Heading",
8
+ component: DxcHeading,
9
+ };
10
+
11
+ export const Chromatic = () => (
12
+ <>
13
+ <Title title="Levels" theme="light" level={2} />
14
+ <ExampleContainer>
15
+ <Title title="Level 1" theme="light" level={4} />
16
+ <DxcHeading text="Heading for sections within the page" />
17
+ <Title title="Level 2" theme="light" level={4} />
18
+ <DxcHeading text="Heading for sections within the page" level={2} />
19
+ <Title title="Level 3" theme="light" level={4} />
20
+ <DxcHeading text="Heading for sections within the page" level={3} />
21
+ <Title title="Level 4" theme="light" level={4} />
22
+ <DxcHeading text="Heading for sections within the page" level={4} />
23
+ <Title title="Level 5" theme="light" level={4} />
24
+ <DxcHeading text="Heading for sections within the page" level={5} />
25
+ </ExampleContainer>
26
+ <Title title="Weights" theme="light" level={2} />
27
+ <ExampleContainer>
28
+ <Title title="'light' Weight" theme="light" level={4} />
29
+ <DxcHeading text="Heading for sections within the page" level={2} weight="light" />
30
+ <Title title="'normal' Weight" theme="light" level={4} />
31
+ <DxcHeading text="Heading for sections within the page" level={2} weight="normal" />
32
+ <Title title="'bold' Weight" theme="light" level={4} />
33
+ <DxcHeading text="Heading for sections within the page" level={2} weight="bold" />
34
+ </ExampleContainer>
35
+ <Title title="Margins" theme="light" level={2} />
36
+ <ExampleContainer>
37
+ <Title title="Xxsmall" theme="light" level={4} />
38
+ <DxcHeading text="Xxsmall" margin="xxsmall" />
39
+ <Title title="Xsmall" theme="light" level={4} />
40
+ <DxcHeading text="Xsmall" margin="xsmall" />
41
+ <Title title="Small" theme="light" level={4} />
42
+ <DxcHeading text="Small" margin="small" />
43
+ <Title title="Medium" theme="light" level={4} />
44
+ <DxcHeading text="Medium" margin="medium" />
45
+ <Title title="Large" theme="light" level={4} />
46
+ <DxcHeading text="Large" margin="large" />
47
+ <Title title="Xlarge" theme="light" level={4} />
48
+ <DxcHeading text="Xlarge" margin="xlarge" />
49
+ <Title title="Xxlarge" theme="light" level={4} />
50
+ <DxcHeading text="Xxlarge" margin="xxlarge" />
51
+ <hr />
52
+ </ExampleContainer>
53
+ </>
54
+ );
@@ -0,0 +1,169 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _react = _interopRequireDefault(require("react"));
5
+ var _react2 = require("@testing-library/react");
6
+ var _Heading = _interopRequireDefault(require("./Heading.tsx"));
7
+ describe("Heading component tests", function () {
8
+ test("Heading renders with default level", function () {
9
+ var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
10
+ text: "my-heading-test"
11
+ })),
12
+ getByText = _render.getByText,
13
+ getByRole = _render.getByRole;
14
+ expect(getByText("my-heading-test")).toBeTruthy();
15
+ expect(getByRole("heading", {
16
+ level: 1
17
+ })).toBeTruthy();
18
+ });
19
+ test("Heading renders with level 1", function () {
20
+ var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
21
+ text: "my-heading-test",
22
+ level: 1
23
+ })),
24
+ getByText = _render2.getByText,
25
+ getByRole = _render2.getByRole;
26
+ expect(getByText("my-heading-test")).toBeTruthy();
27
+ expect(getByRole("heading", {
28
+ level: 1
29
+ })).toBeTruthy();
30
+ });
31
+ test("Heading renders with level 2", function () {
32
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
33
+ text: "my-heading-test",
34
+ level: 2
35
+ })),
36
+ getByText = _render3.getByText,
37
+ getByRole = _render3.getByRole;
38
+ expect(getByText("my-heading-test")).toBeTruthy();
39
+ expect(getByRole("heading", {
40
+ level: 2
41
+ })).toBeTruthy();
42
+ });
43
+ test("Heading renders with level 3", function () {
44
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
45
+ text: "my-heading-test",
46
+ level: 3
47
+ })),
48
+ getByText = _render4.getByText,
49
+ getByRole = _render4.getByRole;
50
+ expect(getByText("my-heading-test")).toBeTruthy();
51
+ expect(getByRole("heading", {
52
+ level: 3
53
+ })).toBeTruthy();
54
+ });
55
+ test("Heading renders with level 4", function () {
56
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
57
+ text: "my-heading-test",
58
+ level: 4
59
+ })),
60
+ getByText = _render5.getByText,
61
+ getByRole = _render5.getByRole;
62
+ expect(getByText("my-heading-test")).toBeTruthy();
63
+ expect(getByRole("heading", {
64
+ level: 4
65
+ })).toBeTruthy();
66
+ });
67
+ test("Heading renders with level 5", function () {
68
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
69
+ text: "my-heading-test",
70
+ level: 5
71
+ })),
72
+ getByText = _render6.getByText,
73
+ getByRole = _render6.getByRole;
74
+ expect(getByText("my-heading-test")).toBeTruthy();
75
+ expect(getByRole("heading", {
76
+ level: 5
77
+ })).toBeTruthy();
78
+ });
79
+ test("Heading renders with default level and as h5", function () {
80
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
81
+ text: "my-heading-test",
82
+ as: "h5"
83
+ })),
84
+ getByText = _render7.getByText,
85
+ getByRole = _render7.getByRole;
86
+ expect(getByText("my-heading-test")).toBeTruthy();
87
+ expect(getByRole("heading", {
88
+ level: 5
89
+ })).toBeTruthy();
90
+ });
91
+ test("Heading renders with level 1 and as h5", function () {
92
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
93
+ text: "my-heading-test",
94
+ level: 1,
95
+ as: "h5"
96
+ })),
97
+ getByText = _render8.getByText,
98
+ getByRole = _render8.getByRole;
99
+ expect(getByText("my-heading-test")).toBeTruthy();
100
+ expect(getByRole("heading", {
101
+ level: 5
102
+ })).toBeTruthy();
103
+ });
104
+ test("Heading renders with level 2 and as h4", function () {
105
+ var _render9 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
106
+ text: "my-heading-test",
107
+ level: 2,
108
+ as: "h4"
109
+ })),
110
+ getByText = _render9.getByText,
111
+ getByRole = _render9.getByRole;
112
+ expect(getByText("my-heading-test")).toBeTruthy();
113
+ expect(getByRole("heading", {
114
+ level: 4
115
+ })).toBeTruthy();
116
+ });
117
+ test("Heading renders with level 3 and as h2", function () {
118
+ var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
119
+ text: "my-heading-test",
120
+ level: 3,
121
+ as: "h2"
122
+ })),
123
+ getByText = _render10.getByText,
124
+ getByRole = _render10.getByRole;
125
+ expect(getByText("my-heading-test")).toBeTruthy();
126
+ expect(getByRole("heading", {
127
+ level: 2
128
+ })).toBeTruthy();
129
+ });
130
+ test("Heading renders with level 4 and as h3", function () {
131
+ var _render11 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
132
+ text: "my-heading-test",
133
+ level: 4,
134
+ as: "h3"
135
+ })),
136
+ getByText = _render11.getByText,
137
+ getByRole = _render11.getByRole;
138
+ expect(getByText("my-heading-test")).toBeTruthy();
139
+ expect(getByRole("heading", {
140
+ level: 3
141
+ })).toBeTruthy();
142
+ });
143
+ test("Heading renders with level 5 as h4", function () {
144
+ var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
145
+ text: "my-heading-test",
146
+ level: 5,
147
+ as: "h4"
148
+ })),
149
+ getByText = _render12.getByText,
150
+ getByRole = _render12.getByRole;
151
+ expect(getByText("my-heading-test")).toBeTruthy();
152
+ expect(getByRole("heading", {
153
+ level: 4
154
+ })).toBeTruthy();
155
+ });
156
+ test("Heading renders with level 5 and invalid as", function () {
157
+ var _render13 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_Heading["default"], {
158
+ text: "my-heading-test",
159
+ level: 5,
160
+ as: "h4afdssf"
161
+ })),
162
+ getByText = _render13.getByText,
163
+ getByRole = _render13.getByRole;
164
+ expect(getByText("my-heading-test")).toBeTruthy();
165
+ expect(getByRole("heading", {
166
+ level: 5
167
+ })).toBeTruthy();
168
+ });
169
+ });
@@ -0,0 +1,33 @@
1
+ type Space = "xxsmall" | "xsmall" | "small" | "medium" | "large" | "xlarge" | "xxlarge";
2
+ type Margin = {
3
+ top?: Space;
4
+ bottom?: Space;
5
+ left?: Space;
6
+ right?: Space;
7
+ };
8
+ type Props = {
9
+ /**
10
+ * Defines the heading level from 1 to 5. The styles of the heading are applied according to the level.
11
+ * The html tag of the heading will be the one specified in the 'as' prop.
12
+ * If 'as' is not specified, the html tag of the heading is the one specified in the 'level' prop.
13
+ */
14
+ level?: 1 | 2 | 3 | 4 | 5;
15
+ /**
16
+ * Heading text.
17
+ */
18
+ text: string;
19
+ /**
20
+ * Modifies the default weight of the heading.
21
+ */
22
+ weight?: "light" | "normal" | "bold";
23
+ /**
24
+ * Specifies the HTML tag of the heading.
25
+ */
26
+ as?: "h1" | "h2" | "h3" | "h4" | "h5";
27
+ /**
28
+ * Size of the margin to be applied to the component ('xxsmall' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | 'xxlarge').
29
+ * You can pass an object with 'top', 'bottom', 'left' and 'right' properties in order to specify different margin sizes.
30
+ */
31
+ margin?: Space | Margin;
32
+ };
33
+ export default Props;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import ImagePropsType from "./types";
3
+ declare const DxcImage: ({ alt, caption, lazyLoading, src, srcSet, sizes, width, height, objectFit, objectPosition, onLoad, onError, }: ImagePropsType) => React.JSX.Element;
4
+ export default DxcImage;
package/image/Image.js ADDED
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
12
+ var _useTheme = _interopRequireDefault(require("../useTheme"));
13
+ var _BaseTypography = _interopRequireDefault(require("../utils/BaseTypography"));
14
+ var _templateObject;
15
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
16
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
17
+ var CaptionWrapper = function CaptionWrapper(_ref) {
18
+ var condition = _ref.condition,
19
+ wrapper = _ref.wrapper,
20
+ children = _ref.children;
21
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, condition ? wrapper(children) : children);
22
+ };
23
+ var DxcImage = function DxcImage(_ref2) {
24
+ var alt = _ref2.alt,
25
+ caption = _ref2.caption,
26
+ _ref2$lazyLoading = _ref2.lazyLoading,
27
+ lazyLoading = _ref2$lazyLoading === void 0 ? false : _ref2$lazyLoading,
28
+ src = _ref2.src,
29
+ srcSet = _ref2.srcSet,
30
+ sizes = _ref2.sizes,
31
+ width = _ref2.width,
32
+ height = _ref2.height,
33
+ objectFit = _ref2.objectFit,
34
+ objectPosition = _ref2.objectPosition,
35
+ onLoad = _ref2.onLoad,
36
+ onError = _ref2.onError;
37
+ var colorsTheme = (0, _useTheme["default"])();
38
+ return /*#__PURE__*/_react["default"].createElement(_styledComponents.ThemeProvider, {
39
+ theme: colorsTheme.image
40
+ }, /*#__PURE__*/_react["default"].createElement(CaptionWrapper, {
41
+ condition: caption != undefined,
42
+ wrapper: function wrapper(children) {
43
+ return /*#__PURE__*/_react["default"].createElement(Figure, null, children, /*#__PURE__*/_react["default"].createElement(_BaseTypography["default"], {
44
+ as: "figcaption",
45
+ color: colorsTheme.image.captionFontColor,
46
+ fontFamily: colorsTheme.image.captionFontFamily,
47
+ fontSize: colorsTheme.image.captionFontSize,
48
+ fontStyle: colorsTheme.image.captionFontStyle,
49
+ fontWeight: colorsTheme.image.captionFontWeight,
50
+ lineHeight: colorsTheme.image.captionLineHeight
51
+ }, caption));
52
+ }
53
+ }, /*#__PURE__*/_react["default"].createElement("img", {
54
+ alt: alt,
55
+ loading: lazyLoading ? "lazy" : undefined,
56
+ onLoad: onLoad,
57
+ onError: onError,
58
+ src: src,
59
+ srcSet: srcSet,
60
+ sizes: sizes,
61
+ style: {
62
+ objectFit: objectFit,
63
+ objectPosition: objectPosition,
64
+ width: width,
65
+ height: height
66
+ }
67
+ })));
68
+ };
69
+ var Figure = _styledComponents["default"].figure(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: fit-content;\n margin: 0;\n padding: 0;\n"])));
70
+ var _default = exports["default"] = DxcImage;
@@ -0,0 +1,127 @@
1
+ import React from "react";
2
+ import DxcImage from "./Image";
3
+ import Title from "../../.storybook/components/Title";
4
+ import ExampleContainer from "../../.storybook/components/ExampleContainer";
5
+ import { DxcFlex, DxcInset, DxcParagraph } from "../main";
6
+
7
+ export default {
8
+ title: "Image",
9
+ component: DxcImage,
10
+ };
11
+
12
+ export const Chromatic = () => (
13
+ <>
14
+ <Title title="Image component" theme="light" level={2} />
15
+ <ExampleContainer>
16
+ <Title title="Simple image" theme="light" level={4} />
17
+ <DxcImage
18
+ alt="Example image"
19
+ width="100%"
20
+ src="https://images.ctfassets.net/hrltx12pl8hq/5596z2BCR9KmT1KeRBrOQa/4070fd4e2f1a13f71c2c46afeb18e41c/shutterstock_451077043-hero1.jpg"
21
+ />
22
+ </ExampleContainer>
23
+ <ExampleContainer>
24
+ <Title title="Image with text" theme="light" level={4} />
25
+ <DxcParagraph>
26
+ Lorem ipsum dolor sit amet consectetur. Tincidunt sed pharetra mollis duis volutpat urna. Hendrerit aliquet et
27
+ arcu purus. Sodales elementum sollicitudin consequat elementum tortor. Lectus eget cursus ut ac pharetra
28
+ lobortis integer eu. Potenti amet ac id risus ac nunc orci nibh. Tempus vitae vitae aenean arcu. Nibh tristique
29
+ porta dui enim eget tristique rutrum. Quisque faucibus suscipit nibh est sed. Netus venenatis congue diam in dui
30
+ morbi dignissim lorem. Urna aliquet sem in tincidunt. Nunc arcu nec fringilla enim purus ut justo nisi. Vel mus
31
+ ut ornare faucibus blandit diam sit vestibulum massa. Semper nullam sit sagittis hendrerit augue. In fermentum
32
+ metus proin arcu faucibus proin nibh sit. Vel integer sed enim in sed vel nec ut vitae. Commodo sagittis
33
+ volutpat id lorem.
34
+ </DxcParagraph>
35
+ <DxcInset top="2rem" bottom="2rem">
36
+ <DxcImage
37
+ alt="Ratatouille is a great movie"
38
+ caption="Ratatouille with a smile on his face."
39
+ src="https://hips.hearstapps.com/es.h-cdn.co/fotoes/images/cinefilia/por-que-ratatouille-nos-sigue-enamorando-10-anos-despues/136444706-1-esl-ES/Por-que-Ratatouille-nos-sigue-enamorando-10-anos-despues.jpg"
40
+ />
41
+ </DxcInset>
42
+ <DxcParagraph>
43
+ Lorem ipsum dolor sit amet consectetur. Tincidunt sed pharetra mollis duis volutpat urna. Hendrerit aliquet et
44
+ arcu purus. Sodales elementum sollicitudin consequat elementum tortor. Lectus eget cursus ut ac pharetra
45
+ lobortis integer eu. Potenti amet ac id risus ac nunc orci nibh. Tempus vitae vitae aenean arcu. Nibh tristique
46
+ porta dui enim eget tristique rutrum. Quisque faucibus suscipit nibh est sed. Netus venenatis congue diam in dui
47
+ morbi dignissim lorem. Urna aliquet sem in tincidunt. Nunc arcu nec fringilla enim purus ut justo nisi. Vel mus
48
+ ut ornare faucibus blandit diam sit vestibulum massa. Semper nullam sit sagittis hendrerit augue. In fermentum
49
+ metus proin arcu faucibus proin nibh sit. Vel integer sed enim in sed vel nec ut vitae. Commodo sagittis
50
+ volutpat id lorem.
51
+ </DxcParagraph>
52
+ </ExampleContainer>
53
+ <ExampleContainer>
54
+ <Title title="Example image" theme="light" level={4} />
55
+ <DxcFlex gap="1rem">
56
+ <DxcImage
57
+ alt="Camera pic"
58
+ caption="Picture of a camera and the sunset."
59
+ width="500px"
60
+ src="https://assets.entrepreneur.com/content/3x2/2000/20191009140007-GettyImages-1053962188.jpeg"
61
+ />
62
+ <DxcParagraph>
63
+ Lorem ipsum dolor sit amet consectetur. Tincidunt sed pharetra mollis duis volutpat urna. Hendrerit aliquet et
64
+ arcu purus. Sodales elementum sollicitudin consequat elementum tortor. Lectus eget cursus ut ac pharetra
65
+ lobortis integer eu. Potenti amet ac id risus ac nunc orci nibh. Tempus vitae vitae aenean arcu. Nibh
66
+ tristique porta dui enim eget tristique rutrum. Quisque faucibus suscipit nibh est sed. Netus venenatis congue
67
+ diam in dui morbi dignissim lorem. Urna aliquet sem in tincidunt. Nunc arcu nec fringilla enim purus ut justo
68
+ nisi. Vel mus ut ornare faucibus blandit diam sit vestibulum massa. Semper nullam sit sagittis hendrerit
69
+ augue. In fermentum metus proin arcu faucibus proin nibh sit. Vel integer sed enim in sed vel nec ut vitae.
70
+ Commodo sagittis volutpat id lorem. Lorem ipsum dolor sit amet consectetur. Tincidunt sed pharetra mollis duis
71
+ volutpat urna. Hendrerit aliquet et arcu purus. Sodales elementum sollicitudin consequat elementum tortor.
72
+ Lectus eget cursus ut ac pharetra lobortis integer eu. Potenti amet ac id risus ac nunc orci nibh. Tempus
73
+ vitae vitae aenean arcu. Nibh tristique porta dui enim eget tristique rutrum. Quisque faucibus suscipit nibh
74
+ est sed. Netus venenatis congue diam in dui morbi dignissim lorem. Urna aliquet sem in tincidunt. Nunc arcu
75
+ nec fringilla enim purus ut justo nisi. Vel mus ut ornare faucibus blandit diam sit vestibulum massa. Semper
76
+ nullam sit sagittis hendrerit augue. In fermentum metus proin arcu faucibus proin nibh sit. Vel integer sed
77
+ enim in sed vel nec ut vitae. Commodo sagittis volutpat id lorem.
78
+ </DxcParagraph>
79
+ </DxcFlex>
80
+ </ExampleContainer>
81
+ <ExampleContainer>
82
+ <Title title="Object position" theme="light" level={4} />
83
+ <DxcImage
84
+ alt="Moon pic"
85
+ caption="Picture of the moon."
86
+ width="250px"
87
+ src="https://interactive-examples.mdn.mozilla.net/media/examples/moon.jpg"
88
+ objectPosition="right top"
89
+ objectFit="none"
90
+ />
91
+ </ExampleContainer>
92
+ <ExampleContainer>
93
+ <Title title="Object fit: contain" theme="light" level={4} />
94
+ <div style={{ display: "flex", width: "fit-content", border: "1px solid #000", padding: "0.5rem" }}>
95
+ <DxcImage
96
+ alt="Dog pic"
97
+ src="https://cc-prod.scene7.com/is/image/CCProdAuthor/What-is-Stock-Photography_P1_mobile?$pjpeg$&jpegSize=200&wid=720"
98
+ width="200px"
99
+ height="200px"
100
+ objectFit="contain"
101
+ caption="Pretty dog."
102
+ />
103
+ </div>
104
+ </ExampleContainer>
105
+ <ExampleContainer>
106
+ <Title title="Object fit: cover" theme="light" level={4} />
107
+ <div style={{ width: "75%", height: "300px" }}>
108
+ <DxcImage
109
+ alt="Spaceship pic"
110
+ src="https://media.istockphoto.com/id/1344443930/es/foto/lanzamiento-de-cohetes-del-transbordador-espacial-en-el-cielo-y-nubes-al-espacio-exterior.jpg?s=612x612&w=0&k=20&c=CO2A96GnnWvJsgZuj9WfYCVIBVzicnQDfnzwD1nomN0="
111
+ objectFit="cover"
112
+ width="50%"
113
+ height="100%"
114
+ objectPosition="0px 0px"
115
+ />
116
+ <DxcImage
117
+ alt="Spaceship pic"
118
+ src="https://media.istockphoto.com/id/1344443930/es/foto/lanzamiento-de-cohetes-del-transbordador-espacial-en-el-cielo-y-nubes-al-espacio-exterior.jpg?s=612x612&w=0&k=20&c=CO2A96GnnWvJsgZuj9WfYCVIBVzicnQDfnzwD1nomN0="
119
+ objectFit="cover"
120
+ width="50%"
121
+ height="100%"
122
+ objectPosition="0px 0px"
123
+ />
124
+ </div>
125
+ </ExampleContainer>
126
+ </>
127
+ );
@@ -0,0 +1,72 @@
1
+ /// <reference types="react" />
2
+ type Props = {
3
+ /**
4
+ * Alternative text description displayed when the specified image is not loaded.
5
+ *
6
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt
7
+ * See W3C alt decision tree: https://www.w3.org/WAI/tutorials/images/decision-tree/
8
+ */
9
+ alt: string;
10
+ /**
11
+ * Image legend with a descriptive purpose. It is placed below the image and is complementary to the alt attribute,
12
+ * which is required regardless of the presence of the caption or not.
13
+ */
14
+ caption?: string;
15
+ /**
16
+ * If true, the image will be loaded only when it is visible on the screen (lazy loading).
17
+ * Otherwise and by default, the image will be loaded as soon as the component is mounted (eager loading).
18
+ */
19
+ lazyLoading?: boolean;
20
+ /**
21
+ * URL of the image. This prop is required and must be valid.
22
+ */
23
+ src: string;
24
+ /**
25
+ * List of one or more strings separated by commas indicating a set of possible images for the user agent to use.
26
+ *
27
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/srcset
28
+ */
29
+ srcSet?: string;
30
+ /**
31
+ * One or more strings separated by commas, indicating a set of source sizes.
32
+ * If the srcSet attribute is absent or contains no values with a width descriptor,
33
+ * then this attribute has no effect.
34
+ *
35
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/sizes
36
+ */
37
+ sizes?: string;
38
+ /**
39
+ * Sets the rendered width of the image.
40
+ */
41
+ width?: string;
42
+ /**
43
+ * Sets the rendered height of the image.
44
+ */
45
+ height?: string;
46
+ /**
47
+ * Sets the object-fit CSS property.
48
+ *
49
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit
50
+ */
51
+ objectFit?: "contain" | "cover" | "fill" | "none" | "scale-down";
52
+ /**
53
+ * Sets the object-position CSS property.
54
+ *
55
+ * See MDN: https://developer.mozilla.org/en-US/docs/Web/CSS/object-position
56
+ */
57
+ objectPosition?: string;
58
+ /**
59
+ * This function will be called when the image is loaded.
60
+ */
61
+ onLoad?: React.ReactEventHandler<HTMLImageElement>;
62
+ /**
63
+ * This function will be called when the image fails to load.
64
+ */
65
+ onError?: React.ReactEventHandler<HTMLImageElement>;
66
+ };
67
+ export type CaptionWrapperProps = {
68
+ condition: boolean;
69
+ wrapper: (children: React.ReactNode) => JSX.Element;
70
+ children: React.ReactNode;
71
+ };
72
+ export default Props;
package/image/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import InsetPropsType from "./types";
3
+ export default function Inset({ space, horizontal, vertical, top, right, bottom, left, children, }: InsetPropsType): JSX.Element;
package/inset/Inset.js ADDED
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = Inset;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
11
+ var _templateObject;
12
+ function Inset(_ref) {
13
+ var space = _ref.space,
14
+ horizontal = _ref.horizontal,
15
+ vertical = _ref.vertical,
16
+ top = _ref.top,
17
+ right = _ref.right,
18
+ bottom = _ref.bottom,
19
+ left = _ref.left,
20
+ children = _ref.children;
21
+ return /*#__PURE__*/_react["default"].createElement(StyledInset, {
22
+ space: space,
23
+ horizontal: horizontal,
24
+ vertical: vertical,
25
+ top: top,
26
+ right: right,
27
+ bottom: bottom,
28
+ left: left
29
+ }, children);
30
+ }
31
+ function getSpacingValue(spacingName) {
32
+ return spacingName ? spacingName : "0rem";
33
+ }
34
+ var StyledInset = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n"])), function (_ref2) {
35
+ var space = _ref2.space,
36
+ horizontal = _ref2.horizontal,
37
+ vertical = _ref2.vertical,
38
+ top = _ref2.top,
39
+ right = _ref2.right,
40
+ bottom = _ref2.bottom,
41
+ left = _ref2.left;
42
+ return "\n padding: ".concat(getSpacingValue(top || vertical || space), " ").concat(getSpacingValue(right || horizontal || space), "\n ").concat(getSpacingValue(bottom || vertical || space), " ").concat(getSpacingValue(left || horizontal || space), ";\n");
43
+ });