It appears you have a well-structured Git repository with various files, including SVG icons and HTML documents. Here's a brief overview:
This commit is contained in:
110
backend/node_modules/hosted-git-info/git-host.js
generated
vendored
Normal file
110
backend/node_modules/hosted-git-info/git-host.js
generated
vendored
Normal file
@ -0,0 +1,110 @@
|
||||
'use strict'
|
||||
const gitHosts = require('./git-host-info.js')
|
||||
|
||||
class GitHost {
|
||||
constructor (type, user, auth, project, committish, defaultRepresentation, opts = {}) {
|
||||
Object.assign(this, gitHosts[type])
|
||||
this.type = type
|
||||
this.user = user
|
||||
this.auth = auth
|
||||
this.project = project
|
||||
this.committish = committish
|
||||
this.default = defaultRepresentation
|
||||
this.opts = opts
|
||||
}
|
||||
|
||||
hash () {
|
||||
return this.committish ? `#${this.committish}` : ''
|
||||
}
|
||||
|
||||
ssh (opts) {
|
||||
return this._fill(this.sshtemplate, opts)
|
||||
}
|
||||
|
||||
_fill (template, opts) {
|
||||
if (typeof template === 'function') {
|
||||
const options = { ...this, ...this.opts, ...opts }
|
||||
|
||||
// the path should always be set so we don't end up with 'undefined' in urls
|
||||
if (!options.path) {
|
||||
options.path = ''
|
||||
}
|
||||
|
||||
// template functions will insert the leading slash themselves
|
||||
if (options.path.startsWith('/')) {
|
||||
options.path = options.path.slice(1)
|
||||
}
|
||||
|
||||
if (options.noCommittish) {
|
||||
options.committish = null
|
||||
}
|
||||
|
||||
const result = template(options)
|
||||
return options.noGitPlus && result.startsWith('git+') ? result.slice(4) : result
|
||||
}
|
||||
|
||||
return null
|
||||
}
|
||||
|
||||
sshurl (opts) {
|
||||
return this._fill(this.sshurltemplate, opts)
|
||||
}
|
||||
|
||||
browse (path, fragment, opts) {
|
||||
// not a string, treat path as opts
|
||||
if (typeof path !== 'string') {
|
||||
return this._fill(this.browsetemplate, path)
|
||||
}
|
||||
|
||||
if (typeof fragment !== 'string') {
|
||||
opts = fragment
|
||||
fragment = null
|
||||
}
|
||||
return this._fill(this.browsefiletemplate, { ...opts, fragment, path })
|
||||
}
|
||||
|
||||
docs (opts) {
|
||||
return this._fill(this.docstemplate, opts)
|
||||
}
|
||||
|
||||
bugs (opts) {
|
||||
return this._fill(this.bugstemplate, opts)
|
||||
}
|
||||
|
||||
https (opts) {
|
||||
return this._fill(this.httpstemplate, opts)
|
||||
}
|
||||
|
||||
git (opts) {
|
||||
return this._fill(this.gittemplate, opts)
|
||||
}
|
||||
|
||||
shortcut (opts) {
|
||||
return this._fill(this.shortcuttemplate, opts)
|
||||
}
|
||||
|
||||
path (opts) {
|
||||
return this._fill(this.pathtemplate, opts)
|
||||
}
|
||||
|
||||
tarball (opts) {
|
||||
return this._fill(this.tarballtemplate, { ...opts, noCommittish: false })
|
||||
}
|
||||
|
||||
file (path, opts) {
|
||||
return this._fill(this.filetemplate, { ...opts, path })
|
||||
}
|
||||
|
||||
getDefaultRepresentation () {
|
||||
return this.default
|
||||
}
|
||||
|
||||
toString (opts) {
|
||||
if (this.default && typeof this[this.default] === 'function') {
|
||||
return this[this.default](opts)
|
||||
}
|
||||
|
||||
return this.sshurl(opts)
|
||||
}
|
||||
}
|
||||
module.exports = GitHost
|
Reference in New Issue
Block a user