427a6ff20554bb74567548cf8bc5581fcf83298efd68cd5373ea846c140d6b110b4b9bb8aebf7c963fea5632c2e1b73eb7ab2951600fca8a5b19c4ddac82f7 660 B

12345678910111213141516171819202122232425262728
  1. class Theme {
  2. static DEFAULTS = {
  3. modules: {}
  4. };
  5. static themes = {
  6. default: Theme
  7. };
  8. modules = {};
  9. constructor(quill, options) {
  10. this.quill = quill;
  11. this.options = options;
  12. }
  13. init() {
  14. Object.keys(this.options.modules).forEach(name => {
  15. if (this.modules[name] == null) {
  16. this.addModule(name);
  17. }
  18. });
  19. }
  20. addModule(name) {
  21. // @ts-expect-error
  22. const ModuleClass = this.quill.constructor.import(`modules/${name}`);
  23. this.modules[name] = new ModuleClass(this.quill, this.options.modules[name] || {});
  24. return this.modules[name];
  25. }
  26. }
  27. export default Theme;
  28. //# sourceMappingURL=theme.js.map