Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
22 changes: 16 additions & 6 deletions build/build-modules-js/stylesheets/handle-scss.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,25 @@ import { ensureDir } from 'fs-extra';
import { transform as transformCss, Features } from 'lightningcss';
import * as Sass from 'sass-embedded';

export const handleScssFile = async (file) => {
const cssFile = file
.replace(`${sep}scss${sep}`, `${sep}css${sep}`)
.replace(`${sep}build${sep}media_source${sep}`, `${sep}media${sep}`)
.replace('.scss', '.css');
const silenceDeprecationList = [
`media_source${sep}templates`,
`installation${sep}template`,
`media_source${sep}plg_installer_webinstaller`,
`vendor${sep}fontawesome-free`,
`media_source${sep}system${sep}scss${sep}joomla-fontawesome.scss`,
`media_source${sep}com_media`,
`media_source${sep}plg_system_guidedtours${sep}scss${sep}guidedtours.scss`,
];
const shouldSilenceDeprecation = (file) => silenceDeprecationList.some((path) => new RegExp(String.raw`${path}`, 'i').test(file));
const getOutputFile = (file) => file.replace(`${sep}scss${sep}`, `${sep}css${sep}`).replace('.scss', '.css').replace(`${sep}build${sep}media_source${sep}`, `${sep}media${sep}`);

export const handleScssFile = async (file) => {
let compiled;
const cssFile = getOutputFile(file);
const options = shouldSilenceDeprecation(file) ? { silenceDeprecations: ['mixed-decls', 'color-functions', 'import', 'global-builtin'] } : {};

try {
compiled = Sass.compile(file);
compiled = Sass.compile(file, options);
} catch (error) {
// eslint-disable-next-line no-console
console.error(error.formatted);
Expand Down
22 changes: 16 additions & 6 deletions build/build-modules-js/stylesheets/scss-transform.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,25 @@ import FsExtra from 'fs-extra';
import LightningCSS from 'lightningcss';
import Sass from 'sass-embedded';

export const compile = async (file) => {
const cssFile = file
.replace(`${sep}scss${sep}`, `${sep}css${sep}`)
.replace('.scss', '.css')
.replace(`${sep}build${sep}media_source${sep}`, `${sep}media${sep}`);
const silenceDeprecationList = [
`media_source${sep}templates`,
`installation${sep}template`,
`media_source${sep}plg_installer_webinstaller`,
`vendor${sep}fontawesome-free`,
`media_source${sep}system${sep}scss${sep}joomla-fontawesome.scss`,
`media_source${sep}com_media`,
`media_source${sep}plg_system_guidedtours${sep}scss${sep}guidedtours.scss`,
];
const shouldSilenceDeprecation = (file) => silenceDeprecationList.some((path) => new RegExp(String.raw`${path}`, 'i').test(file));
const getOutputFile = (file) => file.replace(`${sep}scss${sep}`, `${sep}css${sep}`).replace('.scss', '.css').replace(`${sep}build${sep}media_source${sep}`, `${sep}media${sep}`);

export const compile = async (file) => {
let compiled;
const cssFile = getOutputFile(file);
const options = shouldSilenceDeprecation(file) ? { silenceDeprecations: ['mixed-decls', 'color-functions', 'import', 'global-builtin'] } : {};

try {
compiled = Sass.compile(file);
compiled = Sass.compile(file, options);
} catch (error) {
// eslint-disable-next-line no-console
console.error(error.formatted);
Expand Down