@halcyontech/vscode-ibmi-types 2.18.0 → 3.0.5

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 (54) hide show
  1. package/Instance.d.ts +2 -1
  2. package/api/CCSIDs.d.ts +8 -0
  3. package/api/CompileTools.d.ts +2 -0
  4. package/api/Filter.d.ts +2 -2
  5. package/api/IBMi.d.ts +36 -32
  6. package/api/IBMiContent.d.ts +18 -33
  7. package/api/{Search.d.ts → SearchTools.d.ts} +1 -1
  8. package/api/Tools.d.ts +15 -21
  9. package/api/actions.d.ts +12 -0
  10. package/api/components/component.d.ts +30 -15
  11. package/api/components/manager.d.ts +6 -3
  12. package/api/components/mapepire/index.d.ts +25 -0
  13. package/api/components/mapepire/sqlJob.d.ts +20 -0
  14. package/api/components/mapepire/types.d.ts +7 -0
  15. package/api/components/mapepire/version.d.ts +4 -0
  16. package/api/components/runtime.d.ts +15 -5
  17. package/api/configuration/DebugConfiguration.d.ts +5 -6
  18. package/api/configuration/config/types.d.ts +13 -9
  19. package/api/configuration/serverFile.d.ts +2 -5
  20. package/api/configuration/storage/BaseStorage.d.ts +1 -2
  21. package/api/configuration/storage/CodeForIStorage.d.ts +14 -14
  22. package/api/configuration/storage/ConnectionStorage.d.ts +6 -3
  23. package/api/connectionProfiles.d.ts +14 -0
  24. package/api/password.d.ts +8 -0
  25. package/api/queue.d.ts +9 -0
  26. package/api/tests/components/customCli.d.ts +7 -4
  27. package/api/types.d.ts +34 -20
  28. package/commands/open.d.ts +1 -1
  29. package/config/passwords.d.ts +3 -0
  30. package/debug/certificates.d.ts +1 -1
  31. package/debug/index.d.ts +1 -1
  32. package/debug/server.d.ts +7 -8
  33. package/editors/actionEditor.d.ts +15 -0
  34. package/editors/connectionProfileEditor.d.ts +3 -0
  35. package/editors/customEditorProvider.d.ts +29 -0
  36. package/filesystems/local/deployTools.d.ts +6 -5
  37. package/filesystems/local/env.d.ts +1 -1
  38. package/filesystems/qsys/FSUtils.d.ts +4 -3
  39. package/filesystems/qsys/sourceDateHandler.d.ts +2 -0
  40. package/mergeProfiles.d.ts +1 -0
  41. package/package.json +1 -1
  42. package/typings.d.ts +14 -5
  43. package/ui/Tools.d.ts +5 -2
  44. package/ui/actions.d.ts +4 -4
  45. package/ui/connection.d.ts +2 -0
  46. package/ui/diagnostics.d.ts +1 -1
  47. package/ui/types.d.ts +8 -3
  48. package/uri/handler.d.ts +1 -1
  49. package/webviews/CustomUI.d.ts +19 -13
  50. package/api/components/copyToImport.d.ts +0 -14
  51. package/api/components/cqsh/index.d.ts +0 -17
  52. package/api/components/getMemberInfo.d.ts +0 -19
  53. package/api/components/getNewLibl.d.ts +0 -20
  54. package/filesystems/local/actions.d.ts +0 -5
@@ -1,7 +1,8 @@
1
+ import { SemanticVersion } from "../../typings";
1
2
  import IBMi from "../IBMi";
2
3
  export declare const SERVICE_CERTIFICATE = "debug_service.pfx";
3
4
  export declare const CLIENT_CERTIFICATE = "debug_service.crt";
