SlimIO Utils. This package has been created for internal usage (Features are added to the package to avoid spreading of similar functionalities across multiple projects).
- Node.js v12 or higher
This package is available in the Node Package Repository and can be easily installed with npm or yarn.
$ npm i @slimio/utils
# or
$ yarn add @slimio/utilsTBC
taggedString(chaines: string, ...keys: any[]): Clojure
This method is inspired from Tagged Literal (look at the MDN Documentation)
Useful to build string templates:
const{ strictEqual }=require("assert");consttpl=taggedString`hello ${0}`;strictEqual(tpl("fraxken"),"hello fraxken");Template properties can be either index or key:
const{ strictEqual }=require("assert");consttpl=taggedString`hello ${"name"}`;strictEqual(tpl({name: "fraxken"}),"hello fraxken");createDirectory(path: string): void
Create a directory at the given path. This method trigger fs.mkdir but catch the ENOENT error if the directory exist.
assertEntity(entity: SlimIO.RawEntity): void
Assert an Entity Object.
assertEntity({name: "myEntity",description: "desc",parent: 10,descriptors: {}});assertMIC(mic: SlimIO.RawIdentityCard): void
Assert an MicIdentityCard Object.
assertMIC({name: "myMIC",entityId: 1,unit: "unit",interval: 10,max: 100,description: "desc"});assertAlarm(alarm: SlimIO.RawAlarm): void
Assert an Alarm Object.
assertAlarm({message: "message",severity: 1,entityId: 2,correlateKey: "test_corrKey"});assertCorrelateID(CID: SlimIO.CID): void
Assert a correlate id (Alarm correlate id). A CID is the addition of a Alarm ID and a Correlate key. The maximum length of the CID is 44.
assertCorrelateID("1#test_corrkey");assertCK(correlateKey: string): void
Assert a correlate key (Alarm correlate key). The length of CK must be between 1 and 35.
assertCK("test_corrkey");privateProperty(target: object, propertyKey: string|symbol|number, value?: any): void
Define a private (non-enumable, non-configurable) property on the target.
constassert=require("assert");constobj={};privateProperty(obj,"foo","bar");assert.deepEqual(Object.keys(obj),[]);obj.foo="world!";assert.strictEqual(obj.foo,"world!");assert.throws(()=>{deleteobj.foo;},{name: 'TypeError'});| Name | Refactoring | Security Risk | Usage |
|---|---|---|---|
| @slimio/is | Minor | Low | Type Checker |
MIT