{"_id":"@dhkatz/cfl-converter","_rev":"2-aa343508cfa71e01521865dc29b5e4c3","name":"@dhkatz/cfl-converter","dist-tags":{"latest":"2.0.2"},"versions":{"2.0.2":{"name":"@dhkatz/cfl-converter","version":"2.0.2","description":"Convert IMVU's CFL format to CHKN (zip)","main":"build/index.js","types":"typings/index.d.ts","scripts":{"build":"npm run build:types && npm run build:js && pkg build/cfl-converter.js --out-path ./bin","build:types":"tsc --emitDeclarationOnly","build:js":"tsc","test":"exit 0","prepublishOnly":"npm run build"},"bin":{"cfl-converter":"build/cfl-converter.js"},"repository":{"type":"git","url":"git+https://github.com/dhkatz/cfl-converter.git"},"publishConfig":{"registry":"https://registry.npmjs.org","access":"public"},"keywords":["imvu","cfl","chkn","converter"],"author":{"name":"David Katz","url":"https://github.com/dhkatz"},"license":"MIT","bugs":{"url":"https://github.com/dhkatz/cfl-converter/issues"},"homepage":"https://github.com/dhkatz/cfl-converter#readme","devDependencies":{"@types/jest":"^27.0.2","@types/jszip":"^3.4.1","@types/node":"^16.10.2","@typescript-eslint/eslint-plugin":"^4.32.0","@typescript-eslint/parser":"^4.32.0","coveralls":"^3.1.1","eslint":"^7.32.0","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0","jest":"^27.2.4","pkg":"^5.3.2","prettier":"^2.4.1","ts-jest":"^27.0.5","typescript":"^4.4.3"},"dependencies":{"csharp-binary-stream":"^1.0.3","get-stream":"^6.0.1","jszip":"^3.7.1","lzma-purejs":"github:elderapo/lzma-purejs","@types/download":"^8.0.1","commander":"^8.2.0","download":"^8.0.0"},"optionalDependencies":{"@types/download":"^8.0.1","commander":"^8.2.0","download":"^8.0.0"},"eslintConfig":{"extends":["plugin:@typescript-eslint/recommended","plugin:prettier/recommended"],"parser":"@typescript-eslint/parser","rules":{}},"prettier":{"semi":false,"singleQuote":true,"printWidth":100},"jest":{"preset":"ts-jest","globals":{"ts-jest":{"tsconfig":"./tsconfig.json"}},"testEnvironment":"node","collectCoverage":true,"testRegex":"/test/.*\\.test\\.[jt]s$","moduleFileExtensions":["ts","js"],"collectCoverageFrom":["src/**/*.{js,ts}","!<rootDir>/node_modules/"]},"gitHead":"25c408ffd769410a44babdcc88f7397e8aea6b02","_id":"@dhkatz/cfl-converter@2.0.2","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-rJ0GbqDppqnpXypN1mT+vpHcdt1ps0NN+LUtKXHMhQGSk54m6i2TFPtej4VA8NaDy2J37/cmWxxSX/SSlHNorQ==","shasum":"93324332d19dc255fca907af8fd896bcfb28d118","tarball":"https://registry.npmjs.org/@dhkatz/cfl-converter/-/cfl-converter-2.0.2.tgz","fileCount":12,"unpackedSize":31561,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzwcMCRA9TVsSAnZWagAAvGcP+QFrDlXUfNgb2DLacyRm\nPlbVFKv5X5P0pRQL4yLRVoLj+G6h2rgkYHPXrE6kyxBebsyvUzYyCo7BMKTE\nRfl/QjDjW8h5MVx+Pi2QM5Pdv4QCDaeTui61Rm/SFE+1y7Vb+a0JRqPJYG0H\nHVNTGf3jppAfdb9X91aCEqSMidQDCG4NUjxYVfF7p1jj8zkI/rT8UOabBQ5u\nSFhXMqmbbY35ih/6Mxg5eQmeqWbWR7pOe5x1bnDpARQSfiIL1EzN69iJDXcj\nA50lEipKR9D3bIdG/Djeowowjb+eXhbCtTM4NEgdfm3vdA5GBrjD4eRKyOht\n+yRBD4a8Oe2RFPiqsYxCKVTTNJSK5KKjHR8VlyP3ivlmP6aE2/I18NVlH10m\nGxvycwG9rB5onlmZWjLM6caQC/I+YDooExOSOe5E0qnW2YoqbOXl5IKSQhjb\na7JTL5cxPuGCQf9W2cOkQfNOPi4dc+9sGg/GhlGHq1X5NiB/n+FfAHFdfibt\njKMNs3/2lGzqsTbter0qbo9Cc2i/Z+dvzZgqwbigPktiabQ75iGdL7RBGOgH\nsCti8drVWOzmAunavTtv9WM5760jQ0p/mVIDcWQqljhaONQfuVi86BOjaY2f\n3xXEoe19MU/Hcpxb+yaXvOT3M4pqTytEHsD6aixFP2TsnTe0/kX+T4XPpz9N\nL4MO\r\n=5xue\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBXORVCr4K750VnDP4wZp2cGI55wWbfrau9f0G0I6XXwIgAYybn4T1OZDLxdDVPIUEA/d4vwb7HoVP9DTqGhaC8Ng="}]},"_npmUser":{"name":"david_katz","email":"dhkatz.16@gmail.com"},"directories":{},"maintainers":[{"name":"david_katz","email":"dhkatz.16@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cfl-converter_2.0.2_1633029297677_0.9470915494166909"},"_hasShrinkwrap":false}},"time":{"created":"2021-09-30T19:14:57.621Z","2.0.2":"2021-09-30T19:14:57.829Z","modified":"2022-04-05T04:20:35.738Z"},"maintainers":[{"name":"david_katz","email":"dhkatz.16@gmail.com"}],"description":"Convert IMVU's CFL format to CHKN (zip)","homepage":"https://github.com/dhkatz/cfl-converter#readme","keywords":["imvu","cfl","chkn","converter"],"repository":{"type":"git","url":"git+https://github.com/dhkatz/cfl-converter.git"},"author":{"name":"David Katz","url":"https://github.com/dhkatz"},"bugs":{"url":"https://github.com/dhkatz/cfl-converter/issues"},"license":"MIT","readme":"# CFL Converter\r\n\r\n[![Build Status](https://travis-ci.com/dhkatz/cfl-converter.svg?branch=master)](https://travis-ci.com/dhkatz/cfl-converter) [![npm version](https://badge.fury.io/js/cfl-converter.svg)](https://badge.fury.io/js/cfl-converter)\r\n\r\nConvert from IMVU's CFL format to a file usable by the client create mode (.chkn).\r\n\r\nIn reality, a .chkn file is just a zip archive and can be opened as such.\r\n\r\nInspired by https://github.com/Toyz/LibCFL\r\n\r\n## Usage\r\n\r\n### Library\r\n\r\nThis package can also be integrated into your own program.\r\n\r\nYou can `import { convert } from 'cfl-converter';` and call the function with an `ArrayBufferLike` (such as a Buffer) containing the contents of\r\na CFL file (and any supported options in the second parameter).\r\n\r\nA `decompress(data: ArrayBufferLike)` function is also provided if you would like to manually decompress the LZMA portions of the CFL.\r\n\r\n### Command Line Tool\r\n\r\nConvert .cfl files to .chkn files using this easy command-line tool!\r\n\r\nProduct IDs can also be supplied and the program will attempt to download them and convert them.\r\n\r\n```\r\nUsage: cfl-converter [options]\r\n\r\nOptions:\r\n  -V, --version         output the version number\r\n  -I, --input <files>   .CFL file(s) to convert.\r\n  -P, --products <ids>  List of Product IDs to retrieve and convert.\r\n  -h, --help            output usage information\r\n\r\nExamples:\r\n  $ cfl-converter --input product.cfl,chair.cfl\r\n  $ cfl-converter --products 1243456,654321\r\n```\r\n\r\n## Testing\r\n\r\nTesting is currently being written, although the program itself is quite simple.\r\n\r\n## Details\r\n\r\nThe signifiance of this is, that due to what I can only call a CDN exploit, you can download the CFL for ANY product in the shop!\r\n\r\nThis can be accomplished by running the product ID through the url `http://userimages-akm.imvu.com/productdata/{productID}/1` where `{productID}` is the ID of the product you with to retrieve. \r\n\r\nThe number at the end seems to be the revision number, so you may want to check if numbers higher than 1 work as well and get the highest revision you can.\r\n\r\nAfter, simply save the downloaded file with a .cfl extension and use this tool to convert it to a CHKN file.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details\r\n\r\n## Links\r\n\r\n * [Travis-ci](https://travis-ci.com/dhkatz/cfl-converter) \r\n","readmeFilename":"README.md"}