@sonisoft/now-sdk-ext-core 1.0.0-alpha.30

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 (138) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +3 -0
  3. package/dist/auth/AuthenticationHandlerFactory.d.ts +4 -0
  4. package/dist/auth/AuthenticationHandlerFactory.js +7 -0
  5. package/dist/auth/AuthenticationHandlerFactory.js.map +1 -0
  6. package/dist/auth/IAuthenticationHandler.d.ts +11 -0
  7. package/dist/auth/IAuthenticationHandler.js +2 -0
  8. package/dist/auth/IAuthenticationHandler.js.map +1 -0
  9. package/dist/auth/NowSDKAuthenticationHandler.d.ts +18 -0
  10. package/dist/auth/NowSDKAuthenticationHandler.js +54 -0
  11. package/dist/auth/NowSDKAuthenticationHandler.js.map +1 -0
  12. package/dist/comm/http/CookieStore.d.ts +8 -0
  13. package/dist/comm/http/CookieStore.js +21 -0
  14. package/dist/comm/http/CookieStore.js.map +1 -0
  15. package/dist/comm/http/CookieStoreFactory.d.ts +5 -0
  16. package/dist/comm/http/CookieStoreFactory.js +11 -0
  17. package/dist/comm/http/CookieStoreFactory.js.map +1 -0
  18. package/dist/comm/http/HTTPRequest.d.ts +7 -0
  19. package/dist/comm/http/HTTPRequest.js +4 -0
  20. package/dist/comm/http/HTTPRequest.js.map +1 -0
  21. package/dist/comm/http/HttpResponse.d.ts +20 -0
  22. package/dist/comm/http/HttpResponse.js +10 -0
  23. package/dist/comm/http/HttpResponse.js.map +1 -0
  24. package/dist/comm/http/ICookieStore.d.ts +5 -0
  25. package/dist/comm/http/ICookieStore.js +2 -0
  26. package/dist/comm/http/ICookieStore.js.map +1 -0
  27. package/dist/comm/http/IHttpResponse.d.ts +4 -0
  28. package/dist/comm/http/IHttpResponse.js +2 -0
  29. package/dist/comm/http/IHttpResponse.js.map +1 -0
  30. package/dist/comm/http/IRequestHandler.d.ts +11 -0
  31. package/dist/comm/http/IRequestHandler.js +2 -0
  32. package/dist/comm/http/IRequestHandler.js.map +1 -0
  33. package/dist/comm/http/IUserSession.d.ts +8 -0
  34. package/dist/comm/http/IUserSession.js +2 -0
  35. package/dist/comm/http/IUserSession.js.map +1 -0
  36. package/dist/comm/http/RequestHandler.d.ts +36 -0
  37. package/dist/comm/http/RequestHandler.js +195 -0
  38. package/dist/comm/http/RequestHandler.js.map +1 -0
  39. package/dist/comm/http/RequestHandlerFactory.d.ts +6 -0
  40. package/dist/comm/http/RequestHandlerFactory.js +7 -0
  41. package/dist/comm/http/RequestHandlerFactory.js.map +1 -0
  42. package/dist/comm/http/ServiceNowProcessorRequest.d.ts +9 -0
  43. package/dist/comm/http/ServiceNowProcessorRequest.js +61 -0
  44. package/dist/comm/http/ServiceNowProcessorRequest.js.map +1 -0
  45. package/dist/comm/http/ServiceNowRequest.d.ts +21 -0
  46. package/dist/comm/http/ServiceNowRequest.js +75 -0
  47. package/dist/comm/http/ServiceNowRequest.js.map +1 -0
  48. package/dist/comm/http/TableAPIRequest.d.ts +14 -0
  49. package/dist/comm/http/TableAPIRequest.js +46 -0
  50. package/dist/comm/http/TableAPIRequest.js.map +1 -0
  51. package/dist/comm/http/UserSession.d.ts +11 -0
  52. package/dist/comm/http/UserSession.js +24 -0
  53. package/dist/comm/http/UserSession.js.map +1 -0
  54. package/dist/comm/ws/ATFMessageHandler.d.ts +4 -0
  55. package/dist/comm/ws/ATFMessageHandler.js +5 -0
  56. package/dist/comm/ws/ATFMessageHandler.js.map +1 -0
  57. package/dist/constants/Extension.d.ts +1 -0
  58. package/dist/constants/Extension.js +2 -0
  59. package/dist/constants/Extension.js.map +1 -0
  60. package/dist/constants/Files.d.ts +3 -0
  61. package/dist/constants/Files.js +4 -0
  62. package/dist/constants/Files.js.map +1 -0
  63. package/dist/constants/ServiceNow.d.ts +2 -0
  64. package/dist/constants/ServiceNow.js +3 -0
  65. package/dist/constants/ServiceNow.js.map +1 -0
  66. package/dist/encryption/decrypt.d.ts +1 -0
  67. package/dist/encryption/decrypt.js +10 -0
  68. package/dist/encryption/decrypt.js.map +1 -0
  69. package/dist/encryption/encrypt.d.ts +1 -0
  70. package/dist/encryption/encrypt.js +13 -0
  71. package/dist/encryption/encrypt.js.map +1 -0
  72. package/dist/exception/FileException.d.ts +6 -0
  73. package/dist/exception/FileException.js +15 -0
  74. package/dist/exception/FileException.js.map +1 -0
  75. package/dist/exception/FileExistsException.d.ts +2 -0
  76. package/dist/exception/FileExistsException.js +3 -0
  77. package/dist/exception/FileExistsException.js.map +1 -0
  78. package/dist/exception/InvalidParameterException.d.ts +5 -0
  79. package/dist/exception/InvalidParameterException.js +12 -0
  80. package/dist/exception/InvalidParameterException.js.map +1 -0
  81. package/dist/exception/PathException.d.ts +2 -0
  82. package/dist/exception/PathException.js +3 -0
  83. package/dist/exception/PathException.js.map +1 -0
  84. package/dist/index.d.ts +40 -0
  85. package/dist/index.js +41 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/model/types.d.ts +10 -0
  88. package/dist/model/types.js +2 -0
  89. package/dist/model/types.js.map +1 -0
  90. package/dist/now/sdk/auth/CredentialStore.d.ts +2 -0
  91. package/dist/now/sdk/auth/CredentialStore.js +3 -0
  92. package/dist/now/sdk/auth/CredentialStore.js.map +1 -0
  93. package/dist/now/sdk/auth/CredentialWrapper.d.ts +31 -0
  94. package/dist/now/sdk/auth/CredentialWrapper.js +89 -0
  95. package/dist/now/sdk/auth/CredentialWrapper.js.map +1 -0
  96. package/dist/sn/BackgroundScriptExecutor.d.ts +44 -0
  97. package/dist/sn/BackgroundScriptExecutor.js +187 -0
  98. package/dist/sn/BackgroundScriptExecutor.js.map +1 -0
  99. package/dist/sn/IServiceNowInstance.d.ts +7 -0
  100. package/dist/sn/IServiceNowInstance.js +2 -0
  101. package/dist/sn/IServiceNowInstance.js.map +1 -0
  102. package/dist/sn/SNRequestBase.d.ts +13 -0
  103. package/dist/sn/SNRequestBase.js +24 -0
  104. package/dist/sn/SNRequestBase.js.map +1 -0
  105. package/dist/sn/ServiceNowInstance.d.ts +21 -0
  106. package/dist/sn/ServiceNowInstance.js +43 -0
  107. package/dist/sn/ServiceNowInstance.js.map +1 -0
  108. package/dist/sn/factory/ISNFactory.d.ts +0 -0
  109. package/dist/sn/factory/ISNFactory.js +1 -0
  110. package/dist/sn/factory/ISNFactory.js.map +1 -0
  111. package/dist/sn/factory/SNFactoryBase.d.ts +0 -0
  112. package/dist/sn/factory/SNFactoryBase.js +1 -0
  113. package/dist/sn/factory/SNFactoryBase.js.map +1 -0
  114. package/dist/sn/user/UserRequest.d.ts +7 -0
  115. package/dist/sn/user/UserRequest.js +32 -0
  116. package/dist/sn/user/UserRequest.js.map +1 -0
  117. package/dist/sn/user/factory/UserFactory.d.ts +2 -0
  118. package/dist/sn/user/factory/UserFactory.js +3 -0
  119. package/dist/sn/user/factory/UserFactory.js.map +1 -0
  120. package/dist/sn/user/model/IUser.d.ts +135 -0
  121. package/dist/sn/user/model/IUser.js +2 -0
  122. package/dist/sn/user/model/IUser.js.map +1 -0
  123. package/dist/sn/user/model/User.d.ts +202 -0
  124. package/dist/sn/user/model/User.js +465 -0
  125. package/dist/sn/user/model/User.js.map +1 -0
  126. package/dist/util/AppUtil.d.ts +3 -0
  127. package/dist/util/AppUtil.js +6 -0
  128. package/dist/util/AppUtil.js.map +1 -0
  129. package/dist/util/Logger.d.ts +21 -0
  130. package/dist/util/Logger.js +84 -0
  131. package/dist/util/Logger.js.map +1 -0
  132. package/dist/util/NowStringUtil.d.ts +3 -0
  133. package/dist/util/NowStringUtil.js +6 -0
  134. package/dist/util/NowStringUtil.js.map +1 -0
  135. package/dist/util/utils.d.ts +5 -0
  136. package/dist/util/utils.js +8 -0
  137. package/dist/util/utils.js.map +1 -0
  138. package/package.json +139 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) Microsoft Corporation. All rights reserved.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ # ServiceNow SDK Extensions
