From d777f15b61ba35c11126629f89d57f5b9a5ec9a5 Mon Sep 17 00:00:00 2001 From: Tchips46 Date: Thu, 9 Jul 2026 14:49:01 +0200 Subject: [PATCH] fix(manifest-resolver): revert --- .../package/manifest/manifest-resolver.ts | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/lib/server/project/package/manifest/manifest-resolver.ts b/src/lib/server/project/package/manifest/manifest-resolver.ts index 8174668..52a150f 100644 --- a/src/lib/server/project/package/manifest/manifest-resolver.ts +++ b/src/lib/server/project/package/manifest/manifest-resolver.ts @@ -1,4 +1,4 @@ -import ts, { type Expression, type ObjectLiteralElementLike, SyntaxKind } from 'typescript'; +import ts, { type Expression, type ObjectLiteralElementLike } from 'typescript'; import { PackageTypeEnum } from '../package.enum'; import type { ManifestPackage } from '../package.type'; @@ -47,18 +47,19 @@ const parseProperty = (prop: ObjectLiteralElementLike): any => { const parseElement = (value: Expression): any => { if (ts.isStringLiteral(value)) return value.text; if (ts.isNumericLiteral(value)) return Number(value.text); - - if (value.kind === SyntaxKind.TrueKeyword) return true; - if (value.kind === SyntaxKind.FalseKeyword) return false; - if (value.kind === SyntaxKind.NullKeyword) return null; - if (value.kind === SyntaxKind.UndefinedKeyword) return undefined; + if (ts.isLiteralTypeLiteral(value)) { + const txt = value.getText(); + if (txt === 'true') return true; + if (txt === 'false') return false; + if (txt === 'null') return null; + if (txt === 'undefined') return undefined; + } if (ts.isArrayLiteralExpression(value)) return value.elements.map((el) => parseElement(el)); if (ts.isObjectLiteralExpression(value)) - return value.properties.reduce>((acc, prop) => { - Object.assign(acc, parseProperty(prop)); - return acc; + return value.properties.reduce((acc, prop) => { + return { ...acc, ...parseProperty(prop) }; }, {}); - throw new Error(`Unknown element type: ${ts.SyntaxKind[value.kind]}`); + throw new Error('Unknown element type'); }; const getManifestFromNode = (source: ts.VariableDeclaration | null): any | null => {