isomorphic-region-loader 16.5.3 → 16.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/esm2022/lib/index.mjs +10 -16
  3. package/browser/esm2022/lib/region-remover.mjs +112 -0
  4. package/browser/esm2022/lib/region.mjs +151 -0
  5. package/browser/fesm2022/isomorphic-region-loader.mjs +268 -13
  6. package/browser/fesm2022/isomorphic-region-loader.mjs.map +1 -1
  7. package/browser/lib/index.d.ts +3 -1
  8. package/browser/lib/region-remover.d.ts +16 -0
  9. package/browser/lib/region.d.ts +30 -0
  10. package/client/esm2022/lib/index.mjs +10 -16
  11. package/client/esm2022/lib/region-remover.mjs +112 -0
  12. package/client/esm2022/lib/region.mjs +151 -0
  13. package/client/fesm2022/isomorphic-region-loader.mjs +268 -13
  14. package/client/fesm2022/isomorphic-region-loader.mjs.map +1 -1
  15. package/client/lib/index.d.ts +3 -1
  16. package/client/lib/region-remover.d.ts +16 -0
  17. package/client/lib/region.d.ts +30 -0
  18. package/client/package.json +32 -32
  19. package/lib/index.d.ts +2 -2
  20. package/lib/index.js +4 -10
  21. package/lib/index.js.map +1 -1
  22. package/lib/{region-remover.backend.js → region-remover.js} +3 -3
  23. package/lib/region-remover.js.map +1 -0
  24. package/lib/{region.backend.d.ts → region.d.ts} +1 -1
  25. package/lib/{region.backend.js → region.js} +1 -1
  26. package/lib/region.js.map +1 -0
  27. package/package.json +3 -3
  28. package/tmp-environment.json +36 -36
  29. package/websql/esm2022/lib/index.mjs +10 -16
  30. package/websql/esm2022/lib/region-remover.mjs +112 -0
  31. package/websql/esm2022/lib/region.mjs +151 -0
  32. package/websql/fesm2022/isomorphic-region-loader.mjs +268 -13
  33. package/websql/fesm2022/isomorphic-region-loader.mjs.map +1 -1
  34. package/websql/lib/index.d.ts +3 -1
  35. package/websql/lib/region-remover.d.ts +16 -0
  36. package/websql/lib/region.d.ts +30 -0
  37. package/lib/region-remover.backend.js.map +0 -1
  38. package/lib/region.backend.js.map +0 -1
  39. /package/lib/{region-remover.backend.d.ts → region-remover.d.ts} +0 -0
