@contember/schema-migrations 1.3.0-alpha.7 → 1.3.0-beta.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.
Files changed (237) hide show
  1. package/dist/src/MigrationDescriber.d.ts +4 -4
  2. package/dist/src/MigrationDescriber.d.ts.map +1 -1
  3. package/dist/src/MigrationDescriber.js +8 -7
  4. package/dist/src/MigrationDescriber.js.map +1 -1
  5. package/dist/src/SchemaDiffer.d.ts +1 -1
  6. package/dist/src/SchemaDiffer.d.ts.map +1 -1
  7. package/dist/src/SchemaDiffer.js +10 -2
  8. package/dist/src/SchemaDiffer.js.map +1 -1
  9. package/dist/src/SchemaMigrator.d.ts +1 -2
  10. package/dist/src/SchemaMigrator.d.ts.map +1 -1
  11. package/dist/src/SchemaMigrator.js +0 -1
  12. package/dist/src/SchemaMigrator.js.map +1 -1
  13. package/dist/src/modifications/ModificationHandler.d.ts +10 -6
  14. package/dist/src/modifications/ModificationHandler.d.ts.map +1 -1
  15. package/dist/src/modifications/ModificationHandler.js.map +1 -1
  16. package/dist/src/modifications/ModificationHandlerFactory.d.ts +2 -2
  17. package/dist/src/modifications/ModificationHandlerFactory.d.ts.map +1 -1
  18. package/dist/src/modifications/ModificationHandlerFactory.js +3 -2
  19. package/dist/src/modifications/ModificationHandlerFactory.js.map +1 -1
  20. package/dist/src/modifications/ModificationVersions.d.ts +4 -3
  21. package/dist/src/modifications/ModificationVersions.d.ts.map +1 -1
  22. package/dist/src/modifications/ModificationVersions.js +5 -4
  23. package/dist/src/modifications/ModificationVersions.js.map +1 -1
  24. package/dist/src/modifications/columns/CreateColumnModification.d.ts +2 -2
  25. package/dist/src/modifications/columns/CreateColumnModification.d.ts.map +1 -1
  26. package/dist/src/modifications/columns/CreateColumnModification.js +14 -24
  27. package/dist/src/modifications/columns/CreateColumnModification.js.map +1 -1
  28. package/dist/src/modifications/columns/UpdateColumnDefinitionModification.d.ts +5 -3
  29. package/dist/src/modifications/columns/UpdateColumnDefinitionModification.d.ts.map +1 -1
  30. package/dist/src/modifications/columns/UpdateColumnDefinitionModification.js +19 -4
  31. package/dist/src/modifications/columns/UpdateColumnDefinitionModification.js.map +1 -1
  32. package/dist/src/modifications/columns/columnUtils.d.ts +14 -0
  33. package/dist/src/modifications/columns/columnUtils.d.ts.map +1 -0
  34. package/dist/src/modifications/columns/columnUtils.js +29 -0
  35. package/dist/src/modifications/columns/columnUtils.js.map +1 -0
  36. package/dist/src/modifications/constraints/CreateUniqueConstraintModification.d.ts +3 -3
  37. package/dist/src/modifications/constraints/CreateUniqueConstraintModification.d.ts.map +1 -1
  38. package/dist/src/modifications/constraints/CreateUniqueConstraintModification.js +20 -32
  39. package/dist/src/modifications/constraints/CreateUniqueConstraintModification.js.map +1 -1
  40. package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.d.ts +11 -5
  41. package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.d.ts.map +1 -1
  42. package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.js +37 -9
  43. package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.js.map +1 -1
  44. package/dist/src/modifications/constraints/utils.d.ts +7 -0
  45. package/dist/src/modifications/constraints/utils.d.ts.map +1 -0
  46. package/dist/src/modifications/constraints/utils.js +33 -0
  47. package/dist/src/modifications/constraints/utils.js.map +1 -0
  48. package/dist/src/modifications/entities/CreateEntityModification.d.ts +4 -4
  49. package/dist/src/modifications/entities/CreateEntityModification.d.ts.map +1 -1
  50. package/dist/src/modifications/entities/CreateEntityModification.js +18 -14
  51. package/dist/src/modifications/entities/CreateEntityModification.js.map +1 -1
  52. package/dist/src/modifications/entities/CreateViewModification.d.ts +2 -2
  53. package/dist/src/modifications/entities/CreateViewModification.d.ts.map +1 -1
  54. package/dist/src/modifications/entities/CreateViewModification.js +14 -10
  55. package/dist/src/modifications/entities/CreateViewModification.js.map +1 -1
  56. package/dist/src/modifications/entities/RemoveEntityModification.d.ts +3 -4
  57. package/dist/src/modifications/entities/RemoveEntityModification.d.ts.map +1 -1
  58. package/dist/src/modifications/entities/RemoveEntityModification.js +3 -2
  59. package/dist/src/modifications/entities/RemoveEntityModification.js.map +1 -1
  60. package/dist/src/modifications/entities/ToggleEventLogModification.d.ts +2 -2
  61. package/dist/src/modifications/entities/ToggleEventLogModification.d.ts.map +1 -1
  62. package/dist/src/modifications/entities/ToggleEventLogModification.js +3 -3
  63. package/dist/src/modifications/entities/ToggleEventLogModification.js.map +1 -1
  64. package/dist/src/modifications/entities/UpdateEntityNameModification.d.ts +4 -5
  65. package/dist/src/modifications/entities/UpdateEntityNameModification.d.ts.map +1 -1
  66. package/dist/src/modifications/entities/UpdateEntityNameModification.js +3 -34
  67. package/dist/src/modifications/entities/UpdateEntityNameModification.js.map +1 -1
  68. package/dist/src/modifications/fields/RemoveFieldModification.js.map +1 -1
  69. package/dist/src/modifications/fields/UpdateFieldNameModification.d.ts +4 -5
  70. package/dist/src/modifications/fields/UpdateFieldNameModification.d.ts.map +1 -1
  71. package/dist/src/modifications/fields/UpdateFieldNameModification.js +18 -42
  72. package/dist/src/modifications/fields/UpdateFieldNameModification.js.map +1 -1
  73. package/dist/src/modifications/indexes/CreateIndexModification.d.ts +5 -5
  74. package/dist/src/modifications/indexes/CreateIndexModification.d.ts.map +1 -1
  75. package/dist/src/modifications/indexes/CreateIndexModification.js +24 -35
  76. package/dist/src/modifications/indexes/CreateIndexModification.js.map +1 -1
  77. package/dist/src/modifications/indexes/RemoveIndexModification.d.ts +12 -6
  78. package/dist/src/modifications/indexes/RemoveIndexModification.d.ts.map +1 -1
  79. package/dist/src/modifications/indexes/RemoveIndexModification.js +36 -10
  80. package/dist/src/modifications/indexes/RemoveIndexModification.js.map +1 -1
  81. package/dist/src/modifications/indexes/utils.d.ts +7 -0
  82. package/dist/src/modifications/indexes/utils.d.ts.map +1 -0
  83. package/dist/src/modifications/indexes/utils.js +33 -0
  84. package/dist/src/modifications/indexes/utils.js.map +1 -0
  85. package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts +3 -4
  86. package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts.map +1 -1
  87. package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js +10 -10
  88. package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js.map +1 -1
  89. package/dist/src/modifications/relations/ConvertOneToManyRelationModification.d.ts +3 -4
  90. package/dist/src/modifications/relations/ConvertOneToManyRelationModification.d.ts.map +1 -1
  91. package/dist/src/modifications/relations/ConvertOneToManyRelationModification.js +14 -12
  92. package/dist/src/modifications/relations/ConvertOneToManyRelationModification.js.map +1 -1
  93. package/dist/src/modifications/relations/CreateRelationModification.d.ts +4 -5
  94. package/dist/src/modifications/relations/CreateRelationModification.d.ts.map +1 -1
  95. package/dist/src/modifications/relations/CreateRelationModification.js +13 -17
  96. package/dist/src/modifications/relations/CreateRelationModification.js.map +1 -1
  97. package/dist/src/modifications/relations/ToggleJunctionEventLogModification.d.ts +3 -4
  98. package/dist/src/modifications/relations/ToggleJunctionEventLogModification.d.ts.map +1 -1
  99. package/dist/src/modifications/relations/ToggleJunctionEventLogModification.js +4 -5
  100. package/dist/src/modifications/relations/ToggleJunctionEventLogModification.js.map +1 -1
  101. package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.d.ts +2 -2
  102. package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.d.ts.map +1 -1
  103. package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.js +3 -3
  104. package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.js.map +1 -1
  105. package/dist/src/modifications/relations/helpers.d.ts +4 -1
  106. package/dist/src/modifications/relations/helpers.d.ts.map +1 -1
  107. package/dist/src/modifications/relations/helpers.js +20 -17
  108. package/dist/src/modifications/relations/helpers.js.map +1 -1
  109. package/dist/src/modifications/relations/normalization.d.ts +2 -2
  110. package/dist/src/modifications/relations/normalization.d.ts.map +1 -1
  111. package/dist/src/modifications/settings/UpdateSettingsModification.d.ts +1 -1
  112. package/dist/src/modifications/settings/UpdateSettingsModification.d.ts.map +1 -1
  113. package/dist/src/modifications/upgrade/RemoveIndexNamesModification.d.ts +19 -0
  114. package/dist/src/modifications/upgrade/RemoveIndexNamesModification.d.ts.map +1 -0
  115. package/dist/src/modifications/upgrade/RemoveIndexNamesModification.js +40 -0
  116. package/dist/src/modifications/upgrade/RemoveIndexNamesModification.js.map +1 -0
  117. package/dist/src/modifications/utils/createJunctionTable.d.ts +2 -3
  118. package/dist/src/modifications/utils/createJunctionTable.d.ts.map +1 -1
  119. package/dist/src/modifications/utils/createJunctionTable.js +4 -6
  120. package/dist/src/modifications/utils/createJunctionTable.js.map +1 -1
  121. package/dist/src/modifications/utils/schemaUpdateUtils.d.ts +12 -14
  122. package/dist/src/modifications/utils/schemaUpdateUtils.d.ts.map +1 -1
  123. package/dist/src/modifications/utils/schemaUpdateUtils.js +5 -20
  124. package/dist/src/modifications/utils/schemaUpdateUtils.js.map +1 -1
  125. package/dist/src/modifications/utils/stringArrayEquals.d.ts +2 -0
  126. package/dist/src/modifications/utils/stringArrayEquals.d.ts.map +1 -0
  127. package/dist/src/modifications/utils/stringArrayEquals.js +9 -0
  128. package/dist/src/modifications/utils/stringArrayEquals.js.map +1 -0
  129. package/dist/src/modifications/utils/viewDependencies.d.ts +1 -1
  130. package/dist/src/modifications/utils/viewDependencies.d.ts.map +1 -1
  131. package/dist/src/tsconfig.tsbuildinfo +1 -1
  132. package/dist/src/utils/PartialEntity.d.ts +5 -3
  133. package/dist/src/utils/PartialEntity.d.ts.map +1 -1
  134. package/dist/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.js +1 -1
  135. package/dist/tests/cases/integration/convertOneToManyRelation.test.js +5 -5
  136. package/dist/tests/cases/integration/convertOneToManyRelation.test.js.map +1 -1
  137. package/dist/tests/cases/integration/createAndDropIndex.test.js +4 -4
  138. package/dist/tests/cases/integration/createAndDropIndex.test.js.map +1 -1
  139. package/dist/tests/cases/integration/createColumn.test.js +0 -2
  140. package/dist/tests/cases/integration/createColumn.test.js.map +1 -1
  141. package/dist/tests/cases/integration/createEntity.test.js +6 -9
  142. package/dist/tests/cases/integration/createEntity.test.js.map +1 -1
  143. package/dist/tests/cases/integration/createManyHasMany.test.js +3 -3
  144. package/dist/tests/cases/integration/createManyHasOne.test.js +4 -4
  145. package/dist/tests/cases/integration/createManyHasOne.test.js.map +1 -1
  146. package/dist/tests/cases/integration/createOneHasMany.test.js +6 -9
  147. package/dist/tests/cases/integration/createOneHasMany.test.js.map +1 -1
  148. package/dist/tests/cases/integration/createOneHasOne.test.js +6 -6
  149. package/dist/tests/cases/integration/createRelationInverseSide.test.js +1 -1
  150. package/dist/tests/cases/integration/createRelationInverseSide.test.js.map +1 -1
  151. package/dist/tests/cases/integration/createView.test.js +6 -6
  152. package/dist/tests/cases/integration/removeField.test.js +6 -6
  153. package/dist/tests/cases/integration/removeField.test.js.map +1 -1
  154. package/dist/tests/cases/integration/updateColumnDefinition.test.js +42 -4
  155. package/dist/tests/cases/integration/updateColumnDefinition.test.js.map +1 -1
  156. package/dist/tests/cases/integration/updateEntityName.test.js +1 -20
  157. package/dist/tests/cases/integration/updateEntityName.test.js.map +1 -1
  158. package/dist/tests/cases/integration/updateFieldName.test.js +1 -21
  159. package/dist/tests/cases/integration/updateFieldName.test.js.map +1 -1
  160. package/dist/tests/cases/integration/updateRelationOnDelete.test.js +2 -2
  161. package/dist/tests/cases/integration/updateRelationOnDelete.test.js.map +1 -1
  162. package/dist/tests/cases/integration/updateView.test.js +18 -18
  163. package/dist/tests/scripts/checkCreateConsistentMigrations.js +1 -1
  164. package/dist/tests/scripts/checkCreateConsistentMigrations.js.map +1 -1
  165. package/dist/tests/src/tests.d.ts.map +1 -1
  166. package/dist/tests/src/tests.js +10 -4
  167. package/dist/tests/src/tests.js.map +1 -1
  168. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  169. package/package.json +8 -9
  170. package/src/MigrationDescriber.ts +11 -9
  171. package/src/SchemaDiffer.ts +12 -13
  172. package/src/SchemaMigrator.ts +1 -3
  173. package/src/modifications/ModificationHandler.ts +10 -5
  174. package/src/modifications/ModificationHandlerFactory.ts +12 -11
  175. package/src/modifications/ModificationVersions.ts +4 -3
  176. package/src/modifications/columns/CreateColumnModification.ts +19 -27
  177. package/src/modifications/columns/UpdateColumnDefinitionModification.ts +22 -4
  178. package/src/modifications/columns/columnUtils.ts +35 -0
  179. package/src/modifications/constraints/CreateUniqueConstraintModification.ts +31 -40
  180. package/src/modifications/constraints/RemoveUniqueConstraintModification.ts +60 -15
  181. package/src/modifications/constraints/utils.ts +36 -0
  182. package/src/modifications/entities/CreateEntityModification.ts +9 -8
  183. package/src/modifications/entities/CreateViewModification.ts +4 -3
  184. package/src/modifications/entities/RemoveEntityModification.ts +5 -5
  185. package/src/modifications/entities/ToggleEventLogModification.ts +4 -3
  186. package/src/modifications/entities/UpdateEntityNameModification.ts +10 -46
  187. package/src/modifications/fields/RemoveFieldModification.ts +1 -1
  188. package/src/modifications/fields/UpdateFieldNameModification.ts +30 -57
  189. package/src/modifications/indexes/CreateIndexModification.ts +35 -41
  190. package/src/modifications/indexes/RemoveIndexModification.ts +57 -17
  191. package/src/modifications/indexes/utils.ts +30 -0
  192. package/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.ts +7 -19
  193. package/src/modifications/relations/ConvertOneToManyRelationModification.ts +21 -22
  194. package/src/modifications/relations/CreateRelationModification.ts +20 -35
  195. package/src/modifications/relations/ToggleJunctionEventLogModification.ts +4 -5
  196. package/src/modifications/relations/UpdateRelationOnDeleteModification.ts +13 -5
  197. package/src/modifications/relations/helpers.ts +27 -22
  198. package/src/modifications/upgrade/RemoveIndexNamesModification.ts +46 -0
  199. package/src/modifications/utils/createJunctionTable.ts +8 -8
  200. package/src/modifications/utils/schemaUpdateUtils.ts +5 -17
  201. package/src/modifications/utils/stringArrayEquals.ts +4 -0
  202. package/src/tsconfig.json +0 -1
  203. package/src/utils/PartialEntity.ts +7 -1
  204. package/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.ts +1 -1
  205. package/tests/cases/integration/convertOneToManyRelation.test.ts +5 -5
  206. package/tests/cases/integration/createAndDropIndex.test.ts +4 -4
  207. package/tests/cases/integration/createColumn.test.ts +0 -2
  208. package/tests/cases/integration/createEntity.test.ts +6 -9
  209. package/tests/cases/integration/createManyHasMany.test.ts +3 -3
  210. package/tests/cases/integration/createManyHasOne.test.ts +4 -4
  211. package/tests/cases/integration/createOneHasMany.test.ts +6 -9
  212. package/tests/cases/integration/createOneHasOne.test.ts +6 -6
  213. package/tests/cases/integration/createRelationInverseSide.test.ts +1 -1
  214. package/tests/cases/integration/createView.test.ts +6 -6
  215. package/tests/cases/integration/removeField.test.ts +6 -6
  216. package/tests/cases/integration/updateColumnDefinition.test.ts +36 -4
  217. package/tests/cases/integration/updateEntityName.test.ts +1 -20
  218. package/tests/cases/integration/updateFieldName.test.ts +1 -21
  219. package/tests/cases/integration/updateRelationOnDelete.test.ts +2 -2
  220. package/tests/cases/integration/updateView.test.ts +18 -18
  221. package/tests/scripts/checkCreateConsistentMigrations.ts +1 -1
  222. package/tests/src/tests.ts +13 -8
  223. package/dist/src/modifications/utils/renameConstraintsHelper.d.ts +0 -8
  224. package/dist/src/modifications/utils/renameConstraintsHelper.d.ts.map +0 -1
  225. package/dist/src/modifications/utils/renameConstraintsHelper.js +0 -31
  226. package/dist/src/modifications/utils/renameConstraintsHelper.js.map +0 -1
  227. package/dist/src/modifications/utils/schemaMeta.d.ts +0 -8
  228. package/dist/src/modifications/utils/schemaMeta.d.ts.map +0 -1
  229. package/dist/src/modifications/utils/schemaMeta.js +0 -13
  230. package/dist/src/modifications/utils/schemaMeta.js.map +0 -1
  231. package/dist/tests/cases/integration/takenIndexName.test.d.ts +0 -2
  232. package/dist/tests/cases/integration/takenIndexName.test.d.ts.map +0 -1
  233. package/dist/tests/cases/integration/takenIndexName.test.js +0 -307
  234. package/dist/tests/cases/integration/takenIndexName.test.js.map +0 -1
  235. package/src/modifications/utils/renameConstraintsHelper.ts +0 -34
  236. package/src/modifications/utils/schemaMeta.ts +0 -18
  237. package/tests/cases/integration/takenIndexName.test.ts +0 -314
