onecore 0.0.18 → 0.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "onecore",
3
- "version": "0.0.18",
3
+ "version": "0.0.22",
4
4
  "description": "onecore",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./src/index.ts",
package/src/index.ts CHANGED
@@ -7,8 +7,7 @@ export {LocaleFormatter} from './formatter';
7
7
  export {StringFormatter} from './formatter';
8
8
  export {LocaleStringFormatter} from './formatter';
9
9
 
10
- export {Model} from './metadata';
11
- export {Attribute} from './metadata';
10
+ export * from './metadata';
12
11
 
13
12
  export {CacheService} from './cache';
14
13
  export {SyncCacheService} from './cache';
@@ -63,3 +62,4 @@ export * from './mail/config';
63
62
  export * from './location';
64
63
  export * from './video';
65
64
  export * from './health';
65
+ export * from './logger';
package/src/logger.ts ADDED
@@ -0,0 +1,31 @@
1
+ export interface SimpleMap {
2
+ [key: string]: string|number|boolean|Date;
3
+ }
4
+ export interface LogMap {
5
+ time: string;
6
+ level: string;
7
+ msg: string;
8
+ }
9
+ export interface LogMapConfig {
10
+ time?: string;
11
+ level?: string;
12
+ msg?: string;
13
+ }
14
+ export interface Logger {
15
+ level: number;
16
+ trace(msg: string, m?: SimpleMap, ctx?: any): void;
17
+ debug(msg: string, m?: SimpleMap, ctx?: any): void;
18
+ info(msg: string, m?: SimpleMap, ctx?: any): void;
19
+ warn(msg: string, m?: SimpleMap, ctx?: any): void;
20
+ error(msg: string, m?: SimpleMap, ctx?: any): void;
21
+ panic(msg: string, m?: SimpleMap, ctx?: any): void;
22
+ fatal(msg: string, m?: SimpleMap, ctx?: any): void;
23
+ isLevelEnabled(level: number): boolean;
24
+ isTraceEnabled(): boolean;
25
+ isDebugEnabled(): boolean;
26
+ isInfoEnabled(): boolean;
27
+ isWarnEnabled(): boolean;
28
+ isErrorEnabled(): boolean;
29
+ isPanicEnabled(): boolean;
30
+ isFatalEnabled(): boolean;
31
+ }
package/src/metadata.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export type DataType = 'ObjectId' | 'date' | 'datetime' | 'time'
2
- | 'boolean' | 'number' | 'integer' | 'string' | 'text'
3
- | 'object' | 'array' | 'primitives' | 'binary';
2
+ | 'boolean' | 'number' | 'integer' | 'string' | 'text'
3
+ | 'object' | 'array' | 'binary'
4
+ | 'primitives' | 'booleans' | 'numbers' | 'integers' | 'strings' | 'dates' | 'datetimes' | 'times';
4
5
  export type FormatType = 'currency' | 'percentage' | 'email' | 'url' | 'phone' | 'fax' | 'ipv4' | 'ipv6';
5
6
  export type MatchType = 'equal' | 'prefix' | 'contain' | 'max' | 'min'; // contain: default for string, min: default for Date, number
6
7
 
@@ -8,21 +9,23 @@ export interface Model {
8
9
  name?: string;
9
10
  attributes: Attributes;
10
11
  source?: string;
12
+ table?: string;
11
13
  collection?: string;
12
14
  model?: any;
13
15
  schema?: any;
14
16
  }
