@automattic/social-previews 2.0.1 → 2.1.0-beta.10

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 (270) hide show
  1. package/CHANGELOG.md +73 -0
  2. package/README.md +3 -1
  3. package/dist/cjs/bluesky-preview/helpers.js +21 -0
  4. package/dist/cjs/bluesky-preview/helpers.js.map +1 -0
  5. package/dist/cjs/bluesky-preview/index.js +7 -0
  6. package/dist/cjs/bluesky-preview/index.js.map +1 -0
  7. package/dist/cjs/bluesky-preview/link-preview.js +10 -0
  8. package/dist/cjs/bluesky-preview/link-preview.js.map +1 -0
  9. package/dist/cjs/bluesky-preview/post/actions/index.js +7 -0
  10. package/dist/cjs/bluesky-preview/post/actions/index.js.map +1 -0
  11. package/dist/cjs/bluesky-preview/post/actions/styles.scss +20 -0
  12. package/dist/cjs/bluesky-preview/post/body/index.js +10 -0
  13. package/dist/cjs/bluesky-preview/post/body/index.js.map +1 -0
  14. package/dist/cjs/bluesky-preview/post/body/styles.scss +12 -0
  15. package/dist/cjs/bluesky-preview/post/card/index.js +11 -0
  16. package/dist/cjs/bluesky-preview/post/card/index.js.map +1 -0
  17. package/dist/cjs/bluesky-preview/post/card/styles.scss +70 -0
  18. package/dist/cjs/bluesky-preview/post/header/index.js +11 -0
  19. package/dist/cjs/bluesky-preview/post/header/index.js.map +1 -0
  20. package/dist/cjs/bluesky-preview/post/header/styles.scss +33 -0
  21. package/dist/cjs/bluesky-preview/post/sidebar/index.js +11 -0
  22. package/dist/cjs/bluesky-preview/post/sidebar/index.js.map +1 -0
  23. package/dist/cjs/bluesky-preview/post/sidebar/styles.scss +6 -0
  24. package/dist/cjs/bluesky-preview/post-preview.js +20 -0
  25. package/dist/cjs/bluesky-preview/post-preview.js.map +1 -0
  26. package/dist/cjs/bluesky-preview/previews.js +17 -0
  27. package/dist/cjs/bluesky-preview/previews.js.map +1 -0
  28. package/dist/cjs/bluesky-preview/styles.scss +65 -0
  29. package/dist/cjs/bluesky-preview/types.js +3 -0
  30. package/dist/cjs/bluesky-preview/types.js.map +1 -0
  31. package/dist/cjs/bluesky-preview/variables.scss +6 -0
  32. package/dist/cjs/facebook-preview/previews.js +1 -2
  33. package/dist/cjs/facebook-preview/previews.js.map +1 -1
  34. package/dist/cjs/google-search-preview/style.scss +1 -1
  35. package/dist/cjs/helpers.js +10 -2
  36. package/dist/cjs/helpers.js.map +1 -1
  37. package/dist/cjs/index.js +2 -0
  38. package/dist/cjs/index.js.map +1 -1
  39. package/dist/cjs/instagram-preview/post-preview.js +1 -1
  40. package/dist/cjs/instagram-preview/post-preview.js.map +1 -1
  41. package/dist/cjs/linkedin-preview/previews.js +1 -2
  42. package/dist/cjs/linkedin-preview/previews.js.map +1 -1
  43. package/dist/cjs/mastodon-preview/link-preview.js +1 -1
  44. package/dist/cjs/mastodon-preview/link-preview.js.map +1 -1
  45. package/dist/cjs/mastodon-preview/previews.js +1 -2
  46. package/dist/cjs/mastodon-preview/previews.js.map +1 -1
  47. package/dist/cjs/nextdoor-preview/previews.js +1 -2
  48. package/dist/cjs/nextdoor-preview/previews.js.map +1 -1
  49. package/dist/cjs/threads-preview/card.js +16 -0
  50. package/dist/cjs/threads-preview/card.js.map +1 -0
  51. package/dist/cjs/threads-preview/footer.js +9 -0
  52. package/dist/cjs/threads-preview/footer.js.map +1 -0
  53. package/dist/cjs/threads-preview/header.js +12 -0
  54. package/dist/cjs/threads-preview/header.js.map +1 -0
  55. package/dist/cjs/threads-preview/helpers.js +9 -0
  56. package/dist/cjs/threads-preview/helpers.js.map +1 -0
  57. package/dist/cjs/threads-preview/icons/default-avatar.js +9 -0
  58. package/dist/cjs/threads-preview/icons/default-avatar.js.map +1 -0
  59. package/dist/cjs/threads-preview/index.js +7 -0
  60. package/dist/cjs/threads-preview/index.js.map +1 -0
  61. package/dist/cjs/threads-preview/link-preview.js +12 -0
  62. package/dist/cjs/threads-preview/link-preview.js.map +1 -0
  63. package/dist/cjs/threads-preview/media.js +43 -0
  64. package/dist/cjs/threads-preview/media.js.map +1 -0
  65. package/dist/cjs/threads-preview/post-preview.js +22 -0
  66. package/dist/cjs/threads-preview/post-preview.js.map +1 -0
  67. package/dist/cjs/threads-preview/previews.js +24 -0
  68. package/dist/cjs/threads-preview/previews.js.map +1 -0
  69. package/dist/cjs/threads-preview/sidebar.js +11 -0
  70. package/dist/cjs/threads-preview/sidebar.js.map +1 -0
  71. package/dist/cjs/threads-preview/style.scss +203 -0
  72. package/dist/cjs/threads-preview/types.js +3 -0
  73. package/dist/cjs/threads-preview/types.js.map +1 -0
  74. package/dist/cjs/threads-preview/variables.scss +5 -0
  75. package/dist/cjs/tumblr-preview/post-preview.js +1 -1
  76. package/dist/cjs/tumblr-preview/post-preview.js.map +1 -1
  77. package/dist/cjs/tumblr-preview/previews.js +1 -2
  78. package/dist/cjs/tumblr-preview/previews.js.map +1 -1
  79. package/dist/cjs/tumblr-preview/styles.scss +1 -0
  80. package/dist/cjs/twitter-preview/previews.js +1 -2
  81. package/dist/cjs/twitter-preview/previews.js.map +1 -1
  82. package/dist/cjs/twitter-preview/style.scss +1 -1
  83. package/dist/esm/bluesky-preview/helpers.js +15 -0
  84. package/dist/esm/bluesky-preview/helpers.js.map +1 -0
  85. package/dist/esm/bluesky-preview/index.js +4 -0
  86. package/dist/esm/bluesky-preview/index.js.map +1 -0
  87. package/dist/esm/bluesky-preview/link-preview.js +6 -0
  88. package/dist/esm/bluesky-preview/link-preview.js.map +1 -0
  89. package/dist/esm/bluesky-preview/post/actions/index.js +5 -0
  90. package/dist/esm/bluesky-preview/post/actions/index.js.map +1 -0
  91. package/dist/esm/bluesky-preview/post/actions/styles.scss +20 -0
  92. package/dist/esm/bluesky-preview/post/body/index.js +8 -0
  93. package/dist/esm/bluesky-preview/post/body/index.js.map +1 -0
  94. package/dist/esm/bluesky-preview/post/body/styles.scss +12 -0
  95. package/dist/esm/bluesky-preview/post/card/index.js +9 -0
  96. package/dist/esm/bluesky-preview/post/card/index.js.map +1 -0
  97. package/dist/esm/bluesky-preview/post/card/styles.scss +70 -0
  98. package/dist/esm/bluesky-preview/post/header/index.js +9 -0
  99. package/dist/esm/bluesky-preview/post/header/index.js.map +1 -0
  100. package/dist/esm/bluesky-preview/post/header/styles.scss +33 -0
  101. package/dist/esm/bluesky-preview/post/sidebar/index.js +7 -0
  102. package/dist/esm/bluesky-preview/post/sidebar/index.js.map +1 -0
  103. package/dist/esm/bluesky-preview/post/sidebar/styles.scss +6 -0
  104. package/dist/esm/bluesky-preview/post-preview.js +15 -0
  105. package/dist/esm/bluesky-preview/post-preview.js.map +1 -0
  106. package/dist/esm/bluesky-preview/previews.js +13 -0
  107. package/dist/esm/bluesky-preview/previews.js.map +1 -0
  108. package/dist/esm/bluesky-preview/styles.scss +65 -0
  109. package/dist/esm/bluesky-preview/types.js +2 -0
  110. package/dist/esm/bluesky-preview/types.js.map +1 -0
  111. package/dist/esm/bluesky-preview/variables.scss +6 -0
  112. package/dist/esm/facebook-preview/previews.js +1 -2
  113. package/dist/esm/facebook-preview/previews.js.map +1 -1
  114. package/dist/esm/google-search-preview/style.scss +1 -1
  115. package/dist/esm/helpers.js +9 -1
  116. package/dist/esm/helpers.js.map +1 -1
  117. package/dist/esm/index.js +2 -0
  118. package/dist/esm/index.js.map +1 -1
  119. package/dist/esm/instagram-preview/post-preview.js +1 -1
  120. package/dist/esm/instagram-preview/post-preview.js.map +1 -1
  121. package/dist/esm/linkedin-preview/previews.js +1 -2
  122. package/dist/esm/linkedin-preview/previews.js.map +1 -1
  123. package/dist/esm/mastodon-preview/link-preview.js +1 -1
  124. package/dist/esm/mastodon-preview/link-preview.js.map +1 -1
  125. package/dist/esm/mastodon-preview/previews.js +1 -2
  126. package/dist/esm/mastodon-preview/previews.js.map +1 -1
  127. package/dist/esm/nextdoor-preview/previews.js +1 -2
  128. package/dist/esm/nextdoor-preview/previews.js.map +1 -1
  129. package/dist/esm/threads-preview/card.js +11 -0
  130. package/dist/esm/threads-preview/card.js.map +1 -0
  131. package/dist/esm/threads-preview/footer.js +5 -0
  132. package/dist/esm/threads-preview/footer.js.map +1 -0
  133. package/dist/esm/threads-preview/header.js +8 -0
  134. package/dist/esm/threads-preview/header.js.map +1 -0
  135. package/dist/esm/threads-preview/helpers.js +5 -0
  136. package/dist/esm/threads-preview/helpers.js.map +1 -0
  137. package/dist/esm/threads-preview/icons/default-avatar.js +5 -0
  138. package/dist/esm/threads-preview/icons/default-avatar.js.map +1 -0
  139. package/dist/esm/threads-preview/index.js +4 -0
  140. package/dist/esm/threads-preview/index.js.map +1 -0
  141. package/dist/esm/threads-preview/link-preview.js +8 -0
  142. package/dist/esm/threads-preview/link-preview.js.map +1 -0
  143. package/dist/esm/threads-preview/media.js +38 -0
  144. package/dist/esm/threads-preview/media.js.map +1 -0
  145. package/dist/esm/threads-preview/post-preview.js +18 -0
  146. package/dist/esm/threads-preview/post-preview.js.map +1 -0
  147. package/dist/esm/threads-preview/previews.js +19 -0
  148. package/dist/esm/threads-preview/previews.js.map +1 -0
  149. package/dist/esm/threads-preview/sidebar.js +7 -0
  150. package/dist/esm/threads-preview/sidebar.js.map +1 -0
  151. package/dist/esm/threads-preview/style.scss +203 -0
  152. package/dist/esm/threads-preview/types.js +2 -0
  153. package/dist/esm/threads-preview/types.js.map +1 -0
  154. package/dist/esm/threads-preview/variables.scss +5 -0
  155. package/dist/esm/tumblr-preview/post-preview.js +1 -1
  156. package/dist/esm/tumblr-preview/post-preview.js.map +1 -1
  157. package/dist/esm/tumblr-preview/previews.js +1 -2
  158. package/dist/esm/tumblr-preview/previews.js.map +1 -1
  159. package/dist/esm/tumblr-preview/styles.scss +1 -0
  160. package/dist/esm/twitter-preview/previews.js +1 -2
  161. package/dist/esm/twitter-preview/previews.js.map +1 -1
  162. package/dist/esm/twitter-preview/style.scss +1 -1
  163. package/dist/tsconfig-cjs.tsbuildinfo +1 -1
  164. package/dist/tsconfig.tsbuildinfo +1 -1
  165. package/dist/types/bluesky-preview/helpers.d.ts +8 -0
  166. package/dist/types/bluesky-preview/helpers.d.ts.map +1 -0
  167. package/dist/types/bluesky-preview/index.d.ts +4 -0
  168. package/dist/types/bluesky-preview/index.d.ts.map +1 -0
  169. package/dist/types/bluesky-preview/link-preview.d.ts +4 -0
  170. package/dist/types/bluesky-preview/link-preview.d.ts.map +1 -0
  171. package/dist/types/bluesky-preview/post/actions/index.d.ts +5 -0
  172. package/dist/types/bluesky-preview/post/actions/index.d.ts.map +1 -0
  173. package/dist/types/bluesky-preview/post/body/index.d.ts +9 -0
  174. package/dist/types/bluesky-preview/post/body/index.d.ts.map +1 -0
  175. package/dist/types/bluesky-preview/post/card/index.d.ts +6 -0
  176. package/dist/types/bluesky-preview/post/card/index.d.ts.map +1 -0
  177. package/dist/types/bluesky-preview/post/header/index.d.ts +7 -0
  178. package/dist/types/bluesky-preview/post/header/index.d.ts.map +1 -0
  179. package/dist/types/bluesky-preview/post/sidebar/index.d.ts +7 -0
  180. package/dist/types/bluesky-preview/post/sidebar/index.d.ts.map +1 -0
  181. package/dist/types/bluesky-preview/post-preview.d.ts +5 -0
  182. package/dist/types/bluesky-preview/post-preview.d.ts.map +1 -0
  183. package/dist/types/bluesky-preview/previews.d.ts +6 -0
  184. package/dist/types/bluesky-preview/previews.d.ts.map +1 -0
  185. package/dist/types/bluesky-preview/types.d.ts +13 -0
  186. package/dist/types/bluesky-preview/types.d.ts.map +1 -0
  187. package/dist/types/facebook-preview/previews.d.ts.map +1 -1
  188. package/dist/types/helpers.d.ts +2 -1
  189. package/dist/types/helpers.d.ts.map +1 -1
  190. package/dist/types/index.d.ts +2 -0
  191. package/dist/types/index.d.ts.map +1 -1
  192. package/dist/types/linkedin-preview/previews.d.ts.map +1 -1
  193. package/dist/types/mastodon-preview/previews.d.ts.map +1 -1
  194. package/dist/types/nextdoor-preview/previews.d.ts.map +1 -1
  195. package/dist/types/threads-preview/card.d.ts +4 -0
  196. package/dist/types/threads-preview/card.d.ts.map +1 -0
  197. package/dist/types/threads-preview/footer.d.ts +3 -0
  198. package/dist/types/threads-preview/footer.d.ts.map +1 -0
  199. package/dist/types/threads-preview/header.d.ts +4 -0
  200. package/dist/types/threads-preview/header.d.ts.map +1 -0
  201. package/dist/types/threads-preview/helpers.d.ts +4 -0
  202. package/dist/types/threads-preview/helpers.d.ts.map +1 -0
  203. package/dist/types/threads-preview/icons/default-avatar.d.ts +3 -0
  204. package/dist/types/threads-preview/icons/default-avatar.d.ts.map +1 -0
  205. package/dist/types/threads-preview/index.d.ts +4 -0
  206. package/dist/types/threads-preview/index.d.ts.map +1 -0
  207. package/dist/types/threads-preview/link-preview.d.ts +4 -0
  208. package/dist/types/threads-preview/link-preview.d.ts.map +1 -0
  209. package/dist/types/threads-preview/media.d.ts +4 -0
  210. package/dist/types/threads-preview/media.d.ts.map +1 -0
  211. package/dist/types/threads-preview/post-preview.d.ts +5 -0
  212. package/dist/types/threads-preview/post-preview.d.ts.map +1 -0
  213. package/dist/types/threads-preview/previews.d.ts +4 -0
  214. package/dist/types/threads-preview/previews.d.ts.map +1 -0
  215. package/dist/types/threads-preview/sidebar.d.ts +4 -0
  216. package/dist/types/threads-preview/sidebar.d.ts.map +1 -0
  217. package/dist/types/threads-preview/types.d.ts +18 -0
  218. package/dist/types/threads-preview/types.d.ts.map +1 -0
  219. package/dist/types/tumblr-preview/previews.d.ts.map +1 -1
  220. package/dist/types/twitter-preview/previews.d.ts.map +1 -1
  221. package/dist/types/types.d.ts +4 -0
  222. package/dist/types/types.d.ts.map +1 -1
  223. package/package.json +72 -71
  224. package/src/bluesky-preview/helpers.ts +31 -0
  225. package/src/bluesky-preview/index.tsx +3 -0
  226. package/src/bluesky-preview/link-preview.tsx +6 -0
  227. package/src/bluesky-preview/post/actions/index.tsx +72 -0
  228. package/src/bluesky-preview/post/actions/styles.scss +20 -0
  229. package/src/bluesky-preview/post/body/index.tsx +29 -0
  230. package/src/bluesky-preview/post/body/styles.scss +12 -0
  231. package/src/bluesky-preview/post/card/index.tsx +26 -0
  232. package/src/bluesky-preview/post/card/styles.scss +70 -0
  233. package/src/bluesky-preview/post/header/index.tsx +34 -0
  234. package/src/bluesky-preview/post/header/styles.scss +33 -0
  235. package/src/bluesky-preview/post/sidebar/index.tsx +36 -0
  236. package/src/bluesky-preview/post/sidebar/styles.scss +6 -0
  237. package/src/bluesky-preview/post-preview.tsx +45 -0
  238. package/src/bluesky-preview/previews.tsx +51 -0
  239. package/src/bluesky-preview/styles.scss +65 -0
  240. package/src/bluesky-preview/types.ts +14 -0
  241. package/src/bluesky-preview/variables.scss +6 -0
  242. package/src/facebook-preview/previews.tsx +0 -5
  243. package/src/google-search-preview/style.scss +1 -1
  244. package/src/helpers.tsx +19 -2
  245. package/src/index.ts +2 -0
  246. package/src/instagram-preview/post-preview.tsx +1 -1
  247. package/src/linkedin-preview/previews.tsx +0 -5
  248. package/src/mastodon-preview/link-preview.tsx +1 -1
  249. package/src/mastodon-preview/previews.tsx +0 -5
  250. package/src/nextdoor-preview/previews.tsx +0 -5
  251. package/src/threads-preview/card.tsx +22 -0
  252. package/src/threads-preview/footer.tsx +43 -0
  253. package/src/threads-preview/header.tsx +18 -0
  254. package/src/threads-preview/helpers.ts +11 -0
  255. package/src/threads-preview/icons/default-avatar.tsx +35 -0
  256. package/src/threads-preview/index.tsx +3 -0
  257. package/src/threads-preview/link-preview.tsx +13 -0
  258. package/src/threads-preview/media.tsx +61 -0
  259. package/src/threads-preview/post-preview.tsx +50 -0
  260. package/src/threads-preview/previews.tsx +72 -0
  261. package/src/threads-preview/sidebar.tsx +18 -0
  262. package/src/threads-preview/style.scss +203 -0
  263. package/src/threads-preview/types.ts +23 -0
  264. package/src/threads-preview/variables.scss +5 -0
  265. package/src/tumblr-preview/post-preview.tsx +1 -1
  266. package/src/tumblr-preview/previews.tsx +0 -5
  267. package/src/tumblr-preview/styles.scss +1 -0
  268. package/src/twitter-preview/previews.tsx +0 -5
  269. package/src/twitter-preview/style.scss +1 -1
  270. package/src/types.ts +5 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,73 @@
