ngx-iban
Version:
This Angular (7+) library consists of three parts:
1 lines • 5.11 kB
Source Map (JSON)
{"version":3,"file":"ngx-iban.mjs","sources":["../../../ngx-iban/src/lib/ngx-iban/iban.directive.ts","../../../ngx-iban/src/lib/ngx-iban/iban.pipe.ts","../../../ngx-iban/src/lib/ngx-iban/iban.module.ts","../../../ngx-iban/src/ngx-iban.ts"],"sourcesContent":["import {\n AbstractControl,\n NG_VALIDATORS,\n ValidationErrors,\n Validator,\n ValidatorFn,\n} from '@angular/forms';\nimport { Directive, Input, OnChanges, SimpleChanges } from '@angular/core';\nimport { electronicFormatIBAN, isValidIBAN } from 'ibantools';\n\nexport const ibanValidator: (countryCode?: string) => ValidatorFn = (\n countryCode\n) => {\n return (control: AbstractControl): ValidationErrors | null => {\n if (countryCode && control.value) {\n return new RegExp(`^${countryCode}.*$`, 'i').test(control.value) &&\n isValidIBAN(electronicFormatIBAN(control.value) as string)\n ? null\n : { iban: { value: control.value } };\n } else if (control.value) {\n return isValidIBAN(electronicFormatIBAN(control.value) as string)\n ? null\n : { iban: { value: control.value } };\n }\n return null;\n };\n};\n\n@Directive({\n selector: '[ngxIban]',\n standalone: true,\n providers: [\n { provide: NG_VALIDATORS, useExisting: IbanDirective, multi: true },\n ],\n})\nexport class IbanDirective implements Validator, OnChanges {\n @Input('ngxIban') countryCode?: string;\n private _onChange?: () => void;\n\n validate(control: AbstractControl): ValidationErrors | null {\n return ibanValidator(this.countryCode)(control);\n }\n\n /* istanbul ignore next */\n registerOnValidatorChange(fn: () => void) {\n this._onChange = fn;\n }\n\n /* istanbul ignore next */\n ngOnChanges(changes: SimpleChanges) {\n if ('countryCode' in changes && this._onChange) {\n this._onChange();\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { friendlyFormatIBAN } from 'ibantools';\n\n@Pipe({\n name: 'iban',\n standalone: true,\n})\nexport class IbanPipe implements PipeTransform {\n transform(value?: string | null, separator?: string): string | null {\n return value ? friendlyFormatIBAN(value, separator) : null;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { IbanDirective } from './iban.directive';\nimport { IbanPipe } from './iban.pipe';\n\n@NgModule({\n imports: [IbanDirective, IbanPipe],\n exports: [IbanDirective, IbanPipe],\n})\nexport class NgxIbanModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAUa,MAAA,aAAa,GAA0C,CAClE,WAAW,KACT;IACF,OAAO,CAAC,OAAwB,KAA6B;AAC3D,QAAA,IAAI,WAAW,IAAI,OAAO,CAAC,KAAK,EAAE;AAChC,YAAA,OAAO,IAAI,MAAM,CAAC,CAAA,CAAA,EAAI,WAAW,CAAK,GAAA,CAAA,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;AAC9D,gBAAA,WAAW,CAAC,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAW;AACzD,kBAAE;AACF,kBAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE;;AACjC,aAAA,IAAI,OAAO,CAAC,KAAK,EAAE;YACxB,OAAO,WAAW,CAAC,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAW;AAC9D,kBAAE;AACF,kBAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE;;AAExC,QAAA,OAAO,IAAI;AACb,KAAC;AACH;MASa,aAAa,CAAA;AAIxB,IAAA,QAAQ,CAAC,OAAwB,EAAA;QAC/B,OAAO,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC;;;AAIjD,IAAA,yBAAyB,CAAC,EAAc,EAAA;AACtC,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;;;AAIrB,IAAA,WAAW,CAAC,OAAsB,EAAA;QAChC,IAAI,aAAa,IAAI,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE;YAC9C,IAAI,CAAC,SAAS,EAAE;;;8GAhBT,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,EAJb,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,CAAA,SAAA,EAAA,aAAA,CAAA,EAAA,EAAA,SAAA,EAAA;YACT,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE;AACpE,SAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEU,aAAa,EAAA,UAAA,EAAA,CAAA;kBAPzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,SAAS,EAAE;wBACT,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE;AACpE,qBAAA;AACF,iBAAA;8BAEmB,WAAW,EAAA,CAAA;sBAA5B,KAAK;uBAAC,SAAS;;;MC7BL,QAAQ,CAAA;IACnB,SAAS,CAAC,KAAqB,EAAE,SAAkB,EAAA;AACjD,QAAA,OAAO,KAAK,GAAG,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,IAAI;;8GAFjD,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4GAAR,QAAQ,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,CAAA;;2FAAR,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAJpB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACJ,oBAAA,IAAI,EAAE,MAAM;AACZ,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;;MCEY,aAAa,CAAA;8GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHd,aAAa,EAAE,QAAQ,CACvB,EAAA,OAAA,EAAA,CAAA,aAAa,EAAE,QAAQ,CAAA,EAAA,CAAA,CAAA;+GAEtB,aAAa,EAAA,CAAA,CAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,aAAa,EAAE,QAAQ,CAAC;AAClC,oBAAA,OAAO,EAAE,CAAC,aAAa,EAAE,QAAQ,CAAC;AACnC,iBAAA;;;ACPD;;AAEG;;;;"}