@snowtop/ent 0.1.0-alpha40 → 0.1.0-alpha43

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.
@@ -56,7 +56,7 @@ export interface Action<TEnt extends Ent<TViewer>, TBuilder extends Builder<TEnt
56
56
  transformWrite?: (stmt: UpdateOperation<TEnt, TViewer>) => Promise<TransformedUpdateOperation<TEnt>> | TransformedUpdateOperation<TEnt> | null;
57
57
  valid(): Promise<boolean>;
58
58
  validX(): Promise<void>;
59
- viewerForEntLoad?(data: Data): TViewer | Promise<TViewer>;
59
+ viewerForEntLoad?(data: Data, context?: Context<TViewer>): TViewer | Promise<TViewer>;
60
60
  }
61
61
  export declare function saveBuilder<TEnt extends Ent<TViewer>, TViewer extends Viewer>(builder: Builder<TEnt, TViewer>): Promise<void>;
62
62
  export declare function saveBuilderX<TEnt extends Ent<TViewer>, TViewer extends Viewer>(builder: Builder<TEnt, TViewer>): Promise<void>;
@@ -615,7 +615,7 @@ class Orchestrator {
615
615
  if (!action || !action.viewerForEntLoad) {
616
616
  return this.options.viewer;
617
617
  }
618
- return action.viewerForEntLoad(data);
618
+ return action.viewerForEntLoad(data, action.builder.viewer.context);
619
619
  }
620
620
  async returnedRow() {
621
621
  if (this.mainOp && this.mainOp.returnedRow) {
package/core/context.js CHANGED
@@ -39,7 +39,7 @@ class ContextCache {
39
39
  const key = this.getkey(options);
40
40
  let rows = m.get(key);
41
41
  if (rows) {
42
- (0, logger_1.log)("query", {
42
+ (0, logger_1.log)("cache", {
43
43
  "cache-hit": key,
44
44
  "tableName": options.tableName,
45
45
  });
@@ -54,7 +54,7 @@ class ContextCache {
54
54
  const key = this.getkey(options);
55
55
  let row = m.get(key);
56
56
  if (row) {
57
- (0, logger_1.log)("query", {
57
+ (0, logger_1.log)("cache", {
58
58
  "cache-hit": key,
59
59
  "tableName": options.tableName,
60
60
  });
package/core/ent.js CHANGED
@@ -38,7 +38,7 @@ class cacheMap {
38
38
  get(key) {
39
39
  const ret = this.m.get(key);
40
40
  if (ret) {
41
- (0, logger_1.log)("query", {
41
+ (0, logger_1.log)("cache", {
42
42
  "dataloader-cache-hit": key,
43
43
  "tableName": this.options.tableName,
44
44
  });
@@ -37,12 +37,12 @@ class cacheMap {
37
37
  // might be a lot?
38
38
  // TODO this is not the best log format
39
39
  // was designed for ObjectLoader time. Now we have different needs e.g. count, assoc etc
40
- (0, logger_1.log)("query", {
40
+ (0, logger_1.log)("cache", {
41
41
  "dataloader-cache-hit": key,
42
42
  "tableName": this.options.tableName,
43
43
  });
44
44
  // } else {
45
- // log("query", {
45
+ // log("cache", {
46
46
  // "dataloader-cache-miss": key,
47
47
  // "tableName": options.tableName,
48
48
  // });
@@ -50,21 +50,21 @@ class cacheMap {
50
50
  return ret;
51
51
  }
52
52
  set(key, value) {
53
- // log("query", {
53
+ // log("cache", {
54
54
  // "dataloader-cache-set": key,
55
55
  // "tableName": options.tableName,
56
56
  // });
57
57
  return this.m.set(key, value);
58
58
  }
59
59
  delete(key) {
60
- // log("query", {
60
+ // log("cache", {
61
61
  // "dataloader-cache-delete": key,
62
62
  // "tableName": options.tableName,
63
63
  // });
64
64
  return this.m.delete(key);
65
65
  }
66
66
  clear() {
67
- // log("query", {
67
+ // log("cache", {
68
68
  // "dataloader-cache-clear": true,
69
69
  // "tableName": options.tableName,
70
70
  // });
package/core/logger.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- declare type logType = "query" | "warn" | "info" | "error" | "debug";
1
+ declare type logType = "query" | "warn" | "info" | "error" | "debug" | "cache";
2
2
  export declare function setLogLevels(levels: logType | logType[]): void;
3
3
  export declare function clearLogLevels(): void;
4
4
  export declare function log(level: logType, msg: any): void;
package/core/logger.js CHANGED
@@ -7,6 +7,7 @@ var m = {
7
7
  info: "log",
8
8
  error: "error",
9
9
  debug: "debug",
10
+ cache: "log",
10
11
  };
11
12
  var logLevels = new Map();
12
13
  function setLogLevels(levels) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@snowtop/ent",
3
- "version": "0.1.0-alpha40",
3
+ "version": "0.1.0-alpha43",
4
4
  "description": "snowtop ent framework",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -83,6 +83,12 @@ class StructField extends field_1.BaseField {
83
83
  }
84
84
  promises.push(field.valid(val));
85
85
  }
86
+ for (const k in obj) {
87
+ // extra undefined fields are invalid
88
+ if (this.options.fields[k] === undefined) {
89
+ return false;
90
+ }
91
+ }
86
92
  if (!valid) {
87
93
  return valid;
88
94
  }