1
+ # Changelog
2
+
3
+ ## v2.1.0
4
+
5
+ - Added Threads and Bluesky preview
6
+ - Fixed media image URL for Tumblr and Instagram previews
7
+ - Removed the learn more link for link previews
8
+ - Fixed distorted image for Tumblr preview
9
+
10
+ ## v2.0.1 (2024-06-10)
11
+
12
+ - Added Mastodon, Instagram and Nextdoor previews.
13
+ - Fixed hyperlinks for Facebook.
14
+ - Fixed multiple empty lines issue in preview text.
15
+ - Fixed video previews for Instagram and Tumblr.
16
+ - Fixed empty Twitter preview when no text/description is provided.
17
+ - Changed Twitter text and icon to X.
18
+ - Switch dependency from `classnames` to `clsx`.
19
+
20
+ ## v2.0.0 (2023-05-24)
21
+
22
+ - Converted the package to TypeScript.
23
+ - Added LinkedIn and Tumblr previews.
24
+ - Updated Google Search, Facebook and Twitter previews to match their latest designs.
25
+ - Created separate components for each of the Social Media previews e.g. `TumblrLinkPreview`, `TumblrPostPreview` and `TumblrPreviews`.
26
+
27
+ ## v1.1.5 (2022-08-24)
28
+
29
+ - Declare an optional peer dependency on `@babel/runtime`, for CommonJS environments. This dependency already existed previously, it just wasn't declared.
30
+
31
+ ## v1.1.4 (2022-05-25)
32
+
33
+ - Add missing dependency on `@emotion/react`.
34
+
35
+ ## v1.1.3 (2022-05-16)
36
+
37
+ - Remove unnecessary peer dependencies on `@wordpress/data`, `reakit-utils`, and `redux`.
38
+ - Add missing peer dependency on `react-dom`.
39
+
40
+ ## v1.1.2 (2022-05-13)
41
+
42
+ - Dependency updates and internal code cleanup.
43
+
44
+ ## v1.1.1 (2021-04-05)
45
+
46
+ - Ensure that lengthy text doesn't overflow in the Twitter preview.
47
+
48
+ ## v1.1.0 (2020-09-10)
49
+
50
+ - Twitter: Add previewing for attached images, videos, or quoted tweets.
51
+ - Twitter: Add support for previewing entire threads.
52
+
53
+ ## v1.0.4 (2020-08-24)
54
+
55
+ - Fixed Twitter styles for viewports < 600px in width
56
+
57
+ ## v1.0.3 (2020-08-21)
58
+
59
+ - Refreshed styles of Twitter, Facebook and Google previews to match their latest design.
60
+
61
+ ## v1.0.2 (2020-08-03)
62
+
63
+ - Remove `i18n-calypso` dependency by removing search preview header.
64
+ - Strip html tags from descriptions for social previews.
65
+ - Add helper function with enhanced regex for stripping html tags.
66
+
67
+ ## v1.0.1 (2020-07-23)
68
+
69
+ - Mark CSS and SCSS files as `sideEffects` to ensure they are not discarded during build processes tree-shaking.
70
+
71
+ ## v1.0.0 (2020-07-22)
72
+
73
+ - Initial release after extracting from Calypso.
package/README.md CHANGED
@@ -2,13 +2,15 @@
2
2
 
