ecabs-components 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/esm2020/ecabs-components.mjs +5 -0
- package/esm2020/lib/base/directives/digits-only.directive.mjs +130 -0
- package/esm2020/lib/base/element-base.mjs +100 -0
- package/esm2020/lib/base/element-wrapper/element-wrapper.component.mjs +53 -0
- package/esm2020/lib/base/element-wrapper/element-wrapper.module.mjs +52 -0
- package/esm2020/lib/base/hint/hint.component.mjs +21 -0
- package/esm2020/lib/base/hint/hint.module.mjs +20 -0
- package/esm2020/lib/base/validation/validation.component.mjs +158 -0
- package/esm2020/lib/base/validation/validation.module.mjs +20 -0
- package/esm2020/lib/ecabs-buttons/ecabs-buttons.component.mjs +65 -0
- package/esm2020/lib/ecabs-buttons/ecabs-buttons.module.mjs +21 -0
- package/esm2020/lib/ecabs-input/ecabs-input.component.mjs +81 -0
- package/esm2020/lib/ecabs-input/ecabs-input.module.mjs +22 -0
- package/esm2020/lib/ecabs-loading/ecabs-loading.component.mjs +24 -0
- package/esm2020/lib/ecabs-loading/ecabs-loading.module.mjs +19 -0
- package/esm2020/lib/ecabs-loading/spinner/spinner.component.mjs +16 -0
- package/esm2020/public-api.mjs +8 -0
- package/fesm2015/ecabs-components.mjs +744 -0
- package/fesm2015/ecabs-components.mjs.map +1 -0
- package/fesm2020/ecabs-components.mjs +742 -0
- package/fesm2020/ecabs-components.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/base/directives/digits-only.directive.d.ts +26 -0
- package/lib/base/directives/digits-only.directive.ts +129 -0
- package/lib/base/element-base.d.ts +28 -0
- package/lib/base/element-base.ts +72 -0
- package/lib/base/element-wrapper/element-wrapper.component.d.ts +19 -0
- package/lib/base/element-wrapper/element-wrapper.component.html +30 -0
- package/lib/base/element-wrapper/element-wrapper.component.ts +33 -0
- package/lib/base/element-wrapper/element-wrapper.module.d.ts +16 -0
- package/lib/base/element-wrapper/element-wrapper.module.ts +30 -0
- package/lib/base/hint/hint.component.d.ts +8 -0
- package/lib/base/hint/hint.component.html +1 -0
- package/lib/base/hint/hint.component.scss +0 -0
- package/lib/base/hint/hint.component.ts +12 -0
- package/lib/base/hint/hint.module.d.ts +10 -0
- package/lib/base/hint/hint.module.ts +13 -0
- package/lib/base/validation/validation.component.d.ts +22 -0
- package/lib/base/validation/validation.component.html +8 -0
- package/lib/base/validation/validation.component.scss +0 -0
- package/lib/base/validation/validation.component.ts +171 -0
- package/lib/base/validation/validation.module.d.ts +10 -0
- package/lib/base/validation/validation.module.ts +12 -0
- package/lib/ecabs-buttons/ecabs-buttons.component.d.ts +21 -0
- package/lib/ecabs-buttons/ecabs-buttons.component.html +18 -0
- package/lib/ecabs-buttons/ecabs-buttons.component.ts +54 -0
- package/lib/ecabs-buttons/ecabs-buttons.module.d.ts +11 -0
- package/lib/ecabs-buttons/ecabs-buttons.module.ts +13 -0
- package/lib/ecabs-input/ecabs-input.component.d.ts +27 -0
- package/lib/ecabs-input/ecabs-input.component.html +26 -0
- package/lib/ecabs-input/ecabs-input.component.ts +83 -0
- package/lib/ecabs-input/ecabs-input.module.d.ts +12 -0
- package/lib/ecabs-input/ecabs-input.module.ts +14 -0
- package/lib/ecabs-loading/ecabs-loading.component.d.ts +8 -0
- package/lib/ecabs-loading/ecabs-loading.component.html +7 -0
- package/lib/ecabs-loading/ecabs-loading.component.spec.ts +24 -0
- package/lib/ecabs-loading/ecabs-loading.component.ts +11 -0
- package/lib/ecabs-loading/ecabs-loading.module.d.ts +9 -0
- package/lib/ecabs-loading/ecabs-loading.module.ts +11 -0
- package/lib/ecabs-loading/spinner/spinner.component.d.ts +6 -0
- package/lib/ecabs-loading/spinner/spinner.component.html +5 -0
- package/lib/ecabs-loading/spinner/spinner.component.scss +61 -0
- package/lib/ecabs-loading/spinner/spinner.component.spec.ts +24 -0
- package/lib/ecabs-loading/spinner/spinner.component.ts +11 -0
- package/package.json +33 -0
- package/public-api.d.ts +7 -0
- package/public-api.ts +7 -0
- package/styles/material/_theme.scss +99 -0
- package/styles/material/overrides/_autocomplete.scss +11 -0
- package/styles/material/overrides/_button.scss +81 -0
- package/styles/material/overrides/_card.scss +17 -0
- package/styles/material/overrides/_chip.scss +108 -0
- package/styles/material/overrides/_datepicker.scss +145 -0
- package/styles/material/overrides/_dialog.scss +8 -0
- package/styles/material/overrides/_divider.scss +3 -0
- package/styles/material/overrides/_expansion.scss +31 -0
- package/styles/material/overrides/_form.scss +47 -0
- package/styles/material/overrides/_icon.scss +3 -0
- package/styles/material/overrides/_menu.scss +3 -0
- package/styles/material/overrides/_paginator.scss +0 -0
- package/styles/material/overrides/_phone.scss +24 -0
- package/styles/material/overrides/_select.scss +36 -0
- package/styles/material/overrides/_tab.scss +23 -0
- package/styles/material/overrides/_table.scss +12 -0
- package/styles/material/overrides/_toaster.scss +38 -0
- package/styles/material/overrides/_toggle.scss +10 -0
- package/styles/material/overrides/_tooltip.scss +3 -0
- package/styles/material/overrides/index.scss +19 -0
- package/styles/scss/base/_heading.scss +17 -0
- package/styles/scss/base/_normalize.scss +78 -0
- package/styles/scss/base/index.scss +2 -0
- package/styles/scss/modules/_autocomplete.scss +29 -0
- package/styles/scss/modules/_button.scss +221 -0
- package/styles/scss/modules/_card.scss +23 -0
- package/styles/scss/modules/_chip.scss +56 -0
- package/styles/scss/modules/_datepicker.scss +422 -0
- package/styles/scss/modules/_dialog.scss +14 -0
- package/styles/scss/modules/_divider.scss +3 -0
- package/styles/scss/modules/_form.scss +221 -0
- package/styles/scss/modules/_icon.scss +30 -0
- package/styles/scss/modules/_img.scss +32 -0
- package/styles/scss/modules/_legend.scss +64 -0
- package/styles/scss/modules/_list.scss +17 -0
- package/styles/scss/modules/_map.scss +112 -0
- package/styles/scss/modules/_percentage.scss +33 -0
- package/styles/scss/modules/_phone.scss +21 -0
- package/styles/scss/modules/_select.scss +21 -0
- package/styles/scss/modules/_statuses.scss +31 -0
- package/styles/scss/modules/_tab.scss +16 -0
- package/styles/scss/modules/_table.scss +107 -0
- package/styles/scss/modules/_timepicker.scss +96 -0
- package/styles/scss/modules/_toaster.scss +53 -0
- package/styles/scss/modules/_tooltip.scss +7 -0
- package/styles/scss/modules/drag-drop.scss +31 -0
- package/styles/scss/modules/index.scss +23 -0
- package/styles/scss/utilities/_colors.scss +52 -0
- package/styles/scss/utilities/_fonts.scss +26 -0
- package/styles/scss/utilities/_functions.scss +27 -0
- package/styles/scss/utilities/_helpers.scss +5 -0
- package/styles/scss/utilities/_mixins.scss +65 -0
- package/styles/scss/utilities/_variables.scss +19 -0
- package/styles/scss/utilities/index.scss +6 -0
- package/styles/styles.scss +5 -0
- package/test.ts +27 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ecabs-components.mjs","sources":["../../../projects/ecabs-components/src/lib/ecabs-loading/spinner/spinner.component.ts","../../../projects/ecabs-components/src/lib/ecabs-loading/spinner/spinner.component.html","../../../projects/ecabs-components/src/lib/ecabs-buttons/ecabs-buttons.component.ts","../../../projects/ecabs-components/src/lib/ecabs-buttons/ecabs-buttons.component.html","../../../projects/ecabs-components/src/lib/ecabs-loading/ecabs-loading.component.ts","../../../projects/ecabs-components/src/lib/ecabs-loading/ecabs-loading.component.html","../../../projects/ecabs-components/src/lib/ecabs-loading/ecabs-loading.module.ts","../../../projects/ecabs-components/src/lib/ecabs-buttons/ecabs-buttons.module.ts","../../../projects/ecabs-components/src/lib/base/element-base.ts","../../../projects/ecabs-components/src/lib/base/validation/validation.component.ts","../../../projects/ecabs-components/src/lib/base/validation/validation.component.html","../../../projects/ecabs-components/src/lib/base/hint/hint.component.ts","../../../projects/ecabs-components/src/lib/base/hint/hint.component.html","../../../projects/ecabs-components/src/lib/base/element-wrapper/element-wrapper.component.ts","../../../projects/ecabs-components/src/lib/base/element-wrapper/element-wrapper.component.html","../../../projects/ecabs-components/src/lib/base/directives/digits-only.directive.ts","../../../projects/ecabs-components/src/lib/ecabs-input/ecabs-input.component.ts","../../../projects/ecabs-components/src/lib/ecabs-input/ecabs-input.component.html","../../../projects/ecabs-components/src/lib/base/hint/hint.module.ts","../../../projects/ecabs-components/src/lib/base/validation/validation.module.ts","../../../projects/ecabs-components/src/lib/base/element-wrapper/element-wrapper.module.ts","../../../projects/ecabs-components/src/lib/ecabs-input/ecabs-input.module.ts","../../../projects/ecabs-components/src/ecabs-components.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ecabs-loading-spinner',\r\n templateUrl: './spinner.component.html',\r\n styleUrls: ['./spinner.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class EcabsSpinnerComponent {\r\n @Input() size: 'large' | 'medium' | 'tiny' = 'medium';\r\n}\r\n","<div class=\"loadingio-spinner-rolling {{ size }}\">\r\n <div class=\"ldio-inner\">\r\n <div></div>\r\n </div>\r\n</div>\r\n","import { Component, HostBinding, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { ThemePalette } from '@angular/material/core';\r\n\r\n@Component({\r\n selector: 'ecabs-buttons',\r\n templateUrl: './ecabs-buttons.component.html',\r\n})\r\nexport class ButtonsComponent implements OnInit, OnChanges {\r\n @Input()\r\n label!: string;\r\n\r\n @Input()\r\n disabled!: boolean;\r\n\r\n @Input()\r\n loading!: boolean;\r\n\r\n @Input()\r\n form!: string;\r\n\r\n @Input()\r\n size: 'default' | 'large' = 'default';\r\n\r\n @Input()\r\n type: 'button' | 'submit' = 'button';\r\n\r\n @Input() raised = false;\r\n @Input() stroked = false;\r\n @Input() full = false;\r\n @Input()\r\n color: ThemePalette | 'success' = 'primary';\r\n\r\n @HostBinding('style.width')\r\n borderWidth = '';\r\n @HostBinding('class')\r\n classAttr = '';\r\n\r\n ngOnInit(): void {\r\n if (this.full) {\r\n this.borderWidth = '100%';\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const disabled = changes['disabled']?.currentValue !== undefined ? changes['disabled'].currentValue : this.disabled;\r\n const loading = changes['loading']?.currentValue !== undefined ? changes['loading'].currentValue : this.loading;\r\n\r\n if (disabled || loading) {\r\n this.classAttr = 'pointer-events-none';\r\n } else {\r\n this.classAttr = '';\r\n }\r\n }\r\n}\r\n","<button\r\n mat-button\r\n [ngClass]=\"{\r\n '!w-full': full,\r\n 'mat-stroked-button': stroked,\r\n 'mat-raised-button': raised\r\n }\"\r\n [color]=\"color\"\r\n [disabled]=\"disabled\"\r\n [type]=\"type\"\r\n [attr.form]=\"form\"\r\n>\r\n <ecabs-loading-spinner size=\"tiny\" *ngIf=\"loading\"></ecabs-loading-spinner>\r\n <ng-container *ngIf=\"!loading\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n <ng-content></ng-content>\r\n </ng-container>\r\n</button>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ecabs-ecabs-loading',\r\n templateUrl: './ecabs-loading.component.html',\r\n})\r\nexport class EcabsLoadingComponent {\r\n @Input() loading = false;\r\n @Input() backgroundColor = 'white';\r\n @Input() size: 'large' | 'medium' | 'tiny' = 'medium';\r\n}\r\n","<div\r\n class=\"flex absolute left-0 top-0 right-0 bottom-0 z-50 items-center justify-center\"\r\n [ngStyle]=\"{ backgroundColor: backgroundColor }\"\r\n *ngIf=\"loading\"\r\n>\r\n <ecabs-loading-spinner [size]=\"size\" *ngIf=\"loading\"></ecabs-loading-spinner>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { EcabsLoadingComponent } from './ecabs-loading.component';\r\nimport { EcabsSpinnerComponent } from './spinner/spinner.component';\r\n\r\n@NgModule({\r\n declarations: [EcabsLoadingComponent, EcabsSpinnerComponent],\r\n imports: [CommonModule],\r\n exports: [EcabsLoadingComponent, EcabsSpinnerComponent],\r\n})\r\nexport class EcabsLoadingModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ButtonsComponent } from './ecabs-buttons.component';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { EcabsLoadingModule } from '../ecabs-loading/ecabs-loading.module';\r\n\r\n@NgModule({\r\n declarations: [ButtonsComponent],\r\n imports: [CommonModule, MatButtonModule, EcabsLoadingModule, MatIconModule],\r\n exports: [ButtonsComponent],\r\n})\r\nexport class EcabsButtonsModule {}\r\n","import { Input, Output, EventEmitter, Component } from '@angular/core';\r\nimport { AbstractControl, UntypedFormControl } from '@angular/forms';\r\n\r\n@Component({\r\n template: '',\r\n})\r\nexport default class ElementBaseComponent {\r\n @Input() type!:string;\r\n @Input() name!:string;\r\n @Input() label!:string;\r\n @Input() placeholder = '';\r\n @Input() validationLabel!:string;\r\n @Input() disabled = false;\r\n @Input() showValidation = true;\r\n @Input() showValidationOnNotTouched = false;\r\n @Input() hideValidationMessage = false;\r\n @Input() iconClass = '';\r\n @Input() loading = false;\r\n @Input() showHint: boolean = false;\r\n @Input() maxLength!: number;\r\n @Input() tooltip!: string;\r\n @Input() showAsterisk: boolean = true;\r\n\r\n @Output() focused = new EventEmitter<any>();\r\n @Output() focusOuted = new EventEmitter<any>();\r\n\r\n control!: UntypedFormControl;\r\n required: boolean = false;\r\n\r\n getData(): any {\r\n return {\r\n type: this.type || 'text',\r\n label: this.label,\r\n placeholder: this.placeholder,\r\n validationLabel: this.validationLabel,\r\n disabled: this.disabled,\r\n showValidation: this.showValidation,\r\n showValidationOnNotTouched: this.showValidationOnNotTouched,\r\n hideValidationMessage: this.hideValidationMessage,\r\n iconClass: this.iconClass,\r\n control: this.control,\r\n loading: this.loading,\r\n showHint: this.showHint,\r\n maxLength: this.maxLength,\r\n tooltip: this.tooltip,\r\n name: this.name,\r\n required: this.isRequired(this.control),\r\n showAsterisk: this.showAsterisk,\r\n };\r\n }\r\n\r\n private isRequired = (ctrl: any): boolean => {\r\n if (ctrl?.validator) {\r\n const validator = ctrl.validator({} as AbstractControl);\r\n if (validator && validator['required']) {\r\n return true;\r\n }\r\n }\r\n\r\n if (ctrl?.['controls']) {\r\n for (const name in ctrl['controls']) {\r\n if (ctrl['controls'][name]) {\r\n if (this.isRequired(ctrl['controls'][name])) {\r\n return true;\r\n }\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n };\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n OnChanges,\r\n SimpleChanges,\r\n} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-validations-messages',\r\n templateUrl: './validation.component.html',\r\n styleUrls: ['./validation.component.scss'],\r\n})\r\nexport class ValidationComponent implements OnInit, OnChanges {\r\n @Input() element!: any;\r\n @Input() label!: string;\r\n @Input() showValidationOnNotTouched = false;\r\n @Input() updatedErrors!: { type: string; message: string }[];\r\n errorMessages: any[]=[];\r\n\r\n private _messages: any = {};\r\n\r\n get messages(): any {\r\n if (this.element) {\r\n for (const errorKey in this.element.errors) {\r\n for (const key in this.element.errors[errorKey]) {\r\n if (this._messages[errorKey]) {\r\n this._messages[errorKey] = this._messages[errorKey].replace(\r\n `[${key}]`,\r\n this.element.errors[errorKey][key]\r\n );\r\n }\r\n }\r\n }\r\n }\r\n\r\n return this._messages;\r\n }\r\n\r\n set messages(m) {\r\n this._messages = m;\r\n }\r\n\r\n constructor() {\r\n // this.errorMessages = [\r\n // {\r\n // type: 'required',\r\n // message: this.translateService.instant(\r\n // 'FORMS.VALIDATION.LABEL_REQUIRED'\r\n // ),\r\n // },\r\n // {\r\n // type: 'minlength',\r\n // message: this.translateService.instant('FORMS.VALIDATION.MIN_LENGTH'),\r\n // },\r\n // {\r\n // type: 'maxlength',\r\n // message: this.translateService.instant('FORMS.VALIDATION.MAX_LENGTH'),\r\n // },\r\n // {\r\n // type: 'min',\r\n // message: this.translateService.instant('FORMS.VALIDATION.MIN'),\r\n // },\r\n // {\r\n // type: 'max',\r\n // message: this.translateService.instant('FORMS.VALIDATION.MAX'),\r\n // },\r\n // {\r\n // type: 'minValue',\r\n // message: this.translateService.instant('FORMS.VALIDATION.MIN_VALUE'),\r\n // },\r\n // {\r\n // type: 'maxValue',\r\n // message: this.translateService.instant('FORMS.VALIDATION.MAX_VALUE'),\r\n // },\r\n // {\r\n // type: 'validatePhoneNumber',\r\n // message: this.translateService.instant(\r\n // 'FORMS.VALIDATION.VALIDATE_PHONE_NUMBER'\r\n // ),\r\n // },\r\n // {\r\n // type: 'pastDate',\r\n // message: this.translateService.instant('FORMS.VALIDATION.PAST_DATE'),\r\n // },\r\n // {\r\n // type: 'affectsError',\r\n // message: this.translateService.instant(\r\n // 'FORMS.VALIDATION.AFFECTS_ERROR'\r\n // ),\r\n // },\r\n // {\r\n // type: 'moreThan',\r\n // message: this.translateService.instant('FORMS.VALIDATION.MORE_THAN'),\r\n // },\r\n // {\r\n // type: 'lessThan',\r\n // message: this.translateService.instant('FORMS.VALIDATION.LESS_THAN'),\r\n // },\r\n // {\r\n // type: 'iban',\r\n // message: this.translateService.instant('FORMS.VALIDATION.INVALID'),\r\n // },\r\n // {\r\n // type: 'email',\r\n // message: this.translateService.instant('FORMS.VALIDATION.EMAIL'),\r\n // },\r\n // {\r\n // type: 'numberMoreThan',\r\n // message: this.translateService.instant(\r\n // 'FORMS.VALIDATION.VALUE_MORE_THAN'\r\n // ),\r\n // },\r\n // {\r\n // type: 'numberLessThan',\r\n // message: this.translateService.instant(\r\n // 'FORMS.VALIDATION.VALUE_LESS_THAN'\r\n // ),\r\n // },\r\n // {\r\n // type: 'outOfRange',\r\n // message: this.translateService.instant('FORMS.VALIDATION.OUT_OF_RANGE'),\r\n // },\r\n // {\r\n // type: 'iban',\r\n // message: this.translateService.instant('FORMS.VALIDATION.IBAN'),\r\n // },\r\n // {\r\n // type: 'timeIsAfter',\r\n // message: this.translateService.instant(\r\n // 'FORMS.VALIDATION.LESS_THAN_TIME'\r\n // ),\r\n // },\r\n // ];\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n const { updatedErrors } = changes;\r\n\r\n if (\r\n updatedErrors &&\r\n updatedErrors.currentValue &&\r\n updatedErrors.currentValue.length > 0\r\n ) {\r\n for (const error of updatedErrors.currentValue) {\r\n this.messages[error.type] = error.message;\r\n }\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n for (const error of this.errorMessages) {\r\n this.messages[error.type] = this.replaceTokens(error.message);\r\n }\r\n }\r\n\r\n replaceTokens(message: string): string {\r\n let retMessage: string;\r\n if (this.label) {\r\n retMessage = message.replace('[label]', this.label);\r\n } else {\r\n retMessage = message;\r\n }\r\n\r\n return retMessage;\r\n }\r\n\r\n getMessageDetail(key: any): string {\r\n return this.messages[key];\r\n }\r\n}\r\n","<div\r\n class=\"form-field__validation\"\r\n *ngIf=\"element && (element?.touched || showValidationOnNotTouched) && element?.invalid\"\r\n>\r\n <div class=\"form-field__validation__item\" *ngFor=\"let item of element?.errors | keyvalue\">\r\n {{ getMessageDetail(item.key) }}\r\n </div>\r\n</div>\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-hint',\r\n templateUrl: './hint.component.html',\r\n styleUrls: ['./hint.component.scss'],\r\n})\r\nexport class HintComponent {\r\n @Input() element!:any;\r\n @Input() maxValue!:number;\r\n @Input() showHint = false;\r\n}\r\n","<div class=\"hint\" *ngIf=\"element && showHint\">{{ element?.value?.length || 0 }}/{{ this.maxValue }}</div>\r\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-element-wrapper',\r\n templateUrl: './element-wrapper.component.html',\r\n})\r\nexport class ElementWrapperComponent {\r\n @Input() data!:any;\r\n @Input() showCloseIcon!:boolean;\r\n @Input() focusedFlag!:any;\r\n @Input() showPassword!:boolean;\r\n @Input() control!:any;\r\n @Output() showHidePassword = new EventEmitter<any>();\r\n @Output() clear = new EventEmitter<any>();\r\n @Output() increase = new EventEmitter<any>();\r\n @Output() decrease = new EventEmitter<any>();\r\n\r\n showHidePasswordFn(event:any): void {\r\n this.showHidePassword.emit(event);\r\n }\r\n\r\n clearFn(): void {\r\n this.clear.emit();\r\n }\r\n\r\n increaseFn(): void {\r\n this.increase.emit();\r\n }\r\n\r\n decreaseFn(): void {\r\n this.decrease.emit();\r\n }\r\n}\r\n","<div\r\n class=\"form-field\"\r\n [ngClass]=\"{\r\n 'form-field--invalid':\r\n data?.showValidation && (data?.control?.touched || data?.showValidationOnNotTouched) && data?.control?.invalid,\r\n disabled: data?.disabled,\r\n 'form-field--required': data?.required && data?.showAsterisk\r\n }\"\r\n>\r\n <div>\r\n <label class=\"form-field__label\" [attr.for]=\"data?.name\" *ngIf=\"data?.label\">\r\n <span [innerHTML]=\"data?.label\"></span>\r\n <mat-icon class=\"icon\" *ngIf=\"data?.tooltip\" [matTooltip]=\"data?.tooltip\">error_outline</mat-icon>\r\n </label>\r\n </div>\r\n\r\n <ng-content></ng-content>\r\n\r\n <ecabs-loading-spinner class=\"spinner\" size=\"tiny\" *ngIf=\"data.loading\"></ecabs-loading-spinner>\r\n\r\n <app-hint [element]=\"data?.control\" [showHint]=\"data?.showHint\" [maxValue]=\"data?.maxLength\"></app-hint>\r\n\r\n <app-validations-messages\r\n *ngIf=\"data?.showValidation && !data?.hideValidationMessage\"\r\n [element]=\"data?.control\"\r\n [label]=\"data?.label ? data?.label : data?.placeholder ? data.placeholder : data?.validationLabel\"\r\n [showValidationOnNotTouched]=\"data?.showValidationOnNotTouched\"\r\n >\r\n </app-validations-messages>\r\n</div>\r\n","import { Directive, ElementRef, HostListener, Input, OnInit } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appDigitsOnly]',\r\n})\r\nexport class DigitsOnlyDirective implements OnInit {\r\n @Input()\r\n digitsOnly = false;\r\n\r\n @Input()\r\n allowHyphen = false;\r\n\r\n @Input() decimal? = false;\r\n @Input() decimalSeparator? = '.';\r\n @Input() unit? = 0;\r\n\r\n inputElement: HTMLInputElement;\r\n minus = '-';\r\n minusCounter = 0;\r\n regex!: RegExp;\r\n\r\n private decimalCounter = 0;\r\n private readonly navigationKeys = [\r\n 'Backspace',\r\n 'Delete',\r\n 'Tab',\r\n 'Escape',\r\n 'Enter',\r\n 'Home',\r\n 'End',\r\n 'ArrowLeft',\r\n 'ArrowRight',\r\n 'Clear',\r\n 'Copy',\r\n 'Paste',\r\n ];\r\n\r\n constructor(public el: ElementRef) {\r\n this.inputElement = el.nativeElement;\r\n }\r\n\r\n @HostListener('keydown', ['$event'])\r\n onKeyDown(e: KeyboardEvent): void {\r\n if (this.digitsOnly) {\r\n if (\r\n this.navigationKeys.indexOf(e.key) > -1 || // Allow: navigation keys: backspace, delete, arrows etc.\r\n (e.key === 'a' && e.ctrlKey) || // Allow: Ctrl+A\r\n (e.key === 'c' && e.ctrlKey) || // Allow: Ctrl+C\r\n (e.key === 'v' && e.ctrlKey) || // Allow: Ctrl+V\r\n (e.key === 'x' && e.ctrlKey) || // Allow: Ctrl+X\r\n (e.key === 'a' && e.metaKey) || // Allow: Cmd+A (Mac)\r\n (e.key === 'c' && e.metaKey) || // Allow: Cmd+C (Mac)\r\n (e.key === 'v' && e.metaKey) || // Allow: Cmd+V (Mac)\r\n (e.key === 'x' && e.metaKey) || // Allow: Cmd+X (Mac)\r\n (this.decimal && e.key === this.decimalSeparator && this.decimalCounter < 1) || // Allow: only one decimal point\r\n (this.decimal && e.key === this.minus && this.minusCounter < 1) // Allow: only one minus\r\n ) {\r\n return;\r\n }\r\n\r\n // Ensure that it is a number and stop the keypress\r\n if (e.key === ' ' || !this.regex.test(e.key)) {\r\n e.preventDefault();\r\n }\r\n }\r\n }\r\n\r\n @HostListener('keyup', ['$event'])\r\n onKeyUp(): void {\r\n if (this.digitsOnly) {\r\n if (!this.decimal) {\r\n return;\r\n }\r\n\r\n this.decimalCounter = this.el.nativeElement.value.split(this.decimalSeparator).length - 1;\r\n this.minusCounter = this.el.nativeElement.value.split(this.minus).length - 1;\r\n\r\n if (isNaN(+this.inputElement.value)) {\r\n this.inputElement.value = this.sanitizeInput(this.inputElement.value);\r\n }\r\n }\r\n }\r\n\r\n @HostListener('paste', ['$event'])\r\n onPaste(event: ClipboardEvent): void {\r\n if (this.digitsOnly) {\r\n const pastedInput = event.clipboardData?.getData('text/plain') as string;\r\n this.pasteData(pastedInput);\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.regex = new RegExp(this.allowHyphen ? '^[\\\\d -]+$' : '\\\\d');\r\n }\r\n\r\n private pasteData(pastedContent: string): void {\r\n const sanitizedContent = isNaN(+pastedContent) ? this.sanitizeInput(pastedContent) : pastedContent;\r\n const pasted = document.execCommand('insertText', false, sanitizedContent);\r\n if (!pasted) {\r\n const { selectionStart: start, selectionEnd: end } = this.inputElement;\r\n this.inputElement.setRangeText(sanitizedContent, start as number, end as number, 'end');\r\n }\r\n }\r\n\r\n private sanitizeInput(input: string): string {\r\n let result = '';\r\n if (this.decimal && this.isValidDecimal(input)) {\r\n const regex = new RegExp(`^[\\d -${this.decimalSeparator}]+$`, 'g');\r\n result = input.replace(regex, '');\r\n } else {\r\n result = input.replace(`/${this.regex}/g`, '');\r\n }\r\n\r\n const maxLength = this.inputElement.maxLength;\r\n\r\n if (maxLength > 0) {\r\n // the input element has maxLength limit\r\n const allowedLength = maxLength - this.inputElement.value.length;\r\n result = allowedLength > 0 ? result.substring(0, allowedLength) : '';\r\n }\r\n\r\n return result;\r\n }\r\n\r\n private isValidDecimal(inputString: string): boolean {\r\n return inputString.split(this.decimalSeparator as string).length <= 2;\r\n }\r\n}\r\n","import { AfterViewInit, Component, EventEmitter, Injector, Input, OnInit, Output } from '@angular/core';\r\nimport { ControlValueAccessor, UntypedFormControl, NgControl, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport ElementBaseComponent from '../base/element-base';\r\n\r\n@Component({\r\n selector: 'ecabs-input',\r\n templateUrl: './ecabs-input.component.html',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: EcabsInputComponent,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class EcabsInputComponent\r\n extends ElementBaseComponent\r\n implements ControlValueAccessor, AfterViewInit, OnInit\r\n{\r\n @Input()\r\n digitsOnly!: boolean;\r\n\r\n @Input()\r\n allowDecimal!: boolean;\r\n\r\n @Input()\r\n allowHyphen!: boolean;\r\n\r\n @Input() max!: number;\r\n @Input() step!: number;\r\n\r\n @Output() onblur = new EventEmitter<any>();\r\n val!: string | number;\r\n\r\n get value(): string | number {\r\n return this.val;\r\n }\r\n\r\n set value(val) {\r\n if (val !== undefined && this.val !== val) {\r\n this.val = val;\r\n this.onChange(val);\r\n this.onTouch(val);\r\n }\r\n }\r\n\r\n constructor(private injector: Injector) {\r\n super();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.type === 'number') {\r\n this.digitsOnly = true;\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n const ngControl: NgControl = this.injector.get(NgControl, null) as NgControl;\r\n if (ngControl) {\r\n this.control = ngControl.control as UntypedFormControl;\r\n }\r\n }\r\n\r\n onChange: any = () => {};\r\n\r\n onTouch: any = () => {};\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouch = fn;\r\n }\r\n\r\n blurChange(e:any): void {\r\n this.onblur.emit(e);\r\n }\r\n}\r\n","<app-element-wrapper [data]=\"getData()\">\r\n <div class=\"form-field__input--wrapper\">\r\n <input\r\n appDigitsOnly\r\n [digitsOnly]=\"digitsOnly\"\r\n [decimal]=\"allowDecimal\"\r\n [allowHyphen]=\"allowHyphen\"\r\n class=\"form-field__input\"\r\n [type]=\"type\"\r\n [id]=\"name\"\r\n [(ngModel)]=\"value\"\r\n [placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n [disabled]=\"disabled\"\r\n [maxlength]=\"maxLength\"\r\n [max]=\"max\"\r\n [step]=\"step\"\r\n (blur)=\"blurChange($event)\"\r\n />\r\n\r\n <div class=\"form-field__input--suffix\" *ngIf=\"type !== 'number'\">\r\n <ng-content select=\"mat-icon\"></ng-content>\r\n <ng-content select=\".suffix\"></ng-content>\r\n </div>\r\n </div>\r\n</app-element-wrapper>\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\n\r\nimport { HintComponent } from './hint.component';\r\n\r\n@NgModule({\r\n declarations: [HintComponent],\r\n imports: [CommonModule, FormsModule, MatFormFieldModule],\r\n exports: [HintComponent],\r\n})\r\nexport class HintModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { ValidationComponent } from './validation.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\n\r\n@NgModule({\r\n declarations: [ValidationComponent],\r\n imports: [CommonModule, FormsModule, MatFormFieldModule],\r\n exports: [ValidationComponent],\r\n})\r\nexport class ValidationModule {}\r\n","\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\nimport { HintModule } from '../hint/hint.module';\r\nimport { ValidationModule } from '../validation/validation.module';\r\nimport { ElementWrapperComponent } from './element-wrapper.component';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { EcabsLoadingModule } from '../../ecabs-loading/ecabs-loading.module';\r\n\r\n@NgModule({\r\n declarations: [ElementWrapperComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n EcabsLoadingModule,\r\n ValidationModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatTooltipModule,\r\n HintModule,\r\n ],\r\n exports: [ElementWrapperComponent],\r\n})\r\nexport class ElementWrapperModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { EcabsInputComponent } from './ecabs-input.component';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ElementWrapperModule } from '../base/element-wrapper/element-wrapper.module';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { DigitsOnlyDirective } from '../base/directives/digits-only.directive';\r\n\r\n@NgModule({\r\n declarations: [EcabsInputComponent, DigitsOnlyDirective],\r\n imports: [CommonModule, MatInputModule, ElementWrapperModule, FormsModule],\r\n exports: [EcabsInputComponent],\r\n})\r\nexport class EcabsInputModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.EcabsSpinnerComponent","i2.EcabsSpinnerComponent","i3.ValidationComponent","i6.HintComponent","i2.ElementWrapperComponent","i4.DigitsOnlyDirective"],"mappings":"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"}
|