tnp-helpers 19.0.51 → 19.0.53

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 (116) hide show
  1. package/browser/fesm2022/tnp-helpers.mjs +876 -22
  2. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  3. package/browser/lib/base/classes/base-cli-worker/base-cli-worker.d.ts +4 -1
  4. package/browser/lib/base/classes/base-docker.d.ts +16 -0
  5. package/browser/lib/base/classes/base-file-folders-operations.d.ts +17 -0
  6. package/browser/lib/base/classes/base-git.d.ts +2 -1
  7. package/browser/lib/base/classes/base-ignore-hide.d.ts +47 -0
  8. package/browser/lib/base/classes/base-linked-projects.d.ts +1 -1
  9. package/browser/lib/base/classes/base-linter.d.ts +12 -0
  10. package/browser/lib/base/classes/base-package-json.d.ts +4 -0
  11. package/browser/lib/base/classes/base-project.d.ts +11 -1
  12. package/browser/lib/base/classes/base-vscode.d.ts +18 -10
  13. package/browser/lib/base/classes/index.d.ts +4 -1
  14. package/browser/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +1 -6
  15. package/browser/lib/build-info._auto-generated_.d.ts +1 -1
  16. package/browser/lib/old/execute-command.d.ts +4 -1
  17. package/browser/lib/utils.d.ts +41 -0
  18. package/browser/package.json +1 -1
  19. package/lib/base/classes/base-cli-worker/base-cli-worker-terminal-ui.js +4 -2
  20. package/lib/base/classes/base-cli-worker/base-cli-worker-terminal-ui.js.map +1 -1
  21. package/lib/base/classes/base-cli-worker/base-cli-worker.d.ts +4 -1
  22. package/lib/base/classes/base-cli-worker/base-cli-worker.js +33 -6
  23. package/lib/base/classes/base-cli-worker/base-cli-worker.js.map +1 -1
  24. package/lib/base/classes/base-docker.d.ts +15 -0
  25. package/lib/base/classes/base-docker.js +57 -0
  26. package/lib/base/classes/base-docker.js.map +1 -0
  27. package/lib/base/classes/base-file-folders-operations.d.ts +16 -0
  28. package/lib/base/classes/base-file-folders-operations.js +110 -0
  29. package/lib/base/classes/base-file-folders-operations.js.map +1 -0
  30. package/lib/base/classes/base-file-operations.d.ts +0 -0
  31. package/lib/base/classes/base-file-operations.js +5 -0
  32. package/lib/base/classes/base-file-operations.js.map +1 -0
  33. package/lib/base/classes/base-git.d.ts +2 -1
  34. package/lib/base/classes/base-git.js +10 -4
  35. package/lib/base/classes/base-git.js.map +1 -1
  36. package/lib/base/classes/base-global-command-line.backend.d.ts +6 -0
  37. package/lib/base/classes/base-global-command-line.backend.js +155 -48
  38. package/lib/base/classes/base-global-command-line.backend.js.map +1 -1
  39. package/lib/base/classes/base-ignore-hide.d.ts +39 -7
  40. package/lib/base/classes/base-ignore-hide.js +167 -24
  41. package/lib/base/classes/base-ignore-hide.js.map +1 -1
  42. package/lib/base/classes/base-linked-projects.d.ts +1 -1
  43. package/lib/base/classes/base-linked-projects.js +1 -1
  44. package/lib/base/classes/base-linked-projects.js.map +1 -1
  45. package/lib/base/classes/base-linter.d.ts +11 -0
  46. package/lib/base/classes/base-linter.js +115 -0
  47. package/lib/base/classes/base-linter.js.map +1 -0
  48. package/lib/base/classes/base-package-json.d.ts +4 -0
  49. package/lib/base/classes/base-package-json.js +18 -0
  50. package/lib/base/classes/base-package-json.js.map +1 -1
  51. package/lib/base/classes/base-project-resolver.js +0 -1
  52. package/lib/base/classes/base-project-resolver.js.map +1 -1
  53. package/lib/base/classes/base-project.d.ts +11 -1
  54. package/lib/base/classes/base-project.js +40 -9
  55. package/lib/base/classes/base-project.js.map +1 -1
  56. package/lib/base/classes/base-vscode.d.ts +19 -11
  57. package/lib/base/classes/base-vscode.js +205 -8
  58. package/lib/base/classes/base-vscode.js.map +1 -1
  59. package/lib/base/classes/index.d.ts +3 -0
  60. package/lib/base/classes/index.js +3 -0
  61. package/lib/base/classes/index.js.map +1 -1
  62. package/lib/base/tcp-udp-ports/not-assignable-port.entity.js +2 -2
  63. package/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +1 -6
  64. package/lib/build-info._auto-generated_.d.ts +1 -1
  65. package/lib/build-info._auto-generated_.js +1 -1
  66. package/lib/env/env.angular-node-app.d.ts +3 -0
  67. package/lib/env/env.angular-node-app.js +5 -2
  68. package/lib/env/env.angular-node-app.js.map +1 -1
  69. package/lib/env/env.docs-webapp.d.ts +3 -0
  70. package/lib/env/env.docs-webapp.js +5 -2
  71. package/lib/env/env.docs-webapp.js.map +1 -1
  72. package/lib/env/env.electron-app.d.ts +3 -0
  73. package/lib/env/env.electron-app.js +5 -2
  74. package/lib/env/env.electron-app.js.map +1 -1
  75. package/lib/env/env.mobile-app.d.ts +3 -0
  76. package/lib/env/env.mobile-app.js +5 -2
  77. package/lib/env/env.mobile-app.js.map +1 -1
  78. package/lib/env/env.npm-lib-and-cli-tool.d.ts +3 -0
  79. package/lib/env/env.npm-lib-and-cli-tool.js +5 -2
  80. package/lib/env/env.npm-lib-and-cli-tool.js.map +1 -1
  81. package/lib/env/env.vscode-plugin.d.ts +3 -0
  82. package/lib/env/env.vscode-plugin.js +5 -2
  83. package/lib/env/env.vscode-plugin.js.map +1 -1
  84. package/lib/helpers/for-backend/helpers-file-folders.js +1 -1
  85. package/lib/helpers/for-backend/helpers-file-folders.js.map +1 -1
  86. package/lib/helpers/for-backend/helpers-git.backend.js +7 -4
  87. package/lib/helpers/for-backend/helpers-git.backend.js.map +1 -1
  88. package/lib/helpers/for-browser/angular.helper.js +2 -2
  89. package/lib/old/base-component.js +2 -2
  90. package/lib/old/base-formly-component.js +2 -2
  91. package/lib/old/dual-component-ctrl.js +2 -2
  92. package/lib/old/execute-command.d.ts +4 -1
  93. package/lib/old/execute-command.js +12 -3
  94. package/lib/old/execute-command.js.map +1 -1
  95. package/lib/utils.d.ts +41 -0
  96. package/lib/utils.js +124 -9
  97. package/lib/utils.js.map +1 -1
  98. package/package.json +1 -1
  99. package/websql/fesm2022/tnp-helpers.mjs +876 -22
  100. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  101. package/websql/lib/base/classes/base-cli-worker/base-cli-worker.d.ts +4 -1
  102. package/websql/lib/base/classes/base-docker.d.ts +16 -0
  103. package/websql/lib/base/classes/base-file-folders-operations.d.ts +17 -0
  104. package/websql/lib/base/classes/base-git.d.ts +2 -1
  105. package/websql/lib/base/classes/base-ignore-hide.d.ts +47 -0
  106. package/websql/lib/base/classes/base-linked-projects.d.ts +1 -1
  107. package/websql/lib/base/classes/base-linter.d.ts +12 -0
  108. package/websql/lib/base/classes/base-package-json.d.ts +4 -0
  109. package/websql/lib/base/classes/base-project.d.ts +11 -1
  110. package/websql/lib/base/classes/base-vscode.d.ts +18 -10
  111. package/websql/lib/base/classes/index.d.ts +4 -1
  112. package/websql/lib/base/tcp-udp-ports/tcp-udp-ports.context.d.ts +1 -6
  113. package/websql/lib/build-info._auto-generated_.d.ts +1 -1
  114. package/websql/lib/old/execute-command.d.ts +4 -1
  115. package/websql/lib/utils.d.ts +41 -0
  116. package/websql/package.json +1 -1
