@memberjunction/codegen-lib 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.
Files changed (216) hide show
  1. package/dist/Angular/angular-codegen.d.ts +6 -0
  2. package/dist/Angular/angular-codegen.d.ts.map +1 -1
  3. package/dist/Angular/angular-codegen.js +26 -14
  4. package/dist/Angular/angular-codegen.js.map +1 -1
  5. package/dist/Config/config.d.ts +45 -2
  6. package/dist/Config/config.d.ts.map +1 -1
  7. package/dist/Config/config.js +116 -39
  8. package/dist/Config/config.js.map +1 -1
  9. package/dist/Config/db-connection.d.ts +4 -0
  10. package/dist/Config/db-connection.d.ts.map +1 -1
  11. package/dist/Config/db-connection.js +11 -3
  12. package/dist/Config/db-connection.js.map +1 -1
  13. package/dist/Config/pg-connection.d.ts +2 -0
  14. package/dist/Config/pg-connection.d.ts.map +1 -1
  15. package/dist/Config/pg-connection.js +5 -1
  16. package/dist/Config/pg-connection.js.map +1 -1
  17. package/dist/Config/schema-output.d.ts +8 -0
  18. package/dist/Config/schema-output.d.ts.map +1 -1
  19. package/dist/Config/schema-output.js +19 -7
  20. package/dist/Config/schema-output.js.map +1 -1
  21. package/dist/Database/__tests__/exclude-schema-permissions.test.js +3 -3
  22. package/dist/Database/codeGenDatabaseProvider.d.ts +40 -1
  23. package/dist/Database/codeGenDatabaseProvider.d.ts.map +1 -1
  24. package/dist/Database/codeGenDatabaseProvider.js +65 -7
  25. package/dist/Database/codeGenDatabaseProvider.js.map +1 -1
  26. package/dist/Database/dbSchema.d.ts +4 -0
  27. package/dist/Database/dbSchema.d.ts.map +1 -1
  28. package/dist/Database/dbSchema.js +17 -9
  29. package/dist/Database/dbSchema.js.map +1 -1
  30. package/dist/Database/entity-field-change-tracking.d.ts +4 -0
  31. package/dist/Database/entity-field-change-tracking.d.ts.map +1 -1
  32. package/dist/Database/entity-field-change-tracking.js +12 -4
  33. package/dist/Database/entity-field-change-tracking.js.map +1 -1
  34. package/dist/Database/exclude-tables.d.ts +2 -0
  35. package/dist/Database/exclude-tables.d.ts.map +1 -1
  36. package/dist/Database/exclude-tables.js +5 -1
  37. package/dist/Database/exclude-tables.js.map +1 -1
  38. package/dist/Database/field-metadata-lock.d.ts +8 -6
  39. package/dist/Database/field-metadata-lock.d.ts.map +1 -1
  40. package/dist/Database/field-metadata-lock.js +29 -25
  41. package/dist/Database/field-metadata-lock.js.map +1 -1
  42. package/dist/Database/heal-schema-params.d.ts +14 -2
  43. package/dist/Database/heal-schema-params.d.ts.map +1 -1
  44. package/dist/Database/heal-schema-params.js +21 -5
  45. package/dist/Database/heal-schema-params.js.map +1 -1
  46. package/dist/Database/manage-metadata.d.ts +227 -4
  47. package/dist/Database/manage-metadata.d.ts.map +1 -1
  48. package/dist/Database/manage-metadata.js +883 -384
  49. package/dist/Database/manage-metadata.js.map +1 -1
  50. package/dist/Database/materializationAnalysis.d.ts +61 -2
  51. package/dist/Database/materializationAnalysis.d.ts.map +1 -1
  52. package/dist/Database/materializationAnalysis.js +43 -23
  53. package/dist/Database/materializationAnalysis.js.map +1 -1
  54. package/dist/Database/materializationBroadRender.d.ts +5 -3
  55. package/dist/Database/materializationBroadRender.d.ts.map +1 -1
  56. package/dist/Database/materializationBroadRender.js +17 -13
  57. package/dist/Database/materializationBroadRender.js.map +1 -1
  58. package/dist/Database/materializationDrift.d.ts +2 -0
  59. package/dist/Database/materializationDrift.d.ts.map +1 -1
  60. package/dist/Database/materializationDrift.js +5 -1
  61. package/dist/Database/materializationDrift.js.map +1 -1
  62. package/dist/Database/materializationParamClassifier.d.ts +17 -2
  63. package/dist/Database/materializationParamClassifier.d.ts.map +1 -1
  64. package/dist/Database/materializationParamClassifier.js +22 -10
  65. package/dist/Database/materializationParamClassifier.js.map +1 -1
  66. package/dist/Database/materializationParamVerifier.d.ts +2 -0
  67. package/dist/Database/materializationParamVerifier.d.ts.map +1 -1
  68. package/dist/Database/materializationParamVerifier.js +18 -14
  69. package/dist/Database/materializationParamVerifier.js.map +1 -1
  70. package/dist/Database/materializationSqlAst.d.ts +19 -1
  71. package/dist/Database/materializationSqlAst.d.ts.map +1 -1
  72. package/dist/Database/materializationSqlAst.js +53 -17
  73. package/dist/Database/materializationSqlAst.js.map +1 -1
  74. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.d.ts +18 -0
  75. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.d.ts.map +1 -1
  76. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js +76 -30
  77. package/dist/Database/providers/postgresql/PostgreSQLCodeGenProvider.js.map +1 -1
  78. package/dist/Database/providers/postgresql/metadataSupportObjects.d.ts +2 -0
  79. package/dist/Database/providers/postgresql/metadataSupportObjects.d.ts.map +1 -1
  80. package/dist/Database/providers/postgresql/metadataSupportObjects.js +5 -1
  81. package/dist/Database/providers/postgresql/metadataSupportObjects.js.map +1 -1
  82. package/dist/Database/providers/postgresql/viewDependencyCapture.d.ts +10 -0
  83. package/dist/Database/providers/postgresql/viewDependencyCapture.d.ts.map +1 -1
  84. package/dist/Database/providers/postgresql/viewDependencyCapture.js +25 -5
  85. package/dist/Database/providers/postgresql/viewDependencyCapture.js.map +1 -1
  86. package/dist/Database/providers/postgresql/viewFallback.d.ts +11 -7
  87. package/dist/Database/providers/postgresql/viewFallback.d.ts.map +1 -1
  88. package/dist/Database/providers/postgresql/viewFallback.js +18 -12
  89. package/dist/Database/providers/postgresql/viewFallback.js.map +1 -1
  90. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts +9 -0
  91. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.d.ts.map +1 -1
  92. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js +27 -13
  93. package/dist/Database/providers/sqlserver/SQLServerCodeGenProvider.js.map +1 -1
  94. package/dist/Database/reconcileFieldLevelSecurity.d.ts +2 -0
  95. package/dist/Database/reconcileFieldLevelSecurity.d.ts.map +1 -1
  96. package/dist/Database/reconcileFieldLevelSecurity.js +5 -1
  97. package/dist/Database/reconcileFieldLevelSecurity.js.map +1 -1
  98. package/dist/Database/reorder-columns.d.ts +2 -0
  99. package/dist/Database/reorder-columns.d.ts.map +1 -1
  100. package/dist/Database/reorder-columns.js +5 -1
  101. package/dist/Database/reorder-columns.js.map +1 -1
  102. package/dist/Database/schema-filters.d.ts +6 -0
  103. package/dist/Database/schema-filters.d.ts.map +1 -1
  104. package/dist/Database/schema-filters.js +17 -5
  105. package/dist/Database/schema-filters.js.map +1 -1
  106. package/dist/Database/schema-scope.d.ts +4 -0
  107. package/dist/Database/schema-scope.d.ts.map +1 -1
  108. package/dist/Database/schema-scope.js +13 -5
  109. package/dist/Database/schema-scope.js.map +1 -1
  110. package/dist/Database/search-guardrails.d.ts +52 -0
  111. package/dist/Database/search-guardrails.d.ts.map +1 -1
  112. package/dist/Database/search-guardrails.js +77 -18
  113. package/dist/Database/search-guardrails.js.map +1 -1
  114. package/dist/Database/sql.d.ts +20 -0
  115. package/dist/Database/sql.d.ts.map +1 -1
  116. package/dist/Database/sql.js +72 -32
  117. package/dist/Database/sql.js.map +1 -1
  118. package/dist/Database/sql_codegen.d.ts +92 -0
  119. package/dist/Database/sql_codegen.d.ts.map +1 -1
  120. package/dist/Database/sql_codegen.js +197 -113
  121. package/dist/Database/sql_codegen.js.map +1 -1
  122. package/dist/EntityNameScanner/EntityNameScanner.d.ts +16 -0
  123. package/dist/EntityNameScanner/EntityNameScanner.d.ts.map +1 -1
  124. package/dist/EntityNameScanner/EntityNameScanner.js +47 -15
  125. package/dist/EntityNameScanner/EntityNameScanner.js.map +1 -1
  126. package/dist/EntityNameScanner/HtmlEntityNameScanner.d.ts +6 -0
  127. package/dist/EntityNameScanner/HtmlEntityNameScanner.d.ts.map +1 -1
  128. package/dist/EntityNameScanner/HtmlEntityNameScanner.js +19 -7
  129. package/dist/EntityNameScanner/HtmlEntityNameScanner.js.map +1 -1
  130. package/dist/EntityNameScanner/MetadataNameScanner.d.ts +6 -0
  131. package/dist/EntityNameScanner/MetadataNameScanner.d.ts.map +1 -1
  132. package/dist/EntityNameScanner/MetadataNameScanner.js +19 -7
  133. package/dist/EntityNameScanner/MetadataNameScanner.js.map +1 -1
  134. package/dist/Manifest/GenerateClassRegistrationsManifest.d.ts +6 -0
  135. package/dist/Manifest/GenerateClassRegistrationsManifest.d.ts.map +1 -1
  136. package/dist/Manifest/GenerateClassRegistrationsManifest.js +16 -4
  137. package/dist/Manifest/GenerateClassRegistrationsManifest.js.map +1 -1
  138. package/dist/Misc/action_subclasses_codegen.d.ts +4 -0
  139. package/dist/Misc/action_subclasses_codegen.d.ts.map +1 -1
  140. package/dist/Misc/action_subclasses_codegen.js +11 -3
  141. package/dist/Misc/action_subclasses_codegen.js.map +1 -1
  142. package/dist/Misc/advanced_generation.d.ts +48 -2
  143. package/dist/Misc/advanced_generation.d.ts.map +1 -1
  144. package/dist/Misc/advanced_generation.js +53 -15
  145. package/dist/Misc/advanced_generation.js.map +1 -1
  146. package/dist/Misc/codegen-reporter.d.ts +53 -0
  147. package/dist/Misc/codegen-reporter.d.ts.map +1 -1
  148. package/dist/Misc/codegen-reporter.js +106 -22
  149. package/dist/Misc/codegen-reporter.js.map +1 -1
  150. package/dist/Misc/createNewUser.d.ts +6 -0
  151. package/dist/Misc/createNewUser.d.ts.map +1 -1
  152. package/dist/Misc/createNewUser.js +5 -1
  153. package/dist/Misc/createNewUser.js.map +1 -1
  154. package/dist/Misc/entity_subclasses_codegen.d.ts +8 -0
  155. package/dist/Misc/entity_subclasses_codegen.d.ts.map +1 -1
  156. package/dist/Misc/entity_subclasses_codegen.js +52 -36
  157. package/dist/Misc/entity_subclasses_codegen.js.map +1 -1
  158. package/dist/Misc/externalTypeMapping.d.ts +2 -0
  159. package/dist/Misc/externalTypeMapping.d.ts.map +1 -1
  160. package/dist/Misc/externalTypeMapping.js +5 -1
  161. package/dist/Misc/externalTypeMapping.js.map +1 -1
  162. package/dist/Misc/file-write.d.ts +2 -0
  163. package/dist/Misc/file-write.d.ts.map +1 -1
  164. package/dist/Misc/file-write.js +5 -1
  165. package/dist/Misc/file-write.js.map +1 -1
  166. package/dist/Misc/graphql_server_codegen.d.ts +14 -0
  167. package/dist/Misc/graphql_server_codegen.d.ts.map +1 -1
  168. package/dist/Misc/graphql_server_codegen.js +51 -27
  169. package/dist/Misc/graphql_server_codegen.js.map +1 -1
  170. package/dist/Misc/remote_operations_codegen.d.ts +12 -0
  171. package/dist/Misc/remote_operations_codegen.d.ts.map +1 -1
  172. package/dist/Misc/remote_operations_codegen.js +21 -5
  173. package/dist/Misc/remote_operations_codegen.js.map +1 -1
  174. package/dist/Misc/runCommand.d.ts +6 -0
  175. package/dist/Misc/runCommand.d.ts.map +1 -1
  176. package/dist/Misc/runCommand.js +16 -4
  177. package/dist/Misc/runCommand.js.map +1 -1
  178. package/dist/Misc/schema-emit.d.ts +28 -0
  179. package/dist/Misc/schema-emit.d.ts.map +1 -1
  180. package/dist/Misc/schema-emit.js +75 -23
  181. package/dist/Misc/schema-emit.js.map +1 -1
  182. package/dist/Misc/sql_logging.d.ts +44 -11
  183. package/dist/Misc/sql_logging.d.ts.map +1 -1
  184. package/dist/Misc/sql_logging.js +132 -51
  185. package/dist/Misc/sql_logging.js.map +1 -1
  186. package/dist/Misc/sql_text.d.ts +22 -0
  187. package/dist/Misc/sql_text.d.ts.map +1 -0
  188. package/dist/Misc/sql_text.js +46 -0
  189. package/dist/Misc/sql_text.js.map +1 -0
  190. package/dist/Misc/status_logging.d.ts +36 -0
  191. package/dist/Misc/status_logging.d.ts.map +1 -1
  192. package/dist/Misc/status_logging.js +95 -23
  193. package/dist/Misc/status_logging.js.map +1 -1
  194. package/dist/Misc/system_integrity.js +4 -4
  195. package/dist/Misc/system_integrity.js.map +1 -1
  196. package/dist/Misc/temp_batch_file.d.ts +12 -0
  197. package/dist/Misc/temp_batch_file.d.ts.map +1 -1
  198. package/dist/Misc/temp_batch_file.js +35 -11
  199. package/dist/Misc/temp_batch_file.js.map +1 -1
  200. package/dist/Misc/util.d.ts +33 -0
  201. package/dist/Misc/util.d.ts.map +1 -1
  202. package/dist/Misc/util.js +53 -13
  203. package/dist/Misc/util.js.map +1 -1
  204. package/dist/index.d.ts +1 -1
  205. package/dist/index.d.ts.map +1 -1
  206. package/dist/index.js +1 -1
  207. package/dist/index.js.map +1 -1
  208. package/dist/plugins/index.d.ts +11 -1
  209. package/dist/plugins/index.d.ts.map +1 -1
  210. package/dist/plugins/index.js +9 -1
  211. package/dist/plugins/index.js.map +1 -1
  212. package/dist/runCodeGen.d.ts +6 -0
  213. package/dist/runCodeGen.d.ts.map +1 -1
  214. package/dist/runCodeGen.js +150 -138
  215. package/dist/runCodeGen.js.map +1 -1
  216. package/package.json +29 -29
