Files
NapCatQQ/.pnpm-store/v3/files/6d/19dd975b5eeef30c4490c25d7e05a970de93faa3ee7c1edf5d2871168b4db3cf904416613dbb3c6adba360e24ec30b9da2fecba9b2fb4345928870835db1c4
T
TanTan e311ca3275
Build NapCat Artifacts / Type Check & Test (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

39 lines
1.2 KiB
Plaintext

import { transformPropOrder } from '../../render/utils/keys-transform.mjs';
const translateAlias = {
x: "translateX",
y: "translateY",
z: "translateZ",
transformPerspective: "perspective",
};
function buildTransform(state) {
let transform = "";
let transformIsDefault = true;
/**
* Loop over all possible transforms in order, adding the ones that
* are present to the transform string.
*/
for (let i = 0; i < transformPropOrder.length; i++) {
const key = transformPropOrder[i];
const value = state.latest[key];
if (value === undefined)
continue;
let valueIsDefault = true;
if (typeof value === "number") {
valueIsDefault = value === (key.startsWith("scale") ? 1 : 0);
}
else {
valueIsDefault = parseFloat(value) === 0;
}
if (!valueIsDefault) {
transformIsDefault = false;
const transformName = translateAlias[key] || key;
const valueToRender = state.latest[key];
transform += `${transformName}(${valueToRender}) `;
}
}
return transformIsDefault ? "none" : transform.trim();
}
export { buildTransform };