From e8f2232050559dfa20c6e5683bc9339d847fdfe6 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Mon, 25 Dec 2017 14:39:35 -0500 Subject: [PATCH] (v0.7.0) Used shenanigans-manager@0.2 instead of Gulp --- .travis.yml | 4 +- .vscode/settings.json | 7 ++ gulpfile.js | 1 - package.json | 98 +++++++++++----- src/IStateHoldr.ts | 2 +- src/StateHoldr.test.ts | 152 +++++++++++++++++++++++++ src/StateHoldr.ts | 15 ++- src/fakes.test.ts | 36 ++++++ src/index.ts | 2 + test/StateHoldr/addChange.ts | 15 --- test/StateHoldr/addCollectionChange.ts | 33 ------ test/StateHoldr/applyChanges.ts | 38 ------- test/StateHoldr/saveCollection.ts | 26 ----- test/StateHoldr/setCollection.ts | 39 ------- test/tsconfig.json | 19 +--- test/utils/fakes.ts | 43 ------- tsconfig.json | 12 +- tslint.json | 57 +--------- 18 files changed, 291 insertions(+), 308 deletions(-) create mode 100644 .vscode/settings.json delete mode 100644 gulpfile.js create mode 100644 src/StateHoldr.test.ts create mode 100644 src/fakes.test.ts create mode 100644 src/index.ts delete mode 100644 test/StateHoldr/addChange.ts delete mode 100644 test/StateHoldr/addCollectionChange.ts delete mode 100644 test/StateHoldr/applyChanges.ts delete mode 100644 test/StateHoldr/saveCollection.ts delete mode 100644 test/StateHoldr/setCollection.ts delete mode 100644 test/utils/fakes.ts diff --git a/.travis.yml b/.travis.yml index 0820099..902fe1f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,8 +1,8 @@ language: node_js node_js: - - "7" + - "node" - "5" script: - node_modules/gulp/bin/gulp.js + npm run verify diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..ff6d1a5 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,7 @@ +{ + "editor.tabSize": 4, + "editor.trimAutoWhitespace": true, + "tslint.alwaysShowRuleFailuresAsWarnings": true, + "tslint.autoFixOnSave": true, + "typescript.tsdk": "node_modules\\typescript\\lib" +} diff --git a/gulpfile.js b/gulpfile.js deleted file mode 100644 index 5b7a4f9..0000000 --- a/gulpfile.js +++ /dev/null @@ -1 +0,0 @@ -require("gulp-shenanigans").initialize(require("gulp")); diff --git a/package.json b/package.json index ddeec22..c4e7fea 100644 --- a/package.json +++ b/package.json @@ -1,31 +1,69 @@ { - "name": "stateholdr", - "description": "General localStorage saving for collections of state.", - "version": "0.6.1", - "author": { - "name": "Josh Goldberg", - "email": "joshuakgoldberg@outlook.com" - }, - "repository": { - "type": "git", - "url": "ssh://git@github.com:FullScreenShenanigans/StateHoldr.git" - }, - "bugs": { - "url": "https://github.com/FullScreenShenanigans/StateHoldr/issues" - }, - "license": "MIT", - "dependencies": { - "itemsholdr": "0.6.X" - }, - "devDependencies": { - "gulp": "^3.9.1", - "gulp-shenanigans": "^0.6.17" - }, - "scripts": { - "gulp": "gulp", - "test": "gulp test" - }, - "shenanigans": { - "name": "StateHoldr" - } -} + "author": { + "email": "joshuakgoldberg@outlook.com", + "name": "Josh Goldberg" + }, + "browser": "./src/index.js", + "bugs": { + "url": "https://github.com/FullScreenShenanigans/StateHoldr/issues" + }, + "dependencies": { + "itemsholdr": "^0.7.0" + }, + "description": "General localStorage saving for collections of state.", + "devDependencies": { + "@types/chai": "^4.0.4", + "@types/lolex": "^1.5.32", + "@types/mocha": "^2.2.44", + "@types/sinon": "^4.0.0", + "@types/sinon-chai": "^2.7.29", + "chai": "^4.1.2", + "glob": "^7.1.2", + "lolex": "^2.3.0", + "mocha": "^4.0.1", + "mocha-headless-chrome": "^1.7.1", + "requirejs": "^2.3.5", + "run-for-every-file": "^1.1.0", + "shenanigans-manager": "^0.2.0", + "sinon": "^4.1.2", + "sinon-chai": "^2.14.0", + "tslint": "5.8.0", + "typedoc": "^0.9.0", + "typescript": "^2.6.2", + "webpack": "^3.10.0" + }, + "license": "MIT", + "name": "stateholdr", + "repository": { + "type": "git", + "url": "ssh://git@github.com:FullScreenShenanigans/StateHoldr.git" + }, + "scripts": { + "dist": "npm run dist:webpack", + "dist:webpack": "webpack --config webpack.config.js", + "docs": "npm run docs:typedoc", + "docs:typedoc": "typedoc src/ --out docs/generated", + "init": "npm install && npm run setup && npm run verify", + "setup": "npm run setup:copy && npm run setup:package", + "setup:copy": "npm run setup:copy:default", + "setup:copy:default": "run-for-every-file --dot --src \"node_modules/shenanigans-manager/setup/default/\" --file \"**/*\" --run \"mustache package.json {{src-file}} {{file}}\" --dest \".\" --only-files", + "setup:package": "shenanigans-manager hydrate-package-json", + "src": "npm run src:tsc && npm run src:tslint", + "src:tsc": "tsc -p .", + "src:tslint": "tslint -c tslint.json --exclude ./node_modules/**/*.ts* -p tsconfig.json -t stylish", + "test": "npm run test:setup && npm run test:run", + "test:run": "mocha-headless-chrome --file test/index.html", + "test:setup": "npm run test:setup:copy && npm run test:setup:html && npm run test:setup:tsc", + "test:setup:copy": "npm run test:setup:copy:default", + "test:setup:copy:default": "run-for-every-file --dot --src \"node_modules/shenanigans-manager/setup/test/\" --file \"**/*\" --run \"mustache package.json {{src-file}} ./test/{{file}}\" --dest \".\" --only-files", + "test:setup:html": "shenanigans-manager generate-test-html", + "test:setup:tsc": "tsc -p test", + "verify": "npm run src && npm run test && npm run dist && npm run docs", + "watch": "run-p \"tsc -p . -w\" \"echo sup\"" + }, + "shenanigans": { + "name": "StateHoldr" + }, + "types": "./src/index.d.ts", + "version": "0.7.0" +} \ No newline at end of file diff --git a/src/IStateHoldr.ts b/src/IStateHoldr.ts index b9c0395..1b73ac9 100644 --- a/src/IStateHoldr.ts +++ b/src/IStateHoldr.ts @@ -1,4 +1,4 @@ -import { IItemsHoldr } from "itemsholdr/lib/IItemsHoldr"; +import { IItemsHoldr } from "itemsholdr"; import { IStateHoldr } from "./IStateHoldr"; diff --git a/src/StateHoldr.test.ts b/src/StateHoldr.test.ts new file mode 100644 index 0000000..2de3f77 --- /dev/null +++ b/src/StateHoldr.test.ts @@ -0,0 +1,152 @@ +import { expect } from "chai"; + +import { stubChangedCollection, stubCollection, stubItemsHoldr, stubStateHoldr } from "./fakes.test"; +import { IChangeGroup, ICollection } from "./IStateHoldr"; + +describe("StateHoldr", () => { + describe("addChange", () => { + it("updates the collection's value", (): void => { + // Arrange + const stateHolder = stubStateHoldr(); + + // Act + stateHolder.setCollection("exampleCollection", stubCollection()); + stateHolder.addChange("car", "color", "blue"); + + // Assert + expect(stateHolder.getCollection()).to.deep.equal(stubChangedCollection()); + }); + }); + + describe("addCollectionChange", () => { + it("updates the current collection", (): void => { + // Arrange + const stateHolder = stubStateHoldr(); + + // Act + stateHolder.setCollection("exampleCollection", stubCollection()); + stateHolder.addCollectionChange("exampleCollection", "car", "color", "blue"); + + // Assert + expect(stateHolder.getCollection()).to.deep.equal(stubChangedCollection()); + }); + + it("updates a non-current collection", (): void => { + // Arrange + const stateHolder = stubStateHoldr(); + const collection: ICollection = { + car: { + color: "black", + }, + }; + + // Act + stateHolder.setCollection("exampleCollection", stubCollection()); + stateHolder.setCollection("anotherCollection", collection); + stateHolder.addCollectionChange("exampleCollection", "car", "color", "blue"); + + // Assertt + expect(stateHolder.getOtherCollection("exampleCollection")).to.deep.equal(stubChangedCollection()); + }); + }); + + describe("applyChanges", () => { + it("copies objects to a recipient", (): void => { + // Arrange + const stateHolder = stubStateHoldr(); + const recipient: IChangeGroup = {}; + + // Act + stateHolder.setCollection("exampleCollection", stubCollection()); + stateHolder.applyChanges("car", recipient); + + // Assert + expect(recipient).to.deep.equal({ color: "red" }); + }); + + it("only shallow copies objects to a recipient", (): void => { + // Arrange + const stateHolder = stubStateHoldr(); + const changedGroup = "car"; + const changedKey = "manufacturer"; + const collection: ICollection = { + [changedGroup]: { + [changedKey]: { + color: "red", + }, + }, + }; + const recipient: IChangeGroup = {}; + + // Act + stateHolder.setCollection("exampleCollection", collection); + stateHolder.applyChanges(changedGroup, recipient); + + // Assert + expect(recipient[changedKey]).to.equal(collection[changedGroup][changedKey]); + }); + }); + + describe("saveCollection", () => { + it("saves the collectionKeys list", (): void => { + // Arrange + const stateHolder = stubStateHoldr(); + + // Act + stateHolder.setCollection("exampleCollection", stubCollection()); + stateHolder.saveCollection(); + + // Assert + expect(stateHolder.getItemsHolder().getItem("StateHoldercollectionKeys")).to.deep.equal(["StateHolderexampleCollection"]); + }); + + it("saves collectionKeys as an empty array", (): void => { + // Arrange + const stateHolder = stubStateHoldr(); + + // Act + stateHolder.saveCollection(); + + // Assert + expect(stateHolder.getItemsHolder().getItem("StateHoldercollectionKeys")).to.deep.equal([]); + }); + }); + + describe("setCollection", () => { + it("sets collectionKeyRaw", (): void => { + // Arrange + const stateHolder = stubStateHoldr(); + + // Act + stateHolder.setCollection("newCollection", stubCollection()); + + // Assert + expect(stateHolder.getCollectionKeyRaw()).to.equal("newCollection"); + }); + + it("sets collectionKey", (): void => { + // Arrange + const stateHolder = stubStateHoldr({ + prefix: "prefix", + itemsHolder: stubItemsHoldr(), + }); + + // Act + stateHolder.setCollection("newCollection", stubCollection()); + + // Assert + expect(stateHolder.getCollectionKey()).to.equal("prefixnewCollection"); + }); + + it("sets the collection", (): void => { + // Arrange + const stateHolder = stubStateHoldr(); + + // Act + stateHolder.setCollection("newCollection", stubCollection()); + + // Assert + expect(stateHolder.getCollection()).to.deep.equal(stubCollection()); + }); + }); +}); diff --git a/src/StateHoldr.ts b/src/StateHoldr.ts index 9981b2c..4b8d051 100644 --- a/src/StateHoldr.ts +++ b/src/StateHoldr.ts @@ -1,5 +1,4 @@ -import { IItemsHoldr } from "itemsholdr/lib/IItemsHoldr"; -import { ItemsHoldr } from "itemsholdr/lib/ItemsHoldr"; +import { IItemsHoldr, ItemsHoldr } from "itemsholdr"; import { ICollection, IStateHoldr, IStateHoldrSettings } from "./IStateHoldr"; @@ -94,7 +93,7 @@ export class StateHoldr implements IStateHoldr { * @param otherCollectionKeyRaw A key for a collection to retrieve. * @returns The collection stored under the raw key, if it exists. */ - public getOtherCollection(otherCollectionKeyRaw: string): void { + public getOtherCollection(otherCollectionKeyRaw: string): ICollection { const otherCollectionKey: string = this.prefix + otherCollectionKeyRaw; this.ensureCollectionKeyExists(otherCollectionKey); @@ -145,7 +144,7 @@ export class StateHoldr implements IStateHoldr { */ public saveCollection(): void { this.itemsHolder.setItem(this.collectionKey, this.collection); - this.itemsHolder.setItem(this.prefix + "collectionKeys", this.collectionKeys); + this.itemsHolder.setItem(`${this.prefix}collectionKeys`, this.collectionKeys); } /** @@ -212,12 +211,12 @@ export class StateHoldr implements IStateHoldr { private ensureCollectionKeyExists(collectionKey: string): void { if (!this.itemsHolder.hasKey(collectionKey)) { this.itemsHolder.addItem(collectionKey, { - "valueDefault": {}, - "storeLocally": true + valueDefault: {}, + storeLocally: true, }); this.collectionKeys.push(collectionKey); - this.itemsHolder.setItem(this.prefix + "collectionKeys", this.collectionKeys); + this.itemsHolder.setItem(`${this.prefix}collectionKeys`, this.collectionKeys); } } @@ -229,7 +228,7 @@ export class StateHoldr implements IStateHoldr { * @returns The item in the collection under the given key. */ private getCollectionItemSafely(itemKey: string): any { - if (typeof this.collection[itemKey] === "undefined") { + if (!{}.hasOwnProperty.call(this.collection, itemKey)) { return this.collection[itemKey] = {}; } diff --git a/src/fakes.test.ts b/src/fakes.test.ts new file mode 100644 index 0000000..f20fb2e --- /dev/null +++ b/src/fakes.test.ts @@ -0,0 +1,36 @@ +import { IItemsHoldrSettings, ItemsHoldr } from "itemsholdr"; + +import { ICollection, IStateHoldrSettings } from "./IStateHoldr"; +import { StateHoldr } from "./StateHoldr"; + +/** + * @param [settings] Settings for the StateHoldr. + * @returns An StateHoldr instance. + */ +export const stubStateHoldr = (settings?: IStateHoldrSettings) => + new StateHoldr(settings); + +/** + * @param [settings] Settings for the ItemsHoldr. + * @returns An ItemsHoldr instance. + */ +export const stubItemsHoldr = (settings?: IItemsHoldrSettings) => + new ItemsHoldr(settings); + +/** + * @returns An example collection object. + */ +export const stubCollection = (): ICollection => ({ + car: { + color: "red", + }, +}); + +/** + * @returns A changed collection of mockCollection. + */ +export const stubChangedCollection = (): ICollection => ({ + car: { + color: "blue", + }, +}); diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..a2a04f0 --- /dev/null +++ b/src/index.ts @@ -0,0 +1,2 @@ +export * from "./IStateHoldr"; +export * from "./StateHoldr"; diff --git a/test/StateHoldr/addChange.ts b/test/StateHoldr/addChange.ts deleted file mode 100644 index 5e6059d..0000000 --- a/test/StateHoldr/addChange.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { IStateHoldr } from "../../src/IStateHoldr"; -import { mochaLoader } from "../main"; -import { stubChangedCollection, stubCollection, stubStateHoldr } from "../utils/fakes"; - -mochaLoader.it("updates the collection's value", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr(); - - // Act - StateHolder.setCollection("exampleCollection", stubCollection()); - StateHolder.addChange("car", "color", "blue"); - - // Assert - chai.expect(StateHolder.getCollection()).to.deep.equal(stubChangedCollection()); -}); diff --git a/test/StateHoldr/addCollectionChange.ts b/test/StateHoldr/addCollectionChange.ts deleted file mode 100644 index 367196d..0000000 --- a/test/StateHoldr/addCollectionChange.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { ICollection, IStateHoldr } from "../../src/IStateHoldr"; -import { mochaLoader } from "../main"; -import { stubChangedCollection, stubCollection, stubStateHoldr } from "../utils/fakes"; - -mochaLoader.it("updates the current collection", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr(); - - // Act - StateHolder.setCollection("exampleCollection", stubCollection()); - StateHolder.addCollectionChange("exampleCollection", "car", "color", "blue"); - - // Assert - chai.expect(StateHolder.getCollection()).to.deep.equal(stubChangedCollection()); -}); - -mochaLoader.it("updates a non-current collection", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr(); - const collection: ICollection = { - car: { - color: "black" - } - }; - - // Act - StateHolder.setCollection("exampleCollection", stubCollection()); - StateHolder.setCollection("anotherCollection", collection); - StateHolder.addCollectionChange("exampleCollection", "car", "color", "blue"); - - // Assert - chai.expect(StateHolder.getOtherCollection("exampleCollection")).to.deep.equal(stubChangedCollection()); -}); diff --git a/test/StateHoldr/applyChanges.ts b/test/StateHoldr/applyChanges.ts deleted file mode 100644 index 085cce5..0000000 --- a/test/StateHoldr/applyChanges.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { IChangeGroup, ICollection, IStateHoldr } from "../../src/IStateHoldr"; -import { mochaLoader } from "../main"; -import { stubCollection, stubStateHoldr } from "../utils/fakes"; - -mochaLoader.it("copies objects to a recipient", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr(); - const recipient: IChangeGroup = {}; - - // Act - StateHolder.setCollection("exampleCollection", stubCollection()); - StateHolder.applyChanges("car", recipient); - - // Assert - chai.expect(recipient).to.deep.equal({ color: "red" }); -}); - -mochaLoader.it("only shallow copies objects to a recipient", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr(); - const changedGroup: string = "car"; - const changedKey: string = "manufacturer"; - const collection: ICollection = { - [changedGroup]: { - [changedKey]: { - color: "red" - } - } - }; - const recipient: IChangeGroup = {}; - - // Act - StateHolder.setCollection("exampleCollection", collection); - StateHolder.applyChanges(changedGroup, recipient); - - // Assert - chai.expect(recipient[changedKey]).to.equal(collection[changedGroup][changedKey]); -}); diff --git a/test/StateHoldr/saveCollection.ts b/test/StateHoldr/saveCollection.ts deleted file mode 100644 index 54cc545..0000000 --- a/test/StateHoldr/saveCollection.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { IStateHoldr } from "../../src/IStateHoldr"; -import { mochaLoader } from "../main"; -import { stubCollection, stubStateHoldr } from "../utils/fakes"; - -mochaLoader.it("saves the collectionKeys list", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr(); - - // Act - StateHolder.setCollection("exampleCollection", stubCollection()); - StateHolder.saveCollection(); - - // Assert - chai.expect(StateHolder.getItemsHolder().getItem("StateHoldercollectionKeys")).to.deep.equal(["StateHolderexampleCollection"]); -}); - -mochaLoader.it("saves collectionKeys as an empty array", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr(); - - // Act - StateHolder.saveCollection(); - - // Assert - chai.expect(StateHolder.getItemsHolder().getItem("StateHoldercollectionKeys")).to.deep.equal([]); -}); diff --git a/test/StateHoldr/setCollection.ts b/test/StateHoldr/setCollection.ts deleted file mode 100644 index 5bf26ae..0000000 --- a/test/StateHoldr/setCollection.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { IStateHoldr } from "../../src/IStateHoldr"; -import { mochaLoader } from "../main"; -import { stubCollection, stubItemsHoldr, stubStateHoldr } from "../utils/fakes"; - -mochaLoader.it("sets collectionKeyRaw", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr(); - - // Act - StateHolder.setCollection("newCollection", stubCollection()); - - // Assert - chai.expect(StateHolder.getCollectionKeyRaw()).to.equal("newCollection"); -}); - -mochaLoader.it("sets collectionKey", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr({ - prefix: "prefix", - itemsHolder: stubItemsHoldr() - }); - - // Act - StateHolder.setCollection("newCollection", stubCollection()); - - // Assert - chai.expect(StateHolder.getCollectionKey()).to.equal("prefixnewCollection"); -}); - -mochaLoader.it("sets the collection", (): void => { - // Arrange - const StateHolder: IStateHoldr = stubStateHoldr(); - - // Act - StateHolder.setCollection("newCollection", stubCollection()); - - // Assert - chai.expect(StateHolder.getCollection()).to.deep.equal(stubCollection()); -}); diff --git a/test/tsconfig.json b/test/tsconfig.json index 9a4ef9f..615249f 100644 --- a/test/tsconfig.json +++ b/test/tsconfig.json @@ -1,19 +1,4 @@ { - "compilerOptions": { - "declaration": true, - "lib": ["dom", "es2015.collection", "es2015.promise", "es5"], - "module": "amd", - "moduleResolution": "node", - "noFallthroughCasesInSwitch": true, - "noImplicitAny": true, - "noImplicitReturns": true, - "noImplicitThis": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "strictNullChecks": true, - "target": "es5" - }, - "include": [ - "./**/*.ts" - ] + "extends": "../tsconfig.json", + "include": ["*.ts"] } diff --git a/test/utils/fakes.ts b/test/utils/fakes.ts deleted file mode 100644 index 92234e7..0000000 --- a/test/utils/fakes.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { IItemsHoldr, IItemsHoldrSettings } from "itemsholdr/lib/IItemsHoldr"; -import { ItemsHoldr } from "itemsholdr/lib/ItemsHoldr"; - -import { ICollection, IStateHoldr, IStateHoldrSettings } from "../../src/IStateHoldr"; -import { StateHoldr } from "../../src/StateHoldr"; - -/** - * @param [settings] Settings for the StateHoldr. - * @returns An StateHoldr instance. - */ -export function stubStateHoldr(settings?: IStateHoldrSettings): IStateHoldr { - return new StateHoldr(settings); -} - -/** - * @param [settings] Settings for the ItemsHoldr. - * @returns An ItemsHoldr instance. - */ -export function stubItemsHoldr(settings?: IItemsHoldrSettings): IItemsHoldr { - return new ItemsHoldr(settings); -} - -/** - * @returns An example collection object. - */ -export function stubCollection(): ICollection { - return { - car: { - color: "red" - } - }; -} - -/** - * @returns A changed collection of mockCollection. - */ -export function stubChangedCollection(): ICollection { - return { - car: { - color: "blue" - } - }; -} diff --git a/tsconfig.json b/tsconfig.json index 09aa46a..9d9ee77 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,6 +1,8 @@ { "compilerOptions": { "declaration": true, + "experimentalDecorators": true, + "jsx": "react", "lib": ["dom", "es2015.collection", "es2015.promise", "es5"], "module": "amd", "moduleResolution": "node", @@ -8,12 +10,16 @@ "noImplicitReturns": true, "noImplicitThis": true, "noFallthroughCasesInSwitch": true, - "noUnusedLocals": true, - "noUnusedParameters": true, + "pretty": true, "strictNullChecks": true, "target": "es5" }, + "exclude": [ + "dist", + "node_modules" + ], "include": [ - "./src/**/*.ts" + "./src/**/*.ts", + "./src/**/*.tsx" ] } diff --git a/tslint.json b/tslint.json index 47bc48d..3f1e993 100644 --- a/tslint.json +++ b/tslint.json @@ -1,56 +1,9 @@ { - "extends": "tslint:all", + "extends": "./node_modules/shenanigans-manager/setup/tslint.json", "rules": { - "array-type": [false], - "arrow-return-shorthand": [false], - "ban-types": [false], - "callable-types": [false], - "comment-format": [false], - "completed-docs": [false], - "cyclomatic-complexity": [false], - "forin": [false], - "linebreak-style": [false], - "max-file-line-count": [false], - "max-line-length": [true, 140], - "member-ordering": [ - true, - "public-before-private", - "static-before-instance", - "variables-before-functions" - ], - "newline-before-return": [false], - "no-any": [false], - "no-bitwise": [false], - "no-console": [false], - "no-default-export": [false], - "no-inferrable-types": [false], - "no-magic-numbers": [false], - "no-redundant-jsdoc": [false], - "no-non-null-assertion": [false], - "no-object-literal-type-assertion": [false], - "no-submodule-imports": [false], - "no-require-imports": false, - "no-unbound-method": [false], - "no-unsafe-any": [false], - "no-unused-variable": [false], - "no-void-expression": [false], - "number-literal-format": [false], - "object-literal-key-quotes": [false], - "object-literal-shorthand": [false], - "object-literal-sort-keys": [false], - "only-arrow-functions": [false], - "prefer-function-over-method": [false], - "prefer-method-signature": [false], - "prefer-switch": [false], - "prefer-conditional-expression": [false], - "prefer-template": [false], - "restrict-plus-operands": [false], - "space-before-function-paren": [false], - "strict-boolean-expressions": [false], - "strict-type-predicates": [false], - "switch-final-break": [false], - "trailing-comma": [false], - "typedef": [false], - "variable-name": [false] + "completed-docs": false, + "no-any": false, + "no-unsafe-any": false, + "strict-boolean-expressions": false } }