@reykjavik/hanna-react 0.10.53

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 (357) hide show
  1. package/CHANGELOG.md +795 -0
  2. package/README.md +69 -0
  3. package/lib/AccordionList.cjs +91 -0
  4. package/lib/AccordionList.mjs +69 -0
  5. package/lib/ActionCards.cjs +57 -0
  6. package/lib/ActionCards.mjs +35 -0
  7. package/lib/Alert.cjs +159 -0
  8. package/lib/Alert.mjs +139 -0
  9. package/lib/ArticleCarousel/_ArticleCarouselCard.cjs +75 -0
  10. package/lib/ArticleCarousel/_ArticleCarouselCard.mjs +51 -0
  11. package/lib/ArticleCarousel.cjs +43 -0
  12. package/lib/ArticleCarousel.mjs +21 -0
  13. package/lib/ArticleMeta.cjs +46 -0
  14. package/lib/ArticleMeta.mjs +22 -0
  15. package/lib/Attention.cjs +33 -0
  16. package/lib/Attention.mjs +9 -0
  17. package/lib/BasicTable.cjs +72 -0
  18. package/lib/BasicTable.mjs +50 -0
  19. package/lib/Bling.cjs +76 -0
  20. package/lib/Bling.mjs +52 -0
  21. package/lib/BlockBreak.cjs +32 -0
  22. package/lib/BlockBreak.mjs +8 -0
  23. package/lib/BlockQuote.cjs +47 -0
  24. package/lib/BlockQuote.mjs +25 -0
  25. package/lib/BreadCrumbs.cjs +67 -0
  26. package/lib/BreadCrumbs.mjs +43 -0
  27. package/lib/ButtonBack.cjs +47 -0
  28. package/lib/ButtonBack.mjs +25 -0
  29. package/lib/ButtonBar.cjs +45 -0
  30. package/lib/ButtonBar.mjs +18 -0
  31. package/lib/ButtonPrimary.cjs +47 -0
  32. package/lib/ButtonPrimary.mjs +25 -0
  33. package/lib/ButtonSecondary.cjs +47 -0
  34. package/lib/ButtonSecondary.mjs +25 -0
  35. package/lib/ButtonTertiary.cjs +64 -0
  36. package/lib/ButtonTertiary.mjs +42 -0
  37. package/lib/Carousel.cjs +52 -0
  38. package/lib/Carousel.mjs +30 -0
  39. package/lib/CarouselStepper.cjs +51 -0
  40. package/lib/CarouselStepper.mjs +29 -0
  41. package/lib/CenterColumn.cjs +40 -0
  42. package/lib/CenterColumn.mjs +16 -0
  43. package/lib/Checkbox.cjs +52 -0
  44. package/lib/Checkbox.mjs +30 -0
  45. package/lib/CheckboxButtonsGroup.cjs +65 -0
  46. package/lib/CheckboxButtonsGroup.mjs +43 -0
  47. package/lib/CheckboxGroup.cjs +55 -0
  48. package/lib/CheckboxGroup.mjs +33 -0
  49. package/lib/CityBlock.cjs +49 -0
  50. package/lib/CityBlock.mjs +25 -0
  51. package/lib/ContactBubble.cjs +200 -0
  52. package/lib/ContactBubble.mjs +173 -0
  53. package/lib/ContentArticle.cjs +63 -0
  54. package/lib/ContentArticle.mjs +41 -0
  55. package/lib/ContentImage.cjs +58 -0
  56. package/lib/ContentImage.mjs +36 -0
  57. package/lib/Datepicker.cjs +164 -0
  58. package/lib/Datepicker.mjs +142 -0
  59. package/lib/ExtraLinks.cjs +96 -0
  60. package/lib/ExtraLinks.mjs +74 -0
  61. package/lib/FeatureList.cjs +53 -0
  62. package/lib/FeatureList.mjs +29 -0
  63. package/lib/FieldGroup.cjs +40 -0
  64. package/lib/FieldGroup.mjs +16 -0
  65. package/lib/FileInput.cjs +256 -0
  66. package/lib/FileInput.mjs +234 -0
  67. package/lib/Foonote.cjs +30 -0
  68. package/lib/Foonote.mjs +6 -0
  69. package/lib/FooterBadges.cjs +49 -0
  70. package/lib/FooterBadges.mjs +25 -0
  71. package/lib/FooterInfo.cjs +47 -0
  72. package/lib/FooterInfo.mjs +23 -0
  73. package/lib/Footnote.cjs +32 -0
  74. package/lib/Footnote.mjs +8 -0
  75. package/lib/Form.cjs +56 -0
  76. package/lib/Form.mjs +34 -0
  77. package/lib/FormField.cjs +153 -0
  78. package/lib/FormField.mjs +131 -0
  79. package/lib/Gallery/_GalleryItem.cjs +83 -0
  80. package/lib/Gallery/_GalleryItem.mjs +61 -0
  81. package/lib/Gallery/_GalleryModal.cjs +104 -0
  82. package/lib/Gallery/_GalleryModal.mjs +82 -0
  83. package/lib/Gallery/_GalleryModalContext.cjs +30 -0
  84. package/lib/Gallery/_GalleryModalContext.mjs +6 -0
  85. package/lib/Gallery/_GalleryModalItem.cjs +59 -0
  86. package/lib/Gallery/_GalleryModalItem.mjs +36 -0
  87. package/lib/Gallery.cjs +79 -0
  88. package/lib/Gallery.mjs +57 -0
  89. package/lib/GridBlocks.cjs +81 -0
  90. package/lib/GridBlocks.mjs +59 -0
  91. package/lib/Heading.cjs +45 -0
  92. package/lib/Heading.mjs +21 -0
  93. package/lib/HeroBlock.cjs +74 -0
  94. package/lib/HeroBlock.mjs +52 -0
  95. package/lib/IframeBlock.cjs +48 -0
  96. package/lib/IframeBlock.mjs +24 -0
  97. package/lib/Illustration.cjs +51 -0
  98. package/lib/Illustration.mjs +31 -0
  99. package/lib/ImageCards.cjs +72 -0
  100. package/lib/ImageCards.mjs +52 -0
  101. package/lib/InfoBlock.cjs +51 -0
  102. package/lib/InfoBlock.mjs +27 -0
  103. package/lib/InfoHero.cjs +150 -0
  104. package/lib/InfoHero.mjs +128 -0
  105. package/lib/IslandBlock.cjs +63 -0
  106. package/lib/IslandBlock.mjs +41 -0
  107. package/lib/IslandPageBlock.cjs +49 -0
  108. package/lib/IslandPageBlock.mjs +25 -0
  109. package/lib/LabeledTextBlock.cjs +60 -0
  110. package/lib/LabeledTextBlock.mjs +38 -0
  111. package/lib/Layout.cjs +113 -0
  112. package/lib/Layout.mjs +87 -0
  113. package/lib/MainMenu/_Auxiliary.cjs +54 -0
  114. package/lib/MainMenu/_Auxiliary.mjs +28 -0
  115. package/lib/MainMenu/_PrimaryPanel.cjs +74 -0
  116. package/lib/MainMenu/_PrimaryPanel.mjs +48 -0
  117. package/lib/MainMenu.cjs +209 -0
  118. package/lib/MainMenu.mjs +187 -0
  119. package/lib/MiniMetrics.cjs +56 -0
  120. package/lib/MiniMetrics.mjs +34 -0
  121. package/lib/Modal.cjs +70 -0
  122. package/lib/Modal.mjs +48 -0
  123. package/lib/NameCard.cjs +115 -0
  124. package/lib/NameCard.mjs +91 -0
  125. package/lib/NameCards.cjs +52 -0
  126. package/lib/NameCards.mjs +30 -0
  127. package/lib/NewsHero.cjs +136 -0
  128. package/lib/NewsHero.mjs +114 -0
  129. package/lib/PageFilter.cjs +48 -0
  130. package/lib/PageFilter.mjs +24 -0
  131. package/lib/PageHeading.cjs +42 -0
  132. package/lib/PageHeading.mjs +18 -0
  133. package/lib/ProcessOverview.cjs +52 -0
  134. package/lib/ProcessOverview.mjs +28 -0
  135. package/lib/PullQuote.cjs +47 -0
  136. package/lib/PullQuote.mjs +25 -0
  137. package/lib/RadioButtonsGroup.cjs +64 -0
  138. package/lib/RadioButtonsGroup.mjs +42 -0
  139. package/lib/RadioGroup.cjs +58 -0
  140. package/lib/RadioGroup.mjs +36 -0
  141. package/lib/RelatedLinks.cjs +61 -0
  142. package/lib/RelatedLinks.mjs +37 -0
  143. package/lib/RowBlock.cjs +39 -0
  144. package/lib/RowBlock.mjs +15 -0
  145. package/lib/RowBlockColumn.cjs +40 -0
  146. package/lib/RowBlockColumn.mjs +16 -0
  147. package/lib/SearchInput.cjs +136 -0
  148. package/lib/SearchInput.mjs +114 -0
  149. package/lib/SearchResults/_SearchResultsItem.cjs +54 -0
  150. package/lib/SearchResults/_SearchResultsItem.mjs +30 -0
  151. package/lib/SearchResults.cjs +172 -0
  152. package/lib/SearchResults.mjs +150 -0
  153. package/lib/SeenEffect.cjs +66 -0
  154. package/lib/SeenEffect.mjs +44 -0
  155. package/lib/Selectbox.cjs +144 -0
  156. package/lib/Selectbox.mjs +122 -0
  157. package/lib/ShareButtons.cjs +101 -0
  158. package/lib/ShareButtons.mjs +83 -0
  159. package/lib/Sharpie.cjs +51 -0
  160. package/lib/Sharpie.mjs +27 -0
  161. package/lib/SiteSearchAutocomplete.cjs +150 -0
  162. package/lib/SiteSearchAutocomplete.mjs +126 -0
  163. package/lib/SiteSearchCurtain.cjs +78 -0
  164. package/lib/SiteSearchCurtain.mjs +56 -0
  165. package/lib/SiteSearchInput.cjs +119 -0
  166. package/lib/SiteSearchInput.mjs +97 -0
  167. package/lib/Skeleton.cjs +63 -0
  168. package/lib/Skeleton.mjs +39 -0
  169. package/lib/SubHeading.cjs +43 -0
  170. package/lib/SubHeading.mjs +19 -0
  171. package/lib/Tabs.cjs +166 -0
  172. package/lib/Tabs.mjs +144 -0
  173. package/lib/TagPill.cjs +113 -0
  174. package/lib/TagPill.mjs +91 -0
  175. package/lib/TextBlock.cjs +45 -0
  176. package/lib/TextBlock.mjs +21 -0
  177. package/lib/TextButton.cjs +55 -0
  178. package/lib/TextButton.mjs +33 -0
  179. package/lib/TextInput.cjs +136 -0
  180. package/lib/TextInput.mjs +114 -0
  181. package/lib/VSpacer.cjs +70 -0
  182. package/lib/VSpacer.mjs +46 -0
  183. package/lib/VerticalTabsTOC.cjs +123 -0
  184. package/lib/VerticalTabsTOC.mjs +101 -0
  185. package/lib/WizardLayout.cjs +79 -0
  186. package/lib/WizardLayout.mjs +55 -0
  187. package/lib/WizardLayoutClose.cjs +47 -0
  188. package/lib/WizardLayoutClose.mjs +25 -0
  189. package/lib/WizardStepper.cjs +55 -0
  190. package/lib/WizardStepper.mjs +31 -0
  191. package/lib/_abstract/Button.cjs +114 -0
  192. package/lib/_abstract/Button.mjs +92 -0
  193. package/lib/_abstract/CardList.cjs +100 -0
  194. package/lib/_abstract/CardList.mjs +76 -0
  195. package/lib/_abstract/Image.cjs +75 -0
  196. package/lib/_abstract/Image.mjs +51 -0
  197. package/lib/_abstract/Link.cjs +37 -0
  198. package/lib/_abstract/Link.mjs +10 -0
  199. package/lib/_abstract/TogglerGroup.cjs +92 -0
  200. package/lib/_abstract/TogglerGroup.mjs +70 -0
  201. package/lib/_abstract/TogglerGroupField.cjs +121 -0
  202. package/lib/_abstract/TogglerGroupField.mjs +99 -0
  203. package/lib/_abstract/TogglerInput.cjs +105 -0
  204. package/lib/_abstract/TogglerInput.mjs +83 -0
  205. package/lib/_abstract/_AbstractCarousel.cjs +170 -0
  206. package/lib/_abstract/_AbstractCarousel.mjs +152 -0
  207. package/lib/_abstract/_Blings.cjs +47 -0
  208. package/lib/_abstract/_Blings.mjs +23 -0
  209. package/lib/_abstract/_Block.cjs +73 -0
  210. package/lib/_abstract/_Block.mjs +51 -0
  211. package/lib/_abstract/_Quote.cjs +43 -0
  212. package/lib/_abstract/_Quote.mjs +17 -0
  213. package/lib/_abstract/breakOnNL.cjs +30 -0
  214. package/lib/_abstract/breakOnNL.mjs +6 -0
  215. package/lib/assets.cjs +77 -0
  216. package/lib/assets.mjs +53 -0
  217. package/lib/constants.cjs +49 -0
  218. package/lib/constants.mjs +24 -0
  219. package/lib/focus-visible.cjs +1 -0
  220. package/lib/focus-visible.mjs +1 -0
  221. package/lib/utils/config.cjs +27 -0
  222. package/lib/utils/config.mjs +4 -0
  223. package/lib/utils/detectEdgeScroll.cjs +95 -0
  224. package/lib/utils/detectEdgeScroll.mjs +71 -0
  225. package/lib/utils/env.cjs +31 -0
  226. package/lib/utils/env.mjs +5 -0
  227. package/lib/utils/seenEffect.cjs +93 -0
  228. package/lib/utils/seenEffect.mjs +65 -0
  229. package/lib/utils/useFormatMonitor.cjs +29 -0
  230. package/lib/utils/useFormatMonitor.mjs +6 -0
  231. package/lib/utils/useGetSVGtext.cjs +44 -0
  232. package/lib/utils/useGetSVGtext.mjs +21 -0
  233. package/lib/utils/useMenuToggling.cjs +83 -0
  234. package/lib/utils/useMenuToggling.mjs +60 -0
  235. package/lib/utils/useScrollbarWidthCSSVar.cjs +32 -0
  236. package/lib/utils/useScrollbarWidthCSSVar.mjs +6 -0
  237. package/lib/utils.cjs +18 -0
  238. package/lib/utils.mjs +2 -0
  239. package/package.json +491 -0
  240. package/types/AccordionList.d.ts +17 -0
  241. package/types/ActionCards.d.ts +5 -0
  242. package/types/Alert.d.ts +49 -0
  243. package/types/ArticleCarousel/_ArticleCarouselCard.d.ts +27 -0
  244. package/types/ArticleCarousel.d.ts +12 -0
  245. package/types/ArticleMeta.d.ts +9 -0
  246. package/types/Attention.d.ts +7 -0
  247. package/types/BasicTable.d.ts +12 -0
  248. package/types/Bling.d.ts +81 -0
  249. package/types/BlockBreak.d.ts +2 -0
  250. package/types/BlockQuote.d.ts +4 -0
  251. package/types/BreadCrumbs.d.ts +11 -0
  252. package/types/ButtonBack.d.ts +7 -0
  253. package/types/ButtonBar.d.ts +16 -0
  254. package/types/ButtonPrimary.d.ts +7 -0
  255. package/types/ButtonSecondary.d.ts +7 -0
  256. package/types/ButtonTertiary.d.ts +12 -0
  257. package/types/Carousel.d.ts +4 -0
  258. package/types/CarouselStepper.d.ts +4 -0
  259. package/types/CenterColumn.d.ts +7 -0
  260. package/types/Checkbox.d.ts +4 -0
  261. package/types/CheckboxButtonsGroup.d.ts +11 -0
  262. package/types/CheckboxGroup.d.ts +9 -0
  263. package/types/CityBlock.d.ts +23 -0
  264. package/types/ContactBubble.d.ts +58 -0
  265. package/types/ContentArticle.d.ts +15 -0
  266. package/types/ContentImage.d.ts +8 -0
  267. package/types/Datepicker.d.ts +39 -0
  268. package/types/ExtraLinks.d.ts +18 -0
  269. package/types/FeatureList.d.ts +12 -0
  270. package/types/FieldGroup.d.ts +9 -0
  271. package/types/FileInput.d.ts +17 -0
  272. package/types/Foonote.d.ts +12 -0
  273. package/types/FooterBadges.d.ts +9 -0
  274. package/types/FooterInfo.d.ts +18 -0
  275. package/types/Footnote.d.ts +6 -0
  276. package/types/Form.d.ts +7 -0
  277. package/types/FormField.d.ts +65 -0
  278. package/types/Gallery/_GalleryItem.d.ts +8 -0
  279. package/types/Gallery/_GalleryModal.d.ts +6 -0
  280. package/types/Gallery/_GalleryModalContext.d.ts +9 -0
  281. package/types/Gallery/_GalleryModalItem.d.ts +3 -0
  282. package/types/Gallery.d.ts +17 -0
  283. package/types/GridBlocks.d.ts +26 -0
  284. package/types/Heading.d.ts +16 -0
  285. package/types/HeroBlock.d.ts +19 -0
  286. package/types/IframeBlock.d.ts +23 -0
  287. package/types/Illustration.d.ts +13 -0
  288. package/types/ImageCards.d.ts +8 -0
  289. package/types/InfoBlock.d.ts +17 -0
  290. package/types/InfoHero.d.ts +17 -0
  291. package/types/IslandBlock.d.ts +25 -0
  292. package/types/IslandPageBlock.d.ts +24 -0
  293. package/types/LabeledTextBlock.d.ts +11 -0
  294. package/types/Layout.d.ts +33 -0
  295. package/types/MainMenu/_Auxiliary.d.ts +6 -0
  296. package/types/MainMenu/_PrimaryPanel.d.ts +13 -0
  297. package/types/MainMenu.d.ts +48 -0
  298. package/types/MiniMetrics.d.ts +8 -0
  299. package/types/Modal.d.ts +10 -0
  300. package/types/NameCard.d.ts +64 -0
  301. package/types/NameCards.d.ts +6 -0
  302. package/types/NewsHero.d.ts +14 -0
  303. package/types/PageFilter.d.ts +17 -0
  304. package/types/PageHeading.d.ts +10 -0
  305. package/types/ProcessOverview.d.ts +13 -0
  306. package/types/PullQuote.d.ts +4 -0
  307. package/types/RadioButtonsGroup.d.ts +11 -0
  308. package/types/RadioGroup.d.ts +13 -0
  309. package/types/RelatedLinks.d.ts +20 -0
  310. package/types/RowBlock.d.ts +12 -0
  311. package/types/RowBlockColumn.d.ts +8 -0
  312. package/types/SearchInput.d.ts +18 -0
  313. package/types/SearchResults/_SearchResultsItem.d.ts +18 -0
  314. package/types/SearchResults.d.ts +33 -0
  315. package/types/SeenEffect.d.ts +4 -0
  316. package/types/Selectbox.d.ts +8 -0
  317. package/types/ShareButtons.d.ts +9 -0
  318. package/types/Sharpie.d.ts +23 -0
  319. package/types/SiteSearchAutocomplete.d.ts +40 -0
  320. package/types/SiteSearchCurtain.d.ts +6 -0
  321. package/types/SiteSearchInput.d.ts +24 -0
  322. package/types/Skeleton.d.ts +25 -0
  323. package/types/SubHeading.d.ts +10 -0
  324. package/types/Tabs.d.ts +35 -0
  325. package/types/TagPill.d.ts +27 -0
  326. package/types/TextBlock.d.ts +15 -0
  327. package/types/TextButton.d.ts +9 -0
  328. package/types/TextInput.d.ts +16 -0
  329. package/types/VSpacer.d.ts +24 -0
  330. package/types/VerticalTabsTOC.d.ts +14 -0
  331. package/types/WizardLayout.d.ts +15 -0
  332. package/types/WizardLayoutClose.d.ts +3 -0
  333. package/types/WizardStepper.d.ts +36 -0
  334. package/types/_abstract/Button.d.ts +40 -0
  335. package/types/_abstract/CardList.d.ts +29 -0
  336. package/types/_abstract/Image.d.ts +32 -0
  337. package/types/_abstract/Link.d.ts +27 -0
  338. package/types/_abstract/TogglerGroup.d.ts +31 -0
  339. package/types/_abstract/TogglerGroupField.d.ts +17 -0
  340. package/types/_abstract/TogglerInput.d.ts +22 -0
  341. package/types/_abstract/_AbstractCarousel.d.ts +25 -0
  342. package/types/_abstract/_Blings.d.ts +11 -0
  343. package/types/_abstract/_Block.d.ts +22 -0
  344. package/types/_abstract/_Quote.d.ts +9 -0
  345. package/types/_abstract/breakOnNL.d.ts +2 -0
  346. package/types/assets.d.ts +42 -0
  347. package/types/constants.d.ts +39 -0
  348. package/types/focus-visible.d.ts +1 -0
  349. package/types/utils/config.d.ts +2 -0
  350. package/types/utils/detectEdgeScroll.d.ts +52 -0
  351. package/types/utils/env.d.ts +1 -0
  352. package/types/utils/seenEffect.d.ts +28 -0
  353. package/types/utils/useFormatMonitor.d.ts +38 -0
  354. package/types/utils/useGetSVGtext.d.ts +6 -0
  355. package/types/utils/useMenuToggling.d.ts +8 -0
  356. package/types/utils/useScrollbarWidthCSSVar.d.ts +1 -0
  357. package/types/utils.d.ts +2 -0
