primeng 17.18.8 → 17.18.9
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/esm2022/autocomplete/autocomplete.mjs +2 -4
- package/esm2022/fileupload/fileupload.mjs +16 -2
- package/esm2022/menu/menu.mjs +2 -6
- package/esm2022/sidebar/sidebar.mjs +5 -2
- package/esm2022/slider/slider.mjs +3 -1
- package/esm2022/table/table.mjs +42 -35
- package/fesm2022/primeng-autocomplete.mjs +1 -3
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +15 -1
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +1 -5
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-sidebar.mjs +4 -1
- package/fesm2022/primeng-sidebar.mjs.map +1 -1
- package/fesm2022/primeng-slider.mjs +2 -0
- package/fesm2022/primeng-slider.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +41 -34
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fileupload/fileupload.d.ts +5 -0
- package/package.json +145 -145
- package/table/table.d.ts +3 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-slider.mjs","sources":["../../src/app/components/slider/slider.ts","../../src/app/components/slider/primeng-slider.ts"],"sourcesContent":["import { CommonModule, DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n NgModule,\n NgZone,\n OnDestroy,\n Output,\n PLATFORM_ID,\n Renderer2,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n forwardRef,\n numberAttribute\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { DomHandler } from 'primeng/dom';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { AutoFocusModule } from 'primeng/autofocus';\nimport { SliderChangeEvent, SliderSlideEndEvent } from './slider.interface';\n\nexport const SLIDER_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Slider),\n multi: true\n};\n/**\n * Slider is a component to provide input with a drag handle.\n * @group Components\n */\n@Component({\n selector: 'p-slider',\n template: `\n <div\n [ngStyle]=\"style\"\n [class]=\"styleClass\"\n [ngClass]=\"{ 'p-slider p-component': true, 'p-disabled': disabled, 'p-slider-horizontal': orientation == 'horizontal', 'p-slider-vertical': orientation == 'vertical', 'p-slider-animate': animate }\"\n (click)=\"onBarClick($event)\"\n [attr.data-pc-name]=\"'slider'\"\n [attr.data-pc-section]=\"'root'\"\n >\n <span\n *ngIf=\"range && orientation == 'horizontal'\"\n class=\"p-slider-range\"\n [ngStyle]=\"{ left: offset !== null && offset !== undefined ? offset + '%' : handleValues[0] + '%', width: diff ? diff + '%' : handleValues[1] - handleValues[0] + '%' }\"\n [attr.data-pc-section]=\"'range'\"\n ></span>\n <span\n *ngIf=\"range && orientation == 'vertical'\"\n class=\"p-slider-range\"\n [ngStyle]=\"{ bottom: offset !== null && offset !== undefined ? offset + '%' : handleValues[0] + '%', height: diff ? diff + '%' : handleValues[1] - handleValues[0] + '%' }\"\n [attr.data-pc-section]=\"'range'\"\n ></span>\n <span *ngIf=\"!range && orientation == 'vertical'\" class=\"p-slider-range\" [attr.data-pc-section]=\"'range'\" [ngStyle]=\"{ height: handleValue + '%' }\"></span>\n <span *ngIf=\"!range && orientation == 'horizontal'\" class=\"p-slider-range\" [attr.data-pc-section]=\"'range'\" [ngStyle]=\"{ width: handleValue + '%' }\"></span>\n <span\n *ngIf=\"!range\"\n #sliderHandle\n class=\"p-slider-handle\"\n [style.transition]=\"dragging ? 'none' : null\"\n [ngStyle]=\"{ left: orientation == 'horizontal' ? handleValue + '%' : null, bottom: orientation == 'vertical' ? handleValue + '%' : null }\"\n (touchstart)=\"onDragStart($event)\"\n (touchmove)=\"onDrag($event)\"\n (touchend)=\"onDragEnd($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (keydown)=\"onKeyDown($event)\"\n [attr.tabindex]=\"disabled ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'handle'\"\n pAutoFocus\n [autofocus]=\"autofocus\"\n ></span>\n <span\n *ngIf=\"range\"\n #sliderHandleStart\n [style.transition]=\"dragging ? 'none' : null\"\n class=\"p-slider-handle\"\n [ngStyle]=\"{ left: rangeStartLeft, bottom: rangeStartBottom }\"\n [ngClass]=\"{ 'p-slider-handle-active': handleIndex == 0 }\"\n (keydown)=\"onKeyDown($event, 0)\"\n (mousedown)=\"onMouseDown($event, 0)\"\n (touchstart)=\"onDragStart($event, 0)\"\n (touchmove)=\"onDrag($event, 0)\"\n (touchend)=\"onDragEnd($event)\"\n [attr.tabindex]=\"disabled ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value ? value[0] : null\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'startHandler'\"\n pAutoFocus\n [autofocus]=\"autofocus\"\n ></span>\n <span\n *ngIf=\"range\"\n #sliderHandleEnd\n [style.transition]=\"dragging ? 'none' : null\"\n class=\"p-slider-handle\"\n [ngStyle]=\"{ left: rangeEndLeft, bottom: rangeEndBottom }\"\n [ngClass]=\"{ 'p-slider-handle-active': handleIndex == 1 }\"\n (keydown)=\"onKeyDown($event, 1)\"\n (mousedown)=\"onMouseDown($event, 1)\"\n (touchstart)=\"onDragStart($event, 1)\"\n (touchmove)=\"onDrag($event, 1)\"\n (touchend)=\"onDragEnd($event)\"\n [attr.tabindex]=\"disabled ? null : tabindex\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value ? value[1] : null\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'endHandler'\"\n ></span>\n </div>\n `,\n providers: [SLIDER_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./slider.css'],\n host: {\n class: 'p-element'\n }\n})\nexport class Slider implements OnDestroy, ControlValueAccessor {\n /**\n * When enabled, displays an animation on click of the slider bar.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) animate: boolean | undefined;\n /**\n * When present, it specifies that the element should be disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean | undefined;\n /**\n * Mininum boundary value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) min: number = 0;\n /**\n * Maximum boundary value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) max: number = 100;\n /**\n * Orientation of the slider.\n * @group Props\n */\n @Input() orientation: 'horizontal' | 'vertical' = 'horizontal';\n /**\n * Step factor to increment/decrement the value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) step: number | undefined;\n /**\n * When specified, allows two boundary values to be picked.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) range: boolean | undefined;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Defines a string that labels the input for accessibility.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number = 0;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Callback to invoke on value change.\n * @param {SliderChangeEvent} event - Custom value change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<SliderChangeEvent> = new EventEmitter<SliderChangeEvent>();\n /**\n * Callback to invoke when slide ended.\n * @param {SliderSlideEndEvent} event - Custom slide end event.\n * @group Emits\n */\n @Output() onSlideEnd: EventEmitter<SliderSlideEndEvent> = new EventEmitter<SliderSlideEndEvent>();\n\n @ViewChild('sliderHandle') sliderHandle: Nullable<ElementRef>;\n\n @ViewChild('sliderHandleStart') sliderHandleStart: Nullable<ElementRef>;\n\n @ViewChild('sliderHandleEnd') sliderHandleEnd: Nullable<ElementRef>;\n\n public value: Nullable<number>;\n\n public values: Nullable<number[]>;\n\n public handleValue: Nullable<number>;\n\n public handleValues: number[] = [];\n\n diff: Nullable<number>;\n\n offset: Nullable<number>;\n\n bottom: Nullable<number>;\n\n public onModelChange: Function = () => {};\n\n public onModelTouched: Function = () => {};\n\n public dragging: Nullable<boolean>;\n\n public dragListener: VoidListener;\n\n public mouseupListener: VoidListener;\n\n public initX: Nullable<number>;\n\n public initY: Nullable<number>;\n\n public barWidth: Nullable<number>;\n\n public barHeight: Nullable<number>;\n\n public sliderHandleClick: Nullable<boolean>;\n\n public handleIndex: number = 0;\n\n public startHandleValue: any;\n\n public startx: Nullable<number>;\n\n public starty: Nullable<number>;\n\n constructor(@Inject(DOCUMENT) private document: Document, @Inject(PLATFORM_ID) private platformId: any, public el: ElementRef, public renderer: Renderer2, private ngZone: NgZone, public cd: ChangeDetectorRef) {}\n\n onMouseDown(event: Event, index?: number) {\n if (this.disabled) {\n return;\n }\n\n this.dragging = true;\n this.updateDomData();\n this.sliderHandleClick = true;\n if (this.range && this.handleValues && this.handleValues[0] === this.max) {\n this.handleIndex = 0;\n } else {\n (this.handleIndex as any) = index;\n }\n\n this.bindDragListeners();\n (event.target as HTMLInputElement).focus();\n event.preventDefault();\n\n if (this.animate) {\n DomHandler.removeClass(this.el.nativeElement.children[0], 'p-slider-animate');\n }\n }\n\n onDragStart(event: TouchEvent, index?: number) {\n if (this.disabled) {\n return;\n }\n\n var touchobj = event.changedTouches[0];\n this.startHandleValue = this.range ? this.handleValues[index as number] : this.handleValue;\n this.dragging = true;\n if (this.range && this.handleValues && this.handleValues[0] === this.max) {\n this.handleIndex = 0;\n } else {\n this.handleIndex = index as number;\n }\n\n if (this.orientation === 'horizontal') {\n this.startx = parseInt((touchobj as any).clientX, 10);\n this.barWidth = this.el.nativeElement.children[0].offsetWidth;\n } else {\n this.starty = parseInt((touchobj as any).clientY, 10);\n this.barHeight = this.el.nativeElement.children[0].offsetHeight;\n }\n\n if (this.animate) {\n DomHandler.removeClass(this.el.nativeElement.children[0], 'p-slider-animate');\n }\n\n event.preventDefault();\n }\n\n onDrag(event: TouchEvent) {\n if (this.disabled) {\n return;\n }\n\n var touchobj = event.changedTouches[0],\n handleValue = 0;\n\n if (this.orientation === 'horizontal') {\n handleValue = Math.floor(((parseInt((touchobj as any).clientX, 10) - (this.startx as number)) * 100) / (this.barWidth as number)) + this.startHandleValue;\n } else {\n handleValue = Math.floor((((this.starty as number) - parseInt((touchobj as any).clientY, 10)) * 100) / (this.barHeight as number)) + this.startHandleValue;\n }\n\n this.setValueFromHandle(event, handleValue);\n\n event.preventDefault();\n }\n\n onDragEnd(event: TouchEvent) {\n if (this.disabled) {\n return;\n }\n\n this.dragging = false;\n\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n\n if (this.animate) {\n DomHandler.addClass(this.el.nativeElement.children[0], 'p-slider-animate');\n }\n\n event.preventDefault();\n }\n\n onBarClick(event: Event) {\n if (this.disabled) {\n return;\n }\n\n if (!this.sliderHandleClick) {\n this.updateDomData();\n this.handleChange(event);\n\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n }\n\n this.sliderHandleClick = false;\n }\n\n onKeyDown(event, index) {\n this.handleIndex = index;\n\n switch (event.code) {\n case 'ArrowDown':\n case 'ArrowLeft':\n this.decrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'ArrowUp':\n case 'ArrowRight':\n this.incrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'PageDown':\n this.decrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'PageUp':\n this.incrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'Home':\n this.updateValue(this.min, event);\n event.preventDefault();\n break;\n\n case 'End':\n this.updateValue(this.max, event);\n event.preventDefault();\n break;\n case 'Tab':\n this.onDragEnd(event);\n event.preventDefault();\n break;\n\n default:\n break;\n }\n }\n\n decrementValue(event, index, pageKey = false) {\n let newValue;\n\n if (this.range) {\n if (this.step) newValue = this.values[index] - this.step;\n else newValue = this.values[index] - 1;\n } else {\n if (this.step) newValue = this.value - this.step;\n else if (!this.step && pageKey) newValue = this.value - 10;\n else newValue = this.value - 1;\n }\n\n this.updateValue(newValue, event);\n event.preventDefault();\n }\n\n incrementValue(event, index, pageKey = false) {\n let newValue;\n\n if (this.range) {\n if (this.step) newValue = this.values[index] + this.step;\n else newValue = this.values[index] + 1;\n } else {\n if (this.step) newValue = this.value + this.step;\n else if (!this.step && pageKey) newValue = this.value + 10;\n else newValue = this.value + 1;\n }\n\n this.updateValue(newValue, event);\n event.preventDefault();\n }\n\n handleChange(event: Event) {\n let handleValue = this.calculateHandleValue(event);\n this.setValueFromHandle(event, handleValue);\n }\n\n bindDragListeners() {\n if (isPlatformBrowser(this.platformId)) {\n this.ngZone.runOutsideAngular(() => {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : this.document;\n\n if (!this.dragListener) {\n this.dragListener = this.renderer.listen(documentTarget, 'mousemove', (event) => {\n if (this.dragging) {\n this.ngZone.run(() => {\n this.handleChange(event);\n });\n }\n });\n }\n\n if (!this.mouseupListener) {\n this.mouseupListener = this.renderer.listen(documentTarget, 'mouseup', (event) => {\n if (this.dragging) {\n this.dragging = false;\n this.ngZone.run(() => {\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n\n if (this.animate) {\n DomHandler.addClass(this.el.nativeElement.children[0], 'p-slider-animate');\n }\n });\n }\n });\n }\n });\n }\n }\n\n unbindDragListeners() {\n if (this.dragListener) {\n this.dragListener();\n this.dragListener = null;\n }\n\n if (this.mouseupListener) {\n this.mouseupListener();\n this.mouseupListener = null;\n }\n }\n\n setValueFromHandle(event: Event, handleValue: any) {\n let newValue = this.getValueFromHandle(handleValue);\n\n if (this.range) {\n if (this.step) {\n this.handleStepChange(newValue, (this.values as any)[this.handleIndex]);\n } else {\n this.handleValues[this.handleIndex] = handleValue;\n this.updateValue(newValue, event);\n }\n } else {\n if (this.step) {\n this.handleStepChange(newValue, this.value as any);\n } else {\n this.handleValue = handleValue;\n this.updateValue(newValue, event);\n }\n }\n\n this.cd.markForCheck();\n }\n\n handleStepChange(newValue: number, oldValue: number) {\n let diff = newValue - oldValue;\n let val = oldValue;\n let _step = this.step as number;\n\n if (diff < 0) {\n val = oldValue + Math.ceil(newValue / _step - oldValue / _step) * _step;\n } else if (diff > 0) {\n val = oldValue + Math.floor(newValue / _step - oldValue / _step) * _step;\n }\n\n this.updateValue(val);\n this.updateHandleValue();\n }\n\n writeValue(value: any): void {\n if (this.range) this.values = value || [0, 0];\n else this.value = value || 0;\n\n this.updateHandleValue();\n this.updateDiffAndOffset();\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n get rangeStartLeft() {\n if (!this.isVertical()) return this.handleValues[0] > 100 ? 100 + '%' : this.handleValues[0] + '%';\n return null;\n }\n\n get rangeStartBottom() {\n return this.isVertical() ? this.handleValues[0] + '%' : 'auto';\n }\n\n get rangeEndLeft() {\n return this.isVertical() ? null : this.handleValues[1] + '%';\n }\n\n get rangeEndBottom() {\n return this.isVertical() ? this.handleValues[1] + '%' : 'auto';\n }\n\n isVertical(): boolean {\n return this.orientation === 'vertical';\n }\n\n updateDomData(): void {\n let rect = this.el.nativeElement.children[0].getBoundingClientRect();\n this.initX = rect.left + DomHandler.getWindowScrollLeft();\n this.initY = rect.top + DomHandler.getWindowScrollTop();\n this.barWidth = this.el.nativeElement.children[0].offsetWidth;\n this.barHeight = this.el.nativeElement.children[0].offsetHeight;\n }\n\n calculateHandleValue(event: Event): number {\n if (this.orientation === 'horizontal') return (((event as MouseEvent).pageX - (this.initX as number)) * 100) / (this.barWidth as number);\n else return (((this.initY as number) + (this.barHeight as number) - (event as MouseEvent).pageY) * 100) / (this.barHeight as number);\n }\n\n updateHandleValue(): void {\n if (this.range) {\n this.handleValues[0] = (((this.values as number[])[0] < this.min ? 0 : (this.values as number[])[0] - this.min) * 100) / (this.max - this.min);\n this.handleValues[1] = (((this.values as number[])[1] > this.max ? 100 : (this.values as number[])[1] - this.min) * 100) / (this.max - this.min);\n } else {\n if ((this.value as number) < this.min) this.handleValue = 0;\n else if ((this.value as number) > this.max) this.handleValue = 100;\n else this.handleValue = (((this.value as number) - this.min) * 100) / (this.max - this.min);\n }\n\n if (this.step) {\n this.updateDiffAndOffset();\n }\n }\n\n updateDiffAndOffset(): void {\n this.diff = this.getDiff();\n this.offset = this.getOffset();\n }\n\n getDiff(): number {\n return Math.abs(this.handleValues[0] - this.handleValues[1]);\n }\n\n getOffset(): number {\n return Math.min(this.handleValues[0], this.handleValues[1]);\n }\n\n updateValue(val: number, event?: Event): void {\n if (this.range) {\n let value = val;\n\n if (this.handleIndex == 0) {\n if (value < this.min) {\n value = this.min;\n this.handleValues[0] = 0;\n } else if (value > (this.values as number[])[1]) {\n if (value > this.max) {\n value = this.max;\n this.handleValues[0] = 100;\n }\n }\n this.sliderHandleStart?.nativeElement.focus();\n } else {\n if (value > this.max) {\n value = this.max;\n this.handleValues[1] = 100;\n this.offset = this.handleValues[1];\n } else if (value < this.min) {\n value = this.min;\n this.handleValues[1] = 0;\n } else if (value < (this.values as number[])[0]) {\n this.offset = this.handleValues[1];\n }\n this.sliderHandleEnd?.nativeElement.focus();\n }\n\n if (this.step) {\n this.updateHandleValue();\n } else {\n this.updateDiffAndOffset();\n }\n\n (this.values as number[])[this.handleIndex] = this.getNormalizedValue(value);\n let newValues = [this.minVal, this.maxVal];\n this.onModelChange(newValues);\n this.onChange.emit({ event: event as Event, values: this.values as number[] });\n } else {\n if (val < this.min) {\n val = this.min;\n this.handleValue = 0;\n } else if (val > this.max) {\n val = this.max;\n this.handleValue = 100;\n }\n\n this.value = this.getNormalizedValue(val);\n\n this.onModelChange(this.value);\n this.onChange.emit({ event: event as Event, value: this.value });\n this.sliderHandle?.nativeElement.focus();\n }\n this.updateHandleValue();\n }\n\n getValueFromHandle(handleValue: number): number {\n return (this.max - this.min) * (handleValue / 100) + this.min;\n }\n\n getDecimalsCount(value: number): number {\n if (value && Math.floor(value) !== value) return value.toString().split('.')[1].length || 0;\n return 0;\n }\n\n getNormalizedValue(val: number): number {\n let decimalsCount = this.getDecimalsCount(this.step as number);\n if (decimalsCount > 0) {\n return +parseFloat(val.toString()).toFixed(decimalsCount);\n } else {\n return Math.floor(val);\n }\n }\n\n ngOnDestroy() {\n this.unbindDragListeners();\n }\n\n get minVal() {\n return Math.min((this.values as number[])[1], (this.values as number[])[0]);\n }\n get maxVal() {\n return Math.max((this.values as number[])[1], (this.values as number[])[0]);\n }\n}\n\n@NgModule({\n imports: [CommonModule, AutoFocusModule],\n exports: [Slider],\n declarations: [Slider]\n})\nexport class SliderModule {}\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":"primeng-slider.mjs","sources":["../../src/app/components/slider/slider.ts","../../src/app/components/slider/primeng-slider.ts"],"sourcesContent":["import { CommonModule, DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n NgModule,\n NgZone,\n OnDestroy,\n Output,\n PLATFORM_ID,\n Renderer2,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n forwardRef,\n numberAttribute\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { DomHandler } from 'primeng/dom';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { AutoFocusModule } from 'primeng/autofocus';\nimport { SliderChangeEvent, SliderSlideEndEvent } from './slider.interface';\n\nexport const SLIDER_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Slider),\n multi: true\n};\n/**\n * Slider is a component to provide input with a drag handle.\n * @group Components\n */\n@Component({\n selector: 'p-slider',\n template: `\n <div\n [ngStyle]=\"style\"\n [class]=\"styleClass\"\n [ngClass]=\"{ 'p-slider p-component': true, 'p-disabled': disabled, 'p-slider-horizontal': orientation == 'horizontal', 'p-slider-vertical': orientation == 'vertical', 'p-slider-animate': animate }\"\n (click)=\"onBarClick($event)\"\n [attr.data-pc-name]=\"'slider'\"\n [attr.data-pc-section]=\"'root'\"\n >\n <span\n *ngIf=\"range && orientation == 'horizontal'\"\n class=\"p-slider-range\"\n [ngStyle]=\"{ left: offset !== null && offset !== undefined ? offset + '%' : handleValues[0] + '%', width: diff ? diff + '%' : handleValues[1] - handleValues[0] + '%' }\"\n [attr.data-pc-section]=\"'range'\"\n ></span>\n <span\n *ngIf=\"range && orientation == 'vertical'\"\n class=\"p-slider-range\"\n [ngStyle]=\"{ bottom: offset !== null && offset !== undefined ? offset + '%' : handleValues[0] + '%', height: diff ? diff + '%' : handleValues[1] - handleValues[0] + '%' }\"\n [attr.data-pc-section]=\"'range'\"\n ></span>\n <span *ngIf=\"!range && orientation == 'vertical'\" class=\"p-slider-range\" [attr.data-pc-section]=\"'range'\" [ngStyle]=\"{ height: handleValue + '%' }\"></span>\n <span *ngIf=\"!range && orientation == 'horizontal'\" class=\"p-slider-range\" [attr.data-pc-section]=\"'range'\" [ngStyle]=\"{ width: handleValue + '%' }\"></span>\n <span\n *ngIf=\"!range\"\n #sliderHandle\n class=\"p-slider-handle\"\n [style.transition]=\"dragging ? 'none' : null\"\n [ngStyle]=\"{ left: orientation == 'horizontal' ? handleValue + '%' : null, bottom: orientation == 'vertical' ? handleValue + '%' : null }\"\n (touchstart)=\"onDragStart($event)\"\n (touchmove)=\"onDrag($event)\"\n (touchend)=\"onDragEnd($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (keydown)=\"onKeyDown($event)\"\n [attr.tabindex]=\"disabled ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'handle'\"\n pAutoFocus\n [autofocus]=\"autofocus\"\n ></span>\n <span\n *ngIf=\"range\"\n #sliderHandleStart\n [style.transition]=\"dragging ? 'none' : null\"\n class=\"p-slider-handle\"\n [ngStyle]=\"{ left: rangeStartLeft, bottom: rangeStartBottom }\"\n [ngClass]=\"{ 'p-slider-handle-active': handleIndex == 0 }\"\n (keydown)=\"onKeyDown($event, 0)\"\n (mousedown)=\"onMouseDown($event, 0)\"\n (touchstart)=\"onDragStart($event, 0)\"\n (touchmove)=\"onDrag($event, 0)\"\n (touchend)=\"onDragEnd($event)\"\n [attr.tabindex]=\"disabled ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value ? value[0] : null\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'startHandler'\"\n pAutoFocus\n [autofocus]=\"autofocus\"\n ></span>\n <span\n *ngIf=\"range\"\n #sliderHandleEnd\n [style.transition]=\"dragging ? 'none' : null\"\n class=\"p-slider-handle\"\n [ngStyle]=\"{ left: rangeEndLeft, bottom: rangeEndBottom }\"\n [ngClass]=\"{ 'p-slider-handle-active': handleIndex == 1 }\"\n (keydown)=\"onKeyDown($event, 1)\"\n (mousedown)=\"onMouseDown($event, 1)\"\n (touchstart)=\"onDragStart($event, 1)\"\n (touchmove)=\"onDrag($event, 1)\"\n (touchend)=\"onDragEnd($event)\"\n [attr.tabindex]=\"disabled ? null : tabindex\"\n role=\"slider\"\n [attr.aria-valuemin]=\"min\"\n [attr.aria-valuenow]=\"value ? value[1] : null\"\n [attr.aria-valuemax]=\"max\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-orientation]=\"orientation\"\n [attr.data-pc-section]=\"'endHandler'\"\n ></span>\n </div>\n `,\n providers: [SLIDER_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./slider.css'],\n host: {\n class: 'p-element'\n }\n})\nexport class Slider implements OnDestroy, ControlValueAccessor {\n /**\n * When enabled, displays an animation on click of the slider bar.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) animate: boolean | undefined;\n /**\n * When present, it specifies that the element should be disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled: boolean | undefined;\n /**\n * Mininum boundary value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) min: number = 0;\n /**\n * Maximum boundary value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) max: number = 100;\n /**\n * Orientation of the slider.\n * @group Props\n */\n @Input() orientation: 'horizontal' | 'vertical' = 'horizontal';\n /**\n * Step factor to increment/decrement the value.\n * @group Props\n */\n @Input({ transform: numberAttribute }) step: number | undefined;\n /**\n * When specified, allows two boundary values to be picked.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) range: boolean | undefined;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Defines a string that labels the input for accessibility.\n * @group Props\n */\n @Input() ariaLabel: string | undefined;\n /**\n * Establishes relationships between the component and label(s) where its value should be one or more element IDs.\n * @group Props\n */\n @Input() ariaLabelledBy: string | undefined;\n /**\n * Index of the element in tabbing order.\n * @group Props\n */\n @Input({ transform: numberAttribute }) tabindex: number = 0;\n /**\n * When present, it specifies that the component should automatically get focus on load.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autofocus: boolean | undefined;\n /**\n * Callback to invoke on value change.\n * @param {SliderChangeEvent} event - Custom value change event.\n * @group Emits\n */\n @Output() onChange: EventEmitter<SliderChangeEvent> = new EventEmitter<SliderChangeEvent>();\n /**\n * Callback to invoke when slide ended.\n * @param {SliderSlideEndEvent} event - Custom slide end event.\n * @group Emits\n */\n @Output() onSlideEnd: EventEmitter<SliderSlideEndEvent> = new EventEmitter<SliderSlideEndEvent>();\n\n @ViewChild('sliderHandle') sliderHandle: Nullable<ElementRef>;\n\n @ViewChild('sliderHandleStart') sliderHandleStart: Nullable<ElementRef>;\n\n @ViewChild('sliderHandleEnd') sliderHandleEnd: Nullable<ElementRef>;\n\n public value: Nullable<number>;\n\n public values: Nullable<number[]>;\n\n public handleValue: Nullable<number>;\n\n public handleValues: number[] = [];\n\n diff: Nullable<number>;\n\n offset: Nullable<number>;\n\n bottom: Nullable<number>;\n\n public onModelChange: Function = () => {};\n\n public onModelTouched: Function = () => {};\n\n public dragging: Nullable<boolean>;\n\n public dragListener: VoidListener;\n\n public mouseupListener: VoidListener;\n\n public initX: Nullable<number>;\n\n public initY: Nullable<number>;\n\n public barWidth: Nullable<number>;\n\n public barHeight: Nullable<number>;\n\n public sliderHandleClick: Nullable<boolean>;\n\n public handleIndex: number = 0;\n\n public startHandleValue: any;\n\n public startx: Nullable<number>;\n\n public starty: Nullable<number>;\n\n constructor(@Inject(DOCUMENT) private document: Document, @Inject(PLATFORM_ID) private platformId: any, public el: ElementRef, public renderer: Renderer2, private ngZone: NgZone, public cd: ChangeDetectorRef) {}\n\n onMouseDown(event: Event, index?: number) {\n if (this.disabled) {\n return;\n }\n\n this.dragging = true;\n this.updateDomData();\n this.sliderHandleClick = true;\n if (this.range && this.handleValues && this.handleValues[0] === this.max) {\n this.handleIndex = 0;\n } else {\n (this.handleIndex as any) = index;\n }\n\n this.bindDragListeners();\n (event.target as HTMLInputElement).focus();\n event.preventDefault();\n\n if (this.animate) {\n DomHandler.removeClass(this.el.nativeElement.children[0], 'p-slider-animate');\n }\n }\n\n onDragStart(event: TouchEvent, index?: number) {\n if (this.disabled) {\n return;\n }\n\n var touchobj = event.changedTouches[0];\n this.startHandleValue = this.range ? this.handleValues[index as number] : this.handleValue;\n this.dragging = true;\n if (this.range && this.handleValues && this.handleValues[0] === this.max) {\n this.handleIndex = 0;\n } else {\n this.handleIndex = index as number;\n }\n\n if (this.orientation === 'horizontal') {\n this.startx = parseInt((touchobj as any).clientX, 10);\n this.barWidth = this.el.nativeElement.children[0].offsetWidth;\n } else {\n this.starty = parseInt((touchobj as any).clientY, 10);\n this.barHeight = this.el.nativeElement.children[0].offsetHeight;\n }\n\n if (this.animate) {\n DomHandler.removeClass(this.el.nativeElement.children[0], 'p-slider-animate');\n }\n\n event.preventDefault();\n }\n\n onDrag(event: TouchEvent) {\n if (this.disabled) {\n return;\n }\n\n var touchobj = event.changedTouches[0],\n handleValue = 0;\n\n if (this.orientation === 'horizontal') {\n handleValue = Math.floor(((parseInt((touchobj as any).clientX, 10) - (this.startx as number)) * 100) / (this.barWidth as number)) + this.startHandleValue;\n } else {\n handleValue = Math.floor((((this.starty as number) - parseInt((touchobj as any).clientY, 10)) * 100) / (this.barHeight as number)) + this.startHandleValue;\n }\n\n this.setValueFromHandle(event, handleValue);\n\n event.preventDefault();\n }\n\n onDragEnd(event: TouchEvent) {\n if (this.disabled) {\n return;\n }\n\n this.dragging = false;\n\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n\n if (this.animate) {\n DomHandler.addClass(this.el.nativeElement.children[0], 'p-slider-animate');\n }\n\n event.preventDefault();\n }\n\n onBarClick(event: Event) {\n if (this.disabled) {\n return;\n }\n\n if (!this.sliderHandleClick) {\n this.updateDomData();\n this.handleChange(event);\n\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n }\n\n this.sliderHandleClick = false;\n }\n\n onKeyDown(event, index) {\n this.handleIndex = index;\n\n switch (event.code) {\n case 'ArrowDown':\n case 'ArrowLeft':\n this.decrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'ArrowUp':\n case 'ArrowRight':\n this.incrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'PageDown':\n this.decrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'PageUp':\n this.incrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'Home':\n this.updateValue(this.min, event);\n event.preventDefault();\n break;\n\n case 'End':\n this.updateValue(this.max, event);\n event.preventDefault();\n break;\n case 'Tab':\n this.onDragEnd(event);\n event.preventDefault();\n break;\n\n default:\n break;\n }\n }\n\n decrementValue(event, index, pageKey = false) {\n let newValue;\n\n if (this.range) {\n if (this.step) newValue = this.values[index] - this.step;\n else newValue = this.values[index] - 1;\n } else {\n if (this.step) newValue = this.value - this.step;\n else if (!this.step && pageKey) newValue = this.value - 10;\n else newValue = this.value - 1;\n }\n\n this.updateValue(newValue, event);\n event.preventDefault();\n }\n\n incrementValue(event, index, pageKey = false) {\n let newValue;\n\n if (this.range) {\n if (this.step) newValue = this.values[index] + this.step;\n else newValue = this.values[index] + 1;\n } else {\n if (this.step) newValue = this.value + this.step;\n else if (!this.step && pageKey) newValue = this.value + 10;\n else newValue = this.value + 1;\n }\n\n this.updateValue(newValue, event);\n event.preventDefault();\n }\n\n handleChange(event: Event) {\n let handleValue = this.calculateHandleValue(event);\n this.setValueFromHandle(event, handleValue);\n }\n\n bindDragListeners() {\n if (isPlatformBrowser(this.platformId)) {\n this.ngZone.runOutsideAngular(() => {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : this.document;\n\n if (!this.dragListener) {\n this.dragListener = this.renderer.listen(documentTarget, 'mousemove', (event) => {\n if (this.dragging) {\n this.ngZone.run(() => {\n this.handleChange(event);\n });\n }\n });\n }\n\n if (!this.mouseupListener) {\n this.mouseupListener = this.renderer.listen(documentTarget, 'mouseup', (event) => {\n if (this.dragging) {\n this.dragging = false;\n this.ngZone.run(() => {\n if (this.range) this.onSlideEnd.emit({ originalEvent: event, values: this.values as number[] });\n else this.onSlideEnd.emit({ originalEvent: event, value: this.value as number });\n\n if (this.animate) {\n DomHandler.addClass(this.el.nativeElement.children[0], 'p-slider-animate');\n }\n });\n }\n });\n }\n });\n }\n }\n\n unbindDragListeners() {\n if (this.dragListener) {\n this.dragListener();\n this.dragListener = null;\n }\n\n if (this.mouseupListener) {\n this.mouseupListener();\n this.mouseupListener = null;\n }\n }\n\n setValueFromHandle(event: Event, handleValue: any) {\n let newValue = this.getValueFromHandle(handleValue);\n\n if (this.range) {\n if (this.step) {\n this.handleStepChange(newValue, (this.values as any)[this.handleIndex]);\n } else {\n this.handleValues[this.handleIndex] = handleValue;\n this.updateValue(newValue, event);\n }\n } else {\n if (this.step) {\n this.handleStepChange(newValue, this.value as any);\n } else {\n this.handleValue = handleValue;\n this.updateValue(newValue, event);\n }\n }\n\n this.cd.markForCheck();\n }\n\n handleStepChange(newValue: number, oldValue: number) {\n let diff = newValue - oldValue;\n let val = oldValue;\n let _step = this.step as number;\n\n if (diff < 0) {\n val = oldValue + Math.ceil(newValue / _step - oldValue / _step) * _step;\n } else if (diff > 0) {\n val = oldValue + Math.floor(newValue / _step - oldValue / _step) * _step;\n }\n\n this.updateValue(val);\n this.updateHandleValue();\n }\n\n writeValue(value: any): void {\n if (this.range) this.values = value || [0, 0];\n else this.value = value || 0;\n\n this.updateHandleValue();\n this.updateDiffAndOffset();\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n get rangeStartLeft() {\n if (!this.isVertical()) return this.handleValues[0] > 100 ? 100 + '%' : this.handleValues[0] + '%';\n return null;\n }\n\n get rangeStartBottom() {\n return this.isVertical() ? this.handleValues[0] + '%' : 'auto';\n }\n\n get rangeEndLeft() {\n return this.isVertical() ? null : this.handleValues[1] + '%';\n }\n\n get rangeEndBottom() {\n return this.isVertical() ? this.handleValues[1] + '%' : 'auto';\n }\n\n isVertical(): boolean {\n return this.orientation === 'vertical';\n }\n\n updateDomData(): void {\n let rect = this.el.nativeElement.children[0].getBoundingClientRect();\n this.initX = rect.left + DomHandler.getWindowScrollLeft();\n this.initY = rect.top + DomHandler.getWindowScrollTop();\n this.barWidth = this.el.nativeElement.children[0].offsetWidth;\n this.barHeight = this.el.nativeElement.children[0].offsetHeight;\n }\n\n calculateHandleValue(event: Event): number {\n if (this.orientation === 'horizontal') return (((event as MouseEvent).pageX - (this.initX as number)) * 100) / (this.barWidth as number);\n else return (((this.initY as number) + (this.barHeight as number) - (event as MouseEvent).pageY) * 100) / (this.barHeight as number);\n }\n\n updateHandleValue(): void {\n if (this.range) {\n this.handleValues[0] = (((this.values as number[])[0] < this.min ? 0 : (this.values as number[])[0] - this.min) * 100) / (this.max - this.min);\n this.handleValues[1] = (((this.values as number[])[1] > this.max ? 100 : (this.values as number[])[1] - this.min) * 100) / (this.max - this.min);\n } else {\n if ((this.value as number) < this.min) this.handleValue = 0;\n else if ((this.value as number) > this.max) this.handleValue = 100;\n else this.handleValue = (((this.value as number) - this.min) * 100) / (this.max - this.min);\n }\n\n if (this.step) {\n this.updateDiffAndOffset();\n }\n }\n\n updateDiffAndOffset(): void {\n this.diff = this.getDiff();\n this.offset = this.getOffset();\n }\n\n getDiff(): number {\n return Math.abs(this.handleValues[0] - this.handleValues[1]);\n }\n\n getOffset(): number {\n return Math.min(this.handleValues[0], this.handleValues[1]);\n }\n\n updateValue(val: number, event?: Event): void {\n if (this.range) {\n let value = val;\n\n if (this.handleIndex == 0) {\n if (value < this.min) {\n value = this.min;\n this.handleValues[0] = 0;\n } else if (value > (this.values as number[])[1]) {\n if (value > this.max) {\n value = this.max;\n this.handleValues[0] = 100;\n }\n }\n this.sliderHandleStart?.nativeElement.focus();\n } else {\n if (value > this.max) {\n value = this.max;\n this.handleValues[1] = 100;\n this.offset = this.handleValues[1];\n } else if (value < this.min) {\n value = this.min;\n this.handleValues[1] = 0;\n } else if (value < (this.values as number[])[0]) {\n this.offset = this.handleValues[1];\n }\n this.sliderHandleEnd?.nativeElement.focus();\n }\n\n if (this.step) {\n this.updateHandleValue();\n } else {\n this.updateDiffAndOffset();\n }\n\n (this.values as number[])[this.handleIndex] = this.getNormalizedValue(value);\n let newValues = [this.minVal, this.maxVal];\n this.onModelChange(newValues);\n this.onChange.emit({ event: event as Event, values: this.values as number[] });\n } else {\n if (val < this.min) {\n val = this.min;\n this.handleValue = 0;\n } else if (val > this.max) {\n val = this.max;\n this.handleValue = 100;\n }\n\n this.value = this.getNormalizedValue(val);\n\n this.onModelChange(this.value);\n this.onChange.emit({ event: event as Event, value: this.value });\n this.sliderHandle?.nativeElement.focus();\n }\n this.updateHandleValue();\n }\n\n getValueFromHandle(handleValue: number): number {\n return (this.max - this.min) * (handleValue / 100) + this.min;\n }\n\n getDecimalsCount(value: number): number {\n if (value && Math.floor(value) !== value) return value.toString().split('.')[1].length || 0;\n return 0;\n }\n\n getNormalizedValue(val: number): number {\n let decimalsCount = this.getDecimalsCount(this.step as number);\n if (decimalsCount > 0) {\n return +parseFloat(val.toString()).toFixed(decimalsCount);\n } else {\n return Math.floor(val);\n }\n }\n\n ngOnDestroy() {\n this.unbindDragListeners();\n }\n\n get minVal() {\n return Math.min((this.values as number[])[1], (this.values as number[])[0]);\n }\n get maxVal() {\n return Math.max((this.values as number[])[1], (this.values as number[])[0]);\n }\n}\n\n@NgModule({\n imports: [CommonModule, AutoFocusModule],\n exports: [Slider],\n declarations: [Slider]\n})\nexport class SliderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
@@ -1,18 +1,18 @@
|
|
1
1
|
import { trigger, transition, style, animate } from '@angular/animations';
|
2
|
-
import * as
|
2
|
+
import * as i3 from '@angular/common';
|
3
3
|
import { isPlatformBrowser, DOCUMENT, CommonModule } from '@angular/common';
|
4
4
|
import * as i0 from '@angular/core';
|
5
5
|
import { Injectable, EventEmitter, PLATFORM_ID, booleanAttribute, numberAttribute, Component, ChangeDetectionStrategy, ViewEncapsulation, Inject, Input, Output, ViewChild, ContentChildren, Directive, HostListener, Optional, NgModule } from '@angular/core';
|
6
|
-
import * as
|
6
|
+
import * as i7 from '@angular/forms';
|
7
7
|
import { FormsModule } from '@angular/forms';
|
8
8
|
import * as i1 from 'primeng/api';
|
9
9
|
import { FilterOperator, FilterMatchMode, PrimeTemplate, TranslationKeys, SharedModule } from 'primeng/api';
|
10
|
-
import * as
|
10
|
+
import * as i8 from 'primeng/button';
|
11
11
|
import { ButtonModule } from 'primeng/button';
|
12
|
-
import * as
|
12
|
+
import * as i11 from 'primeng/calendar';
|
13
13
|
import { CalendarModule } from 'primeng/calendar';
|
14
14
|
import { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';
|
15
|
-
import * as
|
15
|
+
import * as i6 from 'primeng/dropdown';
|
16
16
|
import { DropdownModule } from 'primeng/dropdown';
|
17
17
|
import { ArrowDownIcon } from 'primeng/icons/arrowdown';
|
18
18
|
import { ArrowUpIcon } from 'primeng/icons/arrowup';
|
@@ -25,19 +25,20 @@ import { SortAmountDownIcon } from 'primeng/icons/sortamountdown';
|
|
25
25
|
import { SortAmountUpAltIcon } from 'primeng/icons/sortamountupalt';
|
26
26
|
import { SpinnerIcon } from 'primeng/icons/spinner';
|
27
27
|
import { TrashIcon } from 'primeng/icons/trash';
|
28
|
-
import * as
|
28
|
+
import * as i9 from 'primeng/inputnumber';
|
29
29
|
import { InputNumberModule } from 'primeng/inputnumber';
|
30
|
-
import * as
|
30
|
+
import * as i10 from 'primeng/inputtext';
|
31
31
|
import { InputTextModule } from 'primeng/inputtext';
|
32
|
-
import * as
|
32
|
+
import * as i4 from 'primeng/paginator';
|
33
33
|
import { PaginatorModule } from 'primeng/paginator';
|
34
|
-
import * as
|
34
|
+
import * as i5 from 'primeng/scroller';
|
35
35
|
import { ScrollerModule } from 'primeng/scroller';
|
36
36
|
import { SelectButtonModule } from 'primeng/selectbutton';
|
37
|
-
import * as
|
37
|
+
import * as i12 from 'primeng/tristatecheckbox';
|
38
38
|
import { TriStateCheckboxModule } from 'primeng/tristatecheckbox';
|
39
39
|
import { UniqueComponentId, ObjectUtils, ZIndexUtils } from 'primeng/utils';
|
40
40
|
import { Subject } from 'rxjs';
|
41
|
+
import * as i2 from '@angular/platform-browser';
|
41
42
|
|
42
43
|
class TableService {
|
43
44
|
sortSource = new Subject();
|
@@ -91,6 +92,7 @@ class Table {
|
|
91
92
|
filterService;
|
92
93
|
overlayService;
|
93
94
|
config;
|
95
|
+
domSanitizer;
|
94
96
|
/**
|
95
97
|
* An array of objects to represent dynamic columns that are frozen.
|
96
98
|
* @group Props
|
@@ -816,7 +818,7 @@ class Table {
|
|
816
818
|
styleElement;
|
817
819
|
responsiveStyleElement;
|
818
820
|
window;
|
819
|
-
constructor(document, platformId, renderer, el, zone, tableService, cd, filterService, overlayService, config) {
|
821
|
+
constructor(document, platformId, renderer, el, zone, tableService, cd, filterService, overlayService, config, domSanitizer) {
|
820
822
|
this.document = document;
|
821
823
|
this.platformId = platformId;
|
822
824
|
this.renderer = renderer;
|
@@ -827,6 +829,7 @@ class Table {
|
|
827
829
|
this.filterService = filterService;
|
828
830
|
this.overlayService = overlayService;
|
829
831
|
this.config = config;
|
832
|
+
this.domSanitizer = domSanitizer;
|
830
833
|
this.window = this.document.defaultView;
|
831
834
|
}
|
832
835
|
ngOnInit() {
|
@@ -1147,8 +1150,10 @@ class Table {
|
|
1147
1150
|
if (this.restoringSort) {
|
1148
1151
|
this.restoringSort = false;
|
1149
1152
|
}
|
1150
|
-
|
1151
|
-
|
1153
|
+
if (this.lazy) {
|
1154
|
+
this.onLazyLoad.emit(this.createLazyLoadMetadata());
|
1155
|
+
}
|
1156
|
+
else if (this.value) {
|
1152
1157
|
if (this.customSort) {
|
1153
1158
|
this.sortFunction.emit({
|
1154
1159
|
data: this.value,
|
@@ -1157,7 +1162,7 @@ class Table {
|
|
1157
1162
|
order: order
|
1158
1163
|
});
|
1159
1164
|
}
|
1160
|
-
else
|
1165
|
+
else {
|
1161
1166
|
this.value.sort((data1, data2) => {
|
1162
1167
|
let value1 = ObjectUtils.resolveFieldData(data1, field);
|
1163
1168
|
let value2 = ObjectUtils.resolveFieldData(data2, field);
|
@@ -1176,7 +1181,7 @@ class Table {
|
|
1176
1181
|
});
|
1177
1182
|
this._value = [...this.value];
|
1178
1183
|
}
|
1179
|
-
if (
|
1184
|
+
if (this.hasFilter()) {
|
1180
1185
|
this._filter();
|
1181
1186
|
}
|
1182
1187
|
}
|
@@ -1196,8 +1201,10 @@ class Table {
|
|
1196
1201
|
this._multiSortMeta = [this.getGroupRowsMeta(), ...this._multiSortMeta];
|
1197
1202
|
}
|
1198
1203
|
if (this.multiSortMeta) {
|
1199
|
-
|
1200
|
-
|
1204
|
+
if (this.lazy) {
|
1205
|
+
this.onLazyLoad.emit(this.createLazyLoadMetadata());
|
1206
|
+
}
|
1207
|
+
else if (this.value) {
|
1201
1208
|
if (this.customSort) {
|
1202
1209
|
this.sortFunction.emit({
|
1203
1210
|
data: this.value,
|
@@ -1205,13 +1212,13 @@ class Table {
|
|
1205
1212
|
multiSortMeta: this.multiSortMeta
|
1206
1213
|
});
|
1207
1214
|
}
|
1208
|
-
else
|
1215
|
+
else {
|
1209
1216
|
this.value.sort((data1, data2) => {
|
1210
1217
|
return this.multisortField(data1, data2, this.multiSortMeta, 0);
|
1211
1218
|
});
|
1212
1219
|
this._value = [...this.value];
|
1213
1220
|
}
|
1214
|
-
if (
|
1221
|
+
if (this.hasFilter()) {
|
1215
1222
|
this._filter();
|
1216
1223
|
}
|
1217
1224
|
}
|
@@ -2150,7 +2157,7 @@ class Table {
|
|
2150
2157
|
}
|
2151
2158
|
`;
|
2152
2159
|
});
|
2153
|
-
this.renderer.setProperty(this.styleElement, '
|
2160
|
+
this.renderer.setProperty(this.styleElement, 'innerHTML', this.domSanitizer.bypassSecurityTrustStyle(innerHTML));
|
2154
2161
|
}
|
2155
2162
|
onRowDragStart(event, index) {
|
2156
2163
|
this.rowDragging = true;
|
@@ -2448,7 +2455,7 @@ class Table {
|
|
2448
2455
|
}
|
2449
2456
|
}
|
2450
2457
|
`;
|
2451
|
-
this.renderer.setProperty(this.responsiveStyleElement, '
|
2458
|
+
this.renderer.setProperty(this.responsiveStyleElement, 'innerHTML', this.domSanitizer.bypassSecurityTrustStyle(innerHTML));
|
2452
2459
|
}
|
2453
2460
|
}
|
2454
2461
|
}
|
@@ -2477,7 +2484,7 @@ class Table {
|
|
2477
2484
|
.join(' ')
|
2478
2485
|
.trim();
|
2479
2486
|
}
|
2480
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: Table, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: TableService }, { token: i0.ChangeDetectorRef }, { token: i1.FilterService }, { token: i1.OverlayService }, { token: i1.PrimeNGConfig }], target: i0.ɵɵFactoryTarget.Component });
|
2487
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: Table, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: TableService }, { token: i0.ChangeDetectorRef }, { token: i1.FilterService }, { token: i1.OverlayService }, { token: i1.PrimeNGConfig }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
2481
2488
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.3.7", type: Table, selector: "p-table", inputs: { frozenColumns: "frozenColumns", frozenValue: "frozenValue", style: "style", styleClass: "styleClass", tableStyle: "tableStyle", tableStyleClass: "tableStyleClass", paginator: ["paginator", "paginator", booleanAttribute], pageLinks: ["pageLinks", "pageLinks", numberAttribute], rowsPerPageOptions: "rowsPerPageOptions", alwaysShowPaginator: ["alwaysShowPaginator", "alwaysShowPaginator", booleanAttribute], paginatorPosition: "paginatorPosition", paginatorStyleClass: "paginatorStyleClass", paginatorDropdownAppendTo: "paginatorDropdownAppendTo", paginatorDropdownScrollHeight: "paginatorDropdownScrollHeight", currentPageReportTemplate: "currentPageReportTemplate", showCurrentPageReport: ["showCurrentPageReport", "showCurrentPageReport", booleanAttribute], showJumpToPageDropdown: ["showJumpToPageDropdown", "showJumpToPageDropdown", booleanAttribute], showJumpToPageInput: ["showJumpToPageInput", "showJumpToPageInput", booleanAttribute], showFirstLastIcon: ["showFirstLastIcon", "showFirstLastIcon", booleanAttribute], showPageLinks: ["showPageLinks", "showPageLinks", booleanAttribute], defaultSortOrder: ["defaultSortOrder", "defaultSortOrder", numberAttribute], sortMode: "sortMode", resetPageOnSort: ["resetPageOnSort", "resetPageOnSort", booleanAttribute], selectionMode: "selectionMode", selectionPageOnly: ["selectionPageOnly", "selectionPageOnly", booleanAttribute], contextMenuSelection: "contextMenuSelection", contextMenuSelectionMode: "contextMenuSelectionMode", dataKey: "dataKey", metaKeySelection: ["metaKeySelection", "metaKeySelection", booleanAttribute], rowSelectable: "rowSelectable", rowTrackBy: "rowTrackBy", lazy: ["lazy", "lazy", booleanAttribute], lazyLoadOnInit: ["lazyLoadOnInit", "lazyLoadOnInit", booleanAttribute], compareSelectionBy: "compareSelectionBy", csvSeparator: "csvSeparator", exportFilename: "exportFilename", filters: "filters", globalFilterFields: "globalFilterFields", filterDelay: ["filterDelay", "filterDelay", numberAttribute], filterLocale: "filterLocale", expandedRowKeys: "expandedRowKeys", editingRowKeys: "editingRowKeys", rowExpandMode: "rowExpandMode", scrollable: ["scrollable", "scrollable", booleanAttribute], scrollDirection: "scrollDirection", rowGroupMode: "rowGroupMode", scrollHeight: "scrollHeight", virtualScroll: ["virtualScroll", "virtualScroll", booleanAttribute], virtualScrollItemSize: ["virtualScrollItemSize", "virtualScrollItemSize", numberAttribute], virtualScrollOptions: "virtualScrollOptions", virtualScrollDelay: ["virtualScrollDelay", "virtualScrollDelay", numberAttribute], frozenWidth: "frozenWidth", responsive: "responsive", contextMenu: "contextMenu", resizableColumns: ["resizableColumns", "resizableColumns", booleanAttribute], columnResizeMode: "columnResizeMode", reorderableColumns: ["reorderableColumns", "reorderableColumns", booleanAttribute], loading: ["loading", "loading", booleanAttribute], loadingIcon: "loadingIcon", showLoader: ["showLoader", "showLoader", booleanAttribute], rowHover: ["rowHover", "rowHover", booleanAttribute], customSort: ["customSort", "customSort", booleanAttribute], showInitialSortBadge: ["showInitialSortBadge", "showInitialSortBadge", booleanAttribute], autoLayout: ["autoLayout", "autoLayout", booleanAttribute], exportFunction: "exportFunction", exportHeader: "exportHeader", stateKey: "stateKey", stateStorage: "stateStorage", editMode: "editMode", groupRowsBy: "groupRowsBy", groupRowsByOrder: ["groupRowsByOrder", "groupRowsByOrder", numberAttribute], responsiveLayout: "responsiveLayout", breakpoint: "breakpoint", paginatorLocale: "paginatorLocale", value: "value", columns: "columns", first: "first", rows: "rows", totalRecords: "totalRecords", sortField: "sortField", sortOrder: "sortOrder", multiSortMeta: "multiSortMeta", selection: "selection", selectAll: "selectAll", virtualRowHeight: "virtualRowHeight" }, outputs: { contextMenuSelectionChange: "contextMenuSelectionChange", selectAllChange: "selectAllChange", selectionChange: "selectionChange", onRowSelect: "onRowSelect", onRowUnselect: "onRowUnselect", onPage: "onPage", onSort: "onSort", onFilter: "onFilter", onLazyLoad: "onLazyLoad", onRowExpand: "onRowExpand", onRowCollapse: "onRowCollapse", onContextMenuSelect: "onContextMenuSelect", onColResize: "onColResize", onColReorder: "onColReorder", onRowReorder: "onRowReorder", onEditInit: "onEditInit", onEditComplete: "onEditComplete", onEditCancel: "onEditCancel", onHeaderCheckboxToggle: "onHeaderCheckboxToggle", sortFunction: "sortFunction", firstChange: "firstChange", rowsChange: "rowsChange", onStateSave: "onStateSave", onStateRestore: "onStateRestore" }, host: { classAttribute: "p-element" }, providers: [TableService], queries: [{ propertyName: "templates", predicate: PrimeTemplate }], viewQueries: [{ propertyName: "containerViewChild", first: true, predicate: ["container"], descendants: true }, { propertyName: "resizeHelperViewChild", first: true, predicate: ["resizeHelper"], descendants: true }, { propertyName: "reorderIndicatorUpViewChild", first: true, predicate: ["reorderIndicatorUp"], descendants: true }, { propertyName: "reorderIndicatorDownViewChild", first: true, predicate: ["reorderIndicatorDown"], descendants: true }, { propertyName: "wrapperViewChild", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "tableViewChild", first: true, predicate: ["table"], descendants: true }, { propertyName: "tableHeaderViewChild", first: true, predicate: ["thead"], descendants: true }, { propertyName: "tableFooterViewChild", first: true, predicate: ["tfoot"], descendants: true }, { propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
2482
2489
|
<div
|
2483
2490
|
#container
|
@@ -2554,13 +2561,13 @@ class Table {
|
|
2554
2561
|
[step]="rows"
|
2555
2562
|
[delay]="lazy ? virtualScrollDelay : 0"
|
2556
2563
|
[inline]="true"
|
2564
|
+
[autoSize]="true"
|
2557
2565
|
[lazy]="lazy"
|
2558
2566
|
(onLazyLoad)="onLazyItemLoad($event)"
|
2559
2567
|
[loaderDisabled]="true"
|
2560
2568
|
[showSpacer]="false"
|
2561
2569
|
[showLoader]="loadingBodyTemplate"
|
2562
2570
|
[options]="virtualScrollOptions"
|
2563
|
-
[autoSize]="true"
|
2564
2571
|
>
|
2565
2572
|
<ng-template pTemplate="content" let-items let-scrollerOptions="options">
|
2566
2573
|
<ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: items, options: scrollerOptions }"></ng-container>
|
@@ -2695,7 +2702,7 @@ class Table {
|
|
2695
2702
|
<ng-template *ngTemplateOutlet="reorderIndicatorDownIconTemplate"></ng-template>
|
2696
2703
|
</span>
|
2697
2704
|
</div>
|
2698
|
-
`, isInline: true, styles: ["@layer primeng{.p-datatable{position:relative}.p-datatable>.p-datatable-wrapper{overflow:auto}.p-datatable-table{border-spacing:0px;width:100%}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-icon-wrapper{display:inline}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable>.p-datatable-wrapper{position:relative}.p-datatable-scrollable-table>.p-datatable-thead{position:sticky;top:0;z-index:2}.p-datatable-scrollable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit;z-index:1}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable>.p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable-table>.p-datatable-tbody>.p-rowgroup-header{position:sticky;z-index:2}.p-datatable-resizable-table>.p-datatable-thead>tr>th,.p-datatable-resizable-table>.p-datatable-tfoot>tr>td,.p-datatable-resizable-table>.p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable-table>.p-datatable-thead>tr>th.p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-table-fit>.p-datatable-thead>tr>th.p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:3}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable-tbody>tr>td>.p-column-title{display:none}.p-datatable-scroller-spacer{display:flex}.p-datatable .p-scroller .p-scroller-loading{transform:none!important;min-height:0;position:sticky;top:0;left:0}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() =>
|
2705
|
+
`, isInline: true, styles: ["@layer primeng{.p-datatable{position:relative}.p-datatable>.p-datatable-wrapper{overflow:auto}.p-datatable-table{border-spacing:0px;width:100%}.p-datatable .p-sortable-column{cursor:pointer;-webkit-user-select:none;user-select:none}.p-datatable .p-sortable-column .p-column-title,.p-datatable .p-sortable-column .p-sortable-column-icon,.p-datatable .p-sortable-column .p-sortable-column-badge{vertical-align:middle}.p-datatable .p-sortable-column .p-icon-wrapper{display:inline}.p-datatable .p-sortable-column .p-sortable-column-badge{display:inline-flex;align-items:center;justify-content:center}.p-datatable-hoverable-rows .p-selectable-row{cursor:pointer}.p-datatable-scrollable>.p-datatable-wrapper{position:relative}.p-datatable-scrollable-table>.p-datatable-thead{position:sticky;top:0;z-index:2}.p-datatable-scrollable-table>.p-datatable-frozen-tbody{position:sticky;z-index:1}.p-datatable-scrollable-table>.p-datatable-tfoot{position:sticky;bottom:0;z-index:1}.p-datatable-scrollable .p-frozen-column{position:sticky;background:inherit;z-index:1}.p-datatable-scrollable th.p-frozen-column{z-index:1}.p-datatable-flex-scrollable{display:flex;flex-direction:column;height:100%}.p-datatable-flex-scrollable>.p-datatable-wrapper{display:flex;flex-direction:column;flex:1;height:100%}.p-datatable-scrollable-table>.p-datatable-tbody>.p-rowgroup-header{position:sticky;z-index:2}.p-datatable-resizable-table>.p-datatable-thead>tr>th,.p-datatable-resizable-table>.p-datatable-tfoot>tr>td,.p-datatable-resizable-table>.p-datatable-tbody>tr>td{overflow:hidden;white-space:nowrap}.p-datatable-resizable-table>.p-datatable-thead>tr>th.p-resizable-column:not(.p-frozen-column){background-clip:padding-box;position:relative}.p-datatable-resizable-table-fit>.p-datatable-thead>tr>th.p-resizable-column:last-child .p-column-resizer{display:none}.p-datatable .p-column-resizer{display:block;position:absolute!important;top:0;right:0;margin:0;width:.5rem;height:100%;padding:0;cursor:col-resize;border:1px solid transparent}.p-datatable .p-column-resizer-helper{width:1px;position:absolute;z-index:10;display:none}.p-datatable .p-row-editor-init,.p-datatable .p-row-editor-save,.p-datatable .p-row-editor-cancel,.p-datatable .p-row-toggler{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.p-datatable-reorder-indicator-up,.p-datatable-reorder-indicator-down{position:absolute}.p-datatable-reorderablerow-handle,[pReorderableColumn]{cursor:move}.p-datatable .p-datatable-loading-overlay{position:absolute;display:flex;align-items:center;justify-content:center;z-index:3}.p-column-filter-row{display:flex;align-items:center;width:100%}.p-column-filter-menu{display:inline-flex}.p-column-filter-row p-columnfilterformelement{flex:1 1 auto;width:1%}.p-column-filter-menu-button,.p-column-filter-clear-button{display:inline-flex;justify-content:center;align-items:center;cursor:pointer;text-decoration:none;overflow:hidden;position:relative}.p-column-filter-overlay{position:absolute;top:0;left:0}.p-column-filter-row-items{margin:0;padding:0;list-style:none}.p-column-filter-row-item{cursor:pointer}.p-column-filter-add-button,.p-column-filter-remove-button{justify-content:center}.p-column-filter-add-button .p-button-label,.p-column-filter-remove-button .p-button-label{flex-grow:0}.p-column-filter-buttonbar{display:flex;align-items:center;justify-content:space-between}.p-column-filter-buttonbar .p-button{width:auto}.p-datatable-tbody>tr>td>.p-column-title{display:none}.p-datatable-scroller-spacer{display:flex}.p-datatable .p-scroller .p-scroller-loading{transform:none!important;min-height:0;position:sticky;top:0;left:0}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() => i3.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgStyle), selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i0.forwardRef(() => i4.Paginator), selector: "p-paginator", inputs: ["pageLinkSize", "style", "styleClass", "alwaysShow", "dropdownAppendTo", "templateLeft", "templateRight", "appendTo", "dropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showFirstLastIcon", "totalRecords", "rows", "rowsPerPageOptions", "showJumpToPageDropdown", "showJumpToPageInput", "jumpToPageItemTemplate", "showPageLinks", "locale", "dropdownItemTemplate", "first"], outputs: ["onPageChange"] }, { kind: "directive", type: i0.forwardRef(() => i1.PrimeTemplate), selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i0.forwardRef(() => i5.Scroller), selector: "p-scroller", inputs: ["id", "style", "styleClass", "tabindex", "items", "itemSize", "scrollHeight", "scrollWidth", "orientation", "step", "delay", "resizeDelay", "appendOnly", "inline", "lazy", "disabled", "loaderDisabled", "columns", "showSpacer", "showLoader", "numToleratedItems", "loading", "autoSize", "trackBy", "options"], outputs: ["onLazyLoad", "onScroll", "onScrollIndexChange"] }, { kind: "component", type: i0.forwardRef(() => ArrowDownIcon), selector: "ArrowDownIcon" }, { kind: "component", type: i0.forwardRef(() => ArrowUpIcon), selector: "ArrowUpIcon" }, { kind: "component", type: i0.forwardRef(() => SpinnerIcon), selector: "SpinnerIcon" }, { kind: "component", type: i0.forwardRef(() => TableBody), selector: "[pTableBody]", inputs: ["pTableBody", "pTableBodyTemplate", "value", "frozen", "frozenRows", "scrollerOptions"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
2699
2706
|
}
|
2700
2707
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: Table, decorators: [{
|
2701
2708
|
type: Component,
|
@@ -2775,13 +2782,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
2775
2782
|
[step]="rows"
|
2776
2783
|
[delay]="lazy ? virtualScrollDelay : 0"
|
2777
2784
|
[inline]="true"
|
2785
|
+
[autoSize]="true"
|
2778
2786
|
[lazy]="lazy"
|
2779
2787
|
(onLazyLoad)="onLazyItemLoad($event)"
|
2780
2788
|
[loaderDisabled]="true"
|
2781
2789
|
[showSpacer]="false"
|
2782
2790
|
[showLoader]="loadingBodyTemplate"
|
2783
2791
|
[options]="virtualScrollOptions"
|
2784
|
-
[autoSize]="true"
|
2785
2792
|
>
|
2786
2793
|
<ng-template pTemplate="content" let-items let-scrollerOptions="options">
|
2787
2794
|
<ng-container *ngTemplateOutlet="buildInTable; context: { $implicit: items, options: scrollerOptions }"></ng-container>
|
@@ -2925,7 +2932,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImpor
|
|
2925
2932
|
}] }, { type: undefined, decorators: [{
|
2926
2933
|
type: Inject,
|
2927
2934
|
args: [PLATFORM_ID]
|
2928
|
-
}] }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i1.FilterService }, { type: i1.OverlayService }, { type: i1.PrimeNGConfig }], propDecorators: { frozenColumns: [{
|
2935
|
+
}] }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: TableService }, { type: i0.ChangeDetectorRef }, { type: i1.FilterService }, { type: i1.OverlayService }, { type: i1.PrimeNGConfig }, { type: i2.DomSanitizer }], propDecorators: { frozenColumns: [{
|
2929
2936
|
type: Input
|
2930
2937
|
}], frozenValue: [{
|
2931
2938
|
type: Input
|
@@ -3401,7 +3408,7 @@ class TableBody {
|
|
3401
3408
|
<ng-container *ngIf="dt.isEmpty() && !dt.loading">
|
3402
3409
|
<ng-container *ngTemplateOutlet="dt.emptyMessageTemplate; context: { $implicit: columns, frozen: frozen }"></ng-container>
|
3403
3410
|
</ng-container>
|
3404
|
-
`, isInline: true, dependencies: [{ kind: "directive", type:
|
3411
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
3405
3412
|
}
|
3406
3413
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TableBody, decorators: [{
|
3407
3414
|
type: Component,
|
@@ -3754,7 +3761,7 @@ class SortIcon {
|
|
3754
3761
|
<ng-template *ngTemplateOutlet="dt.sortIconTemplate; context: { $implicit: sortOrder }"></ng-template>
|
3755
3762
|
</span>
|
3756
3763
|
<span *ngIf="isMultiSorted()" class="p-sortable-column-badge">{{ getBadgeValue() }}</span>
|
3757
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i0.forwardRef(() =>
|
3764
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i0.forwardRef(() => SortAltIcon), selector: "SortAltIcon" }, { kind: "component", type: i0.forwardRef(() => SortAmountUpAltIcon), selector: "SortAmountUpAltIcon" }, { kind: "component", type: i0.forwardRef(() => SortAmountDownIcon), selector: "SortAmountDownIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
3758
3765
|
}
|
3759
3766
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: SortIcon, decorators: [{
|
3760
3767
|
type: Component,
|
@@ -4881,7 +4888,7 @@ class CellEditor {
|
|
4881
4888
|
<ng-container *ngIf="!editing">
|
4882
4889
|
<ng-container *ngTemplateOutlet="outputTemplate"></ng-container>
|
4883
4890
|
</ng-container>
|
4884
|
-
`, isInline: true, dependencies: [{ kind: "directive", type:
|
4891
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
|
4885
4892
|
}
|
4886
4893
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: CellEditor, decorators: [{
|
4887
4894
|
type: Component,
|
@@ -4964,7 +4971,7 @@ class TableRadioButton {
|
|
4964
4971
|
<div class="p-radiobutton-icon"></div>
|
4965
4972
|
</div>
|
4966
4973
|
</div>
|
4967
|
-
`, isInline: true, dependencies: [{ kind: "directive", type:
|
4974
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
4968
4975
|
}
|
4969
4976
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TableRadioButton, decorators: [{
|
4970
4977
|
type: Component,
|
@@ -5077,7 +5084,7 @@ class TableCheckbox {
|
|
5077
5084
|
</span>
|
5078
5085
|
</div>
|
5079
5086
|
</div>
|
5080
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i0.forwardRef(() =>
|
5087
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i0.forwardRef(() => i3.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i0.forwardRef(() => CheckIcon), selector: "CheckIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
5081
5088
|
}
|
5082
5089
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TableCheckbox, decorators: [{
|
5083
5090
|
type: Component,
|
@@ -5212,7 +5219,7 @@ class TableHeaderCheckbox {
|
|
5212
5219
|
</span>
|
5213
5220
|
</div>
|
5214
5221
|
</div>
|
5215
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i0.forwardRef(() =>
|
5222
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i0.forwardRef(() => i3.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i0.forwardRef(() => CheckIcon), selector: "CheckIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
5216
5223
|
}
|
5217
5224
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: TableHeaderCheckbox, decorators: [{
|
5218
5225
|
type: Component,
|
@@ -6094,7 +6101,7 @@ class ColumnFilter {
|
|
6094
6101
|
<ng-container *ngTemplateOutlet="footerTemplate; context: { $implicit: field }"></ng-container>
|
6095
6102
|
</div>
|
6096
6103
|
</div>
|
6097
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i0.forwardRef(() =>
|
6104
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i0.forwardRef(() => i3.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgTemplateOutlet), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i0.forwardRef(() => i6.Dropdown), selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i0.forwardRef(() => i7.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i7.NgModel), selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i0.forwardRef(() => i8.ButtonDirective), selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i0.forwardRef(() => FilterIcon), selector: "FilterIcon" }, { kind: "component", type: i0.forwardRef(() => FilterSlashIcon), selector: "FilterSlashIcon" }, { kind: "component", type: i0.forwardRef(() => PlusIcon), selector: "PlusIcon" }, { kind: "component", type: i0.forwardRef(() => TrashIcon), selector: "TrashIcon" }, { kind: "component", type: i0.forwardRef(() => ColumnFilterFormElement), selector: "p-columnFilterFormElement", inputs: ["field", "type", "filterConstraint", "filterTemplate", "placeholder", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "locale", "localeMatcher", "currency", "currencyDisplay", "useGrouping", "ariaLabel"] }], animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('.12s cubic-bezier(0, 0, 0.2, 1)')]), transition(':leave', [animate('.1s linear', style({ opacity: 0 }))])])], encapsulation: i0.ViewEncapsulation.None });
|
6098
6105
|
}
|
6099
6106
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: ColumnFilter, decorators: [{
|
6100
6107
|
type: Component,
|
@@ -6430,7 +6437,7 @@ class ColumnFilterFormElement {
|
|
6430
6437
|
<p-calendar [ariaLabel]="ariaLabel" *ngSwitchCase="'date'" [placeholder]="placeholder" [ngModel]="filterConstraint?.value" (ngModelChange)="onModelChange($event)" appendTo="body"></p-calendar>
|
6431
6438
|
</ng-container>
|
6432
6439
|
</ng-template>
|
6433
|
-
`, isInline: true, dependencies: [{ kind: "directive", type:
|
6440
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i9.InputNumber, selector: "p-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i10.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "component", type: i11.Calendar, selector: "p-calendar", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepYearPicker", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "component", type: i12.TriStateCheckbox, selector: "p-triStateCheckbox", inputs: ["disabled", "name", "ariaLabel", "ariaLabelledBy", "variant", "tabindex", "inputId", "style", "styleClass", "label", "readonly", "checkboxTrueIcon", "checkboxFalseIcon", "autofocus"], outputs: ["onChange"] }], encapsulation: i0.ViewEncapsulation.None });
|
6434
6441
|
}
|
6435
6442
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: ColumnFilterFormElement, decorators: [{
|
6436
6443
|
type: Component,
|