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


TypeScript Duration.fromJS方法代码示例

本文整理汇总了TypeScript中chronoshift.Duration.fromJS方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Duration.fromJS方法的具体用法?TypeScript Duration.fromJS怎么用?TypeScript Duration.fromJS使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在chronoshift.Duration的用法示例。


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

示例1: it

  it('fromJSes appropriately', () => {

    var timeBucketAction1 = granularityFromJS({
      action: 'timeBucket',
      duration: 'P1W',
      timezone: 'America/Tijuana'
    });

    expect(timeBucketAction1 instanceof TimeBucketAction).to.equal(true);
    expect((timeBucketAction1 as TimeBucketAction).timezone.toString()).to.equal('America/Tijuana');
    expect((timeBucketAction1 as TimeBucketAction).duration).to.deep.equal(Duration.fromJS('P1W'));

    var timeBucketAction2 = granularityFromJS('PT1H');
    expect(timeBucketAction2 instanceof TimeBucketAction).to.equal(true);
    expect((timeBucketAction2 as TimeBucketAction).timezone).to.equal(undefined);
    expect((timeBucketAction2 as TimeBucketAction).duration).to.deep.equal(Duration.fromJS('PT1H'));

    var numberBucketAction1 = granularityFromJS({
      action: 'numberBucket',
      size: 5,
      offset: 1
    });

    expect(numberBucketAction1 instanceof NumberBucketAction).to.equal(true);
    expect((numberBucketAction1 as NumberBucketAction).size).to.equal(5);
    expect((numberBucketAction1 as NumberBucketAction).offset).to.equal(1);

    var numberBucketAction2 = granularityFromJS(5);

    expect(numberBucketAction2 instanceof NumberBucketAction).to.equal(true);
    expect((numberBucketAction2 as NumberBucketAction).size).to.equal(5);
    expect((numberBucketAction2 as NumberBucketAction).offset).to.equal(0);

  });
开发者ID:arunkjn,项目名称:pivot,代码行数:34,代码来源:granularity.mocha.ts

示例2: getTickDuration

export function getTickDuration(timeRange: TimeRange): Duration {
  var len = timeRange.end.valueOf() - timeRange.start.valueOf();
  if (len > 95 * day.canonicalLength) {
    return Duration.fromJS('P1M');

  } else if (len > 20 * day.canonicalLength) {
    return Duration.fromJS('P1W');

  } else if (len > 6 * day.canonicalLength) {
    return Duration.fromJS('P1D');

  } else if (len > 2 * day.canonicalLength) {
    return Duration.fromJS('PT12H');

  } else if (len > 23 * hour.canonicalLength) {
    return Duration.fromJS('PT6H');

  } else if (len > 3 * hour.canonicalLength) {
    return Duration.fromJS('PT1H');

  } else if (len > hour.canonicalLength) {
    return Duration.fromJS('PT5M');

  } else {
    return Duration.fromJS('PT1M');
  }
}
开发者ID:mdeora,项目名称:pivot,代码行数:27,代码来源:time.ts

示例3: getBestGranularity

export function getBestGranularity(timeRange: TimeRange): Duration {
  var len = timeRange.end.valueOf() - timeRange.start.valueOf();
  if (len > 95 * day.canonicalLength) {
    return Duration.fromJS('P1W');

  } else if (len > 8 * day.canonicalLength) {
    return Duration.fromJS('P1D');

  } else if (len > 8 * hour.canonicalLength) {
    return Duration.fromJS('PT1H');

  } else if (len > 3 * hour.canonicalLength) {
    return Duration.fromJS('PT5M');

  } else {
    return Duration.fromJS('PT1M');
  }
}
开发者ID:mdeora,项目名称:pivot,代码行数:18,代码来源:time.ts

示例4: onGranClick

 onGranClick(gran: string): void {
   var { clicker, essence, split, onClose } = this.props;
   var bucketAction = split.bucketAction;
   if (bucketAction instanceof TimeBucketAction) {
     var newSplit = split.changeBucketAction(new TimeBucketAction({
       timezone: bucketAction.timezone,
       duration: Duration.fromJS(gran)
     }));
     clicker.changeSplits(essence.splits.replace(split, newSplit));
   }
   onClose();
 }
开发者ID:Ghostubborn,项目名称:pivot,代码行数:12,代码来源:split-menu.ts

示例5: it

  it('formats time range based off of start walltime', () => {

    var locale = {
      shortDays: ["2"],
      weekStart: 0,
      shortMonths: [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sept", "Oct", "Nov", "Dec" ]
    };

    var start = new Date("1965-02-02T13:00:00.000Z");
    var end = day.shift(start, TZ_TIJUANA, 1);
    var gran = Duration.fromJS('PT1H');
    var range = new TimeRange({ start, end });
    expect(formatTimeBasedOnGranularity(range, gran, TZ_TIJUANA, locale), 'hour tijuana').to.equal("Feb 2, 1965, 5am");

    start = new Date("1999-05-02T13:00:00.000Z");
    end = month.shift(start, TZ_TIJUANA, 1);
    gran = Duration.fromJS('PT1S');
    range = new TimeRange({ start, end });
    expect(formatTimeBasedOnGranularity(range, gran, TZ_TIJUANA, locale), 'second tijuana').to.equal("May 2, 06:00:00");

    start = new Date("1999-05-02T13:00:00.000Z");
    end = month.shift(start, TZ_TIJUANA, 1);
    gran = Duration.fromJS('P1W');
    range = new TimeRange({ start, end });
    expect(formatTimeBasedOnGranularity(range, gran, TZ_TIJUANA, locale), 'week tijuana').to.equal("May 2 - Jun 2, 1999 6am");

    start = new Date("1999-05-02T13:00:00.000Z");
    end = month.shift(start, TZ_KATHMANDU, 1);
    gran = Duration.fromJS('P1M');
    range = new TimeRange({ start, end });
    var monthFmt = formatTimeBasedOnGranularity(range, gran, TZ_KATHMANDU, locale);
    expect(monthFmt, 'month granularity format').to.equal("May, 1999");
    var minFmt = formatTimeBasedOnGranularity(range, Duration.fromJS("PT1M"), TZ_KATHMANDU, locale);
    expect(minFmt, 'minute granularity format').to.equal("May 2, 6:45pm");
    expect(monthFmt).to.not.equal(minFmt, 'distinguishes between month and minute fmt');

  });
开发者ID:WuQic,项目名称:pivot,代码行数:37,代码来源:time.mocha.ts

示例6: parseIntervalString

function parseIntervalString(str: string): TimeRange {
  var parts = str.split('/');
  if (parts.length > 2) throw new Error(`Can not parse string ${str}`);
  var p0: string = parts[0];
  var p1: string = parts.length === 2 ? parts[1] : (new Date()).toISOString();

  var start: Date = null;
  var end: Date = null;
  var duration: Duration = null;
  if (p0[0] === 'P') {
    duration = Duration.fromJS(p0);
    end = new Date(p1);
    start = duration.move(end, Timezone.UTC, -1);
  } else if (p1[0] === 'P') {
    start = new Date(p0);
    duration = Duration.fromJS(p1);
    end = duration.move(end, Timezone.UTC, 1);
  } else {
    start = new Date(p0);
    end = new Date(p1);
  }

  return TimeRange.fromJS({ start, end });
}
开发者ID:dkarpman,项目名称:plyql,代码行数:24,代码来源:cli.ts


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