@plasma-platform/clock-timer
Version:
Counter for promotions
164 lines (104 loc) • 7.01 kB
Markdown





* * *
[Full documentation](https://templatemonster.gitlab.io/PlasmaPlatform/Frontend/plasma-platform/?path=/story/plasma-platform-sdk--clock-timer)
install:
`npm i @plasma-platform/clock-timer -S`
# Short documentation
<!-- Generated by documentation.js. Update this documentation by updating the source code. -->
### Table of Contents
- [ClockTimer](#clocktimer)
- [ClockTimer](#clocktimer-1)
- [ClockTimer](#clocktimer-2)
- [init](#init)
- [Parameters](#parameters)
- [updateTimer](#updatetimer)
- [Parameters](#parameters-1)
- [getChangedValues](#getchangedvalues)
- [Parameters](#parameters-2)
- [init](#init-1)
- [Parameters](#parameters-3)
- [updateTimer](#updatetimer-1)
- [Parameters](#parameters-4)
- [getChangedValues](#getchangedvalues-1)
- [Parameters](#parameters-5)
- [start](#start)
- [stop](#stop)
- [calculateTime](#calculatetime)
- [Parameters](#parameters-6)
- [tick](#tick)
- [Parameters](#parameters-7)
- [mergeDeep](#mergedeep)
- [Parameters](#parameters-8)
## ClockTimer
Creates CNT1A promotion timer
## ClockTimer
Creates CNT1C promotion timer
## ClockTimer
clock-timer model
## init
Initializes the timer
### Parameters
- `args` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**
- `args.locale` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** timer locale
- `args.count` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)?** Quantity of ticks for 'counter' timerFace type.
- `args.timerFace` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** Timer type (daily | hourly | counter). 'daily' by default
- `args.timerName` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** Unique name for the timer
- `args.startTimeStamp` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)?** Timer start date
- `args.endTimeStamp` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)** Timer end date
- `args.direction` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** Timer count direction ('decrement' | 'increment') // TODO: implement direction behaviour
## updateTimer
updates timer value(s)
### Parameters
- `changedTime` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** timer changed values
- `timerId` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)** generated id to distinguish which timer to update
Returns **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**
## getChangedValues
Compares new and old date and decides which values to change
### Parameters
- `newTime` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** new time object
Returns **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** Values to be changed
## init
Initializes the timer
### Parameters
- `args` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**
- `args.locale` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** timer locale
- `args.count` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)?** Quantity of ticks for 'counter' timerFace type.
- `args.timerFace` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** Timer type (daily | hourly | counter). 'daily' by default
- `args.timerName` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** Unique name for the timer
- `args.startTimeStamp` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)?** Timer start date
- `args.endTimeStamp` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)** Timer end date
- `args.direction` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** Timer count direction ('decrement' | 'increment') // TODO: implement direction behaviour
## updateTimer
updates timer value(s)
### Parameters
- `changedTime` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** timer changed values
- `timerId` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)** generated id to distinguish which timer to update
Returns **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**
## getChangedValues
Compares new and old date and decides which values to change
### Parameters
- `newTime` **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** new time object
Returns **[Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)** Values to be changed
## start
Start clock-timer
## stop
Stops clock-timer
## calculateTime
Calculates initial time
### Parameters
- `intervalTime` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)** Interval time (for setInterval function)
Returns **([Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object) \| [number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number))** 'time' object or 'count' (depends on 'timerFace' property)
## tick
Function to be executed every timer tick. Calculates new time or count
### Parameters
- `intervalTime` **[number](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number)** clock-timer interval in milliseconds
Returns **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)**
## mergeDeep
Merges objects
### Parameters
- `objects` **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)>** one or more objects to be merged
Returns **[object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)**