@@ -1,5 +1,6 @@
1
- import { configInfo, mj_core_schema, dbPlatform, currentWorkingDirectory } from "../Config/config.js";
1
+ import { configInfo, MjCoreSchema, DbPlatform, currentWorkingDirectory } from "../Config/config.js";
2
2
  import { logError, logStatus } from "./status_logging.js";
3
+ import { EndsWithBatchSeparatorLine, TrimTrailingStatementTerminators } from './sql_text.js';
3
4
  import * as fs from 'fs';
4
5
  import path from 'path';
5
6
  const MJ_DEFAULT_SQL_OUTPUT_RE = /(^|\/|\\)migrations[/\\]v\d+[/\\]?$/i;
@@ -7,10 +8,14 @@ const MJ_DEFAULT_SQL_OUTPUT_RE = /(^|\/|\\)migrations[/\\]v\d+[/\\]?$/i;
7
8
  * True when `folderPath` is the CodeGenLib / MJ-host default (`./migrations/v5` etc.),
8
9
  * not an Open App `migrations/codegen` tree.
9
10
  */
10
- export function isMjDefaultSqlOutputPath(folderPath) {
11
+ export function IsMjDefaultSqlOutputPath(folderPath) {
11
12
  const n = folderPath.replace(/\\/g, '/').replace(/\/+$/, '');
12
13
  return MJ_DEFAULT_SQL_OUTPUT_RE.test(n) || n === './migrations/v5' || n === '../../migrations/v5';
13
14
  }
15
+ /** @deprecated Use {@link IsMjDefaultSqlOutputPath}. */
16
+ export function isMjDefaultSqlOutputPath(folderPath) {
17
+ return IsMjDefaultSqlOutputPath(folderPath);
18
+ }
14
19
  /**
15
20
  * Where CodeGen writes `CodeGen_Run_*.sql` (EntityField INSERTs and other metadata SQL).
16
21
  *
@@ -22,46 +27,50 @@ export function isMjDefaultSqlOutputPath(folderPath) {
22
27
  * MJ monorepo cwd + `includeSchemas` listing a non-core schema: throw. Run
23
28
  * CodeGen from the app directory.
24
29
  */
25
- export function resolveSQLOutputFolder(args) {
26
- const cwd = path.resolve(args.cwd);
27
- const core = (args.coreSchema || '__mj').toLowerCase();
28
- const include = (args.includeSchemas ?? []).map(s => s.toLowerCase());
30
+ export function ResolveSQLOutputFolder(args) {
31
+ const cwd = path.resolve(args.Cwd);
32
+ const core = (args.CoreSchema || '__mj').toLowerCase();
33
+ const include = (args.IncludeSchemas ?? []).map(s => s.toLowerCase());
29
34
  const generatingAppSchemas = include.some(s => s !== core);
30
- if (args.sqlOutputDirFlag) {
31
- const resolved = path.resolve(cwd, args.sqlOutputDirFlag);
32
- if (args.hasMjAppJson && isMjDefaultSqlOutputPath(resolved)) {
35
+ if (args.SqlOutputDirFlag) {
36
+ const resolved = path.resolve(cwd, args.SqlOutputDirFlag);
37
+ if (args.HasMjAppJson && IsMjDefaultSqlOutputPath(resolved)) {
33
38
  throw new Error(`CodeGen --sql-output-dir resolves to an MJ host migrations tree (${resolved}). ` +
34
39
  `Open App metadata SQL must go to the app's migrations/codegen. ` +
35
40
  `Run from the app cwd (mj-app.json) without this flag, or pass the app codegen folder.`);
36
41
  }
37
42
  return resolved;
38
43
  }
39
- if (args.hasMjAppJson) {
40
- const configured = args.configuredFolderPath;
41
- if (configured && !isMjDefaultSqlOutputPath(configured)) {
44
+ if (args.HasMjAppJson) {
45
+ const configured = args.ConfiguredFolderPath;
46
+ if (configured && !IsMjDefaultSqlOutputPath(configured)) {
42
47
  return path.resolve(cwd, configured);
43
48
  }
44
49
  return path.join(cwd, 'migrations', 'codegen');
45
50
  }
46
- if (args.isMjMonorepo && generatingAppSchemas) {
51
+ if (args.IsMjMonorepo && generatingAppSchemas) {
47
52
  throw new Error(`CodeGen SQLOutput would write Open App metadata SQL into the MJ repo (${cwd}). ` +
48
53
  `Run \`mj codegen\` from the Open App directory (a cwd that contains mj-app.json), not from MJ. ` +
49
- `includeSchemas=${(args.includeSchemas ?? []).join(',') || '(empty)'}`);
54
+ `includeSchemas=${(args.IncludeSchemas ?? []).join(',') || '(empty)'}`);
50
55
  }
51
- const folder = args.configuredFolderPath ?? './migrations/v5/';
56
+ const folder = args.ConfiguredFolderPath ?? './migrations/v5/';
52
57
  return path.resolve(cwd, folder);
53
58
  }
59
+ /** @deprecated Use {@link ResolveSQLOutputFolder}. */
60
+ export function resolveSQLOutputFolder(args) {
61
+ return ResolveSQLOutputFolder(args);
62
+ }
54
63
  /**
55
64
  * Utility class for logging SQL to a run file that can be fresh for each run or appended to depending on the settings in the configuration
56
65
  */
57
66
  export class SQLLogging {
58
- static { this._SQLLoggingFilePath = ''; }
59
- static { this._OmitRecurringScriptsFromLog = true; }
67
+ static { this._sQLLoggingFilePath = ''; }
68
+ static { this._omitRecurringScriptsFromLog = true; }
60
69
  static get SQLLoggingFilePath() {
61
- return SQLLogging._SQLLoggingFilePath;
70
+ return SQLLogging._sQLLoggingFilePath;
62
71
  }
63
72
  static get OmitRecurringScriptsFromLog() {
64
- return SQLLogging._OmitRecurringScriptsFromLog;
73
+ return SQLLogging._omitRecurringScriptsFromLog;
65
74
  }
66
75
  /**
67
76
  * Rewrites the migrations-root segment of a path to `migrations-pg`.
@@ -87,7 +96,7 @@ export class SQLLogging {
87
96
  *
88
97
  * Public so the routing can be unit-tested without a CodeGen run.
89
98
  */
90
- static redirectToPGMigrations(folderPath) {
99
+ static RedirectToPGMigrations(folderPath) {
91
100
  // Split on either separator so a Windows-style path is handled without normalizing the
92
101
  // whole string (which would rewrite the caller's separators as a side effect).
93
102
  const segments = folderPath.split(/([\\/])/);
@@ -110,57 +119,77 @@ export class SQLLogging {
110
119
  }
111
120
  return folderPath;
112
121
  }
113
- static initSQLLogging() {
122
+ /** @deprecated Use {@link RedirectToPGMigrations}. */
123
+ static redirectToPGMigrations(folderPath) {
124
+ return this.RedirectToPGMigrations(folderPath);
125
+ }
126
+ static InitSQLLogging() {
114
127
  const config = configInfo.SQLOutput;
115
128
  if (!config) {
116
129
  throw new Error("SQLOutput config is required to enable metadata logging");
117
130
  }
118
- SQLLogging._OmitRecurringScriptsFromLog = config.omitRecurringScriptsFromLog;
131
+ SQLLogging._omitRecurringScriptsFromLog = config.omitRecurringScriptsFromLog;
119
132
  if (!SQLLogging.SQLLoggingFilePath) {
120
133
  if (!config.enabled)
121
134
  return;
122
135
  const cwd = currentWorkingDirectory || process.cwd();
123
- const coreSchema = mj_core_schema();
124
- let folderPath = resolveSQLOutputFolder({
125
- cwd,
126
- configuredFolderPath: config.folderPath,
127
- includeSchemas: configInfo.includeSchemas,
128
- coreSchema,
129
- sqlOutputDirFlag: SQLLogging.sqlOutputDirFlag,
130
- hasMjAppJson: fs.existsSync(path.join(cwd, 'mj-app.json')),
131
- isMjMonorepo: fs.existsSync(path.join(cwd, 'packages', 'CodeGenLib')) ||
136
+ const coreSchema = MjCoreSchema();
137
+ let folderPath = ResolveSQLOutputFolder({
138
+ Cwd: cwd,
139
+ ConfiguredFolderPath: config.folderPath,
140
+ IncludeSchemas: configInfo.includeSchemas,
141
+ CoreSchema: coreSchema,
142
+ SqlOutputDirFlag: SQLLogging.sqlOutputDirFlag,
143
+ HasMjAppJson: fs.existsSync(path.join(cwd, 'mj-app.json')),
144
+ IsMjMonorepo: fs.existsSync(path.join(cwd, 'packages', 'CodeGenLib')) ||
132
145
  fs.existsSync(path.join(cwd, 'packages', 'MJCLI')),
133
146
  });
134
- if (dbPlatform() === 'postgresql') {
147
+ if (DbPlatform() === 'postgresql') {
135
148
  folderPath = SQLLogging.redirectToPGMigrations(folderPath);
136
149
  }
137
150
  if (!fs.existsSync(folderPath)) {
138
151
  fs.mkdirSync(folderPath, { recursive: true });
139
152
  }
140
153
  const fileName = config.fileName || this.createFileName();
141
- SQLLogging._SQLLoggingFilePath = path.join(folderPath, fileName);
154
+ SQLLogging._sQLLoggingFilePath = path.join(folderPath, fileName);
142
155
  if (!config.appendToFile || !fs.existsSync(SQLLogging.SQLLoggingFilePath)) {
143
156
  fs.writeFileSync(SQLLogging.SQLLoggingFilePath, '');
144
157
  }
145
158
  logStatus(`Metadata logging enabled. File path: ${SQLLogging.SQLLoggingFilePath}`);
146
159
  }
147
160
  }
161
+ /** @deprecated Use {@link InitSQLLogging}. */
162
+ static initSQLLogging() {
163
+ return this.InitSQLLogging();
164
+ }
148
165
  /**
149
166
  * The batch separator for the active platform: `GO` on SQL Server, none on PostgreSQL. Used as the
150
167
  * default for callers that do not pass the provider's separator, so a PostgreSQL capture can never
151
168
  * pick up a literal `GO` from a forgotten argument.
152
169
  */
170
+ static DefaultBatchSeparator() {
171
+ return DbPlatform() === 'postgresql' ? '' : 'GO';
172
+ }
173
+ /** @deprecated Use {@link DefaultBatchSeparator}. */
153
174
  static defaultBatchSeparator() {
154
- return dbPlatform() === 'postgresql' ? '' : 'GO';
175
+ return this.DefaultBatchSeparator();
155
176
  }
156
177
  /** Test hook — SQLLogging is a process-wide singleton. */
157
- static resetForTests() {
158
- SQLLogging._SQLLoggingFilePath = '';
178
+ static ResetForTests() {
179
+ SQLLogging._sQLLoggingFilePath = '';
159
180
  SQLLogging.sqlOutputDirFlag = undefined;
160
181
  }
182
+ /** @deprecated Use {@link ResetForTests}. */
183
+ static resetForTests() {
184
+ return this.ResetForTests();
185
+ }
161
186
  /** Test hook — sets the active capture file path for testing. */
187
+ static SetFilePathForTesting(filePath) {
188
+ SQLLogging._sQLLoggingFilePath = filePath;
189
+ }
190
+ /** @deprecated Use {@link SetFilePathForTesting}. */
162
191
  static setFilePathForTesting(filePath) {
163
- SQLLogging._SQLLoggingFilePath = filePath;
192
+ return this.SetFilePathForTesting(filePath);
164
193
  }
165
194
  /**
166
195
  * Test hook — turns SQL capture off for the process: disables `SQLOutput` so
@@ -168,22 +197,26 @@ export class SQLLogging {
168
197
  * file open, and closes any capture file already open so nothing is written meanwhile. Returns a
169
198
  * function that restores both; call it from `afterAll`.
170
199
  */
171
- static suppressOutputForTests() {
200
+ static SuppressOutputForTests() {
172
201
  const output = configInfo.SQLOutput;
173
202
  const previousEnabled = output?.enabled;
174
- const previousPath = SQLLogging._SQLLoggingFilePath;
203
+ const previousPath = SQLLogging._sQLLoggingFilePath;
175
204
  if (output) {
176
205
  output.enabled = false;
177
206
  }
178
- SQLLogging._SQLLoggingFilePath = '';
207
+ SQLLogging._sQLLoggingFilePath = '';
179
208
  return () => {
180
209
  if (output && previousEnabled !== undefined) {
181
210
  output.enabled = previousEnabled;
182
211
  }
183
- SQLLogging._SQLLoggingFilePath = previousPath;
212
+ SQLLogging._sQLLoggingFilePath = previousPath;
184
213
  };
185
214
  }
186
- static finishSQLLogging() {
215
+ /** @deprecated Use {@link SuppressOutputForTests}. */
216
+ static suppressOutputForTests() {
217
+ return this.SuppressOutputForTests();
218
+ }
219
+ static FinishSQLLogging() {
187
220
  if (SQLLogging.SQLLoggingFilePath) {
188
221
  if (SQLLogging.getFileLength(SQLLogging.SQLLoggingFilePath) === 0) {
189
222
  // no content in the file, so delete it
@@ -195,6 +228,10 @@ export class SQLLogging {
195
228
  }
196
229
  }
197
230
  }
231
+ /** @deprecated Use {@link FinishSQLLogging}. */
232
+ static finishSQLLogging() {
233
+ return this.FinishSQLLogging();
234
+ }
198
235
  static createFileName() {
199
236
  const date = new Date();
200
237
  const year = date.getUTCFullYear();
@@ -221,9 +258,12 @@ export class SQLLogging {
221
258
  * @param isRecurringScript - if set to true tells the logger that the provided SQL represents a recurring script meaning it is something that is executed, generally, for all CodeGen runs. In these cases, the Config settings can result in omitting these recurring scripts from being logged because the configuration environment may have those recurring scripts already set to run after all run-specific migrations get run.
222
259
  * @param includeBatchSeparator - if true, appends a batch separator (e.g., GO for SQL Server) after the SQL. Use this when the next statement in the migration needs to reference schema changes made by this statement (e.g., ALTER TABLE ADD column followed by UPDATE referencing that column). Defaults to false.
223
260
  * @param batchSeparator - the batch separator string to use (e.g., 'GO' for SQL Server). Only used when includeBatchSeparator is true.
261
+ * @param requiresOwnBatch - the unit must be the ONLY statement in its batch — e.g. `CREATE OR ALTER VIEW`,
262
+ * which T-SQL requires to be first in its batch as well as last. Emits a separator BEFORE the unit
263
+ * unless the log already ends at a batch boundary, and one after it. Implies `includeBatchSeparator`.
224
264
  * @returns
225
265
  */
226
- static async appendToSQLLogFile(contents, description, isRecurringScript = false, includeBatchSeparator = false, batchSeparator = SQLLogging.defaultBatchSeparator()) {
266
+ static async AppendToSQLLogFile(contents, description, isRecurringScript = false, includeBatchSeparator = false, batchSeparator = SQLLogging.defaultBatchSeparator(), requiresOwnBatch = false) {
227
267
  try {
228
268
  if (isRecurringScript && SQLLogging.OmitRecurringScriptsFromLog) {
229
269
  return; // is a recurring script and the flag to omit recurring scripts is set
@@ -250,28 +290,40 @@ export class SQLLogging {
250
290
  // generateBaseView / generateCRUDCreate / generateRootIDFunction return strings
251
291
  // ending in `GO`. Appending `;` produces `GO;`, which SSMS and sqlcmd reject
252
292
  // ("Incorrect syntax near ';'"). Detect and skip the `;` append in that case.
253
- const trimmed = contents.replace(/[\s;]+$/g, '');
293
+ // Linear scans, not `/[\s;]+$/` or `/(^|\n)\s*GO\s*$/`: a unit can carry caller-supplied SQL
294
+ // (a TransitiveView body), and those patterns backtrack quadratically on a long interior
295
+ // whitespace run (see ./sql_text).
296
+ const trimmed = TrimTrailingStatementTerminators(contents);
254
297
  let endsWithBatchSeparator = false;
255
298
  if (trimmed.length > 0) {
256
- endsWithBatchSeparator = /(^|\n)\s*GO\s*$/i.test(trimmed);
299
+ endsWithBatchSeparator = EndsWithBatchSeparatorLine(trimmed, 'GO');
257
300
  contents = endsWithBatchSeparator ? trimmed : `${trimmed};`;
258
301
  }
302
+ // A unit that must be alone in its batch also needs a separator BEFORE it: the log only ever
303
+ // appends, so whatever was logged last would otherwise share its batch.
304
+ const leadingSeparator = requiresOwnBatch && !!batchSeparator && !SQLLogging.logEndsAtBatchBoundary(batchSeparator)
305
+ ? `${batchSeparator}\n\n`
306
+ : '';
259
307
  // Emit a separator when the caller asked for one, or when the unit declares a batch-scoped
260
308
  // variable (see the method JSDoc). Never for an empty separator (PostgreSQL), and never
261
309
  // after a unit that already closes its own batch. The declaration scan runs only on
262
310
  // units that could receive a separator, so GO-terminated view and routine bodies — the
263
311
  // largest units logged — are not scanned.
264
312
  const emitSeparator = !!batchSeparator && !endsWithBatchSeparator &&
265
- (includeBatchSeparator || SQLLogging.declaresBatchScopedVariable(trimmed));
313
+ (includeBatchSeparator || requiresOwnBatch || SQLLogging.DeclaresBatchScopedVariable(trimmed));
266
314
  contents = emitSeparator
267
315
  ? `${contents}\n${batchSeparator}\n\n`
268
316
  : `${contents}\n\n`;
269
- fs.appendFileSync(SQLLogging.SQLLoggingFilePath, contents);
317
+ fs.appendFileSync(SQLLogging.SQLLoggingFilePath, `${leadingSeparator}${contents}`);
270
318
  }
271
319
  catch (ex) {
272
320
  logError("Unable to log metadata SQL text to file", ex);
273
321
  }
274
322
  }
323
+ /** @deprecated Use {@link AppendToSQLLogFile}. */
324
+ static async appendToSQLLogFile(contents, description, isRecurringScript = false, includeBatchSeparator = false, batchSeparator = SQLLogging.defaultBatchSeparator(), requiresOwnBatch = false) {
325
+ return this.AppendToSQLLogFile(contents, description, isRecurringScript, includeBatchSeparator, batchSeparator, requiresOwnBatch);
326
+ }
275
327
  /**
276
328
  * Executes the given SQL query using the given DataSource object.
277
329
  * If the appendToLogFile parameter is true, the query will also be appended to the log file.
@@ -280,14 +332,15 @@ export class SQLLogging {
280
332
  * @param query - The SQL query to execute.
281
333
  * @param description - A description of the query to append to the log file.
282
334
  * @param isRecurringScript - if set to true tells the logger that the provided SQL represents a recurring script meaning it is something that is executed, generally, for all CodeGen runs. In these cases, the Config settings can result in omitting these recurring scripts from being logged because the configuration environment may have those recurring scripts already set to run after all run-specific migrations get run.
335
+ * @param requiresOwnBatch - see {@link appendToSQLLogFile}: the unit must be alone in its batch.
283
336
  * @returns - The result of the query execution.
284
337
  */
285
- static async LogSQLAndExecute(ds, query, description, isRecurringScript = false, includeBatchSeparator = false, batchSeparator = SQLLogging.defaultBatchSeparator()) {
338
+ static async LogSQLAndExecute(ds, query, description, isRecurringScript = false, includeBatchSeparator = false, batchSeparator = SQLLogging.defaultBatchSeparator(), requiresOwnBatch = false) {
286
339
  if (configInfo.SQLOutput?.enabled && !SQLLogging.SQLLoggingFilePath) {
287
340
  throw new Error('SQLOutput.enabled but no CodeGen_Run log file is open. Refusing to apply metadata SQL with no artifact. ' +
288
341
  'Run `mj codegen` from the Open App directory (mj-app.json) or pass --sql-output-dir.');
289
342
  }
290
- SQLLogging.appendToSQLLogFile(query, description, isRecurringScript, includeBatchSeparator, batchSeparator);
343
+ SQLLogging.AppendToSQLLogFile(query, description, isRecurringScript, includeBatchSeparator, batchSeparator, requiresOwnBatch);
291
344
  const result = await ds.query(query);
292
345
  return result.recordset;
293
346
  }
@@ -298,7 +351,7 @@ export class SQLLogging {
298
351
  * inside `IF ... BEGIN ... END` — so the match is not limited to the first statement. A declaration
299
352
  * inside a routine body is routine-scoped and cannot collide across units, so it does not count.
300
353
  */
301
- static declaresBatchScopedVariable(sql) {
354
+ static DeclaresBatchScopedVariable(sql) {
302
355
  if (!sql) {
303
356
  return false;
304
357
  }
@@ -319,6 +372,34 @@ export class SQLLogging {
319
372
  }
320
373
  return false;
321
374
  }
375
+ /** @deprecated Use {@link DeclaresBatchScopedVariable}. */
376
+ static declaresBatchScopedVariable(sql) {
377
+ return this.DeclaresBatchScopedVariable(sql);
378
+ }
379
+ /** Bytes read from the end of the log to decide whether it ends at a batch boundary. */
380
+ static { this.BOUNDARY_TAIL_BYTES = 512; }
381
+ /**
382
+ * True when the log is empty or its last non-blank line is `separator` — i.e. the next unit starts
383
+ * a new batch. Reads only the tail of the file, so it holds whoever wrote the previous unit.
384
+ */
385
+ static logEndsAtBatchBoundary(separator) {
386
+ const filePath = SQLLogging.SQLLoggingFilePath;
387
+ const size = SQLLogging.getFileLength(filePath);
388
+ if (size === 0) {
389
+ return true;
390
+ }
391
+ const length = Math.min(size, SQLLogging.BOUNDARY_TAIL_BYTES);
392
+ const buffer = Buffer.alloc(length);
393
+ const fd = fs.openSync(filePath, 'r');
394
+ try {
395
+ fs.readSync(fd, buffer, 0, length, size - length);
396
+ }
397
+ finally {
398
+ fs.closeSync(fd);
399
+ }
400
+ const tail = buffer.toString('utf8');
401
+ return tail.trim().length === 0 || EndsWithBatchSeparatorLine(tail, separator);
402
+ }
322
403
  static getFileLength(filePath) {
323
404
  try {
324
405
  const stats = fs.statSync(filePath);
@@ -335,7 +416,7 @@ export class SQLLogging {
335
416
  let data = fs.readFileSync(this.SQLLoggingFilePath, 'utf-8');
336
417
  // Get schema placeholder mappings, defaulting to legacy behavior if not specified
337
418
  const schemaPlaceholders = configInfo.SQLOutput.schemaPlaceholders || [
338
- { schema: mj_core_schema(), placeholder: '${flyway:defaultSchema}' }
419
+ { schema: MjCoreSchema(), placeholder: '${flyway:defaultSchema}' }
339
420
  ];
340
421
  // Apply each schema-to-placeholder mapping in order
341
422
  for (const mapping of schemaPlaceholders) {
@@ -1 +1 @@
1
- {"version":3,"file":"sql_logging.js","sourceRoot":"","sources":["../../src/Misc/sql_logging.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql_logging.js","sourceRoot":"","sources":["../../src/Misc/sql_logging.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Linear-time helpers for normalizing SQL text before it is embedded in a larger statement or
3
+ * appended to a CodeGen migration log.
4
+ *
5
+ * Why not regex: SQL here is often caller- or configuration-supplied (a `TransitiveView` body, a
6
+ * generated routine), and the obvious patterns — `/[\s;]+$/` to trim, `/(^|\n)\s*GO\s*$/` to detect a
7
+ * trailing batch separator — backtrack quadratically on a long whitespace run that is not at the end
8
+ * of the string (CodeQL js/polynomial-redos). A 200,000-character run took ~32s. These scans are
9
+ * O(n) for any input.
10
+ */
11
+ /** Strips trailing whitespace and `;` statement terminators. */
12
+ export declare function TrimTrailingStatementTerminators(sql: string): string;
13
+ /** @deprecated Use {@link TrimTrailingStatementTerminators}. */
14
+ export declare function trimTrailingStatementTerminators(sql: string): string;
15
+ /**
16
+ * True when the last non-blank line of `text` is exactly `separator` (case-insensitive, surrounding
17
+ * whitespace ignored) — e.g. a unit that already closes its own T-SQL batch with `GO`.
18
+ */
19
+ export declare function EndsWithBatchSeparatorLine(text: string, separator: string): boolean;
20
+ /** @deprecated Use {@link EndsWithBatchSeparatorLine}. */
21
+ export declare function endsWithBatchSeparatorLine(text: string, separator: string): boolean;
22
+ //# sourceMappingURL=sql_text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql_text.d.ts","sourceRoot":"","sources":["../../src/Misc/sql_text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,gEAAgE;AAChE,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMpE;AAED,gEAAgE;AAChE,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAUnF;AAED,0DAA0D;AAC1D,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAEnF"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Linear-time helpers for normalizing SQL text before it is embedded in a larger statement or
3
+ * appended to a CodeGen migration log.
4
+ *
5
+ * Why not regex: SQL here is often caller- or configuration-supplied (a `TransitiveView` body, a
6
+ * generated routine), and the obvious patterns — `/[\s;]+$/` to trim, `/(^|\n)\s*GO\s*$/` to detect a
7
+ * trailing batch separator — backtrack quadratically on a long whitespace run that is not at the end
8
+ * of the string (CodeQL js/polynomial-redos). A 200,000-character run took ~32s. These scans are
9
+ * O(n) for any input.
10
+ */
11
+ /** True for the characters `\s` matches in the regexes these helpers replace. */
12
+ function isWhitespace(ch) {
13
+ return /\s/.test(ch);
14
+ }
15
+ /** Strips trailing whitespace and `;` statement terminators. */
16
+ export function TrimTrailingStatementTerminators(sql) {
17
+ let end = sql.length;
18
+ while (end > 0 && (sql[end - 1] === ';' || isWhitespace(sql[end - 1]))) {
19
+ end--;
20
+ }
21
+ return sql.slice(0, end);
22
+ }
23
+ /** @deprecated Use {@link TrimTrailingStatementTerminators}. */
24
+ export function trimTrailingStatementTerminators(sql) {
25
+ return TrimTrailingStatementTerminators(sql);
26
+ }
27
+ /**
28
+ * True when the last non-blank line of `text` is exactly `separator` (case-insensitive, surrounding
29
+ * whitespace ignored) — e.g. a unit that already closes its own T-SQL batch with `GO`.
30
+ */
31
+ export function EndsWithBatchSeparatorLine(text, separator) {
32
+ if (!separator) {
33
+ return false;
34
+ }
35
+ let end = text.length;
36
+ while (end > 0 && isWhitespace(text[end - 1])) {
37
+ end--;
38
+ }
39
+ const lineStart = text.lastIndexOf('\n', end - 1) + 1;
40
+ return text.slice(lineStart, end).trim().toUpperCase() === separator.trim().toUpperCase();
41
+ }
42
+ /** @deprecated Use {@link EndsWithBatchSeparatorLine}. */
43
+ export function endsWithBatchSeparatorLine(text, separator) {
44
+ return EndsWithBatchSeparatorLine(text, separator);
45
+ }
46
+ //# sourceMappingURL=sql_text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql_text.js","sourceRoot":"","sources":["../../src/Misc/sql_text.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,iFAAiF;AACjF,SAAS,YAAY,CAAC,EAAU;IAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvB,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,gCAAgC,CAAC,GAAW;IAC1D,IAAI,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IACrB,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,EAAE,CAAC;IACR,CAAC;IACD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,gCAAgC,CAAC,GAAW;IAC1D,OAAO,gCAAgC,CAAC,GAAG,CAAC,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAY,EAAE,SAAiB;IACxE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,OAAO,GAAG,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,EAAE,CAAC;IACR,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAC5F,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,0BAA0B,CAAC,IAAY,EAAE,SAAiB;IACxE,OAAO,0BAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACrD,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { SeverityType } from '@memberjunction/core';
2
2
  /** Redirect the CodeGen spinner to {@link stream} (e.g. stderr in JSON mode). */
3
+ export declare function SetCodeGenSpinnerStream(stream: NodeJS.WriteStream): void;
4
+ /** @deprecated Use {@link SetCodeGenSpinnerStream}. */
3
5
  export declare function setCodeGenSpinnerStream(stream: NodeJS.WriteStream): void;
4
6
  /**
5
7
  * Base class for logging, you can sub-class this class to create your own logger and override the logError and logStatus methods if desired.
@@ -33,39 +35,55 @@ export declare class LoggerBase {
33
35
  /**
34
36
  * Start a spinner with a message (non-verbose mode only)
35
37
  */
38
+ StartSpinner(message: string): void;
39
+ /** @deprecated Use {@link StartSpinner}. */
36
40
  startSpinner(message: string): void;
37
41
  /**
38
42
  * Update spinner text (non-verbose mode only). Resets the live elapsed timer so
39
43
  * the displayed duration tracks the new sub-step rather than the prior one.
40
44
  */
45
+ UpdateSpinner(message: string): void;
46
+ /** @deprecated Use {@link UpdateSpinner}. */
41
47
  updateSpinner(message: string): void;
42
48
  /**
43
49
  * Stop spinner with success message
44
50
  */
51
+ SucceedSpinner(message?: string): void;
52
+ /** @deprecated Use {@link SucceedSpinner}. */
45
53
  succeedSpinner(message?: string): void;
46
54
  /**
47
55
  * Stop spinner with failure message
48
56
  */
57
+ FailSpinner(message?: string): void;
58
+ /** @deprecated Use {@link FailSpinner}. */
49
59
  failSpinner(message?: string): void;
50
60
  /**
51
61
  * Stop spinner with warning message
52
62
  */
63
+ WarnSpinner(message?: string): void;
64
+ /** @deprecated Use {@link WarnSpinner}. */
53
65
  warnSpinner(message?: string): void;
54
66
  /**
55
67
  * Stop spinner without status
56
68
  */
69
+ StopSpinner(): void;
70
+ /** @deprecated Use {@link StopSpinner}. */
57
71
  stopSpinner(): void;
58
72
  /**
59
73
  * Logs an error message to the console and to the log file if configured
60
74
  * @param message
61
75
  * @param args
62
76
  */
77
+ LogError(message: string, severity: SeverityType, ...args: any[]): void;
78
+ /** @deprecated Use {@link LogError}. */
63
79
  logError(message: string, severity: SeverityType, ...args: any[]): void;
64
80
  /**
65
81
  * Logs a status message to the console and to the log file if configured
66
82
  * @param message
67
83
  * @param args
68
84
  */
85
+ LogStatus(message: string, severity: SeverityType, ...args: any[]): void;
86
+ /** @deprecated Use {@link LogStatus}. */
69
87
  logStatus(message: string, severity: SeverityType, ...args: any[]): void;
70
88
  /**
71
89
  * Helper function to log a message with a specified severity and whether it is an error
@@ -74,6 +92,8 @@ export declare class LoggerBase {
74
92
  * @param isError Whether to treat this message as an error
75
93
  * @param args Any additional arguments to log
76
94
  */
95
+ LogMessage(message: string, severity: SeverityType, isError: boolean, ...args: any[]): void;
96
+ /** @deprecated Use {@link LogMessage}. */
77
97
  logMessage(message: string, severity: SeverityType, isError: boolean, ...args: any[]): void;
78
98
  protected logToConsole(message: string, isError: boolean, ...args: any[]): void;
79
99
  protected logToFile(message: string, isError: boolean, ...args: any[]): void;
@@ -82,6 +102,8 @@ export declare class LoggerBase {
82
102
  * Wrapper for the LoggerBase.logError method
83
103
  */
84
104
  export declare function logError(message: string, ...args: any[]): void;
105
+ export declare function LogWarning(message: string, ...args: any[]): void;
106
+ /** @deprecated Use {@link LogWarning}. */
85
107
  export declare function logWarning(message: string, ...args: any[]): void;
86
108
  /**
87
109
  * Wrapper for the LoggerBase.logStatus method
@@ -90,11 +112,25 @@ export declare function logStatus(message: string, ...args: any[]): void;
90
112
  /**
91
113
  * Wrapper for the LoggerBase.logMessage method
92
114
  */
115
+ export declare function LogMessage(message: string, severity: SeverityType, isError?: boolean, ...args: any[]): void;
116
+ /** @deprecated Use {@link LogMessage}. */
93
117
  export declare function logMessage(message: string, severity: SeverityType, isError?: boolean, ...args: any[]): void;
118
+ export declare function StartSpinner(message: string): void;
119
+ /** @deprecated Use {@link StartSpinner}. */
94
120
  export declare function startSpinner(message: string): void;
121
+ export declare function UpdateSpinner(message: string): void;
122
+ /** @deprecated Use {@link UpdateSpinner}. */
95
123
  export declare function updateSpinner(message: string): void;
124
+ export declare function SucceedSpinner(message?: string): void;
125
+ /** @deprecated Use {@link SucceedSpinner}. */
96
126
  export declare function succeedSpinner(message?: string): void;
127
+ export declare function FailSpinner(message?: string): void;
128
+ /** @deprecated Use {@link FailSpinner}. */
97
129
  export declare function failSpinner(message?: string): void;
130
+ export declare function WarnSpinner(message?: string): void;
131
+ /** @deprecated Use {@link WarnSpinner}. */
98
132
  export declare function warnSpinner(message?: string): void;
133
+ export declare function StopSpinner(): void;
134
+ /** @deprecated Use {@link StopSpinner}. */
99
135
  export declare function stopSpinner(): void;
100
136
  //# sourceMappingURL=status_logging.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"status_logging.d.ts","sourceRoot":"","sources":["../../src/Misc/status_logging.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,YAAY,EAA2C,MAAM,sBAAsB,CAAA;AAajH,iFAAiF;AACjF,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,GAAG,IAAI,CAExE;AAED;;;;;;;GAOG;AACH,qBAAa,UAAU;IACpB,OAAO,CAAC,QAAQ,CAAa;IAC7B,oFAAoF;IACpF,OAAO,CAAC,mBAAmB,CAAc;IACzC,kFAAkF;IAClF,OAAO,CAAC,aAAa,CAAa;IAClC,+EAA+E;IAC/E,OAAO,CAAC,WAAW,CAA+B;IAElD,OAAO,KAAK,SAAS,GAGpB;IAED,OAAO,CAAC,aAAa;IAMrB,iFAAiF;IACjF,OAAO,CAAC,aAAa;IAIrB;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IAcjB,qDAAqD;IACrD,OAAO,CAAC,QAAQ;IAOhB;;OAEG;IACI,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAgB1C;;;OAGG;IACI,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAgB3C;;OAEG;IACI,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAe7C;;OAEG;IACI,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAe1C;;OAEG;IACI,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAe1C;;OAEG;IACI,WAAW,IAAI,IAAI;IAU1B;;;;OAIG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAOvE;;;;OAIG;IACI,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAOxE;;;;;;OAMG;IACI,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAO3F,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAWxE,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;CAgBvE;AAKD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,QAEvD;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,QAEzD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,QAExD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,UAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAEzG;AAGD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAElD;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAEnD;AAED,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAErD;AAED,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAElD;AAED,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAElD;AAED,wBAAgB,WAAW,IAAI,IAAI,CAElC"}
1
+ {"version":3,"file":"status_logging.d.ts","sourceRoot":"","sources":["../../src/Misc/status_logging.ts"],"names":[],"mappings":"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"}