const E = {
RESOURCE_CLOSING: "RESOURCE_CLOSING",
ONE_WRITABLE_DRIVE_PER_KEY: "ONE_WRITABLE_DRIVE_PER_KEY",
INVITE_EXPIRED: "INVITE_EXPIRED",
INVALID_INVITATION_TYPE: "INVALID_INVITATION_TYPE",
INVALID_PRODUCTION_INVITATION: "INVALID_PRODUCTION_INVITATION",
UNKNOWN_EXPIRATION: "UNKNOWN_EXPIRATION",
PAIRING_EXPIRED: "PAIRING_EXPIRED",
PAIRING_CANDIDATE_NOT_FOUND: "PAIRING_CANDIDATE_NOT_FOUND",
MODERATORS_ONLY: "MODERATORS_ONLY",
CANNOT_RELEASE_CLOSED_ROOM: "CANNOT_RELEASE_CLOSED_ROOM",
UNKNOWN_ROOM_CONFIG_KEY: "UNKNOWN_ROOM_CONFIG_KEY",
ROOM_LOCKED: "ROOM_LOCKED",
UNKNOWN_ROOM_COMMAND: "UNKNOWN_ROOM_COMMAND",
INVALID_ROOM_COMMAND_ARGUMENTS: "INVALID_ROOM_COMMAND_ARGUMENTS",
UNSUPPORTED_ABI_VERSION: "UNSUPPORTED_ABI_VERSION",
AUTOBASE_IS_NOT_WRITEABLE: "AUTOBASE_IS_NOT_WRITEABLE",
CANNOT_LEAVE_ROOM: "CANNOT_LEAVE_ROOM",
PRIVATE_PROFILE_NOT_ENABLED: "PRIVATE_PROFILE_NOT_ENABLED",
PLUGIN_NOT_ENABLED: "PLUGIN_NOT_ENABLED",
ALREADY_MIGRATING: "ALREADY_MIGRATING",
IDENTITY_REQUIRED: "IDENTITY_REQUIRED",
CANNOT_UPDATE_DEVICE_DURING_MIGRATION: "CANNOT_UPDATE_DEVICE_DURING_MIGRATION",
USERNAME_TOO_LONG: "USERNAME_TOO_LONG",
AVATAR_TOO_LARGE: "AVATAR_TOO_LARGE",
FILE_PREVIEW_SIZE_EXCEEDED: "FILE_PREVIEW_SIZE_EXCEEDED",
FEATURE_NOT_SUPPORTED: "FEATURE_NOT_SUPPORTED",
}
class _ extends Error {
constructor(E, N, O = _) {
;(super(E ? `${N}: ${E}` : N),
(this.code = N),
Error.captureStackTrace && Error.captureStackTrace(this, O))
}
get name() {
return "KeetError"
}
static isKeetError(E) {
return E?.name === _.name
}
static RESOURCE_CLOSING(E = "") {
return new _(E, "RESOURCE_CLOSING", _.RESOURCE_CLOSING)
}
static ONE_WRITABLE_DRIVE_PER_KEY(E = "Only one writable drive per key can be made") {
return new _(E, "ONE_WRITABLE_DRIVE_PER_KEY", _.ONE_WRITABLE_DRIVE_PER_KEY)
}
static INVITE_EXPIRED(E = "Invitation has expired") {
return new _(E, "INVITE_EXPIRED", _.INVITE_EXPIRED)
}
static INVALID_INVITATION_TYPE(
E = "Attempting to use a device sync invitation as a room invitation",
) {
return new _(E, "INVALID_INVITATION_TYPE", _.INVALID_INVITATION_TYPE)
}
static INVALID_PRODUCTION_INVITATION(
E = "Attempting to use a production invitation in a test environment",
) {
return new _(E, "INVALID_PRODUCTION_INVITATION", _.INVALID_PRODUCTION_INVITATION)
}
static UNKNOWN_EXPIRATION(E = "") {
return new _(E, "UNKNOWN_EXPIRATION", _.UNKNOWN_EXPIRATION)
}
static PAIRING_EXPIRED(E = "Pairing attempt expired") {
return new _(E, "PAIRING_EXPIRED", _.PAIRING_EXPIRED)
}
static PAIRING_CANDIDATE_NOT_FOUND(E = "Pairing candidate does not exist") {
return new _(E, "PAIRING_CANDIDATE_NOT_FOUND", _.PAIRING_CANDIDATE_NOT_FOUND)
}
static MODERATORS_ONLY(E = "") {
return new _(E, "MODERATORS_ONLY", _.MODERATORS_ONLY)
}
static CANNOT_RELEASE_CLOSED_ROOM(E = "Cannot release a room that was not previously opened") {
return new _(E, "CANNOT_RELEASE_CLOSED_ROOM", _.CANNOT_RELEASE_CLOSED_ROOM)
}
static UNSUPPORTED_ABI_VERSION(E = "") {
return new _(E, "UNSUPPORTED_ABI_VERSION", _.UNSUPPORTED_ABI_VERSION)
}
static AUTOBASE_IS_NOT_WRITEABLE(E = "") {
return new _(E, "AUTOBASE_IS_NOT_WRITEABLE", _.AUTOBASE_IS_NOT_WRITEABLE)
}
static CANNOT_LEAVE_ROOM(E = "") {
return new _(E, "CANNOT_LEAVE_ROOM", _.CANNOT_LEAVE_ROOM)
}
static PRIVATE_PROFILE_NOT_ENABLED(E = "Private profile plugin is not enabled on this room") {
return new _(E, "PRIVATE_PROFILE_NOT_ENABLED", _.PRIVATE_PROFILE_NOT_ENABLED)
}
static PLUGIN_NOT_ENABLED(E = "Plugin is not enabled for this room") {
return new _(E, "PLUGIN_NOT_ENABLED", _.PLUGIN_NOT_ENABLED)
}
static ALREADY_MIGRATING(E = "") {
return new _(E, "ALREADY_MIGRATING", _.ALREADY_MIGRATING)
}
static IDENTITY_REQUIRED(E = "") {
return new _(E, "IDENTITY_REQUIRED", _.IDENTITY_REQUIRED)
}
static CANNOT_UPDATE_DEVICE_DURING_MIGRATION(E = "") {
return new _(
E,
"CANNOT_UPDATE_DEVICE_DURING_MIGRATION",
_.CANNOT_UPDATE_DEVICE_DURING_MIGRATION,
)
}
static USERNAME_TOO_LONG(E = "") {
return new _(E, "USERNAME_TOO_LONG", _.USERNAME_TOO_LONG)
}
static AVATAR_TOO_LARGE(E = "") {
return new _(E, "AVATAR_TOO_LARGE", _.AVATAR_TOO_LARGE)
}
static FILE_PREVIEW_SIZE_EXCEEDED(E = "") {
return new _(E, "FILE_PREVIEW_SIZE_EXCEEDED", _.FILE_PREVIEW_SIZE_EXCEEDED)
}
static UNKNOWN_ROOM_CONFIG_KEY(E = "") {
return new _(E, "UNKNOWN_ROOM_CONFIG_KEY", _.UNKNOWN_ROOM_CONFIG_KEY)
}
static ROOM_LOCKED(E = "") {
return new _(E, "ROOM_LOCKED", _.ROOM_LOCKED)
}
static UNKNOWN_ROOM_COMMAND(E = "") {
return new _(E, "UNKNOWN_ROOM_COMMAND", _.UNKNOWN_ROOM_COMMAND)
}
static INVALID_ROOM_COMMAND_ARGUMENTS(E = "") {
return new _(E, "INVALID_ROOM_COMMAND_ARGUMENTS", _.INVALID_ROOM_COMMAND_ARGUMENTS)
}
static FEATURE_NOT_SUPPORTED(E = "") {
return new _(E, "FEATURE_NOT_SUPPORTED", _.FEATURE_NOT_SUPPORTED)
}
}
module.exports = { ERRORS: E, KeetError: _ }