Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
1c4bffb
WebAssetManager redesign
Fedik Aug 3, 2019
2c8d470
dog
Fedik Aug 4, 2019
a3365ce
phpcs
Fedik Aug 4, 2019
c953055
phpcs
Fedik Aug 4, 2019
0f62d12
Listen to changes in the registry
Fedik Aug 4, 2019
1e73f6f
will be changed by listener anyway
Fedik Aug 4, 2019
6297a59
Listen only changes of active assets
Fedik Aug 4, 2019
f4a9a33
now the same but without recursion loop
Fedik Aug 4, 2019
a73e49c
phpcs
Fedik Aug 4, 2019
3c39ec2
Add description to an asset item interface
Fedik Aug 4, 2019
02ad39d
Do not put asset items to _scripts/_stylesheet properties of a document
Fedik Aug 5, 2019
6507c95
correct dependencies
Fedik Aug 5, 2019
a038be8
remove unused event
Fedik Aug 5, 2019
d1e5681
Merge branch '4.0-dev' into asset-4
infograf768 Aug 14, 2019
7ecc92e
Sync. Merge branch '4.0-dev' into asset-4
Fedik Aug 20, 2019
2a04670
"after conflict" fix
Fedik Aug 20, 2019
eee8102
template.js to asset
Fedik Aug 20, 2019
e3fd116
Merge branch 'asset-4' of github.com:Fedik/joomla-cms into asset-4
Fedik Aug 20, 2019
a8899f3
Sync. Merge branch '4.0-dev' into asset-4
Fedik Sep 9, 2019
b24bd71
Sync. Merge branch '4.0-dev' into asset-4
Fedik Sep 13, 2019
5b2e082
Sync. Merge branch '4.0-dev' into asset-4
Fedik Oct 20, 2019
22e28db
Sync. Merge remote-tracking branch 'joomla/4.0-dev' into asset-4
Fedik Nov 17, 2019
41fadfe
fix after conflict
Fedik Nov 17, 2019
05ab53b
Sync. Merge branch '4.0-dev' into asset-4
Fedik Dec 6, 2019
e4bd8ea
update atum/component
Fedik Dec 6, 2019
6f6c835
assets to use relative uri to media, instead of full
Fedik Dec 6, 2019
d6022e6
remove unused HTMLHelper
Fedik Dec 7, 2019
44829a7
LangActiveAssetItem
Fedik Dec 7, 2019
60533f0
Improve preset handling
Fedik Dec 8, 2019
9de1195
Correcting use of assets in template files
Fedik Dec 8, 2019
c692208
Merge branch '4.0-dev' into asset-4
Dec 11, 2019
a289279
Update libraries/src/Event/WebAsset/WebAssetRegistryAssetChanged.php
Fedik Dec 13, 2019
141b260
Update libraries/src/WebAsset/AssetItem/FormValidateAssetItem.php
Fedik Dec 13, 2019
e112a3f
sync. Merge branch '4.0-dev' into asset-4
Fedik Dec 14, 2019
5ce881f
settings.json correction
Fedik Dec 14, 2019
944db6a
Add registerAndUse<Type> magick
Fedik Dec 14, 2019
9aa433c
couple fixes
Fedik Dec 15, 2019
cb96597
Add dummy asset to allow to extensions to use it as dependency to act…
Fedik Dec 15, 2019
5657263
Update administrator/templates/atum/joomla.asset.json
Fedik Dec 23, 2019
20145ef
Update libraries/src/WebAsset/WebAssetRegistry.php
Fedik Dec 23, 2019
35bb3b4
Update libraries/src/WebAsset/WebAssetRegistry.php
Fedik Dec 23, 2019
d0d200a
Update libraries/src/WebAsset/WebAssetRegistry.php
Fedik Dec 23, 2019
e72155e
Merge branch '4.0-dev' into asset-4
infograf768 Jan 2, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@
Text::script('JGLOBAL_SELECT_NO_RESULTS_MATCH');
Text::script('JGLOBAL_SELECT_PRESS_TO_SELECT');

