@snowtop/ent 0.1.0-alpha16 → 0.1.0-alpha160-test2
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/action/action.d.ts +25 -14
- package/action/action.js +22 -7
- package/action/executor.d.ts +16 -3
- package/action/executor.js +89 -28
- package/action/experimental_action.d.ts +25 -16
- package/action/experimental_action.js +34 -14
- package/action/index.d.ts +4 -1
- package/action/index.js +7 -1
- package/action/operations.d.ts +126 -0
- package/action/operations.js +686 -0
- package/action/orchestrator.d.ts +43 -12
- package/action/orchestrator.js +461 -101
- package/action/relative_value.d.ts +47 -0
- package/action/relative_value.js +125 -0
- package/action/transaction.d.ts +10 -0
- package/action/transaction.js +23 -0
- package/auth/auth.d.ts +1 -1
- package/core/base.d.ts +56 -23
- package/core/base.js +7 -1
- package/core/clause.d.ts +103 -39
- package/core/clause.js +430 -66
- package/core/config.d.ts +13 -3
- package/core/config.js +10 -1
- package/core/const.d.ts +3 -0
- package/core/const.js +6 -0
- package/core/context.d.ts +6 -3
- package/core/context.js +22 -3
- package/core/convert.d.ts +1 -1
- package/core/date.js +1 -5
- package/core/db.d.ts +12 -8
- package/core/db.js +21 -9
- package/core/ent.d.ts +99 -95
- package/core/ent.js +550 -602
- package/core/global_schema.d.ts +7 -0
- package/core/global_schema.js +51 -0
- package/core/loaders/assoc_count_loader.d.ts +5 -2
- package/core/loaders/assoc_count_loader.js +19 -3
- package/core/loaders/assoc_edge_loader.d.ts +2 -3
- package/core/loaders/assoc_edge_loader.js +23 -17
- package/core/loaders/index.d.ts +1 -2
- package/core/loaders/index.js +1 -5
- package/core/loaders/loader.d.ts +3 -3
- package/core/loaders/loader.js +4 -21
- package/core/loaders/object_loader.d.ts +30 -9
- package/core/loaders/object_loader.js +226 -79
- package/core/loaders/query_loader.d.ts +7 -13
- package/core/loaders/query_loader.js +60 -24
- package/core/loaders/raw_count_loader.d.ts +1 -0
- package/core/loaders/raw_count_loader.js +8 -3
- package/core/logger.d.ts +1 -1
- package/core/logger.js +1 -0
- package/core/privacy.d.ts +26 -16
- package/core/privacy.js +68 -51
- package/core/query/assoc_query.d.ts +3 -2
- package/core/query/assoc_query.js +10 -2
- package/core/query/custom_clause_query.d.ts +29 -0
- package/core/query/custom_clause_query.js +105 -0
- package/core/query/custom_query.d.ts +19 -2
- package/core/query/custom_query.js +111 -13
- package/core/query/index.d.ts +1 -0
- package/core/query/index.js +3 -1
- package/core/query/query.d.ts +18 -4
- package/core/query/query.js +135 -58
- package/core/query/shared_assoc_test.d.ts +2 -1
- package/core/query/shared_assoc_test.js +186 -55
- package/core/query/shared_test.d.ts +9 -2
- package/core/query/shared_test.js +529 -236
- package/core/query_impl.d.ts +8 -0
- package/core/query_impl.js +28 -0
- package/core/viewer.d.ts +2 -0
- package/core/viewer.js +3 -1
- package/graphql/graphql.d.ts +108 -22
- package/graphql/graphql.js +183 -137
- package/graphql/graphql_field_helpers.d.ts +9 -3
- package/graphql/graphql_field_helpers.js +22 -2
- package/graphql/index.d.ts +2 -2
- package/graphql/index.js +5 -5
- package/graphql/query/connection_type.d.ts +9 -9
- package/graphql/query/shared_assoc_test.js +1 -1
- package/graphql/query/shared_edge_connection.js +1 -19
- package/graphql/scalars/orderby_direction.d.ts +2 -0
- package/graphql/scalars/orderby_direction.js +15 -0
- package/imports/dataz/example1/_auth.js +128 -47
- package/imports/dataz/example1/_viewer.js +87 -39
- package/imports/index.d.ts +7 -2
- package/imports/index.js +20 -5
- package/index.d.ts +23 -5
- package/index.js +35 -10
- package/package.json +20 -19
- package/parse_schema/parse.d.ts +33 -9
- package/parse_schema/parse.js +182 -33
- package/schema/base_schema.d.ts +13 -3
- package/schema/base_schema.js +13 -0
- package/schema/field.d.ts +78 -21
- package/schema/field.js +232 -72
- package/schema/index.d.ts +2 -2
- package/schema/index.js +7 -2
- package/schema/json_field.d.ts +16 -4
- package/schema/json_field.js +32 -2
- package/schema/schema.d.ts +109 -20
- package/schema/schema.js +42 -53
- package/schema/struct_field.d.ts +15 -3
- package/schema/struct_field.js +117 -22
- package/schema/union_field.d.ts +1 -1
- package/scripts/custom_compiler.js +12 -8
- package/scripts/custom_graphql.js +167 -64
- package/scripts/migrate_v0.1.js +36 -0
- package/scripts/move_types.js +120 -0
- package/scripts/read_schema.js +22 -7
- package/testutils/action/complex_schemas.d.ts +69 -0
- package/testutils/action/complex_schemas.js +405 -0
- package/testutils/builder.d.ts +37 -41
- package/testutils/builder.js +66 -46
- package/testutils/db/fixture.d.ts +10 -0
- package/testutils/db/fixture.js +26 -0
- package/testutils/db/{test_db.d.ts → temp_db.d.ts} +32 -8
- package/testutils/db/{test_db.js → temp_db.js} +251 -48
- package/testutils/db/value.d.ts +7 -0
- package/testutils/db/value.js +251 -0
- package/testutils/db_mock.d.ts +16 -4
- package/testutils/db_mock.js +52 -9
- package/testutils/db_time_zone.d.ts +4 -0
- package/testutils/db_time_zone.js +41 -0
- package/testutils/ent-graphql-tests/index.d.ts +7 -1
- package/testutils/ent-graphql-tests/index.js +56 -26
- package/testutils/fake_comms.js +1 -1
- package/testutils/fake_data/const.d.ts +2 -1
- package/testutils/fake_data/const.js +3 -0
- package/testutils/fake_data/fake_contact.d.ts +7 -3
- package/testutils/fake_data/fake_contact.js +13 -7
- package/testutils/fake_data/fake_event.d.ts +4 -1
- package/testutils/fake_data/fake_event.js +7 -6
- package/testutils/fake_data/fake_tag.d.ts +36 -0
- package/testutils/fake_data/fake_tag.js +89 -0
- package/testutils/fake_data/fake_user.d.ts +8 -5
- package/testutils/fake_data/fake_user.js +31 -19
- package/testutils/fake_data/index.js +5 -1
- package/testutils/fake_data/internal.d.ts +2 -0
- package/testutils/fake_data/internal.js +7 -1
- package/testutils/fake_data/tag_query.d.ts +13 -0
- package/testutils/fake_data/tag_query.js +48 -0
- package/testutils/fake_data/test_helpers.d.ts +14 -6
- package/testutils/fake_data/test_helpers.js +31 -15
- package/testutils/fake_data/user_query.d.ts +16 -6
- package/testutils/fake_data/user_query.js +72 -23
- package/testutils/fake_log.js +1 -1
- package/testutils/parse_sql.d.ts +6 -0
- package/testutils/parse_sql.js +16 -2
- package/testutils/test_edge_global_schema.d.ts +15 -0
- package/testutils/test_edge_global_schema.js +62 -0
- package/testutils/write.d.ts +2 -2
- package/testutils/write.js +33 -7
- package/tsc/ast.d.ts +15 -3
- package/tsc/ast.js +114 -23
- package/tsc/compilerOptions.js +5 -1
- package/tsc/move_generated.d.ts +1 -0
- package/tsc/move_generated.js +164 -0
- package/tsc/transform.d.ts +22 -0
- package/tsc/transform.js +182 -0
- package/tsc/transform_action.d.ts +22 -0
- package/tsc/transform_action.js +183 -0
- package/tsc/transform_ent.d.ts +17 -0
- package/tsc/transform_ent.js +60 -0
- package/tsc/transform_schema.d.ts +27 -0
- package/{scripts → tsc}/transform_schema.js +146 -117
- package/core/loaders/index_loader.d.ts +0 -14
- package/core/loaders/index_loader.js +0 -27
- package/graphql/enums.d.ts +0 -3
- package/graphql/enums.js +0 -25
- package/scripts/move_generated.js +0 -141
- package/scripts/transform_actions.js +0 -266
- package/scripts/transform_code.d.ts +0 -1
- package/scripts/transform_code.js +0 -111
- package/scripts/transform_schema.d.ts +0 -1
- /package/scripts/{move_generated.d.ts → migrate_v0.1.d.ts} +0 -0
- /package/scripts/{transform_actions.d.ts → move_types.d.ts} +0 -0
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { Queryer, SyncQueryer } from "../core/db";
|
|
2
|
+
import { Viewer, Ent, ID, Data, DataOptions, EditRowOptions, LoadEntOptions, Context, CreateRowOptions } from "../core/base";
|
|
3
|
+
import { Executor } from "../action/action";
|
|
4
|
+
import { WriteOperation, Builder } from "../action";
|
|
5
|
+
import { AssocEdgeData, parameterizedQueryOptions } from "../core/ent";
|
|
6
|
+
export interface UpdatedOperation {
|
|
7
|
+
operation: WriteOperation;
|
|
8
|
+
builder: Builder<any>;
|
|
9
|
+
}
|
|
10
|
+
export interface DataOperation<T extends Ent = Ent> {
|
|
11
|
+
builder: Builder<T>;
|
|
12
|
+
preFetch?(queryer: Queryer, context?: Context): Promise<void>;
|
|
13
|
+
performWriteSync(queryer: SyncQueryer, context?: Context): void;
|
|
14
|
+
performWrite(queryer: Queryer, context?: Context): Promise<void>;
|
|
15
|
+
placeholderID?: ID;
|
|
16
|
+
returnedRow?(): Data | null;
|
|
17
|
+
createdEnt?(viewer: Viewer): T | null;
|
|
18
|
+
shortCircuit?(executor: Executor): boolean;
|
|
19
|
+
updatedOperation?(): UpdatedOperation | null;
|
|
20
|
+
resolve?(executor: Executor): void;
|
|
21
|
+
postFetch?(queryer: Queryer, context?: Context): Promise<void>;
|
|
22
|
+
}
|
|
23
|
+
export declare class DeleteNodeOperation implements DataOperation {
|
|
24
|
+
private id;
|
|
25
|
+
readonly builder: Builder<Ent>;
|
|
26
|
+
private options;
|
|
27
|
+
constructor(id: ID, builder: Builder<Ent>, options: DataOptions);
|
|
28
|
+
performWrite(queryer: Queryer, context?: Context): Promise<void>;
|
|
29
|
+
performWriteSync(queryer: SyncQueryer, context?: Context): void;
|
|
30
|
+
}
|
|
31
|
+
export declare class RawQueryOperation<TEnt extends Ent<TViewer>, TViewer extends Viewer = Viewer> implements DataOperation<TEnt> {
|
|
32
|
+
builder: Builder<TEnt, TViewer>;
|
|
33
|
+
private queries;
|
|
34
|
+
constructor(builder: Builder<TEnt, TViewer>, queries: (string | parameterizedQueryOptions)[]);
|
|
35
|
+
performWrite(queryer: Queryer, context?: Context): Promise<void>;
|
|
36
|
+
performWriteSync(queryer: SyncQueryer, context?: Context): void;
|
|
37
|
+
}
|
|
38
|
+
export interface EditNodeOptions<T extends Ent> extends EditRowOptions {
|
|
39
|
+
fieldsToResolve: string[];
|
|
40
|
+
loadEntOptions: LoadEntOptions<T>;
|
|
41
|
+
key: string;
|
|
42
|
+
onConflict?: CreateRowOptions["onConflict"];
|
|
43
|
+
builder: Builder<T>;
|
|
44
|
+
}
|
|
45
|
+
export declare class EditNodeOperation<T extends Ent> implements DataOperation {
|
|
46
|
+
options: EditNodeOptions<T>;
|
|
47
|
+
private existingEnt;
|
|
48
|
+
private row;
|
|
49
|
+
placeholderID?: ID | undefined;
|
|
50
|
+
private updatedOp;
|
|
51
|
+
builder: Builder<T>;
|
|
52
|
+
private resolved;
|
|
53
|
+
constructor(options: EditNodeOptions<T>, existingEnt?: Ent | null);
|
|
54
|
+
resolve<T extends Ent>(executor: Executor): void;
|
|
55
|
+
private hasData;
|
|
56
|
+
private buildOnConflictQuery;
|
|
57
|
+
performWrite(queryer: Queryer, context?: Context): Promise<void>;
|
|
58
|
+
private buildReloadQuery;
|
|
59
|
+
private reloadRow;
|
|
60
|
+
performWriteSync(queryer: SyncQueryer, context?: Context): void;
|
|
61
|
+
returnedRow(): Data | null;
|
|
62
|
+
createdEnt(viewer: Viewer): T | null;
|
|
63
|
+
updatedOperation(): UpdatedOperation | null;
|
|
64
|
+
}
|
|
65
|
+
export interface AssocEdgeInputOptions extends AssocEdgeOptions {
|
|
66
|
+
time?: Date;
|
|
67
|
+
data?: string | Builder<Ent>;
|
|
68
|
+
}
|
|
69
|
+
export interface AssocEdgeOptions {
|
|
70
|
+
conditional?: boolean;
|
|
71
|
+
disableTransformations?: boolean;
|
|
72
|
+
}
|
|
73
|
+
export interface AssocEdgeInput extends AssocEdgeInputOptions {
|
|
74
|
+
id1: ID;
|
|
75
|
+
id1Type: string;
|
|
76
|
+
edgeType: string;
|
|
77
|
+
id2: ID;
|
|
78
|
+
id2Type: string;
|
|
79
|
+
}
|
|
80
|
+
export declare class EdgeOperation implements DataOperation {
|
|
81
|
+
builder: Builder<any>;
|
|
82
|
+
edgeInput: AssocEdgeInput;
|
|
83
|
+
private options;
|
|
84
|
+
private edgeData;
|
|
85
|
+
private constructor();
|
|
86
|
+
preFetch(queryer: Queryer, context?: Context): Promise<void>;
|
|
87
|
+
performWrite(queryer: Queryer, context?: Context): Promise<void>;
|
|
88
|
+
performWriteSync(queryer: SyncQueryer, context?: Context): void;
|
|
89
|
+
private getDeleteRowParams;
|
|
90
|
+
private performDeleteWrite;
|
|
91
|
+
private performDeleteWriteSync;
|
|
92
|
+
private getInsertRowParams;
|
|
93
|
+
private performInsertWrite;
|
|
94
|
+
private performInsertWriteSync;
|
|
95
|
+
private resolveImpl;
|
|
96
|
+
resolve(executor: Executor): void;
|
|
97
|
+
symmetricEdge(): EdgeOperation;
|
|
98
|
+
inverseEdge(edgeData: AssocEdgeData): EdgeOperation;
|
|
99
|
+
private static resolveIDs;
|
|
100
|
+
private static isBuilder;
|
|
101
|
+
private static resolveData;
|
|
102
|
+
static inboundEdge<T extends Ent, T2 extends Ent>(builder: Builder<T>, edgeType: string, id1: Builder<T2> | ID, nodeType: string, options?: AssocEdgeInputOptions): EdgeOperation;
|
|
103
|
+
static outboundEdge<T extends Ent, T2 extends Ent>(builder: Builder<T>, edgeType: string, id2: Builder<T2> | ID, nodeType: string, options?: AssocEdgeInputOptions): EdgeOperation;
|
|
104
|
+
static removeInboundEdge<T extends Ent>(builder: Builder<T>, edgeType: string, id1: ID, options?: AssocEdgeInputOptions): EdgeOperation;
|
|
105
|
+
static removeOutboundEdge<T extends Ent>(builder: Builder<T>, edgeType: string, id2: ID, options?: AssocEdgeInputOptions): EdgeOperation;
|
|
106
|
+
}
|
|
107
|
+
export declare class ConditionalOperation<T extends Ent = Ent> implements DataOperation<T> {
|
|
108
|
+
protected op: DataOperation<T>;
|
|
109
|
+
private conditionalBuilder;
|
|
110
|
+
placeholderID?: ID | undefined;
|
|
111
|
+
protected shortCircuited: boolean;
|
|
112
|
+
readonly builder: Builder<T>;
|
|
113
|
+
constructor(op: DataOperation<T>, conditionalBuilder: Builder<any>);
|
|
114
|
+
shortCircuit(executor: Executor): boolean;
|
|
115
|
+
preFetch(queryer: Queryer, context?: Context<Viewer<Ent<any> | null, ID | null>> | undefined): Promise<void>;
|
|
116
|
+
performWriteSync(queryer: SyncQueryer, context?: Context<Viewer<Ent<any> | null, ID | null>> | undefined): void;
|
|
117
|
+
performWrite(queryer: Queryer, context?: Context<Viewer<Ent<any> | null, ID | null>> | undefined): Promise<void>;
|
|
118
|
+
returnedRow(): Data | null;
|
|
119
|
+
updatedOperation(): UpdatedOperation | null;
|
|
120
|
+
resolve(executor: Executor): void;
|
|
121
|
+
postFetch(queryer: Queryer, context?: Context<Viewer<Ent<any> | null, ID | null>> | undefined): Promise<void>;
|
|
122
|
+
}
|
|
123
|
+
export declare class ConditionalNodeOperation<T extends Ent> extends ConditionalOperation<T> {
|
|
124
|
+
createdEnt(viewer: Viewer): T | null;
|
|
125
|
+
updatedOperation(): UpdatedOperation | null;
|
|
126
|
+
}
|