@clr/angular
Version:
Angular components for Clarity
1 lines • 15.6 kB
Source Map (JSON)
{"version":3,"file":"clr-angular-forms-datalist.mjs","sources":["../../../projects/angular/forms/datalist/providers/datalist-id.service.ts","../../../projects/angular/forms/datalist/datalist.ts","../../../projects/angular/forms/datalist/datalist-container.ts","../../../projects/angular/forms/datalist/datalist-input.ts","../../../projects/angular/forms/datalist/datalist.module.ts","../../../projects/angular/forms/datalist/index.ts","../../../projects/angular/forms/datalist/clr-angular-forms-datalist.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\n\nlet counter = 0;\n\n@Injectable()\nexport class DatalistIdService {\n private _id = 'clr-datalist-' + ++counter;\n private _idChange = new BehaviorSubject(this._id);\n\n get id(): string {\n return this._id;\n }\n set id(value: string) {\n this._id = value;\n this._idChange.next(value);\n }\n\n get idChange(): Observable<string> {\n return this._idChange.asObservable();\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { AfterContentInit, Directive, Input, Optional } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { DatalistIdService } from './providers/datalist-id.service';\n\n@Directive({\n selector: 'datalist',\n host: {\n '[id]': 'datalistId',\n },\n standalone: false,\n})\nexport class ClrDatalist implements AfterContentInit {\n datalistId: string;\n\n private subscriptions: Subscription[] = [];\n\n constructor(@Optional() private datalistIdService: DatalistIdService) {}\n\n @Input()\n set id(idValue: string) {\n if (!!idValue && this.datalistIdService) {\n this.datalistId = idValue;\n this.datalistIdService.id = idValue;\n } else if (idValue) {\n this.datalistId = idValue;\n }\n }\n\n ngAfterContentInit() {\n if (!this.datalistIdService) {\n return;\n }\n this.subscriptions.push(this.datalistIdService.idChange.subscribe(id => (this.datalistId = id)));\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(sub => sub.unsubscribe());\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Component, Optional } from '@angular/core';\nimport {\n ClrAbstractContainer,\n ControlClassService,\n ControlIdService,\n FormsFocusService,\n LayoutService,\n NgControlService,\n} from '@clr/angular/forms/common';\n\nimport { DatalistIdService } from './providers/datalist-id.service';\n\n@Component({\n selector: 'clr-datalist-container',\n template: `\n <ng-content select=\"label\"></ng-content>\n @if (!label && addGrid()) {\n <label></label>\n }\n <div class=\"clr-control-container\" [ngClass]=\"controlClass()\">\n <div class=\"clr-input-wrapper\">\n <div class=\"clr-input-group\" [class.clr-focus]=\"focus\" #datalist>\n <ng-content select=\"[clrDatalistInput]\"></ng-content>\n <ng-content select=\"datalist\"></ng-content>\n <cds-icon shape=\"angle\" class=\"clr-datalist-caret\" direction=\"down\" (click)=\"showPicker(datalist)\"></cds-icon>\n </div>\n </div>\n @if (showHelper) {\n <ng-content select=\"clr-control-helper\"></ng-content>\n }\n @if (showInvalid) {\n <ng-content select=\"clr-control-error\"></ng-content>\n }\n @if (showValid) {\n <ng-content select=\"clr-control-success\"></ng-content>\n }\n </div>\n `,\n host: {\n '[class.clr-form-control]': 'true',\n '[class.clr-form-control-disabled]': 'control?.disabled',\n '[class.clr-row]': 'addGrid()',\n },\n providers: [ControlClassService, ControlIdService, FormsFocusService, NgControlService, DatalistIdService],\n standalone: false,\n})\nexport class ClrDatalistContainer extends ClrAbstractContainer {\n focus = false;\n\n constructor(\n controlClassService: ControlClassService,\n @Optional() layoutService: LayoutService,\n ngControlService: NgControlService,\n focusService: FormsFocusService\n ) {\n super(layoutService, controlClassService, ngControlService);\n\n this.subscriptions.push(focusService.focusChange.subscribe(state => (this.focus = state)));\n }\n\n showPicker(datalist: HTMLElement) {\n const datalistInput = datalist.querySelector('input[clrDatalistInput]') as HTMLInputElement;\n if (datalistInput) {\n datalistInput.focus();\n datalistInput.showPicker();\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n AfterContentInit,\n Directive,\n ElementRef,\n HostListener,\n Injector,\n Optional,\n Renderer2,\n Self,\n ViewContainerRef,\n} from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport { FormsFocusService, WrappedFormControl } from '@clr/angular/forms/common';\n\nimport { ClrDatalistContainer } from './datalist-container';\nimport { DatalistIdService } from './providers/datalist-id.service';\n\n@Directive({\n selector: '[clrDatalistInput]',\n host: {\n '[class.clr-input]': 'true',\n '[attr.list]': 'listValue',\n },\n standalone: false,\n})\nexport class ClrDatalistInput extends WrappedFormControl<ClrDatalistContainer> implements AfterContentInit {\n listValue: string;\n\n constructor(\n @Optional() private focusService: FormsFocusService,\n vcr: ViewContainerRef,\n injector: Injector,\n @Self()\n @Optional()\n control: NgControl,\n renderer: Renderer2,\n el: ElementRef<HTMLInputElement>,\n private datalistIdService: DatalistIdService\n ) {\n super(vcr, ClrDatalistContainer, injector, control, renderer, el);\n\n if (!focusService) {\n throw new Error('clrDatalist requires being wrapped in <clr-datalist-container>');\n }\n }\n\n ngAfterContentInit() {\n // Subscriptions is inherited from WrappedFormControl, unsubscribe is handled there\n this.subscriptions.push(this.datalistIdService.idChange.subscribe(id => (this.listValue = id)));\n }\n\n @HostListener('focus')\n triggerFocus() {\n if (this.focusService) {\n this.focusService.focused = true;\n }\n }\n\n override triggerValidation() {\n super.triggerValidation();\n if (this.focusService) {\n this.focusService.focused = false;\n }\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ClrInputModule } from '@clr/angular/forms/input';\nimport { ClarityIcons, ClrIcon, errorStandardIcon, successStandardIcon } from '@clr/angular/icon';\n\nimport { ClrDatalist } from './datalist';\nimport { ClrDatalistContainer } from './datalist-container';\nimport { ClrDatalistInput } from './datalist-input';\n\n@NgModule({\n imports: [CommonModule, ClrInputModule, ClrIcon],\n declarations: [ClrDatalist, ClrDatalistInput, ClrDatalistContainer],\n exports: [ClrDatalist, ClrDatalistInput, ClrDatalistContainer],\n})\nexport class ClrDatalistModule {\n constructor() {\n ClarityIcons.addIcons(successStandardIcon, errorStandardIcon);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './datalist';\nexport * from './datalist-input';\nexport * from './datalist-container';\nexport * from './datalist.module';\nexport * from './providers/datalist-id.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.DatalistIdService","i2","i3.DatalistIdService"],"mappings":"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"}