3
3
  This package contains low level components that can be used to display an _approximation_ of how a given post might like look when viewed on various social media / search platforms.
4
4
 
5
- At the current time there are components to display previews for a:
5
+ At the current time there are components to display previews for:
6
6
 
7
7
  - Facebook post.
8
8
  - Twitter post.
9
9
  - Google Search result.
10
10
  - Tumblr post.
11
11
  - LinkedIn post.
12
+ - Nextdoor post.
13
+ - Threads post.
12
14
 
13
15
  ## Prerequisites
14
16
 
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.blueskyUrl = exports.blueskyBody = exports.blueskyTitle = void 0;
4
+ const helpers_1 = require("../helpers");
5
+ const TITLE_LENGTH = 200;
6
+ const BODY_LENGTH = 300;
7
+ const URL_LENGTH = 40;
8
+ const blueskyTitle = (text) => (0, helpers_1.firstValid)((0, helpers_1.shortEnough)(TITLE_LENGTH), (0, helpers_1.hardTruncation)(TITLE_LENGTH))((0, helpers_1.stripHtmlTags)(text)) || '';
9
+ exports.blueskyTitle = blueskyTitle;
10
+ const blueskyBody = (text, options = {}) => {
11
+ const { offset = 0 } = options;
12
+ return (0, helpers_1.preparePreviewText)(text, {
13
+ platform: 'bluesky',
14
+ maxChars: BODY_LENGTH - URL_LENGTH - offset,
15
+ });
16
+ };
17
+ exports.blueskyBody = blueskyBody;
18
+ const blueskyUrl = (text) => (0, helpers_1.firstValid)((0, helpers_1.shortEnough)(URL_LENGTH), (0, helpers_1.hardTruncation)(URL_LENGTH))((0, helpers_1.stripHtmlTags)(text)) ||
19
+ '';
20
+ exports.blueskyUrl = blueskyUrl;
21
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/bluesky-preview/helpers.ts"],"names":[],"mappings":";;;AAAA,wCAOoB;AAEpB,MAAM,YAAY,GAAG,GAAG,CAAC;AACzB,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB,MAAM,UAAU,GAAG,EAAE,CAAC;AAEf,MAAM,YAAY,GAAc,CAAE,IAAI,EAAG,EAAE,CACjD,IAAA,oBAAU,EACT,IAAA,qBAAW,EAAE,YAAY,CAAE,EAC3B,IAAA,wBAAc,EAAE,YAAY,CAAE,CAC9B,CAAE,IAAA,uBAAa,EAAE,IAAI,CAAE,CAAE,IAAI,EAAE,CAAC;AAJrB,QAAA,YAAY,gBAIS;AAE3B,MAAM,WAAW,GAAG,CAAE,IAAY,EAAE,UAA+B,EAAE,EAAG,EAAE;IAChF,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC;IAE/B,OAAO,IAAA,4BAAkB,EAAE,IAAI,EAAE;QAChC,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM;KAC3C,CAAE,CAAC;AACL,CAAC,CAAC;AAPW,QAAA,WAAW,eAOtB;AAEK,MAAM,UAAU,GAAc,CAAE,IAAI,EAAG,EAAE,CAC/C,IAAA,oBAAU,EAAE,IAAA,qBAAW,EAAE,UAAU,CAAE,EAAE,IAAA,wBAAc,EAAE,UAAU,CAAE,CAAE,CAAE,IAAA,uBAAa,EAAE,IAAI,CAAE,CAAE;IAC9F,EAAE,CAAC;AAFS,QAAA,UAAU,cAEnB"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./link-preview"), exports);
5
+ tslib_1.__exportStar(require("./post-preview"), exports);
6
+ tslib_1.__exportStar(require("./previews"), exports);
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bluesky-preview/index.tsx"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,yDAA+B;AAC/B,qDAA2B"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BlueskyLinkPreview = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const post_preview_1 = require("./post-preview");
6
+ const BlueskyLinkPreview = (props) => {
7
+ return (0, jsx_runtime_1.jsx)(post_preview_1.BlueskyPostPreview, { ...props, user: undefined, media: undefined, customText: "" });
8
+ };
9
+ exports.BlueskyLinkPreview = BlueskyLinkPreview;
10
+ //# sourceMappingURL=link-preview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-preview.js","sourceRoot":"","sources":["../../../src/bluesky-preview/link-preview.tsx"],"names":[],"mappings":";;;;AAAA,iDAAoD;AAG7C,MAAM,kBAAkB,GAAoC,CAAE,KAAK,EAAG,EAAE;IAC9E,OAAO,uBAAC,iCAAkB,OAAM,KAAK,EAAG,IAAI,EAAG,SAAS,EAAG,KAAK,EAAG,SAAS,EAAG,UAAU,EAAC,EAAE,GAAG,CAAC;AACjG,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ require("./styles.scss");
5
+ const BlueskyPostActions = () => ((0, jsx_runtime_1.jsxs)("div", { className: "bluesky-preview__post-actions", children: [(0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("svg", { fill: "none", width: "18", viewBox: "0 0 24 24", height: "18", style: { color: 'rgb(111, 134, 159)' }, "aria-hidden": "true", children: (0, jsx_runtime_1.jsx)("path", { fill: "hsl(211, 20%, 53%)", fillRule: "evenodd", clipRule: "evenodd", d: "M2.002 6a3 3 0 0 1 3-3h14a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H12.28l-4.762 2.858A1 1 0 0 1 6.002 21v-2h-1a3 3 0 0 1-3-3V6Zm3-1a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h2a1 1 0 0 1 1 1v1.234l3.486-2.092a1 1 0 0 1 .514-.142h7a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-14Z" }) }), (0, jsx_runtime_1.jsx)("span", { children: 0 })] }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("svg", { fill: "none", width: "18", viewBox: "0 0 24 24", height: "18", style: { color: 'rgb(111, 134, 159)' }, "aria-hidden": "true", children: (0, jsx_runtime_1.jsx)("path", { fill: "hsl(211, 20%, 53%)", fillRule: "evenodd", clipRule: "evenodd", d: "M17.957 2.293a1 1 0 1 0-1.414 1.414L17.836 5H6a3 3 0 0 0-3 3v3a1 1 0 1 0 2 0V8a1 1 0 0 1 1-1h11.836l-1.293 1.293a1 1 0 0 0 1.414 1.414l2.47-2.47a1.75 1.75 0 0 0 0-2.474l-2.47-2.47ZM20 12a1 1 0 0 1 1 1v3a3 3 0 0 1-3 3H6.164l1.293 1.293a1 1 0 1 1-1.414 1.414l-2.47-2.47a1.75 1.75 0 0 1 0-2.474l2.47-2.47a1 1 0 0 1 1.414 1.414L6.164 17H18a1 1 0 0 0 1-1v-3a1 1 0 0 1 1-1Z" }) }), (0, jsx_runtime_1.jsx)("span", { children: 0 })] }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("svg", { fill: "none", width: "18", viewBox: "0 0 24 24", height: "18", style: { color: 'rgb(111, 134, 159)' }, "aria-hidden": "true", children: (0, jsx_runtime_1.jsx)("path", { fill: "hsl(211, 20%, 53%)", fillRule: "evenodd", clipRule: "evenodd", d: "M16.734 5.091c-1.238-.276-2.708.047-4.022 1.38a1 1 0 0 1-1.424 0C9.974 5.137 8.504 4.814 7.266 5.09c-1.263.282-2.379 1.206-2.92 2.556C3.33 10.18 4.252 14.84 12 19.348c7.747-4.508 8.67-9.168 7.654-11.7-.541-1.351-1.657-2.275-2.92-2.557Zm4.777 1.812c1.604 4-.494 9.69-9.022 14.47a1 1 0 0 1-.978 0C2.983 16.592.885 10.902 2.49 6.902c.779-1.942 2.414-3.334 4.342-3.764 1.697-.378 3.552.003 5.169 1.286 1.617-1.283 3.472-1.664 5.17-1.286 1.927.43 3.562 1.822 4.34 3.764Z" }) }), (0, jsx_runtime_1.jsx)("span", { children: 0 })] }), (0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("svg", { fill: "none", viewBox: "0 0 24 24", width: "20", height: "20", "aria-hidden": "true", children: (0, jsx_runtime_1.jsx)("path", { fill: "hsl(211, 20%, 53%)", fillRule: "evenodd", clipRule: "evenodd", d: "M2 12a2 2 0 1 1 4 0 2 2 0 0 1-4 0Zm16 0a2 2 0 1 1 4 0 2 2 0 0 1-4 0Zm-6-2a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z" }) }) })] }));
6
+ exports.default = BlueskyPostActions;
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/bluesky-preview/post/actions/index.tsx"],"names":[],"mappings":";;;AAAA,yBAAuB;AAEvB,MAAM,kBAAkB,GAAa,GAAG,EAAE,CAAC,CAC1C,iCAAK,SAAS,EAAC,+BAA+B,aAC7C,4CACC,gCACC,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,IAAI,EACV,OAAO,EAAC,WAAW,EACnB,MAAM,EAAC,IAAI,EACX,KAAK,EAAG,EAAE,KAAK,EAAE,oBAAoB,EAAE,iBAC3B,MAAM,YAElB,iCACC,IAAI,EAAC,oBAAoB,EACzB,QAAQ,EAAC,SAAS,EAClB,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,qPAAqP,GAChP,GACH,EACN,2CAAQ,CAAC,GAAS,IACb,EACN,4CACC,gCACC,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,IAAI,EACV,OAAO,EAAC,WAAW,EACnB,MAAM,EAAC,IAAI,EACX,KAAK,EAAG,EAAE,KAAK,EAAE,oBAAoB,EAAE,iBAC3B,MAAM,YAElB,iCACC,IAAI,EAAC,oBAAoB,EACzB,QAAQ,EAAC,SAAS,EAClB,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,iXAAiX,GAC5W,GACH,EACN,2CAAQ,CAAC,GAAS,IACb,EACN,4CACC,gCACC,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,IAAI,EACV,OAAO,EAAC,WAAW,EACnB,MAAM,EAAC,IAAI,EACX,KAAK,EAAG,EAAE,KAAK,EAAE,oBAAoB,EAAE,iBAC3B,MAAM,YAElB,iCACC,IAAI,EAAC,oBAAoB,EACzB,QAAQ,EAAC,SAAS,EAClB,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,mdAAmd,GAC9c,GACH,EACN,2CAAQ,CAAC,GAAS,IACb,EACN,0CACC,gCAAK,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,iBAAa,MAAM,YAC7E,iCACC,IAAI,EAAC,oBAAoB,EACzB,QAAQ,EAAC,SAAS,EAClB,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,wGAAwG,GACnG,GACH,GACD,IACD,CACN,CAAC;AAEF,kBAAe,kBAAkB,CAAC"}
@@ -0,0 +1,20 @@
1
+ @import "../../variables";
2
+
3
+ .bluesky-preview__post-actions {
4
+ margin-top: 0.5rem;
5
+ display: flex;
6
+ justify-content: space-between;
7
+ align-items: center;
8
+
9
+ & > div {
10
+ flex: 1;
11
+ display: flex;
12
+ align-items: center;
13
+ gap: 4px;
14
+ color: rgb(111, 134, 159);
15
+ }
16
+
17
+ svg {
18
+ fill: currentColor;
19
+ }
20
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const helpers_1 = require("../../helpers");
5
+ require("./styles.scss");
6
+ const BlueskyPostBody = ({ customText, url, children, appendUrl }) => {
7
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "bluesky-preview__body", children: [customText ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", { children: (0, helpers_1.blueskyBody)(customText) }), appendUrl && url ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("br", {}), (0, jsx_runtime_1.jsx)("a", { href: url, target: "_blank", rel: "noreferrer noopener", children: (0, helpers_1.blueskyUrl)(url.replace(/^https?:\/\//, '')) })] })) : null] })) : null, children] }));
8
+ };
9
+ exports.default = BlueskyPostBody;
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/bluesky-preview/post/body/index.tsx"],"names":[],"mappings":";;;AAAA,2CAAwD;AAGxD,yBAAuB;AAIvB,MAAM,eAAe,GAAsB,CAAE,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAG,EAAE;IACzF,OAAO,CACN,iCAAK,SAAS,EAAC,uBAAuB,aACnC,UAAU,CAAC,CAAC,CAAC,CACd,6DACC,0CAAO,IAAA,qBAAW,EAAE,UAAU,CAAE,GAAQ,EACtC,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,CACpB,6DACC,gCAAM,EACN,8BAAG,IAAI,EAAG,GAAG,EAAG,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,qBAAqB,YACtD,IAAA,oBAAU,EAAE,GAAG,CAAC,OAAO,CAAE,cAAc,EAAE,EAAE,CAAE,CAAE,GAC9C,IACF,CACH,CAAC,CAAC,CAAC,IAAI,IACN,CACH,CAAC,CAAC,CAAC,IAAI,EACN,QAAQ,IACL,CACN,CAAC;AACH,CAAC,CAAC;AAEF,kBAAe,eAAe,CAAC"}
@@ -0,0 +1,12 @@
1
+ @import "../../variables";
2
+
3
+ .bluesky-preview__body {
4
+ margin-bottom: 1rem;
5
+
6
+ color: $bluesky-body-text-color;
7
+
8
+ > p {
9
+ margin-bottom: 1.25rem;
10
+ }
11
+ }
12
+
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const helpers_1 = require("../../../helpers");
5
+ const helpers_2 = require("../../helpers");
6
+ require("./styles.scss");
7
+ const BlueskyPostCard = ({ title, description, url, image }) => {
8
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "bluesky-preview__card", children: [image ? ((0, jsx_runtime_1.jsx)("div", { className: "bluesky-preview__card-image", children: (0, jsx_runtime_1.jsx)("img", { src: image, alt: "" }) })) : null, (0, jsx_runtime_1.jsxs)("div", { className: "bluesky-preview__card-text", children: [(0, jsx_runtime_1.jsx)("div", { className: "bluesky-preview__card-site", children: (0, helpers_1.baseDomain)(url) }), (0, jsx_runtime_1.jsx)("div", { className: "bluesky-preview__card-title", children: (0, helpers_2.blueskyTitle)(title) || (0, helpers_1.getTitleFromDescription)(description) }), (0, jsx_runtime_1.jsx)("div", { className: "bluesky-preview__card-description", children: (0, helpers_1.stripHtmlTags)(description) })] })] }));
9
+ };
10
+ exports.default = BlueskyPostCard;
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/bluesky-preview/post/card/index.tsx"],"names":[],"mappings":";;;AAAA,8CAAsF;AACtF,2CAA6C;AAG7C,yBAAuB;AAEvB,MAAM,eAAe,GAAoC,CAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,KAAK,EAAE,EAAG,EAAE;IACjG,OAAO,CACN,iCAAK,SAAS,EAAC,uBAAuB,aACnC,KAAK,CAAC,CAAC,CAAC,CACT,gCAAK,SAAS,EAAC,6BAA6B,YAC3C,gCAAK,GAAG,EAAG,KAAK,EAAG,GAAG,EAAC,EAAE,GAAG,GACvB,CACN,CAAC,CAAC,CAAC,IAAI,EACR,iCAAK,SAAS,EAAC,4BAA4B,aAC1C,gCAAK,SAAS,EAAC,4BAA4B,YAAG,IAAA,oBAAU,EAAE,GAAG,CAAE,GAAQ,EACvE,gCAAK,SAAS,EAAC,6BAA6B,YACzC,IAAA,sBAAY,EAAE,KAAK,CAAE,IAAI,IAAA,iCAAuB,EAAE,WAAW,CAAE,GAC5D,EACN,gCAAK,SAAS,EAAC,mCAAmC,YAAG,IAAA,uBAAa,EAAE,WAAW,CAAE,GAAQ,IACpF,IACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,kBAAe,eAAe,CAAC"}
@@ -0,0 +1,70 @@
1
+ @import "../../variables";
2
+
3
+ .bluesky-preview__card {
4
+ display: flex;
5
+ flex-direction: column;
6
+ margin-top: 1rem;
7
+
8
+ border: solid 1px #d9e1e8;
9
+ /* stylelint-disable-next-line scales/radii */
10
+ border-radius: 8px;
11
+ overflow: hidden;
12
+ color: $bluesky-body-text-color;
13
+ }
14
+
15
+ .bluesky-preview__card-image img {
16
+ width: 100%;
17
+ object-fit: cover;
18
+ }
19
+
20
+ .bluesky-preview__card-text {
21
+ border-bottom-width: 1px;
22
+ border-left-width: 1px;
23
+ border-right-width: 1px;
24
+ flex: 1 1 0%;
25
+ padding: 8px 14px;
26
+ border-color: rgb(212, 219, 226);
27
+ /* stylelint-disable-next-line scales/radii */
28
+ border-bottom-right-radius: 8px;
29
+ /* stylelint-disable-next-line scales/radii */
30
+ border-bottom-left-radius: 8px;
31
+ }
32
+
33
+ .bluesky-preview__card-title {
34
+ -webkit-box-orient: vertical;
35
+ -webkit-line-clamp: 3;
36
+ display: -webkit-box;
37
+ overflow: hidden;
38
+ text-overflow: ellipsis;
39
+ color: rgb(11, 15, 20);
40
+ /* stylelint-disable-next-line declaration-property-unit-allowed-list */
41
+ font-size: 16px;
42
+ font-weight: 700;
43
+ letter-spacing: 0.25px;
44
+ }
45
+
46
+ .bluesky-preview__card-site {
47
+ /* stylelint-disable-next-line declaration-property-unit-allowed-list */
48
+ font-size: 14px;
49
+ overflow: hidden;
50
+ text-overflow: ellipsis;
51
+ white-space: nowrap;
52
+ color: rgb(66, 87, 108);
53
+ font-weight: 400;
54
+ letter-spacing: 0.25px;
55
+ margin-bottom: 2px;
56
+ margin-top: 2px;
57
+ }
58
+
59
+ .bluesky-preview__card-description {
60
+ -webkit-box-orient: vertical;
61
+ -webkit-line-clamp: 2;
62
+ color: rgb(11, 15, 20);
63
+ display: -webkit-box;
64
+ /* stylelint-disable-next-line declaration-property-unit-allowed-list */
65
+ font-size: 15px;
66
+ font-weight: 400;
67
+ letter-spacing: 0.25px;
68
+ margin-top: 4px;
69
+ overflow: hidden;
70
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const i18n_1 = require("@wordpress/i18n");
5
+ require("./styles.scss");
6
+ const BlueskyPostHeader = ({ user }) => {
7
+ const { displayName, address } = user || {};
8
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "bluesky-preview__post-header", children: [(0, jsx_runtime_1.jsxs)("div", { className: "bluesky-preview__post-header-user", children: [(0, jsx_runtime_1.jsx)("span", { className: "bluesky-preview__post-header--displayname", children: displayName || (0, i18n_1.__)('Account name') }), "\u00A0", (0, jsx_runtime_1.jsx)("span", { className: "bluesky-preview__post-header--username", children: address || 'username.bsky.social' })] }), (0, jsx_runtime_1.jsx)("div", { className: "bluesky-preview__post-header--separator", children: "\u00B7" }), (0, jsx_runtime_1.jsx)("div", { className: "bluesky-preview__post-header--date", children: (0, i18n_1._x)('1h', 'refers to the time since the post was published, e.g. "1h"', 'social-previews') })] }));
9
+ };
10
+ exports.default = BlueskyPostHeader;
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/bluesky-preview/post/header/index.tsx"],"names":[],"mappings":";;;AAAA,0CAAyC;AAGzC,yBAAuB;AAIvB,MAAM,iBAAiB,GAAsB,CAAE,EAAE,IAAI,EAAE,EAAG,EAAE;IAC3D,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC;IAE5C,OAAO,CACN,iCAAK,SAAS,EAAC,8BAA8B,aAC5C,iCAAK,SAAS,EAAC,mCAAmC,aACjD,iCAAM,SAAS,EAAC,2CAA2C,YACxD,WAAW,IAAI,IAAA,SAAE,EAAE,cAAc,CAAE,GAC/B,YAEP,iCAAM,SAAS,EAAC,wCAAwC,YACrD,OAAO,IAAI,sBAAsB,GAC7B,IACF,EACN,gCAAK,SAAS,EAAC,yCAAyC,uBAAQ,EAChE,gCAAK,SAAS,EAAC,oCAAoC,YAChD,IAAA,SAAE,EACH,IAAI,EACJ,4DAA4D,EAC5D,iBAAiB,CACjB,GACI,IACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
@@ -0,0 +1,33 @@
1
+ @import "../../variables";
2
+
3
+ .bluesky-preview__post-header {
4
+ display: flex;
5
+ align-items: start;
6
+ gap: 4px;
7
+
8
+ margin-bottom: 0.625rem;
9
+
10
+ /* stylelint-disable-next-line scales/font-sizes */
11
+ font-size: 0.9375rem;
12
+ line-height: 1.47;
13
+
14
+ &--displayname {
15
+ /* stylelint-disable-next-line declaration-property-unit-allowed-list */
16
+ font-size: 16px;
17
+ letter-spacing: 0.25px;
18
+ font-weight: 700;
19
+ line-height: 19px;
20
+ color: rgb(11, 15, 20);
21
+ }
22
+
23
+ &--username,
24
+ &--separator,
25
+ &--date {
26
+ /* stylelint-disable-next-line declaration-property-unit-allowed-list */
27
+ font-size: 15px;
28
+ letter-spacing: 0.25px;
29
+ font-weight: 400;
30
+ color: rgb(66, 87, 108);
31
+ }
32
+
33
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BlueskyPostSidebar = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ require("./styles.scss");
6
+ const BlueskyPostSidebar = ({ user }) => {
7
+ const { avatarUrl } = user || {};
8
+ return ((0, jsx_runtime_1.jsx)("div", { className: "bluesky-preview__post-sidebar", children: (0, jsx_runtime_1.jsx)("div", { className: "bluesky-preview__post-sidebar-user", children: avatarUrl ? ((0, jsx_runtime_1.jsx)("img", { className: "bluesky-preview__post-avatar", src: avatarUrl, alt: "" })) : ((0, jsx_runtime_1.jsxs)("svg", { className: "bluesky-preview__post-avatar", viewBox: "0 0 24 24", fill: "none", stroke: "none", role: "presentation", children: [(0, jsx_runtime_1.jsx)("circle", { cx: "12", cy: "12", r: "12", fill: "#0070ff" }), (0, jsx_runtime_1.jsx)("circle", { cx: "12", cy: "9.5", r: "3.5", fill: "#fff" }), (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", fill: "#fff", d: "M 12.058 22.784 C 9.422 22.784 7.007 21.836 5.137 20.262 C 5.667 17.988 8.534 16.25 11.99 16.25 C 15.494 16.25 18.391 18.036 18.864 20.357 C 17.01 21.874 14.64 22.784 12.058 22.784 Z" })] })) }) }));
9
+ };
10
+ exports.BlueskyPostSidebar = BlueskyPostSidebar;
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/bluesky-preview/post/sidebar/index.tsx"],"names":[],"mappings":";;;;AAEA,yBAAuB;AAIhB,MAAM,kBAAkB,GAAsB,CAAE,EAAE,IAAI,EAAE,EAAG,EAAE;IACnE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC;IAEjC,OAAO,CACN,gCAAK,SAAS,EAAC,+BAA+B,YAC7C,gCAAK,SAAS,EAAC,oCAAoC,YAChD,SAAS,CAAC,CAAC,CAAC,CACb,gCAAK,SAAS,EAAC,8BAA8B,EAAC,GAAG,EAAG,SAAS,EAAG,GAAG,EAAC,EAAE,GAAG,CACzE,CAAC,CAAC,CAAC,CACH,iCACC,SAAS,EAAC,8BAA8B,EACxC,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,MAAM,EACb,IAAI,EAAC,cAAc,aAEnB,mCAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,EAAC,IAAI,EAAC,SAAS,GAAU,EACvD,mCAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,GAAU,EACtD,iCACC,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,IAAI,EAAC,MAAM,EACX,CAAC,EAAC,wLAAwL,GACnL,IACH,CACN,GACI,GACD,CACN,CAAC;AACH,CAAC,CAAC;AA7BW,QAAA,kBAAkB,sBA6B7B"}
@@ -0,0 +1,6 @@
1
+
2
+ .bluesky-preview__post-avatar {
3
+ width: 52px;
4
+ height: 52px;
5
+ border-radius: 50%;
6
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BlueskyPostPreview = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const clsx_1 = tslib_1.__importDefault(require("clsx"));
7
+ const actions_1 = tslib_1.__importDefault(require("./post/actions"));
8
+ const body_1 = tslib_1.__importDefault(require("./post/body"));
9
+ const card_1 = tslib_1.__importDefault(require("./post/card"));
10
+ const header_1 = tslib_1.__importDefault(require("./post/header"));
11
+ const sidebar_1 = require("./post/sidebar");
12
+ require("./styles.scss");
13
+ const BlueskyPostPreview = (props) => {
14
+ const { user, media, appendUrl } = props;
15
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "bluesky-preview__post", children: [(0, jsx_runtime_1.jsx)(sidebar_1.BlueskyPostSidebar, { user: user }), (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(header_1.default, { user: user }), (0, jsx_runtime_1.jsx)(body_1.default, { ...props, appendUrl: appendUrl ?? Boolean(media?.length), children: media?.length ? ((0, jsx_runtime_1.jsx)("div", { className: (0, clsx_1.default)('bluesky-preview__media', { 'as-grid': media.length > 1 }), children: media.map((mediaItem, index) => ((0, jsx_runtime_1.jsx)("div", { className: "bluesky-preview__media-item", children: mediaItem.type.startsWith('video/') ? (
16
+ // eslint-disable-next-line jsx-a11y/media-has-caption
17
+ (0, jsx_runtime_1.jsx)("video", { controls: true, children: (0, jsx_runtime_1.jsx)("source", { src: mediaItem.url, type: mediaItem.type }) })) : ((0, jsx_runtime_1.jsx)("img", { alt: mediaItem.alt || '', src: mediaItem.url })) }, `bluesky-preview__media-item-${index}`))) })) : null }), !media?.length ? (0, jsx_runtime_1.jsx)(card_1.default, { ...props }) : null, (0, jsx_runtime_1.jsx)(actions_1.default, {})] })] }));
18
+ };
19
+ exports.BlueskyPostPreview = BlueskyPostPreview;
20
+ //# sourceMappingURL=post-preview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"post-preview.js","sourceRoot":"","sources":["../../../src/bluesky-preview/post-preview.tsx"],"names":[],"mappings":";;;;;AAAA,wDAAwB;AACxB,qEAAgD;AAChD,+DAA0C;AAC1C,+DAA0C;AAC1C,mEAA8C;AAC9C,4CAAoD;AAGpD,yBAAuB;AAEhB,MAAM,kBAAkB,GAAoC,CAAE,KAAK,EAAG,EAAE;IAC9E,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAEzC,OAAO,CACN,iCAAK,SAAS,EAAC,uBAAuB,aACrC,uBAAC,4BAAkB,IAAC,IAAI,EAAG,IAAI,GAAK,EACpC,4CACC,uBAAC,gBAAiB,IAAC,IAAI,EAAG,IAAI,GAAK,EACnC,uBAAC,cAAe,OAAM,KAAK,EAAG,SAAS,EAAG,SAAS,IAAI,OAAO,CAAE,KAAK,EAAE,MAAM,CAAE,YAC5E,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CACjB,gCAAK,SAAS,EAAG,IAAA,cAAI,EAAE,wBAAwB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAE,YAC/E,KAAK,CAAC,GAAG,CAAE,CAAE,SAAS,EAAE,KAAK,EAAG,EAAE,CAAC,CACpC,gCAEC,SAAS,EAAC,6BAA6B,YAErC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAE,QAAQ,CAAE,CAAC,CAAC,CAAC;gCACzC,sDAAsD;gCACtD,kCAAO,QAAQ,kBACd,mCAAQ,GAAG,EAAG,SAAS,CAAC,GAAG,EAAG,IAAI,EAAG,SAAS,CAAC,IAAI,GAAK,GACjD,CACR,CAAC,CAAC,CAAC,CACH,gCAAK,GAAG,EAAG,SAAS,CAAC,GAAG,IAAI,EAAE,EAAG,GAAG,EAAG,SAAS,CAAC,GAAG,GAAK,CACzD,IAVK,+BAAgC,KAAM,EAAE,CAWzC,CACN,CAAE,GACE,CACN,CAAC,CAAC,CAAC,IAAI,GACS,EAChB,CAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,uBAAC,cAAe,OAAM,KAAK,GAAK,CAAC,CAAC,CAAC,IAAI,EAC3D,uBAAC,iBAAkB,KAAG,IACjB,IACD,CACN,CAAC;AACH,CAAC,CAAC;AAlCW,QAAA,kBAAkB,sBAkC7B"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BlueskyPreviews = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const i18n_1 = require("@wordpress/i18n");
6
+ const section_heading_1 = require("../shared/section-heading");
7
+ const link_preview_1 = require("./link-preview");
8
+ const post_preview_1 = require("./post-preview");
9
+ const BlueskyPreviews = ({ headingLevel, hidePostPreview, hideLinkPreview, ...props }) => {
10
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "social-preview bluesky-preview", children: [!hidePostPreview && ((0, jsx_runtime_1.jsxs)("section", { className: "social-preview__section bluesky-preview__section", children: [(0, jsx_runtime_1.jsx)(section_heading_1.SectionHeading, { level: headingLevel, children:
11
+ // translators: refers to a social post on Bluesky
12
+ (0, i18n_1.__)('Your post', 'social-previews') }), (0, jsx_runtime_1.jsx)("p", { className: "social-preview__section-desc", children: (0, i18n_1.__)('This is what your social post will look like on Bluesky:', 'social-previews') }), (0, jsx_runtime_1.jsx)(post_preview_1.BlueskyPostPreview, { ...props })] })), !hideLinkPreview && ((0, jsx_runtime_1.jsxs)("section", { className: "social-preview__section bluesky-preview__section", children: [(0, jsx_runtime_1.jsx)(section_heading_1.SectionHeading, { level: headingLevel, children:
13
+ // translators: refers to a link to a Bluesky post
14
+ (0, i18n_1.__)('Link preview', 'social-previews') }), (0, jsx_runtime_1.jsx)("p", { className: "social-preview__section-desc", children: (0, i18n_1.__)('This is what it will look like when someone shares the link to your WordPress post on Bluesky.', 'social-previews') }), (0, jsx_runtime_1.jsx)(link_preview_1.BlueskyLinkPreview, { ...props })] }))] }));
15
+ };
16
+ exports.BlueskyPreviews = BlueskyPreviews;
17
+ //# sourceMappingURL=previews.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"previews.js","sourceRoot":"","sources":["../../../src/bluesky-preview/previews.tsx"],"names":[],"mappings":";;;;AAAA,0CAAqC;AACrC,+DAA2D;AAE3D,iDAAoD;AACpD,iDAAoD;AAK7C,MAAM,eAAe,GAAqC,CAAE,EAClE,YAAY,EACZ,eAAe,EACf,eAAe,EACf,GAAG,KAAK,EACR,EAAG,EAAE;IACL,OAAO,CACN,iCAAK,SAAS,EAAC,gCAAgC,aAC5C,CAAE,eAAe,IAAI,CACtB,qCAAS,SAAS,EAAC,kDAAkD,aACpE,uBAAC,gCAAc,IAAC,KAAK,EAAG,YAAY;wBAElC,kDAAkD;wBAClD,IAAA,SAAE,EAAE,WAAW,EAAE,iBAAiB,CAAE,GAErB,EACjB,8BAAG,SAAS,EAAC,8BAA8B,YACxC,IAAA,SAAE,EAAE,0DAA0D,EAAE,iBAAiB,CAAE,GAClF,EACJ,uBAAC,iCAAkB,OAAM,KAAK,GAAK,IAC1B,CACV,EACC,CAAE,eAAe,IAAI,CACtB,qCAAS,SAAS,EAAC,kDAAkD,aACpE,uBAAC,gCAAc,IAAC,KAAK,EAAG,YAAY;wBAElC,kDAAkD;wBAClD,IAAA,SAAE,EAAE,cAAc,EAAE,iBAAiB,CAAE,GAExB,EACjB,8BAAG,SAAS,EAAC,8BAA8B,YACxC,IAAA,SAAE,EACH,gGAAgG,EAChG,iBAAiB,CACjB,GACE,EACJ,uBAAC,iCAAkB,OAAM,KAAK,GAAK,IAC1B,CACV,IACI,CACN,CAAC;AACH,CAAC,CAAC;AAzCW,QAAA,eAAe,mBAyC1B"}
@@ -0,0 +1,65 @@
1
+ @import "./variables";
2
+ @import "../shared";
3
+
4
+ .bluesky-preview__section {
5
+ max-width: 100%;
6
+ width: $bluesky-preview-width;
7
+ margin-inline: auto;
8
+ }
9
+
10
+ .bluesky-preview__post {
11
+ display: flex;
12
+ flex-direction: row;
13
+ gap: 10px;
14
+
15
+ width: 100%;
16
+ overflow-y: hidden;
17
+ box-sizing: border-box;
18
+ padding: 1rem;
19
+
20
+ background-color: $bluesky-preview-background-color;
21
+ border: 1px solid #c0cdd9;
22
+ color: $bluesky-preview-text-color;
23
+
24
+ font-family: $bluesky-preview-font-family;
25
+ /* stylelint-disable-next-line scales/font-sizes */
26
+ font-size: 0.9375rem;
27
+ line-height: 1.47;
28
+
29
+ :any-link {
30
+ color: $bluesky-preview-accent-color;
31
+
32
+ text-decoration: none;
33
+ }
34
+ }
35
+
36
+ .bluesky-preview__media {
37
+
38
+ margin-top: 8px;
39
+ min-height: 64px;
40
+ /* stylelint-disable-next-line scales/radii */
41
+ border-radius: 8px;
42
+
43
+ &.as-grid {
44
+ display: grid;
45
+ gap: 2px;
46
+ grid-template-columns: 50% 50%;
47
+ width: 100%;
48
+ overflow: hidden;
49
+ }
50
+
51
+ &-item {
52
+ display: flex;
53
+ border: 0;
54
+ /* stylelint-disable-next-line scales/radii */
55
+ border-radius: 8px;
56
+ overflow: hidden;
57
+
58
+ img,
59
+ video {
60
+ width: 100%;
61
+ object-fit: cover;
62
+ }
63
+ }
64
+
65
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/bluesky-preview/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ $bluesky-preview-width: 578px;
2
+ $bluesky-preview-text-color: #444b5d;
3
+ $bluesky-body-text-color: #000;
4
+ $bluesky-preview-background-color: #fff;
5
+ $bluesky-preview-font-family: "bluesky-font-sans-serif",sans-serif;
6
+ $bluesky-preview-accent-color: #3a3bff;
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FacebookPreviews = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const jsx_runtime_1 = require("react/jsx-runtime");
6
- const components_1 = require("@wordpress/components");
7
6
  const i18n_1 = require("@wordpress/i18n");
8
7
  const section_heading_1 = tslib_1.__importDefault(require("../shared/section-heading"));
9
8
  const link_preview_1 = require("./link-preview");
@@ -16,7 +15,7 @@ const FacebookPreviews = ({ headingLevel, hideLinkPreview, hidePostPreview, ...p
16
15
  // translators: refers to a social post on Facebook
17
16
  (0, i18n_1.__)('Your post', 'social-previews') }), (0, jsx_runtime_1.jsx)("p", { className: "social-preview__section-desc", children: (0, i18n_1.__)('This is what your social post will look like on Facebook:', 'social-previews') }), hasMedia ? (0, jsx_runtime_1.jsx)(post_preview_1.FacebookPostPreview, { ...props }) : (0, jsx_runtime_1.jsx)(link_preview_1.FacebookLinkPreview, { ...props })] })), !hideLinkPreview && ((0, jsx_runtime_1.jsxs)("section", { className: "social-preview__section facebook-preview__section", children: [(0, jsx_runtime_1.jsx)(section_heading_1.default, { level: headingLevel, children:
18
17
  // translators: refers to a link to a Facebook post
19
- (0, i18n_1.__)('Link preview', 'social-previews') }), (0, jsx_runtime_1.jsxs)("p", { className: "social-preview__section-desc", children: [(0, i18n_1.__)('This is what it will look like when someone shares the link to your WordPress post on Facebook.', 'social-previews'), "\u00A0", (0, jsx_runtime_1.jsx)(components_1.ExternalLink, { href: "https://jetpack.com/support/jetpack-social-image-generator", children: (0, i18n_1.__)('Learn more about links', 'social-previews') })] }), hasCustomImage ? ((0, jsx_runtime_1.jsx)(link_preview_details_1.LinkPreviewDetails, { ...props })) : ((0, jsx_runtime_1.jsx)(link_preview_1.FacebookLinkPreview, { ...props, compactDescription: true, customText: "", user: undefined }))] }))] }));
18
+ (0, i18n_1.__)('Link preview', 'social-previews') }), (0, jsx_runtime_1.jsx)("p", { className: "social-preview__section-desc", children: (0, i18n_1.__)('This is what it will look like when someone shares the link to your WordPress post on Facebook.', 'social-previews') }), hasCustomImage ? ((0, jsx_runtime_1.jsx)(link_preview_details_1.LinkPreviewDetails, { ...props })) : ((0, jsx_runtime_1.jsx)(link_preview_1.FacebookLinkPreview, { ...props, compactDescription: true, customText: "", user: undefined }))] }))] }));
20
19
  };
