UNPKG

ngx-sand-credit-cards

Version:
205 lines (196 loc) 32 kB
import { ɵɵdefineInjectable, Injectable, EventEmitter, Component, forwardRef, Input, Output, HostListener, Directive, NgModule } from '@angular/core'; import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms'; import { CommonModule } from '@angular/common'; import { BrowserModule } from '@angular/platform-browser'; class NgxSandCreditCardsService { constructor() { } } NgxSandCreditCardsService.ɵprov = ɵɵdefineInjectable({ factory: function NgxSandCreditCardsService_Factory() { return new NgxSandCreditCardsService(); }, token: NgxSandCreditCardsService, providedIn: "root" }); NgxSandCreditCardsService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; NgxSandCreditCardsService.ctorParameters = () => []; var providerImages; (function (providerImages) { providerImages["MASTERCARD"] = "data:image/png;base64,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"; providerImages["VISA"] = "data:image/png;base64,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"; })(providerImages || (providerImages = {})); class NgxSandCreditCardsComponent { constructor() { this.selector = [false, false, false, false]; this.providerType = '1'; this.cardType = 'DEBIT'; this.cardProviders = [{ id: 1, name: 'VISA' }, { id: 2, name: 'MASTERCARD' }, { id: 3, name: 'RuPay' }]; /** * Get the card type */ // @Input() public cardType = 'DEBIT'; /** * Get the card type */ this.bankName = 'HDFZ BANK'; /** * Get the card name */ this.cardName = 'MILLENIA'; /** * Select event when user select a value from list */ this.valueSelect = new EventEmitter(); } ngOnInit() { this.changeProvider(); } onClick(event) { this.showBack = false; switch (event) { case 0: this.selector = [true, false, false, false]; return; case 1: this.selector = [false, true, false, false]; return; case 2: this.selector = [false, false, true, false]; return; case 3: this.selector = [false, false, false, true]; this.showBack = true; return; default: this.selector = [false, false, false, false]; } } changeMonth() { } changeYear() { } /* * * * */ changeProvider() { this.showBack = false; switch (this.providerType) { case "1": this.providerLogo = providerImages.VISA; break; case "2": this.providerLogo = providerImages.MASTERCARD; break; default: this.providerLogo = providerImages.MASTERCARD; } console.log(this.providerLogo); } changeCardType(event) { console.log(event.target.value); this.cardType = event.target.value === 'credit' ? 'CREDIT' : 'DEBIT'; console.log(this.cardType); } /** * click listener for host inside this component i.e * if many instances are there, this detects if clicked inside * this instance */ clickInsideComponent() { this.clickedInside = true; } blur(event) { } focus(event) { /* istanbul ignore else */ } /** * click handler on documnent to hide the open dropdown if clicked outside */ clickOutsideComponent() { /* istanbul ignore else */ if (!this.clickedInside) { this.selector = [false, false, false, false]; this.showBack = false; } this.clickedInside = false; } } NgxSandCreditCardsComponent.decorators = [ { type: Component, args: [{ selector: 'ngx-sand-credit-cards', template: "<div class=\"wrapper\">\r\n\r\n <div class=\"card-wrapper\" [ngClass]=\"{transform: showBack}\">\r\n\r\n <div class=\"card-front\">\r\n <div class=\"cover\">\r\n\r\n <div class=\"bank-name entry\">\r\n <span>{{bankName }}</span>\r\n </div>\r\n <div class=\" entry card-type\">\r\n <span>{{cardType }} </span>\r\n </div>\r\n <div class=\" entry chip-placeholder\"></div>\r\n <div class=\" entry card-name\">\r\n <span>{{cardName}}</span>\r\n </div>\r\n <div class=\" entry card-number\" [ngClass]=\"{makeVisible: selector[1]}\">\r\n <span>{{ cardNumber || '**** **** **** ****'}}</span>\r\n </div>\r\n <div class=\" entry card-holder-name\" [ngClass]=\"{makeVisible: selector[0]}\">\r\n <span>{{name||'Your Name Here'}}</span>\r\n </div>\r\n <div class=\" entry expiry\" [ngClass]=\"{makeVisible: selector[2]}\">\r\n <span>{{expiryMonth || '10'}}</span> / <span>{{expiryYear || '24'}}</span>\r\n </div>\r\n <div class=\" entry issuer\">\r\n <span><img [src]=\"providerLogo\" alt=\"Provider Logo\" width=\"35px\"></span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-front card-back\">\r\n <div class=\"cover\">\r\n <div class=\"black-stripe\"></div>\r\n <div class=\" entry signature makeVisible\"></div>\r\n <div class=\" entry cvv\" [ngClass]=\"{makeVisible: selector[3]}\">\r\n <span>{{cvv|| '007'}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n <div class=\"form-wrapper\">\r\n\r\n <div class=\"form-group\">\r\n <div class=\"label\"> - </div>\r\n <div class=\"flt-rt\">\r\n <input type=\"radio\" name=\"cardType\" (change)=\"changeCardType($event)\" value=\"debit\">\r\n <label for=\"male\">&nbsp;Debit Card &nbsp;</label>\r\n <input type=\"radio\" name=\"cardType\" (change)=\"changeCardType($event)\" value=\"credit\">\r\n <label for=\"female\">&nbsp;Credit Card</label>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <div class=\"label\"> Select card option </div>\r\n <div class=\"flt-rt\">\r\n <select class=\"form-control\" [(ngModel)]=\"providerType\" (change)=\"changeProvider()\">\r\n <option [ngValue]=\"null\" selected disabled>Select Category</option>\r\n\r\n <option *ngFor=\"let item of cardProviders\" [value]=\"item.id\">{{item.name}}</option>\r\n\r\n </select>\r\n </div>\r\n </div>\r\n\r\n <div class=\"form-group\">\r\n <div class=\"label\"> Card number </div>\r\n <div class=\"flt-rt\">\r\n <input type=\"tel\" credit-card [(ngModel)]=\"cardNumber\" id=\"cardNumber\"\r\n placeholder=\"Enter Your Card Number\" (click)=\"onClick(1)\" class=\"form-control\">\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <div class=\"label\"> Card holder name </div>\r\n <div class=\"flt-rt\">\r\n <input type=\"text\" autocomplete=false autocapitalize=\"true\" placeholder=\"Enter Card Holder Name\"\r\n [(ngModel)]=\"name\" (click)=\"onClick(0)\" class=\"form-control\">\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <div class=\"label\"> Expiry date </div>\r\n <div class=\"flt-rt\">\r\n <div class=\"month\">\r\n <select class=\"form-control\" [(ngModel)]=\"expiryMonth\" (change)=\"changeMonth()\"\r\n (click)=\"onClick(2)\">\r\n <option selected value=\"00\" selected>Month</option>\r\n <option value=\"01\">Jan</option>\r\n <option value=\"02\">Feb</option>\r\n <option value=\"03\">Mar</option>\r\n <option value=\"04\">Apr</option>\r\n <option value=\"05\">May</option>\r\n <option value=\"06\">Jun</option>\r\n <option value=\"07\">Jul</option>\r\n <option value=\"08\">Aug</option>\r\n <option value=\"09\">Sep</option>\r\n <option value=\"10\">Oct</option>\r\n <option value=\"11\">Nov</option>\r\n <option value=\"12\">Dec</option>\r\n </select>\r\n </div>\r\n <div class=\"year\">\r\n <!-- <input type=\"text\" placeholder=\"Expiry Year\" [(ngModel)]=\"expiryYear\" (click)=\"onClick(2)\"\r\n class=\"form-control\"> -->\r\n <select class=\"form-control\" [(ngModel)]=\"expiryYear\" (change)=\"changeYear()\" (click)=\"onClick(2)\">\r\n <option selected>Year</option>\r\n <option value=\"21\">2021</option>\r\n <option value=\"22\">2022</option>\r\n <option value=\"23\">2023</option>\r\n <option value=\"24\">2024</option>\r\n <option value=\"25\">2025</option>\r\n <option value=\"26\">2026</option>\r\n <option value=\"27\">2027</option>\r\n <option value=\"28\">2028</option>\r\n <option value=\"29\">2029</option>\r\n <option value=\"30\">2030</option>\r\n <option value=\"31\">2031</option>\r\n <option value=\"32\">2032</option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"form-group\">\r\n <div class=\"label\"> Cvv number </div>\r\n <div class=\"flt-rt\">\r\n <input type=\"number\" [(ngModel)]=\"cvv\" maxlength=\"3\" id=\"cvv\" placeholder=\"cvv\" (click)=\"onClick(3)\"\r\n class=\"form-control\">\r\n </div>\r\n </div>\r\n </div>\r\n</div>", providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgxSandCreditCardsComponent), multi: true } ], styles: ["*{box-sizing:border-box;font-family:Consolas,Courier,monospace}.wrapper .card-wrapper{height:240px;margin:0 auto;perspective:1000px;position:relative;transform-style:preserve-3d;transition:all .4s linear;width:380px}.wrapper .card-wrapper .card-front{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:#00a1ff;border-radius:14.5px;box-shadow:0 0 20px rgba(0,0,0,.2);color:#fff;height:100%;left:0;overflow:hidden;padding:5%;position:absolute;top:0;transform-style:preserve-3d;width:100%}.wrapper .card-wrapper .card-front .cover{height:100%;position:relative}.wrapper .card-wrapper .card-front .cover .entry{display:inline-block;position:absolute}.wrapper .card-wrapper .card-front .cover .makeVisible{opacity:1!important}.wrapper .card-wrapper .card-front .cover .black-stripe{background-color:#000;display:block;height:20%;left:0;position:fixed;top:13%;width:100%}.wrapper .card-wrapper .card-front .cover .card-type{right:0}.wrapper .card-wrapper .card-front .cover .chip-placeholder{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwIiBoZWlnaHQ9Ijc2IiB2aWV3Qm94PSIwIDAgMTAwIDc2IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIj48ZGVmcz48bGluZWFyR3JhZGllbnQgeDE9IjEwMCUiIHkxPSIwJSIgeDI9IjAlIiB5Mj0iMTAwJSIgaWQ9ImEiPjxzdG9wIHN0b3AtY29sb3I9IiNGM0QwOEYiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkFENzY2IiBvZmZzZXQ9IjEwMCUiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cGF0aCBkPSJNOTIuNzI3IDc1LjQ1NWgtODUuNDU1Yy00IDAtNy4yNzMtMy4yNzMtNy4yNzMtNy4yNzN2LTYwLjkwOWMwLTQgMy4yNzMtNy4yNzMgNy4yNzMtNy4yNzNoODUuNDU1YzQgMCA3LjI3MyAzLjI3MyA3LjI3MyA3LjI3M3Y2MC45MDljMCA0LTMuMjczIDcuMjczLTcuMjczIDcuMjczIiBmaWxsPSJ1cmwoI2EpIi8+PHBhdGggZD0iTTcyLjEyMyAyOC40ODVoMjcuODc4di0xLjgxOGgtMjkuNjQ4Yy0uOTY1IDAtMS44MzIuNjAxLTIuMTcyIDEuNTA0LTIuMjg3IDYuMDcyLTIuNDMzIDEyLjU5NC0uNDM4IDE5Ljg0Mi40NTUgMS42NTQuNDM1IDMuNC0uMSA1LjAzLTIuMDM2IDYuMTk1LTcuNzc5IDE5Ljk4OC0xOC41NTEgMTkuOTg4LTExLjAwOCAwLTE2LjA5Ni0xNS42OTktMTcuMzM0LTIxLjk1Mi0uMTU1LS43ODQtLjEyMi0xLjU5Mi4xMDctMi4zNTcgMS42OTUtNS42NDggMi4wOTQtMTAuNjQtLjAxNi0xOS41OS0uMjA1LS44Ny0uMTgyLTEuNzgzLjA0OC0yLjY0NiA0LjQ4LTE2Ljc1NSAxMi44ODItMjAuMTQ3IDEyLjk2NS0yMC4xNzkuMzU2LS4xMzIuNTkzLS40NzIuNTkzLS44NTJ2LTUuNDU1aC0xLjgxOHYzLjc3NmMwIC42NS0uMzMyIDEuMjUyLS44ODQgMS41OTYtMi44MDMgMS43NDItOC45MDQgNi45MzYtMTIuNTU3IDIwLjQ1Ni0uMTguNjY4LS43ODEgMS4xMzYtMS40NzMgMS4xMzNsLTI4LjcyMi0uMTM5djEuODE4bDI3LjQxNi4xMzNjMS40NjguMDA3IDIuNzM1IDEuMDQxIDMuMDM3IDIuNDc4IDEuNDE2IDYuNzQxIDEuMjE5IDExLjAzOS4wODIgMTUuNDU4LS4zMTYgMS4yMy0xLjQyIDIuMDk2LTIuNjkgMi4xMDlsLTI3Ljg0NC4yN3YxLjgxOWwyOC42MDUtLjI3OGMuNjkzLS4wMDcgMS4yOTYuNDczIDEuNDM1IDEuMTUyIDEuNDQyIDcuMDQxIDYuODg3IDIzLjA3IDE5LjA1IDIzLjA3IDYuMzY4IDAgMTIuMDYyLTQuMjUgMTYuNDY3LTEyLjI5IDIuNjQ0LTQuODI4IDQuMDY3LTkuNTkxIDQuNTQxLTExLjM0NmgyOS45MDF2LTEuODE4aC0yOC4wMTZjLTEuMTU4IDAtMi4xODMtLjc3Mi0yLjQ4OS0xLjg4OS0xLjY5Mi02LjE2NC0xLjc2MS0xMS43NTUtLjItMTYuOTU5LjM3MS0xLjIzNSAxLjUzOC0yLjA2MSAyLjgyNy0yLjA2MXptLTE3LjE1LTIxLjkxNGMuMDQ1LjAyMiA0LjUxOSAyLjMyMiA5LjI1MyAxMC4wNDEuMTcyLjI4LjQ3LjQzNC43NzYuNDM0LjE5OCAwIC4zOTktLjA2NC41NzEtLjIwMi4zNjUtLjI5Mi40MTYtLjgzNy4xNzItMS4yMzUtMy41Ny01LjgwNS03LjAyNC04LjcxLTguNzc1LTkuOTMxLS40My0uMjk5LS42OC0uNzkyLS42OC0xLjMxNXYtNC4zNjNoLTEuODE4djUuNzU4YzAgLjM0NS4xOTUuNjU5LjUwMi44MTN6IiBmaWxsPSIjMEMwMjAwIi8+PC9zdmc+);background-repeat:no-repeat;background-size:contain;height:26.36364px;left:10%;top:20%;width:41.42857px}.wrapper .card-wrapper .card-front .cover .card-name{left:40%;top:40%}.wrapper .card-wrapper .card-front .cover .card-number{left:30%;opacity:.5;top:60%;transition:opacity .3s}.wrapper .card-wrapper .card-front .cover .card-holder-name{bottom:0;opacity:.5;transition:opacity .3s}.wrapper .card-wrapper .card-front .cover .expiry{bottom:0;opacity:.5;right:25%;transition:opacity .3s}.wrapper .card-wrapper .card-front .cover .issuer{bottom:0;right:0}.wrapper .card-wrapper .card-front .cover .signature{background:repeating-linear-gradient(.1deg,#fff 20%,#fff 40%,#fea 0,#fea 44%,#fff 0);height:20%;top:35%;width:70%}.wrapper .card-wrapper .card-front .cover .cvv{height:20%;left:60%;top:45%}.wrapper .card-wrapper .card-front .cover .cvv span{color:#000;font-weight:bolder}.wrapper .card-wrapper .card-back{transform:rotateY(180deg)}.wrapper .form-wrapper{margin:0 auto;overflow:auto;width:40%;width:45%}.wrapper .form-wrapper .form-group{float:left;padding:2% 0;width:100%}.wrapper .form-wrapper .form-group .label{float:left;width:40%}.wrapper .form-wrapper .form-group .form-control{border:1px solid #bcbcbc;border-radius:3px;padding:8px;width:100%}.wrapper .form-wrapper .form-group .month{float:left;width:30%}.wrapper .form-wrapper .form-group .year{float:left;margin-left:10%;width:30%}.wrapper .form-wrapper .form-group #cvv{width:20%}.wrapper .flt-rt{float:right;width:60%}.wrapper .transform{transform:rotateY(180deg)}.wrapper #cvv:valid{color:green;font-weight:bolder}"] },] } ]; NgxSandCreditCardsComponent.ctorParameters = () => []; NgxSandCreditCardsComponent.propDecorators = { bankName: [{ type: Input }], cardName: [{ type: Input }], valueSelect: [{ type: Output }], clickInsideComponent: [{ type: HostListener, args: ["click",] }], blur: [{ type: HostListener, args: ["blur", ["$event"],] }], focus: [{ type: HostListener, args: ["focus", ["$event"],] }], clickOutsideComponent: [{ type: HostListener, args: ["document:click",] }] }; class creditCardDirective { onKeyDown(event) { console.log(event); const input = event.target; console.log(input); let trimmed = input.value.replace(/\s+/g, ''); if (trimmed.length > 16) { trimmed = trimmed.substr(0, 16); } let numbers = []; for (let i = 0; i < trimmed.length; i += 4) { numbers.push(trimmed.substr(i, 4)); } input.value = numbers.join(' '); // debugger } } creditCardDirective.decorators = [ { type: Directive, args: [{ selector: '[credit-card]' },] } ]; creditCardDirective.propDecorators = { onKeyDown: [{ type: HostListener, args: ['input', ['$event'],] }] }; class NgxSandCreditCardsModule { } NgxSandCreditCardsModule.decorators = [ { type: NgModule, args: [{ declarations: [NgxSandCreditCardsComponent, creditCardDirective], imports: [ BrowserModule, CommonModule, FormsModule ], exports: [NgxSandCreditCardsComponent, creditCardDirective] },] } ]; /* * Public API Surface of ngx-sand-credit-cards */ /** * Generated bundle index. Do not edit. */ export { NgxSandCreditCardsComponent, NgxSandCreditCardsModule, NgxSandCreditCardsService, creditCardDirective }; //# sourceMappingURL=ngx-sand-credit-cards.js.map