'use strict' // error messages can be strings of objects exports['default'] = { errors: (api) => { return { '_toExpand': false, // /////////////// // SERIALIZERS // // /////////////// serializers: { servers: { web: (error) => { if (error.message) { return String(error.message) } else { return error } }, websocket: (error) => { if (error.message) { return String(error.message) } else { return error } }, socket: (error) => { if (error.message) { return String(error.message) } else { return error } }, specHelper: (error) => { if (error.message) { return 'Error: ' + String(error.message) } else { return error } } } }, // /////////// // ACTIONS // // /////////// // When a params for an action is invalid invalidParams: (data, validationErrors) => { if (validationErrors.length >= 0) { return validationErrors[0] } return data.connection.localize('actionhero.errors.invalidParams') }, // When a required param for an action is not provided missingParams: (data, missingParams) => { return data.connection.localize(['actionhero.errors.missingParams', {param: missingParams[0]}]) }, // user requested an unknown action unknownAction: (data) => { return data.connection.localize('actionhero.errors.unknownAction') }, // action not useable by this client/server type unsupportedServerType: (data) => { return data.connection.localize(['actionhero.errors.unsupportedServerType', {type: data.connection.type}]) }, // action failed because server is mid-shutdown serverShuttingDown: (data) => { return data.connection.localize('actionhero.errors.serverShuttingDown') }, // action failed because this client already has too many pending acitons // limit defined in api.config.general.simultaneousActions tooManyPendingActions: (data) => { return data.connection.localize('actionhero.errors.tooManyPendingActions') }, dataLengthTooLarge: (maxLength, receivedLength) => { return api.i18n.localize(['actionhero.errors.dataLengthTooLarge', {maxLength: maxLength, receivedLength: receivedLength}]) }, // /////////////// // FILE SERVER // // /////////////// // The body message to accompany 404 (file not found) errors regarding flat files // You may want to load in the contnet of 404.html or similar fileNotFound: (connection) => { return connection.localize(['actionhero.errors.fileNotFound']) }, // user didn't request a file fileNotProvided: (connection) => { return connection.localize('actionhero.errors.fileNotProvided') }, // something went wrong trying to read the file fileReadError: (connection, error) => { return connection.localize(['actionhero.errors.fileReadError', {error: String(error)}]) }, // /////////////// // CONNECTIONS // // /////////////// verbNotFound: (connection, verb) => { return connection.localize(['actionhero.errors.verbNotFound', {verb: verb}]) }, verbNotAllowed: (connection, verb) => { return connection.localize(['actionhero.errors.verbNotAllowed', {verb: verb}]) }, connectionRoomAndMessage: (connection) => { return connection.localize('actionhero.errors.connectionRoomAndMessage') }, connectionNotInRoom: (connection, room) => { return connection.localize(['actionhero.errors.connectionNotInRoom', {room: room}]) }, connectionAlreadyInRoom: (connection, room) => { return connection.localize(['actionhero.errors.connectionAlreadyInRoom', {room: room}]) }, connectionRoomHasBeenDeleted: (room) => { return api.i18n.localize('actionhero.errors.connectionRoomHasBeenDeleted') }, connectionRoomNotExist: (room) => { return api.i18n.localize('actionhero.errors.connectionRoomNotExist') }, connectionRoomExists: (room) => { return api.i18n.localize('actionhero.errors.connectionRoomExists') }, connectionRoomRequired: (room) => { return api.i18n.localize('actionhero.errors.connectionRoomRequired') } } } }