@@ -20,6 +20,7 @@ export declare abstract class BaseCliWorker<REMOTE_CTRL extends BaseCliWorkerCon
20
20
  readonly terminalUI: TERMINAL_UI;
21
21
  readonly workerContextTemplate: ReturnType<typeof Taon.createContextTemplate>;
22
22
  private workerMainContext;
23
+ getRemoteControllerFor(ipAddressOfTaonInstance: string, port?: number): Promise<REMOTE_CTRL>;
23
24
  private workerRemoteContext;
24
25
  readonly controllerClass: new () => REMOTE_CTRL;
25
26
  private contextForRemoteConnection;
@@ -44,7 +45,9 @@ export declare abstract class BaseCliWorker<REMOTE_CTRL extends BaseCliWorkerCon
44
45
  * start normally process
45
46
  * this will crash if process already started
46
47
  */
47
- startNormallyInCurrentProcess(): Promise<void>;
48
+ startNormallyInCurrentProcess(options?: {
49
+ actionBeforeTerminalUI?: () => Promise<void>;
50
+ }): Promise<void>;
48
51
  getControllerForRemoteConnection(options?: {
49
52
  calledFrom?: string;
50
53
  }): Promise<REMOTE_CTRL>;
@@ -0,0 +1,16 @@
1
+ // @ts-nocheck
2
+ import type { ChildProcess, StdioOptions } from 'child_process';
3
+ import { BaseFeatureForProject } from './base-feature-for-project';
4
+ import { BaseProject } from './base-project';
5
+ export declare class BaseDocker<PROJECT extends BaseProject = any> extends BaseFeatureForProject<PROJECT> {
6
+ /**
7
+ * Updates ports in .env file based on available ports range.
8
+ */
9
+ updateDockerComposePorts(): Promise<void>;
10
+ getDockerComposeUpExecChildProcess(action: 'up' | 'down', options?: {
11
+ composeFileName?: string;
12
+ cwd?: string;
13
+ env?: NodeJS.ProcessEnv;
14
+ stdio?: StdioOptions;
15
+ }): ChildProcess;
16
+ }
@@ -0,0 +1,17 @@
1
+ // @ts-nocheck
2
+ import { BaseFeatureForProject } from './base-feature-for-project';
3
+ import type { BaseProject } from './base-project';
4
+ export declare class BaseFileFoldersOperations<PROJECT extends BaseProject = any> extends BaseFeatureForProject<PROJECT> {
5
+ /**
6
+ * Relative to project root
7
+ * @returns list of files and folders to copy when copying project
8
+ */
9
+ protected fielsAndFoldersToCopy(): string[];
10
+ moveProjectTo(destination: string): Promise<void>;
11
+ deleteProject(options?: {
12
+ skipChildren?: boolean;
13
+ }): void;
14
+ copyProjectTo(destination: string, options?: {
15
+ skipChildren?: boolean;
16
+ }): Promise<void>;
17
+ }
@@ -171,7 +171,7 @@ export declare class BaseGit<PROJECT extends BaseProject = any> extends BaseFeat
171
171
  setOrigin?: 'ssh' | 'http';
