Compare commits

...

4 Commits

Author SHA1 Message Date
Nathan Kunicki
72a3cc4295 Tidy up 2018-01-23 09:53:56 +00:00
Nathan Kunicki
69d20601bf Fixed merge 2018-01-23 09:32:02 +00:00
Nathan Kunicki
4e3ffe899a Start of undo redo 2018-01-23 09:31:27 +00:00
Nathan Kunicki
dfd4f2623f Start of undo redo 2018-01-23 09:29:46 +00:00
4 changed files with 59 additions and 29 deletions

78
package-lock.json generated
View File

@ -16,6 +16,15 @@
"integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
"dev": true "dev": true
}, },
"argparse": {
"version": "1.0.9",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz",
"integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=",
"dev": true,
"requires": {
"sprintf-js": "1.0.3"
}
},
"babel-code-frame": { "babel-code-frame": {
"version": "6.26.0", "version": "6.26.0",
"resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
@ -111,9 +120,9 @@
"dev": true "dev": true
}, },
"commander": { "commander": {
"version": "2.11.0", "version": "2.13.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz",
"integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==",
"dev": true "dev": true
}, },
"concat-map": { "concat-map": {
@ -134,6 +143,12 @@
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
"dev": true "dev": true
}, },
"esprima": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz",
"integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==",
"dev": true
},
"esutils": { "esutils": {
"version": "2.0.2", "version": "2.0.2",
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
@ -197,6 +212,16 @@
"integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=",
"dev": true "dev": true
}, },
"js-yaml": {
"version": "3.10.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz",
"integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==",
"dev": true,
"requires": {
"argparse": "1.0.9",
"esprima": "4.0.0"
}
},
"minimatch": { "minimatch": {
"version": "3.0.4", "version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
@ -237,9 +262,15 @@
} }
}, },
"semver": { "semver": {
"version": "5.4.1", "version": "5.5.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz",
"integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==",
"dev": true
},
"sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
"dev": true "dev": true
}, },
"strip-ansi": { "strip-ansi": {
@ -258,43 +289,44 @@
"dev": true "dev": true
}, },
"tslib": { "tslib": {
"version": "1.8.0", "version": "1.9.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.8.0.tgz", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.0.tgz",
"integrity": "sha512-ymKWWZJST0/CkgduC2qkzjMOWr4bouhuURNXCn/inEX0L57BnRG6FhX76o7FOnsjHazCjfU2LKeSrlS2sIKQJg==", "integrity": "sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ==",
"dev": true "dev": true
}, },
"tslint": { "tslint": {
"version": "5.8.0", "version": "5.9.1",
"resolved": "https://registry.npmjs.org/tslint/-/tslint-5.8.0.tgz", "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.9.1.tgz",
"integrity": "sha1-H0mtWy53x2w69N3K5VKuTjYS6xM=", "integrity": "sha1-ElX4ej/1frCw4fDmEKi0dIBGya4=",
"dev": true, "dev": true,
"requires": { "requires": {
"babel-code-frame": "6.26.0", "babel-code-frame": "6.26.0",
"builtin-modules": "1.1.1", "builtin-modules": "1.1.1",
"chalk": "2.3.0", "chalk": "2.3.0",
"commander": "2.11.0", "commander": "2.13.0",
"diff": "3.4.0", "diff": "3.4.0",
"glob": "7.1.2", "glob": "7.1.2",
"js-yaml": "3.10.0",
"minimatch": "3.0.4", "minimatch": "3.0.4",
"resolve": "1.5.0", "resolve": "1.5.0",
"semver": "5.4.1", "semver": "5.5.0",
"tslib": "1.8.0", "tslib": "1.9.0",
"tsutils": "2.12.2" "tsutils": "2.19.1"
} }
}, },
"tsutils": { "tsutils": {
"version": "2.12.2", "version": "2.19.1",
"resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.12.2.tgz", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.19.1.tgz",
"integrity": "sha1-rVikhl0X7D3bZjG2ylO+FKVlb/M=", "integrity": "sha512-1B3z4H4HddgzWptqLzwrJloDEsyBt8DvZhnFO14k7A4RsQL/UhEfQjD4hpcY5NpF3veBkjJhQJ8Bl7Xp96cN+A==",
"dev": true, "dev": true,
"requires": { "requires": {
"tslib": "1.8.0" "tslib": "1.9.0"
} }
}, },
"typescript": { "typescript": {
"version": "2.6.1", "version": "2.6.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-2.6.1.tgz", "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.6.2.tgz",
"integrity": "sha1-7znN6ierrAtQAkLWcmq5DgyEZjE=", "integrity": "sha1-PFtv1/beCRQmkCfwPAlGdY92c6Q=",
"dev": true "dev": true
}, },
"wrappy": { "wrappy": {

View File

@ -3,7 +3,7 @@
"version": "0.0.1", "version": "0.0.1",
"description": "BittMapp - A monochrome bitmap editor", "description": "BittMapp - A monochrome bitmap editor",
"scripts": { "scripts": {
"build": "rm -rf static/js/*.js && tslint -c tslint.json \"src/**/*.ts\" && tsc && cat static/js/*.js > static/js/dist.js" "build": "rm -rf static/js/*.js && tslint -c tslint.json \"src/**/*.ts\" && tsc && cat static/js/linkednode.js static/js/linkedlist.js static/js/actionnode.js static/js/actionlist.js static/js/bmptools.js static/js/editor.js static/js/serialisers.js static/js/main.js > static/js/dist.js"
}, },
"author": "Nathan Kunicki <me@nathankunicki.com>", "author": "Nathan Kunicki <me@nathankunicki.com>",
"license": "MIT", "license": "MIT",
@ -11,7 +11,7 @@
"node": ">=8.9.1" "node": ">=8.9.1"
}, },
"devDependencies": { "devDependencies": {
"tslint": "^5.8.0", "tslint": "^5.9.1",
"typescript": "^2.6.1" "typescript": "^2.6.2"
} }
} }

View File

@ -30,8 +30,6 @@ class BMPTools {
const pixelData: Uint8Array = inputData.slice(headerData.pixelDataOffset, headerData.fileLength); const pixelData: Uint8Array = inputData.slice(headerData.pixelDataOffset, headerData.fileLength);
const rowSize: number = (headerData.width - 1 - (headerData.width - 1) % 32 + 32) / 8; const rowSize: number = (headerData.width - 1 - (headerData.width - 1) % 32 + 32) / 8;
// console.log(headerData);
const outputData: Uint8Array = new Uint8Array(Math.ceil((headerData.width * headerData.height) / 8)); const outputData: Uint8Array = new Uint8Array(Math.ceil((headerData.width * headerData.height) / 8));
if (headerData.height > 0) { if (headerData.height > 0) {
@ -100,7 +98,6 @@ class BMPTools {
throw new Error("Data not valid (Only uncompressed data supported)"); throw new Error("Data not valid (Only uncompressed data supported)");
} }
headerData.imageSize = Serialisers.readUint32(inputData, 34, true);
headerData.imageSize = Serialisers.readUint32(inputData, 34, true); headerData.imageSize = Serialisers.readUint32(inputData, 34, true);
headerData.numberColors = Serialisers.readUint32(inputData, 46, true); headerData.numberColors = Serialisers.readUint32(inputData, 46, true);
headerData.importantColors = Serialisers.readUint32(inputData, 50, true); headerData.importantColors = Serialisers.readUint32(inputData, 50, true);

View File

@ -12,6 +12,7 @@
"max-line-length": false, "max-line-length": false,
"prefer-for-of": false, "prefer-for-of": false,
"typedef": true, "typedef": true,
"no-console": false,
"variable-name": [true, "ban-keywords", "check-format", "allow-leading-underscore"] "variable-name": [true, "ban-keywords", "check-format", "allow-leading-underscore"]
}, },
"rulesDirectory": [] "rulesDirectory": []