UNPKG

@taiga-ui/addon-doc

Version:

Taiga UI based library for developing documentation portals for Angular libraries.

67 lines 6.13 kB
function inspectArray(array, depth) { if (depth === 0) { return '[…]'; } let result = ''; let first = true; for (let index = 0; index < array.length; index++) { if (first) { first = false; } else { result += ', '; } result += index in array ? tuiInspectAny(array[index], depth - 1) : 'empty'; } return `[${result}]`; } function inspectObject(object, depth) { if (depth === 0) { return '{…}'; } let result = ''; let first = true; for (const key in object) { if (!object.hasOwnProperty(key)) { continue; } if (first) { first = false; } else { result += ', '; } result += `${key}: ${tuiInspectAny(object[key], depth - 1)}`; } return `{${result}}`; } /** * Returns readable JS entity * @param data * @param depth * @return readable JS entity */ export function tuiInspectAny(data, depth) { if (data === null) { return 'null'; } switch (typeof data) { case 'boolean': case 'function': case 'number': case 'undefined': return String(data); case 'string': return `'${data}'`; default: break; } if (data instanceof RegExp) { return String(data); } if (Array.isArray(data)) { return inspectArray(data, depth); } return inspectObject(data, depth); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zcGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FkZG9uLWRvYy91dGlscy9pbnNwZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFNBQVMsWUFBWSxDQUFDLEtBQXlCLEVBQUUsS0FBYTtJQUMxRCxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUU7UUFDYixPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUVELElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNoQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUM7SUFFakIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDL0MsSUFBSSxLQUFLLEVBQUU7WUFDUCxLQUFLLEdBQUcsS0FBSyxDQUFDO1NBQ2pCO2FBQU07WUFDSCxNQUFNLElBQUksSUFBSSxDQUFDO1NBQ2xCO1FBRUQsTUFBTSxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7S0FDL0U7SUFFRCxPQUFPLElBQUksTUFBTSxHQUFHLENBQUM7QUFDekIsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLE1BQStCLEVBQUUsS0FBYTtJQUNqRSxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUU7UUFDYixPQUFPLEtBQUssQ0FBQztLQUNoQjtJQUVELElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUVoQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUM7SUFFakIsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLEVBQUU7UUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDN0IsU0FBUztTQUNaO1FBRUQsSUFBSSxLQUFLLEVBQUU7WUFDUCxLQUFLLEdBQUcsS0FBSyxDQUFDO1NBQ2pCO2FBQU07WUFDSCxNQUFNLElBQUksSUFBSSxDQUFDO1NBQ2xCO1FBRUQsTUFBTSxJQUFJLEdBQUcsR0FBRyxLQUFLLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDaEU7SUFFRCxPQUFPLElBQUksTUFBTSxHQUFHLENBQUM7QUFDekIsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBSSxJQUFPLEVBQUUsS0FBYTtJQUNuRCxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUU7UUFDZixPQUFPLE1BQU0sQ0FBQztLQUNqQjtJQUVELFFBQVEsT0FBTyxJQUFJLEVBQUU7UUFDakIsS0FBSyxTQUFTLENBQUM7UUFDZixLQUFLLFVBQVUsQ0FBQztRQUNoQixLQUFLLFFBQVEsQ0FBQztRQUNkLEtBQUssV0FBVztZQUNaLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLEtBQUssUUFBUTtZQUNULE9BQU8sSUFBSSxJQUFJLEdBQUcsQ0FBQztRQUN2QjtZQUNJLE1BQU07S0FDYjtJQUVELElBQUksSUFBSSxZQUFZLE1BQU0sRUFBRTtRQUN4QixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUN2QjtJQUVELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNyQixPQUFPLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7S0FDcEM7SUFFRCxPQUFPLGFBQWEsQ0FBQyxJQUEwQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQzVFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJmdW5jdGlvbiBpbnNwZWN0QXJyYXkoYXJyYXk6IHJlYWRvbmx5IHVua25vd25bXSwgZGVwdGg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgaWYgKGRlcHRoID09PSAwKSB7XG4gICAgICAgIHJldHVybiAnW+KApl0nO1xuICAgIH1cblxuICAgIGxldCByZXN1bHQgPSAnJztcbiAgICBsZXQgZmlyc3QgPSB0cnVlO1xuXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGFycmF5Lmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICBpZiAoZmlyc3QpIHtcbiAgICAgICAgICAgIGZpcnN0ID0gZmFsc2U7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXN1bHQgKz0gJywgJztcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc3VsdCArPSBpbmRleCBpbiBhcnJheSA/IHR1aUluc3BlY3RBbnkoYXJyYXlbaW5kZXhdLCBkZXB0aCAtIDEpIDogJ2VtcHR5JztcbiAgICB9XG5cbiAgICByZXR1cm4gYFske3Jlc3VsdH1dYDtcbn1cblxuZnVuY3Rpb24gaW5zcGVjdE9iamVjdChvYmplY3Q6IFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBkZXB0aDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBpZiAoZGVwdGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuICd74oCmfSc7XG4gICAgfVxuXG4gICAgbGV0IHJlc3VsdCA9ICcnO1xuXG4gICAgbGV0IGZpcnN0ID0gdHJ1ZTtcblxuICAgIGZvciAoY29uc3Qga2V5IGluIG9iamVjdCkge1xuICAgICAgICBpZiAoIW9iamVjdC5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmaXJzdCkge1xuICAgICAgICAgICAgZmlyc3QgPSBmYWxzZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc3VsdCArPSAnLCAnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmVzdWx0ICs9IGAke2tleX06ICR7dHVpSW5zcGVjdEFueShvYmplY3Rba2V5XSwgZGVwdGggLSAxKX1gO1xuICAgIH1cblxuICAgIHJldHVybiBgeyR7cmVzdWx0fX1gO1xufVxuXG4vKipcbiAqIFJldHVybnMgcmVhZGFibGUgSlMgZW50aXR5XG4gKiBAcGFyYW0gZGF0YVxuICogQHBhcmFtIGRlcHRoXG4gKiBAcmV0dXJuIHJlYWRhYmxlIEpTIGVudGl0eVxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpSW5zcGVjdEFueTxUPihkYXRhOiBULCBkZXB0aDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBpZiAoZGF0YSA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gJ251bGwnO1xuICAgIH1cblxuICAgIHN3aXRjaCAodHlwZW9mIGRhdGEpIHtcbiAgICAgICAgY2FzZSAnYm9vbGVhbic6XG4gICAgICAgIGNhc2UgJ2Z1bmN0aW9uJzpcbiAgICAgICAgY2FzZSAnbnVtYmVyJzpcbiAgICAgICAgY2FzZSAndW5kZWZpbmVkJzpcbiAgICAgICAgICAgIHJldHVybiBTdHJpbmcoZGF0YSk7XG4gICAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgICAgICByZXR1cm4gYCcke2RhdGF9J2A7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBpZiAoZGF0YSBpbnN0YW5jZW9mIFJlZ0V4cCkge1xuICAgICAgICByZXR1cm4gU3RyaW5nKGRhdGEpO1xuICAgIH1cblxuICAgIGlmIChBcnJheS5pc0FycmF5KGRhdGEpKSB7XG4gICAgICAgIHJldHVybiBpbnNwZWN0QXJyYXkoZGF0YSwgZGVwdGgpO1xuICAgIH1cblxuICAgIHJldHVybiBpbnNwZWN0T2JqZWN0KGRhdGEgYXMgdW5rbm93biBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgZGVwdGgpO1xufVxuIl19