From 2eef5bbb1889dbc93641d14eb49d4662cadb3fd4 Mon Sep 17 00:00:00 2001 From: Liam Rella Date: Mon, 24 Feb 2025 17:57:16 +1030 Subject: [PATCH] feat: add decircular package --- package.json | 1 + packages/cspell-config/dictionaries/envsa-misc.txt | 1 + packages/eslint-config/src/globs.ts | 2 +- pnpm-lock.yaml | 10 ++++++++++ src/json-utils.ts | 3 ++- 5 files changed, 15 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 2948bb1..7a4029d 100644 --- a/package.json +++ b/package.json @@ -66,6 +66,7 @@ "bumpp": "^10.0.3", "chalk": "^5.4.1", "cosmiconfig": "^9.0.0", + "decircular": "^1.0.0", "deepmerge": "^4.3.1", "esbuild": "^0.25.0", "execa": "^9.5.2", diff --git a/packages/cspell-config/dictionaries/envsa-misc.txt b/packages/cspell-config/dictionaries/envsa-misc.txt index 6174a75..084480b 100644 --- a/packages/cspell-config/dictionaries/envsa-misc.txt +++ b/packages/cspell-config/dictionaries/envsa-misc.txt @@ -101,6 +101,7 @@ darkgreen darkmode datetime ddev +decircular deepmerge defaultstatus deployignore diff --git a/packages/eslint-config/src/globs.ts b/packages/eslint-config/src/globs.ts index 5089c40..7c0019c 100644 --- a/packages/eslint-config/src/globs.ts +++ b/packages/eslint-config/src/globs.ts @@ -22,7 +22,7 @@ export const GLOB_SVELTE = '**/*.svelte'; export const GLOB_YAML = '**/*.y?(a)ml'; export const GLOB_XML = '**/*.xml'; export const GLOB_SVG = '**/*.svg'; -export const GLOB_HTML = '**/*.{htm?(l),twig}'; +export const GLOB_HTML = '**/*.htm?(l)'; export const GLOB_GRAPHQL = '**/*.{g,graph}ql'; export const GLOB_MARKDOWN_CODE = `${GLOB_MARKDOWN}/${GLOB_SRC}`; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 92b0954..8b59995 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,6 +10,10 @@ overrides: importers: .: + dependencies: + decircular: + specifier: ^1.0.0 + version: 1.0.0 devDependencies: '@envsa/cspell-config': specifier: workspace:* @@ -2183,6 +2187,10 @@ packages: supports-color: optional: true + decircular@1.0.0: + resolution: {integrity: sha512-YhCtYW0jQs9+gzL2vDLxanRhMHeKa55kw5z2oheI6D+MQA7KafrqtiGKhhpKCLZQurm2a9h0LkP9T5z5gy+A0A==} + engines: {node: '>=18'} + decode-named-character-reference@1.0.2: resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} @@ -6376,6 +6384,8 @@ snapshots: dependencies: ms: 2.1.3 + decircular@1.0.0: {} + decode-named-character-reference@1.0.2: dependencies: character-entities: 2.0.2 diff --git a/src/json-utils.ts b/src/json-utils.ts index 4a8e786..d7809b2 100644 --- a/src/json-utils.ts +++ b/src/json-utils.ts @@ -4,6 +4,7 @@ import jsonColorizer from '@pinojs/json-colorizer'; import type { ArrayMergeOptions, Options } from 'deepmerge'; +import decircular from 'decircular'; import deepmerge from 'deepmerge'; import jsonStringifyPrettyCompact from 'json-stringify-pretty-compact'; @@ -12,7 +13,7 @@ import jsonStringifyPrettyCompact from 'json-stringify-pretty-compact'; */ export function stringify(object: any): string { return jsonColorizer( - jsonStringifyPrettyCompact(object, { + jsonStringifyPrettyCompact(decircular(object), { indent: 2, replacer(_, value) { if (typeof value === 'function') {