The top-level superproject for zLUX. zLUX includes the Zowe Desktop framework in addition to several built-in apps and an example server implementation.
Eclipse Public License 2.0
38
stars
42
forks
source link
[SPIKE] - Work on Angular upgrade prototype by reviewing OneIdentity project #1017
Part of last sprint's SPIKE involved looking at multiple paths forward towards an Angular upgrade. I also reached out to Leonty who gave me some insights on what he would do and research if he had to, which led us to these findings -->
Thanks. Angular went through major changes recently, and my PR is outdated. Now, you have to compile desktop plugins using the Angular compiler, so use '@ngtools/webpack' or angular-cli. you have to update the desktop to Angular v15 or v16. Just comment out the plugin loading code for now, compile it as a library with the Angular compiler using @ngtools/webpack or angular-cli.
After that, modify the bootstrap to load the fresh desktop as an ESM module.Good luck with it!
Part of last sprint's SPIKE involved looking at multiple paths forward towards an Angular upgrade. I also reached out to Leonty who gave me some insights on what he would do and research if he had to, which led us to these findings -->
Thanks. Angular went through major changes recently, and my PR is outdated. Now, you have to compile desktop plugins using the Angular compiler, so use '@ngtools/webpack' or angular-cli. you have to update the desktop to Angular v15 or v16. Just comment out the plugin loading code for now, compile it as a library with the Angular compiler using @ngtools/webpack or angular-cli. After that, modify the bootstrap to load the fresh desktop as an ESM module.Good luck with it!
I would recommend starting here: https://stackoverflow.com/questions/75445012/how-do-you-load-precompiled-angular-libraries-as-dynamic-modules.They had a plugin loader very similar to ours at https://github.com/OneIdentity/IdentityManager.Imx/blob/v82/imxweb/projects/qbm/src/lib/plugins/plugin-loader.service.ts, but they used SystemJS instead of RequireJS.They were able to move towards Angular 13 and load pre-compiled plugins using a workaround with the SystemJS Babel plugin: https://github.com/OneIdentity/IdentityManager.Imx/blob/v92/imxweb/projects/qbm/src/lib/plugins/plugin-loader.service.ts. (edited) plugin-loader.service.ts OneIdentity/IdentityManager.Imx | Added by GitHub plugin-loader.service.ts OneIdentity/IdentityManager.Imx | Added by GitHub 6:10 And, of course, it's worth trying out the Angular Module Federation Plugin and learning about Module Federation in Webpack 5. It looks very promising for Virtual Desktop needs.