diff --git a/.copier-answers.yaml b/.copier-answers.yaml index 55bbacc..971e12c 100644 --- a/.copier-answers.yaml +++ b/.copier-answers.yaml @@ -1,5 +1,5 @@ # Changes here will be overwritten by Copier -_commit: 9be318c +_commit: '1246721' _src_path: https://github.com/python-project-templates/base.git add_docs: true add_extension: js diff --git a/.gitattributes b/.gitattributes index bb7085b..aaf2698 100644 --- a/.gitattributes +++ b/.gitattributes @@ -7,7 +7,6 @@ Makefile linguist-documentation *.html text=auto eol=lf *.js text=auto eol=lf *.json text=auto eol=lf -*.less text=auto eol=lf *.md text=auto eol=lf *.py text=auto eol=lf *.toml text=auto eol=lf diff --git a/js/build.mjs b/js/build.mjs index 0efb9eb..942cfef 100644 --- a/js/build.mjs +++ b/js/build.mjs @@ -1,10 +1,9 @@ import { NodeModulesExternal } from "@finos/perspective-esbuild-plugin/external.js"; import { build } from "@finos/perspective-esbuild-plugin/build.js"; -import { BuildCss } from "@prospective.co/procss/target/cjs/procss.js"; +import { transform } from "lightningcss"; import { getarg } from "./tools/getarg.mjs"; import fs from "fs"; import cpy from "cpy"; -import path_mod from "path"; const DEBUG = getarg("--debug"); @@ -40,31 +39,29 @@ const BUILD = [ async function compile_css() { const process_path = (path) => { - const outpath = path.replace("src/less", "dist/css"); + const outpath = path.replace("src/css", "dist/css"); fs.mkdirSync(outpath, { recursive: true }); - fs.readdirSync(path).forEach((file_or_folder) => { - if (file_or_folder.endsWith(".less")) { - const outfile = file_or_folder.replace(".less", ".css"); - const builder = new BuildCss(""); - builder.add( - `${path}/${file_or_folder}`, - fs - .readFileSync(path_mod.join(`${path}/${file_or_folder}`)) - .toString(), - ); - fs.writeFileSync( - `${path.replace("src/less", "dist/css")}/${outfile}`, - builder.compile().get(outfile), - ); - } else { - process_path(`${path}/${file_or_folder}`); + fs.readdirSync(path, { withFileTypes: true }).forEach((entry) => { + const input = `${path}/${entry.name}`; + const output = `${outpath}/${entry.name}`; + + if (entry.isDirectory()) { + process_path(input); + } else if (entry.isFile() && entry.name.endsWith(".css")) { + const source = fs.readFileSync(input); + const { code } = transform({ + filename: entry.name, + code: source, + minify: !DEBUG, + sourceMap: false, + }); + fs.writeFileSync(output, code); } }); }; - // recursively process all less files in src/less - process_path("src/less"); - cpy("src/css/*", "dist/css/"); + + process_path("src/css"); } async function copy_html() { diff --git a/js/package.json b/js/package.json index 0f4d55a..709f62c 100644 --- a/js/package.json +++ b/js/package.json @@ -30,23 +30,30 @@ "build": "node build.mjs", "clean": "rm -rf dist playwright-report ../python_template_js/extension", "dev": "npm-run-all -p start watch", - "lint": "prettier --check \"src/**/*.{js,ts,jsx,tsx,less,css}\" \"tests/**/*.{js,ts,jsx,tsx}\" \"*.mjs\" \"*.json\"", - "fix": "prettier --write \"src/**/*.{js,ts,jsx,tsx,less,css}\" \"tests/**/*.{js,ts,jsx,tsx}\" \"*.mjs\" \"*.json\"", + "lint": "prettier --check \"src/**/*.{js,ts,jsx,tsx,css}\" \"tests/**/*.{js,ts,jsx,tsx}\" \"*.mjs\" \"*.json\"", + "fix": "prettier --write \"src/**/*.{js,ts,jsx,tsx,css}\" \"tests/**/*.{js,ts,jsx,tsx}\" \"*.mjs\" \"*.json\"", "preinstall": "npx only-allow pnpm", "prepack": "npm run build", "start": "http-server -p 3000 -o examples/", "start:tests": "http-server -p 3000 ", "test": "TZ=UTC playwright test", - "watch": "nodemon --watch src -e ts,less,html --exec \"pnpm build:debug\"" + "watch": "nodemon --watch src -e ts,css,html --exec \"pnpm build:debug\"" }, "dependencies": {}, "devDependencies": { "@finos/perspective-esbuild-plugin": "^3.2.1", +<<<<<<< before updating "@playwright/test": "^1.58.2", "@prospective.co/procss": "^0.1.18", "cpy": "^13.2.1", "esbuild": "^0.27.2", "esbuild-plugin-less": "^1.3.36", +======= + "@playwright/test": "^1.56.1", + "cpy": "^12.1.0", + "esbuild": "^0.27.2", + "lightningcss": "^1.29.3", +>>>>>>> after updating "http-server": "^14.1.1", "nodemon": "^3.1.14", "npm-run-all": "^4.1.5", diff --git a/js/src/less/index.less b/js/src/css/index.css similarity index 100% rename from js/src/less/index.less rename to js/src/css/index.css