@@ -1,16 +1,271 @@
1
- /* */
2
- /* */
1
+ import { _, path } from 'tnp-core/websql';
2
+ import { Models } from 'tnp-models/websql';
3
+ import { TAGS, REGEX_REGION } from 'tnp-config/websql';
4
+
5
+ class Region {
6
+ constructor(context, replacementss, parent, startIndex, endIndex, lineStart, lineEnd, contentLines = []) {
7
+ this.context = context;
8
+ this.replacementss = replacementss;
9
+ this.parent = parent;
10
+ this.startIndex = startIndex;
11
+ this.endIndex = endIndex;
12
+ this.lineStart = lineStart;
13
+ this.lineEnd = lineEnd;
14
+ this.contentLines = contentLines;
15
+ this.regionsOrStrings = [];
16
+ }
17
+ get hasEnd() {
18
+ return this.endIndex !== void 0;
19
+ }
20
+ get lastRegionWithoutEnd() {
21
+ const last = _.last(this.regionsOrStrings);
22
+ if (last instanceof Region && !last.hasEnd) {
23
+ return last;
24
+ }
25
+ return void 0;
26
+ }
27
+ get regions() {
28
+ return this.regionsOrStrings.filter(f => f instanceof Region);
29
+ }
30
+ setEnd(endIndex, lineEnd) {
31
+ this.endIndex = endIndex;
32
+ this.lineEnd = lineEnd;
33
+ }
34
+ get isRoot() {
35
+ return !this.parent;
36
+ }
37
+ addNormalLine(l, lineIndex) {
38
+ this.contentLines[lineIndex] = void 0;
39
+ this.regionsOrStrings.push(l);
40
+ }
41
+ addNormalLineToLastRegion(l, lineIndex) {
42
+ this.contentLines[lineIndex] = void 0;
43
+ this.lastRegionWithoutEnd.contentLines.push(l);
44
+ }
45
+ addRegion(context, parent, startIndex, lineStart) {
46
+ this.contentLines[startIndex] = void 0;
47
+ const newReg = new Region(context, this.replacementss, parent, startIndex, void 0, lineStart, void 0, [lineStart]);
48
+ this.regionsOrStrings.push(newReg);
49
+ }
50
+ endLastRegion(endIndex, lineEnd) {
51
+ this.contentLines[endIndex] = void 0;
52
+ const regionWithoutEnd = this.regionsOrStrings.find(r => r instanceof Region && !r.hasEnd);
53
+ regionWithoutEnd.contentLines.push(lineEnd);
54
+ regionWithoutEnd.setEnd(endIndex, lineEnd);
55
+ }
56
+ containsTitle(s) {
57
+ const res = (this.titleString.search(s) !== -1);
58
+ return res;
59
+ }
60
+ get titleString() {
61
+ let line = this.lineStart;
62
+ const regionWord = '#region';
63
+ const indexOfRegion = line.search(regionWord);
64
+ line = line.replace(line.slice(0, indexOfRegion + regionWord.length), '');
65
+ return line
66
+ .replace('-->', '')
67
+ .replace('<!--', ''); // TODO not necessery ?
68
+ }
69
+ toString() {
70
+ if (this.tmpOutput !== void 0) {
71
+ return this.tmpOutput;
72
+ }
73
+ let previous = '';
74
+ this.tmpOutput = this.regionsOrStrings
75
+ .map(regionOrString => {
76
+ if (regionOrString instanceof Region) {
77
+ const replacements = this.replacementss;
78
+ for (let index = 0; index < replacements.length; index++) {
79
+ const rep = replacements[index];
80
+ const isArr = _.isArray(replacements[index]);
81
+ const regionTag = (isArr ? _.first(rep) : rep);
82
+ let out = (isArr ? rep[1] : '');
83
+ const verticalLength = regionOrString.toString().split('\n').length - 1;
84
+ if (regionOrString.containsTitle(regionTag)) {
85
+ if (regionTag.toLowerCase() === TAGS.WEBSQL.toLowerCase()) {
86
+ out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')} ${out}`;
87
+ }
88
+ if (regionTag.toLowerCase() === TAGS.BACKEND.toLowerCase()) {
89
+ out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')} ${out}`;
90
+ }
91
+ if (regionTag.toLowerCase() === TAGS.NOT_FOR_NPM.toLowerCase()) {
92
+ out = `${_.times(verticalLength).map(() => Models.label.notForNpmCode + '\n').join('')} ${out}`;
93
+ }
94
+ if (regionTag.toLowerCase() === TAGS.BROWSER.toLowerCase()) {
95
+ out = `${_.times(verticalLength).map(() => Models.label.browserCode + '\n').join('')} ${out}`;
96
+ }
97
+ if (regionTag.toLowerCase() === TAGS.WEBSQL_ONLY.toLowerCase()) {
98
+ out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')} ${out}`;
99
+ }
100
+ if (regionTag.toLowerCase() === TAGS.BACKEND_FUNC.toLowerCase()) {
101
+ let spacesPrevious = previous.search(/\S/);
102
+ spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);
103
+ out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')}`
104
+ + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;
105
+ }
106
+ if (regionTag.toLowerCase() === TAGS.WEBSQL_FUNC.toLowerCase()) {
107
+ let spacesPrevious = previous.search(/\S/);
108
+ spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);
109
+ out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\n').join('')}`
110
+ + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;
111
+ }
112
+ if (regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()
113
+ ||
114
+ regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()) {
115
+ const fn = out; // as ReturnType<typeof codeCuttFn>;
116
+ let expressionToExecute = regionOrString.titleString;
117
+ expressionToExecute = expressionToExecute.replace(regionTag, '');
118
+ const configForProject = this.project && this.project.env.config;
119
+ const cutCode = fn(expressionToExecute, configForProject, this.realtiveOrAbsFilePAth);
120
+ if (cutCode === null) {
121
+ continue;
122
+ }
123
+ if ((cutCode && (regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()))
124
+ ||
125
+ (!cutCode && (regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()))) {
126
+ out = '';
127
+ }
128
+ else {
129
+ continue;
130
+ }
131
+ }
132
+ regionOrString.tmpOutput = out;
133
+ break;
134
+ }
135
+ }
136
+ }
137
+ const res = regionOrString.toString();
138
+ previous = res;
139
+ return res;
140
+ }).join('\n');
141
+ return this.tmpOutput;
142
+ }
143
+ get project() {
144
+ return this.context.project;
145
+ }
146
+ get realtiveOrAbsFilePAth() {
147
+ return this.context.realtiveOrAbsFilePAth;
148
+ }
149
+ }
150
+ ;
151
+ ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region.ts
152
+
153
+ class RegionRemover {
154
+ static from(realtiveOrAbsFilePAth, content, replacementss, // Models.dev.Replacement[],
155
+ project) {
156
+ let fileExtension = path.extname(realtiveOrAbsFilePAth);
157
+ if (!replacementss) {
158
+ replacementss = [
159
+ [TAGS.BACKEND_FUNC, `return (void 0);`],
160
+ TAGS.BACKEND,
161
+ ];
162
+ }
163
+ return new RegionRemover(realtiveOrAbsFilePAth, fileExtension, content, replacementss, project);
164
+ }
165
+ matchStartRegion(l) {
166
+ const res = !_.isUndefined(this.START_REGION.find(r => l.match(r)));
167
+ return res;
168
+ }
169
+ matchEndRegion(l) {
170
+ const res = !_.isUndefined(this.END_REGION.find(r => l.match(r)));
171
+ return res;
172
+ }
173
+ constructor(realtiveOrAbsFilePAth, fileExtension, content, replacementss, // Models.dev.Replacement[],
174
+ project) {
175
+ this.realtiveOrAbsFilePAth = realtiveOrAbsFilePAth;
176
+ this.content = content;
177
+ this.project = project;
178
+ this.START_REGION = [];
179
+ this.END_REGION = [];
180
+ if ((REGEX_REGION.TS_JS_SCSS_SASS.EXT).includes(fileExtension)) {
181
+ this.START_REGION.push(REGEX_REGION.TS_JS_SCSS_SASS.START);
182
+ this.END_REGION.push(REGEX_REGION.TS_JS_SCSS_SASS.END);
183
+ }
184
+ if ((REGEX_REGION.HTML.EXT).includes(fileExtension)) {
185
+ this.START_REGION.push(REGEX_REGION.HTML.START);
186
+ this.END_REGION.push(REGEX_REGION.HTML.END);
187
+ }
188
+ if ((REGEX_REGION.CSS.EXT).includes(fileExtension)) {
189
+ this.START_REGION.push(REGEX_REGION.CSS.START);
190
+ this.END_REGION.push(REGEX_REGION.CSS.END);
191
+ }
192
+ const lines = this.content.split('\n');
193
+ this.root = new Region(this, replacementss, void 0, 0, (lines.length - 1), _.first(lines), _.last(lines), lines);
194
+ this.tree(this.root);
195
+ }
196
+ tree(node) {
197
+ const contentLines = node.contentLines;
198
+ let stack = 0;
199
+ for (let i = 0; i < contentLines.length; i++) {
200
+ const l = contentLines[i];
201
+ if (!node.isRoot) {
202
+ if (i === 0) {
203
+ node.addNormalLine(l, 0);
204
+ continue;
205
+ }
206
+ if (i === (node.contentLines.length - 1)) {
207
+ node.addNormalLine(l, i);
208
+ continue;
209
+ }
210
+ }
211
+ if (node.lastRegionWithoutEnd) {
212
+ if (this.matchStartRegion(l)) {
213
+ node.addNormalLineToLastRegion(l, i);
214
+ stack++;
215
+ }
216
+ else if (this.matchEndRegion(l)) {
217
+ if (stack === 0) {
218
+ node.endLastRegion(i, l);
219
+ }
220
+ else if (stack > 0) {
221
+ node.addNormalLineToLastRegion(l, i);
222
+ stack--;
223
+ }
224
+ }
225
+ else {
226
+ if (i === (node.contentLines.length - (node.isRoot ? 1 : 2))) {
227
+ stack = 0;
228
+ node.endLastRegion(i, l);
229
+ }
230
+ else {
231
+ node.addNormalLineToLastRegion(l, i);
232
+ }
233
+ }
234
+ }
235
+ else {
236
+ if (this.matchStartRegion(l)) {
237
+ node.addRegion(this, node, i, l);
238
+ }
239
+ else if (this.matchEndRegion(l)) {
240
+ node.addNormalLine(l, i);
241
+ }
242
+ else {
243
+ node.addNormalLine(l, i);
244
+ }
245
+ }
246
+ }
247
+ const children = node.regions;
248
+ if (children.length > 0) {
249
+ for (let index = 0; index < children.length; index++) {
250
+ const child = children[index];
251
+ this.tree(child);
252
+ }
253
+ }
254
+ }
255
+ get output() {
256
+ return this.root.toString();
257
+ }
258
+ }
259
+ ;
260
+ ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region-remover.ts
261
+
3
262
  function StripBrowserCode(content) {
4
- /* */
5
- /* */
6
- /* */
7
- /* */
8
- /* */
9
- /* */
10
- /* */
11
- /* */
12
- /* */
13
- /* */
263
+ // @ts-ignore
264
+ content = RegionRemover.from(this.resourcePath, content, ['@browser']).output + '\n';
265
+ if (this.cacheable) {
266
+ this.cacheable(true);
267
+ }
268
+ return content;
14
269
  }
