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


TypeScript rangeutil.describeTextRange函数代码示例

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


在下文中一共展示了describeTextRange函数的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的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:grafana,项目名称:grafana,代码行数:57,代码来源:panel.ts

示例2:

 ctrl.$validators.integer = (modelValue: any, viewValue: any) => {
   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:grafana,项目名称:grafana,代码行数:10,代码来源:ng_model_on_blur.ts

示例3: it

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


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