21
20
  exports.FacebookPreviews = FacebookPreviews;
22
21
  //# sourceMappingURL=previews.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"previews.js","sourceRoot":"","sources":["../../../src/facebook-preview/previews.tsx"],"names":[],"mappings":";;;;;AAAA,sDAAqD;AACrD,0CAAqC;AACrC,wFAAuD;AAEvD,iDAAqD;AACrD,iEAA4D;AAC5D,iDAAqD;AAK9C,MAAM,gBAAgB,GAAsC,CAAE,EACpE,YAAY,EACZ,eAAe,EACf,eAAe,EACf,GAAG,KAAK,EACR,EAAG,EAAE;IACL,MAAM,QAAQ,GAAG,CAAC,CAAE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC;IACxC,MAAM,cAAc,GAAG,CAAC,CAAE,KAAK,CAAC,WAAW,CAAC;IAE5C,OAAO,CACN,iCAAK,SAAS,EAAC,iCAAiC,aAC7C,CAAE,eAAe,IAAI,CACtB,qCAAS,SAAS,EAAC,mDAAmD,aACrE,uBAAC,yBAAc,IAAC,KAAK,EAAG,YAAY;wBAElC,mDAAmD;wBACnD,IAAA,SAAE,EAAE,WAAW,EAAE,iBAAiB,CAAE,GAErB,EACjB,8BAAG,SAAS,EAAC,8BAA8B,YACxC,IAAA,SAAE,EAAE,2DAA2D,EAAE,iBAAiB,CAAE,GACnF,EACF,QAAQ,CAAC,CAAC,CAAC,uBAAC,kCAAmB,OAAM,KAAK,GAAK,CAAC,CAAC,CAAC,uBAAC,kCAAmB,OAAM,KAAK,GAAK,IAC/E,CACV,EACC,CAAE,eAAe,IAAI,CACtB,qCAAS,SAAS,EAAC,mDAAmD,aACrE,uBAAC,yBAAc,IAAC,KAAK,EAAG,YAAY;wBAElC,mDAAmD;wBACnD,IAAA,SAAE,EAAE,cAAc,EAAE,iBAAiB,CAAE,GAExB,EACjB,+BAAG,SAAS,EAAC,8BAA8B,aACxC,IAAA,SAAE,EACH,iGAAiG,EACjG,iBAAiB,CACjB,YAED,uBAAC,yBAAY,IAAC,IAAI,EAAC,4DAA4D,YAC5E,IAAA,SAAE,EAAE,wBAAwB,EAAE,iBAAiB,CAAE,GACrC,IACZ,EACF,cAAc,CAAC,CAAC,CAAC,CAClB,uBAAC,yCAAkB,OAAM,KAAK,GAAK,CACnC,CAAC,CAAC,CAAC,CACH,uBAAC,kCAAmB,OAAM,KAAK,EAAG,kBAAkB,QAAC,UAAU,EAAC,EAAE,EAAC,IAAI,EAAG,SAAS,GAAK,CACxF,IACQ,CACV,IACI,CACN,CAAC;AACH,CAAC,CAAC;AApDW,QAAA,gBAAgB,oBAoD3B"}
