@reykjavik/hanna-react 0.10.56 → 0.10.59

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 (378) hide show
  1. package/{AccordionList.jsx → AccordionList.js} +5 -14
  2. package/ActionCards.d.ts +1 -1
  3. package/{ActionCards.jsx → ActionCards.js} +3 -4
  4. package/{Alert.jsx → Alert.js} +7 -9
  5. package/ArticleCards.d.ts +6 -0
  6. package/ArticleCards.js +9 -0
  7. package/ArticleCarousel/_ArticleCarouselCard.d.ts +1 -1
  8. package/ArticleCarousel/_ArticleCarouselCard.js +31 -0
  9. package/{ArticleCarousel.jsx → ArticleCarousel.js} +1 -1
  10. package/ArticleMeta.d.ts +1 -0
  11. package/{ArticleMeta.jsx → ArticleMeta.js} +15 -10
  12. package/{Attention.jsx → Attention.js} +1 -1
  13. package/{BasicTable.jsx → BasicTable.js} +11 -12
  14. package/BgBox.d.ts +8 -0
  15. package/BgBox.js +14 -0
  16. package/{Bling.jsx → Bling.js} +2 -2
  17. package/{BlockBreak.jsx → BlockBreak.js} +1 -1
  18. package/{BlockQuote.jsx → BlockQuote.js} +1 -1
  19. package/BreadCrumbs.js +33 -0
  20. package/ButtonBack.d.ts +1 -1
  21. package/{ButtonBack.jsx → ButtonBack.js} +2 -2
  22. package/{ButtonBar.jsx → ButtonBar.js} +2 -4
  23. package/ButtonPrimary.d.ts +1 -1
  24. package/{ButtonPrimary.jsx → ButtonPrimary.js} +2 -2
  25. package/ButtonSecondary.d.ts +1 -1
  26. package/{ButtonSecondary.jsx → ButtonSecondary.js} +2 -2
  27. package/ButtonTertiary.d.ts +1 -1
  28. package/{ButtonTertiary.jsx → ButtonTertiary.js} +2 -2
  29. package/CHANGELOG.md +12 -1
  30. package/{Carousel.jsx → Carousel.js} +1 -1
  31. package/{CarouselStepper.jsx → CarouselStepper.js} +1 -1
  32. package/{CenterColumn.jsx → CenterColumn.js} +1 -3
  33. package/Checkbox.d.ts +1 -1
  34. package/{Checkbox.jsx → Checkbox.js} +2 -2
  35. package/CheckboxButtonsGroup.d.ts +1 -1
  36. package/{CheckboxButtonsGroup.jsx → CheckboxButtonsGroup.js} +4 -4
  37. package/CheckboxGroup.d.ts +1 -1
  38. package/{CheckboxGroup.jsx → CheckboxGroup.js} +2 -2
  39. package/CityBlock.d.ts +1 -1
  40. package/{CityBlock.jsx → CityBlock.js} +1 -1
  41. package/{ContactBubble.jsx → ContactBubble.js} +13 -27
  42. package/{ContentArticle.jsx → ContentArticle.js} +9 -12
  43. package/ContentImage.d.ts +1 -1
  44. package/ContentImage.js +23 -0
  45. package/{Datepicker.jsx → Datepicker.js} +17 -18
  46. package/ExtraLinks.d.ts +1 -1
  47. package/{ExtraLinks.jsx → ExtraLinks.js} +11 -19
  48. package/FeatureList.js +21 -0
  49. package/{FieldGroup.jsx → FieldGroup.js} +3 -4
  50. package/{FileInput.jsx → FileInput.js} +22 -25
  51. package/{Foonote.jsx → Foonote.js} +0 -0
  52. package/FooterBadges.js +17 -0
  53. package/FooterInfo.js +14 -0
  54. package/{Footnote.jsx → Footnote.js} +1 -1
  55. package/{Form.jsx → Form.js} +2 -4
  56. package/{FormField.jsx → FormField.js} +20 -22
  57. package/Gallery/_GalleryItem.d.ts +1 -1
  58. package/Gallery/{_GalleryItem.jsx → _GalleryItem.js} +10 -11
  59. package/Gallery/{_GalleryModal.jsx → _GalleryModal.js} +11 -15
  60. package/Gallery/{_GalleryModalItem.jsx → _GalleryModalItem.js} +6 -8
  61. package/{Gallery.jsx → Gallery.js} +3 -4
  62. package/GridBlocks.d.ts +2 -2
  63. package/GridBlocks.js +29 -0
  64. package/Heading.d.ts +1 -1
  65. package/{Heading.jsx → Heading.js} +3 -5
  66. package/HeroBlock.d.ts +2 -2
  67. package/{HeroBlock.jsx → HeroBlock.js} +9 -10
  68. package/{IframeBlock.jsx → IframeBlock.js} +6 -6
  69. package/Illustration.d.ts +1 -1
  70. package/{Illustration.jsx → Illustration.js} +2 -2
  71. package/ImageCards.d.ts +1 -1
  72. package/{ImageCards.jsx → ImageCards.js} +3 -4
  73. package/InfoBlock.js +18 -0
  74. package/InfoHero.d.ts +2 -2
  75. package/{InfoHero.jsx → InfoHero.js} +10 -16
  76. package/IslandBlock.d.ts +1 -1
  77. package/{IslandBlock.jsx → IslandBlock.js} +1 -1
  78. package/IslandPageBlock.d.ts +1 -1
  79. package/{IslandPageBlock.jsx → IslandPageBlock.js} +1 -1
  80. package/LabeledTextBlock.d.ts +1 -1
  81. package/{LabeledTextBlock.jsx → LabeledTextBlock.js} +5 -7
  82. package/Layout.js +58 -0
  83. package/MainMenu/_Auxiliary.js +20 -0
  84. package/MainMenu/_PrimaryPanel.js +29 -0
  85. package/{MainMenu.jsx → MainMenu.js} +28 -41
  86. package/MiniMetrics.d.ts +1 -1
  87. package/{MiniMetrics.jsx → MiniMetrics.js} +6 -5
  88. package/Modal.js +19 -0
  89. package/{NameCard.jsx → NameCard.js} +19 -24
  90. package/{NameCards.jsx → NameCards.js} +1 -3
  91. package/NewsHero.d.ts +1 -1
  92. package/{NewsHero.jsx → NewsHero.js} +8 -10
  93. package/{PageFilter.jsx → PageFilter.js} +6 -7
  94. package/{PageHeading.jsx → PageHeading.js} +2 -4
  95. package/Picture.d.ts +7 -0
  96. package/Picture.js +13 -0
  97. package/ProcessOverview.js +22 -0
  98. package/{PullQuote.jsx → PullQuote.js} +1 -1
  99. package/RadioButtonsGroup.d.ts +1 -1
  100. package/{RadioButtonsGroup.jsx → RadioButtonsGroup.js} +4 -4
  101. package/RadioGroup.d.ts +2 -2
  102. package/RadioGroup.js +12 -0
  103. package/RelatedLinks.js +31 -0
  104. package/{RowBlock.jsx → RowBlock.js} +1 -3
  105. package/{RowBlockColumn.jsx → RowBlockColumn.js} +2 -4
  106. package/{SearchInput.jsx → SearchInput.js} +4 -6
  107. package/SearchResults/_SearchResultsItem.js +20 -0
  108. package/{SearchResults.jsx → SearchResults.js} +27 -36
  109. package/{SeenEffect.jsx → SeenEffect.js} +1 -1
  110. package/{Selectbox.jsx → Selectbox.js} +1 -1
  111. package/{ShareButtons.jsx → ShareButtons.js} +7 -13
  112. package/{Sharpie.jsx → Sharpie.js} +1 -1
  113. package/{SiteSearchAutocomplete.jsx → SiteSearchAutocomplete.js} +5 -7
  114. package/{SiteSearchCurtain.jsx → SiteSearchCurtain.js} +1 -5
  115. package/SiteSearchInput.d.ts +1 -1
  116. package/{SiteSearchInput.jsx → SiteSearchInput.js} +10 -12
  117. package/{Skeleton.jsx → Skeleton.js} +5 -5
  118. package/{SubHeading.jsx → SubHeading.js} +2 -4
  119. package/{Tabs.jsx → Tabs.js} +12 -12
  120. package/TagPill.d.ts +1 -1
  121. package/{TagPill.jsx → TagPill.js} +12 -17
  122. package/{TextBlock.jsx → TextBlock.js} +2 -4
  123. package/TextButton.d.ts +1 -1
  124. package/{TextButton.jsx → TextButton.js} +2 -2
  125. package/{TextInput.jsx → TextInput.js} +1 -1
  126. package/{VSpacer.jsx → VSpacer.js} +1 -1
  127. package/{VerticalTabsTOC.jsx → VerticalTabsTOC.js} +2 -2
  128. package/WizardLayout.js +35 -0
  129. package/WizardLayoutClose.d.ts +1 -1
  130. package/{WizardLayoutClose.jsx → WizardLayoutClose.js} +2 -2
  131. package/WizardStepper.js +30 -0
  132. package/_abstract/{_AbstractCarousel.jsx → _AbstractCarousel.js} +7 -10
  133. package/_abstract/{_Blings.jsx → _Blings.js} +1 -3
  134. package/_abstract/_Block.d.ts +2 -2
  135. package/_abstract/_Block.js +29 -0
  136. package/_abstract/{Button.d.ts → _Button.d.ts} +0 -0
  137. package/_abstract/{Button.jsx → _Button.js} +3 -7
  138. package/_abstract/{CardList.d.ts → _CardList.d.ts} +2 -1
  139. package/_abstract/_CardList.js +45 -0
  140. package/{esm/_abstract/Image.d.ts → _abstract/_Image.d.ts} +9 -5
  141. package/_abstract/{Image.jsx → _Image.js} +11 -13
  142. package/_abstract/{Link.d.ts → _Link.d.ts} +0 -0
  143. package/_abstract/{Link.jsx → _Link.js} +0 -0
  144. package/_abstract/_Quote.js +15 -0
  145. package/{esm/_abstract/TogglerGroup.d.ts → _abstract/_TogglerGroup.d.ts} +1 -1
  146. package/_abstract/_TogglerGroup.js +34 -0
  147. package/_abstract/{TogglerGroupField.d.ts → _TogglerGroupField.d.ts} +2 -2
  148. package/_abstract/{TogglerGroupField.jsx → _TogglerGroupField.js} +4 -4
  149. package/_abstract/{TogglerInput.d.ts → _TogglerInput.d.ts} +0 -0
  150. package/_abstract/{TogglerInput.jsx → _TogglerInput.js} +13 -15
  151. package/_abstract/{breakOnNL.jsx → breakOnNL.js} +1 -1
  152. package/esm/AccordionList.js +24 -0
  153. package/esm/ActionCards.d.ts +1 -1
  154. package/esm/ActionCards.js +9 -0
  155. package/esm/{Alert.jsx → Alert.js} +7 -9
  156. package/esm/ArticleCards.d.ts +6 -0
  157. package/esm/ArticleCards.js +4 -0
  158. package/esm/ArticleCarousel/_ArticleCarouselCard.d.ts +1 -1
  159. package/esm/ArticleCarousel/_ArticleCarouselCard.js +24 -0
  160. package/esm/{ArticleCarousel.jsx → ArticleCarousel.js} +1 -1
  161. package/esm/ArticleMeta.d.ts +1 -0
  162. package/esm/ArticleMeta.js +19 -0
  163. package/esm/Attention.js +4 -0
  164. package/esm/{BasicTable.jsx → BasicTable.js} +11 -12
  165. package/esm/BgBox.d.ts +8 -0
  166. package/esm/BgBox.js +9 -0
  167. package/esm/{Bling.jsx → Bling.js} +2 -2
  168. package/esm/BlockBreak.js +6 -0
  169. package/esm/BlockQuote.js +4 -0
  170. package/esm/BreadCrumbs.js +28 -0
  171. package/esm/ButtonBack.d.ts +1 -1
  172. package/esm/ButtonBack.js +4 -0
  173. package/esm/{ButtonBar.jsx → ButtonBar.js} +2 -4
  174. package/esm/ButtonPrimary.d.ts +1 -1
  175. package/esm/ButtonPrimary.js +4 -0
  176. package/esm/ButtonSecondary.d.ts +1 -1
  177. package/esm/ButtonSecondary.js +4 -0
  178. package/esm/ButtonTertiary.d.ts +1 -1
  179. package/esm/{ButtonTertiary.jsx → ButtonTertiary.js} +2 -2
  180. package/esm/Carousel.js +4 -0
  181. package/esm/CarouselStepper.js +4 -0
  182. package/esm/CenterColumn.js +7 -0
  183. package/esm/Checkbox.d.ts +1 -1
  184. package/esm/Checkbox.js +4 -0
  185. package/esm/CheckboxButtonsGroup.d.ts +1 -1
  186. package/esm/CheckboxButtonsGroup.js +14 -0
  187. package/esm/CheckboxGroup.d.ts +1 -1
  188. package/esm/CheckboxGroup.js +7 -0
  189. package/esm/CityBlock.d.ts +1 -1
  190. package/esm/{CityBlock.jsx → CityBlock.js} +1 -1
  191. package/esm/{ContactBubble.jsx → ContactBubble.js} +13 -27
  192. package/esm/ContentArticle.js +21 -0
  193. package/esm/ContentImage.d.ts +1 -1
  194. package/esm/ContentImage.js +18 -0
  195. package/esm/{Datepicker.jsx → Datepicker.js} +17 -18
  196. package/esm/ExtraLinks.d.ts +1 -1
  197. package/esm/{ExtraLinks.jsx → ExtraLinks.js} +11 -19
  198. package/esm/FeatureList.js +16 -0
  199. package/esm/FieldGroup.js +9 -0
  200. package/esm/{FileInput.jsx → FileInput.js} +22 -25
  201. package/esm/{Foonote.jsx → Foonote.js} +0 -0
  202. package/esm/FooterBadges.js +12 -0
  203. package/esm/FooterInfo.js +9 -0
  204. package/esm/Footnote.js +3 -0
  205. package/esm/{Form.jsx → Form.js} +2 -4
  206. package/esm/{FormField.jsx → FormField.js} +20 -22
  207. package/esm/Gallery/_GalleryItem.d.ts +1 -1
  208. package/esm/Gallery/{_GalleryItem.jsx → _GalleryItem.js} +10 -11
  209. package/esm/Gallery/{_GalleryModal.jsx → _GalleryModal.js} +11 -15
  210. package/esm/Gallery/{_GalleryModalItem.jsx → _GalleryModalItem.js} +6 -8
  211. package/esm/{Gallery.jsx → Gallery.js} +3 -4
  212. package/esm/GridBlocks.d.ts +2 -2
  213. package/esm/GridBlocks.js +24 -0
  214. package/esm/Heading.d.ts +1 -1
  215. package/esm/{Heading.jsx → Heading.js} +3 -5
  216. package/esm/HeroBlock.d.ts +2 -2
  217. package/esm/HeroBlock.js +21 -0
  218. package/esm/{IframeBlock.jsx → IframeBlock.js} +6 -6
  219. package/esm/Illustration.d.ts +1 -1
  220. package/esm/{Illustration.jsx → Illustration.js} +2 -2
  221. package/esm/ImageCards.d.ts +1 -1
  222. package/esm/{ImageCards.jsx → ImageCards.js} +3 -4
  223. package/esm/InfoBlock.js +13 -0
  224. package/esm/InfoHero.d.ts +2 -2
  225. package/esm/{InfoHero.jsx → InfoHero.js} +10 -16
  226. package/esm/IslandBlock.d.ts +1 -1
  227. package/esm/{IslandBlock.jsx → IslandBlock.js} +1 -1
  228. package/esm/IslandPageBlock.d.ts +1 -1
  229. package/esm/{IslandPageBlock.jsx → IslandPageBlock.js} +1 -1
  230. package/esm/LabeledTextBlock.d.ts +1 -1
  231. package/esm/LabeledTextBlock.js +14 -0
  232. package/esm/Layout.js +52 -0
  233. package/esm/MainMenu/_Auxiliary.js +13 -0
  234. package/esm/MainMenu/_PrimaryPanel.js +22 -0
  235. package/esm/{MainMenu.jsx → MainMenu.js} +28 -41
  236. package/esm/MiniMetrics.d.ts +1 -1
  237. package/esm/MiniMetrics.js +12 -0
  238. package/esm/Modal.js +14 -0
  239. package/esm/{NameCard.jsx → NameCard.js} +19 -24
  240. package/esm/NameCards.js +7 -0
  241. package/esm/NewsHero.d.ts +1 -1
  242. package/esm/{NewsHero.jsx → NewsHero.js} +8 -10
  243. package/esm/PageFilter.js +15 -0
  244. package/esm/{PageHeading.jsx → PageHeading.js} +2 -4
  245. package/esm/Picture.d.ts +7 -0
  246. package/esm/Picture.js +8 -0
  247. package/esm/ProcessOverview.js +17 -0
  248. package/esm/PullQuote.js +4 -0
  249. package/esm/RadioButtonsGroup.d.ts +1 -1
  250. package/esm/RadioButtonsGroup.js +14 -0
  251. package/esm/RadioGroup.d.ts +2 -2
  252. package/esm/RadioGroup.js +7 -0
  253. package/esm/RelatedLinks.js +26 -0
  254. package/esm/{RowBlock.jsx → RowBlock.js} +1 -3
  255. package/esm/{RowBlockColumn.jsx → RowBlockColumn.js} +2 -4
  256. package/esm/{SearchInput.jsx → SearchInput.js} +4 -6
  257. package/esm/SearchResults/_SearchResultsItem.js +15 -0
  258. package/esm/{SearchResults.jsx → SearchResults.js} +27 -36
  259. package/esm/{SeenEffect.jsx → SeenEffect.js} +1 -1
  260. package/esm/{Selectbox.jsx → Selectbox.js} +1 -1
  261. package/esm/{ShareButtons.jsx → ShareButtons.js} +7 -13
  262. package/esm/{Sharpie.jsx → Sharpie.js} +1 -1
  263. package/esm/{SiteSearchAutocomplete.jsx → SiteSearchAutocomplete.js} +5 -7
  264. package/esm/{SiteSearchCurtain.jsx → SiteSearchCurtain.js} +1 -5
  265. package/esm/SiteSearchInput.d.ts +1 -1
  266. package/esm/{SiteSearchInput.jsx → SiteSearchInput.js} +10 -12
  267. package/esm/{Skeleton.jsx → Skeleton.js} +5 -5
  268. package/esm/{SubHeading.jsx → SubHeading.js} +2 -4
  269. package/esm/{Tabs.jsx → Tabs.js} +12 -12
  270. package/esm/TagPill.d.ts +1 -1
  271. package/esm/{TagPill.jsx → TagPill.js} +12 -17
  272. package/esm/{TextBlock.jsx → TextBlock.js} +2 -4
  273. package/esm/TextButton.d.ts +1 -1
  274. package/esm/{TextButton.jsx → TextButton.js} +2 -2
  275. package/esm/{TextInput.jsx → TextInput.js} +1 -1
  276. package/esm/{VSpacer.jsx → VSpacer.js} +1 -1
  277. package/esm/{VerticalTabsTOC.jsx → VerticalTabsTOC.js} +2 -2
  278. package/esm/WizardLayout.js +30 -0
  279. package/esm/WizardLayoutClose.d.ts +1 -1
  280. package/esm/WizardLayoutClose.js +4 -0
  281. package/esm/WizardStepper.js +25 -0
  282. package/esm/_abstract/{_AbstractCarousel.jsx → _AbstractCarousel.js} +7 -10
  283. package/esm/_abstract/_Blings.js +12 -0
  284. package/esm/_abstract/_Block.d.ts +2 -2
  285. package/esm/_abstract/_Block.js +24 -0
  286. package/esm/_abstract/{Button.d.ts → _Button.d.ts} +0 -0
  287. package/esm/_abstract/{Button.jsx → _Button.js} +3 -7
  288. package/esm/_abstract/{CardList.d.ts → _CardList.d.ts} +2 -1
  289. package/esm/_abstract/_CardList.js +38 -0
  290. package/{_abstract/Image.d.ts → esm/_abstract/_Image.d.ts} +9 -5
  291. package/esm/_abstract/_Image.js +27 -0
  292. package/esm/_abstract/{Link.d.ts → _Link.d.ts} +0 -0
  293. package/esm/_abstract/{Link.jsx → _Link.js} +0 -0
  294. package/esm/_abstract/_Quote.js +8 -0
  295. package/{_abstract/TogglerGroup.d.ts → esm/_abstract/_TogglerGroup.d.ts} +1 -1
  296. package/esm/_abstract/_TogglerGroup.js +29 -0
  297. package/esm/_abstract/{TogglerGroupField.d.ts → _TogglerGroupField.d.ts} +2 -2
  298. package/esm/_abstract/{TogglerGroupField.jsx → _TogglerGroupField.js} +4 -4
  299. package/esm/_abstract/{TogglerInput.d.ts → _TogglerInput.d.ts} +0 -0
  300. package/esm/_abstract/{TogglerInput.jsx → _TogglerInput.js} +13 -15
  301. package/esm/_abstract/{breakOnNL.jsx → breakOnNL.js} +1 -1
  302. package/esm/utils/seenEffect.d.ts +2 -2
  303. package/esm/utils/seenEffect.js +1 -1
  304. package/package.json +106 -91
  305. package/utils/seenEffect.d.ts +2 -2
  306. package/utils/seenEffect.js +1 -1
  307. package/ArticleCarousel/_ArticleCarouselCard.jsx +0 -32
  308. package/BreadCrumbs.jsx +0 -36
  309. package/ContentImage.jsx +0 -18
  310. package/FeatureList.jsx +0 -28
  311. package/FooterBadges.jsx +0 -21
  312. package/FooterInfo.jsx +0 -19
  313. package/GridBlocks.jsx +0 -40
  314. package/InfoBlock.jsx +0 -23
  315. package/Layout.jsx +0 -69
  316. package/MainMenu/_Auxiliary.jsx +0 -26
  317. package/MainMenu/_PrimaryPanel.jsx +0 -37
  318. package/Modal.jsx +0 -21
  319. package/ProcessOverview.jsx +0 -25
  320. package/RadioGroup.jsx +0 -12
  321. package/RelatedLinks.jsx +0 -35
  322. package/SearchResults/_SearchResultsItem.jsx +0 -24
  323. package/WizardLayout.jsx +0 -44
  324. package/WizardStepper.jsx +0 -34
  325. package/_abstract/CardList.jsx +0 -46
  326. package/_abstract/TogglerGroup.jsx +0 -36
  327. package/_abstract/_Block.jsx +0 -32
  328. package/_abstract/_Quote.jsx +0 -18
  329. package/esm/AccordionList.jsx +0 -33
  330. package/esm/ActionCards.jsx +0 -10
  331. package/esm/ArticleCarousel/_ArticleCarouselCard.jsx +0 -25
  332. package/esm/ArticleMeta.jsx +0 -17
  333. package/esm/Attention.jsx +0 -4
  334. package/esm/BlockBreak.jsx +0 -6
  335. package/esm/BlockQuote.jsx +0 -4
  336. package/esm/BreadCrumbs.jsx +0 -31
  337. package/esm/ButtonBack.jsx +0 -4
  338. package/esm/ButtonPrimary.jsx +0 -4
  339. package/esm/ButtonSecondary.jsx +0 -4
  340. package/esm/Carousel.jsx +0 -4
  341. package/esm/CarouselStepper.jsx +0 -4
  342. package/esm/CenterColumn.jsx +0 -9
  343. package/esm/Checkbox.jsx +0 -4
  344. package/esm/CheckboxButtonsGroup.jsx +0 -14
  345. package/esm/CheckboxGroup.jsx +0 -7
  346. package/esm/ContentArticle.jsx +0 -24
  347. package/esm/ContentImage.jsx +0 -13
  348. package/esm/FeatureList.jsx +0 -23
  349. package/esm/FieldGroup.jsx +0 -10
  350. package/esm/FooterBadges.jsx +0 -16
  351. package/esm/FooterInfo.jsx +0 -14
  352. package/esm/Footnote.jsx +0 -3
  353. package/esm/GridBlocks.jsx +0 -35
  354. package/esm/HeroBlock.jsx +0 -22
  355. package/esm/InfoBlock.jsx +0 -18
  356. package/esm/LabeledTextBlock.jsx +0 -16
  357. package/esm/Layout.jsx +0 -63
  358. package/esm/MainMenu/_Auxiliary.jsx +0 -19
  359. package/esm/MainMenu/_PrimaryPanel.jsx +0 -30
  360. package/esm/MiniMetrics.jsx +0 -11
  361. package/esm/Modal.jsx +0 -16
  362. package/esm/NameCards.jsx +0 -9
  363. package/esm/PageFilter.jsx +0 -16
  364. package/esm/ProcessOverview.jsx +0 -20
  365. package/esm/PullQuote.jsx +0 -4
  366. package/esm/RadioButtonsGroup.jsx +0 -14
  367. package/esm/RadioGroup.jsx +0 -7
  368. package/esm/RelatedLinks.jsx +0 -30
  369. package/esm/SearchResults/_SearchResultsItem.jsx +0 -19
  370. package/esm/WizardLayout.jsx +0 -39
  371. package/esm/WizardLayoutClose.jsx +0 -4
  372. package/esm/WizardStepper.jsx +0 -29
  373. package/esm/_abstract/CardList.jsx +0 -39
  374. package/esm/_abstract/Image.jsx +0 -29
  375. package/esm/_abstract/TogglerGroup.jsx +0 -31
  376. package/esm/_abstract/_Blings.jsx +0 -14
  377. package/esm/_abstract/_Block.jsx +0 -27
  378. package/esm/_abstract/_Quote.jsx +0 -11
