@builder.io/sdk 3.0.2-2 → 3.0.3
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/.yarnrc.yml +1 -0
- package/CHANGELOG.md +13 -0
- package/dist/index.browser.js +71 -18
- package/dist/index.browser.js.map +1 -1
- package/dist/index.cjs.js +71 -18
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +71 -18
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +13 -49
- package/dist/index.umd.js +71 -18
- package/dist/index.umd.js.map +1 -1
- package/dist/package.json +1 -3
- package/dist/src/builder.class.d.ts +7 -0
- package/dist/src/builder.class.js +70 -17
- package/dist/src/builder.class.js.map +1 -1
- package/dist/src/builder.class.test.js +757 -170
- package/dist/src/builder.class.test.js.map +1 -1
- package/dist/src/classes/animator.class.js +195 -218
- package/dist/src/classes/observable.class.js +97 -102
- package/dist/src/classes/promise.class.js +154 -150
- package/dist/src/classes/query-string.class.js +74 -73
- package/dist/src/classes/query-string.class.test.js +20 -20
- package/dist/src/constants/builder.js +4 -4
- package/dist/src/functions/assign.function.js +19 -19
- package/dist/src/functions/fetch.function.js +75 -97
- package/dist/src/functions/finder.function.js +274 -389
- package/dist/src/functions/next-tick.function.js +23 -26
- package/dist/src/functions/omit.function.js +13 -13
- package/dist/src/functions/server-only-require.function.js +9 -10
- package/dist/src/functions/throttle.function.js +37 -35
- package/dist/src/functions/to-error.js +6 -5
- package/dist/src/functions/uuid.js +8 -9
- package/dist/src/types/api-version.js +3 -3
- package/dist/src/types/content.js +3 -3
- package/dist/src/types/element.js +3 -3
- package/dist/src/url.js +42 -41
- package/dist/src/url.test.js +118 -222
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -6
- package/dist/src/functions/get-top-level-domain.d.ts +0 -6
- package/dist/src/functions/get-top-level-domain.js +0 -17
- package/dist/src/functions/get-top-level-domain.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,49 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports,
|
|
3
|
-
exports.builder =
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
return builder_class_1.Builder;
|
|
15
|
-
},
|
|
16
|
-
});
|
|
17
|
-
Object.defineProperty(exports, 'BuilderComponent', {
|
|
18
|
-
enumerable: true,
|
|
19
|
-
get: function () {
|
|
20
|
-
return builder_class_1.BuilderComponent;
|
|
21
|
-
},
|
|
22
|
-
});
|
|
23
|
-
Object.defineProperty(exports, 'isBrowser', {
|
|
24
|
-
enumerable: true,
|
|
25
|
-
get: function () {
|
|
26
|
-
return builder_class_1.isBrowser;
|
|
27
|
-
},
|
|
28
|
-
});
|
|
29
|
-
var observable_class_1 = require('./src/classes/observable.class');
|
|
30
|
-
Object.defineProperty(exports, 'BehaviorSubject', {
|
|
31
|
-
enumerable: true,
|
|
32
|
-
get: function () {
|
|
33
|
-
return observable_class_1.BehaviorSubject;
|
|
34
|
-
},
|
|
35
|
-
});
|
|
36
|
-
Object.defineProperty(exports, 'Subscription', {
|
|
37
|
-
enumerable: true,
|
|
38
|
-
get: function () {
|
|
39
|
-
return observable_class_1.Subscription;
|
|
40
|
-
},
|
|
41
|
-
});
|
|
42
|
-
var builder_1 = require('./src/constants/builder');
|
|
43
|
-
Object.defineProperty(exports, 'builder', {
|
|
44
|
-
enumerable: true,
|
|
45
|
-
get: function () {
|
|
46
|
-
return builder_1.builder;
|
|
47
|
-
},
|
|
48
|
-
});
|
|
49
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.builder = exports.Subscription = exports.BehaviorSubject = exports.isBrowser = exports.BuilderComponent = exports.Builder = void 0;
|
|
4
|
+
var builder_class_1 = require("./src/builder.class");
|
|
5
|
+
Object.defineProperty(exports, "Builder", { enumerable: true, get: function () { return builder_class_1.Builder; } });
|
|
6
|
+
Object.defineProperty(exports, "BuilderComponent", { enumerable: true, get: function () { return builder_class_1.BuilderComponent; } });
|
|
7
|
+
Object.defineProperty(exports, "isBrowser", { enumerable: true, get: function () { return builder_class_1.isBrowser; } });
|
|
8
|
+
var observable_class_1 = require("./src/classes/observable.class");
|
|
9
|
+
Object.defineProperty(exports, "BehaviorSubject", { enumerable: true, get: function () { return observable_class_1.BehaviorSubject; } });
|
|
10
|
+
Object.defineProperty(exports, "Subscription", { enumerable: true, get: function () { return observable_class_1.Subscription; } });
|
|
11
|
+
var builder_1 = require("./src/constants/builder");
|
|
12
|
+
Object.defineProperty(exports, "builder", { enumerable: true, get: function () { return builder_1.builder; } });
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
package/dist/index.umd.js
CHANGED
|
@@ -152,7 +152,7 @@
|
|
|
152
152
|
throw new Error("Property name \"".concat(name, "\" is not allowed"));
|
|
153
153
|
}
|
|
154
154
|
|
|
155
|
-
var version = "3.0.
|
|
155
|
+
var version = "3.0.3";
|
|
156
156
|
|
|
157
157
|
var Subscription = /** @class */ (function () {
|
|
158
158
|
function Subscription(listeners, listener) {
|
|
@@ -1302,6 +1302,17 @@
|
|
|
1302
1302
|
this.setTestsFromUrl();
|
|
1303
1303
|
// TODO: do this on every request send?
|
|
1304
1304
|
this.getOverridesFromQueryString();
|
|
1305
|
+
// cookies used in personalization container script, so need to set before hydration to match script result
|
|
1306
|
+
var userAttrCookie = this.getCookie(Builder.attributesCookieName);
|
|
1307
|
+
if (userAttrCookie) {
|
|
1308
|
+
try {
|
|
1309
|
+
var attributes = JSON.parse(userAttrCookie);
|
|
1310
|
+
this.setUserAttributes(attributes);
|
|
1311
|
+
}
|
|
1312
|
+
catch (err) {
|
|
1313
|
+
console.debug('Error parsing user attributes cookie', err);
|
|
1314
|
+
}
|
|
1315
|
+
}
|
|
1305
1316
|
}
|
|
1306
1317
|
}
|
|
1307
1318
|
Builder.register = function (type, info) {
|
|
@@ -2191,12 +2202,9 @@
|
|
|
2191
2202
|
};
|
|
2192
2203
|
Builder.prototype.setUserAttributes = function (options) {
|
|
2193
2204
|
assign(Builder.overrideUserAttributes, options);
|
|
2194
|
-
|
|
2205
|
+
if (this.canTrack) {
|
|
2195
2206
|
this.setCookie(Builder.attributesCookieName, JSON.stringify(this.getUserAttributes()));
|
|
2196
2207
|
}
|
|
2197
|
-
catch (_a) {
|
|
2198
|
-
// Ignore
|
|
2199
|
-
}
|
|
2200
2208
|
this.userAttributesChanged.next(options);
|
|
2201
2209
|
};
|
|
2202
2210
|
/**
|
|
@@ -2364,6 +2372,26 @@
|
|
|
2364
2372
|
enumerable: false,
|
|
2365
2373
|
configurable: true
|
|
2366
2374
|
});
|
|
2375
|
+
Builder.prototype.makeFetchApiCall = function (url, requestOptions) {
|
|
2376
|
+
return getFetch()(url, requestOptions);
|
|
2377
|
+
};
|
|
2378
|
+
Builder.prototype.flattenMongoQuery = function (obj, _current, _res) {
|
|
2379
|
+
if (_res === void 0) { _res = {}; }
|
|
2380
|
+
for (var key in obj) {
|
|
2381
|
+
var value = obj[key];
|
|
2382
|
+
var newKey = _current ? _current + '.' + key : key;
|
|
2383
|
+
if (value &&
|
|
2384
|
+
typeof value === 'object' &&
|
|
2385
|
+
!Array.isArray(value) &&
|
|
2386
|
+
!Object.keys(value).find(function (item) { return item.startsWith('$'); })) {
|
|
2387
|
+
this.flattenMongoQuery(value, newKey, _res);
|
|
2388
|
+
}
|
|
2389
|
+
else {
|
|
2390
|
+
_res[newKey] = value;
|
|
2391
|
+
}
|
|
2392
|
+
}
|
|
2393
|
+
return _res;
|
|
2394
|
+
};
|
|
2367
2395
|
Builder.prototype.flushGetContentQueue = function (usePastQueue, useQueue) {
|
|
2368
2396
|
var _this = this;
|
|
2369
2397
|
if (usePastQueue === void 0) { usePastQueue = false; }
|
|
@@ -2382,6 +2410,7 @@
|
|
|
2382
2410
|
return;
|
|
2383
2411
|
}
|
|
2384
2412
|
var queue = useQueue || (usePastQueue ? this.priorContentQueue : this.getContentQueue) || [];
|
|
2413
|
+
var apiEndpoint = queue[0].apiEndpoint || 'query';
|
|
2385
2414
|
// TODO: do this on every request send?
|
|
2386
2415
|
this.getOverridesFromQueryString();
|
|
2387
2416
|
var queryParams = __assign(__assign({
|
|
@@ -2458,8 +2487,9 @@
|
|
|
2458
2487
|
}
|
|
2459
2488
|
for (var _i = 0, queue_2 = queue; _i < queue_2.length; _i++) {
|
|
2460
2489
|
var options = queue_2[_i];
|
|
2461
|
-
|
|
2462
|
-
|
|
2490
|
+
var format_1 = options.format;
|
|
2491
|
+
if (format_1) {
|
|
2492
|
+
queryParams.format = format_1;
|
|
2463
2493
|
}
|
|
2464
2494
|
// TODO: remove me and make permodel
|
|
2465
2495
|
if (options.static) {
|
|
@@ -2490,9 +2520,14 @@
|
|
|
2490
2520
|
var key = properties_1[_a];
|
|
2491
2521
|
var value = options[key];
|
|
2492
2522
|
if (value !== undefined) {
|
|
2493
|
-
|
|
2494
|
-
|
|
2495
|
-
|
|
2523
|
+
if (apiEndpoint === 'query') {
|
|
2524
|
+
queryParams.options = queryParams.options || {};
|
|
2525
|
+
queryParams.options[options.key] = queryParams.options[options.key] || {};
|
|
2526
|
+
queryParams.options[options.key][key] = JSON.stringify(value);
|
|
2527
|
+
}
|
|
2528
|
+
else {
|
|
2529
|
+
queryParams[key] = JSON.stringify(value);
|
|
2530
|
+
}
|
|
2496
2531
|
}
|
|
2497
2532
|
}
|
|
2498
2533
|
}
|
|
@@ -2507,18 +2542,36 @@
|
|
|
2507
2542
|
var params = omit(QueryString.parse(this.overrideParams), 'apiKey');
|
|
2508
2543
|
assign(queryParams, params);
|
|
2509
2544
|
}
|
|
2510
|
-
var queryStr = QueryString.stringifyDeep(queryParams);
|
|
2511
2545
|
var format = queryParams.format;
|
|
2546
|
+
var isApiCallForCodegen = format === 'solid' || format === 'react';
|
|
2547
|
+
var isApiCallForCodegenOrQuery = isApiCallForCodegen || apiEndpoint === 'query';
|
|
2548
|
+
if (apiEndpoint === 'content') {
|
|
2549
|
+
queryParams.enrich = true;
|
|
2550
|
+
if (queue[0].query) {
|
|
2551
|
+
var flattened = this.flattenMongoQuery({ query: queue[0].query });
|
|
2552
|
+
for (var key in flattened) {
|
|
2553
|
+
queryParams[key] = flattened[key];
|
|
2554
|
+
}
|
|
2555
|
+
delete queryParams.query;
|
|
2556
|
+
}
|
|
2557
|
+
}
|
|
2558
|
+
var queryStr = QueryString.stringifyDeep(queryParams);
|
|
2512
2559
|
var requestOptions = { headers: {} };
|
|
2513
2560
|
if (this.authToken) {
|
|
2514
2561
|
requestOptions.headers = __assign(__assign({}, requestOptions.headers), { Authorization: "Bearer ".concat(this.authToken) });
|
|
2515
2562
|
}
|
|
2516
|
-
var
|
|
2517
|
-
|
|
2518
|
-
|
|
2519
|
-
|
|
2520
|
-
|
|
2521
|
-
|
|
2563
|
+
var url;
|
|
2564
|
+
if (isApiCallForCodegen) {
|
|
2565
|
+
url = "".concat(host, "/api/v1/codegen/").concat(this.apiKey, "/").concat(keyNames);
|
|
2566
|
+
}
|
|
2567
|
+
else if (apiEndpoint === 'query') {
|
|
2568
|
+
url = "".concat(host, "/api/v3/query/").concat(this.apiKey, "/").concat(keyNames);
|
|
2569
|
+
}
|
|
2570
|
+
else {
|
|
2571
|
+
url = "".concat(host, "/api/v3/content/").concat(queue[0].model);
|
|
2572
|
+
}
|
|
2573
|
+
url = url + (queryParams && hasParams ? "?".concat(queryStr) : '');
|
|
2574
|
+
var promise = this.makeFetchApiCall(url, requestOptions)
|
|
2522
2575
|
.then(function (res) { return res.json(); })
|
|
2523
2576
|
.then(function (result) {
|
|
2524
2577
|
for (var _i = 0, queue_3 = queue; _i < queue_3.length; _i++) {
|
|
@@ -2536,7 +2589,7 @@
|
|
|
2536
2589
|
if (!observer) {
|
|
2537
2590
|
return;
|
|
2538
2591
|
}
|
|
2539
|
-
var data = result[keyName];
|
|
2592
|
+
var data = isApiCallForCodegenOrQuery ? result[keyName] : result.results;
|
|
2540
2593
|
var sorted = data; // sortBy(data, item => item.priority);
|
|
2541
2594
|
if (data) {
|
|
2542
2595
|
var testModifiedResults = Builder.isServer
|