@memberjunction/codegen-lib 0.9.62 → 0.9.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/angular_client_codegen.js +6 -3
- package/dist/angular_client_codegen.js.map +1 -1
- package/dist/entity_subclasses_codegen.js +19 -21
- package/dist/entity_subclasses_codegen.js.map +1 -1
- package/dist/graphql_server_codegen.js +84 -121
- package/dist/graphql_server_codegen.js.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/manageMetadata.js +33 -30
- package/dist/manageMetadata.js.map +1 -1
- package/dist/runCodeGen.js +17 -38
- package/dist/runCodeGen.js.map +1 -1
- package/dist/sql_codegen.js +44 -25
- package/dist/sql_codegen.js.map +1 -1
- package/package.json +4 -4
package/dist/manageMetadata.js
CHANGED
|
@@ -249,6 +249,18 @@ SELECT
|
|
|
249
249
|
re.ID RelatedEntityID,
|
|
250
250
|
fk.referenced_column RelatedEntityFieldName,
|
|
251
251
|
IIF(sf.FieldName = 'Name', 1, 0) IsNameField,
|
|
252
|
+
IsPrimaryKey = CASE
|
|
253
|
+
WHEN pk.ColumnName IS NOT NULL THEN 1
|
|
254
|
+
ELSE 0
|
|
255
|
+
END,
|
|
256
|
+
IsUnique = CASE
|
|
257
|
+
WHEN pk.ColumnName IS NOT NULL THEN 1
|
|
258
|
+
ELSE
|
|
259
|
+
CASE
|
|
260
|
+
WHEN uk.ColumnName IS NOT NULL THEN 1
|
|
261
|
+
ELSE 0
|
|
262
|
+
END
|
|
263
|
+
END,
|
|
252
264
|
ROW_NUMBER() OVER (PARTITION BY sf.EntityID, sf.FieldName ORDER BY (SELECT NULL)) AS rn
|
|
253
265
|
FROM
|
|
254
266
|
[${(0, config_1.mj_core_schema)()}].vwSQLColumnsAndEntityFields sf
|
|
@@ -267,6 +279,18 @@ LEFT OUTER JOIN
|
|
|
267
279
|
ON
|
|
268
280
|
re.BaseTable = fk.referenced_table AND
|
|
269
281
|
re.SchemaName = fk.[schema_name]
|
|
282
|
+
LEFT OUTER JOIN
|
|
283
|
+
[${(0, config_1.mj_core_schema)()}].vwTablePrimaryKeys pk
|
|
284
|
+
ON
|
|
285
|
+
e.BaseTable = pk.TableName AND
|
|
286
|
+
sf.FieldName = pk.ColumnName AND
|
|
287
|
+
e.SchemaName = pk.SchemaName
|
|
288
|
+
LEFT OUTER JOIN
|
|
289
|
+
[${(0, config_1.mj_core_schema)()}].vwTableUniqueKeys uk
|
|
290
|
+
ON
|
|
291
|
+
e.BaseTable = uk.TableName AND
|
|
292
|
+
sf.FieldName = uk.ColumnName AND
|
|
293
|
+
e.SchemaName = uk.SchemaName
|
|
270
294
|
WHERE
|
|
271
295
|
EntityFieldID IS NULL -- only where we have NOT YET CREATED EntityField records\n${createExcludeTablesAndSchemasFilter('sf.')}
|
|
272
296
|
)
|
|
@@ -303,7 +327,9 @@ function getPendingEntityFieldINSERTSQL(n) {
|
|
|
303
327
|
IsNameField,
|
|
304
328
|
IncludeInUserSearchAPI,
|
|
305
329
|
IncludeRelatedEntityNameFieldInBaseView,
|
|
306
|
-
DefaultInView
|
|
330
|
+
DefaultInView,
|
|
331
|
+
IsPrimaryKey,
|
|
332
|
+
IsUnique
|
|
307
333
|
)
|
|
308
334
|
VALUES
|
|
309
335
|
(
|
|
@@ -325,7 +351,9 @@ function getPendingEntityFieldINSERTSQL(n) {
|
|
|
325
351
|
${n.IsNameField !== null ? n.IsNameField : 0},
|
|
326
352
|
${n.FieldName === 'ID' || n.IsNameField ? 1 : 0},
|
|
327
353
|
${n.RelatedEntityID && n.RelatedEntityID > 0 && n.Type.trim().toLowerCase() === 'int' ? 1 : 0},
|
|
328
|
-
${bDefaultInView ? 1 : 0}
|
|
354
|
+
${bDefaultInView ? 1 : 0},
|
|
355
|
+
${n.IsPrimaryKey},
|
|
356
|
+
${n.IsUnique}
|
|
329
357
|
)`;
|
|
330
358
|
}
|
|
331
359
|
function parseDefaultValue(sqlDefaultValue) {
|
|
@@ -451,38 +479,13 @@ async function createNewEntities(ds) {
|
|
|
451
479
|
async function shouldCreateNewEntity(ds, newEntity) {
|
|
452
480
|
// validate that the new entity meets our criteria for creation
|
|
453
481
|
// criteria:
|
|
454
|
-
// 1) entity has a field
|
|
455
|
-
// 2) the ID column is an integer, smallint, or bigint
|
|
456
|
-
// 3) the ID column is NOT nullable
|
|
457
|
-
// 4) the ID column is an identity column (e.g. it is auto-incrementing)
|
|
482
|
+
// 1) entity has a field that is a primary key
|
|
458
483
|
// validate all of these factors by getting the sql from SQL Server and check the result, if failure, shouldCreate=false and generate validation message, otherwise return empty validation message and true for shouldCreate.
|
|
459
|
-
const
|
|
460
|
-
const query = `
|
|
461
|
-
SELECT
|
|
462
|
-
COLUMNPROPERTY(object_id('${tableName}'), 'ID', 'IsIdentity') as is_identity,
|
|
463
|
-
c.is_nullable,
|
|
464
|
-
t.name as data_type
|
|
465
|
-
FROM
|
|
466
|
-
sys.columns c
|
|
467
|
-
JOIN
|
|
468
|
-
sys.types t ON c.user_type_id = t.user_type_id
|
|
469
|
-
WHERE
|
|
470
|
-
object_id = object_id('${tableName}') AND
|
|
471
|
-
c.name = 'ID'
|
|
472
|
-
`;
|
|
484
|
+
const query = `EXEC admin.spGetPrimaryKeyForTable @TableName='${newEntity.TableName}', @SchemaName='${newEntity.SchemaName}'`;
|
|
473
485
|
try {
|
|
474
486
|
const result = await ds.query(query);
|
|
475
487
|
if (result.length === 0) {
|
|
476
|
-
return { shouldCreate: false, validationMessage: "
|
|
477
|
-
}
|
|
478
|
-
const { is_identity, is_nullable, data_type } = result[0];
|
|
479
|
-
const isValidType = ['int', 'smallint', 'bigint'].includes(data_type);
|
|
480
|
-
if (!is_identity || is_nullable || !isValidType) {
|
|
481
|
-
let validationMessage = 'Validation failed for ID column: ';
|
|
482
|
-
validationMessage += !is_identity ? 'Not an identity column. ' : '';
|
|
483
|
-
validationMessage += is_nullable ? 'Column is nullable. ' : '';
|
|
484
|
-
validationMessage += !isValidType ? 'Invalid data type. ' : '';
|
|
485
|
-
return { shouldCreate: false, validationMessage };
|
|
488
|
+
return { shouldCreate: false, validationMessage: "No primary key found" };
|
|
486
489
|
}
|
|
487
490
|
return { shouldCreate: true, validationMessage: '' };
|
|
488
491
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manageMetadata.js","sourceRoot":"","sources":["../src/manageMetadata.ts"],"names":[],"mappings":";AAAA;;;;KAIK;;;AAGL,qCAAsD;AACtD,+CAAiF;AACjF,uCAAgD;AAChD,+BAAgE;AAEnD,QAAA,aAAa,GAAa,EAAE,CAAC;AAEnC,KAAK,UAAU,cAAc,CAAC,EAAc;IAChD,MAAM,EAAE,GAAG,IAAI,eAAQ,EAAE,CAAC;IAE1B,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,IAAI,CAAE,MAAM,iBAAiB,CAAC,EAAE,CAAC,EAAE;QAChC,IAAA,kBAAQ,EAAC,6BAA6B,CAAC,CAAC;QACxC,QAAQ,GAAG,KAAK,CAAC;KACnB;IACD,IAAI,CAAE,MAAM,IAAA,2BAAqB,EAAC,EAAE,CAAC,EAAE;QACpC,IAAA,kBAAQ,EAAC,8BAA8B,CAAC,CAAC;QACzC,wHAAwH;QACxH,mCAAmC;QACnC,oBAAoB;KACtB;IAED,IAAI,CAAE,MAAM,kBAAkB,CAAC,EAAE,CAAC,EAAE;QACjC,IAAA,kBAAQ,EAAC,8BAA8B,CAAC,CAAC;QACzC,QAAQ,GAAG,KAAK,CAAC;KACnB;IACD,IAAI,CAAE,MAAM,yBAAyB,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE;QAC5C,IAAA,kBAAQ,EAAC,qCAAqC,CAAC,CAAC;QAChD,QAAQ,GAAG,KAAK,CAAC;KACnB;IAED,2CAA2C;IAC3C,kDAAkD;IAClD,uBAAuB;IACvB,IAAI;IAEJ,8DAA8D;IAC9D,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IAEnB,OAAO,QAAQ,CAAC;AACnB,CAAC;AAjCD,wCAiCC;AAED,kDAAkD;AAClD,mDAAmD;AACnD,kFAAkF;AAClF,0BAA0B;AAC1B,4GAA4G;AAC5G,yHAAyH;AACzH,sJAAsJ;AACtJ,qEAAqE;AACrE,kDAAkD;AAClD,0DAA0D;AAC1D,mFAAmF;AACnF,4CAA4C;AAC5C,4DAA4D;AAC5D,oEAAoE;AACpE,gCAAgC;AAChC,aAAa;AACb,UAAU;AACV,OAAO;AACP,sBAAsB;AACtB,IAAI;AAEJ,wFAAwF;AACxF,WAAW;AACX,gIAAgI;AAChI,+EAA+E;AAC/E,6BAA6B;AAE7B,2FAA2F;AAC3F,8CAA8C;AAC9C,+CAA+C;AAC/C,4EAA4E;AAC5E,6EAA6E;AAC7E,sCAAsC;AACtC,qEAAqE;AACrE,yBAAyB;AACzB,qCAAqC;AACrC,+GAA+G;AAC/G,gDAAgD;AAChD,wCAAwC;AACxC,gBAAgB;AAChB,uHAAuH;AACvH,oGAAoG;AACpG,aAAa;AAEb,yCAAyC;AACzC,yEAAyE;AACzE,iHAAiH;AACjH,mCAAmC;AACnC,gBAAgB;AAChB,aAAa;AACb,UAAU;AAEV,0EAA0E;AAC1E,6GAA6G;AAC7G,mCAAmC;AAEnC,qBAAqB;AACrB,OAAO;AACP,iBAAiB;AACjB,qBAAqB;AACrB,sBAAsB;AACtB,OAAO;AAEP,IAAI;AAEJ,2GAA2G;AAC3G,sGAAsG;AACtG,yGAAyG;AAEzG,yCAAyC;AACzC,gCAAgC;AAChC,+DAA+D;AAC/D,mBAAmB;AACnB,6EAA6E;AAC7E,qBAAqB;AACrB,qHAAqH;AACrH,yFAAyF;AACzF,6DAA6D;AAC7D,6LAA6L;AAC7L,yCAAyC;AACzC,aAAa;AACb,UAAU;AACV,OAAO;AACP,kBAAkB;AAClB,IAAI;AAGG,KAAK,UAAU,yBAAyB,CAAC,EAAc,EAAE,EAAY;IACzE,IAAI,OAAO,GAAY,IAAI,CAAC;IAC5B,OAAO,GAAG,OAAO,IAAI,MAAM,mCAAmC,CAAC,EAAE,CAAC,CAAC;IACnE,OAAO,GAAG,OAAO,IAAI,MAAM,kCAAkC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACtE,OAAO,OAAO,CAAC;AAClB,CAAC;AALD,8DAKC;AAEM,KAAK,UAAU,kCAAkC,CAAC,EAAc,EAAE,EAAY;IAClF,kFAAkF;IAClF,kGAAkG;IAClG,qIAAqI;IACrI,sGAAsG;IACtG,iDAAiD;IACjD,0CAA0C;IAC1C,2CAA2C;IAC3C,4CAA4C;IAC5C,yBAAyB;IACzB,oBAAoB;IACpB,sBAAsB;IACtB,+CAA+C;IAE/C,IAAI;QACD,yHAAyH;QACzH,MAAM,IAAI,GAAG,iBAAiB,IAAA,uBAAc,GAAE,8FAA8F,CAAC;QAC7I,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1C,0CAA0C;QAC1C,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE;YAC3B,iFAAiF;YACjF,MAAM,gBAAgB,GAAG,iBAAiB,IAAA,uBAAc,GAAE,wCAAwC,CAAC,CAAC,eAAe,0BAA0B,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC1J,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACvD,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC9C,uCAAuC;gBACvC,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAA;gBACpD,MAAM,UAAU,GAAG,eAAe,IAAA,uBAAc,GAAE;8CAChB,CAAC,CAAC,eAAe,KAAK,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,IAAI,4BAA4B,CAAC,CAAC,IAAI,IAAI,CAAC;gBACrH,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;aAC7B;SACH;QACD,OAAO,IAAI,CAAC;KACd;IACD,OAAO,CAAC,EAAE;QACP,IAAA,kBAAQ,EAAC,CAAC,CAAC,CAAC;QACZ,OAAO,KAAK,CAAC;KACf;AACJ,CAAC;AArCD,gFAqCC;AAEM,KAAK,UAAU,mCAAmC,CAAC,EAAc;IACrE,OAAO,IAAI,CAAC,CAAC,0BAA0B;AAC1C,CAAC;AAFD,kFAEC;AAIM,KAAK,UAAU,kBAAkB,CAAC,EAAc;IACpD,IAAI,QAAQ,GAAG,IAAI,CAAC;IACpB,MAAM,SAAS,GAAS,IAAI,IAAI,EAAE,CAAC;IACnC,IAAI,CAAE,MAAM,0BAA0B,CAAC,EAAE,CAAC,EAAE;QACzC,IAAA,kBAAQ,EAAE,uCAAuC,CAAC,CAAC;QACnD,QAAQ,GAAG,KAAK,CAAC;KACnB;IACD,IAAA,mBAAS,EAAC,wCAAwC,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,UAAU,CAAC,CAAC;IAEjH,MAAM,cAAc,GAAS,IAAI,IAAI,EAAE,CAAC;IACxC,IAAI,CAAE,MAAM,oCAAoC,CAAC,EAAE,CAAC,EAAE;QACnD,IAAA,kBAAQ,EAAE,mDAAmD,CAAC,CAAA;QAC9D,QAAQ,GAAG,KAAK,CAAC;KACnB;IACD,IAAA,mBAAS,EAAC,oDAAoD,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,UAAU,CAAC,CAAC;IAElI,MAAM,cAAc,GAAS,IAAI,IAAI,EAAE,CAAC;IACxC,IAAI,CAAE,MAAM,+BAA+B,CAAC,EAAE,CAAC,EAAE;QAC9C,IAAA,kBAAQ,EAAE,8CAA8C,CAAC,CAAA;QACzD,QAAQ,GAAG,KAAK,CAAC;KACnB;IACD,IAAA,mBAAS,EAAC,+CAA+C,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,UAAU,CAAC,CAAC;IAE7H,MAAM,cAAc,GAAS,IAAI,IAAI,EAAE,CAAC;IACxC,IAAI,CAAE,MAAM,gCAAgC,CAAC,EAAE,CAAC,EAAE;QAC/C,IAAA,kBAAQ,EAAE,iDAAiD,CAAC,CAAA;QAC5D,QAAQ,GAAG,KAAK,CAAC;KACnB;IACD,IAAA,mBAAS,EAAC,+CAA+C,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,UAAU,CAAC,CAAC;IAE7H,MAAM,cAAc,GAAS,IAAI,IAAI,EAAE,CAAC;IACxC,IAAI,CAAE,MAAM,qCAAqC,CAAC,EAAE,CAAC,EAAE;QACpD,IAAA,kBAAQ,EAAC,qDAAqD,CAAC,CAAC;QAChE,QAAQ,GAAG,KAAK,CAAC;KACnB;IACD,IAAA,mBAAS,EAAC,sDAAsD,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,UAAU,CAAC,CAAC;IAEpI,IAAA,mBAAS,EAAC,0CAA0C,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,UAAU,CAAC,CAAC;IAEnH,OAAO,QAAQ,CAAC;AACnB,CAAC;AAxCD,gDAwCC;AAGD,KAAK,UAAU,qCAAqC,CAAC,EAAc;IAChE,IAAM;QACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,yBAAyB,IAAA,uBAAc,GAAE,+DAA+D,CAAC,CAAA;QACvI,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAC5B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBACzB,MAAM,YAAY,GAAG,kBAAkB,CAAC,4BAA4B,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;gBACpG,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE;oBACnG,MAAM,IAAI,GAAG,WAAW,IAAA,uBAAc,GAAE,yDAAyD,YAAY,gBAAgB,KAAK,CAAC,EAAE,EAAE,CAAA;oBACvI,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;iBACtB;aACH;QAEJ,OAAO,IAAI,CAAC;KACd;IACD,OAAO,CAAC,EAAE;QACP,IAAA,kBAAQ,EAAC,CAAC,CAAC,CAAC;QACZ,OAAO,KAAK,CAAC;KACf;AACJ,CAAC;AAED,KAAK,UAAU,gCAAgC,CAAC,EAAc;IAC3D,IAAM;QACH,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,IAAA,uBAAc,GAAE,qCAAqC,CAAC,CAAA;QAC7E,OAAO,IAAI,CAAC;KACd;IACD,OAAO,CAAC,EAAE;QACP,IAAA,kBAAQ,EAAC,CAAC,CAAC,CAAC;QACZ,OAAO,KAAK,CAAC;KACf;AACJ,CAAC;AACD,SAAS,+BAA+B;IACrC,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;MAmBV,IAAA,uBAAc,GAAE;;MAEhB,IAAA,uBAAc,GAAE;;;;MAIhB,IAAA,uBAAc,GAAE;;;;;;MAMhB,IAAA,uBAAc,GAAE;;;;;sFAKgE,mCAAmC,CAAC,KAAK,CAAC;;;;;;4BAMpG,CAAA;IACzB,OAAO,IAAI,CAAC;AACf,CAAC;AACD,SAAS,8BAA8B,CAAC,CAAM;IAC3C,MAAM,cAAc,GAAY,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,IAAI;QAC1C,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM;QAC5C,CAAC,CAAC,QAAQ,IAAI,mBAAU,CAAC,iBAAiB,EAAE,kCAAkC;QAC9E,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC/D,OAAO;kBACQ,IAAA,uBAAc,GAAE;;;;;;;;;;;;;;;;;;;;;;;;QAwB1B,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,QAAQ;SACT,CAAC,CAAC,SAAS;SACX,4BAA4B,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE;SAChD,CAAC,CAAC,IAAI;QACP,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACnB,iBAAiB,CAAC,CAAC,CAAC,YAAY,CAAC;QAClC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,sBAAsB,IAAI,CAAC,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,sBAAsB,GAAG,CAAC,CAAC,CAAC,MAAM;QAC1G,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,SAAS,KAAK,IAAI,IAAI,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3F,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACzB,CAAA;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,eAAuB;IAC/C,IAAI,OAAO,GAAW,IAAI,CAAC;IAE3B,IAAI,eAAe,KAAK,IAAI,IAAI,eAAe,KAAK,SAAS,EAAE;QAC5D,IAAI,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC;YACjE,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;;YAEnE,OAAO,GAAG,eAAe,CAAC;QAE7B,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClE,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEtD,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YACnD,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;KACxD;IAED,OAAO,OAAO,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,+BAA+B,CAAC,EAAc;IAC1D,IAAM;QACH,MAAM,IAAI,GAAG,+BAA+B,EAAE,CAAC;QAC/C,MAAM,eAAe,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;YAC7B,0DAA0D;YAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;gBAC9C,MAAM,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;gBAC7B,IAAI,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,EAAE;oBACpE,oKAAoK;oBACpK,qFAAqF;oBACrF,MAAM,UAAU,GAAG,8BAA8B,CAAC,CAAC,CAAC,CAAC;oBACrD,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;oBAC3B,0GAA0G;iBAC5G;aACH;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;KACd;IACD,OAAO,CAAC,EAAE;QACP,IAAA,kBAAQ,EAAC,CAAC,CAAC,CAAC;QACZ,OAAO,KAAK,CAAC;KACf;AACJ,CAAC;AAEM,KAAK,UAAU,0CAA0C,CAAC,EAAc,EAAE,aAAqB,EAAE,yBAAiC;IACtI,IAAM;QACH,MAAM,IAAI,GAAG,SAAS,IAAA,uBAAc,GAAE;uBACrB,aAAa;oCACA,yBAAyB,GAAG,CAAA;QAE1D,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACpB,OAAO,IAAI,CAAC;KACd;IACD,OAAO,CAAC,EAAE;QACP,IAAA,kBAAQ,EAAC,CAAC,CAAC,CAAC;QACZ,OAAO,KAAK,CAAC;KACf;AACJ,CAAC;AAbD,gGAaC;AACD,KAAK,UAAU,oCAAoC,CAAC,EAAc;IAC/D,IAAM;QACH,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,IAAA,uBAAc,GAAE,0CAA0C,CAAC,CAAA;QACnF,OAAO,IAAI,CAAC;KACd;IACD,OAAO,CAAC,EAAE;QACP,IAAA,kBAAQ,EAAC,CAAC,CAAC,CAAC;QACZ,OAAO,KAAK,CAAC;KACf;AACJ,CAAC;AACD,KAAK,UAAU,0BAA0B,CAAC,EAAc;IACrD,IAAM;QACH,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,IAAA,uBAAc,GAAE,gCAAgC,CAAC,CAAA;QACzE,OAAO,IAAI,CAAC;KACd;IACD,OAAO,CAAC,EAAE;QACP,IAAA,kBAAQ,EAAC,CAAC,CAAC,CAAC;QACZ,OAAO,KAAK,CAAC;KACf;AACJ,CAAC;AAED,SAAS,mCAAmC,CAAC,WAAmB;IAC7D,IAAI,cAAc,GAAW,EAAE,CAAC;IAChC,IAAI,eAAe,GAAW,EAAE,CAAC;IACjC,IAAI,mBAAU,CAAC,aAAa,EAAE;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAU,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;YACvD,MAAM,CAAC,GAAG,mBAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACtC,cAAc,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1C,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,WAAW,oBAAoB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;oBAClD,UAAU,WAAW,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YACvG,cAAc,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,WAAW,mBAAmB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;gBACpD,QAAQ,WAAW,gBAAgB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;SAClG;KACH;IACD,IAAI,mBAAU,CAAC,cAAc,EAAE;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAU,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;YACxD,MAAM,CAAC,GAAG,mBAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACvC,eAAe,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3C,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,kBAAkB,CAAC,GAAG,CAAC,CAAC;SAC/H;KACH;IAED,MAAM,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,MAAM,GAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,cAAc,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5H,OAAO,MAAM,CAAC;AACjB,CAAC;AACD,KAAK,UAAU,iBAAiB,CAAC,EAAc;IAC5C,IAAM;QACH,MAAM,IAAI,GAAG,kBAAkB,IAAA,uBAAc,GAAE,kDAAkD,GAAG,mCAAmC,CAAC,EAAE,CAAC,CAAC;QAC5I,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAG;YACzC,MAAM,EAAE,GAAG,IAAI,eAAQ,EAAE,CAAA;YACzB,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;gBAC7B,0DAA0D;gBAC1D,KAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;oBAC3C,mCAAmC;oBACnC,MAAM,eAAe,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;iBAChD;YACJ,CAAC,CAAC,CAAA;YAEF,IAAA,gBAAS,EAAC,2EAA2E,CAAC,CAAA;YACtF,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA,kDAAkD;SACvE;QACD,OAAO,IAAI,CAAC,CAAC,+BAA+B;KAC9C;IACD,OAAO,CAAC,EAAE;QACP,IAAA,eAAQ,EAAC,CAAC,CAAC,CAAC;QACZ,OAAO,KAAK,CAAC;KACf;AACJ,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,EAAc,EAAE,SAAc;IAChE,+DAA+D;IAC/D,YAAY;IACZ,oCAAoC;IACpC,sDAAsD;IACtD,mCAAmC;IACnC,wEAAwE;IACxE,8NAA8N;IAE9N,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,GAAG,GAAG,GAAG,SAAS,CAAC,SAAS,CAAA;IAClE,MAAM,KAAK,GAAG;;uCAEsB,SAAS;;;;;;;;oCAQZ,SAAS;;IAEzC,CAAC;IAEF,IAAI;QACA,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,CAAC;SAC7E;QAED,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEtE,IAAI,CAAC,WAAW,IAAI,WAAW,IAAI,CAAC,WAAW,EAAE;YAC7C,IAAI,iBAAiB,GAAG,mCAAmC,CAAC;YAC5D,iBAAiB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,iBAAiB,IAAI,WAAW,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,iBAAiB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;SACrD;QAED,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAC;KACxD;IACD,OAAO,KAAK,EAAE;QACX,MAAM,QAAQ,GAAG,wCAAwC,GAAG,SAAS,EAAE,SAAS,CAAC;QACjF,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/B,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC;KAC9D;AACJ,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,EAAc,EAAE,SAAc,EAAE,EAAY;IACxE,IAAI;QACD,MAAM,EAAC,YAAY,EAAE,iBAAiB,EAAC,GAAG,MAAM,qBAAqB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QACrF,IAAI,YAAY,EAAE;YACf,+BAA+B;YAC/B,IAAI,aAAa,GAAW,4BAA4B,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;YAClG,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,MAAM,cAAc,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;YACvE,IAAI,cAAc,EAAE;gBACjB,kEAAkE;gBAClE,wEAAwE;gBACxE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;gBACrC,aAAa,GAAG,aAAa,GAAG,MAAM,CAAA;gBACtC,IAAA,eAAQ,EAAC,yDAAyD,aAAa,+DAA+D,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,SAAS,yBAAyB,CAAC,CAAA;aACrN;YAED,yBAAyB;YACzB,MAAM,MAAM,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YACtC,MAAM,eAAe,GAAG,SAAS,IAAA,uBAAc,GAAE,oCAAoC,CAAC;YACtF,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YAC/D,MAAM,WAAW,GAAG,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;YAClG,IAAI,WAAW,IAAI,WAAW,GAAG,CAAC,EAAE;gBACjC,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;gBAChE,MAAM,UAAU,GAAG,wBAAwB,CAAC,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBAC3F,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC3B,4EAA4E;gBAE5E,gCAAgC;gBAChC,qBAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAElC,mIAAmI;gBACnI,sHAAsH;gBACtH,IAAI,WAAW,IAAK,mBAAU,CAAC,iBAAiB,CAAC,kCAAkC,EAAE;oBAClF,8FAA8F;oBAE9F,IAAI,CAAC,MAAM,iBAAiB,CAAC,EAAE,EAAE,SAAS,CAAC,UAAU,CAAC;wBACnD,MAAM,oBAAoB,CAAC,EAAE,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;iBAC1D;qBACI;oBACF,uEAAuE;oBACvE,MAAM,yBAAyB,CAAC,EAAE,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;iBAC5D;gBACD,sHAAsH;gBACtH,IAAI,mBAAU,CAAC,iBAAiB,CAAC,8BAA8B,EAAE;oBAC9D,+CAA+C;oBAC/C,MAAM,2BAA2B,GAAG,eAAe,IAAA,uBAAc,GAAE;;6DAErB,SAAS,CAAC,UAAU,MAAM,WAAW,4CAA4C,IAAA,uBAAc,GAAE,+CAA+C,SAAS,CAAC,UAAU,KAAK,CAAC;oBACxN,MAAM,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;iBAC9C;gBAED,yGAAyG;gBACzG,IAAI,mBAAU,CAAC,iBAAiB,CAAC,kBAAkB,IAAI,mBAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,gCAAgC,EAAE;oBACtI,kHAAkH;oBAClH,MAAM,WAAW,GAAG,mBAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,WAAW,CAAC;oBAChF,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE;wBAC1B,MAAM,oBAAoB,GAAG,eAAe,IAAA,uBAAc,GAAE;;4DAElB,WAAW,MAAM,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;wBACxK,MAAM,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;qBACvC;iBACH;gBAED,IAAA,gBAAS,EAAC,yBAAyB,aAAa,cAAc,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC,CAAA;aAC9G;iBACI;gBACF,IAAA,eAAQ,EAAC,2CAA2C,SAAS,CAAC,UAAU,IAAI,SAAS,CAAC,SAAS;qHACU,CAAC,CAAA;aAC5G;SACH;aACI;YACF,IAAA,gBAAS,EAAC,0BAA0B,SAAS,CAAC,SAAS,sDAAsD,iBAAiB,EAAE,CAAC,CAAA;YACjI,OAAO;SACT;KACH;IACD,OAAO,CAAC,EAAE;QACP,IAAA,eAAQ,EAAC,+BAA+B,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;KAClE;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,EAAc,EAAE,UAAkB;IAC1D,yEAAyE;IACzE,MAAM,IAAI,GAAW,kCAAkC,IAAA,uBAAc,GAAE,gCAAgC,UAAU,GAAG,CAAC;IACrH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,OAAO,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACrE,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,EAAc,EAAE,OAAe;IAChE,MAAM,IAAI,GAAW,eAAe,GAAG,IAAA,uBAAc,GAAE,GAAG,6CAA6C,GAAG,OAAO,GAAG,qDAAqD,CAAC;IAC1K,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,OAAO,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,EAAc,EAAE,eAAuB;IACrE,MAAM,IAAI,GAAW,mBAAmB,IAAA,uBAAc,GAAE,+BAA+B,eAAe,GAAG,CAAC;IAC1G,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,OAAO,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACjE,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,EAAc,EAAE,UAAkB;IACxE,MAAM,IAAI,GAAW,mBAAmB,IAAA,uBAAc,GAAE,+BAA+B,UAAU,GAAG,CAAC;IACrG,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,OAAO,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5D,CAAC;AAED,SAAS,wBAAwB,CAAC,WAAmB,EAAE,aAAqB,EAAE,SAAc,EAAE,eAAuB;IAClH,MAAM,iBAAiB,GAAG,mBAAU,CAAC,iBAAiB,CAAC;IAEvD,MAAM,UAAU,GAAG,gBAAgB,IAAA,uBAAc,GAAE;;;;;;;;;QAS9C,iBAAiB,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB;QAChF,iBAAiB,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB;QAC9E,iBAAiB,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB;QACtE,iBAAiB,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB;QAC1E,iBAAiB,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;QACxE,iBAAiB,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;QACxE,iBAAiB,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;QACxE,iBAAiB,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB;;;QAG1E,WAAW;SACV,aAAa;QACd,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,eAAe,GAAG,CAAC,CAAC,CAAC,MAAM;SAC9E,SAAS,CAAC,SAAS;WACjB,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;SAClH,SAAS,CAAC,UAAU;;QAErB,iBAAiB,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrG,iBAAiB,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACnH,iBAAiB,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACjH,iBAAiB,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACzG,iBAAiB,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC7G,iBAAiB,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3G,iBAAiB,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3G,iBAAiB,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3G,iBAAiB,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,eAAe,CAAC;OAClG,CAAC;IAEL,OAAO,UAAU,CAAC;AACrB,CAAC;AAED,SAAS,kBAAkB,CAAC,CAAQ,EAAE,YAAoB,EAAE,gBAAyB;IAClF,IAAI,CAAC,IAAI,YAAY,EAAE;QACpB,IAAI,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3E,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;;YAEtD,OAAO,CAAC,CAAA;KACb;;QAEE,OAAO,CAAC,CAAC;AACf,CAAC;AACD,SAAS,4BAA4B,CAAC,CAAS;IAC5C,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;QAChC,IAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,kCAAkC;YACjE,CAAC,GAAG,CAAC,IAAI,sBAAsB;YAC/B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,+HAA+H;UACrK;YACF,MAAM,IAAI,GAAG,CAAC;SAChB;QACD,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;KACjB;IACD,OAAO,MAAM,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CAAC,YAAoB;IAC7C,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC7B,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;KACpE;SACI,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAClC,OAAO,YAAY,GAAG,IAAI,CAAC;KAC7B;SACI;QACF,OAAO,YAAY,GAAG,GAAG,CAAC;KAC5B;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"manageMetadata.js","sourceRoot":"","sources":["../src/manageMetadata.ts"],"names":[],"mappings":"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"}
|
package/dist/runCodeGen.js
CHANGED
|
@@ -27,9 +27,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
exports.runMemberJunctionCodeGeneration = void 0;
|
|
30
|
-
const react_client_codegen_1 = require("./react_client_codegen");
|
|
31
30
|
const graphql_server_codegen_1 = require("./graphql_server_codegen");
|
|
32
|
-
const graphql_client_codegen_1 = require("./graphql_client_codegen");
|
|
33
31
|
const sql_codegen_1 = require("./sql_codegen");
|
|
34
32
|
const entity_subclasses_codegen_1 = require("./entity_subclasses_codegen");
|
|
35
33
|
const sqlserver_dataprovider_1 = require("@memberjunction/sqlserver-dataprovider");
|
|
@@ -66,6 +64,8 @@ async function runMemberJunctionCodeGeneration() {
|
|
|
66
64
|
(0, logging_1.logError)('No entities found in metadata, exiting...'); // TODO: add a way to generate the metadata if it doesn't exist
|
|
67
65
|
process.exit(1);
|
|
68
66
|
}
|
|
67
|
+
const coreEntities = md.Entities.filter(e => e.SchemaName.trim().toLowerCase() === config_1.mjCoreSchema.trim().toLowerCase());
|
|
68
|
+
const nonCoreEntities = md.Entities.filter(e => e.SchemaName.trim().toLowerCase() !== config_1.mjCoreSchema.trim().toLowerCase());
|
|
69
69
|
// check to see if the user wants to skip database generation via the config settings
|
|
70
70
|
const skipDatabaseGeneration = (0, config_1.getSettingValue)('skip_database_generation', false);
|
|
71
71
|
if (!skipDatabaseGeneration) {
|
|
@@ -115,14 +115,21 @@ async function runMemberJunctionCodeGeneration() {
|
|
|
115
115
|
(0, logging_1.logStatus)("Skipping all database related CodeGen work because skip_database_generation was set to true in the config file under settings");
|
|
116
116
|
}
|
|
117
117
|
/****************************************************************************************
|
|
118
|
-
// STEP 3 - GraphQL Server Code Gen
|
|
118
|
+
// STEP 3(a) - GraphQL Server Code Gen
|
|
119
119
|
****************************************************************************************/
|
|
120
|
+
const graphQLCoreResolversOutputDir = (0, config_1.outputDir)('GraphQLCoreEntityResolvers', false);
|
|
121
|
+
if (graphQLCoreResolversOutputDir) {
|
|
122
|
+
// generate the GraphQL server code
|
|
123
|
+
(0, logging_1.logStatus)('Generating CORE Entity GraphQL Resolver Code...');
|
|
124
|
+
if (!(0, graphql_server_codegen_1.generateGraphQLServerCode)(coreEntities, graphQLCoreResolversOutputDir))
|
|
125
|
+
(0, logging_1.logError)('Error generating GraphQL server code');
|
|
126
|
+
}
|
|
120
127
|
const graphqlOutputDir = (0, config_1.outputDir)('GraphQLServer', true);
|
|
121
128
|
if (graphqlOutputDir) {
|
|
122
129
|
// generate the GraphQL server code
|
|
123
|
-
(0, logging_1.logStatus)('Generating GraphQL
|
|
124
|
-
if (!(0, graphql_server_codegen_1.generateGraphQLServerCode)(
|
|
125
|
-
(0, logging_1.logError)('Error generating GraphQL
|
|
130
|
+
(0, logging_1.logStatus)('Generating GraphQL Resolver Code...');
|
|
131
|
+
if (!(0, graphql_server_codegen_1.generateGraphQLServerCode)(nonCoreEntities, graphqlOutputDir))
|
|
132
|
+
(0, logging_1.logError)('Error generating GraphQL Resolver code');
|
|
126
133
|
}
|
|
127
134
|
else
|
|
128
135
|
(0, logging_1.logStatus)('GraphQL server output directory NOT found in config file, skipping...');
|
|
@@ -133,12 +140,9 @@ async function runMemberJunctionCodeGeneration() {
|
|
|
133
140
|
if (coreEntitySubClassOutputDir && coreEntitySubClassOutputDir.length > 0) {
|
|
134
141
|
// generate the entity subclass code
|
|
135
142
|
(0, logging_1.logStatus)('Generating CORE Entity Subclass Code...');
|
|
136
|
-
const coreEntities = md.Entities.filter(e => e.SchemaName.trim().toLowerCase() === config_1.mjCoreSchema.trim().toLowerCase());
|
|
137
143
|
if (!(0, entity_subclasses_codegen_1.generateAllEntitySubClasses)(coreEntities, coreEntitySubClassOutputDir))
|
|
138
144
|
(0, logging_1.logError)('Error generating entity subclass code');
|
|
139
145
|
}
|
|
140
|
-
else
|
|
141
|
-
(0, logging_1.logStatus)('CORE Entity subclass output directory NOT found in config file, skipping...');
|
|
142
146
|
/****************************************************************************************
|
|
143
147
|
// STEP 4.1 - Entity Subclass Code Gen
|
|
144
148
|
****************************************************************************************/
|
|
@@ -146,38 +150,13 @@ async function runMemberJunctionCodeGeneration() {
|
|
|
146
150
|
if (entitySubClassOutputDir) {
|
|
147
151
|
// generate the entity subclass code
|
|
148
152
|
(0, logging_1.logStatus)('Generating Entity Subclass Code...');
|
|
149
|
-
const nonCoreEntities = md.Entities.filter(e => e.SchemaName.trim().toLowerCase() !== config_1.mjCoreSchema.trim().toLowerCase());
|
|
150
153
|
if (!(0, entity_subclasses_codegen_1.generateAllEntitySubClasses)(nonCoreEntities, entitySubClassOutputDir))
|
|
151
154
|
(0, logging_1.logError)('Error generating entity subclass code');
|
|
152
155
|
}
|
|
153
156
|
else
|
|
154
157
|
(0, logging_1.logStatus)('Entity subclass output directory NOT found in config file, skipping...');
|
|
155
158
|
/****************************************************************************************
|
|
156
|
-
// STEP 5 -
|
|
157
|
-
****************************************************************************************/
|
|
158
|
-
const graphqlClientOutputDir = (0, config_1.outputDir)('GraphQLClient', false);
|
|
159
|
-
if (graphqlClientOutputDir) {
|
|
160
|
-
// generate the GraphQL client code
|
|
161
|
-
(0, logging_1.logStatus)('Generating GraphQL Client Code...');
|
|
162
|
-
if (!(0, graphql_client_codegen_1.generateGraphQLClientCode)(md.Entities, graphqlClientOutputDir))
|
|
163
|
-
(0, logging_1.logError)('Error generating GraphQL client code');
|
|
164
|
-
}
|
|
165
|
-
else
|
|
166
|
-
(0, logging_1.logStatus)('GraphQL client output directory NOT found in config file, skipping...');
|
|
167
|
-
/****************************************************************************************
|
|
168
|
-
// STEP 6 - React Code Gen
|
|
169
|
-
****************************************************************************************/
|
|
170
|
-
const reactOutputDir = (0, config_1.outputDir)('React', false);
|
|
171
|
-
if (reactOutputDir) {
|
|
172
|
-
// generate the React
|
|
173
|
-
(0, logging_1.logStatus)('Generating React Code...');
|
|
174
|
-
if (!(0, react_client_codegen_1.generateReactCode)(md.Entities, reactOutputDir))
|
|
175
|
-
(0, logging_1.logError)('Error generating React code');
|
|
176
|
-
}
|
|
177
|
-
else
|
|
178
|
-
(0, logging_1.logStatus)('React output directory NOT found in config file, skipping...');
|
|
179
|
-
/****************************************************************************************
|
|
180
|
-
// STEP 7 - Angular Code Gen
|
|
159
|
+
// STEP 5 - Angular Code Gen
|
|
181
160
|
****************************************************************************************/
|
|
182
161
|
const angularOutputDir = (0, config_1.outputDir)('Angular', false);
|
|
183
162
|
if (angularOutputDir) {
|
|
@@ -189,7 +168,7 @@ async function runMemberJunctionCodeGeneration() {
|
|
|
189
168
|
else
|
|
190
169
|
(0, logging_1.logStatus)('Angular output directory NOT found in config file, skipping...');
|
|
191
170
|
/****************************************************************************************
|
|
192
|
-
// STEP
|
|
171
|
+
// STEP 6 - Database Schema Output in JSON - for documentation and can be used by AI/etc.
|
|
193
172
|
****************************************************************************************/
|
|
194
173
|
const dbSchemaOutputDir = (0, config_1.outputDir)('DBSchemaJSON', false);
|
|
195
174
|
if (dbSchemaOutputDir) {
|
|
@@ -201,7 +180,7 @@ async function runMemberJunctionCodeGeneration() {
|
|
|
201
180
|
else
|
|
202
181
|
(0, logging_1.logStatus)('DB Schema output directory NOT found in config file, skipping...');
|
|
203
182
|
/****************************************************************************************
|
|
204
|
-
// STEP
|
|
183
|
+
// STEP 7 --- Finalization Step - execute any AFTER commands specified in the config file
|
|
205
184
|
****************************************************************************************/
|
|
206
185
|
const afterCommands = (0, config_1.commands)('AFTER');
|
|
207
186
|
if (afterCommands && afterCommands.length > 0) {
|
|
@@ -211,7 +190,7 @@ async function runMemberJunctionCodeGeneration() {
|
|
|
211
190
|
(0, logging_1.logError)('ERROR running one or more AFTER commands');
|
|
212
191
|
}
|
|
213
192
|
/****************************************************************************************
|
|
214
|
-
// STEP
|
|
193
|
+
// STEP 8 --- Execute any AFTER SQL Scripts specified in the config file
|
|
215
194
|
****************************************************************************************/
|
|
216
195
|
if (!await (0, sql_codegen_1.runCustomSQLScripts)(db_1.default, 'after-all'))
|
|
217
196
|
(0, logging_1.logError)('ERROR running after-all SQL Scripts');
|
package/dist/runCodeGen.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runCodeGen.js","sourceRoot":"","sources":["../src/runCodeGen.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"runCodeGen.js","sourceRoot":"","sources":["../src/runCodeGen.ts"],"names":[],"mappings":"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"}
|
package/dist/sql_codegen.js
CHANGED
|
@@ -144,9 +144,9 @@ async function generateAndExecuteAllEntitiesSQLToSeparateFiles(ds, entities, dir
|
|
|
144
144
|
for (let i = 0; i < totalEntities; i += batchSize) {
|
|
145
145
|
const batch = entities.slice(i, i + batchSize);
|
|
146
146
|
const promises = batch.map(async (e) => {
|
|
147
|
-
const
|
|
148
|
-
if (!
|
|
149
|
-
(0, logging_1.logError)(`SKIPPING ENTITY: Entity ${e.Name}, because it does not have
|
|
147
|
+
const pkeyField = e.Fields.find(f => f.IsPrimaryKey);
|
|
148
|
+
if (!pkeyField) {
|
|
149
|
+
(0, logging_1.logError)(`SKIPPING ENTITY: Entity ${e.Name}, because it does not have a primary key field defined. A table must have a primary key defined to quality to be a MemberJunction entity`);
|
|
150
150
|
return false;
|
|
151
151
|
}
|
|
152
152
|
return generateAndExecuteSingleEntitySQLToSeparateFiles(ds, e, directory, onlyPermissions);
|
|
@@ -379,7 +379,7 @@ async function generateEntityFullTextSearchSQL(ds, entity) {
|
|
|
379
379
|
throw new Error('Could not find the first user in the cache, cant generate the full text search function without a user');
|
|
380
380
|
const e = await md.GetEntityObject('Entities', u);
|
|
381
381
|
await e.Load(entity.ID);
|
|
382
|
-
e.
|
|
382
|
+
e.FullTextSearchFunction = functionName;
|
|
383
383
|
if (!await e.Save())
|
|
384
384
|
throw new Error(`Could not update the FullTextSearchFunction for entity ${entity.Name}`);
|
|
385
385
|
}
|
|
@@ -461,9 +461,10 @@ async function generateBaseView(ds, entity) {
|
|
|
461
461
|
const permissions = generateViewPermissions(entity);
|
|
462
462
|
return `
|
|
463
463
|
------------------------------------------------------------
|
|
464
|
-
----- BASE VIEW FOR ENTITY:
|
|
465
|
-
----- SCHEMA:
|
|
466
|
-
----- BASE TABLE:
|
|
464
|
+
----- BASE VIEW FOR ENTITY: ${entity.Name}
|
|
465
|
+
----- SCHEMA: ${entity.SchemaName}
|
|
466
|
+
----- BASE TABLE: ${entity.BaseTable}
|
|
467
|
+
----- PRIMARY KEY: ${entity.PrimaryKey.Name}
|
|
467
468
|
------------------------------------------------------------
|
|
468
469
|
DROP VIEW IF EXISTS [${entity.SchemaName}].[${viewName}]
|
|
469
470
|
GO
|
|
@@ -580,8 +581,25 @@ function generateFullTextSearchFunctionPermissions(entity, functionName) {
|
|
|
580
581
|
}
|
|
581
582
|
function generateSPCreate(entity) {
|
|
582
583
|
const spName = entity.spCreate ? entity.spCreate : `spCreate${entity.ClassName}`;
|
|
583
|
-
const
|
|
584
|
+
const autoGeneratedPrimaryKey = entity.PrimaryKey.AutoIncrement || entity.PrimaryKey.Type.toLowerCase().trim() === 'uniqueidentifier';
|
|
585
|
+
const efString = createEntityFieldsParamString(entity.Fields, !autoGeneratedPrimaryKey);
|
|
584
586
|
const permissions = generateSPPermissions(entity, spName, exports.SPType.Create);
|
|
587
|
+
let primaryKeyInsertValue = '';
|
|
588
|
+
let selectInsertedRecord = '';
|
|
589
|
+
let additionalFieldList = '';
|
|
590
|
+
let additionalValueList = '';
|
|
591
|
+
if (entity.PrimaryKey.AutoIncrement) {
|
|
592
|
+
selectInsertedRecord = `SELECT * FROM [${entity.SchemaName}].[${entity.BaseView}] WHERE ${entity.PrimaryKey.Name} = SCOPE_IDENTITY()`;
|
|
593
|
+
}
|
|
594
|
+
else if (entity.PrimaryKey.Type.toLowerCase().trim() === 'uniqueidentifier') {
|
|
595
|
+
primaryKeyInsertValue = `DECLARE @newId UNIQUEIDENTIFIER = NEWID();\n SET @${entity.PrimaryKey.Name} = @newId;\n`;
|
|
596
|
+
additionalFieldList = ',\n ' + entity.PrimaryKey.Name;
|
|
597
|
+
additionalValueList = ',\n @newId';
|
|
598
|
+
selectInsertedRecord = `SELECT * FROM [${entity.SchemaName}].[${entity.BaseView}] WHERE ${entity.PrimaryKey.Name} = @newId`;
|
|
599
|
+
}
|
|
600
|
+
else {
|
|
601
|
+
selectInsertedRecord = `SELECT * FROM [${entity.SchemaName}].[${entity.BaseView}] WHERE ${entity.PrimaryKey.Name} = @${entity.PrimaryKey.Name}`;
|
|
602
|
+
}
|
|
585
603
|
return `
|
|
586
604
|
------------------------------------------------------------
|
|
587
605
|
----- CREATE PROCEDURE FOR ${entity.BaseTable}
|
|
@@ -594,18 +612,18 @@ CREATE PROCEDURE [${entity.SchemaName}].[${spName}]
|
|
|
594
612
|
AS
|
|
595
613
|
BEGIN
|
|
596
614
|
SET NOCOUNT ON;
|
|
615
|
+
${primaryKeyInsertValue}
|
|
597
616
|
INSERT INTO
|
|
598
617
|
[${entity.SchemaName}].[${entity.BaseTable}]
|
|
599
618
|
(
|
|
600
|
-
${createEntityFieldsInsertString(entity.Fields, '')}
|
|
619
|
+
${createEntityFieldsInsertString(entity, entity.Fields, '')}${additionalFieldList}
|
|
601
620
|
)
|
|
602
621
|
VALUES
|
|
603
622
|
(
|
|
604
|
-
${createEntityFieldsInsertString(entity.Fields, '@')}
|
|
623
|
+
${createEntityFieldsInsertString(entity, entity.Fields, '@')}${additionalValueList}
|
|
605
624
|
)
|
|
606
|
-
|
|
607
625
|
-- return the new record from the base view, which might have some calculated fields
|
|
608
|
-
|
|
626
|
+
${selectInsertedRecord}
|
|
609
627
|
END
|
|
610
628
|
GO${permissions}
|
|
611
629
|
`;
|
|
@@ -631,21 +649,21 @@ BEGIN
|
|
|
631
649
|
SET
|
|
632
650
|
${createEntityFieldsUpdateString(entity.Fields)}
|
|
633
651
|
WHERE
|
|
634
|
-
[
|
|
652
|
+
[${entity.PrimaryKey.Name}] = @${entity.PrimaryKey.Name}
|
|
635
653
|
|
|
636
654
|
-- return the updated record so the caller can see the updated values and any calculated fields
|
|
637
|
-
SELECT * FROM [${entity.SchemaName}]
|
|
655
|
+
SELECT * FROM [${entity.SchemaName}].[${entity.BaseView}] WHERE [${entity.PrimaryKey.Name}] = @${entity.PrimaryKey.Name}
|
|
638
656
|
END
|
|
639
657
|
GO${permissions}
|
|
640
658
|
`;
|
|
641
659
|
}
|
|
642
|
-
function createEntityFieldsParamString(entityFields,
|
|
660
|
+
function createEntityFieldsParamString(entityFields, includePrimaryKey) {
|
|
643
661
|
let sOutput = '', isFirst = true;
|
|
644
662
|
for (let i = 0; i < entityFields.length; ++i) {
|
|
645
663
|
const ef = entityFields[i];
|
|
646
|
-
if ((ef.AllowUpdateAPI || (ef.
|
|
664
|
+
if ((ef.AllowUpdateAPI || (ef.IsPrimaryKey && includePrimaryKey)) &&
|
|
647
665
|
!ef.IsVirtual &&
|
|
648
|
-
(ef.
|
|
666
|
+
(!ef.IsPrimaryKey || includePrimaryKey) &&
|
|
649
667
|
ef.Name.toLowerCase().trim() !== 'updatedat' &&
|
|
650
668
|
ef.Name.toLowerCase().trim() !== 'createdat' &&
|
|
651
669
|
ef.Type.toLowerCase().trim() !== 'uniqueidentifier') {
|
|
@@ -658,11 +676,12 @@ function createEntityFieldsParamString(entityFields, includeID) {
|
|
|
658
676
|
}
|
|
659
677
|
return sOutput;
|
|
660
678
|
}
|
|
661
|
-
function createEntityFieldsInsertString(entityFields, prefix) {
|
|
679
|
+
function createEntityFieldsInsertString(entity, entityFields, prefix) {
|
|
680
|
+
const autoGeneratedPrimaryKey = entity.PrimaryKey.AutoIncrement || entity.PrimaryKey.Type.toLowerCase().trim() === 'uniqueidentifier';
|
|
662
681
|
let sOutput = '', isFirst = true;
|
|
663
682
|
for (let i = 0; i < entityFields.length; ++i) {
|
|
664
683
|
const ef = entityFields[i];
|
|
665
|
-
if (ef.
|
|
684
|
+
if ((!ef.IsPrimaryKey || !autoGeneratedPrimaryKey) &&
|
|
666
685
|
ef.IsVirtual === false &&
|
|
667
686
|
ef.AllowUpdateAPI &&
|
|
668
687
|
ef.AutoIncrement === false &&
|
|
@@ -688,7 +707,7 @@ function createEntityFieldsUpdateString(entityFields) {
|
|
|
688
707
|
let sOutput = '', isFirst = true;
|
|
689
708
|
for (let i = 0; i < entityFields.length; ++i) {
|
|
690
709
|
const ef = entityFields[i];
|
|
691
|
-
if (ef.
|
|
710
|
+
if (!ef.IsPrimaryKey &&
|
|
692
711
|
ef.IsVirtual === false &&
|
|
693
712
|
ef.AllowUpdateAPI &&
|
|
694
713
|
ef.AutoIncrement === false &&
|
|
@@ -723,15 +742,15 @@ DROP PROCEDURE IF EXISTS [${entity.SchemaName}].[${spName}]
|
|
|
723
742
|
GO
|
|
724
743
|
|
|
725
744
|
CREATE PROCEDURE [${entity.SchemaName}].[${spName}]
|
|
726
|
-
|
|
745
|
+
@${entity.PrimaryKey.Name} ${entity.PrimaryKey.SQLFullType}
|
|
727
746
|
AS
|
|
728
747
|
BEGIN
|
|
729
748
|
SET NOCOUNT ON;${sCascadeDeletes}
|
|
730
749
|
DELETE FROM
|
|
731
750
|
[${entity.SchemaName}].[${entity.BaseTable}]
|
|
732
751
|
WHERE
|
|
733
|
-
[
|
|
734
|
-
SELECT
|
|
752
|
+
[${entity.PrimaryKey.Name}] = @${entity.PrimaryKey.Name}
|
|
753
|
+
SELECT @${entity.PrimaryKey.Name} AS ${entity.PrimaryKey.Name} -- Return the primary key value to indicate we successfully deleted the record
|
|
735
754
|
END
|
|
736
755
|
GO${permissions}
|
|
737
756
|
`;
|
|
@@ -757,7 +776,7 @@ function generateCascadeDeletes(entity) {
|
|
|
757
776
|
DELETE FROM
|
|
758
777
|
[${e.SchemaName}].[${e.BaseTable}]
|
|
759
778
|
WHERE
|
|
760
|
-
[${ef.Name}] =
|
|
779
|
+
[${ef.Name}] = @${entity.PrimaryKey.Name}`;
|
|
761
780
|
}
|
|
762
781
|
else {
|
|
763
782
|
// we have a non-virtual field that is a foreign key to this entity
|
|
@@ -770,7 +789,7 @@ function generateCascadeDeletes(entity) {
|
|
|
770
789
|
SET
|
|
771
790
|
[${ef.Name}] = NULL
|
|
772
791
|
WHERE
|
|
773
|
-
[${ef.Name}] =
|
|
792
|
+
[${ef.Name}] = @${entity.PrimaryKey.Name}`;
|
|
774
793
|
}
|
|
775
794
|
if (sOutput !== '')
|
|
776
795
|
sOutput += '\n ';
|