vite-plugin-react-css-module-stylename
Version:
Quick use of styleName to introduce CSS module plugin
469 lines (468 loc) • 19.6 kB
JavaScript
import { transformSync as X } from "@babel/core";
import z, { relative as W } from "path";
import N from "crypto";
import * as K from "@babel/parser";
import L from "@babel/traverse";
import Z from "@babel/generator";
import * as u from "@babel/types";
function O(r) {
return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, "default") ? r.default : r;
}
var Q = { exports: {} }, v;
function q() {
if (v) return Q.exports;
v = 1;
const r = Math.floor(65472 / 4) & -4;
class f {
/**
* @param {WebAssembly.Instance} instance wasm instance
* @param {WebAssembly.Instance[]} instancesPool pool of instances
* @param {number} chunkSize size of data chunks passed to wasm
* @param {number} digestSize size of digest returned by wasm
*/
constructor(e, A, i, g) {
const c = (
/** @type {any} */
e.exports
);
c.init(), this.exports = c, this.mem = Buffer.from(c.memory.buffer, 0, 65536), this.buffered = 0, this.instancesPool = A, this.chunkSize = i, this.digestSize = g;
}
reset() {
this.buffered = 0, this.exports.init();
}
/**
* @param {Buffer | string} data data
* @param {BufferEncoding=} encoding encoding
* @returns {this} itself
*/
update(e, A) {
if (typeof e == "string") {
for (; e.length > r; )
this._updateWithShortString(e.slice(0, r), A), e = e.slice(r);
return this._updateWithShortString(e, A), this;
}
return this._updateWithBuffer(e), this;
}
/**
* @param {string} data data
* @param {BufferEncoding=} encoding encoding
* @returns {void}
*/
_updateWithShortString(e, A) {
const { exports: i, buffered: g, mem: c, chunkSize: I } = this;
let n;
if (e.length < 70)
if (!A || A === "utf-8" || A === "utf8") {
n = g;
for (let s = 0; s < e.length; s++) {
const a = e.charCodeAt(s);
if (a < 128)
c[n++] = a;
else if (a < 2048)
c[n] = a >> 6 | 192, c[n + 1] = a & 63 | 128, n += 2;
else {
n += c.write(e.slice(s), n, A);
break;
}
}
} else if (A === "latin1") {
n = g;
for (let s = 0; s < e.length; s++) {
const a = e.charCodeAt(s);
c[n++] = a;
}
} else
n = g + c.write(e, g, A);
else
n = g + c.write(e, g, A);
if (n < I)
this.buffered = n;
else {
const s = n & ~(this.chunkSize - 1);
i.update(s);
const a = n - s;
this.buffered = a, a > 0 && c.copyWithin(0, s, n);
}
}
/**
* @param {Buffer} data data
* @returns {void}
*/
_updateWithBuffer(e) {
const { exports: A, buffered: i, mem: g } = this, c = e.length;
if (i + c < this.chunkSize)
e.copy(g, i, 0, c), this.buffered += c;
else {
const I = i + c & ~(this.chunkSize - 1);
if (I > 65536) {
let s = 65536 - i;
e.copy(g, i, 0, s), A.update(65536);
const a = I - i - 65536;
for (; s < a; )
e.copy(g, 0, s, s + 65536), A.update(65536), s += 65536;
e.copy(g, 0, s, I - i), A.update(I - i - s);
} else
e.copy(g, i, 0, I - i), A.update(I);
const n = c + i - I;
this.buffered = n, n > 0 && e.copy(g, 0, c - n, c);
}
}
digest(e) {
const { exports: A, buffered: i, mem: g, digestSize: c } = this;
A.final(i), this.instancesPool.push(this);
const I = g.toString("latin1", 0, c);
return e === "hex" ? I : e === "binary" || !e ? Buffer.from(I, "hex") : Buffer.from(I, "hex").toString(e);
}
}
const o = (t, e, A, i) => {
if (e.length > 0) {
const g = e.pop();
return g.reset(), g;
} else
return new f(
new WebAssembly.Instance(t),
e,
A,
i
);
};
return Q.exports = o, Q.exports.MAX_SHORT_STRING = r, Q.exports;
}
var m, M;
function _() {
if (M) return m;
M = 1;
const r = q(), f = new WebAssembly.Module(
Buffer.from(
// 1173 bytes
"AGFzbQEAAAABCAJgAX8AYAAAAwQDAQAABQMBAAEGGgV+AUIAC34BQgALfgFCAAt+AUIAC34BQgALByIEBGluaXQAAAZ1cGRhdGUAAQVmaW5hbAACBm1lbW9yeQIACrUIAzAAQtbrgu7q/Yn14AAkAELP1tO+0ser2UIkAUIAJAJC+erQ0OfJoeThACQDQgAkBAvUAQIBfwR+IABFBEAPCyMEIACtfCQEIwAhAiMBIQMjAiEEIwMhBQNAIAIgASkDAELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiECIAMgASkDCELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiEDIAQgASkDEELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiEEIAUgASkDGELP1tO+0ser2UJ+fEIfiUKHla+vmLbem55/fiEFIAAgAUEgaiIBSw0ACyACJAAgAyQBIAQkAiAFJAMLqwYCAX8EfiMEQgBSBH4jACICQgGJIwEiA0IHiXwjAiIEQgyJfCMDIgVCEol8IAJCz9bTvtLHq9lCfkIfiUKHla+vmLbem55/foVCh5Wvr5i23puef35CnaO16oOxjYr6AH0gA0LP1tO+0ser2UJ+Qh+JQoeVr6+Ytt6bnn9+hUKHla+vmLbem55/fkKdo7Xqg7GNivoAfSAEQs/W077Sx6vZQn5CH4lCh5Wvr5i23puef36FQoeVr6+Ytt6bnn9+Qp2jteqDsY2K+gB9IAVCz9bTvtLHq9lCfkIfiUKHla+vmLbem55/foVCh5Wvr5i23puef35CnaO16oOxjYr6AH0FQsXP2bLx5brqJwsjBCAArXx8IQIDQCABQQhqIABNBEAgAiABKQMAQs/W077Sx6vZQn5CH4lCh5Wvr5i23puef36FQhuJQoeVr6+Ytt6bnn9+Qp2jteqDsY2K+gB9IQIgAUEIaiEBDAELCyABQQRqIABNBEACfyACIAE1AgBCh5Wvr5i23puef36FQheJQs/W077Sx6vZQn5C+fPd8Zn2masWfCECIAFBBGoLIQELA0AgACABRwRAIAIgATEAAELFz9my8eW66id+hUILiUKHla+vmLbem55/fiECIAFBAWohAQwBCwtBACACIAJCIYiFQs/W077Sx6vZQn4iAiACQh2IhUL5893xmfaZqxZ+IgIgAkIgiIUiAkIgiCIDQv//A4NCIIYgA0KAgPz/D4NCEIiEIgNC/4GAgPAfg0IQhiADQoD+g4CA4D+DQgiIhCIDQo+AvIDwgcAHg0IIhiADQvCBwIeAnoD4AINCBIiEIgNChoyYsODAgYMGfEIEiEKBgoSIkKDAgAGDQid+IANCsODAgYOGjJgwhHw3AwBBCCACQv////8PgyICQv//A4NCIIYgAkKAgPz/D4NCEIiEIgJC/4GAgPAfg0IQhiACQoD+g4CA4D+DQgiIhCICQo+AvIDwgcAHg0IIhiACQvCBwIeAnoD4AINCBIiEIgJChoyYsODAgYMGfEIEiEKBgoSIkKDAgAGDQid+IAJCsODAgYOGjJgwhHw3AwAL",
"base64"
)
);
return m = r.bind(null, f, [], 32, 16), m;
}
var y, R;
function G() {
if (R) return y;
R = 1;
const r = q().MAX_SHORT_STRING;
class f {
constructor(t) {
this.string = void 0, this.encoding = void 0, this.hash = t;
}
/**
* Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding}
* @param {string|Buffer} data data
* @param {string=} inputEncoding data encoding
* @returns {this} updated hash
*/
update(t, e) {
if (this.string !== void 0) {
if (typeof t == "string" && e === this.encoding && this.string.length + t.length < r)
return this.string += t, this;
this.hash.update(this.string, this.encoding), this.string = void 0;
}
return typeof t == "string" ? t.length < r && // base64 encoding is not valid since it may contain padding chars
(!e || !e.startsWith("ba")) ? (this.string = t, this.encoding = e) : this.hash.update(t, e) : this.hash.update(t), this;
}
/**
* Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding}
* @param {string=} encoding encoding of the return value
* @returns {string|Buffer} digest
*/
digest(t) {
return this.string !== void 0 && this.hash.update(this.string, this.encoding), this.hash.digest(t);
}
}
return y = f, y;
}
var D, J;
function j() {
if (J) return D;
J = 1;
const r = q(), f = new WebAssembly.Module(
Buffer.from(
// 2150 bytes
"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",
"base64"
)
);
return D = r.bind(null, f, [], 64, 32), D;
}
var w, k;
function F() {
if (k) return w;
k = 1;
const r = 2e3, f = {};
class o {
/**
* @param {Hash | function(): Hash} hashOrFactory function to create a hash
* @param {string=} hashKey key for caching
*/
constructor(e, A) {
this.hashKey = A, typeof e == "function" ? (this.hashFactory = e, this.hash = void 0) : (this.hashFactory = void 0, this.hash = e), this.buffer = "";
}
/**
* Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding}
* @param {string|Buffer} data data
* @param {string=} inputEncoding data encoding
* @returns {this} updated hash
*/
update(e, A) {
return A !== void 0 || typeof e != "string" || e.length > r ? (this.hash === void 0 && (this.hash = this.hashFactory()), this.buffer.length > 0 && (this.hash.update(this.buffer), this.buffer = ""), this.hash.update(e, A)) : (this.buffer += e, this.buffer.length > r && (this.hash === void 0 && (this.hash = this.hashFactory()), this.hash.update(this.buffer), this.buffer = "")), this;
}
/**
* Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding}
* @param {string=} encoding encoding of the return value
* @returns {string|Buffer} digest
*/
digest(e) {
let A;
const i = this.buffer;
if (this.hash === void 0) {
const c = `${this.hashKey}-${e}`;
A = f[c], A === void 0 && (A = f[c] = /* @__PURE__ */ new Map());
const I = A.get(i);
if (I !== void 0)
return I;
this.hash = this.hashFactory();
}
i.length > 0 && this.hash.update(i);
const g = this.hash.digest(e);
return A !== void 0 && A.set(i, g), g;
}
}
return w = o, w;
}
var S, H;
function V() {
if (H) return S;
H = 1;
const r = {
26: "abcdefghijklmnopqrstuvwxyz",
32: "123456789abcdefghjkmnpqrstuvwxyz",
// no 0lio
36: "0123456789abcdefghijklmnopqrstuvwxyz",
49: "abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ",
// no lIO
52: "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
58: "123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ",
// no 0lIO
62: "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
64: "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_"
};
function f(I, n) {
let s = 0;
for (let a = I.length - 1; a >= 0; a--) {
const h = s * 4294967296 + I[a];
s = h % n, I[a] = Math.floor(h / n);
}
return s;
}
function o(I, n, s) {
const a = r[n];
if (!a)
throw new Error("Unknown encoding base" + n);
const h = Math.ceil(I.length * 8 / Math.log2(n));
s = Math.min(s, h);
const p = new Uint32Array(Math.ceil(I.length / 4));
I.copy(Buffer.from(p.buffer));
let C = "";
for (let B = 0; B < s; B++)
C = a[f(p, n)] + C;
return C;
}
let t, e, A, i, g;
function c(I, n, s, a) {
n = n || "xxhash64", a = a || 9999;
let h;
return n === "xxhash64" ? (e === void 0 && (e = _(), i === void 0 && (i = G())), h = new i(e())) : n === "md4" ? (A === void 0 && (A = j(), i === void 0 && (i = G())), h = new i(A())) : n === "native-md4" ? (typeof t > "u" && (t = N, g === void 0 && (g = F())), h = new g(() => t.createHash("md4"), "md4")) : (typeof t > "u" && (t = N, g === void 0 && (g = F())), h = new g(
() => t.createHash(n),
n
)), h.update(I), s === "base26" || s === "base32" || s === "base36" || s === "base49" || s === "base52" || s === "base58" || s === "base62" || s === "base64safe" ? o(
h.digest(),
s === "base64safe" ? 64 : s.substr(4),
a
) : h.digest(s || "hex").substr(0, a);
}
return S = c, S;
}
var x, P;
function T() {
if (P) return x;
P = 1;
const r = z, f = V();
function o(t, e, A = {}) {
let i;
const g = t.resourceQuery && t.resourceQuery.length > 1;
typeof e == "function" ? i = e(
t.resourcePath,
g ? t.resourceQuery : void 0
) : i = e || "[hash].[ext]";
const c = A.context, I = A.content, n = A.regExp;
let s = "bin", a = "file", h = "", p = "", C = "";
if (t.resourcePath) {
const E = r.parse(t.resourcePath);
let l = t.resourcePath;
E.ext && (s = E.ext.substr(1)), E.dir && (a = E.name, l = E.dir + r.sep), typeof c < "u" ? (h = r.relative(c, l + "_").replace(/\\/g, "/").replace(/\.\.(\/)?/g, "_$1"), h = h.substr(0, h.length - 1)) : h = l.replace(/\\/g, "/").replace(/\.\.(\/)?/g, "_$1"), h.length <= 1 ? h = "" : p = r.basename(h);
}
if (t.resourceQuery && t.resourceQuery.length > 1) {
C = t.resourceQuery;
const E = C.indexOf("#");
E >= 0 && (C = C.substr(0, E));
}
let B = i;
if (I && (B = B.replace(
/\[(?:([^[:\]]+):)?(?:hash|contenthash)(?::([a-z]+\d*(?:safe)?))?(?::(\d+))?\]/gi,
(E, l, d, Y) => f(I, l, d, parseInt(Y, 10))
)), B = B.replace(/\[ext\]/gi, () => s).replace(/\[name\]/gi, () => a).replace(/\[path\]/gi, () => h).replace(/\[folder\]/gi, () => p).replace(/\[query\]/gi, () => C), n && t.resourcePath) {
const E = t.resourcePath.match(new RegExp(n));
E && E.forEach((l, d) => {
B = B.replace(new RegExp("\\[" + d + "\\]", "ig"), l);
});
}
return typeof t.options == "object" && typeof t.options.customInterpolateName == "function" && (B = t.options.customInterpolateName.call(
t,
B,
e,
A
)), B;
}
return x = o, x;
}
var b, U;
function $() {
if (U) return b;
U = 1;
var r = T(), f = z;
return b = function(t, e) {
e = e || {};
var A = e && typeof e.context == "string" ? e.context : process.cwd(), i = e && typeof e.hashPrefix == "string" ? e.hashPrefix : "";
return function(c, I) {
var n = t.replace(/\[local\]/gi, c), s = {
resourcePath: I
}, a = {
content: i + f.relative(A, I).replace(/\\/g, "/") + "\0" + c,
context: A
}, h = r(s, n, a);
return h.replace(new RegExp("[^a-zA-Z0-9\\-_ -]", "g"), "-").replace(/^((-?[0-9])|--)/, "_$1");
};
}, b;
}
var ee = $();
const Ae = /* @__PURE__ */ O(ee), te = "[local]__[hash:base64:5]", ie = Ae(te, {
context: process.cwd()
}), Be = (r, f) => {
const o = W(process.cwd(), f);
return ie(r, o);
}, se = "Carl";
function re(r, f) {
const o = K.parse(r, {
sourceType: "module",
plugins: ["typescript", "jsx"]
}), t = [];
let e = 0;
return L.default(o, {
// convert module.scss
ImportDeclaration(A) {
if (A.node.source.value.endsWith(
f === "scss" ? ".module.scss" : ".module.less"
) && A.node.specifiers.length === 0) {
const i = `${se}${e++}`;
t.push(i), A.replaceWith(
u.importDeclaration(
[u.importDefaultSpecifier(u.identifier(i))],
A.node.source
)
);
}
},
ReturnStatement(A) {
if (t.length > 0) {
const i = t.map(
(g) => u.expressionStatement(
u.callExpression(
u.memberExpression(
u.callExpression(
u.memberExpression(
u.identifier("Object"),
u.identifier("values")
),
[u.identifier(g)]
),
u.identifier("forEach")
),
[
u.arrowFunctionExpression(
[u.identifier("cn")],
u.unaryExpression("void", u.identifier("cn"))
)
]
)
)
);
A.insertBefore(i);
}
}
}), Z.default(o).code;
}
const ne = "vite-plugin-react-css-module-styleName", ge = /\.(t|j)sx?$/;
var ce = /* @__PURE__ */ ((r) => (r.Pro = "production", r.Dev = "development", r))(ce || {}), Ie = /* @__PURE__ */ ((r) => (r.Scss = "scss", r.Less = "less", r))(Ie || {});
const Ee = (r) => {
const {
generateScopedName: f,
env: o,
cssTypes: t = "scss"
/* Scss */
} = r;
return {
name: ne,
enforce: "pre",
transform(e, A) {
if (!ge.test(A) || A.includes("node_modules") || !A.endsWith("x"))
return;
const i = ["jsx", "importMeta"];
/\.tsx?$/.test(A) && i.push("typescript", "decorators-legacy");
const g = X(e, {
babelrc: !1,
configFile: !1,
filename: A,
parserOpts: {
sourceType: "module",
allowAwaitOutsideFunction: !0,
plugins: i
},
plugins: [
[
// Allow use 'react-css-modules',recommend use 'babel-plugin-react-css-modules'
"babel-plugin-react-css-modules",
{
autoResolveMultipleImports: !0,
exclude: "node_modules",
generateScopedName: (c, I) => f(c, I),
filetypes: t === "scss" ? {
".scss": {
syntax: "postcss-scss"
}
} : {
".less": {
syntax: "postcss-less"
}
}
}
]
]
});
return {
code: o === "production" ? re(g.code, t) : g.code,
map: g.map
};
}
};
};
export {
Ie as ECssType,
ce as EEnv,
Ee as default,
Be as generateScopedName
};