diff options
Diffstat (limited to 'packages/gitbook-plugin-search/src/models/Result.js')
-rw-r--r-- | packages/gitbook-plugin-search/src/models/Result.js | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/packages/gitbook-plugin-search/src/models/Result.js b/packages/gitbook-plugin-search/src/models/Result.js new file mode 100644 index 0000000..0012b2b --- /dev/null +++ b/packages/gitbook-plugin-search/src/models/Result.js @@ -0,0 +1,20 @@ +const GitBook = require('gitbook-core'); +const { Record } = GitBook.Immutable; + +const DEFAULTS = { + url: String(''), + title: String(''), + body: String('') +}; + +class Result extends Record(DEFAULTS) { + constructor(spec) { + if (!spec.url || !spec.title) { + throw new Error('"url" and "title" are required to create a search result'); + } + + super(spec); + } +} + +module.exports = Result; |