@adview/react 1.0.13 → 1.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AdViewUnit/AdViewUnit.cjs +106 -298
- package/dist/AdViewUnit/AdViewUnit.cjs.map +1 -1
- package/dist/AdViewUnit/AdViewUnit.client.cjs +86 -256
- package/dist/AdViewUnit/AdViewUnit.client.cjs.map +1 -1
- package/dist/AdViewUnit/AdViewUnit.client.d.cts +2 -2
- package/dist/AdViewUnit/AdViewUnit.client.d.ts +2 -2
- package/dist/AdViewUnit/AdViewUnit.client.js +69 -239
- package/dist/AdViewUnit/AdViewUnit.client.js.map +1 -1
- package/dist/AdViewUnit/AdViewUnit.d.cts +1 -1
- package/dist/AdViewUnit/AdViewUnit.d.ts +1 -1
- package/dist/AdViewUnit/AdViewUnit.js +85 -277
- package/dist/AdViewUnit/AdViewUnit.js.map +1 -1
- package/dist/AdViewUnit/AdViewUnit.server.cjs +82 -214
- package/dist/AdViewUnit/AdViewUnit.server.cjs.map +1 -1
- package/dist/AdViewUnit/AdViewUnit.server.d.cts +2 -2
- package/dist/AdViewUnit/AdViewUnit.server.d.ts +2 -2
- package/dist/AdViewUnit/AdViewUnit.server.js +72 -204
- package/dist/AdViewUnit/AdViewUnit.server.js.map +1 -1
- package/dist/AdViewUnit/{AdViewUnitBanner.cjs → AdViewUnitBannerTemplate.cjs} +17 -14
- package/dist/AdViewUnit/AdViewUnitBannerTemplate.cjs.map +1 -0
- package/dist/AdViewUnit/AdViewUnitBannerTemplate.d.cts +12 -0
- package/dist/AdViewUnit/AdViewUnitBannerTemplate.d.ts +12 -0
- package/dist/AdViewUnit/AdViewUnitBannerTemplate.js +32 -0
- package/dist/AdViewUnit/AdViewUnitBannerTemplate.js.map +1 -0
- package/dist/AdViewUnit/AdViewUnitDefaultTemplate.cjs +48 -0
- package/dist/AdViewUnit/AdViewUnitDefaultTemplate.cjs.map +1 -0
- package/dist/AdViewUnit/AdViewUnitDefaultTemplate.d.cts +17 -0
- package/dist/AdViewUnit/AdViewUnitDefaultTemplate.d.ts +17 -0
- package/dist/AdViewUnit/AdViewUnitDefaultTemplate.js +17 -0
- package/dist/AdViewUnit/AdViewUnitDefaultTemplate.js.map +1 -0
- package/dist/AdViewUnit/{AdViewUnitNative.cjs → AdViewUnitNativeTemplate.cjs} +12 -13
- package/dist/AdViewUnit/AdViewUnitNativeTemplate.cjs.map +1 -0
- package/dist/AdViewUnit/AdViewUnitNativeTemplate.d.cts +11 -0
- package/dist/AdViewUnit/AdViewUnitNativeTemplate.d.ts +11 -0
- package/dist/AdViewUnit/{AdViewUnitNative.js → AdViewUnitNativeTemplate.js} +9 -10
- package/dist/AdViewUnit/AdViewUnitNativeTemplate.js.map +1 -0
- package/dist/AdViewUnit/{AdViewUnitProxy.cjs → AdViewUnitProxyTemplate.cjs} +14 -13
- package/dist/AdViewUnit/AdViewUnitProxyTemplate.cjs.map +1 -0
- package/dist/AdViewUnit/AdViewUnitProxyTemplate.d.cts +12 -0
- package/dist/AdViewUnit/AdViewUnitProxyTemplate.d.ts +12 -0
- package/dist/AdViewUnit/AdViewUnitProxyTemplate.js +33 -0
- package/dist/AdViewUnit/AdViewUnitProxyTemplate.js.map +1 -0
- package/dist/AdViewUnit/AdViewUnitTemplate.cjs +114 -0
- package/dist/AdViewUnit/AdViewUnitTemplate.cjs.map +1 -1
- package/dist/AdViewUnit/AdViewUnitTemplate.d.cts +14 -1
- package/dist/AdViewUnit/AdViewUnitTemplate.d.ts +14 -1
- package/dist/AdViewUnit/AdViewUnitTemplate.js +77 -0
- package/dist/AdViewUnit/AdViewUnitTemplate.js.map +1 -1
- package/dist/AdViewUnit/useAdViewController.cjs +5 -1
- package/dist/AdViewUnit/useAdViewController.cjs.map +1 -1
- package/dist/AdViewUnit/useAdViewController.d.cts +2 -2
- package/dist/AdViewUnit/useAdViewController.d.ts +2 -2
- package/dist/AdViewUnit/useAdViewController.js +5 -1
- package/dist/AdViewUnit/useAdViewController.js.map +1 -1
- package/dist/index.cjs +250 -232
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +8 -7
- package/dist/index.d.ts +8 -7
- package/dist/index.js +232 -222
- package/dist/index.js.map +1 -1
- package/dist/server.cjs +216 -162
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.cts +7 -6
- package/dist/server.d.ts +7 -6
- package/dist/server.js +196 -149
- package/dist/server.js.map +1 -1
- package/dist/{types-BaV07oMT.d.cts → types-B65WDsgh.d.cts} +29 -25
- package/dist/{types-BaV07oMT.d.ts → types-B65WDsgh.d.ts} +29 -25
- package/package.json +1 -1
- package/dist/AdViewUnit/AdViewUnitBanner.cjs.map +0 -1
- package/dist/AdViewUnit/AdViewUnitBanner.d.cts +0 -10
- package/dist/AdViewUnit/AdViewUnitBanner.d.ts +0 -10
- package/dist/AdViewUnit/AdViewUnitBanner.js +0 -29
- package/dist/AdViewUnit/AdViewUnitBanner.js.map +0 -1
- package/dist/AdViewUnit/AdViewUnitNative.cjs.map +0 -1
- package/dist/AdViewUnit/AdViewUnitNative.d.cts +0 -10
- package/dist/AdViewUnit/AdViewUnitNative.d.ts +0 -10
- package/dist/AdViewUnit/AdViewUnitNative.js.map +0 -1
- package/dist/AdViewUnit/AdViewUnitProxy.cjs.map +0 -1
- package/dist/AdViewUnit/AdViewUnitProxy.d.cts +0 -10
- package/dist/AdViewUnit/AdViewUnitProxy.d.ts +0 -10
- package/dist/AdViewUnit/AdViewUnitProxy.js +0 -32
- package/dist/AdViewUnit/AdViewUnitProxy.js.map +0 -1
- package/dist/AdViewUnit/AdViewUnitTypeSwitch.cjs +0 -203
- package/dist/AdViewUnit/AdViewUnitTypeSwitch.cjs.map +0 -1
- package/dist/AdViewUnit/AdViewUnitTypeSwitch.d.cts +0 -12
- package/dist/AdViewUnit/AdViewUnitTypeSwitch.d.ts +0 -12
- package/dist/AdViewUnit/AdViewUnitTypeSwitch.js +0 -170
- package/dist/AdViewUnit/AdViewUnitTypeSwitch.js.map +0 -1
- package/dist/AdViewUnit/AdViewUnitWrapper.client.cjs +0 -250
- package/dist/AdViewUnit/AdViewUnitWrapper.client.cjs.map +0 -1
- package/dist/AdViewUnit/AdViewUnitWrapper.client.d.cts +0 -11
- package/dist/AdViewUnit/AdViewUnitWrapper.client.d.ts +0 -11
- package/dist/AdViewUnit/AdViewUnitWrapper.client.js +0 -220
- package/dist/AdViewUnit/AdViewUnitWrapper.client.js.map +0 -1
- package/dist/AdViewUnit/AdViewUnitWrapper.server.cjs +0 -232
- package/dist/AdViewUnit/AdViewUnitWrapper.server.cjs.map +0 -1
- package/dist/AdViewUnit/AdViewUnitWrapper.server.d.cts +0 -11
- package/dist/AdViewUnit/AdViewUnitWrapper.server.d.ts +0 -11
- package/dist/AdViewUnit/AdViewUnitWrapper.server.js +0 -201
- package/dist/AdViewUnit/AdViewUnitWrapper.server.js.map +0 -1
package/dist/server.cjs
CHANGED
|
@@ -32,21 +32,99 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
32
32
|
// src/server.ts
|
|
33
33
|
var server_exports = {};
|
|
34
34
|
__export(server_exports, {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
AdViewUnitBannerTemplate: () => AdViewUnitBannerTemplate_default,
|
|
36
|
+
AdViewUnitDefaultTemplate: () => AdViewUnitDefaultTemplate_default,
|
|
37
|
+
AdViewUnitNativeTemplate: () => AdViewUnitNativeTemplate_default,
|
|
38
|
+
AdViewUnitProxyTemplate: () => AdViewUnitProxyTemplate_default,
|
|
39
|
+
AdViewUnitServer: () => AdViewUnit_server_default,
|
|
40
|
+
AdViewUnitTemplate: () => AdViewUnitTemplate_default,
|
|
41
|
+
BannerTemplate: () => AdViewUnitBannerTemplate_default,
|
|
42
|
+
DefaultTemplate: () => AdViewUnitDefaultTemplate_default,
|
|
43
|
+
NativeTemplate: () => AdViewUnitNativeTemplate_default,
|
|
44
|
+
ProxyTemplate: () => AdViewUnitProxyTemplate_default,
|
|
45
|
+
Template: () => AdViewUnitTemplate_default,
|
|
46
|
+
Unit: () => AdViewUnit_server_default
|
|
40
47
|
});
|
|
41
48
|
module.exports = __toCommonJS(server_exports);
|
|
42
49
|
|
|
43
50
|
// src/AdViewUnit/AdViewUnit.server.tsx
|
|
44
|
-
var
|
|
45
|
-
var
|
|
51
|
+
var import_react3 = __toESM(require("react"), 1);
|
|
52
|
+
var import_utils2 = require("@adview/core/utils");
|
|
53
|
+
|
|
54
|
+
// src/AdViewUnit/AdViewUnitTemplate.tsx
|
|
55
|
+
var import_react = __toESM(require("react"), 1);
|
|
56
|
+
var templateFromListRender = (tmpls, data, wrap) => {
|
|
57
|
+
let renderedRemplates = tmpls.map((tmpl, index) => {
|
|
58
|
+
let tmp = renderTemplate(tmpl, data);
|
|
59
|
+
return !!tmp && import_react.default.isValidElement(tmp) ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, { key: index }, !!wrap ? wrap(tmp) : tmp) : null;
|
|
60
|
+
}).filter((it) => !!it);
|
|
61
|
+
if (!renderedRemplates.length) {
|
|
62
|
+
renderedRemplates = tmpls.map((tmpl, index) => {
|
|
63
|
+
let tmp = renderTemplate(tmpl, { ...data, type: "default" });
|
|
64
|
+
return !!tmp && import_react.default.isValidElement(tmp) ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, { key: index }, !!wrap ? wrap(tmp) : tmp) : null;
|
|
65
|
+
}).filter((it) => !!it);
|
|
66
|
+
}
|
|
67
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, renderedRemplates);
|
|
68
|
+
};
|
|
69
|
+
var renderTemplate = (tmpl, data) => {
|
|
70
|
+
const isFunction = typeof tmpl === "function";
|
|
71
|
+
const isReactElement = import_react.default.isValidElement(tmpl);
|
|
72
|
+
if (isReactElement) {
|
|
73
|
+
const { type, children } = tmpl.props;
|
|
74
|
+
console.log("=====>\nrenderTemplate: React element detected, type:", type, "data:", data.type, data.type !== type);
|
|
75
|
+
if (data.type !== type) {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
if (typeof children === "function") {
|
|
79
|
+
return children(data);
|
|
80
|
+
}
|
|
81
|
+
console.log("CLONE ELEMENT", tmpl);
|
|
82
|
+
return import_react.default.cloneElement(tmpl, {
|
|
83
|
+
...data,
|
|
84
|
+
children
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
if (isFunction) {
|
|
88
|
+
return tmpl(data);
|
|
89
|
+
}
|
|
90
|
+
return null;
|
|
91
|
+
};
|
|
92
|
+
var renderTemplates = (tmpls, data, listRender) => {
|
|
93
|
+
return listRender ? listRender(tmpls) : templateFromListRender(tmpls, data);
|
|
94
|
+
};
|
|
95
|
+
var renderAnyTemplates = (tmpls, data, listRender) => {
|
|
96
|
+
if (!tmpls) {
|
|
97
|
+
return null;
|
|
98
|
+
}
|
|
99
|
+
if (Array.isArray(tmpls)) {
|
|
100
|
+
return renderTemplates(tmpls, data, listRender);
|
|
101
|
+
}
|
|
102
|
+
if (typeof tmpls === "function") {
|
|
103
|
+
return tmpls(data);
|
|
104
|
+
}
|
|
105
|
+
if (import_react.default.isValidElement(tmpls)) {
|
|
106
|
+
return templateFromListRender([tmpls], data);
|
|
107
|
+
}
|
|
108
|
+
return null;
|
|
109
|
+
};
|
|
110
|
+
var AdViewUnitTemplate = ({ type, children, ...data }) => {
|
|
111
|
+
const tmplProps = {
|
|
112
|
+
type,
|
|
113
|
+
...data
|
|
114
|
+
};
|
|
115
|
+
if (typeof children === "function") {
|
|
116
|
+
return children(tmplProps);
|
|
117
|
+
}
|
|
118
|
+
if (import_react.default.isValidElement(children)) {
|
|
119
|
+
return import_react.default.cloneElement(children, tmplProps);
|
|
120
|
+
}
|
|
121
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null);
|
|
122
|
+
};
|
|
123
|
+
var AdViewUnitTemplate_default = AdViewUnitTemplate;
|
|
46
124
|
|
|
47
125
|
// src/AdViewUnit/AdViewUnitTracking.tsx
|
|
48
126
|
var import_utils = require("@adview/core/utils");
|
|
49
|
-
var
|
|
127
|
+
var import_react2 = __toESM(require("react"), 1);
|
|
50
128
|
function AdViewUnitTracking({
|
|
51
129
|
impressions,
|
|
52
130
|
views,
|
|
@@ -54,12 +132,12 @@ function AdViewUnitTracking({
|
|
|
54
132
|
children
|
|
55
133
|
}) {
|
|
56
134
|
const isServer = typeof window === "undefined";
|
|
57
|
-
const wrapperRef = (0,
|
|
58
|
-
const executeImpressionsTrackingHandler = (0,
|
|
135
|
+
const wrapperRef = (0, import_react2.useRef)(null);
|
|
136
|
+
const executeImpressionsTrackingHandler = (0, import_react2.useCallback)(
|
|
59
137
|
() => (0, import_utils.executeImpressionsTracking)(impressions),
|
|
60
138
|
[impressions]
|
|
61
139
|
);
|
|
62
|
-
const trackingObserverInstanceHandler = (0,
|
|
140
|
+
const trackingObserverInstanceHandler = (0, import_react2.useCallback)(
|
|
63
141
|
(entries) => {
|
|
64
142
|
entries.forEach((entry) => {
|
|
65
143
|
if (entry.isIntersecting) {
|
|
@@ -70,14 +148,14 @@ function AdViewUnitTracking({
|
|
|
70
148
|
},
|
|
71
149
|
[views]
|
|
72
150
|
);
|
|
73
|
-
const trackingObserverInstance = (0,
|
|
151
|
+
const trackingObserverInstance = (0, import_react2.useMemo)(() => {
|
|
74
152
|
return !isServer ? new IntersectionObserver(trackingObserverInstanceHandler) : null;
|
|
75
153
|
}, [isServer, trackingObserverInstanceHandler]);
|
|
76
|
-
const clickTrackerHandler = (0,
|
|
154
|
+
const clickTrackerHandler = (0, import_react2.useCallback)(() => {
|
|
77
155
|
(0, import_utils.executeImpressionsTracking)(clicks);
|
|
78
156
|
wrapperRef.current?.removeEventListener("click", clickTrackerHandler);
|
|
79
157
|
}, [clicks]);
|
|
80
|
-
(0,
|
|
158
|
+
(0, import_react2.useEffect)(() => {
|
|
81
159
|
if (wrapperRef.current && trackingObserverInstance) {
|
|
82
160
|
executeImpressionsTrackingHandler();
|
|
83
161
|
wrapperRef.current?.addEventListener("click", clickTrackerHandler);
|
|
@@ -95,113 +173,187 @@ function AdViewUnitTracking({
|
|
|
95
173
|
executeImpressionsTrackingHandler,
|
|
96
174
|
clickTrackerHandler
|
|
97
175
|
]);
|
|
98
|
-
return /* @__PURE__ */
|
|
176
|
+
return /* @__PURE__ */ import_react2.default.createElement("div", { ref: wrapperRef }, children);
|
|
99
177
|
}
|
|
100
178
|
var AdViewUnitTracking_default = AdViewUnitTracking;
|
|
101
179
|
|
|
102
|
-
// src/AdViewUnit/
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
function AdViewUnitNative({
|
|
109
|
-
assets,
|
|
110
|
-
fields,
|
|
111
|
-
url,
|
|
112
|
-
classNames
|
|
180
|
+
// src/AdViewUnit/AdViewUnit.server.tsx
|
|
181
|
+
async function AdViewUnitServer({
|
|
182
|
+
unitId,
|
|
183
|
+
format,
|
|
184
|
+
children,
|
|
185
|
+
...config
|
|
113
186
|
}) {
|
|
114
|
-
const
|
|
187
|
+
const baseConfig = (0, import_utils2.getResolveConfig)(config);
|
|
188
|
+
const requestUrl = (0, import_utils2.getAdRequestUrl)(baseConfig, unitId, format);
|
|
189
|
+
const response = await (0, import_utils2.adViewFetcher)(requestUrl);
|
|
190
|
+
const isLoadingError = response instanceof Error;
|
|
191
|
+
const error = isLoadingError ? response : void 0;
|
|
192
|
+
const responseGroup = response instanceof Error ? null : response?.groups?.[0];
|
|
193
|
+
const customTracker = responseGroup?.custom_tracker ?? {};
|
|
194
|
+
const groupItems = responseGroup?.items;
|
|
195
|
+
if (groupItems && groupItems.length) {
|
|
196
|
+
return groupItems.map(({ tracker, ...data }) => {
|
|
197
|
+
return /* @__PURE__ */ import_react3.default.createElement(AdViewUnitTracking_default, { key: data.id, ...tracker }, renderAnyTemplates(children, { data, type: data.type || "default", error, state: {
|
|
198
|
+
isLoading: true,
|
|
199
|
+
isComplete: true,
|
|
200
|
+
isInitial: false,
|
|
201
|
+
isError: isLoadingError
|
|
202
|
+
} }));
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
return /* @__PURE__ */ import_react3.default.createElement(AdViewUnitTracking_default, { ...customTracker }, renderAnyTemplates(children, { data: null, type: "default", error, state: {
|
|
206
|
+
isLoading: true,
|
|
207
|
+
isComplete: true,
|
|
208
|
+
isInitial: false,
|
|
209
|
+
isError: isLoadingError
|
|
210
|
+
} }));
|
|
211
|
+
}
|
|
212
|
+
var AdViewUnit_server_default = AdViewUnitServer;
|
|
213
|
+
|
|
214
|
+
// src/AdViewUnit/AdViewUnitBannerTemplate.tsx
|
|
215
|
+
var import_utils3 = require("@adview/core/utils");
|
|
216
|
+
var import_react4 = __toESM(require("react"), 1);
|
|
217
|
+
function AdViewUnitBannerTemplate({ className = "banner", style, data, state }) {
|
|
218
|
+
if (!data || !data.assets || !data.assets.length || !state?.isComplete) {
|
|
219
|
+
return null;
|
|
220
|
+
}
|
|
221
|
+
const asset = (0, import_utils3.getAssetByName)("main", data.assets);
|
|
222
|
+
return /* @__PURE__ */ import_react4.default.createElement(
|
|
223
|
+
"a",
|
|
224
|
+
{
|
|
225
|
+
target: "_blank",
|
|
226
|
+
rel: "noopener noreferrer",
|
|
227
|
+
href: (0, import_utils3.getPrepareURL)(data.url),
|
|
228
|
+
className,
|
|
229
|
+
style: { fontSize: 0, ...style }
|
|
230
|
+
},
|
|
231
|
+
asset && /* @__PURE__ */ import_react4.default.createElement(
|
|
232
|
+
"img",
|
|
233
|
+
{
|
|
234
|
+
alt: "main",
|
|
235
|
+
src: asset.path,
|
|
236
|
+
srcSet: asset.thumbs ? (0, import_utils3.getSrcSetCSSThumbs)(asset.thumbs) : ""
|
|
237
|
+
}
|
|
238
|
+
)
|
|
239
|
+
);
|
|
240
|
+
}
|
|
241
|
+
var AdViewUnitBannerTemplate_default = AdViewUnitBannerTemplate;
|
|
242
|
+
|
|
243
|
+
// src/AdViewUnit/AdViewUnitDefaultTemplate.tsx
|
|
244
|
+
var import_react5 = __toESM(require("react"), 1);
|
|
245
|
+
function AdViewUnitDefaultTemplate({ type = "default", data, state, children, ...props }) {
|
|
246
|
+
if (typeof children === "function") {
|
|
247
|
+
return /* @__PURE__ */ import_react5.default.createElement(import_react5.default.Fragment, null, children({ data, state, ...props }));
|
|
248
|
+
}
|
|
249
|
+
return children ? /* @__PURE__ */ import_react5.default.createElement(import_react5.default.Fragment, null, children) : /* @__PURE__ */ import_react5.default.createElement("div", { style: { padding: "1rem", textAlign: "center", color: "#666" } }, /* @__PURE__ */ import_react5.default.createElement("p", null, "\u{1F504} Default content for ad unit"), /* @__PURE__ */ import_react5.default.createElement("p", null, "Data: ", JSON.stringify(data)), /* @__PURE__ */ import_react5.default.createElement("p", null, "State: ", JSON.stringify(state)));
|
|
250
|
+
}
|
|
251
|
+
AdViewUnitDefaultTemplate.defaultProps = {
|
|
252
|
+
type: "default",
|
|
253
|
+
children: null
|
|
254
|
+
};
|
|
255
|
+
var AdViewUnitDefaultTemplate_default = AdViewUnitDefaultTemplate;
|
|
256
|
+
|
|
257
|
+
// src/AdViewUnit/AdViewUnitNativeTemplate.tsx
|
|
258
|
+
var import_utils4 = require("@adview/core/utils");
|
|
259
|
+
var import_react6 = __toESM(require("react"), 1);
|
|
260
|
+
function AdViewUnitNativeTemplate({ classNames, data, state }) {
|
|
261
|
+
if (!data || !data.assets || !data.assets.length || !state?.isComplete) {
|
|
262
|
+
return null;
|
|
263
|
+
}
|
|
264
|
+
const { assets, url, fields } = data;
|
|
265
|
+
const asset = (0, import_utils4.getAssetByName)("main", assets);
|
|
115
266
|
if (!url) {
|
|
116
267
|
return null;
|
|
117
268
|
}
|
|
118
|
-
return /* @__PURE__ */
|
|
269
|
+
return /* @__PURE__ */ import_react6.default.createElement("div", { className: classNames?.container }, /* @__PURE__ */ import_react6.default.createElement(
|
|
119
270
|
"a",
|
|
120
271
|
{
|
|
121
272
|
target: "_blank",
|
|
122
273
|
rel: "noopener noreferrer",
|
|
123
|
-
href: (0,
|
|
274
|
+
href: (0, import_utils4.getPrepareURL)(url),
|
|
124
275
|
className: classNames?.imageLink
|
|
125
276
|
},
|
|
126
|
-
asset && /* @__PURE__ */
|
|
277
|
+
asset && /* @__PURE__ */ import_react6.default.createElement(
|
|
127
278
|
"img",
|
|
128
279
|
{
|
|
129
280
|
alt: fields?.title,
|
|
130
281
|
title: fields?.title,
|
|
131
282
|
src: asset.path,
|
|
132
|
-
srcSet: asset.thumbs ? (0,
|
|
283
|
+
srcSet: asset.thumbs ? (0, import_utils4.getSrcSetCSSThumbs)(asset.thumbs) : void 0,
|
|
133
284
|
className: classNames?.image,
|
|
134
285
|
style: { objectFit: "cover", width: "100%", height: "100%" }
|
|
135
286
|
}
|
|
136
287
|
)
|
|
137
|
-
), /* @__PURE__ */
|
|
288
|
+
), /* @__PURE__ */ import_react6.default.createElement("div", { className: classNames?.label }, fields?.title && /* @__PURE__ */ import_react6.default.createElement(
|
|
138
289
|
"a",
|
|
139
290
|
{
|
|
140
291
|
target: "_blank",
|
|
141
292
|
rel: "noopener noreferrer",
|
|
142
|
-
href: (0,
|
|
293
|
+
href: (0, import_utils4.getPrepareURL)(url),
|
|
143
294
|
"data-class": "titleLink",
|
|
144
295
|
className: classNames?.titleLink
|
|
145
296
|
},
|
|
146
297
|
fields.title
|
|
147
|
-
), fields?.description && /* @__PURE__ */
|
|
298
|
+
), fields?.description && /* @__PURE__ */ import_react6.default.createElement(
|
|
148
299
|
"a",
|
|
149
300
|
{
|
|
150
301
|
target: "_blank",
|
|
151
302
|
rel: "noopener noreferrer",
|
|
152
|
-
href: (0,
|
|
303
|
+
href: (0, import_utils4.getPrepareURL)(url),
|
|
153
304
|
"data-class": "descriptionLink",
|
|
154
305
|
className: classNames?.descriptionLink
|
|
155
306
|
},
|
|
156
307
|
fields.description
|
|
157
|
-
), fields?.brandname && /* @__PURE__ */
|
|
308
|
+
), fields?.brandname && /* @__PURE__ */ import_react6.default.createElement(
|
|
158
309
|
"a",
|
|
159
310
|
{
|
|
160
311
|
target: "_blank",
|
|
161
312
|
rel: "noopener noreferrer",
|
|
162
|
-
href: (0,
|
|
313
|
+
href: (0, import_utils4.getPrepareURL)(url),
|
|
163
314
|
"data-class": "brandNameLink",
|
|
164
315
|
className: classNames?.brandNameLink
|
|
165
316
|
},
|
|
166
317
|
fields.brandname
|
|
167
|
-
), fields?.phone && /* @__PURE__ */
|
|
318
|
+
), fields?.phone && /* @__PURE__ */ import_react6.default.createElement(
|
|
168
319
|
"a",
|
|
169
320
|
{
|
|
170
321
|
target: "_blank",
|
|
171
322
|
rel: "noopener noreferrer",
|
|
172
|
-
href: (0,
|
|
323
|
+
href: (0, import_utils4.getPrepareURL)(url),
|
|
173
324
|
"data-class": "phoneLink",
|
|
174
325
|
className: classNames?.phoneLink
|
|
175
326
|
},
|
|
176
327
|
fields.phone
|
|
177
|
-
), fields?.url && /* @__PURE__ */
|
|
328
|
+
), fields?.url && /* @__PURE__ */ import_react6.default.createElement(
|
|
178
329
|
"a",
|
|
179
330
|
{
|
|
180
331
|
target: "_blank",
|
|
181
332
|
rel: "noopener noreferrer",
|
|
182
|
-
href: (0,
|
|
333
|
+
href: (0, import_utils4.getPrepareURL)(url),
|
|
183
334
|
"data-class": "urlLink",
|
|
184
335
|
className: classNames?.urlLink
|
|
185
336
|
},
|
|
186
337
|
fields?.url
|
|
187
338
|
)));
|
|
188
339
|
}
|
|
189
|
-
var
|
|
340
|
+
var AdViewUnitNativeTemplate_default = AdViewUnitNativeTemplate;
|
|
190
341
|
|
|
191
|
-
// src/AdViewUnit/
|
|
192
|
-
var
|
|
193
|
-
function
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
}
|
|
342
|
+
// src/AdViewUnit/AdViewUnitProxyTemplate.tsx
|
|
343
|
+
var import_react7 = __toESM(require("react"), 1);
|
|
344
|
+
function AdViewUnitProxyTemplate({ className, style, data, state }) {
|
|
345
|
+
if (!data || !state?.isComplete) {
|
|
346
|
+
return null;
|
|
347
|
+
}
|
|
348
|
+
const { url, fields } = data;
|
|
198
349
|
const iframeSrc = fields?.url || url;
|
|
199
350
|
if (!iframeSrc) {
|
|
200
351
|
return null;
|
|
201
352
|
}
|
|
202
|
-
return /* @__PURE__ */
|
|
353
|
+
return /* @__PURE__ */ import_react7.default.createElement(
|
|
203
354
|
"iframe",
|
|
204
355
|
{
|
|
356
|
+
className,
|
|
205
357
|
width: "100%",
|
|
206
358
|
height: "100%",
|
|
207
359
|
frameBorder: "0",
|
|
@@ -210,123 +362,25 @@ function AdViewUnitProxy({
|
|
|
210
362
|
allowTransparency: true,
|
|
211
363
|
scrolling: "no",
|
|
212
364
|
allowFullScreen: true,
|
|
213
|
-
style: { width: "100%", height: "100%" },
|
|
365
|
+
style: { width: "100%", height: "100%", border: "none", ...style },
|
|
214
366
|
src: iframeSrc
|
|
215
367
|
}
|
|
216
368
|
);
|
|
217
369
|
}
|
|
218
|
-
var
|
|
219
|
-
|
|
220
|
-
// src/AdViewUnit/AdViewUnitBanner.tsx
|
|
221
|
-
var import_utils3 = require("@adview/core/utils");
|
|
222
|
-
var import_react4 = __toESM(require("react"), 1);
|
|
223
|
-
function AdViewUnitBanner({ assets, url }) {
|
|
224
|
-
const asset = (0, import_utils3.getAssetByName)("main", assets);
|
|
225
|
-
return /* @__PURE__ */ import_react4.default.createElement("center", null, /* @__PURE__ */ import_react4.default.createElement(
|
|
226
|
-
"a",
|
|
227
|
-
{
|
|
228
|
-
target: "_blank",
|
|
229
|
-
rel: "noopener noreferrer",
|
|
230
|
-
href: (0, import_utils3.getPrepareURL)(url),
|
|
231
|
-
className: "banner",
|
|
232
|
-
style: { fontSize: 0 }
|
|
233
|
-
},
|
|
234
|
-
asset && /* @__PURE__ */ import_react4.default.createElement(
|
|
235
|
-
"img",
|
|
236
|
-
{
|
|
237
|
-
alt: "main",
|
|
238
|
-
src: asset.path,
|
|
239
|
-
srcSet: asset.thumbs ? (0, import_utils3.getSrcSetCSSThumbs)(asset.thumbs) : ""
|
|
240
|
-
}
|
|
241
|
-
)
|
|
242
|
-
));
|
|
243
|
-
}
|
|
244
|
-
var AdViewUnitBanner_default = AdViewUnitBanner;
|
|
245
|
-
|
|
246
|
-
// src/AdViewUnit/AdViewUnitTypeSwitch.tsx
|
|
247
|
-
var import_react5 = __toESM(require("react"), 1);
|
|
248
|
-
function AdViewUnitTypeSwitch({
|
|
249
|
-
data,
|
|
250
|
-
classNames,
|
|
251
|
-
onDefault
|
|
252
|
-
}) {
|
|
253
|
-
switch (data?.type) {
|
|
254
|
-
case "native":
|
|
255
|
-
return /* @__PURE__ */ import_react5.default.createElement(AdViewUnitNative_default, { ...data, classNames: classNames?.native });
|
|
256
|
-
case "proxy":
|
|
257
|
-
return /* @__PURE__ */ import_react5.default.createElement(AdViewUnitProxy_default, { ...data, classNames: classNames?.proxy });
|
|
258
|
-
case "banner":
|
|
259
|
-
return /* @__PURE__ */ import_react5.default.createElement(AdViewUnitBanner_default, { ...data, classNames: classNames?.banner });
|
|
260
|
-
default:
|
|
261
|
-
if (import_react5.default.isValidElement(onDefault)) {
|
|
262
|
-
return import_react5.default.cloneElement(onDefault);
|
|
263
|
-
}
|
|
264
|
-
if (typeof onDefault === "function") {
|
|
265
|
-
return onDefault();
|
|
266
|
-
}
|
|
267
|
-
return null;
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
var AdViewUnitTypeSwitch_default = AdViewUnitTypeSwitch;
|
|
271
|
-
|
|
272
|
-
// src/AdViewUnit/AdViewUnitWrapper.server.tsx
|
|
273
|
-
async function AdViewUnitWrapperServer({
|
|
274
|
-
data,
|
|
275
|
-
children,
|
|
276
|
-
onDefault
|
|
277
|
-
}) {
|
|
278
|
-
const isChildrenReactNode = import_react6.default.isValidElement(children);
|
|
279
|
-
const isChildrenFunction = typeof children === "function";
|
|
280
|
-
const isLoadingError = data instanceof Error;
|
|
281
|
-
if (isChildrenReactNode) {
|
|
282
|
-
return import_react6.default.cloneElement(children, { data, onDefault });
|
|
283
|
-
}
|
|
284
|
-
if (isChildrenFunction) {
|
|
285
|
-
return children({ data, onDefault });
|
|
286
|
-
}
|
|
287
|
-
if (!children && !isLoadingError) {
|
|
288
|
-
return /* @__PURE__ */ import_react6.default.createElement(AdViewUnitTypeSwitch_default, { data, onDefault });
|
|
289
|
-
}
|
|
290
|
-
if (import_react6.default.isValidElement(onDefault)) {
|
|
291
|
-
return import_react6.default.cloneElement(onDefault);
|
|
292
|
-
}
|
|
293
|
-
if (typeof onDefault === "function") {
|
|
294
|
-
return onDefault();
|
|
295
|
-
}
|
|
296
|
-
return null;
|
|
297
|
-
}
|
|
298
|
-
var AdViewUnitWrapper_server_default = AdViewUnitWrapperServer;
|
|
299
|
-
|
|
300
|
-
// src/AdViewUnit/AdViewUnit.server.tsx
|
|
301
|
-
async function AdViewUnitServer({
|
|
302
|
-
unitId,
|
|
303
|
-
format,
|
|
304
|
-
children,
|
|
305
|
-
onDefault = () => null,
|
|
306
|
-
...config
|
|
307
|
-
}) {
|
|
308
|
-
const baseConfig = (0, import_utils4.getResolveConfig)(config);
|
|
309
|
-
const requestUrl = (0, import_utils4.getAdRequestUrl)(baseConfig, unitId, format);
|
|
310
|
-
const response = await (0, import_utils4.adViewFetcher)(requestUrl);
|
|
311
|
-
const isLoadingError = response instanceof Error;
|
|
312
|
-
const error = isLoadingError ? response : void 0;
|
|
313
|
-
const responseGroup = response instanceof Error ? null : response?.groups?.[0];
|
|
314
|
-
const customTracker = responseGroup?.custom_tracker ?? {};
|
|
315
|
-
const groupItems = responseGroup?.items;
|
|
316
|
-
if (groupItems && groupItems.length) {
|
|
317
|
-
return groupItems.map(({ tracker, ...data }) => {
|
|
318
|
-
return /* @__PURE__ */ import_react7.default.createElement(AdViewUnitTracking_default, { key: data.id, ...tracker }, /* @__PURE__ */ import_react7.default.createElement(AdViewUnitWrapper_server_default, { data, onDefault }, children));
|
|
319
|
-
});
|
|
320
|
-
}
|
|
321
|
-
return /* @__PURE__ */ import_react7.default.createElement(AdViewUnitTracking_default, { ...customTracker }, /* @__PURE__ */ import_react7.default.createElement(AdViewUnitWrapper_server_default, { data: error, onDefault }, children));
|
|
322
|
-
}
|
|
323
|
-
var AdViewUnit_server_default = AdViewUnitServer;
|
|
370
|
+
var AdViewUnitProxyTemplate_default = AdViewUnitProxyTemplate;
|
|
324
371
|
// Annotate the CommonJS export names for ESM import in node:
|
|
325
372
|
0 && (module.exports = {
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
373
|
+
AdViewUnitBannerTemplate,
|
|
374
|
+
AdViewUnitDefaultTemplate,
|
|
375
|
+
AdViewUnitNativeTemplate,
|
|
376
|
+
AdViewUnitProxyTemplate,
|
|
377
|
+
AdViewUnitServer,
|
|
378
|
+
AdViewUnitTemplate,
|
|
379
|
+
BannerTemplate,
|
|
380
|
+
DefaultTemplate,
|
|
381
|
+
NativeTemplate,
|
|
382
|
+
ProxyTemplate,
|
|
383
|
+
Template,
|
|
384
|
+
Unit
|
|
331
385
|
});
|
|
332
386
|
//# sourceMappingURL=server.cjs.map
|
package/dist/server.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/server.ts","../src/AdViewUnit/AdViewUnit.server.tsx","../src/AdViewUnit/AdViewUnitTracking.tsx","../src/AdViewUnit/AdViewUnitWrapper.server.tsx","../src/AdViewUnit/AdViewUnitNative.tsx","../src/AdViewUnit/AdViewUnitProxy.tsx","../src/AdViewUnit/AdViewUnitBanner.tsx","../src/AdViewUnit/AdViewUnitTypeSwitch.tsx"],"sourcesContent":["import AdViewUnitServer from './AdViewUnit/AdViewUnit.server';\nimport AdViewUnitBanner from './AdViewUnit/AdViewUnitBanner';\nimport AdViewUnitNative from './AdViewUnit/AdViewUnitNative';\nimport AdViewUnitProxy from './AdViewUnit/AdViewUnitProxy';\nimport AdViewUnitTypeSwitch from './AdViewUnit/AdViewUnitTypeSwitch';\n\nexport {\n AdViewUnitBanner as Banner,\n AdViewUnitNative as Native,\n AdViewUnitProxy as Proxy,\n AdViewUnitServer as Server,\n AdViewUnitTypeSwitch as TypeSwitch\n};\n\n","import React from 'react';\n\nimport { AdViewGroupItem } from '@adview/core/typings';\nimport { adViewFetcher, getAdRequestUrl, getResolveConfig } from '@adview/core/utils';\nimport { AdViewUnitPropsBase, AdViewUnitServerChildren } from '../types';\nimport AdViewUnitTracking from './AdViewUnitTracking';\nimport AdViewUnitWrapperServer from './AdViewUnitWrapper.server';\n\nexport type AdViewUnitServerProps = AdViewUnitPropsBase & {\n children?: AdViewUnitServerChildren;\n};\n\nasync function AdViewUnitServer({\n unitId,\n format,\n children,\n onDefault = () => null,\n ...config\n}: AdViewUnitServerProps) {\n const baseConfig = getResolveConfig(config);\n const requestUrl = getAdRequestUrl(baseConfig, unitId, format);\n const response = await adViewFetcher(requestUrl);\n const isLoadingError = response instanceof Error;\n const error = isLoadingError ? response : undefined;\n const responseGroup =\n response instanceof Error ? null : response?.groups?.[0];\n const customTracker = responseGroup?.custom_tracker ?? {};\n const groupItems = responseGroup?.items;\n\n if (groupItems && groupItems.length) {\n return groupItems.map(({ tracker, ...data }: AdViewGroupItem) => {\n return (\n <AdViewUnitTracking key={data.id} {...tracker}>\n <AdViewUnitWrapperServer data={data} onDefault={onDefault}>\n {children}\n </AdViewUnitWrapperServer>\n </AdViewUnitTracking>\n );\n });\n }\n\n return (\n <AdViewUnitTracking {...customTracker}>\n <AdViewUnitWrapperServer data={error} onDefault={onDefault}>\n {children}\n </AdViewUnitWrapperServer>\n </AdViewUnitTracking>\n );\n}\n\nexport default AdViewUnitServer;\n","'use client';\n\nimport { executeImpressionsTracking } from '@adview/core/utils';\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\n\ntype AdViewUnitTrackingProps = {\n impressions?: string[];\n views?: string[];\n clicks?: string[];\n children: React.ReactNode;\n};\n\nfunction AdViewUnitTracking({\n impressions,\n views,\n clicks,\n children,\n}: AdViewUnitTrackingProps) {\n const isServer = typeof window === 'undefined';\n const wrapperRef = useRef<HTMLDivElement>(null);\n const executeImpressionsTrackingHandler = useCallback(\n () => executeImpressionsTracking(impressions),\n [impressions],\n );\n const trackingObserverInstanceHandler = useCallback(\n (entries: IntersectionObserverEntry[]) => {\n entries.forEach(entry => {\n if (entry.isIntersecting) {\n executeImpressionsTracking(views);\n trackingObserverInstance?.unobserve(wrapperRef.current!);\n }\n });\n },\n [views],\n );\n const trackingObserverInstance = useMemo<IntersectionObserver | null>(() => {\n return !isServer\n ? new IntersectionObserver(trackingObserverInstanceHandler)\n : null;\n }, [isServer, trackingObserverInstanceHandler]);\n const clickTrackerHandler = useCallback(() => {\n executeImpressionsTracking(clicks);\n\n wrapperRef.current?.removeEventListener('click', clickTrackerHandler);\n }, [clicks]);\n\n useEffect(() => {\n if (wrapperRef.current && trackingObserverInstance) {\n executeImpressionsTrackingHandler();\n wrapperRef.current?.addEventListener('click', clickTrackerHandler);\n trackingObserverInstance?.observe(wrapperRef.current);\n\n return () => {\n wrapperRef.current?.removeEventListener('click', clickTrackerHandler);\n if (wrapperRef.current)\n trackingObserverInstance?.unobserve(wrapperRef.current);\n };\n }\n\n return () => {};\n }, [\n trackingObserverInstance,\n executeImpressionsTrackingHandler,\n clickTrackerHandler,\n ]);\n\n return <div ref={wrapperRef}>{children}</div>;\n}\n\nexport default AdViewUnitTracking;\n","import React from 'react';\nimport AdViewUnitTypeSwitch from './/AdViewUnitTypeSwitch';\n\nimport {\n AdViewUnitDefault,\n AdViewUnitServerChildren,\n AdViewUnitServerChildrenProps,\n} from '../types';\n\nexport type AdViewUnitWrapperServerProps = AdViewUnitServerChildrenProps & {\n children?: AdViewUnitServerChildren;\n onDefault?: AdViewUnitDefault;\n};\n\nasync function AdViewUnitWrapperServer({\n data,\n children,\n onDefault,\n}: AdViewUnitWrapperServerProps) {\n const isChildrenReactNode = React.isValidElement(children);\n const isChildrenFunction = typeof children === 'function';\n const isLoadingError = data instanceof Error;\n\n if (isChildrenReactNode) {\n return React.cloneElement(children, { data, onDefault });\n }\n\n if (isChildrenFunction) {\n return children({ data, onDefault });\n }\n\n if (!children && !isLoadingError) {\n return <AdViewUnitTypeSwitch data={data} onDefault={onDefault} />;\n }\n\n if (React.isValidElement(onDefault)) {\n return React.cloneElement(onDefault);\n }\n\n if (typeof onDefault === 'function') {\n return onDefault();\n }\n\n return null;\n}\n\nexport default AdViewUnitWrapperServer;\n","import { getAssetByName, getPrepareURL, getSrcSetCSSThumbs } from '@adview/core/utils';\nimport React from 'react';\nimport { AdViewDataClient, AdViewStyleTokensNative } from '../types';\n\ntype AdViewUnitNativeProps = AdViewDataClient & {\n classNames?: AdViewStyleTokensNative;\n};\n\nfunction AdViewUnitNative({\n assets,\n fields,\n url,\n classNames,\n}: AdViewUnitNativeProps) {\n const asset = getAssetByName('main', assets);\n\n if (!url) {\n return null;\n }\n\n return (\n <div className={classNames?.container}>\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n className={classNames?.imageLink}\n >\n {asset && (\n <img\n alt={fields?.title}\n title={fields?.title}\n src={asset.path}\n srcSet={asset.thumbs ? getSrcSetCSSThumbs(asset.thumbs) : undefined}\n className={classNames?.image}\n style={{ objectFit: 'cover', width: '100%', height: '100%' }}\n />\n )}\n </a>\n <div className={classNames?.label}>\n {fields?.title && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"titleLink\"\n className={classNames?.titleLink}\n >\n {fields.title}\n </a>\n )}\n {fields?.description && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"descriptionLink\"\n className={classNames?.descriptionLink}\n >\n {fields.description}\n </a>\n )}\n {fields?.brandname && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"brandNameLink\"\n className={classNames?.brandNameLink}\n >\n {fields.brandname}\n </a>\n )}\n {fields?.phone && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"phoneLink\"\n className={classNames?.phoneLink}\n >\n {fields.phone}\n </a>\n )}\n {fields?.url && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"urlLink\"\n className={classNames?.urlLink}\n >\n {fields?.url}\n </a>\n )}\n </div>\n </div>\n );\n}\n\nexport default AdViewUnitNative;\n","import React from 'react';\nimport { AdViewDataClient, AdViewStyleTokensNative } from '../types';\n\ntype AdViewUnitProxyProps = AdViewDataClient & {\n classNames?: AdViewStyleTokensNative;\n};\n\nfunction AdViewUnitProxy({\n // assets,\n fields,\n url,\n}: AdViewUnitProxyProps) {\n const iframeSrc = fields?.url || url;\n\n if (!iframeSrc) {\n return null;\n }\n\n return (\n <iframe\n width=\"100%\"\n height=\"100%\"\n frameBorder=\"0\"\n marginWidth={0}\n marginHeight={0}\n allowTransparency={true}\n scrolling=\"no\"\n allowFullScreen={true}\n style={{ width: '100%', height: '100%' }}\n src={iframeSrc}\n ></iframe>\n );\n}\n\nexport default AdViewUnitProxy;\n","import { getAssetByName, getPrepareURL, getSrcSetCSSThumbs } from '@adview/core/utils';\nimport React from 'react';\nimport { AdViewDataClient, AdViewStyleTokensNative } from '../types';\n\ntype AdViewUnitBannerProps = AdViewDataClient & {\n classNames?: AdViewStyleTokensNative;\n};\n\nfunction AdViewUnitBanner({ assets, url }: AdViewUnitBannerProps) {\n const asset = getAssetByName('main', assets);\n\n return (\n <center>\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n className=\"banner\"\n style={{ fontSize: 0 }}\n >\n {asset && (\n <img\n alt=\"main\"\n src={asset.path}\n srcSet={asset.thumbs ? getSrcSetCSSThumbs(asset.thumbs) : ''}\n />\n )}\n </a>\n </center>\n );\n}\n\nexport default AdViewUnitBanner;\n","import {\n AdViewDataClient,\n AdViewStyleTokens,\n AdViewUnitDefault,\n} from '../types';\nimport AdViewUnitNative from './AdViewUnitNative';\nimport AdViewUnitProxy from './AdViewUnitProxy';\nimport AdViewUnitBanner from './AdViewUnitBanner';\nimport React from 'react';\n\ntype AdViewUnitDefaultProps = {\n data?: AdViewDataClient;\n classNames?: AdViewStyleTokens;\n onDefault?: AdViewUnitDefault;\n};\n\nfunction AdViewUnitTypeSwitch({\n data,\n classNames,\n onDefault,\n}: AdViewUnitDefaultProps) {\n switch (data?.type) {\n case 'native':\n return <AdViewUnitNative {...data} classNames={classNames?.native} />;\n case 'proxy':\n return <AdViewUnitProxy {...data} classNames={classNames?.proxy} />;\n case 'banner':\n return <AdViewUnitBanner {...data} classNames={classNames?.banner} />;\n default:\n if (React.isValidElement(onDefault)) {\n return React.cloneElement(onDefault);\n }\n\n if (typeof onDefault === 'function') {\n return onDefault();\n }\n\n return null;\n }\n}\n\nexport default AdViewUnitTypeSwitch;\n"],"mappings":"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","names":["import_react","import_utils","React","import_react","import_utils","import_react","React","import_react","React","import_utils","import_react","React","import_react","React","React","React"]}
|
|
1
|
+
{"version":3,"sources":["../src/server.ts","../src/AdViewUnit/AdViewUnit.server.tsx","../src/AdViewUnit/AdViewUnitTemplate.tsx","../src/AdViewUnit/AdViewUnitTracking.tsx","../src/AdViewUnit/AdViewUnitBannerTemplate.tsx","../src/AdViewUnit/AdViewUnitDefaultTemplate.tsx","../src/AdViewUnit/AdViewUnitNativeTemplate.tsx","../src/AdViewUnit/AdViewUnitProxyTemplate.tsx"],"sourcesContent":["import AdViewUnitServer from './AdViewUnit/AdViewUnit.server';\nimport AdViewUnitBannerTemplate from './AdViewUnit/AdViewUnitBannerTemplate';\nimport AdViewUnitDefaultTemplate from './AdViewUnit/AdViewUnitDefaultTemplate';\nimport AdViewUnitNativeTemplate from './AdViewUnit/AdViewUnitNativeTemplate';\nimport AdViewUnitProxyTemplate from './AdViewUnit/AdViewUnitProxyTemplate';\nimport AdViewUnitTemplate from './AdViewUnit/AdViewUnitTemplate';\n\nexport {\n AdViewUnitBannerTemplate,\n AdViewUnitDefaultTemplate,\n AdViewUnitNativeTemplate,\n AdViewUnitProxyTemplate,\n AdViewUnitServer,\n AdViewUnitTemplate,\n\n AdViewUnitBannerTemplate as BannerTemplate,\n AdViewUnitDefaultTemplate as DefaultTemplate,\n AdViewUnitNativeTemplate as NativeTemplate,\n AdViewUnitProxyTemplate as ProxyTemplate,\n AdViewUnitTemplate as Template,\n AdViewUnitServer as Unit\n};\n","import React from 'react';\n\nimport { AdViewGroupItem } from '@adview/core/typings';\nimport { adViewFetcher, getAdRequestUrl, getResolveConfig } from '@adview/core/utils';\nimport { AdViewUnitPropsBase, AdViewUnitServerChildren } from '../types';\nimport { renderAnyTemplates } from './AdViewUnitTemplate';\nimport AdViewUnitTracking from './AdViewUnitTracking';\n\nexport type AdViewUnitServerProps = AdViewUnitPropsBase & {\n children?: AdViewUnitServerChildren;\n};\n\nasync function AdViewUnitServer({\n unitId,\n format,\n children,\n ...config\n}: AdViewUnitServerProps) {\n const baseConfig = getResolveConfig(config);\n const requestUrl = getAdRequestUrl(baseConfig, unitId, format);\n const response = await adViewFetcher(requestUrl);\n const isLoadingError = response instanceof Error;\n const error = isLoadingError ? response : undefined;\n const responseGroup =\n response instanceof Error ? null : response?.groups?.[0];\n const customTracker = responseGroup?.custom_tracker ?? {};\n const groupItems = responseGroup?.items;\n\n if (groupItems && groupItems.length) {\n return groupItems.map(({ tracker, ...data }: AdViewGroupItem) => {\n return (\n <AdViewUnitTracking key={data.id} {...tracker}>\n {renderAnyTemplates(children, {data, type: data.type || 'default', error, state: {\n isLoading: true,\n isComplete: true,\n isInitial: false,\n isError: isLoadingError,\n }})}\n </AdViewUnitTracking>\n );\n });\n }\n\n return (\n <AdViewUnitTracking {...customTracker}>\n {renderAnyTemplates(children, {data: null, type: 'default', error, state: {\n isLoading: true,\n isComplete: true,\n isInitial: false,\n isError: isLoadingError,\n }})}\n </AdViewUnitTracking>\n );\n}\n\nexport default AdViewUnitServer;\n","//\n// Example\n// <AdView.Unit>\n// <AdView.Template type=\"banner\">\n// <...>\n// </AdView.Template>\n// </AdView.Unit>\n//\n\nimport React, { JSX } from 'react';\nimport { AdViewUnitClientChildrenProps, AdViewUnitTemplateProps, AdViewUnitTemplateTypeProps } from '../types';\n\n// TemplateListRender is a function that takes a list of TemplateType and returns a React element\nexport type TemplateListRender = (tmpls: TemplateElement[]) => React.ReactElement | JSX.Element;\n\n// TemplateType is a React component that can be used to render ad templates\nexport type TemplateType = React.Component<AdViewUnitTemplateProps>;\nexport type TemplateElement = React.ReactElement<AdViewUnitTemplateProps>;\n\n// TemplateTypeFunction is a function that takes AdViewUnitTemplateTypeProps and returns a React node or element\nexport type TemplateTypeFunction = (props: AdViewUnitTemplateTypeProps) => React.ReactNode | React.ReactElement;\n\n// templateFromListRender is a function that takes a list of TemplateType and returns a React element\nexport const templateFromListRender = (tmpls: TemplateElement[], data: AdViewUnitTemplateTypeProps, wrap?: (children: React.ReactNode) => React.ReactNode): JSX.Element | React.ReactElement => {\n let renderedRemplates = tmpls.map((tmpl, index) => {\n let tmp = renderTemplate(tmpl, data);\n return !!tmp && React.isValidElement(tmp)\n ? <React.Fragment key={index}>{!!wrap ? wrap(tmp) : tmp}</React.Fragment>\n : null;\n }).filter(it => !!it);\n\n if (!renderedRemplates.length) {\n renderedRemplates = tmpls.map((tmpl, index) => {\n let tmp = renderTemplate(tmpl, {...data, type: 'default'});\n return !!tmp && React.isValidElement(tmp)\n ? <React.Fragment key={index}>{!!wrap ? wrap(tmp) : tmp}</React.Fragment>\n : null;\n }).filter(it => !!it);\n }\n\n return (<>{renderedRemplates}</>);\n};\n\n// renderTemplate is a function that takes a TemplateType or a function and returns a React node\nexport const renderTemplate = (tmpl: TemplateElement | TemplateTypeFunction, data: AdViewUnitTemplateTypeProps): React.ReactNode => {\n const isFunction = typeof tmpl === 'function';\n const isReactElement = React.isValidElement(tmpl);\n\n if (isReactElement) {\n // Extract type and children from the React element\n const { type, children } = (tmpl as TemplateElement).props;\n console.log('=====>\\nrenderTemplate: React element detected, type:', type, 'data:', data.type, data.type !== type);\n // If the type does not match, return null\n if (data.type !== type) {\n return null;\n }\n // If children is a function, call it with the data\n if (typeof children === 'function') {\n return children(data as AdViewUnitClientChildrenProps);\n }\n console.log('CLONE ELEMENT', tmpl);\n // If children is a React element, clone it with the new props\n return React.cloneElement((tmpl as TemplateElement), {\n ...data,\n children: children,\n });\n }\n\n if (isFunction) {\n return tmpl(data);\n }\n\n return null;\n}\n\n// renderTemplates is a function that takes a list of TemplateType and returns a React element\nexport const renderTemplates = (tmpls: TemplateElement[], data: AdViewUnitTemplateTypeProps, listRender?: TemplateListRender): React.ReactNode | React.ReactElement | JSX.Element => {\n return listRender ? listRender(tmpls) : templateFromListRender(tmpls, data);\n};\n\nexport const renderAnyTemplates = (tmpls: any, data: AdViewUnitTemplateTypeProps, listRender?: TemplateListRender): React.ReactNode | React.ReactElement | JSX.Element | null => {\n if (!tmpls) {\n return null;\n }\n\n if (Array.isArray(tmpls)) {\n return renderTemplates(tmpls as TemplateElement[], data, listRender);\n }\n\n if (typeof tmpls === 'function') {\n return tmpls(data);\n }\n\n if (React.isValidElement(tmpls)) {\n return templateFromListRender([tmpls as TemplateElement], data);\n }\n\n return null;\n}\n\n// Template is a React component that renders a template based on the type and data provided\n// Example usage:\n// <AdView.Unit>\n// <AdView.Template type=\"banner\" data={{...}}>\n// </AdView.Unit>\nconst AdViewUnitTemplate = ({ type, children, ...data }: AdViewUnitTemplateProps) => {\n const tmplProps: AdViewUnitTemplateTypeProps = {\n type,\n ...data,\n };\n\n // If children is a function, call it with the data\n if (typeof children === 'function') {\n return children(tmplProps as AdViewUnitClientChildrenProps) as React.ReactElement;\n }\n\n // If children is a React element, clone it with the new props\n if (React.isValidElement(children)) {\n return React.cloneElement(children, tmplProps);\n }\n\n // If no children are provided, return an empty fragment\n return <></>;\n}\n\nexport default AdViewUnitTemplate;\n","'use client';\n\nimport { executeImpressionsTracking } from '@adview/core/utils';\nimport React, { useCallback, useEffect, useMemo, useRef } from 'react';\n\ntype AdViewUnitTrackingProps = {\n impressions?: string[];\n views?: string[];\n clicks?: string[];\n children: React.ReactNode;\n};\n\nfunction AdViewUnitTracking({\n impressions,\n views,\n clicks,\n children,\n}: AdViewUnitTrackingProps) {\n const isServer = typeof window === 'undefined';\n const wrapperRef = useRef<HTMLDivElement>(null);\n const executeImpressionsTrackingHandler = useCallback(\n () => executeImpressionsTracking(impressions),\n [impressions],\n );\n const trackingObserverInstanceHandler = useCallback(\n (entries: IntersectionObserverEntry[]) => {\n entries.forEach(entry => {\n if (entry.isIntersecting) {\n executeImpressionsTracking(views);\n trackingObserverInstance?.unobserve(wrapperRef.current!);\n }\n });\n },\n [views],\n );\n const trackingObserverInstance = useMemo<IntersectionObserver | null>(() => {\n return !isServer\n ? new IntersectionObserver(trackingObserverInstanceHandler)\n : null;\n }, [isServer, trackingObserverInstanceHandler]);\n const clickTrackerHandler = useCallback(() => {\n executeImpressionsTracking(clicks);\n\n wrapperRef.current?.removeEventListener('click', clickTrackerHandler);\n }, [clicks]);\n\n useEffect(() => {\n if (wrapperRef.current && trackingObserverInstance) {\n executeImpressionsTrackingHandler();\n wrapperRef.current?.addEventListener('click', clickTrackerHandler);\n trackingObserverInstance?.observe(wrapperRef.current);\n\n return () => {\n wrapperRef.current?.removeEventListener('click', clickTrackerHandler);\n if (wrapperRef.current)\n trackingObserverInstance?.unobserve(wrapperRef.current);\n };\n }\n\n return () => {};\n }, [\n trackingObserverInstance,\n executeImpressionsTrackingHandler,\n clickTrackerHandler,\n ]);\n\n return <div ref={wrapperRef}>{children}</div>;\n}\n\nexport default AdViewUnitTracking;\n","import { getAssetByName, getPrepareURL, getSrcSetCSSThumbs } from '@adview/core/utils';\nimport React from 'react';\nimport { AdViewUnitTemplateTypeProps } from '../types';\n\ntype AdViewUnitBannerTemplateProps = Omit<AdViewUnitTemplateTypeProps, 'type'> & {\n type?: 'banner';\n className?: string;\n style?: React.CSSProperties;\n};\n\nfunction AdViewUnitBannerTemplate({className=\"banner\", style, data, state}: AdViewUnitBannerTemplateProps) {\n if (!data || !data.assets || !data.assets.length || !state?.isComplete) {\n return null;\n }\n const asset = getAssetByName('main', data.assets);\n\n return (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(data.url)}\n className={className}\n style={{ fontSize: 0, ...style }}\n >\n {asset && (\n <img\n alt=\"main\"\n src={asset.path}\n srcSet={asset.thumbs ? getSrcSetCSSThumbs(asset.thumbs) : ''}\n />\n )}\n </a>\n );\n}\n\nexport default AdViewUnitBannerTemplate;\n","import React from \"react\";\nimport { AdViewOptionalDataProps, AdViewUnitTemplateTypeProps } from \"../types\";\n\ntype AdViewUnitDefaultTemplateProps = Omit<AdViewUnitTemplateTypeProps, 'type'> & {\n type?: 'default';\n children?: React.ReactNode | ((props: AdViewOptionalDataProps) => React.ReactNode);\n};\n\nfunction AdViewUnitDefaultTemplate({ type='default', data, state, children, ...props }: AdViewUnitDefaultTemplateProps) {\n if (typeof children === 'function') {\n return <>{children({ data, state, ...props })}</>;\n }\n\n return (\n children ? <>{children}</> : (\n <div style={{ padding: '1rem', textAlign: 'center', color: '#666' }}>\n <p>🔄 Default content for ad unit</p>\n <p>Data: {JSON.stringify(data)}</p>\n <p>State: {JSON.stringify(state)}</p>\n </div>\n )\n );\n}\n\nAdViewUnitDefaultTemplate.defaultProps = {\n type: 'default',\n children: null,\n};\n\nexport default AdViewUnitDefaultTemplate;\n","import { getAssetByName, getPrepareURL, getSrcSetCSSThumbs } from '@adview/core/utils';\nimport React from 'react';\nimport { AdViewStyleTokensNative, AdViewUnitTemplateTypeProps } from '../types';\n\ntype AdViewUnitNativeTemplateProps = Omit<AdViewUnitTemplateTypeProps, 'type'> & {\n type?: 'native';\n classNames?: AdViewStyleTokensNative;\n};\n\nfunction AdViewUnitNativeTemplate({classNames, data, state}: AdViewUnitNativeTemplateProps) {\n if (!data || !data.assets || !data.assets.length || !state?.isComplete) {\n return null;\n }\n const { assets, url, fields } = data;\n const asset = getAssetByName('main', assets);\n\n if (!url) {\n return null;\n }\n\n return (\n <div className={classNames?.container}>\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n className={classNames?.imageLink}\n >\n {asset && (\n <img\n alt={fields?.title}\n title={fields?.title}\n src={asset.path}\n srcSet={asset.thumbs ? getSrcSetCSSThumbs(asset.thumbs) : undefined}\n className={classNames?.image}\n style={{ objectFit: 'cover', width: '100%', height: '100%' }}\n />\n )}\n </a>\n <div className={classNames?.label}>\n {fields?.title && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"titleLink\"\n className={classNames?.titleLink}\n >\n {fields.title}\n </a>\n )}\n {fields?.description && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"descriptionLink\"\n className={classNames?.descriptionLink}\n >\n {fields.description}\n </a>\n )}\n {fields?.brandname && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"brandNameLink\"\n className={classNames?.brandNameLink}\n >\n {fields.brandname}\n </a>\n )}\n {fields?.phone && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"phoneLink\"\n className={classNames?.phoneLink}\n >\n {fields.phone}\n </a>\n )}\n {fields?.url && (\n <a\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n href={getPrepareURL(url)}\n data-class=\"urlLink\"\n className={classNames?.urlLink}\n >\n {fields?.url}\n </a>\n )}\n </div>\n </div>\n );\n}\n\nexport default AdViewUnitNativeTemplate;\n","import React from 'react';\nimport { AdViewUnitTemplateTypeProps } from '../types';\n\ntype AdViewUnitProxyTemplateProps = Omit<AdViewUnitTemplateTypeProps, 'type'> & {\n type?: 'proxy';\n className?: string;\n style?: React.CSSProperties;\n};\n\nfunction AdViewUnitProxyTemplate({className, style, data, state}: AdViewUnitProxyTemplateProps) {\n if (!data || !state?.isComplete) {\n return null;\n }\n const { url, fields } = data;\n const iframeSrc = fields?.url || url;\n\n if (!iframeSrc) {\n return null;\n }\n\n return (\n <iframe\n className={className}\n width=\"100%\"\n height=\"100%\"\n frameBorder=\"0\"\n marginWidth={0}\n marginHeight={0}\n allowTransparency={true}\n scrolling=\"no\"\n allowFullScreen={true}\n style={{ width: '100%', height: '100%', border: 'none', ...style }}\n src={iframeSrc}\n ></iframe>\n );\n}\n\nexport default AdViewUnitProxyTemplate;\n"],"mappings":"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","names":["import_react","import_utils","React","import_react","React","React","import_utils","import_react","React","import_react","React","import_utils","import_react","React","import_react","React"]}
|
package/dist/server.d.cts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
export { default as
|
|
2
|
-
export { default as
|
|
3
|
-
export { default as
|
|
4
|
-
export { default as
|
|
5
|
-
export { default as
|
|
1
|
+
export { default as AdViewUnitServer, default as Unit } from './AdViewUnit/AdViewUnit.server.cjs';
|
|
2
|
+
export { default as AdViewUnitBannerTemplate, default as BannerTemplate } from './AdViewUnit/AdViewUnitBannerTemplate.cjs';
|
|
3
|
+
export { default as AdViewUnitDefaultTemplate, default as DefaultTemplate } from './AdViewUnit/AdViewUnitDefaultTemplate.cjs';
|
|
4
|
+
export { default as AdViewUnitNativeTemplate, default as NativeTemplate } from './AdViewUnit/AdViewUnitNativeTemplate.cjs';
|
|
5
|
+
export { default as AdViewUnitProxyTemplate, default as ProxyTemplate } from './AdViewUnit/AdViewUnitProxyTemplate.cjs';
|
|
6
|
+
export { default as AdViewUnitTemplate, default as Template } from './AdViewUnit/AdViewUnitTemplate.cjs';
|
|
6
7
|
import 'react';
|
|
7
|
-
import './types-
|
|
8
|
+
import './types-B65WDsgh.cjs';
|
|
8
9
|
import '@adview/core/typings';
|
package/dist/server.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
export { default as
|
|
2
|
-
export { default as
|
|
3
|
-
export { default as
|
|
4
|
-
export { default as
|
|
5
|
-
export { default as
|
|
1
|
+
export { default as AdViewUnitServer, default as Unit } from './AdViewUnit/AdViewUnit.server.js';
|
|
2
|
+
export { default as AdViewUnitBannerTemplate, default as BannerTemplate } from './AdViewUnit/AdViewUnitBannerTemplate.js';
|
|
3
|
+
export { default as AdViewUnitDefaultTemplate, default as DefaultTemplate } from './AdViewUnit/AdViewUnitDefaultTemplate.js';
|
|
4
|
+
export { default as AdViewUnitNativeTemplate, default as NativeTemplate } from './AdViewUnit/AdViewUnitNativeTemplate.js';
|
|
5
|
+
export { default as AdViewUnitProxyTemplate, default as ProxyTemplate } from './AdViewUnit/AdViewUnitProxyTemplate.js';
|
|
6
|
+
export { default as AdViewUnitTemplate, default as Template } from './AdViewUnit/AdViewUnitTemplate.js';
|
|
6
7
|
import 'react';
|
|
7
|
-
import './types-
|
|
8
|
+
import './types-B65WDsgh.js';
|
|
8
9
|
import '@adview/core/typings';
|