@se-studio/contentful-rest-api 1.18.1 → 1.19.0

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # @se-studio/contentful-rest-api
2
2
 
3
+ ## 1.19.0
4
+
5
+ ### Minor Changes
6
+
7
+ - DotLottie player for CMS animations (JSON and `.lottie`), with classic lottie-player fallback if DotLottie is not installed. Lazy load by default; honour loading/fetchPriority for eager (heroes). Server enrich reads dimensions and poster for CLS. WASM self-host helper (`/dotlottie/dotlottie-player.wasm`). Extension-first animation detection; hosted staged upload allows JSON/zip for animation packages. INavigation surfaces optional backgroundColour/textColour for footer chrome.
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies
12
+ - @se-studio/core-data-types@1.8.0
13
+
3
14
  ## 1.18.1
4
15
 
5
16
  ### Patch Changes
@@ -1,11 +1,17 @@
1
1
  import type { IVisual } from '@se-studio/core-data-types';
2
2
  /**
3
- * Enriches all animation visuals in the assets Map with an optimised SVG
4
- * placeholder (dimensions + blank SVG) fetched from the Lottie JSON source.
5
- * Mutates animation.optimised in place so the value is available at render
6
- * time without requiring an async server component.
7
- *
8
- * @param assets - The Map<assetId, IVisual> built by convertAllAssets
3
+ * Decode a .lottie (zip) buffer and return dimensions from the primary animation JSON.
4
+ * Optionally returns an embedded raster poster if the package includes a common image asset.
5
+ */
6
+ export declare function dimensionsFromDotLottieBuffer(buffer: Uint8Array): {
7
+ width: number;
8
+ height: number;
9
+ posterSrc?: string;
10
+ } | null;
11
+ /**
12
+ * Enriches all animation visuals in the assets Map with dimensions (optimised SVG)
13
+ * and a posterSrc for the lazy shell / reduced-motion fallback.
14
+ * Mutates animation in place so values are available at render without async server components.
9
15
  */
10
16
  export declare function enrichAnimationAssets(assets: Map<string, IVisual>): Promise<void>;
11
17
  //# sourceMappingURL=animationEnricher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"animationEnricher.d.ts","sourceRoot":"","sources":["../../src/converters/animationEnricher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA6B,OAAO,EAAE,MAAM,4BAA4B,CAAC;AA+CrF;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBvF"}
