@dimerapp/utils v2.0.1
DimerApp utils
Handy utilities to keep all other repos DRY and consistent
The utils library provides a handful of methods to be used across multiple dimer repos.
Installation
npm i @dimerapp/utils
# Yarn
yarn add @dimerapp/utils
Usage
const utils = require('@dimerapp/utils')
const basePath = __dirname
const distPath = 'dist' // optional
const paths = utils.paths(basePath, distPath)
const permalink = utils.permalink
const validator = utils.validator
nodeToString(node)
Convert Dimer content JSON node to a plain string
const { nodeToString } = require('@dimerapp/utils')
nodeToString(node)
Classes
Functions
Paths
Kind: global class
new Paths(basePath, distPath)
Returns paths to certain directories, required by dimer
Param | Type | Default |
---|---|---|
basePath | String | |
distPath | String | 'dist' |
Permalinks
Kind: global class
new Permalinks()
Generate, normalize and validate permalinks
Validator
Kind: global class
new Validator()
Exposes validation methods to validate different parts of the user input.
configFile() ⇒ String
Returns path to the config file
Kind: global function
docsPath(versionRelativePath) ⇒ String
Returns path for a given version inside the docs folder
Kind: global function
Param | Type |
---|---|
versionRelativePath | String |
distPath() ⇒ String
Returns path to the dist folder
Kind: global function
apiPath() ⇒ String
Returns path to the API folder
Kind: global function
assetsPath() ⇒ String
Returns path to the assets directory
Kind: global function
zonePath(zoneSlug) ⇒ String
Returns path to a given zone directory inside the api folder
Kind: global function
Param | Type |
---|---|
zoneSlug | String |
versionPath(zoneSlug, versioNo) ⇒ String
Returns path to a given version inside the api folder
Kind: global function
Param | Type |
---|---|
zoneSlug | String |
versioNo | String |
metaFile() ⇒ String
Returns path to the meta file inside the api folder
Kind: global function
searchIndexFile(zoneSlug, versionNo) ⇒ String
Returns path to the search index file inside the api folder
Kind: global function
Param | Type |
---|---|
zoneSlug | String |
versionNo | String |
docPath(zoneSlug, versionNo, jsonPath) ⇒ String
Returns path to the doc json file
Kind: global function
Param | Type |
---|---|
zoneSlug | String |
versionNo | String |
jsonPath | String |
makeJsonPath(filePath) ⇒ String
Makes the json path from the doc file path. Also it makes sure to keep the slashes consistent for deployment on unix systems
Kind: global function
Param | Type |
---|---|
filePath | String |
generateFromFileName(fileName) ⇒ String
Generates the permalink from the base name of a given file
Kind: global function
Param | Type |
---|---|
fileName | String |
normalize(permalink) ⇒ String
Normalize permalink by removing slashes around it. Must be used when matching two permalinks
Kind: global function
Param | Type |
---|---|
permalink | String |
validate(permalink) ⇒ void
Validate permalink to ensure the value is URL friendly
Kind: global function
Param | Type |
---|---|
permalink | String |
isSame(lhs, rhs) ⇒ Boolean
Returns a boolean telling if 2 permalinks are same. They will be normalized before the check
Kind: global function
Param | Type |
---|---|
lhs | String |
rhs | String |
validateZoneSlug(slug) ⇒ void
Validates the zone slug to make sure it's URL and folder name friendly
Kind: global function
Throws:
- Error If slug has unallowed chars
Param | Type |
---|---|
slug | String |
validateVersionNumber(no) ⇒ void
Validates the version number to make sure it's URL and folder name friendly
Kind: global function
Throws:
- Error If version no has unallowed chars
Param | Type |
---|---|
no | String |
Change log
The change log can be found in the CHANGELOG.md file.
Contributing
Everyone is welcome to contribute. Please take a moment to review the contributing guidelines.
Authors & License
thetutlage and contributors.
MIT License, see the included MIT file.