podchat
Version:
Javascript SDK to use POD's Chat Service
69 lines (68 loc) • 2.16 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _errorHandler = require("../errorHandler");
var TypeCodes = /*#__PURE__*/function () {
function TypeCodes(_ref) {
var app = _ref.app,
_ref$current = _ref.current,
current = _ref$current === void 0 ? {
typeCode: 'default',
ownerId: undefined
} : _ref$current,
_ref$whiteList = _ref.whiteList,
whiteList = _ref$whiteList === void 0 ? null : _ref$whiteList;
(0, _classCallCheck2["default"])(this, TypeCodes);
this._list = whiteList || [];
this._current = current;
this._app = app;
}
(0, _createClass2["default"])(TypeCodes, [{
key: "hasWhiteList",
value: function hasWhiteList() {
return this._list.length;
}
}, {
key: "getActiveTypeCode",
value: function getActiveTypeCode() {
return this._current;
}
}, {
key: "setActiveTypeCode",
value: function setActiveTypeCode(typeCode) {
if (this.hasWhiteList()) {
var existObject = this._list.find(function (it) {
return it.typeCode == typeCode;
});
if (existObject) {
this._current = existObject;
} else {
this._app.errorHandler.raiseError(_errorHandler.errorList.INVALID_CONTACT_TYPE, null, true, {});
}
} else {
this._current = {
typeCode: typeCode,
ownerId: undefined
};
}
}
}, {
key: "isAllowed",
value: function isAllowed(typeCode) {
if (this._current.typeCode == typeCode) return true;
var existObject = this._list.find(function (it) {
return it.typeCode == typeCode;
});
if (this.hasWhiteList() && !!existObject) return true;
return false;
}
}]);
return TypeCodes;
}();
var _default = TypeCodes;
exports["default"] = _default;