@memberjunction/open-app-engine 6.1.4 → 6.2.0-edge.1
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/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/install/entity-teardown.d.ts +3 -0
- package/dist/install/entity-teardown.d.ts.map +1 -1
- package/dist/install/entity-teardown.js +14 -5
- package/dist/install/entity-teardown.js.map +1 -1
- package/dist/install/install-orchestrator.d.ts.map +1 -1
- package/dist/install/install-orchestrator.js +74 -16
- package/dist/install/install-orchestrator.js.map +1 -1
- package/dist/install/migration-application-ids.d.ts +1 -0
- package/dist/install/migration-application-ids.d.ts.map +1 -1
- package/dist/install/migration-application-ids.js +4 -1
- package/dist/install/migration-application-ids.js.map +1 -1
- package/dist/install/migration-runner.js +3 -3
- package/dist/install/open-app-metadata-refresh.d.ts +11 -0
- package/dist/install/open-app-metadata-refresh.d.ts.map +1 -1
- package/dist/install/open-app-metadata-refresh.js +30 -12
- package/dist/install/open-app-metadata-refresh.js.map +1 -1
- package/dist/install/package-manager.d.ts +2 -0
- package/dist/install/package-manager.d.ts.map +1 -1
- package/dist/install/package-manager.js +11 -5
- package/dist/install/package-manager.js.map +1 -1
- package/dist/install/schema-manager.d.ts +7 -1
- package/dist/install/schema-manager.d.ts.map +1 -1
- package/dist/install/schema-manager.js +52 -7
- package/dist/install/schema-manager.js.map +1 -1
- package/dist/manifest/manifest-loader.js +2 -2
- package/dist/manifest/manifest-schema.d.ts +396 -1
- package/dist/manifest/manifest-schema.d.ts.map +1 -1
- package/dist/manifest/manifest-schema.js +2 -1
- package/dist/manifest/manifest-schema.js.map +1 -1
- package/dist/types/open-app-types.d.ts.map +1 -1
- package/package.json +5 -5
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { mjAppManifestSchema } from './manifest/manifest-schema.js';
|
|
1
|
+
export { MjAppManifestSchema, mjAppManifestSchema } from './manifest/manifest-schema.js';
|
|
2
2
|
export type { MJAppManifest, ManifestPackageEntry, PackageRole } from './manifest/manifest-schema.js';
|
|
3
3
|
export { LoadManifestFromFile, ParseAndValidateManifest, ValidateManifestObject } from './manifest/manifest-loader.js';
|
|
4
4
|
export type { ManifestLoadResult } from './manifest/manifest-loader.js';
|
|
@@ -12,12 +12,12 @@ export type { VersionCheckResult } from './dependency/version-checker.js';
|
|
|
12
12
|
export { FetchManifestFromGitHub, ListGitHubReleases, ListGitHubTags, ValidateGitHubTag, DownloadMigrations, GetLatestVersion, ParseGitHubUrl, GitHubAccessError, IsPrereleaseVersion, ClearGitHubTagCache } from './github/github-client.js';
|
|
13
13
|
export type { GitHubClientOptions, GitHubRelease, ManifestFetchResult, MigrationDownloadResult } from './github/github-client.js';
|
|
14
14
|
export { CreateAppSchema, DropAppSchema, SchemaExists, ValidateSchemaName, EscapeSqlString } from './install/schema-manager.js';
|
|
15
|
-
export type { SchemaOperationResult } from './install/schema-manager.js';
|
|
15
|
+
export type { SchemaOperationResult, SchemaNameValidation, SchemaNameRule } from './install/schema-manager.js';
|
|
16
16
|
export { RunAppMigrations } from './install/migration-runner.js';
|
|
17
|
-
export { buildFieldProcExcludedSchemaNames, buildOpenAppRefreshMetadataSQL, buildOtherEntitySchemasQuery, executeOpenAppMetadataRefresh, isOpenAppSchema, normalizeSchema, } from './install/open-app-metadata-refresh.js';
|
|
17
|
+
export { BuildFieldProcExcludedSchemaNames, buildFieldProcExcludedSchemaNames, BuildOpenAppRefreshMetadataSQL, buildOpenAppRefreshMetadataSQL, BuildOtherEntitySchemasQuery, buildOtherEntitySchemasQuery, ExecuteOpenAppMetadataRefresh, executeOpenAppMetadataRefresh, IsOpenAppSchema, isOpenAppSchema, NormalizeSchema, normalizeSchema, } from './install/open-app-metadata-refresh.js';
|
|
18
18
|
export type { RefreshDatabaseConfig } from './install/open-app-metadata-refresh.js';
|
|
19
19
|
export type { MigrationRunOptions, MigrationRunResult, FlywayDatabaseConfig, SkywayDatabaseConfig } from './install/migration-runner.js';
|
|
20
|
-
export { AddAppPackages, RemoveAppPackages, RunNpmInstall, RunPackageInstall, BumpPrefixedDependencies, detectPackageManager, hasPnpmCatalog } from './install/package-manager.js';
|
|
20
|
+
export { AddAppPackages, RemoveAppPackages, RunNpmInstall, RunPackageInstall, BumpPrefixedDependencies, DetectPackageManager, detectPackageManager, HasPnpmCatalog, hasPnpmCatalog } from './install/package-manager.js';
|
|
21
21
|
export type { PackageManagerOptions, PackageOperationResult, PackageManagerType, VersionStrategy, WorkspaceTarget } from './install/package-manager.js';
|
|
22
22
|
export { AddServerDynamicPackages, AddClientDynamicPackages, RemoveServerDynamicPackages, PruneDynamicPackagesNotInManifest, ToggleServerDynamicPackages } from './install/config-manager.js';
|
|
23
23
|
export type { DynamicPackageEntry, ConfigOperationResult } from './install/config-manager.js';
|
|
@@ -26,7 +26,7 @@ export type { AngularConfigResult } from './install/angular-config-manager.js';
|
|
|
26
26
|
export { RecordAppInstallation, UpdateAppRecord, SetAppStatus, RecordInstallHistoryEntry, RecordAppDependencies, DeleteAppDependencies, FindInstalledApp, ListInstalledApps, FindDependentApps } from './install/history-recorder.js';
|
|
27
27
|
export { InstallApp, UpgradeApp, RemoveApp, DisableApp, EnableApp, RemoveAppEntityMetadata } from './install/install-orchestrator.js';
|
|
28
28
|
export type { OrchestratorContext } from './install/install-orchestrator.js';
|
|
29
|
-
export { buildEntityTeardownPlan, EnumerateMjEntityFkGraph, ReportTeardownPlan, ExecTeardownBatch, RunFkGraphTeardown } from './install/entity-teardown.js';
|
|
29
|
+
export { BuildEntityTeardownPlan, buildEntityTeardownPlan, EnumerateMjEntityFkGraph, ReportTeardownPlan, ExecTeardownBatch, RunFkGraphTeardown } from './install/entity-teardown.js';
|
|
30
30
|
export type { FkEdge, TeardownPlanItem, TeardownPlan } from './install/entity-teardown.js';
|
|
31
|
-
export { extractApplicationIds } from './install/migration-application-ids.js';
|
|
31
|
+
export { ExtractApplicationIds, extractApplicationIds } from './install/migration-application-ids.js';
|
|
32
32
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { mjAppManifestSchema } from './manifest/manifest-schema.js';
|
|
1
|
+
export { MjAppManifestSchema, mjAppManifestSchema } from './manifest/manifest-schema.js';
|
|
2
2
|
export { LoadManifestFromFile, ParseAndValidateManifest, ValidateManifestObject } from './manifest/manifest-loader.js';
|
|
3
3
|
export { ResolveDependencies } from './dependency/dependency-resolver.js';
|
|
4
4
|
export { ResolveDependencyGraph } from './dependency/dependency-graph-builder.js';
|
|
@@ -6,12 +6,12 @@ export { CheckMJVersionCompatibility, CheckDependencyVersionCompatibility, Coerc
|
|
|
6
6
|
export { FetchManifestFromGitHub, ListGitHubReleases, ListGitHubTags, ValidateGitHubTag, DownloadMigrations, GetLatestVersion, ParseGitHubUrl, GitHubAccessError, IsPrereleaseVersion, ClearGitHubTagCache } from './github/github-client.js';
|
|
7
7
|
export { CreateAppSchema, DropAppSchema, SchemaExists, ValidateSchemaName, EscapeSqlString } from './install/schema-manager.js';
|
|
8
8
|
export { RunAppMigrations } from './install/migration-runner.js';
|
|
9
|
-
export { buildFieldProcExcludedSchemaNames, buildOpenAppRefreshMetadataSQL, buildOtherEntitySchemasQuery, executeOpenAppMetadataRefresh, isOpenAppSchema, normalizeSchema, } from './install/open-app-metadata-refresh.js';
|
|
10
|
-
export { AddAppPackages, RemoveAppPackages, RunNpmInstall, RunPackageInstall, BumpPrefixedDependencies, detectPackageManager, hasPnpmCatalog } from './install/package-manager.js';
|
|
9
|
+
export { BuildFieldProcExcludedSchemaNames, buildFieldProcExcludedSchemaNames, BuildOpenAppRefreshMetadataSQL, buildOpenAppRefreshMetadataSQL, BuildOtherEntitySchemasQuery, buildOtherEntitySchemasQuery, ExecuteOpenAppMetadataRefresh, executeOpenAppMetadataRefresh, IsOpenAppSchema, isOpenAppSchema, NormalizeSchema, normalizeSchema, } from './install/open-app-metadata-refresh.js';
|
|
10
|
+
export { AddAppPackages, RemoveAppPackages, RunNpmInstall, RunPackageInstall, BumpPrefixedDependencies, DetectPackageManager, detectPackageManager, HasPnpmCatalog, hasPnpmCatalog } from './install/package-manager.js';
|
|
11
11
|
export { AddServerDynamicPackages, AddClientDynamicPackages, RemoveServerDynamicPackages, PruneDynamicPackagesNotInManifest, ToggleServerDynamicPackages } from './install/config-manager.js';
|
|
12
12
|
export { AngularConfigManager, DerivePrebundleExcludePatterns } from './install/angular-config-manager.js';
|
|
13
13
|
export { RecordAppInstallation, UpdateAppRecord, SetAppStatus, RecordInstallHistoryEntry, RecordAppDependencies, DeleteAppDependencies, FindInstalledApp, ListInstalledApps, FindDependentApps } from './install/history-recorder.js';
|
|
14
14
|
export { InstallApp, UpgradeApp, RemoveApp, DisableApp, EnableApp, RemoveAppEntityMetadata } from './install/install-orchestrator.js';
|
|
15
|
-
export { buildEntityTeardownPlan, EnumerateMjEntityFkGraph, ReportTeardownPlan, ExecTeardownBatch, RunFkGraphTeardown } from './install/entity-teardown.js';
|
|
16
|
-
export { extractApplicationIds } from './install/migration-application-ids.js';
|
|
15
|
+
export { BuildEntityTeardownPlan, buildEntityTeardownPlan, EnumerateMjEntityFkGraph, ReportTeardownPlan, ExecTeardownBatch, RunFkGraphTeardown } from './install/entity-teardown.js';
|
|
16
|
+
export { ExtractApplicationIds, extractApplicationIds } from './install/migration-application-ids.js';
|
|
17
17
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzF,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAoBvH,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAO1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAOlF,OAAO,EACH,2BAA2B,EAC3B,mCAAmC,EACnC,mBAAmB,EACnB,cAAc,EACjB,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EACH,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACtB,MAAM,2BAA2B,CAAC;AASnC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGhI,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EACH,iCAAiC,EAAE,iCAAiC,EACpE,8BAA8B,EAAE,8BAA8B,EAC9D,4BAA4B,EAAE,4BAA4B,EAC1D,6BAA6B,EAAE,6BAA6B,EAC5D,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe,GACnC,MAAM,wCAAwC,CAAC;AAIhD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAGzN,OAAO,EACH,wBAAwB,EACxB,wBAAwB,EACxB,2BAA2B,EAC3B,iCAAiC,EACjC,2BAA2B,EAC9B,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AAG3G,OAAO,EACH,qBAAqB,EACrB,eAAe,EACf,YAAY,EACZ,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACpB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EACH,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,uBAAuB,EAC1B,MAAM,mCAAmC,CAAC;AAI3C,OAAO,EACH,uBAAuB,EAAE,uBAAuB,EAChD,wBAAwB,EACxB,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EACrB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC"}
|
|
@@ -19,10 +19,13 @@ export interface TeardownPlan {
|
|
|
19
19
|
plan: TeardownPlanItem[];
|
|
20
20
|
warnings: string[];
|
|
21
21
|
}
|
|
22
|
+
export declare function BuildEntityTeardownPlan(fkEdges: FkEdge[], dialect: SQLDialect, mjSchema: string, rootDoomedPredicate: string): TeardownPlan;
|
|
22
23
|
export declare function buildEntityTeardownPlan(fkEdges: FkEdge[], dialect: SQLDialect, mjSchema: string, rootDoomedPredicate: string): TeardownPlan;
|
|
24
|
+
export declare function BuildRootDoomedPredicate(dialect: SQLDialect, appSchema: string): string;
|
|
23
25
|
export declare function buildRootDoomedPredicate(dialect: SQLDialect, appSchema: string): string;
|
|
24
26
|
export declare function EnumerateMjEntityFkGraph(dbProvider: DatabaseProviderBase, mjSchema: string, callbacks?: AppInstallCallbacks): Promise<FkEdge[]>;
|
|
25
27
|
export declare function ReportTeardownPlan(dbProvider: DatabaseProviderBase, dialect: SQLDialect, mjSchema: string, plan: TeardownPlanItem[], callbacks?: AppInstallCallbacks): Promise<void>;
|
|
28
|
+
export declare function BuildTeardownBatchScript(dialect: SQLDialect, statements: string[]): string;
|
|
26
29
|
export declare function buildTeardownBatchScript(dialect: SQLDialect, statements: string[]): string;
|
|
27
30
|
export declare function ExecTeardownBatch(dbProvider: DatabaseProviderBase, dialect: SQLDialect, statements: string[]): Promise<void>;
|
|
28
31
|
export declare function RunFkGraphTeardown(dbProvider: DatabaseProviderBase, mjSchema: string, rootDoomedPredicate: string, callbacks?: AppInstallCallbacks): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-teardown.d.ts","sourceRoot":"","sources":["../../src/install/entity-teardown.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAOtE,MAAM,WAAW,MAAM;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;CACxB;AAMD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,QAAQ,GAAG,SAAS,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAMD,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAiBD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,MAAM,EAChB,mBAAmB,EAAE,MAAM,GAC1B,YAAY,CAgDd;AAOD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAQvF;AAgBD,wBAAsB,wBAAwB,CAC5C,UAAU,EAAE,oBAAoB,EAChC,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,mBAAmB,GAC9B,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBnB;AAQD,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,oBAAoB,EAChC,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,gBAAgB,EAAE,EACxB,SAAS,CAAC,EAAE,mBAAmB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAqBf;AAUD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,CAE1F;AAMD,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,oBAAoB,EAChC,OAAO,EAAE,UAAU,EACnB,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,IAAI,CAAC,CAIf;AAcD,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,oBAAoB,EAChC,QAAQ,EAAE,MAAM,EAChB,mBAAmB,EAAE,MAAM,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAOf"}
|
|
1
|
+
{"version":3,"file":"entity-teardown.d.ts","sourceRoot":"","sources":["../../src/install/entity-teardown.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAOtE,MAAM,WAAW,MAAM;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;CACxB;AAMD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,QAAQ,GAAG,SAAS,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAMD,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAiBD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,MAAM,EAChB,mBAAmB,EAAE,MAAM,GAC1B,YAAY,CAgDd;AAGD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,MAAM,EAChB,mBAAmB,EAAE,MAAM,GAC1B,YAAY,CAEd;AAOD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAQvF;AAGD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEvF;AAgBD,wBAAsB,wBAAwB,CAC5C,UAAU,EAAE,oBAAoB,EAChC,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,mBAAmB,GAC9B,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBnB;AAQD,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,oBAAoB,EAChC,OAAO,EAAE,UAAU,EACnB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,gBAAgB,EAAE,EACxB,SAAS,CAAC,EAAE,mBAAmB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAqBf;AAUD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,CAE1F;AAGD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,CAE1F;AAMD,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,oBAAoB,EAChC,OAAO,EAAE,UAAU,EACnB,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,IAAI,CAAC,CAIf;AAcD,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,oBAAoB,EAChC,QAAQ,EAAE,MAAM,EAChB,mBAAmB,EAAE,MAAM,EAC3B,SAAS,CAAC,EAAE,mBAAmB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAOf"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export function
|
|
1
|
+
export function BuildEntityTeardownPlan(fkEdges, dialect, mjSchema, rootDoomedPredicate) {
|
|
2
2
|
const byParent = new Map();
|
|
3
3
|
for (const e of fkEdges) {
|
|
4
4
|
if (!byParent.has(e.parentTable))
|
|
@@ -53,9 +53,15 @@ export function buildEntityTeardownPlan(fkEdges, dialect, mjSchema, rootDoomedPr
|
|
|
53
53
|
push(`DELETE FROM ${q('SchemaInfo')} WHERE ${rootDoomedPredicate}`, 'delete', 'SchemaInfo', null, rootDoomedPredicate);
|
|
54
54
|
return { statements, plan, warnings };
|
|
55
55
|
}
|
|
56
|
-
export function
|
|
56
|
+
export function buildEntityTeardownPlan(fkEdges, dialect, mjSchema, rootDoomedPredicate) {
|
|
57
|
+
return BuildEntityTeardownPlan(fkEdges, dialect, mjSchema, rootDoomedPredicate);
|
|
58
|
+
}
|
|
59
|
+
export function BuildRootDoomedPredicate(dialect, appSchema) {
|
|
57
60
|
return `LOWER(${dialect.QuoteIdentifier('SchemaName')}) = LOWER(${dialect.QuoteStringLiteral(appSchema)})`;
|
|
58
61
|
}
|
|
62
|
+
export function buildRootDoomedPredicate(dialect, appSchema) {
|
|
63
|
+
return BuildRootDoomedPredicate(dialect, appSchema);
|
|
64
|
+
}
|
|
59
65
|
export async function EnumerateMjEntityFkGraph(dbProvider, mjSchema, callbacks) {
|
|
60
66
|
const sql = dbProvider.Dialect.ForeignKeyGraphSQL(mjSchema);
|
|
61
67
|
const rows = await dbProvider.ExecuteSQL(sql);
|
|
@@ -97,11 +103,14 @@ export async function ReportTeardownPlan(dbProvider, dialect, mjSchema, plan, ca
|
|
|
97
103
|
}
|
|
98
104
|
callbacks?.OnProgress?.('Metadata', `Teardown plan: ${lines.length ? lines.join('; ') : 'nothing to clear'} (total ${total} row(s))`);
|
|
99
105
|
}
|
|
100
|
-
export function
|
|
106
|
+
export function BuildTeardownBatchScript(dialect, statements) {
|
|
101
107
|
return dialect.AtomicBatchScript(statements);
|
|
102
108
|
}
|
|
109
|
+
export function buildTeardownBatchScript(dialect, statements) {
|
|
110
|
+
return BuildTeardownBatchScript(dialect, statements);
|
|
111
|
+
}
|
|
103
112
|
export async function ExecTeardownBatch(dbProvider, dialect, statements) {
|
|
104
|
-
const script =
|
|
113
|
+
const script = BuildTeardownBatchScript(dialect, statements);
|
|
105
114
|
if (!script)
|
|
106
115
|
return;
|
|
107
116
|
await dbProvider.ExecuteSQL(script);
|
|
@@ -109,7 +118,7 @@ export async function ExecTeardownBatch(dbProvider, dialect, statements) {
|
|
|
109
118
|
export async function RunFkGraphTeardown(dbProvider, mjSchema, rootDoomedPredicate, callbacks) {
|
|
110
119
|
const dialect = dbProvider.Dialect;
|
|
111
120
|
const fkEdges = await EnumerateMjEntityFkGraph(dbProvider, mjSchema, callbacks);
|
|
112
|
-
const planned =
|
|
121
|
+
const planned = BuildEntityTeardownPlan(fkEdges, dialect, mjSchema, rootDoomedPredicate);
|
|
113
122
|
for (const w of planned.warnings)
|
|
114
123
|
callbacks?.OnWarn?.('Metadata', `Teardown: ${w}`);
|
|
115
124
|
await ReportTeardownPlan(dbProvider, dialect, mjSchema, planned.plan, callbacks);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-teardown.js","sourceRoot":"","sources":["../../src/install/entity-teardown.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entity-teardown.js","sourceRoot":"","sources":["../../src/install/entity-teardown.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-orchestrator.d.ts","sourceRoot":"","sources":["../../src/install/install-orchestrator.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,kBAAkB,EAAmF,MAAM,4BAA4B,CAAC;AAO1N,OAAO,EAAwI,KAAK,mBAAmB,EAAgC,MAAM,4BAA4B,CAAC;AAK1O,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAkF,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI3L,OAAO,EAAc,oBAAoB,EAAqB,MAAM,sBAAsB,CAAC;AAC3F,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAwB,MAAM,sBAAsB,CAAC;AA+G9F,MAAM,WAAW,mBAAmB;IAElC,WAAW,EAAE,QAAQ,CAAC;IAEtB,gBAAgB,EAAE,oBAAoB,CAAC;IAEvC,cAAc,EAAE,oBAAoB,CAAC;IAErC,aAAa,EAAE,mBAAmB,CAAC;IAEnC,QAAQ,EAAE,MAAM,CAAC;IAEjB,SAAS,EAAE,MAAM,CAAC;IAElB,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAEhC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,cAAc,CAAC,EAAE,kBAAkB,CAAC;IAEpC,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;IAEtC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChD;AAkCD,wBAAsB,UAAU,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,
|
|
1
|
+
{"version":3,"file":"install-orchestrator.d.ts","sourceRoot":"","sources":["../../src/install/install-orchestrator.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,kBAAkB,EAAmF,MAAM,4BAA4B,CAAC;AAO1N,OAAO,EAAwI,KAAK,mBAAmB,EAAgC,MAAM,4BAA4B,CAAC;AAK1O,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAkF,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI3L,OAAO,EAAc,oBAAoB,EAAqB,MAAM,sBAAsB,CAAC;AAC3F,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAwB,MAAM,sBAAsB,CAAC;AA+G9F,MAAM,WAAW,mBAAmB;IAElC,WAAW,EAAE,QAAQ,CAAC;IAEtB,gBAAgB,EAAE,oBAAoB,CAAC;IAEvC,cAAc,EAAE,oBAAoB,CAAC;IAErC,aAAa,EAAE,mBAAmB,CAAC;IAEnC,QAAQ,EAAE,MAAM,CAAC;IAEjB,SAAS,EAAE,MAAM,CAAC;IAElB,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAEhC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,cAAc,CAAC,EAAE,kBAAkB,CAAC;IAEpC,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;IAEtC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChD;AAkCD,wBAAsB,UAAU,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAwUnH;AAiKD,wBAAsB,UAAU,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAqWnH;AA4DD,wBAAsB,SAAS,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAwSjH;AASD,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA4B3G;AAKD,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA0B1G;AAmKD,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA+BtD;AAmkBD,UAAU,8BAA8B;IAEtC,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IAExC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;CACnC;AA2BD,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,QAAQ,EACrB,SAAS,CAAC,EAAE,mBAAmB,EAC/B,QAAQ,CAAC,EAAE,iBAAiB,EAC5B,OAAO,CAAC,EAAE,8BAA8B,GACvC,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAoJtD"}
|
|
@@ -7,9 +7,9 @@ import { CheckMJVersionCompatibility, IsValidUpgrade } from '../dependency/versi
|
|
|
7
7
|
import { ResolveDependencyGraph } from '../dependency/dependency-graph-builder.js';
|
|
8
8
|
import { FetchManifestFromGitHub, DownloadMigrations, GetLatestVersion, ListGitHubReleases, ListGitHubTags, ValidateGitHubTag, ParseGitHubUrl } from '../github/github-client.js';
|
|
9
9
|
import semver from 'semver';
|
|
10
|
-
import { CreateAppSchema, DropAppSchema, SchemaExists } from './schema-manager.js';
|
|
11
|
-
import { RunFkGraphTeardown,
|
|
12
|
-
import {
|
|
10
|
+
import { CreateAppSchema, DropAppSchema, SchemaExists, ValidateSchemaName, MJ_APP_SCHEMA_PREFIX } from './schema-manager.js';
|
|
11
|
+
import { RunFkGraphTeardown, BuildRootDoomedPredicate } from './entity-teardown.js';
|
|
12
|
+
import { ExtractApplicationIds } from './migration-application-ids.js';
|
|
13
13
|
import { RunAppMigrations } from './migration-runner.js';
|
|
14
14
|
import { AddAppPackages, RemoveAppPackages, RunPackageInstall, BumpPrefixedDependencies } from './package-manager.js';
|
|
15
15
|
import { BuildHookResolutionBases, ResolveHookModule } from './hook-module-resolver.js';
|
|
@@ -125,7 +125,11 @@ export async function InstallApp(options, context) {
|
|
|
125
125
|
await SetAppStep(context.ContextUser, existingApp.ID, null);
|
|
126
126
|
}
|
|
127
127
|
if (manifest.schema) {
|
|
128
|
-
const schemaResult = await HandleSchemaCreation(manifest, context,
|
|
128
|
+
const schemaResult = await HandleSchemaCreation(manifest, context, {
|
|
129
|
+
IsReinstall: isReinstall || isResume,
|
|
130
|
+
AllowDoubleUnderscore: options.AllowDoubleUnderscoreSchema === true,
|
|
131
|
+
ThisAppId: existingApp?.ID ?? '',
|
|
132
|
+
});
|
|
129
133
|
if (!schemaResult.Success) {
|
|
130
134
|
return BuildFailureResult('Install', manifest.name, manifest.version, 'Schema', startTime, schemaResult.ErrorMessage ?? 'Schema creation failed');
|
|
131
135
|
}
|
|
@@ -314,8 +318,13 @@ async function CompensateSchemaOnFailure(manifest, context, schemaWasCreated, al
|
|
|
314
318
|
}
|
|
315
319
|
try {
|
|
316
320
|
callbacks?.OnProgress?.('Rollback', `Dropping schema '${schemaName}'...`);
|
|
317
|
-
await DropAppSchema(schemaName, context.DatabaseProvider, { allowDoubleUnderscore });
|
|
318
|
-
|
|
321
|
+
const dropResult = await DropAppSchema(schemaName, context.DatabaseProvider, { allowDoubleUnderscore });
|
|
322
|
+
if (!dropResult.Success) {
|
|
323
|
+
callbacks?.OnError?.('Rollback', `Failed to drop schema '${schemaName}' during rollback: ${dropResult.ErrorMessage ?? 'unknown error'}`);
|
|
324
|
+
}
|
|
325
|
+
else {
|
|
326
|
+
callbacks?.OnProgress?.('Rollback', `Schema '${schemaName}' dropped successfully`);
|
|
327
|
+
}
|
|
319
328
|
}
|
|
320
329
|
catch (rollbackError) {
|
|
321
330
|
const msg = rollbackError instanceof Error ? rollbackError.message : String(rollbackError);
|
|
@@ -378,6 +387,14 @@ export async function UpgradeApp(options, context) {
|
|
|
378
387
|
if (!compatResult.Compatible) {
|
|
379
388
|
return BuildFailureResult('Upgrade', options.AppName, targetVersion, 'Schema', startTime, compatResult.Message ?? 'Incompatible MJ version');
|
|
380
389
|
}
|
|
390
|
+
if (manifest.schema) {
|
|
391
|
+
const schemaValidation = ValidateSchemaName(manifest.schema.name, {
|
|
392
|
+
allowDoubleUnderscore: options.AllowDoubleUnderscoreSchema === true,
|
|
393
|
+
});
|
|
394
|
+
if (!schemaValidation.Success) {
|
|
395
|
+
return BuildFailureResult('Upgrade', options.AppName, targetVersion, 'Schema', startTime, schemaValidation.ErrorMessage ?? 'Invalid schema name');
|
|
396
|
+
}
|
|
397
|
+
}
|
|
381
398
|
if (manifest.dependencies && Object.keys(manifest.dependencies).length > 0) {
|
|
382
399
|
const depResult = await ResolveDependencyChain(manifest, context);
|
|
383
400
|
if (!depResult.Success) {
|
|
@@ -540,6 +557,20 @@ export async function UpgradeApp(options, context) {
|
|
|
540
557
|
return BuildFailureResult('Upgrade', options.AppName, '', phase, startTime, message);
|
|
541
558
|
}
|
|
542
559
|
}
|
|
560
|
+
function BuildSchemaDropRefusalMessage(check, appName, schemaName) {
|
|
561
|
+
if (check.OverriddenBy) {
|
|
562
|
+
return (`Schema '${schemaName}' is outside the '${MJ_APP_SCHEMA_PREFIX}<AppName>' app namespace, so '${appName}' remove ` +
|
|
563
|
+
`will not drop it by default. Re-run with --dangerously-ignore-dbl-underscore-schema-rule to drop it.`);
|
|
564
|
+
}
|
|
565
|
+
const validatorMessage = check.ErrorMessage ?? '';
|
|
566
|
+
const leadIn = /[.!?]$/.test(validatorMessage) ? validatorMessage : `${validatorMessage}.`;
|
|
567
|
+
if (check.Rule === 'Malformed') {
|
|
568
|
+
return (`${leadIn} '${appName}' has an unusable stored schema name, so no schema can be addressed for it. ` +
|
|
569
|
+
`Re-run with --keep-data to remove '${appName}' and leave any schema in place.`);
|
|
570
|
+
}
|
|
571
|
+
return (`${leadIn} MemberJunction must never drop schema '${schemaName}'. ` +
|
|
572
|
+
`Re-run with --keep-data to remove '${appName}' and leave the schema in place.`);
|
|
573
|
+
}
|
|
543
574
|
export async function RemoveApp(options, context) {
|
|
544
575
|
const startTime = Date.now();
|
|
545
576
|
const { Callbacks } = context;
|
|
@@ -616,13 +647,22 @@ export async function RemoveApp(options, context) {
|
|
|
616
647
|
}
|
|
617
648
|
let schemaDropError;
|
|
618
649
|
if (!options.KeepData && existingApp.SchemaName && !schemaShared) {
|
|
619
|
-
|
|
620
|
-
const dropResult = await DropAppSchema(existingApp.SchemaName, context.DatabaseProvider, {
|
|
650
|
+
const nameCheck = ValidateSchemaName(existingApp.SchemaName, {
|
|
621
651
|
allowDoubleUnderscore: options.AllowDoubleUnderscoreSchema === true,
|
|
622
652
|
});
|
|
623
|
-
if (!
|
|
624
|
-
schemaDropError =
|
|
625
|
-
Callbacks?.OnError?.('Schema',
|
|
653
|
+
if (!nameCheck.Success) {
|
|
654
|
+
schemaDropError = BuildSchemaDropRefusalMessage(nameCheck, existingApp.Name, existingApp.SchemaName);
|
|
655
|
+
Callbacks?.OnError?.('Schema', schemaDropError);
|
|
656
|
+
}
|
|
657
|
+
else {
|
|
658
|
+
Callbacks?.OnProgress?.('Schema', `Dropping schema '${existingApp.SchemaName}'...`);
|
|
659
|
+
const dropResult = await DropAppSchema(existingApp.SchemaName, context.DatabaseProvider, {
|
|
660
|
+
allowDoubleUnderscore: options.AllowDoubleUnderscoreSchema === true,
|
|
661
|
+
});
|
|
662
|
+
if (!dropResult.Success) {
|
|
663
|
+
schemaDropError = dropResult.ErrorMessage;
|
|
664
|
+
Callbacks?.OnError?.('Schema', `Failed to drop schema: ${dropResult.ErrorMessage}`);
|
|
665
|
+
}
|
|
626
666
|
}
|
|
627
667
|
}
|
|
628
668
|
const removalErrors = [
|
|
@@ -882,23 +922,41 @@ export async function ResolveDependencyVersion(repoUrl, versionRange, options) {
|
|
|
882
922
|
}
|
|
883
923
|
return { Version: best };
|
|
884
924
|
}
|
|
885
|
-
async function
|
|
925
|
+
async function WarnIfSchemaOwnedByAnotherApp(schemaName, thisAppId, context) {
|
|
926
|
+
const share = await CheckSchemaSharedByOtherApps(context.ContextUser, schemaName, thisAppId, context.DatabaseProvider);
|
|
927
|
+
if (share.CheckFailed) {
|
|
928
|
+
context.Callbacks?.OnWarn?.('Schema', `Could not determine whether another installed app already owns schema '${schemaName}': ${share.ErrorMessage ?? 'unknown error'}. ` +
|
|
929
|
+
`Proceeding with the install.`);
|
|
930
|
+
return;
|
|
931
|
+
}
|
|
932
|
+
if (share.Shared) {
|
|
933
|
+
context.Callbacks?.OnWarn?.('Schema', `Schema '${schemaName}' is already owned by another installed app. This app will share it, which is supported — ` +
|
|
934
|
+
`but be aware that 'mj app remove' will now SKIP dropping this schema and its entity metadata for BOTH apps, ` +
|
|
935
|
+
`to avoid destroying the co-tenant's data. Remove the other app first if you intended to take the schema over.`);
|
|
936
|
+
}
|
|
937
|
+
}
|
|
938
|
+
async function HandleSchemaCreation(manifest, context, options) {
|
|
886
939
|
if (!manifest.schema) {
|
|
887
940
|
return { Success: true };
|
|
888
941
|
}
|
|
942
|
+
const validation = ValidateSchemaName(manifest.schema.name, { allowDoubleUnderscore: options.AllowDoubleUnderscore });
|
|
943
|
+
if (!validation.Success) {
|
|
944
|
+
return { Success: false, ErrorMessage: validation.ErrorMessage };
|
|
945
|
+
}
|
|
889
946
|
context.Callbacks?.OnProgress?.('Schema', `Checking schema '${manifest.schema.name}'...`);
|
|
890
947
|
const canonicalSchemaName = context.DatabaseProvider.Dialect.CanonicalSchemaName(manifest.schema.name);
|
|
891
948
|
const exists = await SchemaExists(canonicalSchemaName, context.DatabaseProvider);
|
|
892
949
|
if (exists) {
|
|
893
|
-
if (
|
|
950
|
+
if (options.IsReinstall || manifest.schema.createIfNotExists !== false) {
|
|
894
951
|
context.Callbacks?.OnProgress?.('Schema', `Reusing existing schema '${manifest.schema.name}'`);
|
|
952
|
+
await WarnIfSchemaOwnedByAnotherApp(manifest.schema.name, options.ThisAppId, context);
|
|
895
953
|
return { Success: true, Created: false };
|
|
896
954
|
}
|
|
897
955
|
return { Success: false, ErrorMessage: `Schema '${manifest.schema.name}' already exists` };
|
|
898
956
|
}
|
|
899
957
|
if (manifest.schema.createIfNotExists !== false) {
|
|
900
958
|
context.Callbacks?.OnProgress?.('Schema', `Creating schema '${manifest.schema.name}'...`);
|
|
901
|
-
const result = await CreateAppSchema(manifest.schema.name, context.DatabaseProvider, { allowDoubleUnderscore });
|
|
959
|
+
const result = await CreateAppSchema(manifest.schema.name, context.DatabaseProvider, { allowDoubleUnderscore: options.AllowDoubleUnderscore });
|
|
902
960
|
return { Success: result.Success, ErrorMessage: result.ErrorMessage, Created: result.Success };
|
|
903
961
|
}
|
|
904
962
|
return { Success: false, ErrorMessage: `Schema '${manifest.schema.name}' does not exist and createIfNotExists is false` };
|
|
@@ -1213,7 +1271,7 @@ export async function RemoveAppEntityMetadata(schemaName, contextUser, callbacks
|
|
|
1213
1271
|
if (useFkGraph) {
|
|
1214
1272
|
const dbProvider = options.DatabaseProvider;
|
|
1215
1273
|
const mjSchema = options?.MJCoreSchema ?? '__mj';
|
|
1216
|
-
const rootPredicate =
|
|
1274
|
+
const rootPredicate = BuildRootDoomedPredicate(dbProvider.Dialect, schemaName);
|
|
1217
1275
|
await RunFkGraphTeardown(dbProvider, mjSchema, rootPredicate, callbacks);
|
|
1218
1276
|
}
|
|
1219
1277
|
else {
|
|
@@ -1280,7 +1338,7 @@ async function ExtractDeclaredApplicationIds(manifest, context, subpath) {
|
|
|
1280
1338
|
if (!download.Success) {
|
|
1281
1339
|
return [];
|
|
1282
1340
|
}
|
|
1283
|
-
return await
|
|
1341
|
+
return await ExtractApplicationIds(tempDir);
|
|
1284
1342
|
}
|
|
1285
1343
|
catch {
|
|
1286
1344
|
return [];
|