Factory::getDocument()->getWebAssetManager()->enableAsset('choicesjs');
Factory::getDocument()->getWebAssetManager()->usePreset('choicesjs');

HTMLHelper::_('webcomponent', 'system/fields/joomla-field-fancy-select.min.js', ['version' => 'auto', 'relative' => true]);
?>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
Text::script('JGLOBAL_SELECT_NO_RESULTS_MATCH');
Text::script('JGLOBAL_SELECT_PRESS_TO_SELECT');

Factory::getDocument()->getWebAssetManager()->enableAsset('choicesjs');
Factory::getDocument()->getWebAssetManager()->usePreset('choicesjs');
HTMLHelper::_('webcomponent', 'system/fields/joomla-field-fancy-select.min.js', ['version' => 'auto', 'relative' => true]);

?>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
Text::script('JGLOBAL_SELECT_NO_RESULTS_MATCH');
Text::script('JGLOBAL_SELECT_PRESS_TO_SELECT');

$this->document->getWebAssetManager()->enableAsset('choicesjs');
$this->document->getWebAssetManager()->usePreset('choicesjs');
HTMLHelper::_('webcomponent', 'system/fields/joomla-field-fancy-select.min.js', ['version' => 'auto', 'relative' => true]);

?>
Expand Down
15 changes: 5 additions & 10 deletions administrator/templates/atum/component.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,25 +10,20 @@
defined('_JEXEC') or die;

use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;

/** @var JDocumentHtml $this */

$lang = Factory::getLanguage();
$wa = $this->getWebAssetManager();

// Enable assets
$wa->enableAsset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'));
$wa->enableAsset('fontawesome-free');
$wa->useStyle('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'))
->useStyle('template.active.language')
->useStyle('template.user');

// Load specific language related CSS
HTMLHelper::_('stylesheet', 'administrator/language/' . $lang->getTag() . '/' . $lang->getTag() . '.css', ['version' => 'auto']);
// Override 'template.active' asset to set correct ltr/rtl dependency
$wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]);

// Load custom stylesheet if available
HTMLHelper::_('stylesheet', 'custom.css', ['version' => 'auto', 'relative' => true]);

// TODO: remove the following line whenever the assets are fixed to respect the overrides
HTMLHelper::_('stylesheet', 'vendor/choicesjs/choices.css', ['version' => 'auto', 'relative' => true]);
?>

<!DOCTYPE html>
Expand Down
16 changes: 5 additions & 11 deletions administrator/templates/atum/error_full.php
Original file line number Diff line number Diff line change
Expand Up @@ -46,18 +46,12 @@
$logoSmallAlt = htmlspecialchars($this->params->get('altSmallLogo', ''), ENT_COMPAT, 'UTF-8');

// Enable assets
$wa->enableAsset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'));
$wa->usePreset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'))
->useStyle('template.active.language')
->useStyle('template.user');

// Load specific language related CSS
HTMLHelper::_('stylesheet', 'administrator/language/' . $lang->getTag() . '/' . $lang->getTag() . '.css', ['version' => 'auto']);
$wa->enableAsset('fontawesome-free');

// Load customer stylesheet if available
HTMLHelper::_('stylesheet', 'custom.css', array('version' => 'auto', 'relative' => true));

// Load specific template related JS
// TODO: Adapt refactored build tools pt.2 @see https://issues.joomla.org/tracker/joomla-cms/23786
HTMLHelper::_('script', 'media/templates/' . $this->template . '/js/template.min.js', ['version' => 'auto']);
// Override 'template.active' asset to set correct ltr/rtl dependency
$wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]);

// Set some meta data
$this->setMetaData('viewport', 'width=device-width, initial-scale=1');
Expand Down
16 changes: 5 additions & 11 deletions administrator/templates/atum/error_login.php
Original file line number Diff line number Diff line change
Expand Up @@ -45,18 +45,12 @@
$logoSmallAlt = htmlspecialchars($this->params->get('altSmallLogo', ''), ENT_COMPAT, 'UTF-8');

// Enable assets
$wa->enableAsset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'));
$wa->usePreset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'))
->useStyle('template.active.language')
->useStyle('template.user');

