@contember/schema-migrations 1.2.0-alpha.18 → 1.2.0-alpha.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/src/Migration.d.ts +2 -0
  2. package/dist/src/Migration.d.ts.map +1 -1
  3. package/dist/src/Migration.js +2 -2
  4. package/dist/src/Migration.js.map +1 -1
  5. package/dist/src/MigrationCreator.d.ts +3 -1
  6. package/dist/src/MigrationCreator.d.ts.map +1 -1
  7. package/dist/src/MigrationCreator.js +2 -2
  8. package/dist/src/MigrationCreator.js.map +1 -1
  9. package/dist/src/MigrationFilesManager.d.ts.map +1 -1
  10. package/dist/src/MigrationFilesManager.js +10 -19
  11. package/dist/src/MigrationFilesManager.js.map +1 -1
  12. package/dist/src/MigrationsResolver.d.ts.map +1 -1
  13. package/dist/src/MigrationsResolver.js +2 -0
  14. package/dist/src/MigrationsResolver.js.map +1 -1
  15. package/dist/src/SchemaDiffer.d.ts +6 -1
  16. package/dist/src/SchemaDiffer.d.ts.map +1 -1
  17. package/dist/src/SchemaDiffer.js +10 -6
  18. package/dist/src/SchemaDiffer.js.map +1 -1
  19. package/dist/src/modifications/ModificationHandlerFactory.d.ts.map +1 -1
  20. package/dist/src/modifications/ModificationHandlerFactory.js +2 -0
  21. package/dist/src/modifications/ModificationHandlerFactory.js.map +1 -1
  22. package/dist/src/modifications/settings/UpdateSettingsModification.d.ts +28 -0
  23. package/dist/src/modifications/settings/UpdateSettingsModification.d.ts.map +1 -0
  24. package/dist/src/modifications/settings/UpdateSettingsModification.js +64 -0
  25. package/dist/src/modifications/settings/UpdateSettingsModification.js.map +1 -0
  26. package/dist/src/modifications/settings/index.d.ts +2 -0
  27. package/dist/src/modifications/settings/index.d.ts.map +1 -0
  28. package/dist/src/modifications/settings/index.js +18 -0
  29. package/dist/src/modifications/settings/index.js.map +1 -0
  30. package/dist/src/modifications/utils/schemaUpdateUtils.d.ts.map +1 -1
  31. package/dist/src/modifications/utils/schemaUpdateUtils.js +8 -1
  32. package/dist/src/modifications/utils/schemaUpdateUtils.js.map +1 -1
  33. package/dist/src/tsconfig.tsbuildinfo +1 -1
  34. package/dist/tests/cases/integration/createView.test.js +80 -0
  35. package/dist/tests/cases/integration/createView.test.js.map +1 -1
  36. package/dist/tests/cases/integration/removeField.test.js +72 -0
  37. package/dist/tests/cases/integration/removeField.test.js.map +1 -1
  38. package/dist/tests/scripts/checkCreateConsistentMigrations.js +5 -4
  39. package/dist/tests/scripts/checkCreateConsistentMigrations.js.map +1 -1
  40. package/dist/tests/src/tests.d.ts.map +1 -1
  41. package/dist/tests/src/tests.js +15 -5
  42. package/dist/tests/src/tests.js.map +1 -1
  43. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  44. package/package.json +6 -6
  45. package/src/Migration.ts +3 -1
  46. package/src/MigrationCreator.ts +2 -1
  47. package/src/MigrationFilesManager.ts +10 -20
  48. package/src/MigrationsResolver.ts +1 -0
  49. package/src/SchemaDiffer.ts +15 -6
  50. package/src/modifications/ModificationHandlerFactory.ts +2 -0
  51. package/src/modifications/settings/UpdateSettingsModification.ts +87 -0
  52. package/src/modifications/settings/index.ts +1 -0
  53. package/src/modifications/utils/schemaUpdateUtils.ts +8 -1
  54. package/src/tsconfig.json +2 -2
  55. package/tests/cases/integration/createView.test.ts +70 -0
  56. package/tests/cases/integration/removeField.test.ts +58 -0
  57. package/tests/scripts/checkCreateConsistentMigrations.ts +3 -2
  58. package/tests/src/tests.ts +16 -7
@@ -1,7 +1,9 @@
1
+ import { SchemaValidatorSkippedErrors } from '@contember/schema-utils';
1
2
  export interface MigrationInfo {
2
3
  readonly version: string;
3
4
  readonly name: string;
4
5
  readonly formatVersion: number;
6
+ readonly skippedErrors?: SchemaValidatorSkippedErrors[];
5
7
  }
