@contember/engine-content-api 1.3.5 → 1.4.0-alpha.1
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/dist/src/ExecutionContainer.d.ts +4 -4
- package/dist/src/ExecutionContainer.d.ts.map +1 -1
- package/dist/src/ExecutionContainer.js +5 -2
- package/dist/src/ExecutionContainer.js.map +1 -1
- package/dist/src/extensions/EntityFieldsProvider.d.ts +1 -1
- package/dist/src/extensions/EntityFieldsProvider.d.ts.map +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.d.ts +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.d.ts.map +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.js +12 -2
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.js.map +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.d.ts +16 -9
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.d.ts.map +1 -1
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.js +21 -13
- package/dist/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.js.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.d.ts +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.d.ts.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.js +8 -2
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.js.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.d.ts +16 -9
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.d.ts.map +1 -1
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.js +17 -12
- package/dist/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.js.map +1 -1
- package/dist/src/introspection/IntrospectionSchemaDefinitionFactory.d.ts +2 -0
- package/dist/src/introspection/IntrospectionSchemaDefinitionFactory.d.ts.map +1 -1
- package/dist/src/introspection/IntrospectionSchemaDefinitionFactory.js +18 -14
- package/dist/src/introspection/IntrospectionSchemaDefinitionFactory.js.map +1 -1
- package/dist/src/introspection/index.d.ts +1 -2
- package/dist/src/introspection/index.d.ts.map +1 -1
- package/dist/src/introspection/index.js +4 -4
- package/dist/src/introspection/index.js.map +1 -1
- package/dist/src/mapper/ErrorUtils.d.ts +3 -3
- package/dist/src/mapper/ErrorUtils.d.ts.map +1 -1
- package/dist/src/mapper/ErrorUtils.js +2 -2
- package/dist/src/mapper/ErrorUtils.js.map +1 -1
- package/dist/src/mapper/Mapper.d.ts +2 -3
- package/dist/src/mapper/Mapper.d.ts.map +1 -1
- package/dist/src/mapper/Mapper.js +1 -1
- package/dist/src/mapper/Mapper.js.map +1 -1
- package/dist/src/mapper/MapperFactory.d.ts +3 -3
- package/dist/src/mapper/MapperFactory.d.ts.map +1 -1
- package/dist/src/mapper/MapperFactory.js.map +1 -1
- package/dist/src/mapper/Result.d.ts +2 -2
- package/dist/src/mapper/Result.d.ts.map +1 -1
- package/dist/src/mapper/Result.js.map +1 -1
- package/dist/src/mapper/delete/DeleteExecutor.js +1 -1
- package/dist/src/mapper/delete/DeleteExecutor.js.map +1 -1
- package/dist/src/mapper/insert/Inserter.d.ts +3 -2
- package/dist/src/mapper/insert/Inserter.d.ts.map +1 -1
- package/dist/src/mapper/insert/Inserter.js.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitor.d.ts +3 -5
- package/dist/src/mapper/select/handlers/FieldsVisitor.d.ts.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitor.js +8 -4
- package/dist/src/mapper/select/handlers/FieldsVisitor.js.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitorFactory.d.ts +3 -5
- package/dist/src/mapper/select/handlers/FieldsVisitorFactory.d.ts.map +1 -1
- package/dist/src/mapper/select/handlers/FieldsVisitorFactory.js +3 -4
- package/dist/src/mapper/select/handlers/FieldsVisitorFactory.js.map +1 -1
- package/dist/src/mapper/update/Updater.d.ts +2 -2
- package/dist/src/mapper/update/Updater.d.ts.map +1 -1
- package/dist/src/mapper/update/Updater.js.map +1 -1
- package/dist/src/resolvers/MutationResolver.d.ts +3 -2
- package/dist/src/resolvers/MutationResolver.d.ts.map +1 -1
- package/dist/src/resolvers/MutationResolver.js +20 -18
- package/dist/src/resolvers/MutationResolver.js.map +1 -1
- package/dist/src/schema/EntityTypeProvider.d.ts.map +1 -1
- package/dist/src/schema/EntityTypeProvider.js +23 -26
- package/dist/src/schema/EntityTypeProvider.js.map +1 -1
- package/dist/src/schema/GraphQlSchemaBuilder.d.ts.map +1 -1
- package/dist/src/schema/GraphQlSchemaBuilder.js +3 -1
- package/dist/src/schema/GraphQlSchemaBuilder.js.map +1 -1
- package/dist/src/tsconfig.tsbuildinfo +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/deferedConstraints.test.js +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/deferedConstraints.test.js.map +1 -1
- package/dist/tests/cases/integration/graphQlDb/update/deferredUniqueConstraints.test.d.ts +2 -0
- package/dist/tests/cases/integration/graphQlDb/update/deferredUniqueConstraints.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/graphQlDb/update/deferredUniqueConstraints.test.js +170 -0
- package/dist/tests/cases/integration/graphQlDb/update/deferredUniqueConstraints.test.js.map +1 -0
- package/dist/tests/src/test.js +1 -1
- package/dist/tests/src/test.js.map +1 -1
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/graphql.codegen.yml +1 -1
- package/package.json +12 -13
- package/src/ExecutionContainer.ts +13 -6
- package/src/extensions/EntityFieldsProvider.ts +1 -1
- package/src/extensions/hasManyToHasOneReducer/HasManyToHasOneReducer.ts +12 -5
- package/src/extensions/hasManyToHasOneReducer/HasManyToHasOneRelationReducerVisitor.ts +33 -24
- package/src/extensions/paginatedHasMany/PaginatedHasManyFieldProvider.ts +8 -5
- package/src/extensions/paginatedHasMany/PaginatedHasManyFieldProviderVisitor.ts +28 -17
- package/src/introspection/IntrospectionSchemaDefinitionFactory.ts +22 -14
- package/src/introspection/index.ts +1 -2
- package/src/mapper/ErrorUtils.ts +8 -7
- package/src/mapper/Mapper.ts +4 -4
- package/src/mapper/MapperFactory.ts +3 -3
- package/src/mapper/Result.ts +2 -3
- package/src/mapper/delete/DeleteExecutor.ts +1 -1
- package/src/mapper/insert/Inserter.ts +3 -2
- package/src/mapper/select/handlers/FieldsVisitor.ts +9 -5
- package/src/mapper/select/handlers/FieldsVisitorFactory.ts +3 -6
- package/src/mapper/update/Updater.ts +3 -2
- package/src/resolvers/MutationResolver.ts +29 -22
- package/src/schema/EntityTypeProvider.ts +32 -41
- package/src/schema/GraphQlSchemaBuilder.ts +3 -1
- package/tests/cases/integration/graphQlDb/update/deferedConstraints.test.ts +1 -1
- package/tests/cases/integration/graphQlDb/update/deferredUniqueConstraints.test.ts +169 -0
- package/tests/cases/integration/graphQlSchema/schema-acl-allowed.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-acl-create-only.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-acl-restricted-create.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-acl-restricted-delete.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-acl-restricted-update.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-acl.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-aliased-type.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-basic.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-bug-66.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-custom-primary.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-has-many-reduction.gql +1 -0
- package/tests/cases/integration/graphQlSchema/schema-new-builder.gql +1 -0
- package/tests/src/test.ts +3 -3
- package/dist/src/introspection/content-schema.graphql.d.ts +0 -4
- package/dist/src/introspection/content-schema.graphql.d.ts.map +0 -1
- package/dist/src/introspection/content-schema.graphql.js +0 -113
- package/dist/src/introspection/content-schema.graphql.js.map +0 -1
- package/src/introspection/content-schema.graphql.ts +0 -113
|
@@ -174,7 +174,7 @@ const engine_api_tester_1 = require("@contember/engine-api-tester");
|
|
|
174
174
|
ok: false,
|
|
175
175
|
errorMessage: 'Execution has failed:\nunknown field: ForeignKeyConstraintViolation (Cannot delete row 123e4567-e89b-12d3-a456-000000000004 of entity Attachment, because it is still referenced from Reference::attachment. This is possibly caused by ACL denial or by missing "on delete cascade")',
|
|
176
176
|
updatePost: {
|
|
177
|
-
ok:
|
|
177
|
+
ok: true,
|
|
178
178
|
errorMessage: null,
|
|
179
179
|
},
|
|
180
180
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deferedConstraints.test.js","sourceRoot":"","sources":["../../../../../../tests/cases/integration/graphQlDb/update/deferedConstraints.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"deferedConstraints.test.js","sourceRoot":"","sources":["../../../../../../tests/cases/integration/graphQlDb/update/deferedConstraints.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deferredUniqueConstraints.test.d.ts","sourceRoot":"","sources":["../../../../../../tests/cases/integration/graphQlDb/update/deferredUniqueConstraints.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const vitest_1 = require("vitest");
|
|
4
|
+
const schema_definition_1 = require("@contember/schema-definition");
|
|
5
|
+
const tags_1 = require("../../../../src/tags");
|
|
6
|
+
const engine_api_tester_1 = require("@contember/engine-api-tester");
|
|
7
|
+
var DeferredUniqueModel;
|
|
8
|
+
(function (DeferredUniqueModel) {
|
|
9
|
+
class Post {
|
|
10
|
+
constructor() {
|
|
11
|
+
this.slug = schema_definition_1.c.stringColumn().unique();
|
|
12
|
+
this.order = schema_definition_1.c.intColumn().unique({ timing: 'deferrable' });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
DeferredUniqueModel.Post = Post;
|
|
16
|
+
})(DeferredUniqueModel || (DeferredUniqueModel = {}));
|
|
17
|
+
(0, vitest_1.test)('update without deferring unique constraints', async () => {
|
|
18
|
+
await (0, engine_api_tester_1.executeDbTest)({
|
|
19
|
+
schema: (0, schema_definition_1.createSchema)(DeferredUniqueModel),
|
|
20
|
+
seed: [
|
|
21
|
+
{
|
|
22
|
+
query: `mutation {
|
|
23
|
+
postA: createPost(data: {slug: "a", order: 1}) {
|
|
24
|
+
ok
|
|
25
|
+
node {
|
|
26
|
+
id
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
postB: createPost(data: {slug: "b", order: 2}) {
|
|
30
|
+
ok
|
|
31
|
+
node {
|
|
32
|
+
id
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}`,
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
query: (0, tags_1.GQL) `
|
|
39
|
+
mutation {
|
|
40
|
+
transaction {
|
|
41
|
+
ok
|
|
42
|
+
errorMessage
|
|
43
|
+
upA: updatePost(by: {slug: "a"}, data: {order: 2}) {
|
|
44
|
+
ok
|
|
45
|
+
errorMessage
|
|
46
|
+
}
|
|
47
|
+
upB: updatePost(by: {slug: "b"}, data: {order: 1}) {
|
|
48
|
+
ok
|
|
49
|
+
errorMessage
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
`,
|
|
54
|
+
return: {
|
|
55
|
+
transaction: {
|
|
56
|
+
ok: false,
|
|
57
|
+
errorMessage: 'Execution has failed:\nupA.order: UniqueConstraintViolation (Value (2) already exists in unique columns (order) on entity Post)',
|
|
58
|
+
upA: {
|
|
59
|
+
ok: false,
|
|
60
|
+
errorMessage: 'Execution has failed:\norder: UniqueConstraintViolation (Value (2) already exists in unique columns (order) on entity Post)',
|
|
61
|
+
},
|
|
62
|
+
upB: {
|
|
63
|
+
ok: false,
|
|
64
|
+
errorMessage: null,
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
(0, vitest_1.test)('update with deferring unique constraints', async () => {
|
|
71
|
+
await (0, engine_api_tester_1.executeDbTest)({
|
|
72
|
+
schema: (0, schema_definition_1.createSchema)(DeferredUniqueModel),
|
|
73
|
+
seed: [
|
|
74
|
+
{
|
|
75
|
+
query: `mutation {
|
|
76
|
+
|
|
77
|
+
postA: createPost(data: {slug: "a", order: 1}) {
|
|
78
|
+
ok
|
|
79
|
+
node {
|
|
80
|
+
id
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
postB: createPost(data: {slug: "b", order: 2}) {
|
|
84
|
+
ok
|
|
85
|
+
node {
|
|
86
|
+
id
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}`,
|
|
90
|
+
},
|
|
91
|
+
],
|
|
92
|
+
query: (0, tags_1.GQL) `
|
|
93
|
+
mutation {
|
|
94
|
+
transaction(options: {deferUniqueConstraints: true}) {
|
|
95
|
+
ok
|
|
96
|
+
errorMessage
|
|
97
|
+
upA: updatePost(by: {slug: "a"}, data: {order: 2}) {
|
|
98
|
+
ok
|
|
99
|
+
errorMessage
|
|
100
|
+
}
|
|
101
|
+
upB: updatePost(by: {slug: "b"}, data: {order: 1}) {
|
|
102
|
+
ok
|
|
103
|
+
errorMessage
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
`,
|
|
108
|
+
return: {
|
|
109
|
+
transaction: {
|
|
110
|
+
ok: true,
|
|
111
|
+
errorMessage: null,
|
|
112
|
+
upA: {
|
|
113
|
+
ok: true,
|
|
114
|
+
errorMessage: null,
|
|
115
|
+
},
|
|
116
|
+
upB: {
|
|
117
|
+
ok: true,
|
|
118
|
+
errorMessage: null,
|
|
119
|
+
},
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
(0, vitest_1.test)('update with failed deferred unique constraints', async () => {
|
|
125
|
+
await (0, engine_api_tester_1.executeDbTest)({
|
|
126
|
+
schema: (0, schema_definition_1.createSchema)(DeferredUniqueModel),
|
|
127
|
+
seed: [
|
|
128
|
+
{
|
|
129
|
+
query: `mutation {
|
|
130
|
+
|
|
131
|
+
postA: createPost(data: {slug: "a", order: 1}) {
|
|
132
|
+
ok
|
|
133
|
+
node {
|
|
134
|
+
id
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
postB: createPost(data: {slug: "b", order: 2}) {
|
|
138
|
+
ok
|
|
139
|
+
node {
|
|
140
|
+
id
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}`,
|
|
144
|
+
},
|
|
145
|
+
],
|
|
146
|
+
query: (0, tags_1.GQL) `
|
|
147
|
+
mutation {
|
|
148
|
+
transaction(options: {deferUniqueConstraints: true}) {
|
|
149
|
+
ok
|
|
150
|
+
errorMessage
|
|
151
|
+
upA: updatePost(by: {slug: "a"}, data: {order: 2}) {
|
|
152
|
+
ok
|
|
153
|
+
errorMessage
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
`,
|
|
158
|
+
return: {
|
|
159
|
+
transaction: {
|
|
160
|
+
ok: false,
|
|
161
|
+
errorMessage: 'Execution has failed:\norder: UniqueConstraintViolation (Value (2) already exists in unique columns (order) on entity Post)',
|
|
162
|
+
upA: {
|
|
163
|
+
ok: true,
|
|
164
|
+
errorMessage: null,
|
|
165
|
+
},
|
|
166
|
+
},
|
|
167
|
+
},
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
//# sourceMappingURL=deferredUniqueConstraints.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deferredUniqueConstraints.test.js","sourceRoot":"","sources":["../../../../../../tests/cases/integration/graphQlDb/update/deferredUniqueConstraints.test.ts"],"names":[],"mappings":";;AAAA,mCAA6B;AAC7B,oEAA8D;AAC9D,+CAA0C;AAE1C,oEAA4D;AAE5D,IAAU,mBAAmB,CAK5B;AALD,WAAU,mBAAmB;IAC5B,MAAa,IAAI;QAAjB;YACC,SAAI,GAAG,qBAAC,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,CAAA;YAChC,UAAK,GAAG,qBAAC,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAA;QACvD,CAAC;KAAA;IAHY,wBAAI,OAGhB,CAAA;AACF,CAAC,EALS,mBAAmB,KAAnB,mBAAmB,QAK5B;AAED,IAAA,aAAI,EAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;IAC9D,MAAM,IAAA,iCAAa,EAAC;QACnB,MAAM,EAAE,IAAA,gCAAY,EAAC,mBAAmB,CAAC;QACzC,IAAI,EAAE;YACL;gBACC,KAAK,EAAE;;;;;;;;;;;;;MAaL;aACF;SACD;QACD,KAAK,EAAE,IAAA,UAAG,EAAA;;;;;;;;;;;;;;;GAeT;QACD,MAAM,EAAE;YACP,WAAW,EAAE;gBACZ,EAAE,EAAE,KAAK;gBACT,YAAY,EAAE,iIAAiI;gBAC/I,GAAG,EAAE;oBACJ,EAAE,EAAE,KAAK;oBACT,YAAY,EAAE,6HAA6H;iBAC3I;gBACD,GAAG,EAAE;oBACJ,EAAE,EAAE,KAAK;oBACT,YAAY,EAAE,IAAI;iBAClB;aACD;SACD;KACD,CAAC,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,IAAA,aAAI,EAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;IAC3D,MAAM,IAAA,iCAAa,EAAC;QACnB,MAAM,EAAE,IAAA,gCAAY,EAAC,mBAAmB,CAAC;QACzC,IAAI,EAAE;YACL;gBACC,KAAK,EAAE;;;;;;;;;;;;;;MAcL;aACF;SACD;QACD,KAAK,EAAE,IAAA,UAAG,EAAA;;;;;;;;;;;;;;;GAeT;QACD,MAAM,EAAE;YACP,WAAW,EAAE;gBACZ,EAAE,EAAE,IAAI;gBACR,YAAY,EAAE,IAAI;gBAClB,GAAG,EAAE;oBACJ,EAAE,EAAE,IAAI;oBACR,YAAY,EAAE,IAAI;iBAClB;gBACD,GAAG,EAAE;oBACJ,EAAE,EAAE,IAAI;oBACR,YAAY,EAAE,IAAI;iBAClB;aACD;SACD;KACD,CAAC,CAAA;AACH,CAAC,CAAC,CAAA;AAGF,IAAA,aAAI,EAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;IACjE,MAAM,IAAA,iCAAa,EAAC;QACnB,MAAM,EAAE,IAAA,gCAAY,EAAC,mBAAmB,CAAC;QACzC,IAAI,EAAE;YACL;gBACC,KAAK,EAAE;;;;;;;;;;;;;;MAcL;aACF;SACD;QACD,KAAK,EAAE,IAAA,UAAG,EAAA;;;;;;;;;;;GAWT;QACD,MAAM,EAAE;YACP,WAAW,EAAE;gBACZ,EAAE,EAAE,KAAK;gBACT,YAAY,EAAE,6HAA6H;gBAC3I,GAAG,EAAE;oBACJ,EAAE,EAAE,IAAI;oBACR,YAAY,EAAE,IAAI;iBAClB;aACD;SACD;KACD,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
package/dist/tests/src/test.js
CHANGED
|
@@ -90,7 +90,7 @@ const execute = async (test) => {
|
|
|
90
90
|
systemSchema: 'system',
|
|
91
91
|
stage: { id: '00000000-0000-0000-0000-000000000000', slug: 'live' },
|
|
92
92
|
project: { slug: 'test' },
|
|
93
|
-
schemaDatabaseMetadata:
|
|
93
|
+
schemaDatabaseMetadata: database_1.emptyDatabaseMetadata,
|
|
94
94
|
}),
|
|
95
95
|
timer: (label, cb) => cb(),
|
|
96
96
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../../tests/src/test.ts"],"names":[],"mappings":";;;AACA,mCAAgG;AAChG,
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../../tests/src/test.ts"],"names":[],"mappings":"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"}
|