@quintype/arrow 3.15.1-perf.5 → 3.15.1-perf.7

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 (452) hide show
  1. package/esm/components/Atoms/AdPlaceholder/ads.m.css +13 -0
  2. package/esm/components/Atoms/AdPlaceholder/index.js +28 -0
  3. package/esm/components/Atoms/Author/README.md +19 -0
  4. package/esm/components/Atoms/Author/author.m.css +65 -0
  5. package/esm/components/Atoms/Author/index.js +109 -0
  6. package/esm/components/Atoms/Author/stories.js +28 -0
  7. package/esm/components/Atoms/AuthorCard/README.md +47 -0
  8. package/esm/components/Atoms/AuthorCard/author-card.m.css +174 -0
  9. package/esm/components/Atoms/AuthorCard/author-card.test.js +93 -0
  10. package/esm/components/Atoms/AuthorCard/index.js +133 -0
  11. package/esm/components/Atoms/AuthorCard/stories.js +68 -0
  12. package/esm/components/Atoms/AuthorImage/README.md +31 -0
  13. package/esm/components/Atoms/AuthorImage/author-image.m.css +53 -0
  14. package/esm/components/Atoms/AuthorImage/index.js +69 -0
  15. package/esm/components/Atoms/AuthorImage/stories.js +26 -0
  16. package/esm/components/Atoms/AuthorWithTimestamp/README.md +12 -0
  17. package/esm/components/Atoms/AuthorWithTimestamp/author-with-timestamp.m.css +42 -0
  18. package/esm/components/Atoms/AuthorWithTimestamp/index.js +95 -0
  19. package/esm/components/Atoms/AuthorWithTimestamp/stories.js +22 -0
  20. package/esm/components/Atoms/BulletPoint/README.md +9 -0
  21. package/esm/components/Atoms/BulletPoint/bullet-point.m.css +14 -0
  22. package/esm/components/Atoms/BulletPoint/index.js +27 -0
  23. package/esm/components/Atoms/BulletPoint/stories.js +9 -0
  24. package/esm/components/Atoms/CaptionAttribution/README.md +15 -0
  25. package/esm/components/Atoms/CaptionAttribution/caption-attribution.m.css +40 -0
  26. package/esm/components/Atoms/CaptionAttribution/caption-attribution.test.js +50 -0
  27. package/esm/components/Atoms/CaptionAttribution/index.js +66 -0
  28. package/esm/components/Atoms/CaptionAttribution/stories.js +47 -0
  29. package/esm/components/Atoms/CollectionName/README.md +11 -0
  30. package/esm/components/Atoms/CollectionName/collection-name.m.css +94 -0
  31. package/esm/components/Atoms/CollectionName/index.js +152 -0
  32. package/esm/components/Atoms/CollectionName/stories.js +41 -0
  33. package/esm/components/Atoms/Divider/__snapshots__/divider.test.js.snap +18 -0
  34. package/esm/components/Atoms/Divider/divider.m.css +6 -0
  35. package/esm/components/Atoms/Divider/divider.test.js +9 -0
  36. package/esm/components/Atoms/Divider/index.js +34 -0
  37. package/esm/components/Atoms/Dot/dot.js +39 -0
  38. package/esm/components/Atoms/Dot/dot.m.css +6 -0
  39. package/esm/components/Atoms/ExtendedLoadMore/README.md +9 -0
  40. package/esm/components/Atoms/ExtendedLoadMore/__snapshots__/extended-load-more.test.js.snap +11 -0
  41. package/esm/components/Atoms/ExtendedLoadMore/extended-load-more.test.js +14 -0
  42. package/esm/components/Atoms/ExtendedLoadMore/index.js +183 -0
  43. package/esm/components/Atoms/FallbackImage/fallback.m.css +33 -0
  44. package/esm/components/Atoms/FallbackImage/index.js +29 -0
  45. package/esm/components/Atoms/Headline/README.md +7 -0
  46. package/esm/components/Atoms/Headline/headline.m.css +26 -0
  47. package/esm/components/Atoms/Headline/index.js +97 -0
  48. package/esm/components/Atoms/Headline/stories.js +39 -0
  49. package/esm/components/Atoms/HeroImage/README.md +13 -0
  50. package/esm/components/Atoms/HeroImage/hero-image.m.css +72 -0
  51. package/esm/components/Atoms/HeroImage/index.js +175 -0
  52. package/esm/components/Atoms/HeroImage/stories.js +23 -0
  53. package/esm/components/Atoms/Hyperlink/hyperlink.m.css +10 -0
  54. package/esm/components/Atoms/Hyperlink/index.js +20 -0
  55. package/esm/components/Atoms/LoadMoreTarget/index.js +24 -0
  56. package/esm/components/Atoms/Loadmore/README.md +0 -0
  57. package/esm/components/Atoms/Loadmore/__snapshots__/load-more.test.js.snap +25 -0
  58. package/esm/components/Atoms/Loadmore/index.js +61 -0
  59. package/esm/components/Atoms/Loadmore/load-more.m.css +23 -0
  60. package/esm/components/Atoms/Loadmore/load-more.test.js +26 -0
  61. package/esm/components/Atoms/Loadmore/stories.js +17 -0
  62. package/esm/components/Atoms/MagazineCoverImage/README.md +21 -0
  63. package/esm/components/Atoms/MagazineCoverImage/index.js +58 -0
  64. package/esm/components/Atoms/MagazineCoverImage/magazine-cover-image.m.css +24 -0
  65. package/esm/components/Atoms/MagazineCoverImage/stories.js +22 -0
  66. package/esm/components/Atoms/PremiumStoryIcon/index.js +54 -0
  67. package/esm/components/Atoms/PublishDetail/README.md +15 -0
  68. package/esm/components/Atoms/PublishDetail/index.js +104 -0
  69. package/esm/components/Atoms/PublishDetail/publish-details.m.css +47 -0
  70. package/esm/components/Atoms/PublishDetail/publish-details.test.js +38 -0
  71. package/esm/components/Atoms/PublishDetail/stories.js +20 -0
  72. package/esm/components/Atoms/ReadTime/README.md +13 -0
  73. package/esm/components/Atoms/ReadTime/index.js +46 -0
  74. package/esm/components/Atoms/ReadTime/read-time.m.css +25 -0
  75. package/esm/components/Atoms/ReadTime/read-time.test.js +29 -0
  76. package/esm/components/Atoms/ReadTime/stories.js +15 -0
  77. package/esm/components/Atoms/ScrollSnap/SliderArrow/index.js +64 -0
  78. package/esm/components/Atoms/ScrollSnap/SliderArrow/slider-arrow.m.css +45 -0
  79. package/esm/components/Atoms/ScrollSnap/SliderIndicator/index.js +53 -0
  80. package/esm/components/Atoms/ScrollSnap/SliderIndicator/slider-indicator.m.css +71 -0
  81. package/esm/components/Atoms/ScrollSnap/index.js +165 -0
  82. package/esm/components/Atoms/ScrollSnap/scroll-snap.m.css +27 -0
  83. package/esm/components/Atoms/SectionTag/README.md +11 -0
  84. package/esm/components/Atoms/SectionTag/index.js +79 -0
  85. package/esm/components/Atoms/SectionTag/section.m.css +53 -0
  86. package/esm/components/Atoms/SectionTag/stories.js +22 -0
  87. package/esm/components/Atoms/SocialSharePopup/README.md +25 -0
  88. package/esm/components/Atoms/SocialSharePopup/__snapshots__/social-share-popup.test.js.snap +653 -0
  89. package/esm/components/Atoms/SocialSharePopup/index.js +100 -0
  90. package/esm/components/Atoms/SocialSharePopup/social-share-popup.m.css +109 -0
  91. package/esm/components/Atoms/SocialSharePopup/social-share-popup.test.js +87 -0
  92. package/esm/components/Atoms/SocialSharePopup/stories.js +18 -0
  93. package/esm/components/Atoms/StoryElements/AlsoRead/README.md +49 -0
  94. package/esm/components/Atoms/StoryElements/AlsoRead/also-read.m.css +135 -0
  95. package/esm/components/Atoms/StoryElements/AlsoRead/also-read.test.js +97 -0
  96. package/esm/components/Atoms/StoryElements/AlsoRead/index.js +156 -0
  97. package/esm/components/Atoms/StoryElements/AlsoRead/stories.js +47 -0
  98. package/esm/components/Atoms/StoryElements/Attachment/README.md +21 -0
  99. package/esm/components/Atoms/StoryElements/Attachment/__snapshots__/attachment.test.js.snap +47 -0
  100. package/esm/components/Atoms/StoryElements/Attachment/attachment.m.css +125 -0
  101. package/esm/components/Atoms/StoryElements/Attachment/attachment.test.js +66 -0
  102. package/esm/components/Atoms/StoryElements/Attachment/index.js +86 -0
  103. package/esm/components/Atoms/StoryElements/Attachment/stories.js +62 -0
  104. package/esm/components/Atoms/StoryElements/BigFact/README.md +9 -0
  105. package/esm/components/Atoms/StoryElements/BigFact/big-fact.m.css +41 -0
  106. package/esm/components/Atoms/StoryElements/BigFact/big-fact.test.js +28 -0
  107. package/esm/components/Atoms/StoryElements/BigFact/index.js +56 -0
  108. package/esm/components/Atoms/StoryElements/BigFact/stories.js +11 -0
  109. package/esm/components/Atoms/StoryElements/BlockQuote/README.md +49 -0
  110. package/esm/components/Atoms/StoryElements/BlockQuote/Svg/curve.js +32 -0
  111. package/esm/components/Atoms/StoryElements/BlockQuote/Svg/edge.js +32 -0
  112. package/esm/components/Atoms/StoryElements/BlockQuote/Svg/icon.m.css +4 -0
  113. package/esm/components/Atoms/StoryElements/BlockQuote/block-quote.m.css +161 -0
  114. package/esm/components/Atoms/StoryElements/BlockQuote/block-quote.test.js +71 -0
  115. package/esm/components/Atoms/StoryElements/BlockQuote/index.js +154 -0
  116. package/esm/components/Atoms/StoryElements/BlockQuote/stories.js +42 -0
  117. package/esm/components/Atoms/StoryElements/Blurb/README.md +43 -0
  118. package/esm/components/Atoms/StoryElements/Blurb/blurb.m.css +55 -0
  119. package/esm/components/Atoms/StoryElements/Blurb/blurb.test.js +76 -0
  120. package/esm/components/Atoms/StoryElements/Blurb/index.js +96 -0
  121. package/esm/components/Atoms/StoryElements/Blurb/stories.js +38 -0
  122. package/esm/components/Atoms/StoryElements/Image/README.md +13 -0
  123. package/esm/components/Atoms/StoryElements/Image/image.m.css +21 -0
  124. package/esm/components/Atoms/StoryElements/Image/image.test.js +19 -0
  125. package/esm/components/Atoms/StoryElements/Image/index.js +87 -0
  126. package/esm/components/Atoms/StoryElements/Image/stories.js +28 -0
  127. package/esm/components/Atoms/StoryElements/ImageSlideshow/README.md +13 -0
  128. package/esm/components/Atoms/StoryElements/ImageSlideshow/image-slideshow.m.css +49 -0
  129. package/esm/components/Atoms/StoryElements/ImageSlideshow/index.js +82 -0
  130. package/esm/components/Atoms/StoryElements/ImageSlideshow/stories.js +31 -0
  131. package/esm/components/Atoms/StoryElements/QuestionAnswer/README.md +56 -0
  132. package/esm/components/Atoms/StoryElements/QuestionAnswer/index.js +176 -0
  133. package/esm/components/Atoms/StoryElements/QuestionAnswer/question-answer.m.css +106 -0
  134. package/esm/components/Atoms/StoryElements/QuestionAnswer/question-answer.test.js +130 -0
  135. package/esm/components/Atoms/StoryElements/QuestionAnswer/stories.js +102 -0
  136. package/esm/components/Atoms/StoryElements/Quote/README.md +41 -0
  137. package/esm/components/Atoms/StoryElements/Quote/index.js +87 -0
  138. package/esm/components/Atoms/StoryElements/Quote/quote.m.css +111 -0
  139. package/esm/components/Atoms/StoryElements/Quote/quote.test.js +61 -0
  140. package/esm/components/Atoms/StoryElements/Quote/stories.js +39 -0
  141. package/esm/components/Atoms/StoryElements/Reference/README.md +9 -0
  142. package/esm/components/Atoms/StoryElements/Reference/index.js +80 -0
  143. package/esm/components/Atoms/StoryElements/Reference/reference.m.css +42 -0
  144. package/esm/components/Atoms/StoryElements/Reference/reference.test.js +38 -0
  145. package/esm/components/Atoms/StoryElements/Reference/stories.js +16 -0
  146. package/esm/components/Atoms/StoryElements/StoryElement/README.md +10 -0
  147. package/esm/components/Atoms/StoryElements/StoryElement/index.js +30 -0
  148. package/esm/components/Atoms/StoryElements/StoryElement/stories.js +17 -0
  149. package/esm/components/Atoms/StoryElements/StoryElement/storyelement.test.js +14 -0
  150. package/esm/components/Atoms/StoryElements/Summary/README.md +56 -0
  151. package/esm/components/Atoms/StoryElements/Summary/index.js +98 -0
  152. package/esm/components/Atoms/StoryElements/Summary/stories.js +41 -0
  153. package/esm/components/Atoms/StoryElements/Summary/summary.m.css +121 -0
  154. package/esm/components/Atoms/StoryElements/Summary/summary.test.js +83 -0
  155. package/esm/components/Atoms/StoryElements/Text/README.md +32 -0
  156. package/esm/components/Atoms/StoryElements/Text/index.js +74 -0
  157. package/esm/components/Atoms/StoryElements/Text/stories.js +56 -0
  158. package/esm/components/Atoms/StoryElements/Text/text.m.css +78 -0
  159. package/esm/components/Atoms/StoryElements/Text/text.test.js +70 -0
  160. package/esm/components/Atoms/StoryElements/Video/README.md +9 -0
  161. package/esm/components/Atoms/StoryElements/Video/index.js +37 -0
  162. package/esm/components/Atoms/StoryElements/Video/stories.js +29 -0
  163. package/esm/components/Atoms/StoryElements/Video/video.m.css +89 -0
  164. package/esm/components/Atoms/StoryElements/Video/video.test.js +14 -0
  165. package/esm/components/Atoms/StoryElements/imageGallery/README.md +18 -0
  166. package/esm/components/Atoms/StoryElements/imageGallery/image-gallery.m.css +52 -0
  167. package/esm/components/Atoms/StoryElements/imageGallery/image-gallery.test.js +17 -0
  168. package/esm/components/Atoms/StoryElements/imageGallery/index.js +112 -0
  169. package/esm/components/Atoms/StoryElements/imageGallery/stories.js +22 -0
  170. package/esm/components/Atoms/StoryElements/withElementWrapper.js +21 -0
  171. package/esm/components/Atoms/StoryElements/withElementWrapper.test.js +49 -0
  172. package/esm/components/Atoms/StoryHeadline/index.js +57 -0
  173. package/esm/components/Atoms/StoryHeadline/story-headline.m.css +36 -0
  174. package/esm/components/Atoms/StoryTags/README.md +9 -0
  175. package/esm/components/Atoms/StoryTags/index.js +47 -0
  176. package/esm/components/Atoms/StoryTags/stories.js +23 -0
  177. package/esm/components/Atoms/StoryTags/story-tags.test.js +16 -0
  178. package/esm/components/Atoms/StoryTags/tags.m.css +34 -0
  179. package/esm/components/Atoms/Subheadline/README.md +17 -0
  180. package/esm/components/Atoms/Subheadline/index.js +52 -0
  181. package/esm/components/Atoms/Subheadline/stories.js +21 -0
  182. package/esm/components/Atoms/Subheadline/subheadline.m.css +17 -0
  183. package/esm/components/Atoms/TimeStamp/README.md +9 -0
  184. package/esm/components/Atoms/TimeStamp/index.js +39 -0
  185. package/esm/components/Atoms/TimeStamp/stories.js +11 -0
  186. package/esm/components/Atoms/TimeStamp/timestamp.m.css +22 -0
  187. package/esm/components/Fixture/config.json +2703 -0
  188. package/esm/components/Fixture/dummy-collection.js +2547 -0
  189. package/esm/components/Fixture/dummyStory.js +2089 -0
  190. package/esm/components/Fixture/index.js +433 -0
  191. package/esm/components/Fixture/slot-config.js +26 -0
  192. package/esm/components/Molecules/FullScreenImages/fullscreenimages.scss +56 -0
  193. package/esm/components/Molecules/FullScreenImages/index.js +119 -0
  194. package/esm/components/Molecules/KeyEvents/README.md +21 -0
  195. package/esm/components/Molecules/KeyEvents/index.js +152 -0
  196. package/esm/components/Molecules/KeyEvents/key-events.m.css +89 -0
  197. package/esm/components/Molecules/KeyEvents/stories.js +25 -0
  198. package/esm/components/Molecules/PageIntroductionCard/README.md +25 -0
  199. package/esm/components/Molecules/PageIntroductionCard/index.js +77 -0
  200. package/esm/components/Molecules/PageIntroductionCard/page-intro-card.m.css +61 -0
  201. package/esm/components/Molecules/PageIntroductionCard/stories.js +17 -0
  202. package/esm/components/Molecules/PortraitStoryCard/README.md +10 -0
  203. package/esm/components/Molecules/PortraitStoryCard/index.js +52 -0
  204. package/esm/components/Molecules/PortraitStoryCard/portrait-story-card.m.css +38 -0
  205. package/esm/components/Molecules/PortraitStoryCard/stories.js +24 -0
  206. package/esm/components/Molecules/SliderHorizontalCard/README.md +14 -0
  207. package/esm/components/Molecules/SliderHorizontalCard/index.js +69 -0
  208. package/esm/components/Molecules/SliderHorizontalCard/slider-horizontal-card.m.css +42 -0
  209. package/esm/components/Molecules/SliderHorizontalCard/stories.js +27 -0
  210. package/esm/components/Molecules/SocialShareTemplate/README.md +118 -0
  211. package/esm/components/Molecules/SocialShareTemplate/__snapshots__/social-share-template.test.js.snap +738 -0
  212. package/esm/components/Molecules/SocialShareTemplate/index.js +164 -0
  213. package/esm/components/Molecules/SocialShareTemplate/social-share-data.js +90 -0
  214. package/esm/components/Molecules/SocialShareTemplate/social-share-template.m.css +174 -0
  215. package/esm/components/Molecules/SocialShareTemplate/social-share-template.test.js +108 -0
  216. package/esm/components/Molecules/SocialShareTemplate/stories.js +38 -0
  217. package/esm/components/Molecules/StoryCard/README.md +75 -0
  218. package/esm/components/Molecules/StoryCard/READMEBGIMAGE.md +25 -0
  219. package/esm/components/Molecules/StoryCard/READMEBORDER.md +61 -0
  220. package/esm/components/Molecules/StoryCard/index.js +200 -0
  221. package/esm/components/Molecules/StoryCard/stories.js +274 -0
  222. package/esm/components/Molecules/StoryCard/storycard.m.css +158 -0
  223. package/esm/components/Molecules/StoryCardWithBulletPoint/README.md +9 -0
  224. package/esm/components/Molecules/StoryCardWithBulletPoint/index.js +43 -0
  225. package/esm/components/Molecules/StoryCardWithBulletPoint/stories.js +28 -0
  226. package/esm/components/Molecules/StoryCardWithBulletPoint/story-card-with-bullet-point.m.css +7 -0
  227. package/esm/components/Molecules/StoryElementCard/README.md +9 -0
  228. package/esm/components/Molecules/StoryElementCard/index.js +494 -0
  229. package/esm/components/Molecules/StoryElementCard/stories.js +25 -0
  230. package/esm/components/Molecules/StoryElementCard/story-element-card.m.css +78 -0
  231. package/esm/components/Molecules/StorycardContent/README.md +34 -0
  232. package/esm/components/Molecules/StorycardContent/index.js +86 -0
  233. package/esm/components/Molecules/StorycardContent/stories.js +45 -0
  234. package/esm/components/Molecules/StorycardContent/storycardContent.m.css +21 -0
  235. package/esm/components/Rows/AlternateCollectionFilter/README.md +38 -0
  236. package/esm/components/Rows/AlternateCollectionFilter/alternate-collection-filter.m.css +254 -0
  237. package/esm/components/Rows/AlternateCollectionFilter/index.js +288 -0
  238. package/esm/components/Rows/AlternateCollectionFilter/stories.js +68 -0
  239. package/esm/components/Rows/AsideCollection/README.md +27 -0
  240. package/esm/components/Rows/AsideCollection/aside-collection.m.css +103 -0
  241. package/esm/components/Rows/AsideCollection/aside-collection.test.js +32 -0
  242. package/esm/components/Rows/AsideCollection/index.js +253 -0
  243. package/esm/components/Rows/AsideCollection/stories.js +48 -0
  244. package/esm/components/Rows/AstrologyCollection/README.md +40 -0
  245. package/esm/components/Rows/AstrologyCollection/astrology-collection.m.css +165 -0
  246. package/esm/components/Rows/AstrologyCollection/index.js +272 -0
  247. package/esm/components/Rows/AstrologyCollection/stories.js +61 -0
  248. package/esm/components/Rows/AuthorIntroductionCard/README.md +43 -0
  249. package/esm/components/Rows/AuthorIntroductionCard/author-intro.m.css +278 -0
  250. package/esm/components/Rows/AuthorIntroductionCard/author-intro.test.js +148 -0
  251. package/esm/components/Rows/AuthorIntroductionCard/index.js +157 -0
  252. package/esm/components/Rows/AuthorIntroductionCard/stories.js +46 -0
  253. package/esm/components/Rows/AuthorsList/README.md +24 -0
  254. package/esm/components/Rows/AuthorsList/author-list.test.js +66 -0
  255. package/esm/components/Rows/AuthorsList/authors-list.m.css +22 -0
  256. package/esm/components/Rows/AuthorsList/index.js +64 -0
  257. package/esm/components/Rows/AuthorsList/stories.js +62 -0
  258. package/esm/components/Rows/CollectionFilter/README.md +39 -0
  259. package/esm/components/Rows/CollectionFilter/collection-filter.m.css +213 -0
  260. package/esm/components/Rows/CollectionFilter/index.js +366 -0
  261. package/esm/components/Rows/CollectionFilter/stories.js +78 -0
  262. package/esm/components/Rows/ElevenStories/11-stories.m.css +85 -0
  263. package/esm/components/Rows/ElevenStories/README.md +39 -0
  264. package/esm/components/Rows/ElevenStories/index.js +418 -0
  265. package/esm/components/Rows/ElevenStories/stories.js +71 -0
  266. package/esm/components/Rows/FourColFiveStories/README.md +37 -0
  267. package/esm/components/Rows/FourColFiveStories/four-col-five-stories.m.css +112 -0
  268. package/esm/components/Rows/FourColFiveStories/index.js +179 -0
  269. package/esm/components/Rows/FourColFiveStories/stories.js +67 -0
  270. package/esm/components/Rows/FourColGrid/README.md +39 -0
  271. package/esm/components/Rows/FourColGrid/four-col.m.css +50 -0
  272. package/esm/components/Rows/FourColGrid/index.js +167 -0
  273. package/esm/components/Rows/FourColGrid/stories.js +68 -0
  274. package/esm/components/Rows/FourColPortraitStories/README.md +38 -0
  275. package/esm/components/Rows/FourColPortraitStories/four-col-portrait-stories.m.css +45 -0
  276. package/esm/components/Rows/FourColPortraitStories/index.js +153 -0
  277. package/esm/components/Rows/FourColPortraitStories/stories.js +68 -0
  278. package/esm/components/Rows/FourColSixteenStories/README.md +35 -0
  279. package/esm/components/Rows/FourColSixteenStories/four-col-sixteen-stories.m.css +141 -0
  280. package/esm/components/Rows/FourColSixteenStories/index.js +157 -0
  281. package/esm/components/Rows/FourColSixteenStories/stories.js +43 -0
  282. package/esm/components/Rows/FourColTwelveStory/README.md +39 -0
  283. package/esm/components/Rows/FourColTwelveStory/four-col-twelve-story.m.css +71 -0
  284. package/esm/components/Rows/FourColTwelveStory/index.js +219 -0
  285. package/esm/components/Rows/FourColTwelveStory/stories.js +107 -0
  286. package/esm/components/Rows/FourStorySlider/README.md +45 -0
  287. package/esm/components/Rows/FourStorySlider/four-story-slider.m.css +78 -0
  288. package/esm/components/Rows/FourStorySlider/index.js +145 -0
  289. package/esm/components/Rows/FourStorySlider/stories.js +125 -0
  290. package/esm/components/Rows/FourStorySliderPortrait/README.md +45 -0
  291. package/esm/components/Rows/FourStorySliderPortrait/four-story-slider-portrait.m.css +221 -0
  292. package/esm/components/Rows/FourStorySliderPortrait/index.js +148 -0
  293. package/esm/components/Rows/FourStorySliderPortrait/stories.js +125 -0
  294. package/esm/components/Rows/FourTabbedBigStorySlider/README.md +39 -0
  295. package/esm/components/Rows/FourTabbedBigStorySlider/four-tabbed-big-story-slider.m.css +265 -0
  296. package/esm/components/Rows/FourTabbedBigStorySlider/index.js +221 -0
  297. package/esm/components/Rows/FourTabbedBigStorySlider/stories.js +59 -0
  298. package/esm/components/Rows/FullScreenSlider/README.md +46 -0
  299. package/esm/components/Rows/FullScreenSlider/full-screen-slider.m.css +155 -0
  300. package/esm/components/Rows/FullScreenSlider/index.js +140 -0
  301. package/esm/components/Rows/FullScreenSlider/stories.js +113 -0
  302. package/esm/components/Rows/HalfScreenSlider/README.md +43 -0
  303. package/esm/components/Rows/HalfScreenSlider/half-screen-slider.m.css +80 -0
  304. package/esm/components/Rows/HalfScreenSlider/index.js +124 -0
  305. package/esm/components/Rows/HalfScreenSlider/stories.js +118 -0
  306. package/esm/components/Rows/ListComponent/README.md +48 -0
  307. package/esm/components/Rows/ListComponent/index.js +176 -0
  308. package/esm/components/Rows/ListComponent/list-component.m.css +65 -0
  309. package/esm/components/Rows/ListComponent/stories.js +65 -0
  310. package/esm/components/Rows/Listicles/README.md +32 -0
  311. package/esm/components/Rows/Listicles/index.js +240 -0
  312. package/esm/components/Rows/Listicles/listicles.m.css +149 -0
  313. package/esm/components/Rows/Listicles/stories.js +53 -0
  314. package/esm/components/Rows/MagazineEditions/README.md +21 -0
  315. package/esm/components/Rows/MagazineEditions/index.js +123 -0
  316. package/esm/components/Rows/MagazineEditions/magazine-editions.m.css +50 -0
  317. package/esm/components/Rows/MagazineEditions/magazine-editions.test.js +30 -0
  318. package/esm/components/Rows/MagazineEditions/stories.js +41 -0
  319. package/esm/components/Rows/MagazineHeaderCard/README.md +21 -0
  320. package/esm/components/Rows/MagazineHeaderCard/index.js +117 -0
  321. package/esm/components/Rows/MagazineHeaderCard/magazine-cards.m.css +106 -0
  322. package/esm/components/Rows/MagazineHeaderCard/stories.js +34 -0
  323. package/esm/components/Rows/MagazineWidget/README.md +21 -0
  324. package/esm/components/Rows/MagazineWidget/index.js +177 -0
  325. package/esm/components/Rows/MagazineWidget/stories.js +40 -0
  326. package/esm/components/Rows/OneColStoryList/README.md +48 -0
  327. package/esm/components/Rows/OneColStoryList/index.js +245 -0
  328. package/esm/components/Rows/OneColStoryList/one-col-story-list.m.css +81 -0
  329. package/esm/components/Rows/OneColStoryList/stories.js +78 -0
  330. package/esm/components/Rows/OpinionCollection/README.md +36 -0
  331. package/esm/components/Rows/OpinionCollection/index.js +205 -0
  332. package/esm/components/Rows/OpinionCollection/opinion-collection.m.css +226 -0
  333. package/esm/components/Rows/OpinionCollection/stories.js +92 -0
  334. package/esm/components/Rows/SixColSixStories/README.md +37 -0
  335. package/esm/components/Rows/SixColSixStories/index.js +179 -0
  336. package/esm/components/Rows/SixColSixStories/six-col-six-stories.m.css +75 -0
  337. package/esm/components/Rows/SixColSixStories/stories.js +74 -0
  338. package/esm/components/Rows/StoryTemplates/ListicleStoryTemplates/README.md +19 -0
  339. package/esm/components/Rows/StoryTemplates/ListicleStoryTemplates/__snapshots__/listicle-story.test.js.snap +841 -0
  340. package/esm/components/Rows/StoryTemplates/ListicleStoryTemplates/index.js +330 -0
  341. package/esm/components/Rows/StoryTemplates/ListicleStoryTemplates/listicle-story.m.css +249 -0
  342. package/esm/components/Rows/StoryTemplates/ListicleStoryTemplates/listicle-story.test.js +46 -0
  343. package/esm/components/Rows/StoryTemplates/ListicleStoryTemplates/stories.js +119 -0
  344. package/esm/components/Rows/StoryTemplates/LiveBlogStoryTemplates/README.md +25 -0
  345. package/esm/components/Rows/StoryTemplates/LiveBlogStoryTemplates/index.js +97 -0
  346. package/esm/components/Rows/StoryTemplates/LiveBlogStoryTemplates/live-blog.m.css +326 -0
  347. package/esm/components/Rows/StoryTemplates/LiveBlogStoryTemplates/stories.js +118 -0
  348. package/esm/components/Rows/StoryTemplates/LiveBlogStoryTemplates/templates.js +418 -0
  349. package/esm/components/Rows/StoryTemplates/PhotoStoryTemplates/index.js +294 -0
  350. package/esm/components/Rows/StoryTemplates/PhotoStoryTemplates/photo-story.test.js +163 -0
  351. package/esm/components/Rows/StoryTemplates/PhotoStoryTemplates/photo.m.css +175 -0
  352. package/esm/components/Rows/StoryTemplates/PhotoStoryTemplates/stories.js +124 -0
  353. package/esm/components/Rows/StoryTemplates/TextStoryTemplates/README.md +49 -0
  354. package/esm/components/Rows/StoryTemplates/TextStoryTemplates/index.js +100 -0
  355. package/esm/components/Rows/StoryTemplates/TextStoryTemplates/stories.js +124 -0
  356. package/esm/components/Rows/StoryTemplates/TextStoryTemplates/templates.js +285 -0
  357. package/esm/components/Rows/StoryTemplates/TextStoryTemplates/text-story.m.css +449 -0
  358. package/esm/components/Rows/StoryTemplates/TextStoryTemplates/text-story.test.js +242 -0
  359. package/esm/components/Rows/StoryTemplates/VideoStoryTemplates/README.md +31 -0
  360. package/esm/components/Rows/StoryTemplates/VideoStoryTemplates/index.js +239 -0
  361. package/esm/components/Rows/StoryTemplates/VideoStoryTemplates/stories.js +214 -0
  362. package/esm/components/Rows/StoryTemplates/VideoStoryTemplates/video-story.m.css +195 -0
  363. package/esm/components/Rows/TagIntroductionCard/README.md +11 -0
  364. package/esm/components/Rows/TagIntroductionCard/index.js +45 -0
  365. package/esm/components/Rows/TagIntroductionCard/stories.js +20 -0
  366. package/esm/components/Rows/TagIntroductionCard/tag-intro-card.module.css +25 -0
  367. package/esm/components/Rows/ThreeColFlexStories/README.md +38 -0
  368. package/esm/components/Rows/ThreeColFlexStories/index.js +227 -0
  369. package/esm/components/Rows/ThreeColFlexStories/stories.js +74 -0
  370. package/esm/components/Rows/ThreeColFlexStories/three-col-flex-stories.m.css +60 -0
  371. package/esm/components/Rows/ThreeColFourteenStory/README.md +28 -0
  372. package/esm/components/Rows/ThreeColFourteenStory/index.js +154 -0
  373. package/esm/components/Rows/ThreeColFourteenStory/stories.js +65 -0
  374. package/esm/components/Rows/ThreeColFourteenStory/three-col-fourteen-story.m.css +51 -0
  375. package/esm/components/Rows/ThreeColGrid/README.md +36 -0
  376. package/esm/components/Rows/ThreeColGrid/index.js +176 -0
  377. package/esm/components/Rows/ThreeColGrid/stories.js +78 -0
  378. package/esm/components/Rows/ThreeColGrid/three-col.m.css +43 -0
  379. package/esm/components/Rows/ThreeColSevenStory/README.md +36 -0
  380. package/esm/components/Rows/ThreeColSevenStory/index.js +201 -0
  381. package/esm/components/Rows/ThreeColSevenStory/stories.js +74 -0
  382. package/esm/components/Rows/ThreeColSevenStory/three-col-seven-story.m.css +44 -0
  383. package/esm/components/Rows/ThreeColSixStories/README.md +40 -0
  384. package/esm/components/Rows/ThreeColSixStories/index.js +183 -0
  385. package/esm/components/Rows/ThreeColSixStories/stories.js +74 -0
  386. package/esm/components/Rows/ThreeColSixStories/three-col-six-stories.m.css +32 -0
  387. package/esm/components/Rows/ThreeColTwelveStories/README.md +41 -0
  388. package/esm/components/Rows/ThreeColTwelveStories/index.js +165 -0
  389. package/esm/components/Rows/ThreeColTwelveStories/stories.js +53 -0
  390. package/esm/components/Rows/ThreeColTwelveStories/three-col-twelve-stories.m.css +83 -0
  391. package/esm/components/Rows/TwoColFourStory/README.md +33 -0
  392. package/esm/components/Rows/TwoColFourStory/index.js +174 -0
  393. package/esm/components/Rows/TwoColFourStory/stories.js +63 -0
  394. package/esm/components/Rows/TwoColFourStory/two-col-four-story.m.css +64 -0
  395. package/esm/components/Rows/TwoColFourStoryHighlight/README.md +35 -0
  396. package/esm/components/Rows/TwoColFourStoryHighlight/index.js +164 -0
  397. package/esm/components/Rows/TwoColFourStoryHighlight/stories.js +50 -0
  398. package/esm/components/Rows/TwoColFourStoryHighlight/two-col-four-story-highlight.m.css +116 -0
  399. package/esm/components/Rows/TwoColSevenStories/README.md +37 -0
  400. package/esm/components/Rows/TwoColSevenStories/index.js +193 -0
  401. package/esm/components/Rows/TwoColSevenStories/stories.js +102 -0
  402. package/esm/components/Rows/TwoColSevenStories/two-col-seven-stories.m.css +175 -0
  403. package/esm/components/Rows/TwoColSixStories/README.md +36 -0
  404. package/esm/components/Rows/TwoColSixStories/index.js +185 -0
  405. package/esm/components/Rows/TwoColSixStories/stories.js +67 -0
  406. package/esm/components/Rows/TwoColSixStories/two-col-six-stories.m.css +135 -0
  407. package/esm/components/Rows/TwoColTenStoriesSidebar/README.md +34 -0
  408. package/esm/components/Rows/TwoColTenStoriesSidebar/index.js +191 -0
  409. package/esm/components/Rows/TwoColTenStoriesSidebar/stories.js +53 -0
  410. package/esm/components/Rows/TwoColTenStoriesSidebar/two-col-ten-stories-sidebar.m.css +52 -0
  411. package/esm/components/Rows/TwoColThreeStory/README.md +40 -0
  412. package/esm/components/Rows/TwoColThreeStory/index.js +146 -0
  413. package/esm/components/Rows/TwoColThreeStory/stories.js +63 -0
  414. package/esm/components/Rows/TwoColThreeStory/two-col-three-story.m.css +36 -0
  415. package/esm/components/SharedContext.js +17 -0
  416. package/esm/components/Svgs/Loading/loading.js +140 -0
  417. package/esm/components/Svgs/Loading/loading.m.css +5 -0
  418. package/esm/components/Svgs/SocialIcons/facebook.js +18 -0
  419. package/esm/components/Svgs/SocialIcons/instagram.js +33 -0
  420. package/esm/components/Svgs/SocialIcons/linkedin.js +18 -0
  421. package/esm/components/Svgs/SocialIcons/pinterest.js +12 -0
  422. package/esm/components/Svgs/SocialIcons/twitter.js +18 -0
  423. package/esm/components/Svgs/SocialIcons/whatsapp.js +19 -0
  424. package/esm/components/Svgs/SocialIcons/youtube.js +19 -0
  425. package/esm/components/Svgs/caret-right.svg +3 -0
  426. package/esm/components/Svgs/clock-icon.js +19 -0
  427. package/esm/components/Svgs/close-icon.js +22 -0
  428. package/esm/components/Svgs/crown.js +40 -0
  429. package/esm/components/Svgs/fallbackImage.js +45 -0
  430. package/esm/components/Svgs/hyperlink.js +22 -0
  431. package/esm/components/Svgs/key.js +39 -0
  432. package/esm/components/Svgs/left-arrow.js +24 -0
  433. package/esm/components/Svgs/liveicon.js +16 -0
  434. package/esm/components/Svgs/lock.js +40 -0
  435. package/esm/components/Svgs/right-arrow.js +24 -0
  436. package/esm/components/Svgs/share-icon.js +19 -0
  437. package/esm/components/Svgs/star.js +34 -0
  438. package/esm/components/Svgs/user-fallback-icon.js +22 -0
  439. package/esm/components/Typography/README.md +7 -0
  440. package/esm/components/Typography/index.js +33 -0
  441. package/esm/components/Typography/stories.js +15 -0
  442. package/esm/components/Typography/style.m.css +11 -0
  443. package/esm/entry-points.js +291 -0
  444. package/esm/guide/stories.js +22 -0
  445. package/esm/hydration-component/index.js +41 -0
  446. package/esm/hydration-component/useNearScreen.js +71 -0
  447. package/esm/index.js +88 -0
  448. package/esm/rows.js +40 -0
  449. package/esm/utils/testing-utils.js +8 -0
  450. package/esm/utils/utils.js +363 -0
  451. package/esm/utils/utils.test.js +46 -0
  452. package/package.json +1 -1
