npm.io
0.8.25 • Published 2 years ago

@wizzi/utils

Licence
—
Version
0.8.25
Deps
14
Size
1.6 MB
Vulns
0
Weekly
0

@wizzi/utils

Utility library for the wizzi factory

Work still in progress

Availability of features will be announced

on Twitter and Facebook

vfile - virtual file system

var vfile = require('@wizzi/utils').vfile
vfileInst - create a virtual file system instance
var vfileInst = vfile([fsimpl])
* `fsimpl` `Object` Default: NodeJS fs object or fs-graceful if available. 
vfileInst.read(path_string, options[, callback])
* `path_string` 
* `options` `Object` 
* `callback` `Function` If absent the call is sync. * `err` 
    * `content` 
vfileInst.write(path_string, content, options[, callback])
* `path_string` 
* `content` `String` 
* `options` `Object` 
* `callback` `Function` If absent the call is sync. When the call is sync if `fsimpl` does not implement `readFileSync` throw Error.

    * `err` 
    * `content` 
vfileInst.readJSON(path_string, options[, callback])
vfileInst.writeJSON(path_string, obj, options[, callback])

The fsimpl - interface

This interface must be implemented by file system objectsthat expose their documents to the wizzi factory.

The `Sync` methods are optional, but a `Sync` call to anfsimpl that does not implement it throw an Error.

stat(path, callback)

The returned `stats` object must implement: stats.isFile()stats.isDirectory()

statSync(path)

The returned `stats` object must implement: stats.isFile()stats.isDirectory()

lstat(path, callback)

The returned `stats` object must implement: stats.isFile()stats.isDirectory()

lstatSync(path)

The returned `stats` object must implement: stats.isFile()stats.isDirectory()

readFile(path[, options], callback)
readFileSync(path[, options])
writeFile(path, content[, options], callback)
writeFileSync(path, content[, options])
readdir(path[, options], callback)
readdirSync(path[, options])
mkdir(path[, options], callback)
mkdirSync(path[, options])

verify - helper object

var verify = require('@wizzi/utils').verify

verify - type checks

verify.isDefined(item)
verify.isNullOrUndefined(item)
verify.isObject(item)
verify.isArray(item)
verify.isFunction(item)
verify.isNumber(item)
verify.isBoolean(item)
verify.isDate(item)
verify.isString(item)
verify.isEmpty(item)
verify.isNotEmpty(item)
verify.isPrimitive(item)
verify.isRegExp(item)
verify.isError(item)
verify.isAbsolutePath(item)
verify.isIttfMacro(item)

verify.convert(value, type[, unquote])

* `value` `String` If `@@null` return null; if `@@undefined` return undefined. 
* `type` `String` One-of string, integer, float, boolean, date 
* `options` `Object` 

verify.canConvertTo(value, type)

* `value` `String` 
* `type` `String` One-of string, integer, float, boolean, date 

verify - validations

verify.isEmail(value)
verify.isEmails(value)
verify.isMinLength(value, length)
verify.isMaxLength(value, length)
verify.isExactLength(value, length)
verify.isGreaterThan(value, test)
verify.isLessThan(value, test)
verify.isGreaterEqualThan(value, test)
verify.isLessEqualThan(value, test)
verify.isAlpha(value)
verify.isAlphaNumeric(value)
verify.isIp(value)
verify.isBase64(value)
verify.isUrl(value)
verify.isCreditCard(value)
verify.isGreaterThanDate(value, date)
verify.isLessThanDate(value, date)
verify.isGreaterEqualDate(value, date)
verify.isLessEqualDate(value, date)

verify - errors

verify.error([inner,] [obj,] message, [arg-1[, arg-2[, arg-...]]])
verify.fatal(err[, code])

folderScanner - ittf documents folder scanner

var folderScanner = require('@wizzi/utils').folderScanner

folderScanner.scan(folderPath[, options])

* `folderPath` `uri` 
* `options` `Object` 
* returns the root IttfFsNode of the 'folderPath' with its descendant folders as children. 

ittfDocumentGraph - enhanced mTree with import, export, analize capabilities

var ittfDocumentGraph = require('@wizzi/utils').ittfDocumentGraph
ittfDocumentGraph.loadFrom(path_string)
* `path_string` `uri` The uri of the ittf document that will be loaded as is (no composition, non template evaluation) 
* returns an ittfDocumentGraph instance 
ittfDocumentGraph.loadFrom(mTree)
* `mTree` `Object` An existent final or partial mTree. 
* returns an ittfDocumentGraph instance 

ittfHtmlPrettifier - ittf html formatter for documentation

var ittfHtmlPrettifier = require('@wizzi/utils').ittfHtmlPrettifier

ittfHtmlPrettifier(rootNode[, options])

* `rootNode` `Object` ittfDocumentGraph instance 
* `options` `Object` 

jsHtmlPrettifier - javascript html formatter for documentation

var jsHtmlPrettifier = require('@wizzi/utils').jsHtmlPrettifier

jsHtmlPrettifier(script[, options])

* `script` `String` javascript code 
* `options` `Object` 

Ittf scanner Feature

var ittfScanner = require('@wizzi/utils').ittfScanner

Ittf graph Feature

var ittfGraph = require('@wizzi/utils').ittfGraph

Filesystem Feature

var fSystem = require('@wizzi/utils').fSystem

Prettify Feature

var pretty = require('@wizzi/utils').pretty

Lorem ipsum Feature

var lorem = require('@wizzi/utils').lorem

Crypto Feature

var crypto = require('@wizzi/utils').crypto

Helpers Feature

var helpers = require('@wizzi/utils').helpers

Wizzi

One machinery, many productions.

Project page

Built With

* [Nodejs](https://nodejs.org)

* [Wizzi](https://github.com/stfnbssl/wizzi)

License

This project is licensed under the MIT License - see the license.txt for details.