@reykjavik/hanna-react 0.10.53 → 0.10.56

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 (706) hide show
  1. package/{types/AccordionList.d.ts → AccordionList.d.ts} +0 -0
  2. package/AccordionList.jsx +61 -0
  3. package/{types/ActionCards.d.ts → ActionCards.d.ts} +0 -0
  4. package/ActionCards.jsx +15 -0
  5. package/{types/Alert.d.ts → Alert.d.ts} +0 -0
  6. package/Alert.jsx +123 -0
  7. package/{types/ArticleCarousel → ArticleCarousel}/_ArticleCarouselCard.d.ts +1 -1
  8. package/ArticleCarousel/_ArticleCarouselCard.jsx +32 -0
  9. package/{types/ArticleCarousel.d.ts → ArticleCarousel.d.ts} +0 -0
  10. package/ArticleCarousel.jsx +13 -0
  11. package/{types/ArticleMeta.d.ts → ArticleMeta.d.ts} +0 -0
  12. package/ArticleMeta.jsx +42 -0
  13. package/{types/Attention.d.ts → Attention.d.ts} +0 -0
  14. package/Attention.jsx +9 -0
  15. package/{types/BasicTable.d.ts → BasicTable.d.ts} +0 -0
  16. package/BasicTable.jsx +35 -0
  17. package/{types/Bling.d.ts → Bling.d.ts} +0 -0
  18. package/Bling.jsx +49 -0
  19. package/{types/BlockBreak.d.ts → BlockBreak.d.ts} +0 -0
  20. package/BlockBreak.jsx +11 -0
  21. package/{types/BlockQuote.d.ts → BlockQuote.d.ts} +0 -0
  22. package/BlockQuote.jsx +9 -0
  23. package/{types/BreadCrumbs.d.ts → BreadCrumbs.d.ts} +0 -0
  24. package/BreadCrumbs.jsx +36 -0
  25. package/{types/ButtonBack.d.ts → ButtonBack.d.ts} +0 -0
  26. package/ButtonBack.jsx +9 -0
  27. package/{types/ButtonBar.d.ts → ButtonBar.d.ts} +0 -0
  28. package/ButtonBar.jsx +23 -0
  29. package/{types/ButtonPrimary.d.ts → ButtonPrimary.d.ts} +0 -0
  30. package/ButtonPrimary.jsx +9 -0
  31. package/{types/ButtonSecondary.d.ts → ButtonSecondary.d.ts} +0 -0
  32. package/ButtonSecondary.jsx +9 -0
  33. package/{types/ButtonTertiary.d.ts → ButtonTertiary.d.ts} +0 -0
  34. package/ButtonTertiary.jsx +20 -0
  35. package/CHANGELOG.md +14 -6
  36. package/{types/Carousel.d.ts → Carousel.d.ts} +0 -0
  37. package/Carousel.jsx +9 -0
  38. package/{types/CarouselStepper.d.ts → CarouselStepper.d.ts} +0 -0
  39. package/CarouselStepper.jsx +9 -0
  40. package/{types/CenterColumn.d.ts → CenterColumn.d.ts} +0 -0
  41. package/CenterColumn.jsx +14 -0
  42. package/{types/Checkbox.d.ts → Checkbox.d.ts} +0 -0
  43. package/Checkbox.jsx +9 -0
  44. package/{types/CheckboxButtonsGroup.d.ts → CheckboxButtonsGroup.d.ts} +0 -0
  45. package/CheckboxButtonsGroup.jsx +19 -0
  46. package/{types/CheckboxGroup.d.ts → CheckboxGroup.d.ts} +0 -0
  47. package/CheckboxGroup.jsx +12 -0
  48. package/{types/CityBlock.d.ts → CityBlock.d.ts} +0 -0
  49. package/CityBlock.jsx +23 -0
  50. package/{types/ContactBubble.d.ts → ContactBubble.d.ts} +0 -0
  51. package/ContactBubble.jsx +192 -0
  52. package/{types/ContentArticle.d.ts → ContentArticle.d.ts} +0 -0
  53. package/ContentArticle.jsx +29 -0
  54. package/{types/ContentImage.d.ts → ContentImage.d.ts} +0 -0
  55. package/ContentImage.jsx +18 -0
  56. package/{types/Datepicker.d.ts → Datepicker.d.ts} +0 -0
  57. package/Datepicker.jsx +92 -0
  58. package/{types/ExtraLinks.d.ts → ExtraLinks.d.ts} +0 -0
  59. package/ExtraLinks.jsx +47 -0
  60. package/{types/FeatureList.d.ts → FeatureList.d.ts} +0 -0
  61. package/FeatureList.jsx +28 -0
  62. package/{types/FieldGroup.d.ts → FieldGroup.d.ts} +0 -0
  63. package/FieldGroup.jsx +15 -0
  64. package/{types/FileInput.d.ts → FileInput.d.ts} +0 -0
  65. package/FileInput.jsx +185 -0
  66. package/{types/Foonote.d.ts → Foonote.d.ts} +0 -0
  67. package/Foonote.jsx +12 -0
  68. package/{types/FooterBadges.d.ts → FooterBadges.d.ts} +0 -0
  69. package/FooterBadges.jsx +21 -0
  70. package/{types/FooterInfo.d.ts → FooterInfo.d.ts} +0 -0
  71. package/FooterInfo.jsx +19 -0
  72. package/{types/Footnote.d.ts → Footnote.d.ts} +0 -0
  73. package/Footnote.jsx +8 -0
  74. package/{types/Form.d.ts → Form.d.ts} +0 -0
  75. package/Form.jsx +17 -0
  76. package/{types/FormField.d.ts → FormField.d.ts} +0 -0
  77. package/FormField.jsx +121 -0
  78. package/{types/Gallery → Gallery}/_GalleryItem.d.ts +0 -0
  79. package/Gallery/_GalleryItem.jsx +59 -0
  80. package/{types/Gallery → Gallery}/_GalleryModal.d.ts +0 -0
  81. package/Gallery/_GalleryModal.jsx +86 -0
  82. package/{types/Gallery → Gallery}/_GalleryModalContext.d.ts +0 -0
  83. package/Gallery/_GalleryModalContext.js +8 -0
  84. package/{types/Gallery → Gallery}/_GalleryModalItem.d.ts +0 -0
  85. package/Gallery/_GalleryModalItem.jsx +29 -0
  86. package/{types/Gallery.d.ts → Gallery.d.ts} +0 -0
  87. package/Gallery.jsx +56 -0
  88. package/{types/GridBlocks.d.ts → GridBlocks.d.ts} +0 -0
  89. package/GridBlocks.jsx +40 -0
  90. package/{types/Heading.d.ts → Heading.d.ts} +0 -0
  91. package/Heading.jsx +24 -0
  92. package/{types/HeroBlock.d.ts → HeroBlock.d.ts} +0 -0
  93. package/HeroBlock.jsx +27 -0
  94. package/{types/IframeBlock.d.ts → IframeBlock.d.ts} +0 -0
  95. package/IframeBlock.jsx +31 -0
  96. package/{types/Illustration.d.ts → Illustration.d.ts} +0 -0
  97. package/Illustration.jsx +13 -0
  98. package/{types/ImageCards.d.ts → ImageCards.d.ts} +0 -0
  99. package/ImageCards.jsx +28 -0
  100. package/{types/InfoBlock.d.ts → InfoBlock.d.ts} +0 -0
  101. package/InfoBlock.jsx +23 -0
  102. package/{types/InfoHero.d.ts → InfoHero.d.ts} +0 -0
  103. package/InfoHero.jsx +93 -0
  104. package/{types/IslandBlock.d.ts → IslandBlock.d.ts} +0 -0
  105. package/IslandBlock.jsx +21 -0
  106. package/{types/IslandPageBlock.d.ts → IslandPageBlock.d.ts} +0 -0
  107. package/IslandPageBlock.jsx +21 -0
  108. package/{types/LabeledTextBlock.d.ts → LabeledTextBlock.d.ts} +0 -0
  109. package/LabeledTextBlock.jsx +21 -0
  110. package/{types/Layout.d.ts → Layout.d.ts} +0 -0
  111. package/Layout.jsx +69 -0
  112. package/{types/MainMenu → MainMenu}/_Auxiliary.d.ts +0 -0
  113. package/MainMenu/_Auxiliary.jsx +26 -0
  114. package/{types/MainMenu → MainMenu}/_PrimaryPanel.d.ts +0 -0
  115. package/MainMenu/_PrimaryPanel.jsx +37 -0
  116. package/{types/MainMenu.d.ts → MainMenu.d.ts} +1 -1
  117. package/MainMenu.jsx +178 -0
  118. package/{types/MiniMetrics.d.ts → MiniMetrics.d.ts} +0 -0
  119. package/MiniMetrics.jsx +16 -0
  120. package/{types/Modal.d.ts → Modal.d.ts} +0 -0
  121. package/Modal.jsx +21 -0
  122. package/{types/NameCard.d.ts → NameCard.d.ts} +0 -0
  123. package/NameCard.jsx +92 -0
  124. package/{types/NameCards.d.ts → NameCards.d.ts} +0 -0
  125. package/NameCards.jsx +14 -0
  126. package/{types/NewsHero.d.ts → NewsHero.d.ts} +0 -0
  127. package/NewsHero.jsx +93 -0
  128. package/{types/PageFilter.d.ts → PageFilter.d.ts} +0 -0
  129. package/PageFilter.jsx +21 -0
  130. package/{types/PageHeading.d.ts → PageHeading.d.ts} +0 -0
  131. package/PageHeading.jsx +19 -0
  132. package/{types/ProcessOverview.d.ts → ProcessOverview.d.ts} +0 -0
  133. package/ProcessOverview.jsx +25 -0
  134. package/{types/PullQuote.d.ts → PullQuote.d.ts} +0 -0
  135. package/PullQuote.jsx +9 -0
  136. package/{types/RadioButtonsGroup.d.ts → RadioButtonsGroup.d.ts} +0 -0
  137. package/RadioButtonsGroup.jsx +19 -0
  138. package/{types/RadioGroup.d.ts → RadioGroup.d.ts} +0 -0
  139. package/RadioGroup.jsx +12 -0
  140. package/{types/RelatedLinks.d.ts → RelatedLinks.d.ts} +0 -0
  141. package/RelatedLinks.jsx +35 -0
  142. package/{types/RowBlock.d.ts → RowBlock.d.ts} +0 -0
  143. package/RowBlock.jsx +16 -0
  144. package/{types/RowBlockColumn.d.ts → RowBlockColumn.d.ts} +0 -0
  145. package/RowBlockColumn.jsx +18 -0
  146. package/{types/SearchInput.d.ts → SearchInput.d.ts} +0 -0
  147. package/SearchInput.jsx +63 -0
  148. package/{types/SearchResults → SearchResults}/_SearchResultsItem.d.ts +0 -0
  149. package/SearchResults/_SearchResultsItem.jsx +24 -0
  150. package/{types/SearchResults.d.ts → SearchResults.d.ts} +0 -0
  151. package/SearchResults.jsx +146 -0
  152. package/{types/SeenEffect.d.ts → SeenEffect.d.ts} +0 -0
  153. package/SeenEffect.jsx +24 -0
  154. package/{types/Selectbox.d.ts → Selectbox.d.ts} +0 -0
  155. package/Selectbox.jsx +74 -0
  156. package/{types/ShareButtons.d.ts → ShareButtons.d.ts} +0 -0
  157. package/ShareButtons.jsx +82 -0
  158. package/{types/Sharpie.d.ts → Sharpie.d.ts} +0 -0
  159. package/Sharpie.jsx +27 -0
  160. package/{types/SiteSearchAutocomplete.d.ts → SiteSearchAutocomplete.d.ts} +0 -0
  161. package/SiteSearchAutocomplete.jsx +89 -0
  162. package/{types/SiteSearchCurtain.d.ts → SiteSearchCurtain.d.ts} +0 -0
  163. package/SiteSearchCurtain.jsx +65 -0
  164. package/SiteSearchInput.d.ts +24 -0
  165. package/SiteSearchInput.jsx +70 -0
  166. package/{types/Skeleton.d.ts → Skeleton.d.ts} +0 -0
  167. package/Skeleton.jsx +35 -0
  168. package/{types/SubHeading.d.ts → SubHeading.d.ts} +0 -0
  169. package/SubHeading.jsx +20 -0
  170. package/{types/Tabs.d.ts → Tabs.d.ts} +0 -0
  171. package/Tabs.jsx +122 -0
  172. package/{types/TagPill.d.ts → TagPill.d.ts} +0 -0
  173. package/TagPill.jsx +53 -0
  174. package/{types/TextBlock.d.ts → TextBlock.d.ts} +0 -0
  175. package/TextBlock.jsx +22 -0
  176. package/{types/TextButton.d.ts → TextButton.d.ts} +0 -0
  177. package/TextButton.jsx +14 -0
  178. package/{types/TextInput.d.ts → TextInput.d.ts} +0 -0
  179. package/TextInput.jsx +63 -0
  180. package/{types/VSpacer.d.ts → VSpacer.d.ts} +0 -0
  181. package/VSpacer.jsx +46 -0
  182. package/{types/VerticalTabsTOC.d.ts → VerticalTabsTOC.d.ts} +0 -0
  183. package/VerticalTabsTOC.jsx +96 -0
  184. package/{types/WizardLayout.d.ts → WizardLayout.d.ts} +0 -0
  185. package/WizardLayout.jsx +44 -0
  186. package/{types/WizardLayoutClose.d.ts → WizardLayoutClose.d.ts} +0 -0
  187. package/WizardLayoutClose.jsx +9 -0
  188. package/{types/WizardStepper.d.ts → WizardStepper.d.ts} +0 -0
  189. package/WizardStepper.jsx +34 -0
  190. package/{types/_abstract → _abstract}/Button.d.ts +0 -0
  191. package/_abstract/Button.jsx +56 -0
  192. package/{types/_abstract → _abstract}/CardList.d.ts +0 -0
  193. package/_abstract/CardList.jsx +46 -0
  194. package/{types/_abstract → _abstract}/Image.d.ts +0 -0
  195. package/_abstract/Image.jsx +34 -0
  196. package/{types/_abstract → _abstract}/Link.d.ts +0 -0
  197. package/_abstract/Link.jsx +31 -0
  198. package/{types/_abstract → _abstract}/TogglerGroup.d.ts +0 -0
  199. package/_abstract/TogglerGroup.jsx +36 -0
  200. package/{types/_abstract → _abstract}/TogglerGroupField.d.ts +0 -0
  201. package/_abstract/TogglerGroupField.jsx +27 -0
  202. package/{types/_abstract → _abstract}/TogglerInput.d.ts +0 -0
  203. package/_abstract/TogglerInput.jsx +40 -0
  204. package/{types/_abstract → _abstract}/_AbstractCarousel.d.ts +0 -0
  205. package/_abstract/_AbstractCarousel.jsx +161 -0
  206. package/{types/_abstract → _abstract}/_Blings.d.ts +0 -0
  207. package/_abstract/_Blings.jsx +19 -0
  208. package/{types/_abstract → _abstract}/_Block.d.ts +0 -0
  209. package/_abstract/_Block.jsx +32 -0
  210. package/{types/_abstract → _abstract}/_Quote.d.ts +0 -0
  211. package/_abstract/_Quote.jsx +18 -0
  212. package/{types/_abstract → _abstract}/breakOnNL.d.ts +0 -0
  213. package/_abstract/breakOnNL.jsx +13 -0
  214. package/{types/assets.d.ts → assets.d.ts} +0 -0
  215. package/assets.js +51 -0
  216. package/{types/constants.d.ts → constants.d.ts} +0 -0
  217. package/constants.js +25 -0
  218. package/esm/AccordionList.d.ts +17 -0
  219. package/esm/AccordionList.jsx +33 -0
  220. package/esm/ActionCards.d.ts +5 -0
  221. package/esm/ActionCards.jsx +10 -0
  222. package/esm/Alert.d.ts +49 -0
  223. package/esm/Alert.jsx +94 -0
  224. package/esm/ArticleCarousel/_ArticleCarouselCard.d.ts +27 -0
  225. package/esm/ArticleCarousel/_ArticleCarouselCard.jsx +25 -0
  226. package/esm/ArticleCarousel.d.ts +12 -0
  227. package/esm/ArticleCarousel.jsx +8 -0
  228. package/esm/ArticleMeta.d.ts +9 -0
  229. package/esm/ArticleMeta.jsx +17 -0
  230. package/esm/Attention.d.ts +7 -0
  231. package/esm/Attention.jsx +4 -0
  232. package/esm/BasicTable.d.ts +12 -0
  233. package/esm/BasicTable.jsx +30 -0
  234. package/esm/Bling.d.ts +81 -0
  235. package/esm/Bling.jsx +44 -0
  236. package/esm/BlockBreak.d.ts +2 -0
  237. package/esm/BlockBreak.jsx +6 -0
  238. package/esm/BlockQuote.d.ts +4 -0
  239. package/esm/BlockQuote.jsx +4 -0
  240. package/esm/BreadCrumbs.d.ts +11 -0
  241. package/esm/BreadCrumbs.jsx +31 -0
  242. package/esm/ButtonBack.d.ts +7 -0
  243. package/esm/ButtonBack.jsx +4 -0
  244. package/esm/ButtonBar.d.ts +16 -0
  245. package/esm/ButtonBar.jsx +16 -0
  246. package/esm/ButtonPrimary.d.ts +7 -0
  247. package/esm/ButtonPrimary.jsx +4 -0
  248. package/esm/ButtonSecondary.d.ts +7 -0
  249. package/esm/ButtonSecondary.jsx +4 -0
  250. package/esm/ButtonTertiary.d.ts +12 -0
  251. package/esm/ButtonTertiary.jsx +15 -0
  252. package/esm/Carousel.d.ts +4 -0
  253. package/esm/Carousel.jsx +4 -0
  254. package/esm/CarouselStepper.d.ts +4 -0
  255. package/esm/CarouselStepper.jsx +4 -0
  256. package/esm/CenterColumn.d.ts +7 -0
  257. package/esm/CenterColumn.jsx +9 -0
  258. package/esm/Checkbox.d.ts +4 -0
  259. package/esm/Checkbox.jsx +4 -0
  260. package/esm/CheckboxButtonsGroup.d.ts +11 -0
  261. package/esm/CheckboxButtonsGroup.jsx +14 -0
  262. package/esm/CheckboxGroup.d.ts +9 -0
  263. package/esm/CheckboxGroup.jsx +7 -0
  264. package/esm/CityBlock.d.ts +23 -0
  265. package/esm/CityBlock.jsx +18 -0
  266. package/esm/ContactBubble.d.ts +58 -0
  267. package/esm/ContactBubble.jsx +162 -0
  268. package/esm/ContentArticle.d.ts +15 -0
  269. package/esm/ContentArticle.jsx +24 -0
  270. package/esm/ContentImage.d.ts +8 -0
  271. package/esm/ContentImage.jsx +13 -0
  272. package/esm/Datepicker.d.ts +39 -0
  273. package/esm/Datepicker.jsx +64 -0
  274. package/esm/ExtraLinks.d.ts +18 -0
  275. package/esm/ExtraLinks.jsx +42 -0
  276. package/esm/FeatureList.d.ts +12 -0
  277. package/esm/FeatureList.jsx +23 -0
  278. package/esm/FieldGroup.d.ts +9 -0
  279. package/esm/FieldGroup.jsx +10 -0
  280. package/esm/FileInput.d.ts +17 -0
  281. package/esm/FileInput.jsx +157 -0
  282. package/esm/Foonote.d.ts +12 -0
  283. package/esm/Foonote.jsx +7 -0
  284. package/esm/FooterBadges.d.ts +9 -0
  285. package/esm/FooterBadges.jsx +16 -0
  286. package/esm/FooterInfo.d.ts +18 -0
  287. package/esm/FooterInfo.jsx +14 -0
  288. package/esm/Footnote.d.ts +6 -0
  289. package/esm/Footnote.jsx +3 -0
  290. package/esm/Form.d.ts +7 -0
  291. package/esm/Form.jsx +12 -0
  292. package/esm/FormField.d.ts +65 -0
  293. package/esm/FormField.jsx +93 -0
  294. package/esm/Gallery/_GalleryItem.d.ts +8 -0
  295. package/esm/Gallery/_GalleryItem.jsx +31 -0
  296. package/esm/Gallery/_GalleryModal.d.ts +6 -0
  297. package/esm/Gallery/_GalleryModal.jsx +58 -0
  298. package/esm/Gallery/_GalleryModalContext.d.ts +9 -0
  299. package/esm/Gallery/_GalleryModalContext.js +3 -0
  300. package/esm/Gallery/_GalleryModalItem.d.ts +3 -0
  301. package/esm/Gallery/_GalleryModalItem.jsx +24 -0
  302. package/esm/Gallery.d.ts +17 -0
  303. package/esm/Gallery.jsx +28 -0
  304. package/esm/GridBlocks.d.ts +26 -0
  305. package/esm/GridBlocks.jsx +35 -0
  306. package/esm/Heading.d.ts +16 -0
  307. package/esm/Heading.jsx +19 -0
  308. package/esm/HeroBlock.d.ts +19 -0
  309. package/esm/HeroBlock.jsx +22 -0
  310. package/esm/IframeBlock.d.ts +23 -0
  311. package/esm/IframeBlock.jsx +26 -0
  312. package/esm/Illustration.d.ts +13 -0
  313. package/esm/Illustration.jsx +8 -0
  314. package/esm/ImageCards.d.ts +8 -0
  315. package/esm/ImageCards.jsx +23 -0
  316. package/esm/InfoBlock.d.ts +17 -0
  317. package/esm/InfoBlock.jsx +18 -0
  318. package/esm/InfoHero.d.ts +17 -0
  319. package/esm/InfoHero.jsx +88 -0
  320. package/esm/IslandBlock.d.ts +25 -0
  321. package/esm/IslandBlock.jsx +16 -0
  322. package/esm/IslandPageBlock.d.ts +24 -0
  323. package/esm/IslandPageBlock.jsx +16 -0
  324. package/esm/LabeledTextBlock.d.ts +11 -0
  325. package/esm/LabeledTextBlock.jsx +16 -0
  326. package/esm/Layout.d.ts +33 -0
  327. package/esm/Layout.jsx +63 -0
  328. package/esm/MainMenu/_Auxiliary.d.ts +6 -0
  329. package/esm/MainMenu/_Auxiliary.jsx +19 -0
  330. package/esm/MainMenu/_PrimaryPanel.d.ts +13 -0
  331. package/esm/MainMenu/_PrimaryPanel.jsx +30 -0
  332. package/esm/MainMenu.d.ts +48 -0
  333. package/esm/MainMenu.jsx +149 -0
  334. package/esm/MiniMetrics.d.ts +8 -0
  335. package/esm/MiniMetrics.jsx +11 -0
  336. package/esm/Modal.d.ts +10 -0
  337. package/esm/Modal.jsx +16 -0
  338. package/esm/NameCard.d.ts +64 -0
  339. package/esm/NameCard.jsx +87 -0
  340. package/esm/NameCards.d.ts +6 -0
  341. package/esm/NameCards.jsx +9 -0
  342. package/esm/NewsHero.d.ts +14 -0
  343. package/esm/NewsHero.jsx +88 -0
  344. package/esm/PageFilter.d.ts +17 -0
  345. package/esm/PageFilter.jsx +16 -0
  346. package/esm/PageHeading.d.ts +10 -0
  347. package/esm/PageHeading.jsx +14 -0
  348. package/esm/ProcessOverview.d.ts +13 -0
  349. package/esm/ProcessOverview.jsx +20 -0
  350. package/esm/PullQuote.d.ts +4 -0
  351. package/esm/PullQuote.jsx +4 -0
  352. package/esm/RadioButtonsGroup.d.ts +11 -0
  353. package/esm/RadioButtonsGroup.jsx +14 -0
  354. package/esm/RadioGroup.d.ts +13 -0
  355. package/esm/RadioGroup.jsx +7 -0
  356. package/esm/RelatedLinks.d.ts +20 -0
  357. package/esm/RelatedLinks.jsx +30 -0
  358. package/esm/RowBlock.d.ts +12 -0
  359. package/esm/RowBlock.jsx +11 -0
  360. package/esm/RowBlockColumn.d.ts +8 -0
  361. package/esm/RowBlockColumn.jsx +13 -0
  362. package/esm/SearchInput.d.ts +18 -0
  363. package/esm/SearchInput.jsx +35 -0
  364. package/esm/SearchResults/_SearchResultsItem.d.ts +18 -0
  365. package/esm/SearchResults/_SearchResultsItem.jsx +19 -0
  366. package/esm/SearchResults.d.ts +33 -0
  367. package/esm/SearchResults.jsx +118 -0
  368. package/esm/SeenEffect.d.ts +4 -0
  369. package/esm/SeenEffect.jsx +19 -0
  370. package/esm/Selectbox.d.ts +8 -0
  371. package/esm/Selectbox.jsx +46 -0
  372. package/esm/ShareButtons.d.ts +9 -0
  373. package/esm/ShareButtons.jsx +57 -0
  374. package/esm/Sharpie.d.ts +23 -0
  375. package/esm/Sharpie.jsx +22 -0
  376. package/esm/SiteSearchAutocomplete.d.ts +40 -0
  377. package/esm/SiteSearchAutocomplete.jsx +60 -0
  378. package/esm/SiteSearchCurtain.d.ts +6 -0
  379. package/esm/SiteSearchCurtain.jsx +37 -0
  380. package/esm/SiteSearchInput.d.ts +24 -0
  381. package/esm/SiteSearchInput.jsx +42 -0
  382. package/esm/Skeleton.d.ts +25 -0
  383. package/esm/Skeleton.jsx +30 -0
  384. package/esm/SubHeading.d.ts +10 -0
  385. package/esm/SubHeading.jsx +15 -0
  386. package/esm/Tabs.d.ts +35 -0
  387. package/esm/Tabs.jsx +94 -0
  388. package/esm/TagPill.d.ts +27 -0
  389. package/esm/TagPill.jsx +48 -0
  390. package/esm/TextBlock.d.ts +15 -0
  391. package/esm/TextBlock.jsx +17 -0
  392. package/esm/TextButton.d.ts +9 -0
  393. package/esm/TextButton.jsx +9 -0
  394. package/esm/TextInput.d.ts +16 -0
  395. package/esm/TextInput.jsx +35 -0
  396. package/esm/VSpacer.d.ts +24 -0
  397. package/esm/VSpacer.jsx +41 -0
  398. package/esm/VerticalTabsTOC.d.ts +14 -0
  399. package/esm/VerticalTabsTOC.jsx +68 -0
  400. package/esm/WizardLayout.d.ts +15 -0
  401. package/esm/WizardLayout.jsx +39 -0
  402. package/esm/WizardLayoutClose.d.ts +3 -0
  403. package/esm/WizardLayoutClose.jsx +4 -0
  404. package/esm/WizardStepper.d.ts +36 -0
  405. package/esm/WizardStepper.jsx +29 -0
  406. package/esm/_abstract/Button.d.ts +40 -0
  407. package/esm/_abstract/Button.jsx +51 -0
  408. package/esm/_abstract/CardList.d.ts +29 -0
  409. package/esm/_abstract/CardList.jsx +39 -0
  410. package/esm/_abstract/Image.d.ts +32 -0
  411. package/esm/_abstract/Image.jsx +29 -0
  412. package/esm/_abstract/Link.d.ts +27 -0
  413. package/esm/_abstract/Link.jsx +24 -0
  414. package/esm/_abstract/TogglerGroup.d.ts +31 -0
  415. package/esm/_abstract/TogglerGroup.jsx +31 -0
  416. package/esm/_abstract/TogglerGroupField.d.ts +17 -0
  417. package/esm/_abstract/TogglerGroupField.jsx +22 -0
  418. package/esm/_abstract/TogglerInput.d.ts +22 -0
  419. package/esm/_abstract/TogglerInput.jsx +35 -0
  420. package/esm/_abstract/_AbstractCarousel.d.ts +25 -0
  421. package/esm/_abstract/_AbstractCarousel.jsx +133 -0
  422. package/esm/_abstract/_Blings.d.ts +11 -0
  423. package/esm/_abstract/_Blings.jsx +14 -0
  424. package/esm/_abstract/_Block.d.ts +22 -0
  425. package/esm/_abstract/_Block.jsx +27 -0
  426. package/esm/_abstract/_Quote.d.ts +9 -0
  427. package/esm/_abstract/_Quote.jsx +11 -0
  428. package/esm/_abstract/breakOnNL.d.ts +2 -0
  429. package/esm/_abstract/breakOnNL.jsx +8 -0
  430. package/esm/assets.d.ts +42 -0
  431. package/esm/assets.js +56 -0
  432. package/esm/constants.d.ts +39 -0
  433. package/esm/constants.js +22 -0
  434. package/{types → esm}/focus-visible.d.ts +0 -0
  435. package/esm/focus-visible.js +1 -0
  436. package/esm/package.json +1 -0
  437. package/{types → esm}/utils/env.d.ts +0 -0
  438. package/esm/utils/env.js +8 -0
  439. package/{types → esm}/utils/seenEffect.d.ts +0 -0
  440. package/esm/utils/seenEffect.js +73 -0
  441. package/{types → esm}/utils/useFormatMonitor.d.ts +0 -0
  442. package/esm/utils/useFormatMonitor.js +41 -0
  443. package/{types → esm}/utils/useGetSVGtext.d.ts +0 -0
  444. package/esm/utils/useGetSVGtext.js +19 -0
  445. package/{types → esm}/utils/useMenuToggling.d.ts +0 -0
  446. package/esm/utils/useMenuToggling.js +62 -0
  447. package/{types → esm}/utils/useScrollbarWidthCSSVar.d.ts +0 -0
  448. package/esm/utils/useScrollbarWidthCSSVar.js +3 -0
  449. package/{types → esm}/utils.d.ts +0 -0
  450. package/esm/utils.js +2 -0
  451. package/focus-visible.d.ts +1 -0
  452. package/focus-visible.js +3 -0
  453. package/package.json +362 -452
  454. package/utils/env.d.ts +1 -0
  455. package/utils/env.js +14 -0
  456. package/utils/seenEffect.d.ts +28 -0
  457. package/utils/seenEffect.js +81 -0
  458. package/utils/useFormatMonitor.d.ts +38 -0
  459. package/utils/useFormatMonitor.js +44 -0
  460. package/utils/useGetSVGtext.d.ts +6 -0
  461. package/utils/useGetSVGtext.js +23 -0
  462. package/utils/useMenuToggling.d.ts +8 -0
  463. package/utils/useMenuToggling.js +66 -0
  464. package/utils/useScrollbarWidthCSSVar.d.ts +1 -0
  465. package/utils/useScrollbarWidthCSSVar.js +10 -0
  466. package/utils.d.ts +2 -0
  467. package/utils.js +18 -0
  468. package/lib/AccordionList.cjs +0 -91
  469. package/lib/AccordionList.mjs +0 -69
  470. package/lib/ActionCards.cjs +0 -57
  471. package/lib/ActionCards.mjs +0 -35
  472. package/lib/Alert.cjs +0 -159
  473. package/lib/Alert.mjs +0 -139
  474. package/lib/ArticleCarousel/_ArticleCarouselCard.cjs +0 -75
  475. package/lib/ArticleCarousel/_ArticleCarouselCard.mjs +0 -51
  476. package/lib/ArticleCarousel.cjs +0 -43
  477. package/lib/ArticleCarousel.mjs +0 -21
  478. package/lib/ArticleMeta.cjs +0 -46
  479. package/lib/ArticleMeta.mjs +0 -22
  480. package/lib/Attention.cjs +0 -33
  481. package/lib/Attention.mjs +0 -9
  482. package/lib/BasicTable.cjs +0 -72
  483. package/lib/BasicTable.mjs +0 -50
  484. package/lib/Bling.cjs +0 -76
  485. package/lib/Bling.mjs +0 -52
  486. package/lib/BlockBreak.cjs +0 -32
  487. package/lib/BlockBreak.mjs +0 -8
  488. package/lib/BlockQuote.cjs +0 -47
  489. package/lib/BlockQuote.mjs +0 -25
  490. package/lib/BreadCrumbs.cjs +0 -67
  491. package/lib/BreadCrumbs.mjs +0 -43
  492. package/lib/ButtonBack.cjs +0 -47
  493. package/lib/ButtonBack.mjs +0 -25
  494. package/lib/ButtonBar.cjs +0 -45
  495. package/lib/ButtonBar.mjs +0 -18
  496. package/lib/ButtonPrimary.cjs +0 -47
  497. package/lib/ButtonPrimary.mjs +0 -25
  498. package/lib/ButtonSecondary.cjs +0 -47
  499. package/lib/ButtonSecondary.mjs +0 -25
  500. package/lib/ButtonTertiary.cjs +0 -64
  501. package/lib/ButtonTertiary.mjs +0 -42
  502. package/lib/Carousel.cjs +0 -52
  503. package/lib/Carousel.mjs +0 -30
  504. package/lib/CarouselStepper.cjs +0 -51
  505. package/lib/CarouselStepper.mjs +0 -29
  506. package/lib/CenterColumn.cjs +0 -40
  507. package/lib/CenterColumn.mjs +0 -16
  508. package/lib/Checkbox.cjs +0 -52
  509. package/lib/Checkbox.mjs +0 -30
  510. package/lib/CheckboxButtonsGroup.cjs +0 -65
  511. package/lib/CheckboxButtonsGroup.mjs +0 -43
  512. package/lib/CheckboxGroup.cjs +0 -55
  513. package/lib/CheckboxGroup.mjs +0 -33
  514. package/lib/CityBlock.cjs +0 -49
  515. package/lib/CityBlock.mjs +0 -25
  516. package/lib/ContactBubble.cjs +0 -200
  517. package/lib/ContactBubble.mjs +0 -173
  518. package/lib/ContentArticle.cjs +0 -63
  519. package/lib/ContentArticle.mjs +0 -41
  520. package/lib/ContentImage.cjs +0 -58
  521. package/lib/ContentImage.mjs +0 -36
  522. package/lib/Datepicker.cjs +0 -164
  523. package/lib/Datepicker.mjs +0 -142
  524. package/lib/ExtraLinks.cjs +0 -96
  525. package/lib/ExtraLinks.mjs +0 -74
  526. package/lib/FeatureList.cjs +0 -53
  527. package/lib/FeatureList.mjs +0 -29
  528. package/lib/FieldGroup.cjs +0 -40
  529. package/lib/FieldGroup.mjs +0 -16
  530. package/lib/FileInput.cjs +0 -256
  531. package/lib/FileInput.mjs +0 -234
  532. package/lib/Foonote.cjs +0 -30
  533. package/lib/Foonote.mjs +0 -6
  534. package/lib/FooterBadges.cjs +0 -49
  535. package/lib/FooterBadges.mjs +0 -25
  536. package/lib/FooterInfo.cjs +0 -47
  537. package/lib/FooterInfo.mjs +0 -23
  538. package/lib/Footnote.cjs +0 -32
  539. package/lib/Footnote.mjs +0 -8
  540. package/lib/Form.cjs +0 -56
  541. package/lib/Form.mjs +0 -34
  542. package/lib/FormField.cjs +0 -153
  543. package/lib/FormField.mjs +0 -131
  544. package/lib/Gallery/_GalleryItem.cjs +0 -83
  545. package/lib/Gallery/_GalleryItem.mjs +0 -61
  546. package/lib/Gallery/_GalleryModal.cjs +0 -104
  547. package/lib/Gallery/_GalleryModal.mjs +0 -82
  548. package/lib/Gallery/_GalleryModalContext.cjs +0 -30
  549. package/lib/Gallery/_GalleryModalContext.mjs +0 -6
  550. package/lib/Gallery/_GalleryModalItem.cjs +0 -59
  551. package/lib/Gallery/_GalleryModalItem.mjs +0 -36
  552. package/lib/Gallery.cjs +0 -79
  553. package/lib/Gallery.mjs +0 -57
  554. package/lib/GridBlocks.cjs +0 -81
  555. package/lib/GridBlocks.mjs +0 -59
  556. package/lib/Heading.cjs +0 -45
  557. package/lib/Heading.mjs +0 -21
  558. package/lib/HeroBlock.cjs +0 -74
  559. package/lib/HeroBlock.mjs +0 -52
  560. package/lib/IframeBlock.cjs +0 -48
  561. package/lib/IframeBlock.mjs +0 -24
  562. package/lib/Illustration.cjs +0 -51
  563. package/lib/Illustration.mjs +0 -31
  564. package/lib/ImageCards.cjs +0 -72
  565. package/lib/ImageCards.mjs +0 -52
  566. package/lib/InfoBlock.cjs +0 -51
  567. package/lib/InfoBlock.mjs +0 -27
  568. package/lib/InfoHero.cjs +0 -150
  569. package/lib/InfoHero.mjs +0 -128
  570. package/lib/IslandBlock.cjs +0 -63
  571. package/lib/IslandBlock.mjs +0 -41
  572. package/lib/IslandPageBlock.cjs +0 -49
  573. package/lib/IslandPageBlock.mjs +0 -25
  574. package/lib/LabeledTextBlock.cjs +0 -60
  575. package/lib/LabeledTextBlock.mjs +0 -38
  576. package/lib/Layout.cjs +0 -113
  577. package/lib/Layout.mjs +0 -87
  578. package/lib/MainMenu/_Auxiliary.cjs +0 -54
  579. package/lib/MainMenu/_Auxiliary.mjs +0 -28
  580. package/lib/MainMenu/_PrimaryPanel.cjs +0 -74
  581. package/lib/MainMenu/_PrimaryPanel.mjs +0 -48
  582. package/lib/MainMenu.cjs +0 -209
  583. package/lib/MainMenu.mjs +0 -187
  584. package/lib/MiniMetrics.cjs +0 -56
  585. package/lib/MiniMetrics.mjs +0 -34
  586. package/lib/Modal.cjs +0 -70
  587. package/lib/Modal.mjs +0 -48
  588. package/lib/NameCard.cjs +0 -115
  589. package/lib/NameCard.mjs +0 -91
  590. package/lib/NameCards.cjs +0 -52
  591. package/lib/NameCards.mjs +0 -30
  592. package/lib/NewsHero.cjs +0 -136
  593. package/lib/NewsHero.mjs +0 -114
  594. package/lib/PageFilter.cjs +0 -48
  595. package/lib/PageFilter.mjs +0 -24
  596. package/lib/PageHeading.cjs +0 -42
  597. package/lib/PageHeading.mjs +0 -18
  598. package/lib/ProcessOverview.cjs +0 -52
  599. package/lib/ProcessOverview.mjs +0 -28
  600. package/lib/PullQuote.cjs +0 -47
  601. package/lib/PullQuote.mjs +0 -25
  602. package/lib/RadioButtonsGroup.cjs +0 -64
  603. package/lib/RadioButtonsGroup.mjs +0 -42
  604. package/lib/RadioGroup.cjs +0 -58
  605. package/lib/RadioGroup.mjs +0 -36
  606. package/lib/RelatedLinks.cjs +0 -61
  607. package/lib/RelatedLinks.mjs +0 -37
  608. package/lib/RowBlock.cjs +0 -39
  609. package/lib/RowBlock.mjs +0 -15
  610. package/lib/RowBlockColumn.cjs +0 -40
  611. package/lib/RowBlockColumn.mjs +0 -16
  612. package/lib/SearchInput.cjs +0 -136
  613. package/lib/SearchInput.mjs +0 -114
  614. package/lib/SearchResults/_SearchResultsItem.cjs +0 -54
  615. package/lib/SearchResults/_SearchResultsItem.mjs +0 -30
  616. package/lib/SearchResults.cjs +0 -172
  617. package/lib/SearchResults.mjs +0 -150
  618. package/lib/SeenEffect.cjs +0 -66
  619. package/lib/SeenEffect.mjs +0 -44
  620. package/lib/Selectbox.cjs +0 -144
  621. package/lib/Selectbox.mjs +0 -122
  622. package/lib/ShareButtons.cjs +0 -101
  623. package/lib/ShareButtons.mjs +0 -83
  624. package/lib/Sharpie.cjs +0 -51
  625. package/lib/Sharpie.mjs +0 -27
  626. package/lib/SiteSearchAutocomplete.cjs +0 -150
  627. package/lib/SiteSearchAutocomplete.mjs +0 -126
  628. package/lib/SiteSearchCurtain.cjs +0 -78
  629. package/lib/SiteSearchCurtain.mjs +0 -56
  630. package/lib/SiteSearchInput.cjs +0 -119
  631. package/lib/SiteSearchInput.mjs +0 -97
  632. package/lib/Skeleton.cjs +0 -63
  633. package/lib/Skeleton.mjs +0 -39
  634. package/lib/SubHeading.cjs +0 -43
  635. package/lib/SubHeading.mjs +0 -19
  636. package/lib/Tabs.cjs +0 -166
  637. package/lib/Tabs.mjs +0 -144
  638. package/lib/TagPill.cjs +0 -113
  639. package/lib/TagPill.mjs +0 -91
  640. package/lib/TextBlock.cjs +0 -45
  641. package/lib/TextBlock.mjs +0 -21
  642. package/lib/TextButton.cjs +0 -55
  643. package/lib/TextButton.mjs +0 -33
  644. package/lib/TextInput.cjs +0 -136
  645. package/lib/TextInput.mjs +0 -114
  646. package/lib/VSpacer.cjs +0 -70
  647. package/lib/VSpacer.mjs +0 -46
  648. package/lib/VerticalTabsTOC.cjs +0 -123
  649. package/lib/VerticalTabsTOC.mjs +0 -101
  650. package/lib/WizardLayout.cjs +0 -79
  651. package/lib/WizardLayout.mjs +0 -55
  652. package/lib/WizardLayoutClose.cjs +0 -47
  653. package/lib/WizardLayoutClose.mjs +0 -25
  654. package/lib/WizardStepper.cjs +0 -55
  655. package/lib/WizardStepper.mjs +0 -31
  656. package/lib/_abstract/Button.cjs +0 -114
  657. package/lib/_abstract/Button.mjs +0 -92
  658. package/lib/_abstract/CardList.cjs +0 -100
  659. package/lib/_abstract/CardList.mjs +0 -76
  660. package/lib/_abstract/Image.cjs +0 -75
  661. package/lib/_abstract/Image.mjs +0 -51
  662. package/lib/_abstract/Link.cjs +0 -37
  663. package/lib/_abstract/Link.mjs +0 -10
  664. package/lib/_abstract/TogglerGroup.cjs +0 -92
  665. package/lib/_abstract/TogglerGroup.mjs +0 -70
  666. package/lib/_abstract/TogglerGroupField.cjs +0 -121
  667. package/lib/_abstract/TogglerGroupField.mjs +0 -99
  668. package/lib/_abstract/TogglerInput.cjs +0 -105
  669. package/lib/_abstract/TogglerInput.mjs +0 -83
  670. package/lib/_abstract/_AbstractCarousel.cjs +0 -170
  671. package/lib/_abstract/_AbstractCarousel.mjs +0 -152
  672. package/lib/_abstract/_Blings.cjs +0 -47
  673. package/lib/_abstract/_Blings.mjs +0 -23
  674. package/lib/_abstract/_Block.cjs +0 -73
  675. package/lib/_abstract/_Block.mjs +0 -51
  676. package/lib/_abstract/_Quote.cjs +0 -43
  677. package/lib/_abstract/_Quote.mjs +0 -17
  678. package/lib/_abstract/breakOnNL.cjs +0 -30
  679. package/lib/_abstract/breakOnNL.mjs +0 -6
  680. package/lib/assets.cjs +0 -77
  681. package/lib/assets.mjs +0 -53
  682. package/lib/constants.cjs +0 -49
  683. package/lib/constants.mjs +0 -24
  684. package/lib/focus-visible.cjs +0 -1
  685. package/lib/focus-visible.mjs +0 -1
  686. package/lib/utils/config.cjs +0 -27
  687. package/lib/utils/config.mjs +0 -4
  688. package/lib/utils/detectEdgeScroll.cjs +0 -95
  689. package/lib/utils/detectEdgeScroll.mjs +0 -71
  690. package/lib/utils/env.cjs +0 -31
  691. package/lib/utils/env.mjs +0 -5
  692. package/lib/utils/seenEffect.cjs +0 -93
  693. package/lib/utils/seenEffect.mjs +0 -65
  694. package/lib/utils/useFormatMonitor.cjs +0 -29
  695. package/lib/utils/useFormatMonitor.mjs +0 -6
  696. package/lib/utils/useGetSVGtext.cjs +0 -44
  697. package/lib/utils/useGetSVGtext.mjs +0 -21
  698. package/lib/utils/useMenuToggling.cjs +0 -83
  699. package/lib/utils/useMenuToggling.mjs +0 -60
  700. package/lib/utils/useScrollbarWidthCSSVar.cjs +0 -32
  701. package/lib/utils/useScrollbarWidthCSSVar.mjs +0 -6
  702. package/lib/utils.cjs +0 -18
  703. package/lib/utils.mjs +0 -2
  704. package/types/SiteSearchInput.d.ts +0 -24
  705. package/types/utils/config.d.ts +0 -2
  706. package/types/utils/detectEdgeScroll.d.ts +0 -52
