json10
Version:
Handle circural references, comments and many more inside JSON
1 lines • 9.91 kB
Source Map (JSON)
{"version":3,"file":"json10-websql.mjs","sources":["../../../tmp-libs-for-dist-websql-prod/json10/projects/json10/src/lib/index.ts","../../../tmp-libs-for-dist-websql-prod/json10/projects/json10/src/json10-websql.ts"],"sourcesContent":["import { ___NS__add, ___NS__after, ___NS__ary, ___NS__assign, ___NS__assignIn, ___NS__assignInWith, ___NS__assignWith, ___NS__at, ___NS__attempt, ___NS__before, ___NS__bind, ___NS__bindAll, ___NS__bindKey, ___NS__camelCase, ___NS__capitalize, ___NS__castArray, ___NS__ceil, ___NS__chain, ___NS__chunk, ___NS__clamp, ___NS__clone, ___NS__cloneDeep, ___NS__cloneDeepWith, ___NS__cloneWith, ___NS__compact, ___NS__concat, ___NS__cond, ___NS__conforms, ___NS__conformsTo, ___NS__constant, ___NS__countBy, ___NS__create, ___NS__curry, ___NS__curryRight, ___NS__debounce, ___NS__deburr, ___NS__defaults, ___NS__defaultsDeep, ___NS__defaultTo, ___NS__defer, ___NS__delay, ___NS__difference, ___NS__differenceBy, ___NS__differenceWith, ___NS__divide, ___NS__drop, ___NS__dropRight, ___NS__dropRightWhile, ___NS__dropWhile, ___NS__each, ___NS__eachRight, ___NS__endsWith, ___NS__entries, ___NS__entriesIn, ___NS__eq, ___NS__escape, ___NS__escapeRegExp, ___NS__every, ___NS__extend, ___NS__extendWith, ___NS__fill, ___NS__filter, ___NS__find, ___NS__findIndex, ___NS__findKey, ___NS__findLast, ___NS__findLastIndex, ___NS__findLastKey, ___NS__first, ___NS__flatMap, ___NS__flatMapDeep, ___NS__flatMapDepth, ___NS__flatten, ___NS__flattenDeep, ___NS__flattenDepth, ___NS__flip, ___NS__floor, ___NS__flow, ___NS__flowRight, ___NS__forEach, ___NS__forEachRight, ___NS__forIn, ___NS__forInRight, ___NS__forOwn, ___NS__forOwnRight, ___NS__fromPairs, ___NS__functions, ___NS__functionsIn, ___NS__get, ___NS__groupBy, ___NS__gt, ___NS__gte, ___NS__has, ___NS__hasIn, ___NS__head, ___NS__identity, ___NS__includes, ___NS__indexOf, ___NS__initial, ___NS__inRange, ___NS__intersection, ___NS__intersectionBy, ___NS__intersectionWith, ___NS__invert, ___NS__invertBy, ___NS__invoke, ___NS__invokeMap, ___NS__isArguments, ___NS__isArray, ___NS__isArrayBuffer, ___NS__isArrayLike, ___NS__isArrayLikeObject, ___NS__isBoolean, ___NS__isBuffer, ___NS__isDate, ___NS__isElement, ___NS__isEmpty, ___NS__isEqual, ___NS__isEqualWith, ___NS__isError, ___NS__isFinite, ___NS__isFunction, ___NS__isInteger, ___NS__isLength, ___NS__isMap, ___NS__isMatch, ___NS__isMatchWith, ___NS__isNaN, ___NS__isNative, ___NS__isNil, ___NS__isNull, ___NS__isNumber, ___NS__isObject, ___NS__isObjectLike, ___NS__isPlainObject, ___NS__isRegExp, ___NS__isSafeInteger, ___NS__isSet, ___NS__isString, ___NS__isSymbol, ___NS__isTypedArray, ___NS__isUndefined, ___NS__isWeakMap, ___NS__isWeakSet, ___NS__iteratee, ___NS__join, ___NS__kebabCase, ___NS__keyBy, ___NS__keys, ___NS__keysIn, ___NS__last, ___NS__lastIndexOf, ___NS__lowerCase, ___NS__lowerFirst, ___NS__lt, ___NS__lte, ___NS__map, ___NS__mapKeys, ___NS__mapValues, ___NS__matches, ___NS__matchesProperty, ___NS__max, ___NS__maxBy, ___NS__mean, ___NS__meanBy, ___NS__memoize, ___NS__merge, ___NS__mergeWith, ___NS__method, ___NS__methodOf, ___NS__min, ___NS__minBy, ___NS__mixin, ___NS__multiply, ___NS__negate, ___NS__noop, ___NS__now, ___NS__nth, ___NS__nthArg, ___NS__omit, ___NS__omitBy, ___NS__once, ___NS__orderBy, ___NS__over, ___NS__overArgs, ___NS__overEvery, ___NS__overSome, ___NS__pad, ___NS__padEnd, ___NS__padStart, ___NS__parseInt, ___NS__partial, ___NS__partialRight, ___NS__partition, ___NS__pick, ___NS__pickBy, ___NS__property, ___NS__propertyOf, ___NS__pull, ___NS__pullAll, ___NS__pullAllBy, ___NS__pullAllWith, ___NS__pullAt, ___NS__random, ___NS__range, ___NS__rangeRight, ___NS__rearg, ___NS__reduce, ___NS__reduceRight, ___NS__reject, ___NS__remove, ___NS__repeat, ___NS__replace, ___NS__rest, ___NS__result, ___NS__reverse, ___NS__round, ___NS__sample, ___NS__sampleSize, ___NS__set, ___NS__setWith, ___NS__shuffle, ___NS__size, ___NS__slice, ___NS__snakeCase, ___NS__some, ___NS__sortBy, ___NS__sortedIndex, ___NS__sortedIndexBy, ___NS__sortedIndexOf, ___NS__sortedLastIndex, ___NS__sortedLastIndexBy, ___NS__sortedLastIndexOf, ___NS__sortedUniq, ___NS__sortedUniqBy, ___NS__split, ___NS__spread, ___NS__startCase, ___NS__startsWith, ___NS__stubArray, ___NS__stubFalse, ___NS__stubObject, ___NS__stubString, ___NS__stubTrue, ___NS__subtract, ___NS__sum, ___NS__sumBy, ___NS__tail, ___NS__take, ___NS__takeRight, ___NS__takeRightWhile, ___NS__takeWhile, ___NS__tap, ___NS__template, ___NS__templateSettings, ___NS__throttle, ___NS__thru, ___NS__times, ___NS__toArray, ___NS__toFinite, ___NS__toInteger, ___NS__toLength, ___NS__toLower, ___NS__toNumber, ___NS__toPairs, ___NS__toPairsIn, ___NS__toPath, ___NS__toPlainObject, ___NS__toSafeInteger, ___NS__toString, ___NS__toUpper, ___NS__transform, ___NS__trim, ___NS__trimEnd, ___NS__trimStart, ___NS__truncate, ___NS__unary, ___NS__unescape, ___NS__union, ___NS__unionBy, ___NS__unionWith, ___NS__uniq, ___NS__uniqBy, ___NS__uniqueId, ___NS__uniqWith, ___NS__unset, ___NS__unzip, ___NS__unzipWith, ___NS__update, ___NS__updateWith, ___NS__upperCase, ___NS__upperFirst, ___NS__values, ___NS__valuesIn, ___NS__without, ___NS__words, ___NS__wrap, ___NS__xor, ___NS__xorBy, ___NS__xorWith, ___NS__zip, ___NS__zipObject, ___NS__zipObjectDeep, ___NS__zipWith } from 'tnp-core/websql-prod';\nimport { walk, Models__NS__AdditionalIteratorOptions, Models__NS__Circ, Models__NS__InDBType, Models__NS__InternalValues, Models__NS__StartIteratorOptions, Models__NS__Ver } from 'lodash-walk-object/websql-prod';\nexport type Circ = Models__NS__Circ;\nimport { CLASS } from 'typescript-class-helpers/websql-prod';\n// import { Log } from 'ng2-logger'\n// const log = Log.create('JSON10')\n\n// let counter = 0\n\nexport class JSON10 {\n\n public static structureArray(anyJSON: Object, options?: { include?: string[]; exclude?: string[] }) {\n let pathes = []\n const { include, exclude } = options || {} as any;\n walk.Object(anyJSON, (value, lodashPath) => {\n\n if (!___NS__isUndefined(value)) {\n pathes.push(lodashPath)\n }\n\n }, { include, exclude, checkCircural: true })\n return pathes;\n }\n\n\n public static cleaned(json, onCircs?: (circs: Circ[]) => any, options?:\n {\n exclude?: string[];\n include?: string[];\n breadthWalk?: boolean;\n }) {\n // console.log('BETTER SRUGUB', json)\n const result = ___NS__isArray(json) ? [] : {}\n const classFN = CLASS.OBJECT(json).isClassObject && CLASS.getFromObject(json);\n\n const { exclude, include, breadthWalk } = options || { exclude: [], include: [], breadthWalk: false };\n\n const { circs } = walk.Object(json, (value, lodashPath, changeValueTo, options) => {\n\n if (___NS__isObject(value) && options.isCircural) {\n ___NS__set(result, lodashPath, null)\n } else {\n ___NS__set(result, lodashPath, ___NS__cloneDeep(value))\n }\n\n }, { include, exclude, breadthWalk, checkCircural: true });\n\n if (___NS__isFunction(onCircs)) {\n onCircs(circs)\n }\n\n return ___NS__isFunction(classFN) ? ___NS__merge(new (classFN as any)(), result) : result;\n }\n\n public static stringify(anyJSON: Object, replace?: any, spaces?: number, onCircs?: (circs: Circ[]) => any) {\n const json = this.cleaned(anyJSON, onCircs);\n return JSON.stringify(json, replace, spaces);\n }\n\n public static parse(json: string, circs: Circ[] = []) {\n let res = JSON.parse(json);\n if (___NS__isArray(circs)) {\n circs.forEach(({ circuralTargetPath, pathToObj }) => {\n\n if (circuralTargetPath === '') {\n ___NS__set(res, pathToObj, res)\n } else {\n let v = ___NS__get(res, circuralTargetPath);\n ___NS__set(res, pathToObj, v)\n }\n\n })\n }\n return res;\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;AAIA;AACA;AAEA;MAEa,MAAM,CAAA;AAEV,IAAA,OAAO,cAAc,CAAC,OAAe,EAAE,OAAoD,EAAA;QAChG,IAAI,MAAM,GAAG,EAAE;QACf,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,IAAI,EAAS;QACjD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAI;AAEzC,YAAA,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE;AAC9B,gBAAA,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;YACzB;QAEF,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;AAC7C,QAAA,OAAO,MAAM;IACf;AAGO,IAAA,OAAO,OAAO,CAAC,IAAI,EAAE,OAAgC,EAAE,OAK3D,EAAA;;AAED,QAAA,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;AAC7C,QAAA,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC;QAE7E,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,OAAO,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;AAErG,QAAA,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,KAAI;YAEhF,IAAI,eAAe,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,UAAU,EAAE;AAChD,gBAAA,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC;YACtC;iBAAO;gBACL,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACzD;AAEF,QAAA,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;AAE1D,QAAA,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE;YAC9B,OAAO,CAAC,KAAK,CAAC;QAChB;AAEA,QAAA,OAAO,iBAAiB,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,IAAK,OAAe,EAAE,EAAE,MAAM,CAAC,GAAG,MAAM;IAC3F;IAEO,OAAO,SAAS,CAAC,OAAe,EAAE,OAAa,EAAE,MAAe,EAAE,OAAgC,EAAA;QACvG,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC;QAC3C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC;IAC9C;AAEO,IAAA,OAAO,KAAK,CAAC,IAAY,EAAE,QAAgB,EAAE,EAAA;QAClD,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAC1B,QAAA,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE;YACzB,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,kBAAkB,EAAE,SAAS,EAAE,KAAI;AAElD,gBAAA,IAAI,kBAAkB,KAAK,EAAE,EAAE;AAC7B,oBAAA,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC;gBACjC;qBAAO;oBACL,IAAI,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,kBAAkB,CAAC;AAC3C,oBAAA,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC/B;AAEF,YAAA,CAAC,CAAC;QACJ;AACA,QAAA,OAAO,GAAG;IACZ;AACD;;AC3ED;;AAEG;;;;"}