// Load specific language related CSS
HTMLHelper::_('stylesheet', 'administrator/language/' . $lang->getTag() . '/' . $lang->getTag() . '.css', ['version' => 'auto']);
$wa->enableAsset('fontawesome-free');

// Load customer stylesheet if available
HTMLHelper::_('stylesheet', 'custom.css', array('version' => 'auto', 'relative' => true));

// Load specific template related JS
// TODO: Adapt refactored build tools pt.2 @see https://issues.joomla.org/tracker/joomla-cms/23786
HTMLHelper::_('script', 'media/templates/' . $this->template . '/js/template.min.js', ['version' => 'auto']);
// Override 'template.active' asset to set correct ltr/rtl dependency
$wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]);

// Set some meta data
$this->setMetaData('viewport', 'width=device-width, initial-scale=1');
Expand Down
19 changes: 5 additions & 14 deletions administrator/templates/atum/index.php
Original file line number Diff line number Diff line change
Expand Up @@ -52,21 +52,12 @@
$logoSmallAlt = htmlspecialchars($this->params->get('altSmallLogo', ''), ENT_COMPAT, 'UTF-8');

// Enable assets
$wa->enableAsset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'));
$wa->enableAsset('fontawesome-free');
$wa->usePreset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'))
->useStyle('template.active.language')
->useStyle('template.user');

// Load specific language related CSS
HTMLHelper::_('stylesheet', 'administrator/language/' . $lang->getTag() . '/' . $lang->getTag() . '.css', ['version' => 'auto']);

// Load customer stylesheet if available
HTMLHelper::_('stylesheet', 'custom.css', array('version' => 'auto', 'relative' => true));

// TODO: remove the following line whenever the assets are fixed to respect the ovverides
HTMLHelper::_('stylesheet', 'vendor/choicesjs/choices.css', array('version' => 'auto', 'relative' => true));

// Load specific template related JS
// TODO: Adapt refactored build tools pt.2 @see https://issues.joomla.org/tracker/joomla-cms/23786
HTMLHelper::_('script', 'media/templates/' . $this->template . '/js/template.min.js', ['version' => 'auto']);
// Override 'template.active' asset to set correct ltr/rtl dependency
$wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]);

