{"version":3,"file":"tyatech-format.mjs","sources":["../../../projects/tyatech-format/src/lib/directives/tya-format-number-vn.directive.ts","../../../projects/tyatech-format/src/lib/directives/tya-format-number-en.directive.ts","../../../projects/tyatech-format/src/lib/directives/tya-directives.module.ts","../../../projects/tyatech-format/src/lib/tools/remove-vietnamese-accents.ts","../../../projects/tyatech-format/src/lib/tools/remove-punctuation.ts","../../../projects/tyatech-format/src/lib/tools/format-number-vietnam.ts","../../../projects/tyatech-format/src/lib/tools/limit-display-word.ts","../../../projects/tyatech-format/src/public-api.ts","../../../projects/tyatech-format/src/tyatech-format.ts"],"sourcesContent":["import {\r\n  Directive,\r\n  ElementRef,\r\n  HostListener,\r\n  Input,\r\n  OnInit,\r\n} from '@angular/core';\r\n\r\n@Directive({\r\n  selector: 'input[TyaFormatNumberVn]',\r\n})\r\nexport class TyaFormatNumberVnDirective implements OnInit {\r\n  @Input('TyaFormatNumberVn') initialValue: string | undefined;\r\n\r\n  constructor(private _inputEl: ElementRef) {}\r\n\r\n  ngOnInit() {\r\n    if (this.initialValue) {\r\n      this.formatInputValue(this.initialValue);\r\n    }\r\n  }\r\n\r\n  @HostListener('input', ['$event'])\r\n  onInput(event: any) {\r\n    if (this._inputEl.nativeElement.value === '-') return;\r\n    this.formatInputValue(this._inputEl.nativeElement.value);\r\n  }\r\n\r\n  private formatInputValue(value: string) {\r\n    let valueInput: string = value;\r\n\r\n    const end = valueInput.slice(valueInput.search(','));\r\n    let formattedNumber;\r\n\r\n    if (valueInput.slice(-1) !== ',') {\r\n      const toNumber = parseFloat(valueInput);\r\n      if (!isNaN(toNumber)) {\r\n        formattedNumber = new Intl.NumberFormat('vi-VN').format(toNumber);\r\n        this._inputEl.nativeElement.value = formattedNumber;\r\n      } else {\r\n        this._inputEl.nativeElement.value = '';\r\n      }\r\n    }\r\n\r\n   /*  if (this._inputEl.nativeElement.value && end) {\r\n      console.log(end)\r\n      console.log(this._inputEl.nativeElement.value)\r\n      this._inputEl.nativeElement.value = formattedNumber + end;\r\n      console.log(this._inputEl.nativeElement.value)\r\n    } */\r\n  }\r\n}\r\n","import { Directive, ElementRef, HostListener, Input, OnInit } from \"@angular/core\";\r\n\r\n@Directive({\r\n  selector: 'input[TyaFormatNumberEn]',\r\n})\r\nexport class TyaFormatNumberEnDirective implements OnInit {\r\n\r\n  @Input('TyaFormatNumberEn') initialValue: string | undefined;\r\n\r\n  constructor(private _inputEl: ElementRef) { }\r\n\r\n  ngOnInit() {\r\n    if (this.initialValue) {\r\n      this.formatInputValue(this.initialValue);\r\n    }\r\n  }\r\n\r\n  @HostListener('input', ['$event'])\r\n  onInput(event: any) {\r\n    if (this._inputEl.nativeElement.value === '-') return;\r\n    this.formatInputValue(this._inputEl.nativeElement.value);\r\n  }\r\n\r\n  private formatInputValue(value: string) {\r\n    let valueInput: string = value;\r\n    valueInput = valueInput.replace(/\\,/g, '');\r\n\r\n    if (valueInput.slice(-1) !== '.') {\r\n      const toNumber = parseFloat(valueInput);\r\n\r\n      if (!isNaN(toNumber)) {\r\n        const formattedNumber = new Intl.NumberFormat('en-US').format(toNumber);\r\n        this._inputEl.nativeElement.value = formattedNumber;\r\n      } else {\r\n        this._inputEl.nativeElement.value = '';\r\n      }\r\n    }\r\n  }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { TyaFormatNumberVnDirective } from './tya-format-number-vn.directive';\r\nimport { TyaFormatNumberEnDirective } from './tya-format-number-en.directive';\r\n\r\n@NgModule({\r\n  imports: [],\r\n  declarations: [TyaFormatNumberVnDirective, TyaFormatNumberEnDirective],\r\n  exports: [TyaFormatNumberVnDirective, TyaFormatNumberEnDirective]\r\n})\r\nexport class TyaDirectivesModule { }\r\n","export const removeVietnameseAccents = (str: string) => {\r\n  str = str.replace(/\\s+/g, ' ');\r\n  str = str.trim();\r\n  str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, \"a\");\r\n  str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, \"e\");\r\n  str = str.replace(/ì|í|ị|ỉ|ĩ/g, \"i\");\r\n  str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, \"o\");\r\n  str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, \"u\");\r\n  str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, \"y\");\r\n  str = str.replace(/đ/g, \"d\");\r\n  str = str.replace(/À|Á|Ạ|Ả|Ã|Â|Ầ|Ấ|Ậ|Ẩ|Ẫ|Ă|Ằ|Ắ|Ặ|Ẳ|Ẵ/g, \"A\");\r\n  str = str.replace(/È|É|Ẹ|Ẻ|Ẽ|Ê|Ề|Ế|Ệ|Ể|Ễ/g, \"E\");\r\n  str = str.replace(/Ì|Í|Ị|Ỉ|Ĩ/g, \"I\");\r\n  str = str.replace(/Ò|Ó|Ọ|Ỏ|Õ|Ô|Ồ|Ố|Ộ|Ổ|Ỗ|Ơ|Ờ|Ớ|Ợ|Ở|Ỡ/g, \"O\");\r\n  str = str.replace(/Ù|Ú|Ụ|Ủ|Ũ|Ư|Ừ|Ứ|Ự|Ử|Ữ/g, \"U\");\r\n  str = str.replace(/Ỳ|Ý|Ỵ|Ỷ|Ỹ/g, \"Y\");\r\n  str = str.replace(/Đ/g, \"D\");\r\n  return str;\r\n}\r\n","export const removePunctuation = (str: string) => {\r\n  const result = str.replace(/\\ /g, \"\")\r\n  .replace(/\\./g, \"\")\r\n  .replace(/\\,/g, \"\")\r\n  .replace(/\\:/g, \"\")\r\n  .replace(/\\;/g, \"\")\r\n  .replace(/\\-/g, \"\")\r\n  .replace(/\\+/g, \"\")\r\n  .replace(/\\?/g, \"\")\r\n  .replace(/\\!/g, \"\")\r\n  .replace(/\\*/g, \"\")\r\n  .replace(/\\&/g, \"\")\r\n  .replace(/\\%/g, \"\")\r\n  .replace(/\\#/g, \"\")\r\n  .replace(/\\$/g, \"\")\r\n  .replace(/\\//g, \"\")\r\n  .replace(/\\\\/g, \"\")\r\n  .replace(/\\{/g, \"\")\r\n  .replace(/\\}/g, \"\")\r\n  .replace(/\\[/g, \"\")\r\n  .replace(/\\]/g, \"\");\r\n\r\n  return result;\r\n}\r\n","export const formatNumberVietnam = (num: number) => {\r\n  return num.toLocaleString('vi-VN');\r\n}\r\n","export const limitDisplayWord = (params: {\r\n  value: string, limit: number\r\n}) => {\r\n  return params.value.length > params.limit ? params.value.slice(0, params.limit) + '...' : params.value;\r\n}\r\n","/*\r\n * Public API Surface of tyatech-format\r\n */\r\n\r\nexport * from './lib/directives/tya-format-number-vn.directive';\r\nexport * from './lib/directives/tya-format-number-en.directive';\r\nexport * from './lib/directives/tya-directives.module';\r\n\r\nexport * from './lib/tools/remove-vietnamese-accents';\r\n\r\nexport * from './lib/tools/remove-punctuation';\r\n\r\nexport * from './lib/tools/format-number-vietnam';\r\n\r\nexport * from './lib/tools/limit-display-word';\r\n\r\nexport * from './lib/tools/remove-punctuation';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}