isomorphic-region-loader 0.0.3 → 1.0.4

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 (45) hide show
  1. package/app.d.ts +1 -0
  2. package/app.js +6 -0
  3. package/app.js.map +1 -0
  4. package/browser/README.md +24 -0
  5. package/browser/esm2020/isomorphic-region-loader.mjs +5 -0
  6. package/browser/esm2020/lib/index.mjs +20 -0
  7. package/browser/esm2020/public-api.mjs +2 -0
  8. package/browser/fesm2015/isomorphic-region-loader.mjs +21 -0
  9. package/browser/fesm2015/isomorphic-region-loader.mjs.map +1 -0
  10. package/browser/fesm2020/isomorphic-region-loader.mjs +21 -0
  11. package/browser/fesm2020/isomorphic-region-loader.mjs.map +1 -0
  12. package/browser/isomorphic-region-loader.d.ts +5 -0
  13. package/browser/lib/index.d.ts +3 -0
  14. package/browser/package.json +31 -0
  15. package/browser/public-api.d.ts +1 -0
  16. package/client/README.md +24 -0
  17. package/client/esm2020/isomorphic-region-loader.mjs +5 -0
  18. package/client/esm2020/lib/index.mjs +20 -0
  19. package/client/esm2020/public-api.mjs +2 -0
  20. package/client/fesm2015/isomorphic-region-loader.mjs +21 -0
  21. package/client/fesm2015/isomorphic-region-loader.mjs.map +1 -0
  22. package/client/fesm2020/isomorphic-region-loader.mjs +21 -0
  23. package/client/fesm2020/isomorphic-region-loader.mjs.map +1 -0
  24. package/client/isomorphic-region-loader.d.ts +5 -0
  25. package/client/lib/index.d.ts +3 -0
  26. package/client/package.json +31 -0
  27. package/client/public-api.d.ts +1 -0
  28. package/index.d.ts +3 -0
  29. package/index.js +7 -36
  30. package/index.js.map +1 -0
  31. package/lib/index.d.ts +5 -0
  32. package/lib/index.js +24 -0
  33. package/lib/index.js.map +1 -0
  34. package/lib/region-remover.backend.d.ts +15 -0
  35. package/lib/region-remover.backend.js +147 -0
  36. package/lib/region-remover.backend.js.map +1 -0
  37. package/lib/region.backend.d.ts +29 -0
  38. package/lib/region.backend.js +179 -0
  39. package/lib/region.backend.js.map +1 -0
  40. package/package.json +9 -8
  41. package/package.json_devDependencies.json +3 -0
  42. package/package.json_tnp.json5 +23 -0
  43. package/tmp-environment.json +292 -0
  44. package/.vscode/settings.json +0 -19
  45. package/README.md +0 -63