@@ -7,23 +7,34 @@ exports.RemoveIndexDiffer = exports.removeIndexModification = exports.RemoveInde
7
7
  const schemaUpdateUtils_1 = require("../utils/schemaUpdateUtils");
8
8
  const ModificationHandler_1 = require("../ModificationHandler");
9
9
  const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
10
+ const utils_1 = require("./utils");
11
+ const dbHelpers_1 = require("../../utils/dbHelpers");
10
12
  class RemoveIndexModificationHandler {
11
13
  constructor(data, schema) {
12
14
  this.data = data;
13
15
  this.schema = schema;
14
16
  }
15
- createSql(builder) {
17
+ createSql(builder, { databaseMetadata, invalidateDatabaseMetadata }) {
16
18
  const entity = this.schema.model.entities[this.data.entityName];
17
19
  if (entity.view) {
18
20
  return;
19
21
  }
20
- builder.dropIndex(entity.tableName, [], {
21
- name: this.data.indexName,
22
+ const fields = this.getFields();
23
+ const columns = (0, utils_1.getIndexColumns)({
24
+ entity,
25
+ fields,
26
+ model: this.schema.model,
22
27
  });
28
+ const indexNames = databaseMetadata.getIndexNames({ tableName: entity.tableName, columnNames: columns });
29
+ for (const name of indexNames) {
30
+ builder.sql(`DROP INDEX ${(0, dbHelpers_1.wrapIdentifier)(name)}`);
31
+ }
32
+ invalidateDatabaseMetadata();
23
33
  }
24
34
  getSchemaUpdater() {
35
+ const fields = this.getFields();
25
36
  return (0, schemaUpdateUtils_1.updateModel)((0, schemaUpdateUtils_1.updateEntity)(this.data.entityName, ({ entity }) => {
26
- const { [this.data.indexName]: removed, ...indexes } = entity.indexes;
37
+ const indexes = entity.indexes.filter(it => !(0, fast_deep_equal_1.default)(it.fields, fields));
27
38
  return {
28
39
  ...entity,
29
40
  indexes,
@@ -31,9 +42,20 @@ class RemoveIndexModificationHandler {
31
42
  }));
32
43
  }
33
44
  describe() {
34
- const fields = this.schema.model.entities[this.data.entityName].indexes[this.data.indexName].fields;
45
+ const fields = this.getFields();
35
46
  return { message: `Remove index (${fields.join(', ')}) on entity ${this.data.entityName}` };
36
47
  }
48
+ getFields() {
49
+ var _a;
50
+ const entity = this.schema.model.entities[this.data.entityName];
51
+ const fields = 'indexName' in this.data
52
+ ? (_a = entity.indexes.find(it => it.name === this.data.indexName)) === null || _a === void 0 ? void 0 : _a.fields
53
+ : this.data.fields;
54
+ if (!fields) {
55
+ throw new Error();
56
+ }
57
+ return fields;
58
+ }
37
59
  }
38
60
  exports.RemoveIndexModificationHandler = RemoveIndexModificationHandler;
39
61
  exports.removeIndexModification = (0, ModificationHandler_1.createModificationType)({
@@ -42,13 +64,17 @@ exports.removeIndexModification = (0, ModificationHandler_1.createModificationTy
42
64
  });
43
65
  class RemoveIndexDiffer {
44
66
  createDiff(originalSchema, updatedSchema) {
45
- return Object.values(originalSchema.model.entities).flatMap(entity => Object.values(entity.indexes)
46
- .filter(it => updatedSchema.model.entities[entity.name] &&
47
- (!updatedSchema.model.entities[entity.name].indexes[it.name] ||
48
- !(0, fast_deep_equal_1.default)(it.fields, updatedSchema.model.entities[entity.name].indexes[it.name].fields)))
67
+ return Object.values(originalSchema.model.entities).flatMap(entity => entity.indexes
68
+ .filter(it => {
69
+ const updatedEntity = updatedSchema.model.entities[entity.name];
70
+ if (!updatedEntity) {
71
+ return false;
72
+ }
73
+ return !updatedEntity.indexes.find(index => (0, fast_deep_equal_1.default)(index.fields, it.fields));
74
+ })
49
75
  .map(index => exports.removeIndexModification.createModification({
50
76
  entityName: entity.name,
51
- indexName: index.name,
77
+ fields: index.fields,
52
78
  })));
53
79
  }
54
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RemoveIndexModification.js","sourceRoot":"","sources":["../../../../src/modifications/indexes/RemoveIndexModification.ts"],"names":[],"mappings":";;;;;;AAEA,kEAAqF;AACrF,gEAA4F;AAC5F,sEAAuC;AAEvC,MAAa,8BAA8B;IAC1C,YAA6B,IAAiC,EAAmB,MAAc;QAAlE,SAAI,GAAJ,IAAI,CAA6B;QAAmB,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE5F,SAAS,CAAC,OAAyB;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/D,IAAI,MAAM,CAAC,IAAI,EAAE;YAChB,OAAM;SACN;QACD,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,EAAE;YACvC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;SACzB,CAAC,CAAA;IACH,CAAC;IAEM,gBAAgB;QACtB,OAAO,IAAA,+BAAW,EACjB,IAAA,gCAAY,EAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;YACjD,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,CAAA;YACrE,OAAO;gBACN,GAAG,MAAM;gBACT,OAAO;aACP,CAAA;QACF,CAAC,CAAC,CACF,CAAA;IACF,CAAC;IAED,QAAQ;QACP,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAA;QACnG,OAAO,EAAE,OAAO,EAAE,iBAAiB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAA;IAC5F,CAAC;CACD;AA7BD,wEA6BC;AAEY,QAAA,uBAAuB,GAAG,IAAA,4CAAsB,EAAC;IAC7D,EAAE,EAAE,aAAa;IACjB,OAAO,EAAE,8BAA8B;CACvC,CAAC,CAAA;AAGF,MAAa,iBAAiB;IAE7B,UAAU,CAAC,cAAsB,EAAE,aAAqB;QACvD,OAAO,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CACpE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;aAC3B,MAAM,CACN,EAAE,CAAC,EAAE,CACJ,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;YACzC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC;gBAC3D,CAAC,IAAA,yBAAS,EAAC,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAC3F;aACA,GAAG,CAAC,KAAK,CAAC,EAAE,CACZ,+BAAuB,CAAC,kBAAkB,CAAC;YAC1C,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,SAAS,EAAE,KAAK,CAAC,IAAI;SACrB,CAAC,CACF,CACF,CAAA;IACF,CAAC;CACD;AAnBD,8CAmBC"}
1
+ {"version":3,"file":"RemoveIndexModification.js","sourceRoot":"","sources":["../../../../src/modifications/indexes/RemoveIndexModification.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Model } from '@contember/schema';
2
+ export declare const getIndexColumns: ({ entity, fields, model }: {
3
+ fields: readonly string[];
4
+ model: Model.Schema;
5
+ entity: Model.Entity;
6
+ }) => string[];
7
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/modifications/indexes/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzC,eAAO,MAAM,eAAe;YAAyC,SAAS,MAAM,EAAE;WAAS,MAAM,MAAM;YAAU,MAAM,MAAM;cA0BhI,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getIndexColumns = void 0;
4
+ const schema_utils_1 = require("@contember/schema-utils");
5
+ const getIndexColumns = ({ entity, fields, model }) => {
6
+ return fields.map(fieldName => {
7
+ return (0, schema_utils_1.acceptFieldVisitor)(model, entity, fieldName, {
8
+ visitColumn: ({ column }) => {
9
+ return column.columnName;
10
+ },
11
+ visitManyHasOne: ({ relation }) => {
12
+ return relation.joiningColumn.columnName;
13
+ },
14
+ visitOneHasOneOwning: ({ relation }) => {
15
+ return relation.joiningColumn.columnName;
16
+ },
17
+ visitOneHasMany: () => {
18
+ throw new Error(`Cannot create index on 1:m relation in ${entity.name}.${fieldName}`);
19
+ },
20
+ visitOneHasOneInverse: () => {
21
+ throw new Error(`Cannot create index on 1:1 inverse relation in ${entity.name}.${fieldName}`);
22
+ },
23
+ visitManyHasManyOwning: () => {
24
+ throw new Error(`Cannot create index on m:m relation in ${entity.name}.${fieldName}`);
25
+ },
26
+ visitManyHasManyInverse: () => {
27
+ throw new Error(`Cannot create index on m:m inverse relation in ${entity.name}.${fieldName}`);
28
+ },
29
+ });
30
+ });
31
+ };
32
+ exports.getIndexColumns = getIndexColumns;
33
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/modifications/indexes/utils.ts"],"names":[],"mappings":";;;AAAA,0DAA4D;AAGrD,MAAM,eAAe,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAA4E,EAAE,EAAE;IACtI,OAAO,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;QAC7B,OAAO,IAAA,iCAAkB,EAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE;YACnD,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;gBAC3B,OAAO,MAAM,CAAC,UAAU,CAAA;YACzB,CAAC;YACD,eAAe,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;gBACjC,OAAO,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAA;YACzC,CAAC;YACD,oBAAoB,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;gBACtC,OAAO,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAA;YACzC,CAAC;YACD,eAAe,EAAE,GAAG,EAAE;gBACrB,MAAM,IAAI,KAAK,CAAC,0CAA0C,MAAM,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAA;YACtF,CAAC;YACD,qBAAqB,EAAE,GAAG,EAAE;gBAC3B,MAAM,IAAI,KAAK,CAAC,kDAAkD,MAAM,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAA;YAC9F,CAAC;YACD,sBAAsB,EAAE,GAAG,EAAE;gBAC5B,MAAM,IAAI,KAAK,CAAC,0CAA0C,MAAM,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAA;YACtF,CAAC;YACD,uBAAuB,EAAE,GAAG,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,kDAAkD,MAAM,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAA;YAC9F,CAAC;SACD,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC,CAAA;AA1BY,QAAA,eAAe,mBA0B3B"}
@@ -1,16 +1,15 @@
1
1
  import { MigrationBuilder } from '@contember/database-migrations';
2
2
  import { Model, Schema } from '@contember/schema';
3
3
  import { SchemaUpdater } from '../utils/schemaUpdateUtils';
4
- import { Differ, ModificationHandler, ModificationHandlerOptions } from '../ModificationHandler';
4
+ import { Differ, ModificationHandler, ModificationHandlerCreateSqlOptions, ModificationHandlerOptions } from '../ModificationHandler';
5
5
  import { PartialManyHasManyRelation } from './normalization';
6
- import { SchemaWithMeta } from '../utils/schemaMeta';
7
6
  export declare class ConvertOneHasManyToManyHasManyRelationModificationHandler implements ModificationHandler<ConvertOneHasManyToManyHasManyRelationModificationData> {
8
7
  private readonly data;
9
8
  private readonly schema;
10
9
  private readonly options;
11
10
  private subModification;
12
- constructor(data: ConvertOneHasManyToManyHasManyRelationModificationData, schema: SchemaWithMeta, options: ModificationHandlerOptions);
13
- createSql(builder: MigrationBuilder): void;
11
+ constructor(data: ConvertOneHasManyToManyHasManyRelationModificationData, schema: Schema, options: ModificationHandlerOptions);
12
+ createSql(builder: MigrationBuilder, { systemSchema }: ModificationHandlerCreateSqlOptions): void;
14
13
  getSchemaUpdater(): SchemaUpdater;
15
14
  describe(): {
16
15
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ConvertOneHasManyToManyHasManyRelationModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAGN,aAAa,EAIb,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAEN,MAAM,EACN,mBAAmB,EACnB,0BAA0B,EAC1B,MAAM,wBAAwB,CAAA;AAK/B,OAAO,EAAgC,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAE1F,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,qBAAa,yDAA0D,YAAW,mBAAmB,CAAC,sDAAsD,CAAC;IAI3J,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IALzB,OAAO,CAAC,eAAe,CAA0B;gBAG/B,IAAI,EAAE,sDAAsD,EAC5D,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,0BAA0B;IAa9C,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAmB1C,gBAAgB,IAAI,aAAa;IAUxC,QAAQ;;;IASR,OAAO,CAAC,WAAW;CAQnB;AAED,eAAO,MAAM,kDAAkD,qJAG7D,CAAA;AAEF,MAAM,WAAW,sDAAsD;IACtE,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,0BAA0B,CAAA;IACtC,WAAW,CAAC,EAAE,KAAK,CAAC,0BAA0B,CAAA;CAC9C;AAED,qBAAa,4CAA6C,YAAW,MAAM;IAC1E,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAwBxD"}
1
+ {"version":3,"file":"ConvertOneHasManyToManyHasManyRelationModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAY,aAAa,EAA2C,MAAM,4BAA4B,CAAA;AAC7G,OAAO,EAEN,MAAM,EACN,mBAAmB,EAAE,mCAAmC,EACxD,0BAA0B,EAC1B,MAAM,wBAAwB,CAAA;AAK/B,OAAO,EAAgC,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAG1F,qBAAa,yDAA0D,YAAW,mBAAmB,CAAC,sDAAsD,CAAC;IAI3J,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IALzB,OAAO,CAAC,eAAe,CAA0B;gBAG/B,IAAI,EAAE,sDAAsD,EAC5D,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,0BAA0B;IAa9C,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,YAAY,EAAE,EAAE,mCAAmC,GAAG,IAAI;IAmBjG,gBAAgB,IAAI,aAAa;IASxC,QAAQ;;;IAMR,OAAO,CAAC,WAAW;CAQnB;AAED,eAAO,MAAM,kDAAkD,qJAG7D,CAAA;AAEF,MAAM,WAAW,sDAAsD;IACtE,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,0BAA0B,CAAA;IACtC,WAAW,CAAC,EAAE,KAAK,CAAC,0BAA0B,CAAA;CAC9C;AAED,qBAAa,4CAA6C,YAAW,MAAM;IAC1E,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAwBxD"}
@@ -7,7 +7,7 @@ const ModificationHandler_1 = require("../ModificationHandler");
7
7
  const schema_utils_1 = require("@contember/schema-utils");
8
8
  const diffUtils_1 = require("../utils/diffUtils");
9
9
  const createJunctionTable_1 = require("../utils/createJunctionTable");
10
- const database_1 = require("@contember/database");
10
+ const dbHelpers_1 = require("../../utils/dbHelpers");
11
11
  const normalization_1 = require("./normalization");
12
12
  const fields_1 = require("../fields");
13
13
  class ConvertOneHasManyToManyHasManyRelationModificationHandler {
@@ -21,25 +21,25 @@ class ConvertOneHasManyToManyHasManyRelationModificationHandler {
21
21
  newFieldName: this.data.owningSide.name,
22
22
  }, schema, this.options);
23
23
  }
24
- createSql(builder) {
24
+ createSql(builder, { systemSchema }) {
25
25
  const targetEntity = this.schema.model.entities[this.data.owningSide.target];
26
26
  const { relation: oldRelation } = this.getRelation();
27
27
  const entity = this.schema.model.entities[this.data.entityName];
28
- (0, createJunctionTable_1.createJunctionTableSql)(builder, this.options.systemSchema, this.schema, entity, targetEntity, (0, normalization_1.normalizeManyHasManyRelation)(this.data.owningSide));
28
+ (0, createJunctionTable_1.createJunctionTableSql)(builder, systemSchema, this.schema, entity, targetEntity, (0, normalization_1.normalizeManyHasManyRelation)(this.data.owningSide));
29
29
  const joiningTable = this.data.owningSide.joiningTable;
30
30
  builder.sql(`
31
- INSERT INTO ${(0, database_1.wrapIdentifier)(joiningTable.tableName)} (
32
- ${(0, database_1.wrapIdentifier)(joiningTable.joiningColumn.columnName)},
33
- ${(0, database_1.wrapIdentifier)(joiningTable.inverseJoiningColumn.columnName)}
31
+ INSERT INTO ${(0, dbHelpers_1.wrapIdentifier)(joiningTable.tableName)} (
32
+ ${(0, dbHelpers_1.wrapIdentifier)(joiningTable.joiningColumn.columnName)},
33
+ ${(0, dbHelpers_1.wrapIdentifier)(joiningTable.inverseJoiningColumn.columnName)}
34
34
  )
35
- SELECT ${(0, database_1.wrapIdentifier)(entity.primaryColumn)}, ${(0, database_1.wrapIdentifier)(oldRelation.joiningColumn.columnName)}
36
- FROM ${(0, database_1.wrapIdentifier)(entity.tableName)}
37
- WHERE ${(0, database_1.wrapIdentifier)(oldRelation.joiningColumn.columnName)} IS NOT NULL`);
35
+ SELECT ${(0, dbHelpers_1.wrapIdentifier)(entity.primaryColumn)}, ${(0, dbHelpers_1.wrapIdentifier)(oldRelation.joiningColumn.columnName)}
36
+ FROM ${(0, dbHelpers_1.wrapIdentifier)(entity.tableName)}
37
+ WHERE ${(0, dbHelpers_1.wrapIdentifier)(oldRelation.joiningColumn.columnName)} IS NOT NULL`);
38
38
  builder.dropColumn(entity.tableName, oldRelation.joiningColumn.columnName);
39
39
  }
40
40
  getSchemaUpdater() {
41
41
  const { entityName } = this.data;
42
- return (0, schemaUpdateUtils_1.updateSchema)(this.subModification.getSchemaUpdater(), (0, schemaUpdateUtils_1.updateModel)((0, schemaUpdateUtils_1.updateEntity)(entityName, (0, schemaUpdateUtils_1.addField)((0, normalization_1.normalizeManyHasManyRelation)(this.data.owningSide)))), this.data.inverseSide ? (0, schemaUpdateUtils_1.updateModel)((0, schemaUpdateUtils_1.updateEntity)(this.data.owningSide.target, (0, schemaUpdateUtils_1.addField)(this.data.inverseSide))) : undefined, (0, schemaUpdateUtils_1.addTakenIndexName)(schema_utils_1.NamingHelper.createJunctionTablePrimaryConstraintName(this.data.owningSide.joiningTable.tableName)));
42
+ return (0, schemaUpdateUtils_1.updateSchema)(this.subModification.getSchemaUpdater(), (0, schemaUpdateUtils_1.updateModel)((0, schemaUpdateUtils_1.updateEntity)(entityName, (0, schemaUpdateUtils_1.addField)((0, normalization_1.normalizeManyHasManyRelation)(this.data.owningSide)))), this.data.inverseSide ? (0, schemaUpdateUtils_1.updateModel)((0, schemaUpdateUtils_1.updateEntity)(this.data.owningSide.target, (0, schemaUpdateUtils_1.addField)(this.data.inverseSide))) : undefined);
43
43
  }
44
44
  describe() {
45
45
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"ConvertOneHasManyToManyHasManyRelationModification.js","sourceRoot":"","sources":["../../../../src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConvertOneHasManyToManyHasManyRelationModification.js","sourceRoot":"","sources":["../../../../src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,14 @@
1
1
  import { MigrationBuilder } from '@contember/database-migrations';
2
2
  import { Schema } from '@contember/schema';
3
3
  import { SchemaUpdater } from '../utils/schemaUpdateUtils';
4
- import { Differ, ModificationHandler, ModificationHandlerOptions } from '../ModificationHandler';
5
- import { SchemaWithMeta } from '../utils/schemaMeta';
4
+ import { Differ, ModificationHandler, ModificationHandlerCreateSqlOptions, ModificationHandlerOptions } from '../ModificationHandler';
6
5
  export declare class ConvertOneToManyRelationModificationHandler implements ModificationHandler<ConvertOneToManyRelationModificationData> {
7
6
  private readonly data;
8
7
  private readonly schema;
9
8
  private readonly options;
10
9
  private subModification;
11
- constructor(data: ConvertOneToManyRelationModificationData, schema: SchemaWithMeta, options: ModificationHandlerOptions);
12
- createSql(builder: MigrationBuilder): void;
10
+ constructor(data: ConvertOneToManyRelationModificationData, schema: Schema, options: ModificationHandlerOptions);
11
+ createSql(builder: MigrationBuilder, options: ModificationHandlerCreateSqlOptions): void;
13
12
  getSchemaUpdater(): SchemaUpdater;
14
13
  describe(): {
15
14
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ConvertOneToManyRelationModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/ConvertOneToManyRelationModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAS,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAEN,aAAa,EAKb,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAEN,MAAM,EACN,mBAAmB,EACnB,0BAA0B,EAC1B,MAAM,wBAAwB,CAAA;AAK/B,OAAO,EAAoB,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEtE,qBAAa,2CAA4C,YAAW,mBAAmB,CAAC,wCAAwC,CAAC;IAI/H,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IALzB,OAAO,CAAC,eAAe,CAA0B;gBAG/B,IAAI,EAAE,wCAAwC,EAC9C,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,0BAA0B;IAgB9C,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAa1C,gBAAgB,IAAI,aAAa;IAoCxC,QAAQ;;;IAMR,OAAO,CAAC,WAAW;CAQnB;AAED,MAAM,WAAW,wCAAwC;IACxD,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,uBAAuB,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,eAAO,MAAM,oCAAoC,yHAG/C,CAAA;AAEF,qBAAa,8BAA+B,YAAW,MAAM;IAC5D,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAoBxD"}
1
+ {"version":3,"file":"ConvertOneToManyRelationModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/ConvertOneToManyRelationModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAS,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAwD,MAAM,4BAA4B,CAAA;AAChH,OAAO,EAEN,MAAM,EACN,mBAAmB,EACnB,mCAAmC,EACnC,0BAA0B,EAC1B,MAAM,wBAAwB,CAAA;AAO/B,qBAAa,2CAA4C,YAAW,mBAAmB,CAAC,wCAAwC,CAAC;IAI/H,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IALzB,OAAO,CAAC,eAAe,CAA0B;gBAG/B,IAAI,EAAE,wCAAwC,EAC9C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,0BAA0B;IAgB9C,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,mCAAmC,GAAG,IAAI;IAoBxF,gBAAgB,IAAI,aAAa;IAkCxC,QAAQ;;;IAMR,OAAO,CAAC,WAAW;CAQnB;AAED,MAAM,WAAW,wCAAwC;IACxD,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,uBAAuB,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,eAAO,MAAM,oCAAoC,yHAG/C,CAAA;AAEF,qBAAa,8BAA+B,YAAW,MAAM;IAC5D,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAoBxD"}
@@ -8,7 +8,7 @@ const schema_utils_1 = require("@contember/schema-utils");
8
8
  const diffUtils_1 = require("../utils/diffUtils");
9
9
  const NoopModification_1 = require("../NoopModification");
10
10
  const fields_1 = require("../fields");
11
- const schemaMeta_1 = require("../utils/schemaMeta");
11
+ const dbHelpers_1 = require("../../utils/dbHelpers");
12
12
  class ConvertOneToManyRelationModificationHandler {
13
13
  constructor(data, schema, options) {
14
14
  this.data = data;
@@ -23,23 +23,25 @@ class ConvertOneToManyRelationModificationHandler {
23
23
  }, schema, this.options)
24
24
  : new NoopModification_1.NoopModification();
25
25
  }
26
- createSql(builder) {
26
+ createSql(builder, options) {
27
27
  const { entity, relation } = this.getRelation();
28
28
  const columnName = relation.joiningColumn.columnName;
29
- const proposedIndexName = schema_utils_1.NamingHelper.createForeignKeyIndexName(entity.tableName, columnName);
30
- const indexName = (0, schemaMeta_1.resolveIndexName)(this.schema, proposedIndexName);
31
- builder.addIndex(entity.tableName, columnName, {
32
- name: indexName,
29
+ const tableNameId = (0, dbHelpers_1.wrapIdentifier)(entity.tableName);
30
+ const columnNameId = (0, dbHelpers_1.wrapIdentifier)(columnName);
31
+ builder.sql(`CREATE INDEX ON ${tableNameId} (${columnNameId})`);
32
+ const uniqueConstraintNames = options.databaseMetadata.getUniqueConstraintNames({
33
+ tableName: entity.tableName,
34
+ columnNames: [relation.joiningColumn.columnName],
33
35
  });
34
- const uniqueConstraintName = schema_utils_1.NamingHelper.createUniqueConstraintName(entity.name, [relation.name]);
35
- builder.dropConstraint(entity.tableName, uniqueConstraintName);
36
- this.subModification.createSql(builder);
36
+ for (const name of uniqueConstraintNames) {
37
+ builder.sql(`ALTER TABLE ${(0, dbHelpers_1.wrapIdentifier)(entity.tableName)} DROP CONSTRAINT ${(0, dbHelpers_1.wrapIdentifier)(name)}`);
38
+ }
39
+ options.invalidateDatabaseMetadata();
40
+ this.subModification.createSql(builder, options);
37
41
  }
38
42
  getSchemaUpdater() {
39
43
  const { relation } = this.getRelation();
40
44
  const { entityName, fieldName } = this.data;
41
- const entity = this.schema.model.entities[this.data.entityName];
42
- const field = entity.fields[fieldName];
43
45
  return (0, schemaUpdateUtils_1.updateSchema)((0, schemaUpdateUtils_1.updateModel)((0, schemaUpdateUtils_1.updateEntity)(entityName, (0, schemaUpdateUtils_1.updateField)(fieldName, ({ field: { type, orphanRemoval, ...field } }) => ({
44
46
  type: schema_1.Model.RelationType.ManyHasOne,
45
47
  ...field,
@@ -47,7 +49,7 @@ class ConvertOneToManyRelationModificationHandler {
47
49
  (0, schemaUpdateUtils_1.updateModel)((0, schemaUpdateUtils_1.updateEntity)(relation.target, (0, schemaUpdateUtils_1.updateField)(this.data.newInverseSideFieldName, ({ field: { type, nullable, ...field } }) => ({
48
50
  type: schema_1.Model.RelationType.OneHasMany,
49
51
  ...field,
50
- })))) : undefined, (0, schemaUpdateUtils_1.addTakenIndexName)(schema_utils_1.NamingHelper.createForeignKeyIndexName(entity.tableName, field.joiningColumn.columnName)));
52
+ })))) : undefined);
51
53
  }
52
54
  describe() {
53
55
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"ConvertOneToManyRelationModification.js","sourceRoot":"","sources":["../../../../src/modifications/relations/ConvertOneToManyRelationModification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConvertOneToManyRelationModification.js","sourceRoot":"","sources":["../../../../src/modifications/relations/ConvertOneToManyRelationModification.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,14 @@
1
1
  import { Model, Schema } from '@contember/schema';
2
2
  import { MigrationBuilder } from '@contember/database-migrations';
3
3
  import { SchemaUpdater } from '../utils/schemaUpdateUtils';
4
- import { Differ, ModificationHandler, ModificationHandlerOptions } from '../ModificationHandler';
4
+ import { Differ, ModificationHandler, ModificationHandlerCreateSqlOptions, ModificationHandlerOptions } from '../ModificationHandler';
5
5
  import { PartialManyHasManyRelation } from './normalization';
6
- import { SchemaWithMeta } from '../utils/schemaMeta';
7
6
  export declare class CreateRelationModificationHandler implements ModificationHandler<CreateRelationModificationData> {
8
7
  private readonly data;
9
8
  private readonly schema;
10
9
  private readonly options;
11
- constructor(data: CreateRelationModificationData, schema: SchemaWithMeta, options: ModificationHandlerOptions);
12
- createSql(builder: MigrationBuilder): void;
10
+ constructor(data: CreateRelationModificationData, schema: Schema, options: ModificationHandlerOptions);
11
+ createSql(builder: MigrationBuilder, { databaseMetadata, systemSchema, invalidateDatabaseMetadata, }: ModificationHandlerCreateSqlOptions): void;
13
12
  getSchemaUpdater(): SchemaUpdater;
14
13
  describe({ createdEntities }: {
15
14
  createdEntities: string[];
@@ -19,7 +18,7 @@ export declare class CreateRelationModificationHandler implements ModificationHa
19
18
  };
20
19
  private getNormalizedOwningSide;
21
20
  }
22
- export declare type CreateRelationModificationData = {
21
+ export type CreateRelationModificationData = {
23
22
  entityName: string;
24
23
  owningSide: Model.ManyHasOneRelation | Model.OneHasOneOwningRelation | PartialManyHasManyRelation;
25
24
  inverseSide?: Model.AnyInverseRelation;
@@ -1 +1 @@
1
- {"version":3,"file":"CreateRelationModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/CreateRelationModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAQjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAGN,aAAa,EAIb,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAEN,MAAM,EACN,mBAAmB,EACnB,0BAA0B,EAC1B,MAAM,wBAAwB,CAAA;AAK/B,OAAO,EAAgC,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAC1F,OAAO,EAAoB,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAItE,qBAAa,iCAAkC,YAAW,mBAAmB,CAAC,8BAA8B,CAAC;IAG3G,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAFP,IAAI,EAAE,8BAA8B,EACpC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,0BAA0B;IAG9C,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAuC1C,gBAAgB,IAAI,aAAa;IAkBxC,QAAQ,CAAC,EAAE,eAAe,EAAE,EAAE;QAAE,eAAe,EAAE,MAAM,EAAE,CAAA;KAAE;;;;IAU3D,OAAO,CAAC,uBAAuB;CAM/B;AAGD,oBAAY,8BAA8B,GAAG;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EACP,KAAK,CAAC,kBAAkB,GACxB,KAAK,CAAC,uBAAuB,GAC7B,0BAA0B,CAAA;IAC7B,WAAW,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,0BAA0B,qGAGrC,CAAA;AAEF,qBAAa,oBAAqB,YAAW,MAAM;IAClD,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAkBxD"}
1
+ {"version":3,"file":"CreateRelationModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/CreateRelationModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAY,aAAa,EAA2C,MAAM,4BAA4B,CAAA;AAC7G,OAAO,EAEN,MAAM,EACN,mBAAmB,EAAE,mCAAmC,EACxD,0BAA0B,EAC1B,MAAM,wBAAwB,CAAA;AAK/B,OAAO,EAAgC,0BAA0B,EAAE,MAAM,iBAAiB,CAAA;AAK1F,qBAAa,iCAAkC,YAAW,mBAAmB,CAAC,8BAA8B,CAAC;IAG3G,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAFP,IAAI,EAAE,8BAA8B,EACpC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,0BAA0B;IAG9C,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAC3C,gBAAgB,EAChB,YAAY,EACZ,0BAA0B,GAC1B,EAAE,mCAAmC,GAAG,IAAI;IAwCtC,gBAAgB,IAAI,aAAa;IAWxC,QAAQ,CAAC,EAAE,eAAe,EAAE,EAAE;QAAE,eAAe,EAAE,MAAM,EAAE,CAAA;KAAE;;;;IAU3D,OAAO,CAAC,uBAAuB;CAM/B;AAGD,MAAM,MAAM,8BAA8B,GAAG;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EACP,KAAK,CAAC,kBAAkB,GACxB,KAAK,CAAC,uBAAuB,GAC7B,0BAA0B,CAAA;IAC7B,WAAW,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,0BAA0B,qGAGrC,CAAA;AAEF,qBAAa,oBAAqB,YAAW,MAAM;IAClD,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAkBxD"}
@@ -10,15 +10,15 @@ const diffUtils_1 = require("../utils/diffUtils");
10
10
  const getPrimaryColumnType_1 = require("../utils/getPrimaryColumnType");
11
11
  const createJunctionTable_1 = require("../utils/createJunctionTable");
12
12
  const normalization_1 = require("./normalization");
13
- const schemaMeta_1 = require("../utils/schemaMeta");
14
13
  const helpers_1 = require("./helpers");
14
+ const dbHelpers_1 = require("../../utils/dbHelpers");
15
15
  class CreateRelationModificationHandler {
16
16
  constructor(data, schema, options) {
17
17
  this.data = data;
18
18
  this.schema = schema;
19
19
  this.options = options;
20
20
  }
21
- createSql(builder) {
21
+ createSql(builder, { databaseMetadata, systemSchema, invalidateDatabaseMetadata, }) {
22
22
  const entity = this.schema.model.entities[this.data.entityName];
23
23
  if (entity.view) {
24
24
  return;
@@ -31,40 +31,36 @@ class CreateRelationModificationHandler {
31
31
  notNull: !relation.nullable,
32
32
  },
33
33
  });
34
- (0, helpers_1.addForeignKeyConstraint)({ builder, entity, targetEntity, relation });
34
+ (0, helpers_1.addForeignKeyConstraint)({ builder, entity, targetEntity, relation, databaseMetadata, invalidateDatabaseMetadata });
35
35
  };
36
36
  (0, schema_utils_1.acceptRelationTypeVisitor)(this.schema.model, entity, this.getNormalizedOwningSide(), {
37
37
  visitManyHasOne: ({ relation }) => {
38
38
  createOwningSide(relation);
39
39
  const columnName = relation.joiningColumn.columnName;
40
- const proposedIndexName = schema_utils_1.NamingHelper.createForeignKeyIndexName(entity.tableName, columnName);
41
- const indexName = (0, schemaMeta_1.resolveIndexName)(this.schema, proposedIndexName);
42
- builder.addIndex(entity.tableName, columnName, {
43
- name: indexName,
44
- });
40
+ const tableNameId = (0, dbHelpers_1.wrapIdentifier)(entity.tableName);
41
+ const columnNameId = (0, dbHelpers_1.wrapIdentifier)(columnName);
42
+ builder.sql(`CREATE INDEX ON ${tableNameId} (${columnNameId})`);
43
+ invalidateDatabaseMetadata();
45
44
  },
46
45
  visitOneHasMany: () => { },
47
46
  visitOneHasOneOwning: ({ relation }) => {
48
47
  createOwningSide(relation);
49
- const uniqueConstraintName = schema_utils_1.NamingHelper.createUniqueConstraintName(entity.name, [relation.name]);
50
- builder.addConstraint(entity.tableName, uniqueConstraintName, { unique: [relation.joiningColumn.columnName] });
48
+ const tableNameId = (0, dbHelpers_1.wrapIdentifier)(entity.tableName);
49
+ const columnNameId = (0, dbHelpers_1.wrapIdentifier)(relation.joiningColumn.columnName);
50
+ builder.sql(`ALTER TABLE ${tableNameId} ADD UNIQUE (${columnNameId})`);
51
+ invalidateDatabaseMetadata();
51
52
  },
52
53
  visitOneHasOneInverse: () => { },
53
54
  visitManyHasManyOwning: ({ relation }) => {
54
- (0, createJunctionTable_1.createJunctionTableSql)(builder, this.options.systemSchema, this.schema, entity, targetEntity, relation);
55
+ (0, createJunctionTable_1.createJunctionTableSql)(builder, systemSchema, this.schema, entity, targetEntity, relation);
55
56
  },
56
57
  visitManyHasManyInverse: () => { },
57
58
  });
58
59
  }
59
60
  getSchemaUpdater() {
60
- const entity = this.schema.model.entities[this.data.entityName];
61
61
  return (0, schemaUpdateUtils_1.updateSchema)((0, schemaUpdateUtils_1.updateModel)((0, schemaUpdateUtils_1.updateEntity)(this.data.entityName, (0, schemaUpdateUtils_1.addField)(this.getNormalizedOwningSide())), this.data.inverseSide !== undefined
62
62
  ? (0, schemaUpdateUtils_1.updateEntity)(this.data.owningSide.target, (0, schemaUpdateUtils_1.addField)(this.data.inverseSide))
63
- : undefined), this.data.owningSide.type === schema_1.Model.RelationType.ManyHasOne
64
- ? (0, schemaUpdateUtils_1.addTakenIndexName)(schema_utils_1.NamingHelper.createForeignKeyIndexName(entity.tableName, this.data.owningSide.joiningColumn.columnName))
65
- : undefined, this.data.owningSide.type === schema_1.Model.RelationType.ManyHasMany && (0, schema_utils_1.isOwningRelation)(this.data.owningSide)
66
- ? (0, schemaUpdateUtils_1.addTakenIndexName)(schema_utils_1.NamingHelper.createJunctionTablePrimaryConstraintName(this.data.owningSide.joiningTable.tableName))
67
- : undefined);
63
+ : undefined));
68
64
  }
69
65
  describe({ createdEntities }) {
70
66
  const notNull = (0, isIt_1.isIt)(this.data.owningSide, 'nullable') && !this.data.owningSide.nullable;
@@ -1 +1 @@
1
- {"version":3,"file":"CreateRelationModification.js","sourceRoot":"","sources":["../../../../src/modifications/relations/CreateRelationModification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CreateRelationModification.js","sourceRoot":"","sources":["../../../../src/modifications/relations/CreateRelationModification.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,12 @@
1
1
  import { MigrationBuilder } from '@contember/database-migrations';
2
2
  import { Schema } from '@contember/schema';
3
3
  import { SchemaUpdater } from '../utils/schemaUpdateUtils';
4
- import { Differ, ModificationHandler, ModificationHandlerOptions } from '../ModificationHandler';
4
+ import { Differ, ModificationHandler, ModificationHandlerCreateSqlOptions } from '../ModificationHandler';
5
5
  export declare class ToggleJunctionEventLogModificationHandler implements ModificationHandler<ToggleJunctionEventLogModificationData> {
6
6
  private readonly data;
7
7
  private readonly schema;
8
- private readonly options;
9
- constructor(data: ToggleJunctionEventLogModificationData, schema: Schema, options: ModificationHandlerOptions);
10
- createSql(builder: MigrationBuilder): void;
8
+ constructor(data: ToggleJunctionEventLogModificationData, schema: Schema);
9
+ createSql(builder: MigrationBuilder, { systemSchema }: ModificationHandlerCreateSqlOptions): void;
11
10
  getSchemaUpdater(): SchemaUpdater;
12
11
  describe(): {
13
12
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleJunctionEventLogModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/ToggleJunctionEventLogModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAS,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,aAAa,EAA0C,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAEN,MAAM,EACN,mBAAmB,EACnB,0BAA0B,EAC1B,MAAM,wBAAwB,CAAA;AAW/B,qBAAa,yCAA0C,YAAW,mBAAmB,CAAC,sCAAsC,CAAC;IAG3H,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAFP,IAAI,EAAE,sCAAsC,EAC5C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,0BAA0B;IAI9C,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAoB1C,gBAAgB,IAAI,aAAa;IAoBxC,QAAQ;;;CAKR;AAED,MAAM,WAAW,sCAAsC;IACtD,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;CAChB;AAED,eAAO,MAAM,kCAAkC,qHAG7C,CAAA;AAEF,qBAAa,4BAA6B,YAAW,MAAM;IACzD,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAqBzD"}
1
+ {"version":3,"file":"ToggleJunctionEventLogModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/ToggleJunctionEventLogModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAS,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,aAAa,EAA0C,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAEN,MAAM,EACN,mBAAmB,EACnB,mCAAmC,EACnC,MAAM,wBAAwB,CAAA;AAW/B,qBAAa,yCAA0C,YAAW,mBAAmB,CAAC,sCAAsC,CAAC;IAG3H,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,IAAI,EAAE,sCAAsC,EAC5C,MAAM,EAAE,MAAM;IAIzB,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,YAAY,EAAE,EAAE,mCAAmC,GAAG,IAAI;IAoBjG,gBAAgB,IAAI,aAAa;IAoBxC,QAAQ;;;CAKR;AAED,MAAM,WAAW,sCAAsC;IACtD,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;CAChB;AAED,eAAO,MAAM,kCAAkC,qHAG7C,CAAA;AAEF,qBAAa,4BAA6B,YAAW,MAAM;IACzD,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAqBzD"}
@@ -9,12 +9,11 @@ const schema_utils_1 = require("@contember/schema-utils");
9
9
  const diffUtils_1 = require("../utils/diffUtils");
10
10
  const isIt_1 = require("../../utils/isIt");
11
11
  class ToggleJunctionEventLogModificationHandler {
12
- constructor(data, schema, options) {
12
+ constructor(data, schema) {
13
13
  this.data = data;
14
14
  this.schema = schema;
15
- this.options = options;
16
15
  }
17
- createSql(builder) {
16
+ createSql(builder, { systemSchema }) {
18
17
  const entity = this.schema.model.entities[this.data.entityName];
19
18
  const relation = entity.fields[this.data.fieldName];
20
19
  if (!(0, schema_utils_1.isRelation)(relation) || relation.type !== schema_1.Model.RelationType.ManyHasMany || !(0, schema_utils_1.isOwningRelation)(relation)) {
@@ -26,8 +25,8 @@ class ToggleJunctionEventLogModificationHandler {
26
25
  relation.joiningTable.joiningColumn.columnName,
27
26
  relation.joiningTable.inverseJoiningColumn.columnName,
28
27
  ];
29
- (0, sqlUpdateUtils_1.createEventTrigger)(builder, this.options.systemSchema, tableName, primaryColumns);
30
- (0, sqlUpdateUtils_1.createEventTrxTrigger)(builder, this.options.systemSchema, tableName);
28
+ (0, sqlUpdateUtils_1.createEventTrigger)(builder, systemSchema, tableName, primaryColumns);
29
+ (0, sqlUpdateUtils_1.createEventTrxTrigger)(builder, systemSchema, tableName);
31
30
  }
32
31
  else {
33
32
  (0, sqlUpdateUtils_1.dropEventTrigger)(builder, tableName);
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleJunctionEventLogModification.js","sourceRoot":"","sources":["../../../../src/modifications/relations/ToggleJunctionEventLogModification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToggleJunctionEventLogModification.js","sourceRoot":"","sources":["../../../../src/modifications/relations/ToggleJunctionEventLogModification.ts"],"names":[],"mappings":";;;AACA,8CAAiD;AACjD,kEAAkG;AAClG,gEAK+B;AAC/B,4DAKgC;AAChC,0DAAsE;AACtE,kDAAoD;AACpD,2CAAuC;AAEvC,MAAa,yCAAyC;IAErD,YACkB,IAA4C,EAC5C,MAAc;QADd,SAAI,GAAJ,IAAI,CAAwC;QAC5C,WAAM,GAAN,MAAM,CAAQ;IAEhC,CAAC;IAEM,SAAS,CAAC,OAAyB,EAAE,EAAE,YAAY,EAAuC;QAChG,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACnD,IAAI,CAAC,IAAA,yBAAU,EAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAK,CAAC,YAAY,CAAC,WAAW,IAAI,CAAC,IAAA,+BAAgB,EAAC,QAAQ,CAAC,EAAE;YAC7G,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAA;SAChC;QACD,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAA;QACjD,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACtB,MAAM,cAAc,GAAG;gBACtB,QAAQ,CAAC,YAAY,CAAC,aAAa,CAAC,UAAU;gBAC9C,QAAQ,CAAC,YAAY,CAAC,oBAAoB,CAAC,UAAU;aACrD,CAAA;YACD,IAAA,mCAAkB,EAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,CAAC,CAAA;YACpE,IAAA,sCAAqB,EAAC,OAAO,EAAE,YAAY,EAAE,SAAS,CAAC,CAAA;SACvD;aAAM;YACN,IAAA,iCAAgB,EAAC,OAAO,EAAE,SAAS,CAAC,CAAA;YACpC,IAAA,oCAAmB,EAAC,OAAO,EAAE,SAAS,CAAC,CAAA;SACvC;IACF,CAAC;IAEM,gBAAgB;QACtB,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAA;QACpD,OAAO,IAAA,+BAAW,EACjB,IAAA,gCAAY,EACX,UAAU,EACV,IAAA,+BAAW,EAAkC,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,GAAG,YAAY,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,EAAE;YAChI,OAAO;gBACN,GAAG,KAAK;gBACR,YAAY,EAAE;oBACb,GAAG,YAAY;oBACf,QAAQ,EAAE;wBACT,OAAO;qBACP;iBACD;aACD,CAAA;QACF,CAAC,CAAC,CACF,CACD,CAAA;IACF,CAAC;IAED,QAAQ;QACP,OAAO;YACN,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,kBAAkB,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;SACnH,CAAA;IACF,CAAC;CACD;AArDD,8FAqDC;AAQY,QAAA,kCAAkC,GAAG,IAAA,4CAAsB,EAAC;IACxE,EAAE,EAAE,wBAAwB;IAC5B,OAAO,EAAE,yCAAyC;CAClD,CAAC,CAAA;AAEF,MAAa,4BAA4B;IACvC,UAAU,CAAC,cAAsB,EAAE,aAAqB;QACxD,OAAO,IAAA,2BAAe,EAAC,cAAc,EAAE,aAAa,EAAE,CAAC,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE,EAAE;;YAC9G,IACC,gBAAgB,CAAC,IAAI,KAAK,eAAe,CAAC,IAAI;gBAC9C,IAAA,WAAI,EAA6B,eAAe,EAAE,cAAc,CAAC;gBACjE,IAAA,WAAI,EAA6B,gBAAgB,EAAE,cAAc,CAAC,EACjE;gBACD,MAAM,QAAQ,GAAG,MAAA,MAAA,eAAe,CAAC,YAAY,CAAC,QAAQ,0CAAE,OAAO,mCAAI,KAAK,CAAA;gBACxE,MAAM,QAAQ,GAAG,MAAA,MAAA,gBAAgB,CAAC,YAAY,CAAC,QAAQ,0CAAE,OAAO,mCAAI,KAAK,CAAA;gBACzE,IAAI,QAAQ,KAAK,QAAQ,EAAE;oBAC1B,OAAO,0CAAkC,CAAC,kBAAkB,CAAC;wBAC5D,UAAU,EAAE,aAAa,CAAC,IAAI;wBAC9B,SAAS,EAAE,eAAe,CAAC,IAAI;wBAC/B,OAAO,EAAE,QAAQ;qBACjB,CAAC,CAAA;iBACF;aACD;YACD,OAAO,SAAS,CAAA;QACjB,CAAC,CAAC,CAAA;IAEH,CAAC;CACD;AAtBD,oEAsBC"}
@@ -1,12 +1,12 @@
1
1
  import { MigrationBuilder } from '@contember/database-migrations';
2
2
  import { Model, Schema } from '@contember/schema';
3
3
  import { SchemaUpdater } from '../utils/schemaUpdateUtils';
4
- import { Differ, ModificationHandler } from '../ModificationHandler';
4
+ import { Differ, ModificationHandler, ModificationHandlerCreateSqlOptions } from '../ModificationHandler';
5
5
  export declare class UpdateRelationOnDeleteModificationHandler implements ModificationHandler<UpdateRelationOnDeleteModificationData> {
6
6
  private readonly data;
7
7
  private readonly schema;
8
8
  constructor(data: UpdateRelationOnDeleteModificationData, schema: Schema);
9
- createSql(builder: MigrationBuilder): void;
9
+ createSql(builder: MigrationBuilder, { databaseMetadata, invalidateDatabaseMetadata }: ModificationHandlerCreateSqlOptions): void;
10
10
  getSchemaUpdater(): SchemaUpdater;
11
11
  describe(): {
12
12
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"UpdateRelationOnDeleteModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/UpdateRelationOnDeleteModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,aAAa,EAA0C,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAA0B,MAAM,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAM5F,qBAAa,yCAA0C,YAAW,mBAAmB,CAAC,sCAAsC,CAAC;IAChH,OAAO,CAAC,QAAQ,CAAC,IAAI;IAA0C,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAArE,IAAI,EAAE,sCAAsC,EAAmB,MAAM,EAAE,MAAM;IAEnG,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAmB1C,gBAAgB,IAAI,aAAa;IAaxC,QAAQ;;;CAGR;AAED,MAAM,WAAW,sCAAsC;IACtD,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAA;CACxB;AAED,eAAO,MAAM,kCAAkC,qHAG7C,CAAA;AAEF,qBAAa,4BAA6B,YAAW,MAAM;IAC1D,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAiBxD"}
1
+ {"version":3,"file":"UpdateRelationOnDeleteModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/relations/UpdateRelationOnDeleteModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,aAAa,EAA0C,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAEN,MAAM,EACN,mBAAmB,EACnB,mCAAmC,EACnC,MAAM,wBAAwB,CAAA;AAM/B,qBAAa,yCAA0C,YAAW,mBAAmB,CAAC,sCAAsC,CAAC;IAE3H,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,IAAI,EAAE,sCAAsC,EAC5C,MAAM,EAAE,MAAM;IAGzB,SAAS,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,EAAE,mCAAmC,GAAG,IAAI;IAmBjI,gBAAgB,IAAI,aAAa;IAaxC,QAAQ;;;CAGR;AAED,MAAM,WAAW,sCAAsC;IACtD,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAA;CACxB;AAED,eAAO,MAAM,kCAAkC,qHAG7C,CAAA;AAEF,qBAAa,4BAA6B,YAAW,MAAM;IAC1D,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAiBxD"}