1
+ {"version":3,"file":"previews.js","sourceRoot":"","sources":["../../../src/facebook-preview/previews.tsx"],"names":[],"mappings":";;;;;AAAA,0CAAqC;AACrC,wFAAuD;AAEvD,iDAAqD;AACrD,iEAA4D;AAC5D,iDAAqD;AAK9C,MAAM,gBAAgB,GAAsC,CAAE,EACpE,YAAY,EACZ,eAAe,EACf,eAAe,EACf,GAAG,KAAK,EACR,EAAG,EAAE;IACL,MAAM,QAAQ,GAAG,CAAC,CAAE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC;IACxC,MAAM,cAAc,GAAG,CAAC,CAAE,KAAK,CAAC,WAAW,CAAC;IAE5C,OAAO,CACN,iCAAK,SAAS,EAAC,iCAAiC,aAC7C,CAAE,eAAe,IAAI,CACtB,qCAAS,SAAS,EAAC,mDAAmD,aACrE,uBAAC,yBAAc,IAAC,KAAK,EAAG,YAAY;wBAElC,mDAAmD;wBACnD,IAAA,SAAE,EAAE,WAAW,EAAE,iBAAiB,CAAE,GAErB,EACjB,8BAAG,SAAS,EAAC,8BAA8B,YACxC,IAAA,SAAE,EAAE,2DAA2D,EAAE,iBAAiB,CAAE,GACnF,EACF,QAAQ,CAAC,CAAC,CAAC,uBAAC,kCAAmB,OAAM,KAAK,GAAK,CAAC,CAAC,CAAC,uBAAC,kCAAmB,OAAM,KAAK,GAAK,IAC/E,CACV,EACC,CAAE,eAAe,IAAI,CACtB,qCAAS,SAAS,EAAC,mDAAmD,aACrE,uBAAC,yBAAc,IAAC,KAAK,EAAG,YAAY;wBAElC,mDAAmD;wBACnD,IAAA,SAAE,EAAE,cAAc,EAAE,iBAAiB,CAAE,GAExB,EACjB,8BAAG,SAAS,EAAC,8BAA8B,YACxC,IAAA,SAAE,EACH,iGAAiG,EACjG,iBAAiB,CACjB,GACE,EACF,cAAc,CAAC,CAAC,CAAC,CAClB,uBAAC,yCAAkB,OAAM,KAAK,GAAK,CACnC,CAAC,CAAC,CAAC,CACH,uBAAC,kCAAmB,OAAM,KAAK,EAAG,kBAAkB,QAAC,UAAU,EAAC,EAAE,EAAC,IAAI,EAAG,SAAS,GAAK,CACxF,IACQ,CACV,IACI,CACN,CAAC;AACH,CAAC,CAAC;AAhDW,QAAA,gBAAgB,oBAgD3B"}
@@ -9,7 +9,7 @@
9
9
  * @blame: dmsnell
