@lls/vitescripts 1.1.11 → 1.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lls/vitescripts",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.13",
|
|
4
4
|
"description": "lls vite plugins",
|
|
5
5
|
"main": "src/index.mjs",
|
|
6
6
|
"files": [
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"
|
|
13
|
+
"lightningcss": "1.21.5"
|
|
14
14
|
},
|
|
15
15
|
"type": "module",
|
|
16
16
|
"author": "",
|
package/src/index.mjs
CHANGED
|
@@ -5,3 +5,4 @@ export { default as llsRequirePlugin } from './llsRequirePlugin.mjs'
|
|
|
5
5
|
export { default as llsSideRefreshMetaPlugin } from './llsSideRefreshMetaPlugin.mjs'
|
|
6
6
|
export { default as llsVitestMockPlugin } from './llsVitestMockPlugin.mjs'
|
|
7
7
|
export { default as llsLadlePlugin } from './llsLadlePlugin.mjs'
|
|
8
|
+
export { default as llsCssModuleMacroPlugin } from './llsCssModuleMacroPlugin.mjs'
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
const llsCssModuleMacro = async (cname) => {
|
|
2
|
+
const { buildThemeIsFreeMode, buildThemeIsDarkMode, buildThemeIsNotDarkMode } = await import('@lls/lls-kit')
|
|
3
|
+
const cssMacroTheme = {
|
|
4
|
+
themeIsFreeMode: buildThemeIsFreeMode(cname),
|
|
5
|
+
themeIsDarkMode: buildThemeIsDarkMode(cname),
|
|
6
|
+
themeIsNotDarkMode: buildThemeIsNotDarkMode(cname)
|
|
7
|
+
}
|
|
8
|
+
return {// TODO remove, pending https://github.com/vitejs/vite/pull/14024
|
|
9
|
+
transform(src, id) {
|
|
10
|
+
if (!id.endsWith('module.css')) {
|
|
11
|
+
return src
|
|
12
|
+
}
|
|
13
|
+
return src
|
|
14
|
+
.replace(/getTruePx\((.*?)\)/g, 'calc(var(--size-index, 1) * $1 * 1px)')
|
|
15
|
+
.replace(/(themeIsFreeMode|themeIsDarkMode|themeIsNotDarkMode)\(\)/g, (__, cap) => cssMacroTheme[cap])
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export default llsCssModuleMacro
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* resolveId() method that filters files to be added to css set
|
|
5
5
|
* flushStyles() method that generates and return <style> tag with refreshed style
|
|
6
6
|
*/
|
|
7
|
+
import { transform } from 'lightningcss'
|
|
7
8
|
const llsLinariaSsrCollectPlugin = () => {
|
|
8
9
|
const cssIds = new Set()
|
|
9
10
|
let linariaPlugin
|
|
@@ -18,12 +19,12 @@ const llsLinariaSsrCollectPlugin = () => {
|
|
|
18
19
|
if (id.includes('@linaria-cache')) { cssIds.add(id) }
|
|
19
20
|
},
|
|
20
21
|
flushStyles() {
|
|
21
|
-
const
|
|
22
|
-
// linaria plugin keeps cache. But we dont want to keep ids which have changed (updating a css component)
|
|
23
|
-
// css is removed from client anyway but still be accurate
|
|
24
|
-
cssIds.clear()
|
|
22
|
+
const css = [...cssIds].map(linariaPlugin.load).join('\n')
|
|
25
23
|
|
|
26
|
-
|
|
24
|
+
// when hmr, id changes but not css-selector so we get two rules with the same css-selector
|
|
25
|
+
// we dedupe the rules so old rule is now stripped.
|
|
26
|
+
const { code } = transform({ code: Buffer.from(css) })
|
|
27
|
+
return `<style id="linaria-ssr-collect-plugin">${code.toString()}</style>`
|
|
27
28
|
}
|
|
28
29
|
}
|
|
29
30
|
}
|
|
@@ -62,7 +62,7 @@ const llsSideRefreshMetaPlugin = ({ viewer: iViewer, superkit: iSuperkit, kit: i
|
|
|
62
62
|
|
|
63
63
|
const VIRTUAL_ID = 'sideRefresh/node_modules' // specify node_modules to bypass linaria plugin parsing css file... (cant tweak exclude regex)
|
|
64
64
|
const key = basename => path.join(pwd, publicDir, 'assets', basename)
|
|
65
|
-
const loads = new Map(['core.css', 'viewer.css', 'superkit.css', 'lls-kit.css', 'lls-kit-fonts.css'].map(basename => {
|
|
65
|
+
const loads = new Map(['core.css', 'viewer.css', 'superkit.css', 'lls-kit.css', 'lls-kit-fonts.css', 'lls-audio.css'].map(basename => {
|
|
66
66
|
let promise = ''
|
|
67
67
|
const getPromise = () => {
|
|
68
68
|
if (client && !pwd.includes(basename.replace('.css', ''))) {
|
|
@@ -76,7 +76,7 @@ const llsSideRefreshMetaPlugin = ({ viewer: iViewer, superkit: iSuperkit, kit: i
|
|
|
76
76
|
name: 'lls:sideRefresh',
|
|
77
77
|
async resolveId(id, from) {
|
|
78
78
|
const basename = path.basename(id)
|
|
79
|
-
if (['core.css', 'viewer.css', 'superkit.css', 'lls-kit.css', 'lls-kit-fonts.css'].includes(basename)) {
|
|
79
|
+
if (['core.css', 'viewer.css', 'superkit.css', 'lls-kit.css', 'lls-kit-fonts.css', 'lls-audio.css'].includes(basename)) {
|
|
80
80
|
return VIRTUAL_ID + key(basename)
|
|
81
81
|
}
|
|
82
82
|
if (id.includes('@linaria-cache')) { return }
|