package/GridBlocks.js ADDED
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const getBemClass_1 = __importDefault(require("@hugsmidjan/react/utils/getBemClass"));
8
+ const assets_1 = require("@reykjavik/hanna-utils/assets");
9
+ const _Image_1 = __importDefault(require("./_abstract/_Image"));
10
+ const _Link_1 = require("./_abstract/_Link");
11
+ const seenEffect_1 = require("./utils/seenEffect");
12
+ const ButtonTertiary_1 = __importDefault(require("./ButtonTertiary"));
13
+ const GridBlocks = (props) => {
14
+ const { blocks, twocol, startSeen } = props;
15
+ const [ref] = (0, seenEffect_1.useSeenEffect)(startSeen);
16
+ return (react_1.default.createElement("div", { className: (0, getBemClass_1.default)('GridBlocks', [twocol && 'twocol']), ref: ref }, blocks.map(({ title, summary, href, links = [], icon, image }, i) => {
17
+ const imageProps = icon ? { src: (0, assets_1.getEfnistaknUrl)(icon) } : image;
18
+ return (react_1.default.createElement("div", { key: i, className: "GridBlocks__item" },
19
+ imageProps && react_1.default.createElement(_Image_1.default, Object.assign({ className: "GridBlocks__illustration" }, imageProps)),
20
+ react_1.default.createElement("div", { className: "GridBlocks__textwrap" },
21
+ react_1.default.createElement("h3", { className: "GridBlocks__item__title" }, href != null ? (react_1.default.createElement(_Link_1.Link, { className: "GridBlocks__item__titlelink", href: href }, title)) : (title)),
22
+ react_1.default.createElement("div", { className: "GridBlocks__item__summary" }, summary),
23
+ react_1.default.createElement("ul", { className: "GridBlocks__links" }, links.map((link, i) => {
24
+ return (react_1.default.createElement("li", { key: i, className: "GridBlocks__link" },
25
+ react_1.default.createElement(ButtonTertiary_1.default, Object.assign({}, link))));
26
+ })))));
27
+ })));
28
+ };
29
+ exports.default = GridBlocks;
package/Heading.d.ts CHANGED
@@ -3,7 +3,7 @@ import { ComponentLayoutProps } from './constants';
3
3
  declare const sizes: {
4
4
  readonly small: "small";
5
5
  /** Default value */
6
- readonly normal: "normal";
6
+ readonly normal: "";
7
7
  readonly large: "large";
8
8
  };
