mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-28 06:05:24 +00:00
fix: keep plugin css below core utilities and version plugin assets by their css
This commit is contained in:
1 parent
80944301dd
commit
1a6f9ffad6
5 files changed
+92
-21
No files matched your search
@@ -3,7 +3,10 @@ import fs from "node:fs";
|
||||
import os from "node:os";
|
||||
import path from "node:path";
|
||||
import { pathToFileURL } from "node:url";
|
||||
import { build } from "../packages/plugin-sdk/cli/commands/build.mjs";
|
||||
import {
|
||||
build,
|
||||
lowerPluginLayers,
|
||||
} from "../packages/plugin-sdk/cli/commands/build.mjs";
|
||||
|
||||
const cleanups: Array<() => void> = [];
|
||||
|
||||
@@ -84,3 +87,38 @@ describe("termix-plugin build", () => {
|
||||
expect(mod.mode).toBe("production");
|
||||
});
|
||||
});
|
||||
|
||||
describe("plugin CSS layers", () => {
|
||||
it("renames the Tailwind layers so core's utilities always win", () => {
|
||||
expect(
|
||||
lowerPluginLayers(
|
||||
"@layer properties{a{b:c}}@layer utilities{.flex{display:flex}}",
|
||||
),
|
||||
).toBe(
|
||||
"@layer termix-plugin-properties{a{b:c}}@layer termix-plugin-utilities{.flex{display:flex}}",
|
||||
);
|
||||
expect(lowerPluginLayers("@layer utilities-extra{}")).toBe(
|
||||
"@layer utilities-extra{}",
|
||||
);
|
||||
});
|
||||
|
||||
it("is ordered in core's CSS between base and core's utilities", () => {
|
||||
const css = fs.readFileSync(
|
||||
path.join(__dirname, "..", "src", "ui", "index.css"),
|
||||
"utf8",
|
||||
);
|
||||
const order = /@layer ([^;{]+);/.exec(css)?.[1].split(/[\s,]+/);
|
||||
expect(order).toEqual([
|
||||
"properties",
|
||||
"termix-plugin-properties",
|
||||
"theme",
|
||||
"base",
|
||||
"components",
|
||||
"termix-plugin-utilities",
|
||||
"utilities",
|
||||
]);
|
||||
expect(css.indexOf("@layer properties,")).toBeLessThan(
|
||||
css.indexOf('@import "tailwindcss"'),
|
||||
);
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user