novo-elements 11.0.4 → 11.1.0-next.2
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/elements/button/styles/button-primary.scss +0 -1
- package/elements/calendar/month-view/month-view.component.scss +0 -1
- package/elements/chips/Chips.scss +0 -3
- package/elements/common/option/optgroup.component.scss +0 -2
- package/elements/data-table/data-table.component.d.ts +12 -2
- package/elements/data-table/data-table.component.scss +4 -14
- package/elements/data-table/data-table.module.d.ts +13 -12
- package/elements/data-table/interfaces.d.ts +1 -0
- package/elements/date-picker/DateRangeInput.scss +0 -1
- package/elements/drag-drop/drag-drop-box.d.ts +23 -3
- package/elements/field/field.scss +0 -1
- package/elements/form/extras/file/FileInput.scss +1 -1
- package/elements/layout/content/layout-content.component.d.ts +1 -2
- package/elements/non-ideal-state/NonIdealState.scss +0 -1
- package/elements/picker/extras/picker-results/PickerResults.scss +0 -3
- package/elements/switch/Switch.scss +0 -1
- package/elements/time-picker/TimePicker.scss +0 -2
- package/fesm2022/novo-elements-elements-agenda.mjs +0 -85
- package/fesm2022/novo-elements-elements-agenda.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-aside.mjs +0 -1
- package/fesm2022/novo-elements-elements-aside.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-autocomplete.mjs +0 -8
- package/fesm2022/novo-elements-elements-autocomplete.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-avatar.mjs +0 -2
- package/fesm2022/novo-elements-elements-avatar.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-checkbox.mjs +0 -1
- package/fesm2022/novo-elements-elements-checkbox.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-color-picker.mjs +0 -4
- package/fesm2022/novo-elements-elements-color-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-common.mjs +1 -23
- package/fesm2022/novo-elements-elements-common.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-data-table.mjs +70 -540
- package/fesm2022/novo-elements-elements-data-table.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-date-picker.mjs +1 -13
- package/fesm2022/novo-elements-elements-date-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-drag-drop.mjs +147 -27
- package/fesm2022/novo-elements-elements-drag-drop.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-dropdown.mjs +1 -10
- package/fesm2022/novo-elements-elements-dropdown.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-expansion.mjs +1 -5
- package/fesm2022/novo-elements-elements-expansion.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-field.mjs +1 -15
- package/fesm2022/novo-elements-elements-field.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-flex.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-form.mjs +2 -15
- package/fesm2022/novo-elements-elements-form.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-layout.mjs +1 -5
- package/fesm2022/novo-elements-elements-layout.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-menu.mjs +2 -35
- package/fesm2022/novo-elements-elements-menu.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-picker.mjs +1 -4
- package/fesm2022/novo-elements-elements-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-progress.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-radio.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-select-search.mjs +0 -14
- package/fesm2022/novo-elements-elements-select-search.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-select.mjs +0 -13
- package/fesm2022/novo-elements-elements-select.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-simple-table.mjs +0 -10
- package/fesm2022/novo-elements-elements-simple-table.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-time-picker.mjs +0 -38
- package/fesm2022/novo-elements-elements-time-picker.mjs.map +1 -1
- package/fesm2022/novo-elements-elements-value.mjs.map +1 -1
- package/fesm2022/novo-elements-services.mjs +0 -13
- package/fesm2022/novo-elements-services.mjs.map +1 -1
- package/fesm2022/novo-elements-utils.mjs +9 -13
- package/fesm2022/novo-elements-utils.mjs.map +1 -1
- package/package.json +1 -1
- package/services/data-provider/ArrayCollection.d.ts +0 -10
- package/services/data-provider/Collection.d.ts +0 -9
- package/styles/content/forms.scss +0 -40
- package/styles/content/links.scss +0 -1
- package/styles/content/misc.scss +0 -1
- package/utils/Helpers.d.ts +6 -2
- package/elements/field/toggle/picker-toggle.component.scss +0 -23
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"novo-elements-elements-autocomplete.mjs","sources":["../../../projects/novo-elements/src/elements/autocomplete/autocomplete.component.ts","../../../projects/novo-elements/src/elements/autocomplete/autocomplete.component.html","../../../projects/novo-elements/src/elements/autocomplete/autocomplete.module.ts","../../../projects/novo-elements/src/elements/autocomplete/novo-elements-elements-autocomplete.ts"],"sourcesContent":["import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { hasModifierKey } from '@angular/cdk/keycodes';\nimport {\n AfterContentInit,\n AfterViewInit,\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n SimpleChanges,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { fromEvent, interval, merge, of, Subscription } from 'rxjs';\nimport { debounce, take } from 'rxjs/operators';\nimport { BooleanInput, Key } from 'novo-elements/utils';\nimport type { NovoChipList } from 'novo-elements/elements/chips';\nimport {\n CanDisable,\n CanDisableCtor,\n HasOverlayCtor,\n mixinDisabled,\n mixinOverlay,\n NovoOptgroup,\n NovoOption,\n NovoOptionSelectionChange,\n NovoOverlayTemplateComponent,\n NOVO_OPTION_PARENT_COMPONENT,\n NOVO_OVERLAY_CONTAINER,\n} from 'novo-elements/elements/common';\nimport { NovoFieldControl, NovoFieldElement, NOVO_FORM_FIELD } from 'novo-elements/elements/field';\n\n/** Event object that is emitted when an autocomplete option is selected. */\nexport class NovoOptionSelectedEvent {\n constructor(\n /** Reference to the autocomplete panel that emitted the event. */\n public source: NovoAutocompleteElement,\n /** Option that was selected. */\n public option: NovoOption,\n ) {}\n}\n\n// Boilerplate for applying mixins\nclass NovoAutocompleteBase {\n constructor() {}\n}\nconst NovoAutocompleteMixins: HasOverlayCtor & CanDisableCtor & typeof NovoAutocompleteBase = mixinOverlay(\n mixinDisabled(NovoAutocompleteBase),\n);\n\n@Component({\n selector: 'novo-autocomplete',\n templateUrl: 'autocomplete.component.html',\n styleUrls: ['autocomplete.component.scss'],\n host: {\n class: 'novo-autocomplete',\n // Always set the tabindex to -1 so that it doesn't overlap with any custom tabindex the\n // consumer may have provided, while still being able to receive focus.\n '[attr.tabindex]': 'disabled ? null : -1',\n },\n providers: [\n { provide: NOVO_OPTION_PARENT_COMPONENT, useExisting: NovoAutocompleteElement },\n { provide: NOVO_OVERLAY_CONTAINER, useExisting: NovoAutocompleteElement }\n ],\n exportAs: 'novoAutocomplete',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class NovoAutocompleteElement\n extends NovoAutocompleteMixins\n implements CanDisable, AfterContentInit, AfterViewInit, OnChanges, OnDestroy\n{\n private _stateChanges = Subscription.EMPTY;\n private _activeOptionChanges = Subscription.EMPTY;\n private _selectedOptionChanges = Subscription.EMPTY;\n private _keyDownChanges = Subscription.EMPTY;\n\n /** Manages active item in option list based on key events. */\n private _keyManager: ActiveDescendantKeyManager<NovoOption>;\n\n /** Old value of the native input. Used to work around issues with the `input` event on IE. */\n private _previousValue: string | number | null;\n\n @ContentChildren(NovoOptgroup, { descendants: true }) optionGroups: QueryList<NovoOptgroup>;\n @ContentChildren(NovoOption, { descendants: true }) options: QueryList<NovoOption>;\n\n /** Event that is emitted whenever an option from the list is selected. */\n @Output() readonly optionSelected: EventEmitter<NovoOptionSelectedEvent> = new EventEmitter<NovoOptionSelectedEvent>();\n /** Emits whenever an option is activated using the keyboard. */\n @Output() readonly optionActivated: EventEmitter<NovoOptionSelectedEvent> = new EventEmitter<NovoOptionSelectedEvent>();\n\n /** Tabindex for the toggle. */\n @Input() tabIndex: number | null;\n\n /** Key to use to trigger autocomplete. used for textarea. */\n @Input() triggerOn: (control: NovoFieldControl<any>) => boolean = (control) => control.focused;\n\n /** Function that maps an option's control value to its display value in the trigger. */\n @Input() displayWith: ((value: any) => string) | null = null;\n\n /** Screenreader label for the button. */\n @Input('aria-label') ariaLabel: string;\n\n /** Whether the user should be allowed to select multiple options. */\n @Input()\n get multiple(): boolean {\n return this._multiple;\n }\n set multiple(value: boolean) {\n this._multiple = coerceBooleanProperty(value);\n }\n private _multiple: boolean = false;\n\n /** Whether the toggle button is disabled. */\n @Input()\n @BooleanInput()\n get disabled(): boolean {\n if (this._disabled === undefined && this._formField?._control) {\n return this._formField._control.disabled;\n }\n return !!this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n }\n private _disabled: boolean;\n\n @Input()\n @BooleanInput()\n makeFirstItemActive: boolean;\n\n /** Element for the panel containing the autocomplete options. */\n @ViewChild(NovoOverlayTemplateComponent)\n overlay: NovoOverlayTemplateComponent;\n\n element: ElementRef;\n\n constructor(\n private _elementRef: ElementRef,\n private cdr: ChangeDetectorRef,\n @Attribute('tabindex') defaultTabIndex: string,\n @Optional() @Inject(NOVO_FORM_FIELD) private _formField: NovoFieldElement,\n ) {\n super();\n const parsedTabIndex = Number(defaultTabIndex);\n this.tabIndex = parsedTabIndex || parsedTabIndex === 0 ? parsedTabIndex : null;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._watchStateChanges();\n this._watchSelectionEvents();\n }\n\n ngOnDestroy() {\n this._stateChanges.unsubscribe();\n this._activeOptionChanges.unsubscribe();\n this._selectedOptionChanges.unsubscribe();\n this._keyDownChanges.unsubscribe();\n }\n\n ngAfterContentInit() {\n this._keyManager = new ActiveDescendantKeyManager<NovoOption>(this.options).withWrap();\n this._activeOptionChanges = this._keyManager.change.subscribe((index) => {\n this.optionActivated.emit({ source: this, option: this.options.toArray()[index] || null });\n });\n this.element = this._formField.getConnectedOverlayOrigin() || this._elementRef;\n this._keyDownChanges = fromEvent(this.element.nativeElement, 'keydown').subscribe((event: KeyboardEvent) => this._handleKeydown(event));\n this.options.changes.subscribe(() => {\n this._watchStateChanges();\n this._watchSelectionEvents();\n Promise.resolve().then(() => {\n this.checkSelectedOptions();\n if (this.makeFirstItemActive && this.options.length > 0) {\n this._keyManager.setFirstItemActive();\n }\n });\n });\n }\n\n ngAfterViewInit() {\n this._watchStateChanges();\n this._watchSelectionEvents();\n }\n\n checkPanel() {\n const isTriggered = this.triggerOn(this._formField._control);\n if (isTriggered && this.element) {\n this.openPanel();\n }\n }\n\n private _setTriggerValue(option: NovoOption): void {\n const toDisplay = this.displayWith ? this.displayWith(option) : option?.viewValue;\n // Simply falling back to an empty string if the display value is falsy does not work properly.\n // The display value can also be the number zero and shouldn't fall back to an empty string.\n const displayValue = toDisplay != null ? toDisplay : '';\n const optionValue = option.value;\n // If it's used within a `NovoField`, we should set it through the property so it can go\n // through change detection.\n if (this._formField) {\n const { controlType, lastCaretPosition = 0 } = this._formField._control;\n if (controlType === 'textarea') {\n const currentValue = this._formField._control.value.split('');\n currentValue.splice(lastCaretPosition, 0, displayValue);\n this._formField._control.value = currentValue.join('');\n } else if (controlType === 'chip-list') {\n const chipList = this._formField._control as NovoChipList;\n const currentValue = this._formField._control.value;\n if (currentValue.includes(optionValue)) {\n chipList.removeValue(optionValue);\n } else {\n chipList.addValue(optionValue);\n }\n } else {\n let valueToEmit: any = optionValue;\n if (this.multiple) {\n const currentValue = this._formField._control.value;\n if (Array.isArray(currentValue)) {\n if (currentValue.includes(optionValue)) {\n valueToEmit = currentValue.filter((it) => it === optionValue);\n } else {\n valueToEmit = [...currentValue, optionValue];\n }\n } else if (currentValue === optionValue) {\n valueToEmit = [];\n } else {\n valueToEmit = [currentValue, optionValue];\n }\n }\n this._formField._control.value = valueToEmit;\n }\n } else {\n // this._element.nativeElement.value = inputValue;\n console.warn(`AutoComplete only intended to be used within a NovoField`);\n }\n this._previousValue = optionValue;\n }\n\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n private _clearPreviousSelectedOption(skip: NovoOption) {\n this.options.forEach((option) => {\n if (option !== skip && option.selected) {\n option.deselect();\n }\n });\n }\n\n /** Emits the `select` event. */\n private _emitSelectEvent(option: NovoOption): void {\n const event = new NovoOptionSelectedEvent(this, option);\n this.optionSelected.emit(event);\n }\n\n /**\n * This method closes the panel, and if a value is specified, also sets the associated\n * control to that value. It will also mark the control as dirty if this interaction\n * stemmed from the user.\n */\n private _setValueAndClose(event: NovoOptionSelectionChange | null): void {\n if (event && event.source) {\n if (!this.multiple) this._clearPreviousSelectedOption(event.source);\n this._setTriggerValue(event.source);\n // this._onChange(event.source.value);\n // this._element.nativeElement.focus();\n // this._formField._control.focus();\n this._emitSelectEvent(event.source);\n this._watchSelectionEvents();\n }\n\n if (!this.multiple) this.closePanel();\n }\n\n private _watchSelectionEvents() {\n const selectionEvents = this.options ? merge(...this.options.map((option) => option.onSelectionChange)) : of();\n this._selectedOptionChanges.unsubscribe();\n this._selectedOptionChanges = selectionEvents.pipe(take(1)).subscribe((evt: NovoOptionSelectionChange) => {\n this._setValueAndClose(evt);\n });\n }\n\n private _watchStateChanges() {\n const inputStateChanged = this._formField.stateChanges;\n this._stateChanges.unsubscribe();\n this._stateChanges = merge(inputStateChanged)\n .pipe(debounce(() => interval(10)))\n .subscribe(() => {\n this.checkSelectedOptions();\n this.checkPanel();\n this.cdr.markForCheck();\n });\n }\n\n /** The currently active option, coerced to MatOption type. */\n get activeOption(): NovoOption | null {\n if (this._keyManager) {\n return this._keyManager.activeItem;\n }\n\n return null;\n }\n\n _handleKeydown(event: KeyboardEvent): void {\n const key = event.key;\n\n // Prevent the default action on all escape key presses. This is here primarily to bring IE\n // in line with other browsers. By default, pressing escape on IE will cause it to revert\n // the input value to the one that it had on focus, however it won't dispatch any events\n // which means that the model value will be out of sync with the view.\n if (key === Key.Escape && !hasModifierKey(event)) {\n event.preventDefault();\n }\n\n if (this.activeOption && key === Key.Enter && this.panelOpen) {\n this.activeOption._selectViaInteraction();\n // this._resetActiveItem();\n event.preventDefault();\n } else {\n const prevActiveItem = this._keyManager.activeItem;\n const isArrowKey = key === Key.ArrowUp || key === Key.ArrowDown;\n\n if (this.panelOpen || key === Key.Tab) {\n this._keyManager.onKeydown(event);\n } else if (isArrowKey && !this.overlay.panelOpen) {\n this.openPanel();\n }\n\n // if (isArrowKey || this.autocomplete._keyManager.activeItem !== prevActiveItem) {\n // this._scrollToOption(this.autocomplete._keyManager.activeItemIndex || 0);\n // }\n }\n }\n\n private checkSelectedOptions() {\n if (this.multiple && Array.isArray(this._formField._control.value)) {\n const value = this._formField._control.value;\n this.options.forEach((option) => option.deselect());\n value.forEach((currentValue: any) => this._selectValue(currentValue));\n }\n }\n /**\n * Finds and selects and option based on its value.\n * @returns Option that has the corresponding value.\n */\n private _selectValue(value: any): NovoOption | undefined {\n const correspondingOption = this.options.find((option: NovoOption) => {\n return option.value === value;\n });\n correspondingOption?.select();\n return correspondingOption;\n }\n}\n","<novo-overlay-template [parent]=\"element\" position=\"above-below\">\n <div class=\"novo-autocomplete-options\" cdk-scrollable>\n <ng-content></ng-content>\n </div>\n</novo-overlay-template>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NovoCommonModule, NovoOptionModule, NovoOverlayModule } from 'novo-elements/elements/common';\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoChipsModule } from 'novo-elements/elements/chips';\nimport { NovoFieldModule } from 'novo-elements/elements/field';\nimport { NovoAutocompleteElement } from './autocomplete.component';\n\n@NgModule({\n imports: [CommonModule, NovoButtonModule, NovoOverlayModule, NovoOptionModule, NovoCommonModule, NovoFieldModule, NovoChipsModule],\n declarations: [NovoAutocompleteElement],\n exports: [NovoAutocompleteElement],\n})\nexport class NovoAutoCompleteModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"novo-elements-elements-autocomplete.mjs","sources":["../../../projects/novo-elements/src/elements/autocomplete/autocomplete.component.ts","../../../projects/novo-elements/src/elements/autocomplete/autocomplete.component.html","../../../projects/novo-elements/src/elements/autocomplete/autocomplete.module.ts","../../../projects/novo-elements/src/elements/autocomplete/novo-elements-elements-autocomplete.ts"],"sourcesContent":["import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { hasModifierKey } from '@angular/cdk/keycodes';\nimport {\n AfterContentInit,\n AfterViewInit,\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Output,\n QueryList,\n SimpleChanges,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { fromEvent, interval, merge, of, Subscription } from 'rxjs';\nimport { debounce, take } from 'rxjs/operators';\nimport { BooleanInput, Key } from 'novo-elements/utils';\nimport type { NovoChipList } from 'novo-elements/elements/chips';\nimport {\n CanDisable,\n CanDisableCtor,\n HasOverlayCtor,\n mixinDisabled,\n mixinOverlay,\n NovoOptgroup,\n NovoOption,\n NovoOptionSelectionChange,\n NovoOverlayTemplateComponent,\n NOVO_OPTION_PARENT_COMPONENT,\n NOVO_OVERLAY_CONTAINER,\n} from 'novo-elements/elements/common';\nimport { NovoFieldControl, NovoFieldElement, NOVO_FORM_FIELD } from 'novo-elements/elements/field';\n\n/** Event object that is emitted when an autocomplete option is selected. */\nexport class NovoOptionSelectedEvent {\n constructor(\n /** Reference to the autocomplete panel that emitted the event. */\n public source: NovoAutocompleteElement,\n /** Option that was selected. */\n public option: NovoOption,\n ) {}\n}\n\n// Boilerplate for applying mixins\nclass NovoAutocompleteBase {\n constructor() {}\n}\nconst NovoAutocompleteMixins: HasOverlayCtor & CanDisableCtor & typeof NovoAutocompleteBase = mixinOverlay(\n mixinDisabled(NovoAutocompleteBase),\n);\n\n@Component({\n selector: 'novo-autocomplete',\n templateUrl: 'autocomplete.component.html',\n styleUrls: ['autocomplete.component.scss'],\n host: {\n class: 'novo-autocomplete',\n // Always set the tabindex to -1 so that it doesn't overlap with any custom tabindex the\n // consumer may have provided, while still being able to receive focus.\n '[attr.tabindex]': 'disabled ? null : -1',\n },\n providers: [\n { provide: NOVO_OPTION_PARENT_COMPONENT, useExisting: NovoAutocompleteElement },\n { provide: NOVO_OVERLAY_CONTAINER, useExisting: NovoAutocompleteElement }\n ],\n exportAs: 'novoAutocomplete',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class NovoAutocompleteElement\n extends NovoAutocompleteMixins\n implements CanDisable, AfterContentInit, AfterViewInit, OnChanges, OnDestroy\n{\n private _stateChanges = Subscription.EMPTY;\n private _activeOptionChanges = Subscription.EMPTY;\n private _selectedOptionChanges = Subscription.EMPTY;\n private _keyDownChanges = Subscription.EMPTY;\n\n /** Manages active item in option list based on key events. */\n private _keyManager: ActiveDescendantKeyManager<NovoOption>;\n\n /** Old value of the native input. Used to work around issues with the `input` event on IE. */\n private _previousValue: string | number | null;\n\n @ContentChildren(NovoOptgroup, { descendants: true }) optionGroups: QueryList<NovoOptgroup>;\n @ContentChildren(NovoOption, { descendants: true }) options: QueryList<NovoOption>;\n\n /** Event that is emitted whenever an option from the list is selected. */\n @Output() readonly optionSelected: EventEmitter<NovoOptionSelectedEvent> = new EventEmitter<NovoOptionSelectedEvent>();\n /** Emits whenever an option is activated using the keyboard. */\n @Output() readonly optionActivated: EventEmitter<NovoOptionSelectedEvent> = new EventEmitter<NovoOptionSelectedEvent>();\n\n /** Tabindex for the toggle. */\n @Input() tabIndex: number | null;\n\n /** Key to use to trigger autocomplete. used for textarea. */\n @Input() triggerOn: (control: NovoFieldControl<any>) => boolean = (control) => control.focused;\n\n /** Function that maps an option's control value to its display value in the trigger. */\n @Input() displayWith: ((value: any) => string) | null = null;\n\n /** Screenreader label for the button. */\n @Input('aria-label') ariaLabel: string;\n\n /** Whether the user should be allowed to select multiple options. */\n @Input()\n get multiple(): boolean {\n return this._multiple;\n }\n set multiple(value: boolean) {\n this._multiple = coerceBooleanProperty(value);\n }\n private _multiple: boolean = false;\n\n /** Whether the toggle button is disabled. */\n @Input()\n @BooleanInput()\n get disabled(): boolean {\n if (this._disabled === undefined && this._formField?._control) {\n return this._formField._control.disabled;\n }\n return !!this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value);\n }\n private _disabled: boolean;\n\n @Input()\n @BooleanInput()\n makeFirstItemActive: boolean;\n\n /** Element for the panel containing the autocomplete options. */\n @ViewChild(NovoOverlayTemplateComponent)\n overlay: NovoOverlayTemplateComponent;\n\n element: ElementRef;\n\n constructor(\n private _elementRef: ElementRef,\n private cdr: ChangeDetectorRef,\n @Attribute('tabindex') defaultTabIndex: string,\n @Optional() @Inject(NOVO_FORM_FIELD) private _formField: NovoFieldElement,\n ) {\n super();\n const parsedTabIndex = Number(defaultTabIndex);\n this.tabIndex = parsedTabIndex || parsedTabIndex === 0 ? parsedTabIndex : null;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._watchStateChanges();\n this._watchSelectionEvents();\n }\n\n ngOnDestroy() {\n this._stateChanges.unsubscribe();\n this._activeOptionChanges.unsubscribe();\n this._selectedOptionChanges.unsubscribe();\n this._keyDownChanges.unsubscribe();\n }\n\n ngAfterContentInit() {\n this._keyManager = new ActiveDescendantKeyManager<NovoOption>(this.options).withWrap();\n this._activeOptionChanges = this._keyManager.change.subscribe((index) => {\n this.optionActivated.emit({ source: this, option: this.options.toArray()[index] || null });\n });\n this.element = this._formField.getConnectedOverlayOrigin() || this._elementRef;\n this._keyDownChanges = fromEvent(this.element.nativeElement, 'keydown').subscribe((event: KeyboardEvent) => this._handleKeydown(event));\n this.options.changes.subscribe(() => {\n this._watchStateChanges();\n this._watchSelectionEvents();\n Promise.resolve().then(() => {\n this.checkSelectedOptions();\n if (this.makeFirstItemActive && this.options.length > 0) {\n this._keyManager.setFirstItemActive();\n }\n });\n });\n }\n\n ngAfterViewInit() {\n this._watchStateChanges();\n this._watchSelectionEvents();\n }\n\n checkPanel() {\n const isTriggered = this.triggerOn(this._formField._control);\n if (isTriggered && this.element) {\n this.openPanel();\n }\n }\n\n private _setTriggerValue(option: NovoOption): void {\n const toDisplay = this.displayWith ? this.displayWith(option) : option?.viewValue;\n // Simply falling back to an empty string if the display value is falsy does not work properly.\n // The display value can also be the number zero and shouldn't fall back to an empty string.\n const displayValue = toDisplay != null ? toDisplay : '';\n const optionValue = option.value;\n // If it's used within a `NovoField`, we should set it through the property so it can go\n // through change detection.\n if (this._formField) {\n const { controlType, lastCaretPosition = 0 } = this._formField._control;\n if (controlType === 'textarea') {\n const currentValue = this._formField._control.value.split('');\n currentValue.splice(lastCaretPosition, 0, displayValue);\n this._formField._control.value = currentValue.join('');\n } else if (controlType === 'chip-list') {\n const chipList = this._formField._control as NovoChipList;\n const currentValue = this._formField._control.value;\n if (currentValue.includes(optionValue)) {\n chipList.removeValue(optionValue);\n } else {\n chipList.addValue(optionValue);\n }\n } else {\n let valueToEmit: any = optionValue;\n if (this.multiple) {\n const currentValue = this._formField._control.value;\n if (Array.isArray(currentValue)) {\n if (currentValue.includes(optionValue)) {\n valueToEmit = currentValue.filter((it) => it === optionValue);\n } else {\n valueToEmit = [...currentValue, optionValue];\n }\n } else if (currentValue === optionValue) {\n valueToEmit = [];\n } else {\n valueToEmit = [currentValue, optionValue];\n }\n }\n this._formField._control.value = valueToEmit;\n }\n } else {\n console.warn(`AutoComplete only intended to be used within a NovoField`);\n }\n this._previousValue = optionValue;\n }\n\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n private _clearPreviousSelectedOption(skip: NovoOption) {\n this.options.forEach((option) => {\n if (option !== skip && option.selected) {\n option.deselect();\n }\n });\n }\n\n /** Emits the `select` event. */\n private _emitSelectEvent(option: NovoOption): void {\n const event = new NovoOptionSelectedEvent(this, option);\n this.optionSelected.emit(event);\n }\n\n /**\n * This method closes the panel, and if a value is specified, also sets the associated\n * control to that value. It will also mark the control as dirty if this interaction\n * stemmed from the user.\n */\n private _setValueAndClose(event: NovoOptionSelectionChange | null): void {\n if (event && event.source) {\n if (!this.multiple) this._clearPreviousSelectedOption(event.source);\n this._setTriggerValue(event.source);\n this._emitSelectEvent(event.source);\n this._watchSelectionEvents();\n }\n\n if (!this.multiple) this.closePanel();\n }\n\n private _watchSelectionEvents() {\n const selectionEvents = this.options ? merge(...this.options.map((option) => option.onSelectionChange)) : of();\n this._selectedOptionChanges.unsubscribe();\n this._selectedOptionChanges = selectionEvents.pipe(take(1)).subscribe((evt: NovoOptionSelectionChange) => {\n this._setValueAndClose(evt);\n });\n }\n\n private _watchStateChanges() {\n const inputStateChanged = this._formField.stateChanges;\n this._stateChanges.unsubscribe();\n this._stateChanges = merge(inputStateChanged)\n .pipe(debounce(() => interval(10)))\n .subscribe(() => {\n this.checkSelectedOptions();\n this.checkPanel();\n this.cdr.markForCheck();\n });\n }\n\n /** The currently active option, coerced to MatOption type. */\n get activeOption(): NovoOption | null {\n if (this._keyManager) {\n return this._keyManager.activeItem;\n }\n\n return null;\n }\n\n _handleKeydown(event: KeyboardEvent): void {\n const key = event.key;\n\n // Prevent the default action on all escape key presses. This is here primarily to bring IE\n // in line with other browsers. By default, pressing escape on IE will cause it to revert\n // the input value to the one that it had on focus, however it won't dispatch any events\n // which means that the model value will be out of sync with the view.\n if (key === Key.Escape && !hasModifierKey(event)) {\n event.preventDefault();\n }\n\n if (this.activeOption && key === Key.Enter && this.panelOpen) {\n this.activeOption._selectViaInteraction();\n event.preventDefault();\n } else {\n const prevActiveItem = this._keyManager.activeItem;\n const isArrowKey = key === Key.ArrowUp || key === Key.ArrowDown;\n\n if (this.panelOpen || key === Key.Tab) {\n this._keyManager.onKeydown(event);\n } else if (isArrowKey && !this.overlay.panelOpen) {\n this.openPanel();\n }\n }\n }\n\n private checkSelectedOptions() {\n if (this.multiple && Array.isArray(this._formField._control.value)) {\n const value = this._formField._control.value;\n this.options.forEach((option) => option.deselect());\n value.forEach((currentValue: any) => this._selectValue(currentValue));\n }\n }\n /**\n * Finds and selects and option based on its value.\n * @returns Option that has the corresponding value.\n */\n private _selectValue(value: any): NovoOption | undefined {\n const correspondingOption = this.options.find((option: NovoOption) => {\n return option.value === value;\n });\n correspondingOption?.select();\n return correspondingOption;\n }\n}\n","<novo-overlay-template [parent]=\"element\" position=\"above-below\">\n <div class=\"novo-autocomplete-options\" cdk-scrollable>\n <ng-content></ng-content>\n </div>\n</novo-overlay-template>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { NovoCommonModule, NovoOptionModule, NovoOverlayModule } from 'novo-elements/elements/common';\nimport { NovoButtonModule } from 'novo-elements/elements/button';\nimport { NovoChipsModule } from 'novo-elements/elements/chips';\nimport { NovoFieldModule } from 'novo-elements/elements/field';\nimport { NovoAutocompleteElement } from './autocomplete.component';\n\n@NgModule({\n imports: [CommonModule, NovoButtonModule, NovoOverlayModule, NovoOptionModule, NovoCommonModule, NovoFieldModule, NovoChipsModule],\n declarations: [NovoAutocompleteElement],\n exports: [NovoAutocompleteElement],\n})\nexport class NovoAutoCompleteModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA2CA;MACa,uBAAuB,CAAA;AAClC,IAAA,WAAA;;IAES,MAA+B;;IAE/B,MAAkB,EAAA;QAFlB,IAAM,CAAA,MAAA,GAAN,MAAM;QAEN,IAAM,CAAA,MAAA,GAAN,MAAM;;AAEhB;AAED;AACA,MAAM,oBAAoB,CAAA;AACxB,IAAA,WAAA,GAAA;AACD;AACD,MAAM,sBAAsB,GAAkE,YAAY,CACxG,aAAa,CAAC,oBAAoB,CAAC,CACpC;AAqBK,MAAO,uBACX,SAAQ,sBAAsB,CAAA;;AAmC9B,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS;;IAEvB,IAAI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC;;;AAK/C,IAAA,IAEI,QAAQ,GAAA;AACV,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE;AAC7D,YAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ;;AAE1C,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS;;IAEzB,IAAI,QAAQ,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC;;AAc/C,IAAA,WAAA,CACU,WAAuB,EACvB,GAAsB,EACP,eAAuB,EACD,UAA4B,EAAA;AAEzE,QAAA,KAAK,EAAE;QALC,IAAW,CAAA,WAAA,GAAX,WAAW;QACX,IAAG,CAAA,GAAA,GAAH,GAAG;QAEkC,IAAU,CAAA,UAAA,GAAV,UAAU;AArEjD,QAAA,IAAA,CAAA,aAAa,GAAG,YAAY,CAAC,KAAK;AAClC,QAAA,IAAA,CAAA,oBAAoB,GAAG,YAAY,CAAC,KAAK;AACzC,QAAA,IAAA,CAAA,sBAAsB,GAAG,YAAY,CAAC,KAAK;AAC3C,QAAA,IAAA,CAAA,eAAe,GAAG,YAAY,CAAC,KAAK;;AAYzB,QAAA,IAAA,CAAA,cAAc,GAA0C,IAAI,YAAY,EAA2B;;AAEnG,QAAA,IAAA,CAAA,eAAe,GAA0C,IAAI,YAAY,EAA2B;;QAM9G,IAAS,CAAA,SAAA,GAAgD,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO;;QAGrF,IAAW,CAAA,WAAA,GAAoC,IAAI;QAapD,IAAS,CAAA,SAAA,GAAY,KAAK;AAiChC,QAAA,MAAM,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC;AAC9C,QAAA,IAAI,CAAC,QAAQ,GAAG,cAAc,IAAI,cAAc,KAAK,CAAC,GAAG,cAAc,GAAG,IAAI;;AAGhF,IAAA,WAAW,CAAC,OAAsB,EAAA;QAChC,IAAI,CAAC,kBAAkB,EAAE;QACzB,IAAI,CAAC,qBAAqB,EAAE;;IAG9B,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE;AAChC,QAAA,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE;AACvC,QAAA,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE;AACzC,QAAA,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE;;IAGpC,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,0BAA0B,CAAa,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE;AACtF,QAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;YACtE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;AAC5F,SAAC,CAAC;AACF,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,yBAAyB,EAAE,IAAI,IAAI,CAAC,WAAW;AAC9E,QAAA,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,KAAoB,KAAK,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACvI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,MAAK;YAClC,IAAI,CAAC,kBAAkB,EAAE;YACzB,IAAI,CAAC,qBAAqB,EAAE;AAC5B,YAAA,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAK;gBAC1B,IAAI,CAAC,oBAAoB,EAAE;AAC3B,gBAAA,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AACvD,oBAAA,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE;;AAEzC,aAAC,CAAC;AACJ,SAAC,CAAC;;IAGJ,eAAe,GAAA;QACb,IAAI,CAAC,kBAAkB,EAAE;QACzB,IAAI,CAAC,qBAAqB,EAAE;;IAG9B,UAAU,GAAA;AACR,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;AAC5D,QAAA,IAAI,WAAW,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/B,IAAI,CAAC,SAAS,EAAE;;;AAIZ,IAAA,gBAAgB,CAAC,MAAkB,EAAA;QACzC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,SAAS;;;AAGjF,QAAA,MAAM,YAAY,GAAG,SAAS,IAAI,IAAI,GAAG,SAAS,GAAG,EAAE;AACvD,QAAA,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK;;;AAGhC,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,YAAA,MAAM,EAAE,WAAW,EAAE,iBAAiB,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ;AACvE,YAAA,IAAI,WAAW,KAAK,UAAU,EAAE;AAC9B,gBAAA,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,YAAY,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,EAAE,YAAY,CAAC;AACvD,gBAAA,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;;AACjD,iBAAA,IAAI,WAAW,KAAK,WAAW,EAAE;AACtC,gBAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,QAAwB;gBACzD,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK;AACnD,gBAAA,IAAI,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;AACtC,oBAAA,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC;;qBAC5B;AACL,oBAAA,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;;;iBAE3B;gBACL,IAAI,WAAW,GAAQ,WAAW;AAClC,gBAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACjB,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK;AACnD,oBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;AAC/B,wBAAA,IAAI,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;AACtC,4BAAA,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,WAAW,CAAC;;6BACxD;AACL,4BAAA,WAAW,GAAG,CAAC,GAAG,YAAY,EAAE,WAAW,CAAC;;;AAEzC,yBAAA,IAAI,YAAY,KAAK,WAAW,EAAE;wBACvC,WAAW,GAAG,EAAE;;yBACX;AACL,wBAAA,WAAW,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC;;;gBAG7C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,GAAG,WAAW;;;aAEzC;AACL,YAAA,OAAO,CAAC,IAAI,CAAC,CAAA,wDAAA,CAA0D,CAAC;;AAE1E,QAAA,IAAI,CAAC,cAAc,GAAG,WAAW;;AAGnC;;AAEG;AACK,IAAA,4BAA4B,CAAC,IAAgB,EAAA;QACnD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAI;YAC9B,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE;gBACtC,MAAM,CAAC,QAAQ,EAAE;;AAErB,SAAC,CAAC;;;AAII,IAAA,gBAAgB,CAAC,MAAkB,EAAA;QACzC,MAAM,KAAK,GAAG,IAAI,uBAAuB,CAAC,IAAI,EAAE,MAAM,CAAC;AACvD,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;;AAGjC;;;;AAIG;AACK,IAAA,iBAAiB,CAAC,KAAuC,EAAA;AAC/D,QAAA,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE;YACzB,IAAI,CAAC,IAAI,CAAC,QAAQ;AAAE,gBAAA,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,MAAM,CAAC;AACnE,YAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC;AACnC,YAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC;YACnC,IAAI,CAAC,qBAAqB,EAAE;;QAG9B,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,UAAU,EAAE;;IAG/B,qBAAqB,GAAA;AAC3B,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,iBAAiB,CAAC,CAAC,GAAG,EAAE,EAAE;AAC9G,QAAA,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE;AACzC,QAAA,IAAI,CAAC,sBAAsB,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAA8B,KAAI;AACvG,YAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC;AAC7B,SAAC,CAAC;;IAGI,kBAAkB,GAAA;AACxB,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY;AACtD,QAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE;AAChC,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,iBAAiB;aACzC,IAAI,CAAC,QAAQ,CAAC,MAAM,QAAQ,CAAC,EAAE,CAAC,CAAC;aACjC,SAAS,CAAC,MAAK;YACd,IAAI,CAAC,oBAAoB,EAAE;YAC3B,IAAI,CAAC,UAAU,EAAE;AACjB,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;AACzB,SAAC,CAAC;;;AAIN,IAAA,IAAI,YAAY,GAAA;AACd,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU;;AAGpC,QAAA,OAAO,IAAI;;AAGb,IAAA,cAAc,CAAC,KAAoB,EAAA;AACjC,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG;;;;;QAMrB,IAAI,GAAG,kCAAmB,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;YAChD,KAAK,CAAC,cAAc,EAAE;;QAGxB,IAAI,IAAI,CAAC,YAAY,IAAI,GAAG,KAAc,OAAA,oBAAI,IAAI,CAAC,SAAS,EAAE;AAC5D,YAAA,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE;YACzC,KAAK,CAAC,cAAc,EAAE;;aACjB;AACL,YAAA,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU;AAClD,YAAA,MAAM,UAAU,GAAG,GAAG,oCAAoB,GAAG;AAE7C,YAAA,IAAI,IAAI,CAAC,SAAS,IAAI,GAAG,KAAA,KAAA,gBAAc;AACrC,gBAAA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC;;iBAC5B,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;gBAChD,IAAI,CAAC,SAAS,EAAE;;;;IAKd,oBAAoB,GAAA;AAC1B,QAAA,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAClE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK;AAC5C,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,EAAE,CAAC;AACnD,YAAA,KAAK,CAAC,OAAO,CAAC,CAAC,YAAiB,KAAK,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;;;AAGzE;;;AAGG;AACK,IAAA,YAAY,CAAC,KAAU,EAAA;QAC7B,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAkB,KAAI;AACnE,YAAA,OAAO,MAAM,CAAC,KAAK,KAAK,KAAK;AAC/B,SAAC,CAAC;QACF,mBAAmB,EAAE,MAAM,EAAE;AAC7B,QAAA,OAAO,mBAAmB;;+GAjRjB,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAwErB,UAAU,EAAA,SAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EACD,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAzE1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,uBAAuB,EATrB,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,CAAA,YAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,sBAAA,EAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA,EAAE,OAAO,EAAE,4BAA4B,EAAE,WAAW,EAAE,uBAAuB,EAAE;AAC/E,YAAA,EAAE,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,uBAAuB;AAC1E,SAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,SAAA,EAqBc,YAAY,EACZ,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAU,EAgDhB,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,4BAA4B,4HChJzC,sMAIwB,EAAA,MAAA,EAAA,CAAA,oNAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,4BAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,QAAA,EAAA,eAAA,EAAA,aAAA,EAAA,QAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;AD0HtB,UAAA,CAAA;AACC,IAAA,YAAY,EAAE;;;AAMd,CAAA,EAAA,uBAAA,CAAA,SAAA,EAAA,UAAA,EAAA,IAAA,CAAA;AAQD,UAAA,CAAA;AADC,IAAA,YAAY,EAAE;;AACc,CAAA,EAAA,uBAAA,CAAA,SAAA,EAAA,qBAAA,EAAA,KAAA,CAAA,CAAA;4FA7DlB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAnBnC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,EAGvB,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,mBAAmB;;;AAG1B,wBAAA,iBAAiB,EAAE,sBAAsB;qBAC5C,EACU,SAAA,EAAA;AACP,wBAAA,EAAE,OAAO,EAAE,4BAA4B,EAAE,WAAW,yBAAyB,EAAE;AAC/E,wBAAA,EAAE,OAAO,EAAE,sBAAsB,EAAE,WAAW,yBAAyB;qBAC1E,EACS,QAAA,EAAA,kBAAkB,EACb,aAAA,EAAA,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,KAAK,EAAA,QAAA,EAAA,sMAAA,EAAA,MAAA,EAAA,CAAA,oNAAA,CAAA,EAAA;;0BA0EhB,SAAS;2BAAC,UAAU;;0BACpB;;0BAAY,MAAM;2BAAC,eAAe;yCA1DiB,YAAY,EAAA,CAAA;sBAAjE,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,YAAY,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;gBACA,OAAO,EAAA,CAAA;sBAA1D,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;gBAG/B,cAAc,EAAA,CAAA;sBAAhC;gBAEkB,eAAe,EAAA,CAAA;sBAAjC;gBAGQ,QAAQ,EAAA,CAAA;sBAAhB;gBAGQ,SAAS,EAAA,CAAA;sBAAjB;gBAGQ,WAAW,EAAA,CAAA;sBAAnB;gBAGoB,SAAS,EAAA,CAAA;sBAA7B,KAAK;uBAAC,YAAY;gBAIf,QAAQ,EAAA,CAAA;sBADX;gBAYG,QAAQ,EAAA,CAAA;sBAFX;gBAeD,mBAAmB,EAAA,CAAA;sBAFlB;gBAMD,OAAO,EAAA,CAAA;sBADN,SAAS;uBAAC,4BAA4B;;;MEnI5B,sBAAsB,CAAA;+GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,iBAHlB,uBAAuB,CAAA,EAAA,OAAA,EAAA,CAD5B,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,aAEvH,uBAAuB,CAAA,EAAA,CAAA,CAAA;AAEtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,EAJvB,OAAA,EAAA,CAAA,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;;4FAItH,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,CAAC;oBAClI,YAAY,EAAE,CAAC,uBAAuB,CAAC;oBACvC,OAAO,EAAE,CAAC,uBAAuB,CAAC;AACnC,iBAAA;;;ACZD;;AAEG;;;;"}
|
|
@@ -23,7 +23,6 @@ class NovoAvatarElement {
|
|
|
23
23
|
let src;
|
|
24
24
|
if ((this.source && this.source !== '') || this.label) {
|
|
25
25
|
if (this.source.profileImage) {
|
|
26
|
-
// this.src = this.source.profileImage;
|
|
27
26
|
return;
|
|
28
27
|
}
|
|
29
28
|
else if (this.source.logo) {
|
|
@@ -123,7 +122,6 @@ class NovoAvatarElement {
|
|
|
123
122
|
svg.setAttribute('pointer-events', 'none');
|
|
124
123
|
svg.setAttribute('width', settings.width);
|
|
125
124
|
svg.setAttribute('height', settings.height);
|
|
126
|
-
// this.setPrefixedValue(svg, 'background', colors[colorIndex]);
|
|
127
125
|
this.setPrefixedValue(svg, 'background', `linear-gradient(-45deg, ${colors[colorIndex]} 0%, ${lighterColors[colorIndex]} 100%)`);
|
|
128
126
|
svg.style.width = `${settings.width}px`;
|
|
129
127
|
svg.style.height = `${settings.height}px`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"novo-elements-elements-avatar.mjs","sources":["../../../projects/novo-elements/src/elements/avatar/Avatar.ts","../../../projects/novo-elements/src/elements/avatar/AvatarStack.ts","../../../projects/novo-elements/src/elements/avatar/Avatar.module.ts","../../../projects/novo-elements/src/elements/avatar/novo-elements-elements-avatar.ts"],"sourcesContent":["// NG2\nimport { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Component({\n selector: 'novo-avatar',\n styleUrls: ['./Avatar.scss'],\n template: '<img *ngIf=\"src\" [src]=\"src\"/>',\n standalone: false\n})\nexport class NovoAvatarElement implements OnInit {\n @Input() source: any;\n @Input() label: string;\n @Input() theme: string;\n @Input() image: string;\n\n @Input()\n size: string = 'medium';\n\n @Input()\n shape: string = 'round';\n\n @Input()\n color: string;\n\n @HostBinding('class')\n get hb_classBinding() {\n return [`avatar-size-${this.size}`, `avatar-shape-${this.shape}`, `avatar-color-${this.color}`];\n }\n\n @HostBinding('style.backgroundImage')\n get background(): string {\n if (!this.image && !this.source.profileImage) return;\n return `url(${this.image || this.source.profileImage})`;\n }\n\n src: any;\n\n constructor(private sanitizer: DomSanitizer) {}\n\n ngOnInit(): any {\n let src: any;\n if ((this.source && this.source !== '') || this.label) {\n if (this.source.profileImage) {\n // this.src = this.source.profileImage;\n return;\n } else if (this.source.logo) {\n src = this.source.logo;\n } else {\n const first: any =\n this.label || this.source.firstName\n ? this.source.firstName.charAt(0)\n : this.source.name\n ? this.source.name.charAt(0)\n : this.source.username\n ? this.source.username.charAt(0)\n : '';\n const last: any = this.source.lastName ? this.source.lastName.charAt(0) : '';\n\n // Defining Colors\n const colors: any = [\n '#1abc9c',\n '#16a085',\n '#f1c40f',\n '#f39c12',\n '#2ecc71',\n '#27ae60',\n '#e67e22',\n '#d35400',\n '#3498db',\n '#2980b9',\n '#e74c3c',\n '#c0392b',\n '#9b59b6',\n '#8e44ad',\n '#bdc3c7',\n '#34495e',\n '#2c3e50',\n '#95a5a6',\n '#7f8c8d',\n '#ec87bf',\n '#d870ad',\n '#f69785',\n '#9ba37e',\n '#b49255',\n '#b49255',\n '#a94136',\n ];\n const lighterColors: any = [\n '#15D6B0',\n '#16A069',\n '#F1D60F',\n '#F3AC12',\n '#2ED85B',\n '#28BC7F',\n '#E66322',\n '#D3002B',\n '#6534DB',\n '#29B2B9',\n '#E73C63',\n '#DB6D31',\n '#CB48B5',\n '#6944AD',\n '#38536D',\n '#3D6473',\n '#394A6C',\n '#92BCB7',\n '#7D99A2',\n '#F14F76',\n '#CB5CDA',\n '#FFB475',\n '#B9CE6E',\n '#DDAA4F',\n '#CD6F45',\n '#B9354A',\n ];\n const settings: any = {\n // Default settings\n textColor: '#ffffff',\n height: 100,\n width: 100,\n fontSize: 50,\n fontWeight: 400,\n fontFamily: 'HelveticaNeue-Light,Helvetica Neue Light,Helvetica Neue,Helvetica, Arial,Lucida Grande, sans-serif',\n };\n\n // making the text object\n const colorIndex: any = Math.floor((first.charCodeAt(0) - 65) % colors.length);\n\n const cobj: any = document.createElement('text');\n cobj.setAttribute('text-anchor', 'middle');\n cobj.setAttribute('x', '50%');\n cobj.setAttribute('y', '50%');\n cobj.setAttribute('dy', '0.35em');\n cobj.setAttribute('pointer-events', 'auto');\n cobj.setAttribute('fill', settings.textColor);\n cobj.setAttribute('font-family', settings.fontFamily);\n cobj.style.fontWeight = settings.fontWeight;\n cobj.style.fontSize = `${settings.fontSize}px`;\n\n const ltrs: any = document.createTextNode(this.label || first + last);\n cobj.appendChild(ltrs);\n\n const svg: any = document.createElement('svg');\n svg.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svg.setAttribute('pointer-events', 'none');\n svg.setAttribute('width', settings.width);\n svg.setAttribute('height', settings.height);\n\n // this.setPrefixedValue(svg, 'background', colors[colorIndex]);\n this.setPrefixedValue(svg, 'background', `linear-gradient(-45deg, ${colors[colorIndex]} 0%, ${lighterColors[colorIndex]} 100%)`);\n\n svg.style.width = `${settings.width}px`;\n svg.style.height = `${settings.height}px`;\n svg.appendChild(cobj);\n\n const top: any = document.createElement('div');\n top.appendChild(svg);\n\n const svgHtml: any = window.btoa(unescape(encodeURIComponent(top.innerHTML)));\n src = `data:image/svg+xml;base64, ${svgHtml}`;\n }\n this.src = this.sanitizer.bypassSecurityTrustUrl(src);\n }\n }\n\n setPrefixedValue(elm: any, prop: any, value: any): any {\n const prefixes: any = ['-moz-', '-webkit-', '-o-', '-ms-', '-khtml-'];\n\n // Clear\n elm.style[prop] = '';\n const starting: any = elm.style[prop];\n\n // Try raw first\n try {\n elm.style[prop] = value;\n if (elm.style[prop] !== starting) {\n return;\n }\n } catch (e) {\n // no op\n }\n\n // Try prefixes\n for (let i = 0; i < prefixes.length; ++i) {\n const v = prefixes[i] + value;\n try {\n elm.style[prop] = v;\n if (elm.style[prop] !== starting) {\n return;\n }\n } catch (e2) {\n // no op\n }\n }\n }\n\n private _isValidURL(str: string) {\n const pattern = new RegExp(\n '^(https?:\\\\/\\\\/)?' + // protocol\n '((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|' + // domain name\n '((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))' + // OR ip (v4) address\n '(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*' + // port and path\n '(\\\\?[;&a-z\\\\d%_.~+=-]*)?' + // query string\n '(\\\\#[-a-z\\\\d_]*)?$',\n 'i',\n ); // fragment locator\n return !!pattern.test(str);\n }\n}\n","// NG2\nimport { AfterViewInit, Component, Input, QueryList, ViewChildren } from '@angular/core';\nimport { NovoAvatarElement } from './Avatar';\n\n@Component({\n selector: 'novo-avatar-stack',\n styleUrls: ['./AvatarStack.scss'],\n template: `\n <ng-content></ng-content>\n <novo-avatar *ngIf=\"showTotal\" label=\"+5\"></novo-avatar>\n `,\n standalone: false\n})\nexport class NovoAvatarStackElement implements AfterViewInit {\n @Input()\n total: number = 0;\n @ViewChildren(NovoAvatarElement)\n viewChildren!: QueryList<NovoAvatarElement>;\n\n showTotal: boolean = false;\n remainingCount: number = 0;\n ngAfterViewInit() {\n // viewChildren is set\n if (this.total - this.viewChildren.length > 0) {\n this.remainingCount = this.total - this.viewChildren.length;\n this.showTotal = true;\n }\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoAvatarElement } from './Avatar';\nimport { NovoAvatarStackElement } from './AvatarStack';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [NovoAvatarElement, NovoAvatarStackElement],\n exports: [NovoAvatarElement, NovoAvatarStackElement],\n})\nexport class NovoAvatarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.NovoAvatarElement"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"novo-elements-elements-avatar.mjs","sources":["../../../projects/novo-elements/src/elements/avatar/Avatar.ts","../../../projects/novo-elements/src/elements/avatar/AvatarStack.ts","../../../projects/novo-elements/src/elements/avatar/Avatar.module.ts","../../../projects/novo-elements/src/elements/avatar/novo-elements-elements-avatar.ts"],"sourcesContent":["// NG2\nimport { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\n@Component({\n selector: 'novo-avatar',\n styleUrls: ['./Avatar.scss'],\n template: '<img *ngIf=\"src\" [src]=\"src\"/>',\n standalone: false\n})\nexport class NovoAvatarElement implements OnInit {\n @Input() source: any;\n @Input() label: string;\n @Input() theme: string;\n @Input() image: string;\n\n @Input()\n size: string = 'medium';\n\n @Input()\n shape: string = 'round';\n\n @Input()\n color: string;\n\n @HostBinding('class')\n get hb_classBinding() {\n return [`avatar-size-${this.size}`, `avatar-shape-${this.shape}`, `avatar-color-${this.color}`];\n }\n\n @HostBinding('style.backgroundImage')\n get background(): string {\n if (!this.image && !this.source.profileImage) return;\n return `url(${this.image || this.source.profileImage})`;\n }\n\n src: any;\n\n constructor(private sanitizer: DomSanitizer) {}\n\n ngOnInit(): any {\n let src: any;\n if ((this.source && this.source !== '') || this.label) {\n if (this.source.profileImage) {\n return;\n } else if (this.source.logo) {\n src = this.source.logo;\n } else {\n const first: any =\n this.label || this.source.firstName\n ? this.source.firstName.charAt(0)\n : this.source.name\n ? this.source.name.charAt(0)\n : this.source.username\n ? this.source.username.charAt(0)\n : '';\n const last: any = this.source.lastName ? this.source.lastName.charAt(0) : '';\n\n // Defining Colors\n const colors: any = [\n '#1abc9c',\n '#16a085',\n '#f1c40f',\n '#f39c12',\n '#2ecc71',\n '#27ae60',\n '#e67e22',\n '#d35400',\n '#3498db',\n '#2980b9',\n '#e74c3c',\n '#c0392b',\n '#9b59b6',\n '#8e44ad',\n '#bdc3c7',\n '#34495e',\n '#2c3e50',\n '#95a5a6',\n '#7f8c8d',\n '#ec87bf',\n '#d870ad',\n '#f69785',\n '#9ba37e',\n '#b49255',\n '#b49255',\n '#a94136',\n ];\n const lighterColors: any = [\n '#15D6B0',\n '#16A069',\n '#F1D60F',\n '#F3AC12',\n '#2ED85B',\n '#28BC7F',\n '#E66322',\n '#D3002B',\n '#6534DB',\n '#29B2B9',\n '#E73C63',\n '#DB6D31',\n '#CB48B5',\n '#6944AD',\n '#38536D',\n '#3D6473',\n '#394A6C',\n '#92BCB7',\n '#7D99A2',\n '#F14F76',\n '#CB5CDA',\n '#FFB475',\n '#B9CE6E',\n '#DDAA4F',\n '#CD6F45',\n '#B9354A',\n ];\n const settings: any = {\n // Default settings\n textColor: '#ffffff',\n height: 100,\n width: 100,\n fontSize: 50,\n fontWeight: 400,\n fontFamily: 'HelveticaNeue-Light,Helvetica Neue Light,Helvetica Neue,Helvetica, Arial,Lucida Grande, sans-serif',\n };\n\n // making the text object\n const colorIndex: any = Math.floor((first.charCodeAt(0) - 65) % colors.length);\n\n const cobj: any = document.createElement('text');\n cobj.setAttribute('text-anchor', 'middle');\n cobj.setAttribute('x', '50%');\n cobj.setAttribute('y', '50%');\n cobj.setAttribute('dy', '0.35em');\n cobj.setAttribute('pointer-events', 'auto');\n cobj.setAttribute('fill', settings.textColor);\n cobj.setAttribute('font-family', settings.fontFamily);\n cobj.style.fontWeight = settings.fontWeight;\n cobj.style.fontSize = `${settings.fontSize}px`;\n\n const ltrs: any = document.createTextNode(this.label || first + last);\n cobj.appendChild(ltrs);\n\n const svg: any = document.createElement('svg');\n svg.setAttribute('xmlns', 'http://www.w3.org/2000/svg');\n svg.setAttribute('pointer-events', 'none');\n svg.setAttribute('width', settings.width);\n svg.setAttribute('height', settings.height);\n\n this.setPrefixedValue(svg, 'background', `linear-gradient(-45deg, ${colors[colorIndex]} 0%, ${lighterColors[colorIndex]} 100%)`);\n\n svg.style.width = `${settings.width}px`;\n svg.style.height = `${settings.height}px`;\n svg.appendChild(cobj);\n\n const top: any = document.createElement('div');\n top.appendChild(svg);\n\n const svgHtml: any = window.btoa(unescape(encodeURIComponent(top.innerHTML)));\n src = `data:image/svg+xml;base64, ${svgHtml}`;\n }\n this.src = this.sanitizer.bypassSecurityTrustUrl(src);\n }\n }\n\n setPrefixedValue(elm: any, prop: any, value: any): any {\n const prefixes: any = ['-moz-', '-webkit-', '-o-', '-ms-', '-khtml-'];\n\n // Clear\n elm.style[prop] = '';\n const starting: any = elm.style[prop];\n\n // Try raw first\n try {\n elm.style[prop] = value;\n if (elm.style[prop] !== starting) {\n return;\n }\n } catch (e) {\n // no op\n }\n\n // Try prefixes\n for (let i = 0; i < prefixes.length; ++i) {\n const v = prefixes[i] + value;\n try {\n elm.style[prop] = v;\n if (elm.style[prop] !== starting) {\n return;\n }\n } catch (e2) {\n // no op\n }\n }\n }\n\n private _isValidURL(str: string) {\n const pattern = new RegExp(\n '^(https?:\\\\/\\\\/)?' + // protocol\n '((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|' + // domain name\n '((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))' + // OR ip (v4) address\n '(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*' + // port and path\n '(\\\\?[;&a-z\\\\d%_.~+=-]*)?' + // query string\n '(\\\\#[-a-z\\\\d_]*)?$',\n 'i',\n ); // fragment locator\n return !!pattern.test(str);\n }\n}\n","// NG2\nimport { AfterViewInit, Component, Input, QueryList, ViewChildren } from '@angular/core';\nimport { NovoAvatarElement } from './Avatar';\n\n@Component({\n selector: 'novo-avatar-stack',\n styleUrls: ['./AvatarStack.scss'],\n template: `\n <ng-content></ng-content>\n <novo-avatar *ngIf=\"showTotal\" label=\"+5\"></novo-avatar>\n `,\n standalone: false\n})\nexport class NovoAvatarStackElement implements AfterViewInit {\n @Input()\n total: number = 0;\n @ViewChildren(NovoAvatarElement)\n viewChildren!: QueryList<NovoAvatarElement>;\n\n showTotal: boolean = false;\n remainingCount: number = 0;\n ngAfterViewInit() {\n // viewChildren is set\n if (this.total - this.viewChildren.length > 0) {\n this.remainingCount = this.total - this.viewChildren.length;\n this.showTotal = true;\n }\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n// APP\nimport { NovoAvatarElement } from './Avatar';\nimport { NovoAvatarStackElement } from './AvatarStack';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [NovoAvatarElement, NovoAvatarStackElement],\n exports: [NovoAvatarElement, NovoAvatarStackElement],\n})\nexport class NovoAvatarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.NovoAvatarElement"],"mappings":"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"}
|
|
@@ -84,7 +84,6 @@ class NovoCheckboxElement {
|
|
|
84
84
|
this.onSelect = new EventEmitter();
|
|
85
85
|
this.onModelChange = () => { };
|
|
86
86
|
this.onModelTouched = () => { };
|
|
87
|
-
// this.color = this.defaultColor = this._options.color || defaults.color;
|
|
88
87
|
this.tabIndex = parseInt(tabIndex, 10) || 0;
|
|
89
88
|
}
|
|
90
89
|
ngOnInit() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"novo-elements-elements-checkbox.mjs","sources":["../../../projects/novo-elements/src/elements/checkbox/Checkbox.ts","../../../projects/novo-elements/src/elements/checkbox/CheckList.ts","../../../projects/novo-elements/src/elements/checkbox/Checkbox.module.ts","../../../projects/novo-elements/src/elements/checkbox/novo-elements-elements-checkbox.ts"],"sourcesContent":["// NG2\nimport { FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n Attribute,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { BooleanInput, Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst CHECKBOX_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoCheckboxElement),\n multi: true,\n};\n\n/** Change event object emitted by NovoCheckbox. */\nexport class NovoCheckboxChange {\n /** The source NovoCheckbox of the event. */\n source: NovoCheckboxElement;\n /** The new `checked` value of the checkbox. */\n checked: boolean;\n}\n\nconst LAYOUT_DEFAULTS = { iconStyle: 'box' };\nlet nextId = 0;\n@Component({\n selector: 'novo-checkbox',\n providers: [CHECKBOX_VALUE_ACCESSOR],\n styleUrls: ['./Checkbox.scss'],\n template: `\n <div class=\"novo-checkbox-group\" [class.checked]=\"checked\" [class.disabled]=\"disabled\">\n <input\n #input\n type=\"checkbox\"\n [required]=\"_required\"\n [checked]=\"checked\"\n [id]=\"id\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"_getAriaChecked()\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"_onInteractionEvent($event)\"\n (click)=\"_onInputClick($event)\"\n />\n <label [attr.for]=\"name\" (click)=\"select($event)\" [class.disabled]=\"disabled\">\n <i\n [class.bhi-checkbox-empty]=\"!checked && !indeterminate && boxIcon\"\n [class.bhi-checkbox-filled]=\"checked && !indeterminate && boxIcon\"\n [class.bhi-checkbox-indeterminate]=\"indeterminate && boxIcon\"\n [class.bhi-circle-o]=\"!checked && !indeterminate && !boxIcon\"\n [class.bhi-check]=\"checked && !indeterminate && !boxIcon\"\n [class.bhi-circle]=\"indeterminate && !boxIcon\"\n ></i>\n <span *ngIf=\"label\">{{ label }}</span>\n <span *ngIf=\"!label\" class=\"novo-checkbox-text\"><ng-content></ng-content></span>\n </label>\n </div>\n `,\n host: {\n class: 'novo-checkbox',\n '[class.has-label]': 'label',\n },\n standalone: false\n})\nexport class NovoCheckboxElement implements ControlValueAccessor, OnInit {\n /**\n * Attached to the aria-label attribute of the host element. In most cases, aria-labelledby will\n * take precedence so this may be omitted.\n */\n @Input('aria-label') ariaLabel: string = '';\n\n /**\n * Users can specify the `aria-labelledby` attribute which will be forwarded to the input element\n */\n @Input('aria-labelledby') ariaLabelledby: string | null = null;\n\n /** The 'aria-describedby' attribute is read after the element's label and field type. */\n @Input('aria-describedby') ariaDescribedby: string;\n\n private _uniqueId: string = `novo-checkbox-${++nextId}`;\n boxIcon: boolean = true;\n\n @Input() id: string = this._uniqueId;\n @Input() name: string = this._uniqueId;\n @Input() label: string;\n @Input() disabled: boolean = false;\n @Input() layoutOptions: { iconStyle?: string }; // TODO - avoid configs like this\n @Input() color: string;\n /** The value attribute of the native input element */\n @Input() value: string;\n @Input() tabIndex: number;\n\n /** Whether the checkbox is required. */\n @Input()\n get required(): boolean {\n return this._required;\n }\n set required(value: boolean) {\n this._required = coerceBooleanProperty(value);\n }\n _required: boolean;\n\n /** Whether the checkbox is checked. */\n @BooleanInput()\n @Input()\n get checked(): boolean {\n return this._checked;\n }\n set checked(value: boolean) {\n if (value !== this.checked) {\n this._checked = value;\n this._cdr.markForCheck();\n }\n }\n _checked: boolean = false;\n\n @BooleanInput()\n @Input()\n get indeterminate(): boolean {\n return this._indeterminate;\n }\n set indeterminate(value: boolean) {\n const changed = value !== this._indeterminate;\n this._indeterminate = coerceBooleanProperty(value);\n if (changed) {\n this.indeterminateChange.emit(this._indeterminate);\n }\n this._syncIndeterminate(this._indeterminate);\n }\n _indeterminate: boolean = false;\n\n /** The native `<input type=\"checkbox\">` element */\n @ViewChild('input') _inputElement: ElementRef<HTMLInputElement>;\n\n /** Event emitted when the checkbox's `checked` value changes. */\n @Output() readonly change: EventEmitter<NovoCheckboxChange> = new EventEmitter<NovoCheckboxChange>();\n\n /** Event emitted when the checkbox's `indeterminate` value changes. */\n @Output() readonly indeterminateChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @Output() onSelect: EventEmitter<any> = new EventEmitter();\n\n\n onModelChange: Function = () => {};\n onModelTouched: Function = () => {};\n\n constructor(private _cdr: ChangeDetectorRef, private _focusMonitor: FocusMonitor, @Attribute('tabindex') tabIndex: string) {\n // this.color = this.defaultColor = this._options.color || defaults.color;\n this.tabIndex = parseInt(tabIndex, 10) || 0;\n }\n\n ngOnInit() {\n this.layoutOptions = Object.assign({}, LAYOUT_DEFAULTS, this.layoutOptions);\n this.boxIcon = this.layoutOptions.iconStyle === 'box';\n }\n\n select(event: Event) {\n Helpers.swallowEvent(event);\n if (!this.disabled) {\n this.checked = !this.checked;\n this.onModelChange(this.checked);\n this.onSelect.emit({ originalEvent: event, value: this.checked });\n }\n }\n\n // Implemented as part of ControlValueAccessor.\n writeValue(value: any) {\n this.checked = !!value;\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n\n _getAriaChecked(): 'true' | 'false' | 'mixed' {\n if (this.checked) {\n return 'true';\n }\n\n return this.indeterminate ? 'mixed' : 'false';\n }\n\n private _emitChangeEvent() {\n const event = new NovoCheckboxChange();\n event.source = this;\n event.checked = this.checked;\n\n this.onModelChange(this.checked);\n this.change.emit(event);\n\n // Assigning the value again here is redundant, but we have to do it in case it was\n // changed inside the `change` listener which will cause the input to be out of sync.\n if (this._inputElement) {\n this._inputElement.nativeElement.checked = this.checked;\n }\n }\n\n /** Toggles the `checked` state of the checkbox. */\n toggle(): void {\n this.checked = !this.checked;\n }\n\n /**\n * Event handler for checkbox input element.\n * Toggles checked state if element is not disabled.\n * Do not toggle on (change) event since IE doesn't fire change event when\n * indeterminate checkbox is clicked.\n * @param event\n */\n _onInputClick(event: Event) {\n // We have to stop propagation for click events on the visual hidden input element.\n // By default, when a user clicks on a label element, a generated click event will be\n // dispatched on the associated input element. Since we are using a label element as our\n // root container, the click event on the `checkbox` will be executed twice.\n // The real click event will bubble up, and the generated click event also tries to bubble up.\n // This will lead to multiple click events.\n // Preventing bubbling for the second event will solve that issue.\n event.stopPropagation();\n if (!this.disabled) {\n // When user manually click on the checkbox, `indeterminate` is set to false.\n if (this.indeterminate) {\n Promise.resolve().then(() => {\n this._indeterminate = false;\n this.indeterminateChange.emit(this._indeterminate);\n });\n }\n this.toggle();\n // Emit our custom change event if the native input emitted one.\n // It is important to only emit it, if the native input triggered one, because\n // we don't want to trigger a change event, when the `checked` variable changes for example.\n this._emitChangeEvent();\n }\n }\n\n /** Focuses the checkbox. */\n focus(origin?: FocusOrigin, options?: FocusOptions): void {\n if (origin) {\n this._focusMonitor.focusVia(this._inputElement, origin, options);\n } else {\n this._inputElement.nativeElement.focus(options);\n }\n }\n\n _onInteractionEvent(event: Event) {\n // We always have to stop propagation on the change event.\n // Otherwise the change event, from the input element, will bubble up and\n // emit its event object to the `change` output.\n event.stopPropagation();\n }\n\n private _syncIndeterminate(value: boolean) {\n const nativeCheckbox = this._inputElement;\n if (nativeCheckbox) {\n nativeCheckbox.nativeElement.indeterminate = value;\n }\n }\n}\n","// NG2\nimport { Component, EventEmitter, forwardRef, Input, OnInit, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// APP\nimport { Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst CHECKLIST_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoCheckListElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-check-list',\n styleUrls: ['./CheckList.scss'],\n providers: [CHECKLIST_VALUE_ACCESSOR],\n template: `\n <div\n class=\"novo-checkbox-group\"\n *ngFor=\"let option of _options; let i = index\"\n [ngClass]=\"{ checked: option.checked }\"\n [class.disabled]=\"disabled\"\n [attr.data-automation-id]=\"option.label\"\n >\n <input\n [name]=\"name\"\n type=\"checkbox\"\n [ngModel]=\"option.checked\"\n [attr.id]=\"name + i\"\n [value]=\"option.checked\"\n (change)=\"select($event, option)\"\n [disabled]=\"disabled\"\n />\n <label [attr.for]=\"name + i\" (click)=\"select($event, option)\">\n <i [ngClass]=\"{ 'bhi-checkbox-empty': !option.checked, 'bhi-checkbox-filled': option.checked }\"></i>\n <span>{{ option.label }}</span>\n </label>\n </div>\n `,\n standalone: false\n})\nexport class NovoCheckListElement implements ControlValueAccessor, OnInit {\n @Input() name: string;\n @Input() options: Array<any>;\n @Input() disabled: boolean;\n @Output() onSelect: EventEmitter<any> = new EventEmitter();\n\n _options: Array<any>;\n model: any;\n onModelChange: Function = () => {};\n onModelTouched: Function = () => {};\n\n ngOnInit() {\n this.setModel();\n this.setupOptions();\n }\n\n select(event, item) {\n Helpers.swallowEvent(event);\n if (!this.disabled) {\n item.checked = !item.checked;\n this.model = this._options.filter((checkBox) => checkBox.checked).map((x) => x.value);\n this.onModelChange(this.model.length > 0 ? this.model : '');\n this.onSelect.emit({ selected: this.model });\n }\n }\n\n setupOptions() {\n this.options = this.options || [];\n this._options = [];\n if (this.options.length && !this.options[0].value) {\n this.options.forEach((option) => {\n const formattedOption = {\n value: option,\n label: option,\n checked: this.model && this.model.length && this.model.indexOf(option.value) !== -1,\n };\n this._options.push(formattedOption);\n });\n } else {\n this.options.forEach((option) => {\n const formattedOption = option;\n formattedOption.checked = this.model && this.model.length && this.model.indexOf(option.value) !== -1;\n this._options.push(formattedOption);\n });\n }\n }\n\n setModel(): void {\n const checkedOptions = this.options.filter((checkBox) => checkBox.checked).map((x) => x.value);\n this.writeValue(checkedOptions);\n }\n\n writeValue(model: any): void {\n this.model = model || [];\n if (model) {\n this.setupOptions();\n }\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n}\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { NovoCheckboxElement } from './Checkbox';\nimport { NovoCheckListElement } from './CheckList';\n\n@NgModule({\n imports: [CommonModule, A11yModule, FormsModule],\n declarations: [NovoCheckboxElement, NovoCheckListElement],\n exports: [NovoCheckboxElement, NovoCheckListElement],\n})\nexport class NovoCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"novo-elements-elements-checkbox.mjs","sources":["../../../projects/novo-elements/src/elements/checkbox/Checkbox.ts","../../../projects/novo-elements/src/elements/checkbox/CheckList.ts","../../../projects/novo-elements/src/elements/checkbox/Checkbox.module.ts","../../../projects/novo-elements/src/elements/checkbox/novo-elements-elements-checkbox.ts"],"sourcesContent":["// NG2\nimport { FocusMonitor, FocusOrigin } from '@angular/cdk/a11y';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n Attribute,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { BooleanInput, Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst CHECKBOX_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoCheckboxElement),\n multi: true,\n};\n\n/** Change event object emitted by NovoCheckbox. */\nexport class NovoCheckboxChange {\n /** The source NovoCheckbox of the event. */\n source: NovoCheckboxElement;\n /** The new `checked` value of the checkbox. */\n checked: boolean;\n}\n\nconst LAYOUT_DEFAULTS = { iconStyle: 'box' };\nlet nextId = 0;\n@Component({\n selector: 'novo-checkbox',\n providers: [CHECKBOX_VALUE_ACCESSOR],\n styleUrls: ['./Checkbox.scss'],\n template: `\n <div class=\"novo-checkbox-group\" [class.checked]=\"checked\" [class.disabled]=\"disabled\">\n <input\n #input\n type=\"checkbox\"\n [required]=\"_required\"\n [checked]=\"checked\"\n [id]=\"id\"\n [attr.name]=\"name\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"_getAriaChecked()\"\n [attr.aria-describedby]=\"ariaDescribedby\"\n (change)=\"_onInteractionEvent($event)\"\n (click)=\"_onInputClick($event)\"\n />\n <label [attr.for]=\"name\" (click)=\"select($event)\" [class.disabled]=\"disabled\">\n <i\n [class.bhi-checkbox-empty]=\"!checked && !indeterminate && boxIcon\"\n [class.bhi-checkbox-filled]=\"checked && !indeterminate && boxIcon\"\n [class.bhi-checkbox-indeterminate]=\"indeterminate && boxIcon\"\n [class.bhi-circle-o]=\"!checked && !indeterminate && !boxIcon\"\n [class.bhi-check]=\"checked && !indeterminate && !boxIcon\"\n [class.bhi-circle]=\"indeterminate && !boxIcon\"\n ></i>\n <span *ngIf=\"label\">{{ label }}</span>\n <span *ngIf=\"!label\" class=\"novo-checkbox-text\"><ng-content></ng-content></span>\n </label>\n </div>\n `,\n host: {\n class: 'novo-checkbox',\n '[class.has-label]': 'label',\n },\n standalone: false\n})\nexport class NovoCheckboxElement implements ControlValueAccessor, OnInit {\n /**\n * Attached to the aria-label attribute of the host element. In most cases, aria-labelledby will\n * take precedence so this may be omitted.\n */\n @Input('aria-label') ariaLabel: string = '';\n\n /**\n * Users can specify the `aria-labelledby` attribute which will be forwarded to the input element\n */\n @Input('aria-labelledby') ariaLabelledby: string | null = null;\n\n /** The 'aria-describedby' attribute is read after the element's label and field type. */\n @Input('aria-describedby') ariaDescribedby: string;\n\n private _uniqueId: string = `novo-checkbox-${++nextId}`;\n boxIcon: boolean = true;\n\n @Input() id: string = this._uniqueId;\n @Input() name: string = this._uniqueId;\n @Input() label: string;\n @Input() disabled: boolean = false;\n @Input() layoutOptions: { iconStyle?: string }; // TODO - avoid configs like this\n @Input() color: string;\n /** The value attribute of the native input element */\n @Input() value: string;\n @Input() tabIndex: number;\n\n /** Whether the checkbox is required. */\n @Input()\n get required(): boolean {\n return this._required;\n }\n set required(value: boolean) {\n this._required = coerceBooleanProperty(value);\n }\n _required: boolean;\n\n /** Whether the checkbox is checked. */\n @BooleanInput()\n @Input()\n get checked(): boolean {\n return this._checked;\n }\n set checked(value: boolean) {\n if (value !== this.checked) {\n this._checked = value;\n this._cdr.markForCheck();\n }\n }\n _checked: boolean = false;\n\n @BooleanInput()\n @Input()\n get indeterminate(): boolean {\n return this._indeterminate;\n }\n set indeterminate(value: boolean) {\n const changed = value !== this._indeterminate;\n this._indeterminate = coerceBooleanProperty(value);\n if (changed) {\n this.indeterminateChange.emit(this._indeterminate);\n }\n this._syncIndeterminate(this._indeterminate);\n }\n _indeterminate: boolean = false;\n\n /** The native `<input type=\"checkbox\">` element */\n @ViewChild('input') _inputElement: ElementRef<HTMLInputElement>;\n\n /** Event emitted when the checkbox's `checked` value changes. */\n @Output() readonly change: EventEmitter<NovoCheckboxChange> = new EventEmitter<NovoCheckboxChange>();\n\n /** Event emitted when the checkbox's `indeterminate` value changes. */\n @Output() readonly indeterminateChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @Output() onSelect: EventEmitter<any> = new EventEmitter();\n\n\n onModelChange: Function = () => {};\n onModelTouched: Function = () => {};\n\n constructor(private _cdr: ChangeDetectorRef, private _focusMonitor: FocusMonitor, @Attribute('tabindex') tabIndex: string) {\n this.tabIndex = parseInt(tabIndex, 10) || 0;\n }\n\n ngOnInit() {\n this.layoutOptions = Object.assign({}, LAYOUT_DEFAULTS, this.layoutOptions);\n this.boxIcon = this.layoutOptions.iconStyle === 'box';\n }\n\n select(event: Event) {\n Helpers.swallowEvent(event);\n if (!this.disabled) {\n this.checked = !this.checked;\n this.onModelChange(this.checked);\n this.onSelect.emit({ originalEvent: event, value: this.checked });\n }\n }\n\n // Implemented as part of ControlValueAccessor.\n writeValue(value: any) {\n this.checked = !!value;\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n\n _getAriaChecked(): 'true' | 'false' | 'mixed' {\n if (this.checked) {\n return 'true';\n }\n\n return this.indeterminate ? 'mixed' : 'false';\n }\n\n private _emitChangeEvent() {\n const event = new NovoCheckboxChange();\n event.source = this;\n event.checked = this.checked;\n\n this.onModelChange(this.checked);\n this.change.emit(event);\n\n // Assigning the value again here is redundant, but we have to do it in case it was\n // changed inside the `change` listener which will cause the input to be out of sync.\n if (this._inputElement) {\n this._inputElement.nativeElement.checked = this.checked;\n }\n }\n\n /** Toggles the `checked` state of the checkbox. */\n toggle(): void {\n this.checked = !this.checked;\n }\n\n /**\n * Event handler for checkbox input element.\n * Toggles checked state if element is not disabled.\n * Do not toggle on (change) event since IE doesn't fire change event when\n * indeterminate checkbox is clicked.\n * @param event\n */\n _onInputClick(event: Event) {\n // We have to stop propagation for click events on the visual hidden input element.\n // By default, when a user clicks on a label element, a generated click event will be\n // dispatched on the associated input element. Since we are using a label element as our\n // root container, the click event on the `checkbox` will be executed twice.\n // The real click event will bubble up, and the generated click event also tries to bubble up.\n // This will lead to multiple click events.\n // Preventing bubbling for the second event will solve that issue.\n event.stopPropagation();\n if (!this.disabled) {\n // When user manually click on the checkbox, `indeterminate` is set to false.\n if (this.indeterminate) {\n Promise.resolve().then(() => {\n this._indeterminate = false;\n this.indeterminateChange.emit(this._indeterminate);\n });\n }\n this.toggle();\n // Emit our custom change event if the native input emitted one.\n // It is important to only emit it, if the native input triggered one, because\n // we don't want to trigger a change event, when the `checked` variable changes for example.\n this._emitChangeEvent();\n }\n }\n\n /** Focuses the checkbox. */\n focus(origin?: FocusOrigin, options?: FocusOptions): void {\n if (origin) {\n this._focusMonitor.focusVia(this._inputElement, origin, options);\n } else {\n this._inputElement.nativeElement.focus(options);\n }\n }\n\n _onInteractionEvent(event: Event) {\n // We always have to stop propagation on the change event.\n // Otherwise the change event, from the input element, will bubble up and\n // emit its event object to the `change` output.\n event.stopPropagation();\n }\n\n private _syncIndeterminate(value: boolean) {\n const nativeCheckbox = this._inputElement;\n if (nativeCheckbox) {\n nativeCheckbox.nativeElement.indeterminate = value;\n }\n }\n}\n","// NG2\nimport { Component, EventEmitter, forwardRef, Input, OnInit, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// APP\nimport { Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst CHECKLIST_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoCheckListElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-check-list',\n styleUrls: ['./CheckList.scss'],\n providers: [CHECKLIST_VALUE_ACCESSOR],\n template: `\n <div\n class=\"novo-checkbox-group\"\n *ngFor=\"let option of _options; let i = index\"\n [ngClass]=\"{ checked: option.checked }\"\n [class.disabled]=\"disabled\"\n [attr.data-automation-id]=\"option.label\"\n >\n <input\n [name]=\"name\"\n type=\"checkbox\"\n [ngModel]=\"option.checked\"\n [attr.id]=\"name + i\"\n [value]=\"option.checked\"\n (change)=\"select($event, option)\"\n [disabled]=\"disabled\"\n />\n <label [attr.for]=\"name + i\" (click)=\"select($event, option)\">\n <i [ngClass]=\"{ 'bhi-checkbox-empty': !option.checked, 'bhi-checkbox-filled': option.checked }\"></i>\n <span>{{ option.label }}</span>\n </label>\n </div>\n `,\n standalone: false\n})\nexport class NovoCheckListElement implements ControlValueAccessor, OnInit {\n @Input() name: string;\n @Input() options: Array<any>;\n @Input() disabled: boolean;\n @Output() onSelect: EventEmitter<any> = new EventEmitter();\n\n _options: Array<any>;\n model: any;\n onModelChange: Function = () => {};\n onModelTouched: Function = () => {};\n\n ngOnInit() {\n this.setModel();\n this.setupOptions();\n }\n\n select(event, item) {\n Helpers.swallowEvent(event);\n if (!this.disabled) {\n item.checked = !item.checked;\n this.model = this._options.filter((checkBox) => checkBox.checked).map((x) => x.value);\n this.onModelChange(this.model.length > 0 ? this.model : '');\n this.onSelect.emit({ selected: this.model });\n }\n }\n\n setupOptions() {\n this.options = this.options || [];\n this._options = [];\n if (this.options.length && !this.options[0].value) {\n this.options.forEach((option) => {\n const formattedOption = {\n value: option,\n label: option,\n checked: this.model && this.model.length && this.model.indexOf(option.value) !== -1,\n };\n this._options.push(formattedOption);\n });\n } else {\n this.options.forEach((option) => {\n const formattedOption = option;\n formattedOption.checked = this.model && this.model.length && this.model.indexOf(option.value) !== -1;\n this._options.push(formattedOption);\n });\n }\n }\n\n setModel(): void {\n const checkedOptions = this.options.filter((checkBox) => checkBox.checked).map((x) => x.value);\n this.writeValue(checkedOptions);\n }\n\n writeValue(model: any): void {\n this.model = model || [];\n if (model) {\n this.setupOptions();\n }\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n}\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { NovoCheckboxElement } from './Checkbox';\nimport { NovoCheckListElement } from './CheckList';\n\n@NgModule({\n imports: [CommonModule, A11yModule, FormsModule],\n declarations: [NovoCheckboxElement, NovoCheckListElement],\n exports: [NovoCheckboxElement, NovoCheckListElement],\n})\nexport class NovoCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1"],"mappings":"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"}
|
|
@@ -144,7 +144,6 @@ class NovoColorPickerComponent {
|
|
|
144
144
|
}
|
|
145
145
|
handleBlockChange({ hex, $event }) {
|
|
146
146
|
if (Color.isValidHex(hex)) {
|
|
147
|
-
// this.hex = hex;
|
|
148
147
|
this.handleChange({ hex, source: 'hex' }, $event);
|
|
149
148
|
}
|
|
150
149
|
}
|
|
@@ -302,9 +301,6 @@ class NovoColorInputElement {
|
|
|
302
301
|
}
|
|
303
302
|
}
|
|
304
303
|
_handleInput(event) {
|
|
305
|
-
if (document.activeElement === event.target) {
|
|
306
|
-
// this._handleEvent(event, false);
|
|
307
|
-
}
|
|
308
304
|
}
|
|
309
305
|
_handleBlur(event) {
|
|
310
306
|
this.blurEvent.emit(event);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"novo-elements-elements-color-picker.mjs","sources":["../../../projects/novo-elements/src/elements/color-picker/color-swatch.component.ts","../../../projects/novo-elements/src/elements/color-picker/color-picker.component.ts","../../../projects/novo-elements/src/elements/color-picker/color-input.component.ts","../../../projects/novo-elements/src/elements/color-picker/color-picker.module.ts","../../../projects/novo-elements/src/elements/color-picker/novo-elements-elements-color-picker.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'novo-color-swatch',\n template: `\n <div\n class=\"swatch\"\n [ngStyle]=\"currentStyles()\"\n [attr.title]=\"color\"\n (click)=\"handleClick(color, $event)\"\n (keydown.enter)=\"handleClick(color, $event)\"\n (focus)=\"handleFocus()\"\n (blur)=\"handleFocusOut()\"\n (mouseover)=\"handleHover(color, $event)\"\n tabindex=\"0\"\n >\n <ng-content></ng-content>\n </div>\n `,\n styles: [\n `\n .swatch {\n border-radius: 0.4rem;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class NovoColorSwatchComponent implements OnInit {\n @Input() color!: string;\n @Input() style: { [key: string]: string } = {};\n @Input() focusStyle: { [key: string]: string } = {};\n @Input() focus!: boolean;\n @Output() onClick = new EventEmitter<any>();\n @Output() onHover = new EventEmitter<any>();\n divStyles: { [key: string]: string } = {};\n focusStyles: { [key: string]: string } = {};\n inFocus = false;\n\n ngOnInit() {\n this.divStyles = {\n background: this.color as string,\n height: '100%',\n width: '100%',\n cursor: 'pointer',\n position: 'relative',\n outline: 'none',\n ...this.style,\n };\n }\n currentStyles() {\n this.focusStyles = {\n ...this.divStyles,\n ...this.focusStyle,\n };\n return this.focus || this.inFocus ? this.focusStyles : this.divStyles;\n }\n handleFocusOut() {\n this.inFocus = false;\n }\n handleFocus() {\n this.inFocus = true;\n }\n handleHover(hex: string, $event) {\n this.onHover.emit({ hex, $event });\n }\n handleClick(hex: string, $event) {\n this.onClick.emit({ hex, $event });\n }\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { Color, HSL, HSLA, HSV, HSVA, RGB, RGBA } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-color-picker',\n template: `\n <div class=\"novo-color-preview\" [style.backgroundColor]=\"currentColor.hex\">\n <div class=\"novo-color-preview-text\">{{ hex }}</div>\n </div>\n <div class=\"novo-color-swatches\">\n <novo-color-swatch\n *ngFor=\"let color of colors\"\n [color]=\"color\"\n (onClick)=\"handleBlockChange($event)\"\n (onHover)=\"handleSwatchHover($event)\"\n ></novo-color-swatch>\n </div>\n <div class=\"novo-color-input\">\n <input [value]=\"hex.replace('#', '')\" (onChange)=\"handleValueChange($event)\" />\n </div>\n `,\n styleUrls: ['./color-picker.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n standalone: false\n})\nexport class NovoColorPickerComponent implements OnInit, OnChanges, OnDestroy {\n /** Pixel value for picker width */\n @Input() width: string | number = 276;\n /** Color squares to display */\n @Input() colors = ['#FF6900', '#FCB900', '#7BDCB5', '#00D084', '#8ED1FC', '#0693E3', '#ABB8C3', '#EB144C', '#F78DA7', '#9900EF'];\n @Input() color: HSLA | HSVA | RGBA | string = {\n h: 250,\n s: 0.5,\n l: 0.2,\n a: 1,\n };\n @Output() onChange = new EventEmitter<any>();\n @Output() onChangeComplete = new EventEmitter<any>();\n @Output() onSwatchHover = new EventEmitter<any>();\n hsl!: HSL;\n hsv!: HSV;\n rgb!: RGB;\n hex!: string;\n currentColor!: Color;\n changes!: Subscription;\n\n swatchStyle: { [key: string]: string } = {\n width: '30px',\n height: '30px',\n borderRadius: '4px',\n fontSize: '0',\n };\n input: { [key: string]: string } = {\n borderRadius: '4px',\n borderBottomLeftRadius: '0',\n borderTopLeftRadius: '0',\n border: '1px solid #e6ecf0',\n boxSizing: 'border-box',\n display: 'inline',\n fontSize: '14px',\n height: '30px',\n padding: '0',\n paddingLeft: '6px',\n width: '100%',\n color: '#657786',\n };\n\n focus(color: string) {\n return { boxShadow: `0 0 4px ${color}` };\n }\n\n handleBlockChange({ hex, $event }: any) {\n if (Color.isValidHex(hex)) {\n // this.hex = hex;\n this.handleChange({ hex, source: 'hex' }, $event);\n }\n }\n\n handleValueChange({ data, $event }: any) {\n this.handleBlockChange({ hex: data, $event });\n }\n\n ngOnInit() {\n this.changes = this.onChange.pipe(debounceTime(100)).subscribe((x) => this.onChangeComplete.emit(x));\n this.setState(new Color(this.color));\n }\n\n ngOnChanges() {\n this.setState(new Color(this.color));\n }\n\n ngOnDestroy() {\n this.changes.unsubscribe();\n }\n\n setState(data: Color) {\n this.currentColor = data;\n this.hsl = data.hsl;\n this.hsv = data.hsv;\n this.rgb = data.rgb;\n this.hex = data.hex;\n this.afterValidChange();\n }\n\n handleChange(data, $event) {\n const color = new Color(data.hex);\n if (color.isValid) {\n this.setState(color);\n this.onChange.emit({ color, $event });\n this.afterValidChange();\n }\n }\n /** hook for components after a complete change */\n afterValidChange() {}\n\n handleSwatchHover($event) {\n const color = new Color($event.hex);\n if (color.isValid) {\n this.setState(color);\n this.onSwatchHover.emit({ color, $event });\n }\n }\n}\n","// NG\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers, Key } from 'novo-elements/utils';\n// App\nimport { NovoOverlayTemplateComponent } from 'novo-elements/elements/common';\n\n// Value accessor for the component (supports ngModel)\nconst COLOR_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoColorInputElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-color-input',\n providers: [COLOR_VALUE_ACCESSOR],\n template: `\n <novo-field>\n <input\n novoInput\n type=\"text\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [style.color]=\"value\"\n (focus)=\"_handleFocus($event)\"\n (keydown)=\"_handleKeydown($event)\"\n (input)=\"_handleInput($event)\"\n (blur)=\"_handleBlur($event)\"\n [(ngModel)]=\"value\"\n #input\n />\n <novo-icon *ngIf=\"!hasValue\" (click)=\"openPanel()\">complex</novo-icon>\n <novo-icon *ngIf=\"hasValue\" smaller (click)=\"clearValue()\">x</novo-icon>\n </novo-field>\n <novo-overlay-template [parent]=\"element\" position=\"above-below\">\n <novo-color-picker [(color)]=\"value\" (onChange)=\"setValueAndClose($event)\"></novo-color-picker>\n </novo-overlay-template>\n `,\n standalone: false\n})\nexport class NovoColorInputElement implements OnInit, ControlValueAccessor {\n @Input()\n name: string;\n @Input()\n placeholder: string = '#ffffff';\n @Output()\n blurEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n focusEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n /** Element for the panel containing the autocomplete options. */\n @ViewChild(NovoOverlayTemplateComponent)\n overlay: NovoOverlayTemplateComponent;\n\n @Output() change = new EventEmitter();\n @Output() blur = new EventEmitter();\n @Output() focus = new EventEmitter();\n\n private _value: string = '';\n public lastValidValue: string = '';\n private _disabled: boolean = false;\n\n @Input() get value(): string {\n return this._value;\n }\n set value(value) {\n if (this.value !== value) {\n this._value = value;\n this._setFormValue(value);\n this.onChangeCallback(this._value);\n }\n }\n\n // Disabled State\n @Input()\n @HostBinding('class.disabled')\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = !!value;\n }\n\n constructor(public element: ElementRef, public labels: NovoLabelService, private cdr: ChangeDetectorRef) {}\n\n ngOnInit() {}\n\n /** BEGIN: Convenient Panel Methods. */\n openPanel(): void {\n if (!this.disabled) {\n this.panelOpen ? this.overlay.closePanel() : this.overlay.openPanel();\n }\n }\n closePanel(): void {\n this.overlay && this.overlay.closePanel();\n }\n get panelOpen(): boolean {\n return this.overlay && this.overlay.panelOpen;\n }\n /** END: Convenient Panel Methods. */\n\n _handleKeydown(event: KeyboardEvent): void {\n if ((event.key === Key.Escape || event.key === Key.Enter || event.key === Key.Tab) && this.panelOpen) {\n this.closePanel();\n event.stopPropagation();\n }\n }\n\n _handleInput(event: KeyboardEvent): void {\n if (document.activeElement === event.target) {\n // this._handleEvent(event, false);\n }\n }\n\n _handleBlur(event: FocusEvent): void {\n this.blurEvent.emit(event);\n }\n\n _handleFocus(event: FocusEvent): void {\n this.openPanel();\n this.focusEvent.emit(event);\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.cdr.markForCheck();\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n\n registerOnChange(fn: any): void {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n private onChangeCallback = (_: any) => {\n // placeholder\n };\n\n private onTouchedCallback = () => {\n // placeholder\n };\n\n private _setFormValue(value: string): void {\n if (this.value) {\n // hmm...\n }\n }\n\n /**\n * This method closes the panel, and if a value is specified, also sets the associated\n * control to that value. It will also mark the control as dirty if this interaction\n * stemmed from the user.\n */\n public setValueAndClose(event: any): void {\n if (event) {\n this.value = event.color.hex;\n this.change.emit(this.value);\n this.closePanel();\n }\n }\n\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n public clearValue() {\n this.value = '';\n this.change.emit(this.value);\n }\n\n public get hasValue() {\n return !Helpers.isEmpty(this.value);\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// APP\nimport { NovoPipesModule } from 'novo-elements/pipes';\nimport { NovoOverlayModule } from 'novo-elements/elements/common';\nimport { NovoFieldModule } from 'novo-elements/elements/field';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { NovoColorInputElement } from './color-input.component';\nimport { NovoColorPickerComponent } from './color-picker.component';\nimport { NovoColorSwatchComponent } from './color-swatch.component';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoPipesModule, NovoFieldModule, NovoOverlayModule, NovoIconModule],\n declarations: [NovoColorPickerComponent, NovoColorInputElement, NovoColorSwatchComponent],\n exports: [NovoColorPickerComponent, NovoColorInputElement, NovoColorSwatchComponent],\n})\nexport class NovoColorPickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.NovoColorSwatchComponent","i1","i2","i7.NovoColorPickerComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"novo-elements-elements-color-picker.mjs","sources":["../../../projects/novo-elements/src/elements/color-picker/color-swatch.component.ts","../../../projects/novo-elements/src/elements/color-picker/color-picker.component.ts","../../../projects/novo-elements/src/elements/color-picker/color-input.component.ts","../../../projects/novo-elements/src/elements/color-picker/color-picker.module.ts","../../../projects/novo-elements/src/elements/color-picker/novo-elements-elements-color-picker.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\n\n@Component({\n selector: 'novo-color-swatch',\n template: `\n <div\n class=\"swatch\"\n [ngStyle]=\"currentStyles()\"\n [attr.title]=\"color\"\n (click)=\"handleClick(color, $event)\"\n (keydown.enter)=\"handleClick(color, $event)\"\n (focus)=\"handleFocus()\"\n (blur)=\"handleFocusOut()\"\n (mouseover)=\"handleHover(color, $event)\"\n tabindex=\"0\"\n >\n <ng-content></ng-content>\n </div>\n `,\n styles: [\n `\n .swatch {\n border-radius: 0.4rem;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class NovoColorSwatchComponent implements OnInit {\n @Input() color!: string;\n @Input() style: { [key: string]: string } = {};\n @Input() focusStyle: { [key: string]: string } = {};\n @Input() focus!: boolean;\n @Output() onClick = new EventEmitter<any>();\n @Output() onHover = new EventEmitter<any>();\n divStyles: { [key: string]: string } = {};\n focusStyles: { [key: string]: string } = {};\n inFocus = false;\n\n ngOnInit() {\n this.divStyles = {\n background: this.color as string,\n height: '100%',\n width: '100%',\n cursor: 'pointer',\n position: 'relative',\n outline: 'none',\n ...this.style,\n };\n }\n currentStyles() {\n this.focusStyles = {\n ...this.divStyles,\n ...this.focusStyle,\n };\n return this.focus || this.inFocus ? this.focusStyles : this.divStyles;\n }\n handleFocusOut() {\n this.inFocus = false;\n }\n handleFocus() {\n this.inFocus = true;\n }\n handleHover(hex: string, $event) {\n this.onHover.emit({ hex, $event });\n }\n handleClick(hex: string, $event) {\n this.onClick.emit({ hex, $event });\n }\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { Color, HSL, HSLA, HSV, HSVA, RGB, RGBA } from 'novo-elements/utils';\n\n@Component({\n selector: 'novo-color-picker',\n template: `\n <div class=\"novo-color-preview\" [style.backgroundColor]=\"currentColor.hex\">\n <div class=\"novo-color-preview-text\">{{ hex }}</div>\n </div>\n <div class=\"novo-color-swatches\">\n <novo-color-swatch\n *ngFor=\"let color of colors\"\n [color]=\"color\"\n (onClick)=\"handleBlockChange($event)\"\n (onHover)=\"handleSwatchHover($event)\"\n ></novo-color-swatch>\n </div>\n <div class=\"novo-color-input\">\n <input [value]=\"hex.replace('#', '')\" (onChange)=\"handleValueChange($event)\" />\n </div>\n `,\n styleUrls: ['./color-picker.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n standalone: false\n})\nexport class NovoColorPickerComponent implements OnInit, OnChanges, OnDestroy {\n /** Pixel value for picker width */\n @Input() width: string | number = 276;\n /** Color squares to display */\n @Input() colors = ['#FF6900', '#FCB900', '#7BDCB5', '#00D084', '#8ED1FC', '#0693E3', '#ABB8C3', '#EB144C', '#F78DA7', '#9900EF'];\n @Input() color: HSLA | HSVA | RGBA | string = {\n h: 250,\n s: 0.5,\n l: 0.2,\n a: 1,\n };\n @Output() onChange = new EventEmitter<any>();\n @Output() onChangeComplete = new EventEmitter<any>();\n @Output() onSwatchHover = new EventEmitter<any>();\n hsl!: HSL;\n hsv!: HSV;\n rgb!: RGB;\n hex!: string;\n currentColor!: Color;\n changes!: Subscription;\n\n swatchStyle: { [key: string]: string } = {\n width: '30px',\n height: '30px',\n borderRadius: '4px',\n fontSize: '0',\n };\n input: { [key: string]: string } = {\n borderRadius: '4px',\n borderBottomLeftRadius: '0',\n borderTopLeftRadius: '0',\n border: '1px solid #e6ecf0',\n boxSizing: 'border-box',\n display: 'inline',\n fontSize: '14px',\n height: '30px',\n padding: '0',\n paddingLeft: '6px',\n width: '100%',\n color: '#657786',\n };\n\n focus(color: string) {\n return { boxShadow: `0 0 4px ${color}` };\n }\n\n handleBlockChange({ hex, $event }: any) {\n if (Color.isValidHex(hex)) {\n this.handleChange({ hex, source: 'hex' }, $event);\n }\n }\n\n handleValueChange({ data, $event }: any) {\n this.handleBlockChange({ hex: data, $event });\n }\n\n ngOnInit() {\n this.changes = this.onChange.pipe(debounceTime(100)).subscribe((x) => this.onChangeComplete.emit(x));\n this.setState(new Color(this.color));\n }\n\n ngOnChanges() {\n this.setState(new Color(this.color));\n }\n\n ngOnDestroy() {\n this.changes.unsubscribe();\n }\n\n setState(data: Color) {\n this.currentColor = data;\n this.hsl = data.hsl;\n this.hsv = data.hsv;\n this.rgb = data.rgb;\n this.hex = data.hex;\n this.afterValidChange();\n }\n\n handleChange(data, $event) {\n const color = new Color(data.hex);\n if (color.isValid) {\n this.setState(color);\n this.onChange.emit({ color, $event });\n this.afterValidChange();\n }\n }\n /** hook for components after a complete change */\n afterValidChange() {}\n\n handleSwatchHover($event) {\n const color = new Color($event.hex);\n if (color.isValid) {\n this.setState(color);\n this.onSwatchHover.emit({ color, $event });\n }\n }\n}\n","// NG\nimport {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers, Key } from 'novo-elements/utils';\n// App\nimport { NovoOverlayTemplateComponent } from 'novo-elements/elements/common';\n\n// Value accessor for the component (supports ngModel)\nconst COLOR_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoColorInputElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-color-input',\n providers: [COLOR_VALUE_ACCESSOR],\n template: `\n <novo-field>\n <input\n novoInput\n type=\"text\"\n [name]=\"name\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [style.color]=\"value\"\n (focus)=\"_handleFocus($event)\"\n (keydown)=\"_handleKeydown($event)\"\n (input)=\"_handleInput($event)\"\n (blur)=\"_handleBlur($event)\"\n [(ngModel)]=\"value\"\n #input\n />\n <novo-icon *ngIf=\"!hasValue\" (click)=\"openPanel()\">complex</novo-icon>\n <novo-icon *ngIf=\"hasValue\" smaller (click)=\"clearValue()\">x</novo-icon>\n </novo-field>\n <novo-overlay-template [parent]=\"element\" position=\"above-below\">\n <novo-color-picker [(color)]=\"value\" (onChange)=\"setValueAndClose($event)\"></novo-color-picker>\n </novo-overlay-template>\n `,\n standalone: false\n})\nexport class NovoColorInputElement implements OnInit, ControlValueAccessor {\n @Input()\n name: string;\n @Input()\n placeholder: string = '#ffffff';\n @Output()\n blurEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n focusEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n /** Element for the panel containing the autocomplete options. */\n @ViewChild(NovoOverlayTemplateComponent)\n overlay: NovoOverlayTemplateComponent;\n\n @Output() change = new EventEmitter();\n @Output() blur = new EventEmitter();\n @Output() focus = new EventEmitter();\n\n private _value: string = '';\n public lastValidValue: string = '';\n private _disabled: boolean = false;\n\n @Input() get value(): string {\n return this._value;\n }\n set value(value) {\n if (this.value !== value) {\n this._value = value;\n this._setFormValue(value);\n this.onChangeCallback(this._value);\n }\n }\n\n // Disabled State\n @Input()\n @HostBinding('class.disabled')\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = !!value;\n }\n\n constructor(public element: ElementRef, public labels: NovoLabelService, private cdr: ChangeDetectorRef) {}\n\n ngOnInit() {}\n\n /** BEGIN: Convenient Panel Methods. */\n openPanel(): void {\n if (!this.disabled) {\n this.panelOpen ? this.overlay.closePanel() : this.overlay.openPanel();\n }\n }\n closePanel(): void {\n this.overlay && this.overlay.closePanel();\n }\n get panelOpen(): boolean {\n return this.overlay && this.overlay.panelOpen;\n }\n /** END: Convenient Panel Methods. */\n\n _handleKeydown(event: KeyboardEvent): void {\n if ((event.key === Key.Escape || event.key === Key.Enter || event.key === Key.Tab) && this.panelOpen) {\n this.closePanel();\n event.stopPropagation();\n }\n }\n\n _handleInput(event: KeyboardEvent): void {\n }\n\n _handleBlur(event: FocusEvent): void {\n this.blurEvent.emit(event);\n }\n\n _handleFocus(event: FocusEvent): void {\n this.openPanel();\n this.focusEvent.emit(event);\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.cdr.markForCheck();\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n\n registerOnChange(fn: any): void {\n this.onChangeCallback = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n private onChangeCallback = (_: any) => {\n // placeholder\n };\n\n private onTouchedCallback = () => {\n // placeholder\n };\n\n private _setFormValue(value: string): void {\n if (this.value) {\n // hmm...\n }\n }\n\n /**\n * This method closes the panel, and if a value is specified, also sets the associated\n * control to that value. It will also mark the control as dirty if this interaction\n * stemmed from the user.\n */\n public setValueAndClose(event: any): void {\n if (event) {\n this.value = event.color.hex;\n this.change.emit(this.value);\n this.closePanel();\n }\n }\n\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n public clearValue() {\n this.value = '';\n this.change.emit(this.value);\n }\n\n public get hasValue() {\n return !Helpers.isEmpty(this.value);\n }\n}\n","// NG2\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n// APP\nimport { NovoPipesModule } from 'novo-elements/pipes';\nimport { NovoOverlayModule } from 'novo-elements/elements/common';\nimport { NovoFieldModule } from 'novo-elements/elements/field';\nimport { NovoIconModule } from 'novo-elements/elements/icon';\nimport { NovoColorInputElement } from './color-input.component';\nimport { NovoColorPickerComponent } from './color-picker.component';\nimport { NovoColorSwatchComponent } from './color-swatch.component';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoPipesModule, NovoFieldModule, NovoOverlayModule, NovoIconModule],\n declarations: [NovoColorPickerComponent, NovoColorInputElement, NovoColorSwatchComponent],\n exports: [NovoColorPickerComponent, NovoColorInputElement, NovoColorSwatchComponent],\n})\nexport class NovoColorPickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.NovoColorSwatchComponent","i1","i2","i7.NovoColorPickerComponent"],"mappings":"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"}
|
|
@@ -123,15 +123,6 @@ function isValidColor$1(color) {
|
|
|
123
123
|
|
|
124
124
|
// tslint:disable: directive-selector
|
|
125
125
|
class BorderDirective {
|
|
126
|
-
// @HostBinding('style.borderStyle') get getBorderStyle() {
|
|
127
|
-
// return this.border;
|
|
128
|
-
// }
|
|
129
|
-
// @HostBinding('style.borderWidth') get getBorderWidth() {
|
|
130
|
-
// return this.width;
|
|
131
|
-
// }
|
|
132
|
-
// @HostBinding('style.borderColor') get getBorderColor() {
|
|
133
|
-
// return this.borderColor;
|
|
134
|
-
// }
|
|
135
126
|
get hb_border() {
|
|
136
127
|
return `border-${this.border}`;
|
|
137
128
|
}
|
|
@@ -283,7 +274,6 @@ class FlexDirective {
|
|
|
283
274
|
constructor(el, renderer) {
|
|
284
275
|
this.el = el;
|
|
285
276
|
this.renderer = renderer;
|
|
286
|
-
// this.renderer.setStyle(this.el.nativeElement, 'display', 'flex');
|
|
287
277
|
}
|
|
288
278
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: FlexDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
289
279
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: FlexDirective, isStandalone: false, selector: "[flex]", inputs: { flex: "flex" }, host: { properties: { "style.flex": "this.flex" } }, ngImport: i0 }); }
|
|
@@ -347,9 +337,6 @@ const getSpacingToken = (value) => {
|
|
|
347
337
|
return value;
|
|
348
338
|
};
|
|
349
339
|
class MarginDirective {
|
|
350
|
-
// @HostBinding('style.margin') get hb_margin() {
|
|
351
|
-
// return getSpacingToken(this.margin || this.m);
|
|
352
|
-
// }
|
|
353
340
|
get hb_margin() {
|
|
354
341
|
return `margin-${this.margin || this.m}`;
|
|
355
342
|
}
|
|
@@ -423,9 +410,6 @@ class PaddingDirective {
|
|
|
423
410
|
get hb_padding() {
|
|
424
411
|
return `padding-${this.padding || this.p}`;
|
|
425
412
|
}
|
|
426
|
-
// @HostBinding('class') get hb_padding() {
|
|
427
|
-
// return `padding-${this.padding || this.p}`;
|
|
428
|
-
// }
|
|
429
413
|
get hb_padding_left() {
|
|
430
414
|
return getSpacingToken(this.paddingLeft || this.pl || this.px || this.paddingX);
|
|
431
415
|
}
|
|
@@ -706,7 +690,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
|
|
|
706
690
|
type: Input
|
|
707
691
|
}] } });
|
|
708
692
|
|
|
709
|
-
// import {NovoCommonModule} from '../common-behaviors/common-module';
|
|
710
693
|
class NovoPseudoCheckboxModule {
|
|
711
694
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: NovoPseudoCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
712
695
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: NovoPseudoCheckboxModule, declarations: [NovoPseudoCheckbox], exports: [NovoPseudoCheckbox] }); }
|
|
@@ -907,7 +890,6 @@ class NovoOptionBase {
|
|
|
907
890
|
if (!this._selected) {
|
|
908
891
|
this._selected = true;
|
|
909
892
|
this._changeDetectorRef.markForCheck();
|
|
910
|
-
// this._emitSelectionChangeEvent();
|
|
911
893
|
}
|
|
912
894
|
}
|
|
913
895
|
/** Deselects the option. */
|
|
@@ -915,7 +897,6 @@ class NovoOptionBase {
|
|
|
915
897
|
if (this._selected) {
|
|
916
898
|
this._selected = false;
|
|
917
899
|
this._changeDetectorRef.markForCheck();
|
|
918
|
-
// this._emitSelectionChangeEvent();
|
|
919
900
|
}
|
|
920
901
|
}
|
|
921
902
|
/** Sets focus onto this option. */
|
|
@@ -1872,9 +1853,7 @@ class NovoOverlayTemplateComponent {
|
|
|
1872
1853
|
* when an option is selected, on blur, and when TAB is pressed.
|
|
1873
1854
|
*/
|
|
1874
1855
|
get panelClosingActions() {
|
|
1875
|
-
return merge(
|
|
1876
|
-
// this.overlayTemplate._keyManager.tabOut,
|
|
1877
|
-
this.outsideClickStream);
|
|
1856
|
+
return merge(this.outsideClickStream);
|
|
1878
1857
|
}
|
|
1879
1858
|
/** Stream of clicks outside of the panel. */
|
|
1880
1859
|
get outsideClickStream() {
|
|
@@ -1905,7 +1884,6 @@ class NovoOverlayTemplateComponent {
|
|
|
1905
1884
|
*/
|
|
1906
1885
|
subscribeToClosingActions() {
|
|
1907
1886
|
const firstStable = this.zone.onStable.asObservable().pipe(first());
|
|
1908
|
-
// const valueChanges = Observable.from(this.value);
|
|
1909
1887
|
// When the zone is stable initially, and when the option list changes...
|
|
1910
1888
|
return (merge(firstStable)
|
|
1911
1889
|
.pipe(
|