Socket
Book a DemoInstallSign in
Socket

iwwa-utils

Package Overview
Dependencies
Maintainers
3
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

iwwa-utils

A library of utils used in innowatio projects

latest
Source
npmnpm
Version
1.2.3
Version published
Weekly downloads
3
Maintainers
3
Weekly downloads
 
Created
Source

npm version Build Status codecov.io Dependency Status devDependency Status

iwwa-utils

Library of common utility used in iwwa-front and iwapp

Install

npm install --save iwwa-utils

API

Consumption utils

getTimeRangeByPeriod(period, isToNow)

Arguments
  • period string required: period to consider [e.g. "day", "week", "month", "year"]
  • isToNow boolean optional: if true the end of the range is the current time, if false the end of the day [default value: false]
Example usage

Now is "2016-10-14"

getTimeRangeByPeriod("month")

--> {
    start: "2016-10-01T00:00:00.000Z",
    end: "2016-10-31T23:59:59.999Z"
}

getPreviousPeriod(periodToSubtract, periodRange, isToNow)

Arguments
  • periodToSubtract string required: period to subtract [e.g. "day", "week", "month", "year"]
  • periodRange string required: period to consider [e.g. "day", "week", "month", "year"]
  • isToNow boolean optional: if true the end of the range is the current time, if false the end of the day [default value: false]
  • offsetNumber number optional: how frequently take the selected offsetPeriod [default value: 1]
Example usage

Now is "2016-10-14"

getTimeRangeByPeriod("week", "day")

--> {
    start: "2016-10-07T00:00:00.000Z",
    end: "2016-10-07T23:59:59.999Z"
}

getSumByPeriod(period, aggregates, measurementValuesByPeriod)

Arguments
  • period object required: period object with start and end keys
  • aggregates Immutable.Map required: aggregate yearly-consumption
  • measurementValuesByPeriod array optional: array of measurementValues
Example usage
const yearlyAggregates = {
    _id: "sensorId-2016-reading-activeEnergy",
    year: "2016",
    sensorId: "sensorId",
    source: "reading",
    measurementType: "activeEnergy",
    measurementValues: "1,2,3,4,4,9,5,6,4,6,3,2,3",
    unitOfMeasurement: "kWh"
}

const period = {
    start: "2016-01-04T00:00:00.000Z",
    end: "2016-01-10T23:59:59.999Z"
}
getSumByPeriod(period, yearlyAggregates) --> 38

getSumByPeriodToNow(period, aggregates, measurementValuesByPeriod)

Arguments
  • period object required: period object with start and end keys
  • aggregates Immutable.Map required: aggregate yearly-consumption
  • measurementValuesByPeriod array optional: array of measurementValues
Example usage
const dailyAggregates = {
    _id: "sensorId-2016-01-04-reading-activeEnergy",
    day: "2016-01-04",
    sensorId: "sensorId",
    source: "reading",
    measurementType: "activeEnergy",
    measurementTimes: "1451865600,1451865900,1451866200,1451866500,1451866800",
    measurementValues: "1,2,3,4,4",
    unitOfMeasurement: "kWh"
}

const period = {
    start: "2016-01-04T00:00:00.000Z",
    end: "2016-01-04T13:00:15.00Z"
}
getSumByPeriod(period, yearlyAggregates) --> 10

getAverageByPeriod (aggregates, offsetPeriod, offsetNumber)

Arguments
  • aggregates Immutable.Map required: aggregate yearly-consumption
  • offsetPeriod string required: period to consider [e.g. "day", "week", "month"]
  • offsetNumber array optional: how frequently take the selected offsetPeriod [default value: 1]
Example usage

Now is "2016-01-17"

const yearlyAggregates = {
    _id: "sensorId-2016-reading-activeEnergy",
    year: "2016",
    sensorId: "sensorId",
    source: "reading",
    measurementType: "activeEnergy",
    measurementValues: "1,2,3,4,4,9,5,6,4,6,3,2,3,1,6,7,5",
    unitOfMeasurement: "kWh"
}

const offsetPeriod = "day";
const offsetNumber = 7;
getAverageByPeriod (aggregates, offsetPeriod, offsetNumber) --> 4.5

subscribeDaily utils function

subscribeDaily(subscription)

Arguments
  • subscription function required: the subscription to refresh every days
Example usage
subscribeDaily(() => this.props.asteroid.subscribe("sensors"));

Keywords

library

FAQs

Package last updated on 19 Jan 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.