@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,105 @@
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 __objRest = (source, exclude) => {
22
+ var target = {};
23
+ for (var prop in source)
24
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
25
+ target[prop] = source[prop];
26
+ if (source != null && __getOwnPropSymbols)
27
+ for (var prop of __getOwnPropSymbols(source)) {
28
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
29
+ target[prop] = source[prop];
30
+ }
31
+ return target;
32
+ };
33
+ var __export = (target, all) => {
34
+ for (var name in all)
35
+ __defProp(target, name, { get: all[name], enumerable: true });
36
+ };
37
+ var __copyProps = (to, from, except, desc) => {
38
+ if (from && typeof from === "object" || typeof from === "function") {
39
+ for (let key of __getOwnPropNames(from))
40
+ if (!__hasOwnProp.call(to, key) && key !== except)
41
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
42
+ }
43
+ return to;
44
+ };
45
+ 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));
46
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
47
+ var TogglerInput_exports = {};
48
+ __export(TogglerInput_exports, {
49
+ default: () => TogglerInput_default
50
+ });
51
+ module.exports = __toCommonJS(TogglerInput_exports);
52
+ var import_react = __toESM(require("react"));
53
+ var import_hooks = require("@hugsmidjan/react/hooks");
54
+ var import_getBemClass = __toESM(require("@hugsmidjan/react/utils/getBemClass"));
55
+ const TogglerInput = (props) => {
56
+ const _a = props, {
57
+ bem,
58
+ modifier,
59
+ className,
60
+ label,
61
+ invalid,
62
+ errorMessage,
63
+ Wrapper = "div",
64
+ required,
65
+ reqText,
66
+ type,
67
+ id
68
+ } = _a, inputProps = __objRest(_a, [
69
+ "bem",
70
+ "modifier",
71
+ "className",
72
+ "label",
73
+ "invalid",
74
+ "errorMessage",
75
+ "Wrapper",
76
+ "required",
77
+ "reqText",
78
+ "type",
79
+ "id"
80
+ ]);
81
+ const domid = (0, import_hooks.useDomid)(id);
82
+ const errorId = errorMessage && "error" + domid;
83
+ const reqStar = required && reqText !== false && /* @__PURE__ */ import_react.default.createElement("abbr", {
84
+ className: bem + "__label__reqstar",
85
+ title: (reqText || "\xDEarf a\xF0 haka \xED") + ": "
86
+ }, "*");
87
+ return /* @__PURE__ */ import_react.default.createElement(Wrapper, {
88
+ className: (0, import_getBemClass.default)(bem, modifier, className)
89
+ }, /* @__PURE__ */ import_react.default.createElement("input", __spreadValues({
90
+ className: bem + "__input",
91
+ type,
92
+ id: domid,
93
+ "aria-invalid": invalid || !!errorMessage || void 0,
94
+ "aria-describedby": errorId
95
+ }, inputProps)), " ", /* @__PURE__ */ import_react.default.createElement("label", {
96
+ className: bem + "__label",
97
+ htmlFor: domid
98
+ }, " ", reqStar, " ", label, " "), errorMessage && /* @__PURE__ */ import_react.default.createElement("div", {
99
+ className: bem + "__error",
100
+ id: errorId
101
+ }, errorMessage));
102
+ };
103
+ var TogglerInput_default = TogglerInput;
104
+ // Annotate the CommonJS export names for ESM import in node:
105
+ 0 && (module.exports = {});
@@ -0,0 +1,83 @@
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
+ var __objRest = (source, exclude) => {
18
+ var target = {};
19
+ for (var prop in source)
20
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
21
+ target[prop] = source[prop];
22
+ if (source != null && __getOwnPropSymbols)
23
+ for (var prop of __getOwnPropSymbols(source)) {
24
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
25
+ target[prop] = source[prop];
26
+ }
27
+ return target;
28
+ };
29
+ import React from "react";
30
+ import { useDomid } from "@hugsmidjan/react/hooks";
31
+ import getBemClass from "@hugsmidjan/react/utils/getBemClass";
32
+ const TogglerInput = (props) => {
33
+ const _a = props, {
34
+ bem,
35
+ modifier,
36
+ className,
37
+ label,
38
+ invalid,
39
+ errorMessage,
40
+ Wrapper = "div",
41
+ required,
42
+ reqText,
43
+ type,
44
+ id
45
+ } = _a, inputProps = __objRest(_a, [
46
+ "bem",
47
+ "modifier",
48
+ "className",
49
+ "label",
50
+ "invalid",
51
+ "errorMessage",
52
+ "Wrapper",
53
+ "required",
54
+ "reqText",
55
+ "type",
56
+ "id"
57
+ ]);
58
+ const domid = useDomid(id);
59
+ const errorId = errorMessage && "error" + domid;
60
+ const reqStar = required && reqText !== false && /* @__PURE__ */ React.createElement("abbr", {
61
+ className: bem + "__label__reqstar",
62
+ title: (reqText || "\xDEarf a\xF0 haka \xED") + ": "
63
+ }, "*");
64
+ return /* @__PURE__ */ React.createElement(Wrapper, {
65
+ className: getBemClass(bem, modifier, className)
66
+ }, /* @__PURE__ */ React.createElement("input", __spreadValues({
67
+ className: bem + "__input",
68
+ type,
69
+ id: domid,
70
+ "aria-invalid": invalid || !!errorMessage || void 0,
71
+ "aria-describedby": errorId
72
+ }, inputProps)), " ", /* @__PURE__ */ React.createElement("label", {
73
+ className: bem + "__label",
74
+ htmlFor: domid
75
+ }, " ", reqStar, " ", label, " "), errorMessage && /* @__PURE__ */ React.createElement("div", {
76
+ className: bem + "__error",
77
+ id: errorId
78
+ }, errorMessage));
79
+ };
80
+ var TogglerInput_default = TogglerInput;
81
+ export {
82
+ TogglerInput_default as default
83
+ };
@@ -0,0 +1,170 @@
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 AbstractCarousel_exports = {};
36
+ __export(AbstractCarousel_exports, {
37
+ default: () => AbstractCarousel_default
38
+ });
39
+ module.exports = __toCommonJS(AbstractCarousel_exports);
40
+ var import_react = __toESM(require("react"));
41
+ var import_A = __toESM(require("@hugsmidjan/qj/A"));
42
+ var import_focusElm = __toESM(require("@hugsmidjan/qj/focusElm"));
43
+ var import_throttle = __toESM(require("@hugsmidjan/qj/throttle"));
44
+ var import_hooks = require("@hugsmidjan/react/hooks");
45
+ var import_getBemClass = __toESM(require("@hugsmidjan/react/utils/getBemClass"));
46
+ var import_hanna_utils = require("@reykjavik/hanna-utils");
47
+ var import_CarouselStepper = __toESM(require("../CarouselStepper"));
48
+ var import_seenEffect = require("../utils/seenEffect");
49
+ const WHEEL_AMPLIFIER = 3;
50
+ const WHEEL_HIJACK_TIMEOUT_MS = 667;
51
+ const scrollXBy = (elm, deltaX) => {
52
+ const left = elm.scrollLeft + deltaX;
53
+ elm.scrollTo(left, elm.scrollTop);
54
+ };
55
+ const exitWheelHijack = (elm) => () => {
56
+ elm.style.scrollSnapType = "";
57
+ const lastElmOffset = elm.lastElementChild ? elm.lastElementChild.offsetLeft : 0;
58
+ scrollXBy(elm, Math.min(0, lastElmOffset - elm.scrollLeft));
59
+ };
60
+ const handleMouseWheel = (e) => {
61
+ const elm = e.currentTarget;
62
+ if (e.deltaX || elm.$hasXDeltaed) {
63
+ elm.$hasXDeltaed = true;
64
+ exitWheelHijack(elm);
65
+ return;
66
+ }
67
+ if (e.deltaY && !e.deltaX) {
68
+ if (e.deltaY < 0) {
69
+ if (elm.scrollLeft < 50) {
70
+ return;
71
+ }
72
+ } else {
73
+ if (elm.scrollLeft > (elm.lastElementChild ? elm.lastElementChild.offsetLeft : 0)) {
74
+ exitWheelHijack(elm);
75
+ return;
76
+ }
77
+ }
78
+ e.preventDefault();
79
+ e.stopImmediatePropagation();
80
+ elm.style.scrollSnapType = "initial";
81
+ scrollXBy(elm, e.deltaY * WHEEL_AMPLIFIER);
82
+ clearTimeout(elm.$timeout);
83
+ elm.$timeout = setTimeout(exitWheelHijack(elm), WHEEL_HIJACK_TIMEOUT_MS);
84
+ }
85
+ };
86
+ const handleMouseLeave = (e) => {
87
+ const elm = e.currentTarget;
88
+ exitWheelHijack(elm);
89
+ elm.$hasXDeltaed = void 0;
90
+ };
91
+ const AbstractCarousel = (props) => {
92
+ const {
93
+ title,
94
+ items = [],
95
+ Component,
96
+ ComponentProps,
97
+ bem = "Carousel",
98
+ modifier,
99
+ ssr,
100
+ startSeen
101
+ } = props;
102
+ const children = props.children && props.children.filter(import_hanna_utils.notNully);
103
+ const [leftOffset, setLeftOffset] = (0, import_react.useState)();
104
+ const itemCount = (children || items).length;
105
+ const listRef = (0, import_react.useRef)(null);
106
+ const [activeItem, setActiveItem] = (0, import_react.useState)(0);
107
+ const isBrowser = (0, import_hooks.useIsBrowserSide)(ssr);
108
+ (0, import_react.useEffect)(() => {
109
+ const listElm = listRef.current;
110
+ if (!listElm) {
111
+ return;
112
+ }
113
+ const calcLeftOffset = () => {
114
+ var _a;
115
+ setLeftOffset((_a = listElm.parentElement) == null ? void 0 : _a.getBoundingClientRect().left);
116
+ scrollXBy(listElm, 0);
117
+ };
118
+ const calcActiveItem = (0, import_throttle.default)(() => {
119
+ const { scrollLeft, children: children2 } = listElm;
120
+ (0, import_A.default)(children2).find((item, i) => {
121
+ if (scrollLeft <= item.offsetLeft + item.offsetWidth / 2) {
122
+ setActiveItem(i);
123
+ return true;
124
+ }
125
+ });
126
+ }, 300, true);
127
+ calcLeftOffset();
128
+ listElm.addEventListener("wheel", handleMouseWheel);
129
+ listElm.addEventListener("scroll", calcActiveItem, { passive: true });
130
+ window.addEventListener("resize", calcLeftOffset, { passive: true });
131
+ return () => {
132
+ listElm.removeEventListener("wheel", handleMouseWheel);
133
+ listElm.removeEventListener("scroll", calcActiveItem);
134
+ window.removeEventListener("resize", calcLeftOffset);
135
+ };
136
+ }, []);
137
+ const scrollToItem = (newActive) => {
138
+ setActiveItem(newActive);
139
+ const listElm = listRef.current;
140
+ const newItem = listElm.children[newActive];
141
+ listElm.scrollTo(newItem ? newItem.offsetLeft : 0, 0);
142
+ setTimeout(() => (0, import_focusElm.default)(newItem), 500);
143
+ };
144
+ const [outerRef] = (0, import_seenEffect.useSeenEffect)(startSeen);
145
+ if (!itemCount) {
146
+ return null;
147
+ }
148
+ return /* @__PURE__ */ import_react.default.createElement("div", {
149
+ className: (0, import_getBemClass.default)(bem, modifier, props.className),
150
+ ref: outerRef,
151
+ "data-sprinkled": isBrowser
152
+ }, title && /* @__PURE__ */ import_react.default.createElement("h2", {
153
+ className: bem + "__title"
154
+ }, title), /* @__PURE__ */ import_react.default.createElement("div", {
155
+ className: bem + "__itemlist",
156
+ style: leftOffset ? { "--Carousel--leftOffset": `${leftOffset}px` } : void 0,
157
+ "data-scroll-snapping": leftOffset ? "true" : void 0,
158
+ onMouseLeave: handleMouseLeave,
159
+ ref: listRef
160
+ }, children || items.map((item, i) => /* @__PURE__ */ import_react.default.createElement(Component, __spreadValues(__spreadValues({
161
+ key: i
162
+ }, ComponentProps), item)))), isBrowser && /* @__PURE__ */ import_react.default.createElement(import_CarouselStepper.default, {
163
+ itemCount,
164
+ setCurrent: scrollToItem,
165
+ current: activeItem
166
+ }));
167
+ };
168
+ var AbstractCarousel_default = AbstractCarousel;
169
+ // Annotate the CommonJS export names for ESM import in node:
170
+ 0 && (module.exports = {});
@@ -0,0 +1,152 @@
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, {
18
+ useEffect,
19
+ useRef,
20
+ useState
21
+ } from "react";
22
+ import A from "@hugsmidjan/qj/A";
23
+ import focusElm from "@hugsmidjan/qj/focusElm";
24
+ import throttle from "@hugsmidjan/qj/throttle";
25
+ import { useIsBrowserSide } from "@hugsmidjan/react/hooks";
26
+ import getBemClass from "@hugsmidjan/react/utils/getBemClass";
27
+ import { notNully } from "@reykjavik/hanna-utils";
28
+ import CarouselStepper from "../CarouselStepper";
29
+ import { useSeenEffect } from "../utils/seenEffect";
30
+ const WHEEL_AMPLIFIER = 3;
31
+ const WHEEL_HIJACK_TIMEOUT_MS = 667;
32
+ const scrollXBy = (elm, deltaX) => {
33
+ const left = elm.scrollLeft + deltaX;
34
+ elm.scrollTo(left, elm.scrollTop);
35
+ };
36
+ const exitWheelHijack = (elm) => () => {
37
+ elm.style.scrollSnapType = "";
38
+ const lastElmOffset = elm.lastElementChild ? elm.lastElementChild.offsetLeft : 0;
39
+ scrollXBy(elm, Math.min(0, lastElmOffset - elm.scrollLeft));
40
+ };
41
+ const handleMouseWheel = (e) => {
42
+ const elm = e.currentTarget;
43
+ if (e.deltaX || elm.$hasXDeltaed) {
44
+ elm.$hasXDeltaed = true;
45
+ exitWheelHijack(elm);
46
+ return;
47
+ }
48
+ if (e.deltaY && !e.deltaX) {
49
+ if (e.deltaY < 0) {
50
+ if (elm.scrollLeft < 50) {
51
+ return;
52
+ }
53
+ } else {
54
+ if (elm.scrollLeft > (elm.lastElementChild ? elm.lastElementChild.offsetLeft : 0)) {
55
+ exitWheelHijack(elm);
56
+ return;
57
+ }
58
+ }
59
+ e.preventDefault();
60
+ e.stopImmediatePropagation();
61
+ elm.style.scrollSnapType = "initial";
62
+ scrollXBy(elm, e.deltaY * WHEEL_AMPLIFIER);
63
+ clearTimeout(elm.$timeout);
64
+ elm.$timeout = setTimeout(exitWheelHijack(elm), WHEEL_HIJACK_TIMEOUT_MS);
65
+ }
66
+ };
67
+ const handleMouseLeave = (e) => {
68
+ const elm = e.currentTarget;
69
+ exitWheelHijack(elm);
70
+ elm.$hasXDeltaed = void 0;
71
+ };
72
+ const AbstractCarousel = (props) => {
73
+ const {
74
+ title,
75
+ items = [],
76
+ Component,
77
+ ComponentProps,
78
+ bem = "Carousel",
79
+ modifier,
80
+ ssr,
81
+ startSeen
82
+ } = props;
83
+ const children = props.children && props.children.filter(notNully);
84
+ const [leftOffset, setLeftOffset] = useState();
85
+ const itemCount = (children || items).length;
86
+ const listRef = useRef(null);
87
+ const [activeItem, setActiveItem] = useState(0);
88
+ const isBrowser = useIsBrowserSide(ssr);
89
+ useEffect(() => {
90
+ const listElm = listRef.current;
91
+ if (!listElm) {
92
+ return;
93
+ }
94
+ const calcLeftOffset = () => {
95
+ var _a;
96
+ setLeftOffset((_a = listElm.parentElement) == null ? void 0 : _a.getBoundingClientRect().left);
97
+ scrollXBy(listElm, 0);
98
+ };
99
+ const calcActiveItem = throttle(() => {
100
+ const { scrollLeft, children: children2 } = listElm;
101
+ A(children2).find((item, i) => {
102
+ if (scrollLeft <= item.offsetLeft + item.offsetWidth / 2) {
103
+ setActiveItem(i);
104
+ return true;
105
+ }
106
+ });
107
+ }, 300, true);
108
+ calcLeftOffset();
109
+ listElm.addEventListener("wheel", handleMouseWheel);
110
+ listElm.addEventListener("scroll", calcActiveItem, { passive: true });
111
+ window.addEventListener("resize", calcLeftOffset, { passive: true });
112
+ return () => {
113
+ listElm.removeEventListener("wheel", handleMouseWheel);
114
+ listElm.removeEventListener("scroll", calcActiveItem);
115
+ window.removeEventListener("resize", calcLeftOffset);
116
+ };
117
+ }, []);
118
+ const scrollToItem = (newActive) => {
119
+ setActiveItem(newActive);
120
+ const listElm = listRef.current;
121
+ const newItem = listElm.children[newActive];
122
+ listElm.scrollTo(newItem ? newItem.offsetLeft : 0, 0);
123
+ setTimeout(() => focusElm(newItem), 500);
124
+ };
125
+ const [outerRef] = useSeenEffect(startSeen);
126
+ if (!itemCount) {
127
+ return null;
128
+ }
129
+ return /* @__PURE__ */ React.createElement("div", {
130
+ className: getBemClass(bem, modifier, props.className),
131
+ ref: outerRef,
132
+ "data-sprinkled": isBrowser
133
+ }, title && /* @__PURE__ */ React.createElement("h2", {
134
+ className: bem + "__title"
135
+ }, title), /* @__PURE__ */ React.createElement("div", {
136
+ className: bem + "__itemlist",
137
+ style: leftOffset ? { "--Carousel--leftOffset": `${leftOffset}px` } : void 0,
138
+ "data-scroll-snapping": leftOffset ? "true" : void 0,
139
+ onMouseLeave: handleMouseLeave,
140
+ ref: listRef
141
+ }, children || items.map((item, i) => /* @__PURE__ */ React.createElement(Component, __spreadValues(__spreadValues({
142
+ key: i
143
+ }, ComponentProps), item)))), isBrowser && /* @__PURE__ */ React.createElement(CarouselStepper, {
144
+ itemCount,
145
+ setCurrent: scrollToItem,
146
+ current: activeItem
147
+ }));
148
+ };
149
+ var AbstractCarousel_default = AbstractCarousel;
150
+ export {
151
+ AbstractCarousel_default as default
152
+ };
@@ -0,0 +1,47 @@
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 Blings_exports = {};
22
+ __export(Blings_exports, {
23
+ default: () => Blings_default
24
+ });
25
+ module.exports = __toCommonJS(Blings_exports);
26
+ var import_react = __toESM(require("react"));
27
+ var import_Bling = __toESM(require("../Bling"));
28
+ const inverseAlignments = {
29
+ left: "right",
30
+ "left-ish": "right-ish",
31
+ "left-center": "right-center",
32
+ "right-center": "left-center",
33
+ "right-ish": "left-ish",
34
+ right: "left"
35
+ };
36
+ const Blings = (props) => /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, props.blings.map(({ type, align, vertical, color, overlay, parent }, i) => /* @__PURE__ */ import_react.default.createElement(import_Bling.default, {
37
+ key: type + "-" + i,
38
+ type,
39
+ align: props.mirror ? inverseAlignments[align || "left"] : align,
40
+ vertical,
41
+ color,
42
+ overlay,
43
+ parent
44
+ })));
45
+ var Blings_default = Blings;
46
+ // Annotate the CommonJS export names for ESM import in node:
47
+ 0 && (module.exports = {});
@@ -0,0 +1,23 @@
1
+ import React from "react";
2
+ import Bling from "../Bling";
3
+ const inverseAlignments = {
4
+ left: "right",
5
+ "left-ish": "right-ish",
6
+ "left-center": "right-center",
7
+ "right-center": "left-center",
8
+ "right-ish": "left-ish",
9
+ right: "left"
10
+ };
11
+ const Blings = (props) => /* @__PURE__ */ React.createElement(React.Fragment, null, props.blings.map(({ type, align, vertical, color, overlay, parent }, i) => /* @__PURE__ */ React.createElement(Bling, {
12
+ key: type + "-" + i,
13
+ type,
14
+ align: props.mirror ? inverseAlignments[align || "left"] : align,
15
+ vertical,
16
+ color,
17
+ overlay,
18
+ parent
19
+ })));
20
+ var Blings_default = Blings;
21
+ export {
22
+ Blings_default as default
23
+ };
@@ -0,0 +1,73 @@
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 Block_exports = {};
36
+ __export(Block_exports, {
37
+ default: () => Block_default
38
+ });
39
+ module.exports = __toCommonJS(Block_exports);
40
+ var import_react = __toESM(require("react"));
41
+ var import_getBemClass = __toESM(require("@hugsmidjan/react/utils/getBemClass"));
42
+ var import_seenEffect = require("../utils/seenEffect");
43
+ var import_Button = __toESM(require("./Button"));
44
+ var import_Image = __toESM(require("./Image"));
45
+ const Block = (props) => {
46
+ const { image, modifier, bem, content, startSeen } = props;
47
+ const [ref] = (0, import_seenEffect.useSeenEffect)(startSeen);
48
+ const contentItems = Array.isArray(content) ? content : [content];
49
+ return /* @__PURE__ */ import_react.default.createElement("div", {
50
+ className: (0, import_getBemClass.default)(bem, modifier),
51
+ ref
52
+ }, contentItems.map(({ title, summary, buttons = [] }, i) => {
53
+ const hasSummary = summary && (typeof summary !== "string" || !!summary.trim());
54
+ return /* @__PURE__ */ import_react.default.createElement("div", {
55
+ key: i,
56
+ className: `${bem}__content`
57
+ }, /* @__PURE__ */ import_react.default.createElement("h2", {
58
+ className: `${bem}__title`
59
+ }, title), hasSummary && /* @__PURE__ */ import_react.default.createElement("div", {
60
+ className: `${bem}__summary`
61
+ }, summary), buttons.length > 0 && /* @__PURE__ */ import_react.default.createElement("div", {
62
+ className: `${bem}__buttons`
63
+ }, " ", buttons.map((buttonProps, i2) => /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_Button.default, __spreadValues({
64
+ bem: `${bem}__button`,
65
+ key: i2
66
+ }, buttonProps)), " "))));
67
+ }), image && /* @__PURE__ */ import_react.default.createElement(import_Image.default, __spreadValues({
68
+ className: `${bem}__image`
69
+ }, image)));
70
+ };
71
+ var Block_default = Block;
72
+ // Annotate the CommonJS export names for ESM import in node:
73
+ 0 && (module.exports = {});