@adhese/sdk 1.11.5 → 1.11.6
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 +6 -0
- package/dist/adheseSdk.d.ts +2 -2
- package/dist/cjs/package.json.cjs +1 -1
- package/dist/cjs/requestAds/requestAds.schema.cjs +21 -14
- package/dist/cjs/requestAds/requestAds.schema.cjs.map +1 -1
- package/dist/package.json.js +1 -1
- package/dist/requestAds/requestAds.schema.js +21 -14
- package/dist/requestAds/requestAds.schema.js.map +1 -1
- package/dist/server.d.ts +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
package/dist/adheseSdk.d.ts
CHANGED
|
@@ -172,9 +172,9 @@ declare const baseSchema: zod.ZodObject<{
|
|
|
172
172
|
width?: string | number | undefined;
|
|
173
173
|
widthLarge?: string | number | undefined;
|
|
174
174
|
}>;
|
|
175
|
-
type AdResponse =
|
|
175
|
+
type AdResponse = TypeOf<typeof baseSchema> & {
|
|
176
176
|
additionalCreatives?: ReadonlyArray<AdResponse> | string;
|
|
177
|
-
}
|
|
177
|
+
};
|
|
178
178
|
declare const adResponseSchema: ZodType<AdResponse>;
|
|
179
179
|
type PreParsedAd = TypeOf<typeof adResponseSchema> & {
|
|
180
180
|
additionalCreatives?: ReadonlyArray<PreParsedAd> | string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const name = "@adhese/sdk";
|
|
4
|
-
const version = "1.11.
|
|
4
|
+
const version = "1.11.6";
|
|
5
5
|
exports.name = name;
|
|
6
6
|
exports.version = version;
|
|
7
7
|
//# sourceMappingURL=package.json.cjs.map
|
|
@@ -39,7 +39,11 @@ const baseSchema = validators.object({
|
|
|
39
39
|
poolPath: validators.urlLike.optional(),
|
|
40
40
|
preview: validators.booleanLike.optional(),
|
|
41
41
|
priority: validators.numberLike.optional(),
|
|
42
|
-
renderMode: validators.union([
|
|
42
|
+
renderMode: validators.union([
|
|
43
|
+
validators.literal("inline"),
|
|
44
|
+
validators.literal("iframe"),
|
|
45
|
+
validators.literal("none")
|
|
46
|
+
]).optional(),
|
|
43
47
|
sfSrc: validators.urlLike.optional(),
|
|
44
48
|
share: validators.string().optional(),
|
|
45
49
|
// eslint-disable-next-line ts/naming-convention
|
|
@@ -58,20 +62,23 @@ const baseSchema = validators.object({
|
|
|
58
62
|
widthLarge: validators.numberLike.optional()
|
|
59
63
|
});
|
|
60
64
|
const adResponseSchema = baseSchema.extend({
|
|
61
|
-
additionalCreatives: validators.lazy(
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
additionalCreatives,
|
|
65
|
-
...data
|
|
66
|
-
}) => {
|
|
67
|
-
const filteredValue = Object.fromEntries(
|
|
68
|
-
Object.entries(data).filter(([, value]) => Boolean(value) && JSON.stringify(value) !== "{}" && JSON.stringify(value) !== "[]")
|
|
69
|
-
);
|
|
70
|
-
return {
|
|
71
|
-
...filteredValue,
|
|
72
|
-
additionalCreatives: Array.isArray(additionalCreatives) ? additionalCreatives.map((creative) => adSchema.parse(creative)) : additionalCreatives
|
|
73
|
-
};
|
|
65
|
+
additionalCreatives: validators.lazy(
|
|
66
|
+
() => validators.union([adResponseSchema.array(), validators.string()]).optional()
|
|
67
|
+
)
|
|
74
68
|
});
|
|
69
|
+
const adSchema = adResponseSchema.transform(
|
|
70
|
+
({ additionalCreatives, ...data }) => {
|
|
71
|
+
const filteredValue = Object.fromEntries(
|
|
72
|
+
Object.entries(data).filter(
|
|
73
|
+
([, value]) => value !== void 0 && value !== null && JSON.stringify(value) !== "{}" && JSON.stringify(value) !== "[]"
|
|
74
|
+
)
|
|
75
|
+
);
|
|
76
|
+
return {
|
|
77
|
+
...filteredValue,
|
|
78
|
+
additionalCreatives: Array.isArray(additionalCreatives) ? additionalCreatives.map((creative) => adSchema.parse(creative)) : additionalCreatives
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
);
|
|
75
82
|
function parseResponse(response) {
|
|
76
83
|
const rawArray = response;
|
|
77
84
|
return rawArray.map((item) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requestAds.schema.cjs","sources":["../../../src/requestAds/requestAds.schema.ts"],"sourcesContent":["import {\n booleanLike,\n dateLike,\n isJsonOrHtmlOptionalString,\n lazy,\n literal,\n numberLike,\n object,\n string,\n type TypeOf,\n union,\n unknown,\n urlLike,\n type ZodType,\n} from '@adhese/sdk-shared/validators';\n\nconst baseSchema = object({\n adDuration: numberLike.optional(),\n adFormat: string().optional(),\n adType: string(),\n additionalCreativeTracker: urlLike.optional(),\n additionalViewableTracker: string().optional(),\n adspaceEnd: dateLike.optional(),\n adspaceId: string().optional(),\n adspaceKey: string().optional(),\n adspaceStart: dateLike.optional(),\n advertiserId: string().optional(),\n altText: string().optional(),\n auctionable: booleanLike.optional(),\n body: isJsonOrHtmlOptionalString,\n clickTag: urlLike.optional(),\n comment: string().optional(),\n creativeName: string().optional(),\n deliveryGroupId: string().optional(),\n deliveryMultiples: string().optional(),\n ext: string().optional(),\n extension: object({\n mediaType: string(),\n prebid: unknown().optional(),\n }).optional(),\n height: numberLike.optional(),\n id: string().optional(),\n impressionCounter: urlLike.optional(),\n additionalTracker: urlLike.optional(),\n libId: string().optional(),\n orderId: string().optional(),\n orderName: string().optional(),\n orderProperty: string().optional(),\n origin: string(),\n originData: unknown().optional(),\n originInstance: string().optional(),\n poolPath: urlLike.optional(),\n preview: booleanLike.optional(),\n priority: numberLike.optional(),\n renderMode: union([literal('inline')
|
|
1
|
+
{"version":3,"file":"requestAds.schema.cjs","sources":["../../../src/requestAds/requestAds.schema.ts"],"sourcesContent":["import {\n booleanLike,\n dateLike,\n isJsonOrHtmlOptionalString,\n lazy,\n literal,\n numberLike,\n object,\n string,\n type TypeOf,\n union,\n unknown,\n urlLike,\n type ZodType,\n} from '@adhese/sdk-shared/validators';\n\nconst baseSchema = object({\n adDuration: numberLike.optional(),\n adFormat: string().optional(),\n adType: string(),\n additionalCreativeTracker: urlLike.optional(),\n additionalViewableTracker: string().optional(),\n adspaceEnd: dateLike.optional(),\n adspaceId: string().optional(),\n adspaceKey: string().optional(),\n adspaceStart: dateLike.optional(),\n advertiserId: string().optional(),\n altText: string().optional(),\n auctionable: booleanLike.optional(),\n body: isJsonOrHtmlOptionalString,\n clickTag: urlLike.optional(),\n comment: string().optional(),\n creativeName: string().optional(),\n deliveryGroupId: string().optional(),\n deliveryMultiples: string().optional(),\n ext: string().optional(),\n extension: object({\n mediaType: string(),\n prebid: unknown().optional(),\n }).optional(),\n height: numberLike.optional(),\n id: string().optional(),\n impressionCounter: urlLike.optional(),\n additionalTracker: urlLike.optional(),\n libId: string().optional(),\n orderId: string().optional(),\n orderName: string().optional(),\n orderProperty: string().optional(),\n origin: string(),\n originData: unknown().optional(),\n originInstance: string().optional(),\n poolPath: urlLike.optional(),\n preview: booleanLike.optional(),\n priority: numberLike.optional(),\n renderMode: union([\n literal('inline'),\n literal('iframe'),\n literal('none'),\n ]).optional(),\n sfSrc: urlLike.optional(),\n share: string().optional(),\n // eslint-disable-next-line ts/naming-convention\n slotID: string(),\n slotName: string(),\n swfSrc: urlLike.optional(),\n tag: isJsonOrHtmlOptionalString,\n tagUrl: urlLike.optional(),\n timeStamp: dateLike.optional(),\n trackedImpressionCounter: urlLike.optional(),\n tracker: urlLike.optional(),\n trackingUrl: urlLike.optional(),\n url: urlLike.optional(),\n viewableImpressionCounter: urlLike.optional(),\n width: numberLike.optional(),\n widthLarge: numberLike.optional(),\n});\n\nexport type AdResponse = TypeOf<typeof baseSchema> & {\n additionalCreatives?: ReadonlyArray<AdResponse> | string;\n};\n\nconst adResponseSchema: ZodType<AdResponse> = baseSchema.extend({\n additionalCreatives: lazy(() =>\n union([adResponseSchema.array(), string()]).optional(),\n ),\n}) as ZodType<AdResponse>;\n\nexport type PreParsedAd = TypeOf<typeof adResponseSchema> & {\n additionalCreatives?: ReadonlyArray<PreParsedAd> | string;\n};\n\nexport type AdheseAd<\n T = string | Record<string, unknown> | ReadonlyArray<unknown>,\n> = Omit<PreParsedAd, 'tag'> & {\n tag: T | string;\n};\n\nexport const adSchema: ZodType<PreParsedAd> = adResponseSchema.transform(\n ({ additionalCreatives, ...data }) => {\n const filteredValue = Object.fromEntries(\n Object.entries(data).filter(\n ([, value]) =>\n value !== undefined\n && value !== null\n && JSON.stringify(value) !== '{}'\n && JSON.stringify(value) !== '[]',\n ),\n ) as typeof data;\n\n return {\n ...filteredValue,\n additionalCreatives: Array.isArray(additionalCreatives)\n ? additionalCreatives.map(creative => adSchema.parse(creative))\n : additionalCreatives,\n };\n },\n);\n\nexport function parseResponse(response: unknown): ReadonlyArray<AdheseAd> {\n const rawArray = response as ReadonlyArray<Record<string, unknown>>;\n\n return rawArray.map((item) => {\n if (item.body && !item.tag)\n return adSchema.parse({ ...item, tag: item.body });\n return adSchema.parse(item);\n }) as ReadonlyArray<AdheseAd>;\n}\n"],"names":["object","numberLike","string","urlLike","dateLike","booleanLike","isJsonOrHtmlOptionalString","unknown","union","literal","lazy"],"mappings":"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"}
|
package/dist/package.json.js
CHANGED
|
@@ -37,7 +37,11 @@ const baseSchema = object({
|
|
|
37
37
|
poolPath: urlLike.optional(),
|
|
38
38
|
preview: booleanLike.optional(),
|
|
39
39
|
priority: numberLike.optional(),
|
|
40
|
-
renderMode: union([
|
|
40
|
+
renderMode: union([
|
|
41
|
+
literal("inline"),
|
|
42
|
+
literal("iframe"),
|
|
43
|
+
literal("none")
|
|
44
|
+
]).optional(),
|
|
41
45
|
sfSrc: urlLike.optional(),
|
|
42
46
|
share: string().optional(),
|
|
43
47
|
// eslint-disable-next-line ts/naming-convention
|
|
@@ -56,20 +60,23 @@ const baseSchema = object({
|
|
|
56
60
|
widthLarge: numberLike.optional()
|
|
57
61
|
});
|
|
58
62
|
const adResponseSchema = baseSchema.extend({
|
|
59
|
-
additionalCreatives: lazy(
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
additionalCreatives,
|
|
63
|
-
...data
|
|
64
|
-
}) => {
|
|
65
|
-
const filteredValue = Object.fromEntries(
|
|
66
|
-
Object.entries(data).filter(([, value]) => Boolean(value) && JSON.stringify(value) !== "{}" && JSON.stringify(value) !== "[]")
|
|
67
|
-
);
|
|
68
|
-
return {
|
|
69
|
-
...filteredValue,
|
|
70
|
-
additionalCreatives: Array.isArray(additionalCreatives) ? additionalCreatives.map((creative) => adSchema.parse(creative)) : additionalCreatives
|
|
71
|
-
};
|
|
63
|
+
additionalCreatives: lazy(
|
|
64
|
+
() => union([adResponseSchema.array(), string()]).optional()
|
|
65
|
+
)
|
|
72
66
|
});
|
|
67
|
+
const adSchema = adResponseSchema.transform(
|
|
68
|
+
({ additionalCreatives, ...data }) => {
|
|
69
|
+
const filteredValue = Object.fromEntries(
|
|
70
|
+
Object.entries(data).filter(
|
|
71
|
+
([, value]) => value !== void 0 && value !== null && JSON.stringify(value) !== "{}" && JSON.stringify(value) !== "[]"
|
|
72
|
+
)
|
|
73
|
+
);
|
|
74
|
+
return {
|
|
75
|
+
...filteredValue,
|
|
76
|
+
additionalCreatives: Array.isArray(additionalCreatives) ? additionalCreatives.map((creative) => adSchema.parse(creative)) : additionalCreatives
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
);
|
|
73
80
|
function parseResponse(response) {
|
|
74
81
|
const rawArray = response;
|
|
75
82
|
return rawArray.map((item) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requestAds.schema.js","sources":["../../src/requestAds/requestAds.schema.ts"],"sourcesContent":["import {\n booleanLike,\n dateLike,\n isJsonOrHtmlOptionalString,\n lazy,\n literal,\n numberLike,\n object,\n string,\n type TypeOf,\n union,\n unknown,\n urlLike,\n type ZodType,\n} from '@adhese/sdk-shared/validators';\n\nconst baseSchema = object({\n adDuration: numberLike.optional(),\n adFormat: string().optional(),\n adType: string(),\n additionalCreativeTracker: urlLike.optional(),\n additionalViewableTracker: string().optional(),\n adspaceEnd: dateLike.optional(),\n adspaceId: string().optional(),\n adspaceKey: string().optional(),\n adspaceStart: dateLike.optional(),\n advertiserId: string().optional(),\n altText: string().optional(),\n auctionable: booleanLike.optional(),\n body: isJsonOrHtmlOptionalString,\n clickTag: urlLike.optional(),\n comment: string().optional(),\n creativeName: string().optional(),\n deliveryGroupId: string().optional(),\n deliveryMultiples: string().optional(),\n ext: string().optional(),\n extension: object({\n mediaType: string(),\n prebid: unknown().optional(),\n }).optional(),\n height: numberLike.optional(),\n id: string().optional(),\n impressionCounter: urlLike.optional(),\n additionalTracker: urlLike.optional(),\n libId: string().optional(),\n orderId: string().optional(),\n orderName: string().optional(),\n orderProperty: string().optional(),\n origin: string(),\n originData: unknown().optional(),\n originInstance: string().optional(),\n poolPath: urlLike.optional(),\n preview: booleanLike.optional(),\n priority: numberLike.optional(),\n renderMode: union([literal('inline')
|
|
1
|
+
{"version":3,"file":"requestAds.schema.js","sources":["../../src/requestAds/requestAds.schema.ts"],"sourcesContent":["import {\n booleanLike,\n dateLike,\n isJsonOrHtmlOptionalString,\n lazy,\n literal,\n numberLike,\n object,\n string,\n type TypeOf,\n union,\n unknown,\n urlLike,\n type ZodType,\n} from '@adhese/sdk-shared/validators';\n\nconst baseSchema = object({\n adDuration: numberLike.optional(),\n adFormat: string().optional(),\n adType: string(),\n additionalCreativeTracker: urlLike.optional(),\n additionalViewableTracker: string().optional(),\n adspaceEnd: dateLike.optional(),\n adspaceId: string().optional(),\n adspaceKey: string().optional(),\n adspaceStart: dateLike.optional(),\n advertiserId: string().optional(),\n altText: string().optional(),\n auctionable: booleanLike.optional(),\n body: isJsonOrHtmlOptionalString,\n clickTag: urlLike.optional(),\n comment: string().optional(),\n creativeName: string().optional(),\n deliveryGroupId: string().optional(),\n deliveryMultiples: string().optional(),\n ext: string().optional(),\n extension: object({\n mediaType: string(),\n prebid: unknown().optional(),\n }).optional(),\n height: numberLike.optional(),\n id: string().optional(),\n impressionCounter: urlLike.optional(),\n additionalTracker: urlLike.optional(),\n libId: string().optional(),\n orderId: string().optional(),\n orderName: string().optional(),\n orderProperty: string().optional(),\n origin: string(),\n originData: unknown().optional(),\n originInstance: string().optional(),\n poolPath: urlLike.optional(),\n preview: booleanLike.optional(),\n priority: numberLike.optional(),\n renderMode: union([\n literal('inline'),\n literal('iframe'),\n literal('none'),\n ]).optional(),\n sfSrc: urlLike.optional(),\n share: string().optional(),\n // eslint-disable-next-line ts/naming-convention\n slotID: string(),\n slotName: string(),\n swfSrc: urlLike.optional(),\n tag: isJsonOrHtmlOptionalString,\n tagUrl: urlLike.optional(),\n timeStamp: dateLike.optional(),\n trackedImpressionCounter: urlLike.optional(),\n tracker: urlLike.optional(),\n trackingUrl: urlLike.optional(),\n url: urlLike.optional(),\n viewableImpressionCounter: urlLike.optional(),\n width: numberLike.optional(),\n widthLarge: numberLike.optional(),\n});\n\nexport type AdResponse = TypeOf<typeof baseSchema> & {\n additionalCreatives?: ReadonlyArray<AdResponse> | string;\n};\n\nconst adResponseSchema: ZodType<AdResponse> = baseSchema.extend({\n additionalCreatives: lazy(() =>\n union([adResponseSchema.array(), string()]).optional(),\n ),\n}) as ZodType<AdResponse>;\n\nexport type PreParsedAd = TypeOf<typeof adResponseSchema> & {\n additionalCreatives?: ReadonlyArray<PreParsedAd> | string;\n};\n\nexport type AdheseAd<\n T = string | Record<string, unknown> | ReadonlyArray<unknown>,\n> = Omit<PreParsedAd, 'tag'> & {\n tag: T | string;\n};\n\nexport const adSchema: ZodType<PreParsedAd> = adResponseSchema.transform(\n ({ additionalCreatives, ...data }) => {\n const filteredValue = Object.fromEntries(\n Object.entries(data).filter(\n ([, value]) =>\n value !== undefined\n && value !== null\n && JSON.stringify(value) !== '{}'\n && JSON.stringify(value) !== '[]',\n ),\n ) as typeof data;\n\n return {\n ...filteredValue,\n additionalCreatives: Array.isArray(additionalCreatives)\n ? additionalCreatives.map(creative => adSchema.parse(creative))\n : additionalCreatives,\n };\n },\n);\n\nexport function parseResponse(response: unknown): ReadonlyArray<AdheseAd> {\n const rawArray = response as ReadonlyArray<Record<string, unknown>>;\n\n return rawArray.map((item) => {\n if (item.body && !item.tag)\n return adSchema.parse({ ...item, tag: item.body });\n return adSchema.parse(item);\n }) as ReadonlyArray<AdheseAd>;\n}\n"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -170,9 +170,9 @@ declare const baseSchema: zod.ZodObject<{
|
|
|
170
170
|
width?: string | number | undefined;
|
|
171
171
|
widthLarge?: string | number | undefined;
|
|
172
172
|
}>;
|
|
173
|
-
type AdResponse =
|
|
173
|
+
type AdResponse = TypeOf<typeof baseSchema> & {
|
|
174
174
|
additionalCreatives?: ReadonlyArray<AdResponse> | string;
|
|
175
|
-
}
|
|
175
|
+
};
|
|
176
176
|
declare const adResponseSchema: ZodType<AdResponse>;
|
|
177
177
|
type PreParsedAd = TypeOf<typeof adResponseSchema> & {
|
|
178
178
|
additionalCreatives?: ReadonlyArray<PreParsedAd> | string;
|