web-component-gallery 0.1.43 → 0.1.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -66,7 +66,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _ind
66
66
  \*********************************/
67
67
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
68
68
 
69
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ colorRgba: function() { return /* binding */ colorRgba; },\n/* harmony export */ deepClone: function() { return /* binding */ deepClone; },\n/* harmony export */ formatDate: function() { return /* binding */ formatDate; },\n/* harmony export */ getDay: function() { return /* binding */ getDay; },\n/* harmony export */ produceDataSeriesEx: function() { return /* binding */ produceDataSeriesEx; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n\n/**\r\n *\r\n * @param {*} day 传入天数\r\n * 距离现在n天前的日期\r\n */\n\nfunction getDay(day) {\n let today = new Date();\n let targetday_milliseconds = today.getTime() + 1000 * 60 * 60 * 24 * day;\n today.setTime(targetday_milliseconds); //注意,这行是关键代码\n\n let tYear = today.getFullYear();\n let tMonth = today.getMonth();\n let tDate = today.getDate();\n tMonth = doHandleMonth(tMonth + 1);\n tDate = doHandleMonth(tDate);\n return tYear + \"-\" + tMonth + \"-\" + tDate;\n}\nfunction doHandleMonth(month) {\n let m = month;\n if (month.toString().length == 1) {\n m = \"0\" + month;\n }\n return m;\n}\n\n/**\r\n *\r\n * @param {*} time 传入时间\r\n * @param {*} cFormat 可不传。格式化结构 默认 年-月-日 时:分:秒\r\n * {y}年 {m}月 {d}日 {h}时 {i}分 {s}秒 {a}星期\r\n */\nfunction formatDate(time, cFormat) {\n if (arguments.length === 0 || !time) {\n return null;\n }\n const format = cFormat || \"{y}-{m}-{d} {h}:{i}:{s}\";\n let date;\n if (typeof time === \"object\") {\n date = time;\n } else {\n let times = time;\n times = new Date(time).getTime();\n if (typeof times === \"string\") {\n if (/^[0-9]+$/.test(times)) {\n times = parseInt(times);\n } else {\n times = times.replace(new RegExp(/-/g), \"/\");\n }\n }\n if (typeof times === \"number\" && times.toString().length === 10) {\n times *= 1000;\n }\n date = new Date(times);\n }\n const formatObj = {\n y: date.getFullYear(),\n m: date.getMonth() + 1,\n d: date.getDate(),\n h: date.getHours(),\n i: date.getMinutes(),\n s: date.getSeconds(),\n a: date.getDay()\n };\n const timeStr = format.replace(/\\{([ymdhisa])+\\}/g, (result, key) => {\n const value = formatObj[key];\n // Note: getDay() returns 0 on Sunday\n if (key === \"a\") {\n return [\"日\", \"一\", \"二\", \"三\", \"四\", \"五\", \"六\"][value];\n }\n if (!String.prototype.padStart) return padStart(2, value.toString());\n return value.toString().padStart(2, \"0\"); // 返回替换的字符串,padStart用于头部补全\n });\n return timeStr;\n}\n\n/**\r\n * JS颜色十六进制转换为rgb或rgba,返回的格式为 rgba(255,255,255,0.5)字符串\r\n * sHex为传入的十六进制的色值\r\n * alpha为rgba的透明度\r\n */\nfunction colorRgba(sHex, alpha) {\n // 十六进制颜色值的正则表达式\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;\n /* 16进制颜色转为RGB格式 */\n let sColor = sHex.toLowerCase();\n if (sColor && reg.test(sColor)) {\n if (sColor.length === 4) {\n var sColorNew = \"#\";\n for (let i = 1; i < 4; i += 1) {\n sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));\n }\n sColor = sColorNew;\n }\n // 处理六位的颜色值\n const sColorChange = [];\n for (let i = 1; i < 7; i += 2) {\n sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`));\n }\n // return sColorChange.join(',')\n return `rgba(${sColorChange.join(\",\")},${alpha})`;\n }\n return sColor;\n}\n\n/**\r\n * segment: 分段 7段\r\n * tatalpercent: 百分比 100\r\n * basevalue: 基础值 200\r\n*/\nfunction produceDataSeriesEx(segment, tatal, basevalue) {\n //需要产生segment个随机数,且segment个随机数之和等于tatal\n let arrpercent = new Array(segment).fill(0);\n for (let i = 0; i < tatal; i++) {\n //parseInt接收string,所以需要转一趟\n /**\r\n * 换成生活中的场景,就是一百个苹果分给十个人,我们可以一个一个的取出,随机分给某个人,直到分完\r\n * 在js里面,十个人即是一个长度为十的数组,每次数组随机一个位置加一,执行一百次\r\n */\n var num = parseInt((Math.random() * segment).toString());\n arrpercent[num]++;\n }\n //console.log(arr.length)\n\n let arrvalue = new Array(segment).fill(0);\n for (let i = 0; i < segment; i++) {\n arrvalue[i] = parseInt(arrpercent[i] / 100 * basevalue);\n }\n return [arrpercent, arrvalue];\n}\n\n/**\r\n * 深拷贝\r\n * obj为原始数据\r\n * 适用场景:数组套对象、对象套数组、混合嵌套等\r\n */\nfunction deepClone(obj) {\n if (obj === null || typeof obj !== 'object') {\n return obj;\n }\n if (obj instanceof Date) {\n return new Date(obj.getTime());\n }\n if (obj instanceof Array) {\n return obj.reduce((arr, item, i) => {\n arr[i] = deepClone(item);\n return arr;\n }, []);\n }\n if (obj instanceof Object) {\n return Object.keys(obj).reduce((newObj, key) => {\n newObj[key] = deepClone(obj[key]);\n return newObj;\n }, {});\n }\n}\n\n//# sourceURL=webpack://mui/./plugins/utils/Filter.js?");
69
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ colorRgba: function() { return /* binding */ colorRgba; },\n/* harmony export */ deepClone: function() { return /* binding */ deepClone; },\n/* harmony export */ findNthOccurrence: function() { return /* binding */ findNthOccurrence; },\n/* harmony export */ formatDate: function() { return /* binding */ formatDate; },\n/* harmony export */ getDay: function() { return /* binding */ getDay; },\n/* harmony export */ produceDataSeriesEx: function() { return /* binding */ produceDataSeriesEx; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n\n/**\r\n *\r\n * @param {*} day 传入天数\r\n * 距离现在n天前的日期\r\n */\n\nfunction getDay(day) {\n let today = new Date();\n let targetday_milliseconds = today.getTime() + 1000 * 60 * 60 * 24 * day;\n today.setTime(targetday_milliseconds); //注意,这行是关键代码\n\n let tYear = today.getFullYear();\n let tMonth = today.getMonth();\n let tDate = today.getDate();\n tMonth = doHandleMonth(tMonth + 1);\n tDate = doHandleMonth(tDate);\n return tYear + \"-\" + tMonth + \"-\" + tDate;\n}\nfunction doHandleMonth(month) {\n let m = month;\n if (month.toString().length == 1) {\n m = \"0\" + month;\n }\n return m;\n}\n\n/**\r\n *\r\n * @param {*} time 传入时间\r\n * @param {*} cFormat 可不传。格式化结构 默认 年-月-日 时:分:秒\r\n * {y}年 {m}月 {d}日 {h}时 {i}分 {s}秒 {a}星期\r\n */\nfunction formatDate(time, cFormat) {\n if (arguments.length === 0 || !time) {\n return null;\n }\n const format = cFormat || \"{y}-{m}-{d} {h}:{i}:{s}\";\n let date;\n if (typeof time === \"object\") {\n date = time;\n } else {\n let times = time;\n times = new Date(time).getTime();\n if (typeof times === \"string\") {\n if (/^[0-9]+$/.test(times)) {\n times = parseInt(times);\n } else {\n times = times.replace(new RegExp(/-/g), \"/\");\n }\n }\n if (typeof times === \"number\" && times.toString().length === 10) {\n times *= 1000;\n }\n date = new Date(times);\n }\n const formatObj = {\n y: date.getFullYear(),\n m: date.getMonth() + 1,\n d: date.getDate(),\n h: date.getHours(),\n i: date.getMinutes(),\n s: date.getSeconds(),\n a: date.getDay()\n };\n const timeStr = format.replace(/\\{([ymdhisa])+\\}/g, (result, key) => {\n const value = formatObj[key];\n // Note: getDay() returns 0 on Sunday\n if (key === \"a\") {\n return [\"日\", \"一\", \"二\", \"三\", \"四\", \"五\", \"六\"][value];\n }\n if (!String.prototype.padStart) return padStart(2, value.toString());\n return value.toString().padStart(2, \"0\"); // 返回替换的字符串,padStart用于头部补全\n });\n return timeStr;\n}\n\n/**\r\n * JS颜色十六进制转换为rgb或rgba,返回的格式为 rgba(255,255,255,0.5)字符串\r\n * sHex为传入的十六进制的色值\r\n * alpha为rgba的透明度\r\n */\nfunction colorRgba(sHex, alpha) {\n // 十六进制颜色值的正则表达式\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;\n /* 16进制颜色转为RGB格式 */\n let sColor = sHex.toLowerCase();\n if (sColor && reg.test(sColor)) {\n if (sColor.length === 4) {\n var sColorNew = \"#\";\n for (let i = 1; i < 4; i += 1) {\n sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));\n }\n sColor = sColorNew;\n }\n // 处理六位的颜色值\n const sColorChange = [];\n for (let i = 1; i < 7; i += 2) {\n sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`));\n }\n // return sColorChange.join(',')\n return `rgba(${sColorChange.join(\",\")},${alpha})`;\n }\n return sColor;\n}\n\n/**\r\n * segment: 分段 7段\r\n * tatalpercent: 百分比 100\r\n * basevalue: 基础值 200\r\n*/\nfunction produceDataSeriesEx(segment, tatal, basevalue) {\n //需要产生segment个随机数,且segment个随机数之和等于tatal\n let arrpercent = new Array(segment).fill(0);\n for (let i = 0; i < tatal; i++) {\n //parseInt接收string,所以需要转一趟\n /**\r\n * 换成生活中的场景,就是一百个苹果分给十个人,我们可以一个一个的取出,随机分给某个人,直到分完\r\n * 在js里面,十个人即是一个长度为十的数组,每次数组随机一个位置加一,执行一百次\r\n */\n var num = parseInt((Math.random() * segment).toString());\n arrpercent[num]++;\n }\n //console.log(arr.length)\n\n let arrvalue = new Array(segment).fill(0);\n for (let i = 0; i < segment; i++) {\n arrvalue[i] = parseInt(arrpercent[i] / 100 * basevalue);\n }\n return [arrpercent, arrvalue];\n}\n\n/**\r\n * 深拷贝\r\n * obj为原始数据\r\n * 适用场景:数组套对象、对象套数组、混合嵌套等\r\n */\nfunction deepClone(obj) {\n if (obj === null || typeof obj !== 'object') {\n return obj;\n }\n if (obj instanceof Date) {\n return new Date(obj.getTime());\n }\n if (obj instanceof Array) {\n return obj.reduce((arr, item, i) => {\n arr[i] = deepClone(item);\n return arr;\n }, []);\n }\n if (obj instanceof Object) {\n return Object.keys(obj).reduce((newObj, key) => {\n newObj[key] = deepClone(obj[key]);\n return newObj;\n }, {});\n }\n}\n\n/**\r\n * 查找字符串\r\n * str为字符串\r\n * charToFind为查找字符\r\n * n为次数\r\n * 适用场景:查找某个字符在字符串当中某一次的位置\r\n */\nfunction findNthOccurrence(str, charToFind, n) {\n let count = 0;\n let index = str.indexOf(charToFind);\n while (count < n && index !== -1) {\n index = str.indexOf(charToFind, index + 1);\n count++;\n }\n return index === -1 ? -1 : index;\n}\n\n//# sourceURL=webpack://mui/./plugins/utils/Filter.js?");
70
70
 
71
71
  /***/ }),
72
72
 
package/dist/index.umd.js CHANGED
@@ -8890,7 +8890,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _ind
8890
8890
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
8891
8891
 
8892
8892
  "use strict";
8893
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ colorRgba: function() { return /* binding */ colorRgba; },\n/* harmony export */ deepClone: function() { return /* binding */ deepClone; },\n/* harmony export */ formatDate: function() { return /* binding */ formatDate; },\n/* harmony export */ getDay: function() { return /* binding */ getDay; },\n/* harmony export */ produceDataSeriesEx: function() { return /* binding */ produceDataSeriesEx; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n\n/**\r\n *\r\n * @param {*} day 传入天数\r\n * 距离现在n天前的日期\r\n */\n\nfunction getDay(day) {\n let today = new Date();\n let targetday_milliseconds = today.getTime() + 1000 * 60 * 60 * 24 * day;\n today.setTime(targetday_milliseconds); //注意,这行是关键代码\n\n let tYear = today.getFullYear();\n let tMonth = today.getMonth();\n let tDate = today.getDate();\n tMonth = doHandleMonth(tMonth + 1);\n tDate = doHandleMonth(tDate);\n return tYear + \"-\" + tMonth + \"-\" + tDate;\n}\nfunction doHandleMonth(month) {\n let m = month;\n if (month.toString().length == 1) {\n m = \"0\" + month;\n }\n return m;\n}\n\n/**\r\n *\r\n * @param {*} time 传入时间\r\n * @param {*} cFormat 可不传。格式化结构 默认 年-月-日 时:分:秒\r\n * {y}年 {m}月 {d}日 {h}时 {i}分 {s}秒 {a}星期\r\n */\nfunction formatDate(time, cFormat) {\n if (arguments.length === 0 || !time) {\n return null;\n }\n const format = cFormat || \"{y}-{m}-{d} {h}:{i}:{s}\";\n let date;\n if (typeof time === \"object\") {\n date = time;\n } else {\n let times = time;\n times = new Date(time).getTime();\n if (typeof times === \"string\") {\n if (/^[0-9]+$/.test(times)) {\n times = parseInt(times);\n } else {\n times = times.replace(new RegExp(/-/g), \"/\");\n }\n }\n if (typeof times === \"number\" && times.toString().length === 10) {\n times *= 1000;\n }\n date = new Date(times);\n }\n const formatObj = {\n y: date.getFullYear(),\n m: date.getMonth() + 1,\n d: date.getDate(),\n h: date.getHours(),\n i: date.getMinutes(),\n s: date.getSeconds(),\n a: date.getDay()\n };\n const timeStr = format.replace(/\\{([ymdhisa])+\\}/g, (result, key) => {\n const value = formatObj[key];\n // Note: getDay() returns 0 on Sunday\n if (key === \"a\") {\n return [\"日\", \"一\", \"二\", \"三\", \"四\", \"五\", \"六\"][value];\n }\n if (!String.prototype.padStart) return padStart(2, value.toString());\n return value.toString().padStart(2, \"0\"); // 返回替换的字符串,padStart用于头部补全\n });\n return timeStr;\n}\n\n/**\r\n * JS颜色十六进制转换为rgb或rgba,返回的格式为 rgba(255,255,255,0.5)字符串\r\n * sHex为传入的十六进制的色值\r\n * alpha为rgba的透明度\r\n */\nfunction colorRgba(sHex, alpha) {\n // 十六进制颜色值的正则表达式\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;\n /* 16进制颜色转为RGB格式 */\n let sColor = sHex.toLowerCase();\n if (sColor && reg.test(sColor)) {\n if (sColor.length === 4) {\n var sColorNew = \"#\";\n for (let i = 1; i < 4; i += 1) {\n sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));\n }\n sColor = sColorNew;\n }\n // 处理六位的颜色值\n const sColorChange = [];\n for (let i = 1; i < 7; i += 2) {\n sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`));\n }\n // return sColorChange.join(',')\n return `rgba(${sColorChange.join(\",\")},${alpha})`;\n }\n return sColor;\n}\n\n/**\r\n * segment: 分段 7段\r\n * tatalpercent: 百分比 100\r\n * basevalue: 基础值 200\r\n*/\nfunction produceDataSeriesEx(segment, tatal, basevalue) {\n //需要产生segment个随机数,且segment个随机数之和等于tatal\n let arrpercent = new Array(segment).fill(0);\n for (let i = 0; i < tatal; i++) {\n //parseInt接收string,所以需要转一趟\n /**\r\n * 换成生活中的场景,就是一百个苹果分给十个人,我们可以一个一个的取出,随机分给某个人,直到分完\r\n * 在js里面,十个人即是一个长度为十的数组,每次数组随机一个位置加一,执行一百次\r\n */\n var num = parseInt((Math.random() * segment).toString());\n arrpercent[num]++;\n }\n //console.log(arr.length)\n\n let arrvalue = new Array(segment).fill(0);\n for (let i = 0; i < segment; i++) {\n arrvalue[i] = parseInt(arrpercent[i] / 100 * basevalue);\n }\n return [arrpercent, arrvalue];\n}\n\n/**\r\n * 深拷贝\r\n * obj为原始数据\r\n * 适用场景:数组套对象、对象套数组、混合嵌套等\r\n */\nfunction deepClone(obj) {\n if (obj === null || typeof obj !== 'object') {\n return obj;\n }\n if (obj instanceof Date) {\n return new Date(obj.getTime());\n }\n if (obj instanceof Array) {\n return obj.reduce((arr, item, i) => {\n arr[i] = deepClone(item);\n return arr;\n }, []);\n }\n if (obj instanceof Object) {\n return Object.keys(obj).reduce((newObj, key) => {\n newObj[key] = deepClone(obj[key]);\n return newObj;\n }, {});\n }\n}\n\n//# sourceURL=webpack://mui/./plugins/utils/Filter.js?");
8893
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ colorRgba: function() { return /* binding */ colorRgba; },\n/* harmony export */ deepClone: function() { return /* binding */ deepClone; },\n/* harmony export */ findNthOccurrence: function() { return /* binding */ findNthOccurrence; },\n/* harmony export */ formatDate: function() { return /* binding */ formatDate; },\n/* harmony export */ getDay: function() { return /* binding */ getDay; },\n/* harmony export */ produceDataSeriesEx: function() { return /* binding */ produceDataSeriesEx; }\n/* harmony export */ });\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ \"./node_modules/core-js/modules/es.array.push.js\");\n/* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_0__);\n\n/**\r\n *\r\n * @param {*} day 传入天数\r\n * 距离现在n天前的日期\r\n */\n\nfunction getDay(day) {\n let today = new Date();\n let targetday_milliseconds = today.getTime() + 1000 * 60 * 60 * 24 * day;\n today.setTime(targetday_milliseconds); //注意,这行是关键代码\n\n let tYear = today.getFullYear();\n let tMonth = today.getMonth();\n let tDate = today.getDate();\n tMonth = doHandleMonth(tMonth + 1);\n tDate = doHandleMonth(tDate);\n return tYear + \"-\" + tMonth + \"-\" + tDate;\n}\nfunction doHandleMonth(month) {\n let m = month;\n if (month.toString().length == 1) {\n m = \"0\" + month;\n }\n return m;\n}\n\n/**\r\n *\r\n * @param {*} time 传入时间\r\n * @param {*} cFormat 可不传。格式化结构 默认 年-月-日 时:分:秒\r\n * {y}年 {m}月 {d}日 {h}时 {i}分 {s}秒 {a}星期\r\n */\nfunction formatDate(time, cFormat) {\n if (arguments.length === 0 || !time) {\n return null;\n }\n const format = cFormat || \"{y}-{m}-{d} {h}:{i}:{s}\";\n let date;\n if (typeof time === \"object\") {\n date = time;\n } else {\n let times = time;\n times = new Date(time).getTime();\n if (typeof times === \"string\") {\n if (/^[0-9]+$/.test(times)) {\n times = parseInt(times);\n } else {\n times = times.replace(new RegExp(/-/g), \"/\");\n }\n }\n if (typeof times === \"number\" && times.toString().length === 10) {\n times *= 1000;\n }\n date = new Date(times);\n }\n const formatObj = {\n y: date.getFullYear(),\n m: date.getMonth() + 1,\n d: date.getDate(),\n h: date.getHours(),\n i: date.getMinutes(),\n s: date.getSeconds(),\n a: date.getDay()\n };\n const timeStr = format.replace(/\\{([ymdhisa])+\\}/g, (result, key) => {\n const value = formatObj[key];\n // Note: getDay() returns 0 on Sunday\n if (key === \"a\") {\n return [\"日\", \"一\", \"二\", \"三\", \"四\", \"五\", \"六\"][value];\n }\n if (!String.prototype.padStart) return padStart(2, value.toString());\n return value.toString().padStart(2, \"0\"); // 返回替换的字符串,padStart用于头部补全\n });\n return timeStr;\n}\n\n/**\r\n * JS颜色十六进制转换为rgb或rgba,返回的格式为 rgba(255,255,255,0.5)字符串\r\n * sHex为传入的十六进制的色值\r\n * alpha为rgba的透明度\r\n */\nfunction colorRgba(sHex, alpha) {\n // 十六进制颜色值的正则表达式\n const reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;\n /* 16进制颜色转为RGB格式 */\n let sColor = sHex.toLowerCase();\n if (sColor && reg.test(sColor)) {\n if (sColor.length === 4) {\n var sColorNew = \"#\";\n for (let i = 1; i < 4; i += 1) {\n sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));\n }\n sColor = sColorNew;\n }\n // 处理六位的颜色值\n const sColorChange = [];\n for (let i = 1; i < 7; i += 2) {\n sColorChange.push(parseInt(`0x${sColor.slice(i, i + 2)}`));\n }\n // return sColorChange.join(',')\n return `rgba(${sColorChange.join(\",\")},${alpha})`;\n }\n return sColor;\n}\n\n/**\r\n * segment: 分段 7段\r\n * tatalpercent: 百分比 100\r\n * basevalue: 基础值 200\r\n*/\nfunction produceDataSeriesEx(segment, tatal, basevalue) {\n //需要产生segment个随机数,且segment个随机数之和等于tatal\n let arrpercent = new Array(segment).fill(0);\n for (let i = 0; i < tatal; i++) {\n //parseInt接收string,所以需要转一趟\n /**\r\n * 换成生活中的场景,就是一百个苹果分给十个人,我们可以一个一个的取出,随机分给某个人,直到分完\r\n * 在js里面,十个人即是一个长度为十的数组,每次数组随机一个位置加一,执行一百次\r\n */\n var num = parseInt((Math.random() * segment).toString());\n arrpercent[num]++;\n }\n //console.log(arr.length)\n\n let arrvalue = new Array(segment).fill(0);\n for (let i = 0; i < segment; i++) {\n arrvalue[i] = parseInt(arrpercent[i] / 100 * basevalue);\n }\n return [arrpercent, arrvalue];\n}\n\n/**\r\n * 深拷贝\r\n * obj为原始数据\r\n * 适用场景:数组套对象、对象套数组、混合嵌套等\r\n */\nfunction deepClone(obj) {\n if (obj === null || typeof obj !== 'object') {\n return obj;\n }\n if (obj instanceof Date) {\n return new Date(obj.getTime());\n }\n if (obj instanceof Array) {\n return obj.reduce((arr, item, i) => {\n arr[i] = deepClone(item);\n return arr;\n }, []);\n }\n if (obj instanceof Object) {\n return Object.keys(obj).reduce((newObj, key) => {\n newObj[key] = deepClone(obj[key]);\n return newObj;\n }, {});\n }\n}\n\n/**\r\n * 查找字符串\r\n * str为字符串\r\n * charToFind为查找字符\r\n * n为次数\r\n * 适用场景:查找某个字符在字符串当中某一次的位置\r\n */\nfunction findNthOccurrence(str, charToFind, n) {\n let count = 0;\n let index = str.indexOf(charToFind);\n while (count < n && index !== -1) {\n index = str.indexOf(charToFind, index + 1);\n count++;\n }\n return index === -1 ? -1 : index;\n}\n\n//# sourceURL=webpack://mui/./plugins/utils/Filter.js?");
8894
8894
 
8895
8895
  /***/ }),
8896
8896
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "web-component-gallery",
3
- "version": "0.1.43",
3
+ "version": "0.1.44",
4
4
  "description": "vue-library-ui组件库",
5
5
  "main": "dist/index.umd.js",
6
6
  "files": [
@@ -178,4 +178,23 @@ export function deepClone(obj) {
178
178
  }
179
179
  }
180
180
 
181
+
182
+ /**
183
+ * 查找字符串
184
+ * str为字符串
185
+ * charToFind为查找字符
186
+ * n为次数
187
+ * 适用场景:查找某个字符在字符串当中某一次的位置
188
+ */
189
+ export function findNthOccurrence(str, charToFind, n) {
190
+ let count = 0;
191
+ let index = str.indexOf(charToFind);
192
+
193
+ while (count < n && index !== -1) {
194
+ index = str.indexOf(charToFind, index + 1);
195
+ count++;
196
+ }
197
+
198
+ return index === -1 ? -1 : index;
199
+ }
181
200