ui5-community / create-wdi5

quick bootstrap for using wdi5 (wdio-ui5-service)
Apache License 2.0
7 stars 1 forks source link

wdi5 ts init adds wrong ui5 type devDependency #11

Open heimwege opened 1 month ago

heimwege commented 1 month ago

Moved https://github.com/ui5-community/wdi5/issues/610 from wdi5 repo to wdi5-create

Describe the bug The easy ui5 generator includes a sub-generator that handles the wdi5 integration into the generated app. This mostly consists of npm init wdi5 -- --ts. Init wdi5 seems to hard coded introduce a devDependency to the latest version of @openui5/types. But in the context of the easy ui5 generator the user can select between sapui5 and openui5 and also which specific version to be used.

See also my initial issue for the ui5 ts app generator: https://github.com/ui5-community/generator-ui5-ts-app/issues/33

I think this is caused here: https://github.com/ui5-community/create-wdi5/blob/main/src%2Findex.ts#L20

UPDATA: and the tsconfig also contains the @openui5/types type: https://github.com/ui5-community/create-wdi5/blob/main/templates/test/tsconfig.json#L4

To Reproduce yo easy-ui5 -> select generator ts-app and follow the instructions. select sapui5 (e.g. 1.120.11) and have a look at the package.json afterwards.

Expected behavior Depending on the selection in the easy ui5 generator either @openui5/types or @sapui5/types should be included as devDependency in the version entered in the respective generator step.

vobu commented 1 month ago

ACK. will take a moment until we got this though. Help, anyone?!

heimwege commented 1 month ago

Some more context: Here's the place where create-wdi5 is being used as a nested generator in the ts-app generator and where it is run in the easy ui5 generator, but I have no clue how properties of the parent generator can be accessed from the sub generator or if they need to be added to the yeoman env first and basically how all this yeoman generator stuff works 🙈