magic-renamer 18.0.19 → 18.0.29
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/CLI-README.md +8 -0
- package/README.md +5 -5
- package/assets/shared/shared_folder_info.txt +1 -1
- package/bin/magic-renamer +10 -10
- package/bin/magic-renamer-debug +10 -10
- package/bin/start.js +2 -0
- package/browser/README.md +24 -24
- package/cli.d.ts +1 -0
- package/cli.js +705317 -0
- package/cli.js.map +1 -0
- package/client/README.md +24 -24
- package/index.d.ts +1 -1
- package/index.js +26 -5
- package/index.js.map +1 -1
- package/lib/build-info._auto-generated_.js.map +1 -1
- package/lib/index._auto-generated_.js.map +1 -1
- package/lib/index.js +16 -3
- package/lib/index.js.map +1 -1
- package/lib/magic-renamer-data.js +1 -1
- package/lib/magic-renamer-data.js.map +1 -1
- package/lib/magic-renamer.js +65 -69
- package/lib/magic-renamer.js.map +1 -1
- package/lib/rename-rule.js +70 -71
- package/lib/rename-rule.js.map +1 -1
- package/migrations/index.js +15 -2
- package/migrations/index.js.map +1 -1
- package/migrations/migrations_index._auto-generated_.js.map +1 -1
- package/package.json +5 -49
- package/sql-wasm.wasm +0 -0
- package/src.d.ts +1 -1
- package/tmp-environment.json +8 -379
- package/websql/README.md +24 -24
- package/browser/package.json +0 -25
- package/start.backend.d.ts +0 -1
- package/start.backend.js +0 -21
- package/start.backend.js.map +0 -1
- package/taon.jsonc +0 -39
- package/websql/package.json +0 -25
package/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["/Users/dfilipiak/npm/taon-dev/magic-renamer/src/cli.ts"],"names":[],"mappings":";;;AAAA,kBAAkB;AAClB,iCAA8B;AAArB,4FAAA,GAAG,OAAA;AACZ,YAAY"}
|
package/client/README.md
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
# MyLib
|
|
2
|
-
|
|
3
|
-
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
|
|
4
|
-
|
|
5
|
-
## Code scaffolding
|
|
6
|
-
|
|
7
|
-
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
|
8
|
-
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
-
|
|
10
|
-
## Build
|
|
11
|
-
|
|
12
|
-
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
-
|
|
14
|
-
## Publishing
|
|
15
|
-
|
|
16
|
-
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
|
17
|
-
|
|
18
|
-
## Running unit tests
|
|
19
|
-
|
|
20
|
-
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
-
|
|
22
|
-
## Further help
|
|
23
|
-
|
|
24
|
-
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
1
|
+
# MyLib
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
|
|
8
|
+
> Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
package/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './lib';
|
|
2
|
-
export
|
|
2
|
+
export declare function run(args: string[]): Promise<void>;
|
package/index.js
CHANGED
|
@@ -1,10 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.run =
|
|
4
|
-
|
|
5
|
-
tslib_1.__exportStar(require("./lib"), exports);
|
|
17
|
+
exports.run = run;
|
|
18
|
+
__exportStar(require("./lib"), exports);
|
|
6
19
|
//#region @backend
|
|
7
|
-
|
|
8
|
-
|
|
20
|
+
const magic_renamer_1 = require("./lib/magic-renamer");
|
|
21
|
+
async function run(args) {
|
|
22
|
+
if (args.join() === 'version') {
|
|
23
|
+
console.log('Magic renamer version: v0.0.0 !');
|
|
24
|
+
process.exit(0);
|
|
25
|
+
}
|
|
26
|
+
const ins = magic_renamer_1.MagicRenamer.Instance();
|
|
27
|
+
ins.start(args.join(' '));
|
|
28
|
+
process.exit(0);
|
|
29
|
+
}
|
|
9
30
|
//#endregion
|
|
10
31
|
//# sourceMappingURL=index.js.map
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":[""],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["/Users/dfilipiak/npm/taon-dev/magic-renamer/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAIA,kBAQC;AAZD,wCAAsB;AAEtB,kBAAkB;AAClB,uDAAmD;AAC5C,KAAK,UAAU,GAAG,CAAC,IAAc;IACtC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,4BAAY,CAAC,QAAQ,EAAE,CAAC;IACpC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AACD,YAAY"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-info._auto-generated_.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AACa,QAAA,wBAAwB,GAAG,KAAK,CAAC"}
|
|
1
|
+
{"version":3,"file":"build-info._auto-generated_.js","sourceRoot":"","sources":["/Users/dfilipiak/npm/taon-dev/magic-renamer/src/lib/build-info._auto-generated_.ts"],"names":[],"mappings":";;;AACa,QAAA,wBAAwB,GAAG,KAAK,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index._auto-generated_.js","sourceRoot":"","sources":[""],"names":[],"mappings":"AAAA,cAAc;AACd,8CAA8C;AAC9C,2BAA2B;AAC3B,uDAAuD;AACvD,2CAA2C"}
|
|
1
|
+
{"version":3,"file":"index._auto-generated_.js","sourceRoot":"","sources":["/Users/dfilipiak/npm/taon-dev/magic-renamer/src/lib/index._auto-generated_.ts"],"names":[],"mappings":"AAAA,cAAc;AACd,8CAA8C;AAC9C,2BAA2B;AAC3B,uDAAuD;AACvD,2CAA2C"}
|
package/lib/index.js
CHANGED
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
tslib_1.__exportStar(require("./magic-renamer"), exports);
|
|
17
|
+
__exportStar(require("./rename-rule"), exports);
|
|
18
|
+
__exportStar(require("./magic-renamer"), exports);
|
|
6
19
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":[""],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["/Users/dfilipiak/npm/taon-dev/magic-renamer/src/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,kDAAgC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"magic-renamer-data.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAMA,kCAEC;AARD,
|
|
1
|
+
{"version":3,"file":"magic-renamer-data.js","sourceRoot":"","sources":["/Users/dfilipiak/npm/taon-dev/magic-renamer/src/lib/magic-renamer-data.ts"],"names":[],"mappings":";;;AAMA,kCAEC;AARD,uCAA+B;AAElB,QAAA,OAAO,GAAG;AACrB,mBAAmB;CACpB,CAAA;AAED,SAAgB,WAAW,CAAC,QAAe;IACzC,OAAO,eAAO,CAAC,QAAQ,CAAC,eAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AACnD,CAAC"}
|
package/lib/magic-renamer.js
CHANGED
|
@@ -2,36 +2,37 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MagicRenamer = void 0;
|
|
4
4
|
//#region imports
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
const ng2_logger_1 = require("ng2-logger");
|
|
6
|
+
const log = ng2_logger_1.Log.create('magic-renemer', ng2_logger_1.Level.__NOTHING);
|
|
7
7
|
//#region @backend
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
const tnp_core_1 = require("tnp-core");
|
|
9
|
+
const tnp_helpers_1 = require("tnp-helpers");
|
|
10
|
+
const rename_rule_1 = require("./rename-rule");
|
|
11
11
|
//#endregion
|
|
12
12
|
//#endregion
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
class MagicRenamer {
|
|
14
|
+
cwd;
|
|
15
|
+
//#region @backend
|
|
16
|
+
//#region singleton
|
|
17
|
+
static _instances = {};
|
|
18
|
+
constructor(cwd) {
|
|
15
19
|
this.cwd = cwd;
|
|
16
|
-
//#endregion
|
|
17
|
-
//#region fields
|
|
18
|
-
this.rules = [];
|
|
19
20
|
}
|
|
20
|
-
|
|
21
|
-
if (cwd === void 0) { cwd = process.cwd(); }
|
|
21
|
+
static Instance(cwd = process.cwd()) {
|
|
22
22
|
cwd = (0, tnp_core_1.crossPlatformPath)(cwd);
|
|
23
23
|
if (!MagicRenamer._instances[cwd]) {
|
|
24
24
|
MagicRenamer._instances[cwd] = new MagicRenamer(cwd);
|
|
25
25
|
}
|
|
26
26
|
return MagicRenamer._instances[cwd];
|
|
27
|
-
}
|
|
27
|
+
}
|
|
28
|
+
//#endregion
|
|
29
|
+
//#region fields
|
|
30
|
+
rules = [];
|
|
28
31
|
//#endregion
|
|
29
32
|
//#region public api
|
|
30
33
|
//#region public api / start
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
if (copyIfFolder === void 0) { copyIfFolder = false; }
|
|
34
|
-
var orgArgs = pArgs;
|
|
34
|
+
start(pArgs, copyIfFolder = false) {
|
|
35
|
+
const orgArgs = pArgs;
|
|
35
36
|
tnp_helpers_1.Helpers.info('\n\n\nRebranding of files');
|
|
36
37
|
// let options = Helpers.cliTool.argsFrom<{}>(pArgs);
|
|
37
38
|
// pArgs = Helpers.cliTool.cleanCommand(pArgs, options);
|
|
@@ -44,44 +45,47 @@ var MagicRenamer = /** @class */ (function () {
|
|
|
44
45
|
// console.log({
|
|
45
46
|
// pArgs
|
|
46
47
|
// })
|
|
47
|
-
tnp_helpers_1.Helpers.error(
|
|
48
|
+
tnp_helpers_1.Helpers.error(`[magic-renamer] Please provide rules:
|
|
49
|
+
example:
|
|
50
|
+
<command> 'my-module -> my-new-modules'
|
|
51
|
+
your args: "${orgArgs}"
|
|
52
|
+
|
|
53
|
+
`);
|
|
48
54
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
tnp_helpers_1.Helpers.info(
|
|
52
|
-
|
|
55
|
+
let folder = this.cwd;
|
|
56
|
+
let files = getAllFilesFoldersRecusively(folder); //filter(f => crossPlatformPath(f) === folder)
|
|
57
|
+
tnp_helpers_1.Helpers.info(`files:\n ${files.map(f => f.replace(folder, '')).join('\n')}`);
|
|
58
|
+
const starCallback = newFolder => {
|
|
53
59
|
if (newFolder) {
|
|
54
60
|
folder = newFolder;
|
|
55
61
|
}
|
|
56
62
|
files = getAllFilesFoldersRecusively(folder);
|
|
57
|
-
|
|
63
|
+
this.changeFiles(folder, files, starCallback);
|
|
58
64
|
};
|
|
59
65
|
this.changeFiles(folder, files, starCallback);
|
|
60
66
|
files = getAllFilesFoldersRecusively(folder, true);
|
|
61
67
|
this.changeContent(files);
|
|
62
68
|
console.log('PROCESS DONE');
|
|
63
|
-
}
|
|
69
|
+
}
|
|
64
70
|
//#endregion
|
|
65
71
|
//#endregion
|
|
66
72
|
//#region private methods
|
|
67
|
-
|
|
68
|
-
if (files === void 0) { files = []; }
|
|
69
|
-
if (isFirstCall === void 0) { isFirstCall = true; }
|
|
73
|
+
changeFiles(folder, files = [], startProcessAgain, isFirstCall = true) {
|
|
70
74
|
if (files.length === 0) {
|
|
71
75
|
return;
|
|
72
76
|
}
|
|
73
|
-
|
|
74
|
-
log.d(
|
|
75
|
-
|
|
76
|
-
for (
|
|
77
|
-
|
|
77
|
+
let fileAbsPath = files.shift();
|
|
78
|
+
log.d(`Processing file: ${tnp_core_1.path.basename(fileAbsPath)}`);
|
|
79
|
+
const fileName = tnp_core_1.path.basename(fileAbsPath);
|
|
80
|
+
for (let index = 0; index < this.rules.length; index++) {
|
|
81
|
+
const rule = this.rules[index];
|
|
78
82
|
// log.d(`Checking rule ${r}`)
|
|
79
83
|
if (rule.applyTo(fileName) && !rule.includes(fileName)) {
|
|
80
|
-
log.d(
|
|
81
|
-
|
|
84
|
+
log.d(`Apply to: ${fileName}`);
|
|
85
|
+
const destChangedToNewName = (0, tnp_core_1.crossPlatformPath)([
|
|
82
86
|
tnp_core_1.path.dirname(fileAbsPath),
|
|
83
87
|
rule.replace({
|
|
84
|
-
fileName
|
|
88
|
+
fileName,
|
|
85
89
|
orgString: fileName,
|
|
86
90
|
replaceallPossibliliteis: false,
|
|
87
91
|
}),
|
|
@@ -95,39 +99,38 @@ var MagicRenamer = /** @class */ (function () {
|
|
|
95
99
|
tnp_helpers_1.Helpers.move(fileAbsPath, destChangedToNewName);
|
|
96
100
|
}
|
|
97
101
|
else {
|
|
98
|
-
console.warn(
|
|
102
|
+
console.warn(`Trying to move into same dest ${destChangedToNewName}`);
|
|
99
103
|
}
|
|
100
104
|
}
|
|
101
105
|
fileAbsPath = destChangedToNewName;
|
|
102
106
|
if (tnp_core_1.path.extname(destChangedToNewName) === '') {
|
|
103
107
|
files.length = 0;
|
|
104
|
-
log.d(
|
|
108
|
+
log.d(`Starting process again from: ${destChangedToNewName}`);
|
|
105
109
|
startProcessAgain(isFirstCall ? destChangedToNewName : void 0);
|
|
106
110
|
return false;
|
|
107
111
|
}
|
|
108
112
|
}
|
|
109
113
|
else {
|
|
110
|
-
log.d(
|
|
114
|
+
log.d(`Not apply to: ${fileName}`);
|
|
111
115
|
}
|
|
112
116
|
}
|
|
113
117
|
return this.changeFiles(folder, tnp_core_1._.cloneDeep(files), startProcessAgain, false);
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
if (files === void 0) { files = []; }
|
|
118
|
+
}
|
|
119
|
+
changeContent(files = []) {
|
|
117
120
|
if (files.length === 0) {
|
|
118
121
|
return;
|
|
119
122
|
}
|
|
120
|
-
|
|
121
|
-
log.d(
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
for (
|
|
125
|
-
|
|
126
|
-
log.d(
|
|
123
|
+
const fileAbsPath = files.shift() || '';
|
|
124
|
+
log.d(`Processing content of file: ${tnp_core_1.path.basename(fileAbsPath)}`);
|
|
125
|
+
const fileContent = tnp_helpers_1.Helpers.readFile(fileAbsPath) || '';
|
|
126
|
+
const rules = this.rules;
|
|
127
|
+
for (let index = 0; index < rules.length; index++) {
|
|
128
|
+
const r = rules[index];
|
|
129
|
+
log.d(`Checking rule ${r}`);
|
|
127
130
|
if (r.applyTo(fileContent)) {
|
|
128
|
-
log.d(
|
|
131
|
+
log.d(`Write file: ${fileAbsPath}`);
|
|
129
132
|
// shouldDebug(fileAbsPath) && console.log(fileContent)
|
|
130
|
-
|
|
133
|
+
const replaced = r.replace({
|
|
131
134
|
fileName: fileAbsPath,
|
|
132
135
|
orgString: fileContent,
|
|
133
136
|
replaceallPossibliliteis: true,
|
|
@@ -136,33 +139,26 @@ var MagicRenamer = /** @class */ (function () {
|
|
|
136
139
|
tnp_helpers_1.Helpers.writeFile(fileAbsPath, replaced);
|
|
137
140
|
}
|
|
138
141
|
else {
|
|
139
|
-
log.d(
|
|
142
|
+
log.d(`Not apply to: ${fileAbsPath}`);
|
|
140
143
|
}
|
|
141
144
|
}
|
|
142
145
|
this.changeContent(files);
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
//#region singleton
|
|
146
|
-
MagicRenamer._instances = {};
|
|
147
|
-
return MagicRenamer;
|
|
148
|
-
}());
|
|
146
|
+
}
|
|
147
|
+
}
|
|
149
148
|
exports.MagicRenamer = MagicRenamer;
|
|
150
149
|
//#region @backend
|
|
151
|
-
function getAllFilesFoldersRecusively(folder, filesOnly) {
|
|
152
|
-
|
|
153
|
-
var files = tnp_core_1.glob.sync("".concat(folder, "/**/*.*"));
|
|
150
|
+
function getAllFilesFoldersRecusively(folder, filesOnly = false) {
|
|
151
|
+
let files = tnp_core_1.glob.sync(`${folder}/**/*.*`);
|
|
154
152
|
if (!filesOnly) {
|
|
155
|
-
|
|
156
|
-
files.forEach(
|
|
157
|
-
|
|
158
|
-
|
|
153
|
+
let dirs = [folder];
|
|
154
|
+
files.forEach(filePath => {
|
|
155
|
+
const p = (0, tnp_core_1.crossPlatformPath)(tnp_core_1.path.dirname(filePath));
|
|
156
|
+
dirs = dirs.concat(tnp_core_1.fse
|
|
159
157
|
.readdirSync(p)
|
|
160
|
-
.filter(
|
|
161
|
-
|
|
162
|
-
})
|
|
163
|
-
.map(function (f) { return (0, tnp_core_1.crossPlatformPath)(tnp_core_1.path.join(p, f)); }));
|
|
158
|
+
.filter(f => tnp_core_1.fse.statSync((0, tnp_core_1.crossPlatformPath)(tnp_core_1.path.join(p, f))).isDirectory())
|
|
159
|
+
.map(f => (0, tnp_core_1.crossPlatformPath)(tnp_core_1.path.join(p, f))));
|
|
164
160
|
});
|
|
165
|
-
files = files.concat(
|
|
161
|
+
files = files.concat(dirs);
|
|
166
162
|
files = tnp_helpers_1.Helpers.arrays.uniqArray(files);
|
|
167
163
|
}
|
|
168
164
|
return files.sort();
|
package/lib/magic-renamer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"magic-renamer.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAAA,iBAAiB;AACjB,
|
|
1
|
+
{"version":3,"file":"magic-renamer.js","sourceRoot":"","sources":["/Users/dfilipiak/npm/taon-dev/magic-renamer/src/lib/magic-renamer.ts"],"names":[],"mappings":"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"}
|
package/lib/rename-rule.js
CHANGED
|
@@ -1,104 +1,104 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.RenameRule = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
this.from = from;
|
|
13
|
-
this.to = to;
|
|
14
|
-
this.toString = function () {
|
|
15
|
-
return "".concat(_this.from, " => ").concat(_this.to);
|
|
16
|
-
};
|
|
17
|
-
this.fromWhiteSpaceReplaced = from.trim().toLowerCase().replace(/\W/g, ' ');
|
|
18
|
-
this.toWhiteSpaceReplaced = to.trim().toLowerCase().replace(/\W/g, ' ');
|
|
19
|
-
}
|
|
20
|
-
RenameRule.from = function (pArgs) {
|
|
4
|
+
const tnp_helpers_1 = require("tnp-helpers");
|
|
5
|
+
const tnp_core_1 = require("tnp-core");
|
|
6
|
+
const ng2_logger_1 = require("ng2-logger");
|
|
7
|
+
const log = ng2_logger_1.Log.create('magic-renemer', ng2_logger_1.Level.__NOTHING);
|
|
8
|
+
class RenameRule {
|
|
9
|
+
from;
|
|
10
|
+
to;
|
|
11
|
+
static from(pArgs) {
|
|
21
12
|
pArgs = pArgs.replace(/\=\>/g, '->');
|
|
22
|
-
|
|
13
|
+
let args = pArgs.split(/(\'|\")(\ )+(\'|\")/).filter(f => !!f);
|
|
23
14
|
log.d('---- Rules ----');
|
|
24
|
-
args.forEach(
|
|
15
|
+
args.forEach(a => {
|
|
25
16
|
log.d(a);
|
|
26
17
|
});
|
|
27
18
|
log.d('---------------');
|
|
28
19
|
return args
|
|
29
|
-
.filter(
|
|
30
|
-
.map(
|
|
31
|
-
|
|
20
|
+
.filter(a => a.search('->') !== -1)
|
|
21
|
+
.map(a => {
|
|
22
|
+
const [from, to] = a.split('->');
|
|
32
23
|
if (!from || !to) {
|
|
33
|
-
tnp_helpers_1.Helpers.error(
|
|
24
|
+
tnp_helpers_1.Helpers.error(`Incorrect rule
|
|
25
|
+
"${from}" -> "${to}"
|
|
26
|
+
please follow pattern: 'test name -> my new name '`, false, true);
|
|
34
27
|
}
|
|
35
28
|
return new RenameRule(from.trim(), to.trim());
|
|
36
29
|
});
|
|
37
|
-
}
|
|
38
|
-
|
|
30
|
+
}
|
|
31
|
+
fromWhiteSpaceReplaced;
|
|
32
|
+
toWhiteSpaceReplaced;
|
|
33
|
+
constructor(from, to) {
|
|
34
|
+
this.from = from;
|
|
35
|
+
this.to = to;
|
|
36
|
+
this.fromWhiteSpaceReplaced = from.trim().toLowerCase().replace(/\W/g, ' ');
|
|
37
|
+
this.toWhiteSpaceReplaced = to.trim().toLowerCase().replace(/\W/g, ' ');
|
|
38
|
+
}
|
|
39
|
+
applyTo(s) {
|
|
39
40
|
s = s.trim().toLowerCase().replace(/\W/g, '');
|
|
40
|
-
|
|
41
|
+
const res = s.search(this.from.replace(/\W/g, '')) !== -1;
|
|
41
42
|
return res;
|
|
43
|
+
}
|
|
44
|
+
toString = () => {
|
|
45
|
+
return `${this.from} => ${this.to}`;
|
|
42
46
|
};
|
|
43
|
-
|
|
44
|
-
return !tnp_core_1._.isUndefined(this.combinations.find(
|
|
45
|
-
|
|
47
|
+
includes(orgString) {
|
|
48
|
+
return !tnp_core_1._.isUndefined(this.combinations.find(v => {
|
|
49
|
+
const [from, to] = v;
|
|
46
50
|
return orgString === to;
|
|
47
51
|
}));
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
},
|
|
73
|
-
enumerable: false,
|
|
74
|
-
configurable: true
|
|
75
|
-
});
|
|
52
|
+
}
|
|
53
|
+
get combinations() {
|
|
54
|
+
const thisTo = this.toWhiteSpaceReplaced;
|
|
55
|
+
const thisFrom = this.fromWhiteSpaceReplaced;
|
|
56
|
+
return [
|
|
57
|
+
// TODO 'rs.asdasd-asd-A.'
|
|
58
|
+
[
|
|
59
|
+
tnp_core_1.UtilsString.kebabCaseNoSplitNumbers(thisFrom),
|
|
60
|
+
tnp_core_1.UtilsString.kebabCaseNoSplitNumbers(thisTo),
|
|
61
|
+
], // my-entity => hello1-kitty
|
|
62
|
+
[tnp_core_1._.kebabCase(thisFrom), tnp_core_1._.kebabCase(thisTo)], // my-entity => hello-kitty
|
|
63
|
+
[tnp_core_1._.camelCase(thisFrom), tnp_core_1._.camelCase(thisTo)], // myEntity => helloKitty
|
|
64
|
+
[tnp_core_1._.upperFirst(tnp_core_1._.camelCase(thisFrom)), tnp_core_1._.upperFirst(tnp_core_1._.camelCase(thisTo))], // MyEntity => HelloKitty
|
|
65
|
+
[tnp_core_1._.snakeCase(thisFrom), tnp_core_1._.snakeCase(thisTo)], // my_entity => hello_kitty
|
|
66
|
+
[tnp_core_1._.snakeCase(thisFrom).toUpperCase(), tnp_core_1._.snakeCase(thisTo).toUpperCase()], // MY_ENTITY => HELLO_KITTY
|
|
67
|
+
[tnp_core_1._.startCase(thisFrom), tnp_core_1._.startCase(thisTo)], // My Entity => Hello Kitty
|
|
68
|
+
[tnp_core_1._.upperCase(thisFrom), tnp_core_1._.upperCase(thisTo)], // MY ENTITY => HELLO KITTY
|
|
69
|
+
[tnp_core_1._.lowerCase(thisFrom), tnp_core_1._.lowerCase(thisTo)], // my entity => hello kitty
|
|
70
|
+
[
|
|
71
|
+
tnp_core_1._.camelCase(thisFrom).toLocaleLowerCase(),
|
|
72
|
+
tnp_core_1._.camelCase(thisTo).toLocaleLowerCase(),
|
|
73
|
+
], // myentity => hellokitty
|
|
74
|
+
];
|
|
75
|
+
}
|
|
76
76
|
/**
|
|
77
77
|
* @param orgString input string
|
|
78
78
|
* @returns string with all possible combinations replaced
|
|
79
79
|
*/
|
|
80
|
-
|
|
80
|
+
replaceInString(orgString) {
|
|
81
81
|
return this.replace({
|
|
82
|
-
orgString
|
|
82
|
+
orgString,
|
|
83
83
|
replaceallPossibliliteis: true,
|
|
84
84
|
});
|
|
85
|
-
}
|
|
85
|
+
}
|
|
86
86
|
/**
|
|
87
87
|
*
|
|
88
88
|
* @param orgString (file name OR file content)
|
|
89
89
|
* @param replaceallPossibliliteis when changin file notent (not name only)
|
|
90
90
|
* @returns
|
|
91
91
|
*/
|
|
92
|
-
|
|
93
|
-
|
|
92
|
+
replace(options) {
|
|
93
|
+
let { fileName, orgString, replaceallPossibliliteis } = options;
|
|
94
94
|
replaceallPossibliliteis = !!replaceallPossibliliteis;
|
|
95
|
-
|
|
96
|
-
for (
|
|
97
|
-
|
|
98
|
-
|
|
95
|
+
const combinations = this.combinations;
|
|
96
|
+
for (let index = 0; index < combinations.length; index++) {
|
|
97
|
+
const v = combinations[index];
|
|
98
|
+
let [from, to] = v;
|
|
99
99
|
if (orgString.search(from) !== -1) {
|
|
100
|
-
|
|
101
|
-
log.i(
|
|
100
|
+
const regex = new RegExp(tnp_helpers_1.Helpers.escapeStringForRegEx(from));
|
|
101
|
+
log.i(`apply! "${regex.source}" to file ${fileName} => "${to}"`);
|
|
102
102
|
orgString = orgString.replace(new RegExp(tnp_helpers_1.Helpers.escapeStringForRegEx(from), 'g'), to);
|
|
103
103
|
if (!replaceallPossibliliteis) {
|
|
104
104
|
return orgString;
|
|
@@ -106,8 +106,7 @@ var RenameRule = /** @class */ (function () {
|
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
return orgString;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
}());
|
|
109
|
+
}
|
|
110
|
+
}
|
|
112
111
|
exports.RenameRule = RenameRule;
|
|
113
112
|
//# sourceMappingURL=rename-rule.js.map
|
package/lib/rename-rule.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rename-rule.js","sourceRoot":"","sources":[""],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rename-rule.js","sourceRoot":"","sources":["/Users/dfilipiak/npm/taon-dev/magic-renamer/src/lib/rename-rule.ts"],"names":[],"mappings":";;;AAAA,6CAAsC;AACtC,uCAA0C;AAC1C,2CAAwC;AACxC,MAAM,GAAG,GAAG,gBAAG,CAAC,MAAM,CAAC,eAAe,EAAE,kBAAK,CAAC,SAAS,CAAC,CAAC;AAEzD,MAAa,UAAU;IA6BH;IACA;IA7BlB,MAAM,CAAC,IAAI,CAAC,KAAa;QACvB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAa,CAAC;QAC3E,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;QACzB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACf,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;QACzB,OAAO,IAAI;aACR,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAClC,GAAG,CAAC,CAAC,CAAC,EAAE;YACP,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBACjB,qBAAO,CAAC,KAAK,CACX;WACD,IAAI,SAAS,EAAE;2DACiC,EAC/C,KAAK,EACL,IAAI,CACL,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACP,CAAC;IAEe,sBAAsB,CAAS;IAC/B,oBAAoB,CAAS;IAC7C,YACkB,IAAY,EACZ,EAAU;QADV,SAAI,GAAJ,IAAI,CAAQ;QACZ,OAAE,GAAF,EAAE,CAAQ;QAE1B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC5E,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,CAAC,CAAS;QACf,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9C,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1D,OAAO,GAAG,CAAC;IACb,CAAC;IAED,QAAQ,GAAG,GAAG,EAAE;QACd,OAAO,GAAG,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC;IACtC,CAAC,CAAC;IAEF,QAAQ,CAAC,SAAS;QAChB,OAAO,CAAC,YAAC,CAAC,WAAW,CACnB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YACzB,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YACrB,OAAO,SAAS,KAAK,EAAE,CAAC;QAC1B,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,IAAI,YAAY;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAC7C,OAAO;YACL,0BAA0B;YAC1B;gBACE,sBAAW,CAAC,uBAAuB,CAAC,QAAQ,CAAC;gBAC7C,sBAAW,CAAC,uBAAuB,CAAC,MAAM,CAAC;aAC5C,EAAE,4BAA4B;YAC/B,CAAC,YAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,2BAA2B;YACzE,CAAC,YAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,yBAAyB;YACvE,CAAC,YAAC,CAAC,UAAU,CAAC,YAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,YAAC,CAAC,UAAU,CAAC,YAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,yBAAyB;YACnG,CAAC,YAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,2BAA2B;YACzE,CAAC,YAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,YAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,2BAA2B;YACrG,CAAC,YAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,2BAA2B;YACzE,CAAC,YAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,2BAA2B;YACzE,CAAC,YAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,2BAA2B;YACzE;gBACE,YAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,iBAAiB,EAAE;gBACzC,YAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,iBAAiB,EAAE;aACxC,EAAE,yBAAyB;SAC7B,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,SAAiB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC;YAClB,SAAS;YACT,wBAAwB,EAAE,IAAI;SAC/B,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,OAAO,CAAC,OAOP;QACC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,wBAAwB,EAAE,GAAG,OAAO,CAAC;QAChE,wBAAwB,GAAG,CAAC,CAAC,wBAAwB,CAAC;QACtD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YACzD,MAAM,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YACnB,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBAClC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,qBAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7D,GAAG,CAAC,CAAC,CAAC,WAAW,KAAK,CAAC,MAAM,aAAa,QAAQ,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACjE,SAAS,GAAG,SAAS,CAAC,OAAO,CAC3B,IAAI,MAAM,CAAC,qBAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EACnD,EAAE,CACH,CAAC;gBACF,IAAI,CAAC,wBAAwB,EAAE,CAAC;oBAC9B,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA5HD,gCA4HC"}
|