wui-print
Version:
前端打印插件,包含打印设计器、打印表单、打印API
145 lines (144 loc) • 4.35 kB
JavaScript
import { camelToKebab } from "../print-designer-utils";
const createFormItemStyle = ({ styleConfig } = {}) => {
if (!styleConfig) {
styleConfig = {};
}
let styleText = "";
let styleObj = {};
Object.keys(styleConfig).forEach((key, index) => {
if (key.indexOf("formItem_") < 0) {
return false;
}
let newKey = key.replace("formItem_", "");
if (!!styleConfig[key] || styleConfig[key] === 0) {
styleObj[newKey] = styleConfig[key];
}
});
Object.keys(styleObj).forEach((key, index) => {
styleText += `${camelToKebab(key)}:${styleObj[key]};`;
});
return styleText;
};
const createFormItemLabelStyleInDesigner = ({ styleConfig, formConfigProps, formItemProps } = {}) => {
if (!styleConfig) {
styleConfig = {};
}
if (!formConfigProps) {
formConfigProps = {};
}
if (!formItemProps) {
formItemProps = {};
}
let styleText = "";
let styleObj = {};
Object.keys(styleConfig).forEach((key, index) => {
if (key.indexOf("formItemLabel_") < 0) {
return false;
}
let newKey = key.replace("formItemLabel_", "");
if (!!styleConfig[key] || styleConfig[key] === 0) {
styleObj[newKey] = styleConfig[key];
}
});
Object.keys(styleObj).forEach((key, index) => {
styleText += `${camelToKebab(key)}:${styleObj[key]};`;
});
return styleText;
};
const createFormItemLabelStyle = ({ styleConfig, formConfigProps, formItemProps } = {}) => {
if (!styleConfig) {
styleConfig = {};
}
if (!formConfigProps) {
formConfigProps = {};
}
if (!formItemProps) {
formItemProps = {};
}
let styleText = "";
let styleObj = {};
if (!!formItemProps.labelWidth && formItemProps.labelPosition != "top") {
styleObj.width = `${formItemProps.labelWidth}`;
} else if (!!formConfigProps.labelWidth && formConfigProps.labelPosition != "top" && formItemProps.labelPosition != "top") {
styleObj.width = `${formConfigProps.labelWidth}`;
}
Object.keys(styleObj).forEach((key, index) => {
styleText += `${camelToKebab(key)}:${styleObj[key]};`;
});
return styleText;
};
const createFormItemLabelContentStyle = ({ styleConfig, formConfigProps, formItemProps } = {}) => {
if (!styleConfig) {
styleConfig = {};
}
if (!formConfigProps) {
formConfigProps = {};
}
if (!formItemProps) {
formItemProps = {};
}
let styleText = "";
let styleObj = {};
Object.keys(styleConfig).forEach((key, index) => {
if (key.indexOf("formItemLabel_") < 0) {
return false;
}
let newKey = key.replace("formItemLabel_", "");
if (!!styleConfig[key] || styleConfig[key] === 0) {
styleObj[newKey] = styleConfig[key];
}
});
Object.keys(styleObj).forEach((key, index) => {
styleText += `${camelToKebab(key)}:${styleObj[key]};`;
});
return styleText;
};
const createFormItemMainStyleInDesigner = ({ styleConfig } = {}) => {
if (!styleConfig) {
styleConfig = {};
}
let styleText = "";
let styleObj = {};
Object.keys(styleConfig).forEach((key, index) => {
if (key.indexOf("formItemMain_") < 0) {
return false;
}
let newKey = key.replace("formItemMain_", "");
if (!!styleConfig[key] || styleConfig[key] === 0) {
styleObj[newKey] = styleConfig[key];
}
});
styleObj.width = "100%";
Object.keys(styleObj).forEach((key, index) => {
styleText += `${camelToKebab(key)}:${styleObj[key]};`;
});
return styleText;
};
const createFormItemMainStyle = ({ styleConfig } = {}) => {
if (!styleConfig) {
styleConfig = {};
}
let styleText = "";
let styleObj = {};
Object.keys(styleConfig).forEach((key, index) => {
if (key.indexOf("formItemMain_") < 0) {
return false;
}
let newKey = key.replace("formItemMain_", "");
if (!!styleConfig[key] || styleConfig[key] === 0) {
styleObj[newKey] = styleConfig[key];
}
});
Object.keys(styleObj).forEach((key, index) => {
styleText += `${camelToKebab(key)}:${styleObj[key]};`;
});
return styleText;
};
export default {
createFormItemStyle,
createFormItemLabelStyleInDesigner,
createFormItemLabelStyle,
createFormItemLabelContentStyle,
createFormItemMainStyleInDesigner,
createFormItemMainStyle
};