@@ -0,0 +1,48 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import React from 'react';
13
+ import getBemClass from '@hugsmidjan/react/utils/getBemClass';
14
+ import Button from './_abstract/Button';
15
+ const colors = {
16
+ normal: '',
17
+ green: 'color--green',
18
+ yellow: 'color--yellow',
19
+ orange: 'color--orange',
20
+ red: 'color--red',
21
+ };
22
+ const TagPill = (props) => {
23
+ const { modifier, large, removable, onRemove, children, color = 'normal', label = children, removeLabel = 'x', removeLabelLong = removeLabel } = props, buttonProps = __rest(props, ["modifier", "large", "removable", "onRemove", "children", "color", "label", "removeLabel", "removeLabelLong"]);
24
+ const isStatic = !('href' in props || 'type' in props || props.onClick);
25
+ process.env.NODE_ENV !== 'production' &&
26
+ removable &&
27
+ isStatic &&
28
+ !onRemove &&
29
+ console.warn('static (non-button) `TagPill`s must not be removable');
30
+ const modifiers = [modifier, large && 'large', colors[color]];
31
+ const removeBtn = removable && (<button className="TagPill__remove" onClick={onRemove && (() => onRemove())} aria-label={removeLabelLong} type="button">
32
+ {removeLabel}
33
+ </button>);
34
+ return isStatic ? (<span className={getBemClass('TagPill', modifiers)}>
35
+ {label} {removeBtn}
36
+ </span>) : onRemove ? (<span className={getBemClass('TagPill', modifiers)}>
37
+ <Button bem="TagPill__button" {...buttonProps}>
38
+ {label}
39
+ </Button>{' '}
40
+ {removeBtn}
41
+ </span>) : (<Button bem="TagPill" {...buttonProps} modifier={modifiers}>
42
+ {label}{' '}
43
+ {removable && (<span className="TagPill__remove" aria-label={removeLabelLong}>
44
+ {removeLabel}
45
+ </span>)}
46
+ </Button>);
47
+ };
48
+ export default TagPill;
@@ -0,0 +1,15 @@
1
+ import { ReactNode } from 'react';
2
+ import { SeenProp } from './utils/seenEffect';
3
+ import { ComponentLayoutProps } from './constants';
4
+ export declare type TextBlockProps = ComponentLayoutProps & {
5
+ /** Make H2 headings float to the left
6
+ *
7
+ * Overrides the `align` and `wide` prop and automatically sets `align` to `right`
8
+ */
9
+ labelled?: boolean;
10
+ /** Sets a smaller text-size */
11
+ small?: boolean;
12
+ children: ReactNode;
13
+ } & SeenProp;
14
+ declare const TextBlock: (props: TextBlockProps) => JSX.Element;
15
+ export default TextBlock;
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import getBemClass from '@hugsmidjan/react/utils/getBemClass';
3
+ import { useSeenEffect } from './utils/seenEffect';
4
+ const TextBlock = (props) => {
5
+ const { children, align, labelled, wide, small, startSeen } = props;
6
+ const rightAligned = align === 'right' || labelled;
7
+ const [ref] = useSeenEffect(startSeen);
8
+ return (<div className={getBemClass('TextBlock', [
9
+ labelled && 'labelled',
10
+ rightAligned && 'align--right',
11
+ wide && !rightAligned && 'wide',
12
+ small && !labelled && 'small',
13
+ ])} ref={ref}>
14
+ {children}
15
+ </div>);
16
+ };
17
+ export default TextBlock;
@@ -0,0 +1,9 @@
1
+ import { ReactNode } from 'react';
2
+ import { ButtonProps } from './_abstract/Button';
3
+ export declare type TextButtonProps = ButtonProps & {
4
+ disabled?: never;
5
+ };
6
+ declare const TextButton: (props: TextButtonProps & {
7
+ children?: ReactNode;
8
+ }) => JSX.Element;
9
+ export default TextButton;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import Button from './_abstract/Button';
3
+ const TextButton = (props) => {
4
+ if ('disabled' in props) {
5
+ props = Object.assign(Object.assign({}, props), { disabled: undefined });
6
+ }
7
+ return <Button bem="TextButton" {...props}/>;
8
+ };
9
+ export default TextButton;
@@ -0,0 +1,16 @@
1
+ import { RefObject } from 'react';
2
+ import { FormFieldWrappingProps } from './FormField';
3
+ declare type InputElmProps = JSX.IntrinsicElements['input'];
4
+ declare type TextareaElmProps = JSX.IntrinsicElements['textarea'];
5
+ export declare type TextInputProps = {
6
+ small?: boolean;
7
+ children?: undefined;
8
+ } & FormFieldWrappingProps & (({
9
+ type?: 'text' | 'email' | 'tel' | 'number' | 'date' | 'url' | 'password' | 'search';
10
+ inputRef?: RefObject<HTMLInputElement>;
11
+ } & InputElmProps) | ({
12
+ type: 'textarea';
13
+ inputRef?: RefObject<HTMLTextAreaElement>;
14
+ } & TextareaElmProps));
15
+ declare const TextInput: (props: TextInputProps) => JSX.Element;
16
+ export default TextInput;
@@ -0,0 +1,35 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import React, { useState } from 'react';
13
+ import getBemClass from '@hugsmidjan/react/utils/getBemClass';
14
+ import FormField from './FormField';
15
+ const TextInput = (props) => {
16
+ var _a;
17
+ const { className, label, assistText, hideLabel, disabled, readOnly, invalid, errorMessage, required, reqText, id, onChange, small, type, ssr, inputRef } = props, inputElementProps = __rest(props, ["className", "label", "assistText", "hideLabel", "disabled", "readOnly", "invalid", "errorMessage", "required", "reqText", "id", "onChange", "small", "type", "ssr", "inputRef"]);
18
+ const { value, defaultValue, placeholder } = inputElementProps;
19
+ const [hasValue, setHasValue] = useState(undefined);
20
+ const filled = !!((_a = value !== null && value !== void 0 ? value : hasValue) !== null && _a !== void 0 ? _a : !!defaultValue);
21
+ const empty = !filled && !placeholder;
22
+ const multiline = type === 'textarea';
23
+ const modifiers = [multiline && 'multiline'];
24
+ const _onChange = value != null
25
+ ? onChange
26
+ : (e) => {
27
+ setHasValue(!!e.target.value);
28
+ onChange &&
29
+ onChange(
30
+ // TypeScript is silly sometimes.
31
+ e);
32
+ };
33
+ return (<FormField className={getBemClass('TextInput', modifiers, className)} ssr={ssr} small={small} label={label} empty={empty} filled={filled} assistText={assistText} hideLabel={hideLabel} disabled={disabled} readOnly={readOnly} invalid={invalid} errorMessage={errorMessage} required={required} reqText={reqText} id={id} renderInput={(className, inputProps, addFocusProps) => multiline ? (<textarea className={className.input} onChange={_onChange} {...inputProps} {...addFocusProps(inputElementProps)} ref={inputRef}/>) : (<input className={className.input} onChange={_onChange} type={type} {...inputProps} {...addFocusProps(inputElementProps)} ref={inputRef}/>)}/>);
34
+ };
35
+ export default TextInput;
@@ -0,0 +1,24 @@
1
+ import { ReactNode } from 'react';
2
+ declare const sizes: {
3
+ readonly none: "none";
4
+ readonly small: "small";
5
+ readonly default: "";
6
+ readonly medium: "";
7
+ readonly large: "large";
8
+ readonly xlarge: "xlarge";
9
+ };
10
+ declare type VSpacerSize = keyof typeof sizes;
11
+ declare type VSpacerSizePos = Exclude<VSpacerSize, 'none'>;
12
+ export declare type VSpacerProps = {
13
+ children?: never;
14
+ size?: VSpacerSizePos;
15
+ top?: never;
16
+ bottom?: never;
17
+ } | {
18
+ children: ReactNode;
19
+ size?: VSpacerSizePos;
20
+ top?: VSpacerSize;
21
+ bottom?: VSpacerSize;
22
+ };
23
+ declare const VSpacer: (props: VSpacerProps) => JSX.Element;
24
+ export default VSpacer;
@@ -0,0 +1,41 @@
1
+ import React from 'react';
2
+ import getBemClass from '@hugsmidjan/react/utils/getBemClass';
3
+ const sizes = {
4
+ none: 'none',
5
+ small: 'small',
6
+ default: '',
7
+ medium: '',
8
+ large: 'large',
9
+ xlarge: 'xlarge',
10
+ };
11
+ const hasChildren = (children) => (children && !(Array.isArray(children) && !children.length)) || undefined;
12
+ const normalizeProp = (value, exclude) => value && value !== exclude ? sizes[value] : undefined;
13
+ const VSpacer = (props) => {
14
+ const { size, top, bottom, children } = props;
15
+ const isWrapper = hasChildren(children);
16
+ let topVal = normalizeProp(isWrapper && top);
17
+ let bottomVal = normalizeProp(isWrapper && bottom);
18
+ let sizeVal = !(topVal && bottomVal) && normalizeProp(size, 'none');
19
+ // collapse effectively-duplicate class modifiers
20
+ if (!sizeVal && topVal === bottomVal && topVal !== 'none') {
21
+ sizeVal = topVal;
22
+ topVal = bottomVal = undefined;
23
+ }
24
+ else if (sizeVal) {
25
+ if (sizeVal === topVal) {
26
+ sizeVal = topVal;
27
+ topVal = undefined;
28
+ }
29
+ if (sizeVal === bottomVal) {
30
+ sizeVal = bottomVal;
31
+ bottomVal = undefined;
32
+ }
33
+ }
34
+ const className = getBemClass('VSpacer', [
35
+ sizeVal,
36
+ topVal && 'top--' + topVal,
37
+ bottomVal && 'bottom--' + bottomVal,
38
+ ]);
39
+ return isWrapper ? (<div className={className}>{children}</div>) : (<hr className={className}/>);
40
+ };
41
+ export default VSpacer;
@@ -0,0 +1,14 @@
1
+ import { TabItemProps, TabsProps } from './Tabs';
2
+ export declare type VerticalTabsTOCItem = TabItemProps & {
3
+ items?: Array<VerticalTabsTOCSubItem>;
4
+ };
5
+ export declare type VerticalTabsTOCSubItem = TabItemProps & {
6
+ type?: never;
7
+ href: string;
8
+ };
9
+ export declare type VerticalTabsTOCProps = {
10
+ items: Array<VerticalTabsTOCItem>;
11
+ onItemSelect: (itemId: string) => void;
12
+ } & Pick<TabsProps, 'aria-label' | 'ssr' | 'activateOnFocus' | 'id' | 'startSeen'>;
13
+ declare const VerticalTabsTOC: (props: VerticalTabsTOCProps) => JSX.Element;
14
+ export default VerticalTabsTOC;
@@ -0,0 +1,68 @@
1
+ import React, { useEffect, useMemo, useState } from 'react';
2
+ import { setFrag } from '@hugsmidjan/qj/frag';
3
+ import { useDomid } from '@hugsmidjan/react/hooks';
4
+ import Tabs from './Tabs';
5
+ const getId = (url) => (url && decodeURIComponent(url.split('#')[1] || '')) || '';
6
+ const getItemId = (item) => getId(item && item.href);
7
+ const mapToItemsById = (items, domid) => {
8
+ const updatedItems = items.map((item) => {
9
+ return Object.assign(Object.assign({}, item), { 'aria-controls': item['aria-controls'] || domid });
10
+ });
11
+ const itemsById = {};
12
+ updatedItems.forEach((topItem, activeIdx) => {
13
+ const subItems = topItem.items;
14
+ if (!subItems) {
15
+ const itemId = getItemId(topItem);
16
+ itemsById[itemId] = { activeIdx };
17
+ return;
18
+ }
19
+ subItems.forEach((subItem, idx) => {
20
+ itemsById[getItemId(subItem)] = {
21
+ activeIdx,
22
+ subTabs: {
23
+ activeIdx: idx,
24
+ 'aria-label': topItem.longLabel || topItem.label,
25
+ id: topItem['aria-controls'],
26
+ tabs: subItems,
27
+ onSetActive: (_, item) => {
28
+ const newId = getItemId(item);
29
+ setFrag(newId);
30
+ },
31
+ },
32
+ };
33
+ if (idx === 0) {
34
+ topItem.href = topItem.href || '#' + getItemId(subItem);
35
+ }
36
+ });
37
+ });
38
+ return { itemsById, updatedItems };
39
+ };
40
+ const VerticalTabsTOC = (props) => {
41
+ const { onItemSelect, items } = props;
42
+ const _domid = useDomid();
43
+ const domid = props.id || _domid;
44
+ const { itemsById, updatedItems } = useMemo(() => mapToItemsById(items, domid), [items, domid]);
45
+ const [state, setState] = useState(() => {
46
+ const initialId = typeof location !== 'undefined' ? getId(location.hash) : '';
47
+ return itemsById[initialId] || itemsById[getItemId(updatedItems[0])] || {};
48
+ });
49
+ useEffect(() => {
50
+ const handleHash = () => {
51
+ const newId = getId(location.href);
52
+ const newState = itemsById[newId];
53
+ if (newState) {
54
+ setState(newState);
55
+ onItemSelect(newId);
56
+ }
57
+ };
58
+ window.addEventListener('hashchange', handleHash);
59
+ return () => window.removeEventListener('hashchange', handleHash);
60
+ }, [itemsById, onItemSelect]);
61
+ return (<Tabs id={domid} vertical aria-label={props['aria-label']} onSetActive={(_, item) => {
62
+ var _a;
63
+ const itemId = getItemId(item);
64
+ const newId = itemId || getItemId((_a = itemsById[itemId].subTabs) === null || _a === void 0 ? void 0 : _a.tabs[0]);
65
+ setFrag(newId);
66
+ }} tabs={updatedItems} role="tablist" activeIdx={state.activeIdx} subTabs={state.subTabs}/>);
67
+ };
68
+ export default VerticalTabsTOC;
@@ -0,0 +1,15 @@
1
+ import { ReactNode } from 'react';
2
+ import { SSRSupport } from '@hugsmidjan/react/hooks';
3
+ import { HannaColorTheme } from '@reykjavik/hanna-css';
4
+ declare type WizardLayoutProps = {
5
+ wizardStepper?: ReactNode;
6
+ wizardFooter?: ReactNode;
7
+ colorTheme?: HannaColorTheme;
8
+ siteName?: string;
9
+ logoLink?: string;
10
+ globalAlerts?: ReactNode;
11
+ ssr?: SSRSupport;
12
+ children?: ReactNode;
13
+ };
14
+ declare const WizardLayout: (props: WizardLayoutProps) => JSX.Element;
15
+ export default WizardLayout;
@@ -0,0 +1,39 @@
1
+ import React from 'react';
2
+ import { useIsBrowserSide } from '@hugsmidjan/react/hooks';
3
+ import { getAssetUrl } from '@reykjavik/hanna-utils/assets';
4
+ import Image from './_abstract/Image';
5
+ import { Link } from './_abstract/Link';
6
+ import { useScrollbarWidthCSSVar } from './utils/useScrollbarWidthCSSVar';
7
+ const WizardLayout = (props) => {
8
+ useScrollbarWidthCSSVar();
9
+ const {
10
+ // ssr,
11
+ wizardStepper, wizardFooter, children, colorTheme, logoLink = '/', siteName = 'Reykjavík', globalAlerts, } = props;
12
+ const isBrowser = useIsBrowserSide( /* ssr */);
13
+ return (<div className="WizardLayout" data-sprinkled={isBrowser} data-color-theme={colorTheme}>
14
+ {globalAlerts && (<div className="WizardLayout__alerts" role="alert">
15
+ {globalAlerts}
16
+ </div>)}
17
+ <div className="WizardLayout__content">
18
+ <div className="WizardLayout__header" role="banner">
19
+ <Link className="WizardLayout__header__logo" href={logoLink}>
20
+ {' '}
21
+ <Image inline={true} src={getAssetUrl('reykjavik-logo.svg')}/> {siteName}{' '}
22
+ </Link>{' '}
23
+ </div>
24
+ <div className="WizardLayout__wrap">
25
+ {wizardStepper && (<div className="WizardLayout__stepper" role="navigation">
26
+ {wizardStepper}
27
+ </div>)}
28
+ <div className="WizardLayout__main" role="main">
29
+ {children}
30
+ </div>
31
+ <div className="WizardLayout__deco WizardLayout__deco--geometry"/>
32
+ </div>
33
+ <div className="WizardLayout__footer" role="complementary">
34
+ {wizardFooter}
35
+ </div>
36
+ </div>
37
+ </div>);
38
+ };
39
+ export default WizardLayout;
@@ -0,0 +1,3 @@
1
+ import { ButtonProps } from './_abstract/Button';
2
+ declare const WizardLayoutClose: (props: ButtonProps) => JSX.Element;
3
+ export default WizardLayoutClose;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import Button from './_abstract/Button';
3
+ const WizardLayoutClose = (props) => (<Button bem="WizardLayoutClose" {...props}/>);
4
+ export default WizardLayoutClose;
@@ -0,0 +1,36 @@
1
+ export declare type WizardStepperStep = {
2
+ label: string;
3
+ /**
4
+ * Should the step be clickable?
5
+ *
6
+ * * `true` = The items becomes clickable as allowed by the `activeStep`,
7
+ * `disableBacktrack` and `allowForwardSkip` props.
8
+ * * `false | undefined` = Never clickable, regardless of `activeStep`.
9
+ * * `"always"` = Always clickable regardless of `activeStep` or other props.
10
+ */
11
+ clickable?: boolean | 'always';
12
+ /**
13
+ * Flags the item as having a non-default done state
14
+ *
15
+ * * `undefined` = automatically set "done" on items before `activeStep`
16
+ * * `true` = Always flag as "done", regardless of `activeStep`
17
+ * * `false` = Never flag as "done", regardless of `activeStep`
18
+ */
19
+ done?: boolean;
20
+ /**
21
+ * Flags the step as not part of the numbering scheme
22
+ */
23
+ neutral?: boolean;
24
+ };
25
+ export declare type WizardStepperProps = {
26
+ steps: ReadonlyArray<WizardStepperStep>;
27
+ /** Zero-based index of the active (current) step */
28
+ activeStep?: number;
29
+ /** By default, clickable "done" steps remain clickable */
30
+ disableBacktrack?: boolean;
31
+ /** By default, clickable steps after the active step are not immediately clickable */
32
+ allowForwardSkip?: boolean;
33
+ onClick: (clickedIndex: number) => void;
34
+ };
35
+ declare const WizardStepper: (props: WizardStepperProps) => JSX.Element;
36
+ export default WizardStepper;
@@ -0,0 +1,29 @@
1
+ import React from 'react';
2
+ import getBemClass from '@hugsmidjan/react/utils/getBemClass';
3
+ const WizardStepper = (props) => {
4
+ const { steps, activeStep = -1, allowForwardSkip, disableBacktrack, onClick } = props;
5
+ return (<div className={getBemClass('WizardStepper', activeStep === -1 && 'preview')}>
6
+ {steps.map((step, i) => {
7
+ const { label, clickable, done, neutral } = step;
8
+ const stepClass = getBemClass('WizardStepper__step', [
9
+ (done || (done == null && i < activeStep)) && 'done',
10
+ neutral && 'neutral',
11
+ ]);
12
+ const isClickable = clickable === 'always' ||
13
+ (clickable &&
14
+ (activeStep === i ||
15
+ (i > activeStep && allowForwardSkip) ||
16
+ (i < activeStep && !disableBacktrack)));
17
+ const ariaCurrent = activeStep === i ? 'step' : undefined;
18
+ return (<React.Fragment key={i}>
19
+ {isClickable ? (<button type="button" className={stepClass} onClick={() => onClick(i)} aria-current={ariaCurrent}>
20
+ {label}
21
+ </button>) : (<span className={stepClass} aria-current={ariaCurrent}>
22
+ {' '}
23
+ {label}{' '}
24
+ </span>)}{' '}
25
+ </React.Fragment>);
26
+ })}
27
+ </div>);
28
+ };
29
+ export default WizardStepper;
@@ -0,0 +1,40 @@
1
+ import { ReactNode } from 'react';
2
+ import { BemProps, BemPropsModifier } from '@hugsmidjan/react/types';
3
+ declare type ButtonElmProps = {
4
+ href?: never;
5
+ } & BemPropsModifier & Omit<JSX.IntrinsicElements['button'], 'className' | 'style'>;
6
+ declare type AnchorElmProps = {
7
+ href: string;
8
+ type?: never;
9
+ name?: never;
10
+ value?: never;
11
+ } & BemPropsModifier & Omit<JSX.IntrinsicElements['a'], 'className' | 'style'>;
12
+ export declare type ButtonProps = {
13
+ /** Label takes preference over `children` */
14
+ label?: string | JSX.Element;
15
+ } & (ButtonElmProps | AnchorElmProps);
16
+ declare const sizes: {
17
+ readonly normal: "";
18
+ readonly small: "small";
19
+ readonly wide: "wide";
20
+ };
21
+ declare type ButtonSize = keyof typeof sizes;
22
+ declare const variants: {
23
+ readonly normal: "";
24
+ readonly destructive: "destructive";
25
+ };
26
+ declare type ButtonVariant = keyof typeof variants;
27
+ declare type NavigationFlag = 'none' | 'go-back' | 'go-forward';
28
+ declare type ButtonIcon = 'edit';
29
+ export declare type ButtonVariantProps = {
30
+ size?: ButtonSize;
31
+ variant?: ButtonVariant;
32
+ icon?: ButtonIcon | NavigationFlag;
33
+ /** @deprecated (Will be removed in v0.11) */
34
+ small?: boolean;
35
+ };
36
+ declare type _ButtonProps = ButtonProps & ButtonVariantProps & BemProps & {
37
+ children?: ReactNode;
38
+ };
39
+ declare const Button: (props: _ButtonProps) => JSX.Element;
40
+ export default Button;
@@ -0,0 +1,51 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import React from 'react';
13
+ import getBemClass from '@hugsmidjan/react/utils/getBemClass';
14
+ import { Link } from './Link';
15
+ // ---------------------------------------------------------------------------
16
+ const sizes = {
17
+ normal: '',
18
+ small: 'small',
19
+ wide: 'wide',
20
+ };
21
+ // ---------------------------------------------------------------------------
22
+ const variants = {
23
+ normal: '',
24
+ destructive: 'destructive',
25
+ };
26
+ const navigationFlags = {
27
+ none: '',
28
+ 'go-back': 'go--back',
29
+ 'go-forward': 'go--forward',
30
+ };
31
+ const icons = {
32
+ // TODO: insert icons
33
+ edit: 'edit',
34
+ };
35
+ const Button = (props) => {
36
+ const { bem, small, size = 'normal', modifier, children, variant = 'normal', icon = 'none', label = children } = props, buttonProps = __rest(props, ["bem", "small", "size", "modifier", "children", "variant", "icon", "label"]);
37
+ const className = bem &&
38
+ getBemClass(bem, [modifier, variants[variant], sizes[size], navigationFlags[icon]]);
39
+ const iconProp = icons[icon] && { 'data-icon': icons[icon] };
40
+ if (buttonProps.href != null) {
41
+ return (<Link className={className} {...buttonProps} style={undefined} {...iconProp}>
42
+ {label}
43
+ </Link>);
44
+ }
45
+ else {
46
+ return (<button className={className} type="button" {...buttonProps} style={undefined} {...iconProp}>
47
+ {label}
48
+ </button>);
49
+ }
50
+ };
51
+ export default Button;
@@ -0,0 +1,29 @@
1
+ import { ReactElement, ReactNode } from 'react';
2
+ import { ImageProps } from './Image';
3
+ declare type BaseCardProps = {
4
+ title: string;
5
+ href: string;
6
+ imgPlaceholder?: boolean;
7
+ };
8
+ export declare type ImageCardProps = BaseCardProps & {
9
+ meta?: string;
10
+ image?: ImageProps;
11
+ };
12
+ export declare type TextCardProps = BaseCardProps & {
13
+ summary?: string;
14
+ };
15
+ export declare type CardListProps<T> = {
16
+ cards: Array<T>;
17
+ title?: string | undefined;
18
+ summaryElement?: ReactElement;
19
+ titleTag?: 'h1' | 'h2' | 'h3' | 'h4' | 'p';
20
+ imgPlaceholder?: boolean | string;
21
+ };
22
+ export declare type ImageCardListProps = CardListProps<ImageCardProps>;
23
+ export declare type TextCardListProps = CardListProps<TextCardProps>;
24
+ declare type _CardListProps = CardListProps<BaseCardProps> & {
25
+ bemPrefix: string;
26
+ children?: ReactNode;
27
+ };
28
+ export declare const CardList: (props: _CardListProps) => JSX.Element;
29
+ export {};
@@ -0,0 +1,39 @@
1
+ import React from 'react';
2
+ import Button from './Button';
3
+ import Image from './Image';
4
+ const Card = (props) => {
5
+ const { bem, href, title, imgPlaceholder } = props;
6
+ const cardClass = `${bem}__card`;
7
+ const image = 'image' in props && props.image;
8
+ const meta = 'meta' in props && props.meta;
9
+ const summary = 'summary' in props && props.summary;
10
+ return (<>
11
+ <Button bem={cardClass} href={href}>
12
+ {' '}
13
+ <Image className={`${bem}__image`} {...image} placeholder={imgPlaceholder}/>
14
+ <span className={`${cardClass}__title`}>{title}</span>{' '}
15
+ {meta && <span className={`${cardClass}__meta`}>{meta}</span>}{' '}
16
+ {summary && <span className={`${cardClass}__summary`}>{summary}</span>}{' '}
17
+ </Button>{' '}
18
+ </>);
19
+ };
20
+ export const CardList = (props) => {
21
+ const { bemPrefix, title, summaryElement, cards, titleTag = 'h2', children, imgPlaceholder, } = props;
22
+ const TitleTag = titleTag;
23
+ const fallbackImage = (imgPlaceholder !== true && imgPlaceholder) || undefined;
24
+ const fallbackImageStyle = fallbackImage
25
+ ? { '--ImageCards--fallback': `url("${fallbackImage}")` }
26
+ : undefined;
27
+ return (<>
28
+ {summaryElement ? (<div className={bemPrefix + '__summary'}>
29
+ {title && <TitleTag className={bemPrefix + '__title'}>{title}</TitleTag>}
30
+ {summaryElement}
31
+ </div>) : (title && <TitleTag className={bemPrefix + '__title'}>{title}</TitleTag>)}
32
+ <ul className={bemPrefix + '__list'} style={fallbackImageStyle}>
33
+ {cards.map((card, i) => (<li key={i} className={bemPrefix + '__item'}>
34
+ <Card {...card} bem={bemPrefix} imgPlaceholder={!!imgPlaceholder}/>
35
+ </li>))}
36
+ </ul>
37
+ {children}
38
+ </>);
39
+ };
@@ -0,0 +1,32 @@
1
+ export declare type Source = {
2
+ srcset: string;
3
+ media: string;
4
+ };
5
+ export declare type ImageProps = {
6
+ altText?: string;
7
+ } & ({
8
+ sources?: Array<Source>;
9
+ /** The default image source to (lazy) load */
10
+ src?: string;
11
+ /** Eagerly-loaded placeholder/thunbnail to use until a `sources` item has been picked. */
12
+ preloadSrc?: string;
13
+ inline?: false;
14
+ } | {
15
+ /** Should the image be fetched and inlined as <svg/> */
16
+ inline: true;
17
+ src: string;
18
+ sources?: undefined;
19
+ preloadSrc?: undefined;
20
+ });
21
+ declare type _ImageProps = {
22
+ /** container className */
23
+ className?: string;
24
+ /** Controls if the container is rendered when image is missing/undefined.
25
+ * (With a `--missing` className modifier added.)
26
+ *
27
+ * Accepts a function that defines a default content for the container.
28
+ */
29
+ placeholder?: boolean | (() => JSX.Element);
30
+ };
31
+ declare const Image: (props: ImageProps & _ImageProps) => JSX.Element | null;
32
+ export default Image;