当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript rangeutil.describeTextRange函数代码示例

本文整理汇总了TypeScript中app/core/utils/rangeutil.describeTextRange函数的典型用法代码示例。如果您正苦于以下问题:TypeScript describeTextRange函数的具体用法?TypeScript describeTextRange怎么用?TypeScript describeTextRange使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了describeTextRange函数的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: applyPanelTimeOverrides

export function applyPanelTimeOverrides(panel: PanelModel, timeRange: TimeRange): TimeOverrideResult {
  const newTimeData = {
    timeInfo: '',
    timeRange: timeRange,
  };

  if (panel.timeFrom) {
    const timeFromInterpolated = templateSrv.replace(panel.timeFrom, panel.scopedVars);
    const timeFromInfo = rangeUtil.describeTextRange(timeFromInterpolated);
    if (timeFromInfo.invalid) {
      newTimeData.timeInfo = 'invalid time override';
      return newTimeData;
    }

    if (_isString(timeRange.raw.from)) {
      const timeFromDate = dateMath.parse(timeFromInfo.from);
      newTimeData.timeInfo = timeFromInfo.display;
      newTimeData.timeRange = {
        from: timeFromDate,
        to: dateMath.parse(timeFromInfo.to),
        raw: {
          from: timeFromInfo.from,
          to: timeFromInfo.to,
        },
      };
    }
  }

  if (panel.timeShift) {
    const timeShiftInterpolated = templateSrv.replace(panel.timeShift, panel.scopedVars);
    const timeShiftInfo = rangeUtil.describeTextRange(timeShiftInterpolated);
    if (timeShiftInfo.invalid) {
      newTimeData.timeInfo = 'invalid timeshift';
      return newTimeData;
    }

    const timeShift = '-' + timeShiftInterpolated;
    newTimeData.timeInfo += ' timeshift ' + timeShift;
    const from = dateMath.parseDateMath(timeShift, newTimeData.timeRange.from, false);
    const to = dateMath.parseDateMath(timeShift, newTimeData.timeRange.to, true);

    newTimeData.timeRange = {
      from,
      to,
      raw: {
        from,
        to,
      },
    };
  }

  if (panel.hideTimeOverride) {
    newTimeData.timeInfo = '';
  }

  return newTimeData;
}
开发者ID:gnydick,项目名称:grafana,代码行数:57,代码来源:panel.ts

示例2:

 ctrl.$validators.integer = (modelValue, viewValue) => {
   if (ctrl.$isEmpty(modelValue)) {
     return true;
   }
   if (viewValue.indexOf('$') === 0 || viewValue.indexOf('+$') === 0) {
     return true; // allow template variable
   }
   const info = rangeUtil.describeTextRange(viewValue);
   return info.invalid !== true;
 };
开发者ID:ArcticSnowman,项目名称:grafana,代码行数:10,代码来源:ng_model_on_blur.ts

示例3: applyPanelTimeOverrides

  applyPanelTimeOverrides() {
    this.timeInfo = '';

    // check panel time overrrides
    if (this.panel.timeFrom) {
      var timeFromInterpolated = this.templateSrv.replace(this.panel.timeFrom, this.panel.scopedVars);
      var timeFromInfo = rangeUtil.describeTextRange(timeFromInterpolated);
      if (timeFromInfo.invalid) {
        this.timeInfo = 'invalid time override';
        return;
      }

      if (_.isString(this.rangeRaw.from)) {
        var timeFromDate = dateMath.parse(timeFromInfo.from);
        this.timeInfo = timeFromInfo.display;
        this.rangeRaw.from = timeFromInfo.from;
        this.rangeRaw.to = timeFromInfo.to;
        this.range.from = timeFromDate;
        this.range.to = dateMath.parse(timeFromInfo.to);
      }
    }

    if (this.panel.timeShift) {
      var timeShiftInterpolated = this.templateSrv.replace(this.panel.timeShift, this.panel.scopedVars);
      var timeShiftInfo = rangeUtil.describeTextRange(timeShiftInterpolated);
      if (timeShiftInfo.invalid) {
        this.timeInfo = 'invalid timeshift';
        return;
      }

      var timeShift = '-' + timeShiftInterpolated;
      this.timeInfo += ' timeshift ' + timeShift;
      this.range.from = dateMath.parseDateMath(timeShift, this.range.from, false);
      this.range.to = dateMath.parseDateMath(timeShift, this.range.to, true);

      this.rangeRaw = this.range;
    }

    if (this.panel.hideTimeOverride) {
      this.timeInfo = '';
    }
  };
开发者ID:1tylermitchell,项目名称:grafana,代码行数:42,代码来源:metrics_panel_ctrl.ts

示例4: it

 it('should handle now/w', () => {
   var info = rangeUtil.describeTextRange('now/w');
   expect(info.display).to.be('This week so far');
 });
开发者ID:Sensetif,项目名称:grafana,代码行数:4,代码来源:rangeutil_specs.ts

示例5: it

 it('should handle now/y', () => {
   var info = rangeUtil.describeTextRange('now/y');
   expect(info.display).toBe('This year so far');
 });
开发者ID:connection-reset,项目名称:grafana,代码行数:4,代码来源:rangeutil.jest.ts

示例6: it

 it('should handle now/M', () => {
   const info = rangeUtil.describeTextRange('now/M');
   expect(info.display).toBe('This month so far');
 });
开发者ID:ArcticSnowman,项目名称:grafana,代码行数:4,代码来源:rangeutil.test.ts


注:本文中的app/core/utils/rangeutil.describeTextRange函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。