Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | import CrowiUtil from 'client/crowi' import plantuml from 'plantuml-encoder' import * as crypto from 'crypto' import crowi from 'client/util/Crowi' export default class PlantUML { crowi: crowi constructor(crowi: crowi) { this.crowi = crowi } generateId(token: string) { const hasher = crypto.createHash('md5') hasher.update(token) return hasher.digest('hex') } process(code: string, lang: string) { const { env } = this.crowi.getConfig() if (!env || !env.PLANTUML_URI) { return `<pre class="wiki-code"><code>${CrowiUtil.escape(code)}\n</code></pre>` } let plantumlUri = env.PLANTUML_URI if (plantumlUri.substr(-1) !== '/') { plantumlUri += '/' } const id = this.generateId(code + lang) const encoded = plantuml.encode(`@startuml skinparam monochrome true ${code} @enduml`) return ` <div id="${id}" class="plantuml noborder"> <img src="${plantumlUri}svg/${encoded}"> </div> ` } } |