@wavemaker-ai/app-ng-runtime 12.0.1-rc.338 → 12.0.2-rc.344
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/components/base/bundles/index.umd.js +3 -0
- package/components/base/fesm2022/index.mjs +3 -0
- package/components/base/fesm2022/index.mjs.map +1 -1
- package/components/basic/tree/bundles/index.umd.js +3 -0
- package/components/basic/tree/fesm2022/index.mjs +3 -0
- package/components/basic/tree/fesm2022/index.mjs.map +1 -1
- package/components/data/form/bundles/index.umd.js +4 -0
- package/components/data/form/fesm2022/index.mjs +4 -0
- package/components/data/form/fesm2022/index.mjs.map +1 -1
- package/components/data/live-table/bundles/index.umd.js +7 -2
- package/components/data/live-table/fesm2022/index.mjs +7 -2
- package/components/data/live-table/fesm2022/index.mjs.map +1 -1
- package/components/data/table/bundles/index.umd.js +17 -0
- package/components/data/table/fesm2022/index.mjs +17 -0
- package/components/data/table/fesm2022/index.mjs.map +1 -1
- package/components/data/table/types/index.d.ts +1 -0
- package/components/input/epoch/date/bundles/index.umd.js +7 -1
- package/components/input/epoch/date/fesm2022/index.mjs +7 -1
- package/components/input/epoch/date/fesm2022/index.mjs.map +1 -1
- package/components/input/slider/bundles/index.umd.js +1 -1
- package/components/input/slider/fesm2022/index.mjs +1 -1
- package/components/input/slider/fesm2022/index.mjs.map +1 -1
- package/components/input/slider/types/index.d.ts +1 -1
- package/core/bundles/index.umd.js +6 -5
- package/core/fesm2022/index.mjs +6 -5
- package/core/fesm2022/index.mjs.map +1 -1
- package/core/types/index.d.ts +2 -1
- package/npm-shrinkwrap.json +2 -2
- package/package-lock.json +2 -2
- package/package.json +1 -1
|
@@ -313,7 +313,13 @@
|
|
|
313
313
|
$('.bs-calendar-container').removeAttr('role');
|
|
314
314
|
const datePickerContainer = $('.bs-datepicker-container')[0];
|
|
315
315
|
this.focusTrap = base.setFocusTrap(datePickerContainer, true);
|
|
316
|
-
|
|
316
|
+
try {
|
|
317
|
+
// focus-trap throws if the container has no tabbable node yet (e.g. calendar still rendering);
|
|
318
|
+
// that shouldn't stop the picker from opening.
|
|
319
|
+
this.focusTrap.activate();
|
|
320
|
+
}
|
|
321
|
+
catch (e) {
|
|
322
|
+
}
|
|
317
323
|
this.addDatepickerKeyboardEvents(this, false);
|
|
318
324
|
i1.adjustContainerPosition($('bs-datepicker-container'), this.nativeElement, this.bsDatePickerDirective._datepicker);
|
|
319
325
|
i1.adjustContainerRightEdges($('bs-datepicker-container'), this.nativeElement, this.bsDatePickerDirective._datepicker);
|
|
@@ -300,7 +300,13 @@ class DateComponent extends BaseDateTimeComponent {
|
|
|
300
300
|
$('.bs-calendar-container').removeAttr('role');
|
|
301
301
|
const datePickerContainer = $('.bs-datepicker-container')[0];
|
|
302
302
|
this.focusTrap = setFocusTrap(datePickerContainer, true);
|
|
303
|
-
|
|
303
|
+
try {
|
|
304
|
+
// focus-trap throws if the container has no tabbable node yet (e.g. calendar still rendering);
|
|
305
|
+
// that shouldn't stop the picker from opening.
|
|
306
|
+
this.focusTrap.activate();
|
|
307
|
+
}
|
|
308
|
+
catch (e) {
|
|
309
|
+
}
|
|
304
310
|
this.addDatepickerKeyboardEvents(this, false);
|
|
305
311
|
adjustContainerPosition($('bs-datepicker-container'), this.nativeElement, this.bsDatePickerDirective._datepicker);
|
|
306
312
|
adjustContainerRightEdges($('bs-datepicker-container'), this.nativeElement, this.bsDatePickerDirective._datepicker);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../../projects/components/widgets/input/epoch/date/src/date.props.ts","../../../../../../projects/components/widgets/input/epoch/date/src/imaskUtil.ts","../../../../../../projects/components/widgets/input/epoch/date/src/date.component.ts","../../../../../../projects/components/widgets/input/epoch/date/src/date.component.html","../../../../../../projects/components/widgets/input/epoch/date/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\nimport {FormWidgetType} from '@wm/core';\n\nexport const dateProps = new Map(\n [\n ['autofocus', PROP_BOOLEAN],\n ['class', PROP_STRING],\n ['dataentrymode', { value: 'default', ...PROP_STRING }],\n ['datavaluesource', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['datepattern', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['excludedays', PROP_STRING],\n ['excludedates', PROP_STRING],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['maxdate', PROP_STRING],\n ['mindate', PROP_STRING],\n ['name', PROP_STRING],\n ['outputformat', { value: 'yyyy-MM-dd', ...PROP_STRING }],\n ['placeholder', { value: 'Select Date', ...PROP_STRING }],\n ['readonly', PROP_BOOLEAN],\n ['required', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', { value: true, ...PROP_BOOLEAN }],\n ['showdropdownon', { value: 'default', ...PROP_STRING }],\n ['showbuttonbar', { value: true, ...PROP_BOOLEAN }], // TODO not addressed\n ['showcustompicker', { value: false, ...PROP_BOOLEAN }],\n ['showindevice', { displayType: 'inline-block', value: 'all', ...PROP_STRING }],\n ['showweeks', { value: false, ...PROP_BOOLEAN }],\n ['tabindex', { value: 0, ...PROP_NUMBER }],\n ['selectfromothermonth', { value: true, ...PROP_BOOLEAN }],\n ['todaybutton', { value: true, ...PROP_BOOLEAN }],\n ['clearbutton', { value: true, ...PROP_BOOLEAN }],\n ['adaptiveposition', {value: true, ...PROP_BOOLEAN}],\n ['todaybuttonlabel', { value: 'LABEL_TODAY_DATE', ...PROP_STRING }],\n ['clearbuttonlabel', { value: 'LABEL_CLEAR_DATE', ...PROP_STRING }],\n ['showdateformatasplaceholder', PROP_BOOLEAN],\n ['viewmode', { value: 'day', ...PROP_STRING }]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-date',\n dateProps\n );\n registerFormWidget(\n FormWidgetType.DATE,\n new Map(dateProps)\n );\n};\n","import IMask from \"imask\";\nimport * as momentLib from 'moment';\nconst moment = momentLib.default || window['moment'];\n\nexport function validateTheMaskedDate (format, locale) {\n if(format == 'timestamp') {\n return false;\n }\n let modifiedFormat = format.toUpperCase().replace(/E/g, 'd');\n if((modifiedFormat.split('D').length - 1) === 1) {\n modifiedFormat = modifiedFormat.replace('D', 'DD');\n }\n if((modifiedFormat.split('M').length - 1) === 1 ) {\n modifiedFormat = modifiedFormat.replace('M', 'MM');\n }\n const parseFn= str => {\n return moment(str, modifiedFormat).toDate();\n };\n const formatFn = date => {\n return moment(date, modifiedFormat).format(modifiedFormat);\n };\n return {\n mask: Date,\n pattern: modifiedFormat,\n format: formatFn,\n parse: parseFn,\n\n blocks: {\n YYYY: {\n mask: IMask.MaskedRange,\n from: 1900,\n to: 9999,\n placeholderChar:'Y',\n maxLength: 4,\n },\n YYY: {\n mask: IMask.MaskedRange,\n from: 900,\n to: 999,\n placeholderChar:'Y',\n maxLength: 3,\n },\n YY: {\n mask: IMask.MaskedRange,\n from: 0,\n to: 99,\n placeholderChar:'Y',\n maxLength: 2,\n },\n Y: {\n mask: IMask.MaskedRange,\n from: 1900,\n to: 9999,\n placeholderChar:'Y',\n maxLength: 4,\n },\n M: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 12,\n placeholderChar:'M',\n maxLength: 2,\n },\n MM: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 12,\n placeholderChar:'M',\n maxLength: 2,\n },\n MMM: {\n mask: IMask.MaskedEnum,\n enum: Array.from({ length: 12 }, (_, i) =>\n new Date(0, i).toLocaleString(locale, { month: 'short' })\n ),\n placeholderChar:'M',\n maxLength: 3,\n },\n MMMM: {\n mask: IMask.MaskedEnum,\n enum: Array.from({ length: 12 }, (_, i) =>\n new Date(0, i).toLocaleString(locale, { month: 'long' })\n ),\n placeholderChar: \"M\",\n maxLength: 4\n },\n DD: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 31,\n placeholderChar:'D',\n maxLength: 2,\n },\n D: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 31,\n placeholderChar:'D',\n maxLength: 2,\n },\n ddd: {\n mask: IMask.MaskedEnum,\n enum: Array.from({ length: 7 }, (_, i) =>\n new Date(0, 0, i + 1).toLocaleString(locale, { weekday: 'short' })\n ),\n placeholderChar:'E',\n maxLength: 3,\n },\n dddd: {\n mask: IMask.MaskedEnum,\n enum: Array.from({ length: 7 }, (_, i) =>\n new Date(0, 0, i + 1).toLocaleString(locale, { weekday: 'long' })\n ),\n placeholderChar:'E',\n minLength: 6,\n },\n },\n autofix: true,\n lazy: false,\n overwrite: true,\n skipInvalid: true\n }\n}\n","import {IMaskDirective, IMaskModule} from 'angular-imask';\nimport {ChangeDetectorRef, Component, Inject, Injector, Optional, ViewChild} from '@angular/core';\nimport {NG_VALIDATORS, NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {BsDatepickerDirective, BsDatepickerModule} from 'ngx-bootstrap/datepicker';\nimport {\n addEventListenerOnElement,\n adjustContainerPosition,\n adjustContainerRightEdges,\n AppDefaults,\n EVENT_LIFE,\n FormWidgetType,\n getDateObj,\n getDisplayDateTimeFormat,\n getFormattedDate,\n getMomentLocaleObject\n} from '@wm/core';\nimport {IWidgetConfig, provideAs, provideAsWidgetRef, setFocusTrap, styler} from '@wm/components/base';\nimport {BaseDateTimeComponent} from '@wm/components/input/epoch/base-date-time';\nimport {registerProps} from './date.props';\nimport {validateTheMaskedDate} from './imaskUtil';\nimport {includes, isNaN, parseInt} from \"lodash-es\";\nimport {DateTimePickerComponent} from \"@wm/components/input/epoch/date-time-picker\";\n\ndeclare const _, $;\n\nconst CURRENT_DATE = 'CURRENT_DATE';\nconst DEFAULT_CLS = 'app-date input-group';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-date',\n hostClass: DEFAULT_CLS\n};\n\n@Component({\n standalone: true,\n imports: [DateTimePickerComponent, IMaskModule, BsDatepickerModule],\n selector: '[wmDate]',\n templateUrl: './date.component.html',\n providers: [\n provideAs(DateComponent, NG_VALUE_ACCESSOR, true),\n provideAs(DateComponent, NG_VALIDATORS, true),\n provideAsWidgetRef(DateComponent)\n ]\n})\nexport class DateComponent extends BaseDateTimeComponent {\n static readonly initializeProps = registerProps();\n\n public bsDataValue;\n public showdropdownon: string;\n private readonly dateContainerCls: string;\n public isOpen: boolean = false;\n private isEnterPressedOnDateInput = false;\n private _bsDefaultLoadCheck: boolean;\n public hint: string;\n public arialabel: string;\n\n private deregisterEventListener;\n private isCurrentDate;\n private focusTrap;\n private showdateformatasplaceholder = false;\n mask;\n private maskDateInputFormat;\n private maskDateInputFormatPlaceholder;\n\n get timestamp() {\n return this.bsDataValue ? this.bsDataValue.valueOf() : undefined;\n }\n\n get dateInputFormat() {\n return this._dateOptions.dateInputFormat || 'yyyy-MM-dd';\n }\n\n get displayValue() {\n if (this.showdateformatasplaceholder && this.imask?.maskRef && this.maskDateInputFormat) {\n return getFormattedDate(this.datePipe, this.bsDataValue, this.maskDateInputFormat, this.timeZone, null, this.isCurrentDate, this) || '';\n }\n return getFormattedDate(this.datePipe, this.bsDataValue, this.dateInputFormat, this.timeZone, null, this.isCurrentDate, this) || '';\n }\n\n get nativeDisplayValue() {\n return getFormattedDate(this.datePipe, this.bsDataValue, 'yyyy-MM-dd', this.timeZone, null, this.isCurrentDate, this) || '';\n }\n\n // @ts-ignore\n get datavalue() {\n return getFormattedDate(this.datePipe, this.bsDataValue, this.outputformat, this.timeZone, null, this.isCurrentDate, this) || '';\n }\n\n // Todo[Shubham]: needs to be redefined\n // sets the dataValue and computes the display model values\n // @ts-ignore\n set datavalue(newVal) {\n if (newVal === CURRENT_DATE) {\n setTimeout(() => {\n this.bsDataValue = this.timeZone ? getMomentLocaleObject(this.timeZone) : new Date();\n }, 50);\n this.isCurrentDate = true;\n } else {\n this.bsDataValue = newVal ? getDateObj(newVal, { isNativePicker: this.loadNativeDateInput }, this.timeZone) : undefined;\n this.isCurrentDate = false;\n }\n // update the previous datavalue.\n this.invokeOnChange(this.datavalue, undefined, true);\n this.cdRef.detectChanges();\n }\n\n @ViewChild(BsDatepickerDirective) protected bsDatePickerDirective;\n @ViewChild('dateInput', { read: IMaskDirective }) imask: IMaskDirective<any>;\n\n // TODO use BsLocaleService to set the current user's locale to see the localized labels\n constructor(\n inj: Injector,\n private readonly cdRef: ChangeDetectorRef,\n private readonly appDefaults: AppDefaults,\n @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any\n ) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n\n this.dateContainerCls = `app-date-${this.widgetId}`;\n this._dateOptions.containerClass = `app-date ${this.dateContainerCls}`;\n this._dateOptions.showWeekNumbers = false;\n this._dateOptions.customTodayClass='current-date';\n this._bsDefaultLoadCheck = true;\n this.datepattern = this.appDefaults.dateFormat || getDisplayDateTimeFormat(FormWidgetType.DATE);\n this.updateFormat('datepattern');\n }\n /**\n * This is an internal method triggered when the date input changes\n */\n onDisplayDateChange($event, isNativePicker: boolean = false) {\n this.updateIMask();\n if (this.isEnterPressedOnDateInput) {\n this.isEnterPressedOnDateInput = false;\n return;\n }\n let inputVal = $event.target.value;\n // When the input is cleared, the input value becomes maskDateInputFormatPlaceholder. This causes a validation error.\n // When the input value is equal to maskDateInputFormatPlaceholder, it means that the input is in an empty state.\n if (this.showdateformatasplaceholder && inputVal === this.maskDateInputFormatPlaceholder) {\n inputVal = \"\";\n }\n const newVal = getDateObj(inputVal, { pattern: this.datepattern, isNativePicker: isNativePicker });\n // date pattern validation\n // if invalid pattern is entered, device is showing an error.\n if (!this.formatValidation(newVal, inputVal, isNativePicker)) {\n return;\n }\n // min date and max date validation in mobile view.\n // if invalid dates are entered, device is showing an alert.\n if (isNativePicker && this.minDateMaxDateValidationOnInput(newVal, $event, this.displayValue, isNativePicker)) {\n return;\n }\n this.setDataValue(newVal);\n }\n\n // sets the dataValue and computes the display model values\n private setDataValue(newVal): void {\n this.invalidDateTimeFormat = false;\n // min date and max date validation in web.\n // if invalid dates are entered, device is showing validation message.\n this.minDateMaxDateValidationOnInput(newVal);\n if (getFormattedDate(this.datePipe, newVal, this.dateInputFormat, this.timeZone, null, this.isCurrentDate, this) === this.displayValue) {\n $(this.nativeElement).find('.display-input').val(this.displayValue);\n }\n if(!this.dateNotInRange){\n if (newVal) {\n this.bsDataValue = newVal;\n this.updateIMask();\n } else {\n this.bsDataValue = undefined;\n }\n if(this.datavalue=== this.getPrevDataValue()){\n const date=getFormattedDate(this.datePipe, this.datavalue, this.dateInputFormat, this.timeZone, null, this.isCurrentDate, this)\n $(this.nativeElement).find('.display-input').val(date);}\n }\n this.invokeOnChange(this.datavalue, {}, true);\n }\n\n onDatePickerOpen() {\n this.isOpen = true;\n this.activeDate = this.bsDataValue ? this.bsDataValue : (this.timeZone ? getMomentLocaleObject(this.timeZone) : new Date());\n // if (!this.bsDataValue) {\n // this.hightlightToday(this.activeDate);\n // }\n this.updateIMask();\n if (this.bsDatePickerDirective && (this.dateNotInRange||this.invalidDateTimeFormat)) {\n this.bsDatePickerDirective._bsValue = null;\n }\n\n // We are using the two input tags(To maintain the modal and proxy modal) for the date control.\n // So actual bootstrap input target width we made it to 0, so bootstrap calculating the calendar container top position improperly.\n // To fix the container top position set the width 1px;\n this.$element.find('.model-holder').width('1px');\n const dpContainerEl = $('bs-datepicker-container');\n dpContainerEl.attr('aria-label', 'Use Arrow keys to navigate dates, Choose Date from datepicker');\n $('.bs-calendar-container').removeAttr('role');\n const datePickerContainer = $('.bs-datepicker-container')[0];\n this.focusTrap = setFocusTrap(datePickerContainer, true);\n this.focusTrap.activate();\n this.addDatepickerKeyboardEvents(this, false);\n adjustContainerPosition($('bs-datepicker-container'), this.nativeElement, this.bsDatePickerDirective._datepicker);\n adjustContainerRightEdges($('bs-datepicker-container'), this.nativeElement, this.bsDatePickerDirective._datepicker);\n\n if (this.timeZone) {\n const todayBtn = document.querySelector(`.${this.dateContainerCls} .bs-datepicker-buttons .btn-today-wrapper button`) as HTMLElement;\n const setTodayTZHandler = (event) => {\n const todayTZ = getMomentLocaleObject(this.timeZone);\n if (new Date(this.bsDataValue).toDateString() !== new Date(todayTZ).toDateString()) {\n this.bsDataValue = todayTZ;\n }\n todayBtn.removeEventListener('click', setTodayTZHandler);\n };\n todayBtn.addEventListener('click', setTodayTZHandler)\n }\n }\n onInputBlur($event) {\n this.updateIMask();\n if (!$($event.relatedTarget).hasClass('current-date')) {\n this.invokeOnTouched();\n this.invokeEventCallback('blur', { $event });\n }\n }\n\n updateIMask() {\n this.imask?.maskRef?.updateValue();\n }\n\n public hideDatepickerDropdown() {\n this.invokeOnTouched();\n this.isOpen = false;\n this.focusTrap?.deactivate();\n this.isEnterPressedOnDateInput = false;\n if (this.deregisterEventListener) {\n this.deregisterEventListener();\n }\n this.blurDateInput(this.isOpen);\n }\n\n // change and blur events are added from the template\n protected handleEvent(node: HTMLElement, eventName: string, callback: Function, locals: any) {\n if (!includes(['blur', 'focus', 'change', 'click'], eventName)) {\n super.handleEvent(node, eventName, callback, locals);\n }\n }\n\n /**\n * This is an internal method used to toggle the dropdown of the date widget\n */\n public toggleDpDropdown($event, skipFocus: boolean = false) {\n if (this.loadNativeDateInput) {\n // Fixes click event getting triggred twice in Mobile devices.\n if (!skipFocus) {\n this.onDateTimeInputFocus();\n }\n }\n if ($event.type === 'click') {\n this.invokeEventCallback('click', { $event: $event });\n // this.focusOnInputEl();\n }\n if ($event.target && $($event.target).is('input') && !(this.isDropDownDisplayEnabledOnInput(this.showdropdownon))) {\n $event.stopPropagation();\n return;\n }\n this.bsDatePickerDirective.toggle();\n this.addBodyClickListener(this.bsDatePickerDirective.isOpen);\n }\n\n private addBodyClickListener(skipListener) {\n if (!skipListener) {\n return;\n }\n const bodyElement = document.querySelector('body');\n setTimeout(() => {\n const bsDateContainerElement = bodyElement.querySelector(`.${this.dateContainerCls}`);\n this.deregisterEventListener = addEventListenerOnElement(bodyElement, bsDateContainerElement, this.nativeElement, 'click', this.isDropDownDisplayEnabledOnInput(this.showdropdownon), () => {\n this.isOpen = false;\n }, EVENT_LIFE.ONCE, true);\n }, 350);\n }\n\n /**\n * This is an internal method triggered when pressing key on the date input\n */\n public onDisplayKeydown(event) {\n if (this.isDropDownDisplayEnabledOnInput(this.showdropdownon)) {\n event.stopPropagation();\n if (event.key === 'Enter') {\n const newVal = getDateObj(event.target.value, { pattern: this.datepattern });\n event.preventDefault();\n const formattedDate = getFormattedDate(this.datePipe, newVal, this.dateInputFormat, this.timeZone, null, this.isCurrentDate, this);\n let inputVal = event.target.value.trim();\n if (this.showdateformatasplaceholder && inputVal === this.maskDateInputFormatPlaceholder) {\n inputVal = \"\";\n }\n if (inputVal && this.datepattern === 'timestamp') {\n if (!isNaN(inputVal) && parseInt(inputVal) !== formattedDate) {\n this.invalidDateTimeFormat = true;\n this.invokeOnChange(this.datavalue, event, false);\n }\n } else if (inputVal && inputVal !== formattedDate) {\n this.invalidDateTimeFormat = true;\n this.invokeOnChange(this.datavalue, event, false);\n } else {\n this.invalidDateTimeFormat = false;\n this.isEnterPressedOnDateInput = true;\n this.bsDatePickerDirective.bsValue = inputVal ? newVal : '';\n this.updateIMask();\n }\n this.toggleDpDropdown(event);\n } else {\n this.hideDatepickerDropdown();\n }\n } else {\n this.hideDatepickerDropdown();\n }\n }\n\n /**\n * This is an internal method triggered when the date selection changes\n */\n onDateChange(newVal): void {\n /**\n * Ngx-bootstrap upgrade : To avoid the page load datechange event;\n * TODO:\n * https://github.com/valor-software/ngx-bootstrap/issues/6016\n * For above issue, once we get the solution from Ngx-Bootstrap team, remove the _bsDefaultLoadCheck check and update accordingly.\n * */\n if (this._bsDefaultLoadCheck) {\n this._bsDefaultLoadCheck = false;\n return;\n }\n\n this.setDataValue(newVal);\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'showdateformatasplaceholder') {\n this.showdateformatasplaceholder = nv;\n this.imask?.destroyMask();\n if (this.showdateformatasplaceholder && this.datepattern !== 'timestamp') {\n this.mask = validateTheMaskedDate(this.datepattern, this.selectedLocale);\n this.maskDateInputFormat = this.dateInputFormat;\n this.maskDateInputFormat = (this.dateInputFormat.split('d').length - 1) === 1 ? this.maskDateInputFormat.replace('d', 'dd') : this.maskDateInputFormat;\n this.maskDateInputFormat = (this.dateInputFormat.split('M').length - 1) === 1 ? this.maskDateInputFormat.replace('M', 'MM') : this.maskDateInputFormat;\n this.maskDateInputFormatPlaceholder = this.maskDateInputFormat.toUpperCase().replace('EEEE', 'EEEEEE').replace('MMMM', 'MMM');\n this.updateIMask();\n }\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n ngOnDestroy() {\n // MEMORY LEAK FIX: Clean up event listener deregister function\n if (this.deregisterEventListener) {\n this.deregisterEventListener();\n this.deregisterEventListener = null;\n }\n\n // MEMORY LEAK FIX: Clear ViewChild references\n this.bsDatePickerDirective = null;\n this.imask = null;\n\n // MEMORY LEAK FIX: Deactivate focus trap if active\n if (this.focusTrap) {\n this.focusTrap.deactivate();\n this.focusTrap = null;\n }\n\n // MEMORY LEAK FIX: Clear removeKeyupListener if set\n if (this.removeKeyupListener) {\n this.removeKeyupListener();\n this.removeKeyupListener = null;\n }\n\n // Call parent ngOnDestroy (BaseDateTimeComponent has cleanup)\n super.ngOnDestroy();\n }\n}\n","<input class=\"form-control app-textbox app-dateinput display-input\"\n focus-target\n type=\"text\"\n [name]=\"name\"\n #dateInput\n [imask]=\"mask\"\n [unmask]=\"true\"\n [tabindex]=\"loadNativeDateInput ? '-1' : tabindex\"\n [attr.aria-hidden]=\"!!loadNativeDateInput\"\n [value]=\"displayValue\"\n (click)=\"toggleDpDropdown($event, true)\"\n (focus)=\"onDateTimeInputFocus(); invokeOnFocus($event); updateIMask()\"\n (blur)=\"onInputBlur($event)\"\n [disabled]=\"disabled || readonly\"\n [autofocus]=\"autofocus\"\n [required]=\"required\"\n [readOnly]=\"isReadOnly\"\n [attr.placeholder]=\"placeholder\"\n [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\"\n (change)=\"onDisplayDateChange($event)\"\n (keydown)=\"_triggeredByUser = true; onDisplayKeydown($event);\">\n\n<span class=\"input-group-btn\">\n <button type=\"button\"\n class=\"btn btn-default btn-time\"\n [tabindex]=\"loadNativeDateInput ? '-1' : tabindex\"\n [attr.aria-hidden]=\"!!loadNativeDateInput\"\n [disabled]=\"disabled || readonly\"\n [attr.aria-label]=\"displayValue ? 'Change Date ' + displayValue : 'Choose date by pressing enter'\"\n aria-haspopup=\"true\"\n [attr.aria-expanded]=\"isOpen\"\n (click)=\"toggleDpDropdown($event, false)\">\n <i aria-hidden=\"true\"\n class=\"app-icon wm-sl-l sl-calendar\"></i>\n </button>\n</span>\n<div style=\"width: 0;display: inline-block;\">\n <input class=\"model-holder\"\n aria-label=\"datepicker dropdownmenu\"\n aria-controls=\"date\"\n [tabindex]=\"-1\"\n [attr.aria-hidden]=\"!!loadNativeDateInput\"\n [container]=\"containerTarget || '.wm-app'\"\n [bsConfig]=\"_dateOptions\"\n [isOpen]=\"isOpen\"\n #datepicker=\"bsDatepicker\"\n bsDatepicker\n [daysDisabled]=\"excludedDaysToDisable\"\n [datesDisabled]=\"excludedDatesToDisable\"\n placement=\"bottom right\"\n [isDisabled]=\"disabled || readonly\"\n [bsValue]=\"bsDataValue\"\n (onShown)=\"onDatePickerOpen()\"\n (onHidden)=\"hideDatepickerDropdown()\"\n (bsValueChange)=\"onDateChange($event)\">\n</div>\n\n@if (loadNativeDateInput) {\n <wm-datetimepicker\n dateTimePicker\n mode=\"DATE\"\n [config]=\"_dateOptions\"\n [placement]=\"modal\"\n [excludedDaysToDisable]=\"excludedDaysToDisable\"\n [excludedDatesToDisable]=\"excludedDatesToDisable\"\n [displayFormat]=\"dateInputFormat\"\n [value]=\"bsDataValue\"\n (change)=\"onDateChange($event)\">\n </wm-datetimepicker>\n <div class=\"mobile-input mobile-datepicker-container\"\n [tabindex]=\"tabindex || 0\"\n (click)=\"!(disabled || readonly) && showDatePickerModal(bsDataValue)\"\n (keydown.enter)=\"!(disabled || readonly) && showDatePickerModal(bsDataValue)\"\n (keydown.space)=\"$event.preventDefault(); !(disabled || readonly) && showDatePickerModal(bsDataValue)\"\n (focus)=\"onDateTimeInputFocus(true); invokeOnFocus($event);\"\n (blur)=\"onDateTimeInputBlur(); invokeOnTouched($event)\"\n [attr.aria-label]=\"displayValue ? 'Change Date ' + displayValue : arialabel || 'Choose Date'\"\n role=\"button\">\n </div>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../projects/components/widgets/input/epoch/date/src/date.props.ts","../../../../../../projects/components/widgets/input/epoch/date/src/imaskUtil.ts","../../../../../../projects/components/widgets/input/epoch/date/src/date.component.ts","../../../../../../projects/components/widgets/input/epoch/date/src/date.component.html","../../../../../../projects/components/widgets/input/epoch/date/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\nimport {FormWidgetType} from '@wm/core';\n\nexport const dateProps = new Map(\n [\n ['autofocus', PROP_BOOLEAN],\n ['class', PROP_STRING],\n ['dataentrymode', { value: 'default', ...PROP_STRING }],\n ['datavaluesource', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['datepattern', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['excludedays', PROP_STRING],\n ['excludedates', PROP_STRING],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['maxdate', PROP_STRING],\n ['mindate', PROP_STRING],\n ['name', PROP_STRING],\n ['outputformat', { value: 'yyyy-MM-dd', ...PROP_STRING }],\n ['placeholder', { value: 'Select Date', ...PROP_STRING }],\n ['readonly', PROP_BOOLEAN],\n ['required', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', { value: true, ...PROP_BOOLEAN }],\n ['showdropdownon', { value: 'default', ...PROP_STRING }],\n ['showbuttonbar', { value: true, ...PROP_BOOLEAN }], // TODO not addressed\n ['showcustompicker', { value: false, ...PROP_BOOLEAN }],\n ['showindevice', { displayType: 'inline-block', value: 'all', ...PROP_STRING }],\n ['showweeks', { value: false, ...PROP_BOOLEAN }],\n ['tabindex', { value: 0, ...PROP_NUMBER }],\n ['selectfromothermonth', { value: true, ...PROP_BOOLEAN }],\n ['todaybutton', { value: true, ...PROP_BOOLEAN }],\n ['clearbutton', { value: true, ...PROP_BOOLEAN }],\n ['adaptiveposition', {value: true, ...PROP_BOOLEAN}],\n ['todaybuttonlabel', { value: 'LABEL_TODAY_DATE', ...PROP_STRING }],\n ['clearbuttonlabel', { value: 'LABEL_CLEAR_DATE', ...PROP_STRING }],\n ['showdateformatasplaceholder', PROP_BOOLEAN],\n ['viewmode', { value: 'day', ...PROP_STRING }]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-date',\n dateProps\n );\n registerFormWidget(\n FormWidgetType.DATE,\n new Map(dateProps)\n );\n};\n","import IMask from \"imask\";\nimport * as momentLib from 'moment';\nconst moment = momentLib.default || window['moment'];\n\nexport function validateTheMaskedDate (format, locale) {\n if(format == 'timestamp') {\n return false;\n }\n let modifiedFormat = format.toUpperCase().replace(/E/g, 'd');\n if((modifiedFormat.split('D').length - 1) === 1) {\n modifiedFormat = modifiedFormat.replace('D', 'DD');\n }\n if((modifiedFormat.split('M').length - 1) === 1 ) {\n modifiedFormat = modifiedFormat.replace('M', 'MM');\n }\n const parseFn= str => {\n return moment(str, modifiedFormat).toDate();\n };\n const formatFn = date => {\n return moment(date, modifiedFormat).format(modifiedFormat);\n };\n return {\n mask: Date,\n pattern: modifiedFormat,\n format: formatFn,\n parse: parseFn,\n\n blocks: {\n YYYY: {\n mask: IMask.MaskedRange,\n from: 1900,\n to: 9999,\n placeholderChar:'Y',\n maxLength: 4,\n },\n YYY: {\n mask: IMask.MaskedRange,\n from: 900,\n to: 999,\n placeholderChar:'Y',\n maxLength: 3,\n },\n YY: {\n mask: IMask.MaskedRange,\n from: 0,\n to: 99,\n placeholderChar:'Y',\n maxLength: 2,\n },\n Y: {\n mask: IMask.MaskedRange,\n from: 1900,\n to: 9999,\n placeholderChar:'Y',\n maxLength: 4,\n },\n M: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 12,\n placeholderChar:'M',\n maxLength: 2,\n },\n MM: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 12,\n placeholderChar:'M',\n maxLength: 2,\n },\n MMM: {\n mask: IMask.MaskedEnum,\n enum: Array.from({ length: 12 }, (_, i) =>\n new Date(0, i).toLocaleString(locale, { month: 'short' })\n ),\n placeholderChar:'M',\n maxLength: 3,\n },\n MMMM: {\n mask: IMask.MaskedEnum,\n enum: Array.from({ length: 12 }, (_, i) =>\n new Date(0, i).toLocaleString(locale, { month: 'long' })\n ),\n placeholderChar: \"M\",\n maxLength: 4\n },\n DD: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 31,\n placeholderChar:'D',\n maxLength: 2,\n },\n D: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 31,\n placeholderChar:'D',\n maxLength: 2,\n },\n ddd: {\n mask: IMask.MaskedEnum,\n enum: Array.from({ length: 7 }, (_, i) =>\n new Date(0, 0, i + 1).toLocaleString(locale, { weekday: 'short' })\n ),\n placeholderChar:'E',\n maxLength: 3,\n },\n dddd: {\n mask: IMask.MaskedEnum,\n enum: Array.from({ length: 7 }, (_, i) =>\n new Date(0, 0, i + 1).toLocaleString(locale, { weekday: 'long' })\n ),\n placeholderChar:'E',\n minLength: 6,\n },\n },\n autofix: true,\n lazy: false,\n overwrite: true,\n skipInvalid: true\n }\n}\n","import {IMaskDirective, IMaskModule} from 'angular-imask';\nimport {ChangeDetectorRef, Component, Inject, Injector, Optional, ViewChild} from '@angular/core';\nimport {NG_VALIDATORS, NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {BsDatepickerDirective, BsDatepickerModule} from 'ngx-bootstrap/datepicker';\nimport {\n addEventListenerOnElement,\n adjustContainerPosition,\n adjustContainerRightEdges,\n AppDefaults,\n EVENT_LIFE,\n FormWidgetType,\n getDateObj,\n getDisplayDateTimeFormat,\n getFormattedDate,\n getMomentLocaleObject\n} from '@wm/core';\nimport {IWidgetConfig, provideAs, provideAsWidgetRef, setFocusTrap, styler} from '@wm/components/base';\nimport {BaseDateTimeComponent} from '@wm/components/input/epoch/base-date-time';\nimport {registerProps} from './date.props';\nimport {validateTheMaskedDate} from './imaskUtil';\nimport {includes, isNaN, parseInt} from \"lodash-es\";\nimport {DateTimePickerComponent} from \"@wm/components/input/epoch/date-time-picker\";\n\ndeclare const _, $;\n\nconst CURRENT_DATE = 'CURRENT_DATE';\nconst DEFAULT_CLS = 'app-date input-group';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-date',\n hostClass: DEFAULT_CLS\n};\n\n@Component({\n standalone: true,\n imports: [DateTimePickerComponent, IMaskModule, BsDatepickerModule],\n selector: '[wmDate]',\n templateUrl: './date.component.html',\n providers: [\n provideAs(DateComponent, NG_VALUE_ACCESSOR, true),\n provideAs(DateComponent, NG_VALIDATORS, true),\n provideAsWidgetRef(DateComponent)\n ]\n})\nexport class DateComponent extends BaseDateTimeComponent {\n static readonly initializeProps = registerProps();\n\n public bsDataValue;\n public showdropdownon: string;\n private readonly dateContainerCls: string;\n public isOpen: boolean = false;\n private isEnterPressedOnDateInput = false;\n private _bsDefaultLoadCheck: boolean;\n public hint: string;\n public arialabel: string;\n\n private deregisterEventListener;\n private isCurrentDate;\n private focusTrap;\n private showdateformatasplaceholder = false;\n mask;\n private maskDateInputFormat;\n private maskDateInputFormatPlaceholder;\n\n get timestamp() {\n return this.bsDataValue ? this.bsDataValue.valueOf() : undefined;\n }\n\n get dateInputFormat() {\n return this._dateOptions.dateInputFormat || 'yyyy-MM-dd';\n }\n\n get displayValue() {\n if (this.showdateformatasplaceholder && this.imask?.maskRef && this.maskDateInputFormat) {\n return getFormattedDate(this.datePipe, this.bsDataValue, this.maskDateInputFormat, this.timeZone, null, this.isCurrentDate, this) || '';\n }\n return getFormattedDate(this.datePipe, this.bsDataValue, this.dateInputFormat, this.timeZone, null, this.isCurrentDate, this) || '';\n }\n\n get nativeDisplayValue() {\n return getFormattedDate(this.datePipe, this.bsDataValue, 'yyyy-MM-dd', this.timeZone, null, this.isCurrentDate, this) || '';\n }\n\n // @ts-ignore\n get datavalue() {\n return getFormattedDate(this.datePipe, this.bsDataValue, this.outputformat, this.timeZone, null, this.isCurrentDate, this) || '';\n }\n\n // Todo[Shubham]: needs to be redefined\n // sets the dataValue and computes the display model values\n // @ts-ignore\n set datavalue(newVal) {\n if (newVal === CURRENT_DATE) {\n setTimeout(() => {\n this.bsDataValue = this.timeZone ? getMomentLocaleObject(this.timeZone) : new Date();\n }, 50);\n this.isCurrentDate = true;\n } else {\n this.bsDataValue = newVal ? getDateObj(newVal, { isNativePicker: this.loadNativeDateInput }, this.timeZone) : undefined;\n this.isCurrentDate = false;\n }\n // update the previous datavalue.\n this.invokeOnChange(this.datavalue, undefined, true);\n this.cdRef.detectChanges();\n }\n\n @ViewChild(BsDatepickerDirective) protected bsDatePickerDirective;\n @ViewChild('dateInput', { read: IMaskDirective }) imask: IMaskDirective<any>;\n\n // TODO use BsLocaleService to set the current user's locale to see the localized labels\n constructor(\n inj: Injector,\n private readonly cdRef: ChangeDetectorRef,\n private readonly appDefaults: AppDefaults,\n @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any\n ) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n\n this.dateContainerCls = `app-date-${this.widgetId}`;\n this._dateOptions.containerClass = `app-date ${this.dateContainerCls}`;\n this._dateOptions.showWeekNumbers = false;\n this._dateOptions.customTodayClass='current-date';\n this._bsDefaultLoadCheck = true;\n this.datepattern = this.appDefaults.dateFormat || getDisplayDateTimeFormat(FormWidgetType.DATE);\n this.updateFormat('datepattern');\n }\n /**\n * This is an internal method triggered when the date input changes\n */\n onDisplayDateChange($event, isNativePicker: boolean = false) {\n this.updateIMask();\n if (this.isEnterPressedOnDateInput) {\n this.isEnterPressedOnDateInput = false;\n return;\n }\n let inputVal = $event.target.value;\n // When the input is cleared, the input value becomes maskDateInputFormatPlaceholder. This causes a validation error.\n // When the input value is equal to maskDateInputFormatPlaceholder, it means that the input is in an empty state.\n if (this.showdateformatasplaceholder && inputVal === this.maskDateInputFormatPlaceholder) {\n inputVal = \"\";\n }\n const newVal = getDateObj(inputVal, { pattern: this.datepattern, isNativePicker: isNativePicker });\n // date pattern validation\n // if invalid pattern is entered, device is showing an error.\n if (!this.formatValidation(newVal, inputVal, isNativePicker)) {\n return;\n }\n // min date and max date validation in mobile view.\n // if invalid dates are entered, device is showing an alert.\n if (isNativePicker && this.minDateMaxDateValidationOnInput(newVal, $event, this.displayValue, isNativePicker)) {\n return;\n }\n this.setDataValue(newVal);\n }\n\n // sets the dataValue and computes the display model values\n private setDataValue(newVal): void {\n this.invalidDateTimeFormat = false;\n // min date and max date validation in web.\n // if invalid dates are entered, device is showing validation message.\n this.minDateMaxDateValidationOnInput(newVal);\n if (getFormattedDate(this.datePipe, newVal, this.dateInputFormat, this.timeZone, null, this.isCurrentDate, this) === this.displayValue) {\n $(this.nativeElement).find('.display-input').val(this.displayValue);\n }\n if(!this.dateNotInRange){\n if (newVal) {\n this.bsDataValue = newVal;\n this.updateIMask();\n } else {\n this.bsDataValue = undefined;\n }\n if(this.datavalue=== this.getPrevDataValue()){\n const date=getFormattedDate(this.datePipe, this.datavalue, this.dateInputFormat, this.timeZone, null, this.isCurrentDate, this)\n $(this.nativeElement).find('.display-input').val(date);}\n }\n this.invokeOnChange(this.datavalue, {}, true);\n }\n\n onDatePickerOpen() {\n this.isOpen = true;\n this.activeDate = this.bsDataValue ? this.bsDataValue : (this.timeZone ? getMomentLocaleObject(this.timeZone) : new Date());\n // if (!this.bsDataValue) {\n // this.hightlightToday(this.activeDate);\n // }\n this.updateIMask();\n if (this.bsDatePickerDirective && (this.dateNotInRange||this.invalidDateTimeFormat)) {\n this.bsDatePickerDirective._bsValue = null;\n }\n\n // We are using the two input tags(To maintain the modal and proxy modal) for the date control.\n // So actual bootstrap input target width we made it to 0, so bootstrap calculating the calendar container top position improperly.\n // To fix the container top position set the width 1px;\n this.$element.find('.model-holder').width('1px');\n const dpContainerEl = $('bs-datepicker-container');\n dpContainerEl.attr('aria-label', 'Use Arrow keys to navigate dates, Choose Date from datepicker');\n $('.bs-calendar-container').removeAttr('role');\n const datePickerContainer = $('.bs-datepicker-container')[0];\n this.focusTrap = setFocusTrap(datePickerContainer, true);\n try {\n // focus-trap throws if the container has no tabbable node yet (e.g. calendar still rendering);\n // that shouldn't stop the picker from opening.\n this.focusTrap.activate();\n } catch (e) {\n }\n this.addDatepickerKeyboardEvents(this, false);\n adjustContainerPosition($('bs-datepicker-container'), this.nativeElement, this.bsDatePickerDirective._datepicker);\n adjustContainerRightEdges($('bs-datepicker-container'), this.nativeElement, this.bsDatePickerDirective._datepicker);\n\n if (this.timeZone) {\n const todayBtn = document.querySelector(`.${this.dateContainerCls} .bs-datepicker-buttons .btn-today-wrapper button`) as HTMLElement;\n const setTodayTZHandler = (event) => {\n const todayTZ = getMomentLocaleObject(this.timeZone);\n if (new Date(this.bsDataValue).toDateString() !== new Date(todayTZ).toDateString()) {\n this.bsDataValue = todayTZ;\n }\n todayBtn.removeEventListener('click', setTodayTZHandler);\n };\n todayBtn.addEventListener('click', setTodayTZHandler)\n }\n }\n onInputBlur($event) {\n this.updateIMask();\n if (!$($event.relatedTarget).hasClass('current-date')) {\n this.invokeOnTouched();\n this.invokeEventCallback('blur', { $event });\n }\n }\n\n updateIMask() {\n this.imask?.maskRef?.updateValue();\n }\n\n public hideDatepickerDropdown() {\n this.invokeOnTouched();\n this.isOpen = false;\n this.focusTrap?.deactivate();\n this.isEnterPressedOnDateInput = false;\n if (this.deregisterEventListener) {\n this.deregisterEventListener();\n }\n this.blurDateInput(this.isOpen);\n }\n\n // change and blur events are added from the template\n protected handleEvent(node: HTMLElement, eventName: string, callback: Function, locals: any) {\n if (!includes(['blur', 'focus', 'change', 'click'], eventName)) {\n super.handleEvent(node, eventName, callback, locals);\n }\n }\n\n /**\n * This is an internal method used to toggle the dropdown of the date widget\n */\n public toggleDpDropdown($event, skipFocus: boolean = false) {\n if (this.loadNativeDateInput) {\n // Fixes click event getting triggred twice in Mobile devices.\n if (!skipFocus) {\n this.onDateTimeInputFocus();\n }\n }\n if ($event.type === 'click') {\n this.invokeEventCallback('click', { $event: $event });\n // this.focusOnInputEl();\n }\n if ($event.target && $($event.target).is('input') && !(this.isDropDownDisplayEnabledOnInput(this.showdropdownon))) {\n $event.stopPropagation();\n return;\n }\n this.bsDatePickerDirective.toggle();\n this.addBodyClickListener(this.bsDatePickerDirective.isOpen);\n }\n\n private addBodyClickListener(skipListener) {\n if (!skipListener) {\n return;\n }\n const bodyElement = document.querySelector('body');\n setTimeout(() => {\n const bsDateContainerElement = bodyElement.querySelector(`.${this.dateContainerCls}`);\n this.deregisterEventListener = addEventListenerOnElement(bodyElement, bsDateContainerElement, this.nativeElement, 'click', this.isDropDownDisplayEnabledOnInput(this.showdropdownon), () => {\n this.isOpen = false;\n }, EVENT_LIFE.ONCE, true);\n }, 350);\n }\n\n /**\n * This is an internal method triggered when pressing key on the date input\n */\n public onDisplayKeydown(event) {\n if (this.isDropDownDisplayEnabledOnInput(this.showdropdownon)) {\n event.stopPropagation();\n if (event.key === 'Enter') {\n const newVal = getDateObj(event.target.value, { pattern: this.datepattern });\n event.preventDefault();\n const formattedDate = getFormattedDate(this.datePipe, newVal, this.dateInputFormat, this.timeZone, null, this.isCurrentDate, this);\n let inputVal = event.target.value.trim();\n if (this.showdateformatasplaceholder && inputVal === this.maskDateInputFormatPlaceholder) {\n inputVal = \"\";\n }\n if (inputVal && this.datepattern === 'timestamp') {\n if (!isNaN(inputVal) && parseInt(inputVal) !== formattedDate) {\n this.invalidDateTimeFormat = true;\n this.invokeOnChange(this.datavalue, event, false);\n }\n } else if (inputVal && inputVal !== formattedDate) {\n this.invalidDateTimeFormat = true;\n this.invokeOnChange(this.datavalue, event, false);\n } else {\n this.invalidDateTimeFormat = false;\n this.isEnterPressedOnDateInput = true;\n this.bsDatePickerDirective.bsValue = inputVal ? newVal : '';\n this.updateIMask();\n }\n this.toggleDpDropdown(event);\n } else {\n this.hideDatepickerDropdown();\n }\n } else {\n this.hideDatepickerDropdown();\n }\n }\n\n /**\n * This is an internal method triggered when the date selection changes\n */\n onDateChange(newVal): void {\n /**\n * Ngx-bootstrap upgrade : To avoid the page load datechange event;\n * TODO:\n * https://github.com/valor-software/ngx-bootstrap/issues/6016\n * For above issue, once we get the solution from Ngx-Bootstrap team, remove the _bsDefaultLoadCheck check and update accordingly.\n * */\n if (this._bsDefaultLoadCheck) {\n this._bsDefaultLoadCheck = false;\n return;\n }\n\n this.setDataValue(newVal);\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'showdateformatasplaceholder') {\n this.showdateformatasplaceholder = nv;\n this.imask?.destroyMask();\n if (this.showdateformatasplaceholder && this.datepattern !== 'timestamp') {\n this.mask = validateTheMaskedDate(this.datepattern, this.selectedLocale);\n this.maskDateInputFormat = this.dateInputFormat;\n this.maskDateInputFormat = (this.dateInputFormat.split('d').length - 1) === 1 ? this.maskDateInputFormat.replace('d', 'dd') : this.maskDateInputFormat;\n this.maskDateInputFormat = (this.dateInputFormat.split('M').length - 1) === 1 ? this.maskDateInputFormat.replace('M', 'MM') : this.maskDateInputFormat;\n this.maskDateInputFormatPlaceholder = this.maskDateInputFormat.toUpperCase().replace('EEEE', 'EEEEEE').replace('MMMM', 'MMM');\n this.updateIMask();\n }\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n ngOnDestroy() {\n // MEMORY LEAK FIX: Clean up event listener deregister function\n if (this.deregisterEventListener) {\n this.deregisterEventListener();\n this.deregisterEventListener = null;\n }\n\n // MEMORY LEAK FIX: Clear ViewChild references\n this.bsDatePickerDirective = null;\n this.imask = null;\n\n // MEMORY LEAK FIX: Deactivate focus trap if active\n if (this.focusTrap) {\n this.focusTrap.deactivate();\n this.focusTrap = null;\n }\n\n // MEMORY LEAK FIX: Clear removeKeyupListener if set\n if (this.removeKeyupListener) {\n this.removeKeyupListener();\n this.removeKeyupListener = null;\n }\n\n // Call parent ngOnDestroy (BaseDateTimeComponent has cleanup)\n super.ngOnDestroy();\n }\n}\n","<input class=\"form-control app-textbox app-dateinput display-input\"\n focus-target\n type=\"text\"\n [name]=\"name\"\n #dateInput\n [imask]=\"mask\"\n [unmask]=\"true\"\n [tabindex]=\"loadNativeDateInput ? '-1' : tabindex\"\n [attr.aria-hidden]=\"!!loadNativeDateInput\"\n [value]=\"displayValue\"\n (click)=\"toggleDpDropdown($event, true)\"\n (focus)=\"onDateTimeInputFocus(); invokeOnFocus($event); updateIMask()\"\n (blur)=\"onInputBlur($event)\"\n [disabled]=\"disabled || readonly\"\n [autofocus]=\"autofocus\"\n [required]=\"required\"\n [readOnly]=\"isReadOnly\"\n [attr.placeholder]=\"placeholder\"\n [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\"\n (change)=\"onDisplayDateChange($event)\"\n (keydown)=\"_triggeredByUser = true; onDisplayKeydown($event);\">\n\n<span class=\"input-group-btn\">\n <button type=\"button\"\n class=\"btn btn-default btn-time\"\n [tabindex]=\"loadNativeDateInput ? '-1' : tabindex\"\n [attr.aria-hidden]=\"!!loadNativeDateInput\"\n [disabled]=\"disabled || readonly\"\n [attr.aria-label]=\"displayValue ? 'Change Date ' + displayValue : 'Choose date by pressing enter'\"\n aria-haspopup=\"true\"\n [attr.aria-expanded]=\"isOpen\"\n (click)=\"toggleDpDropdown($event, false)\">\n <i aria-hidden=\"true\"\n class=\"app-icon wm-sl-l sl-calendar\"></i>\n </button>\n</span>\n<div style=\"width: 0;display: inline-block;\">\n <input class=\"model-holder\"\n aria-label=\"datepicker dropdownmenu\"\n aria-controls=\"date\"\n [tabindex]=\"-1\"\n [attr.aria-hidden]=\"!!loadNativeDateInput\"\n [container]=\"containerTarget || '.wm-app'\"\n [bsConfig]=\"_dateOptions\"\n [isOpen]=\"isOpen\"\n #datepicker=\"bsDatepicker\"\n bsDatepicker\n [daysDisabled]=\"excludedDaysToDisable\"\n [datesDisabled]=\"excludedDatesToDisable\"\n placement=\"bottom right\"\n [isDisabled]=\"disabled || readonly\"\n [bsValue]=\"bsDataValue\"\n (onShown)=\"onDatePickerOpen()\"\n (onHidden)=\"hideDatepickerDropdown()\"\n (bsValueChange)=\"onDateChange($event)\">\n</div>\n\n@if (loadNativeDateInput) {\n <wm-datetimepicker\n dateTimePicker\n mode=\"DATE\"\n [config]=\"_dateOptions\"\n [placement]=\"modal\"\n [excludedDaysToDisable]=\"excludedDaysToDisable\"\n [excludedDatesToDisable]=\"excludedDatesToDisable\"\n [displayFormat]=\"dateInputFormat\"\n [value]=\"bsDataValue\"\n (change)=\"onDateChange($event)\">\n </wm-datetimepicker>\n <div class=\"mobile-input mobile-datepicker-container\"\n [tabindex]=\"tabindex || 0\"\n (click)=\"!(disabled || readonly) && showDatePickerModal(bsDataValue)\"\n (keydown.enter)=\"!(disabled || readonly) && showDatePickerModal(bsDataValue)\"\n (keydown.space)=\"$event.preventDefault(); !(disabled || readonly) && showDatePickerModal(bsDataValue)\"\n (focus)=\"onDateTimeInputFocus(true); invokeOnFocus($event);\"\n (blur)=\"onDateTimeInputBlur(); invokeOnTouched($event)\"\n [attr.aria-label]=\"displayValue ? 'Change Date ' + displayValue : arialabel || 'Choose Date'\"\n role=\"button\">\n </div>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -112,7 +112,7 @@
|
|
|
112
112
|
renderMarkers() {
|
|
113
113
|
const sliderTrack = this.nativeElement.querySelector('.range-input');
|
|
114
114
|
const trackWidth = sliderTrack?.offsetWidth - 9 || 0;
|
|
115
|
-
const tickCount = this.step > 0 ? Math.floor((this.maxvalue || 100 - this.minvalue || 0) / this.step) + 1 : 0;
|
|
115
|
+
const tickCount = this.step > 0 ? Math.floor(((this.maxvalue || 100) - (this.minvalue || 0)) / this.step) + 1 : 0;
|
|
116
116
|
const labels = base.convertDataToObject(this.markerlabeltext);
|
|
117
117
|
this.markerItems = [];
|
|
118
118
|
for (let i = 0; i < tickCount; i++) {
|
|
@@ -95,7 +95,7 @@ class SliderComponent extends BaseFormCustomComponent {
|
|
|
95
95
|
renderMarkers() {
|
|
96
96
|
const sliderTrack = this.nativeElement.querySelector('.range-input');
|
|
97
97
|
const trackWidth = sliderTrack?.offsetWidth - 9 || 0;
|
|
98
|
-
const tickCount = this.step > 0 ? Math.floor((this.maxvalue || 100 - this.minvalue || 0) / this.step) + 1 : 0;
|
|
98
|
+
const tickCount = this.step > 0 ? Math.floor(((this.maxvalue || 100) - (this.minvalue || 0)) / this.step) + 1 : 0;
|
|
99
99
|
const labels = convertDataToObject(this.markerlabeltext);
|
|
100
100
|
this.markerItems = [];
|
|
101
101
|
for (let i = 0; i < tickCount; i++) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/slider/src/slider.props.ts","../../../../../projects/components/widgets/input/slider/src/slider.component.ts","../../../../../projects/components/widgets/input/slider/src/slider.component.html","../../../../../projects/components/widgets/input/slider/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\nimport {FormWidgetType} from '@wm/core';\n\nexport const sliderProps = new Map(\n [\n ['class', PROP_STRING],\n ['datavalue', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['maxvalue', PROP_NUMBER],\n ['minvalue', PROP_NUMBER],\n ['name', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['step', PROP_NUMBER],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['showmarkers',{value: false, ...PROP_BOOLEAN}],\n ['markerlabeltext',PROP_ANY],\n ['showicons', PROP_BOOLEAN],\n ['starticon',{value : 'wi wi-minus', ...PROP_STRING}],\n ['endicon',{value : 'wi wi-plus', ...PROP_STRING}],\n ['starticonurl', PROP_STRING],\n ['endiconurl', PROP_STRING],\n ['rangelabelposition',{value : 'bottom', ...PROP_STRING}],\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-slider',\n sliderProps\n );\n registerFormWidget(\n FormWidgetType.SLIDER,\n new Map(sliderProps)\n );\n};\n","import {\n convertDataToObject,\n IWidgetConfig,\n provideAs,\n provideAsWidgetRef,\n styler,\n TextContentDirective,\n WmAppIconComponent\n} from \"@wm/components/base\";\nimport {FormsModule, NG_VALUE_ACCESSOR, NgModel} from '@angular/forms';\nimport {Component, Inject, Injector, OnDestroy, Optional, ViewChild} from '@angular/core';\nimport {BaseFormCustomComponent} from '@wm/components/input/base-form-custom';\n\nimport {registerProps} from './slider.props';\nimport {App, switchClass} from \"@wm/core\";\nimport { CommonModule } from \"@angular/common\";\n\n\nconst DEFAULT_CLS = 'app-slider slider';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-slider',\n hostClass: DEFAULT_CLS\n};\nconst RANGE_LABEL_POSITION: {[key: string]: string} = {\n top: 'range-label-top',\n side: 'range-label-side',\n bottom: 'range-label-bottom',\n};\n@Component({\n standalone: true,\n imports: [TextContentDirective, FormsModule, CommonModule, WmAppIconComponent],\n selector: '[wmSlider]',\n templateUrl: './slider.component.html',\n providers: [\n provideAs(SliderComponent, NG_VALUE_ACCESSOR, true),\n provideAsWidgetRef(SliderComponent)\n ]\n})\nexport class SliderComponent extends BaseFormCustomComponent implements OnDestroy {\n static readonly initializeProps = registerProps();\n\n public minvalue: number;\n public maxvalue: number;\n public disabled: boolean;\n public step: number;\n public shortcutkey: string;\n public tabindex: any;\n public name: string;\n public readonly: boolean;\n public hint: string;\n public arialabel: string;\n public markerlabeltext: string\n public showmarkers: boolean;\n public showicons: boolean;\n public starticon: string;\n public endicon:string;\n public starticonurl:string;\n public endiconurl: string;\n public isPrism: boolean = false;\n\n @ViewChild(NgModel) ngModel: NgModel;\n public markerItems: any[];\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any, public app?: App) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n this.isPrism = this.app.isPrism;\n }\n\n // change and blur events are added from the template\n protected handleEvent(node: HTMLElement, eventName: string, callback: Function, locals: any) {\n if (eventName !== 'change' && eventName !== 'blur') {\n super.handleEvent(node, eventName, callback, locals);\n }\n }\n\n public handleChange(newVal?: boolean) {\n this.updateSliderValue();\n this.invokeOnChange(this.datavalue, {type: 'change'}, this.ngModel.valid);\n }\n\n updateSliderValue() {\n const sliderValue = 100 - ((((Number(this.datavalue) || 0) - (this.minvalue || 0)) / ((this.maxvalue || 100) - (this.minvalue || 0))) * 100);\n const slider = this.nativeElement.querySelector('.slider-control') as HTMLElement;\n if (slider) {\n const safePercent = Math.min(100, Math.max(0, sliderValue));\n slider.style.setProperty('--end', `${safePercent}%`);\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'tabindex') {\n return;\n }\n else if(key === 'showmarkers'||key === 'markerlabeltext' || key === 'minvalue'||key === 'maxvalue'||key === 'step') {\n if(this.showmarkers) {\n this.renderMarkers();\n }\n } else if(key === 'rangelabelposition'){\n switchClass(this.nativeElement, RANGE_LABEL_POSITION[nv], RANGE_LABEL_POSITION[ov]);\n }else if(key === 'datavalue'){\n this.datavalue = (nv === \"\" || nv === null) ? (this.datavalue ?? 50) : nv\n this.updateSliderValue()\n }\n super.onPropertyChange(key, nv, ov);\n }\n private renderMarkers() {\n const sliderTrack = this.nativeElement.querySelector('.range-input') as HTMLElement;\n const trackWidth = sliderTrack?.offsetWidth-9|| 0;\n const tickCount = this.step > 0 ? Math.floor((this.maxvalue||100 - this.minvalue||0) / this.step) + 1 : 0;\n const labels = convertDataToObject(this.markerlabeltext);\n this.markerItems = [];\n for (let i = 0; i < tickCount; i++) {\n const left = ((trackWidth / (tickCount - 1)) * i);\n const label = labels?.[i]?.dataValue ?? (Array.isArray(labels) ? (typeof labels[i] === 'object' && labels[i]?.title ? labels[i].title : labels[i]) : `${i}`);\n const position = Array.isArray(labels) && typeof labels[i] === 'object' && labels[i]?.position ? labels[i].position : 'up';\n this.markerItems.push({ label, position, left });\n }\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if(this.showmarkers) {\n setTimeout(() => {this.renderMarkers();}, 40);\n }\n if(this.datavalue){\n setTimeout(() => {this.updateSliderValue();});\n }\n }\n\n decrementButtonClick(event: Event) {\n event.preventDefault();\n event.stopPropagation();\n\n if (this.disabled) {\n return;\n }\n\n const step = Number(this.step) || 1;\n const min = Number(this.minvalue) || 0;\n\n let value = Number(this.datavalue ?? 50);\n value = value - step;\n if (value <= min) {\n return;\n }\n if (!isNaN(min)) {\n value = Math.max(value, min);\n }\n\n this.datavalue = value;\n this.handleChange()\n }\n\n\n incrementButtonClick(event: Event) {\n event.preventDefault();\n event.stopPropagation();\n\n if (this.disabled) {\n return;\n }\n\n const step = Number(this.step) || 1;\n const max = Number(this.maxvalue) || 100;\n\n let value = Number(this.datavalue ?? 50);\n value = value + step;\n if (value >= max) return;\n\n if (!isNaN(max)) {\n value = Math.min(value, max);\n }\n\n this.datavalue = value;\n this.handleChange()\n }\n\n\n ngOnDestroy() {\n // MEMORY LEAK FIX: Clear ViewChild reference\n this.ngModel = null;\n\n // MEMORY LEAK FIX: Clear marker items array\n if (this.markerItems) {\n this.markerItems = [];\n }\n\n // Call parent ngOnDestroy\n super.ngOnDestroy();\n }\n}\n","@if (isPrism) {\n<div class=\"slider-container\">\n @if (showicons) {\n <button class=\"btn-icon\" type=\"button\" name=\"decrementButton\" (click)=\"decrementButtonClick($event)\">\n <wm-app-icon [iconclass]=\"starticon\" [iconurl]=\"starticonurl\"></wm-app-icon> \n </button>\n }\n <div class=\"slider-control\">\n @if(!showmarkers){\n <span [textContent]=\"minvalue||0\" class=\"app-slider-value pull-left\"></span>\n <span [textContent]=\"maxvalue||100\" class=\"app-slider-value pull-right\"></span>\n }\n <input class=\"range-input\" type=\"range\" aria-orientation=\"horizontal\" focus-target [title]=\"datavalue\"\n [attr.min]=\"minvalue\" [attr.max]=\"maxvalue\" [attr.step]=\"step\" [(ngModel)]=\"datavalue\"\n [ngModelOptions]=\"{ standalone: true }\" [disabled]=\"disabled||readonly\" [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\" (blur)=\"invokeOnTouched($event)\" (ngModelChange)=\"handleChange($event)\"\n [attr.name]=\"name\" [tabindex]=\"tabindex\" />\n <p class=\"active-slider\"></p>\n </div>\n @if (showicons) {\n <button class=\"btn-icon\" type=\"button\" name=\"incrementButton\" (click)=\"incrementButtonClick($event)\">\n <wm-app-icon [iconclass]=\"endicon\" [iconurl]=\"endiconurl\"></wm-app-icon> \n </button>\n }\n</div>\n\n} @else {\n @if(!showmarkers){\n <span [textContent]=\"minvalue||0\" class=\"app-slider-value pull-left\"></span>\n <span [textContent]=\"maxvalue||100\" class=\"app-slider-value pull-right\"></span>\n}\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n focus-target\n type=\"range\" [title]=\"datavalue\"\n [attr.min]=\"minvalue\"\n [attr.max]=\"maxvalue\"\n [attr.step]=\"step\"\n [(ngModel)]=\"datavalue\"\n [ngModelOptions]=\"{standalone: true}\"\n [disabled]=\"disabled||readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\"\n [attr.name]=\"name\"\n [tabindex]=\"tabindex\"/>\n}\n@if (readonly || disabled) {\n <div aria-readonly=\"true\" class=\"readonly-wrapper\"></div>\n}\n@if(showmarkers){\n <div class=\"marker-container\">\n@for (marker of markerItems; track marker) {\n <div class=\"marker-wrapper\"\n [ngStyle]=\"{ left: marker.left + 'px' }\"\n [attr.title]=\"marker.label\">\n <div class=\"marker-label\" [ngClass]=\"marker.position\" [attr.title]=\"marker.label\">\n {{ marker.label }}\n </div>\n <div class=\"marker-dot\" [attr.title]=\"marker.label\"></div>\n </div>\n }\n </div>\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/slider/src/slider.props.ts","../../../../../projects/components/widgets/input/slider/src/slider.component.ts","../../../../../projects/components/widgets/input/slider/src/slider.component.html","../../../../../projects/components/widgets/input/slider/src/index.ts"],"sourcesContent":["import {PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\nimport {FormWidgetType} from '@wm/core';\n\nexport const sliderProps = new Map(\n [\n ['class', PROP_STRING],\n ['datavalue', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['maxvalue', PROP_NUMBER],\n ['minvalue', PROP_NUMBER],\n ['name', PROP_STRING],\n ['readonly', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['step', PROP_NUMBER],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['showmarkers',{value: false, ...PROP_BOOLEAN}],\n ['markerlabeltext',PROP_ANY],\n ['showicons', PROP_BOOLEAN],\n ['starticon',{value : 'wi wi-minus', ...PROP_STRING}],\n ['endicon',{value : 'wi wi-plus', ...PROP_STRING}],\n ['starticonurl', PROP_STRING],\n ['endiconurl', PROP_STRING],\n ['rangelabelposition',{value : 'bottom', ...PROP_STRING}],\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-slider',\n sliderProps\n );\n registerFormWidget(\n FormWidgetType.SLIDER,\n new Map(sliderProps)\n );\n};\n","import {\n convertDataToObject,\n IWidgetConfig,\n provideAs,\n provideAsWidgetRef,\n styler,\n TextContentDirective,\n WmAppIconComponent\n} from \"@wm/components/base\";\nimport {FormsModule, NG_VALUE_ACCESSOR, NgModel} from '@angular/forms';\nimport {Component, Inject, Injector, OnDestroy, Optional, ViewChild} from '@angular/core';\nimport {BaseFormCustomComponent} from '@wm/components/input/base-form-custom';\n\nimport {registerProps} from './slider.props';\nimport {App, switchClass} from \"@wm/core\";\nimport { CommonModule } from \"@angular/common\";\n\n\nconst DEFAULT_CLS = 'app-slider slider';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-slider',\n hostClass: DEFAULT_CLS\n};\nconst RANGE_LABEL_POSITION: {[key: string]: string} = {\n top: 'range-label-top',\n side: 'range-label-side',\n bottom: 'range-label-bottom',\n};\n@Component({\n standalone: true,\n imports: [TextContentDirective, FormsModule, CommonModule, WmAppIconComponent],\n selector: '[wmSlider]',\n templateUrl: './slider.component.html',\n providers: [\n provideAs(SliderComponent, NG_VALUE_ACCESSOR, true),\n provideAsWidgetRef(SliderComponent)\n ]\n})\nexport class SliderComponent extends BaseFormCustomComponent implements OnDestroy {\n static readonly initializeProps = registerProps();\n\n public minvalue: number;\n public maxvalue: number;\n public disabled: boolean;\n public step: number;\n public shortcutkey: string;\n public tabindex: any;\n public name: string;\n public readonly: boolean;\n public hint: string;\n public arialabel: string;\n public markerlabeltext: any;\n public showmarkers: boolean;\n public showicons: boolean;\n public starticon: string;\n public endicon:string;\n public starticonurl:string;\n public endiconurl: string;\n public isPrism: boolean = false;\n\n @ViewChild(NgModel) ngModel: NgModel;\n public markerItems: any[];\n\n constructor(inj: Injector, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any, public app?: App) {\n super(inj, WIDGET_CONFIG, explicitContext);\n styler(this.nativeElement, this);\n this.isPrism = this.app.isPrism;\n }\n\n // change and blur events are added from the template\n protected handleEvent(node: HTMLElement, eventName: string, callback: Function, locals: any) {\n if (eventName !== 'change' && eventName !== 'blur') {\n super.handleEvent(node, eventName, callback, locals);\n }\n }\n\n public handleChange(newVal?: boolean) {\n this.updateSliderValue();\n this.invokeOnChange(this.datavalue, {type: 'change'}, this.ngModel.valid);\n }\n\n updateSliderValue() {\n const sliderValue = 100 - ((((Number(this.datavalue) || 0) - (this.minvalue || 0)) / ((this.maxvalue || 100) - (this.minvalue || 0))) * 100);\n const slider = this.nativeElement.querySelector('.slider-control') as HTMLElement;\n if (slider) {\n const safePercent = Math.min(100, Math.max(0, sliderValue));\n slider.style.setProperty('--end', `${safePercent}%`);\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'tabindex') {\n return;\n }\n else if(key === 'showmarkers'||key === 'markerlabeltext' || key === 'minvalue'||key === 'maxvalue'||key === 'step') {\n if(this.showmarkers) {\n this.renderMarkers();\n }\n } else if(key === 'rangelabelposition'){\n switchClass(this.nativeElement, RANGE_LABEL_POSITION[nv], RANGE_LABEL_POSITION[ov]);\n }else if(key === 'datavalue'){\n this.datavalue = (nv === \"\" || nv === null) ? (this.datavalue ?? 50) : nv\n this.updateSliderValue()\n }\n super.onPropertyChange(key, nv, ov);\n }\n private renderMarkers() {\n const sliderTrack = this.nativeElement.querySelector('.range-input') as HTMLElement;\n const trackWidth = sliderTrack?.offsetWidth-9|| 0;\n const tickCount = this.step > 0 ? Math.floor(((this.maxvalue||100) - (this.minvalue||0)) / this.step) + 1 : 0;\n const labels = convertDataToObject(this.markerlabeltext);\n this.markerItems = [];\n for (let i = 0; i < tickCount; i++) {\n const left = ((trackWidth / (tickCount - 1)) * i);\n const label = labels?.[i]?.dataValue ?? (Array.isArray(labels) ? (typeof labels[i] === 'object' && labels[i]?.title ? labels[i].title : labels[i]) : `${i}`);\n const position = Array.isArray(labels) && typeof labels[i] === 'object' && labels[i]?.position ? labels[i].position : 'up';\n this.markerItems.push({ label, position, left });\n }\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if(this.showmarkers) {\n setTimeout(() => {this.renderMarkers();}, 40);\n }\n if(this.datavalue){\n setTimeout(() => {this.updateSliderValue();});\n }\n }\n\n decrementButtonClick(event: Event) {\n event.preventDefault();\n event.stopPropagation();\n\n if (this.disabled) {\n return;\n }\n\n const step = Number(this.step) || 1;\n const min = Number(this.minvalue) || 0;\n\n let value = Number(this.datavalue ?? 50);\n value = value - step;\n if (value <= min) {\n return;\n }\n if (!isNaN(min)) {\n value = Math.max(value, min);\n }\n\n this.datavalue = value;\n this.handleChange()\n }\n\n\n incrementButtonClick(event: Event) {\n event.preventDefault();\n event.stopPropagation();\n\n if (this.disabled) {\n return;\n }\n\n const step = Number(this.step) || 1;\n const max = Number(this.maxvalue) || 100;\n\n let value = Number(this.datavalue ?? 50);\n value = value + step;\n if (value >= max) return;\n\n if (!isNaN(max)) {\n value = Math.min(value, max);\n }\n\n this.datavalue = value;\n this.handleChange()\n }\n\n\n ngOnDestroy() {\n // MEMORY LEAK FIX: Clear ViewChild reference\n this.ngModel = null;\n\n // MEMORY LEAK FIX: Clear marker items array\n if (this.markerItems) {\n this.markerItems = [];\n }\n\n // Call parent ngOnDestroy\n super.ngOnDestroy();\n }\n}\n","@if (isPrism) {\n<div class=\"slider-container\">\n @if (showicons) {\n <button class=\"btn-icon\" type=\"button\" name=\"decrementButton\" (click)=\"decrementButtonClick($event)\">\n <wm-app-icon [iconclass]=\"starticon\" [iconurl]=\"starticonurl\"></wm-app-icon> \n </button>\n }\n <div class=\"slider-control\">\n @if(!showmarkers){\n <span [textContent]=\"minvalue||0\" class=\"app-slider-value pull-left\"></span>\n <span [textContent]=\"maxvalue||100\" class=\"app-slider-value pull-right\"></span>\n }\n <input class=\"range-input\" type=\"range\" aria-orientation=\"horizontal\" focus-target [title]=\"datavalue\"\n [attr.min]=\"minvalue\" [attr.max]=\"maxvalue\" [attr.step]=\"step\" [(ngModel)]=\"datavalue\"\n [ngModelOptions]=\"{ standalone: true }\" [disabled]=\"disabled||readonly\" [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\" (blur)=\"invokeOnTouched($event)\" (ngModelChange)=\"handleChange($event)\"\n [attr.name]=\"name\" [tabindex]=\"tabindex\" />\n <p class=\"active-slider\"></p>\n </div>\n @if (showicons) {\n <button class=\"btn-icon\" type=\"button\" name=\"incrementButton\" (click)=\"incrementButtonClick($event)\">\n <wm-app-icon [iconclass]=\"endicon\" [iconurl]=\"endiconurl\"></wm-app-icon> \n </button>\n }\n</div>\n\n} @else {\n @if(!showmarkers){\n <span [textContent]=\"minvalue||0\" class=\"app-slider-value pull-left\"></span>\n <span [textContent]=\"maxvalue||100\" class=\"app-slider-value pull-right\"></span>\n}\n<input class=\"range-input\" aria-orientation=\"horizontal\"\n focus-target\n type=\"range\" [title]=\"datavalue\"\n [attr.min]=\"minvalue\"\n [attr.max]=\"maxvalue\"\n [attr.step]=\"step\"\n [(ngModel)]=\"datavalue\"\n [ngModelOptions]=\"{standalone: true}\"\n [disabled]=\"disabled||readonly\"\n [attr.accesskey]=\"shortcutkey\"\n [attr.aria-label]=\"arialabel\"\n (blur)=\"invokeOnTouched($event)\"\n (ngModelChange)=\"handleChange($event)\"\n [attr.name]=\"name\"\n [tabindex]=\"tabindex\"/>\n}\n@if (readonly || disabled) {\n <div aria-readonly=\"true\" class=\"readonly-wrapper\"></div>\n}\n@if(showmarkers){\n <div class=\"marker-container\">\n@for (marker of markerItems; track marker) {\n <div class=\"marker-wrapper\"\n [ngStyle]=\"{ left: marker.left + 'px' }\"\n [attr.title]=\"marker.label\">\n <div class=\"marker-label\" [ngClass]=\"marker.position\" [attr.title]=\"marker.label\">\n {{ marker.label }}\n </div>\n <div class=\"marker-dot\" [attr.title]=\"marker.label\"></div>\n </div>\n }\n </div>\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ declare class SliderComponent extends BaseFormCustomComponent implements OnDestr
|
|
|
17
17
|
readonly: boolean;
|
|
18
18
|
hint: string;
|
|
19
19
|
arialabel: string;
|
|
20
|
-
markerlabeltext:
|
|
20
|
+
markerlabeltext: any;
|
|
21
21
|
showmarkers: boolean;
|
|
22
22
|
showicons: boolean;
|
|
23
23
|
starticon: string;
|
|
@@ -2107,7 +2107,7 @@
|
|
|
2107
2107
|
const pipeInfo = pipeProvider.meta(pipeName);
|
|
2108
2108
|
let pipeInstance;
|
|
2109
2109
|
if (!pipeInfo) {
|
|
2110
|
-
pipeInstance = nullPipe;
|
|
2110
|
+
pipeInstance = nullPipe();
|
|
2111
2111
|
}
|
|
2112
2112
|
else {
|
|
2113
2113
|
if (pipeInfo.pure) {
|
|
@@ -2210,7 +2210,7 @@
|
|
|
2210
2210
|
const pipeInfo = pipeProvider.meta(pipeName);
|
|
2211
2211
|
let pipeInstance;
|
|
2212
2212
|
if (!pipeInfo) {
|
|
2213
|
-
pipeInstance = nullPipe;
|
|
2213
|
+
pipeInstance = nullPipe();
|
|
2214
2214
|
}
|
|
2215
2215
|
else {
|
|
2216
2216
|
if (pipeInfo.pure) {
|
|
@@ -5311,14 +5311,14 @@
|
|
|
5311
5311
|
if (!iScroll) {
|
|
5312
5312
|
const iScrollSubscription = app.subscribe('iscroll-update', (_el) => {
|
|
5313
5313
|
if (!lodashEs.isEmpty(_el) && _el.isSameNode($scrollParent[0])) {
|
|
5314
|
-
this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum);
|
|
5314
|
+
this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum, parent);
|
|
5315
5315
|
iScrollSubscription();
|
|
5316
5316
|
}
|
|
5317
5317
|
});
|
|
5318
5318
|
app.notify('no-iscroll', $scrollParent[0]);
|
|
5319
5319
|
return;
|
|
5320
5320
|
}
|
|
5321
|
-
this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum);
|
|
5321
|
+
this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum, parent);
|
|
5322
5322
|
}
|
|
5323
5323
|
/**
|
|
5324
5324
|
* @description
|
|
@@ -5326,9 +5326,10 @@
|
|
|
5326
5326
|
* @param {object} el scrollable element scope
|
|
5327
5327
|
* @param {object} dataNavigator pagination instance
|
|
5328
5328
|
* @param {number} debounceNum provided to lodash debounce
|
|
5329
|
+
* @param {object} parent list instance
|
|
5329
5330
|
* @returns null
|
|
5330
5331
|
*/
|
|
5331
|
-
setIscrollHandlers(el, dataNavigator, debounceNum) {
|
|
5332
|
+
setIscrollHandlers(el, dataNavigator, debounceNum, parent) {
|
|
5332
5333
|
const list = $(el).find('[wmList]').first();
|
|
5333
5334
|
const isHorizontal = list.attr('direction') === 'row';
|
|
5334
5335
|
if (isHorizontal) {
|
package/core/fesm2022/index.mjs
CHANGED
|
@@ -2090,7 +2090,7 @@ function $parseExpr(expr, defOnly) {
|
|
|
2090
2090
|
const pipeInfo = pipeProvider.meta(pipeName);
|
|
2091
2091
|
let pipeInstance;
|
|
2092
2092
|
if (!pipeInfo) {
|
|
2093
|
-
pipeInstance = nullPipe;
|
|
2093
|
+
pipeInstance = nullPipe();
|
|
2094
2094
|
}
|
|
2095
2095
|
else {
|
|
2096
2096
|
if (pipeInfo.pure) {
|
|
@@ -2193,7 +2193,7 @@ const fnExecutor = (expr, exprType) => {
|
|
|
2193
2193
|
const pipeInfo = pipeProvider.meta(pipeName);
|
|
2194
2194
|
let pipeInstance;
|
|
2195
2195
|
if (!pipeInfo) {
|
|
2196
|
-
pipeInstance = nullPipe;
|
|
2196
|
+
pipeInstance = nullPipe();
|
|
2197
2197
|
}
|
|
2198
2198
|
else {
|
|
2199
2199
|
if (pipeInfo.pure) {
|
|
@@ -5332,14 +5332,14 @@ class PaginationService {
|
|
|
5332
5332
|
if (!iScroll) {
|
|
5333
5333
|
const iScrollSubscription = app.subscribe('iscroll-update', (_el) => {
|
|
5334
5334
|
if (!isEmpty(_el) && _el.isSameNode($scrollParent[0])) {
|
|
5335
|
-
this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum);
|
|
5335
|
+
this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum, parent);
|
|
5336
5336
|
iScrollSubscription();
|
|
5337
5337
|
}
|
|
5338
5338
|
});
|
|
5339
5339
|
app.notify('no-iscroll', $scrollParent[0]);
|
|
5340
5340
|
return;
|
|
5341
5341
|
}
|
|
5342
|
-
this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum);
|
|
5342
|
+
this.setIscrollHandlers($scrollParent[0], dataNavigator, debounceNum, parent);
|
|
5343
5343
|
}
|
|
5344
5344
|
/**
|
|
5345
5345
|
* @description
|
|
@@ -5347,9 +5347,10 @@ class PaginationService {
|
|
|
5347
5347
|
* @param {object} el scrollable element scope
|
|
5348
5348
|
* @param {object} dataNavigator pagination instance
|
|
5349
5349
|
* @param {number} debounceNum provided to lodash debounce
|
|
5350
|
+
* @param {object} parent list instance
|
|
5350
5351
|
* @returns null
|
|
5351
5352
|
*/
|
|
5352
|
-
setIscrollHandlers(el, dataNavigator, debounceNum) {
|
|
5353
|
+
setIscrollHandlers(el, dataNavigator, debounceNum, parent) {
|
|
5353
5354
|
const list = $(el).find('[wmList]').first();
|
|
5354
5355
|
const isHorizontal = list.attr('direction') === 'row';
|
|
5355
5356
|
if (isHorizontal) {
|