{"version":3,"file":"angular-credit-card.mjs","sources":["../../../projects/ng-credit-card/src/lib/ng-credit-card.component.ts","../../../projects/ng-credit-card/src/lib/assets/ng-credit-card.component.html","../../../projects/ng-credit-card/src/lib/ng-credit-card.module.ts","../../../projects/ng-credit-card/src/public-api.ts","../../../projects/ng-credit-card/src/angular-credit-card.ts"],"sourcesContent":["import { Component, Input, OnInit, SimpleChanges } from '@angular/core';\nimport * as Payment from 'payment';\n\n@Component({\n  selector: 'ng-credit-card',\n  templateUrl: './assets/ng-credit-card.component.html',\n  styleUrls: ['./assets/ng-credit-card.component.scss'],\n})\nexport class NgCreditCardComponent implements OnInit {\n  @Input() cvc: string;\n  @Input() expiry: string;\n  @Input() acceptedCards = [];\n  @Input() number: string = '';\n  @Input() name: string = '';\n  @Input() i18n = {\n    name: 'YOUR NAME HERE',\n    valid: 'valid thru',\n  };\n  issuer: string = 'unknown';\n  @Input() focused: string = '';\n  maxLength: number = 16;\n  nextNumber: string = '';\n  expirylabel: string = '';\n  constructor() {}\n\n  ngOnInit(): void {\n    this.initCard();\n  }\n\n  ngAfterViewChecked(): void {\n    Payment.fns.validateCardNumber(this.number);\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (changes['number']) this.valideNumber();\n    if (changes['name']) this.valideName();\n    if (changes['expiry']) this.valideExpiry();\n    if (changes['cvc']) this.valideCVC();\n  }\n\n  valideName(): void {\n    if (this.name?.length > 18) {\n      this.name = this.name?.slice(0, 18);\n    }\n  }\n\n  valideNumber(): void {\n    this.issuerCard();\n    this.optionsCard();\n    this.numberCard();\n  }\n\n  valideExpiry(): void {\n    if (this.expiry.length > 4) {\n      this.expiry = this.expiry?.slice(0, 4);\n    }\n  }\n\n  valideCVC(): void {\n    if (this.cvc.length > 4) {\n      this.cvc = this.cvc?.slice(0, 4);\n    }\n  }\n\n  initCard(): void {\n    let newCardArray = [];\n    if (this.acceptedCards.length) {\n      Payment.getCardArray().forEach((d) => {\n        if (this.acceptedCards.includes(d.type)) {\n          newCardArray.push(d);\n        }\n      });\n    } else {\n      newCardArray = newCardArray.concat(Payment.getCardArray());\n    }\n    Payment.setCardArray(newCardArray);\n  }\n\n  issuerCard(): void {\n    this.issuer = Payment.fns.cardType(this.number) || 'unknown';\n  }\n\n  optionsCard(): void {\n    if (this.issuer === 'amex') {\n      this.maxLength = 15;\n    } else if (this.issuer === 'dinersclub') {\n      this.maxLength = 14;\n    } else if (['hipercard', 'mastercard', 'visa'].includes(this.issuer)) {\n      this.maxLength = 19;\n    }\n  }\n\n  numberCard(): void {\n    this.nextNumber = this.number?.replace(/[A-Za-z]| /g, '');\n    if (this.maxLength > 16) {\n      this.maxLength = this.nextNumber.length <= 16 ? 16 : this.maxLength;\n    }\n    if (this.nextNumber.length > this.maxLength) {\n      this.nextNumber = this.nextNumber.slice(0, this.maxLength);\n    }\n    while (this.nextNumber.length < this.maxLength) {\n      this.nextNumber += '•';\n    }\n    if (['amex', 'dinersclub'].includes(this.issuer)) {\n      const format = [0, 4, 10];\n      const limit = [4, 6, 5];\n      this.nextNumber = `${this.nextNumber.substr(\n        format[0],\n        limit[0]\n      )} ${this.nextNumber.substr(\n        format[1],\n        limit[1]\n      )} ${this.nextNumber.substr(format[2], limit[2])}`;\n    } else if (this.nextNumber.length > 16) {\n      const format = [0, 4, 8, 12];\n      const limit = [4, 7];\n      this.nextNumber = `${this.nextNumber.substr(\n        format[0],\n        limit[0]\n      )} ${this.nextNumber.substr(\n        format[1],\n        limit[0]\n      )} ${this.nextNumber.substr(\n        format[2],\n        limit[0]\n      )} ${this.nextNumber.substr(format[3], limit[1])}`;\n    } else {\n      for (let i = 1; i < this.maxLength / 4; i++) {\n        const space_index = i * 4 + (i - 1);\n        this.nextNumber = `${this.nextNumber.slice(\n          0,\n          space_index\n        )} ${this.nextNumber.slice(space_index)}`;\n      }\n    }\n  }\n\n  expiryCard(): string {\n    let month = '';\n    let year = '';\n    if (this.expiry.includes('/')) {\n      [month, year] = this.expiry.split('/');\n    } else if (this.expiry.length) {\n      month = this.expiry.substr(0, 2);\n      year = this.expiry.substr(2, 6);\n    }\n    while (month.length < 2) {\n      month += '•';\n    }\n    if (year.length > 2) {\n      year = year.substr(2, 4);\n    }\n    while (year.length < 2) {\n      year += '•';\n    }\n    return `${month}/${year}`;\n  }\n\n  classNumber(): string {\n    return `rccs__number ${\n      this.number?.replace(/ /g, '').length > 16 ? 'rccs__number--large' : ''\n    } ${this.focused === 'number' ? 'rccs--focused' : ''} ${\n      this.number?.substr(0, 1) !== '•' ? 'rccs--filled' : ''\n    }`;\n  }\n\n  classCard(): string {\n    return `rccs__card rccs__card--${this.issuer} ${\n      this.focused === 'cvc' && this.issuer !== 'amex'\n        ? 'rccs__card--flipped'\n        : ''\n    }`;\n  }\n\n  classCVC(): string {\n    return `rccs__cvc__front ${this.focused === 'cvc' ? 'rccs--focused' : ''}`;\n  }\n\n  className(): string {\n    return `rccs__name ${this.focused === 'name' ? 'rccs--focused' : ''} ${\n      this.name ? 'rccs--filled' : ''\n    }`;\n  }\n\n  classExpiry(): string {\n    return `rccs__expiry ${this.focused === 'expiry' ? 'rccs--focused' : ''} ${\n      this.expiry.substr(0, 1) !== '•' ? 'rccs--filled' : ''\n    }`;\n  }\n\n  classCVCBack(): string {\n    return `rccs__cvc ${this.focused === 'cvc' ? 'rccs--focused' : ''}`;\n  }\n}\n","<div class=\"rccs\">\r\n    <div [ngClass]=\"classCard()\">\r\n        <div class=\"rccs__card--front\">\r\n            <div class=\"rccs__card__background\"></div>\r\n            <div class=\"rccs__issuer\"></div>\r\n            <div [ngClass]=\"classCVC()\">{{ cvc }}</div>\r\n            <div [ngClass]=\"classNumber()\">{{ nextNumber || '•••• •••• •••• ••••'}}</div>\r\n            <div [ngClass]=\"className()\">{{ name || i18n.name }}</div>\r\n            <div [ngClass]=\"classExpiry()\">\r\n                <div class=\"rccs__expiry__valid\">{{ i18n.valid }}</div>\r\n                <div class=\"rccs__expiry__value\">{{ expiryCard() || '••/••' }}</div>\r\n            </div>\r\n            <div class=\"rccs__chip\"> </div>\r\n        </div>\r\n        <div class=\"rccs__card--back\">\r\n            <div class=\"rccs__card__background\"></div>\r\n            <div class=\"rccs__stripe\"></div>\r\n            <div class=\"rccs__signature\"></div>\r\n            <div [ngClass]=\"classCVCBack()\">{{ cvc }}</div>\r\n            <div class=\"rccs__issuer\"></div>\r\n        </div>\r\n    </div>\r\n</div>","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { NgCreditCardComponent } from \"./ng-credit-card.component\";\nimport { HttpClientModule } from \"@angular/common/http\";\n\n@NgModule({\n  declarations: [NgCreditCardComponent],\n  imports: [CommonModule, HttpClientModule],\n  exports: [NgCreditCardComponent],\n})\nexport class NgCreditCardModule {}\n","/*\n * Public API Surface of ng-credit-card\n */\n\nexport * from './lib/ng-credit-card.component';\nexport * from './lib/ng-credit-card.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}