@learncard/react 2.8.12 → 2.8.14

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 (68) hide show
  1. package/dist/cjs/{BoostGenericCard-08a4e856.js → BoostGenericCard-c34f1bb9.js} +5 -8
  2. package/dist/cjs/BoostGenericCard-c34f1bb9.js.map +1 -0
  3. package/dist/cjs/{BoostSmallCard-e51886cf.js → BoostSmallCard-07103b39.js} +5 -8
  4. package/dist/cjs/BoostSmallCard-07103b39.js.map +1 -0
  5. package/dist/cjs/{CertificateDisplayCard-355bb9db.js → CertificateDisplayCard-26aedfb3.js} +2 -2
  6. package/dist/cjs/{CertificateDisplayCard-355bb9db.js.map → CertificateDisplayCard-26aedfb3.js.map} +1 -1
  7. package/dist/cjs/{Lightbox-d7b749fd.js → Lightbox-ce6ddca1.js} +96 -39
  8. package/dist/cjs/Lightbox-ce6ddca1.js.map +1 -0
  9. package/dist/cjs/{MeritBadgeDisplayCard-cdb59ca4.js → MeritBadgeDisplayCard-0bf40f57.js} +2 -2
  10. package/dist/cjs/{MeritBadgeDisplayCard-cdb59ca4.js.map → MeritBadgeDisplayCard-0bf40f57.js.map} +1 -1
  11. package/dist/cjs/ThreeDotVertical-e39ac5df.js +42 -0
  12. package/dist/cjs/ThreeDotVertical-e39ac5df.js.map +1 -0
  13. package/dist/cjs/{VCCard-41ec5401.js → VCCard-bd181185.js} +2 -2
  14. package/dist/cjs/{VCCard-41ec5401.js.map → VCCard-bd181185.js.map} +1 -1
  15. package/dist/cjs/{VCDisplayCard2-896291d9.js → VCDisplayCard2-3013307b.js} +4 -4
  16. package/dist/cjs/{VCDisplayCard2-896291d9.js.map → VCDisplayCard2-3013307b.js.map} +1 -1
  17. package/dist/cjs/index.js +10 -8
  18. package/dist/cjs/index.js.map +1 -1
  19. package/dist/cjs/index13.js +10 -8
  20. package/dist/cjs/index13.js.map +1 -1
  21. package/dist/cjs/index19.js +1 -1
  22. package/dist/cjs/index21.js +2 -2
  23. package/dist/cjs/index3.js +2 -2
  24. package/dist/cjs/index36.js +2 -0
  25. package/dist/cjs/index36.js.map +1 -1
  26. package/dist/cjs/index37.js +5 -5
  27. package/dist/cjs/index4.js +2 -2
  28. package/dist/cjs/index40.js +4 -4
  29. package/dist/cjs/index6.js +2 -2
  30. package/dist/esm/{BoostGenericCard-3a36ddf6.js → BoostGenericCard-5d259cdc.js} +5 -7
  31. package/dist/esm/BoostGenericCard-5d259cdc.js.map +1 -0
  32. package/dist/esm/{BoostSmallCard-5d47a19f.js → BoostSmallCard-7cb33197.js} +5 -7
  33. package/dist/esm/BoostSmallCard-7cb33197.js.map +1 -0
  34. package/dist/esm/{CertificateDisplayCard-3ff759b1.js → CertificateDisplayCard-34c129c7.js} +2 -2
  35. package/dist/esm/{CertificateDisplayCard-3ff759b1.js.map → CertificateDisplayCard-34c129c7.js.map} +1 -1
  36. package/dist/esm/{Lightbox-f02b5b4f.js → Lightbox-8a43ba52.js} +96 -39
  37. package/dist/esm/Lightbox-8a43ba52.js.map +1 -0
  38. package/dist/esm/{MeritBadgeDisplayCard-a3e1cac5.js → MeritBadgeDisplayCard-32705737.js} +2 -2
  39. package/dist/esm/{MeritBadgeDisplayCard-a3e1cac5.js.map → MeritBadgeDisplayCard-32705737.js.map} +1 -1
  40. package/dist/esm/ThreeDotVertical-e3144ad0.js +36 -0
  41. package/dist/esm/ThreeDotVertical-e3144ad0.js.map +1 -0
  42. package/dist/esm/{VCCard-ec7b123f.js → VCCard-df04edb1.js} +2 -2
  43. package/dist/esm/{VCCard-ec7b123f.js.map → VCCard-df04edb1.js.map} +1 -1
  44. package/dist/esm/{VCDisplayCard2-a4144508.js → VCDisplayCard2-b95f4c89.js} +4 -4
  45. package/dist/esm/{VCDisplayCard2-a4144508.js.map → VCDisplayCard2-b95f4c89.js.map} +1 -1
  46. package/dist/esm/index.js +9 -8
  47. package/dist/esm/index.js.map +1 -1
  48. package/dist/esm/index13.js +9 -8
  49. package/dist/esm/index13.js.map +1 -1
  50. package/dist/esm/index19.js +1 -1
  51. package/dist/esm/index21.js +2 -2
  52. package/dist/esm/index3.js +2 -2
  53. package/dist/esm/index36.js +1 -0
  54. package/dist/esm/index36.js.map +1 -1
  55. package/dist/esm/index37.js +5 -5
  56. package/dist/esm/index4.js +2 -2
  57. package/dist/esm/index40.js +4 -4
  58. package/dist/esm/index6.js +2 -2
  59. package/dist/index.d.ts +5 -1
  60. package/dist/main.css +1 -1
  61. package/dist/main.js +1 -1
  62. package/package.json +2 -2
  63. package/dist/cjs/BoostGenericCard-08a4e856.js.map +0 -1
  64. package/dist/cjs/BoostSmallCard-e51886cf.js.map +0 -1
  65. package/dist/cjs/Lightbox-d7b749fd.js.map +0 -1
  66. package/dist/esm/BoostGenericCard-3a36ddf6.js.map +0 -1
  67. package/dist/esm/BoostSmallCard-5d47a19f.js.map +0 -1
  68. package/dist/esm/Lightbox-f02b5b4f.js.map +0 -1
