Description:
In an Angular 17 project using xeokit-sdk, several TypeScript errors occur during the build process with ng build. The errors include missing module declarations, duplicate identifiers, and interface mismatches. This impacts the compilation and strict type checking within Angular's build pipeline.
Steps to Reproduce:
Set up a new Angular 17 project (ng new).
Install xeokit-sdk with npm install @xeokit/xeokit-sdk.
Configure TypeScript for strict type checking.
Run ng build.
The following TypeScript errors are displayed during the build process:
Error Details:
Module Not Found:
node_modules/@xeokit/xeokit-sdk/types/viewer/scene/models/PerformanceModel/index.d.ts:2:15 - error TS2307: Cannot find module './PerformanceNode' or its corresponding type declarations.
node_modules/@xeokit/xeokit-sdk/types/viewer/scene/nodes/Node.d.ts:61:22 - error TS2420: Class 'Node' incorrectly implements interface 'Omit<Entity, "parent">'. Property 'getEachVertex' is missing in type 'Node' but required in type 'Omit<Entity, "parent">'.
node_modules/@xeokit/xeokit-sdk/types/viewer/scene/Entity.d.ts:395:3 - 'getEachVertex' is declared here.
In the JavaScript code of xeokit-sdk, the Node class extends from the abstract Entity class but does not implement the getEachVertex method. This results in a TypeScript error because TypeScript expects any subclass of Entity to either implement all abstract members or be itself marked abstract.
Environment:
Operating System: [Ubuntu 20.04]
Angular Version: 17
Node.js Version: [20.11.1]
TypeScript Version: [5.4.5]
Xeokit SDK Version: [2.6.53]
Additional Information:
The issues seem related to TypeScript's strict checking and Angular's build process, causing the build to fail due to incompatibilities or missing declarations in the xeokit-sdk. Fixing these issues will help improve compatibility and ease of integration with Angular projects.
Thank you for your attention to this issue. Please let me know if I can provide further information or assist with testing.
Description:
In an Angular 17 project using
xeokit-sdk
, several TypeScript errors occur during the build process withng build
. The errors include missing module declarations, duplicate identifiers, and interface mismatches. This impacts the compilation and strict type checking within Angular's build pipeline.Steps to Reproduce:
ng new
).xeokit-sdk
withnpm install @xeokit/xeokit-sdk
.ng build
.Error Details:
Module Not Found:
node_modules/@xeokit/xeokit-sdk/types/viewer/scene/models/PerformanceModel/index.d.ts:2:15 - error TS2307: Cannot find module './PerformanceNode' or its corresponding type declarations.
export * from "./PerformanceNode";
Duplicate Identifier
numEntities
:node_modules/@xeokit/xeokit-sdk/types/viewer/scene/models/SceneModel.d.ts:172:9 - error TS2300: Duplicate identifier 'numEntities'.
node_modules/@xeokit/xeokit-sdk/types/viewer/scene/models/SceneModel.d.ts:179:9 - error TS2300: Duplicate identifier 'numEntities'.
Interface Mismatch in
Node
Class:node_modules/@xeokit/xeokit-sdk/types/viewer/scene/nodes/Node.d.ts:61:22 - error TS2420: Class 'Node' incorrectly implements interface 'Omit<Entity, "parent">'. Property 'getEachVertex' is missing in type 'Node' but required in type 'Omit<Entity, "parent">'.
node_modules/@xeokit/xeokit-sdk/types/viewer/scene/Entity.d.ts:395:3 - 'getEachVertex' is declared here.
Environment:
Additional Information:
The issues seem related to TypeScript's strict checking and Angular's build process, causing the build to fail due to incompatibilities or missing declarations in the
xeokit-sdk
. Fixing these issues will help improve compatibility and ease of integration with Angular projects.Thank you for your attention to this issue. Please let me know if I can provide further information or assist with testing.