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

Research exposing CKEditor 5 API as a global object #8399

Closed
3 of 4 tasks
jodator opened this issue Nov 2, 2020 · 4 comments
Closed
3 of 4 tasks

Research exposing CKEditor 5 API as a global object #8399

jodator opened this issue Nov 2, 2020 · 4 comments
Assignees
Labels
domain:dx This issue reports a developer experience problem or possible improvement. domain:extending-builds type:task This issue reports a chore (non-production change) and other types of "todos".

Comments

@jodator
Copy link
Contributor

jodator commented Nov 2, 2020

Provide a description of the task

Exposing CKEditor5 global object (available on window) and dot access to classes (base editor API). 

Requirements to met:

  • Adding a plugin to a build (might be a new build type).
  • Using imports from base editor plugins (core, engine, utils <EmitterMixin>, ui).
  • Using imports from "common" plugins (widget, clipboard, ... ).
  • Potential to solve CSS double import issue #8400.
@jodator jodator added the type:task This issue reports a chore (non-production change) and other types of "todos". label Nov 2, 2020
@jodator jodator added this to the iteration 38 milestone Nov 2, 2020
@jodator jodator added domain:dx This issue reports a developer experience problem or possible improvement. squad:dx labels Nov 2, 2020
@jodator
Copy link
Contributor Author

jodator commented Nov 23, 2020

TIL: you can load anything from the exported DLL:

So you could tinker with the exposed DLL. Not the best API though.

@jodator
Copy link
Contributor Author

jodator commented Nov 23, 2020

So you could tinker with the exposed DLL. Not the best API though.

This could be improved somehow, though.

  1. Real global object exposed on window.
  2. Use own module ID plugin for webpack (docs, source).

Side note as for 1: I've tried to use libraryEntryPoint but it fails with DLL.

@pomek
Copy link
Member

pomek commented Nov 23, 2020

I would see: CKEditor('module:engine/model/position~Position'). But, it may be just a wish.

@jodator
Copy link
Contributor Author

jodator commented Nov 24, 2020

So this task can be also closed as the research proved that we're going with DLL + custom webpack plugin to expose global: #8521.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain:dx This issue reports a developer experience problem or possible improvement. domain:extending-builds type:task This issue reports a chore (non-production change) and other types of "todos".
Projects
None yet
Development

No branches or pull requests

3 participants