@sonisoft/now-sdk-ext-core 2.0.0-alpha.1 โ†’ 2.0.0-alpha.3

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/README.md CHANGED
@@ -1,3 +1,637 @@
1
- # ServiceNow SDK Extensions
1
+ # ServiceNow SDK Extensions Core
2
2
 
3
- This library contains functionality that enhances and extends the ServiceNow SDK to enhance the development experience on ServiceNow.
3
+ [![npm version](https://img.shields.io/npm/v/@sonisoft/now-sdk-ext-core.svg)](https://www.npmjs.com/package/@sonisoft/now-sdk-ext-core)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
5
+ [![Node.js Version](https://img.shields.io/badge/node-%3E%3D14.0.0-brightgreen)](https://nodejs.org)
6
+
7
+ A comprehensive TypeScript library that extends the ServiceNow SDK with powerful features for application management, automated testing, log monitoring, and more. Perfect for CI/CD pipelines, development automation, and DevOps workflows.
8
+
9
+ ## โœจ Features
10
+
11
+ - ๐Ÿš€ **Application Management** - Install, upgrade, and manage ServiceNow applications programmatically
12
+ - ๐Ÿงช **ATF Test Execution** - Run automated tests and get detailed results
13
+ - ๐Ÿ“Š **Real-time Log Monitoring** - Tail ServiceNow logs with two efficient methods
14
+ - ๐Ÿ”„ **AMB (Asynchronous Message Bus)** - WebSocket-based real-time event monitoring
15
+ - ๐Ÿ“ **Background Script Execution** - Execute server-side scripts programmatically
16
+ - ๐Ÿ” **Authentication** - Seamless integration with ServiceNow CLI authentication
17
+ - ๐Ÿ“ก **Table API** - Full CRUD operations on ServiceNow tables
18
+ - ๐Ÿ› ๏ธ **Type-Safe** - Complete TypeScript definitions for all APIs
19
+
20
+ ## ๐Ÿ“ฆ Installation
21
+
22
+ ```bash
23
+ npm install @sonisoft/now-sdk-ext-core
24
+ ```
25
+
26
+ ### Prerequisites
27
+
28
+ - Node.js 14.x or higher
29
+ - ServiceNow CLI configured with instance credentials
30
+ - TypeScript 4.x or higher (optional, for TypeScript projects)
31
+
32
+ ### ServiceNow CLI Setup
33
+
34
+ ```bash
35
+ # Install ServiceNow CLI globally
36
+ npm install -g @servicenow/sdk
37
+
38
+ # Configure your instance credentials
39
+ snc configure profile set
40
+ ```
41
+
42
+ ## ๐Ÿš€ Quick Start
43
+
44
+ ### Basic Connection
45
+
46
+ ```typescript
47
+ import { ServiceNowInstance } from '@sonisoft/now-sdk-ext-core';
48
+ import { getCredentials } from '@servicenow/sdk-cli/dist/auth/index.js';
49
+
50
+ // Get credentials from ServiceNow CLI
51
+ const credential = await getCredentials('your-instance-alias');
52
+
53
+ // Create instance connection
54
+ const instance = new ServiceNowInstance({
55
+ alias: 'your-instance-alias',
56
+ credential: credential
57
+ });
58
+ ```
59
+
60
+ ### Real-Time Log Monitoring
61
+
62
+ ```typescript
63
+ import { SyslogReader } from '@sonisoft/now-sdk-ext-core';
64
+
65
+ const syslogReader = new SyslogReader(instance);
66
+
67
+ // Method 1: Using ChannelAjax (faster, more efficient)
68
+ await syslogReader.startTailingWithChannelAjax({
69
+ interval: 1000, // Poll every second
70
+ onLog: (log) => {
71
+ console.log(`[${log.sequence}] ${log.message}`);
72
+ },
73
+ outputFile: './logs/servicenow.log'
74
+ });
75
+
76
+ // Method 2: Using Table API (supports filtering)
77
+ await syslogReader.startTailing('syslog', {
78
+ interval: 5000,
79
+ query: 'level=error^ORDERBYDESCsys_created_on',
80
+ onLog: (log) => {
81
+ console.error(`ERROR: ${log.message}`);
82
+ }
83
+ });
84
+
85
+ // Stop tailing
86
+ syslogReader.stopTailing();
87
+ ```
88
+
89
+ ### Execute Background Scripts
90
+
91
+ ```typescript
92
+ import { BackgroundScriptExecutor } from '@sonisoft/now-sdk-ext-core';
93
+
94
+ const executor = new BackgroundScriptExecutor(instance, 'global');
95
+
96
+ const script = `
97
+ var gr = new GlideRecord('incident');
98
+ gr.addQuery('active', true);
99
+ gr.query();
100
+ gs.info('Active incidents: ' + gr.getRowCount());
101
+ `;
102
+
103
+ const result = await executor.executeScript(script);
104
+ console.log('Script output:', result.output);
105
+ ```
106
+
107
+ ### Run ATF Tests
108
+
109
+ ```typescript
110
+ import { ATFTestExecutor } from '@sonisoft/now-sdk-ext-core';
111
+
112
+ const testExecutor = new ATFTestExecutor(instance);
113
+
114
+ // Execute a test suite
115
+ const result = await testExecutor.executeTestSuite('test_suite_sys_id', {
116
+ timeout: 300000,
117
+ onProgress: (update) => {
118
+ console.log(`Progress: ${update.progress}% - ${update.status}`);
119
+ }
120
+ });
121
+
122
+ console.log(`Tests passed: ${result.testsPassedCount}/${result.totalTests}`);
123
+ ```
124
+
125
+ ## ๐Ÿ“š Core Features
126
+
127
+ ### 1. Application Management
128
+
129
+ Programmatically manage ServiceNow applications, plugins, and updates.
130
+
131
+ ```typescript
132
+ import { ApplicationManager, BatchInstallation } from '@sonisoft/now-sdk-ext-core';
133
+
134
+ const appManager = new ApplicationManager(instance);
135
+
136
+ // Install from batch definition
137
+ const success = await appManager.installBatch('./batch-definition.json');
138
+
139
+ // Get application details
140
+ const appDetails = await appManager.getApplicationDetails('com.example.my_app');
141
+
142
+ // Check which apps need updates
143
+ const needsAction = await appManager.getApplicationsNeedingAction('./batch-definition.json');
144
+ ```
145
+
146
+ **Batch Definition Example:**
147
+ ```json
148
+ {
149
+ "packages": [
150
+ {
151
+ "id": "com.snc.sdlc.agile.multi.2.0",
152
+ "type": "plugin",
153
+ "load_demo_data": false
154
+ },
155
+ {
156
+ "id": "sn_cicd_spoke",
157
+ "type": "application",
158
+ "version": "1.2.3",
159
+ "load_demo_data": false
160
+ }
161
+ ]
162
+ }
163
+ ```
164
+
165
+ ### 2. ATF (Automated Test Framework) Testing
166
+
167
+ Execute tests and retrieve detailed results programmatically.
168
+
169
+ ```typescript
170
+ import { ATFTestExecutor } from '@sonisoft/now-sdk-ext-core';
171
+
172
+ const testExecutor = new ATFTestExecutor(instance);
173
+
174
+ // Execute a single test
175
+ const result = await testExecutor.executeTest('test_sys_id', {
176
+ timeout: 120000,
177
+ onProgress: (update) => {
178
+ console.log(`Test: ${update.testName} - ${update.status}`);
179
+ }
180
+ });
181
+
182
+ // Execute test suite
183
+ const suiteResult = await testExecutor.executeTestSuite('suite_sys_id', {
184
+ timeout: 600000,
185
+ pollInterval: 5000
186
+ });
187
+
188
+ // Get detailed results
189
+ console.log(`Pass Rate: ${(suiteResult.testsPassedCount / suiteResult.totalTests * 100).toFixed(2)}%`);
190
+ console.log(`Failed Tests:`, suiteResult.testResults.filter(t => t.status === 'failure'));
191
+ ```
192
+
193
+ ### 3. Syslog Reading & Monitoring
194
+
195
+ Two methods for log monitoring, each optimized for different use cases.
196
+
197
+ #### ChannelAjax Method (Recommended for Real-Time)
198
+
199
+ **Benefits:**
200
+ - โšก Faster (1s default polling vs 5s)
201
+ - ๐ŸŽฏ 100% reliable (sequence-based tracking)
202
+ - ๐Ÿ’ช Minimal server load
203
+ - โœ… No duplicates or missed logs
204
+
205
+ ```typescript
206
+ import { SyslogReader } from '@sonisoft/now-sdk-ext-core';
207
+
208
+ const syslogReader = new SyslogReader(instance);
209
+
210
+ await syslogReader.startTailingWithChannelAjax({
211
+ interval: 1000,
212
+ onLog: (log) => {
213
+ const timestamp = new Date(log.sys_created_on).toLocaleString();
214
+ console.log(`[${timestamp}] [Seq:${log.sequence}] ${log.message}`);
215
+ },
216
+ outputFile: './logs/tail.log'
217
+ });
218
+ ```
219
+
220
+ #### Table API Method (Supports Filtering)
221
+
222
+ **Benefits:**
223
+ - ๐Ÿ” Server-side filtering with encoded queries
224
+ - ๐Ÿ“‹ Access to syslog_app_scope table
225
+ - ๐ŸŽจ Custom field selection
226
+ - ๐Ÿ“Š Rich formatting options
227
+
228
+ ```typescript
229
+ await syslogReader.startTailing('syslog', {
230
+ interval: 5000,
231
+ query: 'level=error^sys_created_on>javascript:gs.minutesAgoStart(10)',
232
+ onLog: (log) => {
233
+ if (log.level === 'error') {
234
+ sendAlert(log);
235
+ }
236
+ },
237
+ formatOptions: {
238
+ fields: ['sys_created_on', 'level', 'source', 'message'],
239
+ dateFormat: 'relative',
240
+ maxMessageWidth: 100
241
+ }
242
+ });
243
+ ```
244
+
245
+ #### Query and Export Logs
246
+
247
+ ```typescript
248
+ // Query recent errors
249
+ const errors = await syslogReader.querySyslog(
250
+ 'level=error^ORDERBYDESCsys_created_on',
251
+ 50
252
+ );
253
+
254
+ // Print formatted table
255
+ syslogReader.printTable(errors, {
256
+ fields: ['sys_created_on', 'level', 'source', 'message'],
257
+ maxMessageWidth: 80
258
+ });
259
+
260
+ // Export to file
261
+ await syslogReader.saveToFile(errors, './logs/errors.json', 'json');
262
+ await syslogReader.saveToFile(errors, './logs/errors.csv', 'csv');
263
+ await syslogReader.saveToFile(errors, './logs/errors.txt', 'table');
264
+ ```
265
+
266
+ ### 4. AMB (Asynchronous Message Bus)
267
+
268
+ Monitor real-time events and record changes via WebSocket.
269
+
270
+ ```typescript
271
+ import { AMBClient, MessageClientBuilder } from '@sonisoft/now-sdk-ext-core';
272
+
273
+ const builder = new MessageClientBuilder();
274
+ const subscriptions = builder.buildClientSubscriptions();
275
+ const client = new AMBClient(subscriptions, instance);
276
+
277
+ // Authenticate and connect
278
+ await client.authenticate();
279
+ client.connect();
280
+
281
+ // Watch for incident changes
282
+ const channel = client.getRecordWatcherChannel('incident', 'active=true', null, {
283
+ subscriptionCallback: (message) => {
284
+ console.log('Incident updated:', message);
285
+ }
286
+ });
287
+
288
+ channel.subscribe((message) => {
289
+ console.log('Change detected:', message);
290
+ });
291
+
292
+ // Disconnect when done
293
+ client.disconnect();
294
+ ```
295
+
296
+ ### 5. Table API Operations
297
+
298
+ Full CRUD operations on ServiceNow tables.
299
+
300
+ ```typescript
301
+ import { TableAPIRequest } from '@sonisoft/now-sdk-ext-core';
302
+
303
+ const tableAPI = new TableAPIRequest(instance);
304
+
305
+ // Create a record
306
+ const createResponse = await tableAPI.post('incident', {}, {
307
+ short_description: 'Test incident',
308
+ urgency: '2',
309
+ impact: '2'
310
+ });
311
+
312
+ // Read records
313
+ const readResponse = await tableAPI.get('incident', {
314
+ sysparm_query: 'active=true',
315
+ sysparm_limit: 10
316
+ });
317
+
318
+ // Update a record
319
+ const updateResponse = await tableAPI.put('incident', 'sys_id_here', {
320
+ state: '6', // Resolved
321
+ close_notes: 'Issue resolved'
322
+ });
323
+
324
+ // Partial update
325
+ const patchResponse = await tableAPI.patch('incident', 'sys_id_here', {
326
+ work_notes: 'Added update via API'
327
+ });
328
+ ```
329
+
330
+ ### 6. Background Script Execution
331
+
332
+ Execute server-side GlideScript with full control.
333
+
334
+ ```typescript
335
+ import { BackgroundScriptExecutor } from '@sonisoft/now-sdk-ext-core';
336
+
337
+ const executor = new BackgroundScriptExecutor(instance, 'global');
338
+
339
+ // Execute script
340
+ const result = await executor.executeScript(`
341
+ var gr = new GlideRecord('sys_user');
342
+ gr.addQuery('active', true);
343
+ gr.addQuery('last_login', '>', gs.daysAgoStart(30));
344
+ gr.query();
345
+
346
+ var count = gr.getRowCount();
347
+ gs.info('Active users (last 30 days): ' + count);
348
+
349
+ return count;
350
+ `);
351
+
352
+ console.log('Script output:', result.output);
353
+ console.log('Return value:', result.result);
354
+ ```
355
+
356
+ ## ๐Ÿ“– API Reference
357
+
358
+ ### Core Classes
359
+
360
+ - **`ServiceNowInstance`** - Instance connection and configuration
361
+ - **`ServiceNowRequest`** - HTTP request handling with authentication
362
+ - **`TableAPIRequest`** - ServiceNow Table API wrapper
363
+
364
+ ### Application Management
365
+
366
+ - **`ApplicationManager`** - High-level application management
367
+ - **`AppRepoApplication`** - App repository operations
368
+ - **`BatchDefinition`** - Batch installation definitions
369
+ - **`CompanyApplications`** - Company application queries
370
+
371
+ ### Testing & Automation
372
+
373
+ - **`ATFTestExecutor`** - ATF test execution and monitoring
374
+ - **`BackgroundScriptExecutor`** - Server-side script execution
375
+
376
+ ### Logging & Monitoring
377
+
378
+ - **`SyslogReader`** - Log querying and real-time monitoring
379
+ - **`AMBClient`** - Real-time event subscriptions
380
+ - **`MessageClientBuilder`** - AMB client configuration
381
+
382
+ ### Utilities
383
+
384
+ - **`Logger`** - Winston-based logging
385
+ - **`NowStringUtil`** - String manipulation utilities
386
+ - **`AppUtil`** - Application utility functions
387
+
388
+ ## ๐ŸŽฏ Use Cases
389
+
390
+ ### CI/CD Pipeline Integration
391
+
392
+ ```typescript
393
+ // Install required apps before deployment
394
+ const appManager = new ApplicationManager(instance);
395
+ await appManager.installBatch('./required-apps.json');
396
+
397
+ // Run tests
398
+ const testExecutor = new ATFTestExecutor(instance);
399
+ const testResults = await testExecutor.executeTestSuite('deployment_test_suite');
400
+
401
+ if (testResults.testsPassedCount !== testResults.totalTests) {
402
+ throw new Error('Tests failed, aborting deployment');
403
+ }
404
+ ```
405
+
406
+ ### Log Analysis & Monitoring
407
+
408
+ ```typescript
409
+ // Real-time error monitoring with alerts
410
+ const syslogReader = new SyslogReader(instance);
411
+
412
+ await syslogReader.startTailing('syslog', {
413
+ query: 'level=error',
414
+ onLog: async (log) => {
415
+ if (log.message.includes('OutOfMemory')) {
416
+ await sendPageAlert('Critical: OOM detected');
417
+ }
418
+ await saveToElasticsearch(log);
419
+ }
420
+ });
421
+ ```
422
+
423
+ ### Data Migration Scripts
424
+
425
+ ```typescript
426
+ const executor = new BackgroundScriptExecutor(instance, 'global');
427
+ const tableAPI = new TableAPIRequest(instance);
428
+
429
+ // Export data
430
+ const response = await tableAPI.get('custom_table', {
431
+ sysparm_limit: 1000,
432
+ sysparm_query: 'sys_created_on>2024-01-01'
433
+ });
434
+
435
+ // Process and transform
436
+ const records = response.bodyObject.result;
437
+ // ... transformation logic ...
438
+
439
+ // Import to another instance
440
+ for (const record of transformedRecords) {
441
+ await targetTableAPI.post('target_table', {}, record);
442
+ }
443
+ ```
444
+
445
+ ## ๐Ÿ“‹ Command-Line Tools
446
+
447
+ The library includes ready-to-use CLI tools:
448
+
449
+ ### Log Tailing (ChannelAjax)
450
+ ```bash
451
+ node docs/examples/syslog-tail-channel.mjs your-instance ./logs/tail.log 1000
452
+ ```
453
+
454
+ ### Log Tailing (Table API)
455
+ ```bash
456
+ node docs/examples/syslog-tail.mjs your-instance error ./logs/errors.log
457
+ ```
458
+
459
+ ## ๐Ÿ“š Documentation
460
+
461
+ Comprehensive documentation is available in the `/docs` directory:
462
+
463
+ - **[Getting Started](./docs/GettingStarted.md)** - Setup and basic usage
464
+ - **[API Reference](./docs/APIReference.md)** - Complete API documentation
465
+ - **[Application Manager](./docs/ApplicationManager.md)** - Application management guide
466
+ - **[ATF Test Executor](./docs/ATFTestExecutor.md)** - Testing automation
467
+ - **[Syslog Reader](./docs/SyslogReader.md)** - Log monitoring guide
468
+ - **[ChannelAjax Tailing](./docs/SyslogReaderChannelAjax.md)** - Advanced log tailing
469
+ - **[AMB Guide](./docs/AMB_FIX_SUMMARY.md)** - Real-time event monitoring
470
+ - **[Examples](./docs/examples/)** - Working code examples
471
+
472
+ ## ๐Ÿ”ง Advanced Configuration
473
+
474
+ ### Custom Request Handlers
475
+
476
+ ```typescript
477
+ import { RequestHandler, ServiceNowInstance } from '@sonisoft/now-sdk-ext-core';
478
+
479
+ const handler = new RequestHandler(instance, {
480
+ timeout: 30000,
481
+ maxRetries: 3,
482
+ retryDelay: 1000
483
+ });
484
+ ```
485
+
486
+ ### Custom Logging
487
+
488
+ ```typescript
489
+ import { Logger } from '@sonisoft/now-sdk-ext-core';
490
+
491
+ const logger = Logger.createLogger('MyApp');
492
+ logger.info('Application started');
493
+ logger.error('Error occurred', { details: errorObj });
494
+ ```
495
+
496
+ ### Authentication Handler
497
+
498
+ ```typescript
499
+ import { NowSDKAuthenticationHandler } from '@sonisoft/now-sdk-ext-core';
500
+
501
+ const authHandler = new NowSDKAuthenticationHandler(
502
+ 'instance-alias',
503
+ credential
504
+ );
505
+
506
+ const token = await authHandler.getToken();
507
+ ```
508
+
509
+ ## ๐Ÿค TypeScript Support
510
+
511
+ The library is written in TypeScript and includes full type definitions:
512
+
513
+ ```typescript
514
+ import type {
515
+ ServiceNowInstance,
516
+ SyslogRecord,
517
+ ATFTestResult,
518
+ ApplicationDetailModel,
519
+ BatchDefinition
520
+ } from '@sonisoft/now-sdk-ext-core';
521
+ ```
522
+
523
+ ## ๐Ÿ› Error Handling
524
+
525
+ ```typescript
526
+ import {
527
+ FileException,
528
+ InvalidParameterException
529
+ } from '@sonisoft/now-sdk-ext-core';
530
+
531
+ try {
532
+ await appManager.installBatch('./batch.json');
533
+ } catch (error) {
534
+ if (error instanceof FileException) {
535
+ console.error('File not found:', error.message);
536
+ } else if (error instanceof InvalidParameterException) {
537
+ console.error('Invalid parameter:', error.message);
538
+ } else {
539
+ console.error('Unexpected error:', error);
540
+ }
541
+ }
542
+ ```
543
+
544
+ ## โšก Performance Tips
545
+
546
+ 1. **Use ChannelAjax for log tailing** - 5x faster than Table API polling
547
+ 2. **Batch operations** - Group multiple API calls when possible
548
+ 3. **Adjust poll intervals** - Balance responsiveness vs. API load
549
+ 4. **Use encoded queries** - Server-side filtering is more efficient
550
+ 5. **Implement retry logic** - Handle transient network issues
551
+
552
+ ## ๐Ÿ”’ Security Best Practices
553
+
554
+ 1. **Never hardcode credentials** - Use ServiceNow CLI authentication
555
+ 2. **Use environment variables** - For configuration
556
+ 3. **Implement role-based access** - Verify user permissions
557
+ 4. **Audit API usage** - Log all operations
558
+ 5. **Use HTTPS** - Always use secure connections
559
+
560
+ ## ๐Ÿ“ฆ Dependencies
561
+
562
+ - `@servicenow/sdk` - ServiceNow SDK
563
+ - `@servicenow/sdk-cli` - ServiceNow CLI tools
564
+ - `cometd` - WebSocket support for AMB
565
+ - `xml2js` - XML parsing
566
+ - `winston` - Logging
567
+ - `axios` - HTTP client
568
+
569
+ ## ๐Ÿงช Testing
570
+
571
+ ```bash
572
+ # Run all tests
573
+ npm test
574
+
575
+ # Run specific test suite
576
+ npm test -- --testPathPattern=SyslogReader
577
+
578
+ # Run with coverage
579
+ npm test -- --coverage
580
+ ```
581
+
582
+ ## ๐Ÿ—๏ธ Building from Source
583
+
584
+ ```bash
585
+ # Clone the repository
586
+ git clone <repository-url>
587
+
588
+ # Install dependencies
589
+ npm install
590
+
591
+ # Build TypeScript
592
+ npm run buildts
593
+
594
+ # Run tests
595
+ npm test
596
+
597
+ # Create package
598
+ npm pack
599
+ ```
600
+
601
+ ## ๐Ÿ“ License
602
+
603
+ MIT License - see LICENSE file for details
604
+
605
+ ## ๐Ÿ™ Contributing
606
+
607
+ Contributions are welcome! Please:
608
+
609
+ 1. Fork the repository
610
+ 2. Create a feature branch
611
+ 3. Make your changes with tests
612
+ 4. Submit a pull request
613
+
614
+ ## ๐Ÿ“ž Support
615
+
616
+ For issues, questions, or contributions:
617
+
618
+ - ๐Ÿ“ง Create an issue in the repository
619
+ - ๐Ÿ“– Check the documentation in `/docs`
620
+ - ๐Ÿ’ฌ Review existing examples in `/docs/examples`
621
+
622
+ ## ๐Ÿ—บ๏ธ Roadmap
623
+
624
+ - [ ] GraphQL API support
625
+ - [ ] Webhook integration
626
+ - [ ] Enhanced batch operations
627
+ - [ ] Performance metrics
628
+ - [ ] CLI tool package
629
+ - [ ] Plugin development tools
630
+
631
+ ## ๐Ÿ“ˆ Version History
632
+
633
+ See [CHANGELOG](./CHANGELOG.md) for version history and release notes.
634
+
635
+ ---
636
+
637
+ **Made with โค๏ธ for the ServiceNow Developer Community**
@@ -67,12 +67,32 @@ export class RequestHandler {
67
67
  // rest: { method: request.method }
68
68
  // }
69
69
  const resp = await makeRequest(config);
70
- // if (!resp.ok) {
71
- // await (parseResponseBody)(resp.clone());
72
- // }
70
+ let responseBodyString = null;
71
+ if (!resp.ok) {
72
+ try {
73
+ responseBodyString = await resp.text();
74
+ }
75
+ catch (e) {
76
+ responseBodyString = null;
77
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
78
+ this._logger.error("Error parsing response body.", { error: e });
79
+ }
80
+ this._logger.error("Error during request.", { error: resp, request: request });
81
+ this._logger.error("Response Details:", { body: responseBodyString, status: resp.status });
82
+ throw new Error("Error during request. Status: " + resp.status + " Body: " + (responseBodyString !== null ? responseBodyString : "[no response body]"));
83
+ }
84
+ else {
85
+ try {
86
+ responseBodyString = await resp.text();
87
+ }
88
+ catch (e) {
89
+ responseBodyString = null;
90
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
91
+ this._logger.error("Error parsing response body.", { error: e });
92
+ }
93
+ }
73
94
  // let responseBodyReader = resp.body.getReader();
74
95
  // let responseBody = await responseBodyReader.read();
75
- const responseBodyString = await resp.text();
76
96
  if (responseBodyString) {
77
97
  //const xml = await ( parseXml)(responseBodyString);
78
98
  //const answer = xml['xml']['@_answer'];
@@ -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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"}
@@ -9,6 +9,8 @@ export declare class TableAPIRequest {
9
9
  constructor(instance: IServiceNowInstance);
10
10
  get<T>(tableName: string, query: object): Promise<IHttpResponse<T>>;
11
11
  post<T>(tableName: string, query: object, body: object): Promise<IHttpResponse<T>>;
12
+ put<T>(tableName: string, sysId: string, body: object): Promise<IHttpResponse<T>>;
13
+ patch<T>(tableName: string, sysId: string, body: object): Promise<IHttpResponse<T>>;
12
14
  private _doRequest;
13
15
  private replaceVar;
14
16
  }
@@ -23,6 +23,14 @@ export class TableAPIRequest {
23
23
  const uri = this.replaceVar(this._apiBase, { table_name: tableName });
24
24
  return await this._doRequest(uri, "post", query, body);
25
25
  }
26
+ async put(tableName, sysId, body) {
27
+ const uri = this.replaceVar(this._apiBase, { table_name: tableName }) + '/' + sysId;
28
+ return await this._doRequest(uri, "put", null, body);
29
+ }
30
+ async patch(tableName, sysId, body) {
31
+ const uri = this.replaceVar(this._apiBase, { table_name: tableName }) + '/' + sysId;
32
+ return await this._doRequest(uri, "patch", null, body);
33
+ }
26
34
  async _doRequest(uri, httpMethod, query, bodyData) {
27
35
  let resp = null;
28
36
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"TableAPIRequest.js","sourceRoot":"","sources":["../../../src/comm/http/TableAPIRequest.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,MAAM,OAAO,eAAe;IAEhB,QAAQ,GAAU;QACtB,cAAc,EAAC,kBAAkB;QACjC,QAAQ,EAAE,kBAAkB;KAC/B,CAAC;IAEM,QAAQ,GAAG,6BAA6B,CAAC;IAEzC,WAAW,CAAsB;IACzC,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IACD,IAAW,UAAU,CAAC,KAA0B;QAC5C,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC7B,CAAC;IAED,YAAmB,QAA4B;QAC3C,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAEM,KAAK,CAAC,GAAG,CAAI,SAAgB,EAAE,KAAY;QAE9C,MAAM,GAAG,GAAU,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAC,UAAU,EAAC,SAAS,EAAC,CAAC,CAAC;QAE1E,OAAO,MAAM,IAAI,CAAC,UAAU,CAAI,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC;IAEM,KAAK,CAAC,IAAI,CAAI,SAAgB,EAAE,KAAY,EAAE,IAAW;QAE5D,MAAM,GAAG,GAAU,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAC,UAAU,EAAC,SAAS,EAAC,CAAC,CAAC;QAE1E,OAAO,MAAM,IAAI,CAAC,UAAU,CAAI,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IAEO,KAAK,CAAC,UAAU,CAAI,GAAU,EAAE,UAAiB,EAAE,KAAoB,EAAE,QAAsB;QACnG,IAAI,IAAI,GAAoB,IAAI,CAAC;QAEjC,IAAG,CAAC;YACA,MAAM,GAAG,GAAqB,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAgC,CAAC,CAAC;YAE3F,MAAM,OAAO,GAAe,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,QAAQ,EAAC,CAAC;YAClH,IAAI,GAAG,MAAM,GAAG,CAAC,cAAc,CAAI,OAAO,CAAC,CAAC;QAChD,CAAC;QAAA,OAAM,GAAG,EAAC,CAAC;YACR,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAGO,UAAU,CAAC,aAAoB,EAAE,SAAgB;QACtD,IAAI,YAAY,GAAU,aAAa,CAAC;QACvC,KAAI,MAAM,IAAI,IAAI,SAAS,EAAC,CAAC;YACzB,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,GAAC,IAAI,GAAC,GAAG,EAAE,SAAS,CAAC,IAAI,CAAW,CAAC,CAAC;QACjF,CAAC;QAED,OAAO,YAAY,CAAC;IACxB,CAAC;CACJ"}
1
+ {"version":3,"file":"TableAPIRequest.js","sourceRoot":"","sources":["../../../src/comm/http/TableAPIRequest.ts"],"names":[],"mappings":"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"}
@@ -9,9 +9,11 @@ export declare class SyslogReader {
9
9
  private readonly SYSLOG_APP_SCOPE_TABLE;
10
10
  private _logger;
11
11
  private _tableAPI;
12
+ private _processorRequest;
12
13
  private _instance;
13
14
  private _tailInterval?;
14
15
  private _lastFetchedSysId?;
16
+ private _lastSequence?;
15
17
  private _isTailing;
16
18
  constructor(instance: ServiceNowInstance);
17
19
  /**
@@ -70,6 +72,42 @@ export declare class SyslogReader {
70
72
  * @param options Tail options including query, interval, and callbacks
71
73
  */
72
74
  startTailing(tableName?: 'syslog' | 'syslog_app_scope', options?: SyslogTailOptions): Promise<void>;
75
+ /**
76
+ * Tail ServiceNow logs using the ChannelAjax logtail processor
77
+ * This is more efficient than polling the table API as it uses sequence numbers
78
+ * @param options Tail options including interval and callbacks
79
+ */
80
+ startTailingWithChannelAjax(options?: Omit<SyslogTailOptions, 'query' | 'initialLimit'>): Promise<void>;
81
+ /**
82
+ * Fetch logs from the ChannelAjax logtail processor
83
+ * @returns Array of log tail items
84
+ */
85
+ private fetchLogsFromChannelAjax;
86
+ /**
87
+ * Parse XML response from ChannelAjax logtail
88
+ * @param xmlData XML string from response
89
+ * @returns Parsed LogTailResponse
90
+ */
91
+ private parseLogTailXml;
92
+ /**
93
+ * Format a LogTailItem for console output
94
+ * @param item Log tail item
95
+ * @returns Formatted string
96
+ */
97
+ private formatLogTailItem;
98
+ /**
99
+ * Convert LogTailItem to SyslogRecord format
100
+ * @param item Log tail item
101
+ * @returns SyslogRecord
102
+ */
103
+ private logTailItemToSyslogRecord;
104
+ /**
105
+ * Save text content to a file
106
+ * @param content Text content to save
107
+ * @param filePath File path
108
+ * @param append Whether to append
109
+ */
110
+ private saveTextToFile;
73
111
  /**
74
112
  * Stop tailing logs
75
113
  */
@@ -1,5 +1,7 @@
1
1
  import { Logger } from "../../util/Logger.js";
2
2
  import { TableAPIRequest } from "../../comm/http/TableAPIRequest.js";
3
+ import { ServiceNowProcessorRequest } from "../../comm/http/ServiceNowProcessorRequest.js";
4
+ import { Parser } from 'xml2js';
3
5
  import * as fs from 'fs';
4
6
  import * as path from 'path';
5
7
  /**
@@ -11,13 +13,16 @@ export class SyslogReader {
11
13
  SYSLOG_APP_SCOPE_TABLE = 'syslog_app_scope';
12
14
  _logger = new Logger("SyslogReader");
13
15
  _tableAPI;
16
+ _processorRequest;
14
17
  _instance;
15
18
  _tailInterval;
16
19
  _lastFetchedSysId;
20
+ _lastSequence;
17
21
  _isTailing = false;
18
22
  constructor(instance) {
19
23
  this._instance = instance;
20
24
  this._tableAPI = new TableAPIRequest(instance);
25
+ this._processorRequest = new ServiceNowProcessorRequest(instance);
21
26
  }
22
27
  /**
23
28
  * Query the syslog table with an encoded query string
@@ -160,7 +165,7 @@ export class SyslogReader {
160
165
  * @param options Formatting options
161
166
  */
162
167
  printTable(records, options = {}) {
163
- console.log(this.formatAsTable(records, options));
168
+ this._logger.info(this.formatAsTable(records, options));
164
169
  }
165
170
  /**
166
171
  * Save syslog records to a file
@@ -223,7 +228,7 @@ export class SyslogReader {
223
228
  const initialRecords = await queryMethod(initialQuery, initialLimit);
224
229
  if (initialRecords.length > 0) {
225
230
  this._lastFetchedSysId = initialRecords[0].sys_id;
226
- console.log('\n=== Initial Logs ===');
231
+ this._logger.info('\n=== Initial Logs ===');
227
232
  this.printTable(initialRecords, formatOptions);
228
233
  if (outputFile) {
229
234
  await this.saveToFile(initialRecords, outputFile, 'table', append);
@@ -260,7 +265,176 @@ export class SyslogReader {
260
265
  this._logger.error(`Error while tailing: ${error}`);
261
266
  }
262
267
  }, interval);
263
- console.log(`\n๐Ÿ‘€ Tailing ${tableName} table (press Ctrl+C to stop)...`);
268
+ //console.log(`\n๐Ÿ‘€ Tailing ${tableName} table (press Ctrl+C to stop)...`);
269
+ }
270
+ /**
271
+ * Tail ServiceNow logs using the ChannelAjax logtail processor
272
+ * This is more efficient than polling the table API as it uses sequence numbers
273
+ * @param options Tail options including interval and callbacks
274
+ */
275
+ async startTailingWithChannelAjax(options = {}) {
276
+ if (this._isTailing) {
277
+ throw new Error('Already tailing logs. Stop current tail before starting a new one.');
278
+ }
279
+ const { interval = 1000, // Poll every 1 second by default
280
+ onLog, formatOptions, outputFile, append = true } = options;
281
+ this._isTailing = true;
282
+ this._logger.info(`Starting to tail logs using ChannelAjax with ${interval}ms interval`);
283
+ // Fetch initial logs to get starting sequence
284
+ const initialLogs = await this.fetchLogsFromChannelAjax();
285
+ if (initialLogs && initialLogs.length > 0) {
286
+ this._logger.info('\n=== Initial Logs ===');
287
+ initialLogs.forEach(item => {
288
+ const formattedLog = this.formatLogTailItem(item);
289
+ this._logger.info(formattedLog);
290
+ if (onLog) {
291
+ // Convert LogTailItem to SyslogRecord format for callback
292
+ const syslogRecord = this.logTailItemToSyslogRecord(item);
293
+ onLog(syslogRecord);
294
+ }
295
+ });
296
+ if (outputFile) {
297
+ const logText = initialLogs.map(item => this.formatLogTailItem(item)).join('\n');
298
+ this.saveTextToFile(logText, outputFile, append);
299
+ }
300
+ }
301
+ // Start polling for new logs
302
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
303
+ this._tailInterval = setInterval(async () => {
304
+ try {
305
+ const newLogs = await this.fetchLogsFromChannelAjax();
306
+ if (newLogs && newLogs.length > 0) {
307
+ newLogs.forEach(item => {
308
+ const formattedLog = this.formatLogTailItem(item);
309
+ this._logger.debug(formattedLog);
310
+ if (onLog) {
311
+ const syslogRecord = this.logTailItemToSyslogRecord(item);
312
+ onLog(syslogRecord);
313
+ }
314
+ });
315
+ if (outputFile) {
316
+ const logText = newLogs.map(item => this.formatLogTailItem(item)).join('\n');
317
+ this.saveTextToFile(logText, outputFile, true);
318
+ }
319
+ }
320
+ }
321
+ catch (error) {
322
+ this._logger.error(`Error while tailing: ${error}`);
323
+ }
324
+ }, interval);
325
+ //console.log(`\n๐Ÿ‘€ Tailing logs via ChannelAjax (press Ctrl+C to stop)...`);
326
+ }
327
+ /**
328
+ * Fetch logs from the ChannelAjax logtail processor
329
+ * @returns Array of log tail items
330
+ */
331
+ async fetchLogsFromChannelAjax() {
332
+ const processorArgs = {
333
+ sysparm_type: 'read',
334
+ sysparm_value: this._lastSequence || '0',
335
+ sysparm_want_session_messages: 'true',
336
+ sysparm_silent_request: 'true',
337
+ sysparm_express_transaction: 'true',
338
+ 'ni.nolog.x_referer': 'ignore',
339
+ 'x_referer': 'channel.do?sysparm_channel=logtail'
340
+ };
341
+ const response = await this._processorRequest.doXmlHttpRequest('ChannelAjax', 'logtail', 'global', processorArgs);
342
+ if (response.status === 200) {
343
+ const xmlData = response.data;
344
+ const parsedData = await this.parseLogTailXml(xmlData);
345
+ if (parsedData) {
346
+ // Update the sequence for the next request
347
+ this._lastSequence = parsedData.channel_last_sequence;
348
+ return parsedData.item || [];
349
+ }
350
+ }
351
+ return [];
352
+ }
353
+ /**
354
+ * Parse XML response from ChannelAjax logtail
355
+ * @param xmlData XML string from response
356
+ * @returns Parsed LogTailResponse
357
+ */
358
+ async parseLogTailXml(xmlData) {
359
+ return new Promise((resolve, reject) => {
360
+ const parser = new Parser({
361
+ explicitArray: false,
362
+ mergeAttrs: true
363
+ });
364
+ parser.parseString(xmlData, (err, result) => {
365
+ if (err) {
366
+ this._logger.error(`Error parsing XML: ${err}`);
367
+ reject(err);
368
+ return;
369
+ }
370
+ if (result && result.xml) {
371
+ const xmlRoot = result.xml;
372
+ const response = {
373
+ channel_last_sequence: xmlRoot.channel_last_sequence || '0',
374
+ client_last_sequence: xmlRoot.client_last_sequence || '0',
375
+ sysparm_max: xmlRoot.sysparm_max || '15',
376
+ item: []
377
+ };
378
+ // Handle both single item and array of items
379
+ if (xmlRoot.item) {
380
+ if (Array.isArray(xmlRoot.item)) {
381
+ response.item = xmlRoot.item;
382
+ }
383
+ else {
384
+ response.item = [xmlRoot.item];
385
+ }
386
+ }
387
+ resolve(response);
388
+ }
389
+ else {
390
+ resolve(null);
391
+ }
392
+ });
393
+ });
394
+ }
395
+ /**
396
+ * Format a LogTailItem for console output
397
+ * @param item Log tail item
398
+ * @returns Formatted string
399
+ */
400
+ formatLogTailItem(item) {
401
+ const timestamp = new Date(parseInt(item.date));
402
+ const formattedDate = timestamp.toLocaleString();
403
+ return `[${formattedDate}] [${item.sequence}] ${item.message}`;
404
+ }
405
+ /**
406
+ * Convert LogTailItem to SyslogRecord format
407
+ * @param item Log tail item
408
+ * @returns SyslogRecord
409
+ */
410
+ logTailItemToSyslogRecord(item) {
411
+ const timestamp = new Date(parseInt(item.date));
412
+ return {
413
+ sys_id: item.sequence, // Use sequence as ID
414
+ sys_created_on: timestamp.toISOString(),
415
+ level: 'info', // Default level as it's not provided in logtail
416
+ message: item.message,
417
+ source: 'logtail',
418
+ sequence: item.sequence
419
+ };
420
+ }
421
+ /**
422
+ * Save text content to a file
423
+ * @param content Text content to save
424
+ * @param filePath File path
425
+ * @param append Whether to append
426
+ */
427
+ saveTextToFile(content, filePath, append) {
428
+ const dir = path.dirname(filePath);
429
+ if (!fs.existsSync(dir)) {
430
+ fs.mkdirSync(dir, { recursive: true });
431
+ }
432
+ if (append) {
433
+ fs.appendFileSync(filePath, content + '\n');
434
+ }
435
+ else {
436
+ fs.writeFileSync(filePath, content + '\n');
437
+ }
264
438
  }
265
439
  /**
266
440
  * Stop tailing logs
@@ -272,8 +446,9 @@ export class SyslogReader {
272
446
  }
273
447
  this._isTailing = false;
274
448
  this._lastFetchedSysId = undefined;
449
+ this._lastSequence = undefined;
275
450
  this._logger.info('Stopped tailing logs');
276
- console.log('\nโœ“ Stopped tailing logs');
451
+ //console.log('\nโœ“ Stopped tailing logs');
277
452
  }
278
453
  /**
279
454
  * Check if currently tailing
@@ -1 +1 @@
1
- {"version":3,"file":"SyslogReader.js","sourceRoot":"","sources":["../../../src/sn/syslog/SyslogReader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyslogReader.js","sourceRoot":"","sources":["../../../src/sn/syslog/SyslogReader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAY7B;;;GAGG;AACH,MAAM,OAAO,YAAY;IACJ,YAAY,GAAG,QAAQ,CAAC;IACxB,sBAAsB,GAAG,kBAAkB,CAAC;IAErD,OAAO,GAAW,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC;IAC7C,SAAS,CAAkB;IAC3B,iBAAiB,CAA6B;IAC9C,SAAS,CAAqB;IAC9B,aAAa,CAAkB;IAC/B,iBAAiB,CAAU;IAC3B,aAAa,CAAU;IACvB,UAAU,GAAY,KAAK,CAAC;IAEpC,YAAmB,QAA4B;QAC3C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,iBAAiB,GAAG,IAAI,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,WAAW,CAAC,YAAqB,EAAE,QAAgB,GAAG;QAC/D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,qCAAqC,YAAY,IAAI,MAAM,EAAE,CAAC,CAAC;QAEjF,MAAM,KAAK,GAAoC;YAC3C,aAAa,EAAE,KAAK;YACpB,qBAAqB,EAAE,OAAO;SACjC,CAAC;QAEF,IAAI,YAAY,EAAE,CAAC;YACf,KAAK,CAAC,aAAa,GAAG,YAAY,CAAC;QACvC,CAAC;QAED,MAAM,QAAQ,GAAkC,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CACpE,IAAI,CAAC,YAAY,EACjB,KAAK,CACR,CAAC;QAEF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;YACzD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,iBAAiB,CAAC,CAAC;YACnF,OAAO,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,yCAAyC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAChF,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,mBAAmB,CAAC,YAAqB,EAAE,QAAgB,GAAG;QACvE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,YAAY,IAAI,MAAM,EAAE,CAAC,CAAC;QAE3F,MAAM,KAAK,GAAoC;YAC3C,aAAa,EAAE,KAAK;YACpB,qBAAqB,EAAE,OAAO;SACjC,CAAC;QAEF,IAAI,YAAY,EAAE,CAAC;YACf,KAAK,CAAC,aAAa,GAAG,YAAY,CAAC;QACvC,CAAC;QAED,MAAM,QAAQ,GAA0C,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAC5E,IAAI,CAAC,sBAAsB,EAC3B,KAAK,CACR,CAAC;QAEF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;YACzD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,2BAA2B,CAAC,CAAC;YAC7F,OAAO,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,mDAAmD,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1F,CAAC;IAED;;;;;OAKG;IACI,aAAa,CAChB,OAAgD,EAChD,UAA+B,EAAE;QAEjC,MAAM,EACF,MAAM,GAAG,CAAC,gBAAgB,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,EACzD,eAAe,GAAG,EAAE,EACpB,cAAc,GAAG,IAAI,EACrB,UAAU,GAAG,QAAQ,EACxB,GAAG,OAAO,CAAC;QAEZ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,mBAAmB,CAAC;QAC/B,CAAC;QAED,yCAAyC;QACzC,MAAM,WAAW,GAAG,WAAW,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,aAAa,GAAG,WAAW,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC9D,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC1D,CAAC,CAAC,MAAM,CAAC;QAEb,uBAAuB;QACvB,MAAM,SAAS,GAA2B;YACtC,gBAAgB,EAAE,EAAE;YACpB,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,EAAE;YACZ,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,eAAe;YAC1B,QAAQ,EAAE,EAAE;SACf,CAAC;QAEF,aAAa;QACb,MAAM,IAAI,GAAe,EAAE,CAAC;QAE5B,IAAI,cAAc,EAAE,CAAC;YACjB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACrB,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAClC,IAAI,KAAa,CAAC;gBAClB,IAAI,KAAK,KAAK,gBAAgB,EAAE,CAAC;oBAC7B,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,CAAC;gBACvD,CAAC;qBAAM,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;oBAC3B,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC9C,CAAC;qBAAM,CAAC;oBACJ,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBACxC,CAAC;gBAED,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACrC,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,kBAAkB;QAClB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;IAClG,CAAC;IAED;;;;;;OAMG;IACK,eAAe,CAAC,IAAgB,EAAE,SAAmB,EAAE,SAAkB;QAC7E,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,aAAa;QACb,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QAExE,aAAa;QACb,IAAI,SAAS,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;YAClG,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QAC5E,CAAC;QAED,YAAY;QACZ,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACnG,CAAC;QAED,gBAAgB;QAChB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;QAExE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;OAKG;IACK,SAAS,CAAC,GAAW,EAAE,KAAa;QACxC,iDAAiD;QACjD,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC;QAC3C,IAAI,OAAO,IAAI,CAAC;YAAE,OAAO,GAAG,CAAC;QAC7B,OAAO,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACI,UAAU,CACb,OAAgD,EAChD,UAA+B,EAAE;QAEjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,UAAU,CACnB,OAAgD,EAChD,QAAgB,EAChB,SAAmC,MAAM,EACzC,SAAkB,KAAK;QAEvB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEnC,0BAA0B;QAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,OAAe,CAAC;QAEpB,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,MAAM;gBACP,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC3C,MAAM;YACV,KAAK,KAAK;gBACN,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACpC,MAAM;YACV,KAAK,OAAO;gBACR,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBACtC,MAAM;YACV;gBACI,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACT,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACJ,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,eAAe,QAAQ,EAAE,CAAC,CAAC;IACxE,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,YAAY,CACrB,YAA2C,QAAQ,EACnD,UAA6B,EAAE;QAE/B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QAC1F,CAAC;QAED,MAAM,EACF,QAAQ,GAAG,IAAI,EACf,YAAY,GAAG,EAAE,EACjB,KAAK,EACL,KAAK,EACL,aAAa,EACb,UAAU,EACV,MAAM,GAAG,IAAI,EAChB,GAAG,OAAO,CAAC;QAEZ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,SAAS,eAAe,QAAQ,aAAa,CAAC,CAAC;QAErF,wBAAwB;QACxB,MAAM,WAAW,GAAG,SAAS,KAAK,QAAQ;YACtC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;YAC7B,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE1C,IAAI,YAAY,GAAG,KAAK,IAAI,EAAE,CAAC;QAC/B,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACpD,YAAY,IAAI,4BAA4B,CAAC;QACjD,CAAC;aAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,YAAY,GAAG,2BAA2B,CAAC;QAC/C,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAErE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,iBAAiB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAClD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC5C,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;YAE/C,IAAI,UAAU,EAAE,CAAC;gBACb,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YACvE,CAAC;QACL,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;YACxC,IAAI,CAAC;gBACD,IAAI,QAAQ,GAAG,KAAK,IAAI,EAAE,CAAC;gBAE3B,iDAAiD;gBACjD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACzB,QAAQ,GAAG,QAAQ;wBACf,CAAC,CAAC,GAAG,QAAQ,gBAAgB,IAAI,CAAC,iBAAiB,4BAA4B;wBAC/E,CAAC,CAAC,eAAe,IAAI,CAAC,iBAAiB,4BAA4B,CAAC;gBAC5E,CAAC;gBAED,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBAEpD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAE9C,0BAA0B;oBAC1B,UAAU,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;wBAClC,IAAI,KAAK,EAAE,CAAC;4BACR,KAAK,CAAC,MAAM,CAAC,CAAC;wBAClB,CAAC;wBAED,mBAAmB;wBACnB,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,CAAC;oBAC7C,CAAC,CAAC,CAAC;oBAEH,8BAA8B;oBAC9B,IAAI,UAAU,EAAE,CAAC;wBACb,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;oBACjE,CAAC;gBACL,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,wBAAwB,KAAK,EAAE,CAAC,CAAC;YACxD,CAAC;QACL,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,2EAA2E;IAC/E,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,2BAA2B,CAAC,UAA6D,EAAE;QACpG,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QAC1F,CAAC;QAED,MAAM,EACF,QAAQ,GAAG,IAAI,EAAE,iCAAiC;QAClD,KAAK,EACL,aAAa,EACb,UAAU,EACV,MAAM,GAAG,IAAI,EAChB,GAAG,OAAO,CAAC;QAEZ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gDAAgD,QAAQ,aAAa,CAAC,CAAC;QAEzF,8CAA8C;QAC9C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAE1D,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC5C,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACvB,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAEhC,IAAI,KAAK,EAAE,CAAC;oBACR,0DAA0D;oBAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;oBAC1D,KAAK,CAAC,YAAY,CAAC,CAAC;gBACxB,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,UAAU,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjF,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;QAED,6BAA6B;QAC7B,kEAAkE;QAClE,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;YACxC,IAAI,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAEtD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;wBACnB,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;wBAClD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;wBAEjC,IAAI,KAAK,EAAE,CAAC;4BACR,MAAM,YAAY,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;4BAC1D,KAAK,CAAC,YAAY,CAAC,CAAC;wBACxB,CAAC;oBACL,CAAC,CAAC,CAAC;oBAEH,IAAI,UAAU,EAAE,CAAC;wBACb,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC7E,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;oBACnD,CAAC;gBACL,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,wBAAwB,KAAK,EAAE,CAAC,CAAC;YACxD,CAAC;QACL,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,6EAA6E;IACjF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,wBAAwB;QAClC,MAAM,aAAa,GAA2B;YAC1C,YAAY,EAAE,MAAM;YACpB,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,GAAG;YACxC,6BAA6B,EAAE,MAAM;YACrC,sBAAsB,EAAE,MAAM;YAC9B,2BAA2B,EAAE,MAAM;YACnC,oBAAoB,EAAE,QAAQ;YAC9B,WAAW,EAAE,oCAAoC;SACpD,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAC1D,aAAa,EACb,SAAS,EACT,QAAQ,EACR,aAAa,CAChB,CAAC;QAEF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAc,CAAC;YACxC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAEvD,IAAI,UAAU,EAAE,CAAC;gBACb,2CAA2C;gBAC3C,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,qBAAqB,CAAC;gBACtD,OAAO,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;YACjC,CAAC;QACL,CAAC;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,eAAe,CAAC,OAAe;QACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC;gBACtB,aAAa,EAAE,KAAK;gBACpB,UAAU,EAAE,IAAI;aACnB,CAAC,CAAC;YAEH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;gBACxC,IAAI,GAAG,EAAE,CAAC;oBACN,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;oBAChD,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,OAAO;gBACX,CAAC;gBAED,IAAI,MAAM,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;oBACvB,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC;oBAC3B,MAAM,QAAQ,GAAoB;wBAC9B,qBAAqB,EAAE,OAAO,CAAC,qBAAqB,IAAI,GAAG;wBAC3D,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,GAAG;wBACzD,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;wBACxC,IAAI,EAAE,EAAE;qBACX,CAAC;oBAEF,6CAA6C;oBAC7C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;wBACf,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;4BAC9B,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;wBACjC,CAAC;6BAAM,CAAC;4BACJ,QAAQ,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;wBACnC,CAAC;oBACL,CAAC;oBAED,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClB,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,IAAiB;QACvC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,MAAM,aAAa,GAAG,SAAS,CAAC,cAAc,EAAE,CAAC;QACjD,OAAO,IAAI,aAAa,MAAM,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACK,yBAAyB,CAAC,IAAiB;QAC/C,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,OAAO;YACH,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,qBAAqB;YAC5C,cAAc,EAAE,SAAS,CAAC,WAAW,EAAE;YACvC,KAAK,EAAE,MAAM,EAAE,gDAAgD;YAC/D,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SAC1B,CAAC;IACN,CAAC;IAED;;;;;OAKG;IACK,cAAc,CAAC,OAAe,EAAE,QAAgB,EAAE,MAAe;QACrE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEnC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACT,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC;QAChD,CAAC;aAAM,CAAC;YACJ,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC;IAED;;OAEG;IACI,WAAW;QACd,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAClC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;QACnC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC1C,0CAA0C;IAC9C,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACK,WAAW,CAAC,OAAgD;QAChE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEpC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACX,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;YACxC,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QAC1E,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACf,CAAC;QAEF,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACK,UAAU,CAAC,UAAkB,EAAE,MAAqC;QACxE,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,CAAC;QAE3B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;QAElC,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,KAAK;gBACN,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;YAC9B,KAAK,QAAQ;gBACT,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;YACjC,KAAK,UAAU;gBACX,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACtC;gBACI,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;QACrC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,eAAe,CAAC,IAAU;QAC9B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC;QAE5C,IAAI,QAAQ,GAAG,EAAE;YAAE,OAAO,GAAG,QAAQ,OAAO,CAAC;QAC7C,IAAI,QAAQ,GAAG,EAAE;YAAE,OAAO,GAAG,QAAQ,OAAO,CAAC;QAC7C,IAAI,SAAS,GAAG,EAAE;YAAE,OAAO,GAAG,SAAS,OAAO,CAAC;QAC/C,OAAO,GAAG,QAAQ,OAAO,CAAC;IAC9B,CAAC;IAED;;;;OAIG;IACK,aAAa,CAAC,KAAa;QAC/B,MAAM,MAAM,GAA2B;YACnC,KAAK,EAAE,UAAU,EAAE,MAAM;YACzB,IAAI,EAAE,UAAU,EAAG,SAAS;YAC5B,IAAI,EAAE,UAAU,EAAG,QAAQ;YAC3B,KAAK,EAAE,UAAU,EAAE,OAAO;SAC7B,CAAC;QACF,MAAM,KAAK,GAAG,SAAS,CAAC;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAChD,OAAO,GAAG,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,GAAG,KAAK,EAAE,CAAC;IACpD,CAAC;IAED;;;;;OAKG;IACK,cAAc,CAAC,GAAW,EAAE,SAAiB;QACjD,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS;YAAE,OAAO,GAAG,CAAC;QACxC,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;IACnD,CAAC;CACJ"}
@@ -84,3 +84,27 @@ export interface SyslogTailOptions {
84
84
  /** Whether to append to existing file */
85
85
  append?: boolean;
86
86
  }
87
+ /**
88
+ * Represents a log item from the ChannelAjax logtail response
89
+ */
90
+ export interface LogTailItem {
91
+ /** Timestamp in milliseconds */
92
+ date: string;
93
+ /** Log message */
94
+ message: string;
95
+ /** Sequence number for this log entry */
96
+ sequence: string;
97
+ }
98
+ /**
99
+ * Response from ChannelAjax logtail processor
100
+ */
101
+ export interface LogTailResponse {
102
+ /** Last sequence number from server */
103
+ channel_last_sequence: string;
104
+ /** Client's last sequence number */
105
+ client_last_sequence: string;
106
+ /** Maximum number of items to return */
107
+ sysparm_max: string;
108
+ /** Array of log items */
109
+ item: LogTailItem[];
110
+ }
package/package.json CHANGED
@@ -1,9 +1,21 @@
1
1
  {
2
2
  "name": "@sonisoft/now-sdk-ext-core",
3
- "version": "2.0.0-alpha.1",
4
- "description": "",
3
+ "version": "2.0.0-alpha.3",
4
+ "description": "Comprehensive TypeScript library extending ServiceNow SDK with application management, ATF testing, real-time log monitoring, AMB event subscriptions, and automation tools",
5
+ "keywords": [
6
+ "servicenow",
7
+ "sdk",
8
+ "automation",
9
+ "testing",
10
+ "atf",
11
+ "cicd",
12
+ "devops",
13
+ "logs",
14
+ "monitoring",
15
+ "typescript"
16
+ ],
5
17
  "repository": {
6
- "type": "",
18
+ "type": "git",
7
19
  "url": ""
8
20
  },
9
21
  "type": "module",
@@ -24,9 +36,13 @@
24
36
  "lint": "tsc --noEmit && eslint ./src",
25
37
  "start": "npm run serve",
26
38
  "semantic-release": "semantic-release",
27
- "test": "node --experimental-vm-modules node_modules/.bin/jest --forceExit --coverage --collectCoverage --coverageDirectory=\"./coverage\" --ci --reporters=default --reporters=jest-junit --watchAll=false",
39
+ "test": "node --experimental-vm-modules node_modules/.bin/jest --forceExit --coverage --collectCoverage --coverageDirectory=\"./coverage\" --ci --reporters=default --reporters=jest-junit --watchAll=false --testPathIgnorePatterns=\"/integration/\"",
40
+ "test:unit": "node --experimental-vm-modules node_modules/.bin/jest --forceExit --coverage --collectCoverage --coverageDirectory=\"./coverage\" --ci --reporters=default --reporters=jest-junit --watchAll=false --testPathIgnorePatterns=\"/integration/\"",
41
+ "test:integration": "node --experimental-vm-modules node_modules/.bin/jest --forceExit --testPathPattern=\"/integration/\" --watchAll=false --testTimeout=120000",
42
+ "test:all": "node --experimental-vm-modules node_modules/.bin/jest --forceExit --coverage --collectCoverage --coverageDirectory=\"./coverage\" --ci --reporters=default --reporters=jest-junit --watchAll=false",
28
43
  "watch-debug": "concurrently -k -p \"[{name}]\" -n \"TypeScript,Node\" -c \"yellow.bold,cyan.bold,green.bold\" \"npm run watch-sass\" \"npm run watch-ts\" \"npm run serve-debug\"",
29
- "watch-test": "npm run test -- --watchAll",
44
+ "watch-test": "npm run test:unit -- --watchAll",
45
+ "watch-test:integration": "npm run test:integration -- --watchAll",
30
46
  "watch-ts": "tsc -w",
31
47
  "watch": "concurrently -k -p \"[{name}]\" -n \"TypeScript,Node\" -c \"yellow.bold,cyan.bold,green.bold\" \"npm run watch-sass\" \"npm run watch-ts\" \"npm run watch-node\""
32
48
  },
@@ -94,7 +110,7 @@
94
110
  "@types/eslint": "9.6.0",
95
111
  "@types/eslint__js": "^8.42.3",
96
112
  "@types/fs-extra": "^11.0.4",
97
- "@types/jest": "^29.5.12",
113
+ "@types/jest": "^29.5.14",
98
114
  "@types/jquery": "3.5.30",
99
115
  "@types/lodash": "^4.17.7",
100
116
  "@types/lusca": "1.7.5",