askui 0.2.5 → 0.2.6

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 (31) hide show
  1. package/dist/cjs/execution/credentials-args.d.ts +4 -0
  2. package/dist/cjs/execution/credentials-args.js +2 -0
  3. package/dist/cjs/execution/inference-client.d.ts +5 -2
  4. package/dist/cjs/execution/inference-client.js +7 -3
  5. package/dist/cjs/execution/read-environment-credentials.d.ts +1 -1
  6. package/dist/cjs/execution/read-environment-credentials.js +2 -4
  7. package/dist/cjs/execution/read-environment-credentials.spec.js +1 -2
  8. package/dist/cjs/execution/ui-control-client.d.ts +1 -0
  9. package/dist/cjs/execution/ui-control-client.js +6 -4
  10. package/dist/cjs/execution/ui-controller-client-interface.d.ts +1 -1
  11. package/dist/cjs/utils/http/credentials.d.ts +2 -8
  12. package/dist/cjs/utils/http/credentials.js +3 -6
  13. package/dist/cjs/utils/http/credentials.spec.js +2 -2
  14. package/dist/cjs/utils/http/http-client-got.d.ts +2 -3
  15. package/dist/cjs/utils/http/http-client-got.js +5 -5
  16. package/dist/esm/execution/credentials-args.d.ts +4 -0
  17. package/dist/esm/execution/credentials-args.js +1 -0
  18. package/dist/esm/execution/inference-client.d.ts +5 -2
  19. package/dist/esm/execution/inference-client.js +7 -3
  20. package/dist/esm/execution/read-environment-credentials.d.ts +1 -1
  21. package/dist/esm/execution/read-environment-credentials.js +2 -4
  22. package/dist/esm/execution/read-environment-credentials.spec.js +1 -2
  23. package/dist/esm/execution/ui-control-client.d.ts +1 -0
  24. package/dist/esm/execution/ui-control-client.js +6 -4
  25. package/dist/esm/execution/ui-controller-client-interface.d.ts +1 -1
  26. package/dist/esm/utils/http/credentials.d.ts +2 -8
  27. package/dist/esm/utils/http/credentials.js +3 -6
  28. package/dist/esm/utils/http/credentials.spec.js +2 -2
  29. package/dist/esm/utils/http/http-client-got.d.ts +2 -3
  30. package/dist/esm/utils/http/http-client-got.js +5 -5
  31. package/package.json +1 -1
