Skip to content

Latest commit

 

History

History
423 lines (282 loc) · 12.7 KB

File metadata and controls

423 lines (282 loc) · 12.7 KB

Classes

Epitelete

PERF Middleware for Editors in the Proskomma Ecosystem

Typedefs

contentElementPerf : object
blockOrGraftPerf : object
perfSequence : object
perfDocument : object
bookCode : string
bookHistory : Object
history : Object.<string, bookHistory>
Proskomma

Proskomma instance

PipelineHandler

PipelineHandlers instance

Epitelete

PERF Middleware for Editors in the Proskomma Ecosystem

Kind: global class


new Epitelete(args)

Returns: Epitelete - Epitelete instance

Param Type Default Description
args Object constructor args
[args.proskomma] Proskomma a proskomma instance
args.docSetId number a docSetId
[args.options] object {} setting params
[args.options.historySize] number 10 size of history buffer

epitelete.history : history

Kind: instance property of Epitelete


epitelete.clearPerf() ⇒ void

Clears docs history

Kind: instance method of Epitelete
Returns: void - void


epitelete.sideloadPerf(bookCode, perfDocument) ⇒ Promise.<perfDocument>

Loads given perf into memory

Kind: instance method of Epitelete
Returns: Promise.<perfDocument> - same sideloaded PERF document

Param Type Description
bookCode string
perfDocument perfDocument PERF document

epitelete.fetchPerf(bookCode) ⇒ Promise.<perfDocument>

Fetches document from proskomma instance

Kind: instance method of Epitelete
Returns: Promise.<perfDocument> - fetched PERF document

Param Type
bookCode string

epitelete.readPerf(bookCode, [options]) ⇒ Promise.<perfDocument>

Gets document from memory or fetches it if proskomma is set

Kind: instance method of Epitelete
Returns: Promise.<perfDocument> - found or fetched PERF document

Param Type Description
bookCode string
[options] object
[options.readPipeline] string pipeline name

epitelete.writePerf(bookCode, sequenceId, perfSequence) ⇒ Promise.<perfDocument>

Merges a sequence with the document and saves the new modified document.

Kind: instance method of Epitelete
Returns: Promise.<perfDocument> - modified PERF document

Param Type Description
bookCode string
sequenceId number id of modified sequence
perfSequence perfSequence modified sequence

epitelete.checkPerfSequence(perfSequence) ⇒ Array.<string>

?Checks Perf Sequence

Kind: instance method of Epitelete
Returns: Array.<string> - array of warnings

Param Type
perfSequence perfSequence

epitelete.localBookCodes() ⇒ Array.<string>

Get array of book codes from history

Kind: instance method of Epitelete
Returns: Array.<string> - array of bookCodes


epitelete.bookHeaders() ⇒ Object

Gets the available books for current docSet.

Kind: instance method of Epitelete
Returns: Object - an object with book codes as keys, and values contain book header data


epitelete.canUndo(bookCode) ⇒ boolean

Checks if able to undo from specific book history

Kind: instance method of Epitelete

Param Type
bookCode string

epitelete.canRedo(bookCode) ⇒ boolean

Checks if able to redo from specific book history

Kind: instance method of Epitelete

Param Type
bookCode string

epitelete.undoPerf(bookCode) ⇒ Promise.<?perfDocument>

Gets previous document from history

Kind: instance method of Epitelete
Returns: Promise.<?perfDocument> - PERF document or null if can not undo

Param Type
bookCode string

epitelete.redoPerf(bookCode) ⇒ Promise.<?perfDocument>

Gets next document from history

Kind: instance method of Epitelete
Returns: Promise.<?perfDocument> - PERF document or null if can not redo

Param Type
bookCode string

epitelete.readUsfm(bookCode) ⇒ Promise.<string>

Gets document from memory and converts it to usfm

Kind: instance method of Epitelete
Returns: Promise.<string> - converted usfm

Param Type
bookCode string

epitelete.makeDocumentReport(bookCode, reportName, data) ⇒ Promise.<array>

Generates and returns a report via a transform pipeline

Kind: instance method of Epitelete
Returns: Promise.<array> - A report

Param Type
bookCode string
reportName string
data object

epitelete.makeDocumentsReport(reportName, data) ⇒ Promise.<object>

Generates and returns a report for each document via a transform pipeline

Kind: instance method of Epitelete
Returns: Promise.<object> - reports for each documents with bookCode as the key

Param Type
reportName string
data object

contentElementPerf : object

Kind: global typedef
Properties

Name Type
type string
[number] string
[subtype] "verses" | "xref" | "footnote" | "noteCaller"
[target] string
[nBlocks] number
[previewText] string

blockOrGraftPerf : object

Kind: global typedef
Properties

Name Type
type "block" | "graft"
subtype string
[target] string
[nBlocks] number
[previewText] string
[firstBlockScope] string
[content] Array.<(string|contentElementPerf)>

perfSequence : object

Kind: global typedef
Properties

Name Type
type "main" | "introduction" | "introTitle" | "IntroEndTitle" | "title" | "endTitle" | "heading" | "remark" | "sidebar" | "table" | "tree" | "kv" | "footnote" | "noteCaller" | "xref" | "pubNumber" | "altNumber" | "esbCat" | "fig" | "temp"
[nBlocks] number
[firstBlockScope] string
[previewText] string
selected boolean
[blocks] Array.<blockOrGraftPerf>

perfDocument : object

Kind: global typedef
Properties

Name Type
headers object
tags array
sequences Object.<string, perfSequence>
mainSequence string

bookCode : string

Kind: global typedef


bookHistory : Object

Kind: global typedef
Properties

Name Type
bookHistory.cursor number
bookHistory.stack Array.<Object>
bookHistory.stack[].perfDocument perfDocument
bookHistory.stack[].pipelineData Object.<string, any>

history : Object.<string, bookHistory>

Kind: global typedef


Proskomma

Proskomma instance

Kind: global typedef
See: https://github.com/mvahowe/proskomma-js


PipelineHandler

PipelineHandlers instance

Kind: global typedef
See: https://github.com/DanielC-N/pipelineHandler