@giphy/js-util 5.1.0-beta.1 → 5.1.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/dist/index.cjs +0 -56
- package/dist/index.d.cts +1 -24
- package/dist/index.d.ts +1 -24
- package/dist/index.js +0 -44
- package/package.json +2 -4
- package/src/index.ts +0 -2
- package/dist/bestfit.d.ts +0 -18
- package/dist/bestfit.js +0 -61
- package/dist/bestfit.js.map +0 -1
- package/dist/collections.d.ts +0 -5
- package/dist/collections.js +0 -42
- package/dist/collections.js.map +0 -1
- package/dist/get-client-rect-from-el.d.ts +0 -6
- package/dist/get-client-rect-from-el.js +0 -42
- package/dist/get-client-rect-from-el.js.map +0 -1
- package/dist/get-pingback-id.d.ts +0 -2
- package/dist/get-pingback-id.js +0 -45
- package/dist/get-pingback-id.js.map +0 -1
- package/dist/gif-utils.d.ts +0 -23
- package/dist/gif-utils.js +0 -125
- package/dist/gif-utils.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/log.d.ts +0 -15
- package/dist/log.js +0 -65
- package/dist/log.js.map +0 -1
- package/dist/sdk-headers.d.ts +0 -5
- package/dist/sdk-headers.js +0 -19
- package/dist/sdk-headers.js.map +0 -1
- package/dist/webp-check.d.ts +0 -2
- package/dist/webp-check.js +0 -22
- package/dist/webp-check.js.map +0 -1
- package/src/construct-moat-data.ts +0 -44
- package/src/tracking-pixel.ts +0 -15
package/dist/index.cjs
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __create = Object.create;
|
|
3
2
|
var __defProp = Object.defineProperty;
|
|
4
3
|
var __defProps = Object.defineProperties;
|
|
5
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
5
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
7
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
8
7
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
9
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
10
8
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
11
9
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
12
10
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
@@ -34,14 +32,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
34
32
|
}
|
|
35
33
|
return to;
|
|
36
34
|
};
|
|
37
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
38
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
39
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
40
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
41
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
42
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
43
|
-
mod
|
|
44
|
-
));
|
|
45
35
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
46
36
|
|
|
47
37
|
// src/index.ts
|
|
@@ -53,7 +43,6 @@ __export(src_exports, {
|
|
|
53
43
|
appendGiphySDKRequestParam: () => appendGiphySDKRequestParam,
|
|
54
44
|
bestfit: () => bestfit_default,
|
|
55
45
|
checkIfWebP: () => checkIfWebP,
|
|
56
|
-
constructMoatData: () => constructMoatData,
|
|
57
46
|
forEach: () => forEach,
|
|
58
47
|
getAltText: () => getAltText,
|
|
59
48
|
getBestRendition: () => getBestRendition,
|
|
@@ -65,7 +54,6 @@ __export(src_exports, {
|
|
|
65
54
|
getGiphySDKRequestHeaders: () => getGiphySDKRequestHeaders,
|
|
66
55
|
getPingbackId: () => get_pingback_id_default,
|
|
67
56
|
getSpecificRendition: () => getSpecificRendition,
|
|
68
|
-
injectTrackingPixel: () => tracking_pixel_default,
|
|
69
57
|
mapValues: () => mapValues,
|
|
70
58
|
pick: () => pick,
|
|
71
59
|
setRenditionScaleUpMaxPixels: () => setRenditionScaleUpMaxPixels,
|
|
@@ -178,32 +166,6 @@ function pick(object, pick2) {
|
|
|
178
166
|
return res;
|
|
179
167
|
}
|
|
180
168
|
|
|
181
|
-
// src/construct-moat-data.ts
|
|
182
|
-
var constructMoatData = ({ tdata }) => {
|
|
183
|
-
var _a;
|
|
184
|
-
const [moatTrackerData] = ((_a = tdata == null ? void 0 : tdata.web) == null ? void 0 : _a.filter((tracker) => tracker.vendor === "Moat")) || [];
|
|
185
|
-
if (moatTrackerData == null ? void 0 : moatTrackerData.verificationParameters) {
|
|
186
|
-
const {
|
|
187
|
-
moatClientLevel1 = "_ADVERTISER_",
|
|
188
|
-
moatClientLevel2 = "_CAMPAIGN_",
|
|
189
|
-
moatClientLevel3 = "_LINE_ITEM_",
|
|
190
|
-
moatClientLevel4 = "_CREATIVE_",
|
|
191
|
-
moatClientSlicer1 = "_SITE_",
|
|
192
|
-
moatClientSlicer2 = "_PLACEMENT_",
|
|
193
|
-
zMoatPosition = "_POSITION_"
|
|
194
|
-
} = moatTrackerData.verificationParameters;
|
|
195
|
-
return {
|
|
196
|
-
moatClientLevel1,
|
|
197
|
-
moatClientLevel2,
|
|
198
|
-
moatClientLevel3,
|
|
199
|
-
moatClientLevel4,
|
|
200
|
-
moatClientSlicer1,
|
|
201
|
-
moatClientSlicer2,
|
|
202
|
-
zMoatPosition
|
|
203
|
-
};
|
|
204
|
-
}
|
|
205
|
-
};
|
|
206
|
-
|
|
207
169
|
// src/get-client-rect-from-el.ts
|
|
208
170
|
var getClientRect = (el) => {
|
|
209
171
|
let left = 0;
|
|
@@ -376,22 +338,6 @@ var appendGiphySDKRequestParam = (key, value) => {
|
|
|
376
338
|
var _a;
|
|
377
339
|
return (_a = getGiphySDKRequestHeaders()) == null ? void 0 : _a.set(key, value);
|
|
378
340
|
};
|
|
379
|
-
|
|
380
|
-
// src/tracking-pixel.ts
|
|
381
|
-
var import_dompurify = __toESM(require("dompurify"), 1);
|
|
382
|
-
var injectTrackingPixel = (tags = []) => {
|
|
383
|
-
tags.forEach((tag) => {
|
|
384
|
-
var _a;
|
|
385
|
-
const el = document.createElement("html");
|
|
386
|
-
tag = tag.replace("%%CACHEBUSTER%%", Date.now().toString());
|
|
387
|
-
el.innerHTML = import_dompurify.default.sanitize(tag);
|
|
388
|
-
const pixel = el.querySelector("img");
|
|
389
|
-
if (pixel) {
|
|
390
|
-
(_a = document == null ? void 0 : document.querySelector("head")) == null ? void 0 : _a.appendChild(pixel);
|
|
391
|
-
}
|
|
392
|
-
});
|
|
393
|
-
};
|
|
394
|
-
var tracking_pixel_default = injectTrackingPixel;
|
|
395
341
|
// Annotate the CommonJS export names for ESM import in node:
|
|
396
342
|
0 && (module.exports = {
|
|
397
343
|
LogLevel,
|
|
@@ -400,7 +346,6 @@ var tracking_pixel_default = injectTrackingPixel;
|
|
|
400
346
|
appendGiphySDKRequestParam,
|
|
401
347
|
bestfit,
|
|
402
348
|
checkIfWebP,
|
|
403
|
-
constructMoatData,
|
|
404
349
|
forEach,
|
|
405
350
|
getAltText,
|
|
406
351
|
getBestRendition,
|
|
@@ -412,7 +357,6 @@ var tracking_pixel_default = injectTrackingPixel;
|
|
|
412
357
|
getGiphySDKRequestHeaders,
|
|
413
358
|
getPingbackId,
|
|
414
359
|
getSpecificRendition,
|
|
415
|
-
injectTrackingPixel,
|
|
416
360
|
mapValues,
|
|
417
361
|
pick,
|
|
418
362
|
setRenditionScaleUpMaxPixels,
|
package/dist/index.d.cts
CHANGED
|
@@ -23,27 +23,6 @@ declare function take<T>(arr: T[], count?: number): T[];
|
|
|
23
23
|
declare function without<T>(arr: T[], values: T[]): T[];
|
|
24
24
|
declare function pick<T extends object, U extends keyof T>(object: T, pick: Array<U>): Pick<T, U>;
|
|
25
25
|
|
|
26
|
-
type MoatData = {
|
|
27
|
-
moatClientLevel1: string;
|
|
28
|
-
moatClientLevel2: string;
|
|
29
|
-
moatClientLevel3: string;
|
|
30
|
-
moatClientLevel4: string;
|
|
31
|
-
moatClientSlicer1: string;
|
|
32
|
-
moatClientSlicer2: string;
|
|
33
|
-
zMoatPosition: string;
|
|
34
|
-
zMoatSession?: string;
|
|
35
|
-
};
|
|
36
|
-
type Tracker = {
|
|
37
|
-
vendor: string;
|
|
38
|
-
verificationParameters: any;
|
|
39
|
-
};
|
|
40
|
-
type TData = {
|
|
41
|
-
web?: Tracker[];
|
|
42
|
-
};
|
|
43
|
-
declare const constructMoatData: ({ tdata }: {
|
|
44
|
-
tdata: TData;
|
|
45
|
-
}) => MoatData | undefined;
|
|
46
|
-
|
|
47
26
|
/**
|
|
48
27
|
* @param el HTMLElement
|
|
49
28
|
* @returns calculated properties of DOMReact
|
|
@@ -95,8 +74,6 @@ declare const getGiphySDKRequestHeaders: () => Headers | undefined;
|
|
|
95
74
|
declare const appendGiphySDKRequestHeader: (key: GiphySDKRequestHeader, value: string) => void | undefined;
|
|
96
75
|
declare const appendGiphySDKRequestParam: (key: GiphySDKRequestHeader, value: string) => void | undefined;
|
|
97
76
|
|
|
98
|
-
declare const injectTrackingPixel: (tags?: string[]) => void;
|
|
99
|
-
|
|
100
77
|
declare const checkIfWebP: Promise<unknown>;
|
|
101
78
|
|
|
102
|
-
export { LogLevel, Logger, appendGiphySDKRequestHeader, appendGiphySDKRequestParam, bestfit, checkIfWebP,
|
|
79
|
+
export { LogLevel, Logger, appendGiphySDKRequestHeader, appendGiphySDKRequestParam, bestfit, checkIfWebP, forEach, getAltText, getBestRendition, getBestRenditionUrl, getBestVideo, getClientRect, getGifHeight, getGifWidth, getGiphySDKRequestHeaders, getPingbackId, getSpecificRendition, mapValues, pick, setRenditionScaleUpMaxPixels, take, without };
|
package/dist/index.d.ts
CHANGED
|
@@ -23,27 +23,6 @@ declare function take<T>(arr: T[], count?: number): T[];
|
|
|
23
23
|
declare function without<T>(arr: T[], values: T[]): T[];
|
|
24
24
|
declare function pick<T extends object, U extends keyof T>(object: T, pick: Array<U>): Pick<T, U>;
|
|
25
25
|
|
|
26
|
-
type MoatData = {
|
|
27
|
-
moatClientLevel1: string;
|
|
28
|
-
moatClientLevel2: string;
|
|
29
|
-
moatClientLevel3: string;
|
|
30
|
-
moatClientLevel4: string;
|
|
31
|
-
moatClientSlicer1: string;
|
|
32
|
-
moatClientSlicer2: string;
|
|
33
|
-
zMoatPosition: string;
|
|
34
|
-
zMoatSession?: string;
|
|
35
|
-
};
|
|
36
|
-
type Tracker = {
|
|
37
|
-
vendor: string;
|
|
38
|
-
verificationParameters: any;
|
|
39
|
-
};
|
|
40
|
-
type TData = {
|
|
41
|
-
web?: Tracker[];
|
|
42
|
-
};
|
|
43
|
-
declare const constructMoatData: ({ tdata }: {
|
|
44
|
-
tdata: TData;
|
|
45
|
-
}) => MoatData | undefined;
|
|
46
|
-
|
|
47
26
|
/**
|
|
48
27
|
* @param el HTMLElement
|
|
49
28
|
* @returns calculated properties of DOMReact
|
|
@@ -95,8 +74,6 @@ declare const getGiphySDKRequestHeaders: () => Headers | undefined;
|
|
|
95
74
|
declare const appendGiphySDKRequestHeader: (key: GiphySDKRequestHeader, value: string) => void | undefined;
|
|
96
75
|
declare const appendGiphySDKRequestParam: (key: GiphySDKRequestHeader, value: string) => void | undefined;
|
|
97
76
|
|
|
98
|
-
declare const injectTrackingPixel: (tags?: string[]) => void;
|
|
99
|
-
|
|
100
77
|
declare const checkIfWebP: Promise<unknown>;
|
|
101
78
|
|
|
102
|
-
export { LogLevel, Logger, appendGiphySDKRequestHeader, appendGiphySDKRequestParam, bestfit, checkIfWebP,
|
|
79
|
+
export { LogLevel, Logger, appendGiphySDKRequestHeader, appendGiphySDKRequestParam, bestfit, checkIfWebP, forEach, getAltText, getBestRendition, getBestRenditionUrl, getBestVideo, getClientRect, getGifHeight, getGifWidth, getGiphySDKRequestHeaders, getPingbackId, getSpecificRendition, mapValues, pick, setRenditionScaleUpMaxPixels, take, without };
|
package/dist/index.js
CHANGED
|
@@ -122,32 +122,6 @@ function pick(object, pick2) {
|
|
|
122
122
|
return res;
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
-
// src/construct-moat-data.ts
|
|
126
|
-
var constructMoatData = ({ tdata }) => {
|
|
127
|
-
var _a;
|
|
128
|
-
const [moatTrackerData] = ((_a = tdata == null ? void 0 : tdata.web) == null ? void 0 : _a.filter((tracker) => tracker.vendor === "Moat")) || [];
|
|
129
|
-
if (moatTrackerData == null ? void 0 : moatTrackerData.verificationParameters) {
|
|
130
|
-
const {
|
|
131
|
-
moatClientLevel1 = "_ADVERTISER_",
|
|
132
|
-
moatClientLevel2 = "_CAMPAIGN_",
|
|
133
|
-
moatClientLevel3 = "_LINE_ITEM_",
|
|
134
|
-
moatClientLevel4 = "_CREATIVE_",
|
|
135
|
-
moatClientSlicer1 = "_SITE_",
|
|
136
|
-
moatClientSlicer2 = "_PLACEMENT_",
|
|
137
|
-
zMoatPosition = "_POSITION_"
|
|
138
|
-
} = moatTrackerData.verificationParameters;
|
|
139
|
-
return {
|
|
140
|
-
moatClientLevel1,
|
|
141
|
-
moatClientLevel2,
|
|
142
|
-
moatClientLevel3,
|
|
143
|
-
moatClientLevel4,
|
|
144
|
-
moatClientSlicer1,
|
|
145
|
-
moatClientSlicer2,
|
|
146
|
-
zMoatPosition
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
|
-
};
|
|
150
|
-
|
|
151
125
|
// src/get-client-rect-from-el.ts
|
|
152
126
|
var getClientRect = (el) => {
|
|
153
127
|
let left = 0;
|
|
@@ -320,22 +294,6 @@ var appendGiphySDKRequestParam = (key, value) => {
|
|
|
320
294
|
var _a;
|
|
321
295
|
return (_a = getGiphySDKRequestHeaders()) == null ? void 0 : _a.set(key, value);
|
|
322
296
|
};
|
|
323
|
-
|
|
324
|
-
// src/tracking-pixel.ts
|
|
325
|
-
import DOMPurify from "dompurify";
|
|
326
|
-
var injectTrackingPixel = (tags = []) => {
|
|
327
|
-
tags.forEach((tag) => {
|
|
328
|
-
var _a;
|
|
329
|
-
const el = document.createElement("html");
|
|
330
|
-
tag = tag.replace("%%CACHEBUSTER%%", Date.now().toString());
|
|
331
|
-
el.innerHTML = DOMPurify.sanitize(tag);
|
|
332
|
-
const pixel = el.querySelector("img");
|
|
333
|
-
if (pixel) {
|
|
334
|
-
(_a = document == null ? void 0 : document.querySelector("head")) == null ? void 0 : _a.appendChild(pixel);
|
|
335
|
-
}
|
|
336
|
-
});
|
|
337
|
-
};
|
|
338
|
-
var tracking_pixel_default = injectTrackingPixel;
|
|
339
297
|
export {
|
|
340
298
|
LogLevel,
|
|
341
299
|
Logger,
|
|
@@ -343,7 +301,6 @@ export {
|
|
|
343
301
|
appendGiphySDKRequestParam,
|
|
344
302
|
bestfit_default as bestfit,
|
|
345
303
|
checkIfWebP,
|
|
346
|
-
constructMoatData,
|
|
347
304
|
forEach,
|
|
348
305
|
getAltText,
|
|
349
306
|
getBestRendition,
|
|
@@ -355,7 +312,6 @@ export {
|
|
|
355
312
|
getGiphySDKRequestHeaders,
|
|
356
313
|
get_pingback_id_default as getPingbackId,
|
|
357
314
|
getSpecificRendition,
|
|
358
|
-
tracking_pixel_default as injectTrackingPixel,
|
|
359
315
|
mapValues,
|
|
360
316
|
pick,
|
|
361
317
|
setRenditionScaleUpMaxPixels,
|
package/package.json
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"test:watch": "run -T jest --config ./jestconfig.js --watchAll"
|
|
10
10
|
},
|
|
11
11
|
"name": "@giphy/js-util",
|
|
12
|
-
"version": "5.1.0
|
|
12
|
+
"version": "5.1.0",
|
|
13
13
|
"description": "Shared giphy js utils",
|
|
14
14
|
"homepage": "https://github.com/Giphy/giphy-js/tree/master/packages/util",
|
|
15
15
|
"main": "dist/index.cjs",
|
|
@@ -34,12 +34,10 @@
|
|
|
34
34
|
"access": "public"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@giphy/js-types": "
|
|
38
|
-
"dompurify": "3.1.0",
|
|
37
|
+
"@giphy/js-types": "*",
|
|
39
38
|
"uuid": "^9.0.0"
|
|
40
39
|
},
|
|
41
40
|
"devDependencies": {
|
|
42
|
-
"@types/dompurify": "^2.0.4",
|
|
43
41
|
"@types/uuid": "^8.3.0",
|
|
44
42
|
"typescript": "^5.0.4"
|
|
45
43
|
}
|
package/src/index.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
export { default as bestfit, setRenditionScaleUpMaxPixels } from './bestfit'
|
|
2
2
|
export * from './collections'
|
|
3
|
-
export * from './construct-moat-data'
|
|
4
3
|
export { default as getClientRect } from './get-client-rect-from-el'
|
|
5
4
|
export { default as getPingbackId } from './get-pingback-id'
|
|
6
5
|
export {
|
|
@@ -14,5 +13,4 @@ export {
|
|
|
14
13
|
} from './gif-utils'
|
|
15
14
|
export * from './log'
|
|
16
15
|
export * from './sdk-headers'
|
|
17
|
-
export { default as injectTrackingPixel } from './tracking-pixel'
|
|
18
16
|
export { checkIfWebP } from './webp-check'
|
package/dist/bestfit.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { IRendition } from '@giphy/js-types';
|
|
2
|
-
export declare const setRenditionScaleUpMaxPixels: (pixels: number) => void;
|
|
3
|
-
/**
|
|
4
|
-
* Finds image rendition that best fits a given container preferring images
|
|
5
|
-
* ##### Note: all renditions are assumed to have the same aspect ratio
|
|
6
|
-
*
|
|
7
|
-
* When we have a portrait target and landscape gif, we choose a higher rendition to match
|
|
8
|
-
* the height of the portrait target, otherwise it's blurry (same applies for landscape to portrait)
|
|
9
|
-
*
|
|
10
|
-
* @name bestfit
|
|
11
|
-
* @function
|
|
12
|
-
* @param {Array.<Object>} renditions available image renditions each having a width and height property
|
|
13
|
-
* @param {Number} width
|
|
14
|
-
* @param {Number} height
|
|
15
|
-
* @param {Number} scaleUpMaxPixels the maximum pixels an asset should be scaled up
|
|
16
|
-
*/
|
|
17
|
-
declare function bestfit(renditions: Array<IRendition>, width: number, height: number, scaleUpMaxPixels?: number): IRendition;
|
|
18
|
-
export default bestfit;
|
package/dist/bestfit.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.setRenditionScaleUpMaxPixels = void 0;
|
|
4
|
-
var log_1 = require("./log");
|
|
5
|
-
var closestArea = function (width, height, renditions) {
|
|
6
|
-
var currentBest = Infinity;
|
|
7
|
-
var result;
|
|
8
|
-
// sort the renditions so we can avoid scaling up low resolutions
|
|
9
|
-
renditions.forEach(function (rendition) {
|
|
10
|
-
var widthPercentage = rendition.width / width;
|
|
11
|
-
var heightPercentage = rendition.height / height;
|
|
12
|
-
// a width percentage of 1 is exact, 2 is double, .5 half etc
|
|
13
|
-
var areaPercentage = widthPercentage * heightPercentage;
|
|
14
|
-
// img could be bigger or smaller
|
|
15
|
-
var testBest = Math.abs(1 - areaPercentage); // the closer to 0 the better
|
|
16
|
-
if (testBest < currentBest) {
|
|
17
|
-
currentBest = testBest;
|
|
18
|
-
result = rendition;
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
return result;
|
|
22
|
-
};
|
|
23
|
-
var SCALE_UP_MAX_PIXELS = 50;
|
|
24
|
-
var setRenditionScaleUpMaxPixels = function (pixels) {
|
|
25
|
-
log_1.Logger.debug("@giphy/js-util set rendition selection scale up max pixels to ".concat(pixels));
|
|
26
|
-
SCALE_UP_MAX_PIXELS = pixels;
|
|
27
|
-
};
|
|
28
|
-
exports.setRenditionScaleUpMaxPixels = setRenditionScaleUpMaxPixels;
|
|
29
|
-
/**
|
|
30
|
-
* Finds image rendition that best fits a given container preferring images
|
|
31
|
-
* ##### Note: all renditions are assumed to have the same aspect ratio
|
|
32
|
-
*
|
|
33
|
-
* When we have a portrait target and landscape gif, we choose a higher rendition to match
|
|
34
|
-
* the height of the portrait target, otherwise it's blurry (same applies for landscape to portrait)
|
|
35
|
-
*
|
|
36
|
-
* @name bestfit
|
|
37
|
-
* @function
|
|
38
|
-
* @param {Array.<Object>} renditions available image renditions each having a width and height property
|
|
39
|
-
* @param {Number} width
|
|
40
|
-
* @param {Number} height
|
|
41
|
-
* @param {Number} scaleUpMaxPixels the maximum pixels an asset should be scaled up
|
|
42
|
-
*/
|
|
43
|
-
function bestfit(renditions, width, height, scaleUpMaxPixels) {
|
|
44
|
-
if (scaleUpMaxPixels === void 0) { scaleUpMaxPixels = SCALE_UP_MAX_PIXELS; }
|
|
45
|
-
var largestRendition = renditions[0];
|
|
46
|
-
// filter out renditions that are smaller than the target width and height by scaleUpMaxPixels value
|
|
47
|
-
var testRenditions = renditions.filter(function (rendition) {
|
|
48
|
-
if (rendition.width * rendition.height > largestRendition.width * largestRendition.height) {
|
|
49
|
-
largestRendition = rendition;
|
|
50
|
-
}
|
|
51
|
-
return width - rendition.width <= scaleUpMaxPixels && height - rendition.height <= scaleUpMaxPixels;
|
|
52
|
-
});
|
|
53
|
-
// if all are too small, use the largest we have
|
|
54
|
-
if (testRenditions.length === 0) {
|
|
55
|
-
return largestRendition;
|
|
56
|
-
}
|
|
57
|
-
// find the closest area of the filtered renditions
|
|
58
|
-
return closestArea(width, height, testRenditions);
|
|
59
|
-
}
|
|
60
|
-
exports.default = bestfit;
|
|
61
|
-
//# sourceMappingURL=bestfit.js.map
|
package/dist/bestfit.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bestfit.js","sourceRoot":"","sources":["../src/bestfit.ts"],"names":[],"mappings":";;;AACA,6BAA8B;AAE9B,IAAM,WAAW,GAAG,UAAC,KAAa,EAAE,MAAc,EAAE,UAAwB;IACxE,IAAI,WAAW,GAAG,QAAQ,CAAA;IAC1B,IAAI,MAAkB,CAAA;IACtB,iEAAiE;IACjE,UAAU,CAAC,OAAO,CAAC,UAAC,SAAqB;QACrC,IAAM,eAAe,GAAG,SAAS,CAAC,KAAK,GAAG,KAAK,CAAA;QAC/C,IAAM,gBAAgB,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,CAAA;QAClD,6DAA6D;QAC7D,IAAM,cAAc,GAAG,eAAe,GAAG,gBAAgB,CAAA;QACzD,iCAAiC;QACjC,IAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,cAAc,CAAC,CAAA,CAAC,6BAA6B;QAC3E,IAAI,QAAQ,GAAG,WAAW,EAAE;YACxB,WAAW,GAAG,QAAQ,CAAA;YACtB,MAAM,GAAG,SAAS,CAAA;SACrB;IACL,CAAC,CAAC,CAAA;IACF,OAAO,MAAO,CAAA;AAClB,CAAC,CAAA;AAED,IAAI,mBAAmB,GAAG,EAAE,CAAA;AACrB,IAAM,4BAA4B,GAAG,UAAC,MAAc;IACvD,YAAM,CAAC,KAAK,CAAC,wEAAiE,MAAM,CAAE,CAAC,CAAA;IACvF,mBAAmB,GAAG,MAAM,CAAA;AAChC,CAAC,CAAA;AAHY,QAAA,4BAA4B,gCAGxC;AACD;;;;;;;;;;;;;GAaG;AACH,SAAS,OAAO,CACZ,UAA6B,EAC7B,KAAa,EACb,MAAc,EACd,gBAA8C;IAA9C,iCAAA,EAAA,sCAA8C;IAEzC,IAAA,gBAAgB,GAAI,UAAU,GAAd,CAAc;IACnC,oGAAoG;IACpG,IAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,UAAA,SAAS;QAC9C,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE;YACvF,gBAAgB,GAAG,SAAS,CAAA;SAC/B;QACD,OAAO,KAAK,GAAG,SAAS,CAAC,KAAK,IAAI,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAAC,MAAM,IAAI,gBAAgB,CAAA;IACvG,CAAC,CAAC,CAAA;IACF,gDAAgD;IAChD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;QAC7B,OAAO,gBAAgB,CAAA;KAC1B;IACD,mDAAmD;IACnD,OAAO,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,CAAA;AACrD,CAAC;AAED,kBAAe,OAAO,CAAA"}
|
package/dist/collections.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export declare function mapValues(object: any, mapFn: (val: any, key: string) => any): any;
|
|
2
|
-
export declare function forEach(object: any, mapFn: (val: any, key: any) => void): void;
|
|
3
|
-
export declare function take<T>(arr: T[], count?: number): T[];
|
|
4
|
-
export declare function without<T>(arr: T[], values: T[]): T[];
|
|
5
|
-
export declare function pick<T extends object, U extends keyof T>(object: T, pick: Array<U>): Pick<T, U>;
|
package/dist/collections.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.pick = exports.without = exports.take = exports.forEach = exports.mapValues = void 0;
|
|
4
|
-
function mapValues(object, mapFn) {
|
|
5
|
-
if (Array.isArray(object)) {
|
|
6
|
-
throw "This map is just for objects, just use array.map for arrays";
|
|
7
|
-
}
|
|
8
|
-
return Object.keys(object).reduce(function (result, key) {
|
|
9
|
-
result[key] = mapFn(object[key], key);
|
|
10
|
-
return result;
|
|
11
|
-
}, {});
|
|
12
|
-
}
|
|
13
|
-
exports.mapValues = mapValues;
|
|
14
|
-
function forEach(object, mapFn) {
|
|
15
|
-
if (Array.isArray(object)) {
|
|
16
|
-
throw "This map is just for objects, just use array.forEach for arrays";
|
|
17
|
-
}
|
|
18
|
-
return Object.keys(object).forEach(function (key) {
|
|
19
|
-
mapFn(object[key], key);
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
exports.forEach = forEach;
|
|
23
|
-
function take(arr, count) {
|
|
24
|
-
if (count === void 0) { count = 0; }
|
|
25
|
-
return arr.slice(0, count);
|
|
26
|
-
}
|
|
27
|
-
exports.take = take;
|
|
28
|
-
function without(arr, values) {
|
|
29
|
-
return arr.filter(function (val) { return values.indexOf(val) === -1; });
|
|
30
|
-
}
|
|
31
|
-
exports.without = without;
|
|
32
|
-
function pick(object, pick) {
|
|
33
|
-
var res = {};
|
|
34
|
-
pick.forEach(function (key) {
|
|
35
|
-
if (object[key] !== undefined) {
|
|
36
|
-
res[key] = object[key];
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
return res;
|
|
40
|
-
}
|
|
41
|
-
exports.pick = pick;
|
|
42
|
-
//# sourceMappingURL=collections.js.map
|
package/dist/collections.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"collections.js","sourceRoot":"","sources":["../src/collections.ts"],"names":[],"mappings":";;;AAAA,SAAgB,SAAS,CAAC,MAAW,EAAE,KAAqC;IACxE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACvB,MAAM,6DAA6D,CAAA;KACtE;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,UAAC,MAAW,EAAE,GAAW;QACvD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;QACrC,OAAO,MAAM,CAAA;IACjB,CAAC,EAAE,EAAE,CAAC,CAAA;AACV,CAAC;AARD,8BAQC;AAED,SAAgB,OAAO,CAAC,MAAW,EAAE,KAAmC;IACpE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACvB,MAAM,iEAAiE,CAAA;KAC1E;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,GAAW;QAC3C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;AACN,CAAC;AAPD,0BAOC;AAED,SAAgB,IAAI,CAAI,GAAQ,EAAE,KAAS;IAAT,sBAAA,EAAA,SAAS;IACvC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;AAC9B,CAAC;AAFD,oBAEC;AAED,SAAgB,OAAO,CAAI,GAAQ,EAAE,MAAW;IAC5C,OAAO,GAAG,CAAC,MAAM,CAAC,UAAA,GAAG,IAAI,OAAA,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAA1B,CAA0B,CAAC,CAAA;AACxD,CAAC;AAFD,0BAEC;AAED,SAAgB,IAAI,CAAsC,MAAS,EAAE,IAAc;IAC/E,IAAM,GAAG,GAAe,EAAE,CAAA;IAC1B,IAAI,CAAC,OAAO,CAAC,UAAC,GAAM;QAChB,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;YAC3B,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;SACzB;IACL,CAAC,CAAC,CAAA;IACF,OAAO,GAAiB,CAAA;AAC5B,CAAC;AARD,oBAQC"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
/**
|
|
15
|
-
* @param el HTMLElement
|
|
16
|
-
* @returns calculated properties of DOMReact
|
|
17
|
-
*/
|
|
18
|
-
var getClientRect = function (el) {
|
|
19
|
-
var left = 0;
|
|
20
|
-
var top = 0;
|
|
21
|
-
var width = el.offsetWidth;
|
|
22
|
-
var height = el.offsetHeight;
|
|
23
|
-
// no layout thrash
|
|
24
|
-
do {
|
|
25
|
-
left += el.offsetLeft;
|
|
26
|
-
top += el.offsetTop;
|
|
27
|
-
el = el.offsetParent;
|
|
28
|
-
} while (el);
|
|
29
|
-
var result = {
|
|
30
|
-
left: left,
|
|
31
|
-
top: top,
|
|
32
|
-
width: width,
|
|
33
|
-
height: height,
|
|
34
|
-
right: left + width,
|
|
35
|
-
bottom: top + height,
|
|
36
|
-
x: left,
|
|
37
|
-
y: top,
|
|
38
|
-
};
|
|
39
|
-
return __assign(__assign({}, result), { toJSON: function () { return JSON.stringify(result); } });
|
|
40
|
-
};
|
|
41
|
-
exports.default = getClientRect;
|
|
42
|
-
//# sourceMappingURL=get-client-rect-from-el.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-client-rect-from-el.js","sourceRoot":"","sources":["../src/get-client-rect-from-el.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;;;GAGG;AACH,IAAM,aAAa,GAAG,UAAC,EAAe;IAClC,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,IAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAA;IAC5B,IAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAA;IAC9B,mBAAmB;IACnB,GAAG;QACC,IAAI,IAAI,EAAE,CAAC,UAAU,CAAA;QACrB,GAAG,IAAI,EAAE,CAAC,SAAS,CAAA;QACnB,EAAE,GAAG,EAAE,CAAC,YAA2B,CAAA;KACtC,QAAQ,EAAE,EAAC;IACZ,IAAM,MAAM,GAAG;QACX,IAAI,MAAA;QACJ,GAAG,KAAA;QACH,KAAK,OAAA;QACL,MAAM,QAAA;QACN,KAAK,EAAE,IAAI,GAAG,KAAK;QACnB,MAAM,EAAE,GAAG,GAAG,MAAM;QACpB,CAAC,EAAE,IAAI;QACP,CAAC,EAAE,GAAG;KACT,CAAA;IACD,6BAAY,MAAM,KAAE,MAAM,EAAE,cAAM,OAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAtB,CAAsB,IAAE;AAC9D,CAAC,CAAA;AAED,kBAAe,aAAa,CAAA"}
|
package/dist/get-pingback-id.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var uuid_1 = require("uuid");
|
|
4
|
-
var pingbackId = '';
|
|
5
|
-
var idLength = 16;
|
|
6
|
-
/* istanbul ignore next */
|
|
7
|
-
var noUUIDRandom = function () {
|
|
8
|
-
var result = '';
|
|
9
|
-
var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
|
10
|
-
var charactersLength = characters.length;
|
|
11
|
-
for (var i = 0; i < idLength; i++) {
|
|
12
|
-
result += characters.charAt(Math.floor(Math.random() * charactersLength));
|
|
13
|
-
}
|
|
14
|
-
return result;
|
|
15
|
-
};
|
|
16
|
-
var getPingbackId = function () {
|
|
17
|
-
// it exists in memory
|
|
18
|
-
if (!pingbackId) {
|
|
19
|
-
try {
|
|
20
|
-
// it exists in storage
|
|
21
|
-
pingbackId = sessionStorage.getItem('giphyPingbackId');
|
|
22
|
-
}
|
|
23
|
-
catch (_) { }
|
|
24
|
-
if (!pingbackId) {
|
|
25
|
-
// we need to create it
|
|
26
|
-
var hexTime = new Date().getTime().toString(16); // was told to mimic what we had
|
|
27
|
-
try {
|
|
28
|
-
// React Native doesn't support uuid without a polyfill
|
|
29
|
-
pingbackId = "".concat(hexTime).concat((0, uuid_1.v4)().replace(/-/g, '')).substring(0, idLength); // 16 character max
|
|
30
|
-
}
|
|
31
|
-
catch (error) {
|
|
32
|
-
/* istanbul ignore next */
|
|
33
|
-
pingbackId = noUUIDRandom();
|
|
34
|
-
}
|
|
35
|
-
try {
|
|
36
|
-
// save in storage
|
|
37
|
-
sessionStorage.setItem('giphyPingbackId', pingbackId);
|
|
38
|
-
}
|
|
39
|
-
catch (_) { }
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return pingbackId;
|
|
43
|
-
};
|
|
44
|
-
exports.default = getPingbackId;
|
|
45
|
-
//# sourceMappingURL=get-pingback-id.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-pingback-id.js","sourceRoot":"","sources":["../src/get-pingback-id.ts"],"names":[],"mappings":";;AAAA,6BAAiC;AACjC,IAAI,UAAU,GAAG,EAAE,CAAA;AAEnB,IAAM,QAAQ,GAAG,EAAE,CAAA;AAEnB,0BAA0B;AAC1B,IAAM,YAAY,GAAG;IACjB,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAM,UAAU,GAAG,gEAAgE,CAAA;IACnF,IAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CAAA;IAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;QAC/B,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAA;KAC5E;IACD,OAAO,MAAM,CAAA;AACjB,CAAC,CAAA;AACD,IAAM,aAAa,GAAG;IAClB,sBAAsB;IACtB,IAAI,CAAC,UAAU,EAAE;QACb,IAAI;YACA,uBAAuB;YACvB,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAW,CAAA;SACnE;QAAC,OAAO,CAAC,EAAE,GAAE;QACd,IAAI,CAAC,UAAU,EAAE;YACb,uBAAuB;YACvB,IAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA,CAAC,gCAAgC;YAClF,IAAI;gBACA,uDAAuD;gBACvD,UAAU,GAAG,UAAG,OAAO,SAAG,IAAA,SAAI,GAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAE,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA,CAAC,mBAAmB;aAClG;YAAC,OAAO,KAAK,EAAE;gBACZ,0BAA0B;gBAC1B,UAAU,GAAG,YAAY,EAAE,CAAA;aAC9B;YACD,IAAI;gBACA,kBAAkB;gBAClB,cAAc,CAAC,OAAO,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAA;aACxD;YAAC,OAAO,CAAC,EAAE,GAAE;SACjB;KACJ;IACD,OAAO,UAAU,CAAA;AACrB,CAAC,CAAA;AAED,kBAAe,aAAa,CAAA"}
|
package/dist/gif-utils.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { IGif, IImage, IImages, IRendition } from '@giphy/js-types';
|
|
2
|
-
export declare const getSpecificRendition: ({ images, is_sticker: isSticker }: IGif, renditionLabel: string, isStill?: boolean, useVideo?: boolean) => string;
|
|
3
|
-
interface IRenditionWithName extends IRendition {
|
|
4
|
-
renditionName: keyof IImages;
|
|
5
|
-
}
|
|
6
|
-
export declare const getBestVideo: (video: IGif['video'], width: number, height: number) => IImage | undefined;
|
|
7
|
-
export declare const getBestRendition: (images: IImages, gifWidth: number, gifHeight: number, scaleUpMaxPixels?: number) => IRenditionWithName;
|
|
8
|
-
type Options = {
|
|
9
|
-
isStill?: boolean;
|
|
10
|
-
useVideo?: boolean;
|
|
11
|
-
scaleUpMaxPixels?: number;
|
|
12
|
-
};
|
|
13
|
-
export declare const getBestRenditionUrl: ({ images, video, type }: IGif, gifWidth: number, gifHeight: number, options?: Options) => keyof IImages | '';
|
|
14
|
-
export declare const getGifHeight: ({ images }: IGif, gifWidth: number) => number;
|
|
15
|
-
export declare const getGifWidth: ({ images }: IGif, gifHeight: number) => number;
|
|
16
|
-
/**
|
|
17
|
-
* GIF Text - Alt Text: Generates alt text for
|
|
18
|
-
* GIF images based on username and tags.
|
|
19
|
-
* @prop {Gif}
|
|
20
|
-
* @return {String} GIF alt text.
|
|
21
|
-
*/
|
|
22
|
-
export declare const getAltText: ({ alt_text, user, tags, is_sticker, title }: IGif) => string;
|
|
23
|
-
export {};
|
package/dist/gif-utils.js
DELETED
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.getAltText = exports.getGifWidth = exports.getGifHeight = exports.getBestRenditionUrl = exports.getBestRendition = exports.getBestVideo = exports.getSpecificRendition = void 0;
|
|
18
|
-
var bestfit_1 = __importDefault(require("./bestfit"));
|
|
19
|
-
var collections_1 = require("./collections");
|
|
20
|
-
var webp_check_1 = require("./webp-check");
|
|
21
|
-
var getSpecificRendition = function (_a, renditionLabel, isStill, useVideo) {
|
|
22
|
-
var images = _a.images, isSticker = _a.is_sticker;
|
|
23
|
-
if (isStill === void 0) { isStill = false; }
|
|
24
|
-
if (useVideo === void 0) { useVideo = false; }
|
|
25
|
-
if (!images || !renditionLabel)
|
|
26
|
-
return '';
|
|
27
|
-
isStill = isStill && !useVideo;
|
|
28
|
-
// @ts-ignore come back to this
|
|
29
|
-
var rendition = images["".concat(renditionLabel).concat(isStill ? '_still' : '')];
|
|
30
|
-
if (rendition) {
|
|
31
|
-
if (isSticker || isStill) {
|
|
32
|
-
return rendition.url;
|
|
33
|
-
}
|
|
34
|
-
var webP = webp_check_1.SUPPORTS_WEBP && rendition.webp;
|
|
35
|
-
return useVideo ? rendition.mp4 : webP || rendition.url;
|
|
36
|
-
}
|
|
37
|
-
return '';
|
|
38
|
-
};
|
|
39
|
-
exports.getSpecificRendition = getSpecificRendition;
|
|
40
|
-
var getBestVideo = function (video, width, height) {
|
|
41
|
-
var assets = video === null || video === void 0 ? void 0 : video.assets;
|
|
42
|
-
if (assets) {
|
|
43
|
-
assets = __assign({}, assets);
|
|
44
|
-
// @ts-ignore we don't show source according to the existing code
|
|
45
|
-
delete assets.source;
|
|
46
|
-
var filteredAssets = Object.values(assets).sort(function (a, b) { return a.width - b.width; });
|
|
47
|
-
return (0, bestfit_1.default)(filteredAssets, width, height);
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
exports.getBestVideo = getBestVideo;
|
|
51
|
-
var getRenditions = function (type, images, video) {
|
|
52
|
-
return type === 'video' && video && video.previews && !Object.keys(images).length ? video.previews : images;
|
|
53
|
-
};
|
|
54
|
-
var getBestRendition = function (images, gifWidth, gifHeight, scaleUpMaxPixels) {
|
|
55
|
-
var checkRenditions = (0, collections_1.pick)(images, [
|
|
56
|
-
'original',
|
|
57
|
-
'fixed_width',
|
|
58
|
-
'fixed_height',
|
|
59
|
-
'fixed_width_small',
|
|
60
|
-
'fixed_height_small',
|
|
61
|
-
]);
|
|
62
|
-
var testImages = Object.entries(checkRenditions).map(function (_a) {
|
|
63
|
-
var renditionName = _a[0], val = _a[1];
|
|
64
|
-
return (__assign({ renditionName: renditionName }, val));
|
|
65
|
-
});
|
|
66
|
-
return (0, bestfit_1.default)(testImages, gifWidth, gifHeight, scaleUpMaxPixels);
|
|
67
|
-
};
|
|
68
|
-
exports.getBestRendition = getBestRendition;
|
|
69
|
-
var getBestRenditionUrl = function (_a, gifWidth, gifHeight, options) {
|
|
70
|
-
var images = _a.images, video = _a.video, type = _a.type;
|
|
71
|
-
if (options === void 0) { options = { isStill: false, useVideo: false }; }
|
|
72
|
-
if (!gifWidth || !gifHeight || !images)
|
|
73
|
-
return '';
|
|
74
|
-
var useVideo = options.useVideo, isStill = options.isStill, scaleUpMaxPixels = options.scaleUpMaxPixels;
|
|
75
|
-
var renditions = getRenditions(type, images, video);
|
|
76
|
-
var renditionName = (0, exports.getBestRendition)(renditions, gifWidth, gifHeight, scaleUpMaxPixels).renditionName;
|
|
77
|
-
// still, video, webp or gif
|
|
78
|
-
var key = "".concat(renditionName).concat(isStill && !useVideo ? '_still' : '');
|
|
79
|
-
var rendition = renditions[key];
|
|
80
|
-
var match = useVideo ? rendition.mp4 : webp_check_1.SUPPORTS_WEBP && rendition.webp ? rendition.webp : rendition.url;
|
|
81
|
-
return (match || '');
|
|
82
|
-
};
|
|
83
|
-
exports.getBestRenditionUrl = getBestRenditionUrl;
|
|
84
|
-
var getGifHeight = function (_a, gifWidth) {
|
|
85
|
-
var images = _a.images;
|
|
86
|
-
var fixed_width = images.fixed_width;
|
|
87
|
-
if (fixed_width) {
|
|
88
|
-
var width = fixed_width.width, height = fixed_width.height;
|
|
89
|
-
var aspectRatio = width / height;
|
|
90
|
-
return Math.round(gifWidth / aspectRatio);
|
|
91
|
-
}
|
|
92
|
-
return 0;
|
|
93
|
-
};
|
|
94
|
-
exports.getGifHeight = getGifHeight;
|
|
95
|
-
var getGifWidth = function (_a, gifHeight) {
|
|
96
|
-
var images = _a.images;
|
|
97
|
-
var fixed_width = images.fixed_width;
|
|
98
|
-
if (fixed_width) {
|
|
99
|
-
var width = fixed_width.width, height = fixed_width.height;
|
|
100
|
-
var aspectRatio = width / height;
|
|
101
|
-
return Math.round(gifHeight * aspectRatio);
|
|
102
|
-
}
|
|
103
|
-
return 0;
|
|
104
|
-
};
|
|
105
|
-
exports.getGifWidth = getGifWidth;
|
|
106
|
-
/**
|
|
107
|
-
* GIF Text - Alt Text: Generates alt text for
|
|
108
|
-
* GIF images based on username and tags.
|
|
109
|
-
* @prop {Gif}
|
|
110
|
-
* @return {String} GIF alt text.
|
|
111
|
-
*/
|
|
112
|
-
var getAltText = function (_a) {
|
|
113
|
-
var alt_text = _a.alt_text, user = _a.user, _b = _a.tags, tags = _b === void 0 ? [] : _b, _c = _a.is_sticker, is_sticker = _c === void 0 ? false : _c, _d = _a.title, title = _d === void 0 ? '' : _d;
|
|
114
|
-
if (alt_text) {
|
|
115
|
-
return alt_text;
|
|
116
|
-
}
|
|
117
|
-
if (title) {
|
|
118
|
-
return title;
|
|
119
|
-
}
|
|
120
|
-
var username = (user && user.username) || '';
|
|
121
|
-
var filteredTags = (0, collections_1.take)((0, collections_1.without)(tags, ['transparent']), username ? 4 : 5);
|
|
122
|
-
return "".concat(username ? "".concat(username, " ") : "").concat(filteredTags.join(' '), " ").concat(is_sticker ? 'Sticker' : 'GIF');
|
|
123
|
-
};
|
|
124
|
-
exports.getAltText = getAltText;
|
|
125
|
-
//# sourceMappingURL=gif-utils.js.map
|
package/dist/gif-utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gif-utils.js","sourceRoot":"","sources":["../src/gif-utils.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,qCAA4E;AAAnE,mHAAA,OAAO,OAAW;AAAE,uHAAA,4BAA4B,OAAA;AACzD,gDAA6B;AAC7B,qEAAoE;AAA3D,yIAAA,OAAO,OAAiB;AACjC,qDAA4D;AAAnD,iIAAA,OAAO,OAAiB;AACjC,yCAQoB;AAPhB,uGAAA,UAAU,OAAA;AACV,6GAAA,gBAAgB,OAAA;AAChB,gHAAA,mBAAmB,OAAA;AACnB,yGAAA,YAAY,OAAA;AACZ,yGAAA,YAAY,OAAA;AACZ,wGAAA,WAAW,OAAA;AACX,iHAAA,oBAAoB,OAAA;AAExB,wCAAqB;AACrB,gDAA6B;AAC7B,2CAA0C;AAAjC,yGAAA,WAAW,OAAA"}
|
package/dist/log.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export declare enum LogLevel {
|
|
2
|
-
DEBUG = 0,
|
|
3
|
-
INFO = 1,
|
|
4
|
-
WARN = 2,
|
|
5
|
-
ERROR = 3
|
|
6
|
-
}
|
|
7
|
-
export declare const Logger: {
|
|
8
|
-
ENABLED: boolean;
|
|
9
|
-
LEVEL: number;
|
|
10
|
-
PREFIX: string;
|
|
11
|
-
debug: (...msg: any) => void;
|
|
12
|
-
info: (...msg: any) => void;
|
|
13
|
-
warn: (...msg: any) => void;
|
|
14
|
-
error: (...msg: any) => void;
|
|
15
|
-
};
|
package/dist/log.js
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
-
if (ar || !(i in from)) {
|
|
5
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
-
ar[i] = from[i];
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.Logger = exports.LogLevel = void 0;
|
|
13
|
-
/* istanbul ignore next */
|
|
14
|
-
var LogLevel;
|
|
15
|
-
(function (LogLevel) {
|
|
16
|
-
LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG";
|
|
17
|
-
LogLevel[LogLevel["INFO"] = 1] = "INFO";
|
|
18
|
-
LogLevel[LogLevel["WARN"] = 2] = "WARN";
|
|
19
|
-
LogLevel[LogLevel["ERROR"] = 3] = "ERROR";
|
|
20
|
-
})(LogLevel = exports.LogLevel || (exports.LogLevel = {}));
|
|
21
|
-
/* istanbul ignore next */
|
|
22
|
-
exports.Logger = {
|
|
23
|
-
ENABLED: typeof window !== 'undefined' &&
|
|
24
|
-
typeof location !== 'undefined' &&
|
|
25
|
-
location.search.indexOf('giphy-debug') !== -1,
|
|
26
|
-
LEVEL: 0,
|
|
27
|
-
PREFIX: 'GiphyJS',
|
|
28
|
-
debug: function () {
|
|
29
|
-
var msg = [];
|
|
30
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
31
|
-
msg[_i] = arguments[_i];
|
|
32
|
-
}
|
|
33
|
-
if (exports.Logger.ENABLED && exports.Logger.LEVEL <= LogLevel.DEBUG) {
|
|
34
|
-
console.debug.apply(console, __spreadArray([exports.Logger.PREFIX], msg, false)); // eslint-disable-line no-console
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
info: function () {
|
|
38
|
-
var msg = [];
|
|
39
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
40
|
-
msg[_i] = arguments[_i];
|
|
41
|
-
}
|
|
42
|
-
if (exports.Logger.ENABLED && exports.Logger.LEVEL <= LogLevel.INFO) {
|
|
43
|
-
console.info.apply(console, __spreadArray([exports.Logger.PREFIX], msg, false)); // eslint-disable-line no-console
|
|
44
|
-
}
|
|
45
|
-
},
|
|
46
|
-
warn: function () {
|
|
47
|
-
var msg = [];
|
|
48
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
49
|
-
msg[_i] = arguments[_i];
|
|
50
|
-
}
|
|
51
|
-
if (exports.Logger.ENABLED && exports.Logger.LEVEL <= LogLevel.WARN) {
|
|
52
|
-
console.warn.apply(console, __spreadArray([exports.Logger.PREFIX], msg, false)); // eslint-disable-line no-console
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
error: function () {
|
|
56
|
-
var msg = [];
|
|
57
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
58
|
-
msg[_i] = arguments[_i];
|
|
59
|
-
}
|
|
60
|
-
if (exports.Logger.ENABLED && exports.Logger.LEVEL <= LogLevel.ERROR) {
|
|
61
|
-
console.error.apply(console, __spreadArray([exports.Logger.PREFIX], msg, false)); // eslint-disable-line no-console
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
|
-
};
|
|
65
|
-
//# sourceMappingURL=log.js.map
|
package/dist/log.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"log.js","sourceRoot":"","sources":["../src/log.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0BAA0B;AAC1B,IAAY,QAKX;AALD,WAAY,QAAQ;IAChB,yCAAS,CAAA;IACT,uCAAQ,CAAA;IACR,uCAAQ,CAAA;IACR,yCAAS,CAAA;AACb,CAAC,EALW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAKnB;AACD,0BAA0B;AACb,QAAA,MAAM,GAAG;IAClB,OAAO,EACH,OAAO,MAAM,KAAK,WAAW;QAC7B,OAAO,QAAQ,KAAK,WAAW;QAC/B,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACjD,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE;QAAC,aAAW;aAAX,UAAW,EAAX,qBAAW,EAAX,IAAW;YAAX,wBAAW;;QACf,IAAI,cAAM,CAAC,OAAO,IAAI,cAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE;YAClD,OAAO,CAAC,KAAK,OAAb,OAAO,iBAAO,cAAM,CAAC,MAAM,GAAK,GAAG,UAAC,CAAC,iCAAiC;SACzE;IACL,CAAC;IACD,IAAI,EAAE;QAAC,aAAW;aAAX,UAAW,EAAX,qBAAW,EAAX,IAAW;YAAX,wBAAW;;QACd,IAAI,cAAM,CAAC,OAAO,IAAI,cAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE;YACjD,OAAO,CAAC,IAAI,OAAZ,OAAO,iBAAM,cAAM,CAAC,MAAM,GAAK,GAAG,UAAC,CAAC,iCAAiC;SACxE;IACL,CAAC;IACD,IAAI,EAAE;QAAC,aAAW;aAAX,UAAW,EAAX,qBAAW,EAAX,IAAW;YAAX,wBAAW;;QACd,IAAI,cAAM,CAAC,OAAO,IAAI,cAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE;YACjD,OAAO,CAAC,IAAI,OAAZ,OAAO,iBAAM,cAAM,CAAC,MAAM,GAAK,GAAG,UAAC,CAAC,iCAAiC;SACxE;IACL,CAAC;IACD,KAAK,EAAE;QAAC,aAAW;aAAX,UAAW,EAAX,qBAAW,EAAX,IAAW;YAAX,wBAAW;;QACf,IAAI,cAAM,CAAC,OAAO,IAAI,cAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE;YAClD,OAAO,CAAC,KAAK,OAAb,OAAO,iBAAO,cAAM,CAAC,MAAM,GAAK,GAAG,UAAC,CAAC,iCAAiC;SACzE;IACL,CAAC;CACJ,CAAA"}
|
package/dist/sdk-headers.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
type GiphySDKRequestHeader = 'X-GIPHY-SDK-NAME' | 'X-GIPHY-SDK-VERSION' | 'X-GIPHY-SDK-PLATFORM';
|
|
2
|
-
export declare const getGiphySDKRequestHeaders: () => Headers | undefined;
|
|
3
|
-
export declare const appendGiphySDKRequestHeader: (key: GiphySDKRequestHeader, value: string) => void | undefined;
|
|
4
|
-
export declare const appendGiphySDKRequestParam: (key: GiphySDKRequestHeader, value: string) => void | undefined;
|
|
5
|
-
export {};
|
package/dist/sdk-headers.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.appendGiphySDKRequestParam = exports.appendGiphySDKRequestHeader = exports.getGiphySDKRequestHeaders = void 0;
|
|
4
|
-
var gl = ((typeof window !== 'undefined' ? window : global) || {});
|
|
5
|
-
// define _GIPHY_SDK_HEADERS_ if they don't exist
|
|
6
|
-
gl._GIPHY_SDK_HEADERS_ =
|
|
7
|
-
gl._GIPHY_SDK_HEADERS_ ||
|
|
8
|
-
(gl.Headers
|
|
9
|
-
? new gl.Headers({
|
|
10
|
-
'X-GIPHY-SDK-PLATFORM': 'web',
|
|
11
|
-
})
|
|
12
|
-
: undefined);
|
|
13
|
-
var getGiphySDKRequestHeaders = function () { return gl._GIPHY_SDK_HEADERS_; };
|
|
14
|
-
exports.getGiphySDKRequestHeaders = getGiphySDKRequestHeaders;
|
|
15
|
-
var appendGiphySDKRequestHeader = function (key, value) { var _a; return (_a = (0, exports.getGiphySDKRequestHeaders)()) === null || _a === void 0 ? void 0 : _a.set(key, value); };
|
|
16
|
-
exports.appendGiphySDKRequestHeader = appendGiphySDKRequestHeader;
|
|
17
|
-
var appendGiphySDKRequestParam = function (key, value) { var _a; return (_a = (0, exports.getGiphySDKRequestHeaders)()) === null || _a === void 0 ? void 0 : _a.set(key, value); };
|
|
18
|
-
exports.appendGiphySDKRequestParam = appendGiphySDKRequestParam;
|
|
19
|
-
//# sourceMappingURL=sdk-headers.js.map
|
package/dist/sdk-headers.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-headers.js","sourceRoot":"","sources":["../src/sdk-headers.ts"],"names":[],"mappings":";;;AACA,IAAM,EAAE,GAAG,CAAC,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAQ,CAAA;AAC3E,iDAAiD;AACjD,EAAE,CAAC,mBAAmB;IAClB,EAAE,CAAC,mBAAmB;QACtB,CAAC,EAAE,CAAC,OAAO;YACP,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC;gBACX,sBAAsB,EAAE,KAAK;aAChC,CAAC;YACJ,CAAC,CAAC,SAAS,CAAC,CAAA;AAEb,IAAM,yBAAyB,GAAG,cAA2B,OAAA,EAAE,CAAC,mBAAmB,EAAtB,CAAsB,CAAA;AAA7E,QAAA,yBAAyB,6BAAoD;AAEnF,IAAM,2BAA2B,GAAG,UAAC,GAA0B,EAAE,KAAa,YACjF,OAAA,MAAA,IAAA,iCAAyB,GAAE,0CAAE,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA,EAAA,CAAA;AADnC,QAAA,2BAA2B,+BACQ;AAEzC,IAAM,0BAA0B,GAAG,UAAC,GAA0B,EAAE,KAAa,YAChF,OAAA,MAAA,IAAA,iCAAyB,GAAE,0CAAE,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA,EAAA,CAAA;AADnC,QAAA,0BAA0B,8BACS"}
|
package/dist/webp-check.d.ts
DELETED
package/dist/webp-check.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.checkIfWebP = exports.SUPPORTS_WEBP = void 0;
|
|
4
|
-
exports.SUPPORTS_WEBP = null;
|
|
5
|
-
/* istanbul ignore next */
|
|
6
|
-
exports.checkIfWebP = new Promise(function (resolve) {
|
|
7
|
-
if (typeof Image === 'undefined') {
|
|
8
|
-
resolve(false);
|
|
9
|
-
}
|
|
10
|
-
var webp = new Image();
|
|
11
|
-
webp.onload = function () {
|
|
12
|
-
exports.SUPPORTS_WEBP = true;
|
|
13
|
-
resolve(exports.SUPPORTS_WEBP);
|
|
14
|
-
};
|
|
15
|
-
webp.onerror = function () {
|
|
16
|
-
exports.SUPPORTS_WEBP = false;
|
|
17
|
-
resolve(exports.SUPPORTS_WEBP);
|
|
18
|
-
};
|
|
19
|
-
webp.src =
|
|
20
|
-
'data:image/webp;base64,UklGRjoAAABXRUJQVlA4IC4AAACyAgCdASoCAAIALmk0mk0iIiIiIgBoSygABc6WWgAA/veff/0PP8bA//LwYAAA';
|
|
21
|
-
});
|
|
22
|
-
//# sourceMappingURL=webp-check.js.map
|
package/dist/webp-check.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webp-check.js","sourceRoot":"","sources":["../src/webp-check.ts"],"names":[],"mappings":";;;AAAW,QAAA,aAAa,GAAmB,IAAI,CAAA;AAC/C,0BAA0B;AACb,QAAA,WAAW,GAAG,IAAI,OAAO,CAAC,UAAA,OAAO;IAC1C,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;QAC9B,OAAO,CAAC,KAAK,CAAC,CAAA;KACjB;IACD,IAAM,IAAI,GAAG,IAAI,KAAK,EAAE,CAAA;IACxB,IAAI,CAAC,MAAM,GAAG;QACV,qBAAa,GAAG,IAAI,CAAA;QACpB,OAAO,CAAC,qBAAa,CAAC,CAAA;IAC1B,CAAC,CAAA;IACD,IAAI,CAAC,OAAO,GAAG;QACX,qBAAa,GAAG,KAAK,CAAA;QACrB,OAAO,CAAC,qBAAa,CAAC,CAAA;IAC1B,CAAC,CAAA;IACD,IAAI,CAAC,GAAG;QACJ,iHAAiH,CAAA;AACzH,CAAC,CAAC,CAAA"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
type MoatData = {
|
|
2
|
-
moatClientLevel1: string
|
|
3
|
-
moatClientLevel2: string
|
|
4
|
-
moatClientLevel3: string
|
|
5
|
-
moatClientLevel4: string
|
|
6
|
-
moatClientSlicer1: string
|
|
7
|
-
moatClientSlicer2: string
|
|
8
|
-
zMoatPosition: string
|
|
9
|
-
zMoatSession?: string
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
type Tracker = {
|
|
13
|
-
vendor: string
|
|
14
|
-
verificationParameters: any
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
type TData = {
|
|
18
|
-
web?: Tracker[]
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export const constructMoatData = ({ tdata }: { tdata: TData }): MoatData | undefined => {
|
|
22
|
-
const [moatTrackerData] = tdata?.web?.filter((tracker) => tracker.vendor === 'Moat') || []
|
|
23
|
-
if (moatTrackerData?.verificationParameters) {
|
|
24
|
-
const {
|
|
25
|
-
moatClientLevel1 = '_ADVERTISER_',
|
|
26
|
-
moatClientLevel2 = '_CAMPAIGN_',
|
|
27
|
-
moatClientLevel3 = '_LINE_ITEM_',
|
|
28
|
-
moatClientLevel4 = '_CREATIVE_',
|
|
29
|
-
moatClientSlicer1 = '_SITE_',
|
|
30
|
-
moatClientSlicer2 = '_PLACEMENT_',
|
|
31
|
-
zMoatPosition = '_POSITION_',
|
|
32
|
-
} = moatTrackerData.verificationParameters
|
|
33
|
-
|
|
34
|
-
return {
|
|
35
|
-
moatClientLevel1,
|
|
36
|
-
moatClientLevel2,
|
|
37
|
-
moatClientLevel3,
|
|
38
|
-
moatClientLevel4,
|
|
39
|
-
moatClientSlicer1,
|
|
40
|
-
moatClientSlicer2,
|
|
41
|
-
zMoatPosition,
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
package/src/tracking-pixel.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import DOMPurify from 'dompurify'
|
|
2
|
-
|
|
3
|
-
const injectTrackingPixel = (tags: string[] = []) => {
|
|
4
|
-
tags.forEach((tag) => {
|
|
5
|
-
const el = document.createElement('html')
|
|
6
|
-
tag = tag.replace('%%CACHEBUSTER%%', Date.now().toString())
|
|
7
|
-
el.innerHTML = DOMPurify.sanitize(tag)
|
|
8
|
-
const pixel = el.querySelector('img')
|
|
9
|
-
if (pixel) {
|
|
10
|
-
document?.querySelector('head')?.appendChild(pixel)
|
|
11
|
-
}
|
|
12
|
-
})
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export default injectTrackingPixel
|