1
+ {"version":3,"file":"animationEnricher.d.ts","sourceRoot":"","sources":["../../src/converters/animationEnricher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,OAAO,EACR,MAAM,4BAA4B,CAAC;AAoCpC;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,UAAU,GAAG;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,IAAI,CAoFP;AAqED;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBvF"}
@@ -1,41 +1,160 @@
1
+ import { unzipSync } from 'fflate';
1
2
  import { assetTag } from '../revalidation/tags.js';
2
3
  function getLottieDimensions(lottieJson) {
3
4
  const width = lottieJson.w || lottieJson.width || 0;
4
5
  const height = lottieJson.h || lottieJson.height || 0;
5
6
  return { width, height };
6
7
  }
8
+ function blankSvg(width, height) {
9
+ return `<svg width="${width}" height="${height}" viewBox="0 0 ${width} ${height}" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid meet" style="width: 100%; height: 100%"></svg>`;
10
+ }
11
+ function optimisedFromDimensions(width, height) {
12
+ if (!width || !height)
13
+ return undefined;
14
+ return { width, height, data: blankSvg(width, height) };
15
+ }
16
+ /** Transparent SVG data URL — reserves space and works as a reduced-motion / lazy shell. */
17
+ function posterDataUrlFromSvg(svg) {
18
+ return `data:image/svg+xml;charset=utf-8,${encodeURIComponent(svg)}`;
19
+ }
7
20
  /**
8
- * Fetches a Lottie animation JSON and returns an optimised SVG placeholder
9
- * capturing the animation's dimensions. The assetId is used to attach a cache
10
- * tag so the result is invalidated when the Contentful asset is updated via webhook.
11
- *
12
- * @param animationSrc - Public URL of the Lottie JSON file
13
- * @param assetId - Contentful asset ID for cache tagging
21
+ * Decode a .lottie (zip) buffer and return dimensions from the primary animation JSON.
22
+ * Optionally returns an embedded raster poster if the package includes a common image asset.
14
23
  */
15
- async function fetchLottieOptimisedSvg(animationSrc, assetId) {
16
- const response = await fetch(animationSrc, {
24
+ export function dimensionsFromDotLottieBuffer(buffer) {
25
+ let files;
26
+ try {
27
+ files = unzipSync(buffer);
28
+ }
29
+ catch {
30
+ return null;
31
+ }
32
+ const entries = Object.keys(files);
33
+ const manifestKey = entries.find((k) => k === 'manifest.json' || k.endsWith('/manifest.json'));
34
+ let animationPath;
35
+ if (manifestKey) {
36
+ const manifestBytes = files[manifestKey];
37
+ if (manifestBytes) {
38
+ try {
39
+ const manifest = JSON.parse(new TextDecoder().decode(manifestBytes));
40
+ const firstId = manifest.animations?.[0]?.id;
41
+ if (firstId) {
42
+ // Spec locations: a/<id>.json or animations/<id>.json
43
+ animationPath = entries.find((k) => k === `a/${firstId}.json` ||
44
+ k === `animations/${firstId}.json` ||
45
+ k.endsWith(`/${firstId}.json`));
46
+ }
47
+ }
48
+ catch {
49
+ // fall through to first JSON under a/ or animations/
50
+ }
51
+ }
52
+ }
53
+ if (!animationPath) {
54
+ animationPath = entries.find((k) => (k.startsWith('a/') || k.includes('/a/') || k.startsWith('animations/')) &&
55
+ k.endsWith('.json') &&
56
+ !k.endsWith('manifest.json'));
57
+ }
58
+ if (!animationPath) {
59
+ // Last resort: any non-manifest JSON
60
+ animationPath = entries.find((k) => k.endsWith('.json') && !k.endsWith('manifest.json'));
61
+ }
62
+ if (!animationPath)
63
+ return null;
64
+ const animBytes = files[animationPath];
65
+ if (!animBytes)
66
+ return null;
67
+ let json;
68
+ try {
69
+ json = JSON.parse(new TextDecoder().decode(animBytes));
70
+ }
71
+ catch {
72
+ return null;
73
+ }
74
+ const { width, height } = getLottieDimensions(json);
75
+ if (!width || !height)
76
+ return null;
77
+ // Opportunistic embedded still (not guaranteed to be frame 0).
78
+ const imageKey = entries.find((k) => /\.(png|jpe?g|webp)$/i.test(k));
79
+ let posterSrc;
80
+ if (imageKey) {
81
+ const imgBytes = files[imageKey];
82
+ if (imgBytes && imgBytes.byteLength > 0 && imgBytes.byteLength <= 100 * 1024) {
83
+ const ext = imageKey.split('.').pop()?.toLowerCase() ?? 'png';
84
+ const mime = ext === 'jpg' || ext === 'jpeg'
85
+ ? 'image/jpeg'
86
+ : ext === 'webp'
87
+ ? 'image/webp'
88
+ : 'image/png';
89
+ let binary = '';
90
+ const chunk = 0x8000;
91
+ for (let i = 0; i < imgBytes.length; i += chunk) {
92
+ binary += String.fromCharCode(...imgBytes.subarray(i, i + chunk));
93
+ }
94
+ posterSrc = `data:${mime};base64,${btoa(binary)}`;
95
+ }
96
+ }
97
+ return { width, height, posterSrc };
98
+ }
99
+ async function fetchCached(url, assetId) {
100
+ const response = await fetch(url, {
17
101
  cache: 'force-cache',
18
102
  next: {
19
103
  tags: [assetTag(assetId)],
20
104
  },
21
105
  });
22
- if (!response.ok) {
106
+ if (!response.ok)
107
+ return undefined;
108
+ return response;
109
+ }
110
+ /**
111
+ * Fetches a Lottie animation JSON and returns an optimised SVG placeholder
112
+ * capturing the animation's dimensions. Optionally sets a SVG data-URL poster.
113
+ */
114
+ async function enrichLottieJson(animationSrc, assetId) {
115
+ const response = await fetchCached(animationSrc, assetId);
116
+ if (!response)
23
117
  return undefined;
24
- }
25
118
  const json = (await response.json());
26
119
  const { width, height } = getLottieDimensions(json);
27
- if (!width || !height)
120
+ const optimised = optimisedFromDimensions(width, height);
121
+ if (!optimised)
122
+ return undefined;
123
+ return {
124
+ optimised,
125
+ posterSrc: posterDataUrlFromSvg(optimised.data),
126
+ };
127
+ }
128
+ /**
129
+ * Fetches a .lottie package, unzips it, reads dimensions from the primary animation JSON.
130
+ */
131
+ async function enrichDotLottie(animationSrc, assetId) {
132
+ const response = await fetchCached(animationSrc, assetId);
133
+ if (!response)
28
134
  return undefined;
29
- const data = `<svg width="${width}" height="${height}" viewBox="0 0 ${width} ${height}" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid meet" style="width: 100%; height: 100%"></svg>`;
30
- return { width, height, data };
135
+ const buffer = new Uint8Array(await response.arrayBuffer());
136
+ const dims = dimensionsFromDotLottieBuffer(buffer);
137
+ if (!dims)
138
+ return undefined;
139
+ const optimised = optimisedFromDimensions(dims.width, dims.height);
140
+ if (!optimised)
141
+ return undefined;
142
+ return {
143
+ optimised,
144
+ // Prefer embedded raster; otherwise transparent SVG with correct aspect.
145
+ posterSrc: dims.posterSrc ?? posterDataUrlFromSvg(optimised.data),
146
+ };
147
+ }
148
+ async function enrichOne(format, animationSrc, assetId) {
149
+ if (format === 'dotlottie') {
150
+ return enrichDotLottie(animationSrc, assetId);
151
+ }
152
+ return enrichLottieJson(animationSrc, assetId);
31
153
  }
32
154
  /**
33
- * Enriches all animation visuals in the assets Map with an optimised SVG
34
- * placeholder (dimensions + blank SVG) fetched from the Lottie JSON source.
35
- * Mutates animation.optimised in place so the value is available at render
36
- * time without requiring an async server component.
37
- *
38
- * @param assets - The Map<assetId, IVisual> built by convertAllAssets
155
+ * Enriches all animation visuals in the assets Map with dimensions (optimised SVG)
156
+ * and a posterSrc for the lazy shell / reduced-motion fallback.
157
+ * Mutates animation in place so values are available at render without async server components.
39
158
  */
40
159
  export async function enrichAnimationAssets(assets) {
41
160
  const animationEntries = Array.from(assets.entries()).filter(([, visual]) => visual.animation !== undefined);
@@ -43,13 +162,15 @@ export async function enrichAnimationAssets(assets) {
43
162
  return;
44
163
  await Promise.all(animationEntries.map(async ([assetId, visual]) => {
45
164
  try {
46
- const optimised = await fetchLottieOptimisedSvg(visual.animation.animationSrc, assetId);
47
- if (optimised) {
48
- visual.animation.optimised = optimised;
165
+ const format = visual.animation.format ?? 'lottie-json';
166
+ const result = await enrichOne(format, visual.animation.animationSrc, assetId);
167
+ if (result) {
168
+ visual.animation.optimised = result.optimised;
169
+ visual.animation.posterSrc = result.posterSrc;
49
170
  }
50
171
  }
51
172
  catch {
52
- // Leave optimised undefined — AnimationComponent handles the missing case gracefully
173
+ // Leave optimised/poster undefined — LazyAnimation handles missing case gracefully
53
174
  }
54
175
  }));
55
176
  }
@@ -1 +1 @@
1
- {"version":3,"file":"animationEnricher.js","sourceRoot":"","sources":["../../src/converters/animationEnricher.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAShD,SAAS,mBAAmB,CAAC,UAA2B;IACtD,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,IAAI,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;IACtD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,uBAAuB,CACpC,YAAoB,EACpB,OAAe;IAEf,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,YAAY,EAAE;QACzC,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;SAC1B;KACa,CAAC,CAAC;IAElB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAoB,CAAC;IACxD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAExC,MAAM,IAAI,GAAG,eAAe,KAAK,aAAa,MAAM,kBAAkB,KAAK,IAAI,MAAM,mHAAmH,CAAC;IACzM,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACjC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,MAA4B;IACtE,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAC1D,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CACS,CAAC;IAE1D,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAE1C,MAAM,OAAO,CAAC,GAAG,CACf,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE;QAC/C,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACxF,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,CAAC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;YACzC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qFAAqF;QACvF,CAAC;IACH,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"animationEnricher.js","sourceRoot":"","sources":["../../src/converters/animationEnricher.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,14 @@
1
- import type { IAnimation, IImage, IResponsiveVisual, IVideo, IVisual } from '@se-studio/core-data-types';
2
- import type { Asset, Entry, UnresolvedLink } from 'contentful';
1
+ import type { AnimationFormat, IAnimation, IImage, IResponsiveVisual, IVideo, IVisual } from '@se-studio/core-data-types';
2
+ import type { Asset, AssetFile, Entry, UnresolvedLink } from 'contentful';
3
3
  import type { DefaultChainModifier } from '../api';
4
4
  import type { BaseExternalVideoSkeleton } from '../baseTypes/baseExternalVideo';
5
5
  import type { BaseMediaSkeleton } from '../baseTypes/baseMedia';
6
6
  import type { BaseConverterContext, ConverterContext } from './helpers';
7
+ /**
8
+ * Extension-first animation format (MIME is unreliable for `.lottie` uploads).
9
+ * Wrong extension ⇒ wrong player by design.
10
+ */
11
+ export declare function animationFormatFromFile(file: AssetFile): AnimationFormat | undefined;
7
12
  export declare function convertAssetToVisual(context: BaseConverterContext, asset?: Asset<DefaultChainModifier, string>, options?: Partial<IImage> | Partial<IVideo> | Partial<IAnimation>): IVisual | undefined;
8
13
  export declare function createResponsiveVisual(visual: IVisual | undefined, mobileVisual: IVisual | undefined): IResponsiveVisual | undefined;
9
14
  export declare const HIDE_MOBILE_BACKGROUND_FLAG = "Hide mobile background";
@@ -1 +1 @@
1
- {"version":3,"file":"asset.d.ts","sourceRoot":"","sources":["../../src/converters/asset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,MAAM,EAEN,iBAAiB,EAEjB,MAAM,EAEN,OAAO,EACR,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,KAAK,EAAoC,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AACnD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AASxE,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,oBAAoB,EAC7B,KAAK,CAAC,EAAE,KAAK,CAAC,oBAAoB,EAAE,MAAM,CAAC,EAC3C,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,GAChE,OAAO,GAAG,SAAS,CA8DrB;AAyID,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,OAAO,GAAG,SAAS,EAC3B,YAAY,EAAE,OAAO,GAAG,SAAS,GAChC,iBAAiB,GAAG,SAAS,CAM/B;AAED,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AAEpE;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,gBAAgB,EAAE,iBAAiB,GAAG,SAAS,EAC/C,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAC/B,iBAAiB,GAAG,SAAS,CAO/B;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,KAAK,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,CAAC,GAC5D,OAAO,GAAG,SAAS,CA6ErB;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,KAAK,CAAC,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,CAAC,GACpE,OAAO,GAAG,SAAS,CA+CrB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,SAAS,GACxC,OAAO,GAAG,SAAS,CA2BrB"}
1
+ {"version":3,"file":"asset.d.ts","sourceRoot":"","sources":["../../src/converters/asset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,MAAM,EAEN,iBAAiB,EAEjB,MAAM,EAEN,OAAO,EACR,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,KAAK,EAAe,SAAS,EAAY,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AACnD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AASxE;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,SAAS,GAAG,eAAe,GAAG,SAAS,CAcpF;AAED,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,oBAAoB,EAC7B,KAAK,CAAC,EAAE,KAAK,CAAC,oBAAoB,EAAE,MAAM,CAAC,EAC3C,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,GAChE,OAAO,GAAG,SAAS,CAgErB;AA2ID,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,OAAO,GAAG,SAAS,EAC3B,YAAY,EAAE,OAAO,GAAG,SAAS,GAChC,iBAAiB,GAAG,SAAS,CAM/B;AAED,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AAEpE;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,gBAAgB,EAAE,iBAAiB,GAAG,SAAS,EAC/C,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAC/B,iBAAiB,GAAG,SAAS,CAO/B;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,KAAK,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,CAAC,GAC5D,OAAO,GAAG,SAAS,CA6ErB;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,KAAK,CAAC,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,CAAC,GACpE,OAAO,GAAG,SAAS,CA+CrB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,SAAS,GACxC,OAAO,GAAG,SAAS,CA2BrB"}
@@ -1,4 +1,23 @@
1
1
  import { buildDownloadAssetFromRawAsset, lookupAsset, makeContentfulDescription, makeContentfulTitle, stringOrUndefined, } from './helpers.js';
2
+ /**
3
+ * Extension-first animation format (MIME is unreliable for `.lottie` uploads).
4
+ * Wrong extension ⇒ wrong player by design.
5
+ */
6
+ export function animationFormatFromFile(file) {
7
+ const fileName = (file.fileName ?? '').toLowerCase();
8
+ const urlPath = (file.url ?? '').toLowerCase().split('?')[0] ?? '';
9
+ if (fileName.endsWith('.lottie') || urlPath.endsWith('.lottie')) {
10
+ return 'dotlottie';
11
+ }
12
+ if (fileName.endsWith('.json') || urlPath.endsWith('.json')) {
13
+ return 'lottie-json';
14
+ }
15
+ // Legacy: JSON Lottie often stored as application/json without a clear extension.
16
+ if (file.contentType === 'application/json') {
17
+ return 'lottie-json';
18
+ }
19
+ return undefined;
20
+ }
2
21
  export function convertAssetToVisual(context, asset, options) {
3
22
  if (!asset)
4
23
  return undefined;
@@ -30,8 +49,9 @@ export function convertAssetToVisual(context, asset, options) {
30
49
  video,
31
50
  };
32
51
  }
33
- if (contentType === 'application/json') {
34
- const animation = convertAssetToAnimation(file, fields, sys, options);
52
+ const animationFormat = animationFormatFromFile(file);
53
+ if (animationFormat) {
54
+ const animation = convertAssetToAnimation(file, fields, sys, animationFormat, options);
35
55
  if (!animation)
36
56
  return undefined;
37
57
  return {
@@ -52,7 +72,7 @@ export function convertAssetToVisual(context, asset, options) {
52
72
  }
53
73
  return undefined;
54
74
  }
55
- function convertAssetToAnimation(file, fields, sys, options) {
75
+ function convertAssetToAnimation(file, fields, sys, format, options) {
56
76
  const { id } = sys;
57
77
  const { title, description } = fields;
58
78
  const { url } = file;
@@ -62,6 +82,7 @@ function convertAssetToAnimation(file, fields, sys, options) {
62
82
  ...options,
63
83
  id,
64
84
  type: 'Animation',
85
+ format,
65
86
  animationSrc: `https:${url}`,
66
87
  name: makeContentfulTitle(title, id),
67
88
  description: stringOrUndefined(description),
@@ -1 +1 @@
1
- {"version":3,"file":"asset.js","sourceRoot":"","sources":["../../src/converters/asset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"asset.js","sourceRoot":"","sources":["../../src/converters/asset.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * create custom converters for your specific needs.
7
7
  */
8
8
  export type { IContentfulArticle, IContentfulArticleLink } from './article';
9
- export { createResponsiveVisual } from './asset';
9
+ export { animationFormatFromFile, createResponsiveVisual } from './asset';
10
10
  export type { IContentfulCollection } from './collection';
11
11
  export { baseCollectionConverter } from './collection';
12
12
  export type { IContentfulComponent } from './component';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/converters/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AACjD,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,YAAY,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,EACrB,WAAW,EACX,KAAK,cAAc,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,gCAAgC,EAChC,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/converters/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAC1E,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,YAAY,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,EACrB,WAAW,EACX,KAAK,cAAc,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,gCAAgC,EAChC,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC"}
@@ -5,7 +5,7 @@
5
5
  * to typed objects. Use the base converters and compose with enhancers to
6
6
  * create custom converters for your specific needs.
7
7
  */
8
- export { createResponsiveVisual } from './asset.js';
8
+ export { animationFormatFromFile, createResponsiveVisual } from './asset.js';
9
9
  export { baseCollectionConverter } from './collection.js';
10
10
  export { baseComponentConverter } from './component.js';
11
11
  export { baseDocumentConverter } from './document.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/converters/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAIL,WAAW,GAEZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,gCAAgC,EAChC,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/converters/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAE1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAIL,WAAW,GAEZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,gCAAgC,EAChC,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,uBAAuB,GACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@se-studio/contentful-rest-api",
3
- "version": "1.18.1",
3
+ "version": "1.19.0",
4
4
  "description": "Type-safe Contentful REST API client with caching and rate limiting for Next.js applications",
5
5
  "repository": {
6
6
  "type": "git",
@@ -60,8 +60,9 @@
60
60
  "dependencies": {
61
61
  "@contentful/rich-text-types": "^17.2.7",
62
62
  "contentful": "^11.12.7",
63
+ "fflate": "^0.8.3",
63
64
  "server-only": "0.0.1",
64
- "@se-studio/core-data-types": "1.7.1"
65
+ "@se-studio/core-data-types": "1.8.0"
65
66
  },
66
67
  "peerDependencies": {
67
68
  "next": ">=15.5.0 <16"