textiot
Version:
A framework for building web and native (IoT) Dapps on the IPFS network
98 lines (97 loc) • 3.16 kB
JavaScript
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.checkMessages = exports.deregister = exports.refreshSession = exports.sessions = exports.session = exports.register = void 0;
const react_native_1 = require("react-native");
const buffer_1 = require("buffer");
const model_1 = require("./model");
const { CafesBridge } = react_native_1.NativeModules;
/**
* Register a new remote cafe.
* ```typescript
* Textile.cafes.register(url, token);
* ```
*/
function register(url, token) {
return __awaiter(this, void 0, void 0, function* () {
return CafesBridge.register(url, token);
});
}
exports.register = register;
/**
* Initialize a new session.
* ```typescript
* Textile.cafes.session(peerId);
* ```
*/
function session(peerId) {
return __awaiter(this, void 0, void 0, function* () {
const result = yield CafesBridge.session(peerId);
if (!result) {
return undefined;
}
return model_1.CafeSession.decode(buffer_1.Buffer.from(result, 'base64'));
});
}
exports.session = session;
/**
* List all sessions.
* ```typescript
* Textile.cafes.sessions();
* ```
*/
function sessions() {
return __awaiter(this, void 0, void 0, function* () {
const result = yield CafesBridge.sessions();
return model_1.CafeSessionList.decode(buffer_1.Buffer.from(result, 'base64'));
});
}
exports.sessions = sessions;
/**
* Refresh an existing session by peerId.
* ```typescript
* Textile.cafes.refreshSession(sessionId);
* ```
*/
function refreshSession(sessionId) {
return __awaiter(this, void 0, void 0, function* () {
const result = yield CafesBridge.refreshSession(sessionId);
if (!result) {
return undefined;
}
return model_1.CafeSession.decode(buffer_1.Buffer.from(result, 'base64'));
});
}
exports.refreshSession = refreshSession;
/**
* Deregister a remote Cafe.
* ```typescript
* Textile.cafes.deregister(sessionId);
* ```
*/
function deregister(sessionId) {
return __awaiter(this, void 0, void 0, function* () {
return CafesBridge.deregister(sessionId);
});
}
exports.deregister = deregister;
/**
* Check for offline messages on remote Cafe.
* ```typescript
* Textile.cafes.checkMessages();
* ```
*/
function checkMessages() {
return __awaiter(this, void 0, void 0, function* () {
return CafesBridge.checkMessages();
});
}
exports.checkMessages = checkMessages;
;