tnp-helpers 18.0.12 → 18.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/shared/shared_folder_info.txt +1 -1
- package/browser/esm2022/lib/base/base-db.mjs +2 -2
- package/browser/esm2022/lib/base/base-debounce-compiler-for-project.mjs +19 -4
- package/browser/esm2022/lib/base/base-git.mjs +78 -2
- package/browser/esm2022/lib/base/base-library-build.mjs +88 -2
- package/browser/esm2022/lib/base/base-linked-projects.mjs +1 -1
- package/browser/esm2022/lib/base/base-npm-helpers.mjs +1 -1
- package/browser/esm2022/lib/base/base-project-resolver.mjs +4 -1
- package/browser/esm2022/lib/base/base-project.mjs +19 -2
- package/browser/esm2022/lib/base/base-quick-fixes.mjs +24 -0
- package/browser/esm2022/lib/base/base-release-process.mjs +1 -1
- package/browser/esm2022/lib/base/base-vscode.mjs +1 -2
- package/browser/esm2022/lib/base/index.mjs +2 -1
- package/browser/esm2022/lib/helpers/helpers.mjs +1 -11
- package/browser/esm2022/lib/models.mjs +1 -1
- package/browser/esm2022/lib/utils.mjs +151 -1
- package/browser/fesm2022/tnp-helpers.mjs +377 -19
- package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
- package/browser/lib/base/base-db.d.ts +1 -1
- package/browser/lib/base/base-debounce-compiler-for-project.d.ts +4 -0
- package/browser/lib/base/base-git.d.ts +6 -29
- package/browser/lib/base/base-library-build.d.ts +13 -9
- package/browser/lib/base/base-linked-projects.d.ts +3 -3
- package/browser/lib/base/base-npm-helpers.d.ts +2 -2
- package/browser/lib/base/base-project-resolver.d.ts +1 -1
- package/browser/lib/base/base-project.d.ts +11 -10
- package/browser/lib/base/base-quick-fixes.d.ts +7 -0
- package/browser/lib/base/base-release-process.d.ts +4 -4
- package/browser/lib/base/base-vscode.d.ts +1 -1
- package/browser/lib/base/index.d.ts +1 -0
- package/browser/lib/models.d.ts +27 -1
- package/browser/lib/utils.d.ts +29 -0
- package/client/esm2022/lib/base/base-db.mjs +2 -2
- package/client/esm2022/lib/base/base-debounce-compiler-for-project.mjs +19 -4
- package/client/esm2022/lib/base/base-git.mjs +78 -2
- package/client/esm2022/lib/base/base-library-build.mjs +88 -2
- package/client/esm2022/lib/base/base-linked-projects.mjs +1 -1
- package/client/esm2022/lib/base/base-npm-helpers.mjs +1 -1
- package/client/esm2022/lib/base/base-project-resolver.mjs +4 -1
- package/client/esm2022/lib/base/base-project.mjs +19 -2
- package/client/esm2022/lib/base/base-quick-fixes.mjs +24 -0
- package/client/esm2022/lib/base/base-release-process.mjs +1 -1
- package/client/esm2022/lib/base/base-vscode.mjs +1 -2
- package/client/esm2022/lib/base/index.mjs +2 -1
- package/client/esm2022/lib/helpers/helpers.mjs +1 -11
- package/client/esm2022/lib/models.mjs +1 -1
- package/client/esm2022/lib/utils.mjs +151 -1
- package/client/fesm2022/tnp-helpers.mjs +377 -19
- package/client/fesm2022/tnp-helpers.mjs.map +1 -1
- package/client/lib/base/base-db.d.ts +1 -1
- package/client/lib/base/base-debounce-compiler-for-project.d.ts +4 -0
- package/client/lib/base/base-git.d.ts +6 -29
- package/client/lib/base/base-library-build.d.ts +13 -9
- package/client/lib/base/base-linked-projects.d.ts +3 -3
- package/client/lib/base/base-npm-helpers.d.ts +2 -2
- package/client/lib/base/base-project-resolver.d.ts +1 -1
- package/client/lib/base/base-project.d.ts +11 -10
- package/client/lib/base/base-quick-fixes.d.ts +7 -0
- package/client/lib/base/base-release-process.d.ts +4 -4
- package/client/lib/base/base-vscode.d.ts +1 -1
- package/client/lib/base/index.d.ts +1 -0
- package/client/lib/models.d.ts +27 -1
- package/client/lib/utils.d.ts +29 -0
- package/lib/base/base-command-line.backend.d.ts +12 -8
- package/lib/base/base-command-line.backend.js +129 -2
- package/lib/base/base-command-line.backend.js.map +1 -1
- package/lib/base/base-db.d.ts +1 -1
- package/lib/base/base-db.js +1 -1
- package/lib/base/base-db.js.map +1 -1
- package/lib/base/base-debounce-compiler-for-project.d.ts +4 -0
- package/lib/base/base-debounce-compiler-for-project.js +19 -2
- package/lib/base/base-debounce-compiler-for-project.js.map +1 -1
- package/lib/base/base-detached-service.d.ts +6 -0
- package/lib/base/base-detached-service.js +16 -0
- package/lib/base/base-detached-service.js.map +1 -0
- package/lib/base/base-git.d.ts +6 -29
- package/lib/base/base-git.js +173 -96
- package/lib/base/base-git.js.map +1 -1
- package/lib/base/base-ignore-hide.d.ts +1 -1
- package/lib/base/base-library-build.d.ts +14 -10
- package/lib/base/base-library-build.js +178 -57
- package/lib/base/base-library-build.js.map +1 -1
- package/lib/base/base-linked-projects.d.ts +3 -3
- package/lib/base/base-npm-helpers.d.ts +2 -2
- package/lib/base/base-project-resolver.d.ts +1 -1
- package/lib/base/base-project-resolver.js +3 -0
- package/lib/base/base-project-resolver.js.map +1 -1
- package/lib/base/base-project.d.ts +11 -8
- package/lib/base/base-project.js +26 -5
- package/lib/base/base-project.js.map +1 -1
- package/lib/base/base-quick-fixes.d.ts +6 -0
- package/lib/base/base-quick-fixes.js +31 -0
- package/lib/base/base-quick-fixes.js.map +1 -0
- package/lib/base/base-release-process.d.ts +4 -4
- package/lib/base/base-start-config.backend.d.ts +0 -2
- package/lib/base/base-start-config.backend.js +7 -2
- package/lib/base/base-start-config.backend.js.map +1 -1
- package/lib/base/base-vscode.d.ts +1 -1
- package/lib/base/base-vscode.js +1 -2
- package/lib/base/base-vscode.js.map +1 -1
- package/lib/base/index-rebuilder.backend.d.ts +0 -0
- package/lib/base/index-rebuilder.backend.js +129 -0
- package/lib/base/index-rebuilder.backend.js.map +1 -0
- package/lib/base/index.d.ts +1 -0
- package/lib/base/index.js +1 -0
- package/lib/base/index.js.map +1 -1
- package/lib/helpers/for-backend/helpers-file-folders.backend.d.ts +4 -0
- package/lib/helpers/for-backend/helpers-file-folders.backend.js +6 -2
- package/lib/helpers/for-backend/helpers-file-folders.backend.js.map +1 -1
- package/lib/helpers/for-backend/helpers-git.backend.d.ts +1 -1
- package/lib/helpers/for-backend/helpers-git.backend.js +42 -12
- package/lib/helpers/for-backend/helpers-git.backend.js.map +1 -1
- package/lib/helpers/for-browser/angular.helper.js +2 -2
- package/lib/helpers/helpers.js +5 -13
- package/lib/helpers/helpers.js.map +1 -1
- package/lib/models.d.ts +27 -1
- package/lib/old/base-component.js +2 -2
- package/lib/old/base-formly-component.js +2 -2
- package/lib/old/dual-component-ctrl.js +2 -2
- package/lib/utils.d.ts +29 -0
- package/lib/utils.js +137 -1
- package/lib/utils.js.map +1 -1
- package/package.json +8 -6
- package/tmp-environment.json +34 -30
- package/websql/esm2022/lib/base/base-db.mjs +2 -2
- package/websql/esm2022/lib/base/base-debounce-compiler-for-project.mjs +19 -4
- package/websql/esm2022/lib/base/base-git.mjs +78 -2
- package/websql/esm2022/lib/base/base-library-build.mjs +88 -2
- package/websql/esm2022/lib/base/base-linked-projects.mjs +1 -1
- package/websql/esm2022/lib/base/base-npm-helpers.mjs +1 -1
- package/websql/esm2022/lib/base/base-project-resolver.mjs +4 -1
- package/websql/esm2022/lib/base/base-project.mjs +13 -2
- package/websql/esm2022/lib/base/base-quick-fixes.mjs +24 -0
- package/websql/esm2022/lib/base/base-release-process.mjs +1 -1
- package/websql/esm2022/lib/base/base-vscode.mjs +1 -2
- package/websql/esm2022/lib/base/index.mjs +2 -1
- package/websql/esm2022/lib/helpers/helpers.mjs +1 -11
- package/websql/esm2022/lib/models.mjs +1 -1
- package/websql/esm2022/lib/utils.mjs +151 -1
- package/websql/fesm2022/tnp-helpers.mjs +371 -19
- package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
- package/websql/lib/base/base-db.d.ts +1 -1
- package/websql/lib/base/base-debounce-compiler-for-project.d.ts +4 -0
- package/websql/lib/base/base-git.d.ts +6 -29
- package/websql/lib/base/base-library-build.d.ts +13 -9
- package/websql/lib/base/base-linked-projects.d.ts +3 -3
- package/websql/lib/base/base-npm-helpers.d.ts +2 -2
- package/websql/lib/base/base-project-resolver.d.ts +1 -1
- package/websql/lib/base/base-project.d.ts +11 -12
- package/websql/lib/base/base-quick-fixes.d.ts +7 -0
- package/websql/lib/base/base-release-process.d.ts +4 -4
- package/websql/lib/base/base-vscode.d.ts +1 -1
- package/websql/lib/base/index.d.ts +1 -0
- package/websql/lib/models.d.ts +27 -1
- package/websql/lib/utils.d.ts +29 -0
|
@@ -8,6 +8,10 @@ export declare abstract class BaseDebounceCompilerForProject<ADDITIONAL_DATA = a
|
|
|
8
8
|
changeOfFiles: ChangeOfFile[];
|
|
9
9
|
asyncEvent: boolean;
|
|
10
10
|
}): any;
|
|
11
|
+
/**
|
|
12
|
+
* current files that are in project
|
|
13
|
+
*/
|
|
14
|
+
protected exitedFilesAbsPathes: string[];
|
|
11
15
|
/**
|
|
12
16
|
* @deprecated use action() instead
|
|
13
17
|
*/
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// @ts-nocheck
|
|
2
2
|
import { BaseFeatureForProject } from './base-feature-for-project';
|
|
3
|
-
import { CommitData, TypeOfCommit } from '../index';
|
|
3
|
+
import { CommitData, PushProcessOptions, TypeOfCommit } from '../index';
|
|
4
4
|
import type { BaseProject } from './base-project';
|
|
5
|
-
export declare class BaseGit<
|
|
6
|
-
project:
|
|
5
|
+
export declare class BaseGit<PROJECT extends BaseProject = any> extends BaseFeatureForProject {
|
|
6
|
+
project: PROJECT;
|
|
7
7
|
unstageAllFiles(): any;
|
|
8
8
|
revertFileChanges(fileReletivePath: string): any;
|
|
9
9
|
clone(url: string, destinationFolderName?: string, branchName?: string): Promise<any>;
|
|
@@ -35,7 +35,7 @@ export declare class BaseGit<PROJCET extends BaseProject = any> extends BaseFeat
|
|
|
35
35
|
get uncommitedFiles(): any;
|
|
36
36
|
get thereAreSomeUncommitedChange(): any;
|
|
37
37
|
thereAreSomeUncommitedChangeExcept(filesList?: string[]): any;
|
|
38
|
-
meltActionCommits(
|
|
38
|
+
meltActionCommits(): void;
|
|
39
39
|
pullCurrentBranch(options?: {
|
|
40
40
|
askToRetry?: boolean;
|
|
41
41
|
defaultHardResetCommits?: number;
|
|
@@ -109,36 +109,13 @@ export declare class BaseGit<PROJCET extends BaseProject = any> extends BaseFeat
|
|
|
109
109
|
*
|
|
110
110
|
* projects that are children of this project (with its own git repo)
|
|
111
111
|
*/
|
|
112
|
-
get gitChildren():
|
|
112
|
+
get gitChildren(): PROJECT[];
|
|
113
113
|
protected setRemoteOriginType(setOrigin: 'ssh' | 'http'): Promise<void>;
|
|
114
114
|
pullProcess(options?: {
|
|
115
115
|
cloneChildren?: boolean;
|
|
116
116
|
setOrigin?: 'ssh' | 'http';
|
|
117
117
|
}): Promise<void>;
|
|
118
|
-
pushProcess(options?:
|
|
119
|
-
force?: boolean;
|
|
120
|
-
typeofCommit?: TypeOfCommit;
|
|
121
|
-
askToConfirmPush?: boolean;
|
|
122
|
-
askToConfirmCommit?: boolean;
|
|
123
|
-
skipLint?: boolean;
|
|
124
|
-
askToConfirmBranchChange?: boolean;
|
|
125
|
-
origin?: string;
|
|
126
|
-
args?: string[];
|
|
127
|
-
setOrigin?: 'ssh' | 'http';
|
|
128
|
-
exitCallBack?: () => void;
|
|
129
|
-
forcePushNoQuestion?: boolean;
|
|
130
|
-
overrideCommitMessage?: string;
|
|
131
|
-
commitMessageRequired?: boolean;
|
|
132
|
-
/**
|
|
133
|
-
* only needed when push github
|
|
134
|
-
* and I forgot to add my username before issue
|
|
135
|
-
* taon pfix proper input my-repo#344
|
|
136
|
-
* that should be
|
|
137
|
-
* taon pfix proper input my-username/my-repo#344
|
|
138
|
-
*/
|
|
139
|
-
currentOrigin?: string;
|
|
140
|
-
skipChildren?: boolean;
|
|
141
|
-
}): Promise<void>;
|
|
118
|
+
pushProcess(options?: PushProcessOptions): Promise<void>;
|
|
142
119
|
_beforeAnyActionOnGitRoot(): any;
|
|
143
120
|
protected _beforePushProcessAction(): Promise<any>;
|
|
144
121
|
protected _beforePullProcessAction(cloneChildren?: boolean): Promise<any>;
|
|
@@ -6,9 +6,10 @@ import type { BaseProject } from './base-project';
|
|
|
6
6
|
/**
|
|
7
7
|
* Base library build for standard angular/typescript projects
|
|
8
8
|
*/
|
|
9
|
-
export declare abstract class BaseLibraryBuild<
|
|
9
|
+
export declare abstract class BaseLibraryBuild<PROJECT extends BaseProject<BaseProject, any>> extends BaseFeatureForProject {
|
|
10
10
|
private cache;
|
|
11
|
-
|
|
11
|
+
private tempOrgTsConfigFile;
|
|
12
|
+
protected sortByDeps(libraries: PROJECT[]): PROJECT[];
|
|
12
13
|
/**
|
|
13
14
|
* Use cases:
|
|
14
15
|
* 1. build all libraries in normal mode
|
|
@@ -21,41 +22,44 @@ export declare abstract class BaseLibraryBuild<PROJCET extends BaseProject<any,
|
|
|
21
22
|
* (skip normal build for not selected libraries)
|
|
22
23
|
*/
|
|
23
24
|
selectAndSaveLibraries({ selectedLibs, watch, watchBuildSupported, skipAllLibsQuestion, useLastUserConfiguration, }: {
|
|
24
|
-
selectedLibs:
|
|
25
|
+
selectedLibs: PROJECT[];
|
|
25
26
|
watch: boolean;
|
|
26
27
|
watchBuildSupported?: boolean;
|
|
27
28
|
skipAllLibsQuestion?: boolean;
|
|
28
29
|
useLastUserConfiguration?: boolean;
|
|
29
30
|
}): Promise<{
|
|
30
|
-
selectedLibs:
|
|
31
|
+
selectedLibs: PROJECT[];
|
|
31
32
|
skipRebuildingAllForWatch: boolean;
|
|
32
33
|
}>;
|
|
33
34
|
/**
|
|
34
35
|
* angular libraries from angular.json
|
|
35
36
|
*/
|
|
36
|
-
get libraries():
|
|
37
|
+
get libraries(): PROJECT[];
|
|
37
38
|
protected getLibraries(): any;
|
|
38
39
|
/**
|
|
39
40
|
* Angular library build
|
|
40
41
|
*/
|
|
41
|
-
buildLibraries({ watch, strategy, releaseBuild, buildType, copylink_to_node_modules, outputLineReplace, libraries, useLastUserConfiguration, }?: LibrariesBuildOptions<
|
|
42
|
+
buildLibraries({ watch, strategy, releaseBuild, buildType, copylink_to_node_modules, outputLineReplace, libraries, useLastUserConfiguration, }?: LibrariesBuildOptions<PROJECT> & {
|
|
42
43
|
watch?: boolean;
|
|
43
44
|
}): Promise<void>;
|
|
44
45
|
protected libWatchBuildProcess({ lib, locationsForNodeModules, strategy, buildType, outputLineReplace, }: {
|
|
45
|
-
lib:
|
|
46
|
+
lib: PROJECT;
|
|
46
47
|
locationsForNodeModules: string[];
|
|
47
48
|
strategy: 'link' | 'copy';
|
|
48
49
|
buildType: CoreModels.LibraryType;
|
|
49
50
|
outputLineReplace?: (outputLine: string) => string;
|
|
50
51
|
}): Promise<any>;
|
|
51
52
|
protected libNormalBuildProcess({ lib, locationsForNodeModules, strategy, buildType, outputLineReplace, }: {
|
|
52
|
-
lib:
|
|
53
|
+
lib: PROJECT;
|
|
53
54
|
locationsForNodeModules: string[];
|
|
54
55
|
strategy: 'link' | 'copy';
|
|
55
56
|
buildType: CoreModels.LibraryType;
|
|
56
57
|
outputLineReplace?: (outputLine: string) => string;
|
|
57
58
|
}): Promise<any>;
|
|
58
59
|
getLibraryBuildComamnd(options?: LibraryBuildCommandOptions): string | undefined;
|
|
59
|
-
get
|
|
60
|
+
get getLibraryBuildSuccessComamnds(): string[];
|
|
60
61
|
selectCopytoProjects(): Promise<string[]>;
|
|
62
|
+
private changeTsConfigForLibrariesTypes;
|
|
63
|
+
private replaceTsConfigsPathes;
|
|
64
|
+
private restoreOriginalTsConfig;
|
|
61
65
|
}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import { LinkedPorjectsConfig, LinkedProject } from '../index';
|
|
3
3
|
import { BaseFeatureForProject } from './base-feature-for-project';
|
|
4
4
|
import type { BaseProject } from './base-project';
|
|
5
|
-
export declare class BaseLinkedProjects<
|
|
5
|
+
export declare class BaseLinkedProjects<PROJECT extends BaseProject = any> extends BaseFeatureForProject {
|
|
6
6
|
private cache;
|
|
7
|
-
project:
|
|
8
|
-
get embeddedProject():
|
|
7
|
+
project: PROJECT;
|
|
8
|
+
get embeddedProject(): PROJECT;
|
|
9
9
|
get projectsDbLocation(): any;
|
|
10
10
|
saveLocationToDB(): Promise<any>;
|
|
11
11
|
saveAllLinkedProjectsToDB(): Promise<void>;
|
|
@@ -3,9 +3,9 @@ import { BaseFeatureForProject } from './base-feature-for-project';
|
|
|
3
3
|
import type { BaseProject } from './base-project';
|
|
4
4
|
import { PackageJson } from 'type-fest';
|
|
5
5
|
import { CoreModels } from 'tnp-core/browser';
|
|
6
|
-
export declare class BaseNpmHelpers<
|
|
6
|
+
export declare class BaseNpmHelpers<PROJECT extends BaseProject = any> extends BaseFeatureForProject {
|
|
7
7
|
private packageJSON;
|
|
8
|
-
constructor(project:
|
|
8
|
+
constructor(project: PROJECT);
|
|
9
9
|
updateDepsFrom(locations: string[]): any;
|
|
10
10
|
/**
|
|
11
11
|
* if something else change package.json in this project
|
|
@@ -28,7 +28,7 @@ export declare class BaseProjectResolver<PROJECT extends Partial<BaseProject> =
|
|
|
28
28
|
*/
|
|
29
29
|
typeFrom(location: string, recrusiveCall?: boolean): string;
|
|
30
30
|
From(locationOfProject: string | string[], options?: any): PROJECT;
|
|
31
|
-
nearestTo(absoluteLocation: string, options?: {
|
|
31
|
+
nearestTo(absoluteLocation: string | string[], options?: {
|
|
32
32
|
type?: string | string[];
|
|
33
33
|
findGitRoot?: boolean;
|
|
34
34
|
onlyOutSideNodeModules?: boolean;
|
|
@@ -9,7 +9,8 @@ import { BaseLinkedProjects } from './base-linked-projects';
|
|
|
9
9
|
import { BaseGit } from './base-git';
|
|
10
10
|
import { BaseVscodeHelpers } from './base-vscode';
|
|
11
11
|
import { BaseReleaseProcess } from './base-release-process';
|
|
12
|
-
|
|
12
|
+
import { BaseQuickFixes } from './base-quick-fixes';
|
|
13
|
+
export declare abstract class BaseProject<PROJECT extends BaseProject = BaseProject<any, any>, TYPE = BaseProjectType> {
|
|
13
14
|
static ins: BaseProjectResolver<BaseProject<BaseProject<any, any>, CoreModels.BaseProjectType>>;
|
|
14
15
|
cache: any;
|
|
15
16
|
static cache: any;
|
|
@@ -18,7 +19,7 @@ export declare abstract class BaseProject<PROJCET extends BaseProject<any, any>
|
|
|
18
19
|
/**
|
|
19
20
|
* resolve instance
|
|
20
21
|
*/
|
|
21
|
-
abstract readonly ins: BaseProjectResolver<
|
|
22
|
+
abstract readonly ins: BaseProjectResolver<PROJECT>;
|
|
22
23
|
/**
|
|
23
24
|
* Unique free port for project instance
|
|
24
25
|
* only available after executing *this.assignFreePort()*
|
|
@@ -30,6 +31,7 @@ export declare abstract class BaseProject<PROJCET extends BaseProject<any, any>
|
|
|
30
31
|
vsCodeHelpers: BaseVscodeHelpers;
|
|
31
32
|
releaseProcess: BaseReleaseProcess;
|
|
32
33
|
git: BaseGit;
|
|
34
|
+
quickFixes: BaseQuickFixes;
|
|
33
35
|
private __location;
|
|
34
36
|
get location(): string;
|
|
35
37
|
set location(v: string);
|
|
@@ -41,7 +43,7 @@ export declare abstract class BaseProject<PROJCET extends BaseProject<any, any>
|
|
|
41
43
|
get isMonorepo(): boolean;
|
|
42
44
|
protected orderCoreProjects(coreProjects: CoreProject[]): CoreProject[];
|
|
43
45
|
get core(): CoreProject;
|
|
44
|
-
get linkedProjectsExisted():
|
|
46
|
+
get linkedProjectsExisted(): PROJECT[];
|
|
45
47
|
setType(type: TYPE): void;
|
|
46
48
|
typeIs(...types: TYPE[]): boolean;
|
|
47
49
|
typeIsNot(...types: TYPE[]): boolean;
|
|
@@ -60,10 +62,11 @@ export declare abstract class BaseProject<PROJCET extends BaseProject<any, any>
|
|
|
60
62
|
/**
|
|
61
63
|
* alias to getAllChildren
|
|
62
64
|
*/
|
|
63
|
-
get children():
|
|
64
|
-
getChildBy(nameOrBasename: string, errors?: boolean):
|
|
65
|
-
get parent():
|
|
66
|
-
get
|
|
65
|
+
get children(): PROJECT[];
|
|
66
|
+
getChildBy(nameOrBasename: string, errors?: boolean): PROJECT;
|
|
67
|
+
get parent(): PROJECT;
|
|
68
|
+
get nearestParent(): PROJECT;
|
|
69
|
+
get grandpa(): PROJECT;
|
|
67
70
|
get allNpmPackagesNames(): string[];
|
|
68
71
|
get titleBarName(): string;
|
|
69
72
|
get genericName(): any;
|
|
@@ -104,9 +107,7 @@ export declare abstract class BaseProject<PROJCET extends BaseProject<any, any>
|
|
|
104
107
|
*/
|
|
105
108
|
run(command: string, options?: Omit<CoreModels.RunOptions, 'cwd'>): {
|
|
106
109
|
sync(): any;
|
|
107
|
-
async(detach?: boolean, mockFun?: (stdoutCallback: (dataForStdout: any) => any, stdErrcCallback: (dataForStder: any) => any, shouldProcesBeDead
|
|
108
|
-
* name from package.json
|
|
109
|
-
*/: () => boolean) => Promise<number> | number): import("child_process").ChildProcess;
|
|
110
|
+
async(detach?: boolean, mockFun?: (stdoutCallback: (dataForStdout: any) => any, stdErrcCallback: (dataForStder: any) => any, shouldProcesBeDead?: () => boolean) => Promise<number> | number): import("child_process").ChildProcess;
|
|
110
111
|
asyncAsPromise(): Promise<void>;
|
|
111
112
|
unitlOutput(optionsOutput: {
|
|
112
113
|
stdoutMsg: string | string[];
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { BaseFeatureForProject } from './base-feature-for-project';
|
|
3
|
+
import type { BaseProject } from './base-project';
|
|
4
|
+
export declare class BaseQuickFixes<PROJECT extends BaseProject = any> extends BaseFeatureForProject {
|
|
5
|
+
constructor(project: PROJECT);
|
|
6
|
+
fixSQLLiteModuleInNodeModules(): any;
|
|
7
|
+
}
|
|
@@ -3,8 +3,8 @@ import { BaseFeatureForProject } from './base-feature-for-project';
|
|
|
3
3
|
import type { BaseProject } from './base-project';
|
|
4
4
|
import { CoreModels } from 'tnp-core/browser';
|
|
5
5
|
import type { ChangelogData } from '.././models';
|
|
6
|
-
export declare class BaseReleaseProcess<
|
|
7
|
-
project:
|
|
6
|
+
export declare class BaseReleaseProcess<PROJECT extends BaseProject = any> extends BaseFeatureForProject {
|
|
7
|
+
project: PROJECT;
|
|
8
8
|
/**
|
|
9
9
|
* Automatic release process of patch plus one version
|
|
10
10
|
*/
|
|
@@ -17,7 +17,7 @@ export declare class BaseReleaseProcess<PROJCET extends BaseProject = any> exten
|
|
|
17
17
|
index: number;
|
|
18
18
|
}[];
|
|
19
19
|
getReleaseWords(): string[];
|
|
20
|
-
startRelease(options?: Partial<Pick<BaseReleaseProcess<
|
|
20
|
+
startRelease(options?: Partial<Pick<BaseReleaseProcess<PROJECT>, 'automaticRelease' | 'type' | 'newVersion'>>): Promise<void>;
|
|
21
21
|
private reinstallNodeModules;
|
|
22
22
|
selectChangelogCommits(): Promise<{
|
|
23
23
|
commitMessages: string;
|
|
@@ -32,7 +32,7 @@ export declare class BaseReleaseProcess<PROJCET extends BaseProject = any> exten
|
|
|
32
32
|
private testLibraries;
|
|
33
33
|
buildAllLibraries(): Promise<void>;
|
|
34
34
|
resetReleaseFiles(): Promise<any>;
|
|
35
|
-
get toBumpProjects():
|
|
35
|
+
get toBumpProjects(): PROJECT[];
|
|
36
36
|
bumpNewVersionEverywhere(): Promise<any>;
|
|
37
37
|
confirmNewVersion(): Promise<void>;
|
|
38
38
|
private selectReleaseType;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// @ts-nocheck
|
|
2
2
|
import type { BaseProject } from './base-project';
|
|
3
3
|
import { BaseFeatureForProject } from './base-feature-for-project';
|
|
4
|
-
export declare class BaseVscodeHelpers<
|
|
4
|
+
export declare class BaseVscodeHelpers<PROJECT extends BaseProject = any> extends BaseFeatureForProject<PROJECT> {
|
|
5
5
|
/**
|
|
6
6
|
* settings.json relative path
|
|
7
7
|
*/
|
|
@@ -10,6 +10,7 @@ export * from './base-vscode';
|
|
|
10
10
|
export * from './base-release-process';
|
|
11
11
|
export * from './base-compiler-for-project';
|
|
12
12
|
export * from './base-debounce-compiler-for-project';
|
|
13
|
+
export * from './base-quick-fixes';
|
|
13
14
|
export * from './commit-data';
|
|
14
15
|
export * from './core-project';
|
|
15
16
|
export * from './linked-project';
|
package/browser/lib/models.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// @ts-nocheck
|
|
2
2
|
import * as core from 'tnp-core/browser';
|
|
3
|
-
import type { BaseProject } from './base';
|
|
3
|
+
import type { BaseProject, TypeOfCommit } from './base';
|
|
4
4
|
export type BaseProjectType = core.CoreModels.BaseProjectType;
|
|
5
5
|
export declare const BaseProjectTypeArr: string[];
|
|
6
6
|
/**
|
|
@@ -50,4 +50,30 @@ export interface ChangelogData {
|
|
|
50
50
|
changes: string[];
|
|
51
51
|
version: string;
|
|
52
52
|
date: string;
|
|
53
|
+
}
|
|
54
|
+
export interface PushProcessOptions {
|
|
55
|
+
force?: boolean;
|
|
56
|
+
typeofCommit?: TypeOfCommit;
|
|
57
|
+
mergeUpdateCommits?: boolean;
|
|
58
|
+
askToConfirmPush?: boolean;
|
|
59
|
+
askToConfirmCommit?: boolean;
|
|
60
|
+
skipLint?: boolean;
|
|
61
|
+
askToConfirmBranchChange?: boolean;
|
|
62
|
+
origin?: string;
|
|
63
|
+
args?: string[];
|
|
64
|
+
setOrigin?: 'ssh' | 'http';
|
|
65
|
+
exitCallBack?: () => void;
|
|
66
|
+
forcePushNoQuestion?: boolean;
|
|
67
|
+
overrideCommitMessage?: string;
|
|
68
|
+
commitMessageRequired?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* only needed when push github
|
|
71
|
+
* and I forgot to add my username before issue
|
|
72
|
+
* taon pfix proper input my-repo#344
|
|
73
|
+
* that should be
|
|
74
|
+
* taon pfix proper input my-username/my-repo#344
|
|
75
|
+
*/
|
|
76
|
+
currentOrigin?: string;
|
|
77
|
+
skipChildren?: boolean;
|
|
78
|
+
noExit?: boolean;
|
|
53
79
|
}
|
package/browser/lib/utils.d.ts
CHANGED
|
@@ -58,4 +58,33 @@ export declare namespace UtilsTypescript {
|
|
|
58
58
|
type: "class" | "function" | "const" | "let" | "var" | "enum" | "type" | "interface" | "default" | "module" | "namespace";
|
|
59
59
|
name: string;
|
|
60
60
|
}[];
|
|
61
|
+
}
|
|
62
|
+
export declare namespace UtilsHttp {
|
|
63
|
+
const startHttpServer: (cwd: string, port: number) => Promise<any>;
|
|
64
|
+
}
|
|
65
|
+
export declare namespace UtilsMd {
|
|
66
|
+
/**
|
|
67
|
+
* extract assets pathes from .md file
|
|
68
|
+
*/
|
|
69
|
+
const getAssets: (mdfileContent: string) => string[];
|
|
70
|
+
/**
|
|
71
|
+
* Extract links to other Markdown files from a given Markdown content.
|
|
72
|
+
* @param mdfileContent
|
|
73
|
+
*/
|
|
74
|
+
const getLinksToOtherMdFiles: (mdfileContent: string) => string[];
|
|
75
|
+
/**
|
|
76
|
+
* Move asset paths to a higher directory level by adding "../" before each path.
|
|
77
|
+
*
|
|
78
|
+
* @param mdfileContent - The content of the .md file.
|
|
79
|
+
* @param level - The number of levels to go up (default is 1).
|
|
80
|
+
* @returns The modified content with updated asset paths.
|
|
81
|
+
*/
|
|
82
|
+
const moveAssetsPathesToLevel: (mdfileContent: string, level?: number) => string;
|
|
83
|
+
}
|
|
84
|
+
export declare namespace UtilsQuickFixes {
|
|
85
|
+
/**
|
|
86
|
+
*
|
|
87
|
+
* @param node_modules/sql.js/dist/sql-wasm.js
|
|
88
|
+
*/
|
|
89
|
+
function replaceSQLliteFaultyCode(contentofSQLWasmJS: string): string;
|
|
61
90
|
}
|
|
@@ -10,7 +10,7 @@ export class BaseDb {
|
|
|
10
10
|
}
|
|
11
11
|
/* */
|
|
12
12
|
/* */
|
|
13
|
-
get
|
|
13
|
+
get isUsingDB() {
|
|
14
14
|
/* */
|
|
15
15
|
/* */
|
|
16
16
|
return (void 0);
|
|
@@ -27,4 +27,4 @@ export class BaseDb {
|
|
|
27
27
|
}
|
|
28
28
|
;
|
|
29
29
|
({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-db.ts
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvYmFzZS9iYXNlLWRiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUNMLEtBQUs7QUFJTCxNQUFNLE9BQU8sTUFBTTtJQUVqQixZQUNVLEdBQXdCLEVBQ3hCLE1BQWMsRUFDZCxTQUFhO1FBRmIsUUFBRyxHQUFILEdBQUcsQ0FBcUI7UUFDeEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGNBQVMsR0FBVCxTQUFTLENBQUk7SUFHdkIsQ0FBQztJQUNILEtBQUs7SUFDTCxLQUFLO0lBR0gsSUFBVyxTQUFTO1FBQ3RCLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELElBQUksa0JBQWtCO1FBQ3hCLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7Q0F1QkY7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDREQUE0RCIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmltcG9ydCB7IEhlbHBlcnMsIGNyb3NzUGxhdGZvcm1QYXRoIH0gZnJvbSBcInRucC1jb3JlL2Jyb3dzZXJcIjtcblxuaW1wb3J0IHR5cGUgeyBCYXNlUHJvamVjdFJlc29sdmVyIH0gZnJvbSBcIi4vYmFzZS1wcm9qZWN0LXJlc29sdmVyXCI7XG5cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuXG5cbmV4cG9ydCBjbGFzcyBCYXNlRGI8REIgZXh0ZW5kcyBvYmplY3Q+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGluczogQmFzZVByb2plY3RSZXNvbHZlcixcbiAgICBwcml2YXRlIGRiTmFtZTogc3RyaW5nLFxuICAgIHByaXZhdGUgZGVmYXVsdERiOiBEQixcbiAgKSB7XG5cbiAgfVxuLyogKi9cbi8qICovXG4gIFxuXG4gIHB1YmxpYyBnZXQgaXNVc2luZ0RCKCk6IGJvb2xlYW4ge1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cbiAgZ2V0IHByb2plY3RzRGJMb2NhdGlvbigpIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgXG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL2Jhc2UtZGIudHMiXX0=
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { BaseCompilerForProject } from './base-compiler-for-project';
|
|
2
2
|
import { ChangeOfFile } from 'incremental-compiler/browser';
|
|
3
|
-
import { _ } from 'tnp-core/browser';
|
|
3
|
+
import { _, Utils } from 'tnp-core/browser';
|
|
4
4
|
export class BaseDebounceCompilerForProject extends BaseCompilerForProject {
|
|
5
5
|
constructor() {
|
|
6
6
|
super(...arguments);
|
|
7
|
+
/**
|
|
8
|
+
* current files that are in project
|
|
9
|
+
*/
|
|
10
|
+
this.exitedFilesAbsPathes = [];
|
|
7
11
|
this.lastAsyncFilesChanges = [];
|
|
8
12
|
this.debounceAction = _.debounce(() => {
|
|
9
13
|
const changeOfFiles = this.lastAsyncFilesChanges;
|
|
@@ -12,13 +16,14 @@ export class BaseDebounceCompilerForProject extends BaseCompilerForProject {
|
|
|
12
16
|
changeOfFiles,
|
|
13
17
|
asyncEvent: true,
|
|
14
18
|
});
|
|
15
|
-
});
|
|
19
|
+
}, 1000);
|
|
16
20
|
}
|
|
17
21
|
/**
|
|
18
22
|
* @deprecated use action() instead
|
|
19
23
|
*/
|
|
20
24
|
async syncAction(absFilesPathes, initalParams) {
|
|
21
|
-
this.initalParams = initalParams;
|
|
25
|
+
this.initalParams = initalParams || {};
|
|
26
|
+
this.exitedFilesAbsPathes = absFilesPathes;
|
|
22
27
|
return await this.action({
|
|
23
28
|
changeOfFiles: absFilesPathes.map(fileAbsolutePath => new ChangeOfFile(fileAbsolutePath, 'change')),
|
|
24
29
|
asyncEvent: false,
|
|
@@ -29,9 +34,19 @@ export class BaseDebounceCompilerForProject extends BaseCompilerForProject {
|
|
|
29
34
|
*/
|
|
30
35
|
async asyncAction(asyncEvents, initalParams) {
|
|
31
36
|
this.lastAsyncFilesChanges.push(asyncEvents);
|
|
37
|
+
if (asyncEvents.eventName === 'unlink') {
|
|
38
|
+
this.exitedFilesAbsPathes = this.exitedFilesAbsPathes.filter(f => f !== asyncEvents.fileAbsolutePath);
|
|
39
|
+
}
|
|
40
|
+
else if (asyncEvents.eventName === 'unlinkDir') {
|
|
41
|
+
this.exitedFilesAbsPathes = this.exitedFilesAbsPathes.filter(f => !f.startsWith(asyncEvents.fileAbsolutePath.replace(/\/$/, '') + '/'));
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
this.exitedFilesAbsPathes.push(asyncEvents.fileAbsolutePath);
|
|
45
|
+
this.exitedFilesAbsPathes = Utils.uniqArray(this.exitedFilesAbsPathes);
|
|
46
|
+
}
|
|
32
47
|
await this.debounceAction();
|
|
33
48
|
}
|
|
34
49
|
}
|
|
35
50
|
;
|
|
36
51
|
({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-debounce-compiler-for-project.ts
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kZWJvdW5jZS1jb21waWxlci1mb3ItcHJvamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3RucC1oZWxwZXJzL3Byb2plY3RzL3RucC1oZWxwZXJzL3NyYy9saWIvYmFzZS9iYXNlLWRlYm91bmNlLWNvbXBpbGVyLWZvci1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzVDLE1BQU0sT0FBZ0IsOEJBR3BCLFNBQVEsc0JBQWdEO0lBSDFEOztRQWFFOztXQUVHO1FBQ08seUJBQW9CLEdBQWEsRUFBRSxDQUFDO1FBbUJ0QywwQkFBcUIsR0FBbUIsRUFBRSxDQUFDO1FBQzNDLG1CQUFjLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDdkMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1lBQ2pELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQztnQkFDVixhQUFhO2dCQUNiLFVBQVUsRUFBRSxJQUFJO2FBQ2pCLENBQUMsQ0FBQztRQUNMLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQXlCWCxDQUFDO0lBbERDOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFVBQVUsQ0FDckIsY0FBd0IsRUFDeEIsWUFBNkI7UUFFN0IsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLElBQUssRUFBVSxDQUFDO1FBQ2hELElBQUksQ0FBQyxvQkFBb0IsR0FBRyxjQUFjLENBQUM7UUFDM0MsT0FBTyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDdkIsYUFBYSxFQUFFLGNBQWMsQ0FBQyxHQUFHLENBQy9CLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxJQUFJLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsQ0FDakU7WUFDRCxVQUFVLEVBQUUsS0FBSztTQUNsQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBWUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsV0FBVyxDQUN0QixXQUF5QixFQUN6QixZQUE4QjtRQUU5QixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzdDLElBQUksV0FBVyxDQUFDLFNBQVMsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FDMUQsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssV0FBVyxDQUFDLGdCQUFnQixDQUN4QyxDQUFDO1FBQ0osQ0FBQzthQUFNLElBQUksV0FBVyxDQUFDLFNBQVMsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUNqRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FDMUQsQ0FBQyxDQUFDLEVBQUUsQ0FDRixDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQ3ZFLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDN0QsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDekUsQ0FBQztRQUNELE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzlCLENBQUM7Q0FDRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsdUZBQXVGIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IEJhc2VQcm9qZWN0IH0gZnJvbSAnLi9iYXNlLXByb2plY3QnO1xuaW1wb3J0IHsgQmFzZUNvbXBpbGVyRm9yUHJvamVjdCB9IGZyb20gJy4vYmFzZS1jb21waWxlci1mb3ItcHJvamVjdCc7XG5pbXBvcnQgeyBDaGFuZ2VPZkZpbGUgfSBmcm9tICdpbmNyZW1lbnRhbC1jb21waWxlci9icm93c2VyJztcbmltcG9ydCB7IF8sIFV0aWxzIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAnLi4vaW5kZXgnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZURlYm91bmNlQ29tcGlsZXJGb3JQcm9qZWN0PFxuICBBRERJVElPTkFMX0RBVEEgPSBhbnksXG4gIFBST0pFQ1QgZXh0ZW5kcyBCYXNlUHJvamVjdCA9IEJhc2VQcm9qZWN0LFxuPiBleHRlbmRzIEJhc2VDb21waWxlckZvclByb2plY3Q8QURESVRJT05BTF9EQVRBLCBQUk9KRUNUPiB7XG4gIHByb3RlY3RlZCBpbml0YWxQYXJhbXM6IEFERElUSU9OQUxfREFUQTtcbiAgYWJzdHJhY3QgYWN0aW9uKHtcbiAgICBjaGFuZ2VPZkZpbGVzLFxuICAgIGFzeW5jRXZlbnQsXG4gIH06IHtcbiAgICBjaGFuZ2VPZkZpbGVzOiBDaGFuZ2VPZkZpbGVbXTtcbiAgICBhc3luY0V2ZW50OiBib29sZWFuO1xuICB9KTtcblxuICAvKipcbiAgICogY3VycmVudCBmaWxlcyB0aGF0IGFyZSBpbiBwcm9qZWN0XG4gICAqL1xuICBwcm90ZWN0ZWQgZXhpdGVkRmlsZXNBYnNQYXRoZXM6IHN0cmluZ1tdID0gW107XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSBhY3Rpb24oKSBpbnN0ZWFkXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc3luY0FjdGlvbihcbiAgICBhYnNGaWxlc1BhdGhlczogc3RyaW5nW10sXG4gICAgaW5pdGFsUGFyYW1zOiBBRERJVElPTkFMX0RBVEEsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMuaW5pdGFsUGFyYW1zID0gaW5pdGFsUGFyYW1zIHx8ICh7fSBhcyBhbnkpO1xuICAgIHRoaXMuZXhpdGVkRmlsZXNBYnNQYXRoZXMgPSBhYnNGaWxlc1BhdGhlcztcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5hY3Rpb24oe1xuICAgICAgY2hhbmdlT2ZGaWxlczogYWJzRmlsZXNQYXRoZXMubWFwKFxuICAgICAgICBmaWxlQWJzb2x1dGVQYXRoID0+IG5ldyBDaGFuZ2VPZkZpbGUoZmlsZUFic29sdXRlUGF0aCwgJ2NoYW5nZScpLFxuICAgICAgKSxcbiAgICAgIGFzeW5jRXZlbnQ6IGZhbHNlLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBsYXN0QXN5bmNGaWxlc0NoYW5nZXM6IENoYW5nZU9mRmlsZVtdID0gW107XG4gIHByaXZhdGUgZGVib3VuY2VBY3Rpb24gPSBfLmRlYm91bmNlKCgpID0+IHtcbiAgICBjb25zdCBjaGFuZ2VPZkZpbGVzID0gdGhpcy5sYXN0QXN5bmNGaWxlc0NoYW5nZXM7XG4gICAgdGhpcy5sYXN0QXN5bmNGaWxlc0NoYW5nZXMgPSBbXTtcbiAgICB0aGlzLmFjdGlvbih7XG4gICAgICBjaGFuZ2VPZkZpbGVzLFxuICAgICAgYXN5bmNFdmVudDogdHJ1ZSxcbiAgICB9KTtcbiAgfSwgMTAwMCk7XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSBhY3Rpb24oKSBpbnN0ZWFkXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgYXN5bmNBY3Rpb24oXG4gICAgYXN5bmNFdmVudHM6IENoYW5nZU9mRmlsZSxcbiAgICBpbml0YWxQYXJhbXM/OiBBRERJVElPTkFMX0RBVEEsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMubGFzdEFzeW5jRmlsZXNDaGFuZ2VzLnB1c2goYXN5bmNFdmVudHMpO1xuICAgIGlmIChhc3luY0V2ZW50cy5ldmVudE5hbWUgPT09ICd1bmxpbmsnKSB7XG4gICAgICB0aGlzLmV4aXRlZEZpbGVzQWJzUGF0aGVzID0gdGhpcy5leGl0ZWRGaWxlc0Fic1BhdGhlcy5maWx0ZXIoXG4gICAgICAgIGYgPT4gZiAhPT0gYXN5bmNFdmVudHMuZmlsZUFic29sdXRlUGF0aCxcbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChhc3luY0V2ZW50cy5ldmVudE5hbWUgPT09ICd1bmxpbmtEaXInKSB7XG4gICAgICB0aGlzLmV4aXRlZEZpbGVzQWJzUGF0aGVzID0gdGhpcy5leGl0ZWRGaWxlc0Fic1BhdGhlcy5maWx0ZXIoXG4gICAgICAgIGYgPT5cbiAgICAgICAgICAhZi5zdGFydHNXaXRoKGFzeW5jRXZlbnRzLmZpbGVBYnNvbHV0ZVBhdGgucmVwbGFjZSgvXFwvJC8sICcnKSArICcvJyksXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmV4aXRlZEZpbGVzQWJzUGF0aGVzLnB1c2goYXN5bmNFdmVudHMuZmlsZUFic29sdXRlUGF0aCk7XG4gICAgICB0aGlzLmV4aXRlZEZpbGVzQWJzUGF0aGVzID0gVXRpbHMudW5pcUFycmF5KHRoaXMuZXhpdGVkRmlsZXNBYnNQYXRoZXMpO1xuICAgIH1cbiAgICBhd2FpdCB0aGlzLmRlYm91bmNlQWN0aW9uKCk7XG4gIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL2Jhc2UtZGVib3VuY2UtY29tcGlsZXItZm9yLXByb2plY3QudHMiXX0=
|