Plugin model

module.exports = {
  sc_plugin_api_version: 1,
  plugin_name: '...',
  onLoad: function(configuration){},
  configuration_workflow: function(){return Workflow();},
  layout: Layout(),
  headers: [],
  actions: {},
  authentication: function(config){return auth;},
  eventTypes: {},
  external_tables: [],
  functions: {},
  viewtemplates: [],
  fieldviews: {},
  fileviews: {},
  routes: {},
  table_providers: [],
  types: [],
  verifier_workflow: Workflow(),
  dependencies: [],
  serve_dependencies: [],
};
  • sc_plugin_api_version — api version, must be 1
  • plugin_name — name of plugin, must match Name field of store extensions table. Defaults to name field in package.json which must match location if source=npm.
  • onLoad — function to be called on plugin load (on plugin install or instance startup)
  • configuration_workflow — Workflow to configure plugin.
  • layout — Layout
  • headers — tags to be added to head tag on every HTML page.
  • actions — dictionary of trigger kind definitions.
  • authentication — ???
  • eventTypes — ???
  • external_tables — ???
  • functions — dictionary of functions available to code triggers
  • viewtemplates — array of view kind definitions
  • fieldviews — dictionary of field view kind definition
  • fileviews — ???
  • routes — ???
  • table_providers — ???
  • types — array of type definitions
  • verifier_workflow — ???
  • dependencies — ???
  • serve_dependencies — ???