@memberjunction/cli 5.38.0 → 5.39.0
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/baseline/emitter.js +23 -16
- package/dist/baseline/emitter.js.map +1 -1
- package/dist/commands/bundle/index.d.ts +21 -0
- package/dist/commands/bundle/index.d.ts.map +1 -0
- package/dist/commands/bundle/index.js +62 -0
- package/dist/commands/bundle/index.js.map +1 -0
- package/dist/commands/migrate/index.d.ts +29 -0
- package/dist/commands/migrate/index.d.ts.map +1 -1
- package/dist/commands/migrate/index.js +111 -5
- package/dist/commands/migrate/index.js.map +1 -1
- package/dist/config.d.ts +6 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +13 -0
- package/dist/config.js.map +1 -1
- package/dist/lib/db-preflight.d.ts +42 -0
- package/dist/lib/db-preflight.d.ts.map +1 -0
- package/dist/lib/db-preflight.js +113 -0
- package/dist/lib/db-preflight.js.map +1 -0
- package/dist/lib/db-version.d.ts +36 -0
- package/dist/lib/db-version.d.ts.map +1 -0
- package/dist/lib/db-version.js +45 -0
- package/dist/lib/db-version.js.map +1 -0
- package/dist/lib/migration-fetch.d.ts +49 -0
- package/dist/lib/migration-fetch.d.ts.map +1 -0
- package/dist/lib/migration-fetch.js +152 -0
- package/dist/lib/migration-fetch.js.map +1 -0
- package/dist/light-commands.d.ts.map +1 -1
- package/dist/light-commands.js +2 -0
- package/dist/light-commands.js.map +1 -1
- package/oclif.manifest.json +535 -449
- package/package.json +15 -15
package/dist/baseline/emitter.js
CHANGED
|
@@ -430,28 +430,35 @@ function emitPrincipals(principals) {
|
|
|
430
430
|
lines.push('GO');
|
|
431
431
|
continue;
|
|
432
432
|
}
|
|
433
|
-
// SQL users: mirror v5.0's
|
|
434
|
-
//
|
|
435
|
-
//
|
|
436
|
-
|
|
433
|
+
// SQL users: mirror v5.0's pattern EXACTLY so the cross-database
|
|
434
|
+
// `master.dbo.syslogins` lookup lives INSIDE an `sp_executesql N'...'`
|
|
435
|
+
// string literal. Azure SQL parses + binds every batch at submission
|
|
436
|
+
// time and rejects cross-DB references on sight — runtime IF guards
|
|
437
|
+
// come too late. Wrapping the query in dynamic SQL makes it opaque
|
|
438
|
+
// to the parser, and the EngineEdition check ensures it never
|
|
439
|
+
// executes on Azure anyway (so the FOR-LOGIN-or-WITHOUT-LOGIN path
|
|
440
|
+
// is decided purely from `@associate` set to 1 by SERVERPROPERTY).
|
|
441
|
+
//
|
|
442
|
+
// Each block ends with a `GO` so the @associate / @user_exists
|
|
443
|
+
// variables get a fresh scope per user — no name-mangling needed.
|
|
444
|
+
const nameForString = u.name.replace(/'/g, "''");
|
|
445
|
+
lines.push('DECLARE @associate bit');
|
|
446
|
+
lines.push(`SELECT @associate = CASE SERVERPROPERTY('EngineEdition') WHEN 5 THEN 1 ELSE 0 END`);
|
|
447
|
+
lines.push('DECLARE @user_exists bit');
|
|
448
|
+
lines.push(`EXEC sp_executesql N'SELECT @count = COUNT(*) FROM sys.database_principals WHERE [name] = N''${nameForString}''', N'@count bit OUT', @user_exists OUT`);
|
|
449
|
+
lines.push(`IF @associate = 0 EXEC sp_executesql N'SELECT @count = COUNT(*) FROM master.dbo.syslogins WHERE loginname = N''${nameForString}''', N'@count bit OUT', @associate OUT`);
|
|
450
|
+
lines.push('IF @associate = 1 AND @user_exists = 0');
|
|
437
451
|
lines.push('BEGIN');
|
|
438
|
-
lines.push(`
|
|
439
|
-
lines.push(
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
lines.push(`
|
|
443
|
-
lines.push(` EXEC('CREATE USER ${quoteIdent(u.name)} FOR LOGIN ${quoteIdent(u.name)}');`);
|
|
444
|
-
lines.push(' ELSE');
|
|
445
|
-
lines.push(` EXEC('CREATE USER ${quoteIdent(u.name)} WITHOUT LOGIN');`);
|
|
452
|
+
lines.push(` CREATE USER ${quoteIdent(u.name)} FOR LOGIN ${quoteIdent(u.name)}`);
|
|
453
|
+
lines.push('END');
|
|
454
|
+
lines.push('ELSE IF @user_exists = 0');
|
|
455
|
+
lines.push('BEGIN');
|
|
456
|
+
lines.push(` CREATE USER ${quoteIdent(u.name)} WITHOUT LOGIN`);
|
|
446
457
|
lines.push('END');
|
|
447
458
|
lines.push('GO');
|
|
448
459
|
}
|
|
449
460
|
return lines.join(NL);
|
|
450
461
|
}
|
|
451
|
-
/** Safe identifier suffix for variable names embedded inside an IF block. */
|
|
452
|
-
function safeSuffix(name) {
|
|
453
|
-
return name.replace(/[^a-zA-Z0-9_]/g, '_');
|
|
454
|
-
}
|
|
455
462
|
/**
|
|
456
463
|
* Emit ALTER ROLE … ADD MEMBER statements, each guarded by IS_ROLEMEMBER so
|
|
457
464
|
* the baseline is safe to re-apply (and tolerant of orderings where Skyway
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/baseline/emitter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EACL,eAAe,EACf,aAAa,EACb,EAAE,EACF,UAAU,EACV,WAAW,EACX,YAAY,EACZ,4BAA4B,GAC7B,MAAM,QAAQ,CAAC;AA0BhB,MAAM,UAAU,gBAAgB,CAAC,KAAgB;IAC/C,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACtC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,2EAA2E;IAC3E,0EAA0E;IAC1E,4EAA4E;IAC5E,0CAA0C;IAC1C,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACtD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACxF,CAAC;IACD,8EAA8E;IAC9E,oDAAoD;IACpD,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAClE,0EAA0E;IAC1E,6EAA6E;IAC7E,0EAA0E;IAC1E,kCAAkC;IAClC,EAAE;IACF,6EAA6E;IAC7E,4EAA4E;IAC5E,sEAAsE;IACtE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;IAC7F,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,4BAA4B,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1E,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;IAC/F,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChF,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,yEAAyE;IACzE,iEAAiE;IACjE,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;IAChE,sEAAsE;IACtE,wEAAwE;IACxE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACxD,4EAA4E;IAC5E,qDAAqD;IACrD,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACtE,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;AAC9D,CAAC;AAED,SAAS,UAAU,CAAC,OAA4B;IAC9C,OAAO;QACL,iFAAiF;QACjF,MAAM,OAAO,CAAC,WAAW,EAAE;QAC3B,0BAA0B,OAAO,CAAC,eAAe,IAAI;QACrD,yBAAyB,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;QAChE,0DAA0D;QAC1D,iFAAiF;QACjF,oBAAoB;QACpB,2BAA2B;QAC3B,iBAAiB;QACjB,IAAI;KACL,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,sBAAsB,EAAE,IAAI,CAAC;AACtC,CAAC;AAED,SAAS,WAAW,CAAC,QAAwB;IAC3C,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,KAAK,GAAa,CAAC,YAAY,CAAC,CAAC;IACvC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK;YAAE,SAAS;QAClD,KAAK,CAAC,IAAI,CACR,yDAAyD,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CACrF,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,2BAA2B,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,aAAa,CAAC,SAAiC;IACtD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACtC,MAAM,KAAK,GAAa,CAAC,cAAc,CAAC,CAAC;IACzC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC;QACjD,KAAK,CAAC,IAAI,CACR,mBAAmB,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG;YACpE,wBAAwB,GAAG,CAAC,UAAU,iBAAiB,GAAG,CAAC,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,KAAK,GAAG,CAC5F,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,UAAU,CAAC,MAA2B;IAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAa,CAAC,WAAW,CAAC,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,eAAe,CAAC,CAAW;IAClC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,gBAAgB,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;QACtE,WAAW,CAAC,IAAI,CACd,kBAAkB,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,OAAO,GAAG;YACzE,IAAI,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACjE,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;QAC3D,WAAW,CAAC,IAAI,CACd,kBAAkB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,OAAO,GAAG;YACzD,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtD,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;IACvC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAY;IACpC,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACzC,yEAAyE;QACzE,2EAA2E;QAC3E,MAAM,SAAS,GAAG,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,iFAAiF;QACjF,2EAA2E;QAC3E,MAAM,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC;QAChF,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,OAAO,GAAG,SAAS,EAAE,CAAC;IAC3D,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7D,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,CAAC,UAAU;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,YAAY,CAAC,MAA2B;IAC/C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;gBACzC,mEAAmE;gBACnE,mEAAmE;gBACnE,uEAAuE;gBACvE,MAAM,cAAc,GAAG,CAAC,CAAC,qBAAqB,IAAI,MAAM,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBACvF,KAAK,CAAC,IAAI,CACR,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG;oBAC5D,kBAAkB,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,iBAAiB,GAAG;oBAC9E,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAC7B,CAAC;gBACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,CAAC,wBAAwB,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,UAAU,CAAC,MAA2B;IAC7C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CACR,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG;gBAC5D,kBAAkB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,UAAU,GAAG,CAC9D,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,CAAC,sBAAsB,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,WAAW,CAAC,MAA2B;IAC9C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,CAAC,YAAY,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,eAAe,CAAC,CAAW,EAAE,GAAa;IACjD,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;IAC/D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1G,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,OAAO,CACL,UAAU,MAAM,GAAG,OAAO,UAAU,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM;QAC9D,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,GAAG,MAAM,IAAI,EAAE,IAAI,CAClF,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAA2B;IAClD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,CAAC,iBAAiB,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,cAAc,CAAC,CAAW,EAAE,EAAiB;IACpD,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,OAAO,CACL,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG;QAC5D,kBAAkB,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI;QAC9D,cAAc,UAAU,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,eAAe,CAAC,KAAK,OAAO,GAAG;QAC9F,GAAG,QAAQ,GAAG,QAAQ,IAAI,EAAE,IAAI,CACjC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CACf,MAA2B,EAC3B,KAA+B,EAC/B,SAAiB;IAEjB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,MAAM,QAAQ,GAAa,CAAC,SAAS,CAAC,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC9C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,aAAa,CAAC,KAAe,EAAE,IAAmB,EAAE,SAAiB;IAC5E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACzE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAElE,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,uBAAuB,QAAQ,MAAM,CAAC,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAC5F,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,KAAK,OAAO,UAAU,CAAC,CAAC;QAC1D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,uBAAuB,QAAQ,OAAO,CAAC,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,6DAA6D;QAC7D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,CAAC,IAAI,CAAC,gBAAgB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;YACrE,KAAK,CAAC,IAAI,CACR,eAAe,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,QAAQ,GAAG,CACnG,CAAC;YACF,KAAK,CAAC,IAAI,CACR,WAAW,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,eAAe;gBACxD,oBAAoB,WAAW,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,YAAY;gBAC5E,QAAQ,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAC3C,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,SAAS,CAAC,KAAyB;IAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,gDAAgD;IAChD,MAAM,KAAK,GAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE;YAAE,SAAS;QACnC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,YAAY,CAAC,QAA+B,EAAE,KAA+B;IACpF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,0DAA0D;IAC1D,MAAM,KAAK,GAAa,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;IACtG,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE;YAAE,SAAS;QACnC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,YAAY,CAAC,QAA+B;IACnD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,0DAA0D;IAC1D,MAAM,KAAK,GAAa,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE;YAAE,SAAS;QACnC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAoC;IAChE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,KAAK,GAAa,CAAC,qCAAqC,CAAC,CAAC;IAChE,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QAClF,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACxB,yEAAyE;YACzE,uEAAuE;YACvE,sEAAsE;YACtE,MAAM,IAAI,KAAK,CACb,qBAAqB,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,0DAA0D,CAClG,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;YAC7D,0FAA0F;YAC1F,IAAI,CAAC,CAAC,SAAS,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBAC9D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;YACvC,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjB,4EAA4E;YAC5E,uDAAuD;YACvD,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;YACtE,QAAQ,CAAC,IAAI,CACX,mBAAmB,OAAO,KAAK,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC5F,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnF,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,sBAAsB,CAAC,KAAqC;IACnE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,KAAK,GAAa,CAAC,4CAA4C,CAAC,CAAC;IACvE,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,GAAa;YACrB,WAAW,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YAChC,YAAY,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;YAClC,0CAA0C,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE;SACtE,CAAC;QACF,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjB,IAAI,CAAC,IAAI,CACP,mBAAmB,CAAC,CAAC,UAAU,oBAAoB,WAAW,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CACrF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjB,IAAI,CAAC,IAAI,CACP,mBAAmB,CAAC,CAAC,UAAU,oBAAoB,WAAW,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CACrF,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,+BAA+B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,cAAc,CAAC,UAA2C;IACjE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,KAAK,GAAa,CAAC,+CAA+C,EAAE,IAAI,CAAC,CAAC;IAEhF,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,IAAI,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC;IACpG,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,IAAI,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC;IAEpG,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACjE,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,4BAA4B,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvE,KAAK,CAAC,IAAI,CAAC,yBAAyB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,KAAK,CAAC,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACjE,4EAA4E;QAC5E,+DAA+D;QAC/D,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACjF,KAAK,CAAC,IAAI,CAAC,4BAA4B,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACvE,KAAK,CAAC,IAAI,CAAC,yBAAyB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;YACpF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,SAAS;QACX,CAAC;QACD,0EAA0E;QAC1E,wEAAwE;QACxE,wEAAwE;QACxE,KAAK,CAAC,IAAI,CAAC,4BAA4B,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,6BAA6B,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvE,KAAK,CAAC,IAAI,CACR,gEAAgE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ;YAC1F,2EAA2E,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;YAClG,qBAAqB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAC/C,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,wBAAwB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,6BAA6B,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,6BAA6B,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC/E,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,6EAA6E;AAC7E,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,WAAyC;IACpE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACxC,MAAM,KAAK,GAAa,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACtD,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACxF,KAAK,CAAC,IAAI,CAAC,oBAAoB,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrF,KAAK,CAAC,IAAI,CAAC,kBAAkB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,eAAe,CAAC,KAA+B;IACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,KAAK,GAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAgB;IACxC,MAAM,IAAI,GACR,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;IAC5C,MAAM,IAAI,GACR,CAAC,CAAC,KAAK,KAAK,yBAAyB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;IAEpE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC;IAC1B,MAAM,SAAS,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3E,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QACtB,KAAK,UAAU;YACb,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,OAAO,GAAG,IAAI,EAAE,CAAC;QAChD,KAAK,QAAQ;YACX,OAAO,GAAG,IAAI,IAAI,IAAI,eAAe,UAAU,CAAC,CAAC,CAAC,YAAa,CAAC,OAAO,OAAO,GAAG,IAAI,EAAE,CAAC;QAC1F,KAAK,MAAM;YACT,OAAO,GAAG,IAAI,IAAI,IAAI,aAAa,UAAU,CAAC,CAAC,CAAC,YAAa,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,UAAW,CAAC,OAAO,OAAO,GAAG,IAAI,EAAE,CAAC;QACrH,KAAK,QAAQ,CAAC;QACd;YACE,OAAO,CACL,GAAG,IAAI,IAAI,IAAI,GAAG,SAAS,OAAO,UAAU,CAAC,CAAC,CAAC,YAAa,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,YAAa,CAAC,GAAG;gBAC/F,MAAM,OAAO,GAAG,IAAI,EAAE,CACvB,CAAC;IACN,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"emitter.js","sourceRoot":"","sources":["../../src/baseline/emitter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EACL,eAAe,EACf,aAAa,EACb,EAAE,EACF,UAAU,EACV,WAAW,EACX,YAAY,EACZ,4BAA4B,GAC7B,MAAM,QAAQ,CAAC;AA0BhB,MAAM,UAAU,gBAAgB,CAAC,KAAgB;IAC/C,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IACtC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,2EAA2E;IAC3E,0EAA0E;IAC1E,4EAA4E;IAC5E,0CAA0C;IAC1C,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACtD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACxF,CAAC;IACD,8EAA8E;IAC9E,oDAAoD;IACpD,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAClE,0EAA0E;IAC1E,6EAA6E;IAC7E,0EAA0E;IAC1E,kCAAkC;IAClC,EAAE;IACF,6EAA6E;IAC7E,4EAA4E;IAC5E,sEAAsE;IACtE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;IAC7F,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,4BAA4B,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1E,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;IAC/F,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,4BAA4B,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChF,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,yEAAyE;IACzE,iEAAiE;IACjE,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;IAChE,sEAAsE;IACtE,wEAAwE;IACxE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACxD,4EAA4E;IAC5E,qDAAqD;IACrD,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACtE,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;AAC9D,CAAC;AAED,SAAS,UAAU,CAAC,OAA4B;IAC9C,OAAO;QACL,iFAAiF;QACjF,MAAM,OAAO,CAAC,WAAW,EAAE;QAC3B,0BAA0B,OAAO,CAAC,eAAe,IAAI;QACrD,yBAAyB,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;QAChE,0DAA0D;QAC1D,iFAAiF;QACjF,oBAAoB;QACpB,2BAA2B;QAC3B,iBAAiB;QACjB,IAAI;KACL,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AAED,SAAS,UAAU;IACjB,OAAO,sBAAsB,EAAE,IAAI,CAAC;AACtC,CAAC;AAED,SAAS,WAAW,CAAC,QAAwB;IAC3C,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,KAAK,GAAa,CAAC,YAAY,CAAC,CAAC;IACvC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK;YAAE,SAAS;QAClD,KAAK,CAAC,IAAI,CACR,yDAAyD,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CACrF,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,2BAA2B,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,aAAa,CAAC,SAAiC;IACtD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACtC,MAAM,KAAK,GAAa,CAAC,cAAc,CAAC,CAAC;IACzC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC;QACjD,KAAK,CAAC,IAAI,CACR,mBAAmB,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG;YACpE,wBAAwB,GAAG,CAAC,UAAU,iBAAiB,GAAG,CAAC,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,KAAK,GAAG,CAC5F,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,UAAU,CAAC,MAA2B;IAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAa,CAAC,WAAW,CAAC,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,eAAe,CAAC,CAAW;IAClC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,gBAAgB,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IACD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;QACtE,WAAW,CAAC,IAAI,CACd,kBAAkB,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,OAAO,GAAG;YACzE,IAAI,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACjE,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;QAC3D,WAAW,CAAC,IAAI,CACd,kBAAkB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,OAAO,GAAG;YACzD,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtD,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;IACvC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAY;IACpC,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,kBAAkB,EAAE,CAAC;QACzC,yEAAyE;QACzE,2EAA2E;QAC3E,MAAM,SAAS,GAAG,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,iFAAiF;QACjF,2EAA2E;QAC3E,MAAM,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC;QAChF,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,OAAO,GAAG,SAAS,EAAE,CAAC;IAC3D,CAAC;IACD,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC7D,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,CAAC,UAAU;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,YAAY,CAAC,MAA2B;IAC/C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;gBACzC,mEAAmE;gBACnE,mEAAmE;gBACnE,uEAAuE;gBACvE,MAAM,cAAc,GAAG,CAAC,CAAC,qBAAqB,IAAI,MAAM,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBACvF,KAAK,CAAC,IAAI,CACR,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG;oBAC5D,kBAAkB,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,iBAAiB,GAAG;oBAC9E,OAAO,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAC7B,CAAC;gBACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,CAAC,wBAAwB,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,UAAU,CAAC,MAA2B;IAC7C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CACR,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG;gBAC5D,kBAAkB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,UAAU,GAAG,CAC9D,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,CAAC,sBAAsB,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,WAAW,CAAC,MAA2B;IAC9C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,CAAC,YAAY,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,eAAe,CAAC,CAAW,EAAE,GAAa;IACjD,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;IAC/D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1G,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,OAAO,CACL,UAAU,MAAM,GAAG,OAAO,UAAU,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM;QAC9D,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,GAAG,MAAM,IAAI,EAAE,IAAI,CAClF,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAA2B;IAClD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,CAAC,iBAAiB,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,cAAc,CAAC,CAAW,EAAE,EAAiB;IACpD,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,OAAO,CACL,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG;QAC5D,kBAAkB,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI;QAC9D,cAAc,UAAU,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,eAAe,CAAC,KAAK,OAAO,GAAG;QAC9F,GAAG,QAAQ,GAAG,QAAQ,IAAI,EAAE,IAAI,CACjC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CACf,MAA2B,EAC3B,KAA+B,EAC/B,SAAiB;IAEjB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,MAAM,QAAQ,GAAa,CAAC,SAAS,CAAC,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAC9C,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,aAAa,CAAC,KAAe,EAAE,IAAmB,EAAE,SAAiB;IAC5E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;IACzE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAElE,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,uBAAuB,QAAQ,MAAM,CAAC,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAC5F,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,KAAK,OAAO,UAAU,CAAC,CAAC;QAC1D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,uBAAuB,QAAQ,OAAO,CAAC,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,6DAA6D;QAC7D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,CAAC,IAAI,CAAC,gBAAgB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;YACrE,KAAK,CAAC,IAAI,CACR,eAAe,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,QAAQ,GAAG,CACnG,CAAC;YACF,KAAK,CAAC,IAAI,CACR,WAAW,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,eAAe;gBACxD,oBAAoB,WAAW,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,YAAY;gBAC5E,QAAQ,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAC3C,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,SAAS,CAAC,KAAyB;IAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,gDAAgD;IAChD,MAAM,KAAK,GAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE;YAAE,SAAS;QACnC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,YAAY,CAAC,QAA+B,EAAE,KAA+B;IACpF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,0DAA0D;IAC1D,MAAM,KAAK,GAAa,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;IACtG,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE;YAAE,SAAS;QACnC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,YAAY,CAAC,QAA+B;IACnD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,0DAA0D;IAC1D,MAAM,KAAK,GAAa,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAC9C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE;YAAE,SAAS;QACnC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAoC;IAChE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,KAAK,GAAa,CAAC,qCAAqC,CAAC,CAAC;IAChE,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QAClF,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACxB,yEAAyE;YACzE,uEAAuE;YACvE,sEAAsE;YACtE,MAAM,IAAI,KAAK,CACb,qBAAqB,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,0DAA0D,CAClG,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;YAC7D,0FAA0F;YAC1F,IAAI,CAAC,CAAC,SAAS,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBAC9D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;YACvC,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjB,4EAA4E;YAC5E,uDAAuD;YACvD,MAAM,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC;YACtE,QAAQ,CAAC,IAAI,CACX,mBAAmB,OAAO,KAAK,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC5F,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnF,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,sBAAsB,CAAC,KAAqC;IACnE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,KAAK,GAAa,CAAC,4CAA4C,CAAC,CAAC;IACvE,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,IAAI,GAAa;YACrB,WAAW,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YAChC,YAAY,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;YAClC,0CAA0C,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE;SACtE,CAAC;QACF,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjB,IAAI,CAAC,IAAI,CACP,mBAAmB,CAAC,CAAC,UAAU,oBAAoB,WAAW,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CACrF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjB,IAAI,CAAC,IAAI,CACP,mBAAmB,CAAC,CAAC,UAAU,oBAAoB,WAAW,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CACrF,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,+BAA+B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,cAAc,CAAC,UAA2C;IACjE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,KAAK,GAAa,CAAC,+CAA+C,EAAE,IAAI,CAAC,CAAC;IAEhF,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,IAAI,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC;IACpG,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,IAAI,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC;IAEpG,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACjE,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,4BAA4B,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvE,KAAK,CAAC,IAAI,CAAC,yBAAyB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,UAAU,KAAK,CAAC,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACjE,4EAA4E;QAC5E,+DAA+D;QAC/D,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACjF,KAAK,CAAC,IAAI,CAAC,4BAA4B,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACvE,KAAK,CAAC,IAAI,CAAC,yBAAyB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;YACpF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,SAAS;QACX,CAAC;QACD,iEAAiE;QACjE,uEAAuE;QACvE,qEAAqE;QACrE,oEAAoE;QACpE,mEAAmE;QACnE,8DAA8D;QAC9D,mEAAmE;QACnE,mEAAmE;QACnE,EAAE;QACF,+DAA+D;QAC/D,kEAAkE;QAClE,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjD,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,mFAAmF,CAAC,CAAC;QAChG,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACvC,KAAK,CAAC,IAAI,CACR,gGAAgG,aAAa,0CAA0C,CACxJ,CAAC;QACF,KAAK,CAAC,IAAI,CACR,kHAAkH,aAAa,wCAAwC,CACxK,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,mBAAmB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpF,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,mBAAmB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAClE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,WAAyC;IACpE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACxC,MAAM,KAAK,GAAa,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACtD,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QACxF,KAAK,CAAC,IAAI,CAAC,oBAAoB,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrF,KAAK,CAAC,IAAI,CAAC,kBAAkB,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,eAAe,CAAC,KAA+B;IACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,MAAM,KAAK,GAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAgB;IACxC,MAAM,IAAI,GACR,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;IAC5C,MAAM,IAAI,GACR,CAAC,CAAC,KAAK,KAAK,yBAAyB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;IAEpE,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC;IAC1B,MAAM,SAAS,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3E,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;QACtB,KAAK,UAAU;YACb,OAAO,GAAG,IAAI,IAAI,IAAI,OAAO,OAAO,GAAG,IAAI,EAAE,CAAC;QAChD,KAAK,QAAQ;YACX,OAAO,GAAG,IAAI,IAAI,IAAI,eAAe,UAAU,CAAC,CAAC,CAAC,YAAa,CAAC,OAAO,OAAO,GAAG,IAAI,EAAE,CAAC;QAC1F,KAAK,MAAM;YACT,OAAO,GAAG,IAAI,IAAI,IAAI,aAAa,UAAU,CAAC,CAAC,CAAC,YAAa,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,UAAW,CAAC,OAAO,OAAO,GAAG,IAAI,EAAE,CAAC;QACrH,KAAK,QAAQ,CAAC;QACd;YACE,OAAO,CACL,GAAG,IAAI,IAAI,IAAI,GAAG,SAAS,OAAO,UAAU,CAAC,CAAC,CAAC,YAAa,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,YAAa,CAAC,GAAG;gBAC/F,MAAM,OAAO,GAAG,IAAI,EAAE,CACvB,CAAC;IACN,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
/**
|
|
3
|
+
* `mj bundle` — produce a self-contained MemberJunction distribution zip for
|
|
4
|
+
* offline / air-gapped installs. Thin wrapper over the installer's bundle logic;
|
|
5
|
+
* the heavy lifting (sparse fetch + distribution assembly) lives in
|
|
6
|
+
* `@memberjunction/installer`.
|
|
7
|
+
*/
|
|
8
|
+
export default class Bundle extends Command {
|
|
9
|
+
static description: string;
|
|
10
|
+
static examples: string[];
|
|
11
|
+
static flags: {
|
|
12
|
+
out: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
13
|
+
tag: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
14
|
+
source: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
15
|
+
'with-migrations': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
16
|
+
'db-platform': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
17
|
+
verbose: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
18
|
+
};
|
|
19
|
+
run(): Promise<void>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/bundle/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAK7C;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,OAAO;IACzC,MAAM,CAAC,WAAW,SAA6F;IAE/G,MAAM,CAAC,QAAQ,WAMb;IAEF,MAAM,CAAC,KAAK;;;;;;;MAaV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAgC3B"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { Command, Flags } from '@oclif/core';
|
|
3
|
+
import { createDistributionBundle } from '@memberjunction/installer';
|
|
4
|
+
import { getOptionalConfig } from '../../config.js';
|
|
5
|
+
import { resolveGitRef } from '../../lib/migration-fetch.js';
|
|
6
|
+
/**
|
|
7
|
+
* `mj bundle` — produce a self-contained MemberJunction distribution zip for
|
|
8
|
+
* offline / air-gapped installs. Thin wrapper over the installer's bundle logic;
|
|
9
|
+
* the heavy lifting (sparse fetch + distribution assembly) lives in
|
|
10
|
+
* `@memberjunction/installer`.
|
|
11
|
+
*/
|
|
12
|
+
export default class Bundle extends Command {
|
|
13
|
+
static { this.description = 'Create a self-contained MemberJunction distribution zip for offline/air-gapped installs'; }
|
|
14
|
+
static { this.examples = [
|
|
15
|
+
'<%= config.bin %> <%= command.id %> --out ./mj-install.zip',
|
|
16
|
+
'<%= config.bin %> <%= command.id %> --tag v5.38.0 --out ./mj-install.zip',
|
|
17
|
+
'<%= config.bin %> <%= command.id %> --source . --out ./mj-install.zip',
|
|
18
|
+
'<%= config.bin %> <%= command.id %> --tag v5.38.0 --with-migrations --out ./mj-install.zip',
|
|
19
|
+
'<%= config.bin %> <%= command.id %> --with-migrations --db-platform postgresql --out ./mj-install.zip',
|
|
20
|
+
]; }
|
|
21
|
+
static { this.flags = {
|
|
22
|
+
out: Flags.string({ char: 'o', description: 'Output zip path', required: true }),
|
|
23
|
+
tag: Flags.string({ char: 't', description: 'Release tag to bundle (e.g. v5.38.0). Defaults to the latest branch tip.' }),
|
|
24
|
+
source: Flags.string({ description: 'Bundle from a local working-tree directory instead of fetching from the repo' }),
|
|
25
|
+
'with-migrations': Flags.boolean({
|
|
26
|
+
description: 'Include the migration tree(s) so an air-gapped "mj migrate" can run offline. Ships both SQL Server and PostgreSQL trees by default.',
|
|
27
|
+
}),
|
|
28
|
+
'db-platform': Flags.string({
|
|
29
|
+
description: "With --with-migrations, ship only this platform's migration tree instead of both",
|
|
30
|
+
options: ['sqlserver', 'postgresql'],
|
|
31
|
+
dependsOn: ['with-migrations'],
|
|
32
|
+
}),
|
|
33
|
+
verbose: Flags.boolean({ char: 'v', description: 'Show detailed output' }),
|
|
34
|
+
}; }
|
|
35
|
+
async run() {
|
|
36
|
+
const { flags } = await this.parse(Bundle);
|
|
37
|
+
const config = getOptionalConfig();
|
|
38
|
+
const out = path.resolve(flags.out);
|
|
39
|
+
const source = flags.source ? path.resolve(flags.source) : undefined;
|
|
40
|
+
// Local source skips fetching; otherwise resolve the ref (tag → vX.Y.Z, branch unchanged).
|
|
41
|
+
const ref = source ? undefined : resolveGitRef(flags.tag ?? config?.mjRepoBranch ?? 'main');
|
|
42
|
+
const repoUrl = config?.mjRepoUrl;
|
|
43
|
+
this.log(source ? `Bundling from local source: ${source}` : `Bundling ${ref} from ${repoUrl ?? 'the canonical MemberJunction repo'}...`);
|
|
44
|
+
// oclif validates the value against `options`, but types it as a plain string;
|
|
45
|
+
// map it to the literal union without an assertion.
|
|
46
|
+
const dbPlatform = flags['db-platform'] === 'postgresql' ? 'postgresql' : flags['db-platform'] === 'sqlserver' ? 'sqlserver' : undefined;
|
|
47
|
+
const result = await createDistributionBundle({
|
|
48
|
+
Out: out,
|
|
49
|
+
Ref: ref,
|
|
50
|
+
RepoUrl: repoUrl,
|
|
51
|
+
SourceDir: source,
|
|
52
|
+
IncludeMigrations: flags['with-migrations'],
|
|
53
|
+
MigrationPlatform: dbPlatform,
|
|
54
|
+
});
|
|
55
|
+
if (flags.verbose && result.UsedFallback) {
|
|
56
|
+
this.log('Blobless partial clone unavailable; used the full sparse-checkout fallback.');
|
|
57
|
+
}
|
|
58
|
+
const migrationsNote = flags['with-migrations'] ? `, including migrations${dbPlatform ? ` (${dbPlatform})` : ''}` : '';
|
|
59
|
+
this.log(`Created ${result.Out} (${result.EntryCount} entries${migrationsNote}).`);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/bundle/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,8 +7,37 @@ export default class Migrate extends Command {
|
|
|
7
7
|
tag: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
8
8
|
schema: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
9
|
dir: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
10
|
+
'check-connection': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
10
11
|
};
|
|
11
12
|
run(): Promise<void>;
|
|
13
|
+
/**
|
|
14
|
+
* Reads the database's current migration version, logs it, then fetches the minimal
|
|
15
|
+
* slice to reach `ref`: versioned migrations after the current version for an existing
|
|
16
|
+
* database, or baseline + tail for a fresh one.
|
|
17
|
+
*/
|
|
18
|
+
private fetchSliceForRef;
|
|
19
|
+
/**
|
|
20
|
+
* Connects to read the highest migration version already applied (from Skyway's
|
|
21
|
+
* history table). Returns null for a fresh database (no history table yet).
|
|
22
|
+
*/
|
|
23
|
+
private readInstalledVersion;
|
|
24
|
+
/** Surfaces the detected installed version so the user sees what's being upgraded from. */
|
|
25
|
+
private logInstalledVersion;
|
|
26
|
+
/**
|
|
27
|
+
* Verify the database is reachable with the configured TLS/auth settings before
|
|
28
|
+
* running migrations. On failure, prints a classified message (and an actionable
|
|
29
|
+
* suggestion such as DB_TRUST_SERVER_CERTIFICATE for a self-signed cert) and exits.
|
|
30
|
+
*/
|
|
31
|
+
private preflightConnection;
|
|
32
|
+
/**
|
|
33
|
+
* Resolves the migration source directory handed to Skyway. With a fetched slice,
|
|
34
|
+
* the temp clone root is used (Skyway scans it recursively); a `--dir` override is
|
|
35
|
+
* applied as a subpath within that clone.
|
|
36
|
+
*/
|
|
37
|
+
private resolveSourceDir;
|
|
38
|
+
private logFetchSummary;
|
|
39
|
+
/** Runs Skyway against the prepared config and reports the outcome. */
|
|
40
|
+
private executeMigration;
|
|
12
41
|
/**
|
|
13
42
|
* Prints error details captured by OnProgress callbacks.
|
|
14
43
|
* Used when Skyway's result.Details is empty (transaction-level errors).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAY7C,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,OAAO;IAC1C,MAAM,CAAC,WAAW,SAAuD;IAEzE,MAAM,CAAC,QAAQ,WAOb;IAEF,MAAM,CAAC,KAAK;;;;;;MAQV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAgC1B;;;;OAIG;YACW,gBAAgB;IAW9B;;;OAGG;YACW,oBAAoB;IAMlC,2FAA2F;IAC3F,OAAO,CAAC,mBAAmB;IAQ3B;;;;OAIG;YACW,mBAAmB;IAWjC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,eAAe;IASvB,uEAAuE;YACzD,gBAAgB;IAgG9B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CA+B5B"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
1
2
|
import { Command, Flags } from '@oclif/core';
|
|
2
3
|
import { Skyway } from '@memberjunction/skyway-core';
|
|
3
4
|
import ora from 'ora-classic';
|
|
4
5
|
import { getValidatedConfig, getSkywayConfig } from '../../config.js';
|
|
6
|
+
import { fetchMigrationSlice, resolveGitRef } from '../../lib/migration-fetch.js';
|
|
7
|
+
import { verifyDatabaseConnection } from '../../lib/db-preflight.js';
|
|
8
|
+
import { readCurrentDbVersion } from '../../lib/db-version.js';
|
|
9
|
+
/** Skyway's default history table — matches `@memberjunction/skyway-core`'s config default. */
|
|
10
|
+
const HISTORY_TABLE = 'flyway_schema_history';
|
|
5
11
|
export default class Migrate extends Command {
|
|
6
12
|
static { this.description = 'Migrate MemberJunction database to latest version'; }
|
|
7
13
|
static { this.examples = [
|
|
@@ -17,12 +23,112 @@ export default class Migrate extends Command {
|
|
|
17
23
|
tag: Flags.string({ char: 't', description: 'Version tag to use for running remote migrations' }),
|
|
18
24
|
schema: Flags.string({ char: 's', description: 'Target schema (overrides coreSchema from config)' }),
|
|
19
25
|
dir: Flags.string({ description: 'Migration source directory (overrides migrationsLocation from config)' }),
|
|
26
|
+
'check-connection': Flags.boolean({
|
|
27
|
+
description: 'Verify the database connection (including TLS) and exit without migrating',
|
|
28
|
+
}),
|
|
20
29
|
}; }
|
|
21
30
|
async run() {
|
|
22
31
|
const { flags } = await this.parse(Migrate);
|
|
23
32
|
const config = getValidatedConfig();
|
|
24
|
-
|
|
25
|
-
|
|
33
|
+
// Connection preflight: a real connect with the configured TLS/auth settings, so a
|
|
34
|
+
// self-signed cert or bad credentials fails fast with an actionable hint instead of a
|
|
35
|
+
// cryptic error mid-migration. `--check-connection` runs only this and exits.
|
|
36
|
+
await this.preflightConnection(config, flags['check-connection']);
|
|
37
|
+
if (flags['check-connection'])
|
|
38
|
+
return;
|
|
39
|
+
// For a remote ref we read the DB's current migration version, then fetch only the
|
|
40
|
+
// slice needed to reach the target — versioned migrations after the current version
|
|
41
|
+
// for an existing DB, or baseline + tail for a fresh one — into a temp dir handed to
|
|
42
|
+
// Skyway. cleanup() runs on every exit path.
|
|
43
|
+
//
|
|
44
|
+
// Explicit --tag wins; otherwise the install-pinned version (mjRepoVersion) drives
|
|
45
|
+
// the fetch so migrate stays consistent with the installed code. An explicit --dir
|
|
46
|
+
// override (without --tag) keeps using the local filesystem and skips fetching, so
|
|
47
|
+
// monorepo developers are unaffected.
|
|
48
|
+
const ref = flags.tag ?? (flags.dir ? undefined : config.mjRepoVersion);
|
|
49
|
+
const fetched = ref ? await this.fetchSliceForRef(config, ref, flags.schema) : null;
|
|
50
|
+
try {
|
|
51
|
+
const sourceDir = this.resolveSourceDir(fetched, flags.dir);
|
|
52
|
+
const skywayConfig = await getSkywayConfig(config, undefined, flags.schema, sourceDir);
|
|
53
|
+
this.logFetchSummary(flags.verbose, fetched);
|
|
54
|
+
await this.executeMigration(config, flags, skywayConfig);
|
|
55
|
+
}
|
|
56
|
+
finally {
|
|
57
|
+
if (fetched)
|
|
58
|
+
await fetched.cleanup();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Reads the database's current migration version, logs it, then fetches the minimal
|
|
63
|
+
* slice to reach `ref`: versioned migrations after the current version for an existing
|
|
64
|
+
* database, or baseline + tail for a fresh one.
|
|
65
|
+
*/
|
|
66
|
+
async fetchSliceForRef(config, ref, schema) {
|
|
67
|
+
const currentVersion = await this.readInstalledVersion(config, schema);
|
|
68
|
+
this.logInstalledVersion(currentVersion);
|
|
69
|
+
return fetchMigrationSlice({
|
|
70
|
+
repoUrl: config.mjRepoUrl,
|
|
71
|
+
ref: resolveGitRef(ref),
|
|
72
|
+
dialect: config.dbPlatform,
|
|
73
|
+
currentVersion,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Connects to read the highest migration version already applied (from Skyway's
|
|
78
|
+
* history table). Returns null for a fresh database (no history table yet).
|
|
79
|
+
*/
|
|
80
|
+
async readInstalledVersion(config, schema) {
|
|
81
|
+
// A throwaway config just to obtain a provider — the migration location is irrelevant here.
|
|
82
|
+
const probe = await getSkywayConfig(config, undefined, schema, undefined);
|
|
83
|
+
return readCurrentDbVersion(probe.Provider, probe.Migrations.DefaultSchema, HISTORY_TABLE);
|
|
84
|
+
}
|
|
85
|
+
/** Surfaces the detected installed version so the user sees what's being upgraded from. */
|
|
86
|
+
logInstalledVersion(currentVersion) {
|
|
87
|
+
if (currentVersion === null) {
|
|
88
|
+
this.log('No prior migration history detected — treating as a fresh install (baseline + later migrations).');
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
this.log(`Detected installed migration version: ${currentVersion} — fetching only migrations newer than it.`);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Verify the database is reachable with the configured TLS/auth settings before
|
|
96
|
+
* running migrations. On failure, prints a classified message (and an actionable
|
|
97
|
+
* suggestion such as DB_TRUST_SERVER_CERTIFICATE for a self-signed cert) and exits.
|
|
98
|
+
*/
|
|
99
|
+
async preflightConnection(config, checkOnly) {
|
|
100
|
+
const result = await verifyDatabaseConnection(config);
|
|
101
|
+
if (!result.Ok) {
|
|
102
|
+
const suggestion = result.Suggestion ? `\n→ ${result.Suggestion}` : '';
|
|
103
|
+
this.error(`Database connection failed: ${result.Message ?? 'unknown error'}${suggestion}`);
|
|
104
|
+
}
|
|
105
|
+
if (checkOnly) {
|
|
106
|
+
this.log(`Database connection OK (${config.dbHost}:${config.dbPort}, ${config.dbDatabase}).`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Resolves the migration source directory handed to Skyway. With a fetched slice,
|
|
111
|
+
* the temp clone root is used (Skyway scans it recursively); a `--dir` override is
|
|
112
|
+
* applied as a subpath within that clone.
|
|
113
|
+
*/
|
|
114
|
+
resolveSourceDir(fetched, dirFlag) {
|
|
115
|
+
if (!fetched)
|
|
116
|
+
return dirFlag;
|
|
117
|
+
if (!dirFlag)
|
|
118
|
+
return fetched.dir;
|
|
119
|
+
const subPath = dirFlag.replace(/^filesystem:/, '').replace(/^\.\//, '');
|
|
120
|
+
return path.join(fetched.dir, subPath);
|
|
121
|
+
}
|
|
122
|
+
logFetchSummary(verbose, fetched) {
|
|
123
|
+
if (!verbose || !fetched)
|
|
124
|
+
return;
|
|
125
|
+
this.log(fetched.usedFallback
|
|
126
|
+
? 'Fetched full migration history (partial clone unavailable)'
|
|
127
|
+
: `Fetched ${fetched.selected.length} migration file(s) for the target slice`);
|
|
128
|
+
}
|
|
129
|
+
/** Runs Skyway against the prepared config and reports the outcome. */
|
|
130
|
+
async executeMigration(config, flags, skywayConfig) {
|
|
131
|
+
const targetSchema = skywayConfig.Migrations.DefaultSchema;
|
|
26
132
|
const skyway = new Skyway(skywayConfig);
|
|
27
133
|
// Always capture progress for error diagnostics; verbose mode prints it live
|
|
28
134
|
const errorLog = [];
|
|
@@ -87,7 +193,7 @@ export default class Migrate extends Command {
|
|
|
87
193
|
this.logToStderr(`\nMigration failed: ${result.ErrorMessage ?? 'unknown error'}\n`);
|
|
88
194
|
if (result.Details.length > 0) {
|
|
89
195
|
// We have per-migration details — show them
|
|
90
|
-
const succeeded = result.Details.filter(d => d.Success);
|
|
196
|
+
const succeeded = result.Details.filter((d) => d.Success);
|
|
91
197
|
if (succeeded.length > 0) {
|
|
92
198
|
this.logToStderr(` Applied ${succeeded.length} migration(s) before failure:`);
|
|
93
199
|
for (const detail of succeeded) {
|
|
@@ -95,7 +201,7 @@ export default class Migrate extends Command {
|
|
|
95
201
|
}
|
|
96
202
|
this.logToStderr('');
|
|
97
203
|
}
|
|
98
|
-
const failed = result.Details.filter(d => !d.Success);
|
|
204
|
+
const failed = result.Details.filter((d) => !d.Success);
|
|
99
205
|
for (const detail of failed) {
|
|
100
206
|
this.logToStderr(` FAILED: ${detail.Migration.Filename}`);
|
|
101
207
|
this.logToStderr(` Script: ${detail.Migration.FilePath}`);
|
|
@@ -138,7 +244,7 @@ export default class Migrate extends Command {
|
|
|
138
244
|
this.logToStderr(` Version: ${lastMigrationStarted.Version ?? '(repeatable)'}`);
|
|
139
245
|
}
|
|
140
246
|
// Show relevant log messages from Skyway (error/failure lines)
|
|
141
|
-
const relevantLogs = errorLog.filter(msg => msg.toLowerCase().includes('fail') || msg.toLowerCase().includes('error') || msg.toLowerCase().includes('rolled back'));
|
|
247
|
+
const relevantLogs = errorLog.filter((msg) => msg.toLowerCase().includes('fail') || msg.toLowerCase().includes('error') || msg.toLowerCase().includes('rolled back'));
|
|
142
248
|
if (relevantLogs.length > 0) {
|
|
143
249
|
this.logToStderr('');
|
|
144
250
|
this.logToStderr(' Skyway log:');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAErD,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -15,6 +15,8 @@ declare const mjConfigSchema: z.ZodObject<{
|
|
|
15
15
|
coreSchema: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
16
16
|
cleanDisabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
17
17
|
mjRepoUrl: z.ZodCatch<z.ZodString>;
|
|
18
|
+
mjRepoBranch: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
19
|
+
mjRepoVersion: z.ZodOptional<z.ZodString>;
|
|
18
20
|
baselineVersion: z.ZodOptional<z.ZodString>;
|
|
19
21
|
baselineOnMigrate: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
20
22
|
outOfOrder: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
@@ -209,6 +211,8 @@ declare const mjConfigSchema: z.ZodObject<{
|
|
|
209
211
|
coreSchema?: string;
|
|
210
212
|
cleanDisabled?: boolean;
|
|
211
213
|
mjRepoUrl?: string;
|
|
214
|
+
mjRepoBranch?: string;
|
|
215
|
+
mjRepoVersion?: string;
|
|
212
216
|
baselineVersion?: string;
|
|
213
217
|
baselineOnMigrate?: boolean;
|
|
214
218
|
outOfOrder?: boolean;
|
|
@@ -269,6 +273,8 @@ declare const mjConfigSchema: z.ZodObject<{
|
|
|
269
273
|
coreSchema?: string;
|
|
270
274
|
cleanDisabled?: boolean;
|
|
271
275
|
mjRepoUrl?: unknown;
|
|
276
|
+
mjRepoBranch?: string;
|
|
277
|
+
mjRepoVersion?: string;
|
|
272
278
|
baselineVersion?: string;
|
|
273
279
|
baselineOnMigrate?: boolean;
|
|
274
280
|
outOfOrder?: boolean;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAqC,MAAM,6BAA6B,CAAC;AAInG,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAqC,MAAM,6BAA6B,CAAC;AAInG,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAoGtD,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAtChB,8DAA8D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAahE,iFAAiF;;QAEjF,sFAAsF;;QAEtF,6FAA6F;;QAE7F,+FAA+F;;QAE/F,yEAAyE;;;;;;;;;;;QAKzE,8DAA8D;;QAE9D,4FAA4F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwC5F,CAAC;AAkCH,eAAO,MAAM,MAAM,EAAqB,QAAQ,GAAG,SAAS,CAAC;AAE7D;;;GAGG;AACH,eAAO,MAAM,kBAAkB,QAAO,QAyBrC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,QAAO,OAAO,CAAC,QAAQ,CAAC,GAAG,SAGxD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,QAAO,QAAQ,GAAG,SAU3C,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,GAC1B,UAAU,QAAQ,EAClB,MAAM,MAAM,EACZ,SAAS,MAAM,EACf,MAAM,MAAM,KACX,OAAO,CAAC,YAAY,CA6FtB,CAAC"}
|
package/dist/config.js
CHANGED
|
@@ -27,6 +27,7 @@ const DEFAULT_CLI_CONFIG = {
|
|
|
27
27
|
baselineOnMigrate: true,
|
|
28
28
|
transactionMode: 'per-migration',
|
|
29
29
|
mjRepoUrl: MJ_REPO_URL,
|
|
30
|
+
mjRepoBranch: 'main',
|
|
30
31
|
migrationsLocation: 'filesystem:./migrations',
|
|
31
32
|
};
|
|
32
33
|
const explorer = cosmiconfigSync('mj', { searchStrategy: 'global' });
|
|
@@ -106,6 +107,13 @@ const mjConfigSchema = z.object({
|
|
|
106
107
|
coreSchema: z.string().optional().default('__mj'),
|
|
107
108
|
cleanDisabled: z.boolean().optional().default(true),
|
|
108
109
|
mjRepoUrl: z.string().url().catch(MJ_REPO_URL),
|
|
110
|
+
// Default branch fetched when no explicit tag is given. `main` is the published-code
|
|
111
|
+
// branch; `next` is integration-only and never a default migrate/install target.
|
|
112
|
+
mjRepoBranch: z.string().optional().default('main'),
|
|
113
|
+
// Concrete release tag pinned by `mj install` so a bare `mj migrate` (no --tag)
|
|
114
|
+
// targets the same version as the installed code. Absent for monorepo developers,
|
|
115
|
+
// who fall back to the local `migrationsLocation`.
|
|
116
|
+
mjRepoVersion: z.string().optional(),
|
|
109
117
|
baselineVersion: z.string().optional(),
|
|
110
118
|
baselineOnMigrate: z.boolean().optional().default(true),
|
|
111
119
|
outOfOrder: z.boolean().optional().default(false),
|
|
@@ -131,6 +139,11 @@ const mjConfigSchemaOptional = z.object({
|
|
|
131
139
|
coreSchema: z.string().optional().default('__mj'),
|
|
132
140
|
cleanDisabled: z.boolean().optional().default(true),
|
|
133
141
|
mjRepoUrl: z.string().url().catch(MJ_REPO_URL),
|
|
142
|
+
mjRepoBranch: z.string().optional().default('main'),
|
|
143
|
+
// Concrete release tag pinned by `mj install` so a bare `mj migrate` (no --tag)
|
|
144
|
+
// targets the same version as the installed code. Absent for monorepo developers,
|
|
145
|
+
// who fall back to the local `migrationsLocation`.
|
|
146
|
+
mjRepoVersion: z.string().optional(),
|
|
134
147
|
baselineVersion: z.string().optional(),
|
|
135
148
|
baselineOnMigrate: z.boolean().optional().default(true),
|
|
136
149
|
outOfOrder: z.boolean().optional().default(false),
|