novo-elements 9.0.0 → 9.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/date-picker/DatePickerInput.d.ts +16 -1
- package/elements/field/field.d.ts +5 -1
- package/elements/time-picker/TimePicker.d.ts +7 -1
- package/elements/time-picker/TimePicker.module.d.ts +2 -1
- package/elements/time-picker/TimePicker.scss +21 -0
- package/elements/time-picker/TimePickerInput.d.ts +9 -1
- package/esm2020/elements/chips/RowChips.mjs +1 -1
- package/esm2020/elements/color-picker/color-input.component.mjs +1 -1
- package/esm2020/elements/data-table/cell-headers/data-table-header-cell.component.mjs +1 -1
- package/esm2020/elements/date-picker/DatePickerInput.mjs +15 -4
- package/esm2020/elements/date-time-picker/DateTimePicker.mjs +2 -2
- package/esm2020/elements/date-time-picker/DateTimePickerInput.mjs +1 -1
- package/esm2020/elements/field/field.mjs +5 -3
- package/esm2020/elements/form/ControlTemplates.mjs +1 -1
- package/esm2020/elements/query-builder/condition-builder/condition-builder.component.mjs +2 -2
- package/esm2020/elements/query-builder/condition-definitions/address-condition.definition.mjs +1 -1
- package/esm2020/elements/query-builder/condition-definitions/boolean-condition.definition.mjs +1 -1
- package/esm2020/elements/query-builder/condition-definitions/date-condition.definition.mjs +1 -1
- package/esm2020/elements/query-builder/condition-definitions/date-time-condition.definition.mjs +1 -1
- package/esm2020/elements/query-builder/condition-definitions/id-condition.definition.mjs +1 -1
- package/esm2020/elements/query-builder/condition-definitions/number-condition.definition.mjs +1 -1
- package/esm2020/elements/query-builder/condition-definitions/picker-condition.definition.mjs +1 -1
- package/esm2020/elements/query-builder/condition-definitions/string-condition.definition.mjs +1 -1
- package/esm2020/elements/select-search/select-search.component.mjs +1 -1
- package/esm2020/elements/time-picker/TimePicker.mjs +52 -5
- package/esm2020/elements/time-picker/TimePicker.module.mjs +5 -4
- package/esm2020/elements/time-picker/TimePickerInput.mjs +38 -5
- package/fesm2015/novo-elements-elements-chips.mjs +1 -1
- package/fesm2015/novo-elements-elements-chips.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-color-picker.mjs +1 -1
- package/fesm2015/novo-elements-elements-color-picker.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-data-table.mjs +1 -1
- package/fesm2015/novo-elements-elements-data-table.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-date-picker.mjs +14 -3
- package/fesm2015/novo-elements-elements-date-picker.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-date-time-picker.mjs +2 -2
- package/fesm2015/novo-elements-elements-date-time-picker.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-field.mjs +4 -2
- package/fesm2015/novo-elements-elements-field.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-form.mjs +1 -1
- package/fesm2015/novo-elements-elements-form.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-query-builder.mjs +9 -9
- package/fesm2015/novo-elements-elements-query-builder.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-select-search.mjs +1 -1
- package/fesm2015/novo-elements-elements-select-search.mjs.map +1 -1
- package/fesm2015/novo-elements-elements-time-picker.mjs +93 -12
- package/fesm2015/novo-elements-elements-time-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-chips.mjs +1 -1
- package/fesm2020/novo-elements-elements-chips.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-color-picker.mjs +1 -1
- package/fesm2020/novo-elements-elements-color-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-data-table.mjs +1 -1
- package/fesm2020/novo-elements-elements-data-table.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-date-picker.mjs +14 -3
- package/fesm2020/novo-elements-elements-date-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-date-time-picker.mjs +2 -2
- package/fesm2020/novo-elements-elements-date-time-picker.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-field.mjs +4 -2
- package/fesm2020/novo-elements-elements-field.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-form.mjs +1 -1
- package/fesm2020/novo-elements-elements-form.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-query-builder.mjs +9 -9
- package/fesm2020/novo-elements-elements-query-builder.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-select-search.mjs +1 -1
- package/fesm2020/novo-elements-elements-select-search.mjs.map +1 -1
- package/fesm2020/novo-elements-elements-time-picker.mjs +93 -12
- package/fesm2020/novo-elements-elements-time-picker.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"novo-elements-elements-date-time-picker.mjs","sources":["../../../projects/novo-elements/src/elements/date-time-picker/DateTimePicker.ts","../../../projects/novo-elements/src/elements/date-time-picker/DateTimePickerInput.ts","../../../projects/novo-elements/src/elements/date-time-picker/DateTimePicker.module.ts","../../../projects/novo-elements/src/elements/date-time-picker/novo-elements-elements-date-time-picker.ts"],"sourcesContent":["// NG2\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { Component, ElementRef, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { getHours, getMilliseconds, getMinutes, getSeconds, setHours, setMilliseconds, setMinutes, setSeconds } from 'date-fns';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst DATE_TIME_PICKER_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoDateTimePickerElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-date-time-picker',\n providers: [DATE_TIME_PICKER_VALUE_ACCESSOR],\n animations: [\n trigger('dateTextState', [\n state(\n 'date',\n style({\n opacity: '1.0',\n }),\n ),\n state(\n 'time',\n style({\n opacity: '0.6',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('timeTextState', [\n state(\n 'date',\n style({\n opacity: '0.6',\n }),\n ),\n state(\n 'time',\n style({\n opacity: '1.0',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('indicatorState', [\n state(\n 'date',\n style({\n transform: 'translateX(0%)',\n }),\n ),\n state(\n 'time',\n style({\n transform: 'translateX(100%)',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('containerState', [\n state(\n 'date',\n style({\n transform: 'translateX(0%)',\n }),\n ),\n state(\n 'time',\n style({\n transform: 'translateX(-100%)',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n ],\n template: `\n <div class=\"date-time-container\">\n <div class=\"date-time-tabs\">\n <span\n class=\"date-tab\"\n (click)=\"toggleView('date')\"\n [@dateTextState]=\"componentTabState\"\n data-automation-id=\"novo-date-time-date-tab\"\n >{{ selectedLabel }}</span\n >\n <span\n class=\"time-tab\"\n (click)=\"toggleView('time')\"\n [@timeTextState]=\"componentTabState\"\n data-automation-id=\"novo-date-time-time-tab\"\n >\n <span class=\"hours\" data-automation-id=\"novo-time-picker-hours\">{{ hours }}</span\n >:<span class=\"minutes\" data-automation-id=\"novo-time-picker-minutes\">{{ minutes }}</span>\n <span *ngIf=\"!military\" class=\"meridian\"> {{ meridian }}</span>\n </span>\n <i class=\"date-time-indicator\" [@indicatorState]=\"componentTabState\"></i>\n </div>\n <div class=\"view-container\" [@containerState]=\"componentTabState\">\n <div class=\"calendar\">\n <novo-date-picker\n (onSelect)=\"onDateSelected($event)\"\n [(ngModel)]=\"model\"\n inline=\"true\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [start]=\"start\"\n [end]=\"end\"\n [disabledDateMessage]=\"disabledDateMessage\"\n [weekStart]=\"weekStart\"\n ></novo-date-picker>\n </div>\n <div class=\"time-picker\">\n <novo-time-picker (onSelect)=\"onTimeSelected($event)\" [(ngModel)]=\"model\" (ngModelChange)=\"onModelChange($event)\" [military]=\"military\" inline=\"true\"></novo-time-picker>\n </div>\n </div>\n </div>\n `,\n styleUrls: ['./_DateTimePicker.scss'],\n})\nexport class NovoDateTimePickerElement implements ControlValueAccessor {\n @Input()\n defaultTime: string;\n @Input()\n minYear: any;\n @Input()\n maxYear: any;\n @Input()\n start: any;\n @Input()\n end: any;\n @Input()\n military: any;\n @Input()\n weekStart: number = 0;\n @Input()\n disabledDateMessage: string;\n // Select callback for output\n @Output()\n onSelect: EventEmitter<any> = new EventEmitter(false);\n\n componentTabState: string = 'date';\n selectedLabel: string;\n hours: string;\n minutes: string;\n meridian: string;\n datePickerValue: Date = new Date();\n timePickerValue: Date = new Date();\n\n model: any;\n _onChange: Function = () => {};\n _onTouched: Function = () => {};\n\n constructor(public labels: NovoLabelService, private element: ElementRef) {}\n\n toggleView(tab: string): void {\n this.componentTabState = tab;\n }\n\n onModelChange(event) {\n this.model = this.createFullDateValue(this.datePickerValue, event);\n }\n\n setDateLabels(value: Date) {\n this.selectedLabel = this.labels.formatDateWithFormat(value, {\n month: 'short',\n day: '2-digit',\n year: 'numeric',\n });\n }\n\n setTimeLabels(value: Date) {\n let hours = value.getHours();\n const minutes = value.getMinutes();\n\n this.meridian = value.toLocaleTimeString().slice(-2);\n\n if (!this.military) {\n hours = this.meridian === 'PM' && hours > 12 ? hours - 12 : hours;\n\n // Special case for 12\n if (this.meridian === 'PM' && hours === 24) {\n hours = 12;\n } else if (this.meridian === 'AM' && hours === 0) {\n hours = 12;\n }\n }\n\n this.hours = hours.toString();\n this.minutes = minutes.toString().length === 1 ? `0${minutes.toString()}` : minutes.toString();\n }\n\n onDateSelected(event: { month?: any; year?: any; day?: any; date?: Date }) {\n this.datePickerValue = event.date;\n if (this.defaultTime === 'start') {\n this.timePickerValue = new Date(this.timePickerValue.setHours(0, 0, 0));\n } else if (this.defaultTime === 'end') {\n this.timePickerValue = new Date(this.timePickerValue.setHours(23, 59, 59));\n }\n this.model = this.createFullDateValue(this.datePickerValue, this.timePickerValue);\n this.setDateLabels(this.model);\n this.onSelect.emit({ date: this.model });\n this._onChange(this.model);\n this.toggleView('time');\n }\n\n onTimeSelected(event: { hours?: number; minutes?: number; meridian?: string; date?: Date; text?: string }) {\n this.timePickerValue = event.date;\n this.model = this.createFullDateValue(this.model, this.timePickerValue);\n this.setTimeLabels(this.model);\n this.onSelect.emit({ date: this.model });\n this._onChange(this.model);\n }\n\n createFullDateValue(datePickerValue: Date, timePickerValue: Date) {\n return setMilliseconds(\n setSeconds(\n setMinutes(setHours(datePickerValue, getHours(timePickerValue)), getMinutes(timePickerValue)),\n getSeconds(timePickerValue),\n ),\n getMilliseconds(timePickerValue),\n );\n }\n\n // ValueAccessor Functions\n writeValue(model: any): void {\n this.model = model;\n if (Helpers.isEmpty(model)) {\n this.model = new Date();\n } else if (!isNaN(model)) {\n this.model = new Date(model);\n }\n this.datePickerValue = this.model;\n this.timePickerValue = this.model;\n if (Helpers.isDate(this.model)) {\n this.setDateLabels(this.datePickerValue);\n this.setTimeLabels(this.timePickerValue);\n }\n }\n\n registerOnChange(fn: Function): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this._onTouched = fn;\n }\n}\n","// NG\nimport { ChangeDetectorRef, Component, ElementRef, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { isDate } from 'date-fns';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { DateUtil, Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst DATE_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoDateTimePickerInputElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-date-time-picker-input',\n providers: [DATE_VALUE_ACCESSOR],\n template: `\n <novo-date-picker-input\n [ngModel]=\"datePart\"\n (ngModelChange)=\"updateDate($event)\"\n [start]=\"start\"\n [end]=\"end\"\n [disabledDateMessage]=\"disabledDateMessage\"\n [maskOptions]=\"maskOptions\"\n (blurEvent)=\"handleBlur($event)\"\n (focusEvent)=\"handleFocus($event)\"\n [disabled]=\"disabled\"\n [weekStart]=\"weekStart\"\n ></novo-date-picker-input>\n <novo-time-picker-input\n [ngModel]=\"timePart\"\n (ngModelChange)=\"updateTime($event)\"\n [military]=\"military\"\n (blurEvent)=\"handleBlur($event)\"\n (focusEvent)=\"handleFocus($event)\"\n [disabled]=\"disabled\"\n ></novo-time-picker-input>\n `,\n styleUrls: ['./DateTimePickerInput.scss'],\n})\nexport class NovoDateTimePickerInputElement implements ControlValueAccessor {\n public value: any;\n public datePart: any;\n public timePart: any;\n\n /** View -> model callback called when value changes */\n _onChange: (value: any) => void = () => {};\n\n /** View -> model callback called when autocomplete has been touched */\n _onTouched = () => {};\n\n @Input()\n name: string;\n @Input()\n start: Date;\n @Input()\n end: Date;\n @Input()\n placeholder: string;\n @Input()\n maskOptions: any;\n @Input()\n military: boolean = false;\n @Input()\n disabled: boolean = false;\n @Input()\n format: string;\n @Input()\n weekStart: number = 0;\n @Input()\n disabledDateMessage: string;\n @Output()\n blurEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n focusEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n changeEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n\n constructor(public element: ElementRef, public labels: NovoLabelService, private _changeDetectorRef: ChangeDetectorRef) {}\n\n writeValue(value: any): void {\n this.datePart = isDate(value) ? DateUtil.parse(value) : value;\n this.timePart = isDate(value) ? DateUtil.parse(value) : value;\n Promise.resolve(null).then(() => this._setTriggerValue(value));\n }\n updateDate(event) {\n this.datePart = event;\n this.checkParts();\n }\n updateTime(event) {\n this.timePart = event;\n this.checkParts();\n }\n\n handleBlur(event) {\n this.blurEvent.emit(event);\n this.changeEvent.emit(event);\n }\n\n handleFocus(event) {\n this.focusEvent.emit(event);\n }\n\n checkParts() {\n try {\n if (this.datePart instanceof Date && this.timePart instanceof Date) {\n this.dispatchOnChange(\n new Date(\n this.datePart.getFullYear(),\n this.datePart.getMonth(),\n this.datePart.getDate(),\n this.timePart.getHours(),\n this.timePart.getMinutes(),\n ),\n );\n } else if (this.datePart instanceof Date) {\n this.timePart = new Date(this.datePart.getFullYear(), this.datePart.getMonth(), this.datePart.getDate(), 12, 0);\n this.dispatchOnChange(\n new Date(\n this.datePart.getFullYear(),\n this.datePart.getMonth(),\n this.datePart.getDate(),\n this.timePart.getHours(),\n this.timePart.getMinutes(),\n ),\n );\n } else {\n this.dispatchOnChange(null);\n }\n } catch (err) {\n // Date not valid\n this.dispatchOnChange(null);\n }\n }\n\n registerOnChange(fn: (value: any) => {}): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: () => {}) {\n this._onTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n\n public dispatchOnChange(newValue?: any) {\n if (newValue !== this.value) {\n this._onChange(newValue);\n this._setTriggerValue(newValue);\n }\n }\n private _setTriggerValue(value: any): void {\n this.value = value;\n this._changeDetectorRef.markForCheck();\n }\n\n public setValue(event: any | null): void {\n if (event && event.date) {\n this.dispatchOnChange(event.date);\n }\n }\n\n public setValueAndClose(event: any | null): void {\n this.setValue(event);\n }\n\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n public clearValue() {\n this.dispatchOnChange(null);\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// Vendor\nimport { IMaskDirectiveModule } from 'angular-imask';\n// APP\nimport { NovoOverlayModule } from 'novo-elements/elements/common';\nimport { NovoDatePickerModule } from 'novo-elements/elements/date-picker';\nimport { NovoTimePickerModule } from 'novo-elements/elements/time-picker';\nimport { NovoDateTimePickerElement } from './DateTimePicker';\nimport { NovoDateTimePickerInputElement } from './DateTimePickerInput';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoDatePickerModule, NovoTimePickerModule, IMaskDirectiveModule, NovoOverlayModule],\n declarations: [NovoDateTimePickerElement, NovoDateTimePickerInputElement],\n exports: [NovoDateTimePickerElement, NovoDateTimePickerInputElement],\n})\nexport class NovoDateTimePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"novo-elements-elements-date-time-picker.mjs","sources":["../../../projects/novo-elements/src/elements/date-time-picker/DateTimePicker.ts","../../../projects/novo-elements/src/elements/date-time-picker/DateTimePickerInput.ts","../../../projects/novo-elements/src/elements/date-time-picker/DateTimePicker.module.ts","../../../projects/novo-elements/src/elements/date-time-picker/novo-elements-elements-date-time-picker.ts"],"sourcesContent":["// NG2\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { Component, ElementRef, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { getHours, getMilliseconds, getMinutes, getSeconds, setHours, setMilliseconds, setMinutes, setSeconds } from 'date-fns';\n// APP\nimport { NovoLabelService } from 'novo-elements/services';\nimport { Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst DATE_TIME_PICKER_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoDateTimePickerElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-date-time-picker',\n providers: [DATE_TIME_PICKER_VALUE_ACCESSOR],\n animations: [\n trigger('dateTextState', [\n state(\n 'date',\n style({\n opacity: '1.0',\n }),\n ),\n state(\n 'time',\n style({\n opacity: '0.6',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('timeTextState', [\n state(\n 'date',\n style({\n opacity: '0.6',\n }),\n ),\n state(\n 'time',\n style({\n opacity: '1.0',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('indicatorState', [\n state(\n 'date',\n style({\n transform: 'translateX(0%)',\n }),\n ),\n state(\n 'time',\n style({\n transform: 'translateX(100%)',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n trigger('containerState', [\n state(\n 'date',\n style({\n transform: 'translateX(0%)',\n }),\n ),\n state(\n 'time',\n style({\n transform: 'translateX(-100%)',\n }),\n ),\n transition('date <=> time', animate('200ms ease-in')),\n ]),\n ],\n template: `\n <div class=\"date-time-container\">\n <div class=\"date-time-tabs\">\n <span\n class=\"date-tab\"\n (click)=\"toggleView('date')\"\n [@dateTextState]=\"componentTabState\"\n data-automation-id=\"novo-date-time-date-tab\"\n >{{ selectedLabel }}</span\n >\n <span\n class=\"time-tab\"\n (click)=\"toggleView('time')\"\n [@timeTextState]=\"componentTabState\"\n data-automation-id=\"novo-date-time-time-tab\"\n >\n <span class=\"hours\" data-automation-id=\"novo-time-picker-hours\">{{ hours }}</span\n >:<span class=\"minutes\" data-automation-id=\"novo-time-picker-minutes\">{{ minutes }}</span>\n <span *ngIf=\"!military\" class=\"meridian\"> {{ meridian }}</span>\n </span>\n <i class=\"date-time-indicator\" [@indicatorState]=\"componentTabState\"></i>\n </div>\n <div class=\"view-container\" [@containerState]=\"componentTabState\">\n <div class=\"calendar\">\n <novo-date-picker\n (onSelect)=\"onDateSelected($event)\"\n [(ngModel)]=\"model\"\n inline=\"true\"\n [minYear]=\"minYear\"\n [maxYear]=\"maxYear\"\n [start]=\"start\"\n [end]=\"end\"\n [disabledDateMessage]=\"disabledDateMessage\"\n [weekStart]=\"weekStart\"\n ></novo-date-picker>\n </div>\n <div class=\"time-picker\">\n <novo-time-picker (onSelect)=\"onTimeSelected($event)\" [(ngModel)]=\"model\" (ngModelChange)=\"onModelChange($event)\" [military]=\"military\" inline=\"true\"></novo-time-picker>\n </div>\n </div>\n </div>\n `,\n styleUrls: ['./_DateTimePicker.scss'],\n})\nexport class NovoDateTimePickerElement implements ControlValueAccessor {\n @Input()\n defaultTime: string;\n @Input()\n minYear: any;\n @Input()\n maxYear: any;\n @Input()\n start: any;\n @Input()\n end: any;\n @Input()\n military: any;\n @Input()\n weekStart: number = 0;\n @Input()\n disabledDateMessage: string;\n // Select callback for output\n @Output()\n onSelect: EventEmitter<any> = new EventEmitter(false);\n\n componentTabState: string = 'date';\n selectedLabel: string;\n hours: string;\n minutes: string;\n meridian: string;\n datePickerValue: Date = new Date();\n timePickerValue: Date = new Date();\n\n model: any;\n _onChange: Function = () => {};\n _onTouched: Function = () => {};\n\n constructor(public labels: NovoLabelService, private element: ElementRef) {}\n\n toggleView(tab: string): void {\n this.componentTabState = tab;\n }\n\n onModelChange(event) {\n this.model = this.createFullDateValue(this.datePickerValue, event);\n }\n\n setDateLabels(value: Date) {\n this.selectedLabel = this.labels.formatDateWithFormat(value, {\n month: 'short',\n day: '2-digit',\n year: 'numeric',\n });\n }\n\n setTimeLabels(value: Date) {\n let hours = value.getHours();\n const minutes = value.getMinutes();\n\n this.meridian = value.toLocaleTimeString().slice(-2);\n\n if (!this.military) {\n hours = this.meridian === 'PM' && hours > 12 ? hours - 12 : hours;\n\n // Special case for 12\n if (this.meridian === 'PM' && hours === 24) {\n hours = 12;\n } else if (this.meridian === 'AM' && hours === 0) {\n hours = 12;\n }\n }\n\n this.hours = hours.toString();\n this.minutes = minutes.toString().length === 1 ? `0${minutes.toString()}` : minutes.toString();\n }\n\n onDateSelected(event: { month?: any; year?: any; day?: any; date?: Date }) {\n this.datePickerValue = event.date;\n if (this.defaultTime === 'start') {\n this.timePickerValue = new Date(this.timePickerValue.setHours(0, 0, 0));\n } else if (this.defaultTime === 'end') {\n this.timePickerValue = new Date(this.timePickerValue.setHours(23, 59, 59));\n }\n this.model = this.createFullDateValue(this.datePickerValue, this.timePickerValue);\n this.setDateLabels(this.model);\n this.onSelect.emit({ date: this.model });\n this._onChange(this.model);\n this.toggleView('time');\n }\n\n onTimeSelected(event: { hours?: number; minutes?: number; meridian?: string; date?: Date; text?: string }) {\n this.timePickerValue = event.date;\n this.model = this.createFullDateValue(this.model, this.timePickerValue);\n this.setTimeLabels(this.model);\n this.onSelect.emit({ date: this.model });\n this._onChange(this.model);\n }\n\n createFullDateValue(datePickerValue: Date, timePickerValue: Date) {\n return setMilliseconds(\n setSeconds(\n setMinutes(setHours(datePickerValue, getHours(timePickerValue)), getMinutes(timePickerValue)),\n getSeconds(timePickerValue),\n ),\n getMilliseconds(timePickerValue),\n );\n }\n\n // ValueAccessor Functions\n writeValue(model: any): void {\n this.model = model;\n if (Helpers.isEmpty(model)) {\n this.model = new Date();\n } else if (!isNaN(model)) {\n this.model = new Date(model);\n }\n this.datePickerValue = this.model;\n this.timePickerValue = this.model;\n if (Helpers.isDate(this.model)) {\n this.setDateLabels(this.datePickerValue);\n this.setTimeLabels(this.timePickerValue);\n }\n }\n\n registerOnChange(fn: Function): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this._onTouched = fn;\n }\n}\n","// NG\nimport { ChangeDetectorRef, Component, ElementRef, EventEmitter, forwardRef, Input, Output } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n// Vendor\nimport { isDate } from 'date-fns';\nimport { NovoLabelService } from 'novo-elements/services';\nimport { DateUtil, Helpers } from 'novo-elements/utils';\n\n// Value accessor for the component (supports ngModel)\nconst DATE_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => NovoDateTimePickerInputElement),\n multi: true,\n};\n\n@Component({\n selector: 'novo-date-time-picker-input',\n providers: [DATE_VALUE_ACCESSOR],\n template: `\n <novo-date-picker-input\n [ngModel]=\"datePart\"\n (ngModelChange)=\"updateDate($event)\"\n [start]=\"start\"\n [end]=\"end\"\n [disabledDateMessage]=\"disabledDateMessage\"\n [maskOptions]=\"maskOptions\"\n (blurEvent)=\"handleBlur($event)\"\n (focusEvent)=\"handleFocus($event)\"\n [disabled]=\"disabled\"\n [weekStart]=\"weekStart\"\n ></novo-date-picker-input>\n <novo-time-picker-input\n [ngModel]=\"timePart\"\n (ngModelChange)=\"updateTime($event)\"\n [military]=\"military\"\n (blurEvent)=\"handleBlur($event)\"\n (focusEvent)=\"handleFocus($event)\"\n [disabled]=\"disabled\"\n ></novo-time-picker-input>\n `,\n styleUrls: ['./DateTimePickerInput.scss'],\n})\nexport class NovoDateTimePickerInputElement implements ControlValueAccessor {\n public value: any;\n public datePart: any;\n public timePart: any;\n\n /** View -> model callback called when value changes */\n _onChange: (value: any) => void = () => {};\n\n /** View -> model callback called when autocomplete has been touched */\n _onTouched = () => {};\n\n @Input()\n name: string;\n @Input()\n start: Date;\n @Input()\n end: Date;\n @Input()\n placeholder: string;\n @Input()\n maskOptions: any;\n @Input()\n military: boolean = false;\n @Input()\n disabled: boolean = false;\n @Input()\n format: string;\n @Input()\n weekStart: number = 0;\n @Input()\n disabledDateMessage: string;\n @Output()\n blurEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n focusEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n @Output()\n changeEvent: EventEmitter<FocusEvent> = new EventEmitter<FocusEvent>();\n\n constructor(public element: ElementRef, public labels: NovoLabelService, private _changeDetectorRef: ChangeDetectorRef) {}\n\n writeValue(value: any): void {\n this.datePart = isDate(value) ? DateUtil.parse(value) : value;\n this.timePart = isDate(value) ? DateUtil.parse(value) : value;\n Promise.resolve(null).then(() => this._setTriggerValue(value));\n }\n updateDate(event) {\n this.datePart = event;\n this.checkParts();\n }\n updateTime(event) {\n this.timePart = event;\n this.checkParts();\n }\n\n handleBlur(event) {\n this.blurEvent.emit(event);\n this.changeEvent.emit(event);\n }\n\n handleFocus(event) {\n this.focusEvent.emit(event);\n }\n\n checkParts() {\n try {\n if (this.datePart instanceof Date && this.timePart instanceof Date) {\n this.dispatchOnChange(\n new Date(\n this.datePart.getFullYear(),\n this.datePart.getMonth(),\n this.datePart.getDate(),\n this.timePart.getHours(),\n this.timePart.getMinutes(),\n ),\n );\n } else if (this.datePart instanceof Date) {\n this.timePart = new Date(this.datePart.getFullYear(), this.datePart.getMonth(), this.datePart.getDate(), 12, 0);\n this.dispatchOnChange(\n new Date(\n this.datePart.getFullYear(),\n this.datePart.getMonth(),\n this.datePart.getDate(),\n this.timePart.getHours(),\n this.timePart.getMinutes(),\n ),\n );\n } else {\n this.dispatchOnChange(null);\n }\n } catch (err) {\n // Date not valid\n this.dispatchOnChange(null);\n }\n }\n\n registerOnChange(fn: (value: any) => {}): void {\n this._onChange = fn;\n }\n\n registerOnTouched(fn: () => {}) {\n this._onTouched = fn;\n }\n\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n }\n\n public dispatchOnChange(newValue?: any) {\n if (newValue !== this.value) {\n this._onChange(newValue);\n this._setTriggerValue(newValue);\n }\n }\n private _setTriggerValue(value: any): void {\n this.value = value;\n this._changeDetectorRef.markForCheck();\n }\n\n public setValue(event: any | null): void {\n if (event && event.date) {\n this.dispatchOnChange(event.date);\n }\n }\n\n public setValueAndClose(event: any | null): void {\n this.setValue(event);\n }\n\n /**\n * Clear any previous selected option and emit a selection change event for this option\n */\n public clearValue() {\n this.dispatchOnChange(null);\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// Vendor\nimport { IMaskDirectiveModule } from 'angular-imask';\n// APP\nimport { NovoOverlayModule } from 'novo-elements/elements/common';\nimport { NovoDatePickerModule } from 'novo-elements/elements/date-picker';\nimport { NovoTimePickerModule } from 'novo-elements/elements/time-picker';\nimport { NovoDateTimePickerElement } from './DateTimePicker';\nimport { NovoDateTimePickerInputElement } from './DateTimePickerInput';\n\n@NgModule({\n imports: [CommonModule, FormsModule, NovoDatePickerModule, NovoTimePickerModule, IMaskDirectiveModule, NovoOverlayModule],\n declarations: [NovoDateTimePickerElement, NovoDateTimePickerInputElement],\n exports: [NovoDateTimePickerElement, NovoDateTimePickerInputElement],\n})\nexport class NovoDateTimePickerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i4"],"mappings":"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"}
|
|
@@ -121,7 +121,7 @@ class NovoFieldElement {
|
|
|
121
121
|
* positioned relative to.
|
|
122
122
|
*/
|
|
123
123
|
getConnectedOverlayOrigin() {
|
|
124
|
-
return this._inputContainerRef || this._elementRef;
|
|
124
|
+
return this.customOverlayOrigin || this._inputContainerRef || this._elementRef;
|
|
125
125
|
}
|
|
126
126
|
ngAfterContentInit() {
|
|
127
127
|
this._validateControlChild();
|
|
@@ -184,7 +184,7 @@ class NovoFieldElement {
|
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
186
|
NovoFieldElement.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NovoFieldElement, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
187
|
-
NovoFieldElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NovoFieldElement, selector: "novo-field", inputs: { layout: "layout", appearance: "appearance", width: "width" }, outputs: { valueChanges: "valueChanges", stateChanges: "stateChanges" }, host: { listeners: { "click": "_handleContainerClick($event)" }, properties: { "class.novo-field-layout-horizontal": "layout==\"horizontal\"", "class.novo-field-layout-vertical": "layout==\"vertical\"", "class.novo-field-appearance-standard": "appearance == \"standard\"", "class.novo-field-appearance-fill": "appearance == \"fill\"", "class.novo-field-appearance-outline": "appearance == \"outline\"", "class.novo-field-appearance-list": "appearance == \"list\"", "class.novo-field-appearance-underlined": "_isUnderlinedInput()", "class.novo-field-invalid": "_control.errorState", "class.novo-field-has-label": "_hasLabel()", "class.novo-field-no-label": "!_hasLabel()", "class.novo-field-disabled": "_control.disabled", "class.novo-field-autofilled": "_control.autofilled", "class.novo-focused": "_control.focused", "class.ng-untouched": "_shouldForward(\"untouched\")", "class.ng-touched": "_shouldForward(\"touched\")", "class.ng-pristine": "_shouldForward(\"pristine\")", "class.ng-dirty": "_shouldForward(\"dirty\")", "class.ng-valid": "_shouldForward(\"valid\")", "class.ng-invalid": "_shouldForward(\"invalid\")", "class.ng-pending": "_shouldForward(\"pending\")" }, classAttribute: "novo-field" }, providers: [{ provide: NOVO_FORM_FIELD, useExisting: NovoFieldElement }], queries: [{ propertyName: "_labelElement", first: true, predicate: NovoLabel, descendants: true }, { propertyName: "_control", first: true, predicate: NovoFieldControl, descendants: true }, { propertyName: "_hintElements", predicate: NovoHintElement }, { propertyName: "_errorElements", predicate: NovoErrorElement }, { propertyName: "_prefixElements", predicate: NovoFieldPrefixDirective }, { propertyName: "_suffixElements", predicate: NovoFieldSuffixDirective }], viewQueries: [{ propertyName: "_inputContainerRef", first: true, predicate: ["inputContainer"], descendants: true }], ngImport: i0, template: "<div class=\"novo-field-label\">\n <ng-content select=\"novo-label\"></ng-content>\n</div>\n<div class=\"novo-field-input\" [style.width]=\"width\" #inputContainer>\n <div class=\"novo-field-prefix\">\n <ng-content select=\"[novoPrefix]\"></ng-content>\n </div>\n <div class=\"novo-field-infix\">\n <ng-content></ng-content>\n </div>\n <div class=\"novo-field-suffix\">\n <ng-content select=\"[novoSuffix]\"></ng-content>\n </div>\n</div>\n<div class=\"novo-field-messages\" [ngSwitch]=\"_getDisplayedMessages()\">\n <div class=\"novo-field-hint-wrapper\" *ngSwitchCase=\"'error'\">\n <ng-content select=\"novo-error\"></ng-content>\n </div>\n <div class=\"novo-field-hint-wrapper\" *ngSwitchCase=\"'hint'\">\n <ng-content select=\"novo-hint\"></ng-content>\n <ng-content select=\"novo-hint[align=end]\"></ng-content>\n </div>\n</div>", styles: [":host{display:grid;position:relative}:host.novo-field-layout-horizontal{grid-gap:0rem 1rem;grid-template-columns:150px minmax(-webkit-min-content,-webkit-max-content);grid-template-columns:150px minmax(min-content,max-content);grid-template-areas:\"label input\" \". messages\"}:host.novo-field-layout-vertical{grid-template-columns:minmax(-webkit-min-content,100%);grid-template-columns:minmax(min-content,100%);grid-template-rows:repeat(3,minmax(-webkit-min-content,-webkit-max-content));grid-template-rows:repeat(3,minmax(min-content,max-content));grid-template-areas:\"label\" \"input\" \"messages\";width:-webkit-max-content;width:-moz-max-content;width:max-content}:host .novo-field-label{grid-area:label;display:grid;align-items:center}:host.novo-field-type-color .novo-field-input::ng-deep .novo-input-element{padding:0}:host .novo-field-input{grid-area:input;display:grid;align-items:center;grid-template-columns:minmax(auto,-webkit-max-content) 1fr minmax(auto,-webkit-max-content);grid-template-columns:minmax(auto,max-content) 1fr minmax(auto,max-content);flex:1 1 100%;min-height:2.9rem}:host .novo-field-input::ng-deep .novo-input-element{display:inline;font-weight:400;color:inherit;font-size:var(--font-size-text);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle;border:none;background-image:none;background-color:transparent;box-shadow:none;padding:.4rem .2rem 0rem;border-bottom:none!important}:host .novo-field-input::ng-deep .novo-input-element.text-capitalize{text-transform:capitalize}:host .novo-field-input::ng-deep .novo-input-element.text-uppercase{text-transform:uppercase}:host .novo-field-input::ng-deep .novo-input-element.text-nowrap{white-space:nowrap}:host .novo-field-input::ng-deep .novo-input-element.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .novo-field-input::ng-deep .novo-input-element.text-size-default{font-size:inherit}:host .novo-field-input::ng-deep .novo-input-element.text-size-body{font-size:1.3rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-xs{font-size:1rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-sm{font-size:1.2rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-md{font-size:1.3rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-lg{font-size:1.6rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-xl{font-size:2rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-2xl{font-size:2.6rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-3xl{font-size:3.2rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-smaller{font-size:.8em}:host .novo-field-input::ng-deep .novo-input-element.text-size-larger{font-size:1.2em}:host .novo-field-input::ng-deep .novo-input-element.text-color-black{color:#000}:host .novo-field-input::ng-deep .novo-input-element.text-color-white{color:#fff}:host .novo-field-input::ng-deep .novo-input-element.text-color-gray{color:#9e9e9e}:host .novo-field-input::ng-deep .novo-input-element.text-color-grey{color:#9e9e9e}:host .novo-field-input::ng-deep .novo-input-element.text-color-offWhite{color:#f7f7f7}:host .novo-field-input::ng-deep .novo-input-element.text-color-bright{color:#f7f7f7}:host .novo-field-input::ng-deep .novo-input-element.text-color-light{color:#dbdbdb}:host .novo-field-input::ng-deep .novo-input-element.text-color-neutral{color:#4f5361}:host .novo-field-input::ng-deep .novo-input-element.text-color-dark{color:#3d464d}:host .novo-field-input::ng-deep .novo-input-element.text-color-orange{color:#ff6900}:host .novo-field-input::ng-deep .novo-input-element.text-color-navigation{color:#202945}:host .novo-field-input::ng-deep .novo-input-element.text-color-skyBlue{color:#009bdf}:host .novo-field-input::ng-deep .novo-input-element.text-color-steel{color:#5b6770}:host .novo-field-input::ng-deep .novo-input-element.text-color-metal{color:#637893}:host .novo-field-input::ng-deep .novo-input-element.text-color-sand{color:#f4f4f4}:host .novo-field-input::ng-deep .novo-input-element.text-color-silver{color:#e2e2e2}:host .novo-field-input::ng-deep .novo-input-element.text-color-stone{color:#bebebe}:host .novo-field-input::ng-deep .novo-input-element.text-color-ash{color:#a0a0a0}:host .novo-field-input::ng-deep .novo-input-element.text-color-slate{color:#707070}:host .novo-field-input::ng-deep .novo-input-element.text-color-onyx{color:#526980}:host .novo-field-input::ng-deep .novo-input-element.text-color-charcoal{color:#282828}:host .novo-field-input::ng-deep .novo-input-element.text-color-moonlight{color:#1a242f}:host .novo-field-input::ng-deep .novo-input-element.text-color-midnight{color:#202945}:host .novo-field-input::ng-deep .novo-input-element.text-color-darkness{color:#161f27}:host .novo-field-input::ng-deep .novo-input-element.text-color-navy{color:#0d2d42}:host .novo-field-input::ng-deep .novo-input-element.text-color-aqua{color:#3bafda}:host .novo-field-input::ng-deep .novo-input-element.text-color-ocean{color:#4a89dc}:host .novo-field-input::ng-deep .novo-input-element.text-color-mint{color:#37bc9b}:host .novo-field-input::ng-deep .novo-input-element.text-color-grass{color:#8cc152}:host .novo-field-input::ng-deep .novo-input-element.text-color-sunflower{color:#f6b042}:host .novo-field-input::ng-deep .novo-input-element.text-color-bittersweet{color:#eb6845}:host .novo-field-input::ng-deep .novo-input-element.text-color-grapefruit{color:#da4453}:host .novo-field-input::ng-deep .novo-input-element.text-color-carnation{color:#d770ad}:host .novo-field-input::ng-deep .novo-input-element.text-color-lavender{color:#967adc}:host .novo-field-input::ng-deep .novo-input-element.text-color-mountain{color:#9678b6}:host .novo-field-input::ng-deep .novo-input-element.text-color-info{color:#4a89dc}:host .novo-field-input::ng-deep .novo-input-element.text-color-positive{color:#4a89dc}:host .novo-field-input::ng-deep .novo-input-element.text-color-success{color:#8cc152}:host .novo-field-input::ng-deep .novo-input-element.text-color-negative{color:#da4453}:host .novo-field-input::ng-deep .novo-input-element.text-color-danger{color:#da4453}:host .novo-field-input::ng-deep .novo-input-element.text-color-error{color:#da4453}:host .novo-field-input::ng-deep .novo-input-element.text-color-warning{color:#f6b042}:host .novo-field-input::ng-deep .novo-input-element.text-color-empty{color:#cccdcc}:host .novo-field-input::ng-deep .novo-input-element.text-color-disabled{color:#bebebe}:host .novo-field-input::ng-deep .novo-input-element.text-color-background{color:#f7f7f7}:host .novo-field-input::ng-deep .novo-input-element.text-color-backgroundDark{color:#e2e2e2}:host .novo-field-input::ng-deep .novo-input-element.text-color-presentation{color:#5b6770}:host .novo-field-input::ng-deep .novo-input-element.text-color-bullhorn{color:#ff6900}:host .novo-field-input::ng-deep .novo-input-element.text-color-pulse{color:#3bafda}:host .novo-field-input::ng-deep .novo-input-element.text-color-company{color:#39d}:host .novo-field-input::ng-deep .novo-input-element.text-color-candidate{color:#4b7}:host .novo-field-input::ng-deep .novo-input-element.text-color-lead{color:#a69}:host .novo-field-input::ng-deep .novo-input-element.text-color-contact{color:#fa4}:host .novo-field-input::ng-deep .novo-input-element.text-color-clientcontact{color:#fa4}:host .novo-field-input::ng-deep .novo-input-element.text-color-opportunity{color:#625}:host .novo-field-input::ng-deep .novo-input-element.text-color-job{color:#b56}:host .novo-field-input::ng-deep .novo-input-element.text-color-joborder{color:#b56}:host .novo-field-input::ng-deep .novo-input-element.text-color-submission{color:#a9adbb}:host .novo-field-input::ng-deep .novo-input-element.text-color-sendout{color:#747884}:host .novo-field-input::ng-deep .novo-input-element.text-color-placement{color:#0b344f}:host .novo-field-input::ng-deep .novo-input-element.text-color-note{color:#747884}:host .novo-field-input::ng-deep .novo-input-element.text-color-contract{color:#454ea0}:host .novo-field-input::ng-deep .novo-input-element.text-color-jobCode{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-earnCode{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-invoiceStatement{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-billableCharge{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-payableCharge{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-user{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-corporateUser{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-distributionList{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-credential{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-person{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.margin-before{margin-top:.4rem}:host .novo-field-input::ng-deep .novo-input-element.margin-after{margin-bottom:.8rem}:host .novo-field-input::ng-deep .novo-input-element.text-length-small{max-width:40ch}:host .novo-field-input::ng-deep .novo-input-element.text-length-medium{max-width:55ch}:host .novo-field-input::ng-deep .novo-input-element.text-length-large{max-width:70ch}:host .novo-field-input::ng-deep .novo-input-element.text-weight-hairline{font-weight:100}:host .novo-field-input::ng-deep .novo-input-element.text-weight-thin{font-weight:200}:host .novo-field-input::ng-deep .novo-input-element.text-weight-light{font-weight:300}:host .novo-field-input::ng-deep .novo-input-element.text-weight-normal{font-weight:400}:host .novo-field-input::ng-deep .novo-input-element.text-weight-medium{font-weight:500}:host .novo-field-input::ng-deep .novo-input-element.text-weight-semibold{font-weight:600}:host .novo-field-input::ng-deep .novo-input-element.text-weight-bold{font-weight:700}:host .novo-field-input::ng-deep .novo-input-element.text-weight-extrabold{font-weight:800}:host .novo-field-input::ng-deep .novo-input-element.text-weight-heavy{font-weight:900}:host .novo-field-input::ng-deep .novo-input-element.text-weight-lighter{font-weight:lighter}:host .novo-field-input::ng-deep .novo-input-element.text-weight-bolder{font-weight:bolder}:host .novo-field-input::ng-deep .novo-input-element:focus{outline:none}:host .novo-field-input::ng-deep .novo-radio-group{padding:.5rem 0}:host .novo-field-input .novo-field-prefix{display:flex;align-items:center}:host .novo-field-input .novo-field-infix{display:flex;align-items:center;align-self:flex-end}:host .novo-field-input .novo-field-infix select,:host .novo-field-input .novo-field-infix::ng-deep .novo-input-element{width:100%}:host .novo-field-input .novo-field-suffix{display:flex;align-items:center}:host .novo-field-messages{grid-area:messages;display:grid}:host .novo-field-hint-wrapper{display:flex;flex-direction:column}:host::ng-deep .novo-date-range-format{min-width:22rem}\n", ":host.novo-field-appearance-standard.novo-field-appearance-underlined .novo-field-input{border-bottom:1px solid #afb9c0!important}:host.novo-field-appearance-standard.novo-field-appearance-underlined:not(.novo-focused):hover .novo-field-input{border-bottom:1px solid #3d464d!important}:host.novo-field-appearance-standard.novo-field-appearance-underlined.novo-focused .novo-field-input{border-bottom:1px solid #4a89dc!important}:host.novo-field-appearance-standard.novo-field-appearance-underlined.novo-field-invalid .novo-field-input{border-bottom:1px solid #da4453!important}\n", ":host.novo-field-appearance-fill.novo-field-layout-horizontal .novo-field-input{background:var(--background-main)}:host.novo-field-appearance-fill.novo-field-layout-vertical{background:var(--background-main)}:host.novo-field-appearance-fill.novo-field-layout-vertical .novo-field-label{padding-top:.5em;padding-left:.5em;padding-right:.5em}:host.novo-field-appearance-fill.novo-field-layout-vertical .novo-field-input{padding:0 .5em}:host.novo-field-appearance-fill.novo-field-appearance-underlined .novo-field-input{border-bottom:1px solid #afb9c0!important}:host.novo-field-appearance-fill.novo-field-appearance-underlined:not(.novo-focused):hover .novo-field-input{border-bottom:1px solid #3d464d!important}:host.novo-field-appearance-fill.novo-field-appearance-underlined.novo-focused .novo-field-label{color:#4a89dc!important}:host.novo-field-appearance-fill.novo-field-appearance-underlined.novo-focused .novo-field-input{border-bottom:1px solid #4a89dc!important}:host.novo-field-appearance-fill.novo-field-appearance-underlined.novo-field-invalid .novo-field-input{border-bottom:1px solid #da4453!important}\n", ":host.novo-field-appearance-outline{border:1px solid #afb9c0!important;border-radius:.4rem;padding:.5rem}:host.novo-field-appearance-outline.novo-field-layout-vertical .novo-field-label{background:white;margin-top:-1.5rem;margin-left:.5rem;width:-webkit-max-content;width:-moz-max-content;width:max-content;padding:.5rem}:host.novo-field-appearance-outline:not(.novo-focused):hover{border:1px solid #3d464d!important}:host.novo-field-appearance-outline.novo-focused{border:1px solid #4a89dc!important}:host.novo-field-appearance-outline.novo-field-invalid{border:1px solid #da4453!important}\n", ":host.novo-field-appearance-list.novo-field-layout-horizontal{border-bottom:1px solid #f7f7f7!important;padding:.5rem 1.2rem;min-height:4.2rem}:host.novo-field-appearance-list.novo-field-layout-horizontal .novo-field-label{align-items:start;margin-top:.9rem}:host.novo-field-appearance-list.novo-field-layout-horizontal.novo-field-no-label{grid-template-columns:0px minmax(300px,600px);gap:0}:host.novo-field-appearance-list.novo-field-layout-horizontal.novo-field-appearance-underlined:not(.novo-focused):hover .novo-field-input{background:rgba(74,137,220,.15)}:host.novo-field-appearance-list.novo-field-layout-horizontal.novo-field-appearance-underlined.novo-focused .novo-field-label{color:#4a89dc!important}:host.novo-field-appearance-list.novo-field-layout-horizontal.novo-field-appearance-underlined.novo-field-invalid .novo-field-label{color:#da4453!important}\n"], directives: [{ type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
187
|
+
NovoFieldElement.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NovoFieldElement, selector: "novo-field", inputs: { layout: "layout", appearance: "appearance", customOverlayOrigin: "customOverlayOrigin", width: "width" }, outputs: { valueChanges: "valueChanges", stateChanges: "stateChanges" }, host: { listeners: { "click": "_handleContainerClick($event)" }, properties: { "class.novo-field-layout-horizontal": "layout==\"horizontal\"", "class.novo-field-layout-vertical": "layout==\"vertical\"", "class.novo-field-appearance-standard": "appearance == \"standard\"", "class.novo-field-appearance-fill": "appearance == \"fill\"", "class.novo-field-appearance-outline": "appearance == \"outline\"", "class.novo-field-appearance-list": "appearance == \"list\"", "class.novo-field-appearance-underlined": "_isUnderlinedInput()", "class.novo-field-invalid": "_control.errorState", "class.novo-field-has-label": "_hasLabel()", "class.novo-field-no-label": "!_hasLabel()", "class.novo-field-disabled": "_control.disabled", "class.novo-field-autofilled": "_control.autofilled", "class.novo-focused": "_control.focused", "class.ng-untouched": "_shouldForward(\"untouched\")", "class.ng-touched": "_shouldForward(\"touched\")", "class.ng-pristine": "_shouldForward(\"pristine\")", "class.ng-dirty": "_shouldForward(\"dirty\")", "class.ng-valid": "_shouldForward(\"valid\")", "class.ng-invalid": "_shouldForward(\"invalid\")", "class.ng-pending": "_shouldForward(\"pending\")" }, classAttribute: "novo-field" }, providers: [{ provide: NOVO_FORM_FIELD, useExisting: NovoFieldElement }], queries: [{ propertyName: "_labelElement", first: true, predicate: NovoLabel, descendants: true }, { propertyName: "_control", first: true, predicate: NovoFieldControl, descendants: true }, { propertyName: "_hintElements", predicate: NovoHintElement }, { propertyName: "_errorElements", predicate: NovoErrorElement }, { propertyName: "_prefixElements", predicate: NovoFieldPrefixDirective }, { propertyName: "_suffixElements", predicate: NovoFieldSuffixDirective }], viewQueries: [{ propertyName: "_inputContainerRef", first: true, predicate: ["inputContainer"], descendants: true }], ngImport: i0, template: "<div class=\"novo-field-label\">\n <ng-content select=\"novo-label\"></ng-content>\n</div>\n<div class=\"novo-field-input\" [style.width]=\"width\" #inputContainer>\n <div class=\"novo-field-prefix\">\n <ng-content select=\"[novoPrefix]\"></ng-content>\n </div>\n <div class=\"novo-field-infix\">\n <ng-content></ng-content>\n </div>\n <div class=\"novo-field-suffix\">\n <ng-content select=\"[novoSuffix]\"></ng-content>\n </div>\n</div>\n<div class=\"novo-field-messages\" [ngSwitch]=\"_getDisplayedMessages()\">\n <div class=\"novo-field-hint-wrapper\" *ngSwitchCase=\"'error'\">\n <ng-content select=\"novo-error\"></ng-content>\n </div>\n <div class=\"novo-field-hint-wrapper\" *ngSwitchCase=\"'hint'\">\n <ng-content select=\"novo-hint\"></ng-content>\n <ng-content select=\"novo-hint[align=end]\"></ng-content>\n </div>\n</div>", styles: [":host{display:grid;position:relative}:host.novo-field-layout-horizontal{grid-gap:0rem 1rem;grid-template-columns:150px minmax(-webkit-min-content,-webkit-max-content);grid-template-columns:150px minmax(min-content,max-content);grid-template-areas:\"label input\" \". messages\"}:host.novo-field-layout-vertical{grid-template-columns:minmax(-webkit-min-content,100%);grid-template-columns:minmax(min-content,100%);grid-template-rows:repeat(3,minmax(-webkit-min-content,-webkit-max-content));grid-template-rows:repeat(3,minmax(min-content,max-content));grid-template-areas:\"label\" \"input\" \"messages\";width:-webkit-max-content;width:-moz-max-content;width:max-content}:host .novo-field-label{grid-area:label;display:grid;align-items:center}:host.novo-field-type-color .novo-field-input::ng-deep .novo-input-element{padding:0}:host .novo-field-input{grid-area:input;display:grid;align-items:center;grid-template-columns:minmax(auto,-webkit-max-content) 1fr minmax(auto,-webkit-max-content);grid-template-columns:minmax(auto,max-content) 1fr minmax(auto,max-content);flex:1 1 100%;min-height:2.9rem}:host .novo-field-input::ng-deep .novo-input-element{display:inline;font-weight:400;color:inherit;font-size:var(--font-size-text);transition:color .2s ease-out,opacity .2s ease-out;vertical-align:middle;border:none;background-image:none;background-color:transparent;box-shadow:none;padding:.4rem .2rem 0rem;border-bottom:none!important}:host .novo-field-input::ng-deep .novo-input-element.text-capitalize{text-transform:capitalize}:host .novo-field-input::ng-deep .novo-input-element.text-uppercase{text-transform:uppercase}:host .novo-field-input::ng-deep .novo-input-element.text-nowrap{white-space:nowrap}:host .novo-field-input::ng-deep .novo-input-element.text-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host .novo-field-input::ng-deep .novo-input-element.text-size-default{font-size:inherit}:host .novo-field-input::ng-deep .novo-input-element.text-size-body{font-size:1.3rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-xs{font-size:1rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-sm{font-size:1.2rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-md{font-size:1.3rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-lg{font-size:1.6rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-xl{font-size:2rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-2xl{font-size:2.6rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-3xl{font-size:3.2rem}:host .novo-field-input::ng-deep .novo-input-element.text-size-smaller{font-size:.8em}:host .novo-field-input::ng-deep .novo-input-element.text-size-larger{font-size:1.2em}:host .novo-field-input::ng-deep .novo-input-element.text-color-black{color:#000}:host .novo-field-input::ng-deep .novo-input-element.text-color-white{color:#fff}:host .novo-field-input::ng-deep .novo-input-element.text-color-gray{color:#9e9e9e}:host .novo-field-input::ng-deep .novo-input-element.text-color-grey{color:#9e9e9e}:host .novo-field-input::ng-deep .novo-input-element.text-color-offWhite{color:#f7f7f7}:host .novo-field-input::ng-deep .novo-input-element.text-color-bright{color:#f7f7f7}:host .novo-field-input::ng-deep .novo-input-element.text-color-light{color:#dbdbdb}:host .novo-field-input::ng-deep .novo-input-element.text-color-neutral{color:#4f5361}:host .novo-field-input::ng-deep .novo-input-element.text-color-dark{color:#3d464d}:host .novo-field-input::ng-deep .novo-input-element.text-color-orange{color:#ff6900}:host .novo-field-input::ng-deep .novo-input-element.text-color-navigation{color:#202945}:host .novo-field-input::ng-deep .novo-input-element.text-color-skyBlue{color:#009bdf}:host .novo-field-input::ng-deep .novo-input-element.text-color-steel{color:#5b6770}:host .novo-field-input::ng-deep .novo-input-element.text-color-metal{color:#637893}:host .novo-field-input::ng-deep .novo-input-element.text-color-sand{color:#f4f4f4}:host .novo-field-input::ng-deep .novo-input-element.text-color-silver{color:#e2e2e2}:host .novo-field-input::ng-deep .novo-input-element.text-color-stone{color:#bebebe}:host .novo-field-input::ng-deep .novo-input-element.text-color-ash{color:#a0a0a0}:host .novo-field-input::ng-deep .novo-input-element.text-color-slate{color:#707070}:host .novo-field-input::ng-deep .novo-input-element.text-color-onyx{color:#526980}:host .novo-field-input::ng-deep .novo-input-element.text-color-charcoal{color:#282828}:host .novo-field-input::ng-deep .novo-input-element.text-color-moonlight{color:#1a242f}:host .novo-field-input::ng-deep .novo-input-element.text-color-midnight{color:#202945}:host .novo-field-input::ng-deep .novo-input-element.text-color-darkness{color:#161f27}:host .novo-field-input::ng-deep .novo-input-element.text-color-navy{color:#0d2d42}:host .novo-field-input::ng-deep .novo-input-element.text-color-aqua{color:#3bafda}:host .novo-field-input::ng-deep .novo-input-element.text-color-ocean{color:#4a89dc}:host .novo-field-input::ng-deep .novo-input-element.text-color-mint{color:#37bc9b}:host .novo-field-input::ng-deep .novo-input-element.text-color-grass{color:#8cc152}:host .novo-field-input::ng-deep .novo-input-element.text-color-sunflower{color:#f6b042}:host .novo-field-input::ng-deep .novo-input-element.text-color-bittersweet{color:#eb6845}:host .novo-field-input::ng-deep .novo-input-element.text-color-grapefruit{color:#da4453}:host .novo-field-input::ng-deep .novo-input-element.text-color-carnation{color:#d770ad}:host .novo-field-input::ng-deep .novo-input-element.text-color-lavender{color:#967adc}:host .novo-field-input::ng-deep .novo-input-element.text-color-mountain{color:#9678b6}:host .novo-field-input::ng-deep .novo-input-element.text-color-info{color:#4a89dc}:host .novo-field-input::ng-deep .novo-input-element.text-color-positive{color:#4a89dc}:host .novo-field-input::ng-deep .novo-input-element.text-color-success{color:#8cc152}:host .novo-field-input::ng-deep .novo-input-element.text-color-negative{color:#da4453}:host .novo-field-input::ng-deep .novo-input-element.text-color-danger{color:#da4453}:host .novo-field-input::ng-deep .novo-input-element.text-color-error{color:#da4453}:host .novo-field-input::ng-deep .novo-input-element.text-color-warning{color:#f6b042}:host .novo-field-input::ng-deep .novo-input-element.text-color-empty{color:#cccdcc}:host .novo-field-input::ng-deep .novo-input-element.text-color-disabled{color:#bebebe}:host .novo-field-input::ng-deep .novo-input-element.text-color-background{color:#f7f7f7}:host .novo-field-input::ng-deep .novo-input-element.text-color-backgroundDark{color:#e2e2e2}:host .novo-field-input::ng-deep .novo-input-element.text-color-presentation{color:#5b6770}:host .novo-field-input::ng-deep .novo-input-element.text-color-bullhorn{color:#ff6900}:host .novo-field-input::ng-deep .novo-input-element.text-color-pulse{color:#3bafda}:host .novo-field-input::ng-deep .novo-input-element.text-color-company{color:#39d}:host .novo-field-input::ng-deep .novo-input-element.text-color-candidate{color:#4b7}:host .novo-field-input::ng-deep .novo-input-element.text-color-lead{color:#a69}:host .novo-field-input::ng-deep .novo-input-element.text-color-contact{color:#fa4}:host .novo-field-input::ng-deep .novo-input-element.text-color-clientcontact{color:#fa4}:host .novo-field-input::ng-deep .novo-input-element.text-color-opportunity{color:#625}:host .novo-field-input::ng-deep .novo-input-element.text-color-job{color:#b56}:host .novo-field-input::ng-deep .novo-input-element.text-color-joborder{color:#b56}:host .novo-field-input::ng-deep .novo-input-element.text-color-submission{color:#a9adbb}:host .novo-field-input::ng-deep .novo-input-element.text-color-sendout{color:#747884}:host .novo-field-input::ng-deep .novo-input-element.text-color-placement{color:#0b344f}:host .novo-field-input::ng-deep .novo-input-element.text-color-note{color:#747884}:host .novo-field-input::ng-deep .novo-input-element.text-color-contract{color:#454ea0}:host .novo-field-input::ng-deep .novo-input-element.text-color-jobCode{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-earnCode{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-invoiceStatement{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-billableCharge{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-payableCharge{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-user{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-corporateUser{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-distributionList{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-credential{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.text-color-person{color:#696d79}:host .novo-field-input::ng-deep .novo-input-element.margin-before{margin-top:.4rem}:host .novo-field-input::ng-deep .novo-input-element.margin-after{margin-bottom:.8rem}:host .novo-field-input::ng-deep .novo-input-element.text-length-small{max-width:40ch}:host .novo-field-input::ng-deep .novo-input-element.text-length-medium{max-width:55ch}:host .novo-field-input::ng-deep .novo-input-element.text-length-large{max-width:70ch}:host .novo-field-input::ng-deep .novo-input-element.text-weight-hairline{font-weight:100}:host .novo-field-input::ng-deep .novo-input-element.text-weight-thin{font-weight:200}:host .novo-field-input::ng-deep .novo-input-element.text-weight-light{font-weight:300}:host .novo-field-input::ng-deep .novo-input-element.text-weight-normal{font-weight:400}:host .novo-field-input::ng-deep .novo-input-element.text-weight-medium{font-weight:500}:host .novo-field-input::ng-deep .novo-input-element.text-weight-semibold{font-weight:600}:host .novo-field-input::ng-deep .novo-input-element.text-weight-bold{font-weight:700}:host .novo-field-input::ng-deep .novo-input-element.text-weight-extrabold{font-weight:800}:host .novo-field-input::ng-deep .novo-input-element.text-weight-heavy{font-weight:900}:host .novo-field-input::ng-deep .novo-input-element.text-weight-lighter{font-weight:lighter}:host .novo-field-input::ng-deep .novo-input-element.text-weight-bolder{font-weight:bolder}:host .novo-field-input::ng-deep .novo-input-element:focus{outline:none}:host .novo-field-input::ng-deep .novo-radio-group{padding:.5rem 0}:host .novo-field-input .novo-field-prefix{display:flex;align-items:center}:host .novo-field-input .novo-field-infix{display:flex;align-items:center;align-self:flex-end}:host .novo-field-input .novo-field-infix select,:host .novo-field-input .novo-field-infix::ng-deep .novo-input-element{width:100%}:host .novo-field-input .novo-field-suffix{display:flex;align-items:center}:host .novo-field-messages{grid-area:messages;display:grid}:host .novo-field-hint-wrapper{display:flex;flex-direction:column}:host::ng-deep .novo-date-range-format{min-width:22rem}\n", ":host.novo-field-appearance-standard.novo-field-appearance-underlined .novo-field-input{border-bottom:1px solid #afb9c0!important}:host.novo-field-appearance-standard.novo-field-appearance-underlined:not(.novo-focused):hover .novo-field-input{border-bottom:1px solid #3d464d!important}:host.novo-field-appearance-standard.novo-field-appearance-underlined.novo-focused .novo-field-input{border-bottom:1px solid #4a89dc!important}:host.novo-field-appearance-standard.novo-field-appearance-underlined.novo-field-invalid .novo-field-input{border-bottom:1px solid #da4453!important}\n", ":host.novo-field-appearance-fill.novo-field-layout-horizontal .novo-field-input{background:var(--background-main)}:host.novo-field-appearance-fill.novo-field-layout-vertical{background:var(--background-main)}:host.novo-field-appearance-fill.novo-field-layout-vertical .novo-field-label{padding-top:.5em;padding-left:.5em;padding-right:.5em}:host.novo-field-appearance-fill.novo-field-layout-vertical .novo-field-input{padding:0 .5em}:host.novo-field-appearance-fill.novo-field-appearance-underlined .novo-field-input{border-bottom:1px solid #afb9c0!important}:host.novo-field-appearance-fill.novo-field-appearance-underlined:not(.novo-focused):hover .novo-field-input{border-bottom:1px solid #3d464d!important}:host.novo-field-appearance-fill.novo-field-appearance-underlined.novo-focused .novo-field-label{color:#4a89dc!important}:host.novo-field-appearance-fill.novo-field-appearance-underlined.novo-focused .novo-field-input{border-bottom:1px solid #4a89dc!important}:host.novo-field-appearance-fill.novo-field-appearance-underlined.novo-field-invalid .novo-field-input{border-bottom:1px solid #da4453!important}\n", ":host.novo-field-appearance-outline{border:1px solid #afb9c0!important;border-radius:.4rem;padding:.5rem}:host.novo-field-appearance-outline.novo-field-layout-vertical .novo-field-label{background:white;margin-top:-1.5rem;margin-left:.5rem;width:-webkit-max-content;width:-moz-max-content;width:max-content;padding:.5rem}:host.novo-field-appearance-outline:not(.novo-focused):hover{border:1px solid #3d464d!important}:host.novo-field-appearance-outline.novo-focused{border:1px solid #4a89dc!important}:host.novo-field-appearance-outline.novo-field-invalid{border:1px solid #da4453!important}\n", ":host.novo-field-appearance-list.novo-field-layout-horizontal{border-bottom:1px solid #f7f7f7!important;padding:.5rem 1.2rem;min-height:4.2rem}:host.novo-field-appearance-list.novo-field-layout-horizontal .novo-field-label{align-items:start;margin-top:.9rem}:host.novo-field-appearance-list.novo-field-layout-horizontal.novo-field-no-label{grid-template-columns:0px minmax(300px,600px);gap:0}:host.novo-field-appearance-list.novo-field-layout-horizontal.novo-field-appearance-underlined:not(.novo-focused):hover .novo-field-input{background:rgba(74,137,220,.15)}:host.novo-field-appearance-list.novo-field-layout-horizontal.novo-field-appearance-underlined.novo-focused .novo-field-label{color:#4a89dc!important}:host.novo-field-appearance-list.novo-field-layout-horizontal.novo-field-appearance-underlined.novo-field-invalid .novo-field-label{color:#da4453!important}\n"], directives: [{ type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
188
188
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NovoFieldElement, decorators: [{
|
|
189
189
|
type: Component,
|
|
190
190
|
args: [{ selector: 'novo-field', changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
@@ -238,6 +238,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
238
238
|
type: Input
|
|
239
239
|
}], appearance: [{
|
|
240
240
|
type: Input
|
|
241
|
+
}], customOverlayOrigin: [{
|
|
242
|
+
type: Input
|
|
241
243
|
}], width: [{
|
|
242
244
|
type: Input
|
|
243
245
|
}], valueChanges: [{
|