express-fix-any-js 1.5.3 → 1.7.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.
Files changed (33) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +118 -79
  3. package/bin/cli.js +11 -11
  4. package/bin/core/getLatestVersion.js +12 -12
  5. package/bin/core/loadRunner.js +8 -8
  6. package/bin/{v5 → v6}/UpdateJs/common/AlterFile/buildUpdatedContent.js +26 -26
  7. package/bin/v6/UpdateJs/common/AlterFile/checkDuplicate.js +14 -0
  8. package/bin/{v5 → v6}/UpdateJs/common/AlterFile/findInsertIndex.js +29 -29
  9. package/bin/{v4 → v6}/UpdateJs/common/AlterFile/index.js +54 -54
  10. package/bin/{v4 → v6}/UpdateJs/common/readFile.js +7 -7
  11. package/bin/{v5 → v6}/UpdateJs/common/writeFile.js +9 -9
  12. package/bin/{v5 → v6}/UpdateJs/index.js +29 -29
  13. package/bin/{v5 → v6}/UpdateJs/validateCheckLines.js +30 -30
  14. package/bin/{v4 → v6}/core/parseInput.js +12 -12
  15. package/bin/{v5 → v6}/core/showUsage.js +49 -49
  16. package/bin/{v4 → v6}/start.js +17 -17
  17. package/bin/{v4 → v7}/UpdateJs/common/AlterFile/buildUpdatedContent.js +26 -18
  18. package/bin/v7/UpdateJs/common/AlterFile/checkDuplicate.js +14 -0
  19. package/bin/{v4 → v7}/UpdateJs/common/AlterFile/findInsertIndex.js +29 -29
  20. package/bin/{v5 → v7}/UpdateJs/common/AlterFile/index.js +60 -54
  21. package/bin/{v5 → v7}/UpdateJs/common/readFile.js +7 -7
  22. package/bin/{v4 → v7}/UpdateJs/common/writeFile.js +9 -9
  23. package/bin/v7/UpdateJs/index.js +30 -0
  24. package/bin/v7/UpdateJs/validateCheckLines.js +31 -0
  25. package/bin/{v5 → v7}/core/parseInput.js +12 -12
  26. package/bin/{v4 → v7}/core/showUsage.js +49 -49
  27. package/bin/{v5 → v7}/start.js +17 -17
  28. package/index.js +21 -11
  29. package/package.json +35 -33
  30. package/bin/v4/UpdateJs/checkLines.json +0 -18
  31. package/bin/v4/UpdateJs/common/AlterFile/checkDuplicate.js +0 -21
  32. package/bin/v4/UpdateJs/index.js +0 -56
  33. package/bin/v5/UpdateJs/common/AlterFile/checkDuplicate.js +0 -21
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 KeshavSoft
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to do so, subject to the
10
- following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 KeshavSoft
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to do so, subject to the
10
+ following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,79 +1,118 @@
1
- # EndPoints Fix
2
-
3
- Utility for automatically maintaining Express route files.
4
- started git actions also to https://github.com/keshavsoft/express-fix-endpoints-get-js,
5
- also started actions
6
-
7
- ## Purpose
8
-
9
- This module updates `end-points.js` files by:
10
-
11
- * Adding new route handlers
12
- * Preventing duplicate routes
13
- * Preserving route order
14
- * Maintaining consistent formatting
15
-
16
- ---
17
-
18
- ## Generated Structure
19
-
20
- ```js
21
- import express from "express";
22
-
23
- const tableName = "BillsTable";
24
-
25
- const router = express.Router();
26
-
27
- router.post("/Alter", express.json(), (req, res) =>
28
- AlterFunc({ req, res, inTablePath: tablePath })
29
- );
30
-
31
- export { router };
32
- ```
33
-
34
- ---
35
-
36
- ## Rules
37
-
38
- ### First Route
39
-
40
- When the first route is inserted:
41
-
42
- * Add one blank line after `const router = express.Router();`
43
- * Add one blank line before `export { router };`
44
-
45
- Example:
46
-
47
- ```js
48
- const router = express.Router();
49
-
50
- router.post("/Alter", express.json(), handler);
51
-
52
- export { router };
53
- ```
54
-
55
- ### Additional Routes
56
-
57
- New routes are always appended after the last route.
58
-
59
- Example:
60
-
61
- ```js
62
- router.post("/Alter", express.json(), handler);
63
- router.post("/Alter1", express.json(), handler);
64
- router.post("/Alter2", express.json(), handler);
65
- ```
66
-
67
- No blank lines are inserted between routes.
68
-
69
- ---
70
-
71
- ## Duplicate Protection
72
-
73
- If a route already exists, no new route is added.
74
-
75
- ---
76
-
77
- ## Goal
78
-
79
- Produce clean and predictable Express route files automatically.
1
+ # express-fix-any-js 🚀
2
+
3
+ > **Instantly repair, structure, and align Express.js routing files with automated idempotency & formatting safeguards.**
4
+
5
+ [![npm version](https://img.shields.io/npm/v/express-fix-any-js.svg?style=flat-square&color=38bdf8)](https://www.npmjs.com/package/express-fix-any-js)
6
+ [![license](https://img.shields.io/npm/l/express-fix-any-js.svg?style=flat-square&color=34d399)](LICENSE)
7
+ [![GitHub workflows](https://img.shields.io/github/actions/workflow/status/keshavsoft/express-fix-any-js/npm-publish.yml?style=flat-square&label=workflows)](https://github.com/keshavsoft/express-fix-any-js/actions)
8
+
9
+ ---
10
+
11
+ ## 📖 Overview
12
+
13
+ `express-fix-any-js` is a lightweight, high-performance JS AST and file modifier utility. It automatically injects missing Express.js route declarations, import statements, and export configurations into your JavaScript files while ensuring complete protection against code duplication.
14
+
15
+ This module acts as the foundation layer for the **KeshavSoft API Generation Suite**, dynamically structuring routes generated via CLI or VS Code extensions.
16
+
17
+ ---
18
+
19
+ ## ✨ Features
20
+
21
+ * **🔒 Duplicate Prevention (Idempotency)**: Checks files before altering them. If a route or pattern already exists, it skips execution silently to avoid code corruption.
22
+ * **📐 Strict Route Formatting**:
23
+ * Inserts clean line spaces after `express.Router()` initialization.
24
+ * Maintains zero-line spacing between consecutive route definitions.
25
+ * Appends spacing cleanly before the `export` keyword.
26
+ * **⚡ Multiple File Versions (V1 - V6)**: Supports legacy configuration modifications alongside cutting-edge AST-based insertions.
27
+ * **🛠️ Developer-First Diagnostics**: Provides clear inline logging of file updates and duplicate line match warnings.
28
+
29
+ ---
30
+
31
+ ## 📁 Repository Integration Map
32
+
33
+ `express-fix-any-js` is part of a larger cascading developer ecosystem:
34
+
35
+ ```mermaid
36
+ graph TD
37
+ ext["vs-code-ext-express-api-gen-get-actions<br/><i>VS Code Extension</i>"]
38
+
39
+ gen["kschema-fs-api-gen-get-actions<br/><i>API Generator Actions</i>"]
40
+
41
+ endpoints["express-fix-endpoints-get-js<br/><i>Endpoint Logic Builder</i>"]
42
+
43
+ anyjs["express-fix-any-js<br/><i>This Core Utility</i>"]
44
+
45
+ ext -->|delegates to| gen
46
+ gen -->|invokes| endpoints
47
+ endpoints -->|relies on| anyjs
48
+ ```
49
+
50
+ ---
51
+
52
+ ## 🚀 Quick Start
53
+
54
+ ### Installation
55
+
56
+ ```bash
57
+ npm install express-fix-any-js
58
+ ```
59
+
60
+ ### Programmatic Usage
61
+
62
+ You can use the core `alterFile` function to modify local routes files safely:
63
+
64
+ ```javascript
65
+ import alterFile from 'express-fix-any-js/bin/v6/UpdateJs/common/AlterFile/index.js';
66
+
67
+ alterFile({
68
+ jsFilePath: './routes/end-points.js',
69
+ toInsertLine: 'router.post("/Create", express.json(), CreateFunc);',
70
+ duplicationCheck: 'router.post("/Create"',
71
+ insertAfter: [
72
+ 'const router = express.Router();',
73
+ 'router.post("/Alter"' // Inserts immediately after this line if found, otherwise after Router init
74
+ ],
75
+ showLog: true
76
+ });
77
+ ```
78
+
79
+ ---
80
+
81
+ ## 📜 Structuring Rules
82
+
83
+ The utility operates under strict structural rules to preserve route aesthetics:
84
+
85
+ ### 1. First Route Placement
86
+ When the first route is inserted into an empty routing structure, the file is formatted with breathing space:
87
+
88
+ ```javascript
89
+ const router = express.Router();
90
+
91
+ router.post("/Alter", express.json(), handler);
92
+
93
+ export { router };
94
+ ```
95
+
96
+ ### 2. Multi-Route Appending
97
+ Subsequent routes are appended directly after the last matching route with no empty line spacing between them:
98
+
99
+ ```javascript
100
+ router.post("/Alter", express.json(), handler);
101
+ router.post("/Alter1", express.json(), handler);
102
+ router.post("/Alter2", express.json(), handler);
103
+ ```
104
+
105
+ ---
106
+
107
+ ## 🛠️ Developer & API Reference
108
+
109
+ For detailed developer notes, architectural mappings, and code analyses:
110
+ * [Developer Docs Home](./docs/index.html)
111
+ * [Code Style & Readability Analysis](./docs/code_style_and_readability.md)
112
+ * [AlterFile Workflow Analysis](./docs/alter_file_analysis.md)
113
+
114
+ ---
115
+
116
+ ## ⚖️ License
117
+
118
+ MIT License. Designed with ❤️ by [KeshavSoft](https://github.com/keshavsoft).
package/bin/cli.js CHANGED
@@ -1,12 +1,12 @@
1
- #!/usr/bin/env node
2
-
3
- import getLatestVersion from "./core/getLatestVersion.js";
4
- import loadRunner from "./core/loadRunner.js";
5
-
6
- const run = async ({ }) => {
7
- const version = getLatestVersion();
8
- const runner = await loadRunner(version);
9
- await runner({});
10
- };
11
-
1
+ #!/usr/bin/env node
2
+
3
+ import getLatestVersion from "./core/getLatestVersion.js";
4
+ import loadRunner from "./core/loadRunner.js";
5
+
6
+ const run = async ({ }) => {
7
+ const version = getLatestVersion();
8
+ const runner = await loadRunner(version);
9
+ await runner({});
10
+ };
11
+
12
12
  run({}).then();
@@ -1,13 +1,13 @@
1
- import fs from "fs";
2
- import path from "path";
3
- import { fileURLToPath } from "url";
4
-
5
- const __dirname = path.dirname(fileURLToPath(import.meta.url));
6
-
7
- export default function getLatestVersion() {
8
- const versions = fs.readdirSync(path.join(__dirname, ".."))
9
- .filter(n => /^v\d+$/.test(n))
10
- .sort((a, b) => parseInt(a.slice(1)) - parseInt(b.slice(1)));
11
-
12
- return versions.at(-1);
1
+ import fs from "fs";
2
+ import path from "path";
3
+ import { fileURLToPath } from "url";
4
+
5
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
6
+
7
+ export default function getLatestVersion() {
8
+ const versions = fs.readdirSync(path.join(__dirname, ".."))
9
+ .filter(n => /^v\d+$/.test(n))
10
+ .sort((a, b) => parseInt(a.slice(1)) - parseInt(b.slice(1)));
11
+
12
+ return versions.at(-1);
13
13
  };
@@ -1,9 +1,9 @@
1
- export default async function loadRunner(version) {
2
- const mod = await import(`../${version}/start.js`);
3
-
4
- if (typeof mod.default !== "function") {
5
- throw new Error(`Invalid start.js in ${version}`);
6
- }
7
-
8
- return mod.default;
1
+ export default async function loadRunner(version) {
2
+ const mod = await import(`../${version}/start.js`);
3
+
4
+ if (typeof mod.default !== "function") {
5
+ throw new Error(`Invalid start.js in ${version}`);
6
+ }
7
+
8
+ return mod.default;
9
9
  };
@@ -1,27 +1,27 @@
1
- const startFunc = ({
2
- content,
3
- insertInfo,
4
- toInsertLine,
5
- insertAfter
6
- }) => {
7
- const before = content.slice(0, insertInfo.index);
8
-
9
- const isFirstInsert =
10
- insertInfo.matchedPattern === insertAfter[insertAfter.length - 1];
11
-
12
- if (Array.isArray(toInsertLine)) {
13
- return before +
14
- (isFirstInsert ? "\n" : "") +
15
- toInsertLine.join("\n") +
16
- "\n" +
17
- content.slice(insertInfo.index);
18
- }
19
-
20
- return before +
21
- (isFirstInsert ? "\n" : "") +
22
- toInsertLine +
23
- "\n" +
24
- content.slice(insertInfo.index);
25
- };
26
-
1
+ const startFunc = ({
2
+ content,
3
+ insertInfo,
4
+ toInsertLine,
5
+ insertAfter
6
+ }) => {
7
+ const before = content.slice(0, insertInfo.index);
8
+
9
+ const isFirstInsert =
10
+ insertInfo.matchedPattern === insertAfter[insertAfter.length - 1];
11
+
12
+ if (Array.isArray(toInsertLine)) {
13
+ return before +
14
+ (isFirstInsert ? "\n" : "") +
15
+ toInsertLine.join("\n") +
16
+ "\n" +
17
+ content.slice(insertInfo.index);
18
+ }
19
+
20
+ return before +
21
+ (isFirstInsert ? "\n" : "") +
22
+ toInsertLine +
23
+ "\n" +
24
+ content.slice(insertInfo.index);
25
+ };
26
+
27
27
  export default startFunc;
@@ -0,0 +1,14 @@
1
+ import { isImportPresent } from "express-check-any-for-import";
2
+
3
+ const checkUseDuplicate = ({ inContent, inFilePath, inSearchText }) => {
4
+ const cleanText = inSearchText.match(/['"]([^'"]+)['"]/)?.[1] || inSearchText;
5
+ const found = isImportPresent(inContent, cleanText) || inContent.includes(inSearchText);
6
+
7
+ return {
8
+ found,
9
+ filePath: inFilePath,
10
+ lineNumber: found ? inContent.split("\n").findIndex(line => line.includes(cleanText)) + 1 : null
11
+ };
12
+ };
13
+
14
+ export default checkUseDuplicate;
@@ -1,30 +1,30 @@
1
- const findInsertIndex = ({
2
- inContent,
3
- inPatterns = []
4
- }) => {
5
- const lines = inContent.split("\n");
6
-
7
- let lineNumber = -1;
8
- let matchedPattern = null;
9
-
10
- lines.forEach((line, index) => {
11
- const pattern = inPatterns.find(item => line.includes(item));
12
-
13
- if (pattern) {
14
- lineNumber = index;
15
- matchedPattern = pattern;
16
- };
17
- });
18
-
19
- return {
20
- index: lineNumber === -1
21
- ? -1
22
- : lines
23
- .slice(0, lineNumber + 1)
24
- .join("\n")
25
- .length + 1,
26
- matchedPattern
27
- };
28
- };
29
-
1
+ const findInsertIndex = ({
2
+ inContent,
3
+ inPatterns = []
4
+ }) => {
5
+ const lines = inContent.split("\n");
6
+
7
+ let lineNumber = -1;
8
+ let matchedPattern = null;
9
+
10
+ lines.forEach((line, index) => {
11
+ const pattern = inPatterns.find(item => line.includes(item));
12
+
13
+ if (pattern) {
14
+ lineNumber = index;
15
+ matchedPattern = pattern;
16
+ };
17
+ });
18
+
19
+ return {
20
+ index: lineNumber === -1
21
+ ? -1
22
+ : lines
23
+ .slice(0, lineNumber + 1)
24
+ .join("\n")
25
+ .length + 1,
26
+ matchedPattern
27
+ };
28
+ };
29
+
30
30
  export default findInsertIndex;
@@ -1,55 +1,55 @@
1
- import readFile from "../readFile.js";
2
- import checkDuplicate from "./checkDuplicate.js";
3
- import findInsertIndex from "./findInsertIndex.js";
4
- import writeFile from "../writeFile.js";
5
-
6
- import buildUpdatedContent from "./buildUpdatedContent.js";
7
-
8
- const locateInsertPoint = ({ content, insertAfter }) => {
9
- return findInsertIndex({
10
- inContent: content,
11
- inPatterns: insertAfter
12
- });
13
- };
14
-
15
- const alterFile = ({
16
- jsFilePath,
17
- toInsertLine,
18
- duplicationCheck,
19
- insertAfter = [],
20
- showLog = false
21
- }) => {
22
- const content = readFile(jsFilePath);
23
-
24
- const duplicateInfo = checkDuplicate({
25
- inContent: content,
26
- inFilePath: jsFilePath,
27
- inSearchText: duplicationCheck
28
- });
29
-
30
- if (duplicateInfo.found) {
31
- if (showLog) {
32
- console.log(
33
- `Duplicate found at line ${duplicateInfo.lineNumber}`
34
- );
35
- }
36
-
37
- return duplicateInfo;
38
- };
39
-
40
- const insertInfo = locateInsertPoint({
41
- content,
42
- insertAfter
43
- });
44
-
45
- const updated = buildUpdatedContent({
46
- content,
47
- insertInfo,
48
- toInsertLine,
49
- insertAfter
50
- });
51
-
52
- writeFile(jsFilePath, updated);
53
- };
54
-
1
+ import readFile from "../readFile.js";
2
+ import checkDuplicate from "./checkDuplicate.js";
3
+ import findInsertIndex from "./findInsertIndex.js";
4
+ import writeFile from "../writeFile.js";
5
+
6
+ import buildUpdatedContent from "./buildUpdatedContent.js";
7
+
8
+ const locateInsertPoint = ({ content, insertAfter }) => {
9
+ return findInsertIndex({
10
+ inContent: content,
11
+ inPatterns: insertAfter
12
+ });
13
+ };
14
+
15
+ const alterFile = ({
16
+ jsFilePath,
17
+ toInsertLine,
18
+ duplicationCheck,
19
+ insertAfter = [],
20
+ showLog = false
21
+ }) => {
22
+ const content = readFile(jsFilePath);
23
+
24
+ const duplicateInfo = checkDuplicate({
25
+ inContent: content,
26
+ inFilePath: jsFilePath,
27
+ inSearchText: duplicationCheck
28
+ });
29
+
30
+ if (duplicateInfo.found) {
31
+ if (showLog) {
32
+ console.log(
33
+ `Duplicate found at line ${duplicateInfo.lineNumber}`
34
+ );
35
+ }
36
+
37
+ return duplicateInfo;
38
+ };
39
+
40
+ const insertInfo = locateInsertPoint({
41
+ content,
42
+ insertAfter
43
+ });
44
+
45
+ const updated = buildUpdatedContent({
46
+ content,
47
+ insertInfo,
48
+ toInsertLine,
49
+ insertAfter
50
+ });
51
+
52
+ writeFile(jsFilePath, updated);
53
+ };
54
+
55
55
  export default alterFile;
@@ -1,8 +1,8 @@
1
- import fs from "fs";
2
-
3
- const readFile = (inAppJsPath) => {
4
- const localPath = inAppJsPath;
5
- return fs.readFileSync(localPath, "utf-8");
6
- };
7
-
1
+ import fs from "fs";
2
+
3
+ const readFile = (inAppJsPath) => {
4
+ const localPath = inAppJsPath;
5
+ return fs.readFileSync(localPath, "utf-8");
6
+ };
7
+
8
8
  export default readFile;
@@ -1,10 +1,10 @@
1
- import fs from "fs";
2
-
3
- const writeFile = (inAppJsPath, inContent) => {
4
- const localPath = inAppJsPath;
5
- const localContent = inContent;
6
-
7
- fs.writeFileSync(localPath, localContent);
8
- };
9
-
1
+ import fs from "fs";
2
+
3
+ const writeFile = (inAppJsPath, inContent) => {
4
+ const localPath = inAppJsPath;
5
+ const localContent = inContent;
6
+
7
+ fs.writeFileSync(localPath, localContent);
8
+ };
9
+
10
10
  export default writeFile;
@@ -1,30 +1,30 @@
1
- import alterFile from "./common/AlterFile/index.js";
2
- import validateCheckLines from "./validateCheckLines.js";
3
-
4
- const updateAppJs = ({ inJsFilePath, inCheckLines,
5
- showLog = false }) => {
6
-
7
- const localCheckLines = inCheckLines;
8
-
9
- validateCheckLines(localCheckLines);
10
-
11
- alterFile({
12
- jsFilePath: inJsFilePath,
13
- toInsertLine: localCheckLines.importLines.toInsertLine,
14
- duplicationCheck: localCheckLines.importLines.duplicationCheck,
15
- insertAfter: localCheckLines.importLines.insertAfter,
16
- showLog
17
- });
18
-
19
- alterFile({
20
- jsFilePath: inJsFilePath,
21
- toInsertLine: localCheckLines.useLines.toInsertLine,
22
- duplicationCheck: localCheckLines.useLines.duplicationCheck,
23
- insertAfter: localCheckLines.useLines.insertAfter,
24
- showLog
25
- });
26
-
27
- return false;
28
- };
29
-
1
+ import alterFile from "./common/AlterFile/index.js";
2
+ import validateCheckLines from "./validateCheckLines.js";
3
+
4
+ const updateAppJs = ({ inJsFilePath, inCheckLines,
5
+ showLog = false }) => {
6
+
7
+ const localCheckLines = inCheckLines;
8
+
9
+ validateCheckLines(localCheckLines);
10
+
11
+ alterFile({
12
+ jsFilePath: inJsFilePath,
13
+ toInsertLine: localCheckLines.importLines.toInsertLine,
14
+ duplicationCheck: localCheckLines.importLines.duplicationCheck,
15
+ insertAfter: localCheckLines.importLines.insertAfter,
16
+ showLog
17
+ });
18
+
19
+ alterFile({
20
+ jsFilePath: inJsFilePath,
21
+ toInsertLine: localCheckLines.useLines.toInsertLine,
22
+ duplicationCheck: localCheckLines.useLines.duplicationCheck,
23
+ insertAfter: localCheckLines.useLines.insertAfter,
24
+ showLog
25
+ });
26
+
27
+ return false;
28
+ };
29
+
30
30
  export default updateAppJs;