@sentry-tools/shared

v0.0.4

Published

Sentry工具库基础,包含通用的函数、类型等代码。

Readme

@sentry-tools/shared

Sentry工具库基础,包含通用的函数、类型等代码。

BooleanCalculator

布尔表达式计算器,用于解析配置。

不同于eval,BooleanCalculator可安全计算布尔表达式字符串。

特性:

  • 支持 &&||! 运算符
  • 支持括号表达式
  • 支持运算符优先级(&& 优先级高于 ||
  • 表达式结果缓存,提升重复计算性能
  • 完整的错误处理和验证

支持的表达式格式:

  • true && false
  • true || false
  • !true
  • (true && false) || true
  • 支持嵌套括号和复杂表达式

Console

可控制的日志输出工具,提供统一的日志格式和级别控制。

特性:

  • 统一的日志前缀 [sentry tools]
  • 支持三种日志级别:logwarnerror
  • 可通过 level 属性控制输出:
    • false:关闭所有日志
    • true:开启所有日志
    • 数组:仅开启指定的日志级别,如 ['log', 'warn']

lodash

提供常用的lodash方法的轻量级实现,避免引入完整的lodash,导致产物膨胀。

  • kebabCase
  • lowerFirst
  • upperFirst
  • omit
  • pick
  • get
  • uniqWith

utils

  • sleep:延迟执行,返回Promise
  • defer:生成延迟事件,用于取出Promise的控制权,支持超时处理
  • loadScript:动态加载脚本文件,返回Promise
  • objectToJson:将对象转换为JSON格式,自动过滤函数和Symbol等不可序列化的值