tnp-helpers 16.5.15 → 16.5.18
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-feature-for-project.mjs +8 -0
- package/browser/esm2022/lib/base/base-project-resolver.mjs +204 -0
- package/browser/esm2022/lib/base/base-project.mjs +1007 -0
- package/browser/esm2022/lib/base/commit-data.mjs +145 -0
- package/browser/esm2022/lib/base/index.mjs +11 -0
- package/browser/esm2022/lib/base/translate.mjs +42 -0
- package/browser/esm2022/lib/helpers.mjs +6 -3
- package/browser/esm2022/lib/index.mjs +2 -3
- package/browser/esm2022/lib/models.mjs +1 -1
- package/browser/fesm2022/tnp-helpers.mjs +860 -84
- package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
- package/browser/lib/base/base-feature-for-project.d.ts +6 -0
- package/{client/lib → browser/lib/base}/base-project-resolver.d.ts +4 -7
- package/browser/lib/base/base-project.d.ts +287 -0
- package/browser/lib/base/commit-data.d.ts +31 -0
- package/browser/lib/base/index.d.ts +5 -0
- package/browser/lib/base/translate.d.ts +2 -0
- package/browser/lib/index.d.ts +2 -3
- package/browser/lib/models.d.ts +1 -1
- package/client/esm2022/lib/base/base-feature-for-project.mjs +8 -0
- package/client/esm2022/lib/base/base-project-resolver.mjs +204 -0
- package/client/esm2022/lib/base/base-project.mjs +1007 -0
- package/client/esm2022/lib/base/commit-data.mjs +145 -0
- package/client/esm2022/lib/base/index.mjs +11 -0
- package/client/esm2022/lib/base/translate.mjs +42 -0
- package/client/esm2022/lib/helpers.mjs +6 -3
- package/client/esm2022/lib/index.mjs +2 -3
- package/client/esm2022/lib/models.mjs +1 -1
- package/client/fesm2022/tnp-helpers.mjs +860 -84
- package/client/fesm2022/tnp-helpers.mjs.map +1 -1
- package/client/lib/base/base-feature-for-project.d.ts +6 -0
- package/{browser/lib → client/lib/base}/base-project-resolver.d.ts +4 -7
- package/client/lib/base/base-project.d.ts +287 -0
- package/client/lib/base/commit-data.d.ts +31 -0
- package/client/lib/base/index.d.ts +5 -0
- package/client/lib/base/translate.d.ts +2 -0
- package/client/lib/index.d.ts +2 -3
- package/client/lib/models.d.ts +1 -1
- package/client/package.json +37 -34
- package/lib/base/base-command-line.backend.d.ts +79 -0
- package/lib/base/base-command-line.backend.js +674 -0
- package/lib/base/base-command-line.backend.js.map +1 -0
- package/lib/base/base-feature-for-project.d.ts +5 -0
- package/lib/base/base-feature-for-project.js +11 -0
- package/lib/base/base-feature-for-project.js.map +1 -0
- package/lib/{base-project-resolver.d.ts → base/base-project-resolver.d.ts} +4 -7
- package/lib/{base-project-resolver.js → base/base-project-resolver.js} +33 -28
- package/lib/base/base-project-resolver.js.map +1 -0
- package/lib/base/base-project.d.ts +297 -0
- package/lib/base/base-project.js +1451 -0
- package/lib/base/base-project.js.map +1 -0
- package/lib/base/base-start-config.backend.d.ts +35 -0
- package/lib/base/base-start-config.backend.js +126 -0
- package/lib/base/base-start-config.backend.js.map +1 -0
- package/lib/base/command-line-feature.backend.d.ts +32 -0
- package/lib/base/command-line-feature.backend.js +89 -0
- package/lib/base/command-line-feature.backend.js.map +1 -0
- package/lib/base/commit-data.d.ts +30 -0
- package/lib/base/commit-data.js +200 -0
- package/lib/base/commit-data.js.map +1 -0
- package/lib/base/index.d.ts +7 -0
- package/lib/base/index.js +13 -0
- package/lib/base/index.js.map +1 -0
- package/lib/base/translate.d.ts +1 -0
- package/lib/base/translate.js +80 -0
- package/lib/base/translate.js.map +1 -0
- package/lib/for-backend/helpers-cli-tool.backend.d.ts +42 -22
- package/lib/for-backend/helpers-cli-tool.backend.js +129 -180
- package/lib/for-backend/helpers-cli-tool.backend.js.map +1 -1
- package/lib/for-backend/helpers-file-folders.backend.d.ts +2 -8
- package/lib/for-backend/helpers-file-folders.backend.js +4 -14
- package/lib/for-backend/helpers-file-folders.backend.js.map +1 -1
- package/lib/for-backend/helpers-git.backend.d.ts +48 -12
- package/lib/for-backend/helpers-git.backend.js +227 -142
- package/lib/for-backend/helpers-git.backend.js.map +1 -1
- package/lib/for-backend/helpers-process.backend.d.ts +5 -11
- package/lib/for-backend/helpers-process.backend.js +77 -39
- package/lib/for-backend/helpers-process.backend.js.map +1 -1
- package/lib/for-backend/helpers-vscode.backend.d.ts +3 -3
- package/lib/for-backend/helpers-vscode.backend.js.map +1 -1
- package/lib/for-browser/angular.helper.js +3 -3
- package/lib/helpers.d.ts +2 -3
- package/lib/helpers.js +5 -2
- package/lib/helpers.js.map +1 -1
- package/lib/index.d.ts +2 -3
- package/lib/index.js +1 -2
- package/lib/index.js.map +1 -1
- package/lib/models.d.ts +1 -1
- package/lib/old/base-component.js +3 -3
- package/lib/old/base-formly-component.js +3 -3
- package/lib/old/dual-component-ctrl.js +3 -3
- package/package.json +8 -5
- package/package.json_tnp.json5 +4 -1
- package/tmp-environment.json +41 -45
- package/websql/esm2022/lib/base/base-feature-for-project.mjs +8 -0
- package/websql/esm2022/lib/base/base-project-resolver.mjs +203 -0
- package/websql/esm2022/lib/base/base-project.mjs +994 -0
- package/websql/esm2022/lib/base/commit-data.mjs +145 -0
- package/websql/esm2022/lib/base/index.mjs +11 -0
- package/websql/esm2022/lib/base/translate.mjs +42 -0
- package/websql/esm2022/lib/helpers.mjs +6 -3
- package/websql/esm2022/lib/index.mjs +2 -3
- package/websql/esm2022/lib/models.mjs +1 -1
- package/websql/fesm2022/tnp-helpers.mjs +861 -85
- package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
- package/websql/lib/base/base-feature-for-project.d.ts +6 -0
- package/websql/lib/{base-project-resolver.d.ts → base/base-project-resolver.d.ts} +4 -7
- package/websql/lib/base/base-project.d.ts +287 -0
- package/websql/lib/base/commit-data.d.ts +31 -0
- package/websql/lib/base/index.d.ts +5 -0
- package/websql/lib/base/translate.d.ts +2 -0
- package/websql/lib/index.d.ts +2 -3
- package/websql/lib/models.d.ts +1 -1
- package/browser/esm2022/lib/base-project-resolver.mjs +0 -223
- package/browser/esm2022/lib/base-project.mjs +0 -374
- package/browser/lib/base-project.d.ts +0 -94
- package/client/esm2022/lib/base-project-resolver.mjs +0 -223
- package/client/esm2022/lib/base-project.mjs +0 -374
- package/client/lib/base-project.d.ts +0 -94
- package/lib/base-project-resolver.js.map +0 -1
- package/lib/base-project.d.ts +0 -103
- package/lib/base-project.js +0 -482
- package/lib/base-project.js.map +0 -1
- package/lib/git-project.d.ts +0 -57
- package/lib/git-project.js +0 -224
- package/lib/git-project.js.map +0 -1
- package/websql/esm2022/lib/base-project-resolver.mjs +0 -222
- package/websql/esm2022/lib/base-project.mjs +0 -361
- package/websql/lib/base-project.d.ts +0 -94
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { CoreModels } from 'tnp-core/browser';
|
|
3
|
+
import { CommitData, TypeOfCommit } from '../index';
|
|
4
|
+
import { BaseProjectResolver } from './base-project-resolver';
|
|
5
|
+
export type BaseProjectType = 'unknow' | 'unknow-npm-project';
|
|
6
|
+
export declare abstract class BaseProject<T extends BaseProject = any, TYPE = BaseProjectType> {
|
|
7
|
+
/**
|
|
8
|
+
* doesn't need to be real path -> can be link
|
|
9
|
+
*/
|
|
10
|
+
readonly location: string;
|
|
11
|
+
static ins: BaseProjectResolver<BaseProject<any, BaseProjectType>>;
|
|
12
|
+
static sortGroupOfProject<T extends BaseProject<any> = BaseProject<any>>(projects: T[], resoveDepsArray: (proj: T) => string[], projNameToCompare: (proj: T) => string): T[];
|
|
13
|
+
cache: any;
|
|
14
|
+
readonly type: TYPE | string;
|
|
15
|
+
protected readonly packageJSON: any;
|
|
16
|
+
/**
|
|
17
|
+
* resolve instance
|
|
18
|
+
*/
|
|
19
|
+
abstract readonly ins: BaseProjectResolver<T>;
|
|
20
|
+
/**
|
|
21
|
+
* Unique free port for project instance
|
|
22
|
+
* only available after executing *this.assignFreePort()*
|
|
23
|
+
*/
|
|
24
|
+
readonly port: string;
|
|
25
|
+
constructor(
|
|
26
|
+
/**
|
|
27
|
+
* doesn't need to be real path -> can be link
|
|
28
|
+
*/
|
|
29
|
+
location: string);
|
|
30
|
+
setType(type: TYPE): void;
|
|
31
|
+
typeIs(...types: TYPE[]): boolean;
|
|
32
|
+
typeIsNot(...types: TYPE[]): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* project folder basename
|
|
35
|
+
*/
|
|
36
|
+
get basename(): string;
|
|
37
|
+
/**
|
|
38
|
+
* name from package.json
|
|
39
|
+
*/
|
|
40
|
+
get name(): any;
|
|
41
|
+
/**
|
|
42
|
+
* version from package.json -> property version
|
|
43
|
+
*/
|
|
44
|
+
get version(): any;
|
|
45
|
+
/**
|
|
46
|
+
* Major Version from package.json
|
|
47
|
+
*/
|
|
48
|
+
get majorVersion(): number;
|
|
49
|
+
/**
|
|
50
|
+
* Minor Version from package.json
|
|
51
|
+
*/
|
|
52
|
+
get minorVersion(): number;
|
|
53
|
+
get versionPathAsNumber(): any;
|
|
54
|
+
/**
|
|
55
|
+
* npm dependencies from package.json
|
|
56
|
+
*/
|
|
57
|
+
get dependencies(): any;
|
|
58
|
+
/**
|
|
59
|
+
* peerDependencies dependencies
|
|
60
|
+
*/
|
|
61
|
+
get peerDependencies(): any;
|
|
62
|
+
/**
|
|
63
|
+
* devDependencies dependencies
|
|
64
|
+
*/
|
|
65
|
+
get devDependencies(): any;
|
|
66
|
+
/**
|
|
67
|
+
* resolutions dependencies
|
|
68
|
+
*/
|
|
69
|
+
get resolutions(): any;
|
|
70
|
+
/**
|
|
71
|
+
* object with all deps from package json
|
|
72
|
+
*/
|
|
73
|
+
get allDependencies(): {
|
|
74
|
+
[packageName: string]: string;
|
|
75
|
+
};
|
|
76
|
+
protected getFoldersForPossibleProjectChildren(): string[];
|
|
77
|
+
protected getAllChildren(): any;
|
|
78
|
+
/**
|
|
79
|
+
* alias to getAllChildren
|
|
80
|
+
*/
|
|
81
|
+
get children(): T[];
|
|
82
|
+
getChildBy(nameOrBasename: string, errors?: boolean): T;
|
|
83
|
+
get parent(): T;
|
|
84
|
+
get grandpa(): T;
|
|
85
|
+
get genericName(): any;
|
|
86
|
+
/**
|
|
87
|
+
* same has project.hasFile();
|
|
88
|
+
*/
|
|
89
|
+
pathExists(relativePath: string | string[]): boolean;
|
|
90
|
+
/**
|
|
91
|
+
* same as project.pathExists();
|
|
92
|
+
*/
|
|
93
|
+
hasFile(relativePath: string | string[]): boolean;
|
|
94
|
+
/**
|
|
95
|
+
* same as project.pathhasFileExists();
|
|
96
|
+
* but with path.resolve
|
|
97
|
+
*/
|
|
98
|
+
containsFile(fileRelativeToProjectPath: string): any;
|
|
99
|
+
/**
|
|
100
|
+
* absolute path:
|
|
101
|
+
* concated project location with relative path
|
|
102
|
+
*/
|
|
103
|
+
pathFor(relativePath: string | string[]): any;
|
|
104
|
+
writeJson(relativePath: string, json: object): any;
|
|
105
|
+
/**
|
|
106
|
+
* @deprecated us execute instead
|
|
107
|
+
* use output from or more preciese crafted api
|
|
108
|
+
*/
|
|
109
|
+
run(command: string, options?: Omit<CoreModels.RunOptions, 'cwd'>): any;
|
|
110
|
+
/**
|
|
111
|
+
* same as run but async
|
|
112
|
+
*/
|
|
113
|
+
execute(command: string, options?: CoreModels.ExecuteOptions & {
|
|
114
|
+
showCommand?: boolean;
|
|
115
|
+
}): Promise<any>;
|
|
116
|
+
/**
|
|
117
|
+
* try run but continue when it fails
|
|
118
|
+
* @param command
|
|
119
|
+
* @param options
|
|
120
|
+
* @returns
|
|
121
|
+
*/
|
|
122
|
+
tryRunSync(command: string): void;
|
|
123
|
+
outputFrom(command: string): any;
|
|
124
|
+
removeFile(fileRelativeToProjectPath: string): any;
|
|
125
|
+
remove(relativePath: string, exactPath?: boolean): void;
|
|
126
|
+
removeFolderByRelativePath(relativePathToFolder: string): void;
|
|
127
|
+
linkNodeModulesTo(proj: Partial<BaseProject>): any;
|
|
128
|
+
reinstallNodeModules(forcerRemoveNodeModules?: boolean): any;
|
|
129
|
+
assignFreePort(startFrom?: number, howManyFreePortsAfterThatPort?: number): Promise<number>;
|
|
130
|
+
removeItself(): void;
|
|
131
|
+
/**
|
|
132
|
+
* Purpose: not initializing all classes at the beginning
|
|
133
|
+
* Only for BaseFeatureForProject class
|
|
134
|
+
*/
|
|
135
|
+
defineProperty<PROJECT>(variableName: keyof PROJECT, classFn: Function, options?: {
|
|
136
|
+
customInstanceReturn?: () => object;
|
|
137
|
+
}): any;
|
|
138
|
+
/**
|
|
139
|
+
* fs.copy option filter function for copying only selected folders from project
|
|
140
|
+
*/
|
|
141
|
+
filterOnlyCopy(basePathFoldersOnlyToInclude: string[]): any;
|
|
142
|
+
/**
|
|
143
|
+
* fs.copy option filter function for copying only not selected folders from project
|
|
144
|
+
*/
|
|
145
|
+
filterDontCopy(basePathFoldersTosSkip: string[]): any;
|
|
146
|
+
getDefaultDevelopmentBranch(): string;
|
|
147
|
+
/**
|
|
148
|
+
* main/default hardcoded branches
|
|
149
|
+
*/
|
|
150
|
+
getMainBranches(): string[];
|
|
151
|
+
isUnsingActionCommit(): boolean;
|
|
152
|
+
resetProcess(overrideBranch?: string): Promise<void>;
|
|
153
|
+
pullProcess(): Promise<any>;
|
|
154
|
+
pushProcess(options?: {
|
|
155
|
+
force?: boolean;
|
|
156
|
+
typeofCommit?: TypeOfCommit;
|
|
157
|
+
origin?: string;
|
|
158
|
+
args?: string[];
|
|
159
|
+
exitCallBack?: () => void;
|
|
160
|
+
forcePushNoQuestion?: boolean;
|
|
161
|
+
commitMessageRequired?: boolean;
|
|
162
|
+
}): Promise<any>;
|
|
163
|
+
private _beforeAnyActionOnGitRoot;
|
|
164
|
+
protected _beforePushProcessAction(): Promise<any>;
|
|
165
|
+
protected _beforePullProcessAction(): Promise<any>;
|
|
166
|
+
protected _getCommitMessage(typeofCommit: TypeOfCommit, args: string[], commitMessageRequired?: boolean): Promise<CommitData>;
|
|
167
|
+
linkTo(destPackageLocation: string): void;
|
|
168
|
+
writeFile(relativePath: string, content: string): void;
|
|
169
|
+
runCommandGetString(this: BaseProject, command: string): any;
|
|
170
|
+
get git(): {
|
|
171
|
+
revertFileChanges(fileReletivePath: string): any;
|
|
172
|
+
clone(url: string, destinationFolderName?: string): any;
|
|
173
|
+
restoreLastVersion(localFilePath: string): any;
|
|
174
|
+
stageAllFiles(): any;
|
|
175
|
+
stash(optinos?: {
|
|
176
|
+
onlyStaged?: boolean;
|
|
177
|
+
}): any;
|
|
178
|
+
stashApply(): any;
|
|
179
|
+
fetch(): any;
|
|
180
|
+
resetFiles(...relativePathes: string[]): any;
|
|
181
|
+
readonly isGitRepo: any;
|
|
182
|
+
readonly isGitRoot: any;
|
|
183
|
+
readonly originURL: any;
|
|
184
|
+
commit(commitMessage?: string): any;
|
|
185
|
+
/**
|
|
186
|
+
* alias to stage all and commit
|
|
187
|
+
*/
|
|
188
|
+
addAndCommit(commitMessage: string): any;
|
|
189
|
+
stageAllAndCommit(commitMessage: string): any;
|
|
190
|
+
pushCurrentBranch(options?: {
|
|
191
|
+
force?: boolean;
|
|
192
|
+
origin?: string;
|
|
193
|
+
askToRetry?: boolean;
|
|
194
|
+
forcePushNoQuestion?: boolean;
|
|
195
|
+
}): Promise<any>;
|
|
196
|
+
readonly allOrigins: any;
|
|
197
|
+
readonly thereAreSomeUncommitedChange: any;
|
|
198
|
+
thereAreSomeUncommitedChangeExcept(filesList?: string[]): any;
|
|
199
|
+
meltActionCommits(soft?: boolean): void;
|
|
200
|
+
pullCurrentBranch(options?: {
|
|
201
|
+
askToRetry?: boolean;
|
|
202
|
+
defaultHardResetCommits?: number;
|
|
203
|
+
}): Promise<any>;
|
|
204
|
+
readonly currentBranchName: any;
|
|
205
|
+
getBranchesNamesBy(pattern: string | RegExp): any;
|
|
206
|
+
resetSoftHEAD(HEAD?: number): any;
|
|
207
|
+
resetHard(options?: {
|
|
208
|
+
HEAD?: number;
|
|
209
|
+
}): any;
|
|
210
|
+
countComits(): any;
|
|
211
|
+
hasAnyCommits(): any;
|
|
212
|
+
readonly isInMergeProcess: any;
|
|
213
|
+
lastCommitDate(): any;
|
|
214
|
+
lastCommitHash(): any;
|
|
215
|
+
lastCommitMessage(): any;
|
|
216
|
+
penultimageCommitHash(): any;
|
|
217
|
+
checkTagExists(tag: string): any;
|
|
218
|
+
checkout(branchName: string, options?: {
|
|
219
|
+
createBranchIfNotExists?: boolean;
|
|
220
|
+
fetchBeforeCheckout?: boolean;
|
|
221
|
+
switchBranchWhenExists?: boolean;
|
|
222
|
+
}): any;
|
|
223
|
+
checkoutFromTo(checkoutFromBranch: string, branch: string, origin?: string): any;
|
|
224
|
+
/**
|
|
225
|
+
*
|
|
226
|
+
* @param majorVersion example: v1, v2 etc.
|
|
227
|
+
* @returns tag name
|
|
228
|
+
*/
|
|
229
|
+
lastTagNameForMajorVersion(majorVersion: any): any;
|
|
230
|
+
lastTagHash(): any;
|
|
231
|
+
readonly remoteOriginUrl: any;
|
|
232
|
+
readonly lastTagVersionName: any;
|
|
233
|
+
readonly stagedFiles: string[];
|
|
234
|
+
/**
|
|
235
|
+
* TODO does this make any sense
|
|
236
|
+
*/
|
|
237
|
+
renameOrigin(newNameOrUlr: string): any;
|
|
238
|
+
};
|
|
239
|
+
toString: () => string;
|
|
240
|
+
protected checkIfLogginInToNpm(): any;
|
|
241
|
+
get parentsNames(): any;
|
|
242
|
+
private findParentsNames;
|
|
243
|
+
/**
|
|
244
|
+
* init project files structure and depedencies
|
|
245
|
+
*/
|
|
246
|
+
init(initOptions?: any): Promise<void>;
|
|
247
|
+
/**
|
|
248
|
+
* globally link npm as package
|
|
249
|
+
*/
|
|
250
|
+
link(): Promise<void>;
|
|
251
|
+
/**
|
|
252
|
+
* init project files structure without depedencies
|
|
253
|
+
*/
|
|
254
|
+
struct(initOptions?: any): Promise<void>;
|
|
255
|
+
/**
|
|
256
|
+
* init and build() project
|
|
257
|
+
*/
|
|
258
|
+
build(buildOptions?: any): Promise<void>;
|
|
259
|
+
/**
|
|
260
|
+
* lint porject
|
|
261
|
+
*/
|
|
262
|
+
lint(lintOptions?: any): Promise<void>;
|
|
263
|
+
/**
|
|
264
|
+
* get info about porject
|
|
265
|
+
*/
|
|
266
|
+
info(): Promise<void>;
|
|
267
|
+
/**
|
|
268
|
+
* By default no translation of commit
|
|
269
|
+
*/
|
|
270
|
+
transalteGitCommitFromArgs(): {
|
|
271
|
+
from: string;
|
|
272
|
+
to: string;
|
|
273
|
+
};
|
|
274
|
+
/**
|
|
275
|
+
* By defult true.. when commit branches will not function.
|
|
276
|
+
* (false is better for simple projects)
|
|
277
|
+
*/
|
|
278
|
+
useGitBranchesWhenCommitingAndPushing(): boolean;
|
|
279
|
+
/**
|
|
280
|
+
* usefull when pushing in project with childrens as git repos
|
|
281
|
+
*/
|
|
282
|
+
automaticallyAddAllChnagesWhenPushingToGit(): boolean;
|
|
283
|
+
/**
|
|
284
|
+
* usefull when pushing in project with childrens as git repos
|
|
285
|
+
*/
|
|
286
|
+
useGitBranchesAsMetadataForCommits(): boolean;
|
|
287
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
export type CommonCommitMsgBranch = 'refactor' | 'chore' | 'style' | 'docs' | 'test' | 'ci' | 'build';
|
|
3
|
+
export type TypeOfCommit = 'feature' | 'bugfix' | 'performance' | CommonCommitMsgBranch;
|
|
4
|
+
export type TypeOfMsgPrefix = 'feat' | 'fix' | 'perf' | CommonCommitMsgBranch;
|
|
5
|
+
export declare class CommitData {
|
|
6
|
+
private _message;
|
|
7
|
+
/**
|
|
8
|
+
*
|
|
9
|
+
* @returns jiras (from oldest to newset)
|
|
10
|
+
*/
|
|
11
|
+
private static extractAndOrderJiraNumbers;
|
|
12
|
+
private static cleanHttpFromCommitMessage;
|
|
13
|
+
static getFromArgs(args: string[], typeOfCommit: TypeOfCommit): Promise<any>;
|
|
14
|
+
static getFromBranch(currentBranchName: string): Promise<any>;
|
|
15
|
+
static from(options: Pick<CommitData, 'message' | 'jiraNumbers' | 'typeOfCommit'>): CommitData;
|
|
16
|
+
typeOfCommit: TypeOfCommit;
|
|
17
|
+
/**
|
|
18
|
+
* pure message what was done (without jira or prefixes)
|
|
19
|
+
* => is included in this.commitMessage
|
|
20
|
+
*/
|
|
21
|
+
get message(): string;
|
|
22
|
+
set message(message: string);
|
|
23
|
+
/**
|
|
24
|
+
* ex. JIRA-2132 or MYJIRAREFIX-234234
|
|
25
|
+
*/
|
|
26
|
+
jiraNumbers: string[];
|
|
27
|
+
get branchPrefix(): TypeOfMsgPrefix;
|
|
28
|
+
get commitMessage(): string;
|
|
29
|
+
get branchName(): any;
|
|
30
|
+
get isActionCommit(): any;
|
|
31
|
+
}
|
package/browser/lib/index.d.ts
CHANGED
|
@@ -6,6 +6,5 @@ import { HelpersFiredev as Base } from './helpers';
|
|
|
6
6
|
* Firedev helpers
|
|
7
7
|
*/
|
|
8
8
|
export declare const Helpers: Base & import("tnp-core/browser").CoreHelpers;
|
|
9
|
-
export * from './
|
|
10
|
-
export * from './base
|
|
11
|
-
export * from './models';
|
|
9
|
+
export * from './models';
|
|
10
|
+
export * from './base';
|
package/browser/lib/models.d.ts
CHANGED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export class BaseFeatureForProject {
|
|
2
|
+
constructor(project) {
|
|
3
|
+
this.project = project;
|
|
4
|
+
}
|
|
5
|
+
}
|
|
6
|
+
;
|
|
7
|
+
({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-feature-for-project.ts
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1mZWF0dXJlLWZvci1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9iYXNlL2Jhc2UtZmVhdHVyZS1mb3ItcHJvamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLE9BQWdCLHFCQUFxQjtJQUV6QyxZQUFzQixPQUFnQjtRQUFoQixZQUFPLEdBQVAsT0FBTyxDQUFTO0lBRXRDLENBQUM7Q0FFRjtBQUdBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsNkVBQTZFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IEJhc2VQcm9qZWN0IH0gZnJvbSAnLic7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRmVhdHVyZUZvclByb2plY3Q8UFJPSkVDVCA9IEJhc2VQcm9qZWN0PiB7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHByb2plY3Q6IFBST0pFQ1QpIHtcblxuICB9XG5cbn1cblxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2Jhc2UvYmFzZS1mZWF0dXJlLWZvci1wcm9qZWN0LnRzIl19
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
export class BaseProjectResolver {
|
|
2
|
+
constructor(classFn) {
|
|
3
|
+
this.classFn = classFn;
|
|
4
|
+
this.NPM_PROJECT_KEY = 'npm';
|
|
5
|
+
this.projects = [];
|
|
6
|
+
/**
|
|
7
|
+
* To speed up checking folder I am keeping pathes for alterdy checked folder
|
|
8
|
+
* This may break things that are creating new projects
|
|
9
|
+
*/
|
|
10
|
+
this.emptyLocations = [];
|
|
11
|
+
}
|
|
12
|
+
get allowedTypes() {
|
|
13
|
+
/* */
|
|
14
|
+
/* */
|
|
15
|
+
/* */
|
|
16
|
+
return (void 0);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* project from process.cwd()
|
|
20
|
+
*/
|
|
21
|
+
get Current() {
|
|
22
|
+
/* */
|
|
23
|
+
/* */
|
|
24
|
+
/* */
|
|
25
|
+
/* */
|
|
26
|
+
/* */
|
|
27
|
+
/* */
|
|
28
|
+
/* */
|
|
29
|
+
/* */
|
|
30
|
+
/* */
|
|
31
|
+
/* */
|
|
32
|
+
/* */
|
|
33
|
+
return (void 0);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* override this
|
|
37
|
+
*/
|
|
38
|
+
typeFrom(location, recrusiveCall = false) {
|
|
39
|
+
/* */
|
|
40
|
+
/* */
|
|
41
|
+
/* */
|
|
42
|
+
/* */
|
|
43
|
+
/* */
|
|
44
|
+
/* */
|
|
45
|
+
/* */
|
|
46
|
+
/* */
|
|
47
|
+
/* */
|
|
48
|
+
return (void 0);
|
|
49
|
+
}
|
|
50
|
+
From(locationOfProject, options) {
|
|
51
|
+
/* */
|
|
52
|
+
/* */
|
|
53
|
+
/* */
|
|
54
|
+
/* */
|
|
55
|
+
/* */
|
|
56
|
+
/* */
|
|
57
|
+
/* */
|
|
58
|
+
/* */
|
|
59
|
+
/* */
|
|
60
|
+
/* */
|
|
61
|
+
/* */
|
|
62
|
+
/* */
|
|
63
|
+
/* */
|
|
64
|
+
/* */
|
|
65
|
+
/* */
|
|
66
|
+
/* */
|
|
67
|
+
/* */
|
|
68
|
+
/* */
|
|
69
|
+
/* */
|
|
70
|
+
/* */
|
|
71
|
+
/* */
|
|
72
|
+
/* */
|
|
73
|
+
/* */
|
|
74
|
+
/* */
|
|
75
|
+
/* */
|
|
76
|
+
/* */
|
|
77
|
+
/* */
|
|
78
|
+
/* */
|
|
79
|
+
/* */
|
|
80
|
+
/* */
|
|
81
|
+
/* */
|
|
82
|
+
/* */
|
|
83
|
+
/* */
|
|
84
|
+
/* */
|
|
85
|
+
/* */
|
|
86
|
+
/* */
|
|
87
|
+
/* */
|
|
88
|
+
/* */
|
|
89
|
+
/* */
|
|
90
|
+
/* */
|
|
91
|
+
/* */
|
|
92
|
+
/* */
|
|
93
|
+
/* */
|
|
94
|
+
/* */
|
|
95
|
+
/* */
|
|
96
|
+
/* */
|
|
97
|
+
/* */
|
|
98
|
+
return (void 0);
|
|
99
|
+
}
|
|
100
|
+
nearestTo(absoluteLocation, options) {
|
|
101
|
+
/* */
|
|
102
|
+
/* */
|
|
103
|
+
/* */
|
|
104
|
+
/* */
|
|
105
|
+
/* */
|
|
106
|
+
/* */
|
|
107
|
+
/* */
|
|
108
|
+
/* */
|
|
109
|
+
/* */
|
|
110
|
+
/* */
|
|
111
|
+
/* */
|
|
112
|
+
/* */
|
|
113
|
+
/* */
|
|
114
|
+
/* */
|
|
115
|
+
/* */
|
|
116
|
+
/* */
|
|
117
|
+
/* */
|
|
118
|
+
/* */
|
|
119
|
+
/* */
|
|
120
|
+
/* */
|
|
121
|
+
/* */
|
|
122
|
+
/* */
|
|
123
|
+
/* */
|
|
124
|
+
/* */
|
|
125
|
+
/* */
|
|
126
|
+
/* */
|
|
127
|
+
/* */
|
|
128
|
+
/* */
|
|
129
|
+
/* */
|
|
130
|
+
/* */
|
|
131
|
+
/* */
|
|
132
|
+
/* */
|
|
133
|
+
/* */
|
|
134
|
+
/* */
|
|
135
|
+
/* */
|
|
136
|
+
/* */
|
|
137
|
+
/* */
|
|
138
|
+
/* */
|
|
139
|
+
/* */
|
|
140
|
+
/* */
|
|
141
|
+
/* */
|
|
142
|
+
/* */
|
|
143
|
+
/* */
|
|
144
|
+
/* */
|
|
145
|
+
/* */
|
|
146
|
+
/* */
|
|
147
|
+
/* */
|
|
148
|
+
/* */
|
|
149
|
+
/* */
|
|
150
|
+
/* */
|
|
151
|
+
/* */
|
|
152
|
+
/* */
|
|
153
|
+
/* */
|
|
154
|
+
/* */
|
|
155
|
+
/* */
|
|
156
|
+
/* */
|
|
157
|
+
/* */
|
|
158
|
+
/* */
|
|
159
|
+
return (void 0);
|
|
160
|
+
}
|
|
161
|
+
unload(project) {
|
|
162
|
+
this.projects = this.projects.filter(f => f !== project);
|
|
163
|
+
}
|
|
164
|
+
remove(project) {
|
|
165
|
+
/* */
|
|
166
|
+
/* */
|
|
167
|
+
/* */
|
|
168
|
+
/* */
|
|
169
|
+
}
|
|
170
|
+
add(project) {
|
|
171
|
+
/* */
|
|
172
|
+
/* */
|
|
173
|
+
}
|
|
174
|
+
allProjectFrom(absoluteLocation, stopOnCwd = '/') {
|
|
175
|
+
/* */
|
|
176
|
+
/* */
|
|
177
|
+
/* */
|
|
178
|
+
/* */
|
|
179
|
+
/* */
|
|
180
|
+
/* */
|
|
181
|
+
/* */
|
|
182
|
+
/* */
|
|
183
|
+
/* */
|
|
184
|
+
/* */
|
|
185
|
+
/* */
|
|
186
|
+
/* */
|
|
187
|
+
/* */
|
|
188
|
+
/* */
|
|
189
|
+
/* */
|
|
190
|
+
/* */
|
|
191
|
+
/* */
|
|
192
|
+
/* */
|
|
193
|
+
/* */
|
|
194
|
+
/* */
|
|
195
|
+
/* */
|
|
196
|
+
/* */
|
|
197
|
+
/* */
|
|
198
|
+
/* */
|
|
199
|
+
return (void 0);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
;
|
|
203
|
+
({}); // @--end-of-file-for-module=tnp-helpers lib/base/base-project-resolver.ts
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1wcm9qZWN0LXJlc29sdmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9iYXNlL2Jhc2UtcHJvamVjdC1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQkEsTUFBTSxPQUFPLG1CQUFtQjtJQVk5QixZQUFzQixPQUFZO1FBQVosWUFBTyxHQUFQLE9BQU8sQ0FBSztRQVZmLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ2pDLGFBQVEsR0FBUSxFQUFFLENBQUM7UUFDN0I7OztXQUdHO1FBQ08sbUJBQWMsR0FBYSxFQUFFLENBQUM7SUFJRixDQUFDO0lBSXZDLElBQUksWUFBWTtRQUNsQixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBSUQ7O09BRUc7SUFDSCxJQUFJLE9BQU87UUFDYixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFJRDs7T0FFRztJQUNILFFBQVEsQ0FBQyxRQUFnQixFQUFFLGFBQWEsR0FBRyxLQUFLO1FBQ2xELEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFJRCxJQUFJLENBQUMsaUJBQW9DLEVBQUUsT0FBYTtRQUkxRCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFJRCxTQUFTLENBQ1AsZ0JBQXdCLEVBQ3hCLE9BQWlHO1FBQ3JHLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBSUQsTUFBTSxDQUFDLE9BQVU7UUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFJRCxNQUFNLENBQUMsT0FBVTtRQUNuQixLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO0lBRUgsQ0FBQztJQUlELEdBQUcsQ0FBQyxPQUFVO1FBQ2hCLEtBQUs7UUFDTCxLQUFLO0lBRUgsQ0FBQztJQUtELGNBQWMsQ0FBQyxnQkFBd0IsRUFBRSxZQUFvQixHQUFHO1FBQ2xFLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7Q0FHRjtBQUdBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsMEVBQTBFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0IHsgLyogKi8gLyogKi8gICAgfSBmcm9tICd0bnAtY29yZS9icm93c2VyJzsvKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuXG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuaW1wb3J0IHsgSGVscGVycyB9IGZyb20gJy4uL2luZGV4JztcbmltcG9ydCB7IHBhdGgsIGNyb3NzUGxhdGZvcm1QYXRoIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgeyBjb25maWcgfSBmcm9tICd0bnAtY29uZmlnL2Jyb3dzZXInO1xuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL2Jyb3dzZXInO1xuaW1wb3J0IHR5cGUgeyBCYXNlUHJvamVjdCB9IGZyb20gJy4vYmFzZS1wcm9qZWN0JztcblxuXG5leHBvcnQgY2xhc3MgQmFzZVByb2plY3RSZXNvbHZlcjxUIGV4dGVuZHMgUGFydGlhbDxCYXNlUHJvamVjdD4gPSBhbnk+IHtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgTlBNX1BST0pFQ1RfS0VZID0gJ25wbSc7XG4gIHByb3RlY3RlZCBwcm9qZWN0czogVFtdID0gW107XG4gIC8qKlxuICAgKiBUbyBzcGVlZCB1cCBjaGVja2luZyBmb2xkZXIgSSBhbSBrZWVwaW5nIHBhdGhlcyBmb3IgYWx0ZXJkeSBjaGVja2VkIGZvbGRlclxuICAgKiBUaGlzIG1heSBicmVhayB0aGluZ3MgdGhhdCBhcmUgY3JlYXRpbmcgbmV3IHByb2plY3RzXG4gICAqL1xuICBwcm90ZWN0ZWQgZW1wdHlMb2NhdGlvbnM6IHN0cmluZ1tdID0gW107XG5cblxuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBjbGFzc0ZuOiBhbnkpIHsgfVxuXG5cblxuICBnZXQgYWxsb3dlZFR5cGVzKCk6IHN0cmluZ1tdIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIHByb2plY3QgZnJvbSBwcm9jZXNzLmN3ZCgpXG4gICAqL1xuICBnZXQgQ3VycmVudCgpOiBUIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICAvKipcbiAgICogb3ZlcnJpZGUgdGhpc1xuICAgKi9cbiAgdHlwZUZyb20obG9jYXRpb246IHN0cmluZywgcmVjcnVzaXZlQ2FsbCA9IGZhbHNlKTogc3RyaW5nIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuXG5cbiAgRnJvbShsb2NhdGlvbk9mUHJvamVjdDogc3RyaW5nIHwgc3RyaW5nW10sIG9wdGlvbnM/OiBhbnkpOiBUIHtcblxuXG5cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cblxuXG4gIG5lYXJlc3RUbyhcbiAgICBhYnNvbHV0ZUxvY2F0aW9uOiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IHsgdHlwZT86IChzdHJpbmcgfCBzdHJpbmdbXSk7IGZpbmRHaXRSb290PzogYm9vbGVhbjsgb25seU91dFNpZGVOb2RlTW9kdWxlcz86IGJvb2xlYW4gfSk6IFQge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cblxuICB1bmxvYWQocHJvamVjdDogVCkge1xuICAgIHRoaXMucHJvamVjdHMgPSB0aGlzLnByb2plY3RzLmZpbHRlcihmID0+IGYgIT09IHByb2plY3QpO1xuICB9XG5cblxuXG4gIHJlbW92ZShwcm9qZWN0OiBUKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICBcbiAgfVxuXG5cblxuICBhZGQocHJvamVjdDogVCkge1xuLyogKi9cbi8qICovXG4gIFxuICB9XG5cblxuXG5cbiAgYWxsUHJvamVjdEZyb20oYWJzb2x1dGVMb2NhdGlvbjogc3RyaW5nLCBzdG9wT25Dd2Q6IHN0cmluZyA9ICcvJykge1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG5cbn1cblxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2Jhc2UvYmFzZS1wcm9qZWN0LXJlc29sdmVyLnRzIl19
|