cax-design-system 2.7.12 → 2.8.0
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 +46 -46
- package/esm2022/accordion/accordion.mjs +3 -3
- package/esm2022/autocomplete/autocomplete.mjs +3 -3
- package/esm2022/avatar/avatar.mjs +3 -3
- package/esm2022/avatargroup/avatargroup.mjs +3 -3
- package/esm2022/badge/badge.mjs +3 -3
- package/esm2022/breadcrumb/breadcrumb.mjs +3 -3
- package/esm2022/button/button.mjs +3 -3
- package/esm2022/calendar/calendar.mjs +3 -3
- package/esm2022/card/card.mjs +3 -3
- package/esm2022/cascadeselect/cascadeselect.mjs +5 -5
- package/esm2022/checkbox/checkbox.mjs +3 -3
- package/esm2022/chip/chip.mjs +3 -3
- package/esm2022/chips/chips.mjs +3 -3
- package/esm2022/colorpicker/colorpicker.mjs +3 -3
- package/esm2022/commentbox/commentbox.mjs +3 -3
- package/esm2022/confirmdialog/confirmdialog.mjs +3 -3
- package/esm2022/dialog/dialog.mjs +3 -3
- package/esm2022/divider/divider.mjs +3 -3
- package/esm2022/dropdown/dropdown-item.mjs +3 -3
- package/esm2022/dropdown/dropdown.mjs +3 -3
- package/esm2022/editor/editor.mjs +3 -3
- package/esm2022/image/image.mjs +3 -3
- package/esm2022/inputgroup/inputgroup.mjs +3 -3
- package/esm2022/inputgroupaddon/inputgroupaddon.mjs +3 -3
- package/esm2022/inputmask/inputmask.mjs +3 -3
- package/esm2022/inputnumber/inputnumber.mjs +3 -3
- package/esm2022/inputtext/inputtext.component.mjs +3 -3
- package/esm2022/inputtextarea/inputtextarea.component.mjs +3 -3
- package/esm2022/logo/logo.mjs +3 -3
- package/esm2022/menu/menu.mjs +5 -5
- package/esm2022/messages/messages.mjs +3 -3
- package/esm2022/multiselect/multiselect.mjs +5 -5
- package/esm2022/navigation/navigation.mjs +3 -3
- package/esm2022/overlay/overlay.mjs +3 -3
- package/esm2022/overlaypanel/overlaypanel.mjs +3 -3
- package/esm2022/paginator/paginator.mjs +3 -3
- package/esm2022/progressbar/progressbar.mjs +3 -3
- package/esm2022/progressspinner/progressspinner.mjs +3 -3
- package/esm2022/radiobutton/radiobutton.mjs +3 -3
- package/esm2022/scroller/scroller.mjs +3 -3
- package/esm2022/selectbutton/selectbutton.mjs +3 -3
- package/esm2022/sidebar/sidebar.mjs +3 -3
- package/esm2022/skeleton/skeleton.mjs +3 -3
- package/esm2022/speeddial/speeddial.mjs +3 -3
- package/esm2022/splitbutton/splitbutton.mjs +3 -3
- package/esm2022/splitter/splitter.mjs +3 -3
- package/esm2022/steps/steps.mjs +3 -3
- package/esm2022/table/components/cell-editor/cell-editor.mjs +3 -3
- package/esm2022/table/components/column-filter/column-filter.mjs +3 -3
- package/esm2022/table/components/column-filter-form-element/column-filter-form-element.mjs +3 -3
- package/esm2022/table/components/sort-icon/sort-icon.mjs +3 -3
- package/esm2022/table/components/table-body/table-body.mjs +3 -3
- package/esm2022/table/components/table-checkbox/table-checkbox.mjs +3 -3
- package/esm2022/table/components/table-header-checkbox/table-header-checkbox.mjs +3 -3
- package/esm2022/table/components/table-radio-button/table-radio-button.mjs +3 -3
- package/esm2022/table/table.mjs +3 -3
- package/esm2022/tableconfiguration/tableconfiguration.mjs +3 -3
- package/esm2022/tabview/tabview.mjs +5 -5
- package/esm2022/tag/tag.mjs +3 -3
- package/esm2022/timeline/timeline.mjs +3 -3
- package/esm2022/toast/toast.mjs +3 -3
- package/esm2022/toast/toastitem.mjs +3 -3
- package/esm2022/toggleswitch/toggleswitch.mjs +3 -3
- package/esm2022/tree/tree.mjs +5 -5
- package/esm2022/treeselect/treeselect.mjs +3 -3
- package/esm2022/tristatecheckbox/tristatecheckbox.mjs +3 -3
- package/esm2022/upload/upload.component.mjs +3 -3
- package/fesm2022/cax-design-system-accordion.mjs +2 -2
- package/fesm2022/cax-design-system-accordion.mjs.map +1 -1
- package/fesm2022/cax-design-system-autocomplete.mjs +2 -2
- package/fesm2022/cax-design-system-autocomplete.mjs.map +1 -1
- package/fesm2022/cax-design-system-avatar.mjs +2 -2
- package/fesm2022/cax-design-system-avatar.mjs.map +1 -1
- package/fesm2022/cax-design-system-avatargroup.mjs +2 -2
- package/fesm2022/cax-design-system-avatargroup.mjs.map +1 -1
- package/fesm2022/cax-design-system-badge.mjs +2 -2
- package/fesm2022/cax-design-system-badge.mjs.map +1 -1
- package/fesm2022/cax-design-system-breadcrumb.mjs +2 -2
- package/fesm2022/cax-design-system-breadcrumb.mjs.map +1 -1
- package/fesm2022/cax-design-system-button.mjs +2 -2
- package/fesm2022/cax-design-system-button.mjs.map +1 -1
- package/fesm2022/cax-design-system-calendar.mjs +2 -2
- package/fesm2022/cax-design-system-calendar.mjs.map +1 -1
- package/fesm2022/cax-design-system-card.mjs +2 -2
- package/fesm2022/cax-design-system-card.mjs.map +1 -1
- package/fesm2022/cax-design-system-cascadeselect.mjs +4 -4
- package/fesm2022/cax-design-system-cascadeselect.mjs.map +1 -1
- package/fesm2022/cax-design-system-checkbox.mjs +2 -2
- package/fesm2022/cax-design-system-checkbox.mjs.map +1 -1
- package/fesm2022/cax-design-system-chip.mjs +2 -2
- package/fesm2022/cax-design-system-chip.mjs.map +1 -1
- package/fesm2022/cax-design-system-chips.mjs +2 -2
- package/fesm2022/cax-design-system-chips.mjs.map +1 -1
- package/fesm2022/cax-design-system-colorpicker.mjs +2 -2
- package/fesm2022/cax-design-system-colorpicker.mjs.map +1 -1
- package/fesm2022/cax-design-system-commentbox.mjs +2 -2
- package/fesm2022/cax-design-system-commentbox.mjs.map +1 -1
- package/fesm2022/cax-design-system-confirmdialog.mjs +2 -2
- package/fesm2022/cax-design-system-confirmdialog.mjs.map +1 -1
- package/fesm2022/cax-design-system-dialog.mjs +2 -2
- package/fesm2022/cax-design-system-dialog.mjs.map +1 -1
- package/fesm2022/cax-design-system-divider.mjs +2 -2
- package/fesm2022/cax-design-system-divider.mjs.map +1 -1
- package/fesm2022/cax-design-system-dropdown.mjs +4 -4
- package/fesm2022/cax-design-system-dropdown.mjs.map +1 -1
- package/fesm2022/cax-design-system-editor.mjs +2 -2
- package/fesm2022/cax-design-system-editor.mjs.map +1 -1
- package/fesm2022/cax-design-system-image.mjs +2 -2
- package/fesm2022/cax-design-system-image.mjs.map +1 -1
- package/fesm2022/cax-design-system-inputgroup.mjs +2 -2
- package/fesm2022/cax-design-system-inputgroup.mjs.map +1 -1
- package/fesm2022/cax-design-system-inputgroupaddon.mjs +2 -2
- package/fesm2022/cax-design-system-inputgroupaddon.mjs.map +1 -1
- package/fesm2022/cax-design-system-inputmask.mjs +2 -2
- package/fesm2022/cax-design-system-inputmask.mjs.map +1 -1
- package/fesm2022/cax-design-system-inputnumber.mjs +2 -2
- package/fesm2022/cax-design-system-inputnumber.mjs.map +1 -1
- package/fesm2022/cax-design-system-inputtext.mjs +2 -2
- package/fesm2022/cax-design-system-inputtext.mjs.map +1 -1
- package/fesm2022/cax-design-system-inputtextarea.mjs +2 -2
- package/fesm2022/cax-design-system-inputtextarea.mjs.map +1 -1
- package/fesm2022/cax-design-system-logo.mjs +2 -2
- package/fesm2022/cax-design-system-logo.mjs.map +1 -1
- package/fesm2022/cax-design-system-menu.mjs +4 -4
- package/fesm2022/cax-design-system-menu.mjs.map +1 -1
- package/fesm2022/cax-design-system-messages.mjs +2 -2
- package/fesm2022/cax-design-system-messages.mjs.map +1 -1
- package/fesm2022/cax-design-system-multiselect.mjs +4 -4
- package/fesm2022/cax-design-system-multiselect.mjs.map +1 -1
- package/fesm2022/cax-design-system-navigation.mjs +2 -2
- package/fesm2022/cax-design-system-navigation.mjs.map +1 -1
- package/fesm2022/cax-design-system-overlay.mjs +2 -2
- package/fesm2022/cax-design-system-overlay.mjs.map +1 -1
- package/fesm2022/cax-design-system-overlaypanel.mjs +2 -2
- package/fesm2022/cax-design-system-overlaypanel.mjs.map +1 -1
- package/fesm2022/cax-design-system-paginator.mjs +2 -2
- package/fesm2022/cax-design-system-paginator.mjs.map +1 -1
- package/fesm2022/cax-design-system-progressbar.mjs +2 -2
- package/fesm2022/cax-design-system-progressbar.mjs.map +1 -1
- package/fesm2022/cax-design-system-progressspinner.mjs +2 -2
- package/fesm2022/cax-design-system-progressspinner.mjs.map +1 -1
- package/fesm2022/cax-design-system-radiobutton.mjs +2 -2
- package/fesm2022/cax-design-system-radiobutton.mjs.map +1 -1
- package/fesm2022/cax-design-system-scroller.mjs +2 -2
- package/fesm2022/cax-design-system-scroller.mjs.map +1 -1
- package/fesm2022/cax-design-system-selectbutton.mjs +2 -2
- package/fesm2022/cax-design-system-selectbutton.mjs.map +1 -1
- package/fesm2022/cax-design-system-sidebar.mjs +2 -2
- package/fesm2022/cax-design-system-sidebar.mjs.map +1 -1
- package/fesm2022/cax-design-system-skeleton.mjs +2 -2
- package/fesm2022/cax-design-system-skeleton.mjs.map +1 -1
- package/fesm2022/cax-design-system-speeddial.mjs +2 -2
- package/fesm2022/cax-design-system-speeddial.mjs.map +1 -1
- package/fesm2022/cax-design-system-splitbutton.mjs +2 -2
- package/fesm2022/cax-design-system-splitbutton.mjs.map +1 -1
- package/fesm2022/cax-design-system-splitter.mjs +2 -2
- package/fesm2022/cax-design-system-splitter.mjs.map +1 -1
- package/fesm2022/cax-design-system-steps.mjs +2 -2
- package/fesm2022/cax-design-system-steps.mjs.map +1 -1
- package/fesm2022/cax-design-system-table.mjs +18 -18
- package/fesm2022/cax-design-system-table.mjs.map +1 -1
- package/fesm2022/cax-design-system-tableconfiguration.mjs +2 -2
- package/fesm2022/cax-design-system-tableconfiguration.mjs.map +1 -1
- package/fesm2022/cax-design-system-tabview.mjs +4 -4
- package/fesm2022/cax-design-system-tabview.mjs.map +1 -1
- package/fesm2022/cax-design-system-tag.mjs +2 -2
- package/fesm2022/cax-design-system-tag.mjs.map +1 -1
- package/fesm2022/cax-design-system-timeline.mjs +2 -2
- package/fesm2022/cax-design-system-timeline.mjs.map +1 -1
- package/fesm2022/cax-design-system-toast.mjs +4 -4
- package/fesm2022/cax-design-system-toast.mjs.map +1 -1
- package/fesm2022/cax-design-system-toggleswitch.mjs +2 -2
- package/fesm2022/cax-design-system-toggleswitch.mjs.map +1 -1
- package/fesm2022/cax-design-system-tree.mjs +4 -4
- package/fesm2022/cax-design-system-tree.mjs.map +1 -1
- package/fesm2022/cax-design-system-treeselect.mjs +2 -2
- package/fesm2022/cax-design-system-treeselect.mjs.map +1 -1
- package/fesm2022/cax-design-system-tristatecheckbox.mjs +2 -2
- package/fesm2022/cax-design-system-tristatecheckbox.mjs.map +1 -1
- package/fesm2022/cax-design-system-upload.mjs +2 -2
- package/fesm2022/cax-design-system-upload.mjs.map +1 -1
- package/package.json +138 -138
- package/resources/cax.min.scss +1 -1
- package/resources/cax.scss +12518 -12488
- package/resources/components/accordion/accordion.scss +46 -46
- package/resources/components/autocomplete/autocomplete.scss +183 -183
- package/resources/components/avatar/avatar.scss +34 -34
- package/resources/components/avatargroup/avatargroup.scss +10 -10
- package/resources/components/badge/badge.scss +67 -67
- package/resources/components/blockui/blockui.css +26 -26
- package/resources/components/breadcrumb/breadcrumb.scss +33 -33
- package/resources/components/button/button.scss +163 -163
- package/resources/components/calendar/calendar.scss +235 -235
- package/resources/components/card/card.scss +50 -50
- package/resources/components/carousel/carousel.css +71 -71
- package/resources/components/cascadeselect/cascadeselect.scss +105 -105
- package/resources/components/checkbox/checkbox.scss +30 -30
- package/resources/components/chip/chip.scss +6 -6
- package/resources/components/chips/chips.scss +205 -205
- package/resources/components/colorpicker/colorpicker-images.scss +6 -6
- package/resources/components/colorpicker/colorpicker.scss +82 -82
- package/resources/components/commentbox/commentbox.scss +611 -611
- package/resources/components/common/common.scss +183 -183
- package/resources/components/confirmpopup/confirmpopup.css +53 -53
- package/resources/components/contextmenu/contextmenu.css +42 -42
- package/resources/components/dataview/dataview.css +13 -13
- package/resources/components/dialog/dialog.scss +171 -171
- package/resources/components/divider/divider.scss +86 -86
- package/resources/components/dock/dock.css +107 -107
- package/resources/components/dropdown/dropdown.scss +94 -94
- package/resources/components/editor/editor.scss +3 -3
- package/resources/components/fieldset/fieldset.css +30 -30
- package/resources/components/fileupload/fileupload.css +47 -47
- package/resources/components/galleria/galleria.css +281 -281
- package/resources/components/iconfield/iconfield.css +5 -5
- package/resources/components/image/image.scss +92 -92
- package/resources/components/inplace/inplace.css +19 -19
- package/resources/components/inputicon/inputicon.css +6 -6
- package/resources/components/inputmask/inputmask.scss +12 -12
- package/resources/components/inputnumber/inputnumber.scss +109 -109
- package/resources/components/inputotp/inputotp.css +2 -2
- package/resources/components/inputswitch/inputswitch.css +23 -23
- package/resources/components/inputtext/inputtext.scss +145 -145
- package/resources/components/inputtextarea/inputtextarea.scss +10 -10
- package/resources/components/knob/knob.css +20 -20
- package/resources/components/listbox/listbox.css +40 -40
- package/resources/components/megamenu/megamenu.css +108 -108
- package/resources/components/menu/menu.scss +30 -30
- package/resources/components/menubar/menubar.css +81 -81
- package/resources/components/message/message.css +17 -17
- package/resources/components/messages/messages.scss +55 -55
- package/resources/components/multiselect/multiselect.scss +132 -132
- package/resources/components/navigation/navigation.scss +196 -196
- package/resources/components/orderlist/orderlist.css +78 -78
- package/resources/components/organizationchart/organizationchart.css +62 -62
- package/resources/components/overlay/overlay.scss +80 -80
- package/resources/components/overlaypanel/overlaypanel.scss +66 -66
- package/resources/components/paginator/paginator.scss +41 -41
- package/resources/components/panel/panel.css +29 -29
- package/resources/components/panelmenu/panelmenu.css +45 -45
- package/resources/components/password/password.css +54 -54
- package/resources/components/picklist/picklist.css +60 -60
- package/resources/components/progressbar/progressbar.scss +107 -107
- package/resources/components/progressspinner/progressspinner.scss +94 -94
- package/resources/components/radiobutton/radiobutton.scss +34 -34
- package/resources/components/rating/rating.css +15 -15
- package/resources/components/ripple/ripple.scss +29 -29
- package/resources/components/scroller/scroller.scss +58 -58
- package/resources/components/scrollpanel/scrollpanel.css +50 -50
- package/resources/components/scrolltop/scrolltop.css +18 -18
- package/resources/components/sidebar/sidebar.scss +117 -117
- package/resources/components/skeleton/skeleton.scss +24 -24
- package/resources/components/slidemenu/slidemenu.css +100 -100
- package/resources/components/slider/slider.css +41 -41
- package/resources/components/speeddial/speeddial.scss +122 -122
- package/resources/components/spinner/spinner.css +63 -63
- package/resources/components/splitbutton/splitbutton.scss +53 -53
- package/resources/components/splitter/splitter.scss +73 -73
- package/resources/components/stepper/stepper.css +9 -9
- package/resources/components/steps/steps.scss +50 -50
- package/resources/components/table/table.scss +451 -451
- package/resources/components/tableconfiguration/tableconfiguration.scss +115 -115
- package/resources/components/tabmenu/tabmenu.css +80 -80
- package/resources/components/tabview/tabview.scss +198 -198
- package/resources/components/tag/tag.scss +23 -23
- package/resources/components/terminal/terminal.css +24 -24
- package/resources/components/tieredmenu/tieredmenu.scss +55 -55
- package/resources/components/timeline/timeline.scss +128 -128
- package/resources/components/toast/toast.scss +87 -87
- package/resources/components/toggleswitch/toggleswitch.scss +36 -36
- package/resources/components/toolbar/toolbar.css +19 -19
- package/resources/components/tooltip/tooltip.scss +124 -124
- package/resources/components/tree/tree.scss +154 -154
- package/resources/components/treeselect/treeselect.scss +114 -114
- package/resources/components/treetable/treetable.css +205 -205
- package/resources/components/upload/upload.component.scss +145 -145
- package/resources/logo/dataX-dark.svg +12 -12
- package/resources/logo/dataX-icon-dark.svg +5 -5
- package/resources/logo/dataX-icon.svg +5 -5
- package/resources/logo/dataX.svg +12 -12
- package/resources/styles/colors.scss +397 -397
- package/resources/styles/shadow-blur.scss +21 -21
- package/resources/styles/space-radius-border.scss +49 -49
- package/resources/styles/typography.scss +116 -135
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cax-design-system-inputtext.mjs","sources":["../../src/app/components/inputtext/inputtext.directive.ts","../../src/app/components/inputtext/inputtext.component.ts","../../src/app/components/inputtext/inputtext.html","../../src/app/components/inputtext/inputtext.module.ts","../../src/app/components/inputtext/cax-design-system-inputtext.ts"],"sourcesContent":["import { Directive, ElementRef, HostListener, DoCheck, Optional, ChangeDetectorRef, AfterViewInit, EventEmitter, Input, Output, Renderer2 } from '@angular/core';\nimport { NgModel } from '@angular/forms';\n\ntype Nullable<T> = T | null | undefined;\n@Directive({\n selector: '[caxInputText]',\n host: {\n class: 'cax-inputtext cax-component cax-element',\n '[class.cax-filled]': 'filled',\n '[disabled]': 'disabled'\n }\n})\nexport class InputtextDirective implements DoCheck, AfterViewInit {\n filled: Nullable<boolean>;\n @Input() placeholder: string = '';\n @Input() disabled: boolean = false;\n @Output() valueChange: EventEmitter<string> = new EventEmitter<string>();\n\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n\n constructor(\n public el: ElementRef,\n @Optional() public ngModel: NgModel,\n private cd: ChangeDetectorRef,\n private renderer: Renderer2\n ) {}\n\n ngAfterViewInit() {\n this.updateFilledState();\n this.cd.detectChanges();\n this.applyDynamicAttributes();\n }\n\n ngDoCheck() {\n this.updateFilledState();\n }\n\n @HostListener('input', ['$event'])\n onInput() {\n this.updateFilledState();\n }\n\n private applyDynamicAttributes() {\n const input = this.el.nativeElement;\n\n if (this.placeholder) {\n this.renderer.setAttribute(input, 'placeholder', this.placeholder);\n }\n if (this.disabled) {\n this.renderer.setAttribute(input, 'disabled', 'true');\n } else {\n this.renderer.removeAttribute(input, 'disabled');\n }\n }\n\n updateFilledState() {\n this.filled = (this.el.nativeElement.value && this.el.nativeElement.value.length) || (this.ngModel && this.ngModel.model);\n }\n\n clearInput() {\n this.valueChange.emit('');\n }\n}\n","import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'cax-inputtext',\n templateUrl: './inputtext.html',\n styleUrls: ['./inputtext.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputTextComponent),\n multi: true\n }\n ]\n})\nexport class InputTextComponent implements ControlValueAccessor {\n @Input() value: string = '';\n @Input() placeholder: string = '';\n @Input() disabled: boolean = false;\n @Input() maxlength?: number;\n @Input() successText?: string;\n @Input() errorText?: string;\n @Input() showLabel?: boolean = true;\n @Input() leftIcon?: boolean = false;\n @Input() rightIcon?: boolean = false;\n @Input() rightIconClickable?: boolean = false;\n @Input() clearIcon: boolean = false;\n @Input() label?: string;\n @Input() iconPath?: string;\n @Input() disabledIcon: boolean = false;\n @Input() showIcon?: boolean = false;\n @Input() iconClass: string = '';\n @Input() leftIconClass: string = '';\n @Input() rightIconClass: string = '';\n @Input() invalid: boolean = false;\n @Input() required: boolean = true;\n @Input() style?: { [key: string]: string };\n @Input() size: 'sm' | 'md' | 'lg' = 'md';\n @Input() styleClass?: string;\n @Output() valueChange: EventEmitter<string> = new EventEmitter<string>();\n @Output() rightIconClick: EventEmitter<void> = new EventEmitter<void>();\n\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n writeValue(value: string): void {\n this.value = value || '';\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n onInput(event: Event | string): void {\n const newValue = typeof event === 'string' ? event : (event.target as HTMLInputElement)?.value || '';\n this.value = newValue;\n this.valueChange.emit(newValue);\n this.onChange(newValue);\n this.onTouched();\n }\n\n clearInput(): void {\n this.value = '';\n this.valueChange.emit(this.value);\n this.onChange(this.value);\n this.onTouched();\n }\n\n onRightIconClick(): void {\n this.rightIconClick.emit();\n }\n}\n","<div class=\"cax-input-container\"\r\n [class]=\"styleClass\"\r\n [ngClass]=\"'cax-input-size-' + size\"\r\n [ngStyle]=\"style\">\r\n <label *ngIf=\"label\" class=\"cax-label\" [ngClass]=\"{'disabled-opacity': disabled}\">{{ label }}</label>\r\n\r\n <div class=\"cax-input-wrapper\"\r\n [ngClass]=\"{\r\n 'with-left-icon': leftIcon,\r\n 'with-right-icon': rightIcon,\r\n 'with-clear-icon': clearIcon && value,\r\n 'input-disabled': disabled\r\n }\"\r\n >\r\n <!-- Left Icon -->\r\n <span *ngIf=\"leftIcon\"\r\n class=\"cax-icon-container cax-icon-left\">\r\n <i [ngClass]=\"leftIconClass\"></i>\r\n </span>\r\n\r\n <!-- Input -->\r\n <input\r\n type=\"text\"\r\n caxInputText\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"onInput($event)\"\r\n [maxlength]=\"maxlength\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"disabled\"\r\n [required]=\"required\"\r\n [ngStyle]=\"style\"\r\n [ngClass]=\"{\r\n 'cax-inputtext': true,\r\n 'cax-input-invalid': invalid,\r\n 'with-left-icon': leftIcon,\r\n 'with-right-icon': rightIcon,\r\n 'with-clear-icon': clearIcon && value\r\n }\"\r\n />\r\n\r\n <!-- Clear Icon (before right icon) -->\r\n <span *ngIf=\"clearIcon && value\"\r\n class=\"cax-icon-container cax-clear-icon clickable-icon\"\r\n [ngClass]=\"{'no-right-icon': !rightIcon}\"\r\n (click)=\"clearInput()\">\r\n <i class=\"cax cax-close-circle\"></i>\r\n </span>\r\n\r\n <!-- Right Icon -->\r\n <span *ngIf=\"rightIcon\"\r\n class=\"cax-icon-container cax-icon-right\"\r\n [ngClass]=\"{'clickable-icon': rightIconClickable}\"\r\n (click)=\"rightIconClickable && onRightIconClick()\">\r\n <i [ngClass]=\"rightIconClass\"></i>\r\n </span>\r\n </div>\r\n\r\n <!-- Error Message with conditional opacity -->\r\n <small *ngIf=\"invalid\" id=\"helper-text\" class=\"cax-error disabled-opacity\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ errorText }} </small>\r\n\r\n <!-- Helper Text with conditional opacity -->\r\n <small *ngIf=\"successText && !invalid\" id=\"helper-text\" class=\"cax-helper-text\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ successText }} </small>\r\n</div>\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { InputtextDirective } from './inputtext.directive';\nimport { InputTextComponent } from './inputtext.component';\nimport { FormsModule } from '@angular/forms';\n\n@NgModule({\n imports: [CommonModule, FormsModule],\n declarations: [InputTextComponent, InputtextDirective],\n exports: [InputTextComponent, InputtextDirective]\n})\nexport class InputTextModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i3.InputtextDirective"],"mappings":";;;;;;;MAYa,kBAAkB,CAAA;AAShB,IAAA,EAAA,CAAA;AACY,IAAA,OAAA,CAAA;AACX,IAAA,EAAA,CAAA;AACA,IAAA,QAAA,CAAA;AAXZ,IAAA,MAAM,CAAoB;IACjB,WAAW,GAAW,EAAE,CAAC;IACzB,QAAQ,GAAY,KAAK,CAAC;AACzB,IAAA,WAAW,GAAyB,IAAI,YAAY,EAAU,CAAC;IAEhE,OAAO,GAA0B,UAAU,CAAC;AAErD,IAAA,WAAA,CACW,EAAc,EACF,OAAgB,EAC3B,EAAqB,EACrB,QAAmB,EAAA;QAHpB,IAAE,CAAA,EAAA,GAAF,EAAE,CAAY;QACF,IAAO,CAAA,OAAA,GAAP,OAAO,CAAS;QAC3B,IAAE,CAAA,EAAA,GAAF,EAAE,CAAmB;QACrB,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;KAC3B;IAEJ,eAAe,GAAA;QACX,IAAI,CAAC,iBAAiB,EAAE,CAAC;AACzB,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;QACxB,IAAI,CAAC,sBAAsB,EAAE,CAAC;KACjC;IAED,SAAS,GAAA;QACL,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC5B;IAGD,OAAO,GAAA;QACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC5B;IAEO,sBAAsB,GAAA;AAC1B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;AAEpC,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AAClB,YAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;SACtE;AACD,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;SACzD;aAAM;YACH,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;SACpD;KACJ;IAED,iBAAiB,GAAA;AACb,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,MAAM,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;KAC7H;IAED,UAAU,GAAA;AACN,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC7B;uGAjDQ,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;2FAAlB,kBAAkB,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,EAAA,cAAA,EAAA,yCAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE,yCAAyC;AAChD,wBAAA,oBAAoB,EAAE,QAAQ;AAC9B,wBAAA,YAAY,EAAE,UAAU;AAC3B,qBAAA;AACJ,iBAAA,CAAA;;0BAWQ,QAAQ;iGARJ,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACI,WAAW,EAAA,CAAA;sBAApB,MAAM;gBAEE,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAoBN,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;MCtBxB,kBAAkB,CAAA;IAClB,KAAK,GAAW,EAAE,CAAC;IACnB,WAAW,GAAW,EAAE,CAAC;IACzB,QAAQ,GAAY,KAAK,CAAC;AAC1B,IAAA,SAAS,CAAU;AACnB,IAAA,WAAW,CAAU;AACrB,IAAA,SAAS,CAAU;IACnB,SAAS,GAAa,IAAI,CAAC;IAC3B,QAAQ,GAAa,KAAK,CAAC;IAC3B,SAAS,GAAa,KAAK,CAAC;IAC5B,kBAAkB,GAAa,KAAK,CAAC;IACrC,SAAS,GAAY,KAAK,CAAC;AAC3B,IAAA,KAAK,CAAU;AACf,IAAA,QAAQ,CAAU;IAClB,YAAY,GAAY,KAAK,CAAC;IAC9B,QAAQ,GAAa,KAAK,CAAC;IAC3B,SAAS,GAAW,EAAE,CAAC;IACvB,aAAa,GAAW,EAAE,CAAC;IAC3B,cAAc,GAAW,EAAE,CAAC;IAC5B,OAAO,GAAY,KAAK,CAAC;IACzB,QAAQ,GAAY,IAAI,CAAC;AACzB,IAAA,KAAK,CAA6B;IAClC,IAAI,GAAuB,IAAI,CAAC;AAChC,IAAA,UAAU,CAAU;AACnB,IAAA,WAAW,GAAyB,IAAI,YAAY,EAAU,CAAC;AAC/D,IAAA,cAAc,GAAuB,IAAI,YAAY,EAAQ,CAAC;AAEhE,IAAA,QAAQ,GAA4B,MAAK,GAAG,CAAC;AAC7C,IAAA,SAAS,GAAe,MAAK,GAAG,CAAC;AAEzC,IAAA,UAAU,CAAC,KAAa,EAAA;AACpB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;KAC5B;AAED,IAAA,gBAAgB,CAAC,EAA2B,EAAA;AACxC,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;KACtB;AAED,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC5B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACvB;AAED,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAChC,QAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;KAC9B;AAED,IAAA,OAAO,CAAC,KAAqB,EAAA;QACzB,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,GAAG,KAAK,GAAI,KAAK,CAAC,MAA2B,EAAE,KAAK,IAAI,EAAE,CAAC;AACrG,QAAA,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;AACtB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAChC,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACxB,IAAI,CAAC,SAAS,EAAE,CAAC;KACpB;IAED,UAAU,GAAA;AACN,QAAA,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,SAAS,EAAE,CAAC;KACpB;IAED,gBAAgB,GAAA;AACZ,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;KAC9B;uGA/DQ,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EARhB,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,SAAA,EAAA,WAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,eAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,UAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,kBAAkB,CAAC;AACjD,gBAAA,KAAK,EAAE,IAAI;AACd,aAAA;AACJ,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECbL,siFA+DA,EAAA,MAAA,EAAA,CAAA,knEAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,wIAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,4EAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,kBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;2FDhDa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAZ9B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,EAGd,SAAA,EAAA;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,wBAAwB,CAAC;AACjD,4BAAA,KAAK,EAAE,IAAI;AACd,yBAAA;AACJ,qBAAA,EAAA,QAAA,EAAA,siFAAA,EAAA,MAAA,EAAA,CAAA,knEAAA,CAAA,EAAA,CAAA;8BAGQ,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACI,WAAW,EAAA,CAAA;sBAApB,MAAM;gBACG,cAAc,EAAA,CAAA;sBAAvB,MAAM;;;ME7BE,eAAe,CAAA;uGAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;wGAAf,eAAe,EAAA,YAAA,EAAA,CAHT,kBAAkB,EAAE,kBAAkB,CAAA,EAAA,OAAA,EAAA,CAD3C,YAAY,EAAE,WAAW,CAAA,EAAA,OAAA,EAAA,CAEzB,kBAAkB,EAAE,kBAAkB,CAAA,EAAA,CAAA,CAAA;wGAEvC,eAAe,EAAA,OAAA,EAAA,CAJd,YAAY,EAAE,WAAW,CAAA,EAAA,CAAA,CAAA;;2FAI1B,eAAe,EAAA,UAAA,EAAA,CAAA;kBAL3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC;AACpC,oBAAA,YAAY,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;AACtD,oBAAA,OAAO,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;AACpD,iBAAA,CAAA;;;ACVD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"cax-design-system-inputtext.mjs","sources":["../../src/app/components/inputtext/inputtext.directive.ts","../../src/app/components/inputtext/inputtext.component.ts","../../src/app/components/inputtext/inputtext.html","../../src/app/components/inputtext/inputtext.module.ts","../../src/app/components/inputtext/cax-design-system-inputtext.ts"],"sourcesContent":["import { Directive, ElementRef, HostListener, DoCheck, Optional, ChangeDetectorRef, AfterViewInit, EventEmitter, Input, Output, Renderer2 } from '@angular/core';\nimport { NgModel } from '@angular/forms';\n\ntype Nullable<T> = T | null | undefined;\n@Directive({\n selector: '[caxInputText]',\n host: {\n class: 'cax-inputtext cax-component cax-element',\n '[class.cax-filled]': 'filled',\n '[disabled]': 'disabled'\n }\n})\nexport class InputtextDirective implements DoCheck, AfterViewInit {\n filled: Nullable<boolean>;\n @Input() placeholder: string = '';\n @Input() disabled: boolean = false;\n @Output() valueChange: EventEmitter<string> = new EventEmitter<string>();\n\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n\n constructor(\n public el: ElementRef,\n @Optional() public ngModel: NgModel,\n private cd: ChangeDetectorRef,\n private renderer: Renderer2\n ) {}\n\n ngAfterViewInit() {\n this.updateFilledState();\n this.cd.detectChanges();\n this.applyDynamicAttributes();\n }\n\n ngDoCheck() {\n this.updateFilledState();\n }\n\n @HostListener('input', ['$event'])\n onInput() {\n this.updateFilledState();\n }\n\n private applyDynamicAttributes() {\n const input = this.el.nativeElement;\n\n if (this.placeholder) {\n this.renderer.setAttribute(input, 'placeholder', this.placeholder);\n }\n if (this.disabled) {\n this.renderer.setAttribute(input, 'disabled', 'true');\n } else {\n this.renderer.removeAttribute(input, 'disabled');\n }\n }\n\n updateFilledState() {\n this.filled = (this.el.nativeElement.value && this.el.nativeElement.value.length) || (this.ngModel && this.ngModel.model);\n }\n\n clearInput() {\n this.valueChange.emit('');\n }\n}\n","import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'cax-inputtext',\n templateUrl: './inputtext.html',\n styleUrls: ['./inputtext.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputTextComponent),\n multi: true\n }\n ]\n})\nexport class InputTextComponent implements ControlValueAccessor {\n @Input() value: string = '';\n @Input() placeholder: string = '';\n @Input() disabled: boolean = false;\n @Input() maxlength?: number;\n @Input() successText?: string;\n @Input() errorText?: string;\n @Input() showLabel?: boolean = true;\n @Input() leftIcon?: boolean = false;\n @Input() rightIcon?: boolean = false;\n @Input() rightIconClickable?: boolean = false;\n @Input() clearIcon: boolean = false;\n @Input() label?: string;\n @Input() iconPath?: string;\n @Input() disabledIcon: boolean = false;\n @Input() showIcon?: boolean = false;\n @Input() iconClass: string = '';\n @Input() leftIconClass: string = '';\n @Input() rightIconClass: string = '';\n @Input() invalid: boolean = false;\n @Input() required: boolean = true;\n @Input() style?: { [key: string]: string };\n @Input() size: 'sm' | 'md' | 'lg' = 'md';\n @Input() styleClass?: string;\n @Output() valueChange: EventEmitter<string> = new EventEmitter<string>();\n @Output() rightIconClick: EventEmitter<void> = new EventEmitter<void>();\n\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n writeValue(value: string): void {\n this.value = value || '';\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n onInput(event: Event | string): void {\n const newValue = typeof event === 'string' ? event : (event.target as HTMLInputElement)?.value || '';\n this.value = newValue;\n this.valueChange.emit(newValue);\n this.onChange(newValue);\n this.onTouched();\n }\n\n clearInput(): void {\n this.value = '';\n this.valueChange.emit(this.value);\n this.onChange(this.value);\n this.onTouched();\n }\n\n onRightIconClick(): void {\n this.rightIconClick.emit();\n }\n}\n","<div class=\"cax-input-container\"\n [class]=\"styleClass\"\n [ngClass]=\"'cax-input-size-' + size\"\n [ngStyle]=\"style\">\n <label *ngIf=\"label\" class=\"cax-label\" [ngClass]=\"{'disabled-opacity': disabled}\">{{ label }}</label>\n\n <div class=\"cax-input-wrapper\"\n [ngClass]=\"{\n 'with-left-icon': leftIcon,\n 'with-right-icon': rightIcon,\n 'with-clear-icon': clearIcon && value,\n 'input-disabled': disabled\n }\"\n >\n <!-- Left Icon -->\n <span *ngIf=\"leftIcon\"\n class=\"cax-icon-container cax-icon-left\">\n <i [ngClass]=\"leftIconClass\"></i>\n </span>\n\n <!-- Input -->\n <input\n type=\"text\"\n caxInputText\n [(ngModel)]=\"value\"\n (ngModelChange)=\"onInput($event)\"\n [maxlength]=\"maxlength\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [ngStyle]=\"style\"\n [ngClass]=\"{\n 'cax-inputtext': true,\n 'cax-input-invalid': invalid,\n 'with-left-icon': leftIcon,\n 'with-right-icon': rightIcon,\n 'with-clear-icon': clearIcon && value\n }\"\n />\n\n <!-- Clear Icon (before right icon) -->\n <span *ngIf=\"clearIcon && value\"\n class=\"cax-icon-container cax-clear-icon clickable-icon\"\n [ngClass]=\"{'no-right-icon': !rightIcon}\"\n (click)=\"clearInput()\">\n <i class=\"cax cax-close-circle\"></i>\n </span>\n\n <!-- Right Icon -->\n <span *ngIf=\"rightIcon\"\n class=\"cax-icon-container cax-icon-right\"\n [ngClass]=\"{'clickable-icon': rightIconClickable}\"\n (click)=\"rightIconClickable && onRightIconClick()\">\n <i [ngClass]=\"rightIconClass\"></i>\n </span>\n </div>\n\n <!-- Error Message with conditional opacity -->\n <small *ngIf=\"invalid\" id=\"helper-text\" class=\"cax-error disabled-opacity\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ errorText }} </small>\n\n <!-- Helper Text with conditional opacity -->\n <small *ngIf=\"successText && !invalid\" id=\"helper-text\" class=\"cax-helper-text\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ successText }} </small>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { InputtextDirective } from './inputtext.directive';\nimport { InputTextComponent } from './inputtext.component';\nimport { FormsModule } from '@angular/forms';\n\n@NgModule({\n imports: [CommonModule, FormsModule],\n declarations: [InputTextComponent, InputtextDirective],\n exports: [InputTextComponent, InputtextDirective]\n})\nexport class InputTextModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i3.InputtextDirective"],"mappings":"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"}
|
|
@@ -218,7 +218,7 @@ class InputTextareaComponent {
|
|
|
218
218
|
useExisting: forwardRef(() => InputTextareaComponent),
|
|
219
219
|
multi: true
|
|
220
220
|
}
|
|
221
|
-
], viewQueries: [{ propertyName: "el", first: true, predicate: ["textarea"], descendants: true }], ngImport: i0, template: "<div class=\"cax-input-container\">\
|
|
221
|
+
], viewQueries: [{ propertyName: "el", first: true, predicate: ["textarea"], descendants: true }], ngImport: i0, template: "<div class=\"cax-input-container\">\n <label [attr.for]=\"textareaId\" class=\"cax-label\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ label }} </label>\n <textarea\n #textarea\n [rows]=\"rows\"\n [cols]=\"cols\"\n [placeholder]=\"placeholder\"\n [maxlength]=\"maxlength\"\n [minlength]=\"minlength\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly ? true : null\"\n [ngClass]=\"{\n 'filled-style': variant === 'filled',\n 'outlined-style': variant === 'outlined',\n 'cax-inputtextarea-disabled': disabled,\n 'disabled-opacity': disabled,\n 'cax-input-invalid': invalid\n }\"\n caxInputTextarea\n [autoResize]=\"autoResize\"\n (input)=\"onInput($event)\"\n [ngModel]=\"value\"\n (ngModelChange)=\"value = $event; valueChange.emit($event); onChange($event); onTouched()\"\n (blur)=\"onTouched()\"\n [ngStyle]=\"style\"\n ></textarea>\n\n <!-- Error Message with conditional opacity -->\n <small *ngIf=\"invalid\" id=\"helper-text\" class=\"cax-error\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ errorText }} </small>\n\n <!-- Helper Text with conditional opacity -->\n <small *ngIf=\"successText && !invalid\" id=\"helper-text\" class=\"cax-helper-text\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ successText }} </small>\n</div>\n", styles: ["@layer cax{.cax-inputtextarea-resizable{overflow:hidden;resize:none}.cax-fluid .cax-inputtextarea{width:100%}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: InputTextareadirective, selector: "[caxInputTextarea]", inputs: ["autoResize", "variant"], outputs: ["onResize"] }] });
|
|
222
222
|
}
|
|
223
223
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: InputTextareaComponent, decorators: [{
|
|
224
224
|
type: Component,
|
|
@@ -228,7 +228,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
228
228
|
useExisting: forwardRef(() => InputTextareaComponent),
|
|
229
229
|
multi: true
|
|
230
230
|
}
|
|
231
|
-
], template: "<div class=\"cax-input-container\">\
|
|
231
|
+
], template: "<div class=\"cax-input-container\">\n <label [attr.for]=\"textareaId\" class=\"cax-label\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ label }} </label>\n <textarea\n #textarea\n [rows]=\"rows\"\n [cols]=\"cols\"\n [placeholder]=\"placeholder\"\n [maxlength]=\"maxlength\"\n [minlength]=\"minlength\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly ? true : null\"\n [ngClass]=\"{\n 'filled-style': variant === 'filled',\n 'outlined-style': variant === 'outlined',\n 'cax-inputtextarea-disabled': disabled,\n 'disabled-opacity': disabled,\n 'cax-input-invalid': invalid\n }\"\n caxInputTextarea\n [autoResize]=\"autoResize\"\n (input)=\"onInput($event)\"\n [ngModel]=\"value\"\n (ngModelChange)=\"value = $event; valueChange.emit($event); onChange($event); onTouched()\"\n (blur)=\"onTouched()\"\n [ngStyle]=\"style\"\n ></textarea>\n\n <!-- Error Message with conditional opacity -->\n <small *ngIf=\"invalid\" id=\"helper-text\" class=\"cax-error\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ errorText }} </small>\n\n <!-- Helper Text with conditional opacity -->\n <small *ngIf=\"successText && !invalid\" id=\"helper-text\" class=\"cax-helper-text\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ successText }} </small>\n</div>\n", styles: ["@layer cax{.cax-inputtextarea-resizable{overflow:hidden;resize:none}.cax-fluid .cax-inputtextarea{width:100%}}\n"] }]
|
|
232
232
|
}], propDecorators: { label: [{
|
|
233
233
|
type: Input
|
|
234
234
|
}], textareaId: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cax-design-system-inputtextarea.mjs","sources":["../../src/app/components/inputtextarea/inputtextarea.directive.ts","../../src/app/components/inputtextarea/inputtextarea.component.ts","../../src/app/components/inputtextarea/inputtextarea.html","../../src/app/components/inputtextarea/inputtextarea.module.ts","../../src/app/components/inputtextarea/cax-design-system-inputtextarea.ts"],"sourcesContent":["import { Directive, ElementRef, HostListener, Input, Output, EventEmitter, Optional, AfterViewInit, OnInit, OnDestroy, ChangeDetectorRef, AfterViewChecked, booleanAttribute } from '@angular/core';\nimport { NgModel, NgControl, FormControl } from '@angular/forms';\nimport { Subscription } from 'rxjs';\nimport { caxConfig } from 'cax-design-system/api';\n/**\n * InputTextarea adds styling and autoResize functionality to standard textarea element.\n * @group Components\n */\n@Directive({\n selector: '[caxInputTextarea]',\n host: {\n class: 'cax-inputtextarea cax-inputtext cax-component cax-element',\n '[class.cax-filled]': 'filled',\n '[class.cax-inputtextarea-resizable]': 'autoResize',\n '[class.cax-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\"'\n }\n})\nexport class InputTextareadirective implements OnInit, AfterViewInit, OnDestroy {\n /**\n * When present, textarea size changes as being typed.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoResize: boolean | undefined;\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Callback to invoke on textarea resize.\n * @param {(Event | {})} event - Custom resize event.\n * @group Emits\n */\n @Output() onResize: EventEmitter<Event | {}> = new EventEmitter<Event | {}>();\n\n filled: boolean | undefined;\n\n cachedScrollHeight: number | undefined;\n\n ngModelSubscription: Subscription | undefined;\n\n ngControlSubscription: Subscription | undefined;\n\n constructor(\n public el: ElementRef,\n @Optional() public ngModel: NgModel,\n @Optional() public control: NgControl,\n private cd: ChangeDetectorRef,\n public config: caxConfig\n ) {}\n\n ngOnInit() {\n if (this.ngModel) {\n this.ngModelSubscription = (this.ngModel as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n\n if (this.control) {\n this.ngControlSubscription = (this.control as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n }\n\n ngAfterViewInit() {\n if (this.autoResize) this.resize();\n\n this.updateFilledState();\n this.cd.detectChanges();\n }\n\n @HostListener('input', ['$event'])\n onInput(e: Event) {\n this.updateState();\n }\n\n updateFilledState() {\n this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;\n }\n\n resize(event?: Event) {\n this.el.nativeElement.style.height = 'auto';\n this.el.nativeElement.style.height = this.el.nativeElement.scrollHeight + 'px';\n\n if (parseFloat(this.el.nativeElement.style.height) >= parseFloat(this.el.nativeElement.style.maxHeight)) {\n this.el.nativeElement.style.overflowY = 'scroll';\n this.el.nativeElement.style.height = this.el.nativeElement.style.maxHeight;\n } else {\n this.el.nativeElement.style.overflow = 'hidden';\n }\n\n this.onResize.emit(event || {});\n }\n\n updateState() {\n this.updateFilledState();\n\n if (this.autoResize) {\n this.resize();\n }\n }\n\n ngOnDestroy() {\n if (this.ngModelSubscription) {\n this.ngModelSubscription.unsubscribe();\n }\n\n if (this.ngControlSubscription) {\n this.ngControlSubscription.unsubscribe();\n }\n }\n}\n","import { Component, Input, Output, EventEmitter, ViewChild, ElementRef, AfterViewInit, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'cax-inputtextarea',\n templateUrl: './inputtextarea.html',\n styleUrls: ['./inputtextarea.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputTextareaComponent),\n multi: true\n }\n ]\n})\nexport class InputTextareaComponent implements AfterViewInit {\n /** Label for the textarea */\n @Input() label: string = '';\n\n /** Unique ID for the textarea */\n @Input() textareaId: string = `textarea-${Math.random().toString(36).substr(2, 9)}`;\n\n /** Number of rows for the textarea */\n @Input() rows: number = 5;\n\n /** Number of columns for the textarea */\n @Input() cols: number = 50;\n\n /** Placeholder text for the textarea */\n @Input() placeholder: string = '';\n\n /** Maximum number of characters allowed */\n @Input() maxlength: number | null = null;\n\n /** Minimum number of characters required */\n @Input() minlength: number | null = null;\n\n /** Whether the textarea is disabled */\n @Input() disabled: boolean = false;\n\n /** Whether the textarea is read-only */\n @Input() readonly: boolean = false;\n\n /** Whether to enable the auto-resize feature */\n @Input() autoResize: boolean = false;\n\n /** Variant of the textarea: 'filled' or 'outlined' */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n\n /** Whether to show the character counter */\n @Input() charCounter: boolean = false;\n\n /** Value of the textarea */\n @Input() value: string = '';\n\n /** Text to display when the input is valid */\n @Input() successText?: string;\n\n /** Text to display when the input is invalid */\n @Input() errorText?: string;\n\n /** Whether the input is in an invalid state */\n @Input() invalid: boolean = false;\n\n /** Event emitted when the textarea is resized */\n @Output() onResize: EventEmitter<Event | {}> = new EventEmitter<Event | {}>();\n\n /** Reference to the textarea element */\n @ViewChild('textarea') el!: ElementRef;\n\n @Input() style?: { [key: string]: string };\n\n /** Event handler for resize events */\n onResizeHandler(event: Event) {\n this.onResize.emit(event);\n if (this.autoResize) {\n this.resize();\n }\n }\n\n ngAfterViewInit() {\n if (this.autoResize) {\n this.resize();\n }\n }\n\n @Output() valueChange: EventEmitter<string> = new EventEmitter<string>();\n\n // Changed from private to public to allow access from template\n onChange: (value: string) => void = () => {};\n onTouched: () => void = () => {};\n\n writeValue(value: string): void {\n this.value = value || '';\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n onInput(event: Event): void {\n const input = event.target as HTMLInputElement;\n this.value = input.value;\n this.valueChange.emit(this.value);\n this.onChange(this.value);\n\n // Also handle resize if autoResize is enabled\n if (this.autoResize) {\n this.resize(event);\n }\n }\n\n resize(event?: Event) {\n this.el.nativeElement.style.height = 'auto';\n this.el.nativeElement.style.height = this.el.nativeElement.scrollHeight + 'px';\n\n if (parseFloat(this.el.nativeElement.style.height) >= parseFloat(this.el.nativeElement.style.maxHeight)) {\n this.el.nativeElement.style.overflowY = 'scroll';\n this.el.nativeElement.style.height = this.el.nativeElement.style.maxHeight;\n } else {\n this.el.nativeElement.style.overflow = 'hidden';\n }\n\n this.onResize.emit(event || {});\n }\n}\n","<div class=\"cax-input-container\">\r\n <label [attr.for]=\"textareaId\" class=\"cax-label\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ label }} </label>\r\n <textarea\r\n #textarea\r\n [rows]=\"rows\"\r\n [cols]=\"cols\"\r\n [placeholder]=\"placeholder\"\r\n [maxlength]=\"maxlength\"\r\n [minlength]=\"minlength\"\r\n [disabled]=\"disabled\"\r\n [readonly]=\"readonly ? true : null\"\r\n [ngClass]=\"{\r\n 'filled-style': variant === 'filled',\r\n 'outlined-style': variant === 'outlined',\r\n 'cax-inputtextarea-disabled': disabled,\r\n 'disabled-opacity': disabled,\r\n 'cax-input-invalid': invalid\r\n }\"\r\n caxInputTextarea\r\n [autoResize]=\"autoResize\"\r\n (input)=\"onInput($event)\"\r\n [ngModel]=\"value\"\r\n (ngModelChange)=\"value = $event; valueChange.emit($event); onChange($event); onTouched()\"\r\n (blur)=\"onTouched()\"\r\n [ngStyle]=\"style\"\r\n ></textarea>\r\n\r\n <!-- Error Message with conditional opacity -->\r\n <small *ngIf=\"invalid\" id=\"helper-text\" class=\"cax-error\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ errorText }} </small>\r\n\r\n <!-- Helper Text with conditional opacity -->\r\n <small *ngIf=\"successText && !invalid\" id=\"helper-text\" class=\"cax-helper-text\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ successText }} </small>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { InputTextareadirective } from './inputtextarea.directive';\nimport { InputTextareaComponent } from './inputtextarea.component';\nimport { FormsModule } from '@angular/forms';\n\n@NgModule({\n imports: [CommonModule, FormsModule],\n exports: [InputTextareadirective, InputTextareaComponent],\n declarations: [InputTextareadirective, InputTextareaComponent]\n})\nexport class InputTextareaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2","i3.InputTextareadirective"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cax-design-system-inputtextarea.mjs","sources":["../../src/app/components/inputtextarea/inputtextarea.directive.ts","../../src/app/components/inputtextarea/inputtextarea.component.ts","../../src/app/components/inputtextarea/inputtextarea.html","../../src/app/components/inputtextarea/inputtextarea.module.ts","../../src/app/components/inputtextarea/cax-design-system-inputtextarea.ts"],"sourcesContent":["import { Directive, ElementRef, HostListener, Input, Output, EventEmitter, Optional, AfterViewInit, OnInit, OnDestroy, ChangeDetectorRef, AfterViewChecked, booleanAttribute } from '@angular/core';\nimport { NgModel, NgControl, FormControl } from '@angular/forms';\nimport { Subscription } from 'rxjs';\nimport { caxConfig } from 'cax-design-system/api';\n/**\n * InputTextarea adds styling and autoResize functionality to standard textarea element.\n * @group Components\n */\n@Directive({\n selector: '[caxInputTextarea]',\n host: {\n class: 'cax-inputtextarea cax-inputtext cax-component cax-element',\n '[class.cax-filled]': 'filled',\n '[class.cax-inputtextarea-resizable]': 'autoResize',\n '[class.cax-variant-filled]': 'variant === \"filled\" || config.inputStyle() === \"filled\"'\n }\n})\nexport class InputTextareadirective implements OnInit, AfterViewInit, OnDestroy {\n /**\n * When present, textarea size changes as being typed.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoResize: boolean | undefined;\n /**\n * Specifies the input variant of the component.\n * @group Props\n */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n /**\n * Callback to invoke on textarea resize.\n * @param {(Event | {})} event - Custom resize event.\n * @group Emits\n */\n @Output() onResize: EventEmitter<Event | {}> = new EventEmitter<Event | {}>();\n\n filled: boolean | undefined;\n\n cachedScrollHeight: number | undefined;\n\n ngModelSubscription: Subscription | undefined;\n\n ngControlSubscription: Subscription | undefined;\n\n constructor(\n public el: ElementRef,\n @Optional() public ngModel: NgModel,\n @Optional() public control: NgControl,\n private cd: ChangeDetectorRef,\n public config: caxConfig\n ) {}\n\n ngOnInit() {\n if (this.ngModel) {\n this.ngModelSubscription = (this.ngModel as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n\n if (this.control) {\n this.ngControlSubscription = (this.control as any).valueChanges.subscribe(() => {\n this.updateState();\n });\n }\n }\n\n ngAfterViewInit() {\n if (this.autoResize) this.resize();\n\n this.updateFilledState();\n this.cd.detectChanges();\n }\n\n @HostListener('input', ['$event'])\n onInput(e: Event) {\n this.updateState();\n }\n\n updateFilledState() {\n this.filled = this.el.nativeElement.value && this.el.nativeElement.value.length;\n }\n\n resize(event?: Event) {\n this.el.nativeElement.style.height = 'auto';\n this.el.nativeElement.style.height = this.el.nativeElement.scrollHeight + 'px';\n\n if (parseFloat(this.el.nativeElement.style.height) >= parseFloat(this.el.nativeElement.style.maxHeight)) {\n this.el.nativeElement.style.overflowY = 'scroll';\n this.el.nativeElement.style.height = this.el.nativeElement.style.maxHeight;\n } else {\n this.el.nativeElement.style.overflow = 'hidden';\n }\n\n this.onResize.emit(event || {});\n }\n\n updateState() {\n this.updateFilledState();\n\n if (this.autoResize) {\n this.resize();\n }\n }\n\n ngOnDestroy() {\n if (this.ngModelSubscription) {\n this.ngModelSubscription.unsubscribe();\n }\n\n if (this.ngControlSubscription) {\n this.ngControlSubscription.unsubscribe();\n }\n }\n}\n","import { Component, Input, Output, EventEmitter, ViewChild, ElementRef, AfterViewInit, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'cax-inputtextarea',\n templateUrl: './inputtextarea.html',\n styleUrls: ['./inputtextarea.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputTextareaComponent),\n multi: true\n }\n ]\n})\nexport class InputTextareaComponent implements AfterViewInit {\n /** Label for the textarea */\n @Input() label: string = '';\n\n /** Unique ID for the textarea */\n @Input() textareaId: string = `textarea-${Math.random().toString(36).substr(2, 9)}`;\n\n /** Number of rows for the textarea */\n @Input() rows: number = 5;\n\n /** Number of columns for the textarea */\n @Input() cols: number = 50;\n\n /** Placeholder text for the textarea */\n @Input() placeholder: string = '';\n\n /** Maximum number of characters allowed */\n @Input() maxlength: number | null = null;\n\n /** Minimum number of characters required */\n @Input() minlength: number | null = null;\n\n /** Whether the textarea is disabled */\n @Input() disabled: boolean = false;\n\n /** Whether the textarea is read-only */\n @Input() readonly: boolean = false;\n\n /** Whether to enable the auto-resize feature */\n @Input() autoResize: boolean = false;\n\n /** Variant of the textarea: 'filled' or 'outlined' */\n @Input() variant: 'filled' | 'outlined' = 'outlined';\n\n /** Whether to show the character counter */\n @Input() charCounter: boolean = false;\n\n /** Value of the textarea */\n @Input() value: string = '';\n\n /** Text to display when the input is valid */\n @Input() successText?: string;\n\n /** Text to display when the input is invalid */\n @Input() errorText?: string;\n\n /** Whether the input is in an invalid state */\n @Input() invalid: boolean = false;\n\n /** Event emitted when the textarea is resized */\n @Output() onResize: EventEmitter<Event | {}> = new EventEmitter<Event | {}>();\n\n /** Reference to the textarea element */\n @ViewChild('textarea') el!: ElementRef;\n\n @Input() style?: { [key: string]: string };\n\n /** Event handler for resize events */\n onResizeHandler(event: Event) {\n this.onResize.emit(event);\n if (this.autoResize) {\n this.resize();\n }\n }\n\n ngAfterViewInit() {\n if (this.autoResize) {\n this.resize();\n }\n }\n\n @Output() valueChange: EventEmitter<string> = new EventEmitter<string>();\n\n // Changed from private to public to allow access from template\n onChange: (value: string) => void = () => {};\n onTouched: () => void = () => {};\n\n writeValue(value: string): void {\n this.value = value || '';\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n onInput(event: Event): void {\n const input = event.target as HTMLInputElement;\n this.value = input.value;\n this.valueChange.emit(this.value);\n this.onChange(this.value);\n\n // Also handle resize if autoResize is enabled\n if (this.autoResize) {\n this.resize(event);\n }\n }\n\n resize(event?: Event) {\n this.el.nativeElement.style.height = 'auto';\n this.el.nativeElement.style.height = this.el.nativeElement.scrollHeight + 'px';\n\n if (parseFloat(this.el.nativeElement.style.height) >= parseFloat(this.el.nativeElement.style.maxHeight)) {\n this.el.nativeElement.style.overflowY = 'scroll';\n this.el.nativeElement.style.height = this.el.nativeElement.style.maxHeight;\n } else {\n this.el.nativeElement.style.overflow = 'hidden';\n }\n\n this.onResize.emit(event || {});\n }\n}\n","<div class=\"cax-input-container\">\n <label [attr.for]=\"textareaId\" class=\"cax-label\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ label }} </label>\n <textarea\n #textarea\n [rows]=\"rows\"\n [cols]=\"cols\"\n [placeholder]=\"placeholder\"\n [maxlength]=\"maxlength\"\n [minlength]=\"minlength\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly ? true : null\"\n [ngClass]=\"{\n 'filled-style': variant === 'filled',\n 'outlined-style': variant === 'outlined',\n 'cax-inputtextarea-disabled': disabled,\n 'disabled-opacity': disabled,\n 'cax-input-invalid': invalid\n }\"\n caxInputTextarea\n [autoResize]=\"autoResize\"\n (input)=\"onInput($event)\"\n [ngModel]=\"value\"\n (ngModelChange)=\"value = $event; valueChange.emit($event); onChange($event); onTouched()\"\n (blur)=\"onTouched()\"\n [ngStyle]=\"style\"\n ></textarea>\n\n <!-- Error Message with conditional opacity -->\n <small *ngIf=\"invalid\" id=\"helper-text\" class=\"cax-error\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ errorText }} </small>\n\n <!-- Helper Text with conditional opacity -->\n <small *ngIf=\"successText && !invalid\" id=\"helper-text\" class=\"cax-helper-text\" [ngClass]=\"{'disabled-opacity': disabled}\"> {{ successText }} </small>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { InputTextareadirective } from './inputtextarea.directive';\nimport { InputTextareaComponent } from './inputtextarea.component';\nimport { FormsModule } from '@angular/forms';\n\n@NgModule({\n imports: [CommonModule, FormsModule],\n exports: [InputTextareadirective, InputTextareaComponent],\n declarations: [InputTextareadirective, InputTextareaComponent]\n})\nexport class InputTextareaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1","i2","i3.InputTextareadirective"],"mappings":"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"}
|
|
@@ -25,13 +25,13 @@ class Logo {
|
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: Logo, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: Logo, isStandalone: true, selector: "cax-logo", inputs: { size: "size", width: "width", height: "height", iconOnly: "iconOnly", darkMode: "darkMode" }, host: { classAttribute: "cax-element" }, ngImport: i0, template: "<cax-image [src]=\"getImage()\" [size]=\"size\" [width]=\"width\" [height]=\"height\"></cax-image>\
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: Logo, isStandalone: true, selector: "cax-logo", inputs: { size: "size", width: "width", height: "height", iconOnly: "iconOnly", darkMode: "darkMode" }, host: { classAttribute: "cax-element" }, ngImport: i0, template: "<cax-image [src]=\"getImage()\" [size]=\"size\" [width]=\"width\" [height]=\"height\"></cax-image>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ImageModule }, { kind: "component", type: i1.Image, selector: "cax-image", inputs: ["imageClass", "imageStyle", "styleClass", "style", "src", "srcSet", "sizes", "size", "previewImageSrc", "previewImageSrcSet", "previewImageSizes", "alt", "width", "height", "loading", "appendTo", "preview", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide", "onImageError"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
29
29
|
}
|
|
30
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: Logo, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
32
|
args: [{ selector: 'cax-logo', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [ImageModule], standalone: true, host: {
|
|
33
33
|
class: 'cax-element'
|
|
34
|
-
}, template: "<cax-image [src]=\"getImage()\" [size]=\"size\" [width]=\"width\" [height]=\"height\"></cax-image>\
|
|
34
|
+
}, template: "<cax-image [src]=\"getImage()\" [size]=\"size\" [width]=\"width\" [height]=\"height\"></cax-image>\n" }]
|
|
35
35
|
}], propDecorators: { size: [{
|
|
36
36
|
type: Input
|
|
37
37
|
}], width: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cax-design-system-logo.mjs","sources":["../../src/app/components/logo/logo.ts","../../src/app/components/logo/logo.html","../../src/app/components/logo/logo.module.ts","../../src/app/components/logo/cax-design-system-logo.ts"],"sourcesContent":["import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input } from '@angular/core';\nimport { ImageModule } from 'cax-design-system/image';\n\n@Component({\n selector: 'cax-logo',\n templateUrl: './logo.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./logo.scss'],\n imports: [ImageModule],\n standalone: true,\n host: {\n class: 'cax-element'\n }\n})\nexport class Logo {\n @Input() size: 'sm' | 'md' | 'lg' | 'xl' | undefined;\n @Input() width: string | undefined;\n @Input() height: string | undefined;\n @Input() iconOnly: boolean = false;\n @Input() darkMode: boolean = false;\n\n getImage() {\n const key = `${this.iconOnly}-${this.darkMode}`;\n switch (key) {\n case 'true-true':\n return 'assets/logo/dataX-icon-dark.svg';\n case 'true-false':\n return 'assets/logo/dataX-icon.svg';\n case 'false-true':\n return 'assets/logo/dataX-dark.svg';\n case 'false-false':\n return 'assets/logo/dataX.svg';\n default:\n return 'assets/logo/dataX.svg';\n }\n }\n}\n","<cax-image [src]=\"getImage()\" [size]=\"size\" [width]=\"width\" [height]=\"height\"></cax-image>\
|
|
1
|
+
{"version":3,"file":"cax-design-system-logo.mjs","sources":["../../src/app/components/logo/logo.ts","../../src/app/components/logo/logo.html","../../src/app/components/logo/logo.module.ts","../../src/app/components/logo/cax-design-system-logo.ts"],"sourcesContent":["import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input } from '@angular/core';\nimport { ImageModule } from 'cax-design-system/image';\n\n@Component({\n selector: 'cax-logo',\n templateUrl: './logo.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./logo.scss'],\n imports: [ImageModule],\n standalone: true,\n host: {\n class: 'cax-element'\n }\n})\nexport class Logo {\n @Input() size: 'sm' | 'md' | 'lg' | 'xl' | undefined;\n @Input() width: string | undefined;\n @Input() height: string | undefined;\n @Input() iconOnly: boolean = false;\n @Input() darkMode: boolean = false;\n\n getImage() {\n const key = `${this.iconOnly}-${this.darkMode}`;\n switch (key) {\n case 'true-true':\n return 'assets/logo/dataX-icon-dark.svg';\n case 'true-false':\n return 'assets/logo/dataX-icon.svg';\n case 'false-true':\n return 'assets/logo/dataX-dark.svg';\n case 'false-false':\n return 'assets/logo/dataX.svg';\n default:\n return 'assets/logo/dataX.svg';\n }\n }\n}\n","<cax-image [src]=\"getImage()\" [size]=\"size\" [width]=\"width\" [height]=\"height\"></cax-image>\n","import { NgModule } from '@angular/core';\nimport { Logo } from './logo';\n\n@NgModule({\n imports: [Logo],\n exports: [Logo]\n})\nexport class LogoModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -51,13 +51,13 @@ class MenuItemContent {
|
|
|
51
51
|
this.onMenuItemClick.emit({ originalEvent: event, item });
|
|
52
52
|
}
|
|
53
53
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: MenuItemContent, deps: [{ token: forwardRef(() => Menu) }], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: MenuItemContent, selector: "[caxMenuItemContent]", inputs: { item: ["caxMenuItemContent", "item"], itemTemplate: "itemTemplate" }, outputs: { onMenuItemClick: "onMenuItemClick" }, host: { classAttribute: "cax-element" }, ngImport: i0, template: "<div [attr.data-pc-section]=\"'content'\" class=\"cax-menuitem-content\" (click)=\"onItemClick($event, item)\">\
|
|
54
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: MenuItemContent, selector: "[caxMenuItemContent]", inputs: { item: ["caxMenuItemContent", "item"], itemTemplate: "itemTemplate" }, outputs: { onMenuItemClick: "onMenuItemClick" }, host: { classAttribute: "cax-element" }, ngImport: i0, template: "<div [attr.data-pc-section]=\"'content'\" class=\"cax-menuitem-content\" (click)=\"onItemClick($event, item)\">\n <ng-container *ngIf=\"!itemTemplate\">\n <a\n *ngIf=\"!item?.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.url || null\"\n [attr.data-automationid]=\"item.automationId\"\n [attr.tabindex]=\"-1\"\n [attr.data-pc-section]=\"'action'\"\n class=\"cax-menuitem-link\"\n [target]=\"item.target\"\n [ngClass]=\"{ 'cax-disabled': item.disabled }\"\n pRipple\n >\n <ng-container *ngTemplateOutlet=\"itemContent; context: { $implicit: item }\"></ng-container>\n </a>\n <a\n *ngIf=\"item?.routerLink\"\n [routerLink]=\"item.routerLink\"\n [attr.data-automationid]=\"item.automationId\"\n [attr.tabindex]=\"-1\"\n [attr.data-pc-section]=\"'action'\"\n [attr.title]=\"item.title\"\n [queryParams]=\"item.queryParams\"\n routerLinkActive=\"cax-menuitem-link-active\"\n [routerLinkActiveOptions]=\"item.routerLinkActiveOptions || { exact: false }\"\n class=\"cax-menuitem-link\"\n [target]=\"item.target\"\n [ngClass]=\"{ 'cax-disabled': item.disabled }\"\n [fragment]=\"item.fragment\"\n [queryParamsHandling]=\"item.queryParamsHandling\"\n [preserveFragment]=\"item.preserveFragment\"\n [skipLocationChange]=\"item.skipLocationChange\"\n [replaceUrl]=\"item.replaceUrl\"\n [state]=\"item.state\"\n pRipple\n >\n <ng-container *ngTemplateOutlet=\"itemContent; context: { $implicit: item }\"></ng-container>\n </a>\n </ng-container>\n\n <ng-container *ngIf=\"itemTemplate\">\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-template>\n </ng-container>\n\n <ng-template #itemContent>\n <span class=\"cax-menuitem-icon\" *ngIf=\"item.icon\" [ngClass]=\"item.icon\" [class]=\"item.iconClass\" [ngStyle]=\"item.iconStyle\"></span>\n <span class=\"cax-menuitem-text\" *ngIf=\"item.escape !== false; else htmlLabel\">{{ item.label }}</span>\n <ng-template #htmlLabel><span class=\"cax-menuitem-text\" [innerHTML]=\"item.label | safeHtml\"></span></ng-template>\n <span class=\"cax-menuitem-badge\" *ngIf=\"item.badge\" [ngClass]=\"item.badgeStyleClass\">{{ item.badge }}</span>\n </ng-template>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }], encapsulation: i0.ViewEncapsulation.None });
|
|
55
55
|
}
|
|
56
56
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: MenuItemContent, decorators: [{
|
|
57
57
|
type: Component,
|
|
58
58
|
args: [{ selector: '[caxMenuItemContent]', encapsulation: ViewEncapsulation.None, host: {
|
|
59
59
|
class: 'cax-element'
|
|
60
|
-
}, template: "<div [attr.data-pc-section]=\"'content'\" class=\"cax-menuitem-content\" (click)=\"onItemClick($event, item)\">\
|
|
60
|
+
}, template: "<div [attr.data-pc-section]=\"'content'\" class=\"cax-menuitem-content\" (click)=\"onItemClick($event, item)\">\n <ng-container *ngIf=\"!itemTemplate\">\n <a\n *ngIf=\"!item?.routerLink\"\n [attr.title]=\"item.title\"\n [attr.href]=\"item.url || null\"\n [attr.data-automationid]=\"item.automationId\"\n [attr.tabindex]=\"-1\"\n [attr.data-pc-section]=\"'action'\"\n class=\"cax-menuitem-link\"\n [target]=\"item.target\"\n [ngClass]=\"{ 'cax-disabled': item.disabled }\"\n pRipple\n >\n <ng-container *ngTemplateOutlet=\"itemContent; context: { $implicit: item }\"></ng-container>\n </a>\n <a\n *ngIf=\"item?.routerLink\"\n [routerLink]=\"item.routerLink\"\n [attr.data-automationid]=\"item.automationId\"\n [attr.tabindex]=\"-1\"\n [attr.data-pc-section]=\"'action'\"\n [attr.title]=\"item.title\"\n [queryParams]=\"item.queryParams\"\n routerLinkActive=\"cax-menuitem-link-active\"\n [routerLinkActiveOptions]=\"item.routerLinkActiveOptions || { exact: false }\"\n class=\"cax-menuitem-link\"\n [target]=\"item.target\"\n [ngClass]=\"{ 'cax-disabled': item.disabled }\"\n [fragment]=\"item.fragment\"\n [queryParamsHandling]=\"item.queryParamsHandling\"\n [preserveFragment]=\"item.preserveFragment\"\n [skipLocationChange]=\"item.skipLocationChange\"\n [replaceUrl]=\"item.replaceUrl\"\n [state]=\"item.state\"\n pRipple\n >\n <ng-container *ngTemplateOutlet=\"itemContent; context: { $implicit: item }\"></ng-container>\n </a>\n </ng-container>\n\n <ng-container *ngIf=\"itemTemplate\">\n <ng-template *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-template>\n </ng-container>\n\n <ng-template #itemContent>\n <span class=\"cax-menuitem-icon\" *ngIf=\"item.icon\" [ngClass]=\"item.icon\" [class]=\"item.iconClass\" [ngStyle]=\"item.iconStyle\"></span>\n <span class=\"cax-menuitem-text\" *ngIf=\"item.escape !== false; else htmlLabel\">{{ item.label }}</span>\n <ng-template #htmlLabel><span class=\"cax-menuitem-text\" [innerHTML]=\"item.label | safeHtml\"></span></ng-template>\n <span class=\"cax-menuitem-badge\" *ngIf=\"item.badge\" [ngClass]=\"item.badgeStyleClass\">{{ item.badge }}</span>\n </ng-template>\n</div>\n" }]
|
|
61
61
|
}], ctorParameters: () => [{ type: Menu, decorators: [{
|
|
62
62
|
type: Inject,
|
|
63
63
|
args: [forwardRef(() => Menu)]
|
|
@@ -566,13 +566,13 @@ class Menu {
|
|
|
566
566
|
return item.visible === false;
|
|
567
567
|
}
|
|
568
568
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: Menu, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i4.caxConfig }, { token: i4.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
|
|
569
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: Menu, selector: "cax-menu", inputs: { model: "model", popup: ["popup", "popup", booleanAttribute], style: "style", styleClass: "styleClass", appendTo: "appendTo", autoZIndex: ["autoZIndex", "autoZIndex", booleanAttribute], baseZIndex: ["baseZIndex", "baseZIndex", numberAttribute], showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", id: "id", tabindex: ["tabindex", "tabindex", numberAttribute] }, outputs: { onShow: "onShow", onHide: "onHide", onBlur: "onBlur", onFocus: "onFocus" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], viewQueries: [{ propertyName: "listViewChild", first: true, predicate: ["list"], descendants: true }, { propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\
|
|
569
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.9", type: Menu, selector: "cax-menu", inputs: { model: "model", popup: ["popup", "popup", booleanAttribute], style: "style", styleClass: "styleClass", appendTo: "appendTo", autoZIndex: ["autoZIndex", "autoZIndex", booleanAttribute], baseZIndex: ["baseZIndex", "baseZIndex", numberAttribute], showTransitionOptions: "showTransitionOptions", hideTransitionOptions: "hideTransitionOptions", ariaLabel: "ariaLabel", ariaLabelledBy: "ariaLabelledBy", id: "id", tabindex: ["tabindex", "tabindex", numberAttribute] }, outputs: { onShow: "onShow", onHide: "onHide", onBlur: "onBlur", onFocus: "onFocus" }, host: { classAttribute: "cax-element" }, queries: [{ propertyName: "templates", predicate: CaxTemplate }], viewQueries: [{ propertyName: "listViewChild", first: true, predicate: ["list"], descendants: true }, { propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\n #container\n [ngClass]=\"{ 'cax-menu cax-component': true, 'cax-menu-overlay': popup }\"\n [class]=\"styleClass\"\n [ngStyle]=\"style\"\n *ngIf=\"!popup || visible\"\n (click)=\"onOverlayClick($event)\"\n [@overlayAnimation]=\"{ value: 'visible', params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\n [@.disabled]=\"popup !== true\"\n (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\"\n (@overlayAnimation.done)=\"onOverlayAnimationEnd($event)\"\n [attr.data-pc-name]=\"'menu'\"\n [attr.id]=\"id\"\n>\n <div *ngIf=\"startTemplate\" class=\"cax-menu-start\" [attr.data-pc-section]=\"'start'\">\n <ng-container *ngTemplateOutlet=\"startTemplate\"></ng-container>\n </div>\n <ul\n #list\n class=\"cax-menu-list cax-reset\"\n role=\"menu\"\n [attr.id]=\"id + '_list'\"\n [attr.tabindex]=\"getTabIndexValue()\"\n [attr.data-pc-section]=\"'menu'\"\n [attr.aria-activedescendant]=\"activedescendant()\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledBy]=\"ariaLabelledBy\"\n (focus)=\"onListFocus($event)\"\n (blur)=\"onListBlur($event)\"\n (keydown)=\"onListKeyDown($event)\"\n >\n <ng-template ngFor let-submenu let-i=\"index\" [ngForOf]=\"model\" *ngIf=\"hasSubMenu()\">\n <li class=\"cax-menuitem-separator\" *ngIf=\"submenu.separator\" [ngClass]=\"{ 'cax-hidden': submenu.visible === false }\" role=\"separator\"></li>\n <li\n class=\"cax-submenu-header\"\n [attr.data-automationid]=\"submenu.automationId\"\n *ngIf=\"!submenu.separator && submenu.label\"\n [ngClass]=\"{ 'cax-hidden': submenu.visible === false, flex: submenu.visible }\"\n caxTooltip\n [tooltipOptions]=\"submenu.tooltipOptions\"\n role=\"none\"\n [attr.id]=\"menuitemId(submenu, id, i)\"\n >\n <span *ngIf=\"submenu.label\">\n <ng-container *ngIf=\"!submenuHeaderTemplate\">\n <span *ngIf=\"submenu.escape !== false; else htmlSubmenuLabel\">{{ submenu.label }}</span>\n <ng-template #htmlSubmenuLabel><span [innerHTML]=\"submenu.label | safeHtml\"></span></ng-template>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"submenuHeaderTemplate; context: { $implicit: submenu }\"></ng-container>\n </span>\n </li>\n <ng-template ngFor let-item let-j=\"index\" [ngForOf]=\"submenu.items\">\n <li class=\"cax-menuitem-separator\" *ngIf=\"item.separator\" [ngClass]=\"{ 'cax-hidden': item.visible === false || submenu.visible === false }\" role=\"separator\"></li>\n <li\n class=\"cax-menuitem\"\n *ngIf=\"!item.separator && item.label\"\n [caxMenuItemContent]=\"item\"\n [itemTemplate]=\"itemTemplate\"\n [ngClass]=\"{ 'cax-hidden': item.visible === false || submenu.visible === false, 'cax-focus': focusedOptionId() && menuitemId(item, id, i, j) === focusedOptionId(), 'cax-disabled': disabled(item.disabled) }\"\n [ngStyle]=\"item.style\"\n [class]=\"item.styleClass\"\n (onMenuItemClick)=\"itemClick($event, menuitemId(item, id, i, j))\"\n caxTooltip\n [tooltipOptions]=\"item.tooltipOptions\"\n role=\"menuitem\"\n [attr.data-pc-section]=\"'menuitem'\"\n [attr.aria-label]=\"label(item.label)\"\n [attr.data-cax-focused]=\"isItemFocused(menuitemId(item, id, i, j))\"\n [attr.data-cax-disabled]=\"disabled(item.disabled)\"\n [attr.aria-disabled]=\"disabled(item.disabled)\"\n [attr.id]=\"menuitemId(item, id, i, j)\"\n ></li>\n </ng-template>\n </ng-template>\n <ng-template ngFor let-item let-i=\"index\" [ngForOf]=\"model\" *ngIf=\"!hasSubMenu()\">\n <li class=\"cax-menuitem-separator\" *ngIf=\"item.separator\" [ngClass]=\"{ 'cax-hidden': item.visible === false }\" role=\"separator\"></li>\n <li\n class=\"cax-menuitem\"\n *ngIf=\"!item.separator && item.label\"\n [caxMenuItemContent]=\"item\"\n [itemTemplate]=\"itemTemplate\"\n [ngClass]=\"{ 'cax-hidden': item.visible === false, 'cax-focus': focusedOptionId() && menuitemId(item, id, i, j) === focusedOptionId(), 'cax-disabled': disabled(item.disabled) }\"\n [ngStyle]=\"item.style\"\n [class]=\"item.styleClass\"\n (onMenuItemClick)=\"itemClick($event, menuitemId(item, id, i))\"\n caxTooltip\n [tooltipOptions]=\"item.tooltipOptions\"\n role=\"menuitem\"\n [attr.data-pc-section]=\"'menuitem'\"\n [attr.aria-label]=\"label(item.label)\"\n [attr.data-cax-focused]=\"isItemFocused(menuitemId(item, id, i))\"\n [attr.data-cax-disabled]=\"disabled(item.disabled)\"\n [attr.aria-disabled]=\"disabled(item.disabled)\"\n [attr.id]=\"menuitemId(item, id, i)\"\n ></li>\n </ng-template>\n </ul>\n <div *ngIf=\"endTemplate\" class=\"cax-menu-end\" [attr.data-pc-section]=\"'end'\">\n <ng-container *ngTemplateOutlet=\"endTemplate\"></ng-container>\n </div>\n</div>\n", styles: ["@layer cax{.cax-menu-overlay{position:absolute;top:0;left:0}.cax-menu ul{margin:0;padding:0;list-style:none}.cax-menu .cax-submenu-header{align-items:center}.cax-menu .cax-menuitem-link{cursor:pointer;display:flex;align-items:center;text-decoration:none;overflow:hidden;position:relative}.cax-menu .cax-menuitem-text{line-height:1}}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i5.Tooltip, selector: "[caxTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "caxTooltip", "tooltipDisabled", "tooltipOptions", "linkUrl", "linkText"] }, { kind: "component", type: MenuItemContent, selector: "[caxMenuItemContent]", inputs: ["caxMenuItemContent", "itemTemplate"], outputs: ["onMenuItemClick"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }], animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
570
570
|
}
|
|
571
571
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: Menu, decorators: [{
|
|
572
572
|
type: Component,
|
|
573
573
|
args: [{ selector: 'cax-menu', animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
574
574
|
class: 'cax-element'
|
|
575
|
-
}, template: "<div\
|
|
575
|
+
}, template: "<div\n #container\n [ngClass]=\"{ 'cax-menu cax-component': true, 'cax-menu-overlay': popup }\"\n [class]=\"styleClass\"\n [ngStyle]=\"style\"\n *ngIf=\"!popup || visible\"\n (click)=\"onOverlayClick($event)\"\n [@overlayAnimation]=\"{ value: 'visible', params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\n [@.disabled]=\"popup !== true\"\n (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\"\n (@overlayAnimation.done)=\"onOverlayAnimationEnd($event)\"\n [attr.data-pc-name]=\"'menu'\"\n [attr.id]=\"id\"\n>\n <div *ngIf=\"startTemplate\" class=\"cax-menu-start\" [attr.data-pc-section]=\"'start'\">\n <ng-container *ngTemplateOutlet=\"startTemplate\"></ng-container>\n </div>\n <ul\n #list\n class=\"cax-menu-list cax-reset\"\n role=\"menu\"\n [attr.id]=\"id + '_list'\"\n [attr.tabindex]=\"getTabIndexValue()\"\n [attr.data-pc-section]=\"'menu'\"\n [attr.aria-activedescendant]=\"activedescendant()\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledBy]=\"ariaLabelledBy\"\n (focus)=\"onListFocus($event)\"\n (blur)=\"onListBlur($event)\"\n (keydown)=\"onListKeyDown($event)\"\n >\n <ng-template ngFor let-submenu let-i=\"index\" [ngForOf]=\"model\" *ngIf=\"hasSubMenu()\">\n <li class=\"cax-menuitem-separator\" *ngIf=\"submenu.separator\" [ngClass]=\"{ 'cax-hidden': submenu.visible === false }\" role=\"separator\"></li>\n <li\n class=\"cax-submenu-header\"\n [attr.data-automationid]=\"submenu.automationId\"\n *ngIf=\"!submenu.separator && submenu.label\"\n [ngClass]=\"{ 'cax-hidden': submenu.visible === false, flex: submenu.visible }\"\n caxTooltip\n [tooltipOptions]=\"submenu.tooltipOptions\"\n role=\"none\"\n [attr.id]=\"menuitemId(submenu, id, i)\"\n >\n <span *ngIf=\"submenu.label\">\n <ng-container *ngIf=\"!submenuHeaderTemplate\">\n <span *ngIf=\"submenu.escape !== false; else htmlSubmenuLabel\">{{ submenu.label }}</span>\n <ng-template #htmlSubmenuLabel><span [innerHTML]=\"submenu.label | safeHtml\"></span></ng-template>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"submenuHeaderTemplate; context: { $implicit: submenu }\"></ng-container>\n </span>\n </li>\n <ng-template ngFor let-item let-j=\"index\" [ngForOf]=\"submenu.items\">\n <li class=\"cax-menuitem-separator\" *ngIf=\"item.separator\" [ngClass]=\"{ 'cax-hidden': item.visible === false || submenu.visible === false }\" role=\"separator\"></li>\n <li\n class=\"cax-menuitem\"\n *ngIf=\"!item.separator && item.label\"\n [caxMenuItemContent]=\"item\"\n [itemTemplate]=\"itemTemplate\"\n [ngClass]=\"{ 'cax-hidden': item.visible === false || submenu.visible === false, 'cax-focus': focusedOptionId() && menuitemId(item, id, i, j) === focusedOptionId(), 'cax-disabled': disabled(item.disabled) }\"\n [ngStyle]=\"item.style\"\n [class]=\"item.styleClass\"\n (onMenuItemClick)=\"itemClick($event, menuitemId(item, id, i, j))\"\n caxTooltip\n [tooltipOptions]=\"item.tooltipOptions\"\n role=\"menuitem\"\n [attr.data-pc-section]=\"'menuitem'\"\n [attr.aria-label]=\"label(item.label)\"\n [attr.data-cax-focused]=\"isItemFocused(menuitemId(item, id, i, j))\"\n [attr.data-cax-disabled]=\"disabled(item.disabled)\"\n [attr.aria-disabled]=\"disabled(item.disabled)\"\n [attr.id]=\"menuitemId(item, id, i, j)\"\n ></li>\n </ng-template>\n </ng-template>\n <ng-template ngFor let-item let-i=\"index\" [ngForOf]=\"model\" *ngIf=\"!hasSubMenu()\">\n <li class=\"cax-menuitem-separator\" *ngIf=\"item.separator\" [ngClass]=\"{ 'cax-hidden': item.visible === false }\" role=\"separator\"></li>\n <li\n class=\"cax-menuitem\"\n *ngIf=\"!item.separator && item.label\"\n [caxMenuItemContent]=\"item\"\n [itemTemplate]=\"itemTemplate\"\n [ngClass]=\"{ 'cax-hidden': item.visible === false, 'cax-focus': focusedOptionId() && menuitemId(item, id, i, j) === focusedOptionId(), 'cax-disabled': disabled(item.disabled) }\"\n [ngStyle]=\"item.style\"\n [class]=\"item.styleClass\"\n (onMenuItemClick)=\"itemClick($event, menuitemId(item, id, i))\"\n caxTooltip\n [tooltipOptions]=\"item.tooltipOptions\"\n role=\"menuitem\"\n [attr.data-pc-section]=\"'menuitem'\"\n [attr.aria-label]=\"label(item.label)\"\n [attr.data-cax-focused]=\"isItemFocused(menuitemId(item, id, i))\"\n [attr.data-cax-disabled]=\"disabled(item.disabled)\"\n [attr.aria-disabled]=\"disabled(item.disabled)\"\n [attr.id]=\"menuitemId(item, id, i)\"\n ></li>\n </ng-template>\n </ul>\n <div *ngIf=\"endTemplate\" class=\"cax-menu-end\" [attr.data-pc-section]=\"'end'\">\n <ng-container *ngTemplateOutlet=\"endTemplate\"></ng-container>\n </div>\n</div>\n", styles: ["@layer cax{.cax-menu-overlay{position:absolute;top:0;left:0}.cax-menu ul{margin:0;padding:0;list-style:none}.cax-menu .cax-submenu-header{align-items:center}.cax-menu .cax-menuitem-link{cursor:pointer;display:flex;align-items:center;text-decoration:none;overflow:hidden;position:relative}.cax-menu .cax-menuitem-text{line-height:1}}\n"] }]
|
|
576
576
|
}], ctorParameters: () => [{ type: Document, decorators: [{
|
|
577
577
|
type: Inject,
|
|
578
578
|
args: [DOCUMENT]
|