@@ -0,0 +1,4 @@
1
+ export interface CredentialArgs {
2
+ workspaceId: string;
3
+ token: string;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -3,9 +3,12 @@ import { ControlCommand } from '../core/ui-control-commands';
3
3
  import { CustomElement } from '../core/model/test-case-dto';
4
4
  import { Annotation } from '../core/annotation/annotation';
5
5
  export declare class InferenceClient {
6
- url: string;
6
+ baseUrl: string;
7
7
  httpClient: HttpClientGot;
8
- constructor(url: string, httpClient: HttpClientGot);
8
+ readonly workspaceId?: string | undefined;
9
+ apiVersion: string;
10
+ url: string;
11
+ constructor(baseUrl: string, httpClient: HttpClientGot, workspaceId?: string | undefined, apiVersion?: string);
9
12
  isImageRequired(instruction: string): Promise<boolean>;
10
13
  private resizeIfNeeded;
11
14
  predictControlCommand(instruction: string, customElements?: CustomElement[], image?: string): Promise<ControlCommand>;
@@ -18,9 +18,13 @@ const ui_control_commands_1 = require("../core/ui-control-commands");
18
18
  const annotation_1 = require("../core/annotation/annotation");
19
19
  const transformations_1 = require("../utils/transformations");
20
20
  class InferenceClient {
21
- constructor(url, httpClient) {
22
- this.url = url;
21
+ constructor(baseUrl, httpClient, workspaceId, apiVersion = 'v2') {
22
+ this.baseUrl = baseUrl;
23
23
  this.httpClient = httpClient;
24
+ this.workspaceId = workspaceId;
25
+ this.apiVersion = apiVersion;
26
+ const versionedBaseUrl = (0, url_join_1.default)(this.baseUrl, 'api', this.apiVersion);
27
+ this.url = workspaceId ? (0, url_join_1.default)(versionedBaseUrl, 'workspaces', workspaceId) : versionedBaseUrl;
24
28
  }
25
29
  isImageRequired(instruction) {
26
30
  return __awaiter(this, void 0, void 0, function* () {
@@ -49,7 +53,7 @@ class InferenceClient {
49
53
  instruction,
50
54
  customElements,
51
55
  };
52
- const url = (0, url_join_1.default)(this.url, 'api', 'v1', 'predict-command');
56
+ const url = (0, url_join_1.default)(this.url, 'predict-command');
53
57
  const httpResponse = yield this.httpClient.post(url, httpBody);
54
58
  return ui_control_commands_1.ControlCommand.fromJson(httpResponse, resizedImage.resizeRatio);
55
59
  });
@@ -1,2 +1,2 @@
1
- import { CredentialArgs } from '../utils/http/credentials';
1
+ import { CredentialArgs } from './credentials-args';
2
2
  export declare function envCredentials(): CredentialArgs | undefined;
@@ -5,12 +5,10 @@ const lib_1 = require("../lib");
5
5
  function envCredentials() {
6
6
  const envToken = process.env['ASKUI_TOKEN'];
7
7
  const envWorkspaceId = process.env['ASKUI_WORKSPACE_ID'];
8
- const envEmail = process.env['ASKUI_EMAIL'];
9
- if (envToken && envWorkspaceId && envEmail) {
10
- lib_1.logger.info('Credentials are used from ENV variables: ASKUI_TOKEN, ASKUI_WORKSPACE_ID and ASKUI_EMAIL');
8
+ if (envToken && envWorkspaceId) {
9
+ lib_1.logger.info('Credentials are used from ENV variables: ASKUI_TOKEN and ASKUI_WORKSPACE_ID');
11
10
  return {
12
11
  workspaceId: envWorkspaceId,
13
- email: envEmail,
14
12
  token: envToken,
15
13
  };
16
14
  }
@@ -5,8 +5,7 @@ describe('envCredentials()', () => {
5
5
  test('should read the credentials from the environment variables', () => {
6
6
  process.env['ASKUI_TOKEN'] = 'token';
7
7
  process.env['ASKUI_WORKSPACE_ID'] = 'id123';
8
- process.env['ASKUI_EMAIL'] = 'name@tenant.com';
9
8
  const credentialsFromTheEnv = (0, read_environment_credentials_1.envCredentials)();
10
- expect(credentialsFromTheEnv).toStrictEqual({ workspaceId: 'id123', email: 'name@tenant.com', token: 'token' });
9
+ expect(credentialsFromTheEnv).toStrictEqual({ workspaceId: 'id123', token: 'token' });
11
10
  });
12
11
  });
@@ -7,6 +7,7 @@ import { ClientArgs } from './ui-controller-client-interface';
7
7
  export declare class UiControlClient extends FluentCommand {
8
8
  private httpClient;
9
9
  private clientArgs;
10
+ private workspaceId?;
10
11
  private _uiControllerClient?;
11
12
  private constructor();
12
13
  static build(clientArgs?: ClientArgs): Promise<UiControlClient>;
@@ -25,10 +25,11 @@ const read_environment_credentials_1 = require("./read-environment-credentials")
25
25
  const analytics_1 = require("../utils/analytics");
26
26
  const getClientArgsWithDefaults = (clientArgs = {}) => (Object.assign({ uiControllerUrl: 'http://127.0.0.1:6769', inferenceServerUrl: 'https://inference.askui.com', annotationLevel: annotation_level_1.AnnotationLevel.DISABLED }, clientArgs));
27
27
  class UiControlClient extends dsl_1.FluentCommand {
28
- constructor(httpClient, clientArgs) {
28
+ constructor(httpClient, clientArgs, workspaceId) {
29
29
  super();
30
30
  this.httpClient = httpClient;
31
31
  this.clientArgs = clientArgs;
32
+ this.workspaceId = workspaceId;
32
33
  this.secretText = undefined;
33
34
  }
34
35
  static build(clientArgs) {
@@ -36,8 +37,9 @@ class UiControlClient extends dsl_1.FluentCommand {
36
37
  const analytics = new analytics_1.Analytics();
37
38
  const analyticsHeaders = yield analytics.getAnalyticsHeaders();
38
39
  const cas = getClientArgsWithDefaults(clientArgs);
39
- const httpClient = new http_client_got_1.HttpClientGot(cas.credentials || (0, read_environment_credentials_1.envCredentials)(), analyticsHeaders);
40
- return new UiControlClient(httpClient, cas);
40
+ const credentialArgs = cas.credentials || (0, read_environment_credentials_1.envCredentials)();
41
+ const httpClient = new http_client_got_1.HttpClientGot(credentialArgs === null || credentialArgs === void 0 ? void 0 : credentialArgs.token, analyticsHeaders);
42
+ return new UiControlClient(httpClient, cas, credentialArgs === null || credentialArgs === void 0 ? void 0 : credentialArgs.workspaceId);
41
43
  });
42
44
  }
43
45
  get uiControllerClient() {
@@ -47,7 +49,7 @@ class UiControlClient extends dsl_1.FluentCommand {
47
49
  return this._uiControllerClient;
48
50
  }
49
51
  get inferenceClient() {
50
- return new inference_client_1.InferenceClient(this.clientArgs.inferenceServerUrl, this.httpClient);
52
+ return new inference_client_1.InferenceClient(this.clientArgs.inferenceServerUrl, this.httpClient, this.workspaceId);
51
53
  }
52
54
  get executionRuntime() {
53
55
  return new execution_runtime_1.ExecutionRuntime(this.uiControllerClient, this.inferenceClient);
@@ -1,5 +1,5 @@
1
- import { CredentialArgs } from '../utils/http/credentials';
2
1
  import { AnnotationLevel } from './annotation-level';
2
+ import { CredentialArgs } from './credentials-args';
3
3
  /**
4
4
  * Configuration options for the askui UI Control Client
5
5
  *
@@ -1,12 +1,6 @@
1
- export interface CredentialArgs {
2
- workspaceId: string;
3
- email: string;
4
- token: string;
5
- }
6
1
  export declare class Credentials {
7
- private credentials;
8
- constructor(credentials: CredentialArgs);
2
+ private token;
3
+ constructor(token: string);
9
4
  get base64Encoded(): string;
10
5
  private get buffered();
11
- private get userName();
12
6
  }
@@ -2,17 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Credentials = void 0;
4
4
  class Credentials {
5
- constructor(credentials) {
6
- this.credentials = credentials;
5
+ constructor(token) {
6
+ this.token = token;
7
7
  }
8
8
  get base64Encoded() {
9
9
  return this.buffered.toString('base64');
10
10
  }
11
11
  get buffered() {
12
- return Buffer.from(`${this.userName}:${this.credentials.token}`);
13
- }
14
- get userName() {
15
- return `${this.credentials.workspaceId}|${this.credentials.email}`;
12
+ return Buffer.from(`${this.token}`);
16
13
  }
17
14
  }
18
15
  exports.Credentials = Credentials;
@@ -4,8 +4,8 @@ const credentials_1 = require("./credentials");
4
4
  describe('Credentials', () => {
5
5
  describe('base64Encoded()', () => {
6
6
  test('should return base64-encoded credentials', () => {
7
- const credentials = new credentials_1.Credentials({ workspaceId: 'id123', email: 'name@tenant.com', token: 'password' });
8
- expect(credentials.base64Encoded).toBe('aWQxMjN8bmFtZUB0ZW5hbnQuY29tOnBhc3N3b3Jk');
7
+ const credentials = new credentials_1.Credentials('password');
8
+ expect(credentials.base64Encoded).toBe('cGFzc3dvcmQ=');
9
9
  });
10
10
  });
11
11
  });
@@ -1,10 +1,9 @@
1
1
  import { OptionsOfJSONResponseBody } from 'got';
2
- import { CredentialArgs } from './credentials';
3
2
  export declare class HttpClientGot {
4
- readonly credentialArgs?: CredentialArgs | undefined;
3
+ readonly token?: string | undefined;
5
4
  readonly customHeaders?: Record<string, string> | undefined;
6
5
  private headers;
7
- constructor(credentialArgs?: CredentialArgs | undefined, customHeaders?: Record<string, string> | undefined);
6
+ constructor(token?: string | undefined, customHeaders?: Record<string, string> | undefined);
8
7
  private initHeaders;
9
8
  private injectHeaders;
10
9
  post<T>(url: string, data: Record<string | number | symbol, unknown>): Promise<T>;
@@ -17,14 +17,14 @@ const got_1 = __importDefault(require("got"));
17
17
  const credentials_1 = require("./credentials");
18
18
  const custom_errors_1 = require("./custom-errors");
19
19
  class HttpClientGot {
20
- constructor(credentialArgs, customHeaders) {
21
- this.credentialArgs = credentialArgs;
20
+ constructor(token, customHeaders) {
21
+ this.token = token;
22
22
  this.customHeaders = customHeaders;
23
23
  this.headers = {};
24
- this.initHeaders(credentialArgs, customHeaders);
24
+ this.initHeaders(token, customHeaders);
25
25
  }
26
- initHeaders(credentialArgs, customHeaders = {}) {
27
- const credentials = credentialArgs ? new credentials_1.Credentials(credentialArgs) : undefined;
26
+ initHeaders(token, customHeaders = {}) {
27
+ const credentials = token ? new credentials_1.Credentials(token) : undefined;
28
28
  this.headers = Object.assign(Object.assign({}, (credentials ? { Authorization: `Basic ${credentials === null || credentials === void 0 ? void 0 : credentials.base64Encoded}` } : {})), customHeaders);
29
29
  }
30
30
  injectHeaders(options) {
@@ -0,0 +1,4 @@
1
+ export interface CredentialArgs {
2
+ workspaceId: string;
3
+ token: string;
4
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -3,9 +3,12 @@ import { ControlCommand } from '../core/ui-control-commands';
3
3
  import { CustomElement } from '../core/model/test-case-dto';
4
4
  import { Annotation } from '../core/annotation/annotation';
5
5
  export declare class InferenceClient {
6
- url: string;
6
+ baseUrl: string;
7
7
  httpClient: HttpClientGot;
8
- constructor(url: string, httpClient: HttpClientGot);
8
+ readonly workspaceId?: string | undefined;
9
+ apiVersion: string;
10
+ url: string;
11
+ constructor(baseUrl: string, httpClient: HttpClientGot, workspaceId?: string | undefined, apiVersion?: string);
9
12
  isImageRequired(instruction: string): Promise<boolean>;
10
13
  private resizeIfNeeded;
11
14
  predictControlCommand(instruction: string, customElements?: CustomElement[], image?: string): Promise<ControlCommand>;
@@ -12,9 +12,13 @@ import { ControlCommand } from '../core/ui-control-commands';
12
12
  import { Annotation } from '../core/annotation/annotation';
13
13
  import { resizeBase64ImageWithSameRatio } from '../utils/transformations';
14
14
  export class InferenceClient {
15
- constructor(url, httpClient) {
16
- this.url = url;
15
+ constructor(baseUrl, httpClient, workspaceId, apiVersion = 'v2') {
16
+ this.baseUrl = baseUrl;
17
17
  this.httpClient = httpClient;
18
+ this.workspaceId = workspaceId;
19
+ this.apiVersion = apiVersion;
20
+ const versionedBaseUrl = urljoin(this.baseUrl, 'api', this.apiVersion);
21
+ this.url = workspaceId ? urljoin(versionedBaseUrl, 'workspaces', workspaceId) : versionedBaseUrl;
18
22
  }
19
23
  isImageRequired(instruction) {
20
24
  return __awaiter(this, void 0, void 0, function* () {
@@ -43,7 +47,7 @@ export class InferenceClient {
43
47
  instruction,
44
48
  customElements,
45
49
  };
46
- const url = urljoin(this.url, 'api', 'v1', 'predict-command');
50
+ const url = urljoin(this.url, 'predict-command');
47
51
  const httpResponse = yield this.httpClient.post(url, httpBody);
48
52
  return ControlCommand.fromJson(httpResponse, resizedImage.resizeRatio);
49
53
  });
@@ -1,2 +1,2 @@
1
- import { CredentialArgs } from '../utils/http/credentials';
1
+ import { CredentialArgs } from './credentials-args';
2
2
  export declare function envCredentials(): CredentialArgs | undefined;
@@ -2,12 +2,10 @@ import { logger } from '../lib';
2
2
  export function envCredentials() {
3
3
  const envToken = process.env['ASKUI_TOKEN'];
4
4
  const envWorkspaceId = process.env['ASKUI_WORKSPACE_ID'];
5
- const envEmail = process.env['ASKUI_EMAIL'];
6
- if (envToken && envWorkspaceId && envEmail) {
7
- logger.info('Credentials are used from ENV variables: ASKUI_TOKEN, ASKUI_WORKSPACE_ID and ASKUI_EMAIL');
5
+ if (envToken && envWorkspaceId) {
6
+ logger.info('Credentials are used from ENV variables: ASKUI_TOKEN and ASKUI_WORKSPACE_ID');
8
7
  return {
9
8
  workspaceId: envWorkspaceId,
10
- email: envEmail,
11
9
  token: envToken,
12
10
  };
13
11
  }
@@ -3,8 +3,7 @@ describe('envCredentials()', () => {
3
3
  test('should read the credentials from the environment variables', () => {
4
4
  process.env['ASKUI_TOKEN'] = 'token';
5
5
  process.env['ASKUI_WORKSPACE_ID'] = 'id123';
6
- process.env['ASKUI_EMAIL'] = 'name@tenant.com';
7
6
  const credentialsFromTheEnv = envCredentials();
8
- expect(credentialsFromTheEnv).toStrictEqual({ workspaceId: 'id123', email: 'name@tenant.com', token: 'token' });
7
+ expect(credentialsFromTheEnv).toStrictEqual({ workspaceId: 'id123', token: 'token' });
9
8
  });
10
9
  });
@@ -7,6 +7,7 @@ import { ClientArgs } from './ui-controller-client-interface';
7
7
  export declare class UiControlClient extends FluentCommand {
8
8
  private httpClient;
9
9
  private clientArgs;
10
+ private workspaceId?;
10
11
  private _uiControllerClient?;
11
12
  private constructor();
12
13
  static build(clientArgs?: ClientArgs): Promise<UiControlClient>;
@@ -22,10 +22,11 @@ import { envCredentials } from './read-environment-credentials';
22
22
  import { Analytics } from '../utils/analytics';
23
23
  const getClientArgsWithDefaults = (clientArgs = {}) => (Object.assign({ uiControllerUrl: 'http://127.0.0.1:6769', inferenceServerUrl: 'https://inference.askui.com', annotationLevel: AnnotationLevel.DISABLED }, clientArgs));
24
24
  export class UiControlClient extends FluentCommand {
25
- constructor(httpClient, clientArgs) {
25
+ constructor(httpClient, clientArgs, workspaceId) {
26
26
  super();
27
27
  this.httpClient = httpClient;
28
28
  this.clientArgs = clientArgs;
29
+ this.workspaceId = workspaceId;
29
30
  this.secretText = undefined;
30
31
  }
31
32
  static build(clientArgs) {
@@ -33,8 +34,9 @@ export class UiControlClient extends FluentCommand {
33
34
  const analytics = new Analytics();
34
35
  const analyticsHeaders = yield analytics.getAnalyticsHeaders();
35
36
  const cas = getClientArgsWithDefaults(clientArgs);
36
- const httpClient = new HttpClientGot(cas.credentials || envCredentials(), analyticsHeaders);
37
- return new UiControlClient(httpClient, cas);
37
+ const credentialArgs = cas.credentials || envCredentials();
38
+ const httpClient = new HttpClientGot(credentialArgs === null || credentialArgs === void 0 ? void 0 : credentialArgs.token, analyticsHeaders);
39
+ return new UiControlClient(httpClient, cas, credentialArgs === null || credentialArgs === void 0 ? void 0 : credentialArgs.workspaceId);
38
40
  });
39
41
  }
40
42
  get uiControllerClient() {
@@ -44,7 +46,7 @@ export class UiControlClient extends FluentCommand {
44
46
  return this._uiControllerClient;
45
47
  }
46
48
  get inferenceClient() {
47
- return new InferenceClient(this.clientArgs.inferenceServerUrl, this.httpClient);
49
+ return new InferenceClient(this.clientArgs.inferenceServerUrl, this.httpClient, this.workspaceId);
48
50
  }
49
51
  get executionRuntime() {
50
52
  return new ExecutionRuntime(this.uiControllerClient, this.inferenceClient);
@@ -1,5 +1,5 @@
1
- import { CredentialArgs } from '../utils/http/credentials';
2
1
  import { AnnotationLevel } from './annotation-level';
2
+ import { CredentialArgs } from './credentials-args';
3
3
  /**
4
4
  * Configuration options for the askui UI Control Client
5
5
  *
@@ -1,12 +1,6 @@
1
- export interface CredentialArgs {
2
- workspaceId: string;
3
- email: string;
4
- token: string;
5
- }
6
1
  export declare class Credentials {
7
- private credentials;
8
- constructor(credentials: CredentialArgs);
2
+ private token;
3
+ constructor(token: string);
9
4
  get base64Encoded(): string;
10
5
  private get buffered();
11
- private get userName();
12
6
  }
@@ -1,14 +1,11 @@
1
1
  export class Credentials {
2
- constructor(credentials) {
3
- this.credentials = credentials;
2
+ constructor(token) {
3
+ this.token = token;
4
4
  }
5
5
  get base64Encoded() {
6
6
  return this.buffered.toString('base64');
7
7
  }
8
8
  get buffered() {
9
- return Buffer.from(`${this.userName}:${this.credentials.token}`);
10
- }
11
- get userName() {
12
- return `${this.credentials.workspaceId}|${this.credentials.email}`;
9
+ return Buffer.from(`${this.token}`);
13
10
  }
14
11
  }
@@ -2,8 +2,8 @@ import { Credentials } from './credentials';
2
2
  describe('Credentials', () => {
3
3
  describe('base64Encoded()', () => {
4
4
  test('should return base64-encoded credentials', () => {
5
- const credentials = new Credentials({ workspaceId: 'id123', email: 'name@tenant.com', token: 'password' });
6
- expect(credentials.base64Encoded).toBe('aWQxMjN8bmFtZUB0ZW5hbnQuY29tOnBhc3N3b3Jk');
5
+ const credentials = new Credentials('password');
6
+ expect(credentials.base64Encoded).toBe('cGFzc3dvcmQ=');
7
7
  });
8
8
  });
9
9
  });
@@ -1,10 +1,9 @@
1
1
  import { OptionsOfJSONResponseBody } from 'got';
2
- import { CredentialArgs } from './credentials';
3
2
  export declare class HttpClientGot {
4
- readonly credentialArgs?: CredentialArgs | undefined;
3
+ readonly token?: string | undefined;
5
4
  readonly customHeaders?: Record<string, string> | undefined;
6
5
  private headers;
7
- constructor(credentialArgs?: CredentialArgs | undefined, customHeaders?: Record<string, string> | undefined);
6
+ constructor(token?: string | undefined, customHeaders?: Record<string, string> | undefined);
8
7
  private initHeaders;
9
8
  private injectHeaders;
10
9
  post<T>(url: string, data: Record<string | number | symbol, unknown>): Promise<T>;
@@ -11,14 +11,14 @@ import got from 'got';
11
11
  import { Credentials } from './credentials';
12
12
  import { httpClientErrorHandler } from './custom-errors';
13
13
  export class HttpClientGot {
14
- constructor(credentialArgs, customHeaders) {
15
- this.credentialArgs = credentialArgs;
14
+ constructor(token, customHeaders) {
15
+ this.token = token;
16
16
  this.customHeaders = customHeaders;
17
17
  this.headers = {};
18
- this.initHeaders(credentialArgs, customHeaders);
18
+ this.initHeaders(token, customHeaders);
19
19
  }
20
- initHeaders(credentialArgs, customHeaders = {}) {
21
- const credentials = credentialArgs ? new Credentials(credentialArgs) : undefined;
20
+ initHeaders(token, customHeaders = {}) {
21
+ const credentials = token ? new Credentials(token) : undefined;
22
22
  this.headers = Object.assign(Object.assign({}, (credentials ? { Authorization: `Basic ${credentials === null || credentials === void 0 ? void 0 : credentials.base64Encoded}` } : {})), customHeaders);
23
23
  }
24
24
  injectHeaders(options) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "askui",
3
- "version": "0.2.5",
3
+ "version": "0.2.6",
4
4
  "license": "MIT",
5
5
  "author": "askui GmbH <info@askui.com> (http://www.askui.com/)",
6
6
  "description": "Reliable, automated end-to-end-testing that depends on what is shown on your screen instead of the technology you are running on",