add notes (#218)

* add notes

* fix build

* Commit from GitHub Actions (Publish APIs & Clients)

Co-authored-by: asim <asim@users.noreply.github.com>
This commit is contained in:
Asim Aslam
2021-09-29 14:02:28 +01:00
committed by GitHub
parent 29aea04423
commit 3c38d96881
29 changed files with 2223 additions and 1 deletions

View File

@@ -15,6 +15,7 @@ import * as id from "./id";
import * as image from "./image";
import * as ip from "./ip";
import * as location from "./location";
import * as notes from "./notes";
import * as otp from "./otp";
import * as postcode from "./postcode";
import * as prayer from "./prayer";
@@ -53,6 +54,7 @@ export class Client {
this.imageService = new image.ImageService(token);
this.ipService = new ip.IpService(token);
this.locationService = new location.LocationService(token);
this.notesService = new notes.NotesService(token);
this.otpService = new otp.OtpService(token);
this.postcodeService = new postcode.PostcodeService(token);
this.prayerService = new prayer.PrayerService(token);
@@ -90,6 +92,7 @@ export class Client {
imageService: image.ImageService;
ipService: ip.IpService;
locationService: location.LocationService;
notesService: notes.NotesService;
otpService: otp.OtpService;
postcodeService: postcode.PostcodeService;
prayerService: prayer.PrayerService;

120
clients/ts/notes/index.ts Executable file
View File

@@ -0,0 +1,120 @@
import * as m3o from "@m3o/m3o-node";
export class NotesService {
private client: m3o.Client;
constructor(token: string) {
this.client = new m3o.Client({ token: token });
}
// Create a new note
create(request: CreateRequest): Promise<CreateResponse> {
return this.client.call(
"notes",
"Create",
request
) as Promise<CreateResponse>;
}
// Delete a note
delete(request: DeleteRequest): Promise<DeleteResponse> {
return this.client.call(
"notes",
"Delete",
request
) as Promise<DeleteResponse>;
}
// List all the notes
list(request: ListRequest): Promise<ListResponse> {
return this.client.call("notes", "List", request) as Promise<ListResponse>;
}
// Read a note
read(request: ReadRequest): Promise<ReadResponse> {
return this.client.call("notes", "Read", request) as Promise<ReadResponse>;
}
// Specify the note to events
subscribe(request: SubscribeRequest): Promise<SubscribeResponse> {
return this.client.call(
"notes",
"Subscribe",
request
) as Promise<SubscribeResponse>;
}
// Update a note
update(request: UpdateRequest): Promise<UpdateResponse> {
return this.client.call(
"notes",
"Update",
request
) as Promise<UpdateResponse>;
}
}
export interface CreateRequest {
// note text
text?: string;
// note title
title?: string;
}
export interface CreateResponse {
// The created note
note?: { [key: string]: any };
}
export interface DeleteRequest {
// specify the id of the note
id?: string;
}
export interface DeleteResponse {
note?: { [key: string]: any };
}
export interface ListRequest {}
export interface ListResponse {
// the list of notes
notes?: Note[];
}
export interface Note {
// time at which the note was created
created?: string;
// unique id for the note, generated if not specified
id?: string;
// text within the note
text?: string;
// title of the note
title?: string;
// time at which the note was updated
updated?: string;
}
export interface ReadRequest {
// the note id
id?: string;
}
export interface ReadResponse {
// The note
note?: { [key: string]: any };
}
export interface SubscribeRequest {
// optionally specify a note id
id?: string;
}
export interface SubscribeResponse {
// the event which occured; created, deleted, updated
event?: string;
// the note which the operation occured on
note?: { [key: string]: any };
}
export interface UpdateRequest {
note?: { [key: string]: any };
}
export interface UpdateResponse {
note?: { [key: string]: any };
}

View File

@@ -26,6 +26,7 @@
"./image": "./dist/image/index.js",
"./ip": "./dist/ip/index.js",
"./location": "./dist/location/index.js",
"./notes": "./dist/notes/index.js",
"./otp": "./dist/otp/index.js",
"./pkg": "./dist/pkg/index.js",
"./postcode": "./dist/postcode/index.js",
@@ -61,5 +62,5 @@
},
"type": "module",
"types": "dist/index.d.ts",
"version": "1.0.530"
"version": "1.0.531"
}