Options
All
  • Public
  • Public/Protected
  • All
Menu

Manifest describes the module.

You are able to spread package.json into Collboard module manifest and all types are matching perfectly. It is a bit inspired by all web and mobile app manifests.

collboard-modules-sdk

Hierarchy

  • IModuleManifest

Index

Properties

Describes author or contributor of a module. It is in same format as in package.json. Note: In manifest there can be either author or contributors.

categories?: string[]
contributors?: IModuleManifestAuthor[]

Describes author or contributor of a module. It is in same format as in package.json. Note: In manifest there can be either author or contributors.

deprecatedNames?: Arrayable<string>
description?: IStringMessage
flags?: Partial<IModuleFlags>
homepage?: string

Url to other information about the module. This is completely optional, if not filled it will be used as a link to the module store on Collboard.

icon?: string

Icon of the module

  • It can be a URL to image in format for web (like png, svg, webp,...)
  • It can be UTF-8 emoji like 🐇

Do not recommend to put here urlencoded dataurl.

keywords?: string[]

Describes software license of a module. It is in same format as in package.json. Note: In manifest there can be either license or licenses.

deprecated

use instead softwareLicense (because it is more descriptive and distinct from software from usage license)

Describes software license of a module. It is in same format as in package.json. Note: In manifest there can be either license or licenses.

deprecated

use instead softwareLicense (because it is more descriptive and distinct from software from usage license)

name: string
priority?: number

This determinates the priority of module as a supporter

repository?: string | IRepository

Url to the module repository.

requirePermissions?: string[]

Minimal required permissions for module to be working

Note: 'edit' extends 'view' so ['edit'] is same as ['view', 'edit'] Note: In future here will be complex logic of permissions Note: Because the default value is ['edit'] you can activelly lower it by putting ['view'] in manifest

default

['edit']

screenshots?: string[]

URL of screenshots in format for web (like png, svg, webp,...)

Describes software license of a module. It is in same format as in package.json. Note: In manifest there can be either license or licenses.

supports?: { art?: Arrayable<string>; attribute?: Arrayable<string>; fileImport?: Arrayable<string> }

manifest.supports defines if the module have a specific function in several situations.

Type declaration

  • Optional art?: Arrayable<string>

    Module can deserialize given art(s)

  • Optional attribute?: Arrayable<string>

    Module can work with given attribute(s)

  • Optional fileImport?: Arrayable<string>

    Module can import given file(s) with given mime type(s) Note: You are allowed to use wildcard in mime type; for example 'image/*' Note: There is no fileExport in manifest.supports because for logic of importing is different than exporting. Importing - I have some file with known mimetype and I want to find best fitting module to process it. Exporting - I have an art and I want to export it to all wanted formats. There are some well-known formats like text, html or image wich will be installed by default and other format exports can be installed manually or by business.

Describes licence for usage of a module. It not specified it will be considered as free

version?: string