@snowtop/ent 0.1.0-alpha3 → 0.1.0-alpha8

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.
Files changed (60) hide show
  1. package/action/action.d.ts +2 -0
  2. package/action/executor.d.ts +1 -1
  3. package/action/orchestrator.d.ts +10 -2
  4. package/action/orchestrator.js +128 -34
  5. package/core/base.d.ts +5 -1
  6. package/core/base.js +16 -0
  7. package/core/clause.d.ts +24 -3
  8. package/core/clause.js +246 -5
  9. package/core/config.d.ts +18 -0
  10. package/core/config.js +17 -0
  11. package/core/db.d.ts +3 -3
  12. package/core/db.js +2 -0
  13. package/core/ent.d.ts +2 -4
  14. package/core/ent.js +70 -23
  15. package/core/loaders/assoc_edge_loader.d.ts +1 -1
  16. package/core/loaders/assoc_edge_loader.js +5 -4
  17. package/core/loaders/index_loader.js +1 -0
  18. package/core/loaders/object_loader.d.ts +7 -2
  19. package/core/loaders/object_loader.js +59 -4
  20. package/core/privacy.js +3 -0
  21. package/core/viewer.d.ts +1 -0
  22. package/core/viewer.js +4 -0
  23. package/graphql/graphql.d.ts +3 -2
  24. package/graphql/graphql.js +22 -21
  25. package/graphql/index.d.ts +1 -0
  26. package/graphql/index.js +3 -1
  27. package/graphql/mutations/union.d.ts +2 -0
  28. package/graphql/mutations/union.js +35 -0
  29. package/graphql/node_resolver.d.ts +0 -1
  30. package/index.d.ts +16 -1
  31. package/index.js +18 -5
  32. package/package.json +2 -2
  33. package/parse_schema/parse.d.ts +11 -4
  34. package/parse_schema/parse.js +50 -6
  35. package/schema/base_schema.d.ts +36 -1
  36. package/schema/base_schema.js +48 -2
  37. package/schema/field.js +1 -1
  38. package/schema/index.d.ts +2 -2
  39. package/schema/index.js +8 -1
  40. package/schema/schema.d.ts +50 -1
  41. package/schema/schema.js +113 -5
  42. package/schema/union_field.d.ts +2 -1
  43. package/schema/union_field.js +32 -14
  44. package/scripts/custom_graphql.js +122 -15
  45. package/scripts/transform_schema.js +204 -55
  46. package/testutils/builder.d.ts +5 -1
  47. package/testutils/builder.js +46 -2
  48. package/testutils/context/test_context.d.ts +2 -2
  49. package/testutils/context/test_context.js +7 -1
  50. package/testutils/db/test_db.d.ts +2 -1
  51. package/testutils/db/test_db.js +13 -4
  52. package/testutils/ent-graphql-tests/index.d.ts +2 -0
  53. package/testutils/ent-graphql-tests/index.js +7 -5
  54. package/testutils/fake_data/fake_contact.d.ts +2 -6
  55. package/testutils/fake_data/fake_contact.js +9 -16
  56. package/testutils/fake_data/fake_event.d.ts +2 -6
  57. package/testutils/fake_data/fake_event.js +17 -24
  58. package/testutils/fake_data/fake_user.d.ts +2 -6
  59. package/testutils/fake_data/fake_user.js +10 -17
  60. package/testutils/fake_data/test_helpers.js +1 -1
@@ -63,35 +63,28 @@ class FakeEvent {
63
63
  }
64
64
  }
65
65
  exports.FakeEvent = FakeEvent;
66
- class FakeEventSchema extends schema_1.BaseEntSchema {
67
- constructor() {
68
- super(...arguments);
69
- this.ent = FakeEvent;
70
- this.fields = {
71
- startTime: (0, schema_1.TimestampType)({
72
- index: true,
73
- }),
74
- endTime: (0, schema_1.TimestampType)({
75
- nullable: true,
76
- }),
77
- title: (0, schema_1.StringType)(),
78
- location: (0, schema_1.StringType)(),
79
- description: (0, schema_1.StringType)({
80
- nullable: true,
81
- }),
82
- userID: (0, schema_1.UUIDType)({
83
- foreignKey: { schema: "User", column: "ID" },
84
- }),
85
- };
86
- }
87
- }
88
- exports.FakeEventSchema = FakeEventSchema;
66
+ exports.FakeEventSchema = (0, builder_1.getBuilderSchemaFromFields)({
67
+ startTime: (0, schema_1.TimestampType)({
68
+ index: true,
69
+ }),
70
+ endTime: (0, schema_1.TimestampType)({
71
+ nullable: true,
72
+ }),
73
+ title: (0, schema_1.StringType)(),
74
+ location: (0, schema_1.StringType)(),
75
+ description: (0, schema_1.StringType)({
76
+ nullable: true,
77
+ }),
78
+ userID: (0, schema_1.UUIDType)({
79
+ foreignKey: { schema: "User", column: "ID" },
80
+ }),
81
+ }, FakeEvent);
89
82
  function getEventBuilder(viewer, input) {
90
83
  const m = new Map();
91
84
  for (const key in input) {
92
85
  m.set(key, input[key]);
93
86
  }
94
- return new builder_1.SimpleBuilder(viewer, new FakeEventSchema(), m);
87
+ return new builder_1.SimpleBuilder(viewer, exports.FakeEventSchema, m);
95
88
  }