@@ -30,47 +30,104 @@ var __async$1 = (__this, __arguments, generator) => {
30
30
  const getVideoMetadata = (url) => __async$1(void 0, null, function* () {
31
31
  var _a, _b, _c;
32
32
  try {
33
- const parsedUrl = new URL(url);
34
- const hostname = parsedUrl.hostname.replace(/^www\./, "");
35
- if (hostname.includes("youtube.com") || hostname === "youtu.be") {
36
- const match = url.match(
37
- /(?:youtu\.be\/|youtube\.com\/(?:watch\?v=|embed\/|v\/|shorts\/))([\w-]{11})/
38
- );
39
- const videoId = (_a = match == null ? void 0 : match[1]) != null ? _a : null;
40
- return {
41
- type: "youtube",
42
- videoId,
43
- embedUrl: videoId ? `https://www.youtube.com/embed/${videoId}` : null,
44
- thumbnailUrl: videoId ? `https://img.youtube.com/vi/${videoId}/maxresdefault.jpg` : null
45
- };
33
+ const parsed = new URL(url);
34
+ const host = parsed.hostname.replace(/^www\./, "");
35
+ let id = null;
36
+ if (host === "youtu.be" || host.includes("youtube.com")) {
37
+ if (host === "youtu.be") {
38
+ id = parsed.pathname.slice(1);
39
+ } else {
40
+ id = parsed.searchParams.get("v") || parsed.pathname.split("/").filter(Boolean).pop() || null;
41
+ }
42
+ if (id) {
43
+ let thumb = `https://img.youtube.com/vi/${id}/maxresdefault.jpg`;
44
+ try {
45
+ const res = yield fetch(thumb, { method: "HEAD" });
46
+ if (!res.ok)
47
+ thumb = `https://img.youtube.com/vi/${id}/hqdefault.jpg`;
48
+ } catch (e) {
49
+ thumb = `https://img.youtube.com/vi/${id}/hqdefault.jpg`;
50
+ }
51
+ return {
52
+ type: "youtube",
53
+ videoId: id,
54
+ embedUrl: `https://www.youtube.com/embed/${id}`,
55
+ thumbnailUrl: thumb
56
+ };
57
+ }
46
58
  }
47
- if (hostname.includes("vimeo.com")) {
59
+ if (host.includes("vimeo.com")) {
48
60
  const match = url.match(/vimeo\.com\/(\d+)/);
49
- const videoId = (_b = match == null ? void 0 : match[1]) != null ? _b : null;
50
- const oembedUrl = `https://vimeo.com/api/oembed.json?url=${encodeURIComponent(url)}`;
51
- const res = yield fetch(oembedUrl);
52
- const data = yield res.json();
53
- return {
54
- type: "vimeo",
55
- videoId,
56
- embedUrl: videoId ? `https://player.vimeo.com/video/${videoId}` : null,
57
- thumbnailUrl: (_c = data == null ? void 0 : data.thumbnail_url) != null ? _c : null
58
- };
61
+ id = (_a = match == null ? void 0 : match[1]) != null ? _a : null;
62
+ if (id) {
63
+ try {
64
+ const oembed = `https://vimeo.com/api/oembed.json?url=${encodeURIComponent(
65
+ url
66
+ )}`;
67
+ const data = yield fetch(oembed).then((r) => r.json());
68
+ return {
69
+ type: "vimeo",
70
+ videoId: id,
71
+ embedUrl: `https://player.vimeo.com/video/${id}`,
72
+ thumbnailUrl: data.thumbnail_url
73
+ };
74
+ } catch (e) {
75
+ return {
76
+ type: "vimeo",
77
+ videoId: id,
78
+ embedUrl: `https://player.vimeo.com/video/${id}`,
79
+ thumbnailUrl: null
80
+ };
81
+ }
82
+ }
59
83
  }
60
- return {
61
- type: "unknown",
62
- videoId: null,
63
- embedUrl: null,
64
- thumbnailUrl: null
65
- };
66
- } catch (err) {
67
- console.error("Failed to extract video metadata:", err);
68
- return {
69
- type: "unknown",
70
- videoId: null,
71
- embedUrl: null,
72
- thumbnailUrl: null
73
- };
84
+ if (host === "drive.google.com" || host === "docs.google.com") {
85
+ const match = parsed.pathname.match(/\/d\/([^/]+)/);
86
+ id = (_b = match == null ? void 0 : match[1]) != null ? _b : parsed.searchParams.get("id");
87
+ if (id) {
88
+ return {
89
+ type: "drive",
90
+ videoId: id,
91
+ embedUrl: `https://drive.google.com/file/d/${id}/preview`,
92
+ thumbnailUrl: `https://drive.google.com/thumbnail?sz=w320-h320&id=${id}`
93
+ };
94
+ }
95
+ }
96
+ if (host === "loom.com") {
97
+ const match = parsed.pathname.match(/\/(?:share|embed|watch)\/([A-Za-z0-9]+)/);
98
+ id = (_c = match == null ? void 0 : match[1]) != null ? _c : null;
99
+ if (id) {
100
+ const embedUrl = `https://www.loom.com/embed/${id}`;
101
+ try {
102
+ const oembedUrl = `https://www.loom.com/api/oembed?url=${encodeURIComponent(
103
+ url
104
+ )}`;
105
+ const response = yield fetch(oembedUrl);
106
+ if (!response.ok) {
107
+ throw new Error(`oEmbed API returned ${response.status}`);
108
+ }
109
+ const data = yield response.json();
110
+ return {
111
+ type: "loom",
112
+ videoId: id,
113
+ embedUrl,
114
+ thumbnailUrl: data.thumbnail_url
115
+ };
116
+ } catch (e) {
117
+ console.warn("Loom oEmbed fetch failed:", e);
118
+ return {
119
+ type: "loom",
120
+ videoId: id,
121
+ embedUrl,
122
+ thumbnailUrl: null
123
+ };
124
+ }
125
+ }
126
+ }
127
+ return { type: "unknown", videoId: null, embedUrl: null, thumbnailUrl: null };
128
+ } catch (e) {
129
+ console.error("getVideoMetadata error:", e);
130
+ return { type: "unknown", videoId: null, embedUrl: null, thumbnailUrl: null };
74
131
  }
75
132
  });
76
133
 
@@ -172,4 +229,4 @@ const Lightbox = ({ items, currentUrl, setCurrentUrl }) => {
172
229
  };
173
230
 
174
231
  exports.Lightbox = Lightbox;
175
- //# sourceMappingURL=Lightbox-d7b749fd.js.map
232
+ //# sourceMappingURL=Lightbox-ce6ddca1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Lightbox-ce6ddca1.js","sources":["../../src/helpers/video.helpers.ts","../../src/components/Lightbox/Lightbox.tsx"],"sourcesContent":["export type VideoPlatform = 'youtube' | 'vimeo' | 'drive' | 'loom' | 'unknown';\n\nexport type VideoMetadata = {\n type: VideoPlatform;\n videoId: string | null;\n embedUrl: string | null;\n thumbnailUrl: string | null;\n};\n\nexport const getVideoMetadata = async (url: string): Promise<VideoMetadata> => {\n try {\n const parsed = new URL(url);\n const host = parsed.hostname.replace(/^www\\./, '');\n let id: string | null = null;\n\n // YouTube\n if (host === 'youtu.be' || host.includes('youtube.com')) {\n if (host === 'youtu.be') {\n id = parsed.pathname.slice(1);\n } else {\n id =\n parsed.searchParams.get('v') ||\n parsed.pathname.split('/').filter(Boolean).pop() ||\n null;\n }\n if (id) {\n let thumb = `https://img.youtube.com/vi/${id}/maxresdefault.jpg`;\n try {\n const res = await fetch(thumb, { method: 'HEAD' });\n if (!res.ok) thumb = `https://img.youtube.com/vi/${id}/hqdefault.jpg`;\n } catch {\n thumb = `https://img.youtube.com/vi/${id}/hqdefault.jpg`;\n }\n return {\n type: 'youtube',\n videoId: id,\n embedUrl: `https://www.youtube.com/embed/${id}`,\n thumbnailUrl: thumb,\n };\n }\n }\n\n // Vimeo\n if (host.includes('vimeo.com')) {\n const match = url.match(/vimeo\\.com\\/(\\d+)/);\n id = match?.[1] ?? null;\n if (id) {\n try {\n const oembed = `https://vimeo.com/api/oembed.json?url=${encodeURIComponent(\n url\n )}`;\n const data = await fetch(oembed).then(r => r.json());\n return {\n type: 'vimeo',\n videoId: id,\n embedUrl: `https://player.vimeo.com/video/${id}`,\n thumbnailUrl: data.thumbnail_url,\n };\n } catch (e) {\n // Fallback if oEmbed fails\n return {\n type: 'vimeo',\n videoId: id,\n embedUrl: `https://player.vimeo.com/video/${id}`,\n thumbnailUrl: null,\n };\n }\n }\n }\n\n // Google Drive\n if (host === 'drive.google.com' || host === 'docs.google.com') {\n const match = parsed.pathname.match(/\\/d\\/([^/]+)/);\n id = match?.[1] ?? parsed.searchParams.get('id');\n if (id) {\n return {\n type: 'drive',\n videoId: id,\n embedUrl: `https://drive.google.com/file/d/${id}/preview`,\n thumbnailUrl: `https://drive.google.com/thumbnail?sz=w320-h320&id=${id}`,\n };\n }\n }\n\n // Loom\n if (host === 'loom.com') {\n const match = parsed.pathname.match(/\\/(?:share|embed|watch)\\/([A-Za-z0-9]+)/);\n id = match?.[1] ?? null;\n if (id) {\n const embedUrl = `https://www.loom.com/embed/${id}`;\n try {\n const oembedUrl = `https://www.loom.com/api/oembed?url=${encodeURIComponent(\n url\n )}`;\n const response = await fetch(oembedUrl);\n if (!response.ok) {\n throw new Error(`oEmbed API returned ${response.status}`);\n }\n const data = await response.json();\n return {\n type: 'loom',\n videoId: id,\n embedUrl,\n thumbnailUrl: data.thumbnail_url,\n };\n } catch (e) {\n // Fallback if oEmbed fails\n console.warn('Loom oEmbed fetch failed:', e);\n return {\n type: 'loom',\n videoId: id,\n embedUrl,\n thumbnailUrl: null,\n };\n }\n }\n }\n\n // Fallback\n return { type: 'unknown', videoId: null, embedUrl: null, thumbnailUrl: null };\n } catch (e) {\n console.error('getVideoMetadata error:', e);\n return { type: 'unknown', videoId: null, embedUrl: null, thumbnailUrl: null };\n }\n};\n","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { createPortal } from 'react-dom';\nimport { getVideoMetadata, VideoMetadata } from '../../helpers/video.helpers';\n\nexport type LightboxItemType = 'photo' | 'video';\n\nexport type LightboxItem = {\n url: string;\n type: LightboxItemType;\n};\n\nexport type LightboxImage = LightboxItem & {\n type: 'photo';\n alt?: string;\n};\n\nexport type LightboxVideo = LightboxItem & {\n type: 'video';\n};\n\nexport type LightboxProps = {\n items: LightboxItem[];\n currentUrl: string | undefined;\n setCurrentUrl: (url: string | undefined) => void;\n};\n\nexport const Lightbox: React.FC<LightboxProps> = ({ items, currentUrl, setCurrentUrl }) => {\n const currentItem = items.find(item => item.url === currentUrl);\n const innerRef = useRef<HTMLImageElement>(null);\n const [videoMetadata, setVideoMetadata] = useState<VideoMetadata | null>(null);\n\n const goToNextItem = useCallback(() => {\n const currentIndex = items.findIndex(item => item.url === currentUrl);\n const nextItem = items.at((currentIndex + 1) % items.length);\n if (nextItem) setCurrentUrl(nextItem.url);\n }, [currentUrl, items, setCurrentUrl]);\n\n const goToPreviousItem = useCallback(() => {\n const currentIndex = items.findIndex(item => item.url === currentUrl);\n const previousItem = items.at((currentIndex - 1 + items.length) % items.length);\n if (previousItem) setCurrentUrl(previousItem.url);\n }, [currentUrl, items, setCurrentUrl]);\n\n useEffect(() => {\n const keydownListener = (e: KeyboardEvent) => {\n if (!currentUrl || !currentItem) return;\n\n if (e.key === 'Escape') {\n e.preventDefault();\n setCurrentUrl(undefined);\n }\n\n if (e.key === 'ArrowRight') {\n e.preventDefault();\n goToNextItem();\n }\n\n if (e.key === 'ArrowLeft') {\n e.preventDefault();\n goToPreviousItem();\n }\n };\n\n window.addEventListener('keydown', keydownListener);\n return () => window.removeEventListener('keydown', keydownListener);\n }, [currentUrl, currentItem, goToNextItem, goToPreviousItem, setCurrentUrl]);\n\n useEffect(() => {\n const fetchMetadata = async () => {\n if (currentItem?.type === 'video') {\n const metadata = await getVideoMetadata(currentItem.url);\n setVideoMetadata(metadata);\n } else {\n setVideoMetadata(null);\n }\n };\n\n fetchMetadata();\n }, []);\n\n if (!currentUrl || !currentItem) return null;\n\n return createPortal(\n <div\n className=\"absolute top-0 left-0 w-screen h-screen bg-[rgba(0,0,0,0.9)] text-white flex justify-center items-center z-[999999]\"\n onClick={e => {\n if (e.target !== innerRef.current) {\n setCurrentUrl(undefined);\n }\n }}\n >\n {currentItem.type === 'photo' && (\n <img\n className=\"cursor-pointer max-w-[90vw] max-h-[90vh]\"\n src={currentUrl}\n onClick={() => window.open(currentUrl, '_blank')}\n ref={innerRef}\n alt=\"\"\n />\n )}\n\n {currentItem.type === 'video' && videoMetadata?.embedUrl && (\n <div className=\"relative w-[90vw] max-w-[800px] aspect-video\">\n <iframe\n src={videoMetadata.embedUrl}\n className=\"absolute top-0 left-0 w-full h-full rounded-md\"\n title=\"Video player\"\n frameBorder=\"0\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n />\n </div>\n )}\n </div>,\n document.body\n );\n};\n"],"names":["__async","useRef","useState","useCallback","useEffect","createPortal","React"],"mappings":"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"}
@@ -6,7 +6,7 @@ var credential_helpers = require('./credential.helpers-a6eb673d.js');
6
6
  var index = require('./index-5488badc.js');
7
7
  var types_esm = require('./types.esm-9e1f15fe.js');
8
8
  var CaretRightFilled = require('./CaretRightFilled.svg');
9
- var Lightbox = require('./Lightbox-d7b749fd.js');
9
+ var Lightbox = require('./Lightbox-ce6ddca1.js');
10
10
  var ThreeDots = require('./DotsThreeOutline.svg');
11
11
 
12
12
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -867,4 +867,4 @@ const MeritBadgeDisplayCard = ({
867
867
  exports.MeritBadgeBackFace = MeritBadgeBackFace;
868
868
  exports.MeritBadgeDisplayCard = MeritBadgeDisplayCard;
869
869
  exports.MeritBadgeFrontFace = MeritBadgeFrontFace;
870
- //# sourceMappingURL=MeritBadgeDisplayCard-cdb59ca4.js.map
870
+ //# sourceMappingURL=MeritBadgeDisplayCard-0bf40f57.js.map