smartjson/ts/smartjson.plugins.ts

32 lines
752 B
TypeScript
Raw Normal View History

2022-09-13 19:37:42 +00:00
// @pushrocks scope
2024-03-03 09:29:18 +00:00
import * as smartenv from '@push.rocks/smartenv';
2023-08-19 07:45:00 +00:00
import * as smartstring from '@push.rocks/smartstring';
2022-09-13 19:37:42 +00:00
2024-03-03 09:29:18 +00:00
export { smartenv, smartstring };
2022-09-13 19:37:42 +00:00
2020-10-03 11:20:58 +00:00
// third party scope
2019-07-04 15:03:15 +00:00
import lodashCloneDeep from 'lodash.clonedeep';
2019-12-15 19:05:20 +00:00
import stableJson2 from 'fast-json-stable-stringify';
const stableJson = stableJson2 as any;
2024-03-03 09:29:18 +00:00
export { lodashCloneDeep, stableJson };
2019-12-15 19:05:20 +00:00
export interface IStableJsonTypes {
2020-10-05 11:26:06 +00:00
Comparator: (
a: IStableJsonTypes['CompareDescriptor'],
b: IStableJsonTypes['CompareDescriptor']
) => number;
2019-12-15 19:05:20 +00:00
CompareDescriptor: {
2020-10-05 11:26:06 +00:00
key: string;
value: any;
2019-12-15 19:05:20 +00:00
};
Options: {
2020-10-05 11:26:06 +00:00
cmp?: (
a: IStableJsonTypes['CompareDescriptor'],
b: IStableJsonTypes['CompareDescriptor']
) => number;
2019-12-15 19:05:20 +00:00
cycles?: boolean;
};
}