96
89
  exports.getEventBuilder = getEventBuilder;
97
90
  async function createEvent(viewer, input) {
@@ -1,6 +1,5 @@
1
1
  import { ID, Ent, Viewer, Data, LoadEntOptions, PrivacyPolicy } from "../../core/base";
2
- import { BuilderSchema, SimpleAction } from "../builder";
3
- import { BaseEntSchema, FieldMap } from "../../schema";
2
+ import { SimpleAction } from "../builder";
4
3
  import { NodeType } from "./const";
5
4
  import { IDViewer, IDViewerOptions } from "../../core/viewer";
6
5
  import { ObjectLoaderFactory } from "../../core/loaders";
@@ -32,10 +31,7 @@ export declare class FakeUser implements Ent {
32
31
  static load(v: Viewer, id: ID): Promise<FakeUser | null>;
33
32
  static loadX(v: Viewer, id: ID): Promise<FakeUser>;
34
33
  }
35
- export declare class FakeUserSchema extends BaseEntSchema implements BuilderSchema<FakeUser> {
36
- ent: typeof FakeUser;
37
- fields: FieldMap;
38
- }
34
+ export declare const FakeUserSchema: import("../builder").BuilderSchema<FakeUser>;
39
35
  export interface UserCreateInput {
40
36
  firstName: string;
41
37
  lastName: string;
@@ -89,22 +89,15 @@ class FakeUser {
89
89
  }
90
90
  }
91
91
  exports.FakeUser = FakeUser;
92
- class FakeUserSchema extends schema_1.BaseEntSchema {
93
- constructor() {
94
- super(...arguments);
95
- this.ent = FakeUser;
96
- this.fields = {
97
- firstName: (0, schema_1.StringType)(),
98
- lastName: (0, schema_1.StringType)(),
99
- emailAddress: (0, schema_1.StringType)(),
100
- phoneNumber: (0, schema_1.StringType)(),
101
- password: (0, schema_1.StringType)({
102
- nullable: true,
103
- }),
104
- };
105
- }
106
- }
107
- exports.FakeUserSchema = FakeUserSchema;
92
+ exports.FakeUserSchema = (0, builder_1.getBuilderSchemaFromFields)({
93
+ firstName: (0, schema_1.StringType)(),
94
+ lastName: (0, schema_1.StringType)(),
95
+ emailAddress: (0, schema_1.StringType)(),
96
+ phoneNumber: (0, schema_1.StringType)(),
97
+ password: (0, schema_1.StringType)({
98
+ nullable: true,
99
+ }),
100
+ }, FakeUser);
108
101
  function getUserBuilder(viewer, input) {
109
102
  const action = getUserAction(viewer, input);
110
103
  return action.builder;
@@ -115,7 +108,7 @@ function getUserAction(viewer, input) {
115
108
  for (const key in input) {
116
109
  m.set(key, input[key]);
117
110
  }
118
- const action = new builder_1.SimpleAction(viewer, new FakeUserSchema(), m);
111
+ const action = new builder_1.SimpleAction(viewer, exports.FakeUserSchema, m);
119
112
  action.viewerForEntLoad = (data) => {
120
113
  // load the created ent using a VC of the newly created user.
121
114
  return new viewer_1.IDViewer(data.id);
@@ -107,7 +107,7 @@ async function createUserPlusFriendRequests(input, slice) {
107
107
  return createTestUser(input);
108
108
  }));
109
109
  expect(friendRequests.length).toBe(userInputs.length);
110
- await addEdge(user, new _1.FakeUserSchema(), _1.EdgeType.UserToFriendRequests, true, ...friendRequests);
110
+ await addEdge(user, _1.FakeUserSchema, _1.EdgeType.UserToFriendRequests, true, ...friendRequests);
111
111
  return [user, friendRequests];
112
112
  }
113
113
  exports.createUserPlusFriendRequests = createUserPlusFriendRequests;