UNPKG

openframe-apiserver

Version:
120 lines (119 loc) 2.41 kB
{ "name": "Frame", "plural": "frames", "base": "PersistedModel", "idInjection": true, "options": { "validateUpsert": true }, "mixins": { "Timestamp": {}, "IsPublicOrOwner": {} }, "scope": { "order": "created", "include": { "current_artwork": true, "managers": true, "owner": true } }, "properties": { "name": { "type": "string", "required": true }, "display_name": { "type": "string" }, "description": { "type": "string" }, "connected": { "type": "boolean" }, "settings": { "type": "object", "required": true, "default": {} }, "is_public": { "type": "boolean", "required": true, "default": false }, "extensions": { "type": "object", "required": true, "default": { "openframe-image": "*", "openframe-glslviewer": "*", "openframe-website": "*", "openframe-video": "*" } }, "formats": { "type": "object", "require": true, "default": {} } }, "validations": [], "relations": { "owner": { "type": "belongsTo", "model": "OpenframeUser", "foreignKey": "ownerId" }, "managers": { "type": "hasAndBelongsToMany", "model": "OpenframeUser" }, "current_artwork": { "type": "belongsTo", "model": "Artwork", "foreignKey": "currentArtworkId" } }, "acls": [ { "accessType": "*", "principalType": "ROLE", "principalId": "$everyone", "permission": "DENY" }, { "accessType": "READ", "principalType": "ROLE", "principalId": "$everyone", "permission": "ALLOW" }, { "accessType": "WRITE", "principalType": "ROLE", "principalId": "$owner", "permission": "ALLOW" }, { "accessType": "EXECUTE", "principalType": "ROLE", "principalId": "$frameManager", "permission": "ALLOW", "property": "update_current_artwork" }, { "accessType": "EXECUTE", "principalType": "ROLE", "principalId": "$frameManager", "permission": "ALLOW", "property": "update_managers_by_username" }, { "accessType": "*", "principalType": "ROLE", "principalId": "admin", "permission": "ALLOW" } ], "methods": {} }