@ng-nest/ui 19.0.12 → 19.0.14
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/core/config/config.d.ts +4 -0
- package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-drag.mjs +2 -0
- package/fesm2022/ng-nest-ui-drag.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-pagination.mjs +13 -3
- package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-table.mjs +13 -3
- package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
- package/package.json +44 -44
- package/pagination/pagination.property.d.ts +11 -1
- package/table/table.property.d.ts +11 -1
|
@@ -38,6 +38,7 @@ class XDragDirective extends XDragProperty {
|
|
|
38
38
|
ngOnInit() {
|
|
39
39
|
const mouseDown = fromEvent(this.elementRef.nativeElement, 'mousedown').pipe(takeUntil(this.unSubject));
|
|
40
40
|
mouseDown.subscribe((downMe) => {
|
|
41
|
+
downMe.stopPropagation();
|
|
41
42
|
let x = downMe.pageX;
|
|
42
43
|
let y = downMe.pageY;
|
|
43
44
|
let offsetX = 0;
|
|
@@ -49,6 +50,7 @@ class XDragDirective extends XDragProperty {
|
|
|
49
50
|
fromEvent(this.doc.documentElement, 'mousemove')
|
|
50
51
|
.pipe(takeUntil(_unSub))
|
|
51
52
|
.subscribe((moveMe) => {
|
|
53
|
+
moveMe.stopPropagation();
|
|
52
54
|
offsetX = moveMe.pageX - x;
|
|
53
55
|
offsetY = moveMe.pageY - y;
|
|
54
56
|
x = moveMe.pageX;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-drag.mjs","sources":["../../../../lib/ng-nest/ui/drag/drag.property.ts","../../../../lib/ng-nest/ui/drag/drag.directive.ts","../../../../lib/ng-nest/ui/drag/drag.module.ts","../../../../lib/ng-nest/ui/drag/ng-nest-ui-drag.ts"],"sourcesContent":["import { Directive, output } from '@angular/core';\r\n\r\n/**\r\n * Drag 指令名称\r\n * @selector x-drag\r\n * @decorator directive\r\n */\r\nexport const XDragPrefix = 'x-drag';\r\n\r\n/**\r\n * Resizable Property\r\n */\r\n@Directive({ selector: '[x-drag]' })\r\nexport class XDragProperty {\r\n readonly dragStarted = output<XDragDistance>();\r\n readonly dragMoved = output<XDragDistanceOffset>();\r\n readonly dragEnded = output<XDragDistance>();\r\n}\r\n\r\nexport interface XDragDistance {\r\n x: number;\r\n y: number;\r\n}\r\n\r\nexport interface XDragDistanceOffset extends XDragDistance {\r\n offsetX: number;\r\n offsetY: number;\r\n}\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { Directive, ElementRef, OnDestroy, OnInit, Renderer2, inject } from '@angular/core';\r\nimport { fromEvent, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XDragProperty } from './drag.property';\r\n\r\n@Directive({ selector: '[x-drag]' })\r\nexport class XDragDirective extends XDragProperty implements OnInit, OnDestroy {\r\n private unSubject = new Subject<void>();\r\n private doc = inject(DOCUMENT);\r\n private elementRef = inject(ElementRef);\r\n private renderer = inject(Renderer2);\r\n\r\n ngOnInit() {\r\n const mouseDown = fromEvent<MouseEvent>(this.elementRef.nativeElement, 'mousedown').pipe(takeUntil(this.unSubject));\r\n mouseDown.subscribe((downMe: MouseEvent) => {\r\n let x = downMe.pageX;\r\n let y = downMe.pageY;\r\n let offsetX = 0;\r\n let offsetY = 0;\r\n const _unSub = new Subject<void>();\r\n this.renderer.setStyle(this.doc.documentElement, 'cursor', 'ew-resize');\r\n this.renderer.setStyle(this.doc.documentElement, 'user-select', 'none');\r\n this.dragStarted.emit({ x, y });\r\n fromEvent<MouseEvent>(this.doc.documentElement, 'mousemove')\r\n .pipe(takeUntil(_unSub))\r\n .subscribe((moveMe: MouseEvent) => {\r\n offsetX = moveMe.pageX - x;\r\n offsetY = moveMe.pageY - y;\r\n x = moveMe.pageX;\r\n y = moveMe.pageY;\r\n this.dragMoved.emit({ x, y, offsetX, offsetY });\r\n });\r\n fromEvent<MouseEvent>(this.doc.documentElement, 'mouseup')\r\n .pipe(takeUntil(_unSub))\r\n .subscribe(() => {\r\n this.renderer.removeStyle(this.doc.documentElement, 'cursor');\r\n this.renderer.removeStyle(this.doc.documentElement, 'user-select');\r\n this.dragEnded.emit({ x, y });\r\n _unSub.next();\r\n _unSub.complete();\r\n });\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XDragDirective } from './drag.directive';\r\n\r\n@NgModule({\r\n exports: [XDragDirective],\r\n imports: [XDragDirective]\r\n})\r\nexport class XDragModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAEA;;;;AAIG;AACI,MAAM,WAAW,GAAG;AAE3B;;AAEG;MAEU,aAAa,CAAA;AAD1B,IAAA,WAAA,GAAA;QAEW,IAAW,CAAA,WAAA,GAAG,MAAM,EAAiB;QACrC,IAAS,CAAA,SAAA,GAAG,MAAM,EAAuB;QACzC,IAAS,CAAA,SAAA,GAAG,MAAM,EAAiB;AAC7C;iIAJY,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;qHAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBADzB,SAAS;mBAAC,EAAE,QAAQ,EAAE,UAAU,EAAE;;;ACL7B,MAAO,cAAe,SAAQ,aAAa,CAAA;AADjD,IAAA,WAAA,GAAA;;AAEU,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,OAAO,EAAQ;AAC/B,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;AACtB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-drag.mjs","sources":["../../../../lib/ng-nest/ui/drag/drag.property.ts","../../../../lib/ng-nest/ui/drag/drag.directive.ts","../../../../lib/ng-nest/ui/drag/drag.module.ts","../../../../lib/ng-nest/ui/drag/ng-nest-ui-drag.ts"],"sourcesContent":["import { Directive, output } from '@angular/core';\r\n\r\n/**\r\n * Drag 指令名称\r\n * @selector x-drag\r\n * @decorator directive\r\n */\r\nexport const XDragPrefix = 'x-drag';\r\n\r\n/**\r\n * Resizable Property\r\n */\r\n@Directive({ selector: '[x-drag]' })\r\nexport class XDragProperty {\r\n readonly dragStarted = output<XDragDistance>();\r\n readonly dragMoved = output<XDragDistanceOffset>();\r\n readonly dragEnded = output<XDragDistance>();\r\n}\r\n\r\nexport interface XDragDistance {\r\n x: number;\r\n y: number;\r\n}\r\n\r\nexport interface XDragDistanceOffset extends XDragDistance {\r\n offsetX: number;\r\n offsetY: number;\r\n}\r\n","import { DOCUMENT } from '@angular/common';\r\nimport { Directive, ElementRef, OnDestroy, OnInit, Renderer2, inject } from '@angular/core';\r\nimport { fromEvent, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { XDragProperty } from './drag.property';\r\n\r\n@Directive({ selector: '[x-drag]' })\r\nexport class XDragDirective extends XDragProperty implements OnInit, OnDestroy {\r\n private unSubject = new Subject<void>();\r\n private doc = inject(DOCUMENT);\r\n private elementRef = inject(ElementRef);\r\n private renderer = inject(Renderer2);\r\n\r\n ngOnInit() {\r\n const mouseDown = fromEvent<MouseEvent>(this.elementRef.nativeElement, 'mousedown').pipe(takeUntil(this.unSubject));\r\n mouseDown.subscribe((downMe: MouseEvent) => {\r\n downMe.stopPropagation();\r\n let x = downMe.pageX;\r\n let y = downMe.pageY;\r\n let offsetX = 0;\r\n let offsetY = 0;\r\n const _unSub = new Subject<void>();\r\n this.renderer.setStyle(this.doc.documentElement, 'cursor', 'ew-resize');\r\n this.renderer.setStyle(this.doc.documentElement, 'user-select', 'none');\r\n this.dragStarted.emit({ x, y });\r\n fromEvent<MouseEvent>(this.doc.documentElement, 'mousemove')\r\n .pipe(takeUntil(_unSub))\r\n .subscribe((moveMe: MouseEvent) => {\r\n moveMe.stopPropagation();\r\n offsetX = moveMe.pageX - x;\r\n offsetY = moveMe.pageY - y;\r\n x = moveMe.pageX;\r\n y = moveMe.pageY;\r\n this.dragMoved.emit({ x, y, offsetX, offsetY });\r\n });\r\n fromEvent<MouseEvent>(this.doc.documentElement, 'mouseup')\r\n .pipe(takeUntil(_unSub))\r\n .subscribe(() => {\r\n this.renderer.removeStyle(this.doc.documentElement, 'cursor');\r\n this.renderer.removeStyle(this.doc.documentElement, 'user-select');\r\n this.dragEnded.emit({ x, y });\r\n _unSub.next();\r\n _unSub.complete();\r\n });\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { XDragDirective } from './drag.directive';\r\n\r\n@NgModule({\r\n exports: [XDragDirective],\r\n imports: [XDragDirective]\r\n})\r\nexport class XDragModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -92,6 +92,11 @@ class XPaginationProperty extends XPropertyFunction(X_PAGINATION_CONFIG_NAME) {
|
|
|
92
92
|
* @en_US Display the number of input page breaks (cannot exist with the drop-down options of page breaks). default to using Enter to confirm changes
|
|
93
93
|
*/
|
|
94
94
|
this.showInputSize = input(this.config?.showInputSize ?? false, { transform: XToBoolean });
|
|
95
|
+
/**
|
|
96
|
+
* @zh_CN 显示输入分页框的 tooltip 提示信息,默认显示
|
|
97
|
+
* @en_US show enter the tooltip prompt information for the pagination box, which will be displayed by default based on the confirmation of the input
|
|
98
|
+
*/
|
|
99
|
+
this.showInputSizeTooltipText = input(this.config?.showInputSizeTooltipText ?? true, { transform: XToBoolean });
|
|
95
100
|
/**
|
|
96
101
|
* @zh_CN 输入分页框的 tooltip 提示信息,默认根据输入确认改变的方式来显示
|
|
97
102
|
* @en_US Enter the tooltip prompt information for the pagination box, which will be displayed by default based on the confirmation of the input
|
|
@@ -119,6 +124,11 @@ class XPaginationProperty extends XPropertyFunction(X_PAGINATION_CONFIG_NAME) {
|
|
|
119
124
|
* @en_US Show size. default to using Enter to confirm changes
|
|
120
125
|
*/
|
|
121
126
|
this.showJump = input(false, { transform: XToBoolean });
|
|
127
|
+
/**
|
|
128
|
+
* @zh_CN 显示跳转输入框的 tooltip 提示信息,默认显示
|
|
129
|
+
* @en_US Show the tooltip prompt information for jumping to the input box is displayed by default based on the confirmation of input changes
|
|
130
|
+
*/
|
|
131
|
+
this.showJumpTooltipText = input(this.config?.showJumpTooltipText ?? true, { transform: XToBoolean });
|
|
122
132
|
/**
|
|
123
133
|
* @zh_CN 跳转输入框的 tooltip 提示信息,默认根据输入确认改变的方式来显示
|
|
124
134
|
* @en_US The tooltip prompt information for jumping to the input box is displayed by default based on the confirmation of input changes
|
|
@@ -153,7 +163,7 @@ class XPaginationProperty extends XPropertyFunction(X_PAGINATION_CONFIG_NAME) {
|
|
|
153
163
|
this.inputIndexSizeSureType = input(this.config?.inputIndexSizeSureType ?? 'enter');
|
|
154
164
|
}
|
|
155
165
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XPaginationProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
156
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.1", type: XPaginationProperty, isStandalone: true, selector: "x-pagination-property", inputs: { index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, total: { classPropertyName: "total", publicName: "total", isSignal: true, isRequired: false, transformFunction: null }, query: { classPropertyName: "query", publicName: "query", isSignal: true, isRequired: false, transformFunction: null }, pageLinkSize: { classPropertyName: "pageLinkSize", publicName: "pageLinkSize", isSignal: true, isRequired: false, transformFunction: null }, showEllipsis: { classPropertyName: "showEllipsis", publicName: "showEllipsis", isSignal: true, isRequired: false, transformFunction: null }, showTotal: { classPropertyName: "showTotal", publicName: "showTotal", isSignal: true, isRequired: false, transformFunction: null }, space: { classPropertyName: "space", publicName: "space", isSignal: true, isRequired: false, transformFunction: null }, showBackground: { classPropertyName: "showBackground", publicName: "showBackground", isSignal: true, isRequired: false, transformFunction: null }, showSize: { classPropertyName: "showSize", publicName: "showSize", isSignal: true, isRequired: false, transformFunction: null }, sizeWidth: { classPropertyName: "sizeWidth", publicName: "sizeWidth", isSignal: true, isRequired: false, transformFunction: null }, showInputSize: { classPropertyName: "showInputSize", publicName: "showInputSize", isSignal: true, isRequired: false, transformFunction: null }, inputSizeTooltipText: { classPropertyName: "inputSizeTooltipText", publicName: "inputSizeTooltipText", isSignal: true, isRequired: false, transformFunction: null }, inputSizeWidth: { classPropertyName: "inputSizeWidth", publicName: "inputSizeWidth", isSignal: true, isRequired: false, transformFunction: null }, sizeData: { classPropertyName: "sizeData", publicName: "sizeData", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, showJump: { classPropertyName: "showJump", publicName: "showJump", isSignal: true, isRequired: false, transformFunction: null }, jumpTooltipText: { classPropertyName: "jumpTooltipText", publicName: "jumpTooltipText", isSignal: true, isRequired: false, transformFunction: null }, jumpWidth: { classPropertyName: "jumpWidth", publicName: "jumpWidth", isSignal: true, isRequired: false, transformFunction: null }, totalTpl: { classPropertyName: "totalTpl", publicName: "totalTpl", isSignal: true, isRequired: false, transformFunction: null }, simple: { classPropertyName: "simple", publicName: "simple", isSignal: true, isRequired: false, transformFunction: null }, simpleIndexWidth: { classPropertyName: "simpleIndexWidth", publicName: "simpleIndexWidth", isSignal: true, isRequired: false, transformFunction: null }, inputIndexSizeSureType: { classPropertyName: "inputIndexSizeSureType", publicName: "inputIndexSizeSureType", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { index: "indexChange", size: "sizeChange", query: "queryChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
166
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.1", type: XPaginationProperty, isStandalone: true, selector: "x-pagination-property", inputs: { index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, total: { classPropertyName: "total", publicName: "total", isSignal: true, isRequired: false, transformFunction: null }, query: { classPropertyName: "query", publicName: "query", isSignal: true, isRequired: false, transformFunction: null }, pageLinkSize: { classPropertyName: "pageLinkSize", publicName: "pageLinkSize", isSignal: true, isRequired: false, transformFunction: null }, showEllipsis: { classPropertyName: "showEllipsis", publicName: "showEllipsis", isSignal: true, isRequired: false, transformFunction: null }, showTotal: { classPropertyName: "showTotal", publicName: "showTotal", isSignal: true, isRequired: false, transformFunction: null }, space: { classPropertyName: "space", publicName: "space", isSignal: true, isRequired: false, transformFunction: null }, showBackground: { classPropertyName: "showBackground", publicName: "showBackground", isSignal: true, isRequired: false, transformFunction: null }, showSize: { classPropertyName: "showSize", publicName: "showSize", isSignal: true, isRequired: false, transformFunction: null }, sizeWidth: { classPropertyName: "sizeWidth", publicName: "sizeWidth", isSignal: true, isRequired: false, transformFunction: null }, showInputSize: { classPropertyName: "showInputSize", publicName: "showInputSize", isSignal: true, isRequired: false, transformFunction: null }, showInputSizeTooltipText: { classPropertyName: "showInputSizeTooltipText", publicName: "showInputSizeTooltipText", isSignal: true, isRequired: false, transformFunction: null }, inputSizeTooltipText: { classPropertyName: "inputSizeTooltipText", publicName: "inputSizeTooltipText", isSignal: true, isRequired: false, transformFunction: null }, inputSizeWidth: { classPropertyName: "inputSizeWidth", publicName: "inputSizeWidth", isSignal: true, isRequired: false, transformFunction: null }, sizeData: { classPropertyName: "sizeData", publicName: "sizeData", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, showJump: { classPropertyName: "showJump", publicName: "showJump", isSignal: true, isRequired: false, transformFunction: null }, showJumpTooltipText: { classPropertyName: "showJumpTooltipText", publicName: "showJumpTooltipText", isSignal: true, isRequired: false, transformFunction: null }, jumpTooltipText: { classPropertyName: "jumpTooltipText", publicName: "jumpTooltipText", isSignal: true, isRequired: false, transformFunction: null }, jumpWidth: { classPropertyName: "jumpWidth", publicName: "jumpWidth", isSignal: true, isRequired: false, transformFunction: null }, totalTpl: { classPropertyName: "totalTpl", publicName: "totalTpl", isSignal: true, isRequired: false, transformFunction: null }, simple: { classPropertyName: "simple", publicName: "simple", isSignal: true, isRequired: false, transformFunction: null }, simpleIndexWidth: { classPropertyName: "simpleIndexWidth", publicName: "simpleIndexWidth", isSignal: true, isRequired: false, transformFunction: null }, inputIndexSizeSureType: { classPropertyName: "inputIndexSizeSureType", publicName: "inputIndexSizeSureType", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { index: "indexChange", size: "sizeChange", query: "queryChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
157
167
|
}
|
|
158
168
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XPaginationProperty, decorators: [{
|
|
159
169
|
type: Component,
|
|
@@ -330,7 +340,7 @@ class XPaginationComponent extends XPaginationProperty {
|
|
|
330
340
|
return this.index() === index;
|
|
331
341
|
}
|
|
332
342
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XPaginationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
333
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: XPaginationComponent, isStandalone: true, selector: "x-pagination", host: { properties: { "class": "this.className" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (simple()) {\r\n <div class=\"x-pagination-simple\">\r\n <x-input\r\n [bordered]=\"showBackground()\"\r\n [before]=\"previousTpl\"\r\n [after]=\"nextTpl\"\r\n [style.width]=\"simpleIndexWidth()\"\r\n [(ngModel)]=\"index\"\r\n (xKeydown)=\"onSimpleKeydown($event)\"\r\n ></x-input>\r\n <span>/</span>\r\n <span>{{ lastIndex() }}</span>\r\n </div>\r\n} @else {\r\n <x-buttons class=\"x-pagination-group\" [space]=\"space()\" [hiddenBorder]=\"!showBackground()\" [boxShadow]=\"false\">\r\n @if (showEllipsis()) {\r\n <x-button\r\n class=\"x-pagination-first\"\r\n [icon]=\"'fto-chevrons-left'\"\r\n [title]=\"'pagination.first' | xI18n\"\r\n [disabled]=\"disabled() || firstActivated()\"\r\n (click)=\"jump(1)\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n <ng-container *xOutlet=\"previousTpl\"></ng-container>\r\n @for (item of indexes(); track item) {\r\n <x-button\r\n class=\"x-pagination-link\"\r\n [disabled]=\"disabled()\"\r\n plain\r\n flat\r\n [activated]=\"getActivated(item)\"\r\n (click)=\"jump(item)\"\r\n >{{ item }}</x-button\r\n >\r\n }\r\n <ng-container *xOutlet=\"nextTpl\"></ng-container>\r\n @if (showEllipsis() && !simple()) {\r\n <x-button\r\n class=\"x-pagination-last\"\r\n [icon]=\"'fto-chevrons-right'\"\r\n [title]=\"'pagination.last' | xI18n\"\r\n [disabled]=\"disabled() || lastActivated()\"\r\n (click)=\"jump(lastIndex())\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n </x-buttons>\r\n}\r\n@if (showSize() && !showInputSize()) {\r\n <x-select\r\n [style.width]=\"sizeWidth()\"\r\n class=\"x-pagination-size\"\r\n [data]=\"sizeDataSignal()\"\r\n [clearable]=\"false\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"size\"\r\n (ngModelChange)=\"sizeChanged()\"\r\n ></x-select>\r\n}\r\n@if (showInputSize()) {\r\n <div class=\"x-pagination-input-size\">\r\n <x-input\r\n
|
|
343
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: XPaginationComponent, isStandalone: true, selector: "x-pagination", host: { properties: { "class": "this.className" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if (simple()) {\r\n <div class=\"x-pagination-simple\">\r\n <x-input\r\n [bordered]=\"showBackground()\"\r\n [before]=\"previousTpl\"\r\n [after]=\"nextTpl\"\r\n [style.width]=\"simpleIndexWidth()\"\r\n [(ngModel)]=\"index\"\r\n (xKeydown)=\"onSimpleKeydown($event)\"\r\n ></x-input>\r\n <span>/</span>\r\n <span>{{ lastIndex() }}</span>\r\n </div>\r\n} @else {\r\n <x-buttons class=\"x-pagination-group\" [space]=\"space()\" [hiddenBorder]=\"!showBackground()\" [boxShadow]=\"false\">\r\n @if (showEllipsis()) {\r\n <x-button\r\n class=\"x-pagination-first\"\r\n [icon]=\"'fto-chevrons-left'\"\r\n [title]=\"'pagination.first' | xI18n\"\r\n [disabled]=\"disabled() || firstActivated()\"\r\n (click)=\"jump(1)\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n <ng-container *xOutlet=\"previousTpl\"></ng-container>\r\n @for (item of indexes(); track item) {\r\n <x-button\r\n class=\"x-pagination-link\"\r\n [disabled]=\"disabled()\"\r\n plain\r\n flat\r\n [activated]=\"getActivated(item)\"\r\n (click)=\"jump(item)\"\r\n >{{ item }}</x-button\r\n >\r\n }\r\n <ng-container *xOutlet=\"nextTpl\"></ng-container>\r\n @if (showEllipsis() && !simple()) {\r\n <x-button\r\n class=\"x-pagination-last\"\r\n [icon]=\"'fto-chevrons-right'\"\r\n [title]=\"'pagination.last' | xI18n\"\r\n [disabled]=\"disabled() || lastActivated()\"\r\n (click)=\"jump(lastIndex())\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n </x-buttons>\r\n}\r\n@if (showSize() && !showInputSize()) {\r\n <x-select\r\n [style.width]=\"sizeWidth()\"\r\n class=\"x-pagination-size\"\r\n [data]=\"sizeDataSignal()\"\r\n [clearable]=\"false\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"size\"\r\n (ngModelChange)=\"sizeChanged()\"\r\n ></x-select>\r\n}\r\n@if (showInputSize()) {\r\n <div class=\"x-pagination-input-size\">\r\n @if (showInputSizeTooltipText()) {\r\n <x-input\r\n x-tooltip\r\n [content]=\"inputSizeTooltip()\"\r\n [style.width]=\"inputSizeWidth()\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [(ngModel)]=\"inputSize\"\r\n (xBlur)=\"onInputSizeBlur($event)\"\r\n (xKeydown)=\"onInputSizeKeydown($event)\"\r\n ></x-input>\r\n } @else {\r\n <x-input\r\n [style.width]=\"inputSizeWidth()\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [(ngModel)]=\"inputSize\"\r\n (xBlur)=\"onInputSizeBlur($event)\"\r\n (xKeydown)=\"onInputSizeKeydown($event)\"\r\n ></x-input>\r\n }\r\n <span> {{ 'pagination.sizePage' | xI18n }} </span>\r\n </div>\r\n}\r\n@if (showJump() && !simple()) {\r\n <div class=\"x-pagination-jump\">\r\n <span>{{ 'pagination.jump' | xI18n }}</span>\r\n @if (showJumpTooltipText()) {\r\n <x-input\r\n x-tooltip\r\n [content]=\"jumpTooltip()\"\r\n [bordered]=\"showBackground()\"\r\n [style.width]=\"jumpWidth()\"\r\n [(ngModel)]=\"jumpPage\"\r\n (xBlur)=\"onJumpBlur($event)\"\r\n (xKeydown)=\"onJumpKeydown($event)\"\r\n ></x-input>\r\n } @else {\r\n <x-input\r\n [bordered]=\"showBackground()\"\r\n [style.width]=\"jumpWidth()\"\r\n [(ngModel)]=\"jumpPage\"\r\n (xBlur)=\"onJumpBlur($event)\"\r\n (xKeydown)=\"onJumpKeydown($event)\"\r\n ></x-input>\r\n }\r\n </div>\r\n}\r\n@if (showTotal()) {\r\n <x-button [disabled]=\"disabled()\" plain flat class=\"x-pagination-total\">\r\n <ng-container *xOutlet=\"totalTpl(); context: { $total: total() }\">\r\n {{ 'pagination.total' | xI18n }} {{ total() }} {{ 'pagination.item' | xI18n }}\r\n </ng-container>\r\n </x-button>\r\n}\r\n<ng-template #previousTpl>\r\n <x-button\r\n [icon]=\"'fto-chevron-left'\"\r\n [title]=\"'pagination.previous' | xI18n\"\r\n [disabled]=\"disabled() || leftDisabled()\"\r\n (click)=\"jump(-1, true)\"\r\n plain\r\n flat\r\n ></x-button>\r\n</ng-template>\r\n\r\n<ng-template #nextTpl>\r\n <x-button\r\n [icon]=\"'fto-chevron-right'\"\r\n [title]=\"'pagination.next' | xI18n\"\r\n [disabled]=\"disabled() || rightDisabled()\"\r\n (click)=\"jump(1, true)\"\r\n plain\r\n flat\r\n ></x-button>\r\n</ng-template>\r\n\r\n<ng-template #nodeTpl let-node=\"$node\">\r\n @if (node) {\r\n {{ node?.label }} {{ 'pagination.sizePage' | xI18n }}\r\n }\r\n</ng-template>\r\n", styles: [".x-pagination{margin:0;padding:0}.x-pagination{display:inline-flex}.x-pagination>.x-buttons.x-buttons-hiddenBorder>x-button>.x-button{min-width:1.75rem}.x-pagination>.x-buttons.x-buttons-hiddenBorder>x-button>.x-button-activated{background-color:#0000000d}.x-pagination-size,.x-pagination-total{margin-left:.5rem}.x-pagination-input-size{margin-left:.5rem;display:inline-flex;align-items:center}.x-pagination-input-size x-input{margin-right:.5rem}.x-pagination-jump{margin-left:.5rem;display:inline-flex;align-items:center}.x-pagination-jump x-input{margin-left:.5rem}.x-pagination-simple{margin-right:.5rem;display:inline-flex;align-items:center}.x-pagination-simple>x-input input{text-align:center}.x-pagination-simple>span{margin-left:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XButtonsComponent, selector: "x-buttons" }, { kind: "pipe", type: XI18nPipe, name: "xI18n" }, { kind: "component", type: XSelectComponent, selector: "x-select" }, { kind: "component", type: XInputComponent, selector: "x-input" }, { kind: "ngmodule", type: XTooltipModule }, { kind: "directive", type: i2.XTooltipDirective, selector: "[x-tooltip], x-tooltip" }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
334
344
|
}
|
|
335
345
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XPaginationComponent, decorators: [{
|
|
336
346
|
type: Component,
|
|
@@ -343,7 +353,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImpor
|
|
|
343
353
|
XInputComponent,
|
|
344
354
|
XTooltipModule,
|
|
345
355
|
XOutletDirective
|
|
346
|
-
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (simple()) {\r\n <div class=\"x-pagination-simple\">\r\n <x-input\r\n [bordered]=\"showBackground()\"\r\n [before]=\"previousTpl\"\r\n [after]=\"nextTpl\"\r\n [style.width]=\"simpleIndexWidth()\"\r\n [(ngModel)]=\"index\"\r\n (xKeydown)=\"onSimpleKeydown($event)\"\r\n ></x-input>\r\n <span>/</span>\r\n <span>{{ lastIndex() }}</span>\r\n </div>\r\n} @else {\r\n <x-buttons class=\"x-pagination-group\" [space]=\"space()\" [hiddenBorder]=\"!showBackground()\" [boxShadow]=\"false\">\r\n @if (showEllipsis()) {\r\n <x-button\r\n class=\"x-pagination-first\"\r\n [icon]=\"'fto-chevrons-left'\"\r\n [title]=\"'pagination.first' | xI18n\"\r\n [disabled]=\"disabled() || firstActivated()\"\r\n (click)=\"jump(1)\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n <ng-container *xOutlet=\"previousTpl\"></ng-container>\r\n @for (item of indexes(); track item) {\r\n <x-button\r\n class=\"x-pagination-link\"\r\n [disabled]=\"disabled()\"\r\n plain\r\n flat\r\n [activated]=\"getActivated(item)\"\r\n (click)=\"jump(item)\"\r\n >{{ item }}</x-button\r\n >\r\n }\r\n <ng-container *xOutlet=\"nextTpl\"></ng-container>\r\n @if (showEllipsis() && !simple()) {\r\n <x-button\r\n class=\"x-pagination-last\"\r\n [icon]=\"'fto-chevrons-right'\"\r\n [title]=\"'pagination.last' | xI18n\"\r\n [disabled]=\"disabled() || lastActivated()\"\r\n (click)=\"jump(lastIndex())\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n </x-buttons>\r\n}\r\n@if (showSize() && !showInputSize()) {\r\n <x-select\r\n [style.width]=\"sizeWidth()\"\r\n class=\"x-pagination-size\"\r\n [data]=\"sizeDataSignal()\"\r\n [clearable]=\"false\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"size\"\r\n (ngModelChange)=\"sizeChanged()\"\r\n ></x-select>\r\n}\r\n@if (showInputSize()) {\r\n <div class=\"x-pagination-input-size\">\r\n <x-input\r\n
|
|
356
|
+
], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (simple()) {\r\n <div class=\"x-pagination-simple\">\r\n <x-input\r\n [bordered]=\"showBackground()\"\r\n [before]=\"previousTpl\"\r\n [after]=\"nextTpl\"\r\n [style.width]=\"simpleIndexWidth()\"\r\n [(ngModel)]=\"index\"\r\n (xKeydown)=\"onSimpleKeydown($event)\"\r\n ></x-input>\r\n <span>/</span>\r\n <span>{{ lastIndex() }}</span>\r\n </div>\r\n} @else {\r\n <x-buttons class=\"x-pagination-group\" [space]=\"space()\" [hiddenBorder]=\"!showBackground()\" [boxShadow]=\"false\">\r\n @if (showEllipsis()) {\r\n <x-button\r\n class=\"x-pagination-first\"\r\n [icon]=\"'fto-chevrons-left'\"\r\n [title]=\"'pagination.first' | xI18n\"\r\n [disabled]=\"disabled() || firstActivated()\"\r\n (click)=\"jump(1)\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n <ng-container *xOutlet=\"previousTpl\"></ng-container>\r\n @for (item of indexes(); track item) {\r\n <x-button\r\n class=\"x-pagination-link\"\r\n [disabled]=\"disabled()\"\r\n plain\r\n flat\r\n [activated]=\"getActivated(item)\"\r\n (click)=\"jump(item)\"\r\n >{{ item }}</x-button\r\n >\r\n }\r\n <ng-container *xOutlet=\"nextTpl\"></ng-container>\r\n @if (showEllipsis() && !simple()) {\r\n <x-button\r\n class=\"x-pagination-last\"\r\n [icon]=\"'fto-chevrons-right'\"\r\n [title]=\"'pagination.last' | xI18n\"\r\n [disabled]=\"disabled() || lastActivated()\"\r\n (click)=\"jump(lastIndex())\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n </x-buttons>\r\n}\r\n@if (showSize() && !showInputSize()) {\r\n <x-select\r\n [style.width]=\"sizeWidth()\"\r\n class=\"x-pagination-size\"\r\n [data]=\"sizeDataSignal()\"\r\n [clearable]=\"false\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"size\"\r\n (ngModelChange)=\"sizeChanged()\"\r\n ></x-select>\r\n}\r\n@if (showInputSize()) {\r\n <div class=\"x-pagination-input-size\">\r\n @if (showInputSizeTooltipText()) {\r\n <x-input\r\n x-tooltip\r\n [content]=\"inputSizeTooltip()\"\r\n [style.width]=\"inputSizeWidth()\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [(ngModel)]=\"inputSize\"\r\n (xBlur)=\"onInputSizeBlur($event)\"\r\n (xKeydown)=\"onInputSizeKeydown($event)\"\r\n ></x-input>\r\n } @else {\r\n <x-input\r\n [style.width]=\"inputSizeWidth()\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [(ngModel)]=\"inputSize\"\r\n (xBlur)=\"onInputSizeBlur($event)\"\r\n (xKeydown)=\"onInputSizeKeydown($event)\"\r\n ></x-input>\r\n }\r\n <span> {{ 'pagination.sizePage' | xI18n }} </span>\r\n </div>\r\n}\r\n@if (showJump() && !simple()) {\r\n <div class=\"x-pagination-jump\">\r\n <span>{{ 'pagination.jump' | xI18n }}</span>\r\n @if (showJumpTooltipText()) {\r\n <x-input\r\n x-tooltip\r\n [content]=\"jumpTooltip()\"\r\n [bordered]=\"showBackground()\"\r\n [style.width]=\"jumpWidth()\"\r\n [(ngModel)]=\"jumpPage\"\r\n (xBlur)=\"onJumpBlur($event)\"\r\n (xKeydown)=\"onJumpKeydown($event)\"\r\n ></x-input>\r\n } @else {\r\n <x-input\r\n [bordered]=\"showBackground()\"\r\n [style.width]=\"jumpWidth()\"\r\n [(ngModel)]=\"jumpPage\"\r\n (xBlur)=\"onJumpBlur($event)\"\r\n (xKeydown)=\"onJumpKeydown($event)\"\r\n ></x-input>\r\n }\r\n </div>\r\n}\r\n@if (showTotal()) {\r\n <x-button [disabled]=\"disabled()\" plain flat class=\"x-pagination-total\">\r\n <ng-container *xOutlet=\"totalTpl(); context: { $total: total() }\">\r\n {{ 'pagination.total' | xI18n }} {{ total() }} {{ 'pagination.item' | xI18n }}\r\n </ng-container>\r\n </x-button>\r\n}\r\n<ng-template #previousTpl>\r\n <x-button\r\n [icon]=\"'fto-chevron-left'\"\r\n [title]=\"'pagination.previous' | xI18n\"\r\n [disabled]=\"disabled() || leftDisabled()\"\r\n (click)=\"jump(-1, true)\"\r\n plain\r\n flat\r\n ></x-button>\r\n</ng-template>\r\n\r\n<ng-template #nextTpl>\r\n <x-button\r\n [icon]=\"'fto-chevron-right'\"\r\n [title]=\"'pagination.next' | xI18n\"\r\n [disabled]=\"disabled() || rightDisabled()\"\r\n (click)=\"jump(1, true)\"\r\n plain\r\n flat\r\n ></x-button>\r\n</ng-template>\r\n\r\n<ng-template #nodeTpl let-node=\"$node\">\r\n @if (node) {\r\n {{ node?.label }} {{ 'pagination.sizePage' | xI18n }}\r\n }\r\n</ng-template>\r\n", styles: [".x-pagination{margin:0;padding:0}.x-pagination{display:inline-flex}.x-pagination>.x-buttons.x-buttons-hiddenBorder>x-button>.x-button{min-width:1.75rem}.x-pagination>.x-buttons.x-buttons-hiddenBorder>x-button>.x-button-activated{background-color:#0000000d}.x-pagination-size,.x-pagination-total{margin-left:.5rem}.x-pagination-input-size{margin-left:.5rem;display:inline-flex;align-items:center}.x-pagination-input-size x-input{margin-right:.5rem}.x-pagination-jump{margin-left:.5rem;display:inline-flex;align-items:center}.x-pagination-jump x-input{margin-left:.5rem}.x-pagination-simple{margin-right:.5rem;display:inline-flex;align-items:center}.x-pagination-simple>x-input input{text-align:center}.x-pagination-simple>span{margin-left:.5rem}\n"] }]
|
|
347
357
|
}], propDecorators: { className: [{
|
|
348
358
|
type: HostBinding,
|
|
349
359
|
args: ['class']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-pagination.mjs","sources":["../../../../lib/ng-nest/ui/pagination/pagination.property.ts","../../../../lib/ng-nest/ui/pagination/pagination.component.ts","../../../../lib/ng-nest/ui/pagination/pagination.component.html","../../../../lib/ng-nest/ui/pagination/pagination.module.ts","../../../../lib/ng-nest/ui/pagination/ng-nest-ui-pagination.ts"],"sourcesContent":["import { XPropertyFunction, XToNumber, XToBoolean, XToCssPixelValue } from '@ng-nest/ui/core';\r\nimport { Component, model, input } from '@angular/core';\r\nimport type { XSelectNode } from '@ng-nest/ui/select';\r\nimport type { XNumber, XQuery, XBoolean, XTemplate, XDataArray } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Pagination\r\n * @selector x-pagination\r\n * @decorator component\r\n */\r\nexport const XPaginationPrefix = 'x-pagination';\r\nconst X_PAGINATION_CONFIG_NAME = 'pagination';\r\n\r\n/**\r\n * @zh_CN 分页选择条数\r\n * @en_US Sub-selection\r\n */\r\nexport const XPaginationSizeData = [10, 20, 50, 100];\r\n\r\n/**\r\n * Pagination Property\r\n */\r\n@Component({ selector: `${XPaginationPrefix}-property`, template: '' })\r\nexport class XPaginationProperty extends XPropertyFunction(X_PAGINATION_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 当前页码\r\n * @en_US Current page number\r\n */\r\n readonly index = model<number>(this.config?.index ?? 1);\r\n /**\r\n * @zh_CN 每页显示条数\r\n * @en_US Number of items displayed per page\r\n */\r\n readonly size = model<number>(this.config?.size ?? 10);\r\n /**\r\n * @zh_CN 总数\r\n * @en_US Total\r\n */\r\n readonly total = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 查询条件\r\n * @en_US Query conditions\r\n */\r\n readonly query = model<XQuery>({});\r\n /**\r\n * @zh_CN 最多显示的分页数量\r\n * @en_US The largest number of pages display\r\n */\r\n readonly pageLinkSize = input<number, XNumber>(this.config?.pageLinkSize ?? 5, { transform: XToNumber });\r\n /**\r\n * @zh_CN 显示首尾页跳转\r\n * @en_US Display the first and last page\r\n */\r\n readonly showEllipsis = input<boolean, XBoolean>(this.config?.showEllipsis ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 显示总条数\r\n * @en_US Display the total\r\n */\r\n readonly showTotal = input<boolean, XBoolean>(this.config?.showTotal ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 按钮间距\r\n * @en_US Button spacing\r\n */\r\n readonly space = input<string, XNumber>(this.config?.space ?? '0.25rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 添加背景色\r\n * @en_US Show background\r\n */\r\n readonly showBackground = input<boolean, XBoolean>(this.config?.showBackground ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 显示分页条数\r\n * @en_US Show size\r\n */\r\n readonly showSize = input<boolean, XBoolean>(this.config?.showSize ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 分页条数选择框的宽度\r\n * @en_US size with select\r\n */\r\n readonly sizeWidth = input<string, XNumber>(this.config?.sizeWidth ?? '6.875rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 显示输入分页框(不能跟下拉选项同时使用),默认使用回车确认改变\r\n * @en_US Display the number of input page breaks (cannot exist with the drop-down options of page breaks). default to using Enter to confirm changes\r\n */\r\n readonly showInputSize = input<boolean, XBoolean>(this.config?.showInputSize ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 输入分页框的 tooltip 提示信息,默认根据输入确认改变的方式来显示\r\n * @en_US Enter the tooltip prompt information for the pagination box, which will be displayed by default based on the confirmation of the input\r\n */\r\n readonly inputSizeTooltipText = input<string>(this.config?.inputSizeTooltipText ?? '');\r\n /**\r\n * @zh_CN 分页条数输入框的宽度\r\n * @en_US size with input\r\n */\r\n readonly inputSizeWidth = input<string, XNumber>(this.config?.sizeWidth ?? '3.125rem', {\r\n transform: XToCssPixelValue\r\n });\r\n /**\r\n * @zh_CN 分页选择的数据项\r\n * @en_US Paging choose items of data\r\n */\r\n readonly sizeData = input<XDataArray<XSelectNode>>(this.config?.sizeData ?? XPaginationSizeData);\r\n /**\r\n * @zh_CN 禁用整个分页\r\n * @en_US disabled\r\n */\r\n readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 显示跳转输入框,默认使用回车确认改变\r\n * @en_US Show size. default to using Enter to confirm changes\r\n */\r\n readonly showJump = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 跳转输入框的 tooltip 提示信息,默认根据输入确认改变的方式来显示\r\n * @en_US The tooltip prompt information for jumping to the input box is displayed by default based on the confirmation of input changes\r\n */\r\n readonly jumpTooltipText = input<string>(this.config?.jumpTooltipText ?? '');\r\n /**\r\n * @zh_CN 跳转页的宽度\r\n * @en_US size with\r\n */\r\n readonly jumpWidth = input<string, XNumber>(this.config?.jumpWidth ?? '3.125rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 总数自定义模板\r\n * @en_US Total template\r\n */\r\n readonly totalTpl = input<XTemplate>();\r\n /**\r\n * @zh_CN 简单分页\r\n * @en_US Simple\r\n */\r\n readonly simple = input<boolean, XBoolean>(this.config?.simple ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 简单分页输入框宽度\r\n * @en_US Simple index with\r\n */\r\n readonly simpleIndexWidth = input<string, XNumber>(this.config?.simpleIndexWidth ?? '8.125rem', {\r\n transform: XToCssPixelValue\r\n });\r\n /**\r\n * @zh_CN 输入确认改变的方式,针对输入分页大小和输入跳转页\r\n * @en_US The method for confirming changes in input is based on the input page size and input jump page\r\n */\r\n readonly inputIndexSizeSureType = input<XPaginationInputIndexSizeSureType>(\r\n this.config?.inputIndexSizeSureType ?? 'enter'\r\n );\r\n}\r\n\r\n/**\r\n * @zh_CN 输入确认改变的方式,针对输入分页大小和输入跳转页\r\n * - `'enter'` : 输入后使用回车键确认\r\n * - `'blur'` : 输入后失去焦点后确认\r\n * - `'both'` : 上面2种都可以触发确认操作\r\n * @en_US The method for confirming changes in input is based on the input page size and input jump page\r\n * - `'enter'` : After entering, use the enter key to confirm\r\n * - `'blur'` : Confirm after losing focus after input\r\n * - `'both'` : Both of the above can trigger confirmation operations\r\n */\r\nexport type XPaginationInputIndexSizeSureType = 'enter' | 'blur' | 'both';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n OnInit,\r\n signal,\r\n computed,\r\n HostBinding,\r\n ElementRef,\r\n inject,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { XPaginationPrefix, XPaginationProperty } from './pagination.property';\r\nimport { XI18nPagination, XI18nPipe, XI18nService, zh_CN } from '@ng-nest/ui/i18n';\r\nimport { ENTER } from '@angular/cdk/keycodes';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { XButtonComponent, XButtonsComponent } from '@ng-nest/ui/button';\r\nimport { XSelectComponent } from '@ng-nest/ui/select';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { XIsChange, XToDataArray } from '@ng-nest/ui/core';\r\nimport { XTooltipModule } from '@ng-nest/ui/tooltip';\r\nimport { toSignal } from '@angular/core/rxjs-interop';\r\nimport { map } from 'rxjs';\r\n\r\n@Component({\r\n selector: `${XPaginationPrefix}`,\r\n imports: [\r\n FormsModule,\r\n XButtonComponent,\r\n XButtonsComponent,\r\n XI18nPipe,\r\n XSelectComponent,\r\n XInputComponent,\r\n XTooltipModule,\r\n XOutletDirective\r\n ],\r\n templateUrl: './pagination.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XPaginationComponent extends XPaginationProperty implements OnInit {\r\n elementRef = inject(ElementRef);\r\n private i18n = inject(XI18nService);\r\n locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.pagination as XI18nPagination)), {\r\n initialValue: zh_CN.pagination\r\n });\r\n\r\n @HostBinding('class') className = XPaginationPrefix;\r\n\r\n indexFirst = signal(1);\r\n indexLast = signal(1);\r\n jumpPage = signal<string>('');\r\n inputSize = signal<string>('');\r\n\r\n lastIndex = computed(() => Math.ceil(this.total() / this.size()) || 1);\r\n leftDisabled = computed(() => this.index() === 1 || this.total() === 0);\r\n rightDisabled = computed(() => this.index() === this.lastIndex() || this.total() === 0);\r\n firstActivated = computed(() => this.index() === 1);\r\n lastActivated = computed(() => this.index() === this.lastIndex());\r\n\r\n indexes = computed(() => {\r\n const indexes: number[] = [];\r\n const current = this.index() - 1;\r\n const maxSize = this.pageLinkSize();\r\n const pages = Math.min(maxSize, this.lastIndex());\r\n let start = Math.max(0, Math.ceil(current - pages / 2)),\r\n end = Math.min(this.lastIndex() - 1, start + pages - 1);\r\n var delta = maxSize - (end - start + 1);\r\n start = Math.max(0, start - delta);\r\n\r\n for (let i = start; i <= end; i++) {\r\n indexes.push(i + 1);\r\n }\r\n return indexes;\r\n });\r\n\r\n sizeDataSignal = computed(() => XToDataArray(this.sizeData()));\r\n\r\n inputSizeTooltip = computed(() => {\r\n if (this.inputSizeTooltipText()) return this.inputSizeTooltipText();\r\n if (this.inputIndexSizeSureType() === 'enter') {\r\n return this.locale().inputSizeTooltipEnter;\r\n }\r\n if (this.inputIndexSizeSureType() === 'blur') {\r\n return this.locale().inputSizeTooltipBlur;\r\n }\r\n if (this.inputIndexSizeSureType() === 'both') {\r\n return this.locale().inputSizeTooltipBoth;\r\n }\r\n return '';\r\n });\r\n\r\n jumpTooltip = computed(() => {\r\n if (this.jumpTooltipText()) return this.jumpTooltipText();\r\n if (this.inputIndexSizeSureType() === 'enter') {\r\n return this.locale().jumpTooltipEnter;\r\n }\r\n if (this.inputIndexSizeSureType() === 'blur') {\r\n return this.locale().jumpTooltipBlur;\r\n }\r\n if (this.inputIndexSizeSureType() === 'both') {\r\n return this.locale().jumpTooltipBoth;\r\n }\r\n return '';\r\n });\r\n\r\n ngOnInit() {\r\n this.inputSize.set(this.size().toString());\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n const { size } = changes;\r\n XIsChange(size) && this.inputSize.set(this.size().toString());\r\n }\r\n\r\n sizeChanged() {\r\n if (this.index() !== 1) {\r\n this.index.set(1);\r\n }\r\n }\r\n\r\n jump(index: number, isDiff = false) {\r\n const ix = this.validateIndex(isDiff ? this.index() + index : index);\r\n if (ix !== this.index()) {\r\n this.index.set(ix);\r\n }\r\n }\r\n\r\n onJumpBlur(_event: MouseEvent) {\r\n if (!['blur', 'both'].includes(this.inputIndexSizeSureType())) return;\r\n const jumpPage = this.jumpPage().trim();\r\n const page = Number(jumpPage);\r\n this.onJumpPageChange(page);\r\n }\r\n\r\n onJumpKeydown(event: KeyboardEvent) {\r\n if (!['enter', 'both'].includes(this.inputIndexSizeSureType())) return;\r\n const jumpPage = this.jumpPage().trim();\r\n if (jumpPage !== '' && event.keyCode === ENTER) {\r\n const page = Number(jumpPage);\r\n this.onJumpPageChange(page);\r\n }\r\n }\r\n\r\n onJumpPageChange(page: number) {\r\n if (page <= this.indexFirst()) {\r\n this.jump(this.indexFirst());\r\n } else if (page >= this.lastIndex()) {\r\n this.jump(this.lastIndex());\r\n } else {\r\n this.jump(page);\r\n }\r\n this.jumpPage.set('');\r\n }\r\n\r\n onSimpleKeydown(event: KeyboardEvent) {\r\n if (this.index() !== null && event.keyCode === ENTER) {\r\n if (this.index() % 1 !== 0) {\r\n this.index.update((x) => Math.round(x));\r\n }\r\n if (isNaN(this.index()) || this.index() === 0) {\r\n this.index.set(1);\r\n }\r\n if (this.index() <= this.indexFirst()) {\r\n this.index.set(this.indexFirst());\r\n } else if (this.index() >= this.lastIndex()) {\r\n this.index.set(this.lastIndex());\r\n }\r\n this.jump(this.index());\r\n }\r\n }\r\n\r\n onInputSizeBlur(_event: MouseEvent) {\r\n if (!['blur', 'both'].includes(this.inputIndexSizeSureType())) return;\r\n const inputSize = this.inputSize().trim();\r\n const inputNumber = Number(inputSize);\r\n this.onSizeChange(inputNumber);\r\n }\r\n\r\n onInputSizeKeydown(event: KeyboardEvent) {\r\n if (!['enter', 'both'].includes(this.inputIndexSizeSureType())) return;\r\n const inputSize = this.inputSize().trim();\r\n if (inputSize !== '' && event.keyCode === ENTER) {\r\n const inputNumber = Number(inputSize);\r\n this.onSizeChange(inputNumber);\r\n }\r\n }\r\n\r\n onSizeChange(size: number) {\r\n if (size % 1 !== 0) {\r\n this.inputSize.set(`${Math.round(size)}`);\r\n }\r\n if (isNaN(size)) {\r\n this.inputSize.set(`${this.size()}`);\r\n }\r\n if (size <= 0) {\r\n this.inputSize.set(`${this.size()}`);\r\n } else if (size !== this.size()) {\r\n this.size.set(size);\r\n this.sizeChanged();\r\n }\r\n }\r\n\r\n validateIndex(value: number): number {\r\n if (value > this.lastIndex()) {\r\n return this.lastIndex();\r\n } else if (value < 1) {\r\n return 1;\r\n } else {\r\n return value;\r\n }\r\n }\r\n\r\n getActivated(index: number) {\r\n return this.index() === index;\r\n }\r\n}\r\n","@if (simple()) {\r\n <div class=\"x-pagination-simple\">\r\n <x-input\r\n [bordered]=\"showBackground()\"\r\n [before]=\"previousTpl\"\r\n [after]=\"nextTpl\"\r\n [style.width]=\"simpleIndexWidth()\"\r\n [(ngModel)]=\"index\"\r\n (xKeydown)=\"onSimpleKeydown($event)\"\r\n ></x-input>\r\n <span>/</span>\r\n <span>{{ lastIndex() }}</span>\r\n </div>\r\n} @else {\r\n <x-buttons class=\"x-pagination-group\" [space]=\"space()\" [hiddenBorder]=\"!showBackground()\" [boxShadow]=\"false\">\r\n @if (showEllipsis()) {\r\n <x-button\r\n class=\"x-pagination-first\"\r\n [icon]=\"'fto-chevrons-left'\"\r\n [title]=\"'pagination.first' | xI18n\"\r\n [disabled]=\"disabled() || firstActivated()\"\r\n (click)=\"jump(1)\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n <ng-container *xOutlet=\"previousTpl\"></ng-container>\r\n @for (item of indexes(); track item) {\r\n <x-button\r\n class=\"x-pagination-link\"\r\n [disabled]=\"disabled()\"\r\n plain\r\n flat\r\n [activated]=\"getActivated(item)\"\r\n (click)=\"jump(item)\"\r\n >{{ item }}</x-button\r\n >\r\n }\r\n <ng-container *xOutlet=\"nextTpl\"></ng-container>\r\n @if (showEllipsis() && !simple()) {\r\n <x-button\r\n class=\"x-pagination-last\"\r\n [icon]=\"'fto-chevrons-right'\"\r\n [title]=\"'pagination.last' | xI18n\"\r\n [disabled]=\"disabled() || lastActivated()\"\r\n (click)=\"jump(lastIndex())\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n </x-buttons>\r\n}\r\n@if (showSize() && !showInputSize()) {\r\n <x-select\r\n [style.width]=\"sizeWidth()\"\r\n class=\"x-pagination-size\"\r\n [data]=\"sizeDataSignal()\"\r\n [clearable]=\"false\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"size\"\r\n (ngModelChange)=\"sizeChanged()\"\r\n ></x-select>\r\n}\r\n@if (showInputSize()) {\r\n <div class=\"x-pagination-input-size\">\r\n <x-input\r\n x-tooltip\r\n [content]=\"inputSizeTooltip()\"\r\n [style.width]=\"inputSizeWidth()\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [(ngModel)]=\"inputSize\"\r\n (xBlur)=\"onInputSizeBlur($event)\"\r\n (xKeydown)=\"onInputSizeKeydown($event)\"\r\n ></x-input>\r\n <span> {{ 'pagination.sizePage' | xI18n }} </span>\r\n </div>\r\n}\r\n@if (showJump() && !simple()) {\r\n <div class=\"x-pagination-jump\">\r\n <span>{{ 'pagination.jump' | xI18n }}</span>\r\n <x-input\r\n x-tooltip\r\n [content]=\"jumpTooltip()\"\r\n [bordered]=\"showBackground()\"\r\n [style.width]=\"jumpWidth()\"\r\n [(ngModel)]=\"jumpPage\"\r\n (xBlur)=\"onJumpBlur($event)\"\r\n (xKeydown)=\"onJumpKeydown($event)\"\r\n ></x-input>\r\n </div>\r\n}\r\n@if (showTotal()) {\r\n <x-button [disabled]=\"disabled()\" plain flat class=\"x-pagination-total\">\r\n <ng-container *xOutlet=\"totalTpl(); context: { $total: total() }\">\r\n {{ 'pagination.total' | xI18n }} {{ total() }} {{ 'pagination.item' | xI18n }}\r\n </ng-container>\r\n </x-button>\r\n}\r\n<ng-template #previousTpl>\r\n <x-button\r\n [icon]=\"'fto-chevron-left'\"\r\n [title]=\"'pagination.previous' | xI18n\"\r\n [disabled]=\"disabled() || leftDisabled()\"\r\n (click)=\"jump(-1, true)\"\r\n plain\r\n flat\r\n ></x-button>\r\n</ng-template>\r\n\r\n<ng-template #nextTpl>\r\n <x-button\r\n [icon]=\"'fto-chevron-right'\"\r\n [title]=\"'pagination.next' | xI18n\"\r\n [disabled]=\"disabled() || rightDisabled()\"\r\n (click)=\"jump(1, true)\"\r\n plain\r\n flat\r\n ></x-button>\r\n</ng-template>\r\n\r\n<ng-template #nodeTpl let-node=\"$node\">\r\n @if (node) {\r\n {{ node?.label }} {{ 'pagination.sizePage' | xI18n }}\r\n }\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { XPaginationComponent } from './pagination.component';\r\n\r\n@NgModule({\r\n exports: [XPaginationComponent],\r\n imports: [XPaginationComponent]\r\n})\r\nexport class XPaginationModule {}\r\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":"ng-nest-ui-pagination.mjs","sources":["../../../../lib/ng-nest/ui/pagination/pagination.property.ts","../../../../lib/ng-nest/ui/pagination/pagination.component.ts","../../../../lib/ng-nest/ui/pagination/pagination.component.html","../../../../lib/ng-nest/ui/pagination/pagination.module.ts","../../../../lib/ng-nest/ui/pagination/ng-nest-ui-pagination.ts"],"sourcesContent":["import { XPropertyFunction, XToNumber, XToBoolean, XToCssPixelValue } from '@ng-nest/ui/core';\r\nimport { Component, model, input } from '@angular/core';\r\nimport type { XSelectNode } from '@ng-nest/ui/select';\r\nimport type { XNumber, XQuery, XBoolean, XTemplate, XDataArray } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * Pagination\r\n * @selector x-pagination\r\n * @decorator component\r\n */\r\nexport const XPaginationPrefix = 'x-pagination';\r\nconst X_PAGINATION_CONFIG_NAME = 'pagination';\r\n\r\n/**\r\n * @zh_CN 分页选择条数\r\n * @en_US Sub-selection\r\n */\r\nexport const XPaginationSizeData = [10, 20, 50, 100];\r\n\r\n/**\r\n * Pagination Property\r\n */\r\n@Component({ selector: `${XPaginationPrefix}-property`, template: '' })\r\nexport class XPaginationProperty extends XPropertyFunction(X_PAGINATION_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 当前页码\r\n * @en_US Current page number\r\n */\r\n readonly index = model<number>(this.config?.index ?? 1);\r\n /**\r\n * @zh_CN 每页显示条数\r\n * @en_US Number of items displayed per page\r\n */\r\n readonly size = model<number>(this.config?.size ?? 10);\r\n /**\r\n * @zh_CN 总数\r\n * @en_US Total\r\n */\r\n readonly total = input<number, XNumber>(0, { transform: XToNumber });\r\n /**\r\n * @zh_CN 查询条件\r\n * @en_US Query conditions\r\n */\r\n readonly query = model<XQuery>({});\r\n /**\r\n * @zh_CN 最多显示的分页数量\r\n * @en_US The largest number of pages display\r\n */\r\n readonly pageLinkSize = input<number, XNumber>(this.config?.pageLinkSize ?? 5, { transform: XToNumber });\r\n /**\r\n * @zh_CN 显示首尾页跳转\r\n * @en_US Display the first and last page\r\n */\r\n readonly showEllipsis = input<boolean, XBoolean>(this.config?.showEllipsis ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 显示总条数\r\n * @en_US Display the total\r\n */\r\n readonly showTotal = input<boolean, XBoolean>(this.config?.showTotal ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 按钮间距\r\n * @en_US Button spacing\r\n */\r\n readonly space = input<string, XNumber>(this.config?.space ?? '0.25rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 添加背景色\r\n * @en_US Show background\r\n */\r\n readonly showBackground = input<boolean, XBoolean>(this.config?.showBackground ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 显示分页条数\r\n * @en_US Show size\r\n */\r\n readonly showSize = input<boolean, XBoolean>(this.config?.showSize ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 分页条数选择框的宽度\r\n * @en_US size with select\r\n */\r\n readonly sizeWidth = input<string, XNumber>(this.config?.sizeWidth ?? '6.875rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 显示输入分页框(不能跟下拉选项同时使用),默认使用回车确认改变\r\n * @en_US Display the number of input page breaks (cannot exist with the drop-down options of page breaks). default to using Enter to confirm changes\r\n */\r\n readonly showInputSize = input<boolean, XBoolean>(this.config?.showInputSize ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 显示输入分页框的 tooltip 提示信息,默认显示\r\n * @en_US show enter the tooltip prompt information for the pagination box, which will be displayed by default based on the confirmation of the input\r\n */\r\n readonly showInputSizeTooltipText = input<boolean, XBoolean>(this.config?.showInputSizeTooltipText ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 输入分页框的 tooltip 提示信息,默认根据输入确认改变的方式来显示\r\n * @en_US Enter the tooltip prompt information for the pagination box, which will be displayed by default based on the confirmation of the input\r\n */\r\n readonly inputSizeTooltipText = input<string>(this.config?.inputSizeTooltipText ?? '');\r\n /**\r\n * @zh_CN 分页条数输入框的宽度\r\n * @en_US size with input\r\n */\r\n readonly inputSizeWidth = input<string, XNumber>(this.config?.sizeWidth ?? '3.125rem', {\r\n transform: XToCssPixelValue\r\n });\r\n /**\r\n * @zh_CN 分页选择的数据项\r\n * @en_US Paging choose items of data\r\n */\r\n readonly sizeData = input<XDataArray<XSelectNode>>(this.config?.sizeData ?? XPaginationSizeData);\r\n /**\r\n * @zh_CN 禁用整个分页\r\n * @en_US disabled\r\n */\r\n readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 显示跳转输入框,默认使用回车确认改变\r\n * @en_US Show size. default to using Enter to confirm changes\r\n */\r\n readonly showJump = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 显示跳转输入框的 tooltip 提示信息,默认显示\r\n * @en_US Show the tooltip prompt information for jumping to the input box is displayed by default based on the confirmation of input changes\r\n */\r\n readonly showJumpTooltipText = input<boolean, XBoolean>(this.config?.showJumpTooltipText ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 跳转输入框的 tooltip 提示信息,默认根据输入确认改变的方式来显示\r\n * @en_US The tooltip prompt information for jumping to the input box is displayed by default based on the confirmation of input changes\r\n */\r\n readonly jumpTooltipText = input<string>(this.config?.jumpTooltipText ?? '');\r\n /**\r\n * @zh_CN 跳转页的宽度\r\n * @en_US size with\r\n */\r\n readonly jumpWidth = input<string, XNumber>(this.config?.jumpWidth ?? '3.125rem', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 总数自定义模板\r\n * @en_US Total template\r\n */\r\n readonly totalTpl = input<XTemplate>();\r\n /**\r\n * @zh_CN 简单分页\r\n * @en_US Simple\r\n */\r\n readonly simple = input<boolean, XBoolean>(this.config?.simple ?? false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 简单分页输入框宽度\r\n * @en_US Simple index with\r\n */\r\n readonly simpleIndexWidth = input<string, XNumber>(this.config?.simpleIndexWidth ?? '8.125rem', {\r\n transform: XToCssPixelValue\r\n });\r\n /**\r\n * @zh_CN 输入确认改变的方式,针对输入分页大小和输入跳转页\r\n * @en_US The method for confirming changes in input is based on the input page size and input jump page\r\n */\r\n readonly inputIndexSizeSureType = input<XPaginationInputIndexSizeSureType>(\r\n this.config?.inputIndexSizeSureType ?? 'enter'\r\n );\r\n}\r\n\r\n/**\r\n * @zh_CN 输入确认改变的方式,针对输入分页大小和输入跳转页\r\n * - `'enter'` : 输入后使用回车键确认\r\n * - `'blur'` : 输入后失去焦点后确认\r\n * - `'both'` : 上面2种都可以触发确认操作\r\n * @en_US The method for confirming changes in input is based on the input page size and input jump page\r\n * - `'enter'` : After entering, use the enter key to confirm\r\n * - `'blur'` : Confirm after losing focus after input\r\n * - `'both'` : Both of the above can trigger confirmation operations\r\n */\r\nexport type XPaginationInputIndexSizeSureType = 'enter' | 'blur' | 'both';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n OnInit,\r\n signal,\r\n computed,\r\n HostBinding,\r\n ElementRef,\r\n inject,\r\n SimpleChanges\r\n} from '@angular/core';\r\nimport { XPaginationPrefix, XPaginationProperty } from './pagination.property';\r\nimport { XI18nPagination, XI18nPipe, XI18nService, zh_CN } from '@ng-nest/ui/i18n';\r\nimport { ENTER } from '@angular/cdk/keycodes';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { XButtonComponent, XButtonsComponent } from '@ng-nest/ui/button';\r\nimport { XSelectComponent } from '@ng-nest/ui/select';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { XOutletDirective } from '@ng-nest/ui/outlet';\r\nimport { XIsChange, XToDataArray } from '@ng-nest/ui/core';\r\nimport { XTooltipModule } from '@ng-nest/ui/tooltip';\r\nimport { toSignal } from '@angular/core/rxjs-interop';\r\nimport { map } from 'rxjs';\r\n\r\n@Component({\r\n selector: `${XPaginationPrefix}`,\r\n imports: [\r\n FormsModule,\r\n XButtonComponent,\r\n XButtonsComponent,\r\n XI18nPipe,\r\n XSelectComponent,\r\n XInputComponent,\r\n XTooltipModule,\r\n XOutletDirective\r\n ],\r\n templateUrl: './pagination.component.html',\r\n styleUrls: ['./style/index.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class XPaginationComponent extends XPaginationProperty implements OnInit {\r\n elementRef = inject(ElementRef);\r\n private i18n = inject(XI18nService);\r\n locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.pagination as XI18nPagination)), {\r\n initialValue: zh_CN.pagination\r\n });\r\n\r\n @HostBinding('class') className = XPaginationPrefix;\r\n\r\n indexFirst = signal(1);\r\n indexLast = signal(1);\r\n jumpPage = signal<string>('');\r\n inputSize = signal<string>('');\r\n\r\n lastIndex = computed(() => Math.ceil(this.total() / this.size()) || 1);\r\n leftDisabled = computed(() => this.index() === 1 || this.total() === 0);\r\n rightDisabled = computed(() => this.index() === this.lastIndex() || this.total() === 0);\r\n firstActivated = computed(() => this.index() === 1);\r\n lastActivated = computed(() => this.index() === this.lastIndex());\r\n\r\n indexes = computed(() => {\r\n const indexes: number[] = [];\r\n const current = this.index() - 1;\r\n const maxSize = this.pageLinkSize();\r\n const pages = Math.min(maxSize, this.lastIndex());\r\n let start = Math.max(0, Math.ceil(current - pages / 2)),\r\n end = Math.min(this.lastIndex() - 1, start + pages - 1);\r\n var delta = maxSize - (end - start + 1);\r\n start = Math.max(0, start - delta);\r\n\r\n for (let i = start; i <= end; i++) {\r\n indexes.push(i + 1);\r\n }\r\n return indexes;\r\n });\r\n\r\n sizeDataSignal = computed(() => XToDataArray(this.sizeData()));\r\n\r\n inputSizeTooltip = computed(() => {\r\n if (this.inputSizeTooltipText()) return this.inputSizeTooltipText();\r\n if (this.inputIndexSizeSureType() === 'enter') {\r\n return this.locale().inputSizeTooltipEnter;\r\n }\r\n if (this.inputIndexSizeSureType() === 'blur') {\r\n return this.locale().inputSizeTooltipBlur;\r\n }\r\n if (this.inputIndexSizeSureType() === 'both') {\r\n return this.locale().inputSizeTooltipBoth;\r\n }\r\n return '';\r\n });\r\n\r\n jumpTooltip = computed(() => {\r\n if (this.jumpTooltipText()) return this.jumpTooltipText();\r\n if (this.inputIndexSizeSureType() === 'enter') {\r\n return this.locale().jumpTooltipEnter;\r\n }\r\n if (this.inputIndexSizeSureType() === 'blur') {\r\n return this.locale().jumpTooltipBlur;\r\n }\r\n if (this.inputIndexSizeSureType() === 'both') {\r\n return this.locale().jumpTooltipBoth;\r\n }\r\n return '';\r\n });\r\n\r\n ngOnInit() {\r\n this.inputSize.set(this.size().toString());\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n const { size } = changes;\r\n XIsChange(size) && this.inputSize.set(this.size().toString());\r\n }\r\n\r\n sizeChanged() {\r\n if (this.index() !== 1) {\r\n this.index.set(1);\r\n }\r\n }\r\n\r\n jump(index: number, isDiff = false) {\r\n const ix = this.validateIndex(isDiff ? this.index() + index : index);\r\n if (ix !== this.index()) {\r\n this.index.set(ix);\r\n }\r\n }\r\n\r\n onJumpBlur(_event: MouseEvent) {\r\n if (!['blur', 'both'].includes(this.inputIndexSizeSureType())) return;\r\n const jumpPage = this.jumpPage().trim();\r\n const page = Number(jumpPage);\r\n this.onJumpPageChange(page);\r\n }\r\n\r\n onJumpKeydown(event: KeyboardEvent) {\r\n if (!['enter', 'both'].includes(this.inputIndexSizeSureType())) return;\r\n const jumpPage = this.jumpPage().trim();\r\n if (jumpPage !== '' && event.keyCode === ENTER) {\r\n const page = Number(jumpPage);\r\n this.onJumpPageChange(page);\r\n }\r\n }\r\n\r\n onJumpPageChange(page: number) {\r\n if (page <= this.indexFirst()) {\r\n this.jump(this.indexFirst());\r\n } else if (page >= this.lastIndex()) {\r\n this.jump(this.lastIndex());\r\n } else {\r\n this.jump(page);\r\n }\r\n this.jumpPage.set('');\r\n }\r\n\r\n onSimpleKeydown(event: KeyboardEvent) {\r\n if (this.index() !== null && event.keyCode === ENTER) {\r\n if (this.index() % 1 !== 0) {\r\n this.index.update((x) => Math.round(x));\r\n }\r\n if (isNaN(this.index()) || this.index() === 0) {\r\n this.index.set(1);\r\n }\r\n if (this.index() <= this.indexFirst()) {\r\n this.index.set(this.indexFirst());\r\n } else if (this.index() >= this.lastIndex()) {\r\n this.index.set(this.lastIndex());\r\n }\r\n this.jump(this.index());\r\n }\r\n }\r\n\r\n onInputSizeBlur(_event: MouseEvent) {\r\n if (!['blur', 'both'].includes(this.inputIndexSizeSureType())) return;\r\n const inputSize = this.inputSize().trim();\r\n const inputNumber = Number(inputSize);\r\n this.onSizeChange(inputNumber);\r\n }\r\n\r\n onInputSizeKeydown(event: KeyboardEvent) {\r\n if (!['enter', 'both'].includes(this.inputIndexSizeSureType())) return;\r\n const inputSize = this.inputSize().trim();\r\n if (inputSize !== '' && event.keyCode === ENTER) {\r\n const inputNumber = Number(inputSize);\r\n this.onSizeChange(inputNumber);\r\n }\r\n }\r\n\r\n onSizeChange(size: number) {\r\n if (size % 1 !== 0) {\r\n this.inputSize.set(`${Math.round(size)}`);\r\n }\r\n if (isNaN(size)) {\r\n this.inputSize.set(`${this.size()}`);\r\n }\r\n if (size <= 0) {\r\n this.inputSize.set(`${this.size()}`);\r\n } else if (size !== this.size()) {\r\n this.size.set(size);\r\n this.sizeChanged();\r\n }\r\n }\r\n\r\n validateIndex(value: number): number {\r\n if (value > this.lastIndex()) {\r\n return this.lastIndex();\r\n } else if (value < 1) {\r\n return 1;\r\n } else {\r\n return value;\r\n }\r\n }\r\n\r\n getActivated(index: number) {\r\n return this.index() === index;\r\n }\r\n}\r\n","@if (simple()) {\r\n <div class=\"x-pagination-simple\">\r\n <x-input\r\n [bordered]=\"showBackground()\"\r\n [before]=\"previousTpl\"\r\n [after]=\"nextTpl\"\r\n [style.width]=\"simpleIndexWidth()\"\r\n [(ngModel)]=\"index\"\r\n (xKeydown)=\"onSimpleKeydown($event)\"\r\n ></x-input>\r\n <span>/</span>\r\n <span>{{ lastIndex() }}</span>\r\n </div>\r\n} @else {\r\n <x-buttons class=\"x-pagination-group\" [space]=\"space()\" [hiddenBorder]=\"!showBackground()\" [boxShadow]=\"false\">\r\n @if (showEllipsis()) {\r\n <x-button\r\n class=\"x-pagination-first\"\r\n [icon]=\"'fto-chevrons-left'\"\r\n [title]=\"'pagination.first' | xI18n\"\r\n [disabled]=\"disabled() || firstActivated()\"\r\n (click)=\"jump(1)\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n <ng-container *xOutlet=\"previousTpl\"></ng-container>\r\n @for (item of indexes(); track item) {\r\n <x-button\r\n class=\"x-pagination-link\"\r\n [disabled]=\"disabled()\"\r\n plain\r\n flat\r\n [activated]=\"getActivated(item)\"\r\n (click)=\"jump(item)\"\r\n >{{ item }}</x-button\r\n >\r\n }\r\n <ng-container *xOutlet=\"nextTpl\"></ng-container>\r\n @if (showEllipsis() && !simple()) {\r\n <x-button\r\n class=\"x-pagination-last\"\r\n [icon]=\"'fto-chevrons-right'\"\r\n [title]=\"'pagination.last' | xI18n\"\r\n [disabled]=\"disabled() || lastActivated()\"\r\n (click)=\"jump(lastIndex())\"\r\n plain\r\n flat\r\n ></x-button>\r\n }\r\n </x-buttons>\r\n}\r\n@if (showSize() && !showInputSize()) {\r\n <x-select\r\n [style.width]=\"sizeWidth()\"\r\n class=\"x-pagination-size\"\r\n [data]=\"sizeDataSignal()\"\r\n [clearable]=\"false\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [nodeTpl]=\"nodeTpl\"\r\n [(ngModel)]=\"size\"\r\n (ngModelChange)=\"sizeChanged()\"\r\n ></x-select>\r\n}\r\n@if (showInputSize()) {\r\n <div class=\"x-pagination-input-size\">\r\n @if (showInputSizeTooltipText()) {\r\n <x-input\r\n x-tooltip\r\n [content]=\"inputSizeTooltip()\"\r\n [style.width]=\"inputSizeWidth()\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [(ngModel)]=\"inputSize\"\r\n (xBlur)=\"onInputSizeBlur($event)\"\r\n (xKeydown)=\"onInputSizeKeydown($event)\"\r\n ></x-input>\r\n } @else {\r\n <x-input\r\n [style.width]=\"inputSizeWidth()\"\r\n [disabled]=\"disabled()\"\r\n [bordered]=\"showBackground()\"\r\n [(ngModel)]=\"inputSize\"\r\n (xBlur)=\"onInputSizeBlur($event)\"\r\n (xKeydown)=\"onInputSizeKeydown($event)\"\r\n ></x-input>\r\n }\r\n <span> {{ 'pagination.sizePage' | xI18n }} </span>\r\n </div>\r\n}\r\n@if (showJump() && !simple()) {\r\n <div class=\"x-pagination-jump\">\r\n <span>{{ 'pagination.jump' | xI18n }}</span>\r\n @if (showJumpTooltipText()) {\r\n <x-input\r\n x-tooltip\r\n [content]=\"jumpTooltip()\"\r\n [bordered]=\"showBackground()\"\r\n [style.width]=\"jumpWidth()\"\r\n [(ngModel)]=\"jumpPage\"\r\n (xBlur)=\"onJumpBlur($event)\"\r\n (xKeydown)=\"onJumpKeydown($event)\"\r\n ></x-input>\r\n } @else {\r\n <x-input\r\n [bordered]=\"showBackground()\"\r\n [style.width]=\"jumpWidth()\"\r\n [(ngModel)]=\"jumpPage\"\r\n (xBlur)=\"onJumpBlur($event)\"\r\n (xKeydown)=\"onJumpKeydown($event)\"\r\n ></x-input>\r\n }\r\n </div>\r\n}\r\n@if (showTotal()) {\r\n <x-button [disabled]=\"disabled()\" plain flat class=\"x-pagination-total\">\r\n <ng-container *xOutlet=\"totalTpl(); context: { $total: total() }\">\r\n {{ 'pagination.total' | xI18n }} {{ total() }} {{ 'pagination.item' | xI18n }}\r\n </ng-container>\r\n </x-button>\r\n}\r\n<ng-template #previousTpl>\r\n <x-button\r\n [icon]=\"'fto-chevron-left'\"\r\n [title]=\"'pagination.previous' | xI18n\"\r\n [disabled]=\"disabled() || leftDisabled()\"\r\n (click)=\"jump(-1, true)\"\r\n plain\r\n flat\r\n ></x-button>\r\n</ng-template>\r\n\r\n<ng-template #nextTpl>\r\n <x-button\r\n [icon]=\"'fto-chevron-right'\"\r\n [title]=\"'pagination.next' | xI18n\"\r\n [disabled]=\"disabled() || rightDisabled()\"\r\n (click)=\"jump(1, true)\"\r\n plain\r\n flat\r\n ></x-button>\r\n</ng-template>\r\n\r\n<ng-template #nodeTpl let-node=\"$node\">\r\n @if (node) {\r\n {{ node?.label }} {{ 'pagination.sizePage' | xI18n }}\r\n }\r\n</ng-template>\r\n","import { NgModule } from '@angular/core';\r\nimport { XPaginationComponent } from './pagination.component';\r\n\r\n@NgModule({\r\n exports: [XPaginationComponent],\r\n imports: [XPaginationComponent]\r\n})\r\nexport class XPaginationModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|