0.1.1 • Published 10 years ago
oc-news-js v0.1.1
oc-news-js
Javascript client for the ownCloud news app for node and the browser
installing
For node or browserify
npm install --save oc-news-jsvar Client = require('oc-news-js')
For plain browser usage
- Include
build/news.jsorbuild/news.min.js
Usage
var client = new Client('https://example.com/owncloud', 'username', 'password');Structure
src/source fileslib/prebuild files for npm usingnpm run build-npmbuild/prebuild files for the browser usingnpm run build-browser,npm run release
API
All functions return a promise and can also be used with es7 style async/await
- Client
client.listFolders():Promise<Folder[]>client.newFolder(name):Promise<Folder>client.listFeeds():Promise<Feed[]>client.newFeed(url, folderId):Promise<Feed>client.getItems(size = 20, offset = null, getRead = true, oldestFirst = false):Promise<Item[]>client.getStarredItems(size = 20, offset = null, getRead = true, oldestFirst = false):Promise<Item[]>client.getNewItems(lastModifed):Promise<Item[]>client.getVersion():Promise<string>client.getStatus():Promise<Status>- Folder
folder.id:intfolder.name:stringfolder.rename(newName):Promise<>folder.delete():Promise<>folder.markAsRead(newestItemId):Promise<>folder.listFeeds():Promise<Feed[]>folder.getItems(size = 20, offset = null, getRead = true, oldestFirst = false):Promise<Item[]>folder.getNewItems(lastModifed):Promise<Item[]>- Feed
feed.id:intfeed.url:stringfeed.title:stringfeed.favIconLink:stringfeed.added:intas unix timestampfeed.folderId:intfeed.unreadCount:intfeed.ordering:int0 for default, 1 oldest first, 2 newest firstfeed.link:stringfeed.pinned:boolfeed.rename(newName):Promise<>feed.delete():Promise<>feed.move(newFolderId):Promise<>feed.markAsRead(newestItemId):Promise<>feed.getItems(size = 20, offset = null, getRead = true, oldestFirst = false):Promise<Item[]>feed.getNewItems(lastModifed):Promise<Item[]>- Item
item.id:intitem.guid:stringitem.guidHash:stringitem.url:stringitem.title:stringitem.author:stringitem.pubDate:intas unix timestampitem.body:stringitem.enclosureMime:stringitem.enclosureLink:stringitem.feedId:intitem.unread:boolitem.starred:boolitem.lastModified:intas unix timestampitem.markAsRead():Promise<>item.markAsUnread():Promise<>item.markAsStarred():Promise<>item.markAsUnstarred():Promise<>- Status
status.version:stringas'x.y.z'status.improperlyConfiguredCron:bool
Additional information about the meaning of fields, methods or arguments can be find in the API documentation for the news client
Example
- Using es6/es7 style syntax:
var client = new Client('http://localhost/owncloud', 'test', 'test');
async function listItems () {
const items = await client.getItems();
console.log(items);
}
listItems();- Using es5 style syntax:
var client = new Client('http://localhost/owncloud', 'test', 'test');
client.getItems().then(function (items) {
console.log(items);
});