diff --git a/index.js b/index.js new file mode 100644 index 0000000..c08a374 --- /dev/null +++ b/index.js @@ -0,0 +1,2 @@ +const Messaging = require('./lib/messaging'); +module.exports = { ClapPeer: Messaging }; diff --git a/lib/index.js b/lib/index.js deleted file mode 100644 index b70fa1c..0000000 --- a/lib/index.js +++ /dev/null @@ -1,2 +0,0 @@ -const Messaging = require('./messaging'); -module.exports = { ClapPeer: Messaging }; diff --git a/package-lock.json b/package-lock.json index f21faff..4563ad0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,13 +1,16 @@ { - "name": "my-ts-node-starter", + "name": "clap-peer", "version": "0.0.9", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "my-ts-node-starter", + "name": "clap-peer", "version": "0.0.9", "license": "MIT", + "dependencies": { + "typescript": "^5.6.2" + }, "devDependencies": { "@commitlint/cli": "^19.5.0", "@commitlint/config-conventional": "^19.5.0", @@ -20,9 +23,7 @@ "globals": "^15.10.0", "husky": "^9.1.4", "prettier": "^3.3.3", - "release-it": "^17.6.0", - "typescript": "^5.6.2", - "typescript-eslint": "^8.8.0" + "release-it": "^17.6.0" } }, "node_modules/@babel/code-frame": { @@ -930,235 +931,6 @@ "undici-types": "~6.19.2" } }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.8.0.tgz", - "integrity": "sha512-wORFWjU30B2WJ/aXBfOm1LX9v9nyt9D3jsSOxC3cCaTQGCW5k4jNpmjFv3U7p/7s4yvdjHzwtv2Sd2dOyhjS0A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.8.0", - "@typescript-eslint/type-utils": "8.8.0", - "@typescript-eslint/utils": "8.8.0", - "@typescript-eslint/visitor-keys": "8.8.0", - "graphemer": "^1.4.0", - "ignore": "^5.3.1", - "natural-compare": "^1.4.0", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/parser": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.8.0.tgz", - "integrity": "sha512-uEFUsgR+tl8GmzmLjRqz+VrDv4eoaMqMXW7ruXfgThaAShO9JTciKpEsB+TvnfFfbg5IpujgMXVV36gOJRLtZg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/scope-manager": "8.8.0", - "@typescript-eslint/types": "8.8.0", - "@typescript-eslint/typescript-estree": "8.8.0", - "@typescript-eslint/visitor-keys": "8.8.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.8.0.tgz", - "integrity": "sha512-EL8eaGC6gx3jDd8GwEFEV091210U97J0jeEHrAYvIYosmEGet4wJ+g0SYmLu+oRiAwbSA5AVrt6DxLHfdd+bUg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.8.0", - "@typescript-eslint/visitor-keys": "8.8.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.8.0.tgz", - "integrity": "sha512-IKwJSS7bCqyCeG4NVGxnOP6lLT9Okc3Zj8hLO96bpMkJab+10HIfJbMouLrlpyOr3yrQ1cA413YPFiGd1mW9/Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/typescript-estree": "8.8.0", - "@typescript-eslint/utils": "8.8.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.8.0.tgz", - "integrity": "sha512-QJwc50hRCgBd/k12sTykOJbESe1RrzmX6COk8Y525C9l7oweZ+1lw9JiU56im7Amm8swlz00DRIlxMYLizr2Vw==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.8.0.tgz", - "integrity": "sha512-ZaMJwc/0ckLz5DaAZ+pNLmHv8AMVGtfWxZe/x2JVEkD5LnmhWiQMMcYT7IY7gkdJuzJ9P14fRy28lUrlDSWYdw==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@typescript-eslint/types": "8.8.0", - "@typescript-eslint/visitor-keys": "8.8.0", - "debug": "^4.3.4", - "fast-glob": "^3.3.2", - "is-glob": "^4.0.3", - "minimatch": "^9.0.4", - "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/utils": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.8.0.tgz", - "integrity": "sha512-QE2MgfOTem00qrlPgyByaCHay9yb1+9BjnMFnSFkUKQfu7adBXDTnCAivURnuPPAG/qiB+kzKkZKmKfaMT0zVg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.8.0", - "@typescript-eslint/types": "8.8.0", - "@typescript-eslint/typescript-estree": "8.8.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.57.0 || ^9.0.0" - } - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.8.0.tgz", - "integrity": "sha512-8mq51Lx6Hpmd7HnA2fcHQo3YgfX1qbccxQOgZcb4tvasu//zXRaA1j5ZRFeCw/VRAdFi4mRM9DnZw0Nu0Q2d1g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/types": "8.8.0", - "eslint-visitor-keys": "^3.4.3" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, "node_modules/acorn": { "version": "8.12.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", @@ -3103,13 +2875,6 @@ "dev": true, "license": "ISC" }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true, - "license": "MIT" - }, "node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -5708,19 +5473,6 @@ "node": ">=8.0" } }, - "node_modules/ts-api-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, "node_modules/tslib": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", @@ -5768,7 +5520,6 @@ "version": "5.6.2", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz", "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==", - "dev": true, "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -5778,30 +5529,6 @@ "node": ">=14.17" } }, - "node_modules/typescript-eslint": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.8.0.tgz", - "integrity": "sha512-BjIT/VwJ8+0rVO01ZQ2ZVnjE1svFBiRczcpr1t1Yxt7sT25VSbPfrJtDsQ8uQTy2pilX5nI9gwxhUyLULNentw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@typescript-eslint/eslint-plugin": "8.8.0", - "@typescript-eslint/parser": "8.8.0", - "@typescript-eslint/utils": "8.8.0" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/undici-types": { "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", diff --git a/package.json b/package.json index d41b96d..33aecb4 100644 --- a/package.json +++ b/package.json @@ -1,16 +1,18 @@ { "name": "clap-peer", "version": "0.0.9", - "main": "./dist/index.js", - "types": "./dist/index.d.ts", + "main": "./index.js", + "types": "./types/index.d.ts", "files": [ - "./dist" + "./lib", + "./types" ], "scripts": { + "types": "tsc -p types/tsconfig.json", "prettier": "prettier lib/**/*.js --check", "prettier:fix": "prettier lib/**/**.js -w", "lint": "eslint", - "lint:fix" :"eslint --fix", + "lint:fix": "eslint --fix", "prepare": "husky", "release": "release-it" }, @@ -31,7 +33,9 @@ "prettier": "^3.3.3", "release-it": "^17.6.0" }, - "overrides": {"eslint":"^9.8.0"}, + "overrides": { + "eslint": "^9.8.0" + }, "repository": { "type": "git", "url": "git+https://github.com/DIY0R/clap-peer.git" @@ -41,7 +45,12 @@ "url": "https://github.com/DIY0R/clap-peer/issues" }, "keywords": [ - "eslint","prettier","ts","commitlint"," release-it","husky-hooks" + "eslint", + "prettier", + "ts", + "commitlint", + " release-it", + "husky-hooks" ], "npm": { "publish": true @@ -49,5 +58,8 @@ "publishConfig": { "access": "public" }, - "private": false + "private": false, + "dependencies": { + "typescript": "^5.6.2" + } } diff --git a/types/index.d.ts b/types/index.d.ts new file mode 100644 index 0000000..a444bda --- /dev/null +++ b/types/index.d.ts @@ -0,0 +1,3 @@ +import Messaging = require("./lib/messaging"); +export { Messaging as ClapPeer }; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/types/index.d.ts.map b/types/index.d.ts.map new file mode 100644 index 0000000..653c749 --- /dev/null +++ b/types/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.js"],"names":[],"mappings":""} \ No newline at end of file diff --git a/types/lib/chunkProcessor.d.ts b/types/lib/chunkProcessor.d.ts new file mode 100644 index 0000000..debf4d0 --- /dev/null +++ b/types/lib/chunkProcessor.d.ts @@ -0,0 +1,9 @@ +declare function _exports(): CollectMessage; +export = _exports; +declare class CollectMessage extends Transform { + constructor(); + _transform(chunk: any, encoding: string, callback: any): void; + #private; +} +import { Transform } from "stream"; +//# sourceMappingURL=chunkProcessor.d.ts.map \ No newline at end of file diff --git a/types/lib/chunkProcessor.d.ts.map b/types/lib/chunkProcessor.d.ts.map new file mode 100644 index 0000000..32a9d8d --- /dev/null +++ b/types/lib/chunkProcessor.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"chunkProcessor.d.ts","sourceRoot":"","sources":["../../lib/chunkProcessor.js"],"names":[],"mappings":"AAsCiB,4CAA0B;;AAnC3C;IAGE,cAEC;IAED,8DAQC;;CAmBF"} \ No newline at end of file diff --git a/types/lib/common/createData.d.ts b/types/lib/common/createData.d.ts new file mode 100644 index 0000000..6762948 --- /dev/null +++ b/types/lib/common/createData.d.ts @@ -0,0 +1,5 @@ +export function createData(type: any, data: any): { + type: any; + data: any; +}; +//# sourceMappingURL=createData.d.ts.map \ No newline at end of file diff --git a/types/lib/common/createData.d.ts.map b/types/lib/common/createData.d.ts.map new file mode 100644 index 0000000..08cdc54 --- /dev/null +++ b/types/lib/common/createData.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"createData.d.ts","sourceRoot":"","sources":["../../../lib/common/createData.js"],"names":[],"mappings":"AAAA;;;EAAmD"} \ No newline at end of file diff --git a/types/lib/common/index.d.ts b/types/lib/common/index.d.ts new file mode 100644 index 0000000..affca5b --- /dev/null +++ b/types/lib/common/index.d.ts @@ -0,0 +1,12 @@ +declare const _exports: { + createData: (type: any, data: any) => { + type: any; + data: any; + }; + uuid: () => string; + serialization: (message: any) => string; + deserialization: (message: any) => any; + SEPARATE_SYMBOL: "\n"; +}; +export = _exports; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/types/lib/common/index.d.ts.map b/types/lib/common/index.d.ts.map new file mode 100644 index 0000000..891bd9f --- /dev/null +++ b/types/lib/common/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/common/index.js"],"names":[],"mappings":""} \ No newline at end of file diff --git a/types/lib/common/serdes.d.ts b/types/lib/common/serdes.d.ts new file mode 100644 index 0000000..8958617 --- /dev/null +++ b/types/lib/common/serdes.d.ts @@ -0,0 +1,4 @@ +export function serialization(message: any): string; +export function deserialization(message: any): any; +export const SEPARATE_SYMBOL: "\n"; +//# sourceMappingURL=serdes.d.ts.map \ No newline at end of file diff --git a/types/lib/common/serdes.d.ts.map b/types/lib/common/serdes.d.ts.map new file mode 100644 index 0000000..4baf18c --- /dev/null +++ b/types/lib/common/serdes.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"serdes.d.ts","sourceRoot":"","sources":["../../../lib/common/serdes.js"],"names":[],"mappings":"AACA,oDAA0E;AAC1E,mDAAsD;AAFtD,mCAA6B"} \ No newline at end of file diff --git a/types/lib/common/uuid.d.ts b/types/lib/common/uuid.d.ts new file mode 100644 index 0000000..1b2f617 --- /dev/null +++ b/types/lib/common/uuid.d.ts @@ -0,0 +1,2 @@ +export function uuid(): string; +//# sourceMappingURL=uuid.d.ts.map \ No newline at end of file diff --git a/types/lib/common/uuid.d.ts.map b/types/lib/common/uuid.d.ts.map new file mode 100644 index 0000000..3c28d9d --- /dev/null +++ b/types/lib/common/uuid.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../../../lib/common/uuid.js"],"names":[],"mappings":"AAEA,+BACsE"} \ No newline at end of file diff --git a/types/lib/connection.d.ts b/types/lib/connection.d.ts new file mode 100644 index 0000000..581d1ee --- /dev/null +++ b/types/lib/connection.d.ts @@ -0,0 +1,9 @@ +export = Connection; +declare class Connection { + constructor(port: any, targetNode: any); + connect(targetNode: any): void; + _send(connectionId: any, message: any): void; + close(): void; + #private; +} +//# sourceMappingURL=connection.d.ts.map \ No newline at end of file diff --git a/types/lib/connection.d.ts.map b/types/lib/connection.d.ts.map new file mode 100644 index 0000000..f0ad2d3 --- /dev/null +++ b/types/lib/connection.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../lib/connection.js"],"names":[],"mappings":";AAIA;IAEE,wCAEC;IAED,+BAGC;IAuBD,6CAIC;IAYD,cAKC;;CAKF"} \ No newline at end of file diff --git a/types/lib/constants.d.ts b/types/lib/constants.d.ts new file mode 100644 index 0000000..9a93858 --- /dev/null +++ b/types/lib/constants.d.ts @@ -0,0 +1,2 @@ +export const HANDSHAKE: "HANDSHAKE"; +//# sourceMappingURL=constants.d.ts.map \ No newline at end of file diff --git a/types/lib/constants.d.ts.map b/types/lib/constants.d.ts.map new file mode 100644 index 0000000..1af83d5 --- /dev/null +++ b/types/lib/constants.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../lib/constants.js"],"names":[],"mappings":"AAAA,oCAA8B"} \ No newline at end of file diff --git a/types/lib/messaging.d.ts b/types/lib/messaging.d.ts new file mode 100644 index 0000000..0f1c1d0 --- /dev/null +++ b/types/lib/messaging.d.ts @@ -0,0 +1,10 @@ +export = Messaging; +declare class Messaging extends Connection { + NODE_ID: string; + neighbors: Map; + _newConnection(connectionId: any): void; + _onMessage(connectionId: any, messageObject: any): void; + #private; +} +import Connection = require("./connection"); +//# sourceMappingURL=messaging.d.ts.map \ No newline at end of file diff --git a/types/lib/messaging.d.ts.map b/types/lib/messaging.d.ts.map new file mode 100644 index 0000000..30620c0 --- /dev/null +++ b/types/lib/messaging.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../../lib/messaging.js"],"names":[],"mappings":";AAIA;IACE,gBAAiB;IACjB,yBAAsB;IAMtB,wCAEC;IAMD,wDAKC;;CACF"} \ No newline at end of file diff --git a/types/tsconfig.json b/types/tsconfig.json new file mode 100644 index 0000000..43a9f09 --- /dev/null +++ b/types/tsconfig.json @@ -0,0 +1,20 @@ +{ + "include": [ + "../lib", + "../index.js" + ], + "compilerOptions": { + "moduleResolution": "node", + "allowJs": true, + "declaration": true, + "emitDeclarationOnly": true, + "outDir": ".", + "declarationMap": true, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + } +} \ No newline at end of file