Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(angular): add angular wrapper #763

Merged
merged 16 commits into from
Oct 24, 2024

Conversation

ls-infra
Copy link
Contributor

add the MonacoAngularWrapperComponent as the equivalent to packages/wrapper-react/src/index.tsx
so that the Angular devs can refer this to do two ways data binding (load from API and save back to API ,which is the typical use of the editor )
aslo by passing the wrapperConfig into the wrapper to make it language agnostic to increase reusability

but need some help for this run time exception atm
image

thank you very much

@ls-infra
Copy link
Contributor Author

this wrapper enhances and relates to #759 which changes the component to standalone to make it more reusable and configurable .

Copy link
Collaborator

@kaisalmen kaisalmen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ls-infra thank you. Some small remarks. Regarding the error you saw, I have to test this. Is the dom element (the htmlContainer) defined?

verify/angular/src/app/app.component.ts Outdated Show resolved Hide resolved
verify/angular/src/monaco-angular-wrapper.component.ts Outdated Show resolved Hide resolved
@kaisalmen
Copy link
Collaborator

kaisalmen commented Oct 11, 2024

Yes, the div element with id "monaco-editor-root" is no longer set. This causes the problem

Btw, I switched to the esbuild based system in the angular example, because the workers where no longer working with the custom webpack config. It was able to fix it in the independent webpack example, but that does not work in the angular context.

Due to esbuild/vite build currently some resources from monaco-vscode-api can't be loaded. @CGNonofr FYI, I hoped your existing vite plugin can help here, but the problem origin seems to be different or I need an asset config? I am not super familiar with Angular configuration. If someone can tell me how I can influence/change the vite config in Angular 18 I will be very happy. esbuild plugins can be used.
image

@ls-infra ls-infra force-pushed the feature/angular-wrapper branch from 8c0f339 to 9b6370a Compare October 13, 2024 23:08
@ls-infra
Copy link
Contributor Author

image @kaisalmen , i just finished the change , still some error , but looks like it is working , thanks

@kaisalmen
Copy link
Collaborator

@ls-infra thank you, I was away for a week. I will also try to find a solution for the above error. I will provide feedback in the upcoming days.

@ls-infra ls-infra force-pushed the feature/angular-wrapper branch from f81140a to 7550f4a Compare October 22, 2024 21:40
@ls-infra
Copy link
Contributor Author

@kaisalmen
i think for the purpose of this PR , it is ready to merge now, the demo shows that it allows user to edit the code and save to an API. i just did the git rebase

the errors in the console may be an exiting issue that we can track in another PR.

image

thanks

@ls-infra
Copy link
Contributor Author

@kaisalmen i am thinking to send another PR to fix that console error issue and support multiple lang and theme selection in the wrapper demo like the https://microsoft.github.io/monaco-editor/.

so that it will be easy to allow the dev user to test different lang easily . (while currently is only for json , when i tried to bind it to groovy, it faces some theme.json issue again for client side syntax highlight )

image

Copy link
Collaborator

@kaisalmen kaisalmen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you.

Sorry, you have to rebase once more. I didn't think about the impact of the -next.5 release.

This is basically ready for merge. My comments are non blocking.

Are you willing to maintain this specific example in the future?

@ls-infra ls-infra force-pushed the feature/angular-wrapper branch from 965db08 to 8769bec Compare October 23, 2024 21:12
@ls-infra
Copy link
Contributor Author

@kaisalmen the CI is passed after the git rebase ,
can you merge it now ,
we will open new PRs for the other related things.
thx

@ls-infra ls-infra changed the title WIP-> feat(angular): add angular wrapper feat(angular): add angular wrapper Oct 23, 2024
@kaisalmen kaisalmen merged commit bb6d615 into TypeFox:main Oct 24, 2024
1 check passed
@kaisalmen
Copy link
Collaborator

I squashed merged your commits. Thank you for providing this. Let's continue from here. 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants