Issue #2951Opened August 11, 2020by tasham161 reactions

typography sector not found

Question

When using trying to add a font to the style manager, I use the following code:

const prop = editor.StyleManager.getProperty('typography', 'font-family'); prop.set('options', [ {value: "'Oswald', sans-serif", name: 'Oswald'}, ... ]);

However, when I use this inside a plugin (in the index.js) I am creating, I call it with editor.on('load',....) I keep getting 'typography' sector not found. However if I call it outside of the plugin (in the index.html) in the same way, where I am initializing the editor with all the configs, it works. So I was wondering, can we not add new fronts in a plugin so that they are automatically packaged with that plugin? and if not, why? If it is possible, please let me know how I can achieve this.

P.S. Thank you so much for all the time/work you've put in to building this project!

Answers (3)

mcottretAugust 21, 20201 reactions

Hi @tasham16 !

I think this is expected behaviour because modules are loaded after plugins in the editor's initialization sequence, & sectors are only added to the StyleManager module right after it has been loaded.

I don't know if this is a very clean way of achieving it, but without a better solution you could try overriding the StyleManager's onLoad method from your plugin to execute its logic at right moment like this following:

const onLoad = editor.StyleManager.onLoad;

editor.StyleManager.onLoad = () => {
    onLoad();
    this.getProperty('typography', 'font-family').set('options', [ /* ... */ ]); 
}

I'm sorry I didn't have the time to test this, hope it can help though.

Cheers !

tasham16August 25, 20200 reactions

Thank you so much! I will try that out!

artfAugust 28, 20200 reactions

The right way is to wait for the load of the editor

editor.on('load' => {
  const prop = editor.StyleManager...
})

Related Questions and Answers

Continue research with similar issue discussions.

Paid Plugins That Match This Issue

Curated by issue keywords and label relevance to help you ship faster.

View all plugins

Loading paid plugin recommendations...

Browse Plugin Categories

Jump directly to plugin category pages on the marketplace.