Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 589cb7d579 | |||
| 3680ad1914 | |||
| 96e13d85fc | |||
| 5a9283ad85 | |||
| b1ea489ccb | |||
| c3f2779650 | |||
| 248b24e612 | |||
| b4a9057e2b |
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@extollo/lib",
|
||||
"version": "0.5.4",
|
||||
"version": "0.5.8",
|
||||
"description": "The framework library that lifts up your code.",
|
||||
"main": "lib/index.js",
|
||||
"types": "lib/index.d.ts",
|
||||
|
||||
@@ -172,6 +172,7 @@ export abstract class Directive extends AppClass {
|
||||
} catch (e: unknown) {
|
||||
if ( e instanceof Error ) {
|
||||
this.nativeOutput(e.message)
|
||||
this.error(e)
|
||||
}
|
||||
|
||||
if ( e instanceof OptionValidationError ) {
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
/**
|
||||
* Base type for an API response format.
|
||||
*/
|
||||
export interface APIResponse {
|
||||
export interface APIResponse<T> {
|
||||
success: boolean,
|
||||
message?: string,
|
||||
data?: any,
|
||||
data?: T,
|
||||
error?: {
|
||||
name: string,
|
||||
message: string,
|
||||
@@ -17,7 +17,7 @@ export interface APIResponse {
|
||||
* @param {string} displayMessage
|
||||
* @return APIResponse
|
||||
*/
|
||||
export function message(displayMessage: string): APIResponse {
|
||||
export function message(displayMessage: string): APIResponse<void> {
|
||||
return {
|
||||
success: true,
|
||||
message: displayMessage,
|
||||
@@ -29,7 +29,7 @@ export function message(displayMessage: string): APIResponse {
|
||||
* @param record
|
||||
* @return APIResponse
|
||||
*/
|
||||
export function one(record: unknown): APIResponse {
|
||||
export function one<T>(record: T): APIResponse<T> {
|
||||
return {
|
||||
success: true,
|
||||
data: record,
|
||||
@@ -41,7 +41,7 @@ export function one(record: unknown): APIResponse {
|
||||
* @param {array} records
|
||||
* @return APIResponse
|
||||
*/
|
||||
export function many(records: any[]): APIResponse {
|
||||
export function many<T>(records: T[]): APIResponse<{records: T[], total: number}> {
|
||||
return {
|
||||
success: true,
|
||||
data: {
|
||||
@@ -56,7 +56,7 @@ export function many(records: any[]): APIResponse {
|
||||
* @return APIResponse
|
||||
* @param thrownError
|
||||
*/
|
||||
export function error(thrownError: string | Error): APIResponse {
|
||||
export function error(thrownError: string | Error): APIResponse<void> {
|
||||
if ( typeof thrownError === 'string' ) {
|
||||
return {
|
||||
success: false,
|
||||
|
||||
@@ -230,7 +230,7 @@ export class PostgreSQLDialect extends SQLDialect {
|
||||
const table: string = tableString.split('.').map(x => `"${x}"`)
|
||||
.join('.')
|
||||
queryLines.push('INSERT INTO ' + (typeof source === 'string' ? table : `${table} AS "${source.alias}"`)
|
||||
+ (columns.length ? ` (${columns.join(', ')})` : ''))
|
||||
+ (columns.length ? ` (${columns.map(x => `"${x}"`).join(', ')})` : ''))
|
||||
}
|
||||
|
||||
if ( Array.isArray(data) && !data.length ) {
|
||||
|
||||
@@ -627,7 +627,7 @@ export abstract class Model<T extends Model<T>> extends AppClass implements Bus
|
||||
|
||||
const data = result.rows.first()
|
||||
if ( data ) {
|
||||
await this.assumeFromSource(result)
|
||||
await this.assumeFromSource(data)
|
||||
}
|
||||
|
||||
await this.dispatch(new ModelCreatedEvent<T>(this as any))
|
||||
|
||||
Reference in New Issue
Block a user