10
10
  */
11
11
 
12
- @import "../variables.scss";
12
+ @import "../variables";
13
13
 
14
14
  .search-preview__display {
15
15
  border: 1px solid var(--color-neutral-0);
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.preparePreviewText = exports.hashtagUrlMap = exports.formatMastodonDate = exports.formatTweetDate = exports.formatNextdoorDate = exports.hasTag = exports.getTitleFromDescription = exports.stripHtmlTags = exports.firstValid = exports.hardTruncation = exports.truncatedAtSpace = exports.shortEnough = exports.baseDomain = void 0;
3
+ exports.preparePreviewText = exports.hashtagUrlMap = exports.formatMastodonDate = exports.formatTweetDate = exports.formatThreadsDate = exports.formatNextdoorDate = exports.hasTag = exports.getTitleFromDescription = exports.stripHtmlTags = exports.firstValid = exports.hardTruncation = exports.truncatedAtSpace = exports.shortEnough = exports.baseDomain = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const element_1 = require("@wordpress/element");
6
6
  const i18n_1 = require("@wordpress/i18n");
@@ -46,6 +46,12 @@ exports.formatNextdoorDate = new Intl.DateTimeFormat('en-GB', {
46
46
  day: 'numeric',
47
47
  month: 'short',
48
48
  }).format;
49
+ exports.formatThreadsDate = new Intl.DateTimeFormat('en-US', {
50
+ // Result: "'06/21/2024"
51
+ day: '2-digit',
52
+ month: '2-digit',
53
+ year: 'numeric',
54
+ }).format;
49
55
  exports.formatTweetDate = new Intl.DateTimeFormat('en-US', {
50
56
  // Result: "Apr 7", "Dec 31"
51
57
  month: 'short',
@@ -64,6 +70,8 @@ exports.hashtagUrlMap = {
64
70
  instagram: 'https://www.instagram.com/explore/tags/%1$s',
65
71
  mastodon: 'https://%2$s/tags/%1$s',
66
72
  nextdoor: 'https://nextdoor.com/hashtag/%1$s',
73
+ threads: 'https://www.threads.net/search?q=%1$s&serp_type=tags',
74
+ bluesky: 'https://bsky.app/hashtag/%1$s',
67
75
  };
68
76
  /**
69
77
  * Prepares the text for the preview.
@@ -78,7 +86,7 @@ function preparePreviewText(text, options) {
78
86
  // That is why "\s*"
79
87
  result = result.replaceAll(/(?:\s*[\n\r]){2,}/g, '\n\n');
80
88
  if (maxChars && result.length > maxChars) {
81
- result = result.substring(0, maxChars);
89
+ result = (0, exports.hardTruncation)(maxChars)(result);
82
90
  }
83
91
  if (maxLines) {
84
92
  const lines = result.split('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.tsx"],"names":[],"mappings":"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"}