UNPKG

mix-cn

Version:

一个用于字符串拼接的小工具,常用于 class name 的拼接

2 lines (1 loc) 612 B
"use strict";var i=require("a-type-of-js");exports.xcn=function e(...r){const t=[],n=i=>i.trim().replace(/undefined/g," ").replace(/\s+/g," ").split(" ").sort().join(" "),s=e=>{if(i.isUndefined(e)||!i.isString(e))return;const r=n(e).split(" ");r.length&&t.push(...r)};return r.forEach(r=>{if(r&&!i.isTrue(r))if(i.isArray(r))r.forEach(i=>s(e(i)));else if(i.isString(r)||i.isNumber(r))s(r.toString());else if(i.isFunction(r)){const t=r();i.isString(t)?s(t):t.forEach(i=>s(e(i)))}else for(const i in r)if(Object.prototype.hasOwnProperty.call(r,i)){!0===r[i]&&s(i)}}),n(new Array(...new Set(t)).join(" "))??void 0};