@qodalis/cli-qr 0.0.1 → 0.0.2
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.
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
-
import { DefaultLibraryAuthor, } from '@qodalis/cli-core';
|
|
2
|
+
import { CliForegroundColor, DefaultLibraryAuthor, } from '@qodalis/cli-core';
|
|
3
3
|
import QRCodeStyling from 'qr-code-styling';
|
|
4
4
|
import { LIBRARY_VERSION } from '../version';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -59,7 +59,19 @@ export class CliQrCommandProcessor {
|
|
|
59
59
|
context.executor.showHelp(command, context);
|
|
60
60
|
}
|
|
61
61
|
writeDescription(context) {
|
|
62
|
-
context
|
|
62
|
+
const { writer } = context;
|
|
63
|
+
writer.writeln('Generate QR codes from text or URLs and download as PNG');
|
|
64
|
+
writer.writeln();
|
|
65
|
+
writer.writeln('📋 Usage:');
|
|
66
|
+
writer.writeln(` ${writer.wrapInColor('qr generate --text="<content>"', CliForegroundColor.Cyan)}`);
|
|
67
|
+
writer.writeln();
|
|
68
|
+
writer.writeln('⚙️ Options:');
|
|
69
|
+
writer.writeln(` ${writer.wrapInColor('--text', CliForegroundColor.Yellow)} Text or URL to encode (required)`);
|
|
70
|
+
writer.writeln(` ${writer.wrapInColor('--fileName', CliForegroundColor.Yellow)} Output filename (default: qr-code)`);
|
|
71
|
+
writer.writeln();
|
|
72
|
+
writer.writeln('📝 Examples:');
|
|
73
|
+
writer.writeln(` qr generate --text="https://example.com" ${writer.wrapInColor('# URL QR code', CliForegroundColor.Green)}`);
|
|
74
|
+
writer.writeln(` qr generate --text="Hello!" --fileName="my-qr" ${writer.wrapInColor('# Custom filename', CliForegroundColor.Green)}`);
|
|
63
75
|
}
|
|
64
76
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliQrCommandProcessor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
65
77
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliQrCommandProcessor }); }
|
|
@@ -67,4 +79,4 @@ export class CliQrCommandProcessor {
|
|
|
67
79
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliQrCommandProcessor, decorators: [{
|
|
68
80
|
type: Injectable
|
|
69
81
|
}], ctorParameters: function () { return []; } });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLXFyLWNvbW1hbmQtcHJvY2Vzc29yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcXIvc3JjL2xpYi9wcm9jZXNzb3JzL2NsaS1xci1jb21tYW5kLXByb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFDSCxrQkFBa0IsRUFFbEIsb0JBQW9CLEdBR3ZCLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxhQUFhLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQzs7QUFHN0MsTUFBTSxPQUFPLHFCQUFxQjtJQVk5QjtRQVhBLFlBQU8sR0FBRyxJQUFJLENBQUM7UUFFZixnQkFBVyxHQUNQLG9IQUFvSCxDQUFDO1FBRXpILFdBQU0sR0FBRyxvQkFBb0IsQ0FBQztRQUU5QixZQUFPLEdBQUcsZUFBZSxDQUFDO1FBRTFCLGVBQVUsR0FBd0MsRUFBRSxDQUFDO1FBR2pELElBQUksQ0FBQyxVQUFVLEdBQUc7WUFDZDtnQkFDSSxPQUFPLEVBQUUsVUFBVTtnQkFDbkIsV0FBVyxFQUNQLDRGQUE0RjtnQkFDaEcsVUFBVSxFQUFFO29CQUNSO3dCQUNJLElBQUksRUFBRSxNQUFNO3dCQUNaLFdBQVcsRUFBRSxvQ0FBb0M7d0JBQ2pELElBQUksRUFBRSxRQUFRO3dCQUNkLFFBQVEsRUFBRSxJQUFJO3FCQUNqQjtvQkFDRDt3QkFDSSxJQUFJLEVBQUUsVUFBVTt3QkFDaEIsV0FBVyxFQUFFLGVBQWU7d0JBQzVCLElBQUksRUFBRSxRQUFRO3dCQUNkLFFBQVEsRUFBRSxLQUFLO3FCQUNsQjtpQkFDSjtnQkFDRCxjQUFjLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRTtvQkFDdkMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFFbEMsSUFBSSxDQUFDLElBQUksRUFBRTt3QkFDUCxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FDckIsb0NBQW9DLENBQ3ZDLENBQUM7d0JBQ0YsT0FBTztxQkFDVjtvQkFFRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFNBQVMsQ0FBQztvQkFFdkQsSUFBSTt3QkFDQSxNQUFNLE1BQU0sR0FBRyxJQUFJLGFBQWEsQ0FBQzs0QkFDN0IsS0FBSyxFQUFFLEdBQUc7NEJBQ1YsTUFBTSxFQUFFLEdBQUc7NEJBQ1gsSUFBSSxFQUFFLElBQUk7NEJBQ1YsSUFBSSxFQUFFLEtBQUs7eUJBQ2QsQ0FBQyxDQUFDO3dCQUVILE1BQU0sTUFBTSxDQUFDLFFBQVEsQ0FBQzs0QkFDbEIsSUFBSSxFQUFFLFFBQVE7NEJBQ2QsU0FBUyxFQUFFLEtBQUs7eUJBQ25CLENBQUMsQ0FBQzt3QkFFSCxPQUFPLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FDdkIsZ0JBQWdCLElBQUksbUJBQW1CLFFBQVEsTUFBTSxDQUN4RCxDQUFDO3FCQUNMO29CQUFDLE9BQU8sR0FBRyxFQUFFO3dCQUNWLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUNyQiwrQkFBK0IsR0FBRyxFQUFFLENBQ3ZDLENBQUM7cUJBQ0w7Z0JBQ0wsQ0FBQzthQUNKO1NBQ0osQ0FBQztJQUNOLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYyxDQUNoQixPQUEwQixFQUMxQixPQUE2QjtRQUU3QixPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELGdCQUFnQixDQUFDLE9BQTZCO1FBQzFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDM0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO1FBQzFFLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNqQixNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxNQUFNLENBQUMsV0FBVyxDQUFDLGdDQUFnQyxFQUFFLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNyRyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMvQixNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsa0JBQWtCLENBQUMsTUFBTSxDQUFDLDRDQUE0QyxDQUFDLENBQUM7UUFDekgsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLE1BQU0sQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLGtCQUFrQixDQUFDLE1BQU0sQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO1FBQzNILE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNqQixNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sQ0FBQyxPQUFPLENBQUMsNkRBQTZELE1BQU0sQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3SSxNQUFNLENBQUMsT0FBTyxDQUFDLDZEQUE2RCxNQUFNLENBQUMsV0FBVyxDQUFDLG1CQUFtQixFQUFFLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNySixDQUFDOytHQTNGUSxxQkFBcUI7bUhBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ2xpRm9yZWdyb3VuZENvbG9yLFxuICAgIENsaVByb2Nlc3NDb21tYW5kLFxuICAgIERlZmF1bHRMaWJyYXJ5QXV0aG9yLFxuICAgIElDbGlDb21tYW5kUHJvY2Vzc29yLFxuICAgIElDbGlFeGVjdXRpb25Db250ZXh0LFxufSBmcm9tICdAcW9kYWxpcy9jbGktY29yZSc7XG5pbXBvcnQgUVJDb2RlU3R5bGluZyBmcm9tICdxci1jb2RlLXN0eWxpbmcnO1xuaW1wb3J0IHsgTElCUkFSWV9WRVJTSU9OIH0gZnJvbSAnLi4vdmVyc2lvbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDbGlRckNvbW1hbmRQcm9jZXNzb3IgaW1wbGVtZW50cyBJQ2xpQ29tbWFuZFByb2Nlc3NvciB7XG4gICAgY29tbWFuZCA9ICdxcic7XG5cbiAgICBkZXNjcmlwdGlvbiA9XG4gICAgICAgICdQcm92aWRlIHV0aWxpdHkgZnVuY3Rpb25zIHRvIGdlbmVyYXRlIFFSIGNvZGVzLiBVc2FnZTogcXIgZ2VuZXJhdGUgLS10ZXh0IFwiaHR0cHM6Ly9leGFtcGxlLmNvbVwiIC0tZmlsZU5hbWUgXCJteS1xclwiJztcblxuICAgIGF1dGhvciA9IERlZmF1bHRMaWJyYXJ5QXV0aG9yO1xuXG4gICAgdmVyc2lvbiA9IExJQlJBUllfVkVSU0lPTjtcblxuICAgIHByb2Nlc3NvcnM/OiBJQ2xpQ29tbWFuZFByb2Nlc3NvcltdIHwgdW5kZWZpbmVkID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5wcm9jZXNzb3JzID0gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGNvbW1hbmQ6ICdnZW5lcmF0ZScsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgICAgICAgICAgICAgICdHZW5lcmF0ZSBhIFFSIGNvZGUgYW5kIGRvd25sb2FkIGl0IGFzIFBORy4gVXNhZ2U6IHFyIGdlbmVyYXRlIC0tdGV4dCBcImh0dHBzOi8vZXhhbXBsZS5jb21cIicsXG4gICAgICAgICAgICAgICAgcGFyYW1ldGVyczogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAndGV4dCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogJ1RleHQgb3IgVVJMIHRvIGVuY29kZSBhcyBhIFFSIGNvZGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2ZpbGVOYW1lJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAndGhlIGZpbGUgbmFtZScsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHByb2Nlc3NDb21tYW5kOiBhc3luYyAoY29tbWFuZCwgY29udGV4dCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0ZXh0ID0gY29tbWFuZC5hcmdzWyd0ZXh0J107XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0ZXh0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LndyaXRlci53cml0ZUVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICdNaXNzaW5nIHJlcXVpcmVkIHBhcmFtZXRlcjogLS10ZXh0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBmaWxlTmFtZSA9IGNvbW1hbmQuYXJnc1snZmlsZU5hbWUnXSB8fCAncXItY29kZSc7XG5cbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHFyQ29kZSA9IG5ldyBRUkNvZGVTdHlsaW5nKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IHRleHQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogJ3N2ZycsXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgcXJDb2RlLmRvd25sb2FkKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBmaWxlTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRlbnNpb246ICdwbmcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQud3JpdGVyLndyaXRlU3VjY2VzcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgUVIgQ29kZSBmb3IgXCIke3RleHR9XCIgZG93bmxvYWRlZCBhcyAke2ZpbGVOYW1lfS5wbmdgLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LndyaXRlci53cml0ZUVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBGYWlsZWQgdG8gZ2VuZXJhdGUgUVIgY29kZTogJHtlcnJ9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgXTtcbiAgICB9XG5cbiAgICBhc3luYyBwcm9jZXNzQ29tbWFuZChcbiAgICAgICAgY29tbWFuZDogQ2xpUHJvY2Vzc0NvbW1hbmQsXG4gICAgICAgIGNvbnRleHQ6IElDbGlFeGVjdXRpb25Db250ZXh0LFxuICAgICk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb250ZXh0LmV4ZWN1dG9yLnNob3dIZWxwKGNvbW1hbmQsIGNvbnRleHQpO1xuICAgIH1cblxuICAgIHdyaXRlRGVzY3JpcHRpb24oY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyB3cml0ZXIgfSA9IGNvbnRleHQ7XG4gICAgICAgIHdyaXRlci53cml0ZWxuKCdHZW5lcmF0ZSBRUiBjb2RlcyBmcm9tIHRleHQgb3IgVVJMcyBhbmQgZG93bmxvYWQgYXMgUE5HJyk7XG4gICAgICAgIHdyaXRlci53cml0ZWxuKCk7XG4gICAgICAgIHdyaXRlci53cml0ZWxuKCfwn5OLIFVzYWdlOicpO1xuICAgICAgICB3cml0ZXIud3JpdGVsbihgICAke3dyaXRlci53cmFwSW5Db2xvcigncXIgZ2VuZXJhdGUgLS10ZXh0PVwiPGNvbnRlbnQ+XCInLCBDbGlGb3JlZ3JvdW5kQ29sb3IuQ3lhbil9YCk7XG4gICAgICAgIHdyaXRlci53cml0ZWxuKCk7XG4gICAgICAgIHdyaXRlci53cml0ZWxuKCfimpnvuI8gIE9wdGlvbnM6Jyk7XG4gICAgICAgIHdyaXRlci53cml0ZWxuKGAgICR7d3JpdGVyLndyYXBJbkNvbG9yKCctLXRleHQnLCBDbGlGb3JlZ3JvdW5kQ29sb3IuWWVsbG93KX0gICAgICAgICAgVGV4dCBvciBVUkwgdG8gZW5jb2RlIChyZXF1aXJlZClgKTtcbiAgICAgICAgd3JpdGVyLndyaXRlbG4oYCAgJHt3cml0ZXIud3JhcEluQ29sb3IoJy0tZmlsZU5hbWUnLCBDbGlGb3JlZ3JvdW5kQ29sb3IuWWVsbG93KX0gICAgICBPdXRwdXQgZmlsZW5hbWUgKGRlZmF1bHQ6IHFyLWNvZGUpYCk7XG4gICAgICAgIHdyaXRlci53cml0ZWxuKCk7XG4gICAgICAgIHdyaXRlci53cml0ZWxuKCfwn5OdIEV4YW1wbGVzOicpO1xuICAgICAgICB3cml0ZXIud3JpdGVsbihgICBxciBnZW5lcmF0ZSAtLXRleHQ9XCJodHRwczovL2V4YW1wbGUuY29tXCIgICAgICAgICAgICAgICAgJHt3cml0ZXIud3JhcEluQ29sb3IoJyMgVVJMIFFSIGNvZGUnLCBDbGlGb3JlZ3JvdW5kQ29sb3IuR3JlZW4pfWApO1xuICAgICAgICB3cml0ZXIud3JpdGVsbihgICBxciBnZW5lcmF0ZSAtLXRleHQ9XCJIZWxsbyFcIiAtLWZpbGVOYW1lPVwibXktcXJcIiAgICAgICAgICAke3dyaXRlci53cmFwSW5Db2xvcignIyBDdXN0b20gZmlsZW5hbWUnLCBDbGlGb3JlZ3JvdW5kQ29sb3IuR3JlZW4pfWApO1xuICAgIH1cbn1cbiJdfQ==
|
package/esm2022/lib/version.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// Automatically generated during build
|
|
2
|
-
export const LIBRARY_VERSION = '0.0.
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
export const LIBRARY_VERSION = '0.0.2';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3FyL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSx1Q0FBdUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLE9BQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuLy8gQXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZHVyaW5nIGJ1aWxkXG5leHBvcnQgY29uc3QgTElCUkFSWV9WRVJTSU9OID0gJzAuMC4yJztcbiAgIl19
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, NgModule } from '@angular/core';
|
|
3
3
|
import { resolveCommandProcessorProvider } from '@qodalis/angular-cli';
|
|
4
|
-
import { DefaultLibraryAuthor } from '@qodalis/cli-core';
|
|
4
|
+
import { DefaultLibraryAuthor, CliForegroundColor } from '@qodalis/cli-core';
|
|
5
5
|
import QRCodeStyling from 'qr-code-styling';
|
|
6
6
|
|
|
7
7
|
// Automatically generated during build
|
|
8
|
-
const LIBRARY_VERSION = '0.0.
|
|
8
|
+
const LIBRARY_VERSION = '0.0.2';
|
|
9
9
|
|
|
10
10
|
class CliQrCommandProcessor {
|
|
11
11
|
constructor() {
|
|
@@ -63,7 +63,19 @@ class CliQrCommandProcessor {
|
|
|
63
63
|
context.executor.showHelp(command, context);
|
|
64
64
|
}
|
|
65
65
|
writeDescription(context) {
|
|
66
|
-
context
|
|
66
|
+
const { writer } = context;
|
|
67
|
+
writer.writeln('Generate QR codes from text or URLs and download as PNG');
|
|
68
|
+
writer.writeln();
|
|
69
|
+
writer.writeln('📋 Usage:');
|
|
70
|
+
writer.writeln(` ${writer.wrapInColor('qr generate --text="<content>"', CliForegroundColor.Cyan)}`);
|
|
71
|
+
writer.writeln();
|
|
72
|
+
writer.writeln('⚙️ Options:');
|
|
73
|
+
writer.writeln(` ${writer.wrapInColor('--text', CliForegroundColor.Yellow)} Text or URL to encode (required)`);
|
|
74
|
+
writer.writeln(` ${writer.wrapInColor('--fileName', CliForegroundColor.Yellow)} Output filename (default: qr-code)`);
|
|
75
|
+
writer.writeln();
|
|
76
|
+
writer.writeln('📝 Examples:');
|
|
77
|
+
writer.writeln(` qr generate --text="https://example.com" ${writer.wrapInColor('# URL QR code', CliForegroundColor.Green)}`);
|
|
78
|
+
writer.writeln(` qr generate --text="Hello!" --fileName="my-qr" ${writer.wrapInColor('# Custom filename', CliForegroundColor.Green)}`);
|
|
67
79
|
}
|
|
68
80
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliQrCommandProcessor, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
69
81
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CliQrCommandProcessor }); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"qodalis-cli-qr.mjs","sources":["../../../projects/qr/src/lib/version.ts","../../../projects/qr/src/lib/processors/cli-qr-command-processor.ts","../../../projects/qr/src/lib/cli-qr.module.ts","../../../projects/qr/src/public-api.ts","../../../projects/qr/src/qodalis-cli-qr.ts"],"sourcesContent":["\n// Automatically generated during build\nexport const LIBRARY_VERSION = '0.0.
|
|
1
|
+
{"version":3,"file":"qodalis-cli-qr.mjs","sources":["../../../projects/qr/src/lib/version.ts","../../../projects/qr/src/lib/processors/cli-qr-command-processor.ts","../../../projects/qr/src/lib/cli-qr.module.ts","../../../projects/qr/src/public-api.ts","../../../projects/qr/src/qodalis-cli-qr.ts"],"sourcesContent":["\n// Automatically generated during build\nexport const LIBRARY_VERSION = '0.0.2';\n ","import { Injectable } from '@angular/core';\nimport {\n CliForegroundColor,\n CliProcessCommand,\n DefaultLibraryAuthor,\n ICliCommandProcessor,\n ICliExecutionContext,\n} from '@qodalis/cli-core';\nimport QRCodeStyling from 'qr-code-styling';\nimport { LIBRARY_VERSION } from '../version';\n\n@Injectable()\nexport class CliQrCommandProcessor implements ICliCommandProcessor {\n command = 'qr';\n\n description =\n 'Provide utility functions to generate QR codes. Usage: qr generate --text \"https://example.com\" --fileName \"my-qr\"';\n\n author = DefaultLibraryAuthor;\n\n version = LIBRARY_VERSION;\n\n processors?: ICliCommandProcessor[] | undefined = [];\n\n constructor() {\n this.processors = [\n {\n command: 'generate',\n description:\n 'Generate a QR code and download it as PNG. Usage: qr generate --text \"https://example.com\"',\n parameters: [\n {\n name: 'text',\n description: 'Text or URL to encode as a QR code',\n type: 'string',\n required: true,\n },\n {\n name: 'fileName',\n description: 'the file name',\n type: 'string',\n required: false,\n },\n ],\n processCommand: async (command, context) => {\n const text = command.args['text'];\n\n if (!text) {\n context.writer.writeError(\n 'Missing required parameter: --text',\n );\n return;\n }\n\n const fileName = command.args['fileName'] || 'qr-code';\n\n try {\n const qrCode = new QRCodeStyling({\n width: 300,\n height: 300,\n data: text,\n type: 'svg',\n });\n\n await qrCode.download({\n name: fileName,\n extension: 'png',\n });\n\n context.writer.writeSuccess(\n `QR Code for \"${text}\" downloaded as ${fileName}.png`,\n );\n } catch (err) {\n context.writer.writeError(\n `Failed to generate QR code: ${err}`,\n );\n }\n },\n },\n ];\n }\n\n async processCommand(\n command: CliProcessCommand,\n context: ICliExecutionContext,\n ): Promise<void> {\n context.executor.showHelp(command, context);\n }\n\n writeDescription(context: ICliExecutionContext): void {\n const { writer } = context;\n writer.writeln('Generate QR codes from text or URLs and download as PNG');\n writer.writeln();\n writer.writeln('📋 Usage:');\n writer.writeln(` ${writer.wrapInColor('qr generate --text=\"<content>\"', CliForegroundColor.Cyan)}`);\n writer.writeln();\n writer.writeln('⚙️ Options:');\n writer.writeln(` ${writer.wrapInColor('--text', CliForegroundColor.Yellow)} Text or URL to encode (required)`);\n writer.writeln(` ${writer.wrapInColor('--fileName', CliForegroundColor.Yellow)} Output filename (default: qr-code)`);\n writer.writeln();\n writer.writeln('📝 Examples:');\n writer.writeln(` qr generate --text=\"https://example.com\" ${writer.wrapInColor('# URL QR code', CliForegroundColor.Green)}`);\n writer.writeln(` qr generate --text=\"Hello!\" --fileName=\"my-qr\" ${writer.wrapInColor('# Custom filename', CliForegroundColor.Green)}`);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { resolveCommandProcessorProvider } from '@qodalis/angular-cli';\nimport { CliQrCommandProcessor } from './processors/cli-qr-command-processor';\n\n@NgModule({\n declarations: [],\n imports: [],\n exports: [],\n providers: [resolveCommandProcessorProvider(CliQrCommandProcessor)],\n})\nexport class CliQrModule {}\n","/*\n * Public API Surface of qr\n */\n\nexport * from './lib/cli-qr.module';\n\nexport * from './lib/processors/cli-qr-command-processor';\n\nexport * from './lib/version';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/lib/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const LIBRARY_VERSION = "0.0.
|
|
1
|
+
export declare const LIBRARY_VERSION = "0.0.2";
|
package/package.json
CHANGED
package/umd/index.js
CHANGED
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
};
|
|
35
35
|
|
|
36
36
|
// Automatically generated during build
|
|
37
|
-
const LIBRARY_VERSION = '0.0.
|
|
37
|
+
const LIBRARY_VERSION = '0.0.2';
|
|
38
38
|
|
|
39
39
|
let CliQrCommandProcessor = class CliQrCommandProcessor {
|
|
40
40
|
constructor() {
|
|
@@ -92,7 +92,19 @@
|
|
|
92
92
|
context.executor.showHelp(command, context);
|
|
93
93
|
}
|
|
94
94
|
writeDescription(context) {
|
|
95
|
-
context
|
|
95
|
+
const { writer } = context;
|
|
96
|
+
writer.writeln('Generate QR codes from text or URLs and download as PNG');
|
|
97
|
+
writer.writeln();
|
|
98
|
+
writer.writeln('📋 Usage:');
|
|
99
|
+
writer.writeln(` ${writer.wrapInColor('qr generate --text="<content>"', cliCore.CliForegroundColor.Cyan)}`);
|
|
100
|
+
writer.writeln();
|
|
101
|
+
writer.writeln('⚙️ Options:');
|
|
102
|
+
writer.writeln(` ${writer.wrapInColor('--text', cliCore.CliForegroundColor.Yellow)} Text or URL to encode (required)`);
|
|
103
|
+
writer.writeln(` ${writer.wrapInColor('--fileName', cliCore.CliForegroundColor.Yellow)} Output filename (default: qr-code)`);
|
|
104
|
+
writer.writeln();
|
|
105
|
+
writer.writeln('📝 Examples:');
|
|
106
|
+
writer.writeln(` qr generate --text="https://example.com" ${writer.wrapInColor('# URL QR code', cliCore.CliForegroundColor.Green)}`);
|
|
107
|
+
writer.writeln(` qr generate --text="Hello!" --fileName="my-qr" ${writer.wrapInColor('# Custom filename', cliCore.CliForegroundColor.Green)}`);
|
|
96
108
|
}
|
|
97
109
|
};
|
|
98
110
|
CliQrCommandProcessor = __decorate([
|