@sonisoft/now-sdk-ext-core 6.7.0 → 6.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/comm/http/FormHtmlParser.d.ts +2 -2
  2. package/dist/comm/http/FormHtmlParser.js +26 -9
  3. package/dist/comm/http/FormHtmlParser.js.map +1 -1
  4. package/dist/comm/http/FormRecordWriter.d.ts +30 -16
  5. package/dist/comm/http/FormRecordWriter.js +135 -40
  6. package/dist/comm/http/FormRecordWriter.js.map +1 -1
  7. package/dist/comm/http/HTTPRequest.d.ts +4 -0
  8. package/dist/comm/http/RequestHandler.d.ts +1 -0
  9. package/dist/comm/http/RequestHandler.js +34 -22
  10. package/dist/comm/http/RequestHandler.js.map +1 -1
  11. package/dist/comm/http/internal/FormTransportModels.d.ts +26 -0
  12. package/dist/comm/http/internal/FormTransportModels.js +2 -0
  13. package/dist/comm/http/internal/FormTransportModels.js.map +1 -0
  14. package/dist/index.d.ts +5 -1
  15. package/dist/index.js +5 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/sn/metadata/MetadataFormWriter.d.ts +13 -0
  18. package/dist/sn/metadata/MetadataFormWriter.js +264 -0
  19. package/dist/sn/metadata/MetadataFormWriter.js.map +1 -0
  20. package/dist/sn/metadata/MetadataModels.d.ts +44 -0
  21. package/dist/sn/metadata/MetadataModels.js +2 -0
  22. package/dist/sn/metadata/MetadataModels.js.map +1 -0
  23. package/dist/sn/metadata/MetadataScopeError.d.ts +5 -0
  24. package/dist/sn/metadata/MetadataScopeError.js +10 -0
  25. package/dist/sn/metadata/MetadataScopeError.js.map +1 -0
  26. package/dist/sn/metadata/MetadataVerificationError.d.ts +11 -0
  27. package/dist/sn/metadata/MetadataVerificationError.js +20 -0
  28. package/dist/sn/metadata/MetadataVerificationError.js.map +1 -0
  29. package/dist/sn/metadata/internal/MetadataPreferences.d.ts +12 -0
  30. package/dist/sn/metadata/internal/MetadataPreferences.js +27 -0
  31. package/dist/sn/metadata/internal/MetadataPreferences.js.map +1 -0
  32. package/dist/sn/metadata/internal/MetadataReader.d.ts +9 -0
  33. package/dist/sn/metadata/internal/MetadataReader.js +55 -0
  34. package/dist/sn/metadata/internal/MetadataReader.js.map +1 -0
  35. package/package.json +1 -1
@@ -5,7 +5,7 @@ import { DOMParser } from '@xmldom/xmldom';
5
5
  import { StaleInstanceError } from '../../exception/StaleInstanceError.js';
6
6
  import { stripSecretsFromError, redactValue } from '../../util/redact.js';
7
7
  import { checkRequirement } from '../../policy/Policy.js';
8
- import { policyRefusal } from '../../policy/PolicyRefusal.js';
8
+ import { isPolicyRefusal, policyRefusal } from '../../policy/PolicyRefusal.js';
9
9
  import { classify } from '../../policy/internal/Classify.js';
10
10
  import { SessionAuthError } from '../../auth/SessionAuthError.js';
11
11
  //axios.defaults.withCredentials = true;
