UNPKG

react-native-drawing

Version:

A React Native library that provides a canvas to perform drawing actions

46 lines (45 loc) 1.28 kB
import { Ack } from './Ack'; import { Codec } from './Codec'; import { Status } from './Status'; export class AnswerAck extends Ack { constructor(sendData) { // Building default codec const codec = new Codec((struct) => { return AnswerAck.fixCodecStruct(struct); }); super(codec, sendData); Object.defineProperty(this, "token", { enumerable: true, configurable: true, writable: true, value: '_ANSWER_' }); } makeChoice(args, ackInterface) { const { res, status } = args; if (status === Status.SUCCESS) { ackInterface.resolve(res); } else { const err = new Error(res); ackInterface.reject(err); } } static fixCodecStruct(struct) { const { id, res, status: unknownStatus } = struct; let status; if (unknownStatus === Status.SUCCESS) { status = Status.SUCCESS; } else if (unknownStatus === Status.ERROR) { status = Status.ERROR; } else { status = Status.ERROR; } return { id: (typeof id === 'number') ? id : NaN, res, status, }; } }