Skip to content

The publishable protocol handles the complete publication state of an object.

License

Notifications You must be signed in to change notification settings

servable-community/publishable

Repository files navigation

Publishable protocol for Servable

@servable-community/publishable

npm Package NPM Downloads Build Status License: MIT JavaScript Style Guide

drawing

A complete lifecycle management for publication

Allow any object to be in a published or drafted state.

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.

%%{

  init: {

    'theme': 'base',

    'themeVariables': {

      'primaryColor': '#fff',

      'primaryTextColor': '#323232',

      'primaryBorderColor': '#323232',

      'lineColor': '#323232',

      'fontFamily': 'ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace'

    }

  }

}%%

flowchart TD

    start([Launch Servable]) --> requiresMigration{A protocol\n requires\n migration?}

    requiresMigration -- Yes --> migrate[Migrate every protocol \nthat requires migration]

    requiresMigration -- No --> doLaunch[Do Launch]

    migrate --> doLaunch[Do Launch]

Loading

Available in Servable registry

drawing

@servable-community/publishable is available at servable registry.

Use in your servable project:

yo servable -t useprotocol --protocolid @servable-community/publishable

Install

yarn add @servable-community/publishable

or

npm install @servable-community/publishable

Compatible engines

Adapter Version Link
@servable-community/parse-server-engine * https://github.com/servable-community/parse-server-engine.git

Used APIs

Api Version
Route *
Object *
Cloud *
User *
Role *
Session *
Installation *
Config *
LiveQuery *

Categories

Static Badge Static Badge

Companion packages

Dependencies

Target classes

Managed classes

Applies to classes: commentableEntry

Usage

Template

Add this template to your class' protocols.json file. Fill the values to fit your needs with the right parameters.

{
  "id": "publishable",
  "name": "Publishable",
  "slug": "",
  "params": {}
}

Parameters

type id Message Default value vacuity
input waitForValidation Wait for validation optional
input errorMessage Error message Could not publish mandatory
input notifyOnError Notify on error mandatory

Seed

Protocol class

Before init

After init

Config

Functions

Live Classes

Schema

Target class

Fields

Name Type Target class Default value
publishableStatus String

Class Level Permissions

Name Content
protectedFields {"*":[]}

Indexes

Name Content
_publishableStatus {"publishableStatus":1}

System

Lib

Triggers

Resources

Servable Documentation

You can find here the complete servable documentation with guides and api reference.

Servable Registry

You can find other Servable protocols at the Servable registry

License

MIT © servable-community