@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/utilsUsage
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.validatornodeToString(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.