6
8
  interface Migration extends MigrationInfo {
7
9
  readonly modifications: readonly Migration.Modification[];
@@ -1 +1 @@
1
- {"version":3,"file":"Migration.d.ts","sourceRoot":"","sources":["../../src/Migration.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;CAC9B;AAED,UAAU,SAAU,SAAQ,aAAa;IACxC,QAAQ,CAAC,aAAa,EAAE,SAAS,SAAS,CAAC,YAAY,EAAE,CAAA;CACzD;AAED,kBAAU,SAAS,CAAC;IACnB,KAAY,YAAY,CAAC,IAAI,GAAG;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,IAAI;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CAC3F;AAED,eAAO,MAAM,0BAA0B,cAAe,SAAS,KAAG,MAMjE,CAAA;AACD,OAAO,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"Migration.d.ts","sourceRoot":"","sources":["../../src/Migration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAA;AAGtE,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,4BAA4B,EAAE,CAAA;CACvD;AAED,UAAU,SAAU,SAAQ,aAAa;IACxC,QAAQ,CAAC,aAAa,EAAE,SAAS,SAAS,CAAC,YAAY,EAAE,CAAA;CACzD;AAED,kBAAU,SAAS,CAAC;IACnB,KAAY,YAAY,CAAC,IAAI,GAAG;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,IAAI;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CAC3F;AAED,eAAO,MAAM,0BAA0B,cAAe,SAAS,KAAG,MAMjE,CAAA;AACD,OAAO,EAAE,SAAS,EAAE,CAAA"}
@@ -4,10 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.calculateMigrationChecksum = void 0;
7
- const crypto_1 = __importDefault(require("crypto"));
7
+ const node_crypto_1 = __importDefault(require("node:crypto"));
8
8
  const calculateMigrationChecksum = (migration) => {
9
9
  const canonicalMigration = JSON.stringify(migration.modifications);
10
- return crypto_1.default //
10
+ return node_crypto_1.default //
11
11
  .createHash('md5')
12
12
  .update(canonicalMigration)
13
13
  .digest('hex');
@@ -1 +1 @@
1
- {"version":3,"file":"Migration.js","sourceRoot":"","sources":["../../src/Migration.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA2B;AAgBpB,MAAM,0BAA0B,GAAG,CAAC,SAAoB,EAAU,EAAE;IAC1E,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;IAClE,OAAO,gBAAM,CAAC,EAAE;SACd,UAAU,CAAC,KAAK,CAAC;SACjB,MAAM,CAAC,kBAAkB,CAAC;SAC1B,MAAM,CAAC,KAAK,CAAC,CAAA;AAChB,CAAC,CAAA;AANY,QAAA,0BAA0B,8BAMtC"}
1
+ {"version":3,"file":"Migration.js","sourceRoot":"","sources":["../../src/Migration.ts"],"names":[],"mappings":";;;;;;AACA,8DAAgC;AAiBzB,MAAM,0BAA0B,GAAG,CAAC,SAAoB,EAAU,EAAE;IAC1E,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;IAClE,OAAO,qBAAM,CAAC,EAAE;SACd,UAAU,CAAC,KAAK,CAAC;SACjB,MAAM,CAAC,kBAAkB,CAAC;SAC1B,MAAM,CAAC,KAAK,CAAC,CAAA;AAChB,CAAC,CAAA;AANY,QAAA,0BAA0B,8BAMtC"}
@@ -6,7 +6,9 @@ export declare class MigrationCreator {
6
6
  private readonly migrationFilesManager;
7
7
  private readonly schemaDiffer;
8
8
  constructor(migrationFilesManager: MigrationFilesManager, schemaDiffer: SchemaDiffer);
9
- prepareMigration(initialSchema: Schema, newSchema: Schema, migrationName: string): Promise<{
9
+ prepareMigration(initialSchema: Schema, newSchema: Schema, migrationName: string, { skipInitialSchemaValidation }?: {
10
+ skipInitialSchemaValidation?: boolean;
11
+ }): Promise<{
10
12
  migration: Migration;
11
13
  initialSchema: Schema;
12
14
  } | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"MigrationCreator.d.ts","sourceRoot":"","sources":["../../src/MigrationCreator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGvC,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,qBAAqB,EAAE,qBAAqB,EAC5C,YAAY,EAAE,YAAY;IAGtC,gBAAgB,CACrB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,GACnB,OAAO,CAAC;QAAE,SAAS,EAAE,SAAS,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAa5D,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAMpD,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,OAAO,CAAC,eAAe;WAKT,aAAa,CAAC,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,SAAS,GAAG,MAAM;CAGhF"}
1
+ {"version":3,"file":"MigrationCreator.d.ts","sourceRoot":"","sources":["../../src/MigrationCreator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGvC,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,qBAAqB,EAAE,qBAAqB,EAC5C,YAAY,EAAE,YAAY;IAGtC,gBAAgB,CACrB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,EAAE,2BAAmC,EAAE,GAAE;QAAE,2BAA2B,CAAC,EAAE,OAAO,CAAA;KAAO,GACrF,OAAO,CAAC;QAAE,SAAS,EAAE,SAAS,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAa5D,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IAMpD,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,OAAO,CAAC,eAAe;WAKT,aAAa,CAAC,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,SAAS,GAAG,MAAM;CAGhF"}
@@ -8,9 +8,9 @@ class MigrationCreator {
8
8
  this.migrationFilesManager = migrationFilesManager;
9
9
  this.schemaDiffer = schemaDiffer;
10
10
  }
11
- async prepareMigration(initialSchema, newSchema, migrationName) {
11
+ async prepareMigration(initialSchema, newSchema, migrationName, { skipInitialSchemaValidation = false } = {}) {
12
12
  await this.migrationFilesManager.createDirIfNotExist();
13
- const modifications = this.schemaDiffer.diffSchemas(initialSchema, newSchema);
13
+ const modifications = this.schemaDiffer.diffSchemas(initialSchema, newSchema, { skipInitialSchemaValidation });
14
14
  if (modifications.length === 0) {
15
15
  return null;
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MigrationCreator.js","sourceRoot":"","sources":["../../src/MigrationCreator.ts"],"names":[],"mappings":";;;AAGA,+EAAqE;AAErE,qEAAiE;AAEjE,MAAa,gBAAgB;IAC5B,YACkB,qBAA4C,EAC5C,YAA0B;QAD1B,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,iBAAY,GAAZ,YAAY,CAAc;IACzC,CAAC;IAEJ,KAAK,CAAC,gBAAgB,CACrB,aAAqB,EACrB,SAAiB,EACjB,aAAqB;QAErB,MAAM,IAAI,CAAC,qBAAqB,CAAC,mBAAmB,EAAE,CAAA;QAEtD,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,aAAa,EAAE,SAAS,CAAC,CAAA;QAC7E,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAA;SACX;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,aAAa,CAAC,CAAA;QAEpE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAoB;QACvC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QAC1D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QACtF,OAAO,QAAQ,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAY;QACjC,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAClD,CAAC;IAEO,eAAe,CAAC,aAAuC,EAAE,IAAY;QAC5E,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,+CAAsB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QACtE,OAAO,EAAE,aAAa,EAAE,qCAAc,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IACjF,CAAC;IAEM,MAAM,CAAC,aAAa,CAAC,EAAE,aAAa,EAAE,aAAa,EAAa;QACtE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,IAAI,CAAA;IAChF,CAAC;CACD;AAzCD,4CAyCC"}
1
+ {"version":3,"file":"MigrationCreator.js","sourceRoot":"","sources":["../../src/MigrationCreator.ts"],"names":[],"mappings":";;;AAGA,+EAAqE;AAErE,qEAAiE;AAEjE,MAAa,gBAAgB;IAC5B,YACkB,qBAA4C,EAC5C,YAA0B;QAD1B,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,iBAAY,GAAZ,YAAY,CAAc;IACzC,CAAC;IAEJ,KAAK,CAAC,gBAAgB,CACrB,aAAqB,EACrB,SAAiB,EACjB,aAAqB,EACrB,EAAE,2BAA2B,GAAG,KAAK,KAAgD,EAAE;QAEvF,MAAM,IAAI,CAAC,qBAAqB,CAAC,mBAAmB,EAAE,CAAA;QAEtD,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,aAAa,EAAE,SAAS,EAAE,EAAE,2BAA2B,EAAE,CAAC,CAAA;QAC9G,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAA;SACX;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,aAAa,CAAC,CAAA;QAEpE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAoB;QACvC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QAC1D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QACtF,OAAO,QAAQ,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAY;QACjC,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAClD,CAAC;IAEO,eAAe,CAAC,aAAuC,EAAE,IAAY;QAC5E,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,+CAAsB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QACtE,OAAO,EAAE,aAAa,EAAE,qCAAc,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IACjF,CAAC;IAEM,MAAM,CAAC,aAAa,CAAC,EAAE,aAAa,EAAE,aAAa,EAAa;QACtE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,IAAI,CAAA;IAChF,CAAC;CACD;AA1CD,4CA0CC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MigrationFilesManager.d.ts","sourceRoot":"","sources":["../../src/MigrationFilesManager.ts"],"names":[],"mappings":"AAcA,cAAM,qBAAqB;aACE,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM;IAEhC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAM1D,UAAU,CAAC,IAAI,EAAE,MAAM;IAKvB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAIzC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAUpC,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAa7B,UAAU;IAWX,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAC;WAclG,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,qBAAqB;IAKrG,OAAO,CAAC,UAAU;CAKlB;AAED,kBAAU,qBAAqB,CAAC;IAC/B,KAAY,aAAa,GAAG;QAC3B,QAAQ,EAAE,MAAM,CAAA;QAChB,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;KACf,CAAA;CACD;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAA"}
1
+ {"version":3,"file":"MigrationFilesManager.d.ts","sourceRoot":"","sources":["../../src/MigrationFilesManager.ts"],"names":[],"mappings":"AAIA,cAAM,qBAAqB;aACE,SAAS,EAAE,MAAM;gBAAjB,SAAS,EAAE,MAAM;IAEhC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAM1D,UAAU,CAAC,IAAI,EAAE,MAAM;IAKvB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAIzC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAUpC,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAa7B,UAAU;IAWX,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAC;WAclG,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,qBAAqB;IAKrG,OAAO,CAAC,UAAU;CAKlB;AAED,kBAAU,qBAAqB,CAAC;IAC/B,KAAY,aAAa,GAAG;QAC3B,QAAQ,EAAE,MAAM,CAAA;QAChB,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;KACf,CAAA;CACD;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAA"}
@@ -25,36 +25,27 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.MigrationFilesManager = void 0;
27
27
  const MigrationVersionHelper_1 = require("./MigrationVersionHelper");
28
- const fs = __importStar(require("fs"));
29
- const util_1 = require("util");
30
- const path = __importStar(require("path"));
31
- const readFile = (0, util_1.promisify)(fs.readFile);
32
- const fsWrite = (0, util_1.promisify)(fs.writeFile);
33
- const fsRemove = (0, util_1.promisify)(fs.unlink);
34
- const fsRealpath = (0, util_1.promisify)(fs.realpath);
35
- const mkdir = (0, util_1.promisify)(fs.mkdir);
36
- const lstatFile = (0, util_1.promisify)(fs.lstat);
37
- const readDir = (0, util_1.promisify)(fs.readdir);
38
- const mvFile = (0, util_1.promisify)(fs.rename);
28
+ const fs = __importStar(require("node:fs/promises"));
29
+ const path = __importStar(require("node:path"));
39
30
  class MigrationFilesManager {
40
31
  constructor(directory) {
41
32
  this.directory = directory;
42
33
  }
43
34
  async createFile(content, name) {
44
35
  const path = this.formatPath(name);
45
- await fsWrite(path, content, { encoding: 'utf8' });
46
- return await fsRealpath(path);
36
+ await fs.writeFile(path, content, { encoding: 'utf8' });
37
+ return await fs.realpath(path);
47
38
  }
48
39
  async removeFile(name) {
49
40
  const path = this.formatPath(name);
50
- await fsRemove(path);
41
+ await fs.unlink(path);
51
42
  }
52
43
  async moveFile(oldName, newName) {
53
- await mvFile(this.formatPath(oldName), this.formatPath(newName));
44
+ await fs.rename(this.formatPath(oldName), this.formatPath(newName));
54
45
  }
55
46
  async createDirIfNotExist() {
56
47
  try {
57
- await mkdir(this.directory);
48
+ await fs.mkdir(this.directory);
58
49
  }
59
50
  catch (e) {
60
51
  if (!(e instanceof Error) || !('code' in e) || e.code !== 'EEXIST') {
@@ -67,13 +58,13 @@ class MigrationFilesManager {
67
58
  const filteredFiles = await Promise.all(files
68
59
  .filter(file => file.endsWith(`.json`))
69
60
  .filter(async (file) => {
70
- return (await lstatFile(`${this.directory}/${file}`)).isFile();
61
+ return (await fs.lstat(`${this.directory}/${file}`)).isFile();
71
62
  }));
72
63
  return filteredFiles.sort();
73
64
  }
74
65
  async tryReadDir() {
75
66
  try {
76
- return await readDir(this.directory);
67
+ return await fs.readdir(this.directory);
77
68
  }
78
69
  catch (e) {
79
70
  if (e instanceof Error && 'code' in e && e.code === 'ENOENT') {
@@ -90,7 +81,7 @@ class MigrationFilesManager {
90
81
  const filesWithContent = files.map(async (filename) => ({
91
82
  filename: filename,
92
83
  path: `${this.directory}/${filename}`,
93
- content: await readFile(`${this.directory}/${filename}`, { encoding: 'utf8' }),
84
+ content: await fs.readFile(`${this.directory}/${filename}`, { encoding: 'utf8' }),
94
85
  }));
95
86
  return await Promise.all(filesWithContent);
96
87
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MigrationFilesManager.js","sourceRoot":"","sources":["../../src/MigrationFilesManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MigrationFilesManager.js","sourceRoot":"","sources":["../../src/MigrationFilesManager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MigrationsResolver.d.ts","sourceRoot":"","sources":["../../src/MigrationsResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAG/D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,qBAAa,kBAAkB;IAClB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAArB,qBAAqB,EAAE,qBAAqB;IAEzE,IAAW,SAAS,IAAI,MAAM,CAE7B;IAEY,aAAa,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;CAWlD"}
1
+ {"version":3,"file":"MigrationsResolver.d.ts","sourceRoot":"","sources":["../../src/MigrationsResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAG/D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,qBAAa,kBAAkB;IAClB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAArB,qBAAqB,EAAE,qBAAqB;IAEzE,IAAW,SAAS,IAAI,MAAM,CAE7B;IAEY,aAAa,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;CAYlD"}
@@ -12,12 +12,14 @@ class MigrationsResolver {
12
12
  }
13
13
  async getMigrations() {
14
14
  return (await this.migrationFilesManager.readFiles()).map(({ filename, content }) => {
15
+ var _a;
15
16
  const parsed = JSON.parse(content);
16
17
  return {
17
18
  version: MigrationVersionHelper_1.MigrationVersionHelper.extractVersion(filename),
18
19
  name: MigrationVersionHelper_1.MigrationVersionHelper.extractName(filename),
19
20
  formatVersion: parsed.formatVersion || ModificationVersions_1.VERSION_INITIAL,
20
21
  modifications: parsed.modifications,
22
+ skippedErrors: (_a = parsed.skippedErrors) !== null && _a !== void 0 ? _a : [],
21
23
  };
22
24
  });
23
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MigrationsResolver.js","sourceRoot":"","sources":["../../src/MigrationsResolver.ts"],"names":[],"mappings":";;;AACA,+EAAsE;AACtE,qEAAiE;AAGjE,MAAa,kBAAkB;IAC9B,YAA6B,qBAA4C;QAA5C,0BAAqB,GAArB,qBAAqB,CAAuB;IAAG,CAAC;IAE7E,IAAW,SAAS;QACnB,OAAO,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAA;IAC5C,CAAC;IAEM,KAAK,CAAC,aAAa;QACzB,OAAO,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;YACnF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAClC,OAAO;gBACN,OAAO,EAAE,+CAAsB,CAAC,cAAc,CAAC,QAAQ,CAAC;gBACxD,IAAI,EAAE,+CAAsB,CAAC,WAAW,CAAC,QAAQ,CAAC;gBAClD,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,sCAAe;gBACtD,aAAa,EAAE,MAAM,CAAC,aAAa;aACnC,CAAA;QACF,CAAC,CAAC,CAAA;IACH,CAAC;CACD;AAlBD,gDAkBC"}
1
+ {"version":3,"file":"MigrationsResolver.js","sourceRoot":"","sources":["../../src/MigrationsResolver.ts"],"names":[],"mappings":";;;AACA,+EAAsE;AACtE,qEAAiE;AAGjE,MAAa,kBAAkB;IAC9B,YAA6B,qBAA4C;QAA5C,0BAAqB,GAArB,qBAAqB,CAAuB;IAAG,CAAC;IAE7E,IAAW,SAAS;QACnB,OAAO,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAA;IAC5C,CAAC;IAEM,KAAK,CAAC,aAAa;QACzB,OAAO,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;;YACnF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAClC,OAAO;gBACN,OAAO,EAAE,+CAAsB,CAAC,cAAc,CAAC,QAAQ,CAAC;gBACxD,IAAI,EAAE,+CAAsB,CAAC,WAAW,CAAC,QAAQ,CAAC;gBAClD,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,sCAAe;gBACtD,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,aAAa,EAAE,MAAA,MAAM,CAAC,aAAa,mCAAI,EAAE;aACzC,CAAA;QACF,CAAC,CAAC,CAAA;IACH,CAAC;CACD;AAnBD,gDAmBC"}
@@ -2,13 +2,18 @@ import { Schema } from '@contember/schema';
2
2
  import { ValidationError } from '@contember/schema-utils';
3
3
  import { SchemaMigrator } from './SchemaMigrator';
4
4
  import { Migration } from './Migration';
5
+ declare type DiffOptions = {
6
+ skipRecreateValidation?: boolean;
7
+ skipInitialSchemaValidation?: boolean;
8
+ };
5
9
  export declare class SchemaDiffer {
6
10
  private readonly schemaMigrator;
7
11
  constructor(schemaMigrator: SchemaMigrator);
8
- diffSchemas(originalSchema: Schema, updatedSchema: Schema, checkRecreate?: boolean): Migration.Modification[];
12
+ diffSchemas(originalSchema: Schema, updatedSchema: Schema, { skipInitialSchemaValidation, skipRecreateValidation, }?: DiffOptions): Migration.Modification[];
9
13
  }
10
14
  export declare class InvalidSchemaException extends Error {
11
15
  readonly validationErrors: ValidationError[];
12
16
  constructor(message: string, validationErrors: ValidationError[]);
13
17
  }
18
+ export {};
14
19
  //# sourceMappingURL=SchemaDiffer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaDiffer.d.ts","sourceRoot":"","sources":["../../src/SchemaDiffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAMN,eAAe,EACf,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAqCvC,qBAAa,YAAY;IACZ,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc;IAE3D,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,GAAE,OAAc,GAAG,SAAS,CAAC,YAAY,EAAE;CAuEnH;AAED,qBAAa,sBAAuB,SAAQ,KAAK;aACH,gBAAgB,EAAE,eAAe,EAAE;gBAApE,OAAO,EAAE,MAAM,EAAkB,gBAAgB,EAAE,eAAe,EAAE;CAGhF"}
1
+ {"version":3,"file":"SchemaDiffer.d.ts","sourceRoot":"","sources":["../../src/SchemaDiffer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAMN,eAAe,EACf,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAsCvC,aAAK,WAAW,GAAG;IAAE,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAAC,2BAA2B,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAE9F,qBAAa,YAAY;IACZ,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAAd,cAAc,EAAE,cAAc;IAE3D,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,EAC1D,2BAAmC,EACnC,sBAA8B,GAC9B,GAAE,WAAgB,GAAG,SAAS,CAAC,YAAY,EAAE;CA0E9C;AAED,qBAAa,sBAAuB,SAAQ,KAAK;aACH,gBAAgB,EAAE,eAAe,EAAE;gBAApE,OAAO,EAAE,MAAM,EAAkB,gBAAgB,EAAE,eAAe,EAAE;CAGhF"}
@@ -6,20 +6,24 @@ const exceptions_1 = require("./exceptions");
6
6
  const modifications_1 = require("./modifications");
7
7
  const differs_1 = require("./modifications/differs");
8
8
  const indexes_1 = require("./modifications/indexes");
9
+ const settings_1 = require("./modifications/settings");
9
10
  class SchemaDiffer {
10
11
  constructor(schemaMigrator) {
11
12
  this.schemaMigrator = schemaMigrator;
12
13
  }
13
- diffSchemas(originalSchema, updatedSchema, checkRecreate = true) {
14
- const originalErrors = schema_utils_1.SchemaValidator.validate(originalSchema);
15
- if (originalErrors.length > 0) {
16
- throw new InvalidSchemaException('original schema is not valid', originalErrors);
14
+ diffSchemas(originalSchema, updatedSchema, { skipInitialSchemaValidation = false, skipRecreateValidation = false, } = {}) {
15
+ if (!skipInitialSchemaValidation) {
16
+ const originalErrors = schema_utils_1.SchemaValidator.validate(originalSchema);
17
+ if (originalErrors.length > 0) {
18
+ throw new InvalidSchemaException('original schema is not valid', originalErrors);
19
+ }
17
20
  }
18
21
  const updatedErrors = schema_utils_1.SchemaValidator.validate(updatedSchema);
19
22
  if (updatedErrors.length > 0) {
20
23
  throw new InvalidSchemaException('updated schema is not valid', updatedErrors);
21
24
  }
22
25
  const differs = [
26
+ new settings_1.UpdateSettingsDiffer(),
23
27
  new modifications_1.ConvertOneToManyRelationDiffer(),
24
28
  new modifications_1.ConvertOneHasManyToManyHasManyRelationDiffer(),
25
29
  new modifications_1.RemoveUniqueConstraintDiffer(),
@@ -45,8 +49,8 @@ class SchemaDiffer {
45
49
  new differs_1.RemoveChangedFieldDiffer(it => (0, schema_utils_1.isRelation)(it) && (0, schema_utils_1.isInverseRelation)(it)),
46
50
  new modifications_1.CreateEntityDiffer(),
47
51
  new modifications_1.CreateColumnDiffer(),
48
- new modifications_1.CreateViewDiffer(),
49
52
  new modifications_1.CreateRelationDiffer(),
53
+ new modifications_1.CreateViewDiffer(),
50
54
  new modifications_1.CreateRelationInverseSideDiffer(),
51
55
  new modifications_1.CreateUniqueConstraintDiffer(),
52
56
  new indexes_1.CreateIndexDiffer(),
@@ -61,7 +65,7 @@ class SchemaDiffer {
61
65
  appliedDiffsSchema = this.schemaMigrator.applyModifications(appliedDiffsSchema, differDiffs, modifications_1.VERSION_LATEST);
62
66
  diffs.push(...differDiffs);
63
67
  }
64
- if (checkRecreate) {
68
+ if (!skipRecreateValidation) {
65
69
  const { meta, ...appliedDiffsSchema2 } = appliedDiffsSchema;
66
70
  const errors = (0, schema_utils_1.deepCompare)(updatedSchema, appliedDiffsSchema2, []);
67
71
  if (errors.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaDiffer.js","sourceRoot":"","sources":["../../src/SchemaDiffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemaDiffer.js","sourceRoot":"","sources":["../../src/SchemaDiffer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ModificationHandlerFactory.d.ts","sourceRoot":"","sources":["../../../src/modifications/ModificationHandlerFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AA8BzG,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAGnD,cAAM,0BAA0B;IACnB,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAExE,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,0BAA0B,GAAG,mBAAmB,CAAC,CAAC,CAAC;CAM5H;AAED,kBAAU,0BAA0B,CAAC;IACpC,KAAK,UAAU,CAAC,CAAC,IAAI;QAAE,CAAC,gBAAgB,EAAE,MAAM,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;KAAE,CAAA;IAuChF,MAAM,CAAC,MAAM,iBAAiB,EAAE,UAAU,CAAC,GAAG,CAAuD,CAAA;;CACrG;AAED,OAAO,EAAE,0BAA0B,EAAE,CAAA"}
1
+ {"version":3,"file":"ModificationHandlerFactory.d.ts","sourceRoot":"","sources":["../../../src/modifications/ModificationHandlerFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AA8BzG,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAInD,cAAM,0BAA0B;IACnB,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAExE,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,0BAA0B,GAAG,mBAAmB,CAAC,CAAC,CAAC;CAM5H;AAED,kBAAU,0BAA0B,CAAC;IACpC,KAAK,UAAU,CAAC,CAAC,IAAI;QAAE,CAAC,gBAAgB,EAAE,MAAM,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;KAAE,CAAA;IAwChF,MAAM,CAAC,MAAM,iBAAiB,EAAE,UAAU,CAAC,GAAG,CAAuD,CAAA;;CACrG;AAED,OAAO,EAAE,0BAA0B,EAAE,CAAA"}
@@ -11,6 +11,7 @@ const fields_1 = require("./fields");
11
11
  const relations_1 = require("./relations");
12
12
  const validation_1 = require("./validation");
13
13
  const indexes_1 = require("./indexes");
14
+ const settings_1 = require("./settings");
14
15
  class ModificationHandlerFactory {
15
16
  constructor(map) {
16
17
  this.map = map;
@@ -25,6 +26,7 @@ class ModificationHandlerFactory {
25
26
  exports.ModificationHandlerFactory = ModificationHandlerFactory;
26
27
  (function (ModificationHandlerFactory) {
27
28
  const handlers = [
29
+ settings_1.updateSettingsModification,
28
30
  acl_1.updateAclSchemaModification,
29
31
  acl_1.patchAclSchemaModification,
30
32
  columns_1.createColumnModification,
@@ -1 +1 @@
1
- {"version":3,"file":"ModificationHandlerFactory.js","sourceRoot":"","sources":["../../../src/modifications/ModificationHandlerFactory.ts"],"names":[],"mappings":";;;AAEA,+BAA+E;AAC/E,uCAAsH;AACtH,+CAAsG;AACtG,yCAKmB;AACnB,8EAA0E;AAC1E,mCAIgB;AAChB,qCAA+E;AAC/E,2CAUoB;AACpB,6CAAoG;AACpG,uCAA4E;AAI5E,MAAM,0BAA0B;IAC/B,YAA6B,GAAkD;QAAlD,QAAG,GAAH,GAAG,CAA+C;IAAG,CAAC;IAE5E,MAAM,CAAI,IAAY,EAAE,IAAO,EAAE,MAAsB,EAAE,OAAmC;QAClG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAA;SAC7D;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3D,CAAC;CACD;AA6CQ,gEAA0B;AA3CnC,WAAU,0BAA0B;IAGnC,MAAM,QAAQ,GAAG;QAChB,iCAA2B;QAC3B,gCAA0B;QAC1B,kCAAwB;QACxB,4CAAkC;QAClC,sCAA4B;QAC5B,gDAAkC;QAClC,gDAAkC;QAClC,iCAAuB;QACvB,iCAAuB;QACvB,mCAAwB;QACxB,mCAAwB;QACxB,uCAA4B;QAC5B,4CAAiC;QACjC,+CAAsB;QACtB,iCAAsB;QACtB,8BAAsB;QACtB,8BAAsB;QACtB,8BAAsB;QACtB,gCAAuB;QACvB,oCAA2B;QAC3B,iDAAqC;QACrC,sCAA0B;QAC1B,8CAAkC;QAClC,6CAAiC;QACjC,2CAA+B;QAC/B,4CAAgC;QAChC,2CAA+B;QAC/B,4CAAgC;QAChC,+CAAkC;QAClC,8CAAiC;QACjC,gDAAoC;QACpC,qCAA0B;QAC1B,8CAAkC;QAClC,8DAAkD;KAClD,CAAA;IAEY,4CAAiB,GAAoB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;AACtG,CAAC,EAzCS,0BAA0B,KAA1B,0BAA0B,QAyCnC;AAEQ,gEAA0B"}
1
+ {"version":3,"file":"ModificationHandlerFactory.js","sourceRoot":"","sources":["../../../src/modifications/ModificationHandlerFactory.ts"],"names":[],"mappings":";;;AAEA,+BAA+E;AAC/E,uCAAsH;AACtH,+CAAsG;AACtG,yCAKmB;AACnB,8EAA0E;AAC1E,mCAIgB;AAChB,qCAA+E;AAC/E,2CAUoB;AACpB,6CAAoG;AACpG,uCAA4E;AAE5E,yCAAuD;AAGvD,MAAM,0BAA0B;IAC/B,YAA6B,GAAkD;QAAlD,QAAG,GAAH,GAAG,CAA+C;IAAG,CAAC;IAE5E,MAAM,CAAI,IAAY,EAAE,IAAO,EAAE,MAAsB,EAAE,OAAmC;QAClG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAA;SAC7D;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3D,CAAC;CACD;AA8CQ,gEAA0B;AA5CnC,WAAU,0BAA0B;IAGnC,MAAM,QAAQ,GAAG;QAChB,qCAA0B;QAC1B,iCAA2B;QAC3B,gCAA0B;QAC1B,kCAAwB;QACxB,4CAAkC;QAClC,sCAA4B;QAC5B,gDAAkC;QAClC,gDAAkC;QAClC,iCAAuB;QACvB,iCAAuB;QACvB,mCAAwB;QACxB,mCAAwB;QACxB,uCAA4B;QAC5B,4CAAiC;QACjC,+CAAsB;QACtB,iCAAsB;QACtB,8BAAsB;QACtB,8BAAsB;QACtB,8BAAsB;QACtB,gCAAuB;QACvB,oCAA2B;QAC3B,iDAAqC;QACrC,sCAA0B;QAC1B,8CAAkC;QAClC,6CAAiC;QACjC,2CAA+B;QAC/B,4CAAgC;QAChC,2CAA+B;QAC/B,4CAAgC;QAChC,+CAAkC;QAClC,8CAAiC;QACjC,gDAAoC;QACpC,qCAA0B;QAC1B,8CAAkC;QAClC,8DAAkD;KAClD,CAAA;IAEY,4CAAiB,GAAoB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;AACtG,CAAC,EA1CS,0BAA0B,KAA1B,0BAA0B,QA0CnC;AAEQ,gEAA0B"}
@@ -0,0 +1,28 @@
1
+ import { MigrationBuilder } from '@contember/database-migrations';
2
+ import { Schema, Settings } from '@contember/schema';
3
+ import { SchemaUpdater } from '../utils/schemaUpdateUtils';
4
+ import { Differ, ModificationHandler } from '../ModificationHandler';
5
+ export declare class UpdateSettingsModificationHandler implements ModificationHandler<UpdateSettingsModificationData> {
6
+ private readonly data;
7
+ constructor(data: UpdateSettingsModificationData);
8
+ createSql(builder: MigrationBuilder): void;
9
+ getSchemaUpdater(): SchemaUpdater;
10
+ describe(): {
11
+ message: string;
12
+ };
13
+ }
14
+ export declare const updateSettingsModification: import("../ModificationHandler").ModificationType<"updateSettings", UpdateSettingsModificationData>;
15
+ export declare class UpdateSettingsDiffer implements Differ {
16
+ createDiff(originalSchema: Schema, updatedSchema: Schema): import("../../Migration").Migration.Modification<UpdateSettingsModificationData>[];
17
+ }
18
+ export interface SetSettingsModificationData<K extends keyof Settings.Schema = keyof Settings.Schema> {
19
+ op: 'set';
20
+ key: K;
21
+ value: Settings.Schema[K];
22
+ }
23
+ export interface UnsetSettingsModificationData<K extends keyof Settings.Schema = keyof Settings.Schema> {
24
+ op: 'unset';
25
+ key: K;
26
+ }
27
+ export declare type UpdateSettingsModificationData = SetSettingsModificationData | UnsetSettingsModificationData;
28
+ //# sourceMappingURL=UpdateSettingsModification.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdateSettingsModification.d.ts","sourceRoot":"","sources":["../../../../src/modifications/settings/UpdateSettingsModification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAA0B,MAAM,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAG5F,qBAAa,iCAAkC,YAAW,mBAAmB,CAAC,8BAA8B,CAAC;IAE3G,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,8BAA8B;IAI/C,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAG1C,gBAAgB,IAAI,aAAa;IAiBxC,QAAQ;;;CAIR;AAED,eAAO,MAAM,0BAA0B,qGAGrC,CAAA;AAEF,qBAAa,oBAAqB,YAAW,MAAM;IAClD,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;CAuBxD;AAID,MAAM,WAAW,2BAA2B,CAAC,CAAC,SAAS,MAAM,QAAQ,CAAC,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM;IACnG,EAAE,EAAE,KAAK,CAAA;IACT,GAAG,EAAE,CAAC,CAAA;IACN,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;CACzB;AAGD,MAAM,WAAW,6BAA6B,CAAC,CAAC,SAAS,MAAM,QAAQ,CAAC,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM;IACrG,EAAE,EAAE,OAAO,CAAA;IACX,GAAG,EAAE,CAAC,CAAA;CACN;AAGD,oBAAY,8BAA8B,GACvC,2BAA2B,GAC3B,6BAA6B,CAAA"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.UpdateSettingsDiffer = exports.updateSettingsModification = exports.UpdateSettingsModificationHandler = void 0;
7
+ const ModificationHandler_1 = require("../ModificationHandler");
8
+ const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
9
+ class UpdateSettingsModificationHandler {
10
+ constructor(data) {
11
+ this.data = data;
12
+ }
13
+ createSql(builder) {
14
+ }
15
+ getSchemaUpdater() {
16
+ return ({ schema }) => {
17
+ const { [this.data.key]: _, ...settings } = schema.settings;
18
+ if (this.data.op === 'unset') {
19
+ return {
20
+ ...schema,
21
+ settings,
22
+ };
23
+ }
24
+ return {
25
+ ...schema,
26
+ settings: { ...settings, [this.data.key]: this.data.value },
27
+ };
28
+ };
29
+ }
30
+ describe() {
31
+ return { message: `Change settings of ${this.data.key}` };
32
+ }
33
+ }
34
+ exports.UpdateSettingsModificationHandler = UpdateSettingsModificationHandler;
35
+ exports.updateSettingsModification = (0, ModificationHandler_1.createModificationType)({
36
+ id: 'updateSettings',
37
+ handler: UpdateSettingsModificationHandler,
38
+ });
39
+ class UpdateSettingsDiffer {
40
+ createDiff(originalSchema, updatedSchema) {
41
+ const allKeys = Array.from(new Set([
42
+ ...Object.keys(originalSchema.settings),
43
+ ...Object.keys(updatedSchema.settings),
44
+ ]));
45
+ return allKeys
46
+ .filter(key => !(0, fast_deep_equal_1.default)(originalSchema.settings[key], updatedSchema.settings[key]))
47
+ .map(key => {
48
+ const value = updatedSchema.settings[key];
49
+ if (value === undefined) {
50
+ return exports.updateSettingsModification.createModification({
51
+ op: 'unset',
52
+ key,
53
+ });
54
+ }
55
+ return exports.updateSettingsModification.createModification({
56
+ op: 'set',
57
+ key,
58
+ value,
59
+ });
60
+ });
61
+ }
62
+ }
63
+ exports.UpdateSettingsDiffer = UpdateSettingsDiffer;
64
+ //# sourceMappingURL=UpdateSettingsModification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpdateSettingsModification.js","sourceRoot":"","sources":["../../../../src/modifications/settings/UpdateSettingsModification.ts"],"names":[],"mappings":";;;;;;AAGA,gEAA4F;AAC5F,sEAAuC;AAEvC,MAAa,iCAAiC;IAC7C,YACkB,IAAoC;QAApC,SAAI,GAAJ,IAAI,CAAgC;IAEtD,CAAC;IAEM,SAAS,CAAC,OAAyB;IAC1C,CAAC;IAEM,gBAAgB;QACtB,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;YACrB,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAA;YAC3D,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,OAAO,EAAE;gBAC7B,OAAO;oBACN,GAAG,MAAM;oBACT,QAAQ;iBACR,CAAA;aACD;YACD,OAAO;gBACN,GAAG,MAAM;gBACT,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;aAC3D,CAAA;QACF,CAAC,CAAA;IACF,CAAC;IAGD,QAAQ;QACP,OAAO,EAAE,OAAO,EAAE,sBAAsB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAA;IAC1D,CAAC;CAED;AA9BD,8EA8BC;AAEY,QAAA,0BAA0B,GAAG,IAAA,4CAAsB,EAAC;IAChE,EAAE,EAAE,gBAAgB;IACpB,OAAO,EAAE,iCAAiC;CAC1C,CAAC,CAAA;AAEF,MAAa,oBAAoB;IAChC,UAAU,CAAC,cAAsB,EAAE,aAAqB;QACvD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;YAClC,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;YACvC,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;SACT,CAAC,CAAC,CAAA;QAEhC,OAAO,OAAO;aACZ,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAA,yBAAS,EAAC,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;aACpF,GAAG,CAAC,GAAG,CAAC,EAAE;YACV,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;YACzC,IAAI,KAAK,KAAK,SAAS,EAAE;gBACxB,OAAO,kCAA0B,CAAC,kBAAkB,CAAC;oBACpD,EAAE,EAAE,OAAO;oBACX,GAAG;iBACH,CAAC,CAAA;aACF;YACD,OAAO,kCAA0B,CAAC,kBAAkB,CAAC;gBACpD,EAAE,EAAE,KAAK;gBACT,GAAG;gBACH,KAAK;aACL,CAAC,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;CACD;AAxBD,oDAwBC"}
@@ -0,0 +1,2 @@
1
+ export * from './UpdateSettingsModification';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modifications/settings/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./UpdateSettingsModification"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modifications/settings/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA4C"}
@@ -1 +1 @@
1
- {"version":3,"file":"schemaUpdateUtils.d.ts","sourceRoot":"","sources":["../../../../src/modifications/utils/schemaUpdateUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schemaUpdateUtils.d.ts","sourceRoot":"","sources":["../../../../src/modifications/utils/schemaUpdateUtils.ts"],"names":[],"mappings":"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"}
@@ -161,7 +161,14 @@ const removeField = (entityName, fieldName, version) => {
161
161
  ? (0, exports.removeField)(field.target, field.inversedBy, version)
162
162
  : undefined, (0, exports.updateModel)((0, exports.updateEntity)(entity.name, ({ entity }) => {
163
163
  const { [field.name]: removed, ...fields } = entity.fields;
164
- return { ...entity, fields };
164
+ const indexes = Object.entries(entity.indexes).filter(([, index]) => !index.fields.includes(field.name));
165
+ const unique = Object.entries(entity.unique).filter(([, index]) => !index.fields.includes(field.name));
166
+ return {
167
+ ...entity,
168
+ fields,
169
+ indexes: Object.fromEntries(indexes),
170
+ unique: Object.fromEntries(unique),
171
+ };
165
172
  }), (0, schema_utils_1.isRelation)(field) && (0, schema_utils_1.isInverseRelation)(field)
166
173
  ? (0, exports.updateEntity)(field.target, (0, exports.updateField)(field.ownedBy, ({ field: { inversedBy, ...field } }) => field))
167
174
  : undefined))({ schema });
@@ -1 +1 @@
1
- {"version":3,"file":"schemaUpdateUtils.js","sourceRoot":"","sources":["../../../../src/modifications/utils/schemaUpdateUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schemaUpdateUtils.js","sourceRoot":"","sources":["../../../../src/modifications/utils/schemaUpdateUtils.ts"],"names":[],"mappings":"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"}