9
9
  declare type HeadingSize = keyof typeof sizes;
@@ -8,17 +8,15 @@ const getBemClass_1 = __importDefault(require("@hugsmidjan/react/utils/getBemCla
8
8
  const sizes = {
9
9
  small: 'small',
10
10
  /** Default value */
11
- normal: 'normal',
11
+ normal: '',
12
12
  large: 'large',
13
13
  };
14
14
  const Heading = (props) => {
15
15
  const { size = 'normal', Tag = 'h2', align, wide, children } = props;
16
- return (<Tag className={(0, getBemClass_1.default)('Heading', [
16
+ return (react_1.default.createElement(Tag, { className: (0, getBemClass_1.default)('Heading', [
17
17
  sizes[size],
18
18
  align === 'right' && 'align--' + align,
19
19
  !align && wide && 'wide',
20
- ])}>
21
- {children}
22
- </Tag>);
20
+ ]) }, children));
23
21
  };
24
22
  exports.default = Heading;
package/HeroBlock.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { Illustration } from '@reykjavik/hanna-utils/assets';
2
- import { ButtonProps } from './_abstract/Button';
3
- import { ImageProps } from './_abstract/Image';
2
+ import { ButtonProps } from './_abstract/_Button';
3
+ import { ImageProps } from './_abstract/_Image';
4
4
  import { SeenProp } from './utils/seenEffect';
5
5
  declare type HeroBlockImageProps = {
6
6
  illustration: Illustration;
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
7
  const assets_1 = require("@reykjavik/hanna-utils/assets");
8
- const Image_1 = __importDefault(require("./_abstract/Image"));
8
+ const _Image_1 = __importDefault(require("./_abstract/_Image"));
9
9
  const seenEffect_1 = require("./utils/seenEffect");
10
10
  const ButtonPrimary_1 = __importDefault(require("./ButtonPrimary"));
11
11
  const ButtonTertiary_1 = __importDefault(require("./ButtonTertiary"));
@@ -14,14 +14,13 @@ const HeroBlock = (props) => {
14
14
  const hasButtons = Boolean(primaryButton || secondaryButton);
15
15
  const imgProps = illustration ? { src: (0, assets_1.getIllustrationUrl)(illustration) } : image;
16
16
  const [ref] = (0, seenEffect_1.useSeenEffect)(startSeen);
17
- return (<div className="HeroBlock" ref={ref}>
18
- <h1 className="HeroBlock__title">{title}</h1>
19
- <Image_1.default className="HeroBlock__image" {...imgProps}/>
20
- <div className="HeroBlock__summary">{summary}</div>
21
- {hasButtons && (<div className="HeroBlock__buttons">
22
- {primaryButton && <ButtonPrimary_1.default {...primaryButton}/>}{' '}
23
- {secondaryButton && <ButtonTertiary_1.default {...secondaryButton}/>}
24
- </div>)}
25
- </div>);
17
+ return (react_1.default.createElement("div", { className: "HeroBlock", ref: ref },
18
+ react_1.default.createElement("h1", { className: "HeroBlock__title" }, title),
19
+ react_1.default.createElement(_Image_1.default, Object.assign({ className: "HeroBlock__image" }, imgProps)),
20
+ react_1.default.createElement("div", { className: "HeroBlock__summary" }, summary),
21
+ hasButtons && (react_1.default.createElement("div", { className: "HeroBlock__buttons" },
22
+ primaryButton && react_1.default.createElement(ButtonPrimary_1.default, Object.assign({}, primaryButton)),
23
+ ' ',
24
+ secondaryButton && react_1.default.createElement(ButtonTertiary_1.default, Object.assign({}, secondaryButton))))));
26
25
  };
27
26
  exports.default = HeroBlock;
@@ -21,11 +21,11 @@ const IframeBlock = (props) => {
21
21
  compact && 'compact',
22
22
  align === 'right' && 'align--' + align,
23
23
  ]);
24
- return height === 'auto' ? (<iframe_resizer_react_1.default className={className} src={src}/>) : (<iframe className={className} src={src}
25
- // hidden tiger: pass negative height to disable iframe-resizer but not set height explicitly
26
- // (Silly hack, don't rely on this)
27
- height={height < 0 ? undefined : height}
28
- // allow undefined to suppress scrolling attribute
29
- scrolling={scrolling === true ? 'yes' : scrolling === false ? 'no' : scrolling}/>);
24
+ return height === 'auto' ? (react_1.default.createElement(iframe_resizer_react_1.default, { className: className, src: src })) : (react_1.default.createElement("iframe", { className: className, src: src,
25
+ // hidden tiger: pass negative height to disable iframe-resizer but not set height explicitly
26
+ // (Silly hack, don't rely on this)
27
+ height: height < 0 ? undefined : height,
28
+ // allow undefined to suppress scrolling attribute
29
+ scrolling: scrolling === true ? 'yes' : scrolling === false ? 'no' : scrolling }));
30
30
  };
31
31
  exports.default = IframeBlock;
package/Illustration.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Illustration as IllustrationName } from '@reykjavik/hanna-utils/assets';
2
- import { ImageProps } from './_abstract/Image';
2
+ import { ImageProps } from './_abstract/_Image';
3
3
  declare type IllustrationProps = {
4
4
  children?: undefined;
5
5
  } & ({
@@ -5,9 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
7
  const assets_1 = require("@reykjavik/hanna-utils/assets");
8
- const Image_1 = __importDefault(require("./_abstract/Image"));
8
+ const _Image_1 = __importDefault(require("./_abstract/_Image"));
9
9
  const Illustration = (props) => {
10
10
  const imgProps = props.type ? { src: (0, assets_1.getIllustrationUrl)(props.type) } : props.image;
11
- return <Image_1.default className="Illustration" {...imgProps}/>;
11
+ return react_1.default.createElement(_Image_1.default, Object.assign({ className: "Illustration" }, imgProps));
12
12
  };
13
13
  exports.default = Illustration;
package/ImageCards.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ImageCardListProps, ImageCardProps as ICP } from './_abstract/CardList';
1
+ import { ImageCardListProps, ImageCardProps as ICP } from './_abstract/_CardList';
2
2
  import { SeenProp } from './utils/seenEffect';
3
3
  export declare type ImageCardProps = ICP;
4
4
  declare type _ImageCardProps = ImageCardListProps & {
@@ -16,13 +16,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  const react_1 = __importDefault(require("react"));
18
18
  const getBemClass_1 = __importDefault(require("@hugsmidjan/react/utils/getBemClass"));
19
- const CardList_1 = require("./_abstract/CardList");
19
+ const _CardList_1 = require("./_abstract/_CardList");
20
20
  const seenEffect_1 = require("./utils/seenEffect");
21
21
  const ImageCards = (props) => {
22
22
  const { background, startSeen } = props, cardListProps = __rest(props, ["background", "startSeen"]);
23
23
  const [ref] = (0, seenEffect_1.useSeenEffect)(startSeen);
24
- return (<div className={(0, getBemClass_1.default)('ImageCards', background && 'background')} ref={ref}>
25
- <CardList_1.CardList {...cardListProps} bemPrefix="ImageCards" imgPlaceholder={props.imgPlaceholder || true}/>
26
- </div>);
24
+ return (react_1.default.createElement("div", { className: (0, getBemClass_1.default)('ImageCards', background && 'background'), ref: ref },
25
+ react_1.default.createElement(_CardList_1.CardList, Object.assign({}, cardListProps, { bemPrefix: "ImageCards", imgPlaceholder: props.imgPlaceholder || true }))));
27
26
  };
28
27
  exports.default = ImageCards;
package/InfoBlock.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const seenEffect_1 = require("./utils/seenEffect");
8
+ const InfoBlock = (props) => {
9
+ const { title, subtitle, items, startSeen } = props;
10
+ const [ref] = (0, seenEffect_1.useSeenEffect)(startSeen);
11
+ return (react_1.default.createElement("div", { className: "InfoBlock", ref: ref },
12
+ react_1.default.createElement("h2", { className: "InfoBlock__title" }, title),
13
+ react_1.default.createElement("div", { className: "InfoBlock__subtitle" }, subtitle),
14
+ react_1.default.createElement("ul", { className: "InfoBlock__items" }, items.map((item, i) => (react_1.default.createElement("li", { key: i, className: "InfoBlock__item" }, item)))),
15
+ 'extraInfo' in props && (react_1.default.createElement("div", { className: "InfoBlock__extrainfo" }, props.extraInfo)),
16
+ 'attention' in props && (react_1.default.createElement("div", { className: "InfoBlock__attention" }, props.attention))));
17
+ };
18
+ exports.default = InfoBlock;
package/InfoHero.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { ButtonProps } from './_abstract/Button';
2
- import { ImageProps } from './_abstract/Image';
1
+ import { ButtonProps } from './_abstract/_Button';
2
+ import { ImageProps } from './_abstract/_Image';
3
3
  import { Alignment } from './constants';
4
4
  declare type BlingOptions = 'waves' | 'sunny-waves' | 'triangles' | 'circles';
5
5
  export declare type InfoHeroProps = {
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
7
  const getBemClass_1 = __importDefault(require("@hugsmidjan/react/utils/getBemClass"));
8
8
  const _Blings_1 = __importDefault(require("./_abstract/_Blings"));
9
+ const _Image_1 = __importDefault(require("./_abstract/_Image"));
9
10
  const breakOnNL_1 = __importDefault(require("./_abstract/breakOnNL"));
10
- const Image_1 = __importDefault(require("./_abstract/Image"));
11
11
  const ButtonTertiary_1 = __importDefault(require("./ButtonTertiary"));
12
12
  const constants_1 = require("./constants");
13
13
  const blingOptions = {
@@ -74,20 +74,14 @@ const InfoHero = (props) => {
74
74
  const alignment = align && constants_1.aligns[align] ? align : 'right';
75
75
  const blings = (blingType && blingOptions[blingType]) ||
76
76
  blingOptions.waves; // default to `waves`
77
- return (<div className={(0, getBemClass_1.default)('InfoHero', 'align--' + alignment)}>
78
- <div className="InfoHero__content">
79
- <h1 className="InfoHero__title">{title}</h1>
80
- {titleBlurb && <div className="InfoHero__titleblurb">{titleBlurb}</div>}
81
-
82
- {subTitle && <div className="InfoHero__subtitle">{(0, breakOnNL_1.default)(subTitle)}</div>}
83
- {blurb && <div className="InfoHero__blurb">{blurb}</div>}
84
-
85
- {showButtons && (<div className="InfoHero__buttons">
86
- {buttons.map((buttonProps, i) => (<ButtonTertiary_1.default key={i} {...buttonProps}/>))}
87
- </div>)}
88
- </div>
89
- <Image_1.default className="InfoHero__image" altText={title} {...image} placeholder/>
90
- <_Blings_1.default blings={blings} mirror={alignment === 'right'}/>
91
- </div>);
77
+ return (react_1.default.createElement("div", { className: (0, getBemClass_1.default)('InfoHero', 'align--' + alignment) },
78
+ react_1.default.createElement("div", { className: "InfoHero__content" },
79
+ react_1.default.createElement("h1", { className: "InfoHero__title" }, title),
80
+ titleBlurb && react_1.default.createElement("div", { className: "InfoHero__titleblurb" }, titleBlurb),
81
+ subTitle && react_1.default.createElement("div", { className: "InfoHero__subtitle" }, (0, breakOnNL_1.default)(subTitle)),
82
+ blurb && react_1.default.createElement("div", { className: "InfoHero__blurb" }, blurb),
83
+ showButtons && (react_1.default.createElement("div", { className: "InfoHero__buttons" }, buttons.map((buttonProps, i) => (react_1.default.createElement(ButtonTertiary_1.default, Object.assign({ key: i }, buttonProps))))))),
84
+ react_1.default.createElement(_Image_1.default, Object.assign({ className: "InfoHero__image", altText: title }, image, { placeholder: true })),
85
+ react_1.default.createElement(_Blings_1.default, { blings: blings, mirror: alignment === 'right' })));
92
86
  };
93
87
  exports.default = InfoHero;
package/IslandBlock.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { Formheimur } from '@reykjavik/hanna-utils/assets';
2
2
  import { BlockItem } from './_abstract/_Block';
3
- import { ImageProps } from './_abstract/Image';
3
+ import { ImageProps } from './_abstract/_Image';
4
4
  import { SeenProp } from './utils/seenEffect';
5
5
  import { Alignment } from './constants';
6
6
  declare type IslandBaseBlockProps = {
@@ -16,6 +16,6 @@ const IslandBlock = (props) => {
16
16
  content,
17
17
  image: shapes ? { src: (0, assets_1.getFormheimurUrl)(shapes), inline: true } : image || {},
18
18
  };
19
- return (<_Block_1.default bem="IslandBlock" modifier={'align--' + alignment} {...blockProps} startSeen={startSeen}/>);
19
+ return (react_1.default.createElement(_Block_1.default, Object.assign({ bem: "IslandBlock", modifier: 'align--' + alignment }, blockProps, { startSeen: startSeen })));
20
20
  };
21
21
  exports.default = IslandBlock;
@@ -1,6 +1,6 @@
1
1
  import { Illustration } from '@reykjavik/hanna-utils/assets';
2
2
  import { BlockItem } from './_abstract/_Block';
3
- import { ImageProps } from './_abstract/Image';
3
+ import { ImageProps } from './_abstract/_Image';
4
4
  import { SeenProp } from './utils/seenEffect';
5
5
  import { Alignment } from './constants';
6
6
  declare const backgrounds: {
@@ -16,6 +16,6 @@ const IslandPageBlock = (props) => {
16
16
  const { title, summary, buttons, illustration, image, align, background, startSeen } = props;
17
17
  const alignment = align && constants_1.aligns[align] ? align : 'right';
18
18
  const bg = backgrounds[background || 'none'];
19
- return (<_Block_1.default bem="IslandPageBlock" modifier={['align--' + alignment, bg && 'background--' + bg]} content={{ title, summary, buttons }} image={illustration ? { src: (0, assets_1.getIllustrationUrl)(illustration) } : image || {}} startSeen={startSeen}/>);
19
+ return (react_1.default.createElement(_Block_1.default, { bem: "IslandPageBlock", modifier: ['align--' + alignment, bg && 'background--' + bg], content: { title, summary, buttons }, image: illustration ? { src: (0, assets_1.getIllustrationUrl)(illustration) } : image || {}, startSeen: startSeen }));
20
20
  };
21
21
  exports.default = IslandPageBlock;
@@ -1,5 +1,5 @@
1
1
  import { ReactElement } from 'react';
2
- import { ButtonProps } from './_abstract/Button';
2
+ import { ButtonProps } from './_abstract/_Button';
3
3
  import { SeenProp } from './utils/seenEffect';
4
4
  export declare type LabeledTextBlockProps = {
5
5
  label: string;
@@ -10,12 +10,10 @@ const ButtonTertiary_1 = __importDefault(require("./ButtonTertiary"));
10
10
  const LabeledTextBlock = (props) => {
11
11
  const { label, summary, wide, buttons = [], startSeen } = props;
12
12
  const [ref] = (0, seenEffect_1.useSeenEffect)(startSeen);
13
- return (<div className={(0, getBemClass_1.default)('LabeledTextBlock', wide && 'wide')} ref={ref}>
14
- <h2 className="LabeledTextBlock__label">{label}</h2>
15
- <div className="LabeledTextBlock__summary">
16
- {summary}
17
- {buttons.map((button, i) => (<ButtonTertiary_1.default key={i} {...button}/>))}
18
- </div>
19
- </div>);
13
+ return (react_1.default.createElement("div", { className: (0, getBemClass_1.default)('LabeledTextBlock', wide && 'wide'), ref: ref },
14
+ react_1.default.createElement("h2", { className: "LabeledTextBlock__label" }, label),
15
+ react_1.default.createElement("div", { className: "LabeledTextBlock__summary" },
16
+ summary,
17
+ buttons.map((button, i) => (react_1.default.createElement(ButtonTertiary_1.default, Object.assign({ key: i }, button)))))));
20
18
  };
21
19
  exports.default = LabeledTextBlock;
package/Layout.js ADDED
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.defaultLayoutTexts = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const hooks_1 = require("@hugsmidjan/react/hooks");
9
+ const getBemClass_1 = __importDefault(require("@hugsmidjan/react/utils/getBemClass"));
10
+ const assets_1 = require("@reykjavik/hanna-utils/assets");
11
+ const i18n_1 = require("@reykjavik/hanna-utils/i18n");
12
+ const _Image_1 = __importDefault(require("./_abstract/_Image"));
13
+ const _Link_1 = require("./_abstract/_Link");
14
+ const useMenuToggling_1 = require("./utils/useMenuToggling");
15
+ const useScrollbarWidthCSSVar_1 = require("./utils/useScrollbarWidthCSSVar");
16
+ exports.defaultLayoutTexts = {
17
+ is: {
18
+ lang: 'is',
19
+ skipLinkLabel: 'Valmynd',
20
+ closeMenuLabel: 'Loka',
21
+ closeMenuLabelLong: 'Loka valmynd',
22
+ },
23
+ en: {
24
+ lang: 'en',
25
+ skipLinkLabel: 'Skip to navigation',
26
+ closeMenuLabel: 'Close',
27
+ closeMenuLabelLong: 'Close menu',
28
+ },
29
+ };
30
+ const Layout = (props) => {
31
+ (0, useScrollbarWidthCSSVar_1.useScrollbarWidthCSSVar)();
32
+ const { ssr, globalAlerts, mainChildren, navChildren, footerChildren, colorTheme, children, siteName = 'Reykjavík', logoLink = '/', } = props;
33
+ const { isMenuActive, closeMenu, toggleMenu } = (0, useMenuToggling_1.useMenuToggling)(ssr !== 'ssr-only');
34
+ const isBrowser = (0, hooks_1.useIsBrowserSide)( /* ssr */);
35
+ const txt = (0, i18n_1.getTexts)(props, exports.defaultLayoutTexts);
36
+ return (react_1.default.createElement("div", { className: (0, getBemClass_1.default)('Layout', props.modifier), "data-sprinkled": isBrowser, "data-color-theme": colorTheme },
37
+ globalAlerts && (react_1.default.createElement("div", { className: "Layout__alerts", role: "alert" }, globalAlerts)),
38
+ react_1.default.createElement("div", { className: "Layout__content" },
39
+ react_1.default.createElement("div", { className: "Layout__header", role: "banner" },
40
+ react_1.default.createElement(_Link_1.Link, { className: "Layout__header__logo", href: logoLink },
41
+ ' ',
42
+ react_1.default.createElement(_Image_1.default, { className: undefined, inline: true, src: (0, assets_1.getAssetUrl)('reykjavik-logo.svg') }),
43
+ ' ',
44
+ siteName,
45
+ ' '),
46
+ ' ',
47
+ navChildren && (react_1.default.createElement(_Link_1.Link, { className: "Layout__header__skiplink", href: "#pagenav", onClick: isMenuActive &&
48
+ ((e) => {
49
+ e.preventDefault();
50
+ toggleMenu();
51
+ }), "aria-label": txt.skipLinkLabel }, txt.skipLinkLabel))),
52
+ react_1.default.createElement("div", { className: "Layout__main", role: "main" }, mainChildren || children),
53
+ navChildren && (react_1.default.createElement("div", { className: "Layout__nav", id: "pagenav", role: "navigation" },
54
+ navChildren,
55
+ isMenuActive && (react_1.default.createElement("button", { className: "Layout__nav__closebutton", onClick: closeMenu, "aria-label": txt.closeMenuLabelLong, type: "button" }, txt.closeMenuLabel)))),
56
+ react_1.default.createElement("div", { className: "Layout__footer", role: "complementary" }, footerChildren))));
57
+ };
58
+ exports.default = Layout;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AuxiliaryPanel = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const assets_1 = require("@reykjavik/hanna-utils/assets");
9
+ const _Link_1 = require("../_abstract/_Link");
10
+ const AuxiliaryPanel = (props) => {
11
+ const { title, id, items, image } = props;
12
+ const imageUrl = image ? (0, assets_1.getIllustrationUrl)(image) : image;
13
+ return (react_1.default.createElement("li", { className: "AuxiliaryPanel", id: id, style: imageUrl
14
+ ? { '--menu-auxiliary-image': `url(${imageUrl})` }
15
+ : undefined },
16
+ react_1.default.createElement("h3", { className: "AuxiliaryPanel__title" }, title),
17
+ react_1.default.createElement("ul", { className: "AuxiliaryPanel__items" }, items.map((item, i) => (react_1.default.createElement("li", { key: i, className: "AuxiliaryPanel__item", "aria-current": item.current || undefined },
18
+ react_1.default.createElement(_Link_1.Link, { className: "AuxiliaryPanel__link", href: item.href, target: item.target, lang: item.lang }, item.label)))))));
19
+ };
20
+ exports.AuxiliaryPanel = AuxiliaryPanel;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PrimaryPanel = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const getBemClass_1 = __importDefault(require("@hugsmidjan/react/utils/getBemClass"));
9
+ const _Link_1 = require("../_abstract/_Link");
10
+ const PrimaryPanel = (props) => {
11
+ const { setActivePanel, panel, isParent, isActive, isBrowser, texts } = props;
12
+ const { items } = panel;
13
+ return (react_1.default.createElement("li", { ref: isActive ? props.activeRef : undefined, className: (0, getBemClass_1.default)('PrimaryPanel', [
14
+ isParent && 'parent',
15
+ isActive && 'active',
16
+ items.length > 5 && 'twocol', // TODO: allow setting twocol manually?
17
+ ]), id: panel.id },
18
+ react_1.default.createElement("h3", { className: "PrimaryPanel__title" },
19
+ ' ',
20
+ isBrowser && !isActive ? (react_1.default.createElement("button", { className: "MainMenu__mega__title-toggler", "aria-controls": panel.id, onClick: () => setActivePanel(panel, false), "aria-pressed": isActive, type: "button" }, panel.title)) : (panel.title)),
21
+ react_1.default.createElement("ul", { className: "PrimaryPanel__items" }, items.map((item, i) => (react_1.default.createElement("li", { key: i, className: "PrimaryPanel__item", "aria-current": item.current || undefined },
22
+ react_1.default.createElement(_Link_1.Link, { className: "PrimaryPanel__link", href: item.href, target: item.target, lang: item.lang },
23
+ react_1.default.createElement("span", { className: "PrimaryPanel__linkTitle" }, item.label),
24
+ ' ',
25
+ react_1.default.createElement("small", { className: "PrimaryPanel__summary" }, item.summary),
26
+ ' '))))),
27
+ isBrowser && isActive && (react_1.default.createElement("button", { className: "MainMenu__megapanel__backtomenu", "aria-controls": panel.id, "aria-label": texts.backToMenuLong, onClick: () => setActivePanel(undefined), type: "button" }, texts.backToMenu))));
28
+ };
29
+ exports.PrimaryPanel = PrimaryPanel;
@@ -34,7 +34,7 @@ const useShortState_1 = __importDefault(require("@hugsmidjan/react/hooks/useShor
34
34
  const getBemClass_1 = __importDefault(require("@hugsmidjan/react/utils/getBemClass"));
35
35
  const hanna_utils_1 = require("@reykjavik/hanna-utils");
36
36
  const i18n_1 = require("@reykjavik/hanna-utils/i18n");
37
- const Link_1 = require("./_abstract/Link");
37
+ const _Link_1 = require("./_abstract/_Link");
38
38
  const _Auxiliary_1 = require("./MainMenu/_Auxiliary");
39
39
  const _PrimaryPanel_1 = require("./MainMenu/_PrimaryPanel");
40
40
  const useFormatMonitor_1 = require("./utils/useFormatMonitor");
@@ -130,49 +130,36 @@ const MainMenu = (props) => {
130
130
  if (menuItems.length === 0) {
131
131
  return null;
132
132
  }
133
- return (<nav className="MainMenu" aria-label={title} data-sprinkled={isBrowser} ref={menuElmRef}>
134
- <h2 className="MainMenu__title">{title}</h2>
135
- <ul className="MainMenu__items">
136
- {menuItems.map((item, i) => {
133
+ return (react_1.default.createElement("nav", { className: "MainMenu", "aria-label": title, "data-sprinkled": isBrowser, ref: menuElmRef },
134
+ react_1.default.createElement("h2", { className: "MainMenu__title" }, title),
135
+ react_1.default.createElement("ul", { className: "MainMenu__items" }, menuItems.map((item, i) => {
137
136
  if (item === '---') {
138
- return <li key={i} className="MainMenu__separator" aria-hidden="true"/>;
137
+ return react_1.default.createElement("li", { key: i, className: "MainMenu__separator", "aria-hidden": "true" });
139
138
  }
140
139
  const { label, labelLong, lang, controlsId, onClick } = item;
141
140
  const pressed = (activePanel && controlsId === activePanel.id) || undefined;
142
- return (<li key={i} className={(0, getBemClass_1.default)('MainMenu__item', item.modifier)} aria-current={item.current || undefined}>
143
- {onClick || (!!item.megaPanel && (isBrowser || item.href != null)) ? (
144
- // only print script-driven buttons in the browser
145
- <button className="MainMenu__link" onClick={() => {
146
- item.megaPanel && setActivePanel(item.megaPanel);
147
- onClick && onClick(i, item);
148
- onItemClick && onItemClick(i, item);
149
- }} ref={pressed && pressedLinkRef} aria-pressed={pressed} aria-controls={controlsId} aria-label={labelLong} title={labelLong} // For auto-tooltips on desktop
150
- lang={lang} type="button">
151
- {label}
152
- </button>) : item.href != null ? (
153
- // always render links server-side
154
- <Link_1.Link className="MainMenu__link" href={item.href} aria-label={labelLong} title={labelLong} // For auto-tooltips on desktop
155
- onClick={onItemClick && (() => onItemClick(i, item))} lang={lang}>
156
- {label}
157
- </Link_1.Link>) : undefined // skip rendering non-link menu items server side
158
- }
159
- </li>);
160
- })}
161
- </ul>
162
- {'\n\n'}
163
- {megaPanels.length > 0 && (<div className={(0, getBemClass_1.default)('MainMenu__panelsWrap', [activePanel && 'active'])}>
164
- <ul className="MainMenu__panels">
165
- {megaPanels.map((panel, i) => {
166
- if (!panel.items.length) {
167
- return;
168
- }
169
- const isActive = activePanel === panel || laggyActivePanel === panel || undefined;
170
- const isParent = !!panel.items.find((item) => item.current);
171
- return (<_PrimaryPanel_1.PrimaryPanel key={i} isParent={isParent} isActive={isActive} panel={panel} isBrowser={isBrowser} setActivePanel={setActivePanel} texts={(0, i18n_1.getTexts)(props, exports.defaultMainMenuTexts)} activeRef={activePanelRef}/>);
172
- })}
173
- {auxiliaryPanel && <_Auxiliary_1.AuxiliaryPanel {...auxiliaryPanel}/>}
174
- </ul>
175
- </div>)}
176
- </nav>);
141
+ return (react_1.default.createElement("li", { key: i, className: (0, getBemClass_1.default)('MainMenu__item', item.modifier), "aria-current": item.current || undefined }, onClick || (!!item.megaPanel && (isBrowser || item.href != null)) ? (
142
+ // only print script-driven buttons in the browser
143
+ react_1.default.createElement("button", { className: "MainMenu__link", onClick: () => {
144
+ item.megaPanel && setActivePanel(item.megaPanel);
145
+ onClick && onClick(i, item);
146
+ onItemClick && onItemClick(i, item);
147
+ }, ref: pressed && pressedLinkRef, "aria-pressed": pressed, "aria-controls": controlsId, "aria-label": labelLong, title: labelLong, lang: lang, type: "button" }, label)) : item.href != null ? (
148
+ // always render links server-side
149
+ react_1.default.createElement(_Link_1.Link, { className: "MainMenu__link", href: item.href, "aria-label": labelLong, title: labelLong, onClick: onItemClick && (() => onItemClick(i, item)), lang: lang }, label)) : undefined // skip rendering non-link menu items server side
150
+ ));
151
+ })),
152
+ '\n\n',
153
+ megaPanels.length > 0 && (react_1.default.createElement("div", { className: (0, getBemClass_1.default)('MainMenu__panelsWrap', [activePanel && 'active']) },
154
+ react_1.default.createElement("ul", { className: "MainMenu__panels" },
155
+ megaPanels.map((panel, i) => {
156
+ if (!panel.items.length) {
157
+ return;
158
+ }
159
+ const isActive = activePanel === panel || laggyActivePanel === panel || undefined;
160
+ const isParent = !!panel.items.find((item) => item.current);
161
+ return (react_1.default.createElement(_PrimaryPanel_1.PrimaryPanel, { key: i, isParent: isParent, isActive: isActive, panel: panel, isBrowser: isBrowser, setActivePanel: setActivePanel, texts: (0, i18n_1.getTexts)(props, exports.defaultMainMenuTexts), activeRef: activePanelRef }));
162
+ }),
163
+ auxiliaryPanel && react_1.default.createElement(_Auxiliary_1.AuxiliaryPanel, Object.assign({}, auxiliaryPanel)))))));
177
164
  };
178
165
  exports.default = MainMenu;
package/MiniMetrics.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ButtonProps } from './_abstract/Button';
1
+ import { ButtonProps } from './_abstract/_Button';
2
2
  import { SeenProp } from './utils/seenEffect';
3
3
  export declare type MiniMetricsProps = {
4
4
  text: string;
@@ -4,13 +4,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
- const Button_1 = __importDefault(require("./_abstract/Button"));
7
+ const _Button_1 = __importDefault(require("./_abstract/_Button"));
8
8
  const SeenEffect_1 = __importDefault(require("./SeenEffect"));
9
9
  const MiniMetrics = (props) => {
10
10
  const { text, moreButton, startSeen } = props;
11
- return (<SeenEffect_1.default className="MiniMetrics" startSeen={startSeen}>
12
- <strong className="MiniMetrics__text">{text}</strong> {'\n'}
13
- <Button_1.default bem="MiniMetrics__more" {...moreButton}/>
14
- </SeenEffect_1.default>);
11
+ return (react_1.default.createElement(SeenEffect_1.default, { className: "MiniMetrics", startSeen: startSeen },
12
+ react_1.default.createElement("strong", { className: "MiniMetrics__text" }, text),
13
+ " ",
14
+ '\n',
15
+ react_1.default.createElement(_Button_1.default, Object.assign({ bem: "MiniMetrics__more" }, moreButton))));
15
16
  };
16
17
  exports.default = MiniMetrics;
package/Modal.js ADDED
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const react_1 = __importDefault(require("react"));
7
+ const Modal_1 = __importDefault(require("@hugsmidjan/react/Modal"));
8
+ const Modal = (props) => {
9
+ const { closeDelay = 500, texts = {
10
+ closeButton: 'Loka ',
11
+ }, bling, children, render = () => children, } = props;
12
+ return (react_1.default.createElement(Modal_1.default, Object.assign({}, props, { bodyWrap: false, bem: "Modal", closeDelay: closeDelay, texts: texts, render: (args) => bling ? (react_1.default.createElement(react_1.default.Fragment, null,
13
+ render(args),
14
+ react_1.default.createElement("div", { className: "Modal__blings" },
15
+ react_1.default.createElement("div", { className: "Modal__blings__inner" }, bling)))) : (render(args)),
16
+ // eslint-disable-next-line react/no-children-prop
17
+ children: undefined })));
18
+ };
19
+ exports.default = Modal;