@builder.io/sdk 1.1.23 → 1.1.24
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/Earthfile +25 -0
- package/README.md +11 -2
- package/dist/index.browser.js +1 -1
- package/dist/index.browser.js.map +1 -1
- package/dist/index.cjs.js +67 -25
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +67 -25
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +67 -25
- package/dist/index.umd.js.map +1 -1
- package/dist/package.json +7 -2
- package/dist/src/builder.class.d.ts +27 -4
- package/dist/src/builder.class.js +53 -19
- package/dist/src/builder.class.js.map +1 -1
- package/dist/src/classes/query-string.class.d.ts +1 -3
- package/dist/src/classes/query-string.class.js +12 -5
- package/dist/src/classes/query-string.class.js.map +1 -1
- package/dist/src/classes/query-string.class.test.d.ts +1 -0
- package/dist/src/classes/query-string.class.test.js +25 -0
- package/dist/src/classes/query-string.class.test.js.map +1 -0
- package/jest.config.ts +196 -0
- package/package.json +7 -2
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@builder.io/sdk",
|
|
3
|
-
"version": "1.1.23
|
|
3
|
+
"version": "1.1.23",
|
|
4
4
|
"unpkg": "./dist/index.browser.js",
|
|
5
5
|
"main": "./dist/index.cjs.js",
|
|
6
6
|
"module": "./dist/index.esm.js",
|
|
@@ -22,13 +22,15 @@
|
|
|
22
22
|
"release:patch:nightly": "npm run build && npm version patch && ALLOW_PUBLISH=true npm publish",
|
|
23
23
|
"release:dev": "npm run build && npm version prerelease --no-git-tag-version && ALLOW_PUBLISH=true npm publish --tag dev",
|
|
24
24
|
"prepublishOnly": "block-publish",
|
|
25
|
-
"ci:build": "npm run build"
|
|
25
|
+
"ci:build": "npm run build",
|
|
26
|
+
"test": "jest --color"
|
|
26
27
|
},
|
|
27
28
|
"devDependencies": {
|
|
28
29
|
"@builder.io/block-publish": "^1.1.2",
|
|
29
30
|
"@medv/finder": "^1.1.1",
|
|
30
31
|
"@types/axios": "^0.14.0",
|
|
31
32
|
"@types/es6-promise": "^3.3.0",
|
|
33
|
+
"@types/jest": "27.4.0",
|
|
32
34
|
"@types/js-cookie": "^2.1.0",
|
|
33
35
|
"@types/json-stable-stringify": "^1.0.32",
|
|
34
36
|
"@types/node": "^9.4.6",
|
|
@@ -37,6 +39,9 @@
|
|
|
37
39
|
"@types/query-string": "^5.0.1",
|
|
38
40
|
"@types/ua-parser-js": "^0.7.32",
|
|
39
41
|
"@types/virtual-dom": "^2.0.27",
|
|
42
|
+
"esbuild": "0.14.14",
|
|
43
|
+
"esbuild-runner": "2.2.1",
|
|
44
|
+
"jest": "27.4.7",
|
|
40
45
|
"rollup": "^0.58.2",
|
|
41
46
|
"rollup-plugin-alias": "^1.4.0",
|
|
42
47
|
"rollup-plugin-commonjs": "^9.1.3",
|
|
@@ -260,6 +260,18 @@ export interface Input {
|
|
|
260
260
|
mediaWidth?: number;
|
|
261
261
|
hideFromUI?: boolean;
|
|
262
262
|
modelId?: string;
|
|
263
|
+
/**
|
|
264
|
+
* Number field type validation maximum accepted input
|
|
265
|
+
*/
|
|
266
|
+
max?: number;
|
|
267
|
+
/**
|
|
268
|
+
* Number field type validation minimum accepted input
|
|
269
|
+
*/
|
|
270
|
+
min?: number;
|
|
271
|
+
/**
|
|
272
|
+
* Number field type step size when using arrows
|
|
273
|
+
*/
|
|
274
|
+
step?: number;
|
|
263
275
|
/**
|
|
264
276
|
* Set this to `true` to show the editor for this input when
|
|
265
277
|
* children of this component are selected. This is useful for things
|
|
@@ -347,6 +359,10 @@ export interface Component {
|
|
|
347
359
|
hideFromInsertMenu?: boolean;
|
|
348
360
|
tag?: string;
|
|
349
361
|
static?: boolean;
|
|
362
|
+
/**
|
|
363
|
+
* Passing a list of model names will restrict using the component to only the models listed here, otherwise it'll be available for all models
|
|
364
|
+
*/
|
|
365
|
+
models?: string[];
|
|
350
366
|
/**
|
|
351
367
|
* Specify restrictions direct children must match
|
|
352
368
|
*/
|
|
@@ -437,7 +453,6 @@ export declare class Builder {
|
|
|
437
453
|
static animator: Animator;
|
|
438
454
|
static nextTick: typeof nextTick;
|
|
439
455
|
static throttle: typeof throttle;
|
|
440
|
-
authToken: string;
|
|
441
456
|
static editors: any[];
|
|
442
457
|
static trustedHosts: string[];
|
|
443
458
|
static plugins: any[];
|
|
@@ -501,6 +516,7 @@ export declare class Builder {
|
|
|
501
516
|
set canTrack(canTrack: boolean);
|
|
502
517
|
private canTrack$;
|
|
503
518
|
private apiKey$;
|
|
519
|
+
private authToken$;
|
|
504
520
|
userAttributesChanged: BehaviorSubject<any, any>;
|
|
505
521
|
get editingMode(): boolean;
|
|
506
522
|
set editingMode(value: boolean);
|
|
@@ -542,7 +558,9 @@ export declare class Builder {
|
|
|
542
558
|
component(info?: Partial<Component>): (component: Class) => Class;
|
|
543
559
|
get apiKey(): string | null;
|
|
544
560
|
set apiKey(key: string | null);
|
|
545
|
-
|
|
561
|
+
get authToken(): string | null;
|
|
562
|
+
set authToken(token: string | null);
|
|
563
|
+
constructor(apiKey?: string | null, request?: IncomingMessage | undefined, response?: ServerResponse | undefined, forceNewInstance?: boolean, authToken?: string | null);
|
|
546
564
|
private modifySearch;
|
|
547
565
|
setTestsFromUrl(): void;
|
|
548
566
|
resetOverrides(): void;
|
|
@@ -557,7 +575,7 @@ export declare class Builder {
|
|
|
557
575
|
[key: string]: boolean;
|
|
558
576
|
};
|
|
559
577
|
get defaultCanTrack(): boolean;
|
|
560
|
-
init(apiKey: string, canTrack?: boolean, req?: IncomingMessage, res?: ServerResponse): this;
|
|
578
|
+
init(apiKey: string, canTrack?: boolean, req?: IncomingMessage, res?: ServerResponse, authToken?: string): this;
|
|
561
579
|
get previewingModel(): string;
|
|
562
580
|
getLocation(): Url;
|
|
563
581
|
getUserAttributes(userAgent?: string): UserAttributes;
|
|
@@ -581,9 +599,14 @@ export declare class Builder {
|
|
|
581
599
|
req?: IncomingMessage;
|
|
582
600
|
res?: ServerResponse;
|
|
583
601
|
apiKey?: string;
|
|
602
|
+
authToken?: string;
|
|
584
603
|
}): BehaviorSubject<any, any>;
|
|
585
604
|
queueGetContent(modelName: string, options?: GetContentOptions): BehaviorSubject<BuilderContent[], any>;
|
|
586
|
-
requestUrl(url: string
|
|
605
|
+
requestUrl(url: string, options?: {
|
|
606
|
+
headers: {
|
|
607
|
+
[header: string]: number | string | string[] | undefined;
|
|
608
|
+
};
|
|
609
|
+
}): Promise<any>;
|
|
587
610
|
get host(): string;
|
|
588
611
|
private flushGetContentQueue;
|
|
589
612
|
private testCookiePrefix;
|
|
@@ -142,13 +142,13 @@ function BuilderComponent(info) {
|
|
|
142
142
|
}
|
|
143
143
|
exports.BuilderComponent = BuilderComponent;
|
|
144
144
|
var Builder = /** @class */ (function () {
|
|
145
|
-
function Builder(apiKey, request, response, forceNewInstance) {
|
|
145
|
+
function Builder(apiKey, request, response, forceNewInstance, authToken) {
|
|
146
146
|
var _this = this;
|
|
147
147
|
if (apiKey === void 0) { apiKey = null; }
|
|
148
148
|
if (forceNewInstance === void 0) { forceNewInstance = false; }
|
|
149
|
+
if (authToken === void 0) { authToken = null; }
|
|
149
150
|
this.request = request;
|
|
150
151
|
this.response = response;
|
|
151
|
-
this.authToken = '';
|
|
152
152
|
this.eventsQueue = [];
|
|
153
153
|
this.throttledClearEventsQueue = throttle_function_1.throttle(function () {
|
|
154
154
|
_this.processEventsQueue();
|
|
@@ -169,6 +169,7 @@ var Builder = /** @class */ (function () {
|
|
|
169
169
|
this.preview = false;
|
|
170
170
|
this.canTrack$ = new observable_class_1.BehaviorSubject(!this.browserTrackingDisabled);
|
|
171
171
|
this.apiKey$ = new observable_class_1.BehaviorSubject(null);
|
|
172
|
+
this.authToken$ = new observable_class_1.BehaviorSubject(null);
|
|
172
173
|
this.userAttributesChanged = new observable_class_1.BehaviorSubject(null);
|
|
173
174
|
this.editingMode$ = new observable_class_1.BehaviorSubject(exports.isIframe);
|
|
174
175
|
// TODO: decorator to do this stuff with the get/set (how do with typing too? compiler?)
|
|
@@ -204,6 +205,9 @@ var Builder = /** @class */ (function () {
|
|
|
204
205
|
if (apiKey) {
|
|
205
206
|
this.apiKey = apiKey;
|
|
206
207
|
}
|
|
208
|
+
if (authToken) {
|
|
209
|
+
this.authToken = authToken;
|
|
210
|
+
}
|
|
207
211
|
if (exports.isBrowser) {
|
|
208
212
|
this.bindMessageListeners();
|
|
209
213
|
// TODO: postmessage to parent the builder info for every package
|
|
@@ -400,7 +404,10 @@ var Builder = /** @class */ (function () {
|
|
|
400
404
|
var _a;
|
|
401
405
|
var spec = __assign(__assign({ class: component }, component.builderOptions), options);
|
|
402
406
|
this.addComponent(spec);
|
|
403
|
-
|
|
407
|
+
var editable = options.models && this.singletonInstance.editingModel
|
|
408
|
+
? exports.isBrowser && options.models.includes(this.singletonInstance.editingModel)
|
|
409
|
+
: exports.isBrowser;
|
|
410
|
+
if (editable) {
|
|
404
411
|
var sendSpec = this.prepareComponentSpecToSend(spec);
|
|
405
412
|
(_a = window.parent) === null || _a === void 0 ? void 0 : _a.postMessage({
|
|
406
413
|
type: 'builder.registerComponent',
|
|
@@ -570,9 +577,14 @@ var Builder = /** @class */ (function () {
|
|
|
570
577
|
if (exports.isIframe || !exports.isBrowser || Builder.isPreviewing) {
|
|
571
578
|
return;
|
|
572
579
|
}
|
|
580
|
+
var apiKey = this.apiKey;
|
|
581
|
+
if (!apiKey) {
|
|
582
|
+
console.error('Builder integration error: Looks like the Builder SDK has not been initialized properly (your API key has not been set). Make sure you are calling `builder.init("«YOUR-API-KEY»");` as early as possible in your application\'s code.');
|
|
583
|
+
return;
|
|
584
|
+
}
|
|
573
585
|
var eventData = JSON.parse(JSON.stringify({
|
|
574
586
|
type: eventName,
|
|
575
|
-
data: __assign(__assign({}, omit_function_1.omit(properties, 'meta')), { metadata: __assign(__assign({ sdkVersion: Builder.VERSION, url: location.href }, properties.meta), properties.metadata), ownerId:
|
|
587
|
+
data: __assign(__assign({}, omit_function_1.omit(properties, 'meta')), { metadata: __assign(__assign({ sdkVersion: Builder.VERSION, url: location.href }, properties.meta), properties.metadata), ownerId: apiKey, userAttributes: this.getUserAttributes(), sessionId: this.sessionId, visitorId: this.visitorId }),
|
|
576
588
|
}));
|
|
577
589
|
for (var _i = 0, _a = this.trackingHooks; _i < _a.length; _i++) {
|
|
578
590
|
var hook = _a[_i];
|
|
@@ -737,6 +749,16 @@ var Builder = /** @class */ (function () {
|
|
|
737
749
|
enumerable: true,
|
|
738
750
|
configurable: true
|
|
739
751
|
});
|
|
752
|
+
Object.defineProperty(Builder.prototype, "authToken", {
|
|
753
|
+
get: function () {
|
|
754
|
+
return this.authToken$.value;
|
|
755
|
+
},
|
|
756
|
+
set: function (token) {
|
|
757
|
+
this.authToken$.next(token);
|
|
758
|
+
},
|
|
759
|
+
enumerable: true,
|
|
760
|
+
configurable: true
|
|
761
|
+
});
|
|
740
762
|
Builder.prototype.modifySearch = function (search) {
|
|
741
763
|
return search.replace(/(^|&|\?)(builder_.*?)=/gi, function (_match, group1, group2) { return group1 + group2.replace(/_/g, '.') + '='; });
|
|
742
764
|
};
|
|
@@ -1001,7 +1023,7 @@ var Builder = /** @class */ (function () {
|
|
|
1001
1023
|
enumerable: true,
|
|
1002
1024
|
configurable: true
|
|
1003
1025
|
});
|
|
1004
|
-
Builder.prototype.init = function (apiKey, canTrack, req, res) {
|
|
1026
|
+
Builder.prototype.init = function (apiKey, canTrack, req, res, authToken) {
|
|
1005
1027
|
if (canTrack === void 0) { canTrack = this.defaultCanTrack; }
|
|
1006
1028
|
if (req) {
|
|
1007
1029
|
this.request = req;
|
|
@@ -1011,6 +1033,9 @@ var Builder = /** @class */ (function () {
|
|
|
1011
1033
|
}
|
|
1012
1034
|
this.canTrack = canTrack;
|
|
1013
1035
|
this.apiKey = apiKey;
|
|
1036
|
+
if (authToken) {
|
|
1037
|
+
this.authToken = authToken;
|
|
1038
|
+
}
|
|
1014
1039
|
return this;
|
|
1015
1040
|
};
|
|
1016
1041
|
Object.defineProperty(Builder.prototype, "previewingModel", {
|
|
@@ -1092,13 +1117,16 @@ var Builder = /** @class */ (function () {
|
|
|
1092
1117
|
if (options === void 0) { options = {}; }
|
|
1093
1118
|
var instance = this;
|
|
1094
1119
|
if (!Builder.isBrowser) {
|
|
1095
|
-
instance = new Builder(options.apiKey || this.apiKey, options.req, options.res);
|
|
1120
|
+
instance = new Builder(options.apiKey || this.apiKey, options.req, options.res, undefined, options.authToken || this.authToken);
|
|
1096
1121
|
instance.setUserAttributes(this.getUserAttributes());
|
|
1097
1122
|
}
|
|
1098
1123
|
else {
|
|
1099
1124
|
if (options.apiKey && !this.apiKey) {
|
|
1100
1125
|
this.apiKey = options.apiKey;
|
|
1101
1126
|
}
|
|
1127
|
+
if (options.authToken && !this.authToken) {
|
|
1128
|
+
this.authToken = options.authToken;
|
|
1129
|
+
}
|
|
1102
1130
|
}
|
|
1103
1131
|
return instance.queueGetContent(modelName, options).map(
|
|
1104
1132
|
/* map( */ function (matches) {
|
|
@@ -1200,21 +1228,21 @@ var Builder = /** @class */ (function () {
|
|
|
1200
1228
|
}
|
|
1201
1229
|
return observable;
|
|
1202
1230
|
};
|
|
1203
|
-
Builder.prototype.requestUrl = function (url) {
|
|
1231
|
+
Builder.prototype.requestUrl = function (url, options) {
|
|
1204
1232
|
if (Builder.isBrowser) {
|
|
1205
|
-
|
|
1206
|
-
return fetch_function_1.fetch(url, this.authToken
|
|
1207
|
-
? {
|
|
1208
|
-
headers: {
|
|
1209
|
-
Authorization: "Bearer " + this.authToken,
|
|
1210
|
-
},
|
|
1211
|
-
}
|
|
1212
|
-
: undefined).then(function (res) { return res.json(); });
|
|
1233
|
+
return fetch_function_1.fetch(url, options).then(function (res) { return res.json(); });
|
|
1213
1234
|
}
|
|
1214
1235
|
return new Promise(function (resolve, reject) {
|
|
1215
|
-
var
|
|
1236
|
+
var parsedUrl = parse(url);
|
|
1237
|
+
var module = parsedUrl.protocol === 'http:' ? server_only_require_function_1.default('http') : server_only_require_function_1.default('https');
|
|
1238
|
+
var requestOptions = {
|
|
1239
|
+
host: parsedUrl.hostname,
|
|
1240
|
+
port: parsedUrl.port,
|
|
1241
|
+
path: parsedUrl.pathname + parsedUrl.search,
|
|
1242
|
+
headers: __assign({}, options === null || options === void 0 ? void 0 : options.headers),
|
|
1243
|
+
};
|
|
1216
1244
|
module
|
|
1217
|
-
.get(
|
|
1245
|
+
.get(requestOptions, function (resp) {
|
|
1218
1246
|
var data = '';
|
|
1219
1247
|
// A chunk of data has been recieved.
|
|
1220
1248
|
resp.on('data', function (chunk) {
|
|
@@ -1392,7 +1420,11 @@ var Builder = /** @class */ (function () {
|
|
|
1392
1420
|
}
|
|
1393
1421
|
var queryStr = query_string_class_1.QueryString.stringifyDeep(queryParams);
|
|
1394
1422
|
var format = queryParams.format;
|
|
1395
|
-
var
|
|
1423
|
+
var requestOptions = { headers: {} };
|
|
1424
|
+
if (this.authToken) {
|
|
1425
|
+
requestOptions.headers = __assign(__assign({}, requestOptions.headers), { Authorization: "Bearer " + this.authToken });
|
|
1426
|
+
}
|
|
1427
|
+
var promise = this.requestUrl(host + "/api/v1/" + (format === 'solid' || format === 'react' ? 'codegen' : 'query') + "/" + this.apiKey + "/" + keyNames + (queryParams && hasParams ? "?" + queryStr : ''), requestOptions).then(function (result) {
|
|
1396
1428
|
for (var _i = 0, queue_3 = queue; _i < queue_3.length; _i++) {
|
|
1397
1429
|
var options = queue_3[_i];
|
|
1398
1430
|
var keyName = options.key;
|
|
@@ -1530,7 +1562,9 @@ var Builder = /** @class */ (function () {
|
|
|
1530
1562
|
.getContent(modelName, __assign(__assign({ limit: 30 }, options), { key: options.key ||
|
|
1531
1563
|
// Make the key include all options so we don't reuse cache for the same conent fetched
|
|
1532
1564
|
// with different options
|
|
1533
|
-
Builder.isBrowser
|
|
1565
|
+
Builder.isBrowser
|
|
1566
|
+
? modelName + ":" + hash_sum_1.default(omit_function_1.omit(options, 'initialContent', 'req', 'res'))
|
|
1567
|
+
: undefined }))
|
|
1534
1568
|
.promise();
|
|
1535
1569
|
};
|
|
1536
1570
|
Builder.VERSION = package_json_1.version;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.class.js","sourceRoot":"","sources":["../../src/builder.class.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"builder.class.js","sourceRoot":"","sources":["../../src/builder.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var PROPERTY_NAME_DENY_LIST = Object.freeze(['__proto__', 'prototype']);
|
|
3
4
|
// TODO: unit tests
|
|
4
5
|
var QueryString = /** @class */ (function () {
|
|
5
6
|
function QueryString() {
|
|
@@ -41,15 +42,17 @@ var QueryString = /** @class */ (function () {
|
|
|
41
42
|
return str;
|
|
42
43
|
};
|
|
43
44
|
QueryString.deepen = function (map) {
|
|
44
|
-
|
|
45
|
-
|
|
45
|
+
// FIXME; Should be type Tree = Record<string, string | Tree>
|
|
46
|
+
// requires a typescript upgrade.
|
|
47
|
+
var output = Object.create(null);
|
|
46
48
|
for (var k in map) {
|
|
47
49
|
var t = output;
|
|
48
50
|
var parts = k.split('.');
|
|
49
51
|
var key = parts.pop();
|
|
50
|
-
|
|
51
|
-
var part =
|
|
52
|
-
|
|
52
|
+
for (var _i = 0, parts_1 = parts; _i < parts_1.length; _i++) {
|
|
53
|
+
var part = parts_1[_i];
|
|
54
|
+
assertAllowedPropertyName(part);
|
|
55
|
+
t = t[part] = t[part] || Object.create(null);
|
|
53
56
|
}
|
|
54
57
|
t[key] = map[k];
|
|
55
58
|
}
|
|
@@ -72,4 +75,8 @@ var QueryString = /** @class */ (function () {
|
|
|
72
75
|
return QueryString;
|
|
73
76
|
}());
|
|
74
77
|
exports.QueryString = QueryString;
|
|
78
|
+
function assertAllowedPropertyName(name) {
|
|
79
|
+
if (PROPERTY_NAME_DENY_LIST.indexOf(name) >= 0)
|
|
80
|
+
throw new Error("Property name \"" + name + "\" is not allowed");
|
|
81
|
+
}
|
|
75
82
|
//# sourceMappingURL=query-string.class.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-string.class.js","sourceRoot":"","sources":["../../../src/classes/query-string.class.ts"],"names":[],"mappings":";;AAEA,mBAAmB;AACnB;IAAA;
|
|
1
|
+
{"version":3,"file":"query-string.class.js","sourceRoot":"","sources":["../../../src/classes/query-string.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var query_string_class_1 = require("./query-string.class");
|
|
4
|
+
test.each([
|
|
5
|
+
// prettier-ignore
|
|
6
|
+
['__proto__.foo.baz=1'],
|
|
7
|
+
['prototype.foo=1'],
|
|
8
|
+
])('(regression) prototype pollution %#', function (input) {
|
|
9
|
+
expect(function () {
|
|
10
|
+
query_string_class_1.QueryString.parseDeep(input);
|
|
11
|
+
}).toThrowError(/Property name \".*\" is not allowed/);
|
|
12
|
+
var pollutedObject = {};
|
|
13
|
+
expect(pollutedObject.foo).toBeUndefined();
|
|
14
|
+
});
|
|
15
|
+
describe('.parseDeep', function () {
|
|
16
|
+
test('input string may be prefixed with a question mark', function () {
|
|
17
|
+
var result = query_string_class_1.QueryString.parseDeep('?foo=1');
|
|
18
|
+
expect(result).toEqual({ foo: '1' });
|
|
19
|
+
});
|
|
20
|
+
test('converts the paths to a single object', function () {
|
|
21
|
+
var result = query_string_class_1.QueryString.parseDeep('foo.bar.baz=1&foo.boo=2');
|
|
22
|
+
expect(result).toEqual({ foo: { bar: { baz: '1' }, boo: '2' } });
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=query-string.class.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-string.class.test.js","sourceRoot":"","sources":["../../../src/classes/query-string.class.test.ts"],"names":[],"mappings":";;AAAA,2DAAmD;AAEnD,IAAI,CAAC,IAAI,CAAC;IACR,kBAAkB;IAClB,CAAC,qBAAqB,CAAC;IACvB,CAAC,iBAAiB,CAAC;CACpB,CAAC,CAAC,qCAAqC,EAAE,UAAA,KAAK;IAC7C,MAAM,CAAC;QACL,gCAAW,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC,YAAY,CAAC,qCAAqC,CAAC,CAAC;IAEvD,IAAM,cAAc,GAAQ,EAAE,CAAC;IAE/B,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,YAAY,EAAE;IACrB,IAAI,CAAC,mDAAmD,EAAE;QACxD,IAAM,MAAM,GAAG,gCAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE/C,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uCAAuC,EAAE;QAC5C,IAAM,MAAM,GAAG,gCAAW,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;QAEhE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|