isomorphic-region-loader 19.0.0 → 19.0.2
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 +3 -3
- package/browser/package.json +13 -0
- package/client/package.json +13 -0
- package/lib/build-info._auto-generated_.d.ts +1 -0
- package/lib/build-info._auto-generated_.js +4 -1
- package/lib/build-info._auto-generated_.js.map +1 -1
- package/lib/index._auto-generated_.js +2 -2
- package/lib/index._auto-generated_.js.map +1 -1
- package/package.json +2 -2
- package/src.d.ts +3 -3
- package/tmp-environment.json +5 -4
- package/websql/package.json +13 -0
- package/browser/esm2022/isomorphic-region-loader.mjs +0 -5
- package/browser/esm2022/lib/index.mjs +0 -17
- package/browser/esm2022/lib/models.mjs +0 -13
- package/browser/esm2022/lib/region-remover.mjs +0 -112
- package/browser/esm2022/lib/region.mjs +0 -151
- package/browser/esm2022/public-api.mjs +0 -2
- package/client/esm2022/isomorphic-region-loader.mjs +0 -5
- package/client/esm2022/lib/index.mjs +0 -17
- package/client/esm2022/lib/models.mjs +0 -13
- package/client/esm2022/lib/region-remover.mjs +0 -112
- package/client/esm2022/lib/region.mjs +0 -151
- package/client/esm2022/public-api.mjs +0 -2
- package/websql/esm2022/isomorphic-region-loader.mjs +0 -5
- package/websql/esm2022/lib/index.mjs +0 -17
- package/websql/esm2022/lib/models.mjs +0 -13
- package/websql/esm2022/lib/region-remover.mjs +0 -112
- package/websql/esm2022/lib/region.mjs +0 -151
- package/websql/esm2022/public-api.mjs +0 -2
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
import { _ } from 'tnp-core/websql';
|
|
2
|
-
import { labelReplacementCode } from './models';
|
|
3
|
-
import { TAGS } from 'tnp-config/websql';
|
|
4
|
-
export class Region {
|
|
5
|
-
constructor(context, replacementss, parent, startIndex, endIndex, lineStart, lineEnd, contentLines = []) {
|
|
6
|
-
this.context = context;
|
|
7
|
-
this.replacementss = replacementss;
|
|
8
|
-
this.parent = parent;
|
|
9
|
-
this.startIndex = startIndex;
|
|
10
|
-
this.endIndex = endIndex;
|
|
11
|
-
this.lineStart = lineStart;
|
|
12
|
-
this.lineEnd = lineEnd;
|
|
13
|
-
this.contentLines = contentLines;
|
|
14
|
-
this.regionsOrStrings = [];
|
|
15
|
-
}
|
|
16
|
-
get hasEnd() {
|
|
17
|
-
return this.endIndex !== void 0;
|
|
18
|
-
}
|
|
19
|
-
get lastRegionWithoutEnd() {
|
|
20
|
-
const last = _.last(this.regionsOrStrings);
|
|
21
|
-
if (last instanceof Region && !last.hasEnd) {
|
|
22
|
-
return last;
|
|
23
|
-
}
|
|
24
|
-
return void 0;
|
|
25
|
-
}
|
|
26
|
-
get regions() {
|
|
27
|
-
return this.regionsOrStrings.filter(f => f instanceof Region);
|
|
28
|
-
}
|
|
29
|
-
setEnd(endIndex, lineEnd) {
|
|
30
|
-
this.endIndex = endIndex;
|
|
31
|
-
this.lineEnd = lineEnd;
|
|
32
|
-
}
|
|
33
|
-
get isRoot() {
|
|
34
|
-
return !this.parent;
|
|
35
|
-
}
|
|
36
|
-
addNormalLine(l, lineIndex) {
|
|
37
|
-
this.contentLines[lineIndex] = void 0;
|
|
38
|
-
this.regionsOrStrings.push(l);
|
|
39
|
-
}
|
|
40
|
-
addNormalLineToLastRegion(l, lineIndex) {
|
|
41
|
-
this.contentLines[lineIndex] = void 0;
|
|
42
|
-
this.lastRegionWithoutEnd.contentLines.push(l);
|
|
43
|
-
}
|
|
44
|
-
addRegion(context, parent, startIndex, lineStart) {
|
|
45
|
-
this.contentLines[startIndex] = void 0;
|
|
46
|
-
const newReg = new Region(context, this.replacementss, parent, startIndex, void 0, lineStart, void 0, [lineStart]);
|
|
47
|
-
this.regionsOrStrings.push(newReg);
|
|
48
|
-
}
|
|
49
|
-
endLastRegion(endIndex, lineEnd) {
|
|
50
|
-
this.contentLines[endIndex] = void 0;
|
|
51
|
-
const regionWithoutEnd = this.regionsOrStrings.find(r => r instanceof Region && !r.hasEnd);
|
|
52
|
-
regionWithoutEnd.contentLines.push(lineEnd);
|
|
53
|
-
regionWithoutEnd.setEnd(endIndex, lineEnd);
|
|
54
|
-
}
|
|
55
|
-
containsTitle(s) {
|
|
56
|
-
const res = (this.titleString.search(s) !== -1);
|
|
57
|
-
return res;
|
|
58
|
-
}
|
|
59
|
-
get titleString() {
|
|
60
|
-
let line = this.lineStart;
|
|
61
|
-
const regionWord = '#region';
|
|
62
|
-
const indexOfRegion = line.search(regionWord);
|
|
63
|
-
line = line.replace(line.slice(0, indexOfRegion + regionWord.length), '');
|
|
64
|
-
return line
|
|
65
|
-
.replace('-->', '')
|
|
66
|
-
.replace('<!--', ''); // TODO not necessery ?
|
|
67
|
-
}
|
|
68
|
-
toString() {
|
|
69
|
-
if (this.tmpOutput !== void 0) {
|
|
70
|
-
return this.tmpOutput;
|
|
71
|
-
}
|
|
72
|
-
let previous = '';
|
|
73
|
-
this.tmpOutput = this.regionsOrStrings
|
|
74
|
-
.map(regionOrString => {
|
|
75
|
-
if (regionOrString instanceof Region) {
|
|
76
|
-
const replacements = this.replacementss;
|
|
77
|
-
for (let index = 0; index < replacements.length; index++) {
|
|
78
|
-
const rep = replacements[index];
|
|
79
|
-
const isArr = _.isArray(replacements[index]);
|
|
80
|
-
const regionTag = (isArr ? _.first(rep) : rep);
|
|
81
|
-
let out = (isArr ? rep[1] : '');
|
|
82
|
-
const verticalLength = regionOrString.toString().split('\n').length - 1;
|
|
83
|
-
if (regionOrString.containsTitle(regionTag)) {
|
|
84
|
-
if (regionTag.toLowerCase() === TAGS.WEBSQL.toLowerCase()) {
|
|
85
|
-
out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')} ${out}`;
|
|
86
|
-
}
|
|
87
|
-
if (regionTag.toLowerCase() === TAGS.BACKEND.toLowerCase()) {
|
|
88
|
-
out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')} ${out}`;
|
|
89
|
-
}
|
|
90
|
-
if (regionTag.toLowerCase() === TAGS.NOT_FOR_NPM.toLowerCase()) {
|
|
91
|
-
out = `${_.times(verticalLength).map(() => labelReplacementCode.notForNpmCode + '\n').join('')} ${out}`;
|
|
92
|
-
}
|
|
93
|
-
if (regionTag.toLowerCase() === TAGS.BROWSER.toLowerCase()) {
|
|
94
|
-
out = `${_.times(verticalLength).map(() => labelReplacementCode.browserCode + '\n').join('')} ${out}`;
|
|
95
|
-
}
|
|
96
|
-
if (regionTag.toLowerCase() === TAGS.WEBSQL_ONLY.toLowerCase()) {
|
|
97
|
-
out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')} ${out}`;
|
|
98
|
-
}
|
|
99
|
-
if (regionTag.toLowerCase() === TAGS.BACKEND_FUNC.toLowerCase()) {
|
|
100
|
-
let spacesPrevious = previous.search(/\S/);
|
|
101
|
-
spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);
|
|
102
|
-
out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')}`
|
|
103
|
-
+ `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;
|
|
104
|
-
}
|
|
105
|
-
if (regionTag.toLowerCase() === TAGS.WEBSQL_FUNC.toLowerCase()) {
|
|
106
|
-
let spacesPrevious = previous.search(/\S/);
|
|
107
|
-
spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);
|
|
108
|
-
out = `${_.times(verticalLength).map(() => labelReplacementCode.backendCode + '\n').join('')}`
|
|
109
|
-
+ `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;
|
|
110
|
-
}
|
|
111
|
-
if (regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()
|
|
112
|
-
||
|
|
113
|
-
regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()) {
|
|
114
|
-
const fn = out; // as ReturnType<typeof codeCuttFn>;
|
|
115
|
-
let expressionToExecute = regionOrString.titleString;
|
|
116
|
-
expressionToExecute = expressionToExecute.replace(regionTag, '');
|
|
117
|
-
const configForProject = this.project && this.project.env.config;
|
|
118
|
-
const cutCode = fn(expressionToExecute, configForProject, this.realtiveOrAbsFilePAth);
|
|
119
|
-
if (cutCode === null) {
|
|
120
|
-
continue;
|
|
121
|
-
}
|
|
122
|
-
if ((cutCode && (regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()))
|
|
123
|
-
||
|
|
124
|
-
(!cutCode && (regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()))) {
|
|
125
|
-
out = '';
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
continue;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
regionOrString.tmpOutput = out;
|
|
132
|
-
break;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
const res = regionOrString.toString();
|
|
137
|
-
previous = res;
|
|
138
|
-
return res;
|
|
139
|
-
}).join('\n');
|
|
140
|
-
return this.tmpOutput;
|
|
141
|
-
}
|
|
142
|
-
get project() {
|
|
143
|
-
return this.context.project;
|
|
144
|
-
}
|
|
145
|
-
get realtiveOrAbsFilePAth() {
|
|
146
|
-
return this.context.realtiveOrAbsFilePAth;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
;
|
|
150
|
-
({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region.ts
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL2lzb21vcnBoaWMtcmVnaW9uLWxvYWRlci9wcm9qZWN0cy9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvc3JjL2xpYi9yZWdpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFXLENBQUMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBa0Msb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFHaEYsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXpDLE1BQU0sT0FBTyxNQUFNO0lBQ2pCLFlBQ1UsT0FBc0IsRUFDdkIsYUFBNEIsRUFDNUIsTUFBYyxFQUNkLFVBQWtCLEVBQ2xCLFFBQWdCLEVBQ2hCLFNBQWlCLEVBQ2pCLE9BQWUsRUFDZixlQUF5QixFQUFFO1FBUDFCLFlBQU8sR0FBUCxPQUFPLENBQWU7UUFDdkIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDbEIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUNoQixjQUFTLEdBQVQsU0FBUyxDQUFRO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQWdCNUIscUJBQWdCLEdBQXdCLEVBQUUsQ0FBQztJQWQvQyxDQUFDO0lBRUwsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFXLG9CQUFvQjtRQUM3QixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzNDLElBQUksSUFBSSxZQUFZLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FB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QUFxQixDQUFDLENBQUM7NEJBRXRGLElBQUksT0FBTyxLQUFLLElBQUksRUFBRSxDQUFDO2dDQUNyQixTQUFTOzRCQUNYLENBQUM7NEJBQ0QsSUFDRSxDQUFDLE9BQU8sSUFBSSxDQUNWLFNBQVMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLENBQ2hFLENBQUM7O29DQUVGLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FDWCxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUNqRSxDQUFDLEVBQ0YsQ0FBQztnQ0FDRCxHQUFHLEdBQUcsRUFBRSxDQUFDOzRCQUNYLENBQUM7aUNBQU0sQ0FBQztnQ0FDTixTQUFTOzRCQUNYLENBQUM7d0JBQ0gsQ0FBQzt3QkFDRCxjQUFjLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQzt3QkFDL0IsTUFBTTtvQkFDUixDQUFDO2dCQUNILENBQUM7WUFFSCxDQUFDO1lBQ0QsTUFBTSxHQUFHLEdBQUcsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3RDLFFBQVEsR0FBRyxHQUFHLENBQUM7WUFDZixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQVksT0FBTztRQUNqQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFZLHFCQUFxQjtRQUMvQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUM7SUFDNUMsQ0FBQztDQUVGO0FBR0EsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxtRUFBbUUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IHsgSGVscGVycywgXyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG5pbXBvcnQgeyBSZXBsYWNlbWVudCwgUmVwbGFjZW1lbnRTdHJpbmcsIGxhYmVsUmVwbGFjZW1lbnRDb2RlIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG5pbXBvcnQgdHlwZSB7IFJlZ2lvblJlbW92ZXIgfSBmcm9tICcuL3JlZ2lvbi1yZW1vdmVyJztcbmltcG9ydCB7IFRBR1MgfSBmcm9tICd0bnAtY29uZmlnL3dlYnNxbCc7XG5cbmV4cG9ydCBjbGFzcyBSZWdpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbnRleHQ6IFJlZ2lvblJlbW92ZXIsXG4gICAgcHVibGljIHJlcGxhY2VtZW50c3M6IFJlcGxhY2VtZW50W10sXG4gICAgcHVibGljIHBhcmVudDogUmVnaW9uLFxuICAgIHB1YmxpYyBzdGFydEluZGV4OiBudW1iZXIsXG4gICAgcHVibGljIGVuZEluZGV4OiBudW1iZXIsXG4gICAgcHVibGljIGxpbmVTdGFydDogc3RyaW5nLFxuICAgIHB1YmxpYyBsaW5lRW5kOiBzdHJpbmcsXG4gICAgcHVibGljIGNvbnRlbnRMaW5lczogc3RyaW5nW10gPSBbXSxcblxuICApIHsgfVxuICBwcml2YXRlIHRtcE91dHB1dDogc3RyaW5nO1xuICBwdWJsaWMgZ2V0IGhhc0VuZCgpIHtcbiAgICByZXR1cm4gdGhpcy5lbmRJbmRleCAhPT0gdm9pZCAwO1xuICB9XG5cbiAgcHVibGljIGdldCBsYXN0UmVnaW9uV2l0aG91dEVuZCgpIHtcbiAgICBjb25zdCBsYXN0ID0gXy5sYXN0KHRoaXMucmVnaW9uc09yU3RyaW5ncyk7XG4gICAgaWYgKGxhc3QgaW5zdGFuY2VvZiBSZWdpb24gJiYgIWxhc3QuaGFzRW5kKSB7XG4gICAgICByZXR1cm4gbGFzdDtcbiAgICB9XG4gICAgcmV0dXJuIHZvaWQgMDtcbiAgfVxuXG4gIHByaXZhdGUgcmVnaW9uc09yU3RyaW5nczogKFJlZ2lvbiB8IHN0cmluZylbXSA9IFtdO1xuXG4gIGdldCByZWdpb25zKCkge1xuICAgIHJldHVybiB0aGlzLnJlZ2lvbnNPclN0cmluZ3MuZmlsdGVyKGYgPT4gZiBpbnN0YW5jZW9mIFJlZ2lvbik7XG4gIH1cblxuICBwcml2YXRlIHNldEVuZChlbmRJbmRleDogbnVtYmVyLCBsaW5lRW5kOiBzdHJpbmcpIHtcbiAgICB0aGlzLmVuZEluZGV4ID0gZW5kSW5kZXg7XG4gICAgdGhpcy5saW5lRW5kID0gbGluZUVuZDtcbiAgfVxuXG4gIGdldCBpc1Jvb3QoKSB7XG4gICAgcmV0dXJuICF0aGlzLnBhcmVudDtcbiAgfVxuXG4gIGFkZE5vcm1hbExpbmUobDogc3RyaW5nLCBsaW5lSW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuY29udGVudExpbmVzW2xpbmVJbmRleF0gPSB2b2lkIDA7XG4gICAgdGhpcy5yZWdpb25zT3JTdHJpbmdzLnB1c2gobCk7XG4gIH1cblxuICBhZGROb3JtYWxMaW5lVG9MYXN0UmVnaW9uKGw6IHN0cmluZywgbGluZUluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmNvbnRlbnRMaW5lc1tsaW5lSW5kZXhdID0gdm9pZCAwO1xuICAgIHRoaXMubGFzdFJlZ2lvbldpdGhvdXRFbmQuY29udGVudExpbmVzLnB1c2gobCk7XG4gIH1cblxuICBhZGRSZWdpb24oY29udGV4dDogUmVnaW9uUmVtb3ZlciwgcGFyZW50OiBSZWdpb24sIHN0YXJ0SW5kZXg6IG51bWJlciwgbGluZVN0YXJ0OiBzdHJpbmcpIHtcbiAgICB0aGlzLmNvbnRlbnRMaW5lc1tzdGFydEluZGV4XSA9IHZvaWQgMDtcbiAgICBjb25zdCBuZXdSZWcgPSBuZXcgUmVnaW9uKFxuICAgICAgY29udGV4dCxcbiAgICAgIHRoaXMucmVwbGFjZW1lbnRzcyxcbiAgICAgIHBhcmVudCxcbiAgICAgIHN0YXJ0SW5kZXgsIHZvaWQgMCxcbiAgICAgIGxpbmVTdGFydCwgdm9pZCAwLFxuICAgICAgW2xpbmVTdGFydF1cbiAgICApO1xuICAgIHRoaXMucmVnaW9uc09yU3RyaW5ncy5wdXNoKG5ld1JlZyk7XG4gIH1cblxuICBlbmRMYXN0UmVnaW9uKGVuZEluZGV4OiBudW1iZXIsIGxpbmVFbmQ6IHN0cmluZykge1xuICAgIHRoaXMuY29udGVudExpbmVzW2VuZEluZGV4XSA9IHZvaWQgMDtcbiAgICBjb25zdCByZWdpb25XaXRob3V0RW5kID0gdGhpcy5yZWdpb25zT3JTdHJpbmdzLmZpbmQociA9PiByIGluc3RhbmNlb2YgUmVnaW9uICYmICFyLmhhc0VuZCkgYXMgUmVnaW9uO1xuICAgIHJlZ2lvbldpdGhvdXRFbmQuY29udGVudExpbmVzLnB1c2gobGluZUVuZCk7XG4gICAgcmVnaW9uV2l0aG91dEVuZC5zZXRFbmQoZW5kSW5kZXgsIGxpbmVFbmQpO1xuICB9XG5cbiAgcHJpdmF0ZSBjb250YWluc1RpdGxlKHM6IFJlcGxhY2VtZW50U3RyaW5nKSB7XG4gICAgY29uc3QgcmVzID0gKHRoaXMudGl0bGVTdHJpbmcuc2VhcmNoKHMpICE9PSAtMSk7XG5cbiAgICByZXR1cm4gcmVzO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgdGl0bGVTdHJpbmcoKSB7XG4gICAgbGV0IGxpbmUgPSB0aGlzLmxpbmVTdGFydDtcbiAgICBjb25zdCByZWdpb25Xb3JkID0gJyNyZWdpb24nO1xuICAgIGNvbnN0IGluZGV4T2ZSZWdpb24gPSBsaW5lLnNlYXJjaChyZWdpb25Xb3JkKTtcbiAgICBsaW5lID0gbGluZS5yZXBsYWNlKFxuICAgICAgbGluZS5zbGljZSgwLCBpbmRleE9mUmVnaW9uICsgcmVnaW9uV29yZC5sZW5ndGgpLFxuICAgICAgJydcbiAgICApO1xuICAgIHJldHVybiBsaW5lXG4gICAgICAucmVwbGFjZSgnLS0+JywgJycpXG4gICAgICAucmVwbGFjZSgnPCEtLScsICcnKTsgLy8gVE9ETyBub3QgbmVjZXNzZXJ5ID9cbiAgfVxuXG4gIHB1YmxpYyB0b1N0cmluZygpIHtcbiAgICBpZiAodGhpcy50bXBPdXRwdXQgIT09IHZvaWQgMCkge1xuICAgICAgcmV0dXJuIHRoaXMudG1wT3V0cHV0O1xuICAgIH1cbiAgICBsZXQgcHJldmlvdXMgPSAnJztcbiAgICB0aGlzLnRtcE91dHB1dCA9IHRoaXMucmVnaW9uc09yU3RyaW5nc1xuICAgICAgLm1hcChyZWdpb25PclN0cmluZyA9PiB7XG4gICAgICAgIGlmIChyZWdpb25PclN0cmluZyBpbnN0YW5jZW9mIFJlZ2lvbikge1xuXG4gICAgICAgICAgY29uc3QgcmVwbGFjZW1lbnRzID0gdGhpcy5yZXBsYWNlbWVudHNzO1xuICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCByZXBsYWNlbWVudHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICBjb25zdCByZXAgPSByZXBsYWNlbWVudHNbaW5kZXhdO1xuICAgICAgICAgICAgY29uc3QgaXNBcnIgPSBfLmlzQXJyYXkocmVwbGFjZW1lbnRzW2luZGV4XSk7XG5cbiAgICAgICAgICAgIGNvbnN0IHJlZ2lvblRhZyA9IChpc0FyciA/IF8uZmlyc3QocmVwIGFzIHN0cmluZ1tdKSA6IHJlcCkgYXMgUmVwbGFjZW1lbnRTdHJpbmc7XG5cbiAgICAgICAgICAgIGxldCBvdXQgPSAoaXNBcnIgPyByZXBbMV0gOiAnJykgYXMgc3RyaW5nO1xuXG4gICAgICAgICAgICBjb25zdCB2ZXJ0aWNhbExlbmd0aCA9IHJlZ2lvbk9yU3RyaW5nLnRvU3RyaW5nKCkuc3BsaXQoJ1xcbicpLmxlbmd0aCAtIDE7XG5cbiAgICAgICAgICAgIGlmIChyZWdpb25PclN0cmluZy5jb250YWluc1RpdGxlKHJlZ2lvblRhZykpIHtcbiAgICAgICAgICAgICAgaWYgKHJlZ2lvblRhZy50b0xvd2VyQ2FzZSgpID09PSBUQUdTLldFQlNRTC50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IGxhYmVsUmVwbGFjZW1lbnRDb2RlLmJhY2tlbmRDb2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQkFDS0VORC50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IGxhYmVsUmVwbGFjZW1lbnRDb2RlLmJhY2tlbmRDb2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuTk9UX0ZPUl9OUE0udG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgICAgIG91dCA9IGAke18udGltZXModmVydGljYWxMZW5ndGgpLm1hcCgoKSA9PiBsYWJlbFJlcGxhY2VtZW50Q29kZS5ub3RGb3JOcG1Db2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQlJPV1NFUi50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IGxhYmVsUmVwbGFjZW1lbnRDb2RlLmJyb3dzZXJDb2RlICsgJ1xcbicpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAocmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuV0VCU1FMX09OTFkudG9Mb3dlckNhc2UoKSkge1xuICAgICAgICAgICAgICAgIG91dCA9IGAke18udGltZXModmVydGljYWxMZW5ndGgpLm1hcCgoKSA9PiBsYWJlbFJlcGxhY2VtZW50Q29kZS5iYWNrZW5kQ29kZSArICdcXG4nKS5qb2luKCcnKX0gICR7b3V0fWA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHJlZ2lvblRhZy50b0xvd2VyQ2FzZSgpID09PSBUQUdTLkJBQ0tFTkRfRlVOQy50b0xvd2VyQ2FzZSgpXG4gICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIGxldCBzcGFjZXNQcmV2aW91cyA9IHByZXZpb3VzLnNlYXJjaCgvXFxTLyk7XG4gICAgICAgICAgICAgICAgc3BhY2VzUHJldmlvdXMgPSAoc3BhY2VzUHJldmlvdXMgPCAwID8gMCA6IHNwYWNlc1ByZXZpb3VzKTtcbiAgICAgICAgICAgICAgICBvdXQgPSBgJHtfLnRpbWVzKHZlcnRpY2FsTGVuZ3RoKS5tYXAoKCkgPT4gbGFiZWxSZXBsYWNlbWVudENvZGUuYmFja2VuZENvZGUgKyAnXFxuJykuam9pbignJyl9YFxuICAgICAgICAgICAgICAgICAgKyBgJHtfLnRpbWVzKHNwYWNlc1ByZXZpb3VzKS5tYXAobiA9PiAnICcpLmpvaW4oJycpfSAgJHtvdXR9YDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgcmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuV0VCU1FMX0ZVTkMudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBsZXQgc3BhY2VzUHJldmlvdXMgPSBwcmV2aW91cy5zZWFyY2goL1xcUy8pO1xuICAgICAgICAgICAgICAgIHNwYWNlc1ByZXZpb3VzID0gKHNwYWNlc1ByZXZpb3VzIDwgMCA/IDAgOiBzcGFjZXNQcmV2aW91cyk7XG4gICAgICAgICAgICAgICAgb3V0ID0gYCR7Xy50aW1lcyh2ZXJ0aWNhbExlbmd0aCkubWFwKCgpID0+IGxhYmVsUmVwbGFjZW1lbnRDb2RlLmJhY2tlbmRDb2RlICsgJ1xcbicpLmpvaW4oJycpfWBcbiAgICAgICAgICAgICAgICAgICsgYCR7Xy50aW1lcyhzcGFjZXNQcmV2aW91cykubWFwKG4gPT4gJyAnKS5qb2luKCcnKX0gICR7b3V0fWA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHJlZ2lvblRhZy50b0xvd2VyQ2FzZSgpID09PSBUQUdTLkNVVF9DT0RFX0lGX1RSVUUudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICAgIHx8XG4gICAgICAgICAgICAgICAgcmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQ1VUX0NPREVfSUZfRkFMU0UudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmbiA9IG91dCBhcyBhbnk7IC8vIGFzIFJldHVyblR5cGU8dHlwZW9mIGNvZGVDdXR0Rm4+O1xuICAgICAgICAgICAgICAgIGxldCBleHByZXNzaW9uVG9FeGVjdXRlID0gcmVnaW9uT3JTdHJpbmcudGl0bGVTdHJpbmc7XG5cbiAgICAgICAgICAgICAgICBleHByZXNzaW9uVG9FeGVjdXRlID0gZXhwcmVzc2lvblRvRXhlY3V0ZS5yZXBsYWNlKHJlZ2lvblRhZywgJycpO1xuXG5cbiAgICAgICAgICAgICAgICBjb25zdCBjb25maWdGb3JQcm9qZWN0ID0gdGhpcy5wcm9qZWN0ICYmIHRoaXMucHJvamVjdC5lbnYuY29uZmlnO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgY3V0Q29kZSA9IGZuKGV4cHJlc3Npb25Ub0V4ZWN1dGUsIGNvbmZpZ0ZvclByb2plY3QsIHRoaXMucmVhbHRpdmVPckFic0ZpbGVQQXRoKTtcblxuICAgICAgICAgICAgICAgIGlmIChjdXRDb2RlID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgKGN1dENvZGUgJiYgKFxuICAgICAgICAgICAgICAgICAgICByZWdpb25UYWcudG9Mb3dlckNhc2UoKSA9PT0gVEFHUy5DVVRfQ09ERV9JRl9UUlVFLnRvTG93ZXJDYXNlKClcbiAgICAgICAgICAgICAgICAgICkpXG4gICAgICAgICAgICAgICAgICB8fFxuICAgICAgICAgICAgICAgICAgKCFjdXRDb2RlICYmIChcbiAgICAgICAgICAgICAgICAgICAgcmVnaW9uVGFnLnRvTG93ZXJDYXNlKCkgPT09IFRBR1MuQ1VUX0NPREVfSUZfRkFMU0UudG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgIG91dCA9ICcnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmVnaW9uT3JTdHJpbmcudG1wT3V0cHV0ID0gb3V0O1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXMgPSByZWdpb25PclN0cmluZy50b1N0cmluZygpO1xuICAgICAgICBwcmV2aW91cyA9IHJlcztcbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICAgIH0pLmpvaW4oJ1xcbicpO1xuICAgIHJldHVybiB0aGlzLnRtcE91dHB1dDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHByb2plY3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5wcm9qZWN0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgcmVhbHRpdmVPckFic0ZpbGVQQXRoKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQucmVhbHRpdmVPckFic0ZpbGVQQXRoO1xuICB9XG5cbn1cblxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9aXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyIGxpYi9yZWdpb24udHMiXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './lib';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC9pc29tb3JwaGljLXJlZ2lvbi1sb2FkZXIvcHJvamVjdHMvaXNvbW9ycGhpYy1yZWdpb24tbG9hZGVyL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsT0FBTyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWInO1xuIl19
|