4
- declare type ConfigLine = {
5
+ type ConfigLine = {
5
6
  key: string;
6
7
  value?: string;
7
8
  };
@@ -21,15 +22,13 @@ export declare class DebugConfiguration {
21
22
  getRemoteServiceWorkDir(): string;
22
23
  getRemoteServiceWorkspace(): string;
23
24
  getNavigatorLogFile(): string;
25
+ getRemoteServiceSecuredPort(): string;
26
+ getRemoteServiceSepDaemonPort(): string;
24
27
  }
25
28
  interface DebugServiceDetails {
26
29
  version: string;
27
30
  java: string;
28
- semanticVersion: () => {
29
- major: number;
30
- minor: number;
31
- patch: number;
32
- };
31
+ semanticVersion: () => SemanticVersion;
33
32
  }
34
33
  export declare function resetDebugServiceDetails(): void;
35
34
  export declare function getDebugServiceDetails(connection: IBMi): Promise<DebugServiceDetails>;
@@ -1,12 +1,11 @@
1
1
  import { FilterType } from "../../Filter";
2
- import { DeploymentMethod, ConnectionData } from "../../types";
3
- export declare type DefaultOpenMode = "browse" | "edit";
4
- export declare type ReconnectMode = "always" | "never" | "ask";
2
+ import { ConnectionData, DeploymentMethod } from "../../types";
3
+ export type DefaultOpenMode = "browse" | "edit";
4
+ export type ReconnectMode = "always" | "never" | "ask";
5
5
  export interface ConnectionConfig extends ConnectionProfile {
6
6
  host: string;
7
7
  autoClearTempData: boolean;
8
8
  connectionProfiles: ConnectionProfile[];
9
- commandProfiles: CommandProfile[];
10
9
  autoSortIFSShortcuts: boolean;
11
10
  tempLibrary: string;
12
11
  tempDir: string;
@@ -15,6 +14,9 @@ export interface ConnectionConfig extends ConnectionProfile {
15
14
  hideCompileErrors: string[];
16
15
  enableSourceDates: boolean;
17
16
  sourceDateGutter: boolean;
17
+ ccsidConversionEnabled: boolean;
18
+ ccsidConvertFrom: string;
19
+ ccsidConvertTo: string;
18
20
  encodingFor5250: string;
19
21
  terminalFor5250: string;
20
22
  setDeviceNameFor5250: boolean;
@@ -25,12 +27,17 @@ export interface ConnectionConfig extends ConnectionProfile {
25
27
  debugSepPort: string;
26
28
  debugUpdateProductionFiles: boolean;
27
29
  debugEnableDebugTracing: boolean;
30
+ debugIgnoreCertificateErrors: boolean;
28
31
  readOnlyMode: boolean;
29
32
  quickConnect: boolean;
30
33
  defaultDeploymentMethod: DeploymentMethod | '';
31
34
  protectedPaths: string[];
32
35
  showHiddenFiles: boolean;
33
- lastDownloadLocation: string;
36
+ secureSQL: boolean;
37
+ keepActionSpooledFiles: boolean;
38
+ autoUpdateDirectoryPermissions: string;
39
+ mapepireJavaVersion: string;
40
+ currentProfile?: string;
34
41
  [name: string]: any;
35
42
  }
36
43
  export interface RemoteConfigFile {
@@ -58,10 +65,7 @@ export interface ConnectionProfile {
58
65
  objectFilters: ObjectFilters[];
59
66
  ifsShortcuts: string[];
60
67
  customVariables: CustomVariable[];
61
- }
62
- export interface CommandProfile {
63
- name: string;
64
- command: string;
68
+ setLibraryListCommand?: string;
65
69
  }
66
70
  export interface StoredConnection {
67
71
  index: number;
@@ -1,8 +1,5 @@
1
1
  import IBMi from "../IBMi";
2
- declare type ConfigResult = `not_loaded` | `no_exist` | `failed_to_parse` | `invalid` | `ok`;
3
- interface LoadResult {
4
- server: ConfigResult;
5
- }
2
+ type ConfigResult = `not_loaded` | `no_exist` | `failed_to_parse` | `invalid` | `ok`;
6
3
  export declare class ConfigFile<T> {
7
4
  private connection;
8
5
  readonly fallback: T;
@@ -18,6 +15,6 @@ export declare class ConfigFile<T> {
18
15
  loadFromServer(): Promise<void>;
19
16
  get(): Promise<T>;
20
17
  reset(): void;
21
- getState(): LoadResult;
18
+ getState(): ConfigResult;
22
19
  }
23
20
  export {};
@@ -1,8 +1,7 @@
1
- /// <reference types="vscode" />
2
1
  /**
3
2
  * A common type that works for both a Map and VS Code's Memento
4
3
  */
5
- export declare type GlobalState = {
4
+ export type GlobalState = {
6
5
  keys(): Iterable<string>;
7
6
  get<T>(key: string): T | undefined;
8
7
  update?(key: string, value: any): Thenable<void>;
@@ -1,14 +1,14 @@
1
1
  import { ComponentInstallState } from "../../components/component";
2
2
  import { AspInfo, ConnectionData } from "../../types";
3
3
  import { BaseStorage } from "./BaseStorage";
4
- export declare type PathContent = Record<string, string[]>;
5
- export declare type DeploymentPath = Record<string, string>;
6
- export declare type DebugCommands = Record<string, string>;
7
- export declare type LastConnection = {
4
+ export type PathContent = Record<string, string[]>;
5
+ export type DeploymentPath = Record<string, string>;
6
+ export type DebugCommands = Record<string, string>;
7
+ export type LastConnection = {
8
8
  name: string;
9
9
  timestamp: number;
10
10
  };
11
- export declare type CachedServerSettings = {
11
+ export type CachedServerSettings = {
12
12
  lastCheckedOnVersion: string | undefined;
13
13
  iAspInfo: AspInfo[];
14
14
  qccsid: number | null;
@@ -21,7 +21,6 @@ export declare type CachedServerSettings = {
21
21
  badDataAreasChecked: boolean | null;
22
22
  libraryListValidated: boolean | null;
23
23
  pathChecked?: boolean;
24
- userDefaultCCSID: number | null;
25
24
  debugConfigLoaded: boolean;
26
25
  maximumArgsLength: number;
27
26
  } | undefined;
@@ -32,19 +31,18 @@ export declare class CodeForIStorage {
32
31
  setLastConnection(name: string): Promise<void>;
33
32
  setLastConnections(lastConnections: LastConnection[]): Promise<void>;
34
33
  getServerSettingsCache(name: string): {
35
- lastCheckedOnVersion: string;
34
+ lastCheckedOnVersion: string | undefined;
36
35
  iAspInfo: AspInfo[];
37
- qccsid: number;
38
- jobCcsid: number;
36
+ qccsid: number | null;
37
+ jobCcsid: number | null;
39
38
  remoteFeatures: {
40
- [name: string]: string;
39
+ [name: string]: string | undefined;
41
40
  };
42
41
  installedComponents: ComponentInstallState[];
43
- remoteFeaturesKeys: string;
44
- badDataAreasChecked: boolean;
45
- libraryListValidated: boolean;
42
+ remoteFeaturesKeys: string | null;
43
+ badDataAreasChecked: boolean | null;
44
+ libraryListValidated: boolean | null;
46
45
  pathChecked?: boolean;
47
- userDefaultCCSID: number;
48
46
  debugConfigLoaded: boolean;
49
47
  maximumArgsLength: number;
50
48
  };
@@ -59,4 +57,6 @@ export declare class CodeForIStorage {
59
57
  getPreviousFindTerms(): string[];
60
58
  addPreviousFindTerm(term: string): Promise<void>;
61
59
  clearPreviousFindTerms(): Promise<void>;
60
+ getLastDownloadLocation(): string;
61
+ setLastDownloadLocation(location: string): Promise<void>;
62
62
  }
@@ -1,6 +1,6 @@
1
1
  import { BaseStorage } from "./BaseStorage";
2
2
  import { DebugCommands, DeploymentPath, PathContent } from "./CodeForIStorage";
3
- declare type AuthorisedExtension = {
3
+ type AuthorisedExtension = {
4
4
  id: string;
5
5
  displayName: string;
6
6
  since: number;
@@ -14,8 +14,6 @@ export declare class ConnectionStorage {
14
14
  setConnectionName(connectionName: string): void;
15
15
  getSourceList(): PathContent;
16
16
  setSourceList(sourceList: PathContent): Promise<void>;
17
- getLastProfile(): string;
18
- setLastProfile(lastProfile: string): Promise<void>;
19
17
  getPreviousCurLibs(): string[];
20
18
  setPreviousCurLibs(previousCurLibs: string[]): Promise<void>;
21
19
  getDeployment(): DeploymentPath;
@@ -26,6 +24,9 @@ export declare class ConnectionStorage {
26
24
  getRecentlyOpenedFiles(): string[];
27
25
  setRecentlyOpenedFiles(recentlyOpenedFiles: string[]): Promise<void>;
28
26
  clearRecentlyOpenedFiles(): Promise<void>;
27
+ /** @deprecated stored in ConnectionSettings now */
28
+ getLastProfile(): string;
29
+ clearDeprecatedLastProfile(): Promise<void>;
29
30
  grantExtensionAuthorisation(extensionId: string, displayName: string): Promise<void>;
30
31
  getExtensionAuthorisation(extensionId: string): AuthorisedExtension;
31
32
  getAuthorisedExtensions(): AuthorisedExtension[];
@@ -34,5 +35,7 @@ export declare class ConnectionStorage {
34
35
  hasMessageBeenShown(messageId: string): boolean;
35
36
  markMessageAsShown(messageId: string): Promise<void>;
36
37
  unmarkMessageAsShown(messageId: string): Promise<void>;
38
+ getNextPasswordCheck(): Date;
39
+ setNextPasswordCheck(epoch: number): Promise<void>;
37
40
  }
38
41
  export {};
@@ -0,0 +1,14 @@
1
+ import { ConnectionProfile } from "./types";
2
+ export declare function updateConnectionProfile(profile: ConnectionProfile, options?: {
3
+ newName?: string;
4
+ delete?: boolean;
5
+ }): Promise<void>;
6
+ /**
7
+ * @returns ann arry of {@link ConnectionProfile} stored in the config; except the default profile (with a blank name), only used internally
8
+ */
9
+ export declare function getConnectionProfiles(): ConnectionProfile[];
10
+ export declare function getConnectionProfile(profileName: string): ConnectionProfile;
11
+ export declare function getDefaultProfile(): ConnectionProfile;
12
+ export declare function assignProfile(fromProfile: ConnectionProfile, toProfile: ConnectionProfile): ConnectionProfile;
13
+ export declare function cloneProfile(fromProfile: ConnectionProfile, newName: string): ConnectionProfile;
14
+ export declare function isActiveProfile(profile: ConnectionProfile): boolean;
@@ -0,0 +1,8 @@
1
+ import IBMi from "./IBMi";
2
+ export declare namespace Password {
3
+ function getPasswordExpiration(connection: IBMi): Promise<{
4
+ expiration: Date;
5
+ daysLeft: number;
6
+ }>;
7
+ function changePassword(connection: IBMi, oldPassword: string, newPassword: string): Promise<void>;
8
+ }
package/api/queue.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ export declare class SimpleQueue {
2
+ private delay;
3
+ private readonly queue;
4
+ private queueRunning;
5
+ setDelay(delay: number): void;
6
+ clear(): void;
7
+ next<T>(run: () => Promise<T>, cancelCheck?: () => boolean): Promise<T>;
8
+ private runNext;
9
+ }
@@ -1,12 +1,15 @@
1
1
  import IBMi from "../../IBMi";
2
- import { IBMiComponent, ComponentState, ComponentIdentification } from "../../components/component";
2
+ import { ComponentIdentification, IBMiComponent, SecureComponentState } from "../../components/component";
3
3
  export declare class CustomCLI implements IBMiComponent {
4
- static ID: string;
4
+ static DEFAULT_ID: string;
5
+ static SIGNATURE: string;
6
+ id: string;
5
7
  installPath: string;
8
+ constructor(id?: string);
6
9
  getIdentification(): ComponentIdentification;
7
10
  getFileName(): string;
8
11
  setInstallDirectory(installDirectory: string): Promise<void>;
9
- getRemoteState(connection: IBMi, installDirectory: string): Promise<ComponentState>;
10
- update(connection: IBMi): Promise<ComponentState>;
12
+ getRemoteState(connection: IBMi, installDirectory: string): Promise<SecureComponentState>;
13
+ update(connection: IBMi): Promise<SecureComponentState>;
11
14
  uninstall(connection: IBMi): Promise<void>;
12
15
  }
package/api/types.d.ts CHANGED
@@ -1,7 +1,5 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
1
  import { Variables } from "./variables";
4
- export declare type DeploymentMethod = "all" | "staged" | "unstaged" | "changed" | "compare";
2
+ export type DeploymentMethod = "all" | "staged" | "unstaged" | "changed" | "compare" | "selected";
5
3
  export interface StandardIO {
6
4
  onStdout?: (data: Buffer) => void;
7
5
  onStderr?: (data: Buffer) => void;
@@ -10,9 +8,9 @@ export interface StandardIO {
10
8
  /**
11
9
  * External interface for extensions to call `code-for-ibmi.runCommand`
12
10
  */
13
- export declare type ActionType = "member" | "streamfile" | "object" | "file";
14
- export declare type ActionRefresh = "no" | "parent" | "filter" | "browser";
15
- export declare type ActionEnvironment = "ile" | "qsh" | "pase";
11
+ export type ActionType = "member" | "streamfile" | "object" | "file";
12
+ export type ActionRefresh = "no" | "parent" | "filter" | "browser";
13
+ export type ActionEnvironment = "ile" | "qsh" | "pase";
16
14
  export declare enum CcsidOrigin {
17
15
  User = "user",
18
16
  System = "system"
@@ -24,6 +22,7 @@ export interface RemoteCommand {
24
22
  cwd?: string;
25
23
  env?: Record<string, string> | Variables;
26
24
  noLibList?: boolean;
25
+ getSpooledFiles?: boolean;
27
26
  }
28
27
  export interface CommandData extends StandardIO {
29
28
  command: string;
@@ -49,6 +48,17 @@ export interface Action {
49
48
  runOnProtected?: boolean;
50
49
  outputToFile?: string;
51
50
  }
51
+ export interface ActionResult {
52
+ success: boolean;
53
+ output: {
54
+ path: string;
55
+ processed: boolean;
56
+ hasRun: boolean;
57
+ executionOK: boolean;
58
+ output: string[];
59
+ }[];
60
+ message: string;
61
+ }
52
62
  export interface ConnectionData {
53
63
  name: string;
54
64
  host: string;
@@ -56,16 +66,15 @@ export interface ConnectionData {
56
66
  username: string;
57
67
  password?: string;
58
68
  privateKeyPath?: string;
69
+ passphrase?: string;
59
70
  keepaliveInterval?: number;
60
71
  readyTimeout?: number;
61
72
  sshDebug?: boolean;
73
+ enableMfa?: boolean;
62
74
  }
63
75
  export interface Server {
64
76
  name: string;
65
77
  }
66
- export interface Profile {
67
- profile: string;
68
- }
69
78
  export interface QsysPath {
70
79
  asp?: string;
71
80
  library: string;
@@ -118,24 +127,25 @@ export interface FileError {
118
127
  }
119
128
  export interface QsysFsOptions {
120
129
  readonly?: boolean;
130
+ libraries?: string;
121
131
  }
122
- export declare type IBMiEvent = "connected" | "disconnected" | "deployLocation" | "deploy";
132
+ export type IBMiEvent = "connected" | "disconnected" | "deployLocation" | "deploy";
123
133
  export interface WithPath {
124
134
  path: string;
125
135
  }
126
136
  export interface WithLibrary {
127
137
  library: string;
128
138
  }
129
- export declare type FocusOptions = {
139
+ export type FocusOptions = {
130
140
  select?: boolean;
131
141
  focus?: boolean;
132
142
  expand?: boolean | number;
133
143
  };
134
- export declare type IBMiMessage = {
144
+ export type IBMiMessage = {
135
145
  id: string;
136
146
  text: string;
137
147
  };
138
- export declare type IBMiMessages = {
148
+ export type IBMiMessages = {
139
149
  messages: IBMiMessage[];
140
150
  findId(id: string): IBMiMessage | undefined;
141
151
  };
@@ -144,7 +154,7 @@ export declare const IFS_BROWSER_MIMETYPE = "application/vnd.code.tree.ifsbrowse
144
154
  export declare const LIBRARY_LIST_MIMETYPE = "application/vnd.code.tree.libraryListView";
145
155
  export declare const URI_LIST_MIMETYPE = "text/uri-list";
146
156
  export declare const URI_LIST_SEPARATOR = "\r\n";
147
- export declare type ObjectBrowserDrag = {
157
+ export type ObjectBrowserDrag = {
148
158
  library: string;
149
159
  object: string;
150
160
  type: string;
@@ -154,19 +164,19 @@ export interface WrapResult {
154
164
  newStatements: string[];
155
165
  outStmf: string;
156
166
  }
157
- export declare type SpecialAuthorities = "*ALLOBJ" | "*AUDIT" | "*IOSYSCFG" | "*JOBCTL" | "*SAVSYS" | "*SECADM" | "*SERVICE" | "*SPLCTL";
158
- export declare type AttrOperands = 'ACCESS_TIME' | 'ALLOC_SIZE' | 'ALLOC_SIZE_64' | 'ALWCKPWR' | 'ALWSAV' | 'ASP' | 'AUDIT' | 'AUTH_GROUP' | 'AUTH_LIST_NAME' | 'AUTH_OWNER' | 'AUTH_USERS' | 'CCSID' | 'CHANGE_TIME' | 'CHECKED_OUT' | 'CHECKED_OUT_USER' | 'CHECKED_OUT_TIME' | 'CODEPAGE' | 'CREATE_TIME' | 'CRTOBJAUD' | 'CRTOBJSCAN' | 'DATA_SIZE' | 'DATA_SIZE_64' | 'DIR_FORMAT' | 'DISK_STG_OPT' | 'EXTENDED_ATTR_SIZE' | 'FILE_FORMAT' | 'FILE_ID' | 'JOURNAL_APPLY_CHANGES' | 'JOURNAL_ID' | 'JOURNAL_LIBRARY' | 'JOURNAL_NAME' | 'JOURNAL_OPTIONS' | 'JOURNAL_RCVR_ASP' | 'JOURNAL_RCVR_LIBRARY' | 'JOURNAL_RCVR_NAME' | 'JOURNAL_ROLLBACK_ENDED' | 'JOURNAL_START_TIME' | 'JOURNAL_STATUS' | 'LOCAL_REMOTE' | 'MAIN_STG_OPT' | 'MODIFY_TIME' | 'MULT_SIGS' | 'OBJTYPE' | 'PC_ARCHIVE' | 'PC_HIDDEN' | 'PC_READ_ONLY' | 'PC_SYSTEM' | 'RSTDRNMUNL' | 'SCAN' | 'SCAN_BINARY' | 'SCAN_CCSID1' | 'SCAN_CCSID2' | 'SCAN_SIGS_DIFF' | 'SCAN_STATUS' | 'SGID' | 'SIGNED' | 'STG_FREE' | 'SUID' | 'SYSTEM_ARCHIVE' | 'SYSTEM_USE' | 'SYS_SIGNED' | 'UDFS_DEFAULT_FORMAT' | 'USAGE_DAYS_USED' | 'USAGE_LAST_USED_TIME' | 'USAGE_RESET_TIME';
159
- export declare type SearchResults = {
167
+ export type SpecialAuthorities = "*ALLOBJ" | "*AUDIT" | "*IOSYSCFG" | "*JOBCTL" | "*SAVSYS" | "*SECADM" | "*SERVICE" | "*SPLCTL";
168
+ export type AttrOperands = 'ACCESS_TIME' | 'ALLOC_SIZE' | 'ALLOC_SIZE_64' | 'ALWCKPWR' | 'ALWSAV' | 'ASP' | 'AUDIT' | 'AUTH_GROUP' | 'AUTH_LIST_NAME' | 'AUTH_OWNER' | 'AUTH_USERS' | 'CCSID' | 'CHANGE_TIME' | 'CHECKED_OUT' | 'CHECKED_OUT_USER' | 'CHECKED_OUT_TIME' | 'CODEPAGE' | 'CREATE_TIME' | 'CRTOBJAUD' | 'CRTOBJSCAN' | 'DATA_SIZE' | 'DATA_SIZE_64' | 'DIR_FORMAT' | 'DISK_STG_OPT' | 'EXTENDED_ATTR_SIZE' | 'FILE_FORMAT' | 'FILE_ID' | 'JOURNAL_APPLY_CHANGES' | 'JOURNAL_ID' | 'JOURNAL_LIBRARY' | 'JOURNAL_NAME' | 'JOURNAL_OPTIONS' | 'JOURNAL_RCVR_ASP' | 'JOURNAL_RCVR_LIBRARY' | 'JOURNAL_RCVR_NAME' | 'JOURNAL_ROLLBACK_ENDED' | 'JOURNAL_START_TIME' | 'JOURNAL_STATUS' | 'LOCAL_REMOTE' | 'MAIN_STG_OPT' | 'MODIFY_TIME' | 'MULT_SIGS' | 'OBJTYPE' | 'PC_ARCHIVE' | 'PC_HIDDEN' | 'PC_READ_ONLY' | 'PC_SYSTEM' | 'RSTDRNMUNL' | 'SCAN' | 'SCAN_BINARY' | 'SCAN_CCSID1' | 'SCAN_CCSID2' | 'SCAN_SIGS_DIFF' | 'SCAN_STATUS' | 'SGID' | 'SIGNED' | 'STG_FREE' | 'SUID' | 'SYSTEM_ARCHIVE' | 'SYSTEM_USE' | 'SYS_SIGNED' | 'UDFS_DEFAULT_FORMAT' | 'USAGE_DAYS_USED' | 'USAGE_LAST_USED_TIME' | 'USAGE_RESET_TIME';
169
+ export type SearchResults = {
160
170
  term: string;
161
171
  hits: SearchHit[];
162
172
  };
163
- export declare type SearchHit = {
173
+ export type SearchHit = {
164
174
  path: string;
165
175
  lines: SearchHitLine[];
166
176
  readonly?: boolean;
167
177
  label?: string;
168
178
  };
169
- export declare type SearchHitLine = {
179
+ export type SearchHitLine = {
170
180
  number: number;
171
181
  content: string;
172
182
  };
@@ -193,7 +203,11 @@ export interface ModuleExport {
193
203
  symbolType: string;
194
204
  argumentOptimization: string;
195
205
  }
196
- export declare type EditorPath = string | {
206
+ export type EditorPath = string | {
197
207
  fsPath: string;
198
208
  };
209
+ export interface CacheItem<T> {
210
+ value: T;
211
+ createdAt?: number;
212
+ }
199
213
  export * from "./configuration/config/types";
@@ -1,7 +1,7 @@
1
1
  import { Disposable, Range } from "vscode";
2
2
  import Instance from "../Instance";
3
3
  import { QsysFsOptions } from "../typings";
4
- export declare type OpenEditableOptions = QsysFsOptions & {
4
+ export type OpenEditableOptions = QsysFsOptions & {
5
5
  position?: Range;
6
6
  };
7
7
  export declare function registerOpenCommands(instance: Instance): Disposable[];
@@ -2,3 +2,6 @@ import { ExtensionContext } from "vscode";
2
2
  export declare function getStoredPassword(context: ExtensionContext, connectionName: string): Thenable<string>;
3
3
  export declare function setStoredPassword(context: ExtensionContext, connectionName: string, password: string): Thenable<void>;
4
4
  export declare function deleteStoredPassword(context: ExtensionContext, connectionName: string): Thenable<void>;
5
+ export declare function getStoredPassphrase(context: ExtensionContext, connectionName: string): Thenable<string>;
6
+ export declare function setStoredPassphrase(context: ExtensionContext, connectionName: string, passphrase: string): Thenable<void>;
7
+ export declare function deleteStoredPassphrase(context: ExtensionContext, connectionName: string): Thenable<void>;
@@ -1,7 +1,7 @@
1
1
  import vscode from "vscode";
2
2
  import IBMi from "../api/IBMi";
3
3
  import { DebugConfiguration } from '../api/configuration/DebugConfiguration';
4
- export declare type ImportedCertificate = {
4
+ export type ImportedCertificate = {
5
5
  localFile?: vscode.Uri;
6
6
  remoteFile?: string;
7
7
  password: string;
package/debug/index.d.ts CHANGED
@@ -14,6 +14,6 @@ interface DebugOptions {
14
14
  procedureName?: string;
15
15
  };
16
16
  }
17
- declare type DebugObjectType = "*PGM" | "*SRVPGM";
17
+ type DebugObjectType = "*PGM" | "*SRVPGM";
18
18
  export declare function startDebug(instance: Instance, options: DebugOptions): Promise<void>;
19
19
  export {};
package/debug/server.d.ts CHANGED
@@ -1,24 +1,23 @@
1
1
  import IBMi from "../api/IBMi";
2
2
  import { Tools } from "../api/Tools";
3
- export declare type DebugJob = {
4
- name: string;
5
- ports: number[];
3
+ export type DebugJobs = {
4
+ server?: string;
5
+ service?: string;
6
6
  };
7
7
  export declare const MIN_DEBUG_VERSION = 3;
8
8
  export declare function debugPTFInstalled(connection: IBMi): boolean;
9
9
  export declare function isDebugSupported(connection: IBMi): Promise<boolean>;
10
10
  export declare function startService(connection: IBMi): Promise<boolean>;
11
11
  export declare function stopService(connection: IBMi): Promise<boolean>;
12
- export declare function getDebugServiceJob(): Promise<DebugJob>;
13
- export declare function getDebugServerJob(): Promise<DebugJob>;
12
+ export declare function getDebugEngineJobs(): Promise<DebugJobs>;
13
+ export declare function isDebugEngineRunning(): Promise<boolean>;
14
14
  /**
15
15
  * Gets a list of debug jobs stuck at MSGW in QSYSWRK
16
16
  */
17
17
  export declare function getStuckJobs(connection: IBMi): Promise<string[]>;
18
18
  export declare function endJobs(jobIds: string[], connection: IBMi): Promise<import("../typings").CommandResult[]>;
19
- export declare function isDebugEngineRunning(): Promise<boolean>;
20
19
  export declare function startServer(): Promise<boolean>;
21
20
  export declare function stopServer(): Promise<boolean>;
22
21
  export declare function refreshDebugSensitiveItems(): void;
23
- export declare function readActiveJob(connection: IBMi, job: DebugJob): Promise<string | Tools.DB2Row>;
24
- export declare function readJVMInfo(connection: IBMi, job: DebugJob): Promise<string | Tools.DB2Row>;
22
+ export declare function readActiveJob(connection: IBMi, job: string): Promise<string | Tools.DB2Row>;
23
+ export declare function readJVMInfo(connection: IBMi, job: string): Promise<string | Tools.DB2Row>;
@@ -0,0 +1,15 @@
1
+ import vscode from "vscode";
2
+ import { Action } from "../typings";
3
+ type VariableInfo = {
4
+ name: string;
5
+ text: string;
6
+ };
7
+ type VariableInfoList = {
8
+ member: VariableInfo[];
9
+ streamFile: VariableInfo[];
10
+ object: VariableInfo[];
11
+ };
12
+ export declare function isActionEdited(action: Action): boolean;
13
+ export declare function editAction(targetAction: Action, doAfterSave?: () => Thenable<void>, workspace?: vscode.WorkspaceFolder): void;
14
+ export declare function getVariablesInfo(): VariableInfoList;
15
+ export {};
@@ -0,0 +1,3 @@
1
+ import { ConnectionProfile } from "../typings";
2
+ export declare function isProfileEdited(profile: ConnectionProfile): boolean;
3
+ export declare function editConnectionProfile(profile: ConnectionProfile, doAfterSave?: () => Thenable<void>): void;
@@ -0,0 +1,29 @@
1
+ import vscode from "vscode";
2
+ import { CustomHTML } from "../webviews/CustomUI";
3
+ export declare class CustomEditor<T> extends CustomHTML implements vscode.CustomDocument {
4
+ private readonly onSave;
5
+ private readonly onClosed?;
6
+ readonly uri: vscode.Uri;
7
+ private data;
8
+ valid?: boolean;
9
+ dirty: boolean;
10
+ constructor(target: string, onSave: (data: T) => Promise<void>, onClosed?: () => void);
11
+ protected getSpecificScript(): string;
12
+ open(): void;
13
+ load(webviewPanel: vscode.WebviewPanel): void;
14
+ onDataChange(data: T & {
15
+ valid?: boolean;
16
+ }): void;
17
+ save(): Promise<void>;
18
+ dispose(): void;
19
+ }
20
+ export declare class CustomEditorProvider implements vscode.CustomEditorProvider<CustomEditor<any>> {
21
+ readonly eventEmitter: vscode.EventEmitter<vscode.CustomDocumentEditEvent<CustomEditor<any>>>;
22
+ readonly onDidChangeCustomDocument: vscode.Event<vscode.CustomDocumentEditEvent<CustomEditor<any>>>;
23
+ saveCustomDocument(document: CustomEditor<any>, cancellation: vscode.CancellationToken): Promise<void>;
24
+ openCustomDocument(uri: vscode.Uri, openContext: vscode.CustomDocumentOpenContext, token: vscode.CancellationToken): Promise<CustomEditor<any>>;
25
+ resolveCustomEditor(document: CustomEditor<any>, webviewPanel: vscode.WebviewPanel, token: vscode.CancellationToken): Promise<void>;
26
+ saveCustomDocumentAs(document: CustomEditor<any>, destination: vscode.Uri, cancellation: vscode.CancellationToken): Thenable<void>;
27
+ revertCustomDocument(document: CustomEditor<any>, cancellation: vscode.CancellationToken): Thenable<void>;
28
+ backupCustomDocument(document: CustomEditor<any>, context: vscode.CustomDocumentBackupContext, cancellation: vscode.CancellationToken): Thenable<vscode.CustomDocumentBackup>;
29
+ }
@@ -1,22 +1,23 @@
1
1
  import { Ignore } from 'ignore';
2
2
  import vscode, { Uri, WorkspaceFolder } from 'vscode';
3
3
  import { DeploymentMethod } from '../../api/types';
4
- import { DeploymentParameters } from '../../typings';
5
- declare type ServerFileChanges = {
4
+ import { BrowserItem, DeploymentParameters } from '../../typings';
5
+ type ServerFileChanges = {
6
6
  uploads: Uri[];
7
7
  relativeRemoteDeletes: string[];
8
8
  };
9
9
  export declare namespace DeployTools {
10
- function launchActionsSetup(workspaceFolder?: WorkspaceFolder): Promise<void>;
10
+ function launchActionsSetup(workspaceFolder?: WorkspaceFolder | BrowserItem): Promise<boolean>;
11
11
  function getRemoteDeployDirectory(workspaceFolder: WorkspaceFolder): string | undefined;
12
12
  /**
13
13
  * Deploy a workspace to a remote IFS location.
14
14
  * @param workspaceIndex if no index is provided, a prompt will be shown to pick one if there are multiple workspaces,
15
15
  * otherwise the current workspace will be used.
16
16
  * @param method if no method is provided, a prompt will be shown to pick the deployment method.
17
+ * @param selectedFiles if the "selected" deployment method is used, these files will be deployed.
17
18
  * @returns the index of the deployed workspace or `undefined` if the deployment failed
18
19
  */
19
- function launchDeploy(workspaceIndex?: number, method?: DeploymentMethod): Promise<{
20
+ function launchDeploy(workspaceIndex?: number, method?: DeploymentMethod, selectedFiles?: Uri[]): Promise<{
20
21
  remoteDirectory: string;
21
22
  workspaceId: number;
22
23
  } | undefined>;
@@ -27,7 +28,7 @@ export declare namespace DeployTools {
27
28
  message?: string;
28
29
  }>): Promise<ServerFileChanges>;
29
30
  function getDeployAllFiles(parameters: DeploymentParameters): Promise<vscode.Uri[]>;
30
- function setDeployLocation(node: any, workspaceFolder?: WorkspaceFolder, value?: string): Promise<void>;
31
+ function setDeployLocation(node: any, workspaceFolder?: WorkspaceFolder, value?: string, method?: DeploymentMethod, selectedFiles?: Uri[]): Promise<void>;
31
32
  function buildPossibleDeploymentDirectory(workspace: vscode.WorkspaceFolder): string;
32
33
  function getDefaultIgnoreRules(workspaceFolder: vscode.WorkspaceFolder): Promise<Ignore>;
33
34
  }
@@ -1,4 +1,4 @@
1
1
  import { WorkspaceFolder } from "vscode";
2
- export declare type Env = Record<string, string>;
2
+ export type Env = Record<string, string>;
3
3
  export declare function getEnvConfig(currentWorkspace: WorkspaceFolder): Promise<Env>;
4
4
  export declare function getBranchLibraryName(currentBranch: string): string;
@@ -1,9 +1,10 @@
1
1
  import vscode from "vscode";
2
+ export declare let restoreEditors: Promise<boolean> | undefined;
3
+ export declare function handleEditorsLeftOpened(context: vscode.ExtensionContext): Promise<boolean>;
2
4
  /**
3
5
  * Called when a member/streamfile is left open when VS Code is closed and re-opened to reconnect (or not) to the previous IBM i, based on the `autoReconnect` global configuration value.
4
6
  * If the user choses not to reconnect, the editor tab will be closed.
5
7
  *
6
- * @param uri the uri of the file triggerring the reconnection attempt
7
- * @returns `true` if the user choses to reconnect, `false` otherwise.
8
+ * @returns `true` if the user has chose to reconnect, `false` otherwise.
8
9
  */
9
- export declare function reconnectFS(uri: vscode.Uri): Promise<boolean>;
10
+ export declare function waitOnReconnect(): Promise<boolean>;
@@ -7,6 +7,7 @@ export declare class SourceDateHandler {
7
7
  private enabled;
8
8
  private timeout?;
9
9
  private readonly timeoutDelay;
10
+ private decorationTimeout?;
10
11
  private highlightSince?;
11
12
  private highlightBefore?;
12
13
  private lineEditedBefore?;
@@ -19,6 +20,7 @@ export declare class SourceDateHandler {
19
20
  private onDidChangeTextDocument;
20
21
  private _diffOnDidChange;
21
22
  private _diffChangeTimeout;
23
+ private _deferredRefreshGutter;
22
24
  private _diffRefreshGutter;
23
25
  calcNewSourceDates(alias: string, body: string): string[];
24
26
  private toggleSourceDateGutter;
@@ -0,0 +1 @@
1
+ export declare function mergeCommandProfiles(): Promise<void>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@halcyontech/vscode-ibmi-types",
3
- "version": "2.18.0",
3
+ "version": "3.0.5",
4
4
  "description": "Types for vscode-ibmi",
5
5
  "typings": "./typings.d.ts",
6
6
  "scripts": {