diff options
Diffstat (limited to 'packages/gitbook-core/src/models')
-rw-r--r-- | packages/gitbook-core/src/models/Location.js | 5 | ||||
-rw-r--r-- | packages/gitbook-core/src/models/Page.js | 22 |
2 files changed, 27 insertions, 0 deletions
diff --git a/packages/gitbook-core/src/models/Location.js b/packages/gitbook-core/src/models/Location.js index 3b62bef..cdfea2d 100644 --- a/packages/gitbook-core/src/models/Location.js +++ b/packages/gitbook-core/src/models/Location.js @@ -10,6 +10,11 @@ const DEFAULTS = { }; class Location extends Record(DEFAULTS) { + + /** + * Return search query as a string + * @return {String} + */ get search() { const { query } = this; return query.size === 0 ? diff --git a/packages/gitbook-core/src/models/Page.js b/packages/gitbook-core/src/models/Page.js new file mode 100644 index 0000000..838191e --- /dev/null +++ b/packages/gitbook-core/src/models/Page.js @@ -0,0 +1,22 @@ +const { Record } = require('immutable'); + +const DEFAULTS = { + title: '', + content: '', + dir: 'ltr', + depth: 1, + level: '', + previous: null, + next: null +}; + +class Page extends Record(DEFAULTS) { + static create(state) { + return state instanceof Page ? + state : new Page({ + ...state + }); + } +} + +module.exports = Page; |