Compare commits

...

4 Commits

Author SHA1 Message Date
ab3ae7ec90 5.0.3 2022-10-26 10:52:15 +02:00
b2bb918ee4 fix(core): update 2022-10-26 10:52:14 +02:00
606ff73f58 5.0.2 2022-09-13 21:37:42 +02:00
7ea17c792d fix(core): update 2022-09-13 21:37:42 +02:00
7 changed files with 4366 additions and 10807 deletions

10801
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{ {
"name": "@pushrocks/smartjson", "name": "@pushrocks/smartjson",
"version": "5.0.1", "version": "5.0.3",
"private": false, "private": false,
"description": "typed json handlers", "description": "typed json handlers",
"main": "dist_ts/index.js", "main": "dist_ts/index.js",
@ -21,13 +21,14 @@
}, },
"homepage": "https://gitlab.com/pushrocks/smartjson#README", "homepage": "https://gitlab.com/pushrocks/smartjson#README",
"devDependencies": { "devDependencies": {
"@gitzone/tsbuild": "^2.1.63", "@gitzone/tsbuild": "^2.1.65",
"@gitzone/tsrun": "^1.2.37", "@gitzone/tsrun": "^1.2.37",
"@gitzone/tstest": "^1.0.71", "@gitzone/tstest": "^1.0.73",
"@pushrocks/tapbundle": "^5.0.3", "@pushrocks/tapbundle": "^5.0.4",
"@types/node": "^18.0.0" "@types/node": "^18.7.17"
}, },
"dependencies": { "dependencies": {
"@pushrocks/smartstring": "^4.0.5",
"@types/buffer-json": "^2.0.1", "@types/buffer-json": "^2.0.1",
"@types/fast-json-stable-stringify": "^2.1.0", "@types/fast-json-stable-stringify": "^2.1.0",
"@types/lodash.clonedeep": "^4.5.7", "@types/lodash.clonedeep": "^4.5.7",

4321
pnpm-lock.yaml generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -40,4 +40,23 @@ tap.test('should products stable jsons', async () => {
console.log(jsonString); console.log(jsonString);
}); });
tap.test('should work with base64', async() => {
const someObject = {
hi: 'there',
thisIs: 'awesome',
};
const base64Json = smartjson.stringifyBase64(someObject);
console.log(base64Json);
const decodedObject = smartjson.parseBase64(base64Json);
expect(decodedObject).toEqual(someObject);
});
tap.test('stringify should handle plain string', async () => {
const stringifiedString = smartjson.stringify('hello');
console.log(stringifiedString);
expect(stringifiedString).toEqual('"hello"')
expect(smartjson.parse(stringifiedString)).toEqual('hello');
})
tap.start(); tap.start();

View File

@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@pushrocks/smartjson', name: '@pushrocks/smartjson',
version: '5.0.1', version: '5.0.3',
description: 'typed json handlers' description: 'typed json handlers'
} }

View File

@ -21,6 +21,18 @@ export const stringify = (
return returnJson; return returnJson;
}; };
export const stringifyBase64 = (...args: Parameters<typeof stringify>): string => {
const stringifiedResult = stringify(...args);
return plugins.smartstring.base64.encodeUri(stringifiedResult);
}
export const parseBase64 = (base64JsonStringArg: string) => {
const simpleStringified = plugins.smartstring.base64.decode(base64JsonStringArg);
return parse(simpleStringified);
}
parse
export class Smartjson { export class Smartjson {
/** /**
* enfolds data from an object * enfolds data from an object

View File

@ -1,3 +1,10 @@
// @pushrocks scope
import * as smartstring from '@pushrocks/smartstring';
export {
smartstring
}
// third party scope // third party scope
import lodashCloneDeep from 'lodash.clonedeep'; import lodashCloneDeep from 'lodash.clonedeep';
import stableJson2 from 'fast-json-stable-stringify'; import stableJson2 from 'fast-json-stable-stringify';