Skip to content

Commit

Permalink
backward compatibility
Browse files Browse the repository at this point in the history
  • Loading branch information
oscarotero committed May 25, 2023
1 parent 1b09a91 commit 9b09eb9
Show file tree
Hide file tree
Showing 3 changed files with 173 additions and 6 deletions.
5 changes: 1 addition & 4 deletions plugins/lightningcss.ts
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,7 @@ export const defaults: Options = {
/** A plugin to load all CSS files and process them using parcelCSS */
export default function (userOptions?: DeepPartial<Options>) {
return (site: Site) => {
const options = merge(
{ ...defaults, includes: site.options.includes } as Options,
userOptions,
);
const options = merge(defaults, userOptions);

site.loadAssets(options.extensions);

Expand Down
161 changes: 159 additions & 2 deletions tests/__snapshots__/lightningcss.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,6 @@ snapshot[`lightningcss plugin 2`] = `
asset: true,
engines: undefined,
ext: ".css",
includesPath: "_includes",
pageLoader: [AsyncFunction: text],
},
],
Expand All @@ -81,7 +80,7 @@ snapshot[`lightningcss plugin 3`] = `[]`;

snapshot[`lightningcss plugin 4`] = `
{
content: "::root{--color:#333;--background:#fff;--font-family:sans-serif}.text{font-family:var(--font-family)}.text p{color:var(--color);box-shadow:0 0 .5em var(--background);-webkit-backface-visibility:hidden;backface-visibility:hidden}",
content: '@import "variables.css";@import "./text.css";',
data: {
children: false,
content: '@import "variables.css";
Expand Down Expand Up @@ -157,3 +156,161 @@ snapshot[`lightningcss plugin 5`] = `
},
}
`;

snapshot[`lightningcss plugin (bundle mode) 1`] = `2`;

snapshot[`lightningcss plugin (bundle mode) 2`] = `
{
formats: [
{
engines: 1,
ext: ".tmpl.ts",
pageLoader: [AsyncFunction: module],
},
{
engines: 1,
ext: ".tmpl.js",
pageLoader: [AsyncFunction: module],
},
{
engines: undefined,
ext: ".tmpl.json",
pageLoader: [AsyncFunction: json],
},
{
dataLoader: [AsyncFunction: json],
engines: undefined,
ext: ".json",
},
{
engines: 1,
ext: ".md",
pageLoader: [AsyncFunction: text],
},
{
engines: 1,
ext: ".markdown",
pageLoader: [AsyncFunction: text],
},
{
componentLoader: [AsyncFunction: module],
dataLoader: [AsyncFunction: module],
engines: 1,
ext: ".js",
},
{
componentLoader: [AsyncFunction: module],
dataLoader: [AsyncFunction: module],
engines: 1,
ext: ".ts",
},
{
componentLoader: [AsyncFunction: text],
engines: 1,
ext: ".njk",
includesPath: "_includes",
pageLoader: [AsyncFunction: text],
},
{
dataLoader: [AsyncFunction: yaml],
engines: undefined,
ext: ".yaml",
pageLoader: [AsyncFunction: yaml],
},
{
dataLoader: [AsyncFunction: yaml],
engines: undefined,
ext: ".yml",
pageLoader: [AsyncFunction: yaml],
},
{
asset: true,
engines: undefined,
ext: ".css",
includesPath: "_includes",
pageLoader: [AsyncFunction: text],
},
],
}
`;

snapshot[`lightningcss plugin (bundle mode) 3`] = `[]`;

snapshot[`lightningcss plugin (bundle mode) 4`] = `
{
content: "::root{--color:#333;--background:#fff;--font-family:sans-serif}.text{font-family:var(--font-family)}.text p{color:var(--color);box-shadow:0 0 .5em var(--background);-webkit-backface-visibility:hidden;backface-visibility:hidden}",
data: {
children: false,
content: '@import "variables.css";
@import "./text.css";
',
date: 1970-01-01T00:00:00.000Z,
mergedKeys: {
tags: "stringArray",
},
page: undefined,
paginate: [Function: paginate],
search: Search {},
tags: [],
url: "/index.css",
},
dest: {
ext: ".css",
path: "/index",
},
src: {
asset: true,
ext: ".css",
path: "/index",
remote: undefined,
slug: "index",
},
}
`;

snapshot[`lightningcss plugin (bundle mode) 5`] = `
{
content: ".text{font-family:var(--font-family)}.text p{color:var(--color);box-shadow:0 0 .5em var(--background);-webkit-backface-visibility:hidden;backface-visibility:hidden}",
data: {
children: false,
content: ".text {
" +
" font-family: var(--font-family);
" +
"
" +
" & p {
" +
" color: var(--color);
" +
" box-shadow: 0 0 0.5em var(--background);
" +
" backface-visibility: hidden;
" +
" }
" +
"}
",
date: 1970-01-01T00:00:00.000Z,
mergedKeys: {
tags: "stringArray",
},
page: undefined,
paginate: [Function: paginate],
search: Search {},
tags: [],
url: "/text.css",
},
dest: {
ext: ".css",
path: "/text",
},
src: {
asset: true,
ext: ".css",
path: "/text",
remote: undefined,
slug: "text",
},
}
`;
13 changes: 13 additions & 0 deletions tests/lightningcss.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,16 @@ Deno.test("lightningcss plugin", async (t) => {
await build(site);
await assertSiteSnapshot(t, site);
});

Deno.test("lightningcss plugin (bundle mode)", async (t) => {
const site = getSite({
src: "lightningcss",
});

site.use(lightningcss({
includes: "_includes",
}));

await build(site);
await assertSiteSnapshot(t, site);
});

0 comments on commit 9b09eb9

Please sign in to comment.