From: Dan Brown Date: Wed, 23 Jul 2025 14:41:55 +0000 (+0100) Subject: TypeScript: Updated compile target, addressed issues X-Git-Url: http://source.bookstackapp.com/bookstack/commitdiff_plain/2668aae09b93feb95ac81aceb19e296879052dbb TypeScript: Updated compile target, addressed issues --- diff --git a/resources/js/wysiwyg/lexical/core/LexicalNode.ts b/resources/js/wysiwyg/lexical/core/LexicalNode.ts index 7306e6bca..6d79c01cc 100644 --- a/resources/js/wysiwyg/lexical/core/LexicalNode.ts +++ b/resources/js/wysiwyg/lexical/core/LexicalNode.ts @@ -175,7 +175,7 @@ export type NodeKey = string; export class LexicalNode { // Allow us to look up the type including static props - ['constructor']!: KlassConstructor; + declare ['constructor']: KlassConstructor; /** @internal */ __type: string; /** @internal */ diff --git a/resources/js/wysiwyg/lexical/core/nodes/LexicalDecoratorNode.ts b/resources/js/wysiwyg/lexical/core/nodes/LexicalDecoratorNode.ts index 99d2669d9..5015f593e 100644 --- a/resources/js/wysiwyg/lexical/core/nodes/LexicalDecoratorNode.ts +++ b/resources/js/wysiwyg/lexical/core/nodes/LexicalDecoratorNode.ts @@ -24,7 +24,7 @@ export interface DecoratorNode { /** @noInheritDoc */ // eslint-disable-next-line @typescript-eslint/no-unsafe-declaration-merging export class DecoratorNode extends LexicalNode { - ['constructor']!: KlassConstructor>; + declare ['constructor']: KlassConstructor>; constructor(key?: NodeKey) { super(key); } diff --git a/resources/js/wysiwyg/lexical/core/nodes/LexicalElementNode.ts b/resources/js/wysiwyg/lexical/core/nodes/LexicalElementNode.ts index 9ad508411..a27603773 100644 --- a/resources/js/wysiwyg/lexical/core/nodes/LexicalElementNode.ts +++ b/resources/js/wysiwyg/lexical/core/nodes/LexicalElementNode.ts @@ -55,7 +55,7 @@ export interface ElementNode { /** @noInheritDoc */ // eslint-disable-next-line @typescript-eslint/no-unsafe-declaration-merging export class ElementNode extends LexicalNode { - ['constructor']!: KlassConstructor; + declare ['constructor']: KlassConstructor; /** @internal */ __first: null | NodeKey; /** @internal */ diff --git a/resources/js/wysiwyg/lexical/core/nodes/LexicalLineBreakNode.ts b/resources/js/wysiwyg/lexical/core/nodes/LexicalLineBreakNode.ts index 2d28db08c..b1746e7f8 100644 --- a/resources/js/wysiwyg/lexical/core/nodes/LexicalLineBreakNode.ts +++ b/resources/js/wysiwyg/lexical/core/nodes/LexicalLineBreakNode.ts @@ -22,7 +22,7 @@ export type SerializedLineBreakNode = SerializedLexicalNode; /** @noInheritDoc */ export class LineBreakNode extends LexicalNode { - ['constructor']!: KlassConstructor; + declare ['constructor']: KlassConstructor; static getType(): string { return 'linebreak'; } diff --git a/resources/js/wysiwyg/lexical/core/nodes/LexicalParagraphNode.ts b/resources/js/wysiwyg/lexical/core/nodes/LexicalParagraphNode.ts index e8d044b21..6711936da 100644 --- a/resources/js/wysiwyg/lexical/core/nodes/LexicalParagraphNode.ts +++ b/resources/js/wysiwyg/lexical/core/nodes/LexicalParagraphNode.ts @@ -44,7 +44,7 @@ export type SerializedParagraphNode = Spread< /** @noInheritDoc */ export class ParagraphNode extends CommonBlockNode { - ['constructor']!: KlassConstructor; + declare ['constructor']: KlassConstructor; /** @internal */ __textFormat: number; __textStyle: string; diff --git a/resources/js/wysiwyg/lexical/core/nodes/LexicalTextNode.ts b/resources/js/wysiwyg/lexical/core/nodes/LexicalTextNode.ts index 9a4867494..35cc073a0 100644 --- a/resources/js/wysiwyg/lexical/core/nodes/LexicalTextNode.ts +++ b/resources/js/wysiwyg/lexical/core/nodes/LexicalTextNode.ts @@ -284,7 +284,7 @@ export interface TextNode { /** @noInheritDoc */ // eslint-disable-next-line @typescript-eslint/no-unsafe-declaration-merging export class TextNode extends LexicalNode { - ['constructor']!: KlassConstructor; + declare ['constructor']: KlassConstructor; __text: string; /** @internal */ __format: number; diff --git a/tsconfig.json b/tsconfig.json index 8bffc25f8..dacaefea2 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,7 +2,7 @@ "include": ["resources/js/**/*"], "exclude": ["resources/js/wysiwyg/lexical/yjs/*"], "compilerOptions": { - "target": "es2019", + "target": "es2022", "module": "commonjs", "rootDir": "./resources/js/", "baseUrl": "./",