@lopatnov/javascripttostring 1.7.3 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +194 -105
- package/dist/javascripttostring.esm.mjs +543 -0
- package/dist/javascripttostring.esm.mjs.map +1 -0
- package/dist/javascripttostring.umd.js +1 -13
- package/dist/javascripttostring.umd.js.map +1 -1
- package/dist/lib/javascripttostring.cjs +545 -0
- package/dist/lib/javascripttostring.cjs.map +1 -0
- package/dist/types/javascripttostring.d.ts +23 -15
- package/package.json +57 -28
- package/dist/javascripttostring.es5.js +0 -6
- package/dist/javascripttostring.es5.js.map +0 -1
- package/dist/javascripttostring.min.es5.js +0 -6
- package/dist/javascripttostring.min.es5.js.map +0 -1
- package/dist/javascripttostring.min.umd.js +0 -14
- package/dist/javascripttostring.min.umd.js.map +0 -1
- package/dist/lib/javascripttostring.js +0 -385
- package/dist/lib/javascripttostring.js.map +0 -1
|
@@ -1,385 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var get_internal_type_1 = __importDefault(require("@lopatnov/get-internal-type"));
|
|
7
|
-
var refs = [];
|
|
8
|
-
var counter = 0;
|
|
9
|
-
function fillNativeFunctions(ext, obj, objName, fromPrototype) {
|
|
10
|
-
if (fromPrototype === void 0) { fromPrototype = true; }
|
|
11
|
-
var arrNames = Object.getOwnPropertyNames(fromPrototype ? obj.prototype : obj);
|
|
12
|
-
var protoPath = fromPrototype ? '.prototype.' : '.';
|
|
13
|
-
for (var _i = 0, arrNames_1 = arrNames; _i < arrNames_1.length; _i++) {
|
|
14
|
-
var name_1 = arrNames_1[_i];
|
|
15
|
-
if (['caller', 'callee', 'arguments'].indexOf(name_1) < 0) {
|
|
16
|
-
ext["" + objName + protoPath + name_1] = fromPrototype ? obj.prototype[name_1] : obj[name_1];
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
var nativeFunctions = (function () {
|
|
21
|
-
var functions = {};
|
|
22
|
-
fillNativeFunctions(functions, Array, 'Array', false);
|
|
23
|
-
fillNativeFunctions(functions, Array, 'Array');
|
|
24
|
-
fillNativeFunctions(functions, JSON, 'JSON', false);
|
|
25
|
-
fillNativeFunctions(functions, Object, 'Object', false);
|
|
26
|
-
fillNativeFunctions(functions, Object, 'Object');
|
|
27
|
-
fillNativeFunctions(functions, Function, 'Function', false);
|
|
28
|
-
fillNativeFunctions(functions, Function, 'Function');
|
|
29
|
-
fillNativeFunctions(functions, Date, 'Date', false);
|
|
30
|
-
fillNativeFunctions(functions, String, 'String');
|
|
31
|
-
functions.Function = Function;
|
|
32
|
-
return functions;
|
|
33
|
-
}());
|
|
34
|
-
function numberToString(value) {
|
|
35
|
-
if (Number.isNaN(value)) {
|
|
36
|
-
return "Number.NaN";
|
|
37
|
-
}
|
|
38
|
-
switch (value) {
|
|
39
|
-
case Number.POSITIVE_INFINITY:
|
|
40
|
-
return "Number.POSITIVE_INFINITY";
|
|
41
|
-
case Number.NEGATIVE_INFINITY:
|
|
42
|
-
return "Number.NEGATIVE_INFINITY";
|
|
43
|
-
case Number.EPSILON:
|
|
44
|
-
return "Number.EPSILON";
|
|
45
|
-
case Number.MAX_SAFE_INTEGER:
|
|
46
|
-
return "Number.MAX_SAFE_INTEGER";
|
|
47
|
-
case Number.MIN_SAFE_INTEGER:
|
|
48
|
-
return "Number.MIN_SAFE_INTEGER";
|
|
49
|
-
case Number.MAX_VALUE:
|
|
50
|
-
return "Number.MAX_VALUE";
|
|
51
|
-
case Number.MIN_VALUE:
|
|
52
|
-
return "Number.MIN_VALUE";
|
|
53
|
-
case Math.PI:
|
|
54
|
-
return "Math.PI";
|
|
55
|
-
case Math.E:
|
|
56
|
-
return "Math.E";
|
|
57
|
-
case Math.LN10:
|
|
58
|
-
return "Math.LN10";
|
|
59
|
-
case Math.LN2:
|
|
60
|
-
return "Math.LN2";
|
|
61
|
-
case Math.LOG10E:
|
|
62
|
-
return "Math.LOG10E";
|
|
63
|
-
case Math.LOG2E:
|
|
64
|
-
return "Math.LOG2E";
|
|
65
|
-
case Math.SQRT1_2:
|
|
66
|
-
return "Math.SQRT1_2";
|
|
67
|
-
case Math.SQRT2:
|
|
68
|
-
return "Math.SQRT2";
|
|
69
|
-
default:
|
|
70
|
-
return String(value);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
function symbolToString(value) {
|
|
74
|
-
switch (value) {
|
|
75
|
-
case Symbol.asyncIterator:
|
|
76
|
-
case Symbol.hasInstance:
|
|
77
|
-
case Symbol.isConcatSpreadable:
|
|
78
|
-
case Symbol.iterator:
|
|
79
|
-
case Symbol.match:
|
|
80
|
-
case Symbol.prototype:
|
|
81
|
-
case Symbol.replace:
|
|
82
|
-
case Symbol.search:
|
|
83
|
-
case Symbol.species:
|
|
84
|
-
case Symbol.split:
|
|
85
|
-
case Symbol.toPrimitive:
|
|
86
|
-
case Symbol.toStringTag:
|
|
87
|
-
case Symbol.unscopables:
|
|
88
|
-
return value.description;
|
|
89
|
-
default:
|
|
90
|
-
var description = value.description ? "\"" + value.description + "\"" : "";
|
|
91
|
-
return "Symbol(" + description + ")";
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
function dateToString(value) {
|
|
95
|
-
if (isNaN(value.getTime())) {
|
|
96
|
-
return "new Date(" + value.toString() + ")";
|
|
97
|
-
}
|
|
98
|
-
return "new Date(" + value.toISOString() + ")";
|
|
99
|
-
}
|
|
100
|
-
function errorToString(value) {
|
|
101
|
-
var message = JSON.stringify(value.message), fileName = JSON.stringify(value.fileName), lineNumber = JSON.stringify(value.lineNumber);
|
|
102
|
-
return "new Error(" + message + ", " + fileName + ", " + lineNumber + ")";
|
|
103
|
-
}
|
|
104
|
-
function arrayToString(value, options, history) {
|
|
105
|
-
if (value.length === 0)
|
|
106
|
-
return "[]";
|
|
107
|
-
var arrayValues = value.reduce(function (x1, x2, index) {
|
|
108
|
-
history.references.push(index.toString());
|
|
109
|
-
var str = !!x1 ? x1 + ", " : '';
|
|
110
|
-
str += stringifyRef(x2, options, history);
|
|
111
|
-
history.references.pop();
|
|
112
|
-
return str;
|
|
113
|
-
}, '');
|
|
114
|
-
return attachActions(getLocalRefs(value), "[" + arrayValues + "]");
|
|
115
|
-
}
|
|
116
|
-
function getLocalRefs(value) {
|
|
117
|
-
return refs.filter(function (x) { return x.source === value; });
|
|
118
|
-
}
|
|
119
|
-
function attachActions(localRefs, result) {
|
|
120
|
-
if (localRefs.length > 0) {
|
|
121
|
-
counter = (counter++) % Number.MAX_SAFE_INTEGER;
|
|
122
|
-
var localName_1 = "___j2s_" + counter;
|
|
123
|
-
var actions = localRefs.reduce(function (x1, x2) {
|
|
124
|
-
var action = converToAction(localName_1, x2);
|
|
125
|
-
refs.splice(refs.indexOf(x2), 1);
|
|
126
|
-
return x1 + action;
|
|
127
|
-
}, '');
|
|
128
|
-
return "(function(){ var " + localName_1 + " = " + result + "; " + actions + " return " + localName_1 + "; }())";
|
|
129
|
-
}
|
|
130
|
-
return result;
|
|
131
|
-
}
|
|
132
|
-
function converToAction(localName, r) {
|
|
133
|
-
var destIndex = r.historyRef.indexOf(r.source);
|
|
134
|
-
if (destIndex < 0) {
|
|
135
|
-
return '';
|
|
136
|
-
}
|
|
137
|
-
var dest = r.historyRef.slice(destIndex);
|
|
138
|
-
var sourceObj;
|
|
139
|
-
var path = '';
|
|
140
|
-
for (var i = 0; i < dest.length; i++) {
|
|
141
|
-
var destObj = dest[i];
|
|
142
|
-
if (destObj === r.source) {
|
|
143
|
-
path = localName;
|
|
144
|
-
sourceObj = r.source;
|
|
145
|
-
}
|
|
146
|
-
else if (typeof destObj === 'string') {
|
|
147
|
-
path += "['" + destObj.replace(/'/gi, '\\\'') + "']";
|
|
148
|
-
sourceObj = sourceObj[destObj];
|
|
149
|
-
}
|
|
150
|
-
else if (destObj !== sourceObj) {
|
|
151
|
-
return '';
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
return path + " = " + localName + "; ";
|
|
155
|
-
}
|
|
156
|
-
function typedArrayToString(value, options, history) {
|
|
157
|
-
var arr = Array.from(value), arrString = arrayToString(arr, options, history), constructorName = value.constructor.name;
|
|
158
|
-
return "new " + constructorName + "(" + arrString + ")";
|
|
159
|
-
}
|
|
160
|
-
function setToString(value, options, history) {
|
|
161
|
-
var setValues = [];
|
|
162
|
-
value.forEach(function (value1, value2, set) {
|
|
163
|
-
setValues.push(stringifyRef(value2, options, history));
|
|
164
|
-
});
|
|
165
|
-
if (setValues.length === 0)
|
|
166
|
-
return "new Set()";
|
|
167
|
-
return "new Set([" + setValues.join(", ") + "])";
|
|
168
|
-
}
|
|
169
|
-
function mapToString(value, options, history) {
|
|
170
|
-
var mapValues = [];
|
|
171
|
-
value.forEach(function (indexValue, key) {
|
|
172
|
-
mapValues.push("[" + stringifyRef(key, options, history) + ", " + stringifyRef(indexValue, options, history) + "]");
|
|
173
|
-
});
|
|
174
|
-
if (mapValues.length === 0)
|
|
175
|
-
return "new Map()";
|
|
176
|
-
return "new Map([" + mapValues.join(", ") + "])";
|
|
177
|
-
}
|
|
178
|
-
function objectToString(value, options, history) {
|
|
179
|
-
var objectValues = [];
|
|
180
|
-
for (var propertyName in value) {
|
|
181
|
-
if (value.hasOwnProperty(propertyName)) {
|
|
182
|
-
history.references.push(propertyName);
|
|
183
|
-
var propertyValue = stringifyRef(value[propertyName], options, history);
|
|
184
|
-
history.references.pop();
|
|
185
|
-
if (propertyValue !== "undefined") {
|
|
186
|
-
if (!(/^[a-zA-Z]+$/).test(propertyName)) {
|
|
187
|
-
propertyName = "\"" + propertyName + "\"";
|
|
188
|
-
}
|
|
189
|
-
objectValues.push(propertyName + ": " + propertyValue);
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
if (objectValues.length === 0)
|
|
194
|
-
return "{}";
|
|
195
|
-
return attachActions(getLocalRefs(value), "{\n" + objectValues.join(",\n") + "\n}");
|
|
196
|
-
}
|
|
197
|
-
function functionPropertiesToString(functionName, value, options, history) {
|
|
198
|
-
var result = "";
|
|
199
|
-
for (var propertyName in value) {
|
|
200
|
-
if (value.hasOwnProperty(propertyName)) {
|
|
201
|
-
history.references.push(propertyName);
|
|
202
|
-
var propertyValue = stringifyRef(value[propertyName], options, history);
|
|
203
|
-
history.references.pop();
|
|
204
|
-
if (propertyValue !== "undefined") {
|
|
205
|
-
result += functionName + "." + propertyName + " = " + propertyValue + ";\n";
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
return result;
|
|
210
|
-
}
|
|
211
|
-
function functionToString(value, options, history) {
|
|
212
|
-
var functionName = value.name || "anonymousFunction";
|
|
213
|
-
var functionObject = options.includeFunctionProperties
|
|
214
|
-
? functionPropertiesToString(functionName, value, options, history)
|
|
215
|
-
: "";
|
|
216
|
-
history.references.push('prototype');
|
|
217
|
-
var functionPrototype = options.includeFunctionPrototype
|
|
218
|
-
? functionPropertiesToString(functionName + ".prototype", value.prototype, options, history)
|
|
219
|
-
: "";
|
|
220
|
-
history.references.pop();
|
|
221
|
-
var functionStr = String(value);
|
|
222
|
-
if (functionStr.indexOf('[native code]') > -1 && functionStr.length < 100) {
|
|
223
|
-
for (var nfName in nativeFunctions) {
|
|
224
|
-
if (nativeFunctions[nfName] === value) {
|
|
225
|
-
functionStr = nfName;
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
if (!functionObject && !functionPrototype) {
|
|
230
|
-
return functionStr;
|
|
231
|
-
}
|
|
232
|
-
return attachActions(getLocalRefs(value), "(function(){\n var " + functionName + " = " + String(functionStr) + ";\n " + functionObject + "\n " + functionPrototype + "\n return " + functionName + ";\n}())");
|
|
233
|
-
}
|
|
234
|
-
function arrayBufferToString(value, options, history) {
|
|
235
|
-
if (!options.includeBuffers)
|
|
236
|
-
return "undefined";
|
|
237
|
-
var str = typedArrayToString(new Int8Array(value), options, history);
|
|
238
|
-
return "(" + str + ").buffer";
|
|
239
|
-
}
|
|
240
|
-
function dataViewToString(value, options, history) {
|
|
241
|
-
if (!options.includeBuffers)
|
|
242
|
-
return "undefined";
|
|
243
|
-
var bufString = arrayBufferToString(value.buffer, options, history);
|
|
244
|
-
return "new DataView(" + bufString + ", " + value.byteOffset + ", " + value.byteLength + ")";
|
|
245
|
-
}
|
|
246
|
-
/**
|
|
247
|
-
* Converts to string the value, if it wasn't before
|
|
248
|
-
* @param value the value, that converts to string
|
|
249
|
-
* @param references the references to stringified objects
|
|
250
|
-
*/
|
|
251
|
-
function stringify(value, options, history) {
|
|
252
|
-
switch ((0, get_internal_type_1.default)(value)) {
|
|
253
|
-
case "undefined":
|
|
254
|
-
return "undefined";
|
|
255
|
-
case "null":
|
|
256
|
-
return "null";
|
|
257
|
-
case "boolean":
|
|
258
|
-
return String(value);
|
|
259
|
-
case "regexp":
|
|
260
|
-
return String(value);
|
|
261
|
-
case "string":
|
|
262
|
-
return JSON.stringify(value);
|
|
263
|
-
case "number":
|
|
264
|
-
return numberToString(value);
|
|
265
|
-
case "bigint":
|
|
266
|
-
return "BigInt(" + value + ")";
|
|
267
|
-
case "symbol":
|
|
268
|
-
return symbolToString(value);
|
|
269
|
-
case "date":
|
|
270
|
-
return dateToString(value);
|
|
271
|
-
case "error":
|
|
272
|
-
return errorToString(value);
|
|
273
|
-
case "array":
|
|
274
|
-
return arrayToString(value, options, history);
|
|
275
|
-
case "typedarray":
|
|
276
|
-
return typedArrayToString(value, options, history);
|
|
277
|
-
case "set":
|
|
278
|
-
return setToString(value, options, history);
|
|
279
|
-
case "map":
|
|
280
|
-
return mapToString(value, options, history);
|
|
281
|
-
case "object":
|
|
282
|
-
return objectToString(value, options, history);
|
|
283
|
-
case "function":
|
|
284
|
-
case "generatorfunction":
|
|
285
|
-
return functionToString(value, options, history);
|
|
286
|
-
case "arraybuffer":
|
|
287
|
-
return arrayBufferToString(value, options, history);
|
|
288
|
-
case "dataview":
|
|
289
|
-
return dataViewToString(value, options, history);
|
|
290
|
-
case "promise":
|
|
291
|
-
case "generator":
|
|
292
|
-
return "undefined";
|
|
293
|
-
default:
|
|
294
|
-
return JSON.stringify(value);
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
/**
|
|
298
|
-
* Stringify the value, if it wasn't before
|
|
299
|
-
* @param value the value, that converts to string
|
|
300
|
-
* @param references the references to stringified objects
|
|
301
|
-
*/
|
|
302
|
-
function stringifyRef(value, options, history) {
|
|
303
|
-
var index = history.references.indexOf(value);
|
|
304
|
-
if (index < 0 || typeof (history.references[index]) === 'string') {
|
|
305
|
-
var objectType = (0, get_internal_type_1.default)(value);
|
|
306
|
-
var referencesLength = history.references.length;
|
|
307
|
-
history.references.push(value);
|
|
308
|
-
switch (objectType) {
|
|
309
|
-
case "object":
|
|
310
|
-
if (history.nestedObjectsLeft <= 0)
|
|
311
|
-
return "undefined";
|
|
312
|
-
history.nestedObjectsLeft--;
|
|
313
|
-
break;
|
|
314
|
-
case "array":
|
|
315
|
-
case "typedarray":
|
|
316
|
-
if (history.nestedArraysLeft <= 0)
|
|
317
|
-
return "undefined";
|
|
318
|
-
history.nestedArraysLeft--;
|
|
319
|
-
break;
|
|
320
|
-
case "function":
|
|
321
|
-
case "generatorfunction":
|
|
322
|
-
if (history.nestedFunctionsLeft <= 0)
|
|
323
|
-
return "undefined";
|
|
324
|
-
history.nestedFunctionsLeft--;
|
|
325
|
-
break;
|
|
326
|
-
}
|
|
327
|
-
var refString = stringify(value, options, history);
|
|
328
|
-
history.references.splice(referencesLength);
|
|
329
|
-
switch (objectType) {
|
|
330
|
-
case "object":
|
|
331
|
-
history.nestedObjectsLeft++;
|
|
332
|
-
break;
|
|
333
|
-
case "array":
|
|
334
|
-
case "typedarray":
|
|
335
|
-
history.nestedArraysLeft++;
|
|
336
|
-
break;
|
|
337
|
-
case "function":
|
|
338
|
-
case "generatorfunction":
|
|
339
|
-
history.nestedFunctionsLeft++;
|
|
340
|
-
break;
|
|
341
|
-
}
|
|
342
|
-
return refString;
|
|
343
|
-
}
|
|
344
|
-
else {
|
|
345
|
-
refs.push({
|
|
346
|
-
historyRef: history.references.slice(0),
|
|
347
|
-
source: value
|
|
348
|
-
});
|
|
349
|
-
}
|
|
350
|
-
return "null";
|
|
351
|
-
}
|
|
352
|
-
/**
|
|
353
|
-
* Converts JavaScript value to string
|
|
354
|
-
* @param value the value of any type
|
|
355
|
-
* @param options [optional] The options of conversion
|
|
356
|
-
*/
|
|
357
|
-
function javaScriptToString(value, options) {
|
|
358
|
-
options = options || {};
|
|
359
|
-
var concreteOptions = {
|
|
360
|
-
includeFunctionProperties: options.includeFunctionProperties === undefined
|
|
361
|
-
? true
|
|
362
|
-
: options.includeFunctionProperties,
|
|
363
|
-
includeFunctionPrototype: options.includeFunctionPrototype === undefined
|
|
364
|
-
? true
|
|
365
|
-
: options.includeFunctionPrototype,
|
|
366
|
-
includeBuffers: options.includeBuffers === undefined ? true : options.includeBuffers,
|
|
367
|
-
nestedObjectsAmount: options.nestedObjectsAmount === undefined
|
|
368
|
-
? Number.POSITIVE_INFINITY
|
|
369
|
-
: options.nestedObjectsAmount,
|
|
370
|
-
nestedArraysAmount: options.nestedArraysAmount === undefined
|
|
371
|
-
? Number.POSITIVE_INFINITY
|
|
372
|
-
: options.nestedArraysAmount,
|
|
373
|
-
nestedFunctionsAmount: options.nestedFunctionsAmount === undefined
|
|
374
|
-
? Number.POSITIVE_INFINITY
|
|
375
|
-
: options.nestedFunctionsAmount
|
|
376
|
-
};
|
|
377
|
-
return stringify(value, concreteOptions, {
|
|
378
|
-
references: [value],
|
|
379
|
-
nestedObjectsLeft: concreteOptions.nestedObjectsAmount,
|
|
380
|
-
nestedArraysLeft: concreteOptions.nestedArraysAmount,
|
|
381
|
-
nestedFunctionsLeft: concreteOptions.nestedFunctionsAmount
|
|
382
|
-
});
|
|
383
|
-
}
|
|
384
|
-
exports.default = javaScriptToString;
|
|
385
|
-
//# sourceMappingURL=javascripttostring.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"javascripttostring.js","sourceRoot":"","sources":["../../src/javascripttostring.ts"],"names":[],"mappings":"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"}
|