172
172
  }): Promise<void>;
173
173
  validateEmailDomain(allowedEmailsEnds: string[]): Promise<void>;
174
- protected _afterPullProcessAction(setOrigin: 'ssh' | 'http'): Promise<void>;
174
+ protected _afterPullProcessAction(setOrigin: 'ssh' | 'http', skipCloneGitChildren?: boolean): Promise<void>;
175
175
  pushProcess(options?: PushProcessOptions): Promise<void>;
176
176
  _beforeAnyActionOnGitRoot(): void;
177
177
  protected _beforePushProcessAction(setOrigin: 'ssh' | 'http'): Promise<void>;
@@ -203,4 +203,5 @@ export declare class BaseGit<PROJECT extends BaseProject = any> extends BaseFeat
203
203
  * If false command navi reset will reset only project.
204
204
  */
205
205
  resetIsRestingAlsoChildren(): boolean;
206
+ useBranchNameDirectlyAsCommitMessage(): boolean;
206
207
  }
@@ -0,0 +1,47 @@
1
+ // @ts-nocheck
2
+ import { BaseFeatureForProject } from './base-feature-for-project';
3
+ import type { BaseProject } from './base-project';
4
+ /**
5
+ * Git Ignore
6
+ * Vscode Files Hide
7
+ * Npm Ignore
8
+ */
9
+ export declare class BaseIgnoreHideHelpers<PROJECT extends BaseProject = any> extends BaseFeatureForProject<PROJECT> {
10
+ /**
11
+ * (@default: false)
12
+ *
13
+ * If true, the files/folders/patterns that aren't really code and can
14
+ * be recreated from template project like (tsconfig.json, .babelrc, .prettierc etc.)
15
+ * will are stored in the repo
16
+ */
17
+ protected storeInRepoConfigFiles(): boolean;
18
+ init(): Promise<void>;
19
+ /**
20
+ * @param data list of patterns
21
+ * @returns list of patterns for recrusive ignore
22
+ */
23
+ private recursivePatternTransformFn;
24
+ /**
25
+ * Have to start with /
26
+ *
27
+ * Usefull if you are generating some files and folder in src/*.* folder
28
+ * (Taon CLI does this for automatic host generation)
29
+ * @returns patterns that are ignored in repo but visible to user
30
+ */
31
+ protected getPatternsIgnoredInRepoButVisibleToUser(): string[];
32
+ protected alwaysIgnoredHiddenPatterns(): string[];
33
+ alwaysUseRecursivePattern(): string[];
34
+ protected alwaysIgnoredAndHiddenFilesAndFolders(): string[];
35
+ protected hiddenButNeverIgnoredInRepo(): string[];
36
+ protected hiddenButNotNecessaryIgnoredInRepoFilesAndFolders(): string[];
37
+ protected hiddenButNotNecessaryIgnoredInRepoPatterns(): string[];
38
+ protected npmIgnoreFilesFoldersPatterns(): string[];
39
+ writeGitIgnore(): void;
40
+ /**
41
+ * Use can apply this to .vscode/settings.json [files.exclude] property
42
+ */
43
+ getVscodeFilesFoldersAndPatternsToHide(): {
44
+ [fileFolderOrPattern: string]: true;
45
+ };
46
+ writeNpmIgnore(): void;
47
+ }
@@ -19,5 +19,5 @@ export declare class BaseLinkedProjects<PROJECT extends BaseProject = any> exten
19
19
  get detectedLinkedProjects(): LinkedProject[];
