Open gantispam opened 3 years ago
Are you sure about your setup?
Please check the React Demo for TypeScript examples, including HAlign
Thx for answer.
I'm not sure but React Demo seen to be Browser context with JS langage.
My context is NodeJs and TS langage (NestJs)
import pptxgen from 'pptxgenjs';
[...]
const pptx = new pptxgen(); console.log(pptx);
* Result
TypeError: pptxgenjs_1.default is not a constructor
at new PptxAbstractGenerator (/opt/app/src/export/export-pptx/builder/core/generator/pptx-abstract.generator.ts:57:22)
at new PptxV1Generator (/opt/app/src/export/export-pptx/builder/release/v1/pptx-v1.generator.ts:20:9)
at ExportPptxFactoryService.get (/opt/app/src/export/export-pptx/builder/export-pptx-factory.service.ts:43:48)
at ExportPptxService.retrieveExportFile (/opt/app/src/export/export-pptx/service/export-pptx.service.ts:23:45)
at ExportPptxController.
---
* Another test inspired fo https://github.com/gitbrent/PptxGenJS/blob/master/demos/react-demo/src/App.js
import PptxGenJS from 'pptxgenjs'; import AlignH = PptxGenJS.AlignH; const PptxGenJSClazz = require('pptxgenjs');
[...] const pptx = new PptxGenJSClazz(); const slide = pptx.addSlide(); slide.addText('hero', { fontSize: 44, align: AlignH.center, }); console.log(slide);
Note : for access to AlignH declaration we need to import PptxGenJS. So PptxGenJS namespace and class seen to be have same name. For prevent conflot i rename ```const PptxGenJS = require('pptxgenjs');``` by ```const PptxGenJSClazz = require('pptxgenjs');```
* Result
/opt/app/src/export/export-pptx/builder/core/generator/pptx-abstract.generator.ts:10
import AlignH = PptxGenJS.AlignH;
^
TypeError: Cannot read property 'AlignH' of undefined
at Object.
Category
Version
Observed Behavior
When we try to use TS type not all types is available (exported) by pptxgenjs library. Error on compilation :
OR
So we can't import HAlign type from ppxtgenjs lib.
Steps to Reproduce
note : this bug is different as object instanciation subject. one issue on this repository say to create instance with :
Import PptxGenJS :
// create custom function as static optionH1(options: IPptxGeneratorOptions, params: TextPropsOptions = {}): TextPropsOptions { return { ...{ w: '100%', h: '100%', fontSize: 44, align: 'center', color: options.config.colorPrimary, }, ...params, }; }
import AlignH = PptxGenJS.AlignH; [...] { ...{ w: '100%', h: '100%', fontSize: 44, align: AlignH.center, }, ...params, }
{ ...{ w: '100%', h: '100%', fontSize: 44, align: HAlign.center, }, ...params, }
npm run build