15 lines
444 B
TypeScript
15 lines
444 B
TypeScript
export function serializeSettingsRevision(value: object): string {
|
|
return JSON.stringify(value, (_key, nestedValue: unknown) => {
|
|
if (!nestedValue || typeof nestedValue !== "object" || Array.isArray(nestedValue)) {
|
|
return nestedValue;
|
|
}
|
|
|
|
const record = nestedValue as Record<string, unknown>;
|
|
return Object.fromEntries(
|
|
Object.keys(record)
|
|
.sort()
|
|
.map((key) => [key, record[key]]),
|
|
);
|
|
});
|
|
}
|