// Set some meta data
$this->setMetaData('viewport', 'width=device-width, initial-scale=1');
Expand Down
77 changes: 56 additions & 21 deletions administrator/templates/atum/joomla.asset.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,40 +6,75 @@
"license": "GPL-2.0-or-later",
"assets": [
{
"name": "template.atum.base",
"name": "template.atum.ltr",
"type": "style",
"uri": "template.min.css",
"dependencies": [
"core",
"bootstrap.js.bundle",
"css-vars-ponyfill",
"focus-visible"
"fontawesome"
]
},
{
"name": "template.atum.ltr",
"dependencies": ["template.atum.base"],
"css": [
"template.min.css",
"user.css"
"name": "template.atum.rtl",
"type": "style",
"uri": "template-rtl.min.css",
"dependencies": [
"fontawesome"
]
},
{
"name": "template.atum.rtl",
"dependencies": ["template.atum.base"],
"css": [
"template-rtl.min.css",
"user.css"
"name": "template.active.language",
"type": "style",
"uri": "",
"class": "LangActiveAssetItem",
"client": "administrator"
},
{
"name": "template.user",
"type": "style",
"uri": "user.css"
},
{
"name": "template.atum",
"type": "script",
"uri": "templates/atum/template.min.js",
"dependencies": [
"core"
]
},
{
"name": "template.active",
"type": "script",
"uri": "",
"description": "A dummy asset to allow extensions to use it as a dependency to active template",
"dependencies": [
"template.atum"
]
},
{
"name": "template.atum.base",
"type": "preset",
"dependencies": [
"core#script",
"bootstrap.js.bundle#script",
"css-vars-ponyfill#script",
"focus-visible#script",
"template.atum#script"
]
},
{
"name": "bootstrap.css",
"css": [
"bootstrap.min.css"
"name": "template.atum.ltr",
"type": "preset",
"dependencies": [
"template.atum.base",
"template.atum.ltr#style"
]
},
{
"name": "fontawesome-free",
"css": [
"vendor/fontawesome-free/fontawesome.min.css"
"name": "template.atum.rtl",
"type": "preset",
"dependencies": [
"template.atum.base",
"template.atum.rtl#style"
]
}
]
Expand Down
16 changes: 5 additions & 11 deletions administrator/templates/atum/login.php
Original file line number Diff line number Diff line change
Expand Up @@ -48,18 +48,12 @@
$logoSmallAlt = htmlspecialchars($this->params->get('altSmallLogo', ''), ENT_COMPAT, 'UTF-8');

// Enable assets
$wa->enableAsset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'));
$wa->usePreset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr'))
->useStyle('template.active.language')
->useStyle('template.user');

// Load specific language related CSS
HTMLHelper::_('stylesheet', 'administrator/language/' . $lang->getTag() . '/' . $lang->getTag() . '.css', ['version' => 'auto']);
$wa->enableAsset('fontawesome-free');

// Load customer stylesheet if available
HTMLHelper::_('stylesheet', 'custom.css', array('version' => 'auto', 'relative' => true));

// Load specific template related JS
// TODO: Adapt refactored build tools pt.2 @see https://issues.joomla.org/tracker/joomla-cms/23786
HTMLHelper::_('script', 'media/templates/' . $this->template . '/js/template.min.js', ['version' => 'auto']);
// Override 'template.active' asset to set correct ltr/rtl dependency
$wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]);

// Set some meta data
$this->setMetaData('viewport', 'width=device-width, initial-scale=1');
Expand Down
44 changes: 9 additions & 35 deletions build/build-modules-js/init.es6.js
Original file line number Diff line number Diff line change
Expand Up @@ -266,49 +266,23 @@ const copyFiles = (options) => {
package: packageName,
name: assetInfo.name || vendorName,
version: moduleOptions.version,
type: assetInfo.type,
};

if (assetInfo.dependencies && assetInfo.dependencies.length) {
registryItem.dependencies = assetInfo.dependencies;
}

// Update path for JS and CSS files
if (assetInfo.js && assetInfo.js.length) {
registryItem.js = [];
// Update path to file
if (assetInfo.uri && (assetInfo.type === 'script' || assetInfo.type === 'style' || assetInfo.type === 'webcomponent')) {
let itemPath = assetInfo.uri;

assetInfo.js.forEach((assetJS) => {
let itemPath = assetJS;
// Check for external path
if (itemPath.indexOf('http://') !== 0 && itemPath.indexOf('https://') !== 0 && itemPath.indexOf('//') !== 0) {
itemPath = `vendor/${vendorName}/${itemPath}`;
}

// Check for external path
if (itemPath.indexOf('http://') !== 0 && itemPath.indexOf('https://') !== 0 && itemPath.indexOf('//') !== 0) {
itemPath = `media/vendor/${vendorName}/js/${itemPath}`;
}
registryItem.js.push(itemPath);

// Check if there are any attribute to this file, then update the path
if (assetInfo.attribute && assetInfo.attribute[assetJS]) {
registryItem.attribute[itemPath] = assetInfo.attribute[assetJS];
}
});
}

if (assetInfo.css && assetInfo.css.length) {
registryItem.css = [];

assetInfo.css.forEach((assetCSS) => {
let itemPath = assetCSS;

// Check for external path
if (itemPath.indexOf('http://') !== 0 && itemPath.indexOf('https://') !== 0 && itemPath.indexOf('//') !== 0) {
itemPath = `media/vendor/${vendorName}/css/${itemPath}`;
}
registryItem.css.push(itemPath);

// Check if there are any attribute to this file, then update the path
if (assetInfo.attribute && assetInfo.attribute[assetCSS]) {
registryItem.attribute[itemPath] = assetInfo.attribute[assetCSS];
}
});
registryItem.uri = itemPath;
}

registry.assets.push(registryItem);
Expand Down
Loading