Sha256: 4a168f2b94ab07a431edf80a4f956c3a3c4ce4f41241a5b8f3ab370881c3bac8

Contents?: true

Size: 1.64 KB

Versions: 16

Compression:

Stored size: 1.64 KB

Contents

!(angular => {
  'use strict';

  angular
    .module('alephFilters', [])
    .filter('objectDotKeys', () => {
      // this is literally only needed because of https://github.com/angular/angular.js/issues/6210
      return input => {
        return Object.keys(input);
      };
    })

    .filter('humanReadableDuration', () => {
      return (originalSeconds) => {
        let SECONDS_IN_HOUR = 3600;
        let SECONDS_IN_MINUTE = 60;

        let hours = Math.floor(originalSeconds / SECONDS_IN_HOUR);
        let minutes = Math.floor((originalSeconds % SECONDS_IN_HOUR) / SECONDS_IN_MINUTE);
        let seconds = Math.round(originalSeconds % SECONDS_IN_MINUTE);

        return ((originalSeconds > SECONDS_IN_HOUR) ? hours + ' hours ' : '') +
               ((originalSeconds > SECONDS_IN_MINUTE) ? minutes + ' minutes ' : '') +
               seconds + ' seconds';
      };
    })

    .filter('runtimeDuration', () => {
      return (originalSeconds) => {
        let SECONDS_IN_DAY = 86400;
        let SECONDS_IN_HOUR = 3600;
        let SECONDS_IN_MINUTE = 60;

        let days = Math.floor(originalSeconds / SECONDS_IN_DAY);
        let hours = Math.floor((originalSeconds % SECONDS_IN_DAY) / SECONDS_IN_HOUR);
        let minutes = Math.floor((originalSeconds % SECONDS_IN_HOUR) / SECONDS_IN_MINUTE);
        let seconds = Math.round(originalSeconds % SECONDS_IN_MINUTE);

        return ((originalSeconds > SECONDS_IN_DAY) ? days + ' days ' : '') +
               ((originalSeconds > SECONDS_IN_HOUR) ? hours + ':' : '00:') +
               ((originalSeconds > SECONDS_IN_MINUTE) ? minutes + ':' : '00:') +
               seconds;
      };
    });
}(angular));

Version data entries

16 entries across 8 versions & 1 rubygems

Version Path
aleph_analytics-0.4.9.pre.dev public/assets/angular/filters/filters.js-5d27b210896e5d5382b265ca12c96980.es6
aleph_analytics-0.4.9.pre.dev app/assets/javascripts/angular/filters/filters.js.es6
aleph_analytics-0.4.8 public/assets/angular/filters/filters.js-5d27b210896e5d5382b265ca12c96980.es6
aleph_analytics-0.4.8 app/assets/javascripts/angular/filters/filters.js.es6
aleph_analytics-0.4.7 app/assets/javascripts/angular/filters/filters.js.es6
aleph_analytics-0.4.7 public/assets/angular/filters/filters.js-5d27b210896e5d5382b265ca12c96980.es6
aleph_analytics-0.4.4 app/assets/javascripts/angular/filters/filters.js.es6
aleph_analytics-0.4.4 public/assets/angular/filters/filters.js-5d27b210896e5d5382b265ca12c96980.es6
aleph_analytics-0.4.2 app/assets/javascripts/angular/filters/filters.js.es6
aleph_analytics-0.4.2 public/assets/angular/filters/filters.js-5d27b210896e5d5382b265ca12c96980.es6
aleph_analytics-0.4.1 app/assets/javascripts/angular/filters/filters.js.es6
aleph_analytics-0.4.1 public/assets/angular/filters/filters.js-5d27b210896e5d5382b265ca12c96980.es6
aleph_analytics-0.3.0 public/assets/angular/filters/filters.js-5d27b210896e5d5382b265ca12c96980.es6
aleph_analytics-0.3.0 app/assets/javascripts/angular/filters/filters.js.es6
aleph_analytics-0.2.0 app/assets/javascripts/angular/filters/filters.js.es6
aleph_analytics-0.2.0 public/assets/angular/filters/filters.js-5d27b210896e5d5382b265ca12c96980.es6