Methods

(async) factory(pkgName) → {Sumba}

Plugin factory.

Never call this function directly!!! It's only-meant to be called by the Bajo framework during plugin initialization.

Parameters:
NameTypeDescription
pkgNamestring

NPM package name

Returns:

Sumba class

Type: 
Sumba

Type Definitions

TConfig

Sumba configuration object

Type:
  • object
Properties
NameTypeAttributesDefaultDescription
configobject<optional>
{}

Configuration object

Properties
NameTypeAttributesDefaultDescription
multiSiteobject<optional>
{}

Multi-site configuration object

Properties
NameTypeAttributesDefaultDescription
enabledboolean<optional>
false

Whether multi-site is enabled or not. Default: false

catchAllstring<optional>
'default'

Which site alias to use as the catch-all. Default: 'default'

xSiteAdminsarray<optional>
[]

List of cross-site administrators. Format: ":"

waibuobject<optional>
{}

Waibu configuration object

Properties
NameTypeAttributesDefaultDescription
prefixstring<optional>
'site'

Waibu prefix

titlestring<optional>
'site'

Waibu title

waibuMpaobject<optional>
{}

Waibu MPA configuration object

Properties
NameTypeAttributesDefaultDescription
authobject<optional>
{}

Waibu MPA authentication configuration object

Properties
NameTypeAttributesDefaultDescription
methodsarray<optional>
['session']

Waibu MPA authentication methods. Default: ['session']

silentOnErrorboolean<optional>
false

Whether to silently ignore authentication errors or not. Default: false

iconstring<optional>
'globe'

Waibu MPA icon. Default: 'globe'

redirectobject<optional>
{}

Waibu MPA route redirection

redirectSubRouteobject<optional>
{}

Waibu MPA sub-route redirection

waibuRestApiobject<optional>
{}

Waibu REST API configuration object

Properties
NameTypeAttributesDefaultDescription
authobject<optional>
{}

Waibu REST API authentication configuration object

Properties
NameTypeAttributesDefaultDescription
methodsarray<optional>
['basic', 'apiKey', 'jwt']

Waibu REST API authentication methods. Default: ['basic', 'apiKey', 'jwt']

silentOnErrorboolean<optional>
false

Whether to silently ignore authentication errors or not. Default: false

waibuStaticobject<optional>
{}

Waibu Static configuration object

Properties
NameTypeAttributesDefaultDescription
authobject<optional>
{}

Waibu Static authentication configuration object

Properties
NameTypeAttributesDefaultDescription
methodsarray<optional>
['basic', 'apiKey', 'jwt']
basicobject<optional>
{}

Waibu Static Basic authentication configuration object

Properties
NameTypeAttributesDefaultDescription
useUtf8boolean<optional>
true

Whether to use UTF-8 encoding for Basic authentication or not. Default: true

realmboolean<optional>
true

Whether to use realm for Basic authentication or not. Default: true

warningMessagestring<optional>
'pleaseAuthenticate'

Warning message for Basic authentication. Default: 'pleaseAuthenticate'

silentOnErrorboolean<optional>
false

Whether to silently ignore authentication errors or not. Default: false

waibuMpa.menuHandlerarray<optional>
[]

Waibu MPA menu handler

waibuAdminobject<optional>
{}

Waibu Admin configuration object

Properties
NameTypeAttributesDefaultDescription
menuHandlerstring<optional>
'sumba:adminMenu'

Waibu Admin menu handler. Default: 'sumba:adminMenu'

menuCollapsibleboolean<optional>
true

Whether the Waibu Admin menu is collapsible or not. Default: true

authobject<optional>
{}

Authentication configuration object

Properties
NameTypeAttributesDefaultDescription
apiKeyobject<optional>
{}

API Key authentication configuration object

Properties
NameTypeAttributesDefaultDescription
typestring<optional>
'Bearer'

API Key authentication type. Default: 'Bearer'

qsKeystring<optional>
'apiKey'

API Key authentication query string key. Default: 'apiKey'

headerKeystring<optional>
'X-Auth-ApiKey'

API Key authentication header key. Default: 'X-Auth-ApiKey'

algostring<optional>
'sha256'

API Key authentication hashing algorithm. Default: 'sha256'

basicobject<optional>
{}

Basic authentication configuration object

jwtobject<optional>
{}

JWT authentication configuration object

Properties
NameTypeAttributesDefaultDescription
typestring<optional>
'Bearer'

JWT authentication type. Default: 'Bearer'

qsKeystring<optional>
'token'

JWT authentication query string key. Default: 'token'

headerKeystring<optional>
'X-Auth-Jwt'

JWT authentication header key. Default: 'X-Auth-Jwt'

secretstring<optional>

JWT authentication secret. Default: hard coded value, should be changed in production

expiresInDurstring<optional>
'7d'

JWT authentication token expiration duration. Default: '7d'

redirectobject<optional>
{}

Redirection configuration object

TTokenBody

Type:
  • object
Properties
NameTypeDescription
usernamestring

The username of the user

passwordstring

The password of the user

TTokenData

Type:
  • object
Properties
NameTypeDescription
dataobject

The token data object

Properties
NameTypeDescription
tokenstring

The token string

expiresAtstring

The expiration date of the token

successboolean

Indicates if the operation was successful

statusCodenumber

The HTTP status code of the response