@@ -0,0 +1,363 @@
1
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
+ import _typeof from "@babel/runtime/helpers/typeof";
3
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
4
+
5
+ /* eslint no-console: ["error", { allow: ["warn", "error"] }] */
6
+ import { get, upperCase, lowerCase } from "lodash";
7
+ import PropTypes from "prop-types";
8
+ import Timeago from "react-timeago";
9
+ import React from "react";
10
+ import { format, utcToZonedTime } from "date-fns-tz";
11
+ var canUseDOM = !!(typeof window !== "undefined" && window.document && window.document.createElement);
12
+ export var sharePageUrl = canUseDOM && window.location.href;
13
+ export function truncate() {
14
+ var string = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
15
+ var limit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 60;
16
+ var ellipsis = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
17
+ var putEllipsis = ellipsis ? " ..." : "";
18
+ return typeof string === "string" && string.length > limit ? string.substring(0, limit) + putEllipsis : string;
19
+ }
20
+ export var timestampToFormat = function timestampToFormat(value, unit, suffix, timestamp) {
21
+ var config = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
22
+ var _config$showTime = config.showTime,
23
+ showTime = _config$showTime === void 0 ? false : _config$showTime,
24
+ _config$isTimeFirst = config.isTimeFirst,
25
+ isTimeFirst = _config$isTimeFirst === void 0 ? false : _config$isTimeFirst,
26
+ _config$isUpperCase = config.isUpperCase,
27
+ isUpperCase = _config$isUpperCase === void 0 ? false : _config$isUpperCase,
28
+ _config$disableMeridi = config.disableMeridiem,
29
+ disableMeridiem = _config$disableMeridi === void 0 ? false : _config$disableMeridi,
30
+ _config$timeFormat = config.timeFormat,
31
+ timeFormat = _config$timeFormat === void 0 ? "12hours" : _config$timeFormat;
32
+ var monthList = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
33
+ var dateTime = new Date(timestamp);
34
+ var date = dateTime.getDate().toString().padStart(2, 0);
35
+ var month = monthList[dateTime.getMonth()];
36
+ var localizedMonth = month;
37
+
38
+ if (isUpperCase) {
39
+ localizedMonth = upperCase(month);
40
+ }
41
+
42
+ var year = dateTime.getFullYear();
43
+ var localizedMeridiem = config.localizedMeridiem,
44
+ localizedMonths = config.localizedMonths,
45
+ _config$direction = config.direction,
46
+ direction = _config$direction === void 0 ? "ltr" : _config$direction;
47
+ var time = formatAMPM(timestamp, timeFormat);
48
+ var timeWithLocalizedMeridiem = time;
49
+ var timetoShow;
50
+
51
+ if (localizedMonths) {
52
+ localizedMonth = get(localizedMonths, [lowerCase(month)]) || month;
53
+ }
54
+
55
+ if (localizedMeridiem) {
56
+ var isAm = time.includes("am");
57
+ var _localizedMeridiem$am = localizedMeridiem.am,
58
+ am = _localizedMeridiem$am === void 0 ? "am" : _localizedMeridiem$am,
59
+ _localizedMeridiem$pm = localizedMeridiem.pm,
60
+ pm = _localizedMeridiem$pm === void 0 ? "pm" : _localizedMeridiem$pm;
61
+ timeWithLocalizedMeridiem = (isAm ? time.replace("am", am) : time.replace("pm", pm)) || time;
62
+ }
63
+
64
+ if (direction === "rtl") {
65
+ timetoShow = showTime ? "".concat(timeWithLocalizedMeridiem) : "";
66
+ return "".concat(date, " ").concat(localizedMonth, ", ").concat(year, " ").concat(timetoShow, " ");
67
+ } else {
68
+ if (disableMeridiem) {
69
+ return "".concat(localizedMonth, " ").concat(date, ", ").concat(year);
70
+ } else if (isTimeFirst) {
71
+ return "".concat(timeWithLocalizedMeridiem, ", ").concat(date, " ").concat(localizedMonth, " ").concat(year);
72
+ } else {
73
+ timetoShow = showTime ? ", ".concat(timeWithLocalizedMeridiem) : "";
74
+ return "".concat(date, " ").concat(localizedMonth, ", ").concat(year).concat(timetoShow);
75
+ }
76
+ }
77
+ };
78
+ export function formatter(value, unit, suffix, date, config) {
79
+ var showDateForUnits = ["day", "week", "month", "year"]; // suffix here refers to ago
80
+ // unit here refers to seconds, minute, minutes,...
81
+
82
+ var localizedSuffix = get(config, ["localizedPublishTime", suffix]) || suffix;
83
+ var localizedUnitOfTime;
84
+
85
+ if (unit === "hour" && value > 23 || showDateForUnits.indexOf(unit) !== -1) {
86
+ return timestampToFormat(value, unit, suffix, date, config);
87
+ } else if (value > 1) {
88
+ localizedUnitOfTime = get(config, ["localizedPublishTime", "".concat(unit, "s")]) || "".concat(unit, "s");
89
+ return "".concat(value, " ").concat(localizedUnitOfTime, " ").concat(localizedSuffix);
90
+ }
91
+
92
+ localizedUnitOfTime = get(config, ["localizedPublishTime", unit]) || unit;
93
+ return "".concat(value, " ").concat(localizedUnitOfTime, " ").concat(localizedSuffix, " ");
94
+ }
95
+
96
+ function formatAMPM(timestamp) {
97
+ var timeFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "12hours";
98
+ var dateTime = new Date(timestamp);
99
+ var hours = dateTime.getHours();
100
+ var minutes = dateTime.getMinutes();
101
+ var ampm = hours >= 12 ? "pm" : "am";
102
+ hours = hours % 12;
103
+ hours = hours || 12;
104
+ minutes = minutes < 10 ? "0" + minutes : minutes;
105
+ var strTime = hours + ":" + minutes + " " + ampm;
106
+
107
+ if (timeFormat === "24hours") {
108
+ return dateTime.toLocaleTimeString([], {
109
+ hour: "2-digit",
110
+ minute: "2-digit"
111
+ });
112
+ }
113
+
114
+ return strTime;
115
+ }
116
+
117
+ export var hexToRGB = function hexToRGB(hex) {
118
+ var r = parseInt(hex.slice(1, 3), 16);
119
+ var g = parseInt(hex.slice(3, 5), 16);
120
+ var b = parseInt(hex.slice(5, 7), 16);
121
+ return {
122
+ r: r,
123
+ g: g,
124
+ b: b
125
+ };
126
+ };
127
+ export var getLuminanceOfColor = function getLuminanceOfColor(hex) {
128
+ var _hexToRGB = hexToRGB(hex),
129
+ r = _hexToRGB.r,
130
+ g = _hexToRGB.g,
131
+ b = _hexToRGB.b;
132
+
133
+ return r * 0.299 + g * 0.587 + b * 0.114;
134
+ };
135
+ export var rgbToHex = function rgbToHex() {
136
+ var color = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "rgba(255, 255, 255, 0)";
137
+ var rgba = color.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i);
138
+ return rgba && rgba.length === 4 ? "#" + ("0" + parseInt(rgba[1], 10).toString(16)).slice(-2) + ("0" + parseInt(rgba[2], 10).toString(16)).slice(-2) + ("0" + parseInt(rgba[3], 10).toString(16)).slice(-2) : color;
139
+ };
140
+ var clientWidths = {
141
+ mobile: 767,
142
+ tablet: 1024
143
+ };
144
+ export var clientWidth = function clientWidth(device) {
145
+ var foundDeviceWidth = get(clientWidths, device);
146
+
147
+ if (foundDeviceWidth) {
148
+ return get(global, "document.documentElement.clientWidth") <= foundDeviceWidth;
149
+ }
150
+
151
+ return false;
152
+ };
153
+ export var getTextColor = function getTextColor() {
154
+ var theme = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "rgb(255,255,255)";
155
+ var isRegexCheck = /^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/.test(theme);
156
+ var getHexValue = !isRegexCheck ? rgbToHex(theme) : theme;
157
+ var textColor = getLuminanceOfColor(getHexValue) < 155 ? "light" : "dark";
158
+ return textColor;
159
+ };
160
+ export function getNumberOfStoriesToShow(numberOfStoriesToShow) {
161
+ return numberOfStoriesToShow ? parseInt(numberOfStoriesToShow) : 1;
162
+ }
163
+ export var getSlot = function getSlot(type, component, storyCallback, collectionCallback) {
164
+ switch (type) {
165
+ case "story":
166
+ return storyCallback();
167
+
168
+ case "collection":
169
+ return collectionCallback();
170
+
171
+ default:
172
+ return component ? component() : null;
173
+ }
174
+ };
175
+ export var getSlug = function getSlug(collection) {
176
+ var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
177
+ var _config$magazineSlug = config.magazineSlug,
178
+ magazineSlug = _config$magazineSlug === void 0 ? "" : _config$magazineSlug,
179
+ _config$isArchivePage = config.isArchivePage,
180
+ isArchivePage = _config$isArchivePage === void 0 ? false : _config$isArchivePage;
181
+
182
+ if (isArchivePage) {
183
+ return "/magazine/archive/".concat(magazineSlug);
184
+ }
185
+
186
+ if (magazineSlug) {
187
+ return "/magazine/".concat(magazineSlug, "/").concat(collection.slug);
188
+ }
189
+
190
+ var isSection = collection.template === "section";
191
+
192
+ if (isSection) {
193
+ var sectionId = get(collection, ["metadata", "section", "0", "id"], "");
194
+ var sections = config.sections;
195
+ var section = sections && sections.find(function (section) {
196
+ return section.id === sectionId;
197
+ });
198
+ return section ? section["section-url"] : "/";
199
+ }
200
+
201
+ return "/collection/".concat(collection.slug);
202
+ };
203
+ export function isExternalStory() {
204
+ var story = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
205
+ var _story$storyTemplate = story["story-template"],
206
+ storyTemplate = _story$storyTemplate === void 0 ? "" : _story$storyTemplate,
207
+ _story$metadata = story.metadata,
208
+ metadata = _story$metadata === void 0 ? {} : _story$metadata;
209
+ return storyTemplate === "news-elsewhere" ? get(metadata, ["reference-url"], "") : "";
210
+ } // Adds target='_blank' attribute to anchor tags if not present
211
+
212
+ export var updateContentLinks = function updateContentLinks(content) {
213
+ var updatedContent = content;
214
+ var anchorTagsList = content.match(/(<a).*?(>)/g);
215
+ anchorTagsList && anchorTagsList.forEach(function (anchorTag) {
216
+ var isTargetPresent = /target=/g.test(anchorTag);
217
+
218
+ if (!isTargetPresent) {
219
+ updatedContent = updatedContent.replace(anchorTag, "<a aria-label='content' target='_blank'".concat(anchorTag.substring(2)));
220
+ }
221
+ });
222
+ return updatedContent;
223
+ };
224
+ export var isEmpty = function isEmpty(value) {
225
+ return value == null || // From standard.js: Always use === - but value == null is allowed to check null || undefined
226
+ _typeof(value) === "object" && Object.entries(value).length === 0 && value.constructor === Object || typeof value === "string" && value.trim().length === 0;
227
+ };
228
+ export var shapeConfig = PropTypes.shape({
229
+ "sketches-host": PropTypes.string,
230
+ "cdn-name": PropTypes.string,
231
+ "cdn-image": PropTypes.string
232
+ });
233
+ export var shapeStory = PropTypes.shape({
234
+ headline: PropTypes.string,
235
+ "last-published-at": PropTypes.number,
236
+ subheadline: PropTypes.string
237
+ });
238
+ export var getStoryUrl = function getStoryUrl(story) {
239
+ var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
240
+ return get(story, ["story-template"]) === "news-elsewhere" ? get(story, ["metadata", "reference-url"], "") : story.url || defaultValue;
241
+ };
242
+ export var detectComponent = function detectComponent(component, adComponent, widgetComp) {
243
+ var type = component.type;
244
+
245
+ switch (type) {
246
+ case "ad":
247
+ return adComponent(component);
248
+
249
+ case "widget":
250
+ return widgetComp(component);
251
+
252
+ default:
253
+ return null;
254
+ }
255
+ };
256
+ export var facebookMobileVideoResizeFix = function facebookMobileVideoResizeFix() {
257
+ if (typeof window !== "undefined" && window.matchMedia && window.matchMedia("(max-width: 767px)").matches) {
258
+ var applyFixAfterTime = 3000;
259
+ var aspectRatioAdjustmentFactor = 0.7;
260
+ setTimeout(function () {
261
+ document.querySelectorAll(".story-element-jsembed.story-element-jsembed-facebook-post span").forEach(function (element) {
262
+ if (!element.classList.contains("fixed-mobile-fb-video")) {
263
+ element.style.height = "".concat(Math.ceil(element.offsetHeight * aspectRatioAdjustmentFactor), "px");
264
+ element.classList.add("fixed-mobile-fb-video");
265
+ }
266
+ });
267
+ }, applyFixAfterTime);
268
+ }
269
+ };
270
+ export var navigateTo = function navigateTo(dispatch) {
271
+ var url = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
272
+ global.app.navigateToPage(dispatch, url);
273
+ };
274
+ export var generateNavigateSlug = function generateNavigateSlug() {
275
+ var collection = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
276
+ var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
277
+ var customUrlPath = arguments.length > 2 ? arguments[2] : undefined;
278
+
279
+ if (customUrlPath) {
280
+ return customUrlPath;
281
+ }
282
+
283
+ var _config$magazineSlug2 = config.magazineSlug,
284
+ magazineSlug = _config$magazineSlug2 === void 0 ? "" : _config$magazineSlug2,
285
+ _config$isArchivePage2 = config.isArchivePage,
286
+ isArchivePage = _config$isArchivePage2 === void 0 ? false : _config$isArchivePage2;
287
+
288
+ if (isArchivePage) {
289
+ return "/magazine/archive/".concat(magazineSlug);
290
+ }
291
+
292
+ if (magazineSlug) {
293
+ return "/magazine/".concat(magazineSlug, "/").concat(collection.slug);
294
+ }
295
+
296
+ if (collection) {
297
+ return getSlug(collection, config);
298
+ }
299
+
300
+ return "/";
301
+ };
302
+ export var getCollectionData = /*#__PURE__*/function () {
303
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(collectionSlug) {
304
+ var mountAtPrefix,
305
+ result,
306
+ _args = arguments;
307
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
308
+ while (1) {
309
+ switch (_context.prev = _context.next) {
310
+ case 0:
311
+ mountAtPrefix = _args.length > 1 && _args[1] !== undefined ? _args[1] : "";
312
+ _context.prev = 1;
313
+ _context.next = 4;
314
+ return fetch("".concat(mountAtPrefix, "/api/v1/collections/").concat(collectionSlug, "?item-type=story&limit=6"));
315
+
316
+ case 4:
317
+ _context.next = 6;
318
+ return _context.sent.json();
319
+
320
+ case 6:
321
+ result = _context.sent;
322
+ return _context.abrupt("return", result);
323
+
324
+ case 10:
325
+ _context.prev = 10;
326
+ _context.t0 = _context["catch"](1);
327
+ console.error(_context.t0);
328
+
329
+ case 13:
330
+ case "end":
331
+ return _context.stop();
332
+ }
333
+ }
334
+ }, _callee, null, [[1, 10]]);
335
+ }));
336
+
337
+ return function getCollectionData(_x) {
338
+ return _ref.apply(this, arguments);
339
+ };
340
+ }();
341
+ export var getTimeStamp = function getTimeStamp(date, _formatter) {
342
+ var config = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
343
+ var template = arguments.length > 3 ? arguments[3] : undefined;
344
+ var timezone = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
345
+
346
+ if (timezone && template === "story") {
347
+ var zonedTime = timezone && utcToZonedTime(date, timezone);
348
+ var formatZonedTime = zonedTime && format(zonedTime, "yyyy-MM-dd'T'HH:mm:ssXXX", {
349
+ timeZone: timezone
350
+ });
351
+ var timeStamp = timestampToFormat("", "", "", date, config);
352
+ return /*#__PURE__*/React.createElement("time", {
353
+ dateTime: formatZonedTime
354
+ }, timeStamp);
355
+ }
356
+
357
+ return /*#__PURE__*/React.createElement(Timeago, {
358
+ date: date,
359
+ formatter: function formatter(value, unit, suffix, date) {
360
+ return _formatter(value, unit, suffix, date, config);
361
+ }
362
+ });
363
+ };
@@ -0,0 +1,46 @@
1
+ import { updateContentLinks, isEmpty, sharePageUrl } from "./utils";
2
+ describe("updateContentLinks", function () {
3
+ it("should add target='_blank' to anchor tags if target attribute not present", function () {
4
+ var content = "<p>Coronavirus in India News Live Updates: <a target='_parent'>India</a> has recorded the <a href='#'>highest</a> single-day spike in fresh cases of novel <a>coronavirus</a> with the number crossing 1,300.";
5
+ var updatedContent = updateContentLinks(content);
6
+ expect(updatedContent).toBe("<p>Coronavirus in India News Live Updates: <a target='_parent'>India</a> has recorded the <a aria-label='content' target='_blank' href='#'>highest</a> single-day spike in fresh cases of novel <a aria-label='content' target='_blank'>coronavirus</a> with the number crossing 1,300.");
7
+ });
8
+ });
9
+ describe("isEmpty", function () {
10
+ it("should return true if the value is null/ undefined", function () {
11
+ var value = null;
12
+ var result = isEmpty(value);
13
+ expect(result).toBe(true);
14
+ });
15
+ it("should return true if the value is an empty string", function () {
16
+ var value = "";
17
+ var result = isEmpty(value);
18
+ expect(result).toBe(true);
19
+ });
20
+ it("should return true if the value is an empty object", function () {
21
+ var value = {};
22
+ var result = isEmpty(value);
23
+ expect(result).toBe(true);
24
+ });
25
+ it("should return false if the value is not null/ undefined", function () {
26
+ var value = 6;
27
+ var result = isEmpty(value);
28
+ expect(result).toBe(false);
29
+ });
30
+ it("should return false if the value is not an empty string", function () {
31
+ var value = "value";
32
+ var result = isEmpty(value);
33
+ expect(result).toBe(false);
34
+ });
35
+ it("should return false if the value is not an empty object", function () {
36
+ var value = {
37
+ data: "read"
38
+ };
39
+ var result = isEmpty(value);
40
+ expect(result).toBe(false);
41
+ });
42
+ it("should return window if the page url is defined", function () {
43
+ var result = sharePageUrl;
44
+ expect(result).toBe(window.location["href"]);
45
+ });
46
+ });
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@quintype/arrow","version":"3.15.1-perf.5","engines":{"node":">=12.0.0"},"description":"Quintype's UI Component Library for Publisher Apps","main":"cjs/index.js","module":"esm/index.js","repository":{"type":"git","url":"git+https://github.com/quintype/quintype-node-arrow.git"},"author":"dev-core@quintype.com","license":"ISC","bugs":{"url":"https://github.com/quintype/quintype-node-arrow/issues"},"peerDependencies":{"@babel/runtime":"^7.18.3","date-fns":"^2.28.0","date-fns-tz":"^1.3.1","lodash":"^4.0.0","react":">= 16.8.0","react-dom":">= 16.8.0","react-redux":">= 7.0.0","axios":"^0.19.2","@quintype/components":"^3.0.0","intersection-observer":"^0.11.0","react-image-lightbox":"^5.1.4","react-timeago":"^4.4.0"},"dependencies":{},"homepage":"https://github.com/quintype/quintype-node-arrow#readme"}
1
+ {"name":"@quintype/arrow","version":"3.15.1-perf.7","engines":{"node":">=12.0.0"},"description":"Quintype's UI Component Library for Publisher Apps","main":"cjs/index.js","module":"esm/index.js","repository":{"type":"git","url":"git+https://github.com/quintype/quintype-node-arrow.git"},"author":"dev-core@quintype.com","license":"ISC","bugs":{"url":"https://github.com/quintype/quintype-node-arrow/issues"},"peerDependencies":{"@babel/runtime":"^7.18.3","date-fns":"^2.28.0","date-fns-tz":"^1.3.1","lodash":"^4.0.0","react":">= 16.8.0","react-dom":">= 16.8.0","react-redux":">= 7.0.0","axios":"^0.23.0","@quintype/components":"^3.0.0","intersection-observer":"^0.11.0","react-image-lightbox":"^5.1.4","react-timeago":"^4.4.0"},"dependencies":{},"homepage":"https://github.com/quintype/quintype-node-arrow#readme"}