npm.io
0.0.5 • Published 10 years ago

clannad-sdk

Licence
MIT
Version
0.0.5
Deps
2
Vulns
1
Weekly
0

NPM version Downloads

clannad-sdk

back-end HTTP SDK for clannad

initail

import CS from 'clannad-sdk';

const cs = new CS(options);

key in options

key type default descption
host String 127.0.0.1
token String project token from ROOT, will be send as headers['X-Token']
projectName String test projectName for request

basic handle

cs.auth
const result = await cs.list({token});
field type descption
token String token from your auth system (confrim by clannad.auth), will replace token in options

response: 200 OK {auth}

cs.list
const result = await cs.list({tableName, token, selector});

fields in selector

field type descption
offset Number default 0(only list could use)
limit Number default 30 (only list could use)
sort String sort by one field, default createdAt (only list could use)
asc Boolean default desc,you could set true to get asc (only list could use)
populate Object for mongo populate handle, such as {"path": "field1","select": "name",populete:{"path":...}}
select Object for select fields, such as ["field1","field2",...]
params Object for mongoose conditions, such as {"field1":{"$gte":21},"field2":"duang",...}

response: 200 OK [{_id: ..., ...}, ...]

cs.count
const result = await cs.count({tableName, token, params});

response: 200 OK {count}

cs.detail
const result = await cs.detail({tableName, token, selector});

response: 200 OK {_id: ..., ...}

cs.aggregate
const result = await cs.detail({tableName, token, params, group, sort});
field type descption
params Object for mongoose conditions, such as {"field1":{"$gte":21},"field2":"duang",...}
group Object a JSON about $group operator to this aggregate pipeline, such as {"_id":"$field1","num":{"$sum":1}}
sort Object a JSON about sorts all input documents, such as {"field1": -1, "field2": 1}

response: 200 OK [{_id: ..., ...}, ...]

cs.add
const result = await cs.add({tableName, token, data});

response: 200 OK {id}

cs.edit
const result = await cs.edit({tableName, token, params, data});

response: 204 No content

cs.delete
const result = await cs.delete({tableName, token, params});

response: 204 No content

develop

$ make dev

Keywords