15
-
16
17
  export interface Attribute {
17
18
  name?: string;
18
19
  field?: string;
20
+ column?: string;
19
21
  type?: DataType;
20
22
  format?: FormatType;
21
23
  required?: boolean;
22
24
  match?: MatchType;
23
- defaultValue?: any;
25
+ default?: string|number|Date|boolean;
24
26
  key?: boolean;
25
27
  unique?: boolean;
28
+ enum?: string[] | number[];
26
29
  q?: boolean;
27
30
  noinsert?: boolean;
28
31
  noupdate?: boolean;
@@ -35,13 +38,15 @@ export interface Attribute {
35
38
  lt?: number;
36
39
  precision?: number;
37
40
  scale?: number;
38
- exp?: RegExp|string;
41
+ exp?: RegExp | string;
39
42
  code?: string;
40
43
  noformat?: boolean;
41
44
  ignored?: boolean;
42
45
  jsonField?: string;
43
46
  link?: string;
44
47
  typeof?: Attributes;
48
+ true?: string|number;
49
+ false?: string|number;
45
50
  }
46
51
  export interface Attributes {
47
52
  [key: string]: Attribute;
package/src/model.ts CHANGED
@@ -58,16 +58,26 @@ export interface CodeText {
58
58
  }
59
59
 
60
60
  export interface DateRange {
61
+ min?: Date;
62
+ max?: Date;
63
+ bottom?: Date;
64
+ top?: Date;
61
65
  startDate?: Date;
62
66
  endDate?: Date;
63
67
  }
64
68
  export interface TimeRange {
69
+ min?: Date;
70
+ max?: Date;
71
+ bottom?: Date;
72
+ top?: Date;
65
73
  startTime?: Date;
66
74
  endTime?: Date;
67
75
  }
68
76
  export interface NumberRange {
69
77
  min?: number;
70
78
  max?: number;
79
+ bottom?: number;
80
+ top?: number;
71
81
  lower?: number;
72
82
  upper?: number;
73
83
  }
package/src/mq.ts CHANGED
@@ -21,41 +21,41 @@ export interface Writer<T, R, ID> {
21
21
  write(data: T, attributes?: StringMap, id?: ID): Promise<R>;
22
22
  }
23
23
 
24
- export interface SimpleProducer<T, R, ID> {
24
+ export interface Producer<T, R, ID> {
25
25
  produce(to: string, data: T, attributes?: StringMap, id?: ID): Promise<R>;
26
26
  }
27
- export interface SimplePublisher<T, R, ID> {
27
+ export interface Publisher<T, R, ID> {
28
28
  publish(to: string, data: T, attributes?: StringMap, id?: ID): Promise<R>;
29
29
  }
30
- export interface SimpleSender<T, R, ID> {
30
+ export interface Sender<T, R, ID> {
31
31
  send(to: string, data: T, attributes?: StringMap, id?: ID): Promise<R>;
32
32
  }
33
- export interface SimpleWriter<T, R, ID> {
33
+ export interface Writer<T, R, ID> {
34
34
  write(to: string, data: T, attributes?: StringMap, id?: ID): Promise<R>;
35
35
  }
36
36
 
37
- export interface SimpleConsumer<T> {
38
- consume(handle: (data: T, attributes?: StringMap) => Promise<number>): void;
37
+ export interface SimpleConsumer<T, R> {
38
+ consume(handle: (data: T, attributes?: StringMap, raw?: R) => Promise<number>): void;
39
39
  }
40
40
  export interface SimpleSubscriber<T, R> {
41
- subscribe(handle: (data: T, attributes?: StringMap) => Promise<number>): void;
41
+ subscribe(handle: (data: T, attributes?: StringMap, raw?: R) => Promise<number>): void;
42
42
  }
43
- export interface SimpleReceiver<T> {
44
- receive(handle: (data: T, attributes?: StringMap) => Promise<number>): void;
43
+ export interface SimpleReceiver<T, R> {
44
+ receive(handle: (data: T, attributes?: StringMap, raw?: R) => Promise<number>): void;
45
45
  }
46
- export interface SimpleReader<T> {
47
- read(handle: (data: T, attributes?: StringMap) => Promise<number>): void;
46
+ export interface SimpleReader<T, R> {
47
+ read(handle: (data: T, attributes?: StringMap, raw?: R) => Promise<number>): void;
48
48
  }
49
49
 
50
- export interface Consumer<T, ID, R> {
50
+ export interface MessageConsumer<T, ID, R> {
51
51
  consume(data: Message<T, ID, R>): void;
52
52
  }
53
- export interface Subscriber<T, ID, R> {
53
+ export interface MessageSubscriber<T, ID, R> {
54
54
  subscribe(handle: (data: Message<T, ID, R>) => Promise<number>): void;
55
55
  }
56
- export interface Receiver<T, ID, R> {
56
+ export interface MessageReceiver<T, ID, R> {
57
57
  receive(handle: (data: Message<T, ID, R>) => Promise<number>): void;
58
58
  }
59
- export interface Reader<T, ID, R> {
59
+ export interface MessageReader<T, ID, R> {
60
60
  read(handle: (data: Message<T, ID, R>) => Promise<number>): void;
61
61
  }
@@ -1,7 +1,7 @@
1
1
  import {Attributes} from '../metadata';
2
2
 
3
3
  export interface ViewRepository<T, ID> {
4
- metadata?(): Attributes;
4
+ metadata?(): Attributes|undefined;
5
5
  keys?(): string[];
6
6
  all?(ctx?: any): Promise<T[]>;
7
7
  load(id: ID, ctx?: any): Promise<T|null>;
@@ -1,7 +1,7 @@
1
1
  import {Attributes} from '../metadata';
2
2
 
3
3
  export interface ViewService<T, ID> {
4
- metadata?(): Attributes;
4
+ metadata?(): Attributes|undefined;
5
5
  keys?(): string[];
6
6
  all?(ctx?: any): Promise<T[]>;
7
7
  load(id: ID, ctx?: any): Promise<T|null>;