@@ -0,0 +1,115 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
+ var NameCard_exports = {};
22
+ __export(NameCard_exports, {
23
+ default: () => NameCard_default
24
+ });
25
+ module.exports = __toCommonJS(NameCard_exports);
26
+ var import_react = __toESM(require("react"));
27
+ var import_getBemClass = __toESM(require("@hugsmidjan/react/utils/getBemClass"));
28
+ var import_i18n = require("@reykjavik/hanna-utils/i18n");
29
+ var import_breakOnNL = __toESM(require("./_abstract/breakOnNL"));
30
+ var import_Button = __toESM(require("./_abstract/Button"));
31
+ const formatDate = (date) => {
32
+ return typeof date === "string" ? date : date.toISOString().slice(0, 10).replace(/-/g, ".");
33
+ };
34
+ const _telToContactInfo = (tel) => {
35
+ if (!tel) {
36
+ return;
37
+ }
38
+ tel = typeof tel === "string" ? [tel] : tel;
39
+ return tel.map((tel2) => ({
40
+ href: "tel:" + tel2,
41
+ value: tel2
42
+ }));
43
+ };
44
+ const renderContent = (content) => typeof content === "string" ? (0, import_breakOnNL.default)(content) : content;
45
+ const defaultTexts = {
46
+ en: {
47
+ updatedLabel: "Updated on",
48
+ availableLabel: "",
49
+ unavailableLabel: "",
50
+ vacancyLabel: "Vacancy",
51
+ noVacancyLabel: "No vacancy"
52
+ },
53
+ is: {
54
+ updatedLabel: "Uppf\xE6rt s\xED\xF0ast",
55
+ availableLabel: "",
56
+ unavailableLabel: "",
57
+ vacancyLabel: "Laus pl\xE1ss",
58
+ noVacancyLabel: "Ekki laus pl\xE1ss"
59
+ }
60
+ };
61
+ const NameCard = (props) => {
62
+ const { name, location, hours, aboutText, available = props.vacancy, updated } = props;
63
+ const renderMeta = () => {
64
+ if (available == null && !updated) {
65
+ return;
66
+ }
67
+ const texts = (0, import_i18n.getTexts)(props, defaultTexts);
68
+ const { updatedLabel, availableLabel, unavailableLabel } = texts;
69
+ return /* @__PURE__ */ import_react.default.createElement("div", {
70
+ className: "NameCard__meta"
71
+ }, available != null && /* @__PURE__ */ import_react.default.createElement("span", {
72
+ className: (0, import_getBemClass.default)("NameCard__availability", available && "available")
73
+ }, available ? availableLabel || texts.vacancyLabel : unavailableLabel || texts.noVacancyLabel, " "), updated != null && /* @__PURE__ */ import_react.default.createElement("span", {
74
+ className: "NameCard__updated"
75
+ }, updatedLabel, " ", formatDate(updated)));
76
+ };
77
+ let contactInfo = props.contactInfo;
78
+ if (!contactInfo) {
79
+ contactInfo = _telToContactInfo(props.tel) || [];
80
+ }
81
+ const cleanContactInfo = contactInfo.map((item) => {
82
+ if (typeof item !== "string" && "value" in item) {
83
+ return {
84
+ href: item.href,
85
+ label: item.value,
86
+ longLabel: item.label
87
+ };
88
+ }
89
+ return item;
90
+ });
91
+ return /* @__PURE__ */ import_react.default.createElement("div", {
92
+ className: "NameCard"
93
+ }, /* @__PURE__ */ import_react.default.createElement("div", {
94
+ className: "NameCard__name"
95
+ }, name), contactInfo.length > 0 && /* @__PURE__ */ import_react.default.createElement("p", {
96
+ className: "NameCard__contactinfo"
97
+ }, cleanContactInfo.map((item, i) => /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, typeof item === "string" ? /* @__PURE__ */ import_react.default.createElement("span", {
98
+ className: "NameCard__contactinfo__item"
99
+ }, item) : /* @__PURE__ */ import_react.default.createElement(import_Button.default, {
100
+ key: i,
101
+ bem: "NameCard__contactinfo__item",
102
+ href: item.href,
103
+ "aria-label": item.longLabel,
104
+ title: item.longLabel
105
+ }, item.label), " "))), location && /* @__PURE__ */ import_react.default.createElement("p", {
106
+ className: "NameCard__location"
107
+ }, renderContent(location)), hours && /* @__PURE__ */ import_react.default.createElement("p", {
108
+ className: "NameCard__hours"
109
+ }, renderContent(hours)), aboutText && /* @__PURE__ */ import_react.default.createElement("p", {
110
+ className: "NameCard__abouttext"
111
+ }, renderContent(aboutText)), renderMeta());
112
+ };
113
+ var NameCard_default = NameCard;
114
+ // Annotate the CommonJS export names for ESM import in node:
115
+ 0 && (module.exports = {});
@@ -0,0 +1,91 @@
1
+ import React from "react";
2
+ import getBemClass from "@hugsmidjan/react/utils/getBemClass";
3
+ import { getTexts } from "@reykjavik/hanna-utils/i18n";
4
+ import breakOnNL from "./_abstract/breakOnNL";
5
+ import Button from "./_abstract/Button";
6
+ const formatDate = (date) => {
7
+ return typeof date === "string" ? date : date.toISOString().slice(0, 10).replace(/-/g, ".");
8
+ };
9
+ const _telToContactInfo = (tel) => {
10
+ if (!tel) {
11
+ return;
12
+ }
13
+ tel = typeof tel === "string" ? [tel] : tel;
14
+ return tel.map((tel2) => ({
15
+ href: "tel:" + tel2,
16
+ value: tel2
17
+ }));
18
+ };
19
+ const renderContent = (content) => typeof content === "string" ? breakOnNL(content) : content;
20
+ const defaultTexts = {
21
+ en: {
22
+ updatedLabel: "Updated on",
23
+ availableLabel: "",
24
+ unavailableLabel: "",
25
+ vacancyLabel: "Vacancy",
26
+ noVacancyLabel: "No vacancy"
27
+ },
28
+ is: {
29
+ updatedLabel: "Uppf\xE6rt s\xED\xF0ast",
30
+ availableLabel: "",
31
+ unavailableLabel: "",
32
+ vacancyLabel: "Laus pl\xE1ss",
33
+ noVacancyLabel: "Ekki laus pl\xE1ss"
34
+ }
35
+ };
36
+ const NameCard = (props) => {
37
+ const { name, location, hours, aboutText, available = props.vacancy, updated } = props;
38
+ const renderMeta = () => {
39
+ if (available == null && !updated) {
40
+ return;
41
+ }
42
+ const texts = getTexts(props, defaultTexts);
43
+ const { updatedLabel, availableLabel, unavailableLabel } = texts;
44
+ return /* @__PURE__ */ React.createElement("div", {
45
+ className: "NameCard__meta"
46
+ }, available != null && /* @__PURE__ */ React.createElement("span", {
47
+ className: getBemClass("NameCard__availability", available && "available")
48
+ }, available ? availableLabel || texts.vacancyLabel : unavailableLabel || texts.noVacancyLabel, " "), updated != null && /* @__PURE__ */ React.createElement("span", {
49
+ className: "NameCard__updated"
50
+ }, updatedLabel, " ", formatDate(updated)));
51
+ };
52
+ let contactInfo = props.contactInfo;
53
+ if (!contactInfo) {
54
+ contactInfo = _telToContactInfo(props.tel) || [];
55
+ }
56
+ const cleanContactInfo = contactInfo.map((item) => {
57
+ if (typeof item !== "string" && "value" in item) {
58
+ return {
59
+ href: item.href,
60
+ label: item.value,
61
+ longLabel: item.label
62
+ };
63
+ }
64
+ return item;
65
+ });
66
+ return /* @__PURE__ */ React.createElement("div", {
67
+ className: "NameCard"
68
+ }, /* @__PURE__ */ React.createElement("div", {
69
+ className: "NameCard__name"
70
+ }, name), contactInfo.length > 0 && /* @__PURE__ */ React.createElement("p", {
71
+ className: "NameCard__contactinfo"
72
+ }, cleanContactInfo.map((item, i) => /* @__PURE__ */ React.createElement(React.Fragment, null, typeof item === "string" ? /* @__PURE__ */ React.createElement("span", {
73
+ className: "NameCard__contactinfo__item"
74
+ }, item) : /* @__PURE__ */ React.createElement(Button, {
75
+ key: i,
76
+ bem: "NameCard__contactinfo__item",
77
+ href: item.href,
78
+ "aria-label": item.longLabel,
79
+ title: item.longLabel
80
+ }, item.label), " "))), location && /* @__PURE__ */ React.createElement("p", {
81
+ className: "NameCard__location"
82
+ }, renderContent(location)), hours && /* @__PURE__ */ React.createElement("p", {
83
+ className: "NameCard__hours"
84
+ }, renderContent(hours)), aboutText && /* @__PURE__ */ React.createElement("p", {
85
+ className: "NameCard__abouttext"
86
+ }, renderContent(aboutText)), renderMeta());
87
+ };
88
+ var NameCard_default = NameCard;
89
+ export {
90
+ NameCard_default as default
91
+ };
@@ -0,0 +1,52 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __export = (target, all) => {
22
+ for (var name in all)
23
+ __defProp(target, name, { get: all[name], enumerable: true });
24
+ };
25
+ var __copyProps = (to, from, except, desc) => {
26
+ if (from && typeof from === "object" || typeof from === "function") {
27
+ for (let key of __getOwnPropNames(from))
28
+ if (!__hasOwnProp.call(to, key) && key !== except)
29
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
30
+ }
31
+ return to;
32
+ };
33
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
34
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
+ var NameCards_exports = {};
36
+ __export(NameCards_exports, {
37
+ default: () => NameCards_default
38
+ });
39
+ module.exports = __toCommonJS(NameCards_exports);
40
+ var import_react = __toESM(require("react"));
41
+ var import_NameCard = __toESM(require("./NameCard"));
42
+ const NameCards = (props) => {
43
+ const { items } = props;
44
+ return /* @__PURE__ */ import_react.default.createElement("div", {
45
+ className: "NameCards"
46
+ }, items.map((item, i) => /* @__PURE__ */ import_react.default.createElement(import_NameCard.default, __spreadValues({
47
+ key: i
48
+ }, item))));
49
+ };
50
+ var NameCards_default = NameCards;
51
+ // Annotate the CommonJS export names for ESM import in node:
52
+ 0 && (module.exports = {});
@@ -0,0 +1,30 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
17
+ import React from "react";
18
+ import NameCard from "./NameCard";
19
+ const NameCards = (props) => {
20
+ const { items } = props;
21
+ return /* @__PURE__ */ React.createElement("div", {
22
+ className: "NameCards"
23
+ }, items.map((item, i) => /* @__PURE__ */ React.createElement(NameCard, __spreadValues({
24
+ key: i
25
+ }, item))));
26
+ };
27
+ var NameCards_default = NameCards;
28
+ export {
29
+ NameCards_default as default
30
+ };
@@ -0,0 +1,136 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __export = (target, all) => {
22
+ for (var name in all)
23
+ __defProp(target, name, { get: all[name], enumerable: true });
24
+ };
25
+ var __copyProps = (to, from, except, desc) => {
26
+ if (from && typeof from === "object" || typeof from === "function") {
27
+ for (let key of __getOwnPropNames(from))
28
+ if (!__hasOwnProp.call(to, key) && key !== except)
29
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
30
+ }
31
+ return to;
32
+ };
33
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
34
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
+ var NewsHero_exports = {};
36
+ __export(NewsHero_exports, {
37
+ default: () => NewsHero_default
38
+ });
39
+ module.exports = __toCommonJS(NewsHero_exports);
40
+ var import_react = __toESM(require("react"));
41
+ var import_getBemClass = __toESM(require("@hugsmidjan/react/utils/getBemClass"));
42
+ var import_hanna_utils = require("@reykjavik/hanna-utils");
43
+ var import_Blings = __toESM(require("./_abstract/_Blings"));
44
+ var import_Image = __toESM(require("./_abstract/Image"));
45
+ var import_seenEffect = require("./utils/seenEffect");
46
+ var import_ShareButtons = __toESM(require("./ShareButtons"));
47
+ const blingOptions = {
48
+ interesting: [
49
+ {
50
+ type: "circle-xlarge",
51
+ parent: "center"
52
+ },
53
+ {
54
+ type: "loops-small",
55
+ color: "secondary",
56
+ align: "left-ish",
57
+ vertical: "down-ish",
58
+ parent: "center"
59
+ }
60
+ ],
61
+ snake: [
62
+ {
63
+ type: "snake-large",
64
+ align: "left",
65
+ parent: "top",
66
+ vertical: "down"
67
+ }
68
+ ],
69
+ pentagon: [
70
+ {
71
+ type: "pentagon-large",
72
+ align: "left",
73
+ parent: "center"
74
+ }
75
+ ],
76
+ dome: [
77
+ {
78
+ type: "dome-large",
79
+ align: "left-ish",
80
+ parent: "top",
81
+ vertical: "down"
82
+ }
83
+ ],
84
+ "balls-small": [
85
+ {
86
+ type: "circle-large",
87
+ align: "left",
88
+ parent: "center"
89
+ },
90
+ {
91
+ type: "circle-small",
92
+ color: "secondary",
93
+ align: "right",
94
+ parent: "bottom",
95
+ vertical: "down"
96
+ }
97
+ ],
98
+ "balls-large": [
99
+ {
100
+ type: "halfcircle-down-large",
101
+ align: "left",
102
+ parent: "bottom",
103
+ vertical: "up"
104
+ },
105
+ {
106
+ type: "circle-medium",
107
+ color: "secondary",
108
+ align: "left-center",
109
+ parent: "bottom"
110
+ }
111
+ ]
112
+ };
113
+ const NewsHero = (props) => {
114
+ const { title, sharing = true, meta, summary, image, blingType, startSeen } = props;
115
+ const [ref] = (0, import_seenEffect.useSeenEffect)(startSeen);
116
+ const blings = blingType && blingOptions[blingType] || (0, import_hanna_utils.getStableRandomItem)(blingOptions, title);
117
+ return /* @__PURE__ */ import_react.default.createElement("div", {
118
+ className: (0, import_getBemClass.default)("NewsHero", [!image && "align--right"]),
119
+ ref
120
+ }, /* @__PURE__ */ import_react.default.createElement("div", {
121
+ className: "NewsHero__content"
122
+ }, /* @__PURE__ */ import_react.default.createElement("h1", {
123
+ className: "NewsHero__title"
124
+ }, title), meta && /* @__PURE__ */ import_react.default.createElement("span", {
125
+ className: "NewsHero__meta"
126
+ }, meta), /* @__PURE__ */ import_react.default.createElement("div", {
127
+ className: "NewsHero__summary"
128
+ }, summary), sharing === true ? /* @__PURE__ */ import_react.default.createElement(import_ShareButtons.default, null) : sharing && sharing()), image ? /* @__PURE__ */ import_react.default.createElement(import_Image.default, __spreadValues({
129
+ className: "NewsHero__image"
130
+ }, image)) : /* @__PURE__ */ import_react.default.createElement(import_Blings.default, {
131
+ blings
132
+ }));
133
+ };
134
+ var NewsHero_default = NewsHero;
135
+ // Annotate the CommonJS export names for ESM import in node:
136
+ 0 && (module.exports = {});
@@ -0,0 +1,114 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
3
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
4
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __spreadValues = (a, b) => {
7
+ for (var prop in b || (b = {}))
8
+ if (__hasOwnProp.call(b, prop))
9
+ __defNormalProp(a, prop, b[prop]);
10
+ if (__getOwnPropSymbols)
11
+ for (var prop of __getOwnPropSymbols(b)) {
12
+ if (__propIsEnum.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ }
15
+ return a;
16
+ };
17
+ import React from "react";
18
+ import getBemClass from "@hugsmidjan/react/utils/getBemClass";
19
+ import { getStableRandomItem } from "@reykjavik/hanna-utils";
20
+ import Blings from "./_abstract/_Blings";
21
+ import Image from "./_abstract/Image";
22
+ import { useSeenEffect } from "./utils/seenEffect";
23
+ import ShareButtons from "./ShareButtons";
24
+ const blingOptions = {
25
+ interesting: [
26
+ {
27
+ type: "circle-xlarge",
28
+ parent: "center"
29
+ },
30
+ {
31
+ type: "loops-small",
32
+ color: "secondary",
33
+ align: "left-ish",
34
+ vertical: "down-ish",
35
+ parent: "center"
36
+ }
37
+ ],
38
+ snake: [
39
+ {
40
+ type: "snake-large",
41
+ align: "left",
42
+ parent: "top",
43
+ vertical: "down"
44
+ }
45
+ ],
46
+ pentagon: [
47
+ {
48
+ type: "pentagon-large",
49
+ align: "left",
50
+ parent: "center"
51
+ }
52
+ ],
53
+ dome: [
54
+ {
55
+ type: "dome-large",
56
+ align: "left-ish",
57
+ parent: "top",
58
+ vertical: "down"
59
+ }
60
+ ],
61
+ "balls-small": [
62
+ {
63
+ type: "circle-large",
64
+ align: "left",
65
+ parent: "center"
66
+ },
67
+ {
68
+ type: "circle-small",
69
+ color: "secondary",
70
+ align: "right",
71
+ parent: "bottom",
72
+ vertical: "down"
73
+ }
74
+ ],
75
+ "balls-large": [
76
+ {
77
+ type: "halfcircle-down-large",
78
+ align: "left",
79
+ parent: "bottom",
80
+ vertical: "up"
81
+ },
82
+ {
83
+ type: "circle-medium",
84
+ color: "secondary",
85
+ align: "left-center",
86
+ parent: "bottom"
87
+ }
88
+ ]
89
+ };
90
+ const NewsHero = (props) => {
91
+ const { title, sharing = true, meta, summary, image, blingType, startSeen } = props;
92
+ const [ref] = useSeenEffect(startSeen);
93
+ const blings = blingType && blingOptions[blingType] || getStableRandomItem(blingOptions, title);
94
+ return /* @__PURE__ */ React.createElement("div", {
95
+ className: getBemClass("NewsHero", [!image && "align--right"]),
96
+ ref
97
+ }, /* @__PURE__ */ React.createElement("div", {
98
+ className: "NewsHero__content"
99
+ }, /* @__PURE__ */ React.createElement("h1", {
100
+ className: "NewsHero__title"
101
+ }, title), meta && /* @__PURE__ */ React.createElement("span", {
102
+ className: "NewsHero__meta"
103
+ }, meta), /* @__PURE__ */ React.createElement("div", {
104
+ className: "NewsHero__summary"
105
+ }, summary), sharing === true ? /* @__PURE__ */ React.createElement(ShareButtons, null) : sharing && sharing()), image ? /* @__PURE__ */ React.createElement(Image, __spreadValues({
106
+ className: "NewsHero__image"
107
+ }, image)) : /* @__PURE__ */ React.createElement(Blings, {
108
+ blings
109
+ }));
110
+ };
111
+ var NewsHero_default = NewsHero;
112
+ export {
113
+ NewsHero_default as default
114
+ };
@@ -0,0 +1,48 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
+ var PageFilter_exports = {};
22
+ __export(PageFilter_exports, {
23
+ default: () => PageFilter_default
24
+ });
25
+ module.exports = __toCommonJS(PageFilter_exports);
26
+ var import_react = __toESM(require("react"));
27
+ var import_getBemClass = __toESM(require("@hugsmidjan/react/utils/getBemClass"));
28
+ var import_seenEffect = require("./utils/seenEffect");
29
+ var import_Footnote = __toESM(require("./Footnote"));
30
+ const PageFilter = (props) => {
31
+ const { title, summary, footnote, filters, children, buttonRow, underlap, startSeen } = props;
32
+ const [ref] = (0, import_seenEffect.useSeenEffect)(startSeen);
33
+ return /* @__PURE__ */ import_react.default.createElement("div", {
34
+ className: (0, import_getBemClass.default)("PageFilter", underlap && "underlap"),
35
+ ref
36
+ }, /* @__PURE__ */ import_react.default.createElement("h2", {
37
+ className: "PageFilter__title"
38
+ }, title), summary && /* @__PURE__ */ import_react.default.createElement("div", {
39
+ className: "PageFilter__summary"
40
+ }, summary), /* @__PURE__ */ import_react.default.createElement("div", {
41
+ className: "PageFilter__filters"
42
+ }, filters || children), /* @__PURE__ */ import_react.default.createElement("div", {
43
+ className: "PageFilter__buttons"
44
+ }, buttonRow), footnote && /* @__PURE__ */ import_react.default.createElement(import_Footnote.default, null, footnote));
45
+ };
46
+ var PageFilter_default = PageFilter;
47
+ // Annotate the CommonJS export names for ESM import in node:
48
+ 0 && (module.exports = {});
@@ -0,0 +1,24 @@
1
+ import React from "react";
2
+ import getBemClass from "@hugsmidjan/react/utils/getBemClass";
3
+ import { useSeenEffect } from "./utils/seenEffect";
4
+ import Footnote from "./Footnote";
5
+ const PageFilter = (props) => {
6
+ const { title, summary, footnote, filters, children, buttonRow, underlap, startSeen } = props;
7
+ const [ref] = useSeenEffect(startSeen);
8
+ return /* @__PURE__ */ React.createElement("div", {
9
+ className: getBemClass("PageFilter", underlap && "underlap"),
10
+ ref
11
+ }, /* @__PURE__ */ React.createElement("h2", {
12
+ className: "PageFilter__title"
13
+ }, title), summary && /* @__PURE__ */ React.createElement("div", {
14
+ className: "PageFilter__summary"
15
+ }, summary), /* @__PURE__ */ React.createElement("div", {
16
+ className: "PageFilter__filters"
17
+ }, filters || children), /* @__PURE__ */ React.createElement("div", {
18
+ className: "PageFilter__buttons"
19
+ }, buttonRow), footnote && /* @__PURE__ */ React.createElement(Footnote, null, footnote));
20
+ };
21
+ var PageFilter_default = PageFilter;
22
+ export {
23
+ PageFilter_default as default
24
+ };
@@ -0,0 +1,42 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
+ var PageHeading_exports = {};
22
+ __export(PageHeading_exports, {
23
+ default: () => PageHeading_default
24
+ });
25
+ module.exports = __toCommonJS(PageHeading_exports);
26
+ var import_react = __toESM(require("react"));
27
+ var import_getBemClass = __toESM(require("@hugsmidjan/react/utils/getBemClass"));
28
+ var import_seenEffect = require("./utils/seenEffect");
29
+ const PageHeading = (props) => {
30
+ const { Tag = "h1", align, small, children, startSeen } = props;
31
+ const [ref] = (0, import_seenEffect.useSeenEffect)(startSeen);
32
+ return /* @__PURE__ */ import_react.default.createElement(Tag, {
33
+ className: (0, import_getBemClass.default)("PageHeading", [
34
+ small && "small",
35
+ align === "right" && "align--" + align
36
+ ]),
37
+ ref
38
+ }, children);
39
+ };
40
+ var PageHeading_default = PageHeading;
41
+ // Annotate the CommonJS export names for ESM import in node:
42
+ 0 && (module.exports = {});
@@ -0,0 +1,18 @@
1
+ import React from "react";
2
+ import getBemClass from "@hugsmidjan/react/utils/getBemClass";
3
+ import { useSeenEffect } from "./utils/seenEffect";
4
+ const PageHeading = (props) => {
5
+ const { Tag = "h1", align, small, children, startSeen } = props;
6
+ const [ref] = useSeenEffect(startSeen);
7
+ return /* @__PURE__ */ React.createElement(Tag, {
8
+ className: getBemClass("PageHeading", [
9
+ small && "small",
10
+ align === "right" && "align--" + align
11
+ ]),
12
+ ref
13
+ }, children);
14
+ };
15
+ var PageHeading_default = PageHeading;
16
+ export {
17
+ PageHeading_default as default
18
+ };