@sentio/sdk 2.37.0-rc.2 → 2.37.0-rc.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"core-plugin.d.ts","sourceRoot":"","sources":["../../src/core/core-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAiB,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAStD,qBAAa,UAAW,SAAQ,MAAM;IACpC,IAAI,EAAE,MAAM,CAAe;IAErB,SAAS,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CAyC9D"}
1
+ {"version":3,"file":"core-plugin.d.ts","sourceRoot":"","sources":["../../src/core/core-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAiB,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAStD,qBAAa,UAAW,SAAQ,MAAM;IACpC,IAAI,EAAE,MAAM,CAAe;IAErB,SAAS,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CA2C9D"}
@@ -39,7 +39,9 @@ export class CorePlugin extends Plugin {
39
39
  }
40
40
  if (DatabaseSchemaState.INSTANCE.getValues().length > 0) {
41
41
  config.dbSchema = {
42
- gqlSchema: DatabaseSchemaState.INSTANCE.getValues().join('\n\n')
42
+ gqlSchema: DatabaseSchemaState.INSTANCE.getValues()
43
+ .map((e) => e.source)
44
+ .join('\n\n')
43
45
  };
44
46
  }
45
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"core-plugin.js","sourceRoot":"","sources":["../../src/core/core-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAGvD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,OAAO,UAAW,SAAQ,MAAM;IACpC,IAAI,GAAW,YAAY,CAAA;IAE3B,KAAK,CAAC,SAAS,CAAC,MAA6B;QAC3C,4DAA4D;QAC5D,MAAM,CAAC,iBAAiB,GAAG,CAAC,GAAG,qBAAqB,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;QAE1E,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;YACtD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBACxB,GAAG,MAAM,CAAC,MAAM;aACjB,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,gBAAgB,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;YAC1D,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC;gBAC1B,GAAG,KAAK,CAAC,MAAM;aAChB,CAAC,CAAA;QACJ,CAAC;QAED,mDAAmD;QACnD,KAAK,MAAM,YAAY,IAAI,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;YAClE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC;gBAC/B,yBAAyB,EAAE,YAAY,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE;gBACpE,SAAS,EAAE,YAAY,CAAC,IAAI;gBAC5B,eAAe,EAAE,SAAS;gBAC1B,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,UAAU,IAAI,KAAK;gBACpD,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK;aAC7C,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;YAC1D,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBACxB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC1B,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,mBAAmB,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,CAAC,QAAQ,GAAG;gBAChB,SAAS,EAAE,mBAAmB,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;aACjE,CAAA;QACH,CAAC;IACH,CAAC;CACF;AAED,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,CAAA"}
1
+ {"version":3,"file":"core-plugin.js","sourceRoot":"","sources":["../../src/core/core-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAGvD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,OAAO,UAAW,SAAQ,MAAM;IACpC,IAAI,GAAW,YAAY,CAAA;IAE3B,KAAK,CAAC,SAAS,CAAC,MAA6B;QAC3C,4DAA4D;QAC5D,MAAM,CAAC,iBAAiB,GAAG,CAAC,GAAG,qBAAqB,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;QAE1E,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;YACtD,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBACxB,GAAG,MAAM,CAAC,MAAM;aACjB,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,gBAAgB,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;YAC1D,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC;gBAC1B,GAAG,KAAK,CAAC,MAAM;aAChB,CAAC,CAAA;QACJ,CAAC;QAED,mDAAmD;QACnD,KAAK,MAAM,YAAY,IAAI,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;YAClE,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC;gBAC/B,yBAAyB,EAAE,YAAY,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE;gBACpE,SAAS,EAAE,YAAY,CAAC,IAAI;gBAC5B,eAAe,EAAE,SAAS;gBAC1B,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,UAAU,IAAI,KAAK;gBACpD,cAAc,EAAE,SAAS;gBACzB,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK;aAC7C,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;YAC1D,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBACxB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;aAC1B,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,mBAAmB,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,MAAM,CAAC,QAAQ,GAAG;gBAChB,SAAS,EAAE,mBAAmB,CAAC,QAAQ,CAAC,SAAS,EAAE;qBAChD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;qBACpB,IAAI,CAAC,MAAM,CAAC;aAChB,CAAA;QACH,CAAC;IACH,CAAC;CACF;AAED,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,CAAA"}
@@ -1,8 +1,15 @@
1
1
  import { ListStateStorage } from '@sentio/runtime';
2
- export declare class DatabaseSchemaState extends ListStateStorage<string> {
2
+ import { EntityClass } from '../store/index.js';
3
+ type Schema = {
4
+ source: string;
5
+ entities: Record<string, EntityClass<any>>;
6
+ };
7
+ export declare class DatabaseSchemaState extends ListStateStorage<Schema> {
3
8
  static INSTANCE: DatabaseSchemaState;
4
9
  }
5
10
  export declare class DatabaseSchema {
6
- static register(schema: string): void;
11
+ static register(schema: Schema): void;
12
+ static findEntity(name: string): EntityClass<any> | undefined;
7
13
  }
14
+ export {};
8
15
  //# sourceMappingURL=database-schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"database-schema.d.ts","sourceRoot":"","sources":["../../src/core/database-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAElD,qBAAa,mBAAoB,SAAQ,gBAAgB,CAAC,MAAM,CAAC;IAC/D,MAAM,CAAC,QAAQ,sBAA4B;CAC5C;AAED,qBAAa,cAAc;IACzB,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM;CAG/B"}
1
+ {"version":3,"file":"database-schema.d.ts","sourceRoot":"","sources":["../../src/core/database-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,KAAK,MAAM,GAAG;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAA;CAC3C,CAAA;AAED,qBAAa,mBAAoB,SAAQ,gBAAgB,CAAC,MAAM,CAAC;IAC/D,MAAM,CAAC,QAAQ,sBAA4B;CAC5C;AAED,qBAAa,cAAc;IACzB,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM;IAI9B,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM;CAM/B"}
@@ -6,5 +6,11 @@ export class DatabaseSchema {
6
6
  static register(schema) {
7
7
  DatabaseSchemaState.INSTANCE.addValue(schema);
8
8
  }
9
+ static findEntity(name) {
10
+ const s = DatabaseSchemaState.INSTANCE.getValues().find((s) => {
11
+ return s.entities[name] != null;
12
+ });
13
+ return s?.entities[name];
14
+ }
9
15
  }
10
16
  //# sourceMappingURL=database-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"database-schema.js","sourceRoot":"","sources":["../../src/core/database-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAElD,MAAM,OAAO,mBAAoB,SAAQ,gBAAwB;IAC/D,MAAM,CAAC,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAA;;AAG7C,MAAM,OAAO,cAAc;IACzB,MAAM,CAAC,QAAQ,CAAC,MAAc;QAC5B,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC/C,CAAC;CACF"}
1
+ {"version":3,"file":"database-schema.js","sourceRoot":"","sources":["../../src/core/database-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAQlD,MAAM,OAAO,mBAAoB,SAAQ,gBAAwB;IAC/D,MAAM,CAAC,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAA;;AAG7C,MAAM,OAAO,cAAc;IACzB,MAAM,CAAC,QAAQ,CAAC,MAAc;QAC5B,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC/C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,IAAY;QAC5B,MAAM,CAAC,GAAG,mBAAmB,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5D,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAA;QACjC,CAAC,CAAC,CAAA;QACF,OAAO,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../src/store/codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAcd,MAAM,SAAS,CAAA;AAOhB,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,iBAW9D;AA+JD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,aAAa,UAU3D"}
1
+ {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../../src/store/codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAcd,MAAM,SAAS,CAAA;AAOhB,wBAAsB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,iBAW9D;AAkLD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,aAAa,UAU3D"}
@@ -24,6 +24,7 @@ async function codegenInternal(schema, source, target) {
24
24
  "import {entity, derivedFrom, BigDecimal, DateTime, Json, Bytes, ID, Entity, Store} from '@sentio/sdk/store'",
25
25
  `import { DatabaseSchema } from "@sentio/sdk"`
26
26
  ];
27
+ const entities = [];
27
28
  for (const t of Object.values(schema.getTypeMap())) {
28
29
  if (t.name.startsWith('__')) {
29
30
  continue;
@@ -31,6 +32,7 @@ async function codegenInternal(schema, source, target) {
31
32
  if (t instanceof GraphQLObjectType) {
32
33
  const entityContent = genEntity(t);
33
34
  results.push(entityContent);
35
+ entities.push(t.name);
34
36
  }
35
37
  if (t instanceof GraphQLEnumType) {
36
38
  results.push(genEnum(t));
@@ -42,7 +44,12 @@ async function codegenInternal(schema, source, target) {
42
44
  const contents = results.join('\n') +
43
45
  `\n
44
46
  const source = \`${source.replaceAll('`', '`')}\`
45
- DatabaseSchema.register(source)
47
+ DatabaseSchema.register({
48
+ source,
49
+ entities: {
50
+ ${entities.map((e) => `"${e}": ${e}`).join(',\n\t\t')}
51
+ }
52
+ })
46
53
  `;
47
54
  await mkdirp(path.dirname(target));
48
55
  fs.writeFileSync(target, contents);
@@ -129,6 +136,18 @@ function genField(field) {
129
136
  return `${directives.join()}\tget ${field.name}(): ${returnType} { return this.get("${field.name}") }
130
137
  set ${field.name}(value: ${type}) { this.set("${field.name}", value) }`;
131
138
  }
139
+ function genDataType(t) {
140
+ let output = `type ${t.name}Data = `;
141
+ const relationsFields = Object.values(t.getFields()).filter((f) => isObject(f.type));
142
+ if (relationsFields.length > 0) {
143
+ output += `Omit<${t.name}, ${relationsFields.map((f) => `"${f.name}"`).join(' | ')}>`;
144
+ output += ' & {' + relationsFields.map((f) => `${f.name}?: ${isList(f.type) ? 'ID[]' : 'ID'}`).join(', ') + '}';
145
+ }
146
+ else {
147
+ output += `${t.name}`;
148
+ }
149
+ return output;
150
+ }
132
151
  function genEntity(t) {
133
152
  const decorators = t.astNode?.directives?.map(directive2decorator) || [];
134
153
  let impls = '';
@@ -141,9 +160,10 @@ function genEntity(t) {
141
160
  .join(', ');
142
161
  }
143
162
  return `
163
+ ${genDataType(t)}
144
164
  ${decorators.join('\n')}
145
165
  export class ${t.name} extends Entity${impls} {
146
- constructor(data: Partial<${t.name}>) {
166
+ constructor(data: Partial<${t.name}Data>) {
147
167
  super(data)
148
168
  }
149
169
  ${Object.values(t.getFields()).map(genField).join('\n')}
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/store/codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../src/store/codegen.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,10 @@ type Constructor = {
3
3
  };
4
4
  export declare function entity<T extends Constructor>(constructor: T, context: any): T;
5
5
  export declare function derivedFrom(field: string): (target: any, context: any) => void;
6
+ export declare function unique(field: string): (target: any, context: any) => void;
7
+ export declare function index(field: string[]): (target: any, context: any) => void;
8
+ export declare function fulltext(query: string): (target: any, context: any) => void;
9
+ export declare function cardinality(value: number): (target: any, context: any) => void;
10
+ export declare function byteWeight(value: number): (target: any, context: any) => void;
6
11
  export {};
7
12
  //# sourceMappingURL=decorators.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/store/decorators.ts"],"names":[],"mappings":"AAAA,KAAK,WAAW,GAAG;IAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;CAAE,CAAA;AAEhD,wBAAgB,MAAM,CAAC,CAAC,SAAS,WAAW,EAAE,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,KAEzE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,YACd,GAAG,WAAW,GAAG,UAC3C"}
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/store/decorators.ts"],"names":[],"mappings":"AAAA,KAAK,WAAW,GAAG;IAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;CAAE,CAAA;AAEhD,wBAAgB,MAAM,CAAC,CAAC,SAAS,WAAW,EAAE,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,KAEzE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,YACd,GAAG,WAAW,GAAG,UAC3C;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,YACT,GAAG,WAAW,GAAG,UAC3C;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,YACV,GAAG,WAAW,GAAG,UAC3C;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,YACX,GAAG,WAAW,GAAG,UAC3C;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,YACd,GAAG,WAAW,GAAG,UAC3C;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,YACb,GAAG,WAAW,GAAG,UAC3C"}
@@ -4,4 +4,19 @@ export function entity(constructor, context) {
4
4
  export function derivedFrom(field) {
5
5
  return function (target, context) { };
6
6
  }
7
+ export function unique(field) {
8
+ return function (target, context) { };
9
+ }
10
+ export function index(field) {
11
+ return function (target, context) { };
12
+ }
13
+ export function fulltext(query) {
14
+ return function (target, context) { };
15
+ }
16
+ export function cardinality(value) {
17
+ return function (target, context) { };
18
+ }
19
+ export function byteWeight(value) {
20
+ return function (target, context) { };
21
+ }
7
22
  //# sourceMappingURL=decorators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/store/decorators.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,MAAM,CAAwB,WAAc,EAAE,OAAY;IACxE,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,UAAU,MAAW,EAAE,OAAY,IAAG,CAAC,CAAA;AAChD,CAAC"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/store/decorators.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,MAAM,CAAwB,WAAc,EAAE,OAAY;IACxE,OAAO,WAAW,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,UAAU,MAAW,EAAE,OAAY,IAAG,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,KAAa;IAClC,OAAO,UAAU,MAAW,EAAE,OAAY,IAAG,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,KAAe;IACnC,OAAO,UAAU,MAAW,EAAE,OAAY,IAAG,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,OAAO,UAAU,MAAW,EAAE,OAAY,IAAG,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,UAAU,MAAW,EAAE,OAAY,IAAG,CAAC,CAAA;AAChD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAO,UAAU,MAAW,EAAE,OAAY,IAAG,CAAC,CAAA;AAChD,CAAC"}
@@ -3,11 +3,11 @@ import { ID } from './types.js';
3
3
  export interface EntityClass<T extends Entity> {
4
4
  new (data: any): T;
5
5
  }
6
- export declare abstract class Entity {
6
+ export declare class Entity {
7
7
  get id(): ID;
8
8
  private _store;
9
9
  data: Record<string, any>;
10
- protected constructor(data: Record<string, any>);
10
+ constructor(data: any);
11
11
  private getIdFromEntity;
12
12
  set store(store: Store);
13
13
  get<T>(field: string): T;
@@ -1 +1 @@
1
- {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/store/entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAA;AAE/B,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM;IAC3C,KAAK,IAAI,EAAE,GAAG,GAAG,CAAC,CAAA;CACnB;AAED,8BAAsB,MAAM;IAC1B,IAAI,EAAE,IAAI,EAAE,CAEX;IAED,OAAO,CAAC,MAAM,CAAmB;IACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAK;IAC9B,SAAS,aAAa,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAU/C,OAAO,CAAC,eAAe;IASvB,IAAI,KAAK,CAAC,KAAK,EAAE,KAAK,EAErB;IAED,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAIxB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI;IASvD,SAAS,CAAC,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAKlH,SAAS,CAAC,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAKrG"}
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/store/entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAA;AAE/B,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,MAAM;IAC3C,KAAK,IAAI,EAAE,GAAG,GAAG,CAAC,CAAA;CACnB;AAED,qBAAa,MAAM;IACjB,IAAI,EAAE,IAAI,EAAE,CAEX;IAED,OAAO,CAAC,MAAM,CAAmB;IACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAK;gBAClB,IAAI,EAAE,GAAG;IAUrB,OAAO,CAAC,eAAe;IASvB,IAAI,KAAK,CAAC,KAAK,EAAE,KAAK,EAErB;IAED,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAIxB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI;IASvD,SAAS,CAAC,cAAc,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAKlH,SAAS,CAAC,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAKrG"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/store/entity.ts"],"names":[],"mappings":"AAOA,MAAM,OAAgB,MAAM;IAC1B,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAEO,MAAM,CAAmB;IACjC,IAAI,GAAwB,EAAE,CAAA;IAC9B,YAAsB,IAAyB;QAC7C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;YAC5D,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,eAAe,CAAC,MAAW;QACjC,IAAI,MAAM,YAAY,MAAM,EAAE,CAAC;YAC7B,OAAO,MAAM,CAAC,EAAE,CAAA;QAClB,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACnD,OAAO,MAAM,CAAC,EAAE,CAAA;QAClB,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,KAAK,CAAC,KAAY;QACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;IACrB,CAAC;IAED,GAAG,CAAI,KAAa;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAED,GAAG,CAAI,KAAa,EAAE,KAA0B;QAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAY,CAAC,EAAE,CAAC,CAAA;QACvD,CAAC;aAAM,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAI,KAAgB,CAAC,EAAE,CAAA;QACzC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;IAC1B,CAAC;IAES,cAAc,CAAmB,MAA+B,EAAE,KAAa;QACvF,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC3B,OAAO,EAAE,CAAC,CAAC,CAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACvF,CAAC;IAES,mBAAmB,CAAmB,MAAsB,EAAE,KAAa;QACnF,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5B,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;QACtE,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAiB,CAAA;IAC9C,CAAC;CACF"}
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/store/entity.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,MAAM;IACjB,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAEO,MAAM,CAAmB;IACjC,IAAI,GAAwB,EAAE,CAAA;IAC9B,YAAY,IAAS;QACnB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;YAC5D,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,eAAe,CAAC,MAAW;QACjC,IAAI,MAAM,YAAY,MAAM,EAAE,CAAC;YAC7B,OAAO,MAAM,CAAC,EAAE,CAAA;QAClB,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;YACnD,OAAO,MAAM,CAAC,EAAE,CAAA;QAClB,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,KAAK,CAAC,KAAY;QACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;IACrB,CAAC;IAED,GAAG,CAAI,KAAa;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAED,GAAG,CAAI,KAAa,EAAE,KAA0B;QAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAY,CAAC,EAAE,CAAC,CAAA;QACvD,CAAC;aAAM,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAI,KAAgB,CAAC,EAAE,CAAA;QACzC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;IAC1B,CAAC;IAES,cAAc,CAAmB,MAA+B,EAAE,KAAa;QACvF,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC3B,OAAO,EAAE,CAAC,CAAC,CAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACvF,CAAC;IAES,mBAAmB,CAAmB,MAAsB,EAAE,KAAa;QACnF,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC5B,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;QACtE,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAiB,CAAA;IAC9C,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE3C,qBAAa,KAAK;IACJ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAE5C,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAe1F,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAStE,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAiBrD,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAenG,OAAO,CAAC,SAAS;CAKlB"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3C,qBAAa,KAAK;IACJ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAE5C,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAe1F,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAStE,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAiBrD,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAenG,OAAO,CAAC,SAAS;CAclB"}
@@ -1,3 +1,5 @@
1
+ import { Entity } from './entity.js';
2
+ import { DatabaseSchema } from '../core/index.js';
1
3
  export class Store {
2
4
  context;
3
5
  constructor(context) {
@@ -53,6 +55,14 @@ export class Store {
53
55
  });
54
56
  }
55
57
  newEntity(entity, data) {
58
+ if (typeof entity == 'string') {
59
+ const en = DatabaseSchema.findEntity(entity);
60
+ if (!en) {
61
+ // it is an interface
62
+ return new Entity(data);
63
+ }
64
+ entity = en;
65
+ }
56
66
  const e = new entity(data);
57
67
  e.store = this;
58
68
  return e;
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,KAAK;IACa;IAA7B,YAA6B,OAAqB;QAArB,YAAO,GAAP,OAAO,CAAc;IAAG,CAAC;IAEtD,KAAK,CAAC,GAAG,CAAmB,MAA+B,EAAE,EAAU;QACrE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YACvC,GAAG,EAAE;gBACH,MAAM,EAAE,OAAO,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI;gBACxD,EAAE;aACH;SACF,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAQ,CAAA;QACnC,IAAI,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAwB,EAAE,IAAI,CAAC,CAAA;QACvD,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAwB,EAAE,EAAqB;QAC1D,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YAC7B,MAAM,EAAE;gBACN,MAAM,EAAE,MAAM,CAAC,IAAI;gBACnB,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aAClC;SACF,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAmB,MAAe;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YACvC,MAAM,EAAE;gBACN,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;gBAC/B,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;aACxE;SACF,CAAC,CAAA;QAEF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAA;QACzC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,GAAG,IAAI,CAAA;QACrB,CAAC;QAED,OAAO,OAAqB,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,IAAI,CAAmB,MAAsB,EAAE,KAAc,EAAE,MAAe;QAClF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YACvC,IAAI,EAAE;gBACJ,MAAM,EAAE,MAAM,CAAC,IAAI;gBACnB,KAAK;gBACL,MAAM;aACP;SACF,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAU,CAAA;QACrC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACvB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,SAAS,CAAmB,MAAsB,EAAE,IAAS;QACnE,MAAM,CAAC,GAAG,IAAK,MAAyB,CAAC,IAAI,CAAC,CAAA;QAC9C,CAAC,CAAC,KAAK,GAAG,IAAI,CAAA;QACd,OAAO,CAAC,CAAA;IACV,CAAC;CACF"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentio/sdk",
3
- "version": "2.37.0-rc.2",
3
+ "version": "2.37.0-rc.4",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "exports": {
@@ -79,8 +79,8 @@
79
79
  "typedoc": "^0.25.7",
80
80
  "utility-types": "^3.11.0",
81
81
  "yaml": "^2.3.4",
82
- "@sentio/protos": "2.37.0-rc.2",
83
- "@sentio/runtime": "^2.37.0-rc.2"
82
+ "@sentio/protos": "2.37.0-rc.4",
83
+ "@sentio/runtime": "^2.37.0-rc.4"
84
84
  },
85
85
  "peerDependencies": {
86
86
  "tsup": "npm:@sentio/tsup@^6.7.2"
@@ -48,7 +48,9 @@ export class CorePlugin extends Plugin {
48
48
 
49
49
  if (DatabaseSchemaState.INSTANCE.getValues().length > 0) {
50
50
  config.dbSchema = {
51
- gqlSchema: DatabaseSchemaState.INSTANCE.getValues().join('\n\n')
51
+ gqlSchema: DatabaseSchemaState.INSTANCE.getValues()
52
+ .map((e) => e.source)
53
+ .join('\n\n')
52
54
  }
53
55
  }
54
56
  }
@@ -1,11 +1,24 @@
1
1
  import { ListStateStorage } from '@sentio/runtime'
2
+ import { EntityClass } from '../store/index.js'
2
3
 
3
- export class DatabaseSchemaState extends ListStateStorage<string> {
4
+ type Schema = {
5
+ source: string
6
+ entities: Record<string, EntityClass<any>>
7
+ }
8
+
9
+ export class DatabaseSchemaState extends ListStateStorage<Schema> {
4
10
  static INSTANCE = new DatabaseSchemaState()
5
11
  }
6
12
 
7
13
  export class DatabaseSchema {
8
- static register(schema: string) {
14
+ static register(schema: Schema) {
9
15
  DatabaseSchemaState.INSTANCE.addValue(schema)
10
16
  }
17
+
18
+ static findEntity(name: string) {
19
+ const s = DatabaseSchemaState.INSTANCE.getValues().find((s) => {
20
+ return s.entities[name] != null
21
+ })
22
+ return s?.entities[name]
23
+ }
11
24
  }
@@ -41,7 +41,7 @@ async function codegenInternal(schema: GraphQLSchema, source: string, target: st
41
41
  "import {entity, derivedFrom, BigDecimal, DateTime, Json, Bytes, ID, Entity, Store} from '@sentio/sdk/store'",
42
42
  `import { DatabaseSchema } from "@sentio/sdk"`
43
43
  ]
44
-
44
+ const entities: string[] = []
45
45
  for (const t of Object.values(schema.getTypeMap())) {
46
46
  if (t.name.startsWith('__')) {
47
47
  continue
@@ -50,6 +50,7 @@ async function codegenInternal(schema: GraphQLSchema, source: string, target: st
50
50
  if (t instanceof GraphQLObjectType) {
51
51
  const entityContent = genEntity(t)
52
52
  results.push(entityContent)
53
+ entities.push(t.name)
53
54
  }
54
55
  if (t instanceof GraphQLEnumType) {
55
56
  results.push(genEnum(t))
@@ -63,7 +64,12 @@ async function codegenInternal(schema: GraphQLSchema, source: string, target: st
63
64
  results.join('\n') +
64
65
  `\n
65
66
  const source = \`${source.replaceAll('`', '`')}\`
66
- DatabaseSchema.register(source)
67
+ DatabaseSchema.register({
68
+ source,
69
+ entities: {
70
+ ${entities.map((e) => `"${e}": ${e}`).join(',\n\t\t')}
71
+ }
72
+ })
67
73
  `
68
74
  await mkdirp(path.dirname(target))
69
75
 
@@ -158,6 +164,18 @@ function genField(field: GraphQLField<any, any>) {
158
164
  set ${field.name}(value: ${type}) { this.set("${field.name}", value) }`
159
165
  }
160
166
 
167
+ function genDataType(t: GraphQLObjectType<any, any>) {
168
+ let output = `type ${t.name}Data = `
169
+ const relationsFields = Object.values(t.getFields()).filter((f) => isObject(f.type))
170
+ if (relationsFields.length > 0) {
171
+ output += `Omit<${t.name}, ${relationsFields.map((f) => `"${f.name}"`).join(' | ')}>`
172
+ output += ' & {' + relationsFields.map((f) => `${f.name}?: ${isList(f.type) ? 'ID[]' : 'ID'}`).join(', ') + '}'
173
+ } else {
174
+ output += `${t.name}`
175
+ }
176
+ return output
177
+ }
178
+
161
179
  function genEntity(t: GraphQLObjectType<any, any>) {
162
180
  const decorators = t.astNode?.directives?.map(directive2decorator) || []
163
181
 
@@ -172,9 +190,10 @@ function genEntity(t: GraphQLObjectType<any, any>) {
172
190
  }
173
191
 
174
192
  return `
193
+ ${genDataType(t)}
175
194
  ${decorators.join('\n')}
176
195
  export class ${t.name} extends Entity${impls} {
177
- constructor(data: Partial<${t.name}>) {
196
+ constructor(data: Partial<${t.name}Data>) {
178
197
  super(data)
179
198
  }
180
199
  ${Object.values(t.getFields()).map(genField).join('\n')}
@@ -7,3 +7,23 @@ export function entity<T extends Constructor>(constructor: T, context: any) {
7
7
  export function derivedFrom(field: string) {
8
8
  return function (target: any, context: any) {}
9
9
  }
10
+
11
+ export function unique(field: string) {
12
+ return function (target: any, context: any) {}
13
+ }
14
+
15
+ export function index(field: string[]) {
16
+ return function (target: any, context: any) {}
17
+ }
18
+
19
+ export function fulltext(query: string) {
20
+ return function (target: any, context: any) {}
21
+ }
22
+
23
+ export function cardinality(value: number) {
24
+ return function (target: any, context: any) {}
25
+ }
26
+
27
+ export function byteWeight(value: number) {
28
+ return function (target: any, context: any) {}
29
+ }
@@ -5,14 +5,14 @@ export interface EntityClass<T extends Entity> {
5
5
  new (data: any): T
6
6
  }
7
7
 
8
- export abstract class Entity {
8
+ export class Entity {
9
9
  get id(): ID {
10
10
  return this.get('id')
11
11
  }
12
12
 
13
13
  private _store: Store | undefined
14
14
  data: Record<string, any> = {}
15
- protected constructor(data: Record<string, any>) {
15
+ constructor(data: any) {
16
16
  Object.entries(data).forEach(([key, value]) => {
17
17
  if (Array.isArray(value)) {
18
18
  this.data[key] = value.map((v) => this.getIdFromEntity(v))
@@ -1,5 +1,6 @@
1
1
  import { Entity, EntityClass } from './entity.js'
2
2
  import { StoreContext } from './context.js'
3
+ import { DatabaseSchema } from '../core/index.js'
3
4
 
4
5
  export class Store {
5
6
  constructor(private readonly context: StoreContext) {}
@@ -14,7 +15,7 @@ export class Store {
14
15
 
15
16
  const data = (await promise) as any
16
17
  if (data?.['id'] != null) {
17
- return this.newEntity(entity as EntityClass<T>, data)
18
+ return this.newEntity(entity, data)
18
19
  }
19
20
  return undefined
20
21
  }
@@ -60,7 +61,16 @@ export class Store {
60
61
  })
61
62
  }
62
63
 
63
- private newEntity<T extends Entity>(entity: EntityClass<T>, data: any) {
64
+ private newEntity<T extends Entity>(entity: EntityClass<T> | string, data: any) {
65
+ if (typeof entity == 'string') {
66
+ const en = DatabaseSchema.findEntity(entity)
67
+ if (!en) {
68
+ // it is an interface
69
+ return new Entity(data) as T
70
+ }
71
+ entity = en
72
+ }
73
+
64
74
  const e = new (entity as EntityClass<T>)(data)
65
75
  e.store = this
66
76
  return e