15
270
  ;
16
271
  ({}); // @--end-of-file-for-module=isomorphic-region-loader lib/index.ts
@@ -19,5 +274,5 @@ function StripBrowserCode(content) {
19
274
  * Generated bundle index. Do not edit.
20
275
  */
21
276
 
22
- export { StripBrowserCode as StripBlockLoader };
277
+ export { Region, RegionRemover, StripBrowserCode as StripBlockLoader };
23
278
  //# sourceMappingURL=isomorphic-region-loader.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"isomorphic-region-loader.mjs","sources":["../../../tmp-libs-for-bundle-websql/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/index.ts","../../../tmp-libs-for-bundle-websql/isomorphic-region-loader/projects/isomorphic-region-loader/src/isomorphic-region-loader.ts"],"sourcesContent":["\n\n/* */\n/* */\n \n\nfunction StripBrowserCode(content) {\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n}\n\nexport { StripBrowserCode as StripBlockLoader };\n/* */\n/* */\n/* */\n \nexport default StripBrowserCode;\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"AAEA;AACA;AAGA,SAAS,gBAAgB,CAAC,OAAO,EAAA;;;;;;;;;;;AAYjC,CAAC;AASA,CAAC;AAAA,CAAC,EAAE,EAAE;;AC3BP;;AAEG;;;;"}
1
+ {"version":3,"file":"isomorphic-region-loader.mjs","sources":["../../../tmp-libs-for-bundle-websql/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/region.ts","../../../tmp-libs-for-bundle-websql/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/region-remover.ts","../../../tmp-libs-for-bundle-websql/isomorphic-region-loader/projects/isomorphic-region-loader/src/lib/index.ts","../../../tmp-libs-for-bundle-websql/isomorphic-region-loader/projects/isomorphic-region-loader/src/isomorphic-region-loader.ts"],"sourcesContent":["\n\nimport { Helpers, _ } from 'tnp-core/websql';\nimport { Models } from 'tnp-models/websql';\n\nimport type { RegionRemover } from './region-remover';\nimport { TAGS } from 'tnp-config/websql';\n\nexport class Region {\n constructor(\n private context: RegionRemover,\n public replacementss: Models.dev.Replacement[],\n public parent: Region,\n public startIndex: number,\n public endIndex: number,\n public lineStart: string,\n public lineEnd: string,\n public contentLines: string[] = [],\n\n ) { }\n private tmpOutput: string;\n public get hasEnd() {\n return this.endIndex !== void 0;\n }\n\n public get lastRegionWithoutEnd() {\n const last = _.last(this.regionsOrStrings);\n if (last instanceof Region && !last.hasEnd) {\n return last;\n }\n return void 0;\n }\n\n private regionsOrStrings: (Region | string)[] = [];\n\n get regions() {\n return this.regionsOrStrings.filter(f => f instanceof Region);\n }\n\n private setEnd(endIndex: number, lineEnd: string) {\n this.endIndex = endIndex;\n this.lineEnd = lineEnd;\n }\n\n get isRoot() {\n return !this.parent;\n }\n\n addNormalLine(l: string, lineIndex: number) {\n this.contentLines[lineIndex] = void 0;\n this.regionsOrStrings.push(l);\n }\n\n addNormalLineToLastRegion(l: string, lineIndex: number) {\n this.contentLines[lineIndex] = void 0;\n this.lastRegionWithoutEnd.contentLines.push(l);\n }\n\n addRegion(context: RegionRemover, parent: Region, startIndex: number, lineStart: string) {\n this.contentLines[startIndex] = void 0;\n const newReg = new Region(\n context,\n this.replacementss,\n parent,\n startIndex, void 0,\n lineStart, void 0,\n [lineStart]\n );\n this.regionsOrStrings.push(newReg);\n }\n\n endLastRegion(endIndex: number, lineEnd: string) {\n this.contentLines[endIndex] = void 0;\n const regionWithoutEnd = this.regionsOrStrings.find(r => r instanceof Region && !r.hasEnd) as Region;\n regionWithoutEnd.contentLines.push(lineEnd);\n regionWithoutEnd.setEnd(endIndex, lineEnd);\n }\n\n private containsTitle(s: Models.dev.ReplacementString) {\n const res = (this.titleString.search(s) !== -1);\n\n return res;\n }\n\n private get titleString() {\n let line = this.lineStart;\n const regionWord = '#region';\n const indexOfRegion = line.search(regionWord);\n line = line.replace(\n line.slice(0, indexOfRegion + regionWord.length),\n ''\n );\n return line\n .replace('-->', '')\n .replace('<!--', ''); // TODO not necessery ?\n }\n\n public toString() {\n if (this.tmpOutput !== void 0) {\n return this.tmpOutput;\n }\n let previous = '';\n this.tmpOutput = this.regionsOrStrings\n .map(regionOrString => {\n if (regionOrString instanceof Region) {\n\n const replacements = this.replacementss;\n for (let index = 0; index < replacements.length; index++) {\n const rep = replacements[index];\n const isArr = _.isArray(replacements[index]);\n\n const regionTag = (isArr ? _.first(rep as string[]) : rep) as Models.dev.ReplacementString;\n\n let out = (isArr ? rep[1] : '') as string;\n\n const verticalLength = regionOrString.toString().split('\\n').length - 1;\n\n if (regionOrString.containsTitle(regionTag)) {\n if (regionTag.toLowerCase() === TAGS.WEBSQL.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.BACKEND.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.NOT_FOR_NPM.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.notForNpmCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.BROWSER.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.browserCode + '\\n').join('')} ${out}`;\n }\n if (regionTag.toLowerCase() === TAGS.WEBSQL_ONLY.toLowerCase()) {\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')} ${out}`;\n }\n if (\n regionTag.toLowerCase() === TAGS.BACKEND_FUNC.toLowerCase()\n ) {\n let spacesPrevious = previous.search(/\\S/);\n spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')}`\n + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;\n }\n if (\n regionTag.toLowerCase() === TAGS.WEBSQL_FUNC.toLowerCase()\n ) {\n let spacesPrevious = previous.search(/\\S/);\n spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);\n out = `${_.times(verticalLength).map(() => Models.label.backendCode + '\\n').join('')}`\n + `${_.times(spacesPrevious).map(n => ' ').join('')} ${out}`;\n }\n if (\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()\n ||\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()\n ) {\n const fn = out as any; // as ReturnType<typeof codeCuttFn>;\n let expressionToExecute = regionOrString.titleString;\n\n expressionToExecute = expressionToExecute.replace(regionTag, '');\n\n\n const configForProject = this.project && this.project.env.config;\n\n const cutCode = fn(expressionToExecute, configForProject, this.realtiveOrAbsFilePAth);\n\n if (cutCode === null) {\n continue;\n }\n if (\n (cutCode && (\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_TRUE.toLowerCase()\n ))\n ||\n (!cutCode && (\n regionTag.toLowerCase() === TAGS.CUT_CODE_IF_FALSE.toLowerCase()\n ))\n ) {\n out = '';\n } else {\n continue;\n }\n }\n regionOrString.tmpOutput = out;\n break;\n }\n }\n\n }\n const res = regionOrString.toString();\n previous = res;\n return res;\n }).join('\\n');\n return this.tmpOutput;\n }\n\n private get project() {\n return this.context.project;\n }\n\n private get realtiveOrAbsFilePAth() {\n return this.context.realtiveOrAbsFilePAth;\n }\n\n}\n\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region.ts","\n\nimport { _, path } from 'tnp-core/websql';\n\nimport { Helpers } from 'tnp-core/websql';\nimport { Region } from './region';\n\nimport { ConfigModels } from 'tnp-config/websql';\nimport { REGEX_REGION, TAGS } from 'tnp-config/websql';\n\n\nexport class RegionRemover {\n private root: Region;\n private readonly START_REGION: RegExp[] = [];\n private readonly END_REGION: RegExp[] = [];\n public static from(\n realtiveOrAbsFilePAth: string,\n content: string,\n replacementss?: any, // Models.dev.Replacement[],\n project?: any, // Project,\n ) {\n\n let fileExtension = path.extname(realtiveOrAbsFilePAth);\n\n if (!replacementss) {\n replacementss = [\n [TAGS.BACKEND_FUNC, `return (void 0);`],\n TAGS.BACKEND as any,\n ];\n }\n return new RegionRemover(realtiveOrAbsFilePAth, fileExtension as any, content, replacementss, project);\n }\n\n private matchStartRegion(l: string) {\n const res = !_.isUndefined(this.START_REGION.find(r => l.match(r)));\n return res;\n }\n private matchEndRegion(l: string) {\n const res = !_.isUndefined(this.END_REGION.find(r => l.match(r)));\n return res;\n }\n\n\n private constructor(\n public readonly realtiveOrAbsFilePAth: string,\n fileExtension: ConfigModels.CutableFileExt,\n private content: string,\n replacementss?: any, // Models.dev.Replacement[],\n public readonly project?: any, // Project\n\n ) {\n if ((REGEX_REGION.TS_JS_SCSS_SASS.EXT).includes(fileExtension)) {\n this.START_REGION.push(REGEX_REGION.TS_JS_SCSS_SASS.START);\n this.END_REGION.push(REGEX_REGION.TS_JS_SCSS_SASS.END);\n }\n if ((REGEX_REGION.HTML.EXT).includes(fileExtension)) {\n this.START_REGION.push(REGEX_REGION.HTML.START);\n this.END_REGION.push(REGEX_REGION.HTML.END);\n }\n if ((REGEX_REGION.CSS.EXT).includes(fileExtension)) {\n this.START_REGION.push(REGEX_REGION.CSS.START);\n this.END_REGION.push(REGEX_REGION.CSS.END);\n }\n\n const lines = this.content.split('\\n');\n this.root = new Region(\n this,\n replacementss,\n void 0,\n 0, (lines.length - 1),\n _.first(lines), _.last(lines),\n lines);\n this.tree(this.root);\n }\n\n private tree(node: Region) {\n const contentLines = node.contentLines;\n\n\n\n\n\n\n let stack = 0;\n for (let i = 0; i < contentLines.length; i++) {\n const l = contentLines[i];\n if (!node.isRoot) {\n if (i === 0) {\n node.addNormalLine(l, 0);\n continue;\n }\n if (i === (node.contentLines.length - 1)) {\n node.addNormalLine(l, i);\n continue;\n }\n }\n if (node.lastRegionWithoutEnd) {\n if (this.matchStartRegion(l)) {\n node.addNormalLineToLastRegion(l, i);\n stack++;\n } else if (this.matchEndRegion(l)) {\n if (stack === 0) {\n node.endLastRegion(i, l);\n } else if (stack > 0) {\n node.addNormalLineToLastRegion(l, i);\n stack--;\n }\n } else {\n if (i === (node.contentLines.length - (node.isRoot ? 1 : 2))) {\n stack = 0;\n node.endLastRegion(i, l);\n } else {\n node.addNormalLineToLastRegion(l, i);\n }\n }\n } else {\n if (this.matchStartRegion(l)) {\n node.addRegion(this, node, i, l);\n } else if (this.matchEndRegion(l)) {\n node.addNormalLine(l, i);\n } else {\n node.addNormalLine(l, i);\n }\n }\n }\n\n\n const children = node.regions;\n if (children.length > 0) {\n for (let index = 0; index < children.length; index++) {\n const child = children[index] as Region;\n this.tree(child);\n }\n }\n }\n\n get output() {\n return this.root.toString();\n }\n\n}\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/region-remover.ts","\n\n\nimport { RegionRemover } from \"./region-remover\";\n\n\nfunction StripBrowserCode(content) {\n\n\n // @ts-ignore\n content = RegionRemover.from(this.resourcePath, content, ['@browser']).output + '\\n';\n\n if (this.cacheable) {\n this.cacheable(true);\n }\n\n return content;\n}\n\nexport { StripBrowserCode as StripBlockLoader };\n\nexport * from './region-remover';\nexport * from './region';\n\nexport default StripBrowserCode;\n\n ;({}); // @--end-of-file-for-module=isomorphic-region-loader lib/index.ts","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  // @ts-nocheck
2
- declare function StripBrowserCode(content: any): void;
2
+ declare function StripBrowserCode(content: any): any;
3
3
  export { StripBrowserCode as StripBlockLoader };
4
+ export * from './region-remover';
5
+ export * from './region';
4
6
  export default StripBrowserCode;
@@ -0,0 +1,16 @@
1
+ // @ts-nocheck
2
+ export declare class RegionRemover {
3
+ readonly realtiveOrAbsFilePAth: string;
4
+ private content;
5
+ readonly project?: any;
6
+ private root;
7
+ private readonly START_REGION;
8
+ private readonly END_REGION;
9
+ static from(realtiveOrAbsFilePAth: string, content: string, replacementss?: any, // Models.dev.Replacement[],
10
+ project?: any): RegionRemover;
11
+ private matchStartRegion;
12
+ private matchEndRegion;
13
+ private constructor();
14
+ private tree;
15
+ get output(): string;
16
+ }
@@ -0,0 +1,30 @@
1
+ // @ts-nocheck
2
+ import { Models } from 'tnp-models/websql';
3
+ import type { RegionRemover } from './region-remover';
4
+ export declare class Region {
5
+ private context;
6
+ replacementss: Models.dev.Replacement[];
7
+ parent: Region;
8
+ startIndex: number;
9
+ endIndex: number;
10
+ lineStart: string;
11
+ lineEnd: string;
12
+ contentLines: string[];
13
+ constructor(context: RegionRemover, replacementss: Models.dev.Replacement[], parent: Region, startIndex: number, endIndex: number, lineStart: string, lineEnd: string, contentLines?: string[]);
14
+ private tmpOutput;
15
+ get hasEnd(): boolean;
16
+ get lastRegionWithoutEnd(): Region;
17
+ private regionsOrStrings;
18
+ get regions(): (string | Region)[];
19
+ private setEnd;
20
+ get isRoot(): boolean;
21
+ addNormalLine(l: string, lineIndex: number): void;
22
+ addNormalLineToLastRegion(l: string, lineIndex: number): void;
23
+ addRegion(context: RegionRemover, parent: Region, startIndex: number, lineStart: string): void;
24
+ endLastRegion(endIndex: number, lineEnd: string): void;
25
+ private containsTitle;
26
+ private get titleString();
27
+ toString(): string;
28
+ private get project();
29
+ private get realtiveOrAbsFilePAth();
30
+ }
@@ -1 +0,0 @@
1
- {"version":3,"file":"region-remover.backend.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"region.backend.js","sourceRoot":"","sources":[""],"names":[],"mappings":"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"}