{"version":3,"file":"dep-3b939101.mjs","sources":["../../../common/js/utils/helper.ts"],"sourcesContent":["import { isString, isNull, isUndefined, isNumber, isArray } from 'lodash-es';\n\nexport function omit(obj: Record<string, any>, fields: string[]) {\n  const shallowCopy = {\n    ...obj,\n  };\n  for (let i = 0; i < fields.length; i++) {\n    const key = fields[i];\n    delete shallowCopy[key];\n  }\n  return shallowCopy;\n}\n\nexport function getValidAttrs<T extends Record<string, any>>(obj: T): Partial<T> {\n  const newObj: Partial<T> = {};\n\n  Object.keys(obj).forEach((key) => {\n    if (!isUndefined(obj[key]) || isNull(obj[key])) {\n      newObj[key as keyof T] = obj[key];\n    }\n  });\n\n  return newObj;\n}\n\nexport function removeEmptyAttrs<T extends Record<string, any>>(obj: T): Partial<T> {\n  const newObj: Partial<T> = {};\n\n  Object.keys(obj).forEach((key) => {\n    if (!isUndefined(obj[key]) || isNull(obj[key])) {\n      newObj[key as keyof T] = obj[key];\n    }\n  });\n\n  return newObj;\n}\n\nexport function getTabElementByValue(tabs: [] = [], value: string): object {\n  const [result] = tabs.filter((item) => {\n    const { id } = item as any;\n    return id === value;\n  });\n  return result || null;\n}\n\nexport function firstUpperCase(str: string): string {\n  return str.toLowerCase().replace(/( |^)[a-z]/g, (char: string) => char.toUpperCase());\n}\n\nexport type Gradients = { [percent: string]: string };\nexport type FromTo = { from: string; to: string };\nexport type LinearGradient = { direction?: string } & (Gradients | FromTo);\nexport function getBackgroundColor(color: string | string[] | LinearGradient): string {\n  if (isString(color)) {\n    return color;\n  }\n  if (isArray(color)) {\n    if (color[0] && color[0][0] === '#') {\n      color.unshift('90deg');\n    }\n    return `linear-gradient( ${color.join(',')} )`;\n  }\n  const { from, to, direction = 'to right', ...rest } = color;\n  let keys = Object.keys(rest);\n  if (keys.length) {\n    keys = keys.sort((a, b) => {\n      const c = parseFloat(a.substr(0, a.length - 1)) - parseFloat(b.substr(0, b.length - 1));\n      return c;\n    });\n    const tempArr = keys.map((key: any) => `${rest[key as keyof typeof rest]} ${key}`);\n    return `linear-gradient(${direction}, ${tempArr.join(',')})`;\n  }\n  return `linear-gradient(${direction}, ${from}, ${to})`;\n}\n\n/**\n *\n * @returns 获取 ie 浏览器版本\n */\nexport function getIEVersion() {\n  if (typeof navigator === 'undefined' || !navigator) return Number.MAX_SAFE_INTEGER;\n\n  const { userAgent } = navigator;\n  // 判断是否IE<11浏览器\n  const isIE = userAgent.indexOf('compatible') > -1 && userAgent.indexOf('MSIE') > -1;\n  // 判断是否IE11浏览器\n  const isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf('rv:11.0') > -1;\n  if (isIE) {\n    const reIE = /MSIE (\\d+\\.\\d+);/;\n    const match = userAgent.match(reIE);\n    if (!match) return -1;\n    const fIEVersion = parseFloat(match[1]);\n    return fIEVersion < 7 ? 6 : fIEVersion;\n  }\n  if (isIE11) {\n    // IE11\n    return 11;\n  }\n  // 不是ie浏览器\n  return Number.MAX_SAFE_INTEGER;\n}\n\n/**\n * Safari Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.5 Safari/605.1.15\n * FireFox Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0) Gecko/20100101 Firefox/114.0\n * Chrome Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36\n * Chrome 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.3\n * 搜狗 Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36 SE 2.X MetaSr 1.\n * 360 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.6045.9 Safari/537.36 QIHU 360EE\n */\nexport function getFlexGapPolyFill() {\n  if (typeof navigator === 'undefined' || !navigator) return false;\n  const ua = navigator.userAgent;\n  const chromeMatch = ua.match(/AppleWebKit.+Chrome\\/(.+) Safari\\/.+/i);\n  if (Number(chromeMatch?.[1]?.split('.')[0]) < 100) return true;\n  const safariMatch = ua.match(/AppleWebKit.+Version\\/(.+) Safari\\/.+/i);\n  if (Number(safariMatch?.[1]?.split('.')[0]) < 12) return true;\n  const ieVersion = getIEVersion();\n  if (ieVersion <= 11) return true;\n  const fireFoxMatch = ua.match(/Firefox\\/(.+)/i);\n  if (Number(fireFoxMatch?.[1]?.split('.')[0]) < 100) return true;\n  return false;\n}\n\n/**\n * 计算字符串字符的长度并可以截取字符串。\n * @param str 传入字符串\n * @param maxCharacter 规定最大字符串长度\n * @returns 当没有传入maxCharacter时返回字符串字符长度，当传入maxCharacter时返回截取之后的字符串和长度。\n */\nexport function getCharacterLength(str: string): number;\nexport function getCharacterLength(str: string, maxCharacter?: number): { length: number; characters: string };\nexport function getCharacterLength(str: string, maxCharacter?: number) {\n  const hasMaxCharacter = isNumber(maxCharacter);\n  if (!str || str.length === 0) {\n    if (hasMaxCharacter) {\n      return {\n        length: 0,\n        characters: str,\n      };\n    }\n    return 0;\n  }\n  let len = 0;\n  for (let i = 0; i < str.length; i++) {\n    let currentStringLength = 0;\n    if (str.charCodeAt(i) > 127) {\n      currentStringLength = 2;\n    } else {\n      currentStringLength = 1;\n    }\n    if (hasMaxCharacter && len + currentStringLength > maxCharacter) {\n      return {\n        length: len,\n        characters: str.slice(0, i),\n      };\n    }\n    len += currentStringLength;\n  }\n  if (hasMaxCharacter) {\n    return {\n      length: len,\n      characters: str,\n    };\n  }\n  return len;\n}\n\n/**\n * 返回 Unicode 字符长度\n * '👨'.length === 2\n * getUnicodeLength('👨') === 1\n * @param str\n * @returns {number}\n */\nexport function getUnicodeLength(str?: string): number {\n  return [...(str ?? '')].length;\n}\n\n/**\n * 修正 Unicode 最大字符长度\n * '👨👨👨'.slice(0, 2) === '👨'\n * limitUnicodeMaxLength('👨👨👨', 2) === '👨👨'\n * @param str\n * @param maxLength\n * @param oldStr\n * @returns {string}\n */\nexport function limitUnicodeMaxLength(str?: string, maxLength?: number, oldStr?: string): string {\n  // 旧字符满足字数要求则返回\n  if ([...(oldStr ?? '')].slice().length === maxLength) return oldStr || '';\n  return [...(str ?? '')].slice(0, maxLength).join('');\n}\n\n/**\n * 是否样式单位\n * @param value 样式值\n * @returns 是否样式单位\n */\nexport const hasStyleUnit = (value: string): boolean => {\n  return /px|rpx|em|rem|%|vh|vw/.test(value);\n};\n\n/**\n * 样式单位格式化\n * @param value 样式值\n * @param unit 单位，默认为'px'\n * @returns 格式化后的样式值\n */\nexport function formatStyleUnit(value: string | number, unit = 'px'): string {\n  if (isString(value)) {\n    return hasStyleUnit(value) ? value : `${value}${unit}`;\n  }\n\n  return `${value}${unit}`;\n}\n\n/**\n * 兼容样式中支持number/string类型的传值 得出最后的结果。\n * @param param number或string类型的可用于样式上的值\n * @returns 可使用的样式值。\n */\nexport function pxCompat(param: string | number) {\n  return isNumber(param) ? `${param}px` : param;\n}\n\n/**\n * 计算dom元素盒模型尺寸\n * @param targetElement 需要计算盒模型尺寸的元素\n * @returns 计算出各维度尺寸。\n */\nconst DOM_STYLE_PROPS = [\n  'padding-top',\n  'padding-bottom',\n  'padding-left',\n  'padding-right',\n  'font-family',\n  'font-weight',\n  'font-size',\n  'font-variant',\n  'text-rendering',\n  'text-transform',\n  'width',\n  'text-indent',\n  'border-width',\n  'box-sizing',\n  'line-height',\n  'letter-spacing',\n];\n\nexport function calculateNodeSize(targetElement: HTMLElement) {\n  if (typeof window === 'undefined') {\n    return {\n      paddingSize: 0,\n      borderSize: 0,\n      boxSizing: 0,\n      sizingStyle: '',\n    };\n  }\n\n  const style = window.getComputedStyle(targetElement);\n\n  const boxSizing =\n    style.getPropertyValue('box-sizing') ||\n    style.getPropertyValue('-moz-box-sizing') ||\n    style.getPropertyValue('-webkit-box-sizing');\n\n  const paddingSize =\n    parseFloat(style.getPropertyValue('padding-bottom')) + parseFloat(style.getPropertyValue('padding-top'));\n\n  const borderSize =\n    parseFloat(style.getPropertyValue('border-bottom-width')) + parseFloat(style.getPropertyValue('border-top-width'));\n\n  const sizingStyle = DOM_STYLE_PROPS.map((name) => `${name}:${style.getPropertyValue(name)}`).join(';');\n\n  return {\n    paddingSize,\n    borderSize,\n    boxSizing,\n    sizingStyle,\n  };\n}\n\nexport function isSafari(): boolean {\n  if (typeof window === 'undefined') return false;\n\n  const ua = window?.navigator?.userAgent;\n  return /Safari/.test(ua) && !/Chrome/.test(ua);\n}\n"],"names":["omit","obj","fields","shallowCopy","_objectSpread","i","length","key","getValidAttrs","newObj","Object","keys","forEach","isUndefined","isNull","removeEmptyAttrs","getTabElementByValue","tabs","arguments","undefined","value","_tabs$filter","filter","item","id","_tabs$filter2","_slicedToArray","result","firstUpperCase","str","toLowerCase","replace","char","toUpperCase","getBackgroundColor","color","isString","isArray","unshift","concat","join","from","to","_color$direction","direction","rest","_excluded","sort","a","b","c","parseFloat","substr","tempArr","map","getIEVersion","navigator","Number","MAX_SAFE_INTEGER","_navigator","userAgent","isIE","indexOf","isIE11","reIE","match","fIEVersion","getFlexGapPolyFill","_chromeMatch$","_safariMatch$","_fireFoxMatch$","ua","chromeMatch","split","safariMatch","ieVersion","fireFoxMatch","getCharacterLength","maxCharacter","hasMaxCharacter","isNumber","characters","len","currentStringLength","charCodeAt","slice","getUnicodeLength","_toConsumableArray","limitUnicodeMaxLength","maxLength","oldStr","hasStyleUnit","test","formatStyleUnit","unit","pxCompat","param","DOM_STYLE_PROPS","calculateNodeSize","targetElement","window","paddingSize","borderSize","boxSizing","sizingStyle","style","getComputedStyle","getPropertyValue","name","isSafari","_window"],"mappings":"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"}