2
+
3
+ This library contains functionality that enhances and extends the ServiceNow SDK to enhance the development experience on ServiceNow.
@@ -0,0 +1,4 @@
1
+ import { IAuthenticationHandler } from "./IAuthenticationHandler.js";
2
+ export declare class AuthenticationHandlerFactory {
3
+ static createAuthHandler(): IAuthenticationHandler;
4
+ }
@@ -0,0 +1,7 @@
1
+ import { NowSDKAuthenticationHandler } from "./NowSDKAuthenticationHandler.js";
2
+ export class AuthenticationHandlerFactory {
3
+ static createAuthHandler() {
4
+ return new NowSDKAuthenticationHandler();
5
+ }
6
+ }
7
+ //# sourceMappingURL=AuthenticationHandlerFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthenticationHandlerFactory.js","sourceRoot":"","sources":["../../src/auth/AuthenticationHandlerFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAG/E,MAAM,OAAO,4BAA4B;IAG9B,MAAM,CAAC,iBAAiB;QAC3B,OAAO,IAAI,2BAA2B,EAAE,CAAC;IAC7C,CAAC;CACJ"}
@@ -0,0 +1,11 @@
1
+ import { ICookieStore } from "../comm/http/ICookieStore.js";
2
+ import { IRequestHandler } from "../comm/http/IRequestHandler.js";
3
+ import { IUserSession } from "../comm/http/IUserSession.js";
4
+ export interface IAuthenticationHandler {
5
+ doLogin(host: string, username: string, password: string): Promise<IUserSession>;
6
+ getRequestHandler(): IRequestHandler;
7
+ isLoggedIn(): boolean;
8
+ setLoggedIn(loggedIn: boolean): any;
9
+ getToken(): string;
10
+ getCookies(): ICookieStore;
11
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IAuthenticationHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAuthenticationHandler.js","sourceRoot":"","sources":["../../src/auth/IAuthenticationHandler.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import { IRequestHandler } from "../comm/http/IRequestHandler.js";
2
+ import { IAuthenticationHandler } from "./IAuthenticationHandler.js";
3
+ import { ICookieStore } from "../comm/http/ICookieStore.js";
4
+ import { IUserSession } from "../comm/http/IUserSession.js";
5
+ export declare class NowSDKAuthenticationHandler implements IAuthenticationHandler {
6
+ private _requestHandler;
7
+ private _isLoggedIn;
8
+ private _session;
9
+ private _logger;
10
+ constructor();
11
+ doLogin(host: string, username: string, password: string): Promise<IUserSession>;
12
+ private login;
13
+ getRequestHandler(): IRequestHandler;
14
+ isLoggedIn(): boolean;
15
+ setLoggedIn(loggedIn: boolean): void;
16
+ getToken(): string;
17
+ getCookies(): ICookieStore;
18
+ }
@@ -0,0 +1,54 @@
1
+ import { Logger } from "../util/Logger.js";
2
+ import { login } from "@servicenow/sdk-cli-core";
3
+ import { UserSession } from "../comm/http/UserSession.js";
4
+ export class NowSDKAuthenticationHandler {
5
+ _requestHandler;
6
+ _isLoggedIn = false;
7
+ _session;
8
+ _logger;
9
+ constructor() {
10
+ this._logger = new Logger("NowSDKAuthenticationHandler");
11
+ }
12
+ async doLogin(host, username, password) {
13
+ const session = await this.login(host, username, password);
14
+ this._session = session;
15
+ return session;
16
+ }
17
+ async login(host, username, password) {
18
+ let result = null;
19
+ try {
20
+ const credentials = {
21
+ host: host,
22
+ username: username,
23
+ password: password,
24
+ };
25
+ result = await login(credentials, this._logger);
26
+ //FIXME: This needs to be changed to be a variable host
27
+ if ((await result.cookieJar.getCookies(host)).length > 0) {
28
+ this.setLoggedIn(true);
29
+ }
30
+ ;
31
+ this._logger.debug("Login Attempt Complete.", result);
32
+ }
33
+ catch (e) {
34
+ this._logger.error("Error during login.", e);
35
+ }
36
+ return new UserSession(result);
37
+ }
38
+ getRequestHandler() {
39
+ return this._requestHandler;
40
+ }
41
+ isLoggedIn() {
42
+ return this._isLoggedIn;
43
+ }
44
+ setLoggedIn(loggedIn) {
45
+ this._isLoggedIn = loggedIn;
46
+ }
47
+ getToken() {
48
+ return this._session.getToken();
49
+ }
50
+ getCookies() {
51
+ return this._session.getCookies();
52
+ }
53
+ }
54
+ //# sourceMappingURL=NowSDKAuthenticationHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NowSDKAuthenticationHandler.js","sourceRoot":"","sources":["../../src/auth/NowSDKAuthenticationHandler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAS,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGxD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAGvD,MAAM,OAAO,2BAA2B;IAE5B,eAAe,CAAiB;IAEhC,WAAW,GAAG,KAAK,CAAC;IAEpB,QAAQ,CAAc;IAEtB,OAAO,CAAQ;IAEvB;QACI,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,6BAA6B,CAAC,CAAC;IAC7D,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAW,EAAE,QAAe,EAAE,QAAe;QAC9D,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACzE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QAExB,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,IAAW,EAAE,QAAe,EAAE,QAAe;QAE7D,IAAI,MAAM,GAAoB,IAAI,CAAC;QACnC,IAAG,CAAC;YACA,MAAM,WAAW,GAAU;gBACvB,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,QAAQ;aACZ,CAAC;YAEX,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAChD,uDAAuD;YACvD,IAAG,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAC,CAAC;gBACrD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;YAAA,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC;QAC1D,CAAC;QAAA,OAAM,CAAC,EAAC,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAEM,iBAAiB;QACpB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEM,WAAW,CAAC,QAAgB;QAC/B,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;IAChC,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACpC,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACtC,CAAC;CACJ"}
@@ -0,0 +1,8 @@
1
+ import { ICookieStore } from "./ICookieStore.js";
2
+ import { CookieJar, Cookie } from 'tough-cookie';
3
+ export declare class CookieStore implements ICookieStore {
4
+ private _cookieJar;
5
+ constructor(cookieJar: CookieJar);
6
+ getCookies(currentUrl: string, options?: CookieJar.GetCookiesOptions): Promise<Cookie[]>;
7
+ getCookieString(currentUrl: string): Promise<string>;
8
+ }
@@ -0,0 +1,21 @@
1
+ import { isNil } from "../../util/utils.js";
2
+ export class CookieStore {
3
+ _cookieJar;
4
+ constructor(cookieJar) {
5
+ this._cookieJar = cookieJar;
6
+ }
7
+ async getCookies(currentUrl, options) {
8
+ let cookies = null;
9
+ if (isNil(options)) {
10
+ cookies = await this._cookieJar.getCookies(currentUrl);
11
+ }
12
+ else {
13
+ cookies = await this._cookieJar.getCookies(currentUrl, options);
14
+ }
15
+ return cookies;
16
+ }
17
+ async getCookieString(currentUrl) {
18
+ return await this._cookieJar.getCookieString(currentUrl);
19
+ }
20
+ }
21
+ //# sourceMappingURL=CookieStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CookieStore.js","sourceRoot":"","sources":["../../../src/comm/http/CookieStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAIzC,MAAM,OAAO,WAAW;IAEZ,UAAU,CAAW;IAC7B,YAAmB,SAAmB;QAClC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IAGM,KAAK,CAAC,UAAU,CAAC,UAAiB,EAAE,OAAoC;QAE3E,IAAI,OAAO,GAAY,IAAI,CAAC;QAE5B,IAAG,KAAK,CAAC,OAAO,CAAC,EAAC,CAAC;YACf,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC3D,CAAC;aAAI,CAAC;YACF,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACpE,CAAC;QAGD,OAAO,OAAO,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,eAAe,CAAC,UAAiB;QAC1C,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7D,CAAC;CACJ"}
@@ -0,0 +1,5 @@
1
+ import { ICookieStore } from "./ICookieStore.js";
2
+ import { CookieJar } from 'tough-cookie';
3
+ export declare class CookieStoreFactory {
4
+ static createCookieStore(cookieJar: CookieJar | null): ICookieStore;
5
+ }
@@ -0,0 +1,11 @@
1
+ import { isNil } from "../../util/utils.js";
2
+ import { CookieStore } from "./CookieStore.js";
3
+ export class CookieStoreFactory {
4
+ static createCookieStore(cookieJar) {
5
+ if (isNil(cookieJar)) {
6
+ return null;
7
+ }
8
+ return new CookieStore(cookieJar);
9
+ }
10
+ }
11
+ //# sourceMappingURL=CookieStoreFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CookieStoreFactory.js","sourceRoot":"","sources":["../../../src/comm/http/CookieStoreFactory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,MAAM,OAAO,kBAAkB;IAGpB,MAAM,CAAC,iBAAiB,CAAC,SAA0B;QACtD,IAAG,KAAK,CAAC,SAAS,CAAC,EAAC,CAAC;YACjB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;CACJ"}
@@ -0,0 +1,7 @@
1
+ export interface HTTPRequest {
2
+ path: string;
3
+ headers: object | null;
4
+ body: any | null;
5
+ query: object | null;
6
+ method?: string | null;
7
+ }
@@ -0,0 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/no-redundant-type-constituents */
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
3
+ export {};
4
+ //# sourceMappingURL=HTTPRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HTTPRequest.js","sourceRoot":"","sources":["../../../src/comm/http/HTTPRequest.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,uDAAuD"}
@@ -0,0 +1,20 @@
1
+ import { AxiosHeaderValue, AxiosResponseHeaders, InternalAxiosRequestConfig } from "axios";
2
+ import { RawAxiosRequestHeaders } from 'axios';
3
+ import { IHttpResponse } from "./IHttpResponse.js";
4
+ export declare class HttpResponse<T> implements IHttpResponse<T> {
5
+ data: any;
6
+ status: number;
7
+ statusText: string;
8
+ headers: AxiosResponseHeaders | Partial<RawAxiosRequestHeaders & {
9
+ "Content-Type": AxiosHeaderValue;
10
+ "Content-Length": AxiosHeaderValue;
11
+ "Content-Encoding": AxiosHeaderValue;
12
+ Server: AxiosHeaderValue;
13
+ "Cache-Control": AxiosHeaderValue;
14
+ } & {
15
+ "set-cookie": string[];
16
+ }>;
17
+ config: InternalAxiosRequestConfig<any>;
18
+ request?: any;
19
+ bodyObject?: T;
20
+ }
@@ -0,0 +1,10 @@
1
+ export class HttpResponse {
2
+ data;
3
+ status;
4
+ statusText;
5
+ headers;
6
+ config;
7
+ request;
8
+ bodyObject;
9
+ }
10
+ //# sourceMappingURL=HttpResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpResponse.js","sourceRoot":"","sources":["../../../src/comm/http/HttpResponse.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,YAAY;IACrB,IAAI,CAAM;IACV,MAAM,CAAS;IACf,UAAU,CAAS;IACnB,OAAO,CAAsQ;IAC7Q,MAAM,CAAkC;IACxC,OAAO,CAAO;IACd,UAAU,CAAK;CAClB"}
@@ -0,0 +1,5 @@
1
+ import { Cookie } from 'tough-cookie';
2
+ export interface ICookieStore {
3
+ getCookies(currentUrl: string, options?: any): Promise<Cookie[]>;
4
+ getCookieString(currentUrl: string): Promise<string>;
5
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ICookieStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ICookieStore.js","sourceRoot":"","sources":["../../../src/comm/http/ICookieStore.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { AxiosResponse } from "axios";
2
+ export interface IHttpResponse<T> extends AxiosResponse {
3
+ bodyObject?: T;
4
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IHttpResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IHttpResponse.js","sourceRoot":"","sources":["../../../src/comm/http/IHttpResponse.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { HTTPRequest } from "./HTTPRequest.js";
2
+ import { IHttpResponse } from "./IHttpResponse.js";
3
+ import { Cookie } from 'tough-cookie';
4
+ export interface IRequestHandler {
5
+ post<T>(request: HTTPRequest): Promise<IHttpResponse<T>>;
6
+ put<T>(request: HTTPRequest): Promise<IHttpResponse<T>>;
7
+ get<T>(request: HTTPRequest): Promise<IHttpResponse<T>>;
8
+ delete<T>(request: HTTPRequest): Promise<IHttpResponse<T>>;
9
+ setRequestToken(token: string): any;
10
+ getCookies(): Promise<Cookie[]>;
11
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IRequestHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IRequestHandler.js","sourceRoot":"","sources":["../../../src/comm/http/IRequestHandler.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ import { UISession } from "@servicenow/sdk-cli-core";
2
+ import { ICookieStore } from "./ICookieStore.js";
3
+ export interface IUserSession {
4
+ getCookies(): ICookieStore;
5
+ getToken(): string;
6
+ get nowSession(): UISession;
7
+ set nowSession(value: UISession);
8
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IUserSession.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IUserSession.js","sourceRoot":"","sources":["../../../src/comm/http/IUserSession.ts"],"names":[],"mappings":""}
@@ -0,0 +1,36 @@
1
+ import { AxiosInstance, AxiosResponse, AxiosRequestConfig, RawAxiosRequestHeaders } from 'axios';
2
+ import { HTTPRequest } from './HTTPRequest.js';
3
+ import { IHttpResponse } from './IHttpResponse.js';
4
+ import { IRequestHandler } from './IRequestHandler.js';
5
+ import { Cookie } from 'tough-cookie';
6
+ import { ICookieStore } from './ICookieStore.js';
7
+ import { IAuthenticationHandler } from '../../auth/IAuthenticationHandler.js';
8
+ import { Logger } from '../../util/Logger.js';
9
+ import { IServiceNowInstance } from '../../sn/IServiceNowInstance.js';
10
+ export declare class RequestHandler implements IRequestHandler {
11
+ _logger: Logger;
12
+ _defaultHeaders: RawAxiosRequestHeaders;
13
+ httpClient: AxiosInstance;
14
+ _cookies: Cookie[];
15
+ _cookieStore: ICookieStore;
16
+ _authHandler: IAuthenticationHandler;
17
+ private _snInstance;
18
+ get snInstance(): IServiceNowInstance;
19
+ set snInstance(value: IServiceNowInstance);
20
+ /**
21
+ * The Singleton's constructor should always be private to prevent direct
22
+ * construction calls with the `new` operator.
23
+ */
24
+ constructor(snInstance: IServiceNowInstance, authHandler: IAuthenticationHandler);
25
+ getHttpClient(): AxiosInstance;
26
+ getCookies(): Promise<Cookie[]>;
27
+ getCookieString(): Promise<string>;
28
+ setRequestToken(token: string): void;
29
+ request(config: AxiosRequestConfig): Promise<AxiosResponse<any, any>>;
30
+ post<T>(request: HTTPRequest): Promise<IHttpResponse<T>>;
31
+ put<T>(request: HTTPRequest): Promise<IHttpResponse<T>>;
32
+ get<T>(request: HTTPRequest): Promise<IHttpResponse<T>>;
33
+ delete<T>(request: HTTPRequest): Promise<IHttpResponse<T>>;
34
+ private getRequestConfig;
35
+ private getQueryString;
36
+ }
@@ -0,0 +1,195 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import axios from 'axios';
3
+ import { Logger } from '../../util/Logger.js';
4
+ import { isNil } from '../../util/utils.js';
5
+ axios.defaults.withCredentials = true;
6
+ export class RequestHandler {
7
+ _logger = new Logger("RequestHandler");
8
+ _defaultHeaders;
9
+ httpClient;
10
+ _cookies;
11
+ _cookieStore;
12
+ _authHandler;
13
+ _snInstance;
14
+ get snInstance() {
15
+ return this._snInstance;
16
+ }
17
+ set snInstance(value) {
18
+ this._snInstance = value;
19
+ }
20
+ /**
21
+ * The Singleton's constructor should always be private to prevent direct
22
+ * construction calls with the `new` operator.
23
+ */
24
+ constructor(snInstance, authHandler) {
25
+ this.snInstance = snInstance;
26
+ this._defaultHeaders = {};
27
+ this._authHandler = authHandler;
28
+ //Need to get the config from the extension info
29
+ //baseURL should be instance URL that was added to settings
30
+ //todo: Updated with settings config
31
+ this.httpClient = axios.create({
32
+ withCredentials: true,
33
+ baseURL: this.snInstance.getHost(),
34
+ });
35
+ this.httpClient.defaults.maxRedirects = 0;
36
+ }
37
+ getHttpClient() {
38
+ return this.httpClient;
39
+ }
40
+ //FIXME: This should pull a more variable instance url
41
+ async getCookies() {
42
+ return await this._authHandler.getCookies().getCookies(this.snInstance.getHost());
43
+ }
44
+ async getCookieString() {
45
+ return await this._authHandler.getCookies().getCookieString(this.snInstance.getHost());
46
+ }
47
+ setRequestToken(token) {
48
+ this._defaultHeaders["X-Usertoken"] = token;
49
+ }
50
+ async request(config) {
51
+ for (const prop in this._defaultHeaders) {
52
+ if (typeof this._defaultHeaders[prop] != 'undefined' && this._defaultHeaders[prop])
53
+ config.headers[prop] = this._defaultHeaders[prop];
54
+ }
55
+ config.headers["Cookie"] = await this.getCookieString();
56
+ return this.httpClient.request(config);
57
+ }
58
+ async post(request) {
59
+ const { config, url } = await this.getRequestConfig(request);
60
+ this._logger.debug("Retrieved Configuration", { config: config, url: url });
61
+ let response = null;
62
+ try {
63
+ response = await this.httpClient.post(url, request.body, config);
64
+ this._logger.debug("Http POST Response Received", response);
65
+ try {
66
+ if (!((response.data) instanceof String)) {
67
+ const rpObj = response.data;
68
+ response.bodyObject = rpObj;
69
+ }
70
+ }
71
+ catch (ex) {
72
+ this._logger.error("Error setting response.bodyObject.", { error: ex, response: response, request: request });
73
+ }
74
+ return response;
75
+ }
76
+ catch (ex) {
77
+ const err = ex;
78
+ this._logger.error("Error during POST request.", { error: err, response: response, request: request });
79
+ throw err;
80
+ }
81
+ return null;
82
+ }
83
+ async put(request) {
84
+ const { config, url } = await this.getRequestConfig(request);
85
+ this._logger.debug("Retrieved Configuration", { config: config, url: url });
86
+ let response = null;
87
+ try {
88
+ response = await this.httpClient.put(url, request.body, config);
89
+ this._logger.debug("Http PUT Response Received", response);
90
+ try {
91
+ if (!((response.data) instanceof String)) {
92
+ const rpObj = response.data;
93
+ response.bodyObject = rpObj;
94
+ }
95
+ }
96
+ catch (ex) {
97
+ const err = ex;
98
+ this._logger.error("Error during PUT request.", { err, request });
99
+ throw err;
100
+ //console.log(ex);
101
+ }
102
+ return response;
103
+ }
104
+ catch (ex) {
105
+ const err = ex;
106
+ this._logger.error("Error during PUT request.", { err, request });
107
+ throw err;
108
+ }
109
+ }
110
+ async get(request) {
111
+ this._logger.debug("get", request);
112
+ const { config, url } = await this.getRequestConfig(request);
113
+ this._logger.debug("Retrieved Configuration", { config: config, url: url });
114
+ let response = null;
115
+ try {
116
+ response = await this.httpClient.get(url, config);
117
+ this._logger.debug("Http Response Received", response);
118
+ try {
119
+ if (!((response.data) instanceof String)) {
120
+ const rpObj = response.data;
121
+ response.bodyObject = rpObj;
122
+ }
123
+ }
124
+ catch (ex) {
125
+ const err = ex;
126
+ this._logger.error("Error setting response.bodyObject.", { error: err, response: response, request: request });
127
+ throw err;
128
+ }
129
+ return response;
130
+ }
131
+ catch (ex) {
132
+ const err = ex;
133
+ this._logger.error("Error setting response.bodyObject.", { error: err, response: response, request: request });
134
+ throw err;
135
+ }
136
+ }
137
+ async delete(request) {
138
+ const { config, url } = await this.getRequestConfig(request);
139
+ try {
140
+ const response = await this.httpClient.delete(url, config);
141
+ try {
142
+ if (!((response.data) instanceof String)) {
143
+ const rpObj = response.data;
144
+ response.bodyObject = rpObj;
145
+ }
146
+ }
147
+ catch (ex) {
148
+ const err = ex;
149
+ this._logger.error("Error setting response.bodyObject.", { error: err, response: response, request: request });
150
+ throw err;
151
+ }
152
+ return response;
153
+ }
154
+ catch (ex) {
155
+ const err = ex;
156
+ this._logger.error("Error setting response.bodyObject.", { error: err, request: request });
157
+ throw err;
158
+ }
159
+ }
160
+ async getRequestConfig(request) {
161
+ const config = {
162
+ withCredentials: true,
163
+ headers: this._defaultHeaders
164
+ };
165
+ let url = request.path;
166
+ if (request.headers != null) {
167
+ for (const prop in request.headers) {
168
+ if (!isNil(request.headers[prop])) {
169
+ const val = request.headers[prop];
170
+ config.headers[prop] = val;
171
+ }
172
+ }
173
+ }
174
+ config.headers["Cookie"] = await this.getCookieString();
175
+ if (request.query != null) {
176
+ const strQuery = this.getQueryString(request.query);
177
+ if (url.indexOf("?") == -1) {
178
+ url += "?" + strQuery;
179
+ }
180
+ else {
181
+ url += "&" + strQuery;
182
+ }
183
+ }
184
+ return { config: config, url: url };
185
+ }
186
+ getQueryString(queryObj) {
187
+ const params = new URLSearchParams();
188
+ for (const prop in queryObj) {
189
+ params.set(prop, queryObj[prop]);
190
+ }
191
+ return params.toString();
192
+ ;
193
+ }
194
+ }
195
+ //# sourceMappingURL=RequestHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestHandler.js","sourceRoot":"","sources":["../../../src/comm/http/RequestHandler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { IAuthenticationHandler } from "../../auth/IAuthenticationHandler.js";
2
+ import { IServiceNowInstance } from "../../sn/IServiceNowInstance.js";
3
+ import { IRequestHandler } from "./IRequestHandler.js";
4
+ export declare class RequestHandlerFactory {
5
+ static createRequestHandler(snInstance: IServiceNowInstance, authHandler: IAuthenticationHandler): IRequestHandler;
6
+ }
@@ -0,0 +1,7 @@
1
+ import { RequestHandler } from "./RequestHandler.js";
2
+ export class RequestHandlerFactory {
3
+ static createRequestHandler(snInstance, authHandler) {
4
+ return new RequestHandler(snInstance, authHandler);
5
+ }
6
+ }
7
+ //# sourceMappingURL=RequestHandlerFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestHandlerFactory.js","sourceRoot":"","sources":["../../../src/comm/http/RequestHandlerFactory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,OAAO,qBAAqB;IAEvB,MAAM,CAAC,oBAAoB,CAAC,UAA8B,EAAE,WAAkC;QACjG,OAAO,IAAI,cAAc,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACvD,CAAC;CACJ"}
@@ -0,0 +1,9 @@
1
+ import { HttpResponse } from "./HttpResponse.js";
2
+ import { IServiceNowInstance } from "../../sn/IServiceNowInstance.js";
3
+ export declare class ServiceNowProcessorRequest {
4
+ private _instance;
5
+ constructor(instance: IServiceNowInstance);
6
+ private _headers;
7
+ execute(processor: string, processorMethod: string, scope: string, processorArgs: object): Promise<string>;
8
+ doXmlHttpRequest(processor: string, processorMethod: string, scope: string, processorArgs: object): Promise<HttpResponse<unknown>>;
9
+ }