Pre-fetch editor script

[MAILPOET-2376]
This commit is contained in:
Pavel Dohnal
2019-09-24 09:40:48 +02:00
committed by Jack Kitterhing
parent f0afcbcdce
commit c885a395c2
3 changed files with 18 additions and 4 deletions

View File

@@ -173,6 +173,7 @@ class NewsletterTypes extends React.Component {
return (
<div>
<link rel="prefetch" href={window.mailpoet_editor_javascript_url} as="script" />
<h1>{MailPoet.I18n.t('pickCampaignType')}</h1>
<Breadcrumb step="type" />

View File

@@ -25,6 +25,11 @@ class Assets extends AbstractExtension {
[$this, 'generateJavascript'],
['is_safe' => ['all']]
),
new TwigFunction(
'getJavascriptScriptUrl',
[$this, 'getJavascriptScriptUrl'],
['is_safe' => ['all']]
),
new TwigFunction(
'image_url',
[$this, 'generateImageUrl'],
@@ -59,16 +64,23 @@ class Assets extends AbstractExtension {
foreach ($scripts as $script) {
$output[] = sprintf(
'<script type="text/javascript" src="%s/%s/%s"></script>',
$this->_globals['assets_url'],
strpos($script, 'lib/') === 0 ? 'js' : 'dist/js',
$this->getAssetFileName($this->_globals['assets_manifest_js'], $script)
'<script type="text/javascript" src="%s"></script>',
$this->getJavascriptScriptUrl($script)
);
}
return join("\n", $output);
}
function getJavascriptScriptUrl($script) {
return sprintf(
'%s/%s/%s',
$this->_globals['assets_url'],
strpos($script, 'lib/') === 0 ? 'js' : 'dist/js',
$this->getAssetFileName($this->_globals['assets_manifest_js'], $script)
);
}
function generateImageUrl($path) {
return $this->appendVersionToUrl(
$this->_globals['assets_url'] . '/img/' . $path

View File

@@ -45,6 +45,7 @@
var mailpoet_mss_active = <%= json_encode(mss_active) %>;
var mailpoet_free_plan_announcement_seen = !!+'<%= settings.free_plan_announcement_seen %>';
var mailpoet_mta_method = '<%= settings.mta.method %>';
var mailpoet_editor_javascript_url = '<%= getJavascriptScriptUrl("newsletter_editor.js") %>';
var mailpoet_subscribers_count = <%= subscribers_count %>;
<% if not(premium_plugin_active) %>