summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDeniz Akşimşek <deniz@denizaksimsek.com>2022-05-17 08:39:03 +0300
committerDeniz Akşimşek <deniz@denizaksimsek.com>2022-05-17 08:39:03 +0300
commite6ba2bcd9dce42b6f550320924c55af8a2fbe2c5 (patch)
treee4278d9e1f1b2921965b7595e89082ba99b9dd5d
parent8e85b3a04d0c3033b8b7a4bf2aa245a3eea3e26c (diff)
downloadmissing-e6ba2bcd9dce42b6f550320924c55af8a2fbe2c5.tar.gz
missing-e6ba2bcd9dce42b6f550320924c55af8a2fbe2c5.zip
try to make css build work on node
-rw-r--r--build/postcss.ts39
-rw-r--r--test.ts1
2 files changed, 21 insertions, 19 deletions
diff --git a/build/postcss.ts b/build/postcss.ts
index 5c34e11..c3ef5d6 100644
--- a/build/postcss.ts
+++ b/build/postcss.ts
@@ -4,17 +4,20 @@ import { join, dirname, fromFileUrl } from 'https://deno.land/std@0.139.0/path/m
import { gzip } from "https://deno.land/x/compress@v0.4.5/mod.ts"
import { compress as brotli } from 'https://deno.land/x/brotli@v0.1.4/mod.ts'
-import postcss from "https://esm.sh/postcss@8.4.13"
+import postcss from "https://esm.sh/postcss"
// Plugins
-import nesting from 'https://esm.sh/postcss-nesting?deps=postcss@8.4.13'
-import customSelectors from 'https://esm.sh/postcss-custom-selectors?deps=postcss@8.4.13'
-import atImport from 'https://esm.sh/postcss-import?deps=postcss@8.4.13'
-import importGlob from 'https://esm.sh/postcss-import-ext-glob?deps=postcss@8.4.13'
-import mixins from 'https://esm.sh/postcss-mixins?deps=postcss@8.4.13'
-import cssnano from 'https://esm.sh/cssnano?deps=postcss@8.4.13'
+import nesting from 'https://esm.sh/postcss-nesting'
+import customSelectors from 'https://esm.sh/postcss-custom-selectors'
+import atImport from 'https://esm.sh/postcss-import'
+import importGlob from 'https://esm.sh/postcss-import-ext-glob'
+import mixins from 'https://esm.sh/postcss-mixins'
+import autoprefixer from 'https://esm.sh/autoprefixer'
+
+import csso from 'https://esm.sh/csso@3.5.1'
// Paths
+console.log(import.meta.url)
const __dirname = dirname(fromFileUrl(import.meta.url))
const entrypoint = join(__dirname, '../src/main.css')
@@ -28,15 +31,14 @@ const enc = new TextEncoder
const build = async () => {
const postcssMain = postcss([
- nesting(),
- customSelectors(),
importGlob(),
atImport(),
+ nesting(),
+ customSelectors(),
mixins(),
+ autoprefixer({ overrideBrowserslist: ">1% and not ie 11" }),
])
- // const postcssMinifier = postcss([cssnano({ preset: 'default' })])
-
const css = dec.decode(await Deno.readFile(entrypoint))
await Deno.mkdir(dist, { recursive: true })
@@ -46,15 +48,14 @@ const build = async () => {
const outputCss = enc.encode(result.css)
await w(outputCss, devTarget)
- // const minifyResult =
- // await postcssMinifier.process(result, { from: entrypoint, to: prodTarget })
- // const minifiedCSS = enc.encode(minifyResult.css)
- // await w(minifiedCSS, prodTarget)
+ const minifyResult = csso.minify(result.css)
+ const minifiedCSS = enc.encode(minifyResult.css)
+ await w(minifiedCSS, prodTarget)
- // await Promise.all([
- // w(brotli(minifiedCSS), prodTarget + ".br"),
- // w(gzip (minifiedCSS), prodTarget + ".gz"),
- // ])
+ await Promise.all([
+ w(brotli(minifiedCSS), prodTarget + ".br"),
+ w(gzip (minifiedCSS), prodTarget + ".gz"),
+ ])
}
diff --git a/test.ts b/test.ts
new file mode 100644
index 0000000..92bbe05
--- /dev/null
+++ b/test.ts
@@ -0,0 +1 @@
+import cssnano from 'https://esm.sh/cssnano'