UNPKG

@synotech/utils

Version:

a collection of utilities for internal use

1,484 lines (935 loc) 28.2 kB
<!-- Generated by documentation.js. Update this documentation by updating the source code. --> ### Table of Contents - [](#) - [validateEmail](#validateemail) - [Parameters](#parameters) - [Examples](#examples) - [validateEmailBulk](#validateemailbulk) - [Parameters](#parameters-1) - [Examples](#examples-1) - [email](#email) - [tld](#tld) - [Parameters](#parameters-2) - [atIndex](#atindex) - [Cryptography](#cryptography) - [Examples](#examples-2) - [random](#random) - [Parameters](#parameters-3) - [Examples](#examples-3) - [salt](#salt) - [Examples](#examples-4) - [iv](#iv) - [signature](#signature) - [Examples](#examples-5) - [signatureVerify](#signatureverify) - [Parameters](#parameters-4) - [Examples](#examples-6) - [address](#address) - [Examples](#examples-7) - [getKeys](#getkeys) - [Parameters](#parameters-5) - [encryptSingle](#encryptsingle) - [Parameters](#parameters-6) - [Examples](#examples-8) - [encrypt](#encrypt) - [Parameters](#parameters-7) - [Examples](#examples-9) - [decrypt](#decrypt) - [Parameters](#parameters-8) - [Examples](#examples-10) - [password](#password) - [Parameters](#parameters-9) - [Examples](#examples-11) - [jwtIssue](#jwtissue) - [Parameters](#parameters-10) - [Examples](#examples-12) - [jwtVerify](#jwtverify) - [Parameters](#parameters-11) - [Examples](#examples-13) - [privateKey](#privatekey) - [Examples](#examples-14) - [publicKey](#publickey) - [Parameters](#parameters-12) - [Examples](#examples-15) - [publicKeyVerify](#publickeyverify) - [Parameters](#parameters-13) - [Examples](#examples-16) - [isBase64Encoded](#isbase64encoded) - [Parameters](#parameters-14) - [Examples](#examples-17) - [base64Encode](#base64encode) - [Parameters](#parameters-15) - [Examples](#examples-18) - [base64Decode](#base64decode) - [Parameters](#parameters-16) - [Examples](#examples-19) - [NODE\_CIPHER](#node_cipher) - [AUTH\_TAG\_BYTE\_LEN](#auth_tag_byte_len) - [IV\_BYTE\_LEN](#iv_byte_len) - [KEY\_BYTE\_LEN](#key_byte_len) - [SALT\_BYTE\_LEN](#salt_byte_len) - [get](#get) - [Parameters](#parameters-17) - [invoiceTotals](#invoicetotals) - [Parameters](#parameters-18) - [Examples](#examples-20) - [currencyParse](#currencyparse) - [Parameters](#parameters-19) - [Examples](#examples-21) - [phoneNumberGetInternationalString](#phonenumbergetinternationalstring) - [Parameters](#parameters-20) - [Examples](#examples-22) - [toJSON](#tojson) - [Parameters](#parameters-21) - [Examples](#examples-23) - [initials](#initials) - [Parameters](#parameters-22) - [Examples](#examples-24) - [currencyMask](#currencymask) - [Parameters](#parameters-23) - [Examples](#examples-25) - [isTrue](#istrue) - [Parameters](#parameters-24) - [Examples](#examples-26) - [sleep](#sleep) - [Parameters](#parameters-25) - [Examples](#examples-27) - [phoneNumberFormatString](#phonenumberformatstring) - [Parameters](#parameters-26) - [Examples](#examples-28) - [emailGetFromString](#emailgetfromstring) - [Parameters](#parameters-27) - [Examples](#examples-29) - [searchObject](#searchobject) - [Parameters](#parameters-28) - [Examples](#examples-30) - [truncate](#truncate) - [Parameters](#parameters-29) - [Examples](#examples-31) - [dateFormat](#dateformat) - [Parameters](#parameters-30) - [Examples](#examples-32) - [publicKeySetString](#publickeysetstring) - [Parameters](#parameters-31) - [Examples](#examples-33) - [publicKeyGetString](#publickeygetstring) - [Parameters](#parameters-32) - [Examples](#examples-34) - [bloodGroups](#bloodgroups) - [accountsAsset](#accountsasset) - [accountsEquity](#accountsequity) - [accountsPayable](#accountspayable) - [accountsLiability](#accountsliability) - [accountsReceivable](#accountsreceivable) - [currencyDenomination](#currencydenomination) - [estimateTerm](#estimateterm) - [invoiceTerm](#invoiceterm) - [itemCategory](#itemcategory) - [employmentStatus](#employmentstatus) - [customerTypes](#customertypes) - [bankAccountType](#bankaccounttype) - [dateFormats](#dateformats) - [contactType](#contacttype) - [expenseStatus](#expensestatus) - [salaryFrequency](#salaryfrequency) - [leavePolicy](#leavepolicy) - [languages](#languages) - [taxTypes](#taxtypes) - [expenseType](#expensetype) - [gender](#gender) - [documentSize](#documentsize) - [deliveryNoteStatus](#deliverynotestatus) - [creditNoteStatus](#creditnotestatus) - [invoiceStatus](#invoicestatus) - [estimateStatus](#estimatestatus) - [docTypes](#doctypes) - [months](#months) - [monthDays](#monthdays) - [industries](#industries) - [monthNameNumber](#monthnamenumber) - [orderStatus](#orderstatus) - [paymentMethods](#paymentmethods) - [deliveryMethods](#deliverymethods) - [paymentStatus](#paymentstatus) - [paymentTerms](#paymentterms) - [productTypes](#producttypes) - [alphabet](#alphabet) - [productUnits](#productunits) - [quoteStatus](#quotestatus) - [recurringFrequency](#recurringfrequency) - [salutations](#salutations) - [weekdays](#weekdays) - [timezones](#timezones) - [payoutMethod](#payoutmethod) - [paymentMethod](#paymentmethod) - [transactionStatus](#transactionstatus) ## App dictionary ## validateEmail This method validates email address ### Parameters * `contact` **[Object][167]**&#x20; * `contact.email` **[String][168]** the email to be validated ### Examples ```javascript const isValid = await validateEmail({ email: 'user@example.com', }) ``` Returns **[boolean][169]** {Promise<boolean>} a boolean value indicating if the email is valid or not ## validateEmailBulk This method validates all supplied email addresses. ### Parameters * `mailingList` **[Array][170]** array of email objects to be verified ### Examples ```javascript const { data } = await validateEmailBulk( { email: 'user1@example.com', }, { email: 'user2@example.com', }, ]) ``` Returns **[Array][170]** object consisting of valid and invalid email addresses { valid: \[], invalid: \[] } ## email Check if the email contains more than 3 numeric characters. If it does, throw an error. ## tld Validate TLD ### Parameters * `email` **any**&#x20; ## atIndex remove email modifier ## Cryptography The Cryptography class provides methods for encryption, decryption, signing, and verification of data using various cryptographic algorithms. ### Examples ```javascript const cryptography = new Cryptography({ keys: ['key1', 'key2', 'key3'], encryptKey: '', encryptKeySingle: '', }) const encryptedData = cryptography.encrypt('Hello, World!') const decryptedData = cryptography.decrypt(encryptedData) const signature = cryptography.signature() const isVerified = cryptography.signatureVerify(signature) // creates a KrugerGold Token Address const address = cryptography.address() const encodedData = cryptography.base64Encode('Hello, World!') const decodedData = cryptography.base64Decode(encodedData) const isEncodedOrNot = cryptography.isBase64Encoded(encodedData) cryptography.get('strong_pw') // returns i=SQ_qa3W[<RxoM cryptography.random({ length: 20, useLowerCase: true, useUpperCase: true, useNumbers: true, useSpecial: true, useHex: false }) // returns *ajz:74,*ak0 ``` ### random #### Parameters * `options` **RandomOptions**&#x20; #### Examples ```javascript cryptography.random({ length: 20, useLowerCase: true, useUpperCase: true, useNumbers: true, useSpecial: true, useHex: false }) // returns *ajz:74,*ak0 // Decent Passwords - Good for nothing really, public accounts and other non-critical things. cryptography.get('decent_pw') // returns rXjdx36oro // Strong Passwords - Robust enough to keep your web hosting account secure. cryptography.get('strong_pw') // returns i=SQ_qa3W[<RxoM // Fort Knox Passwords - Secure enough for almost anything, like root or administrator passwords. cryptography.get('ft_knox_pw') // returns P}U%H\OOYAYb;wc"3hgI,3Lz[gd-z] // Encryption Keys - Can be used for any other 256-bit key requirement. cryptography.get('ci_key') // returns CeXHpM3nDgzdv0o3AkMCs3OuxzepLGW8 // 160-bit WPA Key cryptography.get('160_wpa') // returns oHI#gR8z#h7BS>cZ!zH( // 504-bit WPA Key cryptography.get('504_wpa') // returns <os[g`s}u06jqt"Ea]t11,HsI[UipHD)%F";:9RhJ@kTU8GknLpMAXtoCzsJjT` // 64-bit WEP Keys cryptography.get('64_wep') // returns 8911B // 128-bit WEP Keys cryptography.get('128_wep') // returns 9F4E4F933BCCC // 152-bit WEP Keys cryptography.get('152_wep') // returns 695E1EE96E483961 // 256-bit WEP Keys cryptography.get('256_wep') // returns AC7E866246BA6B71BF5D88A6861AB ``` Returns **[string][168]**&#x20; ### salt #### Examples ```javascript const salt = cryptography.salt() console.log(salt) // Output: // 5eb63bbbe01eeed093cb22bb8f5acdc3 ``` Returns **any** The generated salt value as a hexadecimal string. ### iv Returns **any** The generated IV as a Buffer. ### signature #### Examples ```javascript const signature = cryptography.signature() console.log(signature) // Output: // 6a3a4b5c6d7e8f9a ``` Returns **any** The generated signature as a string. ### signatureVerify #### Parameters * `signature` **[string][168]** The signature to verify. #### Examples ```javascript const signature = '6a3a4b5c6d7e8f9a' const isValid = cryptography.signatureVerify(signature) console.log(isValid) // Output: // true ``` * Throws **any** An error if the signature contains unknown identifiers. Returns **any** True if the signature is valid, false otherwise. ### address #### Examples ```javascript const address = cryptography.address() console.log(address) // Output: // kK5HCVlAmmEnnlKh6wVX9TiJ6YGI7FCl ``` * Throws **any** An error if an error occurs during address generation. Returns **any** The generated address as a string. ### getKeys #### Parameters * `count` **[number][171]?** The number of keys to generate. Defaults to 12. Returns **any** An array of randomly generated keys. ### encryptSingle #### Parameters * `data` **any** The data to encrypt. #### Examples ```javascript const crypto = new Cryptography(['key1', 'key2', 'key3'], 'encryptKey', 'encryptKeySingle') const data = 'Hello, World!' const encryptedData = cryptography.encryptSingle(data) console.log(encryptedData) // Output: // 5eb63bbbe01eeed093cb22bb8f5acdc3 ``` Returns **any** The encrypted data as a base64-encoded string. ### encrypt #### Parameters * `text` **any** The text to encrypt. #### Examples ```javascript const text = 'Hello, World!' const encryptedText = cryptography.encrypt(text) console.log(encryptedText) // Output: // 6a3a4b5c6d7e8f9a:6a3a4b5c6d7e8f9a:6a3a4b5c6d7e8f9a ``` * Throws **any** An error if an error occurs during encryption. Returns **any** The encrypted text as a string. ### decrypt #### Parameters * `encryptedText` **any** The encrypted text to decrypt. #### Examples ```javascript const encryptedText = '6a3a4b5c6d7e8f9a:6a3a4b5c6d7e8f9a:6a3a4b5c6d7e8f9a' const decryptedText = cryptography.decrypt(encryptedText) console.log(decryptedText) // Output: // Hello, World! ``` * Throws **any** An error if an error occurs during decryption. Returns **any** The decrypted text as a string. ### password #### Parameters * `password` **[string][168]** The password to hash. * `salt` **[string][168]** The salt value to use for hashing. #### Examples ```javascript const password = 'myPassword' const salt = cryptography.salt() const hashedPassword = cryptography.password(password, salt) console.log(hashedPassword) // Output: // 5ebe2294ecd0e0f08eab7690d2a6ee69 ``` * Throws **any** An error if an error occurs during password hashing. Returns **any** The hashed password as a hexadecimal string. ### jwtIssue #### Parameters * `payload` **any** The payload to include in the JWT. (optional, default `{}`) * `expiry` **[string][168]** The expiry time for the JWT. #### Examples ```javascript const payload = { sub: '1234567890', name: 'John Doe', iat: 1516239022 } const expiry = '1h' const token = cryptography.jwtIssue(payload, expiry) console.log(token) // Output: // eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c ``` * Throws **any** An error if an error occurs during JWT issuance. Returns **any** The issued JWT as a string. ### jwtVerify #### Parameters * `token` **[string][168]** The JWT to verify. #### Examples ```javascript const token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c' const payload = cryptography.jwtVerify(token) console.log(payload) // Output: // { // sub: '1234567890', // name: 'John Doe', // iat: 1516239022 // } ``` * Throws **any** An error if the JWT is invalid or an error occurs during verification. Returns **any** The decoded payload if the JWT is valid. ### privateKey #### Examples ```javascript const privateKey = cryptography.privateKey() console.log(privateKey) // Output: // -----BEGIN PRIVATE KEY----- // MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIBA4GCAWqjggFMMIIB // ... // -----END PRIVATE KEY----- ``` * Throws **any** An error if an error occurs during private key generation. Returns **any** The generated private key as a PEM-encoded string. ### publicKey #### Parameters * `privateKey` **[string][168]** The private key to generate the public key from. #### Examples ```javascript const privateKey = `-----BEGIN PRIVATE KEY----- MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDZ1Ck6vJQK0J5T ... -----END PRIVATE KEY-----` const publicKey = cryptography.publicKey(privateKey) console.log(publicKey) // Output: // -----BEGIN PUBLIC KEY----- // MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2dQpOryUCtCeUz8vZ6zB // ... // -----END PUBLIC KEY----- ``` Returns **any** The generated public key as a PEM-encoded string. ### publicKeyVerify #### Parameters * `$0` **{privateKey: [string][168], publicKey: [string][168]}**&#x20; * `$0.privateKey` &#x20; * `$0.publicKey` &#x20; * `privateKey` The private key used to sign the data. * `publicKey` The public key used to verify the signature. #### Examples ```javascript const privateKey = `-----BEGIN PRIVATE KEY----- MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDZ1Ck6vJQK0J5T ... -----END PRIVATE KEY-----` const publicKey = `-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2dQpOryUCtCeUz8vZ6zB ... -----END PUBLIC KEY-----` const isAuthentic = cryptography.publicKeyVerify({ privateKey, publicKey }) console.log(isAuthentic) // Output: // true ``` * Throws **any** An error if the public key fails to authenticate. Returns **any** True if the public key is authentic, false otherwise. ### isBase64Encoded #### Parameters * `string` **[string][168]** The string to check. #### Examples ```javascript const encodedString = 'SGVsbG8sIFdvcmxkIQ==' const isEncoded = cryptography.isBase64Encoded(encodedString) console.log(isEncoded) // Output: // true ``` Returns **any** True if the string is base64 encoded, false otherwise. ### base64Encode #### Parameters * `data` **[string][168]** The data to encode. #### Examples ```javascript const data = 'Hello, World!' const encodedData = cryptography.base64Encode(data) console.log(encodedData) // Output: // SGVsbG8sIFdvcmxkIQ== ``` Returns **any** The base64-encoded string. ### base64Decode #### Parameters * `encodedString` **[string][168]** The base64-encoded string to decode. #### Examples ```javascript const encodedString = 'SGVsbG8sIFdvcmxkIQ==' const decodedString = cryptography.base64Decode(encodedString) console.log(decodedString) // Output: // Hello, World! ``` Returns **any** The decoded string. ## NODE\_CIPHER GCM is an authenticated encryption mode that not only provides confidentiality but also provides integrity in a secured way. ## AUTH\_TAG\_BYTE\_LEN 128 bit auth tag is recommended for GCM. ## IV\_BYTE\_LEN NIST recommends 96 bits or 12 bytes IV for GCM to promote interoperability, efficiency, and simplicity of design. ## KEY\_BYTE\_LEN Note: 256 (in ALG name) is key size. NODE size for AES is always 128. ## SALT\_BYTE\_LEN To prevent rainbow table attacks. ## get ### Parameters * `strength` The strength of the key to generate. decent\_pw|strong\_pw|ft\_knox\_pw|ci\_key|160\_wpa|504\_wpa|64\_wep|128\_wep|152\_wep|256\_wep ## invoiceTotals Calculates the invoice totals based on the provided parameters. ### Parameters * `doc` The invoice totals document. * `docProducts` An array of products in the invoice. * `taxes` An array of taxes applied to the invoice. ### Examples ```javascript const doc = { number: 10001, objectId: 'testDocObject', discountAmount: 0, discountPercentage: 0, taxableSubTotal: 438.5, paid: 0, adjustment: 0, shipping: 0, } const docProducts = [{ qty: 2, price: 100, tax: 15 }] const taxes = [ { name: 'VAT', category: 'sales', value: 15, }, { name: 'None', category: 'sales', value: 0, }, ] ``` Returns **any** A Promise that resolves to an object containing the calculated invoice totals. ## currencyParse This method validates email address ### Parameters * `number` **[String][168]** the number or string instance to parse as a floating currency string ### Examples ```javascript currencyParse('123.43') // return '123.43' currencyParse('12xs3.3') // return '123.30' ``` Returns **[string][168]** {String} a boolean value indicating if the email is valid or not ## phoneNumberGetInternationalString Returns the international format of a phone number. ### Parameters * `phoneNumberObject` An object containing the phone number and country code. ### Examples ```javascript const phoneNumberObject = { phoneNumber: '+1234567890', countryCode: 'US', } const internationalPhoneNumber = phoneNumberGetInternationalString(phoneNumberObject); console.log(internationalPhoneNumber); // Output: { national: '1234567890', international: '+1 234-567-890' } ``` Returns **any** The international format of the phone number as a string. ## toJSON This function returns a well structured json object ### Parameters * `object` **[string][168]** a stringified object in string format ### Examples ```javascript toJSON('{"name":"John Doe"}') // returns {"name": "John Doe"} ``` Returns **[object][167]** {Object} a well structured json object ## initials This method returns initials from a given name string ### Parameters * `alt` **[string][168]** a name string to get initials from ### Examples ```javascript initials('Zeal Murapa') // returns ZM ``` Returns **[string][168]** {String} a string of initials ## currencyMask This method validates email address ### Parameters * `number` **[number][171]** a number to mask as currency ### Examples ```javascript currencyMask(1000) // returns 1,000 ``` Returns **[string][168]** {String} a string of currency ## isTrue This method is a truthy check for a given value ### Parameters * `value` **any** a stringified object in string format ### Examples ```javascript isTrue('') // returns false ``` Returns **[boolean][169]** {Boolean} a boolean value ## sleep This function sleeps for a given time ### Parameters * `ms` **ms** a number in milliseconds ### Examples ```javascript await sleep(1000) // sleeps for 1 second ``` Returns **[promise][172]** {Promise} blocking async promise ## phoneNumberFormatString This function formats a phone number string to international format ### Parameters * `numberString` **[string][168]** a phone number string ### Examples ```javascript phoneNumberFormatString('+276925411223') // returns +27 692 541 1223 ``` Returns **[object][167]** {String} a formatted phone number string ## emailGetFromString This function extracts an email address from a string ### Parameters * `text` **[string][168]** a string containing an email address ### Examples ```javascript emailGetFromString('This is my email address: john@example.com') ``` Returns **[string][168]** {String} an email address ## searchObject This function searches an array of objects for a query string ### Parameters * `query` **[string][168]** a string to search for * `objects` **[object][167]** an array of objects to search ### Examples ```javascript searchObject('John', [{name: 'John Doe'}, {name: 'Jane Doe'}]) // returns [{name: 'John Doe'}] ``` Returns **[object][167]** {Array} a well structured json object ## truncate This method validates email address ### Parameters * `str` **[string][168]** a string to truncate ### Examples ```javascript truncate('This is a long string', 10) // returns 'This is a...' ``` Returns **[string][168]** {String} a truncated string ## dateFormat This method validates email address ### Parameters * `date` **[date][173]** a date object * `null` @param {"full" | "long" | "short" | "time"} format - The format of the output. ### Examples ```javascript dateFormat(new Date(), 'full') // returns 'Sun, Jan 3rd 2021 20:00:00' ``` Returns **[object][167]** {Object} a well structured json object ## publicKeySetString This function returns a public key string with the header and footer ### Parameters * `key` **[string][168]** a public key string without the header and footer ### Examples ```javascript publicKeySetString('MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA') // returns -----BEGIN PUBLIC KEY----- ... ``` Returns **[string][168]** {string} a public key string with the header and footer ## publicKeyGetString This function returns a public key string without the header and footer ### Parameters * `key` **[string][168]** a stringified object in string format ### Examples ```javascript publicKeyGetString('-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA) ``` Returns **[string][168]** {string} a public key string without the header and footer ## bloodGroups A list of bloodGroups ## accountsAsset A list of accountsAsset ## accountsEquity A list of accountsEquity ## accountsPayable A list of accountsPayable ## accountsLiability A list of accountsLiability ## accountsReceivable A list of accountsReceivable ## currencyDenomination A list of currencyDenomination ## estimateTerm A list of estimateTerm ## invoiceTerm A list of invoiceTerm ## itemCategory A list of itemCategory ## employmentStatus A list of employmentStatus ## customerTypes A list of customerTypes ## bankAccountType A list of bankAccountType ## dateFormats A list of dateFormats ## contactType A list of contactType ## expenseStatus A list of expenseStatus ## salaryFrequency A list of salaryFrequency ## leavePolicy A list of leavePolicy ## languages A list of alphabet ## taxTypes A list of taxTypes ## expenseType A list of expenseType ## gender A list of gender ## documentSize A list of documentSize ## deliveryNoteStatus A list of deliveryNoteStatus ## creditNoteStatus A list of creditNoteStatus ## invoiceStatus A list of invoiceStatus ## estimateStatus A list of estimateStatus ## docTypes A list of docTypes ## months A list of months ## monthDays A list of monthDays ## industries A list of industries ## monthNameNumber A list of monthNameNumber ## orderStatus A list of orderStatus ## paymentMethods A list of paymentMethods ## deliveryMethods A list of deliveryMethods ## paymentStatus A list of paymentStatus ## paymentTerms A list of paymentTerms ## productTypes A list of productTypes ## alphabet A list of alphabet ## productUnits A list of productUnits ## quoteStatus A list of quoteStatus ## recurringFrequency A list of recurringFrequency ## salutations A list of salutations ## weekdays A list of weekdays ## timezones A list of timezones ## payoutMethod A list of payment methods ## paymentMethod A list of payment methods ## transactionStatus A list of transaction status Returns **[object][167]** {Country} a country object [1]: # [2]: #-1 [3]: #validateemail [4]: #parameters [5]: #examples [6]: #validateemailbulk [7]: #parameters-1 [8]: #examples-1 [9]: #email [10]: #tld [11]: #parameters-2 [12]: #atindex [13]: #cryptography [14]: #examples-2 [15]: #random [16]: #parameters-3 [17]: #examples-3 [18]: #salt [19]: #examples-4 [20]: #iv [21]: #signature [22]: #examples-5 [23]: #signatureverify [24]: #parameters-4 [25]: #examples-6 [26]: #address [27]: #examples-7 [28]: #getkeys [29]: #parameters-5 [30]: #encryptsingle [31]: #parameters-6 [32]: #examples-8 [33]: #encrypt [34]: #parameters-7 [35]: #examples-9 [36]: #decrypt [37]: #parameters-8 [38]: #examples-10 [39]: #password [40]: #parameters-9 [41]: #examples-11 [42]: #jwtissue [43]: #parameters-10 [44]: #examples-12 [45]: #jwtverify [46]: #parameters-11 [47]: #examples-13 [48]: #privatekey [49]: #examples-14 [50]: #publickey [51]: #parameters-12 [52]: #examples-15 [53]: #publickeyverify [54]: #parameters-13 [55]: #examples-16 [56]: #isbase64encoded [57]: #parameters-14 [58]: #examples-17 [59]: #base64encode [60]: #parameters-15 [61]: #examples-18 [62]: #base64decode [63]: #parameters-16 [64]: #examples-19 [65]: #node_cipher [66]: #auth_tag_byte_len [67]: #iv_byte_len [68]: #key_byte_len [69]: #salt_byte_len [70]: #get [71]: #parameters-17 [72]: #invoicetotals [73]: #parameters-18 [74]: #examples-20 [75]: #currencyparse [76]: #parameters-19 [77]: #examples-21 [78]: #phonenumbergetinternationalstring [79]: #parameters-20 [80]: #examples-22 [81]: #tojson [82]: #parameters-21 [83]: #examples-23 [84]: #initials [85]: #parameters-22 [86]: #examples-24 [87]: #currencymask [88]: #parameters-23 [89]: #examples-25 [90]: #istrue [91]: #parameters-24 [92]: #examples-26 [93]: #sleep [94]: #parameters-25 [95]: #examples-27 [96]: #phonenumberformatstring [97]: #parameters-26 [98]: #examples-28 [99]: #emailgetfromstring [100]: #parameters-27 [101]: #examples-29 [102]: #searchobject [103]: #parameters-28 [104]: #examples-30 [105]: #truncate [106]: #parameters-29 [107]: #examples-31 [108]: #dateformat [109]: #parameters-30 [110]: #examples-32 [111]: #publickeysetstring [112]: #parameters-31 [113]: #examples-33 [114]: #publickeygetstring [115]: #parameters-32 [116]: #examples-34 [117]: #bloodgroups [118]: #accountsasset [119]: #accountsequity [120]: #accountspayable [121]: #accountsliability [122]: #accountsreceivable [123]: #currencydenomination [124]: #estimateterm [125]: #invoiceterm [126]: #itemcategory [127]: #employmentstatus [128]: #customertypes [129]: #bankaccounttype [130]: #dateformats [131]: #contacttype [132]: #expensestatus [133]: #salaryfrequency [134]: #leavepolicy [135]: #languages [136]: #taxtypes [137]: #expensetype [138]: #gender [139]: #documentsize [140]: #deliverynotestatus [141]: #creditnotestatus [142]: #invoicestatus [143]: #estimatestatus [144]: #doctypes [145]: #months [146]: #monthdays [147]: #industries [148]: #monthnamenumber [149]: #orderstatus [150]: #paymentmethods [151]: #deliverymethods [152]: #paymentstatus [153]: #paymentterms [154]: #producttypes [155]: #alphabet [156]: #productunits [157]: #quotestatus [158]: #recurringfrequency [159]: #salutations [160]: #weekdays [161]: #timezones [162]: #payoutmethod [163]: #paymentmethod [164]: #transactionstatus [165]: #country [166]: #examples-35 [167]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object [168]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String [169]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean [170]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array [171]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number [172]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise [173]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Date