20
20
  get linkedProjectsPrefix(): string;
21
21
  resetLinkedProjectsOnlyToCoreBranches(): boolean;
22
- cloneUnexistedLinkedProjects(setOrigin: 'ssh' | 'http'): Promise<any>;
22
+ cloneNonexistedLinkedProjects(setOrigin: 'ssh' | 'http'): Promise<any>;
23
23
  }
@@ -0,0 +1,12 @@
1
+ // @ts-nocheck
2
+ import { BaseFeatureForProject } from './base-feature-for-project';
3
+ import type { BaseProject } from './base-project';
4
+ export declare class BaseLinter<PROJECT extends BaseProject = any> extends BaseFeatureForProject<PROJECT> {
5
+ init(): Promise<void>;
6
+ getLintFiles(): string[];
7
+ getConfigEditorconfig(): string;
8
+ getConfigPrettierrc(): object;
9
+ getConfigPrettierignore(): string;
10
+ isEnableForProject(): boolean;
11
+ writeLintFiles(): void;
12
+ }
@@ -96,6 +96,9 @@ export declare class BasePackageJson extends BaseJsonFileReader<PackageJson> {
96
96
  * Minor Version from package.json
97
97
  */
98
98
  get minorVersion(): number;
99
+ /**
100
+ * @deprecated TODO not usefull ?
101
+ */
99
102
  getVersionAsNumber(releaseType: CoreModels.ReleaseVersionType): number;
100
103
  bumpPatchVersion(): Promise<any>;
101
104
  getBumpedVersionFor(releaseType: CoreModels.ReleaseVersionType): string;
@@ -114,4 +117,5 @@ export declare class BasePackageJson extends BaseJsonFileReader<PackageJson> {
114
117
  setMainProperty(main: string, purpose?: string): Promise<void>;
115
118
  setBuildHash(hash: string): void;
116
119
  getBuildHash(): string;
120
+ copyTo(location: string | string[]): void;
117
121
  }
@@ -2,10 +2,14 @@
2
2
  import { CoreModels } from 'tnp-core/websql';
3
3
  import { CoreProject } from '../../index';
4
4
  import { BaseProjectType } from '../../models';
5
+ import { BaseDocker } from './base-docker';
6
+ import { BaseFileFoldersOperations } from './base-file-folders-operations';
5
7
  import { BaseGit } from './base-git';
8
+ import { BaseIgnoreHideHelpers } from './base-ignore-hide';
6
9
  import { BaseJavaJdk } from './base-java-jdk';
7
10
  import type { BaseLibraryBuild } from './base-library-build';
8
11
  import { BaseLinkedProjects } from './base-linked-projects';
12
+ import { BaseLinter } from './base-linter';
9
13
  import { BaseNpmHelpers } from './base-npm-helpers';
10
14
  import { BaseProjectResolver } from './base-project-resolver';
11
15
  import { BaseQuickFixes } from './base-quick-fixes';
@@ -29,15 +33,19 @@ export declare abstract class BaseProject<PROJECT extends BaseProject<any, any>
29
33
  readonly port: string;
30
34
  libraryBuild?: BaseLibraryBuild<BaseProject>;
31
35
  npmHelpers?: BaseNpmHelpers;
36
+ fileFoldersOperations?: BaseFileFoldersOperations;
32
37
  get packageJson(): import("./base-package-json").BasePackageJson;
33
38
  get nodeModules(): import("./base-node-modules").BaseNodeModules<BaseNpmHelpers<BaseProject<BaseProject<any, any>, CoreModels.BaseProjectType>>>;
34
39
  linkedProjects?: BaseLinkedProjects;
35
40
  vsCodeHelpers?: BaseVscodeHelpers;
36
41
  releaseProcess?: BaseReleaseProcess;
37
42
  git?: BaseGit;
43
+ linter?: BaseLinter;
44
+ ignoreHide: BaseIgnoreHideHelpers;
38
45
  quickFixes?: BaseQuickFixes;
39
46
  staticPages?: BaseStaticPages;
40
47
  javaJdk?: BaseJavaJdk;
48
+ docker?: BaseDocker;
41
49
  private __location;
42
50
  get location(): string;
43
51
  set location(v: string);
@@ -168,6 +176,9 @@ export declare abstract class BaseProject<PROJECT extends BaseProject<any, any>
168
176
  remove(relativePath: string | string[], exactPath?: boolean): any;
169
177
  removeFolderByRelativePath(relativePathToFolder: string): void;
170
178
  get isAngularLib(): any;
179
+ refreshChildrenProjects(options?: {
180
+ askUserAboutUpdate?: boolean;
181
+ }): Promise<void>;
171
182
  protected getUniqueForTask(task: string): string;
172
183
  registerAndAssignPort(taskName: string, options?: {
173
184
  startFrom?: number;
@@ -176,7 +187,6 @@ export declare abstract class BaseProject<PROJECT extends BaseProject<any, any>
176
187
  * @deprecated use this.registerAndAssignPort() or Utils.getFreePort() instead
177
188
  */
178
189
  assignFreePort(startFrom?: number): Promise<number>;
179
- removeItself(): void;
180
190
  /**
181
191
  * Purpose: not initializing all classes at the beginning
182
192
  * Only for BaseFeatureForProject class
@@ -1,29 +1,30 @@
1
1
  // @ts-nocheck
2
+ import { CoreModels } from 'tnp-core/websql';
2
3
  import { BaseFeatureForProject } from './base-feature-for-project';
3
4
  import type { BaseProject } from './base-project';
4
- export interface ISettingsVscode {
5
- 'workbench.colorTheme': string;
6
- 'workbench.colorCustomizations'?: {
7
- 'activityBar.background'?: string;
8
- 'statusBar.background'?: string;
9
- 'statusBar.debuggingBackground'?: string;
10
- };
11
- }
12
5
  export declare class BaseVscodeHelpers<PROJECT extends BaseProject = any> extends BaseFeatureForProject<PROJECT> {
6
+ init(options?: {
7
+ skipHiddingTempFiles?: boolean;
8
+ }): Promise<void>;
13
9
  /**
14
10
  * settings.json relative path
15
11
  */
16
12
  readonly relativePathSettingsJsonVscode = ".vscode/settings.json";
17
13
  readonly relativePathExtensionJsonVScode = ".vscode/extensions.json";
18
- protected readonly currentSettingsValue: ISettingsVscode;
19
- saveCurrentSettings(): void;
14
+ readonly currentSettingsValue: CoreModels.VSCodeSettings;
20
15
  constructor(project: PROJECT);
16
+ protected modifyVscode(modifyFN: (settings: CoreModels.VSCodeSettings) => CoreModels.VSCodeSettings): void;
17
+ saveCurrentSettings(): void;
21
18
  getExtensions(): string[];
22
19
  /**
23
20
  * @deprecated use getExtensions() instead
24
21
  */
25
22
  private get extensions();
26
23
  recreateExtensions(): void;
24
+ protected getExecuteParamsForSettings(): any[];
25
+ recreateBaseSettings(options?: {
26
+ save?: boolean;
27
+ }): Promise<void>;
27
28
  recreateWindowTitle(options?: {
28
29
  save?: boolean;
29
30
  }): void;
@@ -43,4 +44,11 @@ export declare class BaseVscodeHelpers<PROJECT extends BaseProject = any> extend
43
44
  */
44
45
  getVscodeBottomColor(): string;
45
46
  refreshColorsInSettings(): void;
47
+ getBasicSettins(): Promise<object>;
48
+ protected resolveParamsVscode(obj: any, prams: any[]): Promise<void>;
49
+ toogleFilesVisibilityInVscode(options: {
50
+ action: 'show-files' | 'hide-files';
51
+ skipSaving?: boolean;
52
+ }): void;
53
+ changeColorThemeVscode(white?: boolean): void;
46
54
  }
@@ -9,6 +9,8 @@ export * from './base-node-modules';
9
9
  export * from './base-npm-helpers';
10
10
  export * from './base-linked-projects';
11
11
  export * from './base-git';
12
+ export * from './base-ignore-hide';
13
+ export * from './base-linter';
12
14
  export * from './base-vscode';
13
15
  export * from './base-release-process';
14
16
  export * from './base-compiler-for-project';
@@ -16,4 +18,5 @@ export * from './base-debounce-compiler-for-project';
16
18
  export * from './base-quick-fixes';
17
19
  export * from './base-cli-worker';
18
20
  export * from './base-process-manager';
19
- export * from './base-command-line-feature';
21
+ export * from './base-command-line-feature';
22
+ export * from './base-file-folders-operations';
@@ -6,12 +6,7 @@ export declare const PortsContextTemplate: () => {
6
6
  readonly __refSync: import("taon/websql").EndpointContext;
7
7
  getClassInstance<T>(ctor: new (...args: any[]) => T): T;
8
8
  getClass<T>(ctor: new (...args: any[]) => T): new (...args: any[]) => T;
9
- initialize: (overrideOptions?: {
10
- overrideHost?: string;
11
- overrideRemoteHost?: string;
12
- onlyMigrationRun?: boolean;
13
- onlyMigrationRevertToTimestamp?: number;
14
- }) => Promise<import("taon/websql").EndpointContext>;
9
+ initialize: (overrideOptions?: import("taon/websql").Models.TaonInitializeParams) => Promise<import("taon/websql").EndpointContext>;
15
10
  readonly realtime: {
16
11
  readonly client: import("taon/websql/lib/realtime/realtime-client").RealtimeClient;
17
12
  readonly server: import("taon/websql/lib/realtime/realtime-server").RealtimeServer;
@@ -18,4 +18,4 @@ export declare const PROJECT_NPM_NAME = "tnp-helpers";
18
18
  /**
19
19
  * Autogenerated by current cli tool. Use *tnp release* to bump version.
20
20
  */
21
- export declare const CURRENT_PACKAGE_VERSION = "19.0.51";
21
+ export declare const CURRENT_PACKAGE_VERSION = "19.0.53";
@@ -1,5 +1,5 @@
1
1
  // @ts-nocheck
2
- import type { ExtensionContext } from 'vscode';
2
+ import type { ExtensionContext, Uri } from 'vscode';
3
3
  import { Log } from './helpers';
4
4
  import { ProcesOptions } from './models';
5
5
  export type ExecCommandTypeOpt = {
@@ -7,6 +7,9 @@ export type ExecCommandTypeOpt = {
7
7
  log?: Log;
8
8
  context?: ExtensionContext;
9
9
  cwd?: string;
10
+ uri: Uri;
11
+ selectedUris: Uri[];
12
+ rootFolderPath?: string;
10
13
  };
11
14
  export type ExecCommandType = string | string[] | ((opt: ExecCommandTypeOpt) => any);
12
15
  export declare function executeCommand(titleOfTask: any, registerName: string, commandToExecute: ExecCommandType, pOptions?: ProcesOptions, isDefaultBuildCommand?: boolean, context?: ExtensionContext, debug?: boolean): any;
@@ -207,4 +207,45 @@ export declare namespace UtilsJava {
207
207
  export declare namespace UtilsPasswords {
208
208
  const hashPassword: (password: string) => Promise<string>;
209
209
  const verifyPassword: (password: string, stored: string) => Promise<boolean>;
210
+ }
211
+ export declare namespace FilePathMetaData {
212
+ /**
213
+ * Embed metadata into filename while preserving the extension.
214
+ *
215
+ * Example:
216
+ * embedData({ version: "1.2.3", envName: "__" }, "project.zip")
217
+ * -> "version|-|1.2.3||--||envName|-|__|||project.zip"
218
+ */
219
+ function embedData<T extends Record<string, any>>(data: T, orgFilename: string, options?: {
220
+ skipAddingBasenameAtEnd?: boolean;
221
+ }): string;
222
+ /**
223
+ * Extract metadata from filename (reverse of embedData).
224
+ *
225
+ * Example:
226
+ * extractData<{ version: string; env: string }>("myfile__version-1.2.3__env-prod.zip")
227
+ * -> { version: "1.2.3", env: "prod" }
228
+ */
229
+ function extractData<T extends Record<string, any>>(filename: string): T;
230
+ const getOnlyMetadataString: (filename: string) => string;
231
+ }
232
+ /**
233
+ * Easy way to connect CLI commands to cli class methods.
234
+ *
235
+ * Example:
236
+ * in clic class
237
+ * $FirstCli {
238
+ *
239
+ * @UtilsCliMethod.decorator('doSomething')
240
+ * doSomething() {
241
+ * console.log('doing something');
242
+ * }
243
+ * }
244
+ *
245
+ * UtilsCliMethod.getFrom($FirstCli.prototype.doSomething) // "firstcli:dosomething"
246
+ *
247
+ */
248
+ export declare namespace UtilsCliMethod {
249
+ const decorator: (methodName: string) => MethodDecorator;
250
+ const getFrom: (ClassPrototypeMethodFnHere: Function, globalMethod?: boolean) => string;
210
251
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tnp-helpers/websql",
3
- "version": "19.0.51",
3
+ "version": "19.0.53",
4
4
  "module": "fesm2022/tnp-helpers.mjs",
5
5
  "typings": "index.d.ts",
6
6
  "exports": {