{"version":3,"file":"axulus-uikit-chips.mjs","sources":["../../src/app/components/chips/chips.ts","../../src/app/components/chips/axulus-uikit-chips.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport {\n  AfterContentInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ContentChildren,\n  ElementRef,\n  EventEmitter,\n  forwardRef,\n  Input,\n  NgModule,\n  Output,\n  QueryList,\n  TemplateRef,\n  ViewChild,\n  ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { PrimeTemplate, SharedModule } from '@axulus/uikit/api';\nimport { InputTextModule } from '@axulus/uikit/inputtext';\n\nexport const CHIPS_VALUE_ACCESSOR: any = {\n  provide: NG_VALUE_ACCESSOR,\n  useExisting: forwardRef(() => Chips),\n  multi: true\n};\n\n@Component({\n  selector: 'p-chips',\n  template: `\n    <div [ngClass]=\"'p-chips p-component'\" [ngStyle]=\"style\" [class]=\"styleClass\" (click)=\"onClick()\">\n      <ul [ngClass]=\"{ 'p-inputtext p-chips-multiple-container': true, 'p-focus': focus, 'p-disabled': disabled }\">\n        <li #token *ngFor=\"let item of value; let i = index\" class=\"p-chips-token\" (click)=\"onItemClick($event, item)\">\n          <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-container>\n          <span *ngIf=\"!itemTemplate\" class=\"p-chips-token-label\">{{ field ? resolveFieldData(item, field) : item }}</span>\n          <span *ngIf=\"!disabled\" class=\"p-chips-token-icon pi pi-times-circle\" (click)=\"removeItem($event, i)\"></span>\n        </li>\n        <li class=\"p-chips-input-token\" [ngClass]=\"{ 'p-chips-clearable': showClear && !disabled }\">\n          <input\n            #inputtext\n            type=\"text\"\n            [attr.id]=\"inputId\"\n            [attr.placeholder]=\"value && value.length ? null : placeholder\"\n            [attr.tabindex]=\"tabindex\"\n            (keydown)=\"onKeydown($event)\"\n            (input)=\"onInput()\"\n            (paste)=\"onPaste($event)\"\n            [attr.aria-labelledby]=\"ariaLabelledBy\"\n            (focus)=\"onInputFocus($event)\"\n            (blur)=\"onInputBlur($event)\"\n            [disabled]=\"disabled\"\n            [ngStyle]=\"inputStyle\"\n            [class]=\"inputStyleClass\"\n          />\n        </li>\n        <li>\n          <i *ngIf=\"value != null && filled && !disabled && showClear\" class=\"p-chips-clear-icon pi pi-times\" (click)=\"clear()\"></i>\n        </li>\n      </ul>\n    </div>\n  `,\n  host: {\n    class: 'p-element p-inputwrapper',\n    '[class.p-inputwrapper-filled]': 'filled',\n    '[class.p-inputwrapper-focus]': 'focus',\n    '[class.p-chips-clearable]': 'showClear'\n  },\n  providers: [CHIPS_VALUE_ACCESSOR],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  styleUrls: ['./chips.css']\n})\nexport class Chips implements AfterContentInit, ControlValueAccessor {\n  @Input() style: any;\n\n  @Input() styleClass: string;\n\n  @Input() disabled: boolean;\n\n  @Input() field: string;\n\n  @Input() placeholder: string;\n\n  @Input() max: number;\n\n  @Input() ariaLabelledBy: string;\n\n  @Input() tabindex: number;\n\n  @Input() inputId: string;\n\n  @Input() allowDuplicate: boolean = true;\n\n  @Input() inputStyle: any;\n\n  @Input() inputStyleClass: any;\n\n  @Input() addOnTab: boolean;\n\n  @Input() addOnBlur: boolean;\n\n  @Input() separator: string;\n\n  @Input() showClear: boolean = false;\n\n  @Output() onAdd: EventEmitter<any> = new EventEmitter();\n\n  @Output() onRemove: EventEmitter<any> = new EventEmitter();\n\n  @Output() onFocus: EventEmitter<any> = new EventEmitter();\n\n  @Output() onBlur: EventEmitter<any> = new EventEmitter();\n\n  @Output() onChipClick: EventEmitter<any> = new EventEmitter();\n\n  @Output() onClear: EventEmitter<any> = new EventEmitter();\n\n  @ViewChild('inputtext') inputViewChild: ElementRef;\n\n  @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n  public itemTemplate: TemplateRef<any>;\n\n  value: any;\n\n  onModelChange: Function = () => {};\n\n  onModelTouched: Function = () => {};\n\n  valueChanged: boolean;\n\n  focus: boolean;\n\n  filled: boolean;\n\n  constructor(public el: ElementRef, public cd: ChangeDetectorRef) {}\n\n  ngAfterContentInit() {\n    this.templates.forEach((item) => {\n      switch (item.getType()) {\n        case 'item':\n          this.itemTemplate = item.template;\n          break;\n\n        default:\n          this.itemTemplate = item.template;\n          break;\n      }\n    });\n\n    this.updateFilledState();\n  }\n\n  onClick() {\n    this.inputViewChild.nativeElement.focus();\n  }\n\n  onInput() {\n    this.updateFilledState();\n  }\n\n  onPaste(event) {\n    if (!this.disabled) {\n      if (this.separator) {\n        let pastedData = (event.clipboardData || window['clipboardData']).getData('Text');\n        pastedData.split(this.separator).forEach((val) => {\n          this.addItem(event, val, true);\n        });\n        this.inputViewChild.nativeElement.value = '';\n      }\n\n      this.updateFilledState();\n    }\n  }\n\n  updateFilledState() {\n    if (!this.value || this.value.length === 0) {\n      this.filled = this.inputViewChild && this.inputViewChild.nativeElement && this.inputViewChild.nativeElement.value != '';\n    } else {\n      this.filled = true;\n    }\n  }\n\n  onItemClick(event: Event, item: any) {\n    this.onChipClick.emit({\n      originalEvent: event,\n      value: item\n    });\n  }\n\n  writeValue(value: any): void {\n    this.value = value;\n    this.updateMaxedOut();\n    this.updateFilledState();\n    this.cd.markForCheck();\n  }\n\n  registerOnChange(fn: Function): void {\n    this.onModelChange = fn;\n  }\n\n  registerOnTouched(fn: Function): void {\n    this.onModelTouched = fn;\n  }\n\n  setDisabledState(val: boolean): void {\n    this.disabled = val;\n    this.cd.markForCheck();\n  }\n\n  resolveFieldData(data: any, field: string): any {\n    if (data && field) {\n      if (field.indexOf('.') == -1) {\n        return data[field];\n      } else {\n        let fields: string[] = field.split('.');\n        let value = data;\n        for (var i = 0, len = fields.length; i < len; ++i) {\n          value = value[fields[i]];\n        }\n        return value;\n      }\n    } else {\n      return null;\n    }\n  }\n\n  onInputFocus(event: FocusEvent) {\n    this.focus = true;\n    this.onFocus.emit(event);\n  }\n\n  onInputBlur(event: FocusEvent) {\n    this.focus = false;\n    if (this.addOnBlur && this.inputViewChild.nativeElement.value) {\n      this.addItem(event, this.inputViewChild.nativeElement.value, false);\n    }\n    this.onModelTouched();\n    this.onBlur.emit(event);\n  }\n\n  removeItem(event: Event, index: number): void {\n    if (this.disabled) {\n      return;\n    }\n\n    let removedItem = this.value[index];\n    this.value = this.value.filter((val, i) => i != index);\n    this.onModelChange(this.value);\n    this.onRemove.emit({\n      originalEvent: event,\n      value: removedItem\n    });\n    this.updateFilledState();\n    this.updateMaxedOut();\n  }\n\n  addItem(event: Event, item: string, preventDefault: boolean): void {\n    this.value = this.value || [];\n    if (item && item.trim().length) {\n      if (this.allowDuplicate || this.value.indexOf(item) === -1) {\n        this.value = [...this.value, item];\n        this.onModelChange(this.value);\n        this.onAdd.emit({\n          originalEvent: event,\n          value: item\n        });\n      }\n    }\n    this.updateFilledState();\n    this.updateMaxedOut();\n    this.inputViewChild.nativeElement.value = '';\n\n    if (preventDefault) {\n      event.preventDefault();\n    }\n  }\n\n  clear() {\n    this.value = null;\n    this.updateFilledState();\n    this.onModelChange(this.value);\n    this.onClear.emit();\n  }\n\n  onKeydown(event: KeyboardEvent): void {\n    switch (event.which) {\n      //backspace\n      case 8:\n        if (this.inputViewChild.nativeElement.value.length === 0 && this.value && this.value.length > 0) {\n          this.value = [...this.value];\n          let removedItem = this.value.pop();\n          this.onModelChange(this.value);\n          this.onRemove.emit({\n            originalEvent: event,\n            value: removedItem\n          });\n          this.updateFilledState();\n        }\n        break;\n\n      //enter\n      case 13:\n        this.addItem(event, this.inputViewChild.nativeElement.value, true);\n        break;\n\n      case 9:\n        if (this.addOnTab && this.inputViewChild.nativeElement.value !== '') {\n          this.addItem(event, this.inputViewChild.nativeElement.value, true);\n        }\n        break;\n\n      default:\n        if (this.max && this.value && this.max === this.value.length) {\n          event.preventDefault();\n        } else if (this.separator) {\n          if (this.separator === event.key || event.key.match(this.separator)) {\n            this.addItem(event, this.inputViewChild.nativeElement.value, true);\n          }\n        }\n        break;\n    }\n  }\n\n  updateMaxedOut(): void {\n    if (this.inputViewChild && this.inputViewChild.nativeElement) {\n      if (this.max && this.value && this.max === this.value.length) {\n        // Calling `blur` is necessary because firefox does not call `onfocus` events\n        // for disabled inputs, unlike chromium browsers.\n        this.inputViewChild.nativeElement.blur();\n        this.inputViewChild.nativeElement.disabled = true;\n      } else {\n        if (this.disabled) {\n          this.inputViewChild.nativeElement.blur();\n        }\n\n        this.inputViewChild.nativeElement.disabled = this.disabled || false;\n      }\n    }\n  }\n}\n\n@NgModule({\n  imports: [CommonModule, InputTextModule, SharedModule],\n  exports: [Chips, SharedModule],\n  declarations: [Chips]\n})\nexport class ChipsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}