@contember/schema-migrations 1.2.1 → 1.3.0-alpha.13

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 (285) hide show
  1. package/dist/src/MigrationCreator.js +2 -2
  2. package/dist/src/MigrationCreator.js.map +1 -1
  3. package/dist/src/MigrationDescriber.d.ts +4 -4
  4. package/dist/src/MigrationDescriber.d.ts.map +1 -1
  5. package/dist/src/MigrationDescriber.js +8 -7
  6. package/dist/src/MigrationDescriber.js.map +1 -1
  7. package/dist/src/MigrationFilesManager.js +2 -2
  8. package/dist/src/MigrationFilesManager.js.map +1 -1
  9. package/dist/src/MigrationsResolver.js +3 -3
  10. package/dist/src/MigrationsResolver.js.map +1 -1
  11. package/dist/src/SchemaDiffer.d.ts.map +1 -1
  12. package/dist/src/SchemaDiffer.js +21 -2
  13. package/dist/src/SchemaDiffer.js.map +1 -1
  14. package/dist/src/SchemaMigrator.d.ts +1 -2
  15. package/dist/src/SchemaMigrator.d.ts.map +1 -1
  16. package/dist/src/SchemaMigrator.js +0 -1
  17. package/dist/src/SchemaMigrator.js.map +1 -1
  18. package/dist/src/index.d.ts +1 -1
  19. package/dist/src/index.d.ts.map +1 -1
  20. package/dist/src/index.js +3 -1
  21. package/dist/src/index.js.map +1 -1
  22. package/dist/src/modifications/ModificationHandler.d.ts +9 -5
  23. package/dist/src/modifications/ModificationHandler.d.ts.map +1 -1
  24. package/dist/src/modifications/ModificationHandler.js.map +1 -1
  25. package/dist/src/modifications/ModificationHandlerFactory.d.ts +2 -2
  26. package/dist/src/modifications/ModificationHandlerFactory.d.ts.map +1 -1
  27. package/dist/src/modifications/ModificationHandlerFactory.js +14 -0
  28. package/dist/src/modifications/ModificationHandlerFactory.js.map +1 -1
  29. package/dist/src/modifications/ModificationVersions.d.ts +4 -2
  30. package/dist/src/modifications/ModificationVersions.d.ts.map +1 -1
  31. package/dist/src/modifications/ModificationVersions.js +5 -3
  32. package/dist/src/modifications/ModificationVersions.js.map +1 -1
  33. package/dist/src/modifications/actions/CreateTargetModification.d.ts +21 -0
  34. package/dist/src/modifications/actions/CreateTargetModification.d.ts.map +1 -0
  35. package/dist/src/modifications/actions/CreateTargetModification.js +40 -0
  36. package/dist/src/modifications/actions/CreateTargetModification.js.map +1 -0
  37. package/dist/src/modifications/actions/CreateTriggerModification.d.ts +21 -0
  38. package/dist/src/modifications/actions/CreateTriggerModification.d.ts.map +1 -0
  39. package/dist/src/modifications/actions/CreateTriggerModification.js +40 -0
  40. package/dist/src/modifications/actions/CreateTriggerModification.js.map +1 -0
  41. package/dist/src/modifications/actions/RemoveTargetModification.d.ts +21 -0
  42. package/dist/src/modifications/actions/RemoveTargetModification.d.ts.map +1 -0
  43. package/dist/src/modifications/actions/RemoveTargetModification.js +40 -0
  44. package/dist/src/modifications/actions/RemoveTargetModification.js.map +1 -0
  45. package/dist/src/modifications/actions/RemoveTriggerModification.d.ts +21 -0
  46. package/dist/src/modifications/actions/RemoveTriggerModification.d.ts.map +1 -0
  47. package/dist/src/modifications/actions/RemoveTriggerModification.js +40 -0
  48. package/dist/src/modifications/actions/RemoveTriggerModification.js.map +1 -0
  49. package/dist/src/modifications/actions/UpdateTargetModification.d.ts +22 -0
  50. package/dist/src/modifications/actions/UpdateTargetModification.d.ts.map +1 -0
  51. package/dist/src/modifications/actions/UpdateTargetModification.js +46 -0
  52. package/dist/src/modifications/actions/UpdateTargetModification.js.map +1 -0
  53. package/dist/src/modifications/actions/UpdateTriggerModification.d.ts +21 -0
  54. package/dist/src/modifications/actions/UpdateTriggerModification.d.ts.map +1 -0
  55. package/dist/src/modifications/actions/UpdateTriggerModification.js +46 -0
  56. package/dist/src/modifications/actions/UpdateTriggerModification.js.map +1 -0
  57. package/dist/src/modifications/actions/index.d.ts +4 -0
  58. package/dist/src/modifications/actions/index.d.ts.map +1 -0
  59. package/dist/src/modifications/actions/index.js +20 -0
  60. package/dist/src/modifications/actions/index.js.map +1 -0
  61. package/dist/src/modifications/columns/UpdateColumnDefinitionModification.d.ts.map +1 -1
  62. package/dist/src/modifications/columns/UpdateColumnDefinitionModification.js +3 -3
  63. package/dist/src/modifications/columns/UpdateColumnDefinitionModification.js.map +1 -1
  64. package/dist/src/modifications/constraints/CreateUniqueConstraintModification.d.ts +3 -3
  65. package/dist/src/modifications/constraints/CreateUniqueConstraintModification.d.ts.map +1 -1
  66. package/dist/src/modifications/constraints/CreateUniqueConstraintModification.js +20 -32
  67. package/dist/src/modifications/constraints/CreateUniqueConstraintModification.js.map +1 -1
  68. package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.d.ts +11 -5
  69. package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.d.ts.map +1 -1
  70. package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.js +37 -9
  71. package/dist/src/modifications/constraints/RemoveUniqueConstraintModification.js.map +1 -1
  72. package/dist/src/modifications/constraints/utils.d.ts +7 -0
  73. package/dist/src/modifications/constraints/utils.d.ts.map +1 -0
  74. package/dist/src/modifications/constraints/utils.js +33 -0
  75. package/dist/src/modifications/constraints/utils.js.map +1 -0
  76. package/dist/src/modifications/entities/CreateEntityModification.d.ts +4 -4
  77. package/dist/src/modifications/entities/CreateEntityModification.d.ts.map +1 -1
  78. package/dist/src/modifications/entities/CreateEntityModification.js +18 -14
  79. package/dist/src/modifications/entities/CreateEntityModification.js.map +1 -1
  80. package/dist/src/modifications/entities/CreateViewModification.d.ts +2 -2
  81. package/dist/src/modifications/entities/CreateViewModification.d.ts.map +1 -1
  82. package/dist/src/modifications/entities/CreateViewModification.js +14 -10
  83. package/dist/src/modifications/entities/CreateViewModification.js.map +1 -1
  84. package/dist/src/modifications/entities/RemoveEntityModification.d.ts +3 -4
  85. package/dist/src/modifications/entities/RemoveEntityModification.d.ts.map +1 -1
  86. package/dist/src/modifications/entities/RemoveEntityModification.js +3 -2
  87. package/dist/src/modifications/entities/RemoveEntityModification.js.map +1 -1
  88. package/dist/src/modifications/entities/ToggleEventLogModification.d.ts +2 -2
  89. package/dist/src/modifications/entities/ToggleEventLogModification.d.ts.map +1 -1
  90. package/dist/src/modifications/entities/ToggleEventLogModification.js +3 -3
  91. package/dist/src/modifications/entities/ToggleEventLogModification.js.map +1 -1
  92. package/dist/src/modifications/entities/UpdateEntityNameModification.d.ts +4 -5
  93. package/dist/src/modifications/entities/UpdateEntityNameModification.d.ts.map +1 -1
  94. package/dist/src/modifications/entities/UpdateEntityNameModification.js +3 -19
  95. package/dist/src/modifications/entities/UpdateEntityNameModification.js.map +1 -1
  96. package/dist/src/modifications/entities/UpdateEntityOrderByModification.d.ts +23 -0
  97. package/dist/src/modifications/entities/UpdateEntityOrderByModification.d.ts.map +1 -0
  98. package/dist/src/modifications/entities/UpdateEntityOrderByModification.js +63 -0
  99. package/dist/src/modifications/entities/UpdateEntityOrderByModification.js.map +1 -0
  100. package/dist/src/modifications/entities/index.d.ts +1 -0
  101. package/dist/src/modifications/entities/index.d.ts.map +1 -1
  102. package/dist/src/modifications/entities/index.js +1 -0
  103. package/dist/src/modifications/entities/index.js.map +1 -1
  104. package/dist/src/modifications/fields/RemoveFieldModification.js.map +1 -1
  105. package/dist/src/modifications/fields/UpdateFieldNameModification.d.ts +4 -5
  106. package/dist/src/modifications/fields/UpdateFieldNameModification.d.ts.map +1 -1
  107. package/dist/src/modifications/fields/UpdateFieldNameModification.js +18 -27
  108. package/dist/src/modifications/fields/UpdateFieldNameModification.js.map +1 -1
  109. package/dist/src/modifications/indexes/CreateIndexModification.d.ts +5 -5
  110. package/dist/src/modifications/indexes/CreateIndexModification.d.ts.map +1 -1
  111. package/dist/src/modifications/indexes/CreateIndexModification.js +24 -35
  112. package/dist/src/modifications/indexes/CreateIndexModification.js.map +1 -1
  113. package/dist/src/modifications/indexes/RemoveIndexModification.d.ts +12 -6
  114. package/dist/src/modifications/indexes/RemoveIndexModification.d.ts.map +1 -1
  115. package/dist/src/modifications/indexes/RemoveIndexModification.js +36 -10
  116. package/dist/src/modifications/indexes/RemoveIndexModification.js.map +1 -1
  117. package/dist/src/modifications/indexes/utils.d.ts +7 -0
  118. package/dist/src/modifications/indexes/utils.d.ts.map +1 -0
  119. package/dist/src/modifications/indexes/utils.js +33 -0
  120. package/dist/src/modifications/indexes/utils.js.map +1 -0
  121. package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts +3 -4
  122. package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.d.ts.map +1 -1
  123. package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js +10 -10
  124. package/dist/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.js.map +1 -1
  125. package/dist/src/modifications/relations/ConvertOneToManyRelationModification.d.ts +3 -4
  126. package/dist/src/modifications/relations/ConvertOneToManyRelationModification.d.ts.map +1 -1
  127. package/dist/src/modifications/relations/ConvertOneToManyRelationModification.js +14 -12
  128. package/dist/src/modifications/relations/ConvertOneToManyRelationModification.js.map +1 -1
  129. package/dist/src/modifications/relations/CreateRelationModification.d.ts +3 -4
  130. package/dist/src/modifications/relations/CreateRelationModification.d.ts.map +1 -1
  131. package/dist/src/modifications/relations/CreateRelationModification.js +14 -26
  132. package/dist/src/modifications/relations/CreateRelationModification.js.map +1 -1
  133. package/dist/src/modifications/relations/ToggleJunctionEventLogModification.d.ts +3 -4
  134. package/dist/src/modifications/relations/ToggleJunctionEventLogModification.d.ts.map +1 -1
  135. package/dist/src/modifications/relations/ToggleJunctionEventLogModification.js +4 -5
  136. package/dist/src/modifications/relations/ToggleJunctionEventLogModification.js.map +1 -1
  137. package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.d.ts +2 -2
  138. package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.d.ts.map +1 -1
  139. package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.js +20 -1
  140. package/dist/src/modifications/relations/UpdateRelationOnDeleteModification.js.map +1 -1
  141. package/dist/src/modifications/relations/helpers.d.ts +13 -0
  142. package/dist/src/modifications/relations/helpers.d.ts.map +1 -0
  143. package/dist/src/modifications/relations/helpers.js +29 -0
  144. package/dist/src/modifications/relations/helpers.js.map +1 -0
  145. package/dist/src/modifications/upgrade/RemoveIndexNamesModification.d.ts +19 -0
  146. package/dist/src/modifications/upgrade/RemoveIndexNamesModification.d.ts.map +1 -0
  147. package/dist/src/modifications/upgrade/RemoveIndexNamesModification.js +40 -0
  148. package/dist/src/modifications/upgrade/RemoveIndexNamesModification.js.map +1 -0
  149. package/dist/src/modifications/utils/createJunctionTable.d.ts +2 -3
  150. package/dist/src/modifications/utils/createJunctionTable.d.ts.map +1 -1
  151. package/dist/src/modifications/utils/createJunctionTable.js +4 -6
  152. package/dist/src/modifications/utils/createJunctionTable.js.map +1 -1
  153. package/dist/src/modifications/utils/schemaUpdateUtils.d.ts +2 -4
  154. package/dist/src/modifications/utils/schemaUpdateUtils.d.ts.map +1 -1
  155. package/dist/src/modifications/utils/schemaUpdateUtils.js +5 -20
  156. package/dist/src/modifications/utils/schemaUpdateUtils.js.map +1 -1
  157. package/dist/src/modifications/utils/stringArrayEquals.d.ts +2 -0
  158. package/dist/src/modifications/utils/stringArrayEquals.d.ts.map +1 -0
  159. package/dist/src/modifications/utils/stringArrayEquals.js +9 -0
  160. package/dist/src/modifications/utils/stringArrayEquals.js.map +1 -0
  161. package/dist/src/tsconfig.tsbuildinfo +1 -1
  162. package/dist/src/utils/PartialEntity.d.ts +5 -3
  163. package/dist/src/utils/PartialEntity.d.ts.map +1 -1
  164. package/dist/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.js +1 -1
  165. package/dist/tests/cases/integration/convertOneToManyRelation.test.js +5 -5
  166. package/dist/tests/cases/integration/convertOneToManyRelation.test.js.map +1 -1
  167. package/dist/tests/cases/integration/createAndDropIndex.test.js +4 -4
  168. package/dist/tests/cases/integration/createAndDropIndex.test.js.map +1 -1
  169. package/dist/tests/cases/integration/createEntity.test.js +6 -9
  170. package/dist/tests/cases/integration/createEntity.test.js.map +1 -1
  171. package/dist/tests/cases/integration/createManyHasMany.test.js +3 -3
  172. package/dist/tests/cases/integration/createManyHasOne.test.js +4 -4
  173. package/dist/tests/cases/integration/createManyHasOne.test.js.map +1 -1
  174. package/dist/tests/cases/integration/createOneHasMany.test.js +6 -9
  175. package/dist/tests/cases/integration/createOneHasMany.test.js.map +1 -1
  176. package/dist/tests/cases/integration/createOneHasOne.test.js +6 -6
  177. package/dist/tests/cases/integration/createRelationInverseSide.test.js +1 -1
  178. package/dist/tests/cases/integration/createRelationInverseSide.test.js.map +1 -1
  179. package/dist/tests/cases/integration/createView.test.js +6 -6
  180. package/dist/tests/cases/integration/removeField.test.js +6 -6
  181. package/dist/tests/cases/integration/removeField.test.js.map +1 -1
  182. package/dist/tests/cases/integration/updateColumnDefinition.test.js +4 -4
  183. package/dist/tests/cases/integration/updateEntityName.test.js +6 -5
  184. package/dist/tests/cases/integration/updateEntityName.test.js.map +1 -1
  185. package/dist/tests/cases/integration/updateEntityOrderBy.test.d.ts +2 -0
  186. package/dist/tests/cases/integration/updateEntityOrderBy.test.d.ts.map +1 -0
  187. package/dist/tests/cases/integration/updateEntityOrderBy.test.js +57 -0
  188. package/dist/tests/cases/integration/updateEntityOrderBy.test.js.map +1 -0
  189. package/dist/tests/cases/integration/updateFieldName.test.js +8 -7
  190. package/dist/tests/cases/integration/updateFieldName.test.js.map +1 -1
  191. package/dist/tests/cases/integration/updateRelationOnDelete.test.js +2 -1
  192. package/dist/tests/cases/integration/updateRelationOnDelete.test.js.map +1 -1
  193. package/dist/tests/cases/integration/updateView.test.js +18 -18
  194. package/dist/tests/scripts/checkCreateConsistentMigrations.js +1 -1
  195. package/dist/tests/scripts/checkCreateConsistentMigrations.js.map +1 -1
  196. package/dist/tests/src/tests.d.ts.map +1 -1
  197. package/dist/tests/src/tests.js +12 -8
  198. package/dist/tests/src/tests.js.map +1 -1
  199. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  200. package/package.json +11 -7
  201. package/src/MigrationCreator.ts +1 -1
  202. package/src/MigrationDescriber.ts +11 -9
  203. package/src/MigrationFilesManager.ts +1 -1
  204. package/src/MigrationsResolver.ts +1 -1
  205. package/src/SchemaDiffer.ts +23 -12
  206. package/src/SchemaMigrator.ts +1 -3
  207. package/src/index.ts +1 -1
  208. package/src/modifications/ModificationHandler.ts +10 -5
  209. package/src/modifications/ModificationHandlerFactory.ts +24 -11
  210. package/src/modifications/ModificationVersions.ts +4 -2
  211. package/src/modifications/actions/CreateTargetModification.ts +46 -0
  212. package/src/modifications/actions/CreateTriggerModification.ts +46 -0
  213. package/src/modifications/actions/RemoveTargetModification.ts +46 -0
  214. package/src/modifications/actions/RemoveTriggerModification.ts +46 -0
  215. package/src/modifications/actions/UpdateTargetModification.ts +51 -0
  216. package/src/modifications/actions/UpdateTriggerModification.ts +49 -0
  217. package/src/modifications/actions/index.ts +3 -0
  218. package/src/modifications/columns/UpdateColumnDefinitionModification.ts +1 -2
  219. package/src/modifications/constraints/CreateUniqueConstraintModification.ts +31 -40
  220. package/src/modifications/constraints/RemoveUniqueConstraintModification.ts +60 -15
  221. package/src/modifications/constraints/utils.ts +36 -0
  222. package/src/modifications/entities/CreateEntityModification.ts +9 -8
  223. package/src/modifications/entities/CreateViewModification.ts +4 -3
  224. package/src/modifications/entities/RemoveEntityModification.ts +5 -5
  225. package/src/modifications/entities/ToggleEventLogModification.ts +4 -3
  226. package/src/modifications/entities/UpdateEntityNameModification.ts +10 -25
  227. package/src/modifications/entities/UpdateEntityOrderByModification.ts +68 -0
  228. package/src/modifications/entities/index.ts +1 -0
  229. package/src/modifications/fields/RemoveFieldModification.ts +1 -1
  230. package/src/modifications/fields/UpdateFieldNameModification.ts +33 -39
  231. package/src/modifications/indexes/CreateIndexModification.ts +35 -41
  232. package/src/modifications/indexes/RemoveIndexModification.ts +57 -17
  233. package/src/modifications/indexes/utils.ts +30 -0
  234. package/src/modifications/relations/ConvertOneHasManyToManyHasManyRelationModification.ts +7 -19
  235. package/src/modifications/relations/ConvertOneToManyRelationModification.ts +21 -22
  236. package/src/modifications/relations/CreateRelationModification.ts +21 -49
  237. package/src/modifications/relations/ToggleJunctionEventLogModification.ts +4 -5
  238. package/src/modifications/relations/UpdateRelationOnDeleteModification.ts +30 -3
  239. package/src/modifications/relations/helpers.ts +39 -0
  240. package/src/modifications/upgrade/RemoveIndexNamesModification.ts +46 -0
  241. package/src/modifications/utils/createJunctionTable.ts +8 -8
  242. package/src/modifications/utils/schemaUpdateUtils.ts +5 -17
  243. package/src/modifications/utils/stringArrayEquals.ts +4 -0
  244. package/src/tsconfig.json +4 -12
  245. package/src/utils/PartialEntity.ts +7 -1
  246. package/tests/cases/integration/convertOneHasManyToManyHasManyRelation.test.ts +1 -1
  247. package/tests/cases/integration/convertOneToManyRelation.test.ts +5 -5
  248. package/tests/cases/integration/createAndDropIndex.test.ts +4 -4
  249. package/tests/cases/integration/createEntity.test.ts +6 -9
  250. package/tests/cases/integration/createManyHasMany.test.ts +3 -3
  251. package/tests/cases/integration/createManyHasOne.test.ts +4 -4
  252. package/tests/cases/integration/createOneHasMany.test.ts +6 -9
  253. package/tests/cases/integration/createOneHasOne.test.ts +6 -6
  254. package/tests/cases/integration/createRelationInverseSide.test.ts +1 -1
  255. package/tests/cases/integration/createView.test.ts +6 -6
  256. package/tests/cases/integration/removeField.test.ts +6 -6
  257. package/tests/cases/integration/updateColumnDefinition.test.ts +4 -4
  258. package/tests/cases/integration/updateEntityName.test.ts +7 -5
  259. package/tests/cases/integration/updateEntityOrderBy.test.ts +43 -0
  260. package/tests/cases/integration/updateFieldName.test.ts +9 -7
  261. package/tests/cases/integration/updateRelationOnDelete.test.ts +2 -1
  262. package/tests/cases/integration/updateView.test.ts +18 -18
  263. package/tests/scripts/checkCreateConsistentMigrations.ts +1 -1
  264. package/tests/src/tests.ts +18 -15
  265. package/tests/tsconfig.json +2 -6
  266. package/dist/src/MigrationVersionHelper.d.ts +0 -9
  267. package/dist/src/MigrationVersionHelper.d.ts.map +0 -1
  268. package/dist/src/MigrationVersionHelper.js +0 -45
  269. package/dist/src/MigrationVersionHelper.js.map +0 -1
  270. package/dist/src/modifications/utils/renameConstraintsHelper.d.ts +0 -8
  271. package/dist/src/modifications/utils/renameConstraintsHelper.d.ts.map +0 -1
  272. package/dist/src/modifications/utils/renameConstraintsHelper.js +0 -31
  273. package/dist/src/modifications/utils/renameConstraintsHelper.js.map +0 -1
  274. package/dist/src/modifications/utils/schemaMeta.d.ts +0 -8
  275. package/dist/src/modifications/utils/schemaMeta.d.ts.map +0 -1
  276. package/dist/src/modifications/utils/schemaMeta.js +0 -13
  277. package/dist/src/modifications/utils/schemaMeta.js.map +0 -1
  278. package/dist/tests/cases/integration/takenIndexName.test.d.ts +0 -2
  279. package/dist/tests/cases/integration/takenIndexName.test.d.ts.map +0 -1
  280. package/dist/tests/cases/integration/takenIndexName.test.js +0 -307
  281. package/dist/tests/cases/integration/takenIndexName.test.js.map +0 -1
  282. package/src/MigrationVersionHelper.ts +0 -46
  283. package/src/modifications/utils/renameConstraintsHelper.ts +0 -34
  284. package/src/modifications/utils/schemaMeta.ts +0 -18
  285. package/tests/cases/integration/takenIndexName.test.ts +0 -314
@@ -1,314 +0,0 @@
1
- import { test } from 'vitest'
2
- import { testGenerateSql } from '../../src/tests'
3
- import {
4
- createEntityModification,
5
- createRelationModification,
6
- removeFieldModification,
7
- updateEntityNameModification,
8
- } from '../../../src'
9
- import { emptyModelSchema } from '@contember/schema-utils'
10
- import { Model } from '@contember/schema'
11
- import { SQL } from '../../src/tags'
12
-
13
- test('taken fk index name', () => {
14
- testGenerateSql(emptyModelSchema, [
15
- createEntityModification.createModification({
16
- entity: {
17
- fields: {
18
- id: {
19
- columnName: 'id',
20
- name: 'id',
21
- nullable: false,
22
- type: Model.ColumnType.Uuid,
23
- columnType: 'uuid',
24
- },
25
- },
26
- name: 'Post',
27
- primary: 'id',
28
- primaryColumn: 'id',
29
- tableName: 'post',
30
- unique: {},
31
- eventLog: {
32
- enabled: true,
33
- },
34
- indexes: {},
35
- },
36
- }),
37
- createEntityModification.createModification({
38
- entity: {
39
- fields: {
40
- id: {
41
- columnName: 'id',
42
- name: 'id',
43
- nullable: false,
44
- type: Model.ColumnType.Uuid,
45
- columnType: 'uuid',
46
- },
47
- },
48
- name: 'Author',
49
- primary: 'id',
50
- primaryColumn: 'id',
51
- tableName: 'author',
52
- unique: {},
53
- eventLog: {
54
- enabled: true,
55
- },
56
- indexes: {},
57
- },
58
- }),
59
- createRelationModification.createModification({
60
- entityName: 'Post',
61
- owningSide: {
62
- name: 'author',
63
- type: Model.RelationType.ManyHasOne,
64
- target: 'Author',
65
- joiningColumn: {
66
- columnName: 'author_id',
67
- onDelete: Model.OnDelete.cascade,
68
- },
69
- nullable: true,
70
- },
71
-
72
- }),
73
- updateEntityNameModification.createModification({
74
- entityName: 'Post',
75
- newEntityName: 'Article',
76
- tableName: 'article',
77
- }),
78
- createEntityModification.createModification({
79
- entity: {
80
- fields: {
81
- id: {
82
- columnName: 'id',
83
- name: 'id',
84
- nullable: false,
85
- type: Model.ColumnType.Uuid,
86
- columnType: 'uuid',
87
- },
88
- },
89
- name: 'Post',
90
- primary: 'id',
91
- primaryColumn: 'id',
92
- tableName: 'post',
93
- unique: {},
94
- eventLog: {
95
- enabled: true,
96
- },
97
- indexes: {},
98
- },
99
- }),
100
- createRelationModification.createModification({
101
- entityName: 'Post',
102
- owningSide: {
103
- name: 'author',
104
- type: Model.RelationType.ManyHasOne,
105
- target: 'Author',
106
- joiningColumn: {
107
- columnName: 'author_id',
108
- onDelete: Model.OnDelete.cascade,
109
- },
110
- nullable: true,
111
- },
112
-
113
- }),
114
- ], SQL`CREATE TABLE "post" (
115
- "id" uuid PRIMARY KEY NOT NULL
116
- );
117
- CREATE TRIGGER "log_event"
118
- AFTER INSERT OR UPDATE OR DELETE ON "post"
119
- FOR EACH ROW
120
- EXECUTE PROCEDURE "system"."trigger_event"($pga$id$pga$);
121
- CREATE CONSTRAINT TRIGGER "log_event_trx"
122
- AFTER INSERT OR UPDATE OR DELETE ON "post"
123
- DEFERRABLE INITIALLY DEFERRED
124
- FOR EACH ROW
125
- EXECUTE PROCEDURE "system"."trigger_event_commit"();
126
- CREATE TABLE "author" (
127
- "id" uuid PRIMARY KEY NOT NULL
128
- );
129
- CREATE TRIGGER "log_event"
130
- AFTER INSERT OR UPDATE OR DELETE ON "author"
131
- FOR EACH ROW
132
- EXECUTE PROCEDURE "system"."trigger_event"($pga$id$pga$);
133
- CREATE CONSTRAINT TRIGGER "log_event_trx"
134
- AFTER INSERT OR UPDATE OR DELETE ON "author"
135
- DEFERRABLE INITIALLY DEFERRED
136
- FOR EACH ROW
137
- EXECUTE PROCEDURE "system"."trigger_event_commit"();
138
- ALTER TABLE "post"
139
- ADD "author_id" uuid;
140
- ALTER TABLE "post"
141
- ADD CONSTRAINT "fk_post_author_id_87ef9a" FOREIGN KEY ("author_id") REFERENCES "author"("id") ON DELETE NO ACTION DEFERRABLE INITIALLY IMMEDIATE;
142
- CREATE INDEX "post_author_id_index" ON "post" ("author_id");
143
- ALTER TABLE "post" RENAME TO "article";
144
- CREATE TABLE "post" (
145
- "id" uuid PRIMARY KEY NOT NULL
146
- );
147
- CREATE TRIGGER "log_event"
148
- AFTER INSERT OR UPDATE OR DELETE ON "post"
149
- FOR EACH ROW
150
- EXECUTE PROCEDURE "system"."trigger_event"($pga$id$pga$);
151
- CREATE CONSTRAINT TRIGGER "log_event_trx"
152
- AFTER INSERT OR UPDATE OR DELETE ON "post"
153
- DEFERRABLE INITIALLY DEFERRED
154
- FOR EACH ROW
155
- EXECUTE PROCEDURE "system"."trigger_event_commit"();
156
- ALTER TABLE "post"
157
- ADD "author_id" uuid;
158
- ALTER TABLE "post"
159
- ADD CONSTRAINT "fk_post_author_id_87ef9a" FOREIGN KEY ("author_id") REFERENCES "author"("id") ON DELETE NO ACTION DEFERRABLE INITIALLY IMMEDIATE;
160
- CREATE INDEX "post_author_id_index1" ON "post" ("author_id");`)
161
- })
162
-
163
-
164
- test('taken junction table index name', () => {
165
- testGenerateSql(emptyModelSchema, [
166
- createEntityModification.createModification({
167
- entity: {
168
- fields: {
169
- id: {
170
- columnName: 'id',
171
- name: 'id',
172
- nullable: false,
173
- type: Model.ColumnType.Uuid,
174
- columnType: 'uuid',
175
- },
176
- },
177
- name: 'Post',
178
- primary: 'id',
179
- primaryColumn: 'id',
180
- tableName: 'post',
181
- unique: {},
182
- eventLog: {
183
- enabled: true,
184
- },
185
- indexes: {},
186
- },
187
- }),
188
- createEntityModification.createModification({
189
- entity: {
190
- fields: {
191
- id: {
192
- columnName: 'id',
193
- name: 'id',
194
- nullable: false,
195
- type: Model.ColumnType.Uuid,
196
- columnType: 'uuid',
197
- },
198
- },
199
- name: 'Author',
200
- primary: 'id',
201
- primaryColumn: 'id',
202
- tableName: 'author',
203
- unique: {},
204
- eventLog: {
205
- enabled: true,
206
- },
207
- indexes: {},
208
- },
209
- }),
210
- createRelationModification.createModification({
211
- entityName: 'Post',
212
- owningSide: {
213
- name: 'authors',
214
- type: Model.RelationType.ManyHasMany,
215
- target: 'Author',
216
- joiningTable: {
217
- tableName: 'post_authors',
218
- joiningColumn: {
219
- columnName: 'post_id',
220
- onDelete: Model.OnDelete.cascade,
221
- },
222
- inverseJoiningColumn: {
223
- columnName: 'author_id',
224
- onDelete: Model.OnDelete.cascade,
225
- },
226
- eventLog: {
227
- enabled: true,
228
- },
229
- },
230
- },
231
- }),
232
- removeFieldModification.createModification({
233
- entityName: 'Post',
234
- fieldName: 'authors',
235
- }),
236
- createRelationModification.createModification({
237
- entityName: 'Post',
238
- owningSide: {
239
- name: 'authors',
240
- type: Model.RelationType.ManyHasMany,
241
- target: 'Author',
242
- joiningTable: {
243
- tableName: 'post_authors',
244
- joiningColumn: {
245
- columnName: 'post_id',
246
- onDelete: Model.OnDelete.cascade,
247
- },
248
- inverseJoiningColumn: {
249
- columnName: 'author_id',
250
- onDelete: Model.OnDelete.cascade,
251
- },
252
- eventLog: {
253
- enabled: true,
254
- },
255
- },
256
- },
257
- }),
258
- ], SQL`CREATE TABLE "post" (
259
- "id" uuid PRIMARY KEY NOT NULL
260
- );
261
- CREATE TRIGGER "log_event"
262
- AFTER INSERT OR UPDATE OR DELETE ON "post"
263
- FOR EACH ROW
264
- EXECUTE PROCEDURE "system"."trigger_event"($pga$id$pga$);
265
- CREATE CONSTRAINT TRIGGER "log_event_trx"
266
- AFTER INSERT OR UPDATE OR DELETE ON "post"
267
- DEFERRABLE INITIALLY DEFERRED
268
- FOR EACH ROW
269
- EXECUTE PROCEDURE "system"."trigger_event_commit"();
270
- CREATE TABLE "author" (
271
- "id" uuid PRIMARY KEY NOT NULL
272
- );
273
- CREATE TRIGGER "log_event"
274
- AFTER INSERT OR UPDATE OR DELETE ON "author"
275
- FOR EACH ROW
276
- EXECUTE PROCEDURE "system"."trigger_event"($pga$id$pga$);
277
- CREATE CONSTRAINT TRIGGER "log_event_trx"
278
- AFTER INSERT OR UPDATE OR DELETE ON "author"
279
- DEFERRABLE INITIALLY DEFERRED
280
- FOR EACH ROW
281
- EXECUTE PROCEDURE "system"."trigger_event_commit"();
282
- CREATE TABLE "post_authors" (
283
- "post_id" uuid NOT NULL REFERENCES "post"("id") ON DELETE CASCADE,
284
- "author_id" uuid NOT NULL REFERENCES "author"("id") ON DELETE CASCADE
285
- );
286
- ALTER TABLE "post_authors"
287
- ADD CONSTRAINT "post_authors_pkey" PRIMARY KEY ("post_id", "author_id");
288
- CREATE TRIGGER "log_event"
289
- AFTER INSERT OR UPDATE OR DELETE ON "post_authors"
290
- FOR EACH ROW
291
- EXECUTE PROCEDURE "system"."trigger_event"($pga$post_id$pga$, $pga$author_id$pga$);
292
- CREATE CONSTRAINT TRIGGER "log_event_trx"
293
- AFTER INSERT OR UPDATE OR DELETE ON "post_authors"
294
- DEFERRABLE INITIALLY DEFERRED
295
- FOR EACH ROW
296
- EXECUTE PROCEDURE "system"."trigger_event_commit"();
297
- DROP TABLE "post_authors";
298
- CREATE TABLE "post_authors" (
299
- "post_id" uuid NOT NULL REFERENCES "post"("id") ON DELETE CASCADE,
300
- "author_id" uuid NOT NULL REFERENCES "author"("id") ON DELETE CASCADE
301
- );
302
- ALTER TABLE "post_authors"
303
- ADD CONSTRAINT "post_authors_pkey1" PRIMARY KEY ("post_id", "author_id");
304
- CREATE TRIGGER "log_event"
305
- AFTER INSERT OR UPDATE OR DELETE ON "post_authors"
306
- FOR EACH ROW
307
- EXECUTE PROCEDURE "system"."trigger_event"($pga$post_id$pga$, $pga$author_id$pga$);
308
- CREATE CONSTRAINT TRIGGER "log_event_trx"
309
- AFTER INSERT OR UPDATE OR DELETE ON "post_authors"
310
- DEFERRABLE INITIALLY DEFERRED
311
- FOR EACH ROW
312
- EXECUTE PROCEDURE "system"."trigger_event_commit"();
313
- `)
314
- })