@@ -76,7 +76,10 @@ export class RequestHandler {
76
76
  * are stripped first, because the consumer's logger has no redaction format of its
77
77
  * own.
78
78
  */
79
- toThrowable(ex) {
79
+ toThrowable(ex, request) {
80
+ if (request?.sensitive && !isPolicyRefusal(ex) && !(ex instanceof SessionAuthError) && !(ex instanceof StaleInstanceError)) {
81
+ return new Error("Sensitive request failed; no payload diagnostics retained");
82
+ }
80
83
  if (ex instanceof Error) {
81
84
  return stripSecretsFromError(ex);
82
85
  }
@@ -183,7 +186,7 @@ export class RequestHandler {
183
186
  async doRequest(request, retried = false) {
184
187
  let response = null;
185
188
  const { config } = await this.getRequestConfig(request);
186
- this._logger.debug("Retrieved Configuration", { config: config });
189
+ this._logger.debug("Retrieved Configuration", this.diagnostic(request, { config: config }));
187
190
  //const { auth, path, params, fields, json, headers: baseHeaders, ...rest } = opts;
188
191
  // let opts = {
189
192
  // auth: this._session,
@@ -205,17 +208,19 @@ export class RequestHandler {
205
208
  this._authHandler.pinSession?.();
206
209
  }
207
210
  let responseBodyString = null;
208
- if (!resp.ok) {
211
+ if (!resp.ok && !(request.redirect === "manual" && resp.status >= 300 && resp.status < 400)) {
209
212
  try {
210
213
  responseBodyString = await resp.text();
211
214
  }
212
215
  catch (e) {
213
216
  responseBodyString = null;
214
217
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
215
- this._logger.error("Error parsing response body.", { error: e });
218
+ this._logger.error("Error parsing response body.", this.diagnostic(request, { error: e }, resp.status));
216
219
  }
217
- this._logger.error("Error during request.", { error: resp, request: request });
218
- this._logger.error("Response Details:", { body: responseBodyString, status: resp.status });
220
+ this._logger.error("Error during request.", this.diagnostic(request, { error: resp, request: request }, resp.status));
221
+ this._logger.error("Response Details:", this.diagnostic(request, { body: responseBodyString, status: resp.status }, resp.status));
222
+ if (request.sensitive)
223
+ throw new Error(`Request failed with status ${resp.status}`);
219
224
  throw new Error("Error during request. Status: " + resp.status + " Body: " + (responseBodyString !== null ? responseBodyString : "[no response body]"));
220
225
  }
221
226
  else {
@@ -225,7 +230,7 @@ export class RequestHandler {
225
230
  catch (e) {
226
231
  responseBodyString = null;
227
232
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
228
- this._logger.error("Error parsing response body.", { error: e });
233
+ this._logger.error("Error parsing response body.", this.diagnostic(request, { error: e }, resp.status));
229
234
  }
230
235
  }
231
236
  // let responseBodyReader = resp.body.getReader();
@@ -276,7 +281,7 @@ export class RequestHandler {
276
281
  const response = null;
277
282
  try {
278
283
  const response = await this.doRequest(request);
279
- this._logger.debug("Http SN POST Response Received", response);
284
+ this._logger.debug("Http SN POST Response Received", this.diagnostic(request, response, response.status));
280
285
  try {
281
286
  if (!((response.data) instanceof String)) {
282
287
  const rpObj = response.data;
@@ -284,13 +289,13 @@ export class RequestHandler {
284
289
  }
285
290
  }
286
291
  catch (ex) {
287
- this._logger.error("Error setting response.bodyObject.", { error: ex, response: response, request: request });
292
+ this._logger.error("Error setting response.bodyObject.", this.diagnostic(request, { error: ex, response: response, request: request }));
288
293
  }
289
294
  return response;
290
295
  }
291
296
  catch (ex) {
292
- this._logger.error("Error during POST request.", { error: ex, response: response, request: request });
293
- throw this.toThrowable(ex);
297
+ this._logger.error("Error during POST request.", this.diagnostic(request, { error: ex, response: response, request: request }));
298
+ throw this.toThrowable(ex, request);
294
299
  }
295
300
  }
296
301
  async put(request) {
@@ -298,7 +303,7 @@ export class RequestHandler {
298
303
  const response = null;
299
304
  try {
300
305
  const response = await this.doRequest(request);
301
- this._logger.debug("Http PUT Response Received", response);
306
+ this._logger.debug("Http PUT Response Received", this.diagnostic(request, response, response.status));
302
307
  try {
303
308
  if (!((response.data) instanceof String)) {
304
309
  const rpObj = response.data;
@@ -311,8 +316,8 @@ export class RequestHandler {
311
316
  return response;
312
317
  }
313
318
  catch (ex) {
314
- this._logger.error("Error during PUT request.", { error: ex, response: response, request: request });
315
- throw this.toThrowable(ex);
319
+ this._logger.error("Error during PUT request.", this.diagnostic(request, { error: ex, response: response, request: request }));
320
+ throw this.toThrowable(ex, request);
316
321
  }
317
322
  }
318
323
  async get(request) {
@@ -320,7 +325,7 @@ export class RequestHandler {
320
325
  const response = null;
321
326
  try {
322
327
  const response = await this.doRequest(request);
323
- this._logger.debug("Http SN GET Response Received", response);
328
+ this._logger.debug("Http SN GET Response Received", this.diagnostic(request, response, response.status));
324
329
  try {
325
330
  if (!((response.data) instanceof String)) {
326
331
  const rpObj = response.data;
@@ -328,13 +333,13 @@ export class RequestHandler {
328
333
  }
329
334
  }
330
335
  catch (ex) {
331
- this._logger.error("Error setting response.bodyObject.", { error: ex, response: response, request: request });
336
+ this._logger.error("Error setting response.bodyObject.", this.diagnostic(request, { error: ex, response: response, request: request }));
332
337
  }
333
338
  return response;
334
339
  }
335
340
  catch (ex) {
336
- this._logger.error("Error during GET request.", { error: ex, response: response, request: request });
337
- throw this.toThrowable(ex);
341
+ this._logger.error("Error during GET request.", this.diagnostic(request, { error: ex, response: response, request: request }));
342
+ throw this.toThrowable(ex, request);
338
343
  }
339
344
  }
340
345
  async delete(request) {
@@ -349,13 +354,13 @@ export class RequestHandler {
349
354
  }
350
355
  }
351
356
  catch (ex) {
352
- this._logger.error("Error setting response.bodyObject.", { error: ex, response: response, request: request });
357
+ this._logger.error("Error setting response.bodyObject.", this.diagnostic(request, { error: ex, response: response, request: request }));
353
358
  }
354
359
  return response;
355
360
  }
356
361
  catch (ex) {
357
- this._logger.error("Error during DELETE request.", { error: ex, response: response, request: request });
358
- throw this.toThrowable(ex);
362
+ this._logger.error("Error during DELETE request.", this.diagnostic(request, { error: ex, response: response, request: request }));
363
+ throw this.toThrowable(ex, request);
359
364
  }
360
365
  }
361
366
  async getRequestConfig(request) {
@@ -386,8 +391,15 @@ export class RequestHandler {
386
391
  config.headers = request.headers;
387
392
  config.path = request.path;
388
393
  config.method = request.method;
394
+ if (request.redirect)
395
+ config.redirect = request.redirect;
389
396
  return { config: config };
390
397
  }
398
+ diagnostic(request, legacy, status) {
399
+ return request.sensitive
400
+ ? { method: request.method, path: request.path.split("?")[0], status }
401
+ : legacy;
402
+ }
391
403
  getQueryString(queryObj) {
392
404
  const params = new URLSearchParams();
393
405
  for (const prop in queryObj) {
@@ -1 +1 @@
1
- {"version":3,"file":"RequestHandler.js","sourceRoot":"","sources":["../../../src/comm/http/RequestHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RequestHandler.js","sourceRoot":"","sources":["../../../src/comm/http/RequestHandler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { FormSnapshot, FormLoadOptions, FormWriteOptions } from '../FormRecordModels.js';
2
+ export interface FormTransportSnapshot extends FormSnapshot {
3
+ renderedInputs?: Record<string, string>;
4
+ pageToken?: string;
5
+ }
6
+ export interface FormTransportLoadOptions extends FormLoadOptions {
7
+ query?: Record<string, string>;
8
+ captureRenderedInputs?: boolean;
9
+ tokenSource?: 'session' | 'page';
10
+ sensitive?: boolean;
11
+ }
12
+ export interface FormTransportSubmitOptions extends FormWriteOptions {
13
+ postAllRenderedInputs?: boolean;
14
+ actionValue?: string;
15
+ extraFields?: Record<string, string>;
16
+ tokenSource?: 'session' | 'page';
17
+ redirect?: 'follow' | 'manual';
18
+ landing?: 'echo' | 'guarded';
19
+ sensitive?: boolean;
20
+ }
21
+ export interface FormTransportResult {
22
+ sysId: string;
23
+ action: string;
24
+ messages: string[];
25
+ errors?: string[];
26
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=FormTransportModels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormTransportModels.js","sourceRoot":"","sources":["../../../../src/comm/http/internal/FormTransportModels.ts"],"names":[],"mappings":""}
package/dist/index.d.ts CHANGED
@@ -39,7 +39,7 @@ export * from './util/utils.js';
39
39
  export * from './comm/http/ActiveSessionRegistry.js';
40
40
  export * from './comm/http/FormHtmlParser.js';
41
41
  export * from './comm/http/FormRecordModels.js';
42
- export * from './comm/http/FormRecordWriter.js';
42
+ export { FormRecordWriter, encodeDuration, encodeFormValue } from './comm/http/FormRecordWriter.js';
43
43
  export * from './comm/http/HTTPRequest.js';
44
44
  export * from './comm/http/HttpResponse.js';
45
45
  export * from './comm/http/ICookieStore.js';
@@ -86,6 +86,10 @@ export * from './sn/health/HealthModels.js';
86
86
  export * from './sn/health/InstanceHealth.js';
87
87
  export * from './sn/knowledge/KnowledgeManager.js';
88
88
  export * from './sn/knowledge/KnowledgeModels.js';
89
+ export * from './sn/metadata/MetadataFormWriter.js';
90
+ export * from './sn/metadata/MetadataModels.js';
91
+ export * from './sn/metadata/MetadataScopeError.js';
92
+ export * from './sn/metadata/MetadataVerificationError.js';
89
93
  export * from './sn/schema/SchemaDiscovery.js';
90
94
  export * from './sn/schema/SchemaModels.js';
91
95
  export * from './sn/scope/ScopeManager.js';
package/dist/index.js CHANGED
@@ -39,7 +39,7 @@ export * from './util/utils.js';
39
39
  export * from './comm/http/ActiveSessionRegistry.js';
40
40
  export * from './comm/http/FormHtmlParser.js';
41
41
  export * from './comm/http/FormRecordModels.js';
42
- export * from './comm/http/FormRecordWriter.js';
42
+ export { FormRecordWriter, encodeDuration, encodeFormValue } from './comm/http/FormRecordWriter.js';
43
43
  export * from './comm/http/HTTPRequest.js';
44
44
  export * from './comm/http/HttpResponse.js';
45
45
  export * from './comm/http/ICookieStore.js';
@@ -86,6 +86,10 @@ export * from './sn/health/HealthModels.js';
86
86
  export * from './sn/health/InstanceHealth.js';
87
87
  export * from './sn/knowledge/KnowledgeManager.js';
88
88
  export * from './sn/knowledge/KnowledgeModels.js';
89
+ export * from './sn/metadata/MetadataFormWriter.js';
90
+ export * from './sn/metadata/MetadataModels.js';
91
+ export * from './sn/metadata/MetadataScopeError.js';
92
+ export * from './sn/metadata/MetadataVerificationError.js';
89
93
  export * from './sn/schema/SchemaDiscovery.js';
90
94
  export * from './sn/schema/SchemaModels.js';
91
95
  export * from './sn/scope/ScopeManager.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wCAAwC,CAAC;AACvD,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AACnD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0CAA0C,CAAC;AACzD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sCAAsC,CAAC;AACrD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kCAAkC,CAAC;AACjD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC;AACvD,cAAc,wCAAwC,CAAC;AACvD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,sCAAsC,CAAC;AACrD,cAAc,qCAAqC,CAAC;AACpD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,yCAAyC,CAAC;AACxD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,mCAAmC,CAAC;AAClD,cAAc,qCAAqC,CAAC;AACpD,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oCAAoC,CAAC;AACnD,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,yCAAyC,CAAC;AACxD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+CAA+C,CAAC;AAC9D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,oCAAoC,CAAC;AACnD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,uCAAuC,CAAC;AACtD,cAAc,kCAAkC,CAAC;AACjD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AAExC,0EAA0E;AAC1E,4EAA4E;AAC5E,gEAAgE;AAChE,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { ServiceNowInstance } from '../ServiceNowInstance.js';
2
+ import type { MetadataWriteOptions, MetadataDeleteOptions, MetadataWriteResult } from './MetadataModels.js';
3
+ /** Scoped metadata CRUD. All form work uses the internal FormRecordWriter seam. */
4
+ export declare class MetadataFormWriter {
5
+ private _instance;
6
+ constructor(_instance: ServiceNowInstance);
7
+ insert(table: string, options: MetadataWriteOptions): Promise<MetadataWriteResult>;
8
+ update(table: string, sysId: string, options: MetadataWriteOptions): Promise<MetadataWriteResult>;
9
+ delete(table: string, sysId: string, options: MetadataDeleteOptions): Promise<MetadataWriteResult>;
10
+ private scope;
11
+ private table;
12
+ private write;
13
+ }
@@ -0,0 +1,264 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { InvalidParameterException } from '../../exception/InvalidParameterException.js';
3
+ import { FormSubmitError } from '../../exception/FormSubmitError.js';
4
+ import { createFormTransport } from '../../comm/http/FormRecordWriter.js';
5
+ import { SessionManager } from '../../comm/http/SessionManager.js';
6
+ import { isPolicyRefusal } from '../../policy/PolicyRefusal.js';
7
+ import { stripSecretsFromError } from '../../util/redact.js';
8
+ import { MetadataScopeError } from './MetadataScopeError.js';
9
+ import { MetadataVerificationError } from './MetadataVerificationError.js';
10
+ import { MetadataReader } from './internal/MetadataReader.js';
11
+ import { comparePreferences, preferenceValue } from './internal/MetadataPreferences.js';
12
+ const ID = /^[a-f0-9]{32}$/i;
13
+ const NAME = /^[a-z0-9_]+$/i;
14
+ const WRITE_DENY = new Set(['sys_update_set', 'sys_update_xml', 'sys_scope', 'sys_app', 'sys_store_app',
15
+ 'sys_db_object', 'sys_dictionary', 'sys_security_acl', 'sys_user_role']);
16
+ const DELETE_DENY = new Set(['sys_documentation', 'sys_package', 'sys_app_module']);
17
+ /** Scoped metadata CRUD. All form work uses the internal FormRecordWriter seam. */
18
+ export class MetadataFormWriter {
19
+ _instance;
20
+ constructor(_instance) {
21
+ this._instance = _instance;
22
+ }
23
+ insert(table, options) {
24
+ return this.write('insert', table, '-1', options);
25
+ }
26
+ update(table, sysId, options) {
27
+ return this.write('update', table, sysId, options);
28
+ }
29
+ delete(table, sysId, options) {
30
+ if (options?.confirm?.table !== table || options?.confirm?.sysId !== sysId) {
31
+ throw new InvalidParameterException('Delete confirmation must match table and sysId');
32
+ }
33
+ return this.write('delete', table, sysId, options);
34
+ }
35
+ async scope(reader, ref) {
36
+ if (!ref)
37
+ throw new MetadataScopeError('scope_required');
38
+ const id = ref === 'global' ? 'global' : typeof ref === 'object' && 'sysId' in ref ? ref.sysId : undefined;
39
+ const name = typeof ref === 'object' && 'scope' in ref ? ref.scope : undefined;
40
+ if (id ? id !== 'global' && !ID.test(id) : !name || !NAME.test(name) || name === 'global') {
41
+ throw new MetadataScopeError('invalid_input');
42
+ }
43
+ const rows = await reader.rows('sys_scope', id ? `sys_id=${id}` : `scope=${name}^active=true`, 'sys_id,scope,active,sys_class_name');
44
+ if (rows.some(row => id ? row.sys_id !== id : row.scope !== name))
45
+ throw new MetadataScopeError('evidence_unavailable');
46
+ if (!rows.length)
47
+ throw new MetadataScopeError('scope_unknown');
48
+ if (rows.length !== 1)
49
+ throw new MetadataScopeError('scope_ambiguous');
50
+ const app = rows[0];
51
+ if ((!id && app.active !== 'true') || !app.scope || (app.sys_id !== 'global' && !ID.test(app.sys_id)))
52
+ throw new MetadataScopeError('evidence_unavailable');
53
+ if (app.sys_class_name === 'sys_store_app')
54
+ throw new MetadataScopeError('store_scope');
55
+ if (await reader.exact('sys_store_app', app.sys_id, 'scope'))
56
+ throw new MetadataScopeError('store_scope');
57
+ return { sysId: app.sys_id, scope: app.scope };
58
+ }
59
+ async table(reader, table, deleting) {
60
+ const visited = new Set();
61
+ let rows = await reader.rows('sys_db_object', `name=${table}`, 'sys_id,name,super_class');
62
+ if (rows.length !== 1 || rows[0].name !== table)
63
+ throw new MetadataScopeError('table_not_supported');
64
+ while (rows.length === 1) {
65
+ const row = rows[0];
66
+ if (visited.has(row.sys_id) || WRITE_DENY.has(row.name) || (deleting && DELETE_DENY.has(row.name))) {
67
+ throw new MetadataScopeError('table_not_supported');
68
+ }
69
+ visited.add(row.sys_id);
70
+ if (row.name === 'sys_metadata')
71
+ return;
72
+ if (!ID.test(row.super_class))
73
+ break;
74
+ const parent = await reader.exact('sys_db_object', row.super_class, 'name,super_class');
75
+ rows = parent ? [parent] : [];
76
+ }
77
+ throw new MetadataScopeError('table_not_supported');
78
+ }
79
+ async write(operation, table, sysId, options) {
80
+ if (!NAME.test(table ?? '') || (operation !== 'insert' && !ID.test(sysId ?? '')))
81
+ throw new MetadataScopeError('invalid_input');
82
+ if (!options?.scope)
83
+ throw new MetadataScopeError('scope_required');
84
+ if (options.updateSet !== undefined && !ID.test(options.updateSet))
85
+ throw new MetadataScopeError('invalid_input');
86
+ const initialQuery = options.initialQuery;
87
+ if (initialQuery && initialQuery.split('^').some(term => !/^(?!sys_)[a-z0-9_]+=[^^]*$/i.test(term) || /javascript:/i.test(term))) {
88
+ throw new MetadataScopeError('field_not_supported');
89
+ }
90
+ let submitted = false;
91
+ let recordId = sysId;
92
+ let report;
93
+ let messages = [];
94
+ try {
95
+ const request = SessionManager.getInstance().getRequest(this._instance);
96
+ const reader = new MetadataReader(request);
97
+ const scope = await this.scope(reader, options.scope);
98
+ await this.table(reader, table, operation === 'delete');
99
+ if (operation !== 'insert') {
100
+ const record = await reader.exact(table, sysId, 'sys_scope');
101
+ if (!record || record.sys_scope !== scope.sysId)
102
+ throw new MetadataScopeError('scope_mismatch');
103
+ }
104
+ // Use the existing WorkflowManager current-user read pattern on this session.
105
+ const users = await reader.rows('sys_user', 'sys_id=javascript:gs.getUserID()', 'sys_id');
106
+ if (users.length !== 1 || !ID.test(users[0].sys_id))
107
+ throw new MetadataScopeError('evidence_unavailable');
108
+ const user = users[0].sys_id;
109
+ const preferences = async () => {
110
+ const rows = await reader.rows('sys_user_preference', `user=${user}`, 'sys_id,user,name,value');
111
+ if (rows.some(row => row.user !== user))
112
+ throw new MetadataScopeError('evidence_unavailable');
113
+ return rows;
114
+ };
115
+ const before = await preferences();
116
+ const predicted = preferenceValue(before, `updateSetForScope${scope.sysId}`);
117
+ const expected = options.updateSet ?? predicted;
118
+ if (expected !== undefined && !ID.test(expected))
119
+ throw new MetadataScopeError('evidence_unavailable');
120
+ if (options.updateSet) {
121
+ const set = await reader.exact('sys_update_set', options.updateSet, 'application,state');
122
+ if (!set || set.state !== 'in progress' || set.application !== scope.sysId)
123
+ throw new MetadataScopeError('invalid_input');
124
+ }
125
+ const transport = createFormTransport(this._instance);
126
+ const form = await transport.loadForm(table, sysId, { ...options,
127
+ query: { sysparm_transaction_scope: scope.sysId, sysparm_isdevstudio: 'true',
128
+ sysparm_referring_url: `${table}.do`, sysparm_nofocus: 'true',
129
+ sysparm_nameofstack: `${randomUUID()}_bottomless` },
130
+ captureRenderedInputs: true, tokenSource: 'page', sensitive: true });
131
+ recordId = form.sysId;
132
+ if (!ID.test(recordId) || form.fields[`${table}.sys_scope`]?.value !== scope.sysId ||
133
+ form.renderedInputs?.sysparm_transaction_scope !== scope.sysId)
134
+ throw new MetadataScopeError('scope_not_applied');
135
+ const writeOptions = options;
136
+ for (const field of Object.keys(writeOptions.fields ?? {})) {
137
+ if (!NAME.test(field) || /^sys_/i.test(field) || !form.fields[`${table}.${field}`])
138
+ throw new MetadataScopeError('field_not_supported');
139
+ }
140
+ const action = operation === 'insert' ? 'sysverb_insert_and_stay' : operation === 'update' ? 'sysverb_update' : 'sysverb_delete';
141
+ if (operation !== 'insert' && !form.actions[action])
142
+ throw new MetadataScopeError('not_permitted');
143
+ if (operation === 'delete') {
144
+ const actionId = form.actions[action];
145
+ if (!ID.test(actionId))
146
+ throw new MetadataScopeError('delete_not_supported');
147
+ const definition = await reader.exact('sys_ui_action', actionId, 'table,action_name,onclick,name');
148
+ if (!definition || definition.table !== 'global' || definition.action_name !== 'sysverb_delete' ||
149
+ definition.name !== 'Delete' || !/^\s*(?:return\s+)?confirmAndDeleteFromForm\(\);?\s*$/.test(definition.onclick)) {
150
+ throw new MetadataScopeError('delete_not_supported');
151
+ }
152
+ }
153
+ transport.validate(form, options);
154
+ // Form GETs are part of the measured interval: never replace the original baseline.
155
+ const loaded = await preferences();
156
+ if (!comparePreferences(before, loaded).valid)
157
+ throw new MetadataVerificationError('session_changed', table, recordId, undefined, [], false);
158
+ const previousCaptures = await reader.rows('sys_update_xml', `name=${table}_${recordId}`, 'sys_id,name,sys_mod_count');
159
+ if (previousCaptures.some(row => row.name !== `${table}_${recordId}` || !/^\d+$/.test(row.sys_mod_count))) {
160
+ throw new MetadataScopeError('evidence_unavailable');
161
+ }
162
+ const captureVersions = new Map(previousCaptures.map(row => [row.sys_id, row.sys_mod_count]));
163
+ const started = new Date().toISOString().slice(0, 19).replace('T', ' ');
164
+ submitted = true;
165
+ let submitFailure;
166
+ try {
167
+ const result = await transport.submit(form, action, { ...options, postAllRenderedInputs: true,
168
+ tokenSource: 'page', actionValue: operation === 'update' ? form.actions[action] : action,
169
+ extraFields: { sysparm_transaction_scope: scope.sysId, sysparm_transaction_update_set: options.updateSet ?? '',
170
+ sysparm_record_scope: '', sysparm_goto_url: '' },
171
+ redirect: 'manual', landing: 'guarded', sensitive: true });
172
+ messages = [...result.messages, ...(result.errors ?? [])];
173
+ }
174
+ catch (error) {
175
+ if (isPolicyRefusal(error))
176
+ throw error;
177
+ submitFailure = error;
178
+ }
179
+ report = { predictedUpdateSetSysId: predicted };
180
+ // A confirmed interceptor rejection takes precedence, but must not omit obtainable evidence.
181
+ const csrfRejected = submitFailure instanceof Error && submitFailure.message === 'csrf_rejected';
182
+ // Guard interpretation as well as reads so ambiguous evidence cannot mask the rejection.
183
+ const collectEvidence = async (collect) => {
184
+ try {
185
+ return await collect();
186
+ }
187
+ catch (error) {
188
+ if (isPolicyRefusal(error) || !csrfRejected)
189
+ throw error;
190
+ return undefined;
191
+ }
192
+ };
193
+ const record = await collectEvidence(() => reader.exact(table, recordId, 'sys_scope'));
194
+ report.recordScope = record?.sys_scope ?? (!csrfRejected && operation === 'delete' ? scope.sysId : undefined);
195
+ const observedCaptures = await collectEvidence(() => reader.rows('sys_update_xml', `name=${table}_${recordId}^sys_updated_on>=${started}`, 'sys_id,name,update_set,application,action,sys_updated_on,sys_mod_count')) ?? [];
196
+ const after = await collectEvidence(preferences);
197
+ const comparison = after ? await collectEvidence(() => comparePreferences(before, after, [predicted, options.updateSet].filter(Boolean))) : undefined;
198
+ if (comparison)
199
+ Object.assign(report, { preferencesUnchanged: comparison.unchanged, preferenceRowsReplaced: comparison.replaced,
200
+ currentUpdateSet: comparison.currentUpdateSet });
201
+ const captures = observedCaptures.filter(row => captureVersions.get(row.sys_id) !== row.sys_mod_count);
202
+ const fail = (code) => {
203
+ throw new MetadataVerificationError(code, table, recordId, report, messages);
204
+ };
205
+ if (!csrfRejected) {
206
+ if (operation === 'delete' ? !!record : !record)
207
+ fail(operation === 'delete' ? 'delete_not_applied' : 'write_not_applied');
208
+ if (record && record.sys_scope !== scope.sysId)
209
+ fail('scope_not_applied');
210
+ if (observedCaptures.some(row => row.name !== `${table}_${recordId}` || row.sys_updated_on < started || !/^\d+$/.test(row.sys_mod_count)))
211
+ fail('not_captured');
212
+ if (!captures.length)
213
+ fail('not_captured');
214
+ }
215
+ for (const capture of captures) {
216
+ if (!ID.test(capture.update_set)) {
217
+ if (!csrfRejected)
218
+ fail('not_captured');
219
+ continue;
220
+ }
221
+ const set = await collectEvidence(() => reader.exact('sys_update_set', capture.update_set, 'name,application'));
222
+ if (!set) {
223
+ if (!csrfRejected)
224
+ fail('not_captured');
225
+ continue;
226
+ }
227
+ Object.assign(report, { updateSetSysId: set.sys_id, updateSetName: set.name, updateSetScope: set.application, action: capture.action });
228
+ if (!csrfRejected) {
229
+ if (expected && set.sys_id !== expected)
230
+ fail('captured_elsewhere');
231
+ if (!options.allowMixedScopeCapture && (set.application !== scope.sysId || capture.application !== scope.sysId))
232
+ fail('mixed_scope_capture');
233
+ if (capture.action !== (operation === 'delete' ? 'DELETE' : 'INSERT_OR_UPDATE'))
234
+ fail('not_captured');
235
+ }
236
+ }
237
+ if (operation === 'delete') {
238
+ const deleted = await collectEvidence(() => reader.rows('sys_metadata_delete', `sys_metadata=${recordId}^sys_created_on>=${started}`, 'sys_id,sys_metadata,sys_scope,sys_created_on'));
239
+ if (!csrfRejected && (!deleted.length || deleted.some(row => row.sys_metadata !== recordId || row.sys_scope !== scope.sysId || row.sys_created_on < started)))
240
+ fail('delete_not_captured');
241
+ }
242
+ if (csrfRejected)
243
+ fail('csrf_rejected');
244
+ if (!comparison.valid)
245
+ fail('session_changed');
246
+ if (submitFailure)
247
+ fail(submitFailure instanceof Error && submitFailure.message === 'csrf_rejected' ? 'csrf_rejected' : 'verification_unavailable');
248
+ return { table, sysId: recordId, action: operation, scope, capture: report, messages };
249
+ }
250
+ catch (error) {
251
+ if (isPolicyRefusal(error) || (!submitted && error instanceof MetadataScopeError) || error instanceof MetadataVerificationError)
252
+ throw stripSecretsFromError(error);
253
+ if (!submitted && error instanceof Error && error.message === 'csrf_token_unavailable')
254
+ throw new MetadataScopeError('csrf_token_unavailable');
255
+ if (!submitted)
256
+ throw new MetadataScopeError(error instanceof InvalidParameterException ? 'field_not_supported' : 'evidence_unavailable');
257
+ if (error instanceof FormSubmitError)
258
+ messages = error.messages;
259
+ throw new MetadataVerificationError(error instanceof Error && error.message === 'csrf_rejected' ? 'csrf_rejected' :
260
+ 'verification_unavailable', table, recordId, report, messages);
261
+ }
262
+ }
263
+ }
264
+ //# sourceMappingURL=MetadataFormWriter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetadataFormWriter.js","sourceRoot":"","sources":["../../../src/sn/metadata/MetadataFormWriter.ts"],"names":[],"mappings":"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"}