@pageboard/elements-semantic-ui

0.6.29 • Public • Published

pageboard-elements

Elements can be defined in three parts:

  • view, needed by pageboard-read to render blocks
  • schema, needed by pageboard-write to edit attributes, and by pageboard-api to validate blocks
  • edit, defines the specs of the rich text content and optionally a render function for edition.

It's up to pageboard-read and pageboard-write main files to load the files, using either js files or html imports.

everything in a single, requireable js file

Exports everything in a single file, accessible from public/elements/myname.js

(function(exports) {
	exports.myname = {
		view: function(doc, block) {
			// do more than that of course
			return doc.createElement('div');
		},
		edit: function(doc, block) {
			// optional function
		},
		properties: {
			myprop: {
				type: 'string'
			}
		}
		specs: {
			mycontent: 'block+'
		}
	};
})(typeof exports != "undefined" ? exports : window.Pagecut.modules);

multiple js files

Exports edit, view, schema from different files, accessible from public/elements/myname/view.js public/elements/myname/edit.js public/elements/myname/index.js (defines the schema, must be requireable)

It is advised to test before assigning like this

(function(exports) {
	if (!exports.myname) exports.myname = {}; // test here
	exports.myname.properties = {
		myprop: {
			type: 'string'
		}
	};
})(typeof exports != "undefined" ? exports : window.Pagecut.modules);

view and edit files are not supposed to be requireable

(function(exports) {
	if (!exports.myname) exports.myname = {}; // test here
	exports.myname.view = function() {};//...
})(window.Pagecut.modules);

multiple html imports

This layout is also supported: public/elements/myname/view.html public/elements/myname/edit.html public/elements/myname/index.js (defines the schema, must be requireable)

Where view and edit load their assets as script (inline or not), link, or style tags.

Readme

Keywords

none

Package Sidebar

Install

npm i @pageboard/elements-semantic-ui

Weekly Downloads

2

Version

0.6.29

License

MIT

Unpacked Size

151 kB

Total Files

68

Last publish

Collaborators

  • kapouer