@@ -0,0 +1,179 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Region = void 0;
4
+ var tnp_core_1 = require("tnp-core");
5
+ var tnp_models_1 = require("tnp-models");
6
+ var Region = /** @class */ (function () {
7
+ function Region(context, replacementss, parent, startIndex, endIndex, lineStart, lineEnd, contentLines) {
8
+ if (contentLines === void 0) { contentLines = []; }
9
+ this.context = context;
10
+ this.replacementss = replacementss;
11
+ this.parent = parent;
12
+ this.startIndex = startIndex;
13
+ this.endIndex = endIndex;
14
+ this.lineStart = lineStart;
15
+ this.lineEnd = lineEnd;
16
+ this.contentLines = contentLines;
17
+ this.regionsOrStrings = [];
18
+ }
19
+ Object.defineProperty(Region.prototype, "hasEnd", {
20
+ get: function () {
21
+ return this.endIndex !== void 0;
22
+ },
23
+ enumerable: false,
24
+ configurable: true
25
+ });
26
+ Object.defineProperty(Region.prototype, "lastRegionWithoutEnd", {
27
+ get: function () {
28
+ var last = tnp_core_1._.last(this.regionsOrStrings);
29
+ if (last instanceof Region && !last.hasEnd) {
30
+ return last;
31
+ }
32
+ return void 0;
33
+ },
34
+ enumerable: false,
35
+ configurable: true
36
+ });
37
+ Object.defineProperty(Region.prototype, "regions", {
38
+ get: function () {
39
+ return this.regionsOrStrings.filter(function (f) { return f instanceof Region; });
40
+ },
41
+ enumerable: false,
42
+ configurable: true
43
+ });
44
+ Region.prototype.setEnd = function (endIndex, lineEnd) {
45
+ this.endIndex = endIndex;
46
+ this.lineEnd = lineEnd;
47
+ };
48
+ Object.defineProperty(Region.prototype, "isRoot", {
49
+ get: function () {
50
+ return !this.parent;
51
+ },
52
+ enumerable: false,
53
+ configurable: true
54
+ });
55
+ Region.prototype.addNormalLine = function (l, lineIndex) {
56
+ this.contentLines[lineIndex] = void 0;
57
+ this.regionsOrStrings.push(l);
58
+ };
59
+ Region.prototype.addNormalLineToLastRegion = function (l, lineIndex) {
60
+ this.contentLines[lineIndex] = void 0;
61
+ this.lastRegionWithoutEnd.contentLines.push(l);
62
+ };
63
+ Region.prototype.addRegion = function (context, parent, startIndex, lineStart) {
64
+ this.contentLines[startIndex] = void 0;
65
+ var newReg = new Region(context, this.replacementss, parent, startIndex, void 0, lineStart, void 0, [lineStart]);
66
+ this.regionsOrStrings.push(newReg);
67
+ };
68
+ Region.prototype.endLastRegion = function (endIndex, lineEnd) {
69
+ this.contentLines[endIndex] = void 0;
70
+ var regionWithoutEnd = this.regionsOrStrings.find(function (r) { return r instanceof Region && !r.hasEnd; });
71
+ regionWithoutEnd.contentLines.push(lineEnd);
72
+ regionWithoutEnd.setEnd(endIndex, lineEnd);
73
+ };
74
+ Region.prototype.containsTitle = function (s) {
75
+ var res = (this.titleString.search(s) !== -1);
76
+ // Helpers.log(`checking tag (${res}): "${s}" in line: "${this.titleString}"`)
77
+ return res;
78
+ };
79
+ Object.defineProperty(Region.prototype, "titleString", {
80
+ get: function () {
81
+ var line = this.lineStart;
82
+ var regionWord = '#region';
83
+ var indexOfRegion = line.search(regionWord);
84
+ line = line.replace(line.slice(0, indexOfRegion + regionWord.length), '');
85
+ return line
86
+ .replace('-->', '')
87
+ .replace('<!--', ''); // TODO not necessery ?
88
+ },
89
+ enumerable: false,
90
+ configurable: true
91
+ });
92
+ Region.prototype.toString = function () {
93
+ var _this = this;
94
+ if (this.tmpOutput !== void 0) {
95
+ return this.tmpOutput;
96
+ }
97
+ var previous = '';
98
+ this.tmpOutput = this.regionsOrStrings
99
+ .map(function (regionOrString) {
100
+ if (regionOrString instanceof Region) {
101
+ //#region handle region
102
+ var replacements = _this.replacementss;
103
+ for (var index = 0; index < replacements.length; index++) {
104
+ var rep = replacements[index];
105
+ var isArr = tnp_core_1._.isArray(replacements[index]);
106
+ var regionTag = (isArr ? tnp_core_1._.first(rep) : rep);
107
+ var out = (isArr ? rep[1] : '');
108
+ var verticalLength = regionOrString.toString().split('\n').length - 1;
109
+ if (regionOrString.containsTitle(regionTag)) {
110
+ if (regionTag.toLowerCase() === '@backend'.toLowerCase()) {
111
+ out = "".concat(tnp_core_1._.times(verticalLength).map(function () { return tnp_models_1.Models.label.backendCode + '\n'; }).join(''), " ").concat(out);
112
+ }
113
+ if (regionTag.toLowerCase() === '@notForNpm'.toLowerCase()) {
114
+ out = "".concat(tnp_core_1._.times(verticalLength).map(function () { return tnp_models_1.Models.label.notForNpmCode + '\n'; }).join(''), " ").concat(out);
115
+ }
116
+ if (regionTag.toLowerCase() === '@browser'.toLowerCase()) {
117
+ out = "".concat(tnp_core_1._.times(verticalLength).map(function () { return tnp_models_1.Models.label.browserCode + '\n'; }).join(''), " ").concat(out);
118
+ }
119
+ if (regionTag.toLowerCase() === '@backendFunc'.toLowerCase()) {
120
+ var spacesPrevious = previous.search(/\S/);
121
+ spacesPrevious = (spacesPrevious < 0 ? 0 : spacesPrevious);
122
+ out = "".concat(tnp_core_1._.times(verticalLength).map(function () { return tnp_models_1.Models.label.backendCode + '\n'; }).join(''))
123
+ + "".concat(tnp_core_1._.times(spacesPrevious).map(function (n) { return ' '; }).join(''), " ").concat(out);
124
+ }
125
+ if (regionTag.toLowerCase() === '@cutCodeIfTrue'.toLowerCase()
126
+ ||
127
+ regionTag.toLowerCase() === '@cutCodeIfFalse'.toLowerCase()) {
128
+ var fn = out; // as ReturnType<typeof codeCuttFn>;
129
+ var expressionToExecute = regionOrString.titleString;
130
+ // Helpers.log(`LINE: "${regionOrString.lineStart}"`);
131
+ expressionToExecute = expressionToExecute.replace(regionTag, '');
132
+ // Helpers.log(`Expresion to evaluate "${expressionToExecute}"`);
133
+ // Helpers.log(`this.project "${this.project.name}"`);
134
+ var configForProject = _this.project && _this.project.env.config;
135
+ // Helpers.log(`configForProject "${configForProject}"`);
136
+ var cutCode = fn(expressionToExecute, configForProject, _this.absoluteFilePath);
137
+ // Helpers.info(`Cut code: "${cutCode}"`);
138
+ if (cutCode === null) {
139
+ continue;
140
+ }
141
+ if ((cutCode && (regionTag.toLowerCase() === '@cutCodeIfTrue'.toLowerCase()))
142
+ ||
143
+ (!cutCode && (regionTag.toLowerCase() === '@cutCodeIfFalse'.toLowerCase()))) {
144
+ out = '';
145
+ }
146
+ else {
147
+ continue;
148
+ }
149
+ }
150
+ regionOrString.tmpOutput = out;
151
+ break;
152
+ }
153
+ }
154
+ //#endregion
155
+ }
156
+ var res = regionOrString.toString();
157
+ previous = res;
158
+ return res;
159
+ }).join('\n');
160
+ return this.tmpOutput;
161
+ };
162
+ Object.defineProperty(Region.prototype, "project", {
163
+ get: function () {
164
+ return this.context.project;
165
+ },
166
+ enumerable: false,
167
+ configurable: true
168
+ });
169
+ Object.defineProperty(Region.prototype, "absoluteFilePath", {
170
+ get: function () {
171
+ return this.context.fileAbsolutePath;
172
+ },
173
+ enumerable: false,
174
+ configurable: true
175
+ });
176
+ return Region;
177
+ }());
178
+ exports.Region = Region;
179
+ //# sourceMappingURL=/Users/dariusz/projects/npm/isomorphic-region-loader/tmp-bundle-release/bundle/project/isomorphic-region-loader/bundle-nocutsrc/lib/region.backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"region.backend.js","sourceRoot":"","sources":["../../tmp-source-bundle/lib/region.backend.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
- "name": "isomorphic-region-loader",
3
- "version": "0.0.3",
4
- "author": "Dariusz Filipiak @darekf77",
5
- "license": "MIT",
6
- "devDependencies": {
7
- "loader-utils": "^1.1.0"
8
- }
9
- }
2
+ "name": "isomorphic-region-loader",
3
+ "version": "1.0.4",
4
+ "author": "Dariusz Filipiak @darekf77",
5
+ "license": "MIT",
6
+ "devDependencies": {},
7
+ "dependencies": {},
8
+ "private": false,
9
+ "lastBuildTagHash": "c8087f2dd8a8e59ed2162caf378dfe74f74c8e78"
10
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "loader-utils": "^1.1.0"
3
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "resources": [],
3
+ "overrided": {
4
+ "linkedFolders": [],
5
+ "ignoreDepsPattern": [
6
+ "*"
7
+ ],
8
+ "includeAsDev": [],
9
+ "includeOnly": [],
10
+ "dependencies": {}
11
+ },
12
+ "linkedProjects": [],
13
+ "libReleaseOptions": {
14
+ "nodts": false,
15
+ "obscure": false,
16
+ "ugly": false
17
+ },
18
+ "license": "MIT",
19
+ "author": "Dariusz Filipiak @darekf77",
20
+ "type": "isomorphic-lib",
21
+ "version": "v3",
22
+ "private": false
23
+ }
@@ -0,0 +1,292 @@
1
+ {
2
+ "domain": "isomorphic-region-loader.example.domain.com",
3
+ "name": "local",
4
+ "isCoreProject": false,
5
+ "ip": "localhost",
6
+ "packageJSON": {
7
+ "tnp": {
8
+ "resources": [],
9
+ "overrided": {
10
+ "linkedFolders": [],
11
+ "ignoreDepsPattern": [
12
+ "*"
13
+ ],
14
+ "includeAsDev": [],
15
+ "includeOnly": [],
16
+ "dependencies": {}
17
+ },
18
+ "linkedProjects": [],
19
+ "libReleaseOptions": {
20
+ "nodts": false,
21
+ "obscure": false,
22
+ "ugly": false
23
+ },
24
+ "license": "MIT",
25
+ "author": "Dariusz Filipiak @darekf77",
26
+ "type": "isomorphic-lib",
27
+ "version": "v3",
28
+ "private": false
29
+ },
30
+ "name": "isomorphic-region-loader",
31
+ "version": "1.0.4",
32
+ "author": "Dariusz Filipiak @darekf77",
33
+ "license": "MIT",
34
+ "devDependencies": {},
35
+ "dependencies": {
36
+ "@angular-devkit/build-angular": "~13.2.5",
37
+ "@angular-devkit/core": "~13.2.6",
38
+ "@angular/animations": "~13.2.0",
39
+ "@angular/cdk": "~13.2.4",
40
+ "@angular/cli": "~13.2.5",
41
+ "@angular/common": "~13.2.0",
42
+ "@angular/compiler": "~13.2.0",
43
+ "@angular/compiler-cli": "~13.2.0",
44
+ "@angular/core": "~13.2.0",
45
+ "@angular/flex-layout": "~13.0.0-beta.38",
46
+ "@angular/forms": "~13.2.0",
47
+ "@angular/material": "~13.2.4",
48
+ "@angular/platform-browser": "~13.2.0",
49
+ "@angular/platform-browser-dynamic": "~13.2.0",
50
+ "@angular/pwa": "~13.2.5",
51
+ "@angular/router": "~13.2.0",
52
+ "@angular/service-worker": "~13.2.0",
53
+ "@babel/cli": "7.18.6",
54
+ "@iconify/icons-fa-solid": "1.2.2",
55
+ "@iconify/icons-mdi": "1.2.1",
56
+ "@mdi/js": "6.5.95",
57
+ "@ngrx/component-store": "~13.0.2",
58
+ "@ngrx/data": "~13.0.2",
59
+ "@ngrx/effects": "~13.0.2",
60
+ "@ngrx/entity": "~13.0.2",
61
+ "@ngrx/router-store": "~13.0.2",
62
+ "@ngrx/schematics": "~13.0.2",
63
+ "@ngrx/store": "~13.0.2",
64
+ "@ngrx/store-devtools": "~13.0.2",
65
+ "@ngx-formly/bootstrap": "6.0.0-next.8",
66
+ "@ngx-formly/core": "6.0.0-next.8",
67
+ "@ngx-formly/ionic": "6.0.0-next.8",
68
+ "@ngx-formly/material": "6.0.0-next.8",
69
+ "@ngx-loading-bar/core": "6.0.2",
70
+ "@ngx-loading-bar/http-client": "6.0.2",
71
+ "@ngx-loading-bar/router": "6.0.2",
72
+ "@ngx-translate/core": "14.0.0",
73
+ "@ngx-translate/http-loader": "7.0.0",
74
+ "@swimlane/ngx-datatable": "20.0.0",
75
+ "@types/chai": "4.1.2",
76
+ "@types/chokidar": "2.1.3",
77
+ "@types/dateformat": "1.0.1",
78
+ "@types/diff": "3.2.2",
79
+ "@types/express": "4.11.0",
80
+ "@types/express-fileupload": "0.1.1",
81
+ "@types/fs-extra": "7.0.0",
82
+ "@types/glob": "5.0.35",
83
+ "@types/http-proxy": "1.16.0",
84
+ "@types/http-proxy-middleware": "0.19.2",
85
+ "@types/inquirer": "7.3.1",
86
+ "@types/jasmine": "3.10.0",
87
+ "@types/json-stringify-safe": "5.0.0",
88
+ "@types/json5": "0.0.29",
89
+ "@types/lockfile": "1.0.0",
90
+ "@types/lodash": "4.14.92",
91
+ "@types/lowdb": "1.0.6",
92
+ "@types/mocha": "5.2.5",
93
+ "@types/node": "12.11.1",
94
+ "@types/node-notifier": "5.4.0",
95
+ "@types/oauth2orize": "1.8.0",
96
+ "@types/password-hash": "1.2.19",
97
+ "@types/progress": "2.0.3",
98
+ "@types/q": "1.5.5",
99
+ "@types/rimraf": "2.0.2",
100
+ "@types/semver": "6.0.1",
101
+ "@types/systeminformation": "3.23.0",
102
+ "@types/vinyl": "2.0.2",
103
+ "@types/watch": "1.0.0",
104
+ "accepts": "1.3.4",
105
+ "axios": "0.17.1",
106
+ "background-worker-process": "~13.0.21",
107
+ "bcryptjs": "2.4.3",
108
+ "better-sqlite3": "7.5.1",
109
+ "body-parser": "1.18.2",
110
+ "bootstrap": "5.1.3",
111
+ "bs4-breakpoint": "13.0.31",
112
+ "buffer-shims": "1.0.0",
113
+ "callsite-record": "4.1.3",
114
+ "chai": "4.2.0",
115
+ "chalk": "2.3.2",
116
+ "check-node-version": "3.2.0",
117
+ "cheerio": "1.0.0-rc.3",
118
+ "chokidar": "3.5.1",
119
+ "circular-json": "0.5.1",
120
+ "command-exists": "1.2.2",
121
+ "compression": "1.7.4",
122
+ "concurrently": "3.5.1",
123
+ "content-type": "1.0.4",
124
+ "cookie-parser": "1.4.3",
125
+ "copy-paste": "1.3.0",
126
+ "cors": "2.8.4",
127
+ "cpr": "3.0.1",
128
+ "cross-spawn": "7.0.3",
129
+ "dateformat": "3.0.3",
130
+ "detect-mocha": "0.1.0",
131
+ "diff": "3.2.0",
132
+ "element-resize-detector": "1.1.15",
133
+ "enquirer": "2.3.0",
134
+ "enum-values": "1.2.1",
135
+ "errorhandler": "1.5.0",
136
+ "eslint": "7.13.0",
137
+ "eslint-plugin-import": "2.22.1",
138
+ "eslint-plugin-jsdoc": "30.7.8",
139
+ "eslint-plugin-prefer-arrow": "1.2.2",
140
+ "express": "4.16.3",
141
+ "express-fileupload": "0.4.0",
142
+ "express-session": "1.17.3",
143
+ "fbgraph": "1.4.1",
144
+ "file-loader": "1.1.5",
145
+ "firedev": "^13",
146
+ "firedev-crud": "~13.0.29",
147
+ "firedev-crud-deamon": "~13.0.20",
148
+ "firedev-ports": "~13.0.23",
149
+ "firedev-storage": "~13.0.15",
150
+ "fkill": "6.1.0",
151
+ "font-awesome": "4.7.0",
152
+ "fs-extra": "8.1.0",
153
+ "fuzzy": "0.1.3",
154
+ "glob": "7.1.2",
155
+ "gulp": "3.9.1",
156
+ "hostile": "1.3.3",
157
+ "http-proxy": "1.16.2",
158
+ "http-proxy-middleware": "0.19.1",
159
+ "http-server": "0.11.1",
160
+ "incremental-compiler": "~13.0.22",
161
+ "inquirer": "7.3.3",
162
+ "inquirer-autocomplete-prompt": "1.3.0",
163
+ "is-elevated": "3.0.0",
164
+ "isomorphic-region-loader": "~1.0.2",
165
+ "istanbul-instrumenter-loader": "2.0.0",
166
+ "jasmine-core": "4.0.0",
167
+ "jscodeshift": "0.6.3",
168
+ "json-stringify-safe": "5.0.1",
169
+ "json10": "~13.0.22",
170
+ "json10-writer": "~13.0.20",
171
+ "json5": "2.1.3",
172
+ "json5-writer": "0.2.0",
173
+ "karma": "6.3.0",
174
+ "karma-chrome-launcher": "3.1.0",
175
+ "karma-cli": "1.0.1",
176
+ "karma-coverage": "2.1.0",
177
+ "karma-jasmine": "4.0.0",
178
+ "karma-jasmine-html-reporter": "1.7.0",
179
+ "lnk": "1.0.1",
180
+ "lockfile": "1.0.4",
181
+ "lodash": "4.17.4",
182
+ "lodash-walk-object": "~13.0.22",
183
+ "lodash.get": ">= 4",
184
+ "lodash.isequal": ">= 4",
185
+ "lodash.merge": ">= 4",
186
+ "lodash.set": ">= 4",
187
+ "lowdb": "1.0.0",
188
+ "magic-renamer": "~13.0.12",
189
+ "material-design-icons": "3.0.1",
190
+ "method-override": "2.3.10",
191
+ "minimist": "1.2.0",
192
+ "mkdirp": "0.5.1",
193
+ "mocha": "5.2.0",
194
+ "moment": "2.22.2",
195
+ "morphi": "~13.0.45",
196
+ "ng-packagr": "13.0.0",
197
+ "ng-talkback": "~13.0.14",
198
+ "ng2-logger": "~13.0.22",
199
+ "ng2-rest": "~13.0.30",
200
+ "ng4-icons": "~13.0.16",
201
+ "ng4-modal": "~13.0.18",
202
+ "ngx-bootstrap": "8.0.0",
203
+ "ngx-editor": "12.2.1",
204
+ "ngx-moment": "6.0.2",
205
+ "ngx-pipes": "3.0.0",
206
+ "ngx-store": "3.1.1",
207
+ "ngx-toastr": "14.2.2",
208
+ "ngx-wig": "13.0.3",
209
+ "node-cli-tester": "~13.0.14",
210
+ "node-localstorage": "2.1.6",
211
+ "node-notifier": "6.0.0",
212
+ "nodemon": "1.14.11",
213
+ "npm-get-dependents": "1.0.1",
214
+ "npm-run": "4.1.2",
215
+ "omelette": "0.4.5",
216
+ "open": "7.2.1",
217
+ "ora": "3.4.0",
218
+ "passport": "0.3.2",
219
+ "passport-http-bearer": "1.0.1",
220
+ "password-hash": "1.2.2",
221
+ "portfinder": "1.0.21",
222
+ "prettier": "2.5.1",
223
+ "progress": "2.0.3",
224
+ "prompts": "0.1.8",
225
+ "ps-list": "6.1.0",
226
+ "ps-node": "0.1.6",
227
+ "q": "1.5.1",
228
+ "randomcolor": "0.5.3",
229
+ "record-replay-req-res-scenario": "~13.0.15",
230
+ "reflect-metadata": "0.1.10",
231
+ "rimraf": "2.6.2",
232
+ "rxjs": "~7.5.0",
233
+ "semver": "6.3.0",
234
+ "simple-git": "1.96.0",
235
+ "sloc": "0.2.0",
236
+ "socket.io": "2.4.1",
237
+ "sort-package-json": "1.11.0",
238
+ "static-columns": "~13.0.23",
239
+ "string-similarity": "4.0.2",
240
+ "sudo-block": "3.0.0",
241
+ "systeminformation": "3.45.7",
242
+ "task.js": "0.1.5",
243
+ "tnp-cli": "~13.0.24",
244
+ "tnp-config": "~13.0.28",
245
+ "tnp-core": "~13.0.55",
246
+ "tnp-db": "~13.0.30",
247
+ "tnp-helpers": "~13.0.34",
248
+ "tnp-models": "~13.0.23",
249
+ "tnp-ui": "~13.0.19",
250
+ "ts-debug": "1.3.0",
251
+ "ts-loader": "2.3.1",
252
+ "ts-node": "10.7.0",
253
+ "tslib": "~2.3.0",
254
+ "typeorm": "~0.2.45",
255
+ "typescript": "~4.5.2",
256
+ "typescript-class-helpers": "~13.0.24",
257
+ "typescript-formatter": "~7.2.2",
258
+ "underscore": "1.9.1",
259
+ "uuid": "8.3.2",
260
+ "validator": "9.2.0",
261
+ "vpn-split": "~13.0.19",
262
+ "watch": "1.0.2",
263
+ "zone.js": "~0.11.4"
264
+ },
265
+ "private": false,
266
+ "lastBuildTagHash": "c8087f2dd8a8e59ed2162caf378dfe74f74c8e78"
267
+ },
268
+ "build": {
269
+ "number": 46,
270
+ "date": "2022-08-15T16:04:36.000Z",
271
+ "hash": "370de5eeb42fedcb7cbc39db059e797f0c0cfdc0",
272
+ "options": {}
273
+ },
274
+ "currentProjectName": "isomorphic-region-loader",
275
+ "currentProjectPort": 4000,
276
+ "currentProjectLaunchConfiguration": "{\"version\":\"0.2.0\",\"configurations\":[{\"type\":\"node\",\"request\":\"launch\",\"name\":\"Launch Server standalone\",\"program\":\"${workspaceFolder}/run.js\",\"args\":[\"--ENVoverride=%7B%0A%20%20%20%20%22clientProjectName%22%3A%20%22isomorphic-region-loader%22%0A%7D\"],\"runtimeArgs\":[\"--nolazy\",\"-r\",\"ts-node/register\",\"--experimental-worker\"]},{\"name\":\"Debugger with ng serve\",\"type\":\"chrome\",\"request\":\"launch\",\"preLaunchTask\":\"Ng Serve\",\"postDebugTask\":\"terminateall\",\"sourceMaps\":true,\"webRoot\":\"${workspaceFolder}\",\"sourceMapPathOverrides\":{\"webpack:/*\":\"${webRoot}/*\",\"/./*\":\"${webRoot}/*\",\"/tmp-src/*\":\"${webRoot}/*\",\"/*\":\"*\",\"/./~/*\":\"${webRoot}/node_modules/*\"}},{\"type\":\"node\",\"request\":\"attach\",\"name\":\"Attach to global cli tool\",\"port\":9229,\"skipFiles\":[\"<node_internals>/**\"]}],\"compounds\":[{\"name\":\"Debug backend/frontend\",\"configurations\":[\"Launch Server standalone\",\"Debugger with ng serve\"]}]}",
277
+ "currentProjectTasksConfiguration": "{\"version\":\"2.0.0\",\"tasks\":[{\"label\":\"terminateall\",\"command\":\"echo ${input:terminate}\",\"type\":\"shell\",\"problemMatcher\":[]},{\"label\":\"Ng Serve\",\"type\":\"shell\",\"command\":\"tnp build\",\"isBackground\":true,\"presentation\":{\"reveal\":\"always\"},\"group\":{\"kind\":\"build\",\"isDefault\":true},\"problemMatcher\":{\"owner\":\"typescript\",\"source\":\"ts\",\"applyTo\":\"closedDocuments\",\"fileLocation\":[\"relative\",\"${cwd}\"],\"pattern\":\"$tsc\",\"background\":{\"activeOnStart\":true,\"beginsPattern\":{\"regexp\":\"(.*?)\"},\"endsPattern\":{\"regexp\":\"Compiled |Failed to compile.\"}}}}],\"inputs\":[{\"id\":\"terminate\",\"type\":\"command\",\"command\":\"workbench.action.tasks.terminate\",\"args\":\"terminateAll\"}]}",
278
+ "currentProjectType": "isomorphic-lib",
279
+ "currentFrameworkVersion": "13.0.96",
280
+ "currentProjectIsStrictSite": false,
281
+ "currentProjectIsDependencySite": false,
282
+ "currentProjectIsStatic": false,
283
+ "isStandaloneProject": true,
284
+ "frameworks": [
285
+ "bootstrap",
286
+ "ionic",
287
+ "material"
288
+ ],
289
+ "pathesTsconfig": "\"paths\": {},",
290
+ "customRootDir": "\"rootDir\": \"./src\",",
291
+ "currentLibProjectSourceFolder": "src"
292
+ }
@@ -1,19 +0,0 @@
1
- // Place your settings in this file to overwrite default and user settings.
2
- {
3
- "files.exclude": {
4
- "**/.git": true,
5
- "**/.svn": true,
6
- "**/.hg": true,
7
- "**/CVS": true,
8
- "**/.DS_Store": true,
9
- "node_modules": true
10
- },
11
- "workbench.colorCustomizations": {
12
- "activityBar.background": "#115309"
13
- },
14
- "editor.rulers": [
15
- 100,
16
- 120
17
- ],
18
- "html.format.wrapAttributes": "force-aligned",
19
- }
package/README.md DELETED
@@ -1,63 +0,0 @@
1
- <div align="center">
2
- <h1>Isomorphic #region Loader</h1>
3
- <p>A loader for webpack that lets you strip #regions code from bundle.</p>
4
- </div>
5
-
6
- <h2 align="center">Install</h2>
7
-
8
- ```bash
9
- npm install --save-dev isomorphic-region-loader
10
- ```
11
-
12
- <h2 align="center">Usage</h2>
13
-
14
- This load is very helpfull if you wanna write isomorphic applications
15
- in javascript or typescript. Just specify **region** and this loader will
16
- cut it from bundle. Example:
17
-
18
- ```ts
19
- import * as jquery from 'jquery'
20
- //#region nodejs
21
- import * as fs from 'fs'
22
- //#endregion
23
-
24
- class ExampleIsomorphicClass {
25
- ...
26
- }
27
-
28
- ```
29
-
30
- With webpack configuraiton below:
31
-
32
- ```js
33
- module.exports = {
34
- module: {
35
- rules: [
36
- {
37
- test: /\.ts$/,
38
- use: 'isomorphic-region-loader',
39
- options: { platform: 'browser' } // 'borwser' default platform, also there is 'nodejs'
40
- }
41
- ]
42
- }
43
- }
44
- ```
45
- You will get:
46
- ```ts
47
- import * as jquery from 'jquery'
48
-
49
- class ExampleIsomorphicClass {
50
- ...
51
- }
52
-
53
- ```
54
- As result, code inside **#region nodejs** has been stripped.
55
- Also you can do similar things to your nodejs code and strip off
56
- browser things.
57
-
58
- ### Inline
59
-
60
- **In your application**
61
- ```js
62
- import { ExampleIsomorphicClass } from '!isomorphic-region-loader!./isomorphic-class.ts';
63
- ```