Files
SnowLuma/.pnpm-store/v11/files/59/31e81c52402c63e1e58351d0e4ada1bf63ec9684c6cb54cc27c95c8c7ab4a261d26024afb8e9cd26cf4d7cb1b65e85b58419b9fa4fd0dc25199075211d39ea
T
TanTan 2a69b23b47
Dev Build / cleanup (push) Waiting to run
Dev Build / typecheck (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:27:07 +08:00

40 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 {
const parsed = parseFloat(value);
valueIsDefault = key.startsWith("scale") ? parsed === 1 : parsed === 0;
}
if (!valueIsDefault) {
transformIsDefault = false;
const transformName = translateAlias[key] || key;
transform += `${transformName}(${value}) `;
}
}
return transformIsDefault ? "none" : transform.trim();
}
export { buildTransform };
//# sourceMappingURL=transform.mjs.map