1
+ const _ = require ( 'lodash' ) ;
1
2
const {
2
3
getAddContainerScriptDto,
3
4
getDeleteContainerScriptDto,
@@ -39,29 +40,30 @@ const {
39
40
40
41
/**
41
42
* @param dto {{
42
- * collection: Object,
43
- * app: App,
43
+ * collection: Object
44
44
* }}
45
45
* @return {AlterScriptDto[] }
46
46
* */
47
- const getAlterContainersScriptDtos = ( { collection, app } ) => {
47
+ const getAlterContainersScriptDtos = ( { collection } ) => {
48
48
const addedContainers = collection . properties ?. containers ?. properties ?. added ?. items ;
49
49
const deletedContainers = collection . properties ?. containers ?. properties ?. deleted ?. items ;
50
50
const modifiedContainers = collection . properties ?. containers ?. properties ?. modified ?. items ;
51
51
52
52
const addContainersScriptDtos = [ ]
53
53
. concat ( addedContainers )
54
54
. filter ( Boolean )
55
- . map ( container => getAddContainerScriptDto ( app ) ( Object . keys ( container . properties ) [ 0 ] ) ) ;
55
+ . map ( container => getAddContainerScriptDto ( Object . keys ( container . properties ) [ 0 ] ) ) ;
56
+
56
57
const deleteContainersScriptDtos = [ ]
57
58
. concat ( deletedContainers )
58
59
. filter ( Boolean )
59
- . map ( container => getDeleteContainerScriptDto ( app ) ( Object . keys ( container . properties ) [ 0 ] ) ) ;
60
+ . map ( container => getDeleteContainerScriptDto ( Object . keys ( container . properties ) [ 0 ] ) ) ;
61
+
60
62
const modifyContainersScriptDtos = [ ]
61
63
. concat ( modifiedContainers )
62
64
. filter ( Boolean )
63
65
. map ( containerWrapper => Object . values ( containerWrapper . properties ) [ 0 ] )
64
- . flatMap ( container => getModifyContainerScriptDtos ( app ) ( container ) ) ;
66
+ . flatMap ( container => getModifyContainerScriptDtos ( container ) ) ;
65
67
66
68
return [ ...addContainersScriptDtos , ...deleteContainersScriptDtos , ...modifyContainersScriptDtos ] . filter ( Boolean ) ;
67
69
} ;
@@ -103,18 +105,23 @@ const getAlterCollectionsScriptDtos = ({
103
105
const createCollectionsScriptDtos = createScriptsData
104
106
. filter ( collection => collection . compMod ?. created )
105
107
. map ( getAddCollectionScriptDto ( { app, dbVersion, modelDefinitions, internalDefinitions, externalDefinitions } ) ) ;
108
+
106
109
const deleteCollectionScriptDtos = deleteScriptsData
107
110
. filter ( collection => collection . compMod ?. deleted )
108
111
. map ( getDeleteCollectionScriptDto ( app ) ) ;
109
- const modifyCollectionScriptDtos = modifyScriptsData . flatMap ( getModifyCollectionScriptDtos ( { app, dbVersion } ) ) ;
112
+
113
+ const modifyCollectionScriptDtos = modifyScriptsData . flatMap ( getModifyCollectionScriptDtos ( { dbVersion } ) ) ;
114
+
110
115
const addColumnScriptDtos = createScriptsData
111
116
. filter ( item => ! item ?. compMod ?. created )
112
117
. flatMap (
113
118
getAddColumnScriptDtos ( { app, dbVersion, modelDefinitions, internalDefinitions, externalDefinitions } ) ,
114
119
) ;
120
+
115
121
const deleteColumnScriptDtos = deleteScriptsData
116
122
. filter ( item => ! item ?. compMod ?. deleted )
117
123
. flatMap ( getDeleteColumnScriptDtos ( app ) ) ;
124
+
118
125
const modifyColumnScriptDtos = modifyScriptsData . flatMap (
119
126
getModifyColumnScriptDtos ( { app, dbVersion, modelDefinitions, internalDefinitions, externalDefinitions } ) ,
120
127
) ;
@@ -155,7 +162,7 @@ const getAlterViewScriptDtos = (collection, app) => {
155
162
. filter ( Boolean )
156
163
. map ( viewWrapper => Object . values ( viewWrapper . properties ) [ 0 ] )
157
164
. map ( view => ( { ...view , ...( view . role || { } ) } ) )
158
- . flatMap ( view => getModifyViewScriptDtos ( app ) ( view ) ) ;
165
+ . flatMap ( view => getModifyViewScriptDtos ( view ) ) ;
159
166
160
167
return [ ...deleteViewsScriptDtos , ...createViewsScriptDtos , ...modifyViewsScriptDtos ] . filter ( Boolean ) ;
161
168
} ;
@@ -183,22 +190,24 @@ const getAlterModelDefinitionsScriptDtos = ({
183
190
. concat ( collection . properties ?. modelDefinitions ?. properties ?. added ?. items )
184
191
. filter ( Boolean )
185
192
. map ( item => Object . values ( item . properties ) [ 0 ] )
186
- . map ( item => ( { ...item , ...( app . require ( 'lodash' ) . omit ( item . role , 'properties' ) || { } ) } ) )
193
+ . map ( item => ( { ...item , ...( _ . omit ( item . role , 'properties' ) || { } ) } ) )
187
194
. filter ( item => item . compMod ?. created )
188
195
. map ( getCreateUdtScriptDto ( { app, dbVersion, modelDefinitions, internalDefinitions, externalDefinitions } ) ) ;
196
+
189
197
const deleteUdtScriptDtos = [ ]
190
198
. concat ( collection . properties ?. modelDefinitions ?. properties ?. deleted ?. items )
191
199
. filter ( Boolean )
192
200
. map ( item => Object . values ( item . properties ) [ 0 ] )
193
- . map ( item => ( { ...item , ...( app . require ( 'lodash' ) . omit ( item . role , 'properties' ) || { } ) } ) )
201
+ . map ( item => ( { ...item , ...( _ . omit ( item . role , 'properties' ) || { } ) } ) )
194
202
. filter ( collection => collection . compMod ?. deleted )
195
203
. map ( getDeleteUdtScriptDto ( app ) ) ;
204
+
196
205
const addColumnScriptDtos = [ ]
197
206
. concat ( collection . properties ?. modelDefinitions ?. properties ?. added ?. items )
198
207
. filter ( Boolean )
199
208
. map ( item => Object . values ( item . properties ) [ 0 ] )
200
209
. filter ( item => ! item . compMod )
201
- . map ( item => ( { ...item , ...( app . require ( 'lodash' ) . omit ( item . role , 'properties' ) || { } ) } ) )
210
+ . map ( item => ( { ...item , ...( _ . omit ( item . role , 'properties' ) || { } ) } ) )
202
211
. filter ( item => item . childType === 'composite' )
203
212
. flatMap (
204
213
getAddColumnToTypeScriptDtos ( {
@@ -209,12 +218,13 @@ const getAlterModelDefinitionsScriptDtos = ({
209
218
externalDefinitions,
210
219
} ) ,
211
220
) ;
221
+
212
222
const deleteColumnScriptDtos = [ ]
213
223
. concat ( collection . properties ?. modelDefinitions ?. properties ?. deleted ?. items )
214
224
. filter ( Boolean )
215
225
. map ( item => Object . values ( item . properties ) [ 0 ] )
216
226
. filter ( item => ! item . compMod )
217
- . map ( item => ( { ...item , ...( app . require ( 'lodash' ) . omit ( item . role , 'properties' ) || { } ) } ) )
227
+ . map ( item => ( { ...item , ...( _ . omit ( item . role , 'properties' ) || { } ) } ) )
218
228
. filter ( item => item . childType === 'composite' )
219
229
. flatMap ( getDeleteColumnFromTypeScriptDtos ( app ) ) ;
220
230
@@ -223,7 +233,7 @@ const getAlterModelDefinitionsScriptDtos = ({
223
233
. filter ( Boolean )
224
234
. map ( item => Object . values ( item . properties ) [ 0 ] )
225
235
. filter ( item => ! item . compMod )
226
- . map ( item => ( { ...item , ...( app . require ( 'lodash' ) . omit ( item . role , 'properties' ) || { } ) } ) )
236
+ . map ( item => ( { ...item , ...( _ . omit ( item . role , 'properties' ) || { } ) } ) )
227
237
. filter ( item => item . childType === 'composite' )
228
238
. flatMap ( getModifyColumnOfTypeScriptDtos ( app ) ) ;
229
239
@@ -240,28 +250,29 @@ const getAlterModelDefinitionsScriptDtos = ({
240
250
* @return Array<AlterScriptDto>
241
251
* */
242
252
const getAlterRelationshipsScriptDtos = ( { collection, app } ) => {
243
- const _ = app . require ( 'lodash' ) ;
244
253
const ddlProvider = require ( '../ddlProvider/ddlProvider' ) ( null , null , app ) ;
245
254
246
255
const addedRelationships = [ ]
247
256
. concat ( collection . properties ?. relationships ?. properties ?. added ?. items )
248
257
. filter ( Boolean )
249
258
. map ( item => Object . values ( item . properties ) [ 0 ] )
250
259
. filter ( relationship => relationship ?. role ?. compMod ?. created ) ;
260
+
251
261
const deletedRelationships = [ ]
252
262
. concat ( collection . properties ?. relationships ?. properties ?. deleted ?. items )
253
263
. filter ( Boolean )
254
264
. map ( item => Object . values ( item . properties ) [ 0 ] )
255
265
. filter ( relationship => relationship ?. role ?. compMod ?. deleted ) ;
266
+
256
267
const modifiedRelationships = [ ]
257
268
. concat ( collection . properties ?. relationships ?. properties ?. modified ?. items )
258
269
. filter ( Boolean )
259
270
. map ( item => Object . values ( item . properties ) [ 0 ] )
260
271
. filter ( relationship => relationship ?. role ?. compMod ?. modified ) ;
261
272
262
- const deleteFkScriptDtos = getDeleteForeignKeyScriptDtos ( ddlProvider , _ ) ( deletedRelationships ) ;
263
- const addFkScriptDtos = getAddForeignKeyScriptDtos ( ddlProvider , _ ) ( addedRelationships ) ;
264
- const modifiedFkScriptDtos = getModifyForeignKeyScriptDtos ( ddlProvider , _ ) ( modifiedRelationships ) ;
273
+ const deleteFkScriptDtos = getDeleteForeignKeyScriptDtos ( ddlProvider ) ( deletedRelationships ) ;
274
+ const addFkScriptDtos = getAddForeignKeyScriptDtos ( ddlProvider ) ( addedRelationships ) ;
275
+ const modifiedFkScriptDtos = getModifyForeignKeyScriptDtos ( ddlProvider ) ( modifiedRelationships ) ;
265
276
266
277
return [ ...deleteFkScriptDtos , ...addFkScriptDtos , ...modifiedFkScriptDtos ] . filter ( Boolean ) ;
267
278
} ;
@@ -308,17 +319,19 @@ const getAlterContainersSequencesScriptDtos = ({ collection, app }) => {
308
319
. concat ( addedContainers )
309
320
. filter ( Boolean )
310
321
. map ( container => Object . values ( container . properties ) [ 0 ] )
311
- . flatMap ( container => getAddContainerSequencesScriptDtos ( { app } ) ( { container } ) ) ;
322
+ . flatMap ( container => getAddContainerSequencesScriptDtos ( { container } ) ) ;
323
+
312
324
const deleteContainersScriptDtos = [ ]
313
325
. concat ( deletedContainers )
314
326
. filter ( Boolean )
315
327
. map ( container => Object . values ( container . properties ) [ 0 ] )
316
- . flatMap ( container => getDeleteContainerSequencesScriptDtos ( { app } ) ( { container } ) ) ;
328
+ . flatMap ( container => getDeleteContainerSequencesScriptDtos ( { container } ) ) ;
329
+
317
330
const modifyContainersScriptDtos = [ ]
318
331
. concat ( modifiedContainers )
319
332
. filter ( Boolean )
320
333
. map ( container => Object . values ( container . properties ) [ 0 ] )
321
- . flatMap ( container => getModifyContainerSequencesScriptDtos ( { app } ) ( { container } ) ) ;
334
+ . flatMap ( container => getModifyContainerSequencesScriptDtos ( { container } ) ) ;
322
335
323
336
return [ ...addContainersSequencesScriptDtos , ...deleteContainersScriptDtos , ...modifyContainersScriptDtos ] . filter (
324
337
Boolean ,
@@ -342,7 +355,7 @@ const getAlterScriptDtos = (data, app) => {
342
355
const internalDefinitions = JSON . parse ( data . internalDefinitions ) ;
343
356
const externalDefinitions = JSON . parse ( data . externalDefinitions ) ;
344
357
const dbVersion = data . modelData [ 0 ] ?. dbVersion ;
345
- const containersScriptDtos = getAlterContainersScriptDtos ( { collection, app } ) ;
358
+ const containersScriptDtos = getAlterContainersScriptDtos ( { collection } ) ;
346
359
const collectionsScriptDtos = getAlterCollectionsScriptDtos ( {
347
360
collection,
348
361
app,
0 commit comments