codemaker 1.59.0 → 1.60.0
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.
- package/lib/case-utils.js +1 -1
- package/lib/codemaker.js +1 -1
- package/lib/filebuff.js +1 -1
- package/lib/index.js +7 -3
- package/package.json +4 -10
- package/lib/case-utils.d.ts.map +0 -1
- package/lib/codemaker.d.ts.map +0 -1
- package/lib/filebuff.d.ts.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/test/case-utils.test.d.ts +0 -2
- package/test/case-utils.test.d.ts.map +0 -1
- package/test/case-utils.test.js +0 -24
- package/test/filebuff.test.d.ts +0 -2
- package/test/filebuff.test.d.ts.map +0 -1
- package/test/filebuff.test.js +0 -19
- package/test/source.test.d.ts +0 -2
- package/test/source.test.d.ts.map +0 -1
- package/test/source.test.js +0 -112
package/lib/case-utils.js
CHANGED
|
@@ -26,4 +26,4 @@ exports.toSnakeCase = toSnakeCase;
|
|
|
26
26
|
function regexQuote(s) {
|
|
27
27
|
return s.replace(/[.?*+^$[\]\\(){}|-]/g, '\\$&');
|
|
28
28
|
}
|
|
29
|
-
//# sourceMappingURL=
|
|
29
|
+
//# sourceMappingURL=case-utils.js.map
|
package/lib/codemaker.js
CHANGED
|
@@ -161,4 +161,4 @@ class CodeMaker {
|
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
exports.CodeMaker = CodeMaker;
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZW1ha2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY29kZW1ha2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUE2QjtBQUU3QiwwQ0FBMEM7QUFDMUMseUNBQW9DO0FBRXBDOztHQUVHO0FBQ0gsTUFBYSxTQUFTO0lBaUJwQixZQUFtQixFQUNqQixnQkFBZ0IsR0FBRyxDQUFDLEVBQ3BCLGVBQWUsR0FBRyxHQUFHLE1BSW5CLEVBQUU7UUFYRSxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBRU4sVUFBSyxHQUFHLElBQUksS0FBSyxFQUFjLENBQUM7UUFDaEMsYUFBUSxHQUFHLElBQUksS0FBSyxFQUFVLENBQUM7UUFpQmhEOztXQUVHO1FBQ0ksdUJBQWtCLEdBQTJCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDO1FBRXBFOztXQUVHO1FBQ0ksd0JBQW1CLEdBQW1DLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQztRQWhCckUsSUFBSSxDQUFDLFdBQVcsR0FBRyxnQkFBZ0IsQ0FBQztRQUNwQyxJQUFJLENBQUMsZUFBZSxHQUFHLGVBQWUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBVyxtQkFBbUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUMsQ0FBQztJQVlEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQWU7UUFDL0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUs7YUFDckIsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN4RCxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNyQyxPQUFP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RDs7T0FFRztJQUNJLFdBQVcsQ0FBQyxHQUFHLElBQWM7UUFDbEMsT0FBTyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksWUFBWSxDQUFDLEdBQUcsSUFBYztRQUNuQyxPQUFPLFNBQVMsQ0FBQyxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksV0FBVyxDQUFDLENBQVMsRUFBRSxHQUFHLEdBQUcsR0FBRztRQUNyQyxPQUFPLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTyxVQUFVO1FBQ2hCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztRQUN4QyxJQUFJLE1BQU0sSUFBSSxDQUFDLEVBQUU7WUFDZixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QyxDQUFDO0NBQ0Y7QUFyTUQsOEJBcU1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgdXRpbCBmcm9tICd1dGlsJztcblxuaW1wb3J0ICogYXMgY2FzZXV0aWxzIGZyb20gJy4vY2FzZS11dGlscyc7XG5pbXBvcnQgRmlsZUJ1ZmZlciBmcm9tICcuL2ZpbGVidWZmJztcblxuLyoqXG4gKiBNdWx0aS1maWxlIHRleHQgd3JpdGVyIHdpdGggc29tZSBjb2RlLWdlbmVyYXRpb24gZmVhdHVyZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb2RlTWFrZXIge1xuICAvKipcbiAgICogVGhlIGluZGVudGF0aW9uIGxldmVsIG9mIHRoZSBmaWxlLlxuICAgKi9cbiAgcHVibGljIGluZGVudGF0aW9uOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBjaGFyYWN0ZXIgdG8gdXNlIGZvciBpbmRlbnRhdGlvbi4gV2hlbiBzZXR0aW5nIHRoaXMgdG8gYFxcdGAsIGNvbnNpZGVyXG4gICAqIGFsc28gc2V0dGluZyBgaW5kZW50YXRpb25gIHRvIGAxYC5cbiAgICovXG4gIHB1YmxpYyBpbmRlbnRDaGFyYWN0ZXI6ICcgJyB8ICdcXHQnO1xuXG4gIHByaXZhdGUgY3VyckluZGVudCA9IDA7XG4gIHByaXZhdGUgY3VycmVudEZpbGU/OiBGaWxlQnVmZmVyO1xuICBwcml2YXRlIHJlYWRvbmx5IGZpbGVzID0gbmV3IEFycmF5PEZpbGVCdWZmZXI+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZXhjbHVkZXMgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcih7XG4gICAgaW5kZW50YXRpb25MZXZlbCA9IDQsXG4gICAgaW5kZW50Q2hhcmFjdGVyID0gJyAnLFxuICB9OiB7XG4gICAgaW5kZW50YXRpb25MZXZlbD86IENvZGVNYWtlclsnaW5kZW50YXRpb24nXTtcbiAgICBpbmRlbnRDaGFyYWN0ZXI/OiBDb2RlTWFrZXJbJ2luZGVudENoYXJhY3RlciddO1xuICB9ID0ge30pIHtcbiAgICB0aGlzLmluZGVudGF0aW9uID0gaW5kZW50YXRpb25MZXZlbDtcbiAgICB0aGlzLmluZGVudENoYXJhY3RlciA9IGluZGVudENoYXJhY3RlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY3VycmVudEluZGVudExlbmd0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmN1cnJJbmRlbnQgKiB0aGlzLmluZGVudGF0aW9uO1xuICB9XG5cbiAgLyoqXG4gICAqIEZvcm1hdHMgYW4gYmxvY2sgb3BlbiBzdGF0ZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgb3BlbkJsb2NrRm9ybWF0dGVyOiAocz86IHN0cmluZykgPT4gc3RyaW5nID0gKHMpID0+IGAke3N9IHtgO1xuXG4gIC8qKlxuICAgKiBGb3JtYXRzIGEgYmxvY2sgY2xvc2Ugc3RhdGVtZW50LlxuICAgKi9cbiAgcHVibGljIGNsb3NlQmxvY2tGb3JtYXR0ZXI6IChzPzogc3RyaW5nKSA9PiBzdHJpbmcgfCBmYWxzZSA9ICgpID0+ICd9JztcblxuICAvKipcbiAgICogU2F2ZXMgYWxsIHRoZSBmaWxlcyBjcmVhdGVkIGluIHRoaXMgY29kZSBtYWtlci5cbiAgICogQHBhcmFtIHJvb3REaXIgVGhlIHJvb3QgZGlyZWN0b3J5IGZvciBhbGwgc2F2ZWQgZmlsZXMuXG4gICAqIEByZXR1cm5zIEEgc29ydGVkIGxpc3Qgb2YgYWxsIHRoZSBmaWxlcyBzYXZlZCAoYWJzb2x1dGUgcGF0aHMpLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIHNhdmUocm9vdERpcjogc3RyaW5nKSB7XG4gICAgY29uc3QgcGF0aHMgPSB0aGlzLmZpbGVzXG4gICAgICAuZmlsdGVyKChmaWxlKSA9PiAhdGhpcy5leGNsdWRlcy5pbmNsdWRlcyhmaWxlLmZpbGVQYXRoKSlcbiAgICAgIC5tYXAoKGZpbGUpID0+IGZpbGUuc2F2ZShyb290RGlyKSk7XG4gICAgcmV0dXJuIChhd2FpdCBQcm9taXNlLmFsbChwYXRocykpLnNvcnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50IGZpbGUgd2UgYXJlIHdvcmtpbmcgd2l0aC5cbiAgICogTm90ZSB0aGF0IHRoaXMgZG9lc24ndCByZWFsbHkgY3JlYXRlIGEgbmV3IGZpbGUgKGZpbGVzIGFyZSBvbmx5IGNyZWF0ZWQgd2hlbiBzYXZlKCkgaXMgY2FsbGVkLlxuICAgKiBVc2UgYGNsb3NlRmlsZWAgdG8gY2xvc2UgdGhpcyBmaWxlLlxuICAgKiBAcGFyYW0gZmlsZVBhdGggVGhlIHJlbGF0aXZlIHBhdGggb2YgdGhlIG5ldyBmaWxlLlxuICAgKi9cbiAgcHVibGljIG9wZW5GaWxlKGZpbGVQYXRoOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5jdXJyZW50RmlsZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgQ2Fubm90IG9wZW4gZmlsZSAke2ZpbGVQYXRofSB3aXRob3V0IGNsb3NpbmcgdGhlIHByZXZpb3VzIGZpbGUgJHt0aGlzLmN1cnJlbnRGaWxlLmZpbGVQYXRofWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuY3VycmVudEZpbGUgPSBuZXcgRmlsZUJ1ZmZlcihmaWxlUGF0aCk7XG4gIH1cblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgd2UgZmluaXNoZWQgZ2VuZXJhdGluZyB0aGUgY3VycmVudCBmaWxlLlxuICAgKiBAcGFyYW0gZmlsZVBhdGggVGhlIHJlbGF0aXZlIGZpbGUgcGF0aCAobXVzdCBiZSB0aGUgc2FtZSBhcyBvbmUgcGFzc2VkIHRvIG9wZW5GaWxlKVxuICAgKi9cbiAgcHVibGljIGNsb3NlRmlsZShmaWxlUGF0aDogc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLmN1cnJlbnRGaWxlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBjbG9zZSBmaWxlICR7ZmlsZVBhdGh9LiBJdCB3YXMgbmV2ZXIgb3BlbmVkYCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmN1cnJlbnRGaWxlLmZpbGVQYXRoICE9PSBmaWxlUGF0aCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgQ2Fubm90IGNsb3NlIGZpbGUgJHtmaWxlUGF0aH0uIFRoZSBjdXJyZW50bHkgb3BlbmVkIGZpbGUgaXMgJHt0aGlzLmN1cnJlbnRGaWxlLmZpbGVQYXRofWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuZmlsZXMucHVzaCh0aGlzLmN1cnJlbnRGaWxlKTtcbiAgICB0aGlzLmN1cnJlbnRGaWxlID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIGEgbGluZSBpbnRvIHRoZSBjdXJyZW50bHkgb3BlbmVkIGZpbGUuXG4gICAqIExpbmUgaXMgZW1pdHRlZCB3aXRoIHRoZSBjdXJyZW50IGxldmVsIG9mIGluZGVudGF0aW9uLlxuICAgKiBJZiBubyBhcmd1bWVudHMgYXJlIHByb3ZpZGVkLCBhbiBlbXB0eSBuZXcgbGluZSBpcyBlbWl0dGVkLlxuICAgKiBAcGFyYW0gZm10IFN0cmluZyBmb3JtYXQgYXJndW1lbnRzIChwYXNzZWQgdG8gYHV0aWwuZm9ybWF0YClcbiAgICogQHBhcmFtIGFyZ3MgU3RyaW5nIGFyZ3VtZW50c1xuICAgKi9cbiAgcHVibGljIGxpbmUoZm10Pzogc3RyaW5nLCAuLi5hcmdzOiBzdHJpbmdbXSkge1xuICAgIGlmICghdGhpcy5jdXJyZW50RmlsZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgZW1pdCBzb3VyY2UgbGluZXMgd2l0aG91dCBvcGVuaW5nIGEgZmlsZScpO1xuICAgIH1cblxuICAgIGlmIChmbXQpIHtcbiAgICAgIGZtdCA9IHRoaXMubWFrZUluZGVudCgpICsgZm10O1xuICAgICAgdGhpcy5jdXJyZW50RmlsZS53cml0ZSh1dGlsLmZvcm1hdChmbXQsIC4uLmFyZ3MpKTtcbiAgICB9XG5cbiAgICB0aGlzLmN1cnJlbnRGaWxlLndyaXRlKCdcXG4nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTYW1lIGFzIGBvcGVuYC5cbiAgICovXG4gIHB1YmxpYyBpbmRlbnQodGV4dEJlZm9yZT86IHN0cmluZykge1xuICAgIHRoaXMub3Blbih0ZXh0QmVmb3JlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTYW1lIGFzIGBjbG9zZWAuXG4gICAqL1xuICBwdWJsaWMgdW5pbmRlbnQodGV4dEFmdGVyPzogc3RyaW5nIHwgZmFsc2UpIHtcbiAgICB0aGlzLmNsb3NlKHRleHRBZnRlcik7XG4gIH1cblxuICAvKipcbiAgICogSW5jcmVhc2VzIHRoZSBpbmRlbnRhdGlvbiBsZXZlbCBieSBgaW5kZW50YXRpb25gIHNwYWNlcyBmb3IgdGhlIG5leHQgbGluZS5cbiAgICogQHBhcmFtIHRleHRCZWZvcmUgVGV4dCB0byBlbWl0IGJlZm9yZSB0aGUgbmV3bGluZSAoaS5lLiBibG9jayBvcGVuKS5cbiAgICovXG4gIHB1YmxpYyBvcGVuKHRleHRCZWZvcmU/OiBzdHJpbmcpIHtcbiAgICB0aGlzLmxpbmUodGV4dEJlZm9yZSk7XG4gICAgdGhpcy5jdXJySW5kZW50Kys7XG4gIH1cblxuICAvKipcbiAgICogRGVjcmVhc2VzIHRoZSBpbmRlbnRhdGlvbiBsZXZlbCBieSBgaW5kZW50YXRpb25gIGZvciB0aGUgbmV4dCBsaW5lLlxuICAgKiBAcGFyYW0gdGV4dEFmdGVyIFRleHQgdG8gZW1pdCBpbiB0aGUgbGluZSBhZnRlciBpbmRlbnRhdGlvbiB3YXMgZGVjcmVhc2VkLlxuICAgKiAgICAgICAgICAgICAgICAgIElmIGBmYWxzZWAgbm8gbGluZSB3aWxsIGJlIGVtaXR0ZWQgYXQgYWxsLCBidXQgdGhlIGluZGVudFxuICAgKiAgICAgICAgICAgICAgICAgIGNvdW50ZXIgd2lsbCBiZSBkZWNyZW1lbnRlZC5cbiAgICovXG4gIHB1YmxpYyBjbG9zZSh0ZXh0QWZ0ZXI/OiBzdHJpbmcgfCBmYWxzZSkge1xuICAgIHRoaXMuY3VyckluZGVudC0tO1xuICAgIGlmICh0ZXh0QWZ0ZXIgIT09IGZhbHNlKSB7XG4gICAgICB0aGlzLmxpbmUodGV4dEFmdGVyKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgYSBjb2RlIGJsb2NrLiBUaGUgZm9ybWF0dGluZyBvZiB0aGUgYmxvY2sgaXMgZGV0ZXJtaW5lZCBieSBgb3BlbkJsb2NrRm9ybWF0dGVyYC5cbiAgICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gcGFzcyB0byB0aGUgZm9ybWF0dGVyLlxuICAgKi9cbiAgcHVibGljIG9wZW5CbG9jayh0ZXh0OiBzdHJpbmcpIHtcbiAgICB0aGlzLm9wZW4odGhpcy5vcGVuQmxvY2tGb3JtYXR0ZXIodGV4dCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyBhIGNvZGUgYmxvY2suIFRoZSBmb3JtYXR0aW5nIG9mIHRoZSBibG9jayBpcyBkZXRlcm1pbmVkIGJ5IGBjbG9zZUJsb2NrRm9ybWF0dGVyYC5cbiAgICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gcGFzcyB0byB0aGUgZm9ybWF0dGVyLlxuICAgKi9cbiAgcHVibGljIGNsb3NlQmxvY2sodGV4dD86IHN0cmluZykge1xuICAgIHRoaXMuY2xvc2UodGhpcy5jbG9zZUJsb2NrRm9ybWF0dGVyKHRleHQpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgZmlsZSB0byB0aGUgZXhjbHVkZSBsaXN0LiBUaGlzIG1lYW5zIHRoaXMgZmlsZSB3aWxsIG5vdCBiZSBzYXZlZCBkdXJpbmcgc2F2ZSgpLlxuICAgKiBAcGFyYW0gZmlsZVBhdGggVGhlIHJlbGF0aXZlIHBhdGggb2YgdGhlIGZpbGUuXG4gICAqL1xuICBwdWJsaWMgZXhjbHVkZShmaWxlUGF0aDogc3RyaW5nKSB7XG4gICAgdGhpcy5leGNsdWRlcy5wdXNoKGZpbGVQYXRoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBjb252ZXJ0c1N0cmluZ1RvQ2FtZWxDYXNlXG4gICAqL1xuICBwdWJsaWMgdG9DYW1lbENhc2UoLi4uYXJnczogc3RyaW5nW10pIHtcbiAgICByZXR1cm4gY2FzZXV0aWxzLnRvQ2FtZWxDYXNlKC4uLmFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzU3RyaW5nVG9QYXNjYWxDYXNlXG4gICAqL1xuICBwdWJsaWMgdG9QYXNjYWxDYXNlKC4uLmFyZ3M6IHN0cmluZ1tdKSB7XG4gICAgcmV0dXJuIGNhc2V1dGlscy50b1Bhc2NhbENhc2UoLi4uYXJncyk7XG4gIH1cblxuICAvKipcbiAgICogY29udmVydF9zdHJpbmdfdG9fc25ha2VfY2FzZVxuICAgKiBAcGFyYW0gc2VwIFNlcGFyYXRvciAoZGVmYXVsdHMgdG8gJ18nKVxuICAgKi9cbiAgcHVibGljIHRvU25ha2VDYXNlKHM6IHN0cmluZywgc2VwID0gJ18nKSB7XG4gICAgcmV0dXJuIGNhc2V1dGlscy50b1NuYWtlQ2FzZShzLCBzZXApO1xuICB9XG5cbiAgcHJpdmF0ZSBtYWtlSW5kZW50KCk6IHN0cmluZyB7XG4gICAgY29uc3QgbGVuZ3RoID0gdGhpcy5jdXJyZW50SW5kZW50TGVuZ3RoO1xuICAgIGlmIChsZW5ndGggPD0gMCkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5pbmRlbnRDaGFyYWN0ZXIucmVwZWF0KGxlbmd0aCk7XG4gIH1cbn1cbiJdfQ==
|
|
164
|
+
//# sourceMappingURL=codemaker.js.map
|
package/lib/filebuff.js
CHANGED
|
@@ -23,4 +23,4 @@ class FileBuffer {
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
exports.default = FileBuffer;
|
|
26
|
-
//# sourceMappingURL=
|
|
26
|
+
//# sourceMappingURL=filebuff.js.map
|
package/lib/index.js
CHANGED
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
8
12
|
}));
|
|
9
13
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
-
for (var p in m) if (p !== "default" && !
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
15
|
};
|
|
12
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
17
|
__exportStar(require("./codemaker"), exports);
|
|
14
18
|
__exportStar(require("./case-utils"), exports);
|
|
15
|
-
//# sourceMappingURL=
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codemaker",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.60.0",
|
|
4
4
|
"description": "A tiny utility for generating source code",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": {
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"directory": "packages/codemaker"
|
|
18
18
|
},
|
|
19
19
|
"engines": {
|
|
20
|
-
"node": ">=
|
|
20
|
+
"node": ">= 14.5.0"
|
|
21
21
|
},
|
|
22
22
|
"main": "lib/index.js",
|
|
23
23
|
"types": "lib/index.d.ts",
|
|
@@ -33,15 +33,9 @@
|
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"camelcase": "^6.3.0",
|
|
35
35
|
"decamelize": "^5.0.1",
|
|
36
|
-
"fs-extra": "^
|
|
36
|
+
"fs-extra": "^10.1.0"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@types/fs-extra": "^9.0.13"
|
|
40
|
-
"@types/jest": "^27.5.0",
|
|
41
|
-
"@types/node": "^12.20.50",
|
|
42
|
-
"eslint": "^8.15.0",
|
|
43
|
-
"jest": "^27.5.1",
|
|
44
|
-
"prettier": "^2.6.2",
|
|
45
|
-
"typescript": "~3.9.10"
|
|
39
|
+
"@types/fs-extra": "^9.0.13"
|
|
46
40
|
}
|
|
47
41
|
}
|
package/lib/case-utils.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"case-utils.d.ts","sourceRoot":"","sources":["case-utils.ts"],"names":[],"mappings":"AAMA,wBAAgB,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAErD;AAED,wBAAgB,YAAY,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAEtD;AAMD,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,MAAM,CAY9D"}
|
package/lib/codemaker.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codemaker.d.ts","sourceRoot":"","sources":["codemaker.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,qBAAa,SAAS;IACpB;;OAEG;IACI,WAAW,EAAE,MAAM,CAAC;IAE3B;;;OAGG;IACI,eAAe,EAAE,GAAG,GAAG,IAAI,CAAC;IAEnC,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA2B;IACjD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;gBAE7B,EACjB,gBAAoB,EACpB,eAAqB,GACtB,GAAE;QACD,gBAAgB,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;QAC5C,eAAe,CAAC,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;KAC3C;IAKN,IAAW,mBAAmB,IAAI,MAAM,CAEvC;IAED;;OAEG;IACI,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAmB;IAEpE;;OAEG;IACI,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,KAAK,CAAa;IAEvE;;;;OAIG;IACU,IAAI,CAAC,OAAO,EAAE,MAAM;IAOjC;;;;;OAKG;IACI,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAUhC;;;OAGG;IACI,SAAS,CAAC,QAAQ,EAAE,MAAM;IAcjC;;;;;;OAMG;IACI,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE;IAa3C;;OAEG;IACI,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM;IAIjC;;OAEG;IACI,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK;IAI1C;;;OAGG;IACI,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM;IAK/B;;;;;OAKG;IACI,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK;IAOvC;;;OAGG;IACI,SAAS,CAAC,IAAI,EAAE,MAAM;IAI7B;;;OAGG;IACI,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM;IAI/B;;;OAGG;IACI,OAAO,CAAC,QAAQ,EAAE,MAAM;IAI/B;;OAEG;IACI,WAAW,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE;IAIpC;;OAEG;IACI,YAAY,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE;IAIrC;;;OAGG;IACI,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,SAAM;IAIvC,OAAO,CAAC,UAAU;CAOnB"}
|
package/lib/filebuff.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"filebuff.d.ts","sourceRoot":"","sources":["filebuff.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,UAAU;IAC7B,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,OAAO,CAAC,MAAM,CAAM;gBAED,QAAQ,EAAE,MAAM;IAI5B,KAAK,CAAC,CAAC,EAAE,MAAM;IAIT,IAAI,CAAC,OAAO,EAAE,MAAM;CAUlC"}
|
package/lib/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"case-utils.test.d.ts","sourceRoot":"","sources":["case-utils.test.ts"],"names":[],"mappings":""}
|
package/test/case-utils.test.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const caseUtils = require("../lib/case-utils");
|
|
4
|
-
test('toCamelCase', () => {
|
|
5
|
-
expect(caseUtils.toCamelCase('EXAMPLE_VALUE')).toBe('exampleValue');
|
|
6
|
-
expect(caseUtils.toCamelCase('example', 'value')).toBe('exampleValue');
|
|
7
|
-
});
|
|
8
|
-
test('toPascalCase', () => {
|
|
9
|
-
expect(caseUtils.toPascalCase('EXAMPLE_VALUE')).toBe('ExampleValue');
|
|
10
|
-
expect(caseUtils.toPascalCase('example', 'value')).toBe('ExampleValue');
|
|
11
|
-
});
|
|
12
|
-
test('toSnakeCase', () => {
|
|
13
|
-
expect(caseUtils.toSnakeCase('EXAMPLE_VALUE')).toBe('example_value');
|
|
14
|
-
expect(caseUtils.toSnakeCase('exampleValue')).toBe('example_value');
|
|
15
|
-
expect(caseUtils.toSnakeCase('ExampleValue')).toBe('example_value');
|
|
16
|
-
expect(caseUtils.toSnakeCase('EPSConduit')).toBe('eps_conduit');
|
|
17
|
-
expect(caseUtils.toSnakeCase('SomeEBSVolume')).toBe('some_ebs_volume');
|
|
18
|
-
});
|
|
19
|
-
test('reserved word snake-casing', () => {
|
|
20
|
-
expect(caseUtils.toSnakeCase('SizeMiB')).toBe('size_mib');
|
|
21
|
-
expect(caseUtils.toSnakeCase('SizeMiBiBytes')).toBe('size_mi_bi_bytes');
|
|
22
|
-
expect(caseUtils.toSnakeCase('MiBSize')).toBe('mib_size');
|
|
23
|
-
});
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS11dGlscy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY2FzZS11dGlscy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsK0NBQStDO0FBRS9DLElBQUksQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO0lBQ3ZCLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUN6RSxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyxjQUFjLEVBQUUsR0FBRyxFQUFFO0lBQ3hCLE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3JFLE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUMxRSxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO0lBQ3ZCLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3JFLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2hFLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDekUsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsNEJBQTRCLEVBQUUsR0FBRyxFQUFFO0lBQ3RDLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzFELE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDeEUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDNUQsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjYXNlVXRpbHMgZnJvbSAnLi4vbGliL2Nhc2UtdXRpbHMnO1xuXG50ZXN0KCd0b0NhbWVsQ2FzZScsICgpID0+IHtcbiAgZXhwZWN0KGNhc2VVdGlscy50b0NhbWVsQ2FzZSgnRVhBTVBMRV9WQUxVRScpKS50b0JlKCdleGFtcGxlVmFsdWUnKTtcbiAgZXhwZWN0KGNhc2VVdGlscy50b0NhbWVsQ2FzZSgnZXhhbXBsZScsICd2YWx1ZScpKS50b0JlKCdleGFtcGxlVmFsdWUnKTtcbn0pO1xuXG50ZXN0KCd0b1Bhc2NhbENhc2UnLCAoKSA9PiB7XG4gIGV4cGVjdChjYXNlVXRpbHMudG9QYXNjYWxDYXNlKCdFWEFNUExFX1ZBTFVFJykpLnRvQmUoJ0V4YW1wbGVWYWx1ZScpO1xuICBleHBlY3QoY2FzZVV0aWxzLnRvUGFzY2FsQ2FzZSgnZXhhbXBsZScsICd2YWx1ZScpKS50b0JlKCdFeGFtcGxlVmFsdWUnKTtcbn0pO1xuXG50ZXN0KCd0b1NuYWtlQ2FzZScsICgpID0+IHtcbiAgZXhwZWN0KGNhc2VVdGlscy50b1NuYWtlQ2FzZSgnRVhBTVBMRV9WQUxVRScpKS50b0JlKCdleGFtcGxlX3ZhbHVlJyk7XG4gIGV4cGVjdChjYXNlVXRpbHMudG9TbmFrZUNhc2UoJ2V4YW1wbGVWYWx1ZScpKS50b0JlKCdleGFtcGxlX3ZhbHVlJyk7XG4gIGV4cGVjdChjYXNlVXRpbHMudG9TbmFrZUNhc2UoJ0V4YW1wbGVWYWx1ZScpKS50b0JlKCdleGFtcGxlX3ZhbHVlJyk7XG4gIGV4cGVjdChjYXNlVXRpbHMudG9TbmFrZUNhc2UoJ0VQU0NvbmR1aXQnKSkudG9CZSgnZXBzX2NvbmR1aXQnKTtcbiAgZXhwZWN0KGNhc2VVdGlscy50b1NuYWtlQ2FzZSgnU29tZUVCU1ZvbHVtZScpKS50b0JlKCdzb21lX2Vic192b2x1bWUnKTtcbn0pO1xuXG50ZXN0KCdyZXNlcnZlZCB3b3JkIHNuYWtlLWNhc2luZycsICgpID0+IHtcbiAgZXhwZWN0KGNhc2VVdGlscy50b1NuYWtlQ2FzZSgnU2l6ZU1pQicpKS50b0JlKCdzaXplX21pYicpO1xuICBleHBlY3QoY2FzZVV0aWxzLnRvU25ha2VDYXNlKCdTaXplTWlCaUJ5dGVzJykpLnRvQmUoJ3NpemVfbWlfYmlfYnl0ZXMnKTtcbiAgZXhwZWN0KGNhc2VVdGlscy50b1NuYWtlQ2FzZSgnTWlCU2l6ZScpKS50b0JlKCdtaWJfc2l6ZScpO1xufSk7XG4iXX0=
|
package/test/filebuff.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"filebuff.test.d.ts","sourceRoot":"","sources":["filebuff.test.ts"],"names":[],"mappings":""}
|
package/test/filebuff.test.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const fs = require("fs-extra");
|
|
4
|
-
const os = require("os");
|
|
5
|
-
const path = require("path");
|
|
6
|
-
const filebuff_1 = require("../lib/filebuff");
|
|
7
|
-
test('file buffer', async () => {
|
|
8
|
-
const fb = new filebuff_1.default('hello.source');
|
|
9
|
-
fb.write('hello');
|
|
10
|
-
fb.write('\n');
|
|
11
|
-
fb.write('world');
|
|
12
|
-
// save the file
|
|
13
|
-
const tempdir = await fs.mkdtemp(path.join(os.tmpdir(), 'test-file-buffer'));
|
|
14
|
-
await fb.save(tempdir);
|
|
15
|
-
// verify the contents was as expected
|
|
16
|
-
const data = (await fs.readFile(path.join(tempdir, fb.filePath))).toString();
|
|
17
|
-
expect(data).toBe('hello\nworld');
|
|
18
|
-
});
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZWJ1ZmYudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZpbGVidWZmLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwrQkFBK0I7QUFDL0IseUJBQXlCO0FBQ3pCLDZCQUE2QjtBQUU3Qiw4Q0FBeUM7QUFFekMsSUFBSSxDQUFDLGFBQWEsRUFBRSxLQUFLLElBQUksRUFBRTtJQUM3QixNQUFNLEVBQUUsR0FBRyxJQUFJLGtCQUFVLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDMUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQixFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2YsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUVsQixnQkFBZ0I7SUFDaEIsTUFBTSxPQUFPLEdBQUcsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLGtCQUFrQixDQUFDLENBQUMsQ0FBQztJQUM3RSxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFdkIsc0NBQXNDO0lBQ3RDLE1BQU0sSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0UsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNwQyxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCAqIGFzIG9zIGZyb20gJ29zJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5cbmltcG9ydCBGaWxlQnVmZmVyIGZyb20gJy4uL2xpYi9maWxlYnVmZic7XG5cbnRlc3QoJ2ZpbGUgYnVmZmVyJywgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBmYiA9IG5ldyBGaWxlQnVmZmVyKCdoZWxsby5zb3VyY2UnKTtcbiAgZmIud3JpdGUoJ2hlbGxvJyk7XG4gIGZiLndyaXRlKCdcXG4nKTtcbiAgZmIud3JpdGUoJ3dvcmxkJyk7XG5cbiAgLy8gc2F2ZSB0aGUgZmlsZVxuICBjb25zdCB0ZW1wZGlyID0gYXdhaXQgZnMubWtkdGVtcChwYXRoLmpvaW4ob3MudG1wZGlyKCksICd0ZXN0LWZpbGUtYnVmZmVyJykpO1xuICBhd2FpdCBmYi5zYXZlKHRlbXBkaXIpO1xuXG4gIC8vIHZlcmlmeSB0aGUgY29udGVudHMgd2FzIGFzIGV4cGVjdGVkXG4gIGNvbnN0IGRhdGEgPSAoYXdhaXQgZnMucmVhZEZpbGUocGF0aC5qb2luKHRlbXBkaXIsIGZiLmZpbGVQYXRoKSkpLnRvU3RyaW5nKCk7XG4gIGV4cGVjdChkYXRhKS50b0JlKCdoZWxsb1xcbndvcmxkJyk7XG59KTtcbiJdfQ==
|
package/test/source.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"source.test.d.ts","sourceRoot":"","sources":["source.test.ts"],"names":[],"mappings":""}
|
package/test/source.test.js
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const fs = require("fs-extra");
|
|
4
|
-
const os = require("os");
|
|
5
|
-
const path = require("path");
|
|
6
|
-
const lib_1 = require("../lib");
|
|
7
|
-
test('cannot write before opening a file', () => {
|
|
8
|
-
const sources = new lib_1.CodeMaker();
|
|
9
|
-
expect(() => sources.line('Nope!')).toThrow(/Cannot emit source lines without opening a file/);
|
|
10
|
-
});
|
|
11
|
-
test('source files', async () => {
|
|
12
|
-
const sources = new lib_1.CodeMaker();
|
|
13
|
-
sources.openFile('myfile.js');
|
|
14
|
-
sources.line('first line');
|
|
15
|
-
sources.openBlock('open');
|
|
16
|
-
sources.line('second line');
|
|
17
|
-
sources.closeBlock();
|
|
18
|
-
sources.open('generic open [');
|
|
19
|
-
sources.line('boom');
|
|
20
|
-
sources.line('bam');
|
|
21
|
-
sources.close(']');
|
|
22
|
-
sources.closeFile('myfile.js');
|
|
23
|
-
const yourfileRelativePath = './relative/subdirs/are/also/supported/yourfile.js';
|
|
24
|
-
sources.openFile(yourfileRelativePath);
|
|
25
|
-
sources.line('this is your file speaking');
|
|
26
|
-
// change indentation and block chars
|
|
27
|
-
sources.indentation = 10;
|
|
28
|
-
sources.openBlockFormatter = (s) => `(--- ${s} ---`;
|
|
29
|
-
sources.closeBlockFormatter = (s) => `--- ${s} ---)`;
|
|
30
|
-
sources.openBlock('block1');
|
|
31
|
-
sources.line('block1.line1');
|
|
32
|
-
sources.line('block1.line2');
|
|
33
|
-
sources.openBlock('block2');
|
|
34
|
-
sources.line('block2.line1');
|
|
35
|
-
sources.closeBlock('block2 (close)');
|
|
36
|
-
sources.line('block1.line3');
|
|
37
|
-
sources.closeBlock('block1 (close)');
|
|
38
|
-
sources.closeFile(yourfileRelativePath);
|
|
39
|
-
// files can also be excluded by adding their path to exclude()
|
|
40
|
-
sources.openFile('excluded.txt');
|
|
41
|
-
sources.line('this file will not be emitted in save()');
|
|
42
|
-
sources.closeFile('excluded.txt');
|
|
43
|
-
// later in the day
|
|
44
|
-
sources.exclude('excluded.txt');
|
|
45
|
-
const dirname = await fs.mkdtemp(path.join(os.tmpdir(), 'source-files'));
|
|
46
|
-
const files = await sources.save(dirname);
|
|
47
|
-
expect(files).toHaveLength(2);
|
|
48
|
-
const myfilePath = path.join(dirname, 'myfile.js');
|
|
49
|
-
const yourfilePath = path.join(dirname, yourfileRelativePath);
|
|
50
|
-
expect(files[0]).toBe(myfilePath);
|
|
51
|
-
expect(files[1]).toBe(yourfilePath);
|
|
52
|
-
const myfile = (await fs.readFile(files[0])).toString();
|
|
53
|
-
const yourfile = (await fs.readFile(files[1])).toString();
|
|
54
|
-
expect(myfile).toBe(expectedMyFile);
|
|
55
|
-
expect(yourfile).toBe(expectedYourFile);
|
|
56
|
-
});
|
|
57
|
-
/**
|
|
58
|
-
* Should fail if openFile and closeFile have are not matched.
|
|
59
|
-
*/
|
|
60
|
-
test('close file mismatch', () => {
|
|
61
|
-
const sources = new lib_1.CodeMaker();
|
|
62
|
-
sources.openFile('A');
|
|
63
|
-
expect(() => sources.closeFile('B')).toThrow(/Cannot close file/);
|
|
64
|
-
});
|
|
65
|
-
test('custom multi-line block', async () => {
|
|
66
|
-
const maker = new lib_1.CodeMaker();
|
|
67
|
-
maker.openBlock = (s) => {
|
|
68
|
-
maker.line(s);
|
|
69
|
-
maker.open('{');
|
|
70
|
-
};
|
|
71
|
-
maker.openFile('custom-blocks.cpp');
|
|
72
|
-
maker.openBlock('Block1()');
|
|
73
|
-
maker.line('L1');
|
|
74
|
-
maker.openBlock('Block2()');
|
|
75
|
-
maker.line('L2');
|
|
76
|
-
maker.closeBlock();
|
|
77
|
-
maker.closeBlock();
|
|
78
|
-
maker.closeFile('custom-blocks.cpp');
|
|
79
|
-
const dirname = await fs.mkdtemp(path.join(os.tmpdir(), 'source-files'));
|
|
80
|
-
const files = await maker.save(dirname);
|
|
81
|
-
const actual = (await fs.readFile(files[0])).toString();
|
|
82
|
-
expect(actual).toBe(expectedCustomBlocks);
|
|
83
|
-
});
|
|
84
|
-
const expectedMyFile = `first line
|
|
85
|
-
open {
|
|
86
|
-
second line
|
|
87
|
-
}
|
|
88
|
-
generic open [
|
|
89
|
-
boom
|
|
90
|
-
bam
|
|
91
|
-
]
|
|
92
|
-
`;
|
|
93
|
-
const expectedYourFile = `this is your file speaking
|
|
94
|
-
(--- block1 ---
|
|
95
|
-
block1.line1
|
|
96
|
-
block1.line2
|
|
97
|
-
(--- block2 ---
|
|
98
|
-
block2.line1
|
|
99
|
-
--- block2 (close) ---)
|
|
100
|
-
block1.line3
|
|
101
|
-
--- block1 (close) ---)
|
|
102
|
-
`;
|
|
103
|
-
const expectedCustomBlocks = `Block1()
|
|
104
|
-
{
|
|
105
|
-
L1
|
|
106
|
-
Block2()
|
|
107
|
-
{
|
|
108
|
-
L2
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
`;
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzb3VyY2UudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLCtCQUErQjtBQUMvQix5QkFBeUI7QUFDekIsNkJBQTZCO0FBRTdCLGdDQUFtQztBQUVuQyxJQUFJLENBQUMsb0NBQW9DLEVBQUUsR0FBRyxFQUFFO0lBQzlDLE1BQU0sT0FBTyxHQUFHLElBQUksZUFBUyxFQUFFLENBQUM7SUFDaEMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3pDLGlEQUFpRCxDQUNsRCxDQUFDO0FBQ0osQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssSUFBSSxFQUFFO0lBQzlCLE1BQU0sT0FBTyxHQUFHLElBQUksZUFBUyxFQUFFLENBQUM7SUFDaEMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5QixPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNCLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDMUIsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM1QixPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQy9CLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQixPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLE9BQU8sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFL0IsTUFBTSxvQkFBb0IsR0FDeEIsbURBQW1ELENBQUM7SUFDdEQsT0FBTyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3ZDLE9BQU8sQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUUzQyxxQ0FBcUM7SUFDckMsT0FBTyxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUM7SUFDekIsT0FBTyxDQUFDLGtCQUFrQixHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO0lBQ3BELE9BQU8sQ0FBQyxtQkFBbUIsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUVyRCxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDN0IsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM3QixPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDN0IsT0FBTyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3JDLE9BQU8sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDN0IsT0FBTyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRXJDLE9BQU8sQ0FBQyxTQUFTLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUV4QywrREFBK0Q7SUFDL0QsT0FBTyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNqQyxPQUFPLENBQUMsSUFBSSxDQUFDLHlDQUF5QyxDQUFDLENBQUM7SUFDeEQsT0FBTyxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUVsQyxtQkFBbUI7SUFDbkIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUVoQyxNQUFNLE9BQU8sR0FBRyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUN6RSxNQUFNLEtBQUssR0FBRyxNQUFNLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFMUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUU5QixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNuRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBRTlELE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUVwQyxNQUFNLE1BQU0sR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3hELE1BQU0sUUFBUSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7SUFFMUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNwQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDMUMsQ0FBQyxDQUFDLENBQUM7QUFFSDs7R0FFRztBQUNILElBQUksQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLEVBQUU7SUFDL0IsTUFBTSxPQUFPLEdBQUcsSUFBSSxlQUFTLEVBQUUsQ0FBQztJQUNoQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3RCLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBQUM7QUFDcEUsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMseUJBQXlCLEVBQUUsS0FBSyxJQUFJLEVBQUU7SUFDekMsTUFBTSxLQUFLLEdBQUcsSUFBSSxlQUFTLEVBQUUsQ0FBQztJQUU5QixLQUFLLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDdEIsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNkLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEIsQ0FBQyxDQUFDO0lBRUYsS0FBSyxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3BDLEtBQUssQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDNUIsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQixLQUFLLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzVCLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakIsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ25CLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNuQixLQUFLLENBQUMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFFckMsTUFBTSxPQUFPLEdBQUcsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDekUsTUFBTSxLQUFLLEdBQUcsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXhDLE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7SUFFeEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0FBQzVDLENBQUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxjQUFjLEdBQUc7Ozs7Ozs7O0NBUXRCLENBQUM7QUFFRixNQUFNLGdCQUFnQixHQUFHOzs7Ozs7Ozs7Q0FTeEIsQ0FBQztBQUVGLE1BQU0sb0JBQW9CLEdBQUc7Ozs7Ozs7O0NBUTVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgKiBhcyBvcyBmcm9tICdvcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuXG5pbXBvcnQgeyBDb2RlTWFrZXIgfSBmcm9tICcuLi9saWInO1xuXG50ZXN0KCdjYW5ub3Qgd3JpdGUgYmVmb3JlIG9wZW5pbmcgYSBmaWxlJywgKCkgPT4ge1xuICBjb25zdCBzb3VyY2VzID0gbmV3IENvZGVNYWtlcigpO1xuICBleHBlY3QoKCkgPT4gc291cmNlcy5saW5lKCdOb3BlIScpKS50b1Rocm93KFxuICAgIC9DYW5ub3QgZW1pdCBzb3VyY2UgbGluZXMgd2l0aG91dCBvcGVuaW5nIGEgZmlsZS8sXG4gICk7XG59KTtcblxudGVzdCgnc291cmNlIGZpbGVzJywgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBzb3VyY2VzID0gbmV3IENvZGVNYWtlcigpO1xuICBzb3VyY2VzLm9wZW5GaWxlKCdteWZpbGUuanMnKTtcbiAgc291cmNlcy5saW5lKCdmaXJzdCBsaW5lJyk7XG4gIHNvdXJjZXMub3BlbkJsb2NrKCdvcGVuJyk7XG4gIHNvdXJjZXMubGluZSgnc2Vjb25kIGxpbmUnKTtcbiAgc291cmNlcy5jbG9zZUJsb2NrKCk7XG4gIHNvdXJjZXMub3BlbignZ2VuZXJpYyBvcGVuIFsnKTtcbiAgc291cmNlcy5saW5lKCdib29tJyk7XG4gIHNvdXJjZXMubGluZSgnYmFtJyk7XG4gIHNvdXJjZXMuY2xvc2UoJ10nKTtcbiAgc291cmNlcy5jbG9zZUZpbGUoJ215ZmlsZS5qcycpO1xuXG4gIGNvbnN0IHlvdXJmaWxlUmVsYXRpdmVQYXRoID1cbiAgICAnLi9yZWxhdGl2ZS9zdWJkaXJzL2FyZS9hbHNvL3N1cHBvcnRlZC95b3VyZmlsZS5qcyc7XG4gIHNvdXJjZXMub3BlbkZpbGUoeW91cmZpbGVSZWxhdGl2ZVBhdGgpO1xuICBzb3VyY2VzLmxpbmUoJ3RoaXMgaXMgeW91ciBmaWxlIHNwZWFraW5nJyk7XG5cbiAgLy8gY2hhbmdlIGluZGVudGF0aW9uIGFuZCBibG9jayBjaGFyc1xuICBzb3VyY2VzLmluZGVudGF0aW9uID0gMTA7XG4gIHNvdXJjZXMub3BlbkJsb2NrRm9ybWF0dGVyID0gKHMpID0+IGAoLS0tICR7c30gLS0tYDtcbiAgc291cmNlcy5jbG9zZUJsb2NrRm9ybWF0dGVyID0gKHMpID0+IGAtLS0gJHtzfSAtLS0pYDtcblxuICBzb3VyY2VzLm9wZW5CbG9jaygnYmxvY2sxJyk7XG4gIHNvdXJjZXMubGluZSgnYmxvY2sxLmxpbmUxJyk7XG4gIHNvdXJjZXMubGluZSgnYmxvY2sxLmxpbmUyJyk7XG4gIHNvdXJjZXMub3BlbkJsb2NrKCdibG9jazInKTtcbiAgc291cmNlcy5saW5lKCdibG9jazIubGluZTEnKTtcbiAgc291cmNlcy5jbG9zZUJsb2NrKCdibG9jazIgKGNsb3NlKScpO1xuICBzb3VyY2VzLmxpbmUoJ2Jsb2NrMS5saW5lMycpO1xuICBzb3VyY2VzLmNsb3NlQmxvY2soJ2Jsb2NrMSAoY2xvc2UpJyk7XG5cbiAgc291cmNlcy5jbG9zZUZpbGUoeW91cmZpbGVSZWxhdGl2ZVBhdGgpO1xuXG4gIC8vIGZpbGVzIGNhbiBhbHNvIGJlIGV4Y2x1ZGVkIGJ5IGFkZGluZyB0aGVpciBwYXRoIHRvIGV4Y2x1ZGUoKVxuICBzb3VyY2VzLm9wZW5GaWxlKCdleGNsdWRlZC50eHQnKTtcbiAgc291cmNlcy5saW5lKCd0aGlzIGZpbGUgd2lsbCBub3QgYmUgZW1pdHRlZCBpbiBzYXZlKCknKTtcbiAgc291cmNlcy5jbG9zZUZpbGUoJ2V4Y2x1ZGVkLnR4dCcpO1xuXG4gIC8vIGxhdGVyIGluIHRoZSBkYXlcbiAgc291cmNlcy5leGNsdWRlKCdleGNsdWRlZC50eHQnKTtcblxuICBjb25zdCBkaXJuYW1lID0gYXdhaXQgZnMubWtkdGVtcChwYXRoLmpvaW4ob3MudG1wZGlyKCksICdzb3VyY2UtZmlsZXMnKSk7XG4gIGNvbnN0IGZpbGVzID0gYXdhaXQgc291cmNlcy5zYXZlKGRpcm5hbWUpO1xuXG4gIGV4cGVjdChmaWxlcykudG9IYXZlTGVuZ3RoKDIpO1xuXG4gIGNvbnN0IG15ZmlsZVBhdGggPSBwYXRoLmpvaW4oZGlybmFtZSwgJ215ZmlsZS5qcycpO1xuICBjb25zdCB5b3VyZmlsZVBhdGggPSBwYXRoLmpvaW4oZGlybmFtZSwgeW91cmZpbGVSZWxhdGl2ZVBhdGgpO1xuXG4gIGV4cGVjdChmaWxlc1swXSkudG9CZShteWZpbGVQYXRoKTtcbiAgZXhwZWN0KGZpbGVzWzFdKS50b0JlKHlvdXJmaWxlUGF0aCk7XG5cbiAgY29uc3QgbXlmaWxlID0gKGF3YWl0IGZzLnJlYWRGaWxlKGZpbGVzWzBdKSkudG9TdHJpbmcoKTtcbiAgY29uc3QgeW91cmZpbGUgPSAoYXdhaXQgZnMucmVhZEZpbGUoZmlsZXNbMV0pKS50b1N0cmluZygpO1xuXG4gIGV4cGVjdChteWZpbGUpLnRvQmUoZXhwZWN0ZWRNeUZpbGUpO1xuICBleHBlY3QoeW91cmZpbGUpLnRvQmUoZXhwZWN0ZWRZb3VyRmlsZSk7XG59KTtcblxuLyoqXG4gKiBTaG91bGQgZmFpbCBpZiBvcGVuRmlsZSBhbmQgY2xvc2VGaWxlIGhhdmUgYXJlIG5vdCBtYXRjaGVkLlxuICovXG50ZXN0KCdjbG9zZSBmaWxlIG1pc21hdGNoJywgKCkgPT4ge1xuICBjb25zdCBzb3VyY2VzID0gbmV3IENvZGVNYWtlcigpO1xuICBzb3VyY2VzLm9wZW5GaWxlKCdBJyk7XG4gIGV4cGVjdCgoKSA9PiBzb3VyY2VzLmNsb3NlRmlsZSgnQicpKS50b1Rocm93KC9DYW5ub3QgY2xvc2UgZmlsZS8pO1xufSk7XG5cbnRlc3QoJ2N1c3RvbSBtdWx0aS1saW5lIGJsb2NrJywgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBtYWtlciA9IG5ldyBDb2RlTWFrZXIoKTtcblxuICBtYWtlci5vcGVuQmxvY2sgPSAocykgPT4ge1xuICAgIG1ha2VyLmxpbmUocyk7XG4gICAgbWFrZXIub3BlbigneycpO1xuICB9O1xuXG4gIG1ha2VyLm9wZW5GaWxlKCdjdXN0b20tYmxvY2tzLmNwcCcpO1xuICBtYWtlci5vcGVuQmxvY2soJ0Jsb2NrMSgpJyk7XG4gIG1ha2VyLmxpbmUoJ0wxJyk7XG4gIG1ha2VyLm9wZW5CbG9jaygnQmxvY2syKCknKTtcbiAgbWFrZXIubGluZSgnTDInKTtcbiAgbWFrZXIuY2xvc2VCbG9jaygpO1xuICBtYWtlci5jbG9zZUJsb2NrKCk7XG4gIG1ha2VyLmNsb3NlRmlsZSgnY3VzdG9tLWJsb2Nrcy5jcHAnKTtcblxuICBjb25zdCBkaXJuYW1lID0gYXdhaXQgZnMubWtkdGVtcChwYXRoLmpvaW4ob3MudG1wZGlyKCksICdzb3VyY2UtZmlsZXMnKSk7XG4gIGNvbnN0IGZpbGVzID0gYXdhaXQgbWFrZXIuc2F2ZShkaXJuYW1lKTtcblxuICBjb25zdCBhY3R1YWwgPSAoYXdhaXQgZnMucmVhZEZpbGUoZmlsZXNbMF0pKS50b1N0cmluZygpO1xuXG4gIGV4cGVjdChhY3R1YWwpLnRvQmUoZXhwZWN0ZWRDdXN0b21CbG9ja3MpO1xufSk7XG5cbmNvbnN0IGV4cGVjdGVkTXlGaWxlID0gYGZpcnN0IGxpbmVcbm9wZW4ge1xuICAgIHNlY29uZCBsaW5lXG59XG5nZW5lcmljIG9wZW4gW1xuICAgIGJvb21cbiAgICBiYW1cbl1cbmA7XG5cbmNvbnN0IGV4cGVjdGVkWW91ckZpbGUgPSBgdGhpcyBpcyB5b3VyIGZpbGUgc3BlYWtpbmdcbigtLS0gYmxvY2sxIC0tLVxuICAgICAgICAgIGJsb2NrMS5saW5lMVxuICAgICAgICAgIGJsb2NrMS5saW5lMlxuICAgICAgICAgICgtLS0gYmxvY2syIC0tLVxuICAgICAgICAgICAgICAgICAgICBibG9jazIubGluZTFcbiAgICAgICAgICAtLS0gYmxvY2syIChjbG9zZSkgLS0tKVxuICAgICAgICAgIGJsb2NrMS5saW5lM1xuLS0tIGJsb2NrMSAoY2xvc2UpIC0tLSlcbmA7XG5cbmNvbnN0IGV4cGVjdGVkQ3VzdG9tQmxvY2tzID0gYEJsb2NrMSgpXG57XG4gICAgTDFcbiAgICBCbG9jazIoKVxuICAgIHtcbiAgICAgICAgTDJcbiAgICB9XG59XG5gO1xuIl19
|