@acorex/components 7.0.33 → 7.0.35
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/alert/src/alert.component.d.ts +2 -2
- package/badge/src/badge.component.d.ts +2 -2
- package/breadcrumbs/src/breadcrumbs-item.component.d.ts +10 -7
- package/button/src/button-group.component.d.ts +6 -6
- package/button/src/button-item.component.d.ts +6 -6
- package/chips/src/chips.component.d.ts +6 -6
- package/color-palette/src/color-palette-input.component.d.ts +5 -0
- package/color-palette/src/color-palette-picker.component.d.ts +13 -4
- package/color-palette/src/color-palette-swatches.component.d.ts +1 -0
- package/color-palette/src/color-palette.class.d.ts +5 -6
- package/color-palette/src/color-palette.component.d.ts +3 -11
- package/color-palette/src/color-palette.module.d.ts +2 -1
- package/color-picker/src/color-picker.component.d.ts +22 -20
- package/common/public-api.d.ts +1 -0
- package/common/src/constant/positions.d.ts +75 -0
- package/date-picker/src/datepicker.component.d.ts +17 -16
- package/esm2020/breadcrumbs/src/breadcrumbs-item.component.mjs +6 -4
- package/esm2020/breadcrumbs/src/breadcrumbs.component.mjs +2 -2
- package/esm2020/button/src/button.component.mjs +2 -2
- package/esm2020/color-palette/src/color-palette-input.component.mjs +41 -18
- package/esm2020/color-palette/src/color-palette-picker.component.mjs +72 -11
- package/esm2020/color-palette/src/color-palette-preview.component.mjs +2 -4
- package/esm2020/color-palette/src/color-palette-swatches.component.mjs +6 -4
- package/esm2020/color-palette/src/color-palette.class.mjs +1 -1
- package/esm2020/color-palette/src/color-palette.component.mjs +11 -27
- package/esm2020/color-palette/src/color-palette.module.mjs +6 -3
- package/esm2020/color-picker/src/color-picker.component.mjs +9 -19
- package/esm2020/common/public-api.mjs +2 -1
- package/esm2020/common/src/constant/positions.mjs +75 -0
- package/esm2020/data-pager/src/data-pager-input-selector.component.mjs +1 -1
- package/esm2020/mixin/src/base-components.class.mjs +1 -1
- package/esm2020/mixin/src/selection-component.class.mjs +3 -2
- package/esm2020/mixin/src/value-mixin.class.mjs +9 -11
- package/esm2020/number-box/src/number-box.component.mjs +4 -2
- package/esm2020/popover/src/popover.component.mjs +10 -18
- package/esm2020/radio/src/radio.component.mjs +1 -1
- package/esm2020/search-box/src/search-box.component.mjs +1 -1
- package/esm2020/textbox/src/mask-options.directive.mjs +2 -7
- package/esm2020/textbox/src/textbox.component.mjs +20 -16
- package/esm2020/time-box/src/time-box.component.mjs +4 -1
- package/esm2020/tooltip/src/tooltip.component.mjs +5 -23
- package/esm2020/tooltip/src/tooltip.directive.mjs +113 -42
- package/esm2020/tooltip/src/tooltip.module.mjs +1 -2
- package/fesm2015/acorex-components-breadcrumbs.mjs +6 -4
- package/fesm2015/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2015/acorex-components-button.mjs +2 -2
- package/fesm2015/acorex-components-button.mjs.map +1 -1
- package/fesm2015/acorex-components-color-palette.mjs +131 -59
- package/fesm2015/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2015/acorex-components-color-picker.mjs +8 -18
- package/fesm2015/acorex-components-color-picker.mjs.map +1 -1
- package/fesm2015/acorex-components-common.mjs +76 -1
- package/fesm2015/acorex-components-common.mjs.map +1 -1
- package/fesm2015/acorex-components-data-pager.mjs +1 -1
- package/fesm2015/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2015/acorex-components-mixin.mjs +11 -13
- package/fesm2015/acorex-components-mixin.mjs.map +1 -1
- package/fesm2015/acorex-components-number-box.mjs +3 -1
- package/fesm2015/acorex-components-number-box.mjs.map +1 -1
- package/fesm2015/acorex-components-popover.mjs +10 -17
- package/fesm2015/acorex-components-popover.mjs.map +1 -1
- package/fesm2015/acorex-components-radio.mjs.map +1 -1
- package/fesm2015/acorex-components-search-box.mjs +1 -1
- package/fesm2015/acorex-components-search-box.mjs.map +1 -1
- package/fesm2015/acorex-components-selection-list.mjs +1 -0
- package/fesm2015/acorex-components-tabs.mjs +1 -0
- package/fesm2015/acorex-components-textbox.mjs +22 -22
- package/fesm2015/acorex-components-textbox.mjs.map +1 -1
- package/fesm2015/acorex-components-time-box.mjs +3 -0
- package/fesm2015/acorex-components-time-box.mjs.map +1 -1
- package/fesm2015/acorex-components-tooltip.mjs +80 -64
- package/fesm2015/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2020/acorex-components-breadcrumbs.mjs +6 -4
- package/fesm2020/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2020/acorex-components-button.mjs +2 -2
- package/fesm2020/acorex-components-button.mjs.map +1 -1
- package/fesm2020/acorex-components-color-palette.mjs +130 -59
- package/fesm2020/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2020/acorex-components-color-picker.mjs +8 -18
- package/fesm2020/acorex-components-color-picker.mjs.map +1 -1
- package/fesm2020/acorex-components-common.mjs +76 -1
- package/fesm2020/acorex-components-common.mjs.map +1 -1
- package/fesm2020/acorex-components-data-pager.mjs +1 -1
- package/fesm2020/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2020/acorex-components-mixin.mjs +11 -13
- package/fesm2020/acorex-components-mixin.mjs.map +1 -1
- package/fesm2020/acorex-components-number-box.mjs +3 -1
- package/fesm2020/acorex-components-number-box.mjs.map +1 -1
- package/fesm2020/acorex-components-popover.mjs +9 -17
- package/fesm2020/acorex-components-popover.mjs.map +1 -1
- package/fesm2020/acorex-components-radio.mjs.map +1 -1
- package/fesm2020/acorex-components-search-box.mjs +1 -1
- package/fesm2020/acorex-components-search-box.mjs.map +1 -1
- package/fesm2020/acorex-components-selection-list.mjs +1 -0
- package/fesm2020/acorex-components-tabs.mjs +1 -0
- package/fesm2020/acorex-components-textbox.mjs +20 -21
- package/fesm2020/acorex-components-textbox.mjs.map +1 -1
- package/fesm2020/acorex-components-time-box.mjs +3 -0
- package/fesm2020/acorex-components-time-box.mjs.map +1 -1
- package/fesm2020/acorex-components-tooltip.mjs +116 -64
- package/fesm2020/acorex-components-tooltip.mjs.map +1 -1
- package/mixin/src/base-components.class.d.ts +3 -2
- package/mixin/src/base-menu-mixin.class.d.ts +5 -5
- package/mixin/src/button-mixin.class.d.ts +2 -2
- package/mixin/src/clickable-mixin.class.d.ts +3 -5
- package/mixin/src/color-look-mixing.class.d.ts +2 -2
- package/mixin/src/datalist-component.class.d.ts +10 -10
- package/mixin/src/dropdown-mixin.class.d.ts +2 -2
- package/mixin/src/interactive-mixin.class.d.ts +8 -5
- package/mixin/src/loading-mixin.class.d.ts +2 -2
- package/mixin/src/mixin.class.d.ts +64 -63
- package/mixin/src/page-component.class.d.ts +2 -2
- package/mixin/src/selection-component.class.d.ts +3 -5
- package/mixin/src/sizable-mixin.class.d.ts +2 -2
- package/mixin/src/textbox-mixin.class.d.ts +7 -5
- package/mixin/src/value-mixin.class.d.ts +12 -13
- package/number-box/src/number-box.component.d.ts +1 -1
- package/package.json +1 -1
- package/tabs/src/tab-item.component.d.ts +2 -2
- package/textbox/src/mask-options.directive.d.ts +7 -7
- package/textbox/src/textbox.component.d.ts +3 -3
- package/tooltip/src/tooltip.component.d.ts +2 -1
- package/tooltip/src/tooltip.directive.d.ts +9 -5
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-common.mjs","sources":["../../../../projects/acorex/components/common/src/classes/events.class.ts","../../../../projects/acorex/components/common/src/classes/components.class.ts","../../../../projects/acorex/components/common/src/classes/styles.class.ts","../../../../projects/acorex/components/common/src/directives/auto-focus.directive.ts","../../../../projects/acorex/components/common/src/directives/debounce-time.directive.ts","../../../../projects/acorex/components/common/src/services/hotkey.service.ts","../../../../projects/acorex/components/common/src/directives/hotkey.directive.ts","../../../../projects/acorex/components/common/src/directives/infinite-scroll.directive.ts","../../../../projects/acorex/components/common/src/directives/responsive.directive.ts","../../../../projects/acorex/components/common/src/services/custom-cdk-overlay.service.ts","../../../../projects/acorex/components/common/src/services/overlay.service.ts","../../../../projects/acorex/components/common/src/common.module.ts","../../../../projects/acorex/components/common/acorex-components-common.ts"],"sourcesContent":["/**\r\n * Contains native event\r\n * @category Events\r\n */\r\nexport class AXEvent {\r\n /**\r\n * The sender component\r\n */\r\n component: any;\r\n /**\r\n * The root native element\r\n */\r\n htmlElement?: HTMLElement;\r\n\r\n isUserInteraction?: boolean = false;\r\n}\r\n\r\n/**\r\n * Contains native event\r\n * @category Events\r\n */\r\nexport class AXHtmlEvent<E extends Event = Event> extends AXEvent {\r\n nativeEvent?: E;\r\n}\r\n\r\n/**\r\n * Contains native event\r\n * @category Events\r\n */\r\nexport class AXValueChangedEvent<T = any> extends AXEvent {\r\n name?: string;\r\n value?: T;\r\n oldValue?: T;\r\n}\r\n\r\n/**\r\n * Fires each time the user click the element.\r\n * @category Events\r\n */\r\nexport class AXClickEvent extends AXHtmlEvent<MouseEvent> {\r\n /**\r\n * uses for extra data\r\n */\r\n data?: any;\r\n\r\n nativeEvent?: any;\r\n}\r\n\r\n/**\r\n * Fires each time the user click the element.\r\n * @category Events\r\n */\r\nexport class AXButtonClickEvent extends AXClickEvent {\r\n name: string;\r\n}\r\n\r\n/**\r\n * Fires each time the user click the element.\r\n * @category Events\r\n */\r\nexport class AXItemClickEvent<T> extends AXHtmlEvent<MouseEvent> {\r\n item: T;\r\n}\r\n\r\n/**\r\n * Fires each time the component gets focused.\r\n * @category Events\r\n */\r\nexport class AXFocusEvent extends AXHtmlEvent<FocusEvent> { }\r\n\r\n/**\r\n * Fires each time an item or multiple items selected by the user or value.\r\n * @category Events\r\n */\r\nexport class AXSelectionValueChangedEvent extends AXValueChangedEvent<\r\n any | any[]\r\n> {\r\n value?: any;\r\n oldValue?: any;\r\n selectedKeys?: any[];\r\n selectedItems?: any[];\r\n}\r\n\r\n/**\r\n * Contains range start & end values\r\n * @category Events\r\n */\r\nexport class AXRangeChangedEvent<T> extends AXEvent {\r\n /**\r\n * The range start value\r\n */\r\n start?: T;\r\n /**\r\n * The range end value\r\n */\r\n end?: T;\r\n}\r\n","import { EventEmitter, Injectable } from '@angular/core';\r\nimport { AXEvent, AXValueChangedEvent } from './events.class';\r\n\r\nexport const TAB_META_KEY = '__meta__';\r\n\r\nexport class AXComponentCloseEvent extends AXEvent {\r\n data?: any;\r\n}\r\nexport class AXComponentClosing {\r\n cancel: boolean = false;\r\n data?: any;\r\n}\r\n\r\nexport class AXComponentResult {\r\n sender: any;\r\n data?: any;\r\n}\r\n\r\n/**\r\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons after the primary text.\r\n */\r\nexport class AXComponentClosedPromise extends Promise<AXComponentResult> {\r\n private closeMethod: () => void;\r\n constructor(\r\n executor: (\r\n resolve: (value?: AXComponentResult | PromiseLike<AXComponentResult>) => void,\r\n reject: (reason?: any) => void\r\n ) => void\r\n ) {\r\n super(executor);\r\n }\r\n\r\n public close() {\r\n if (this.closeMethod) {\r\n this.closeMethod();\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\n@Injectable()\r\nexport abstract class AXComponent {\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXClosbaleComponent extends AXComponent {\r\n abstract close(): void;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXSearchableComponent extends AXComponent {\r\n abstract search(value: string): void;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXValuableComponent extends AXComponent {\r\n abstract onValueChanged: EventEmitter<AXValueChangedEvent<any>>;\r\n abstract value: any;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXFocusableComponent extends AXComponent {\r\n abstract focus();\r\n}\r\n\r\nexport interface AXPagedComponentInterface {\r\n goToPage(page: number);\r\n get totalCount(): number;\r\n get pageSize(): number;\r\n onPageChanged: EventEmitter<AXValueChangedEvent<number>>;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXPagedComponent\r\n extends AXComponent\r\n implements AXPagedComponentInterface\r\n{\r\n abstract goToPage(page: number);\r\n abstract get totalCount(): number;\r\n abstract pageSize: number;\r\n abstract onPageChanged: EventEmitter<AXValueChangedEvent<number>>;\r\n}\r\n","export const AX_STYLE_COLOR_TYPES =\r\n [\r\n 'primary'\r\n , 'secondary'\r\n , 'info'\r\n , 'danger'\r\n , 'success'\r\n , 'warning'\r\n , 'light'\r\n , 'dark'\r\n ];\r\n\r\n/**\r\n * A token that specifies the color style of component.\r\n */\r\nexport type AXStyleColorType =\r\n | 'primary'\r\n | 'secondary'\r\n | 'danger'\r\n | 'success'\r\n | 'warning'\r\n | 'ghost'\r\n\r\nexport type AXStyleLookType =\r\n | 'default'\r\n | 'blank'\r\n | 'outline'\r\n\r\nexport const AX_LOCATIONS = [\r\n 'bottom-start',\r\n 'bottom-center',\r\n 'bottom-end',\r\n 'top-start',\r\n 'top-center',\r\n 'top-end',\r\n 'center-end',\r\n 'center-start'\r\n];\r\nexport type AXLocation =\r\n | 'bottom-start'\r\n | 'bottom-center'\r\n | 'bottom-end'\r\n | 'top-start'\r\n | 'top-center'\r\n | 'top-end'\r\n | 'center-end'\r\n | 'center-start';\r\n\r\nexport const AX_DIRECTIONS = ['vertical', 'horizontal'];\r\n/**\r\n * A token that specifies the direction of component.\r\n */\r\nexport type AXDirection = 'vertical' | 'horizontal';\r\n\r\n/**\r\n * A token that specifies the selection mode of component.\r\n */\r\nexport type AXSelectionMode = 'single' | 'multiple';\r\n","import {\r\n AfterContentInit,\r\n Directive,\r\n ElementRef,\r\n Host,\r\n Input,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport { AXFocusableComponent } from '../classes/components.class';\r\n\r\n@Directive({\r\n selector: '[axAutoFocus]',\r\n})\r\nexport class AXAutoFocusDirective implements AfterContentInit {\r\n\r\n @Input('axAutoFocus')\r\n public autoFocus?: boolean = true;\r\n\r\n constructor(\r\n private el: ElementRef<HTMLElement>,\r\n @Host()\r\n @Self()\r\n @Optional()\r\n public _host: AXFocusableComponent\r\n ) { }\r\n\r\n\r\n @Input('focus-time')\r\n time: number = 100;\r\n\r\n ngAfterContentInit(): void {\r\n if (this.autoFocus) {\r\n const list = [\r\n 'button',\r\n 'input',\r\n '[href]',\r\n 'select',\r\n 'textarea',\r\n '[tabindex]',\r\n ].map((c) => c + ':not([tabindex=\"-1\"])');\r\n\r\n const focusable =\r\n this.el.nativeElement.querySelector<HTMLElement>(list.join(', ')) ??\r\n this.el.nativeElement;\r\n \r\n const attr = document.createAttribute('autofocus');\r\n focusable.setAttributeNode(attr);\r\n const hasTabindex = focusable.hasAttribute('tabindex');\r\n if (!hasTabindex) {\r\n focusable.setAttribute('tabIndex', '0');\r\n }\r\n setTimeout(() => {\r\n focusable.focus();\r\n }, 100);\r\n }\r\n }\r\n}\r\n","import { Directive, EventEmitter, Input, OnDestroy, Output } from \"@angular/core\";\r\nimport { NgModel } from \"@angular/forms\";\r\nimport { debounceTime, distinctUntilChanged, skip, Subscription } from \"rxjs\";\r\n\r\n@Directive({\r\n selector: '[ngModelChangeDebounced]',\r\n})\r\nexport class AXNgModelChangeDebouncedDirective implements OnDestroy {\r\n\r\n @Output()\r\n ngModelChangeDebounced = new EventEmitter<any>();\r\n\r\n @Output()\r\n ngModelChangeDebounceTimeChange = new EventEmitter<number>()\r\n\r\n private _ngModelChangeDebounceTime: number = 0;\r\n @Input()\r\n public get ngModelChangeDebounceTime(): number {\r\n return this._ngModelChangeDebounceTime;\r\n }\r\n public set ngModelChangeDebounceTime(v: number) {\r\n if (v != this._ngModelChangeDebounceTime) {\r\n this._ngModelChangeDebounceTime = v;\r\n this.ngModelChangeDebounceTimeChange.emit(v);\r\n this.update()\r\n }\r\n }\r\n\r\n private subscription: Subscription;\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n constructor(private ngModel: NgModel) {\r\n this.ngModelChangeDebounceTime = 0;\r\n }\r\n\r\n private update() {\r\n this.subscription?.unsubscribe();\r\n //\r\n this.subscription = this.ngModel.control.valueChanges.pipe(\r\n skip(1), // skip initial value\r\n distinctUntilChanged(),\r\n debounceTime(this.ngModelChangeDebounceTime)\r\n ).subscribe((value) => this.ngModelChangeDebounced.emit(value));\r\n }\r\n}","import { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { EventManager } from '@angular/platform-browser';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\ntype Options = {\r\n element: any;\r\n keys: string;\r\n};\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AXHotkeysService {\r\n defaults: Partial<Options> = {\r\n element: this.document,\r\n };\r\n\r\n constructor(\r\n private eventManager: EventManager,\r\n @Inject(DOCUMENT) private document: Document\r\n ) {}\r\n\r\n addShortcut(options: Partial<Options>) {\r\n const merged = { ...this.defaults, ...options };\r\n const event = `keydown.${merged.keys}`;\r\n\r\n return new Observable((observer) => {\r\n const handler = (e: UIEvent) => {\r\n e.preventDefault();\r\n observer.next(e);\r\n };\r\n\r\n const dispose = this.eventManager.addEventListener(\r\n merged.element,\r\n event,\r\n handler\r\n );\r\n\r\n return () => {\r\n dispose();\r\n };\r\n });\r\n }\r\n}\r\n","import {\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n Host,\r\n Input,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { AXComponent } from '../classes/components.class';\r\nimport { AXHotkeysService } from '../services/hotkey.service';\r\n\r\nexport type AXHotKeyAction = { [key: string]: string | Function; parmas?: any };\r\n\r\n@Directive({\r\n selector: '[hotkey]',\r\n})\r\nexport class AXHotkeyDirective implements AfterViewInit {\r\n @Input('hotkey')\r\n public hotkey: string | AXHotKeyAction | AXHotKeyAction[] = '';\r\n\r\n private _subs: Subscription[] = [];\r\n\r\n constructor(\r\n private el: ElementRef<HTMLElement>,\r\n @Host()\r\n @Self()\r\n @Optional()\r\n public _host: AXComponent,\r\n private hs: AXHotkeysService\r\n ) {}\r\n\r\n ngAfterViewInit(): void {\r\n if (!this.hotkey || !this._host) return;\r\n\r\n if (typeof this.hotkey == 'string') {\r\n this._addDefaultAction(this.hotkey);\r\n } else if (typeof this.hotkey == 'object' && !Array.isArray(this.hotkey)) {\r\n this._addHotKeyAction([this.hotkey as AXHotKeyAction]);\r\n } else if (Array.isArray(this.hotkey)) {\r\n this._addHotKeyAction(this.hotkey);\r\n }\r\n }\r\n\r\n private _addDefaultAction(hotkey: string) {\r\n this._subs.push(\r\n this.hs.addShortcut({ keys: hotkey }).subscribe(() => {\r\n ['click', 'toggle', 'open', 'focus'].forEach((a) => {\r\n if (this._host[a]) {\r\n this._host[a]();\r\n return;\r\n }\r\n });\r\n })\r\n );\r\n }\r\n\r\n private _addHotKeyAction(hotkeys: AXHotKeyAction[]) {\r\n hotkeys.forEach((k) => {\r\n const hotkey = (<unknown>Object.entries(k)[0][0]) as string;\r\n const action = <unknown>Object.entries(k)[0][1];\r\n if (!action) this._addDefaultAction(hotkey);\r\n else {\r\n this._subs.push(\r\n this.hs.addShortcut({ keys: hotkey }).subscribe(() => {\r\n if (typeof action == 'string' && this._host[action]) {\r\n this._host[action]();\r\n return;\r\n }\r\n if (typeof action == 'function') {\r\n action();\r\n return;\r\n }\r\n })\r\n );\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this._subs.forEach((s) => {\r\n s.unsubscribe();\r\n });\r\n }\r\n}\r\n","import { Directive, AfterViewInit, ElementRef, Input } from '@angular/core';\r\nimport { fromEvent, Observable } from 'rxjs';\r\nimport { exhaustMap, filter, map, pairwise, startWith } from 'rxjs/operators';\r\n\r\n\r\nexport interface AXScrollPosition {\r\n scrollHeight: number;\r\n scrollTop: number;\r\n clientHeight: number;\r\n};\r\n\r\nconst AX_DEFAULT_SCROLL_POSITION: AXScrollPosition = {\r\n scrollHeight: 0,\r\n scrollTop: 0,\r\n clientHeight: 0\r\n};\r\n\r\n@Directive({\r\n selector: '[axInfiniteScroller]'\r\n})\r\nexport class AXInfiniteScrollerDirective implements AfterViewInit {\r\n\r\n private scrollEvent$: Observable<any>;\r\n\r\n private userScrolledDown$: Observable<any>;\r\n\r\n\r\n private requestOnScroll$: Observable<any>;\r\n\r\n @Input()\r\n scrollCallback: Function;\r\n\r\n @Input()\r\n immediateCallback;\r\n\r\n @Input()\r\n scrollPercent = 70;\r\n\r\n constructor(private elm: ElementRef) { }\r\n\r\n ngAfterViewInit() {\r\n\r\n this.registerScrollEvent();\r\n\r\n this.streamScrollEvents();\r\n\r\n this.requestCallbackOnScroll();\r\n\r\n }\r\n\r\n private registerScrollEvent() {\r\n\r\n this.scrollEvent$ = fromEvent(this.elm.nativeElement, 'scroll');\r\n\r\n }\r\n\r\n private streamScrollEvents() {\r\n this.userScrolledDown$ = this.scrollEvent$\r\n .pipe(\r\n map((e: any): AXScrollPosition => ({\r\n scrollHeight: e.target.scrollHeight,\r\n scrollTop: e.target.scrollTop,\r\n clientHeight: e.target.clientHeight\r\n })),\r\n pairwise(),\r\n filter(positions => this.isUserScrollingDown(positions) && this.isScrollExpectedPercent(positions[1]))\r\n );\r\n }\r\n\r\n private requestCallbackOnScroll() {\r\n this.requestOnScroll$ = this.userScrolledDown$;\r\n\r\n if (this.immediateCallback) {\r\n this.requestOnScroll$ = this.requestOnScroll$.pipe(\r\n startWith([AX_DEFAULT_SCROLL_POSITION, AX_DEFAULT_SCROLL_POSITION])\r\n );\r\n }\r\n\r\n this.requestOnScroll$.pipe(\r\n exhaustMap(() => {\r\n return this.scrollCallback();\r\n }))\r\n //.subscribe((data) => { console.log(data) }, (err) => console.log(err));\r\n\r\n }\r\n\r\n private isUserScrollingDown = (positions) => {\r\n return positions[0].sT < positions[1].sT;\r\n }\r\n\r\n private isScrollExpectedPercent = (position) => {\r\n return ((position.sT + position.cH) / position.sH) > (this.scrollPercent / 100);\r\n }\r\n\r\n}","import { Directive, ElementRef, OnDestroy } from '@angular/core';\r\n\r\n@Directive({ selector: '[ax-responsive]' })\r\nexport class AXResponsiveDirective implements OnDestroy {\r\n\r\n private _observer: ResizeObserver = new ResizeObserver(entries => {\r\n for (let entry of entries) {\r\n\r\n if (entry.target) {\r\n const e = entry.target;\r\n const elements = [e, ...Array.from(e.querySelectorAll(`[class*='sm:']`))];\r\n elements.map(c => ({\r\n element: c,\r\n classList: Array.from(c.classList).filter(c => c.includes('sm')).map(c => c.slice(3))\r\n })).forEach(c => {\r\n e.clientWidth < 320 ? c.element.classList.add(...c.classList) : c.element.classList.remove(...c.classList);\r\n });\r\n }\r\n }\r\n });;\r\n\r\n constructor(private _elementRef: ElementRef<HTMLDivElement>) {\r\n this._observer.observe(_elementRef.nativeElement);\r\n }\r\n\r\n ngOnDestroy() {\r\n this._observer.disconnect();\r\n this._observer.unobserve(this._elementRef.nativeElement);\r\n }\r\n\r\n}","import {\r\n Overlay,\r\n OverlayKeyboardDispatcher,\r\n OverlayPositionBuilder,\r\n ScrollStrategyOptions,\r\n OverlayContainer,\r\n OverlayRef,\r\n OverlayConfig,\r\n OverlayOutsideClickDispatcher,\r\n} from '@angular/cdk/overlay';\r\n\r\n// TODO: 'ComponentFactoryResolver' is deprecated.\r\nimport {\r\n ComponentFactoryResolver,\r\n Inject,\r\n Injector,\r\n NgZone,\r\n Renderer2,\r\n RendererFactory2,\r\n Injectable,\r\n} from '@angular/core';\r\n\r\nimport { Directionality } from '@angular/cdk/bidi';\r\nimport { DOCUMENT, Location } from '@angular/common';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DynamicOverlayContainer extends OverlayContainer {\r\n public setContainerElement(containerElement: HTMLElement): void {\r\n this._containerElement = containerElement;\r\n }\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DynamicOverlay extends Overlay {\r\n private readonly _dynamicOverlayContainer: DynamicOverlayContainer;\r\n private renderer: Renderer2;\r\n\r\n constructor(\r\n scrollStrategies: ScrollStrategyOptions,\r\n _overlayContainer: DynamicOverlayContainer,\r\n _componentFactoryResolver: ComponentFactoryResolver,\r\n _positionBuilder: OverlayPositionBuilder,\r\n _keyboardDispatcher: OverlayKeyboardDispatcher,\r\n _injector: Injector,\r\n _ngZone: NgZone,\r\n @Inject(DOCUMENT) _document: any,\r\n _directionality: Directionality,\r\n rendererFactory: RendererFactory2,\r\n _location: Location,\r\n _outsideClickDispatcher: OverlayOutsideClickDispatcher\r\n ) {\r\n super(\r\n scrollStrategies,\r\n _overlayContainer,\r\n _componentFactoryResolver,\r\n _positionBuilder,\r\n _keyboardDispatcher,\r\n _injector,\r\n _ngZone,\r\n _document,\r\n _directionality,\r\n _location,\r\n _outsideClickDispatcher\r\n );\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n\r\n this._dynamicOverlayContainer = _overlayContainer;\r\n }\r\n\r\n private setContainerElement(containerElement: HTMLElement): void {\r\n this.renderer.setStyle(containerElement, 'transform', 'translateZ(0)');\r\n this._dynamicOverlayContainer.setContainerElement(containerElement);\r\n }\r\n\r\n public createOn(\r\n containerElement: HTMLElement,\r\n config?: OverlayConfig\r\n ): OverlayRef {\r\n this.setContainerElement(containerElement);\r\n return super.create(config);\r\n }\r\n}\r\n","import {\r\n Injectable,\r\n ApplicationRef,\r\n ViewContainerRef,\r\n TemplateRef,\r\n} from '@angular/core';\r\nimport {\r\n ConnectedPosition,\r\n Overlay,\r\n OverlayPositionBuilder,\r\n PositionStrategy,\r\n ScrollStrategy,\r\n} from '@angular/cdk/overlay';\r\nimport { TemplatePortal, Portal, ComponentPortal } from '@angular/cdk/portal';\r\nimport { merge } from 'rxjs';\r\nimport { DynamicOverlay } from './custom-cdk-overlay.service';\r\nimport { AXConnectedPosition } from '../classes/drawing.class';\r\nimport { NavigationStart, RouterEvent, Router } from '@angular/router';\r\n\r\nexport interface AXOverlayViewRef {\r\n instance: any;\r\n dispose: () => void;\r\n isOpen: () => boolean;\r\n}\r\n\r\nexport interface AXOverlayConfigs {\r\n position?: AXConnectedPosition | AXConnectedPosition[] | PositionStrategy;\r\n hasBackdrop?: boolean;\r\n transparentBackdrop?: boolean;\r\n closeOnClickOutside?: boolean;\r\n targetElement?: HTMLElement;\r\n containerElement?: HTMLElement;\r\n onBackdropClick?: () => void;\r\n panelClass?: string[] | string;\r\n backdropClass?: string[] | string;\r\n scroll?: 'auto' | 'block' | 'close';\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AXOverlayService {\r\n portal: Portal<any>;\r\n constructor(\r\n private overlayService: DynamicOverlay,\r\n private overlayService2: Overlay,\r\n private appRef: ApplicationRef\r\n ) {}\r\n\r\n position(): OverlayPositionBuilder {\r\n return this.overlayService.position();\r\n }\r\n\r\n show(\r\n content: any,\r\n context?: any,\r\n configs?: AXOverlayConfigs\r\n ): AXOverlayViewRef {\r\n configs = Object.assign(\r\n {\r\n hasBackdrop: true,\r\n transparentBackdrop: true,\r\n closeOnClickOutside: true,\r\n },\r\n configs || {}\r\n );\r\n // get root viewref\r\n const viewRef: ViewContainerRef =\r\n this.appRef.components[0].instance.viewRef;\r\n\r\n // let portal: Portal<any>;\r\n // get component by route\r\n if (typeof content === 'string') {\r\n // TODO: ???\r\n }\r\n // create portal from component\r\n else if (content instanceof TemplateRef) {\r\n this.portal = new TemplatePortal(content, viewRef, context);\r\n } else if (typeof content === 'function') {\r\n this.portal = new ComponentPortal(content, viewRef);\r\n }\r\n let positionStrategy: PositionStrategy;\r\n if (configs.position && configs.targetElement) {\r\n const p: ConnectedPosition[] = Array.isArray(configs.position)\r\n ? (configs.position as ConnectedPosition[])\r\n : [configs.position as ConnectedPosition];\r\n positionStrategy = this.overlayService\r\n .position()\r\n .flexibleConnectedTo(configs.targetElement)\r\n .withPositions(p)\r\n .withPush(true);\r\n } else {\r\n positionStrategy = configs.position\r\n ? (configs.position as PositionStrategy)\r\n : this.overlayService\r\n .position()\r\n .global()\r\n .centerHorizontally()\r\n .centerVertically();\r\n }\r\n let scrollStrategy: ScrollStrategy =\r\n this.overlayService.scrollStrategies.reposition({ autoClose: true });\r\n if (configs.scroll === 'block') {\r\n scrollStrategy = this.overlayService.scrollStrategies.block();\r\n }\r\n if (configs.scroll === 'close') {\r\n scrollStrategy = this.overlayService.scrollStrategies.close();\r\n }\r\n\r\n const config = {\r\n positionStrategy,\r\n scrollStrategy,\r\n hasBackdrop: configs.hasBackdrop,\r\n disposeOnNavigation: true,\r\n backdropClass: configs.backdropClass\r\n ? configs.backdropClass\r\n : configs.transparentBackdrop\r\n ? 'cdk-overlay-transparent-backdrop'\r\n : undefined,\r\n panelClass: configs.panelClass\r\n ? configs.panelClass\r\n : ['ax-animate-animated', 'ax-animate-zoomIn', 'ax-animate-faster'],\r\n };\r\n let overlayRef: any = configs.containerElement\r\n ? this.overlayService.createOn(configs.containerElement, config)\r\n : this.overlayService2.create(config);\r\n\r\n const host = overlayRef.attach(this.portal!);\r\n if (host.instance) {\r\n Object.assign(host.instance, context);\r\n setTimeout(() => {\r\n host.changeDetectorRef.detectChanges();\r\n }, 0);\r\n }\r\n\r\n if (configs.closeOnClickOutside) {\r\n merge(overlayRef.backdropClick(), overlayRef.detachments()).subscribe(\r\n () => {\r\n overlayRef.dispose();\r\n overlayRef = undefined;\r\n if (configs!.onBackdropClick) {\r\n configs!.onBackdropClick();\r\n }\r\n }\r\n );\r\n }\r\n return {\r\n instance: host.instance,\r\n dispose: overlayRef.dispose.bind(overlayRef),\r\n isOpen: () => {\r\n return overlayRef.hasAttached();\r\n },\r\n };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { AXAutoFocusDirective } from './directives/auto-focus.directive';\r\nimport { AXNgModelChangeDebouncedDirective } from './directives/debounce-time.directive';\r\nimport { AXHotkeyDirective } from './directives/hotkey.directive';\r\nimport { AXInfiniteScrollerDirective } from './directives/infinite-scroll.directive';\r\nimport { AXResponsiveDirective } from './directives/responsive.directive';\r\n@NgModule({\r\n imports: [],\r\n exports: [\r\n AXResponsiveDirective,\r\n AXInfiniteScrollerDirective,\r\n AXAutoFocusDirective,\r\n AXNgModelChangeDebouncedDirective,\r\n AXHotkeyDirective,\r\n ],\r\n declarations: [\r\n AXResponsiveDirective,\r\n AXInfiniteScrollerDirective,\r\n AXNgModelChangeDebouncedDirective,\r\n AXAutoFocusDirective,\r\n AXHotkeyDirective,\r\n ],\r\n providers: [],\r\n})\r\nexport class AXCommonModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.AXFocusableComponent","i1.AXComponent","i2.AXHotkeysService","i1","i1.DynamicOverlay","i2"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-common.mjs","sources":["../../../../projects/acorex/components/common/src/classes/events.class.ts","../../../../projects/acorex/components/common/src/classes/components.class.ts","../../../../projects/acorex/components/common/src/classes/styles.class.ts","../../../../projects/acorex/components/common/src/constant/positions.ts","../../../../projects/acorex/components/common/src/directives/auto-focus.directive.ts","../../../../projects/acorex/components/common/src/directives/debounce-time.directive.ts","../../../../projects/acorex/components/common/src/services/hotkey.service.ts","../../../../projects/acorex/components/common/src/directives/hotkey.directive.ts","../../../../projects/acorex/components/common/src/directives/infinite-scroll.directive.ts","../../../../projects/acorex/components/common/src/directives/responsive.directive.ts","../../../../projects/acorex/components/common/src/services/custom-cdk-overlay.service.ts","../../../../projects/acorex/components/common/src/services/overlay.service.ts","../../../../projects/acorex/components/common/src/common.module.ts","../../../../projects/acorex/components/common/acorex-components-common.ts"],"sourcesContent":["/**\r\n * Contains native event\r\n * @category Events\r\n */\r\nexport class AXEvent {\r\n /**\r\n * The sender component\r\n */\r\n component: any;\r\n /**\r\n * The root native element\r\n */\r\n htmlElement?: HTMLElement;\r\n\r\n isUserInteraction?: boolean = false;\r\n}\r\n\r\n/**\r\n * Contains native event\r\n * @category Events\r\n */\r\nexport class AXHtmlEvent<E extends Event = Event> extends AXEvent {\r\n nativeEvent?: E;\r\n}\r\n\r\n/**\r\n * Contains native event\r\n * @category Events\r\n */\r\nexport class AXValueChangedEvent<T = any> extends AXEvent {\r\n name?: string;\r\n value?: T;\r\n oldValue?: T;\r\n}\r\n\r\n/**\r\n * Fires each time the user click the element.\r\n * @category Events\r\n */\r\nexport class AXClickEvent extends AXHtmlEvent<MouseEvent> {\r\n /**\r\n * uses for extra data\r\n */\r\n data?: any;\r\n\r\n nativeEvent?: any;\r\n}\r\n\r\n/**\r\n * Fires each time the user click the element.\r\n * @category Events\r\n */\r\nexport class AXButtonClickEvent extends AXClickEvent {\r\n name: string;\r\n}\r\n\r\n/**\r\n * Fires each time the user click the element.\r\n * @category Events\r\n */\r\nexport class AXItemClickEvent<T> extends AXHtmlEvent<MouseEvent> {\r\n item: T;\r\n}\r\n\r\n/**\r\n * Fires each time the component gets focused.\r\n * @category Events\r\n */\r\nexport class AXFocusEvent extends AXHtmlEvent<FocusEvent> { }\r\n\r\n/**\r\n * Fires each time an item or multiple items selected by the user or value.\r\n * @category Events\r\n */\r\nexport class AXSelectionValueChangedEvent extends AXValueChangedEvent<\r\n any | any[]\r\n> {\r\n value?: any;\r\n oldValue?: any;\r\n selectedKeys?: any[];\r\n selectedItems?: any[];\r\n}\r\n\r\n/**\r\n * Contains range start & end values\r\n * @category Events\r\n */\r\nexport class AXRangeChangedEvent<T> extends AXEvent {\r\n /**\r\n * The range start value\r\n */\r\n start?: T;\r\n /**\r\n * The range end value\r\n */\r\n end?: T;\r\n}\r\n","import { EventEmitter, Injectable } from '@angular/core';\r\nimport { AXEvent, AXValueChangedEvent } from './events.class';\r\n\r\nexport const TAB_META_KEY = '__meta__';\r\n\r\nexport class AXComponentCloseEvent extends AXEvent {\r\n data?: any;\r\n}\r\nexport class AXComponentClosing {\r\n cancel: boolean = false;\r\n data?: any;\r\n}\r\n\r\nexport class AXComponentResult {\r\n sender: any;\r\n data?: any;\r\n}\r\n\r\n/**\r\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons after the primary text.\r\n */\r\nexport class AXComponentClosedPromise extends Promise<AXComponentResult> {\r\n private closeMethod: () => void;\r\n constructor(\r\n executor: (\r\n resolve: (value?: AXComponentResult | PromiseLike<AXComponentResult>) => void,\r\n reject: (reason?: any) => void\r\n ) => void\r\n ) {\r\n super(executor);\r\n }\r\n\r\n public close() {\r\n if (this.closeMethod) {\r\n this.closeMethod();\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\n@Injectable()\r\nexport abstract class AXComponent {\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXClosbaleComponent extends AXComponent {\r\n abstract close(): void;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXSearchableComponent extends AXComponent {\r\n abstract search(value: string): void;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXValuableComponent extends AXComponent {\r\n abstract onValueChanged: EventEmitter<AXValueChangedEvent<any>>;\r\n abstract value: any;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXFocusableComponent extends AXComponent {\r\n abstract focus();\r\n}\r\n\r\nexport interface AXPagedComponentInterface {\r\n goToPage(page: number);\r\n get totalCount(): number;\r\n get pageSize(): number;\r\n onPageChanged: EventEmitter<AXValueChangedEvent<number>>;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXPagedComponent\r\n extends AXComponent\r\n implements AXPagedComponentInterface\r\n{\r\n abstract goToPage(page: number);\r\n abstract get totalCount(): number;\r\n abstract pageSize: number;\r\n abstract onPageChanged: EventEmitter<AXValueChangedEvent<number>>;\r\n}\r\n","export const AX_STYLE_COLOR_TYPES =\r\n [\r\n 'primary'\r\n , 'secondary'\r\n , 'info'\r\n , 'danger'\r\n , 'success'\r\n , 'warning'\r\n , 'light'\r\n , 'dark'\r\n ];\r\n\r\n/**\r\n * A token that specifies the color style of component.\r\n */\r\nexport type AXStyleColorType =\r\n | 'primary'\r\n | 'secondary'\r\n | 'danger'\r\n | 'success'\r\n | 'warning'\r\n | 'ghost'\r\n\r\nexport type AXStyleLookType =\r\n | 'default'\r\n | 'blank'\r\n | 'outline'\r\n\r\nexport const AX_LOCATIONS = [\r\n 'bottom-start',\r\n 'bottom-center',\r\n 'bottom-end',\r\n 'top-start',\r\n 'top-center',\r\n 'top-end',\r\n 'center-end',\r\n 'center-start'\r\n];\r\nexport type AXLocation =\r\n | 'bottom-start'\r\n | 'bottom-center'\r\n | 'bottom-end'\r\n | 'top-start'\r\n | 'top-center'\r\n | 'top-end'\r\n | 'center-end'\r\n | 'center-start';\r\n\r\nexport const AX_DIRECTIONS = ['vertical', 'horizontal'];\r\n/**\r\n * A token that specifies the direction of component.\r\n */\r\nexport type AXDirection = 'vertical' | 'horizontal';\r\n\r\n/**\r\n * A token that specifies the selection mode of component.\r\n */\r\nexport type AXSelectionMode = 'single' | 'multiple';\r\n","export type AXPosition =\r\n | 'top-start'\r\n | 'top-center'\r\n | 'top-end'\r\n | 'start-start'\r\n | 'start-center'\r\n | 'start-end'\r\n | 'bottom-start'\r\n | 'bottom-center'\r\n | 'bottom-end'\r\n | 'end-start'\r\n | 'end-center'\r\n | 'end-end';\r\n\r\nexport const AXPositions = {\r\n topStart: {\r\n originX: 'start',\r\n originY: 'top',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n topCenter: {\r\n originX: 'center',\r\n originY: 'top',\r\n overlayX: 'center',\r\n overlayY: 'bottom',\r\n },\r\n topEnd: {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'end',\r\n overlayY: 'bottom',\r\n },\r\n\r\n startStart: {\r\n originX: 'start',\r\n originY: 'top',\r\n overlayX: 'end',\r\n overlayY: 'top',\r\n },\r\n startCenter: {\r\n originX: 'start',\r\n originY: 'center',\r\n overlayX: 'end',\r\n overlayY: 'center',\r\n },\r\n startEnd: {\r\n originX: 'start',\r\n originY: 'bottom',\r\n overlayX: 'end',\r\n overlayY: 'bottom',\r\n },\r\n\r\n bottomStart: {\r\n originX: 'start',\r\n originY: 'bottom',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n bottomCenter: {\r\n originX: 'center',\r\n originY: 'bottom',\r\n overlayX: 'center',\r\n overlayY: 'top',\r\n },\r\n bottomEnd: {\r\n originX: 'end',\r\n originY: 'bottom',\r\n overlayX: 'end',\r\n overlayY: 'top',\r\n },\r\n\r\n endStart: {\r\n originX: 'end',\r\n originY: 'top',\r\n overlayX: 'start',\r\n overlayY: 'top',\r\n },\r\n endCenter: {\r\n originX: 'end',\r\n originY: 'center',\r\n overlayX: 'start',\r\n overlayY: 'center',\r\n },\r\n endEnd: {\r\n originX: 'end',\r\n originY: 'bottom',\r\n overlayX: 'start',\r\n overlayY: 'bottom',\r\n },\r\n};\r\n","import {\r\n AfterContentInit,\r\n Directive,\r\n ElementRef,\r\n Host,\r\n Input,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport { AXFocusableComponent } from '../classes/components.class';\r\n\r\n@Directive({\r\n selector: '[axAutoFocus]',\r\n})\r\nexport class AXAutoFocusDirective implements AfterContentInit {\r\n\r\n @Input('axAutoFocus')\r\n public autoFocus?: boolean = true;\r\n\r\n constructor(\r\n private el: ElementRef<HTMLElement>,\r\n @Host()\r\n @Self()\r\n @Optional()\r\n public _host: AXFocusableComponent\r\n ) { }\r\n\r\n\r\n @Input('focus-time')\r\n time: number = 100;\r\n\r\n ngAfterContentInit(): void {\r\n if (this.autoFocus) {\r\n const list = [\r\n 'button',\r\n 'input',\r\n '[href]',\r\n 'select',\r\n 'textarea',\r\n '[tabindex]',\r\n ].map((c) => c + ':not([tabindex=\"-1\"])');\r\n\r\n const focusable =\r\n this.el.nativeElement.querySelector<HTMLElement>(list.join(', ')) ??\r\n this.el.nativeElement;\r\n \r\n const attr = document.createAttribute('autofocus');\r\n focusable.setAttributeNode(attr);\r\n const hasTabindex = focusable.hasAttribute('tabindex');\r\n if (!hasTabindex) {\r\n focusable.setAttribute('tabIndex', '0');\r\n }\r\n setTimeout(() => {\r\n focusable.focus();\r\n }, 100);\r\n }\r\n }\r\n}\r\n","import { Directive, EventEmitter, Input, OnDestroy, Output } from \"@angular/core\";\r\nimport { NgModel } from \"@angular/forms\";\r\nimport { debounceTime, distinctUntilChanged, skip, Subscription } from \"rxjs\";\r\n\r\n@Directive({\r\n selector: '[ngModelChangeDebounced]',\r\n})\r\nexport class AXNgModelChangeDebouncedDirective implements OnDestroy {\r\n\r\n @Output()\r\n ngModelChangeDebounced = new EventEmitter<any>();\r\n\r\n @Output()\r\n ngModelChangeDebounceTimeChange = new EventEmitter<number>()\r\n\r\n private _ngModelChangeDebounceTime: number = 0;\r\n @Input()\r\n public get ngModelChangeDebounceTime(): number {\r\n return this._ngModelChangeDebounceTime;\r\n }\r\n public set ngModelChangeDebounceTime(v: number) {\r\n if (v != this._ngModelChangeDebounceTime) {\r\n this._ngModelChangeDebounceTime = v;\r\n this.ngModelChangeDebounceTimeChange.emit(v);\r\n this.update()\r\n }\r\n }\r\n\r\n private subscription: Subscription;\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n constructor(private ngModel: NgModel) {\r\n this.ngModelChangeDebounceTime = 0;\r\n }\r\n\r\n private update() {\r\n this.subscription?.unsubscribe();\r\n //\r\n this.subscription = this.ngModel.control.valueChanges.pipe(\r\n skip(1), // skip initial value\r\n distinctUntilChanged(),\r\n debounceTime(this.ngModelChangeDebounceTime)\r\n ).subscribe((value) => this.ngModelChangeDebounced.emit(value));\r\n }\r\n}","import { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable } from '@angular/core';\r\nimport { EventManager } from '@angular/platform-browser';\r\nimport { Observable } from 'rxjs/internal/Observable';\r\n\r\ntype Options = {\r\n element: any;\r\n keys: string;\r\n};\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AXHotkeysService {\r\n defaults: Partial<Options> = {\r\n element: this.document,\r\n };\r\n\r\n constructor(\r\n private eventManager: EventManager,\r\n @Inject(DOCUMENT) private document: Document\r\n ) {}\r\n\r\n addShortcut(options: Partial<Options>) {\r\n const merged = { ...this.defaults, ...options };\r\n const event = `keydown.${merged.keys}`;\r\n\r\n return new Observable((observer) => {\r\n const handler = (e: UIEvent) => {\r\n e.preventDefault();\r\n observer.next(e);\r\n };\r\n\r\n const dispose = this.eventManager.addEventListener(\r\n merged.element,\r\n event,\r\n handler\r\n );\r\n\r\n return () => {\r\n dispose();\r\n };\r\n });\r\n }\r\n}\r\n","import {\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n Host,\r\n Input,\r\n Optional,\r\n Self,\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { AXComponent } from '../classes/components.class';\r\nimport { AXHotkeysService } from '../services/hotkey.service';\r\n\r\nexport type AXHotKeyAction = { [key: string]: string | Function; parmas?: any };\r\n\r\n@Directive({\r\n selector: '[hotkey]',\r\n})\r\nexport class AXHotkeyDirective implements AfterViewInit {\r\n @Input('hotkey')\r\n public hotkey: string | AXHotKeyAction | AXHotKeyAction[] = '';\r\n\r\n private _subs: Subscription[] = [];\r\n\r\n constructor(\r\n private el: ElementRef<HTMLElement>,\r\n @Host()\r\n @Self()\r\n @Optional()\r\n public _host: AXComponent,\r\n private hs: AXHotkeysService\r\n ) {}\r\n\r\n ngAfterViewInit(): void {\r\n if (!this.hotkey || !this._host) return;\r\n\r\n if (typeof this.hotkey == 'string') {\r\n this._addDefaultAction(this.hotkey);\r\n } else if (typeof this.hotkey == 'object' && !Array.isArray(this.hotkey)) {\r\n this._addHotKeyAction([this.hotkey as AXHotKeyAction]);\r\n } else if (Array.isArray(this.hotkey)) {\r\n this._addHotKeyAction(this.hotkey);\r\n }\r\n }\r\n\r\n private _addDefaultAction(hotkey: string) {\r\n this._subs.push(\r\n this.hs.addShortcut({ keys: hotkey }).subscribe(() => {\r\n ['click', 'toggle', 'open', 'focus'].forEach((a) => {\r\n if (this._host[a]) {\r\n this._host[a]();\r\n return;\r\n }\r\n });\r\n })\r\n );\r\n }\r\n\r\n private _addHotKeyAction(hotkeys: AXHotKeyAction[]) {\r\n hotkeys.forEach((k) => {\r\n const hotkey = (<unknown>Object.entries(k)[0][0]) as string;\r\n const action = <unknown>Object.entries(k)[0][1];\r\n if (!action) this._addDefaultAction(hotkey);\r\n else {\r\n this._subs.push(\r\n this.hs.addShortcut({ keys: hotkey }).subscribe(() => {\r\n if (typeof action == 'string' && this._host[action]) {\r\n this._host[action]();\r\n return;\r\n }\r\n if (typeof action == 'function') {\r\n action();\r\n return;\r\n }\r\n })\r\n );\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this._subs.forEach((s) => {\r\n s.unsubscribe();\r\n });\r\n }\r\n}\r\n","import { Directive, AfterViewInit, ElementRef, Input } from '@angular/core';\r\nimport { fromEvent, Observable } from 'rxjs';\r\nimport { exhaustMap, filter, map, pairwise, startWith } from 'rxjs/operators';\r\n\r\n\r\nexport interface AXScrollPosition {\r\n scrollHeight: number;\r\n scrollTop: number;\r\n clientHeight: number;\r\n};\r\n\r\nconst AX_DEFAULT_SCROLL_POSITION: AXScrollPosition = {\r\n scrollHeight: 0,\r\n scrollTop: 0,\r\n clientHeight: 0\r\n};\r\n\r\n@Directive({\r\n selector: '[axInfiniteScroller]'\r\n})\r\nexport class AXInfiniteScrollerDirective implements AfterViewInit {\r\n\r\n private scrollEvent$: Observable<any>;\r\n\r\n private userScrolledDown$: Observable<any>;\r\n\r\n\r\n private requestOnScroll$: Observable<any>;\r\n\r\n @Input()\r\n scrollCallback: Function;\r\n\r\n @Input()\r\n immediateCallback;\r\n\r\n @Input()\r\n scrollPercent = 70;\r\n\r\n constructor(private elm: ElementRef) { }\r\n\r\n ngAfterViewInit() {\r\n\r\n this.registerScrollEvent();\r\n\r\n this.streamScrollEvents();\r\n\r\n this.requestCallbackOnScroll();\r\n\r\n }\r\n\r\n private registerScrollEvent() {\r\n\r\n this.scrollEvent$ = fromEvent(this.elm.nativeElement, 'scroll');\r\n\r\n }\r\n\r\n private streamScrollEvents() {\r\n this.userScrolledDown$ = this.scrollEvent$\r\n .pipe(\r\n map((e: any): AXScrollPosition => ({\r\n scrollHeight: e.target.scrollHeight,\r\n scrollTop: e.target.scrollTop,\r\n clientHeight: e.target.clientHeight\r\n })),\r\n pairwise(),\r\n filter(positions => this.isUserScrollingDown(positions) && this.isScrollExpectedPercent(positions[1]))\r\n );\r\n }\r\n\r\n private requestCallbackOnScroll() {\r\n this.requestOnScroll$ = this.userScrolledDown$;\r\n\r\n if (this.immediateCallback) {\r\n this.requestOnScroll$ = this.requestOnScroll$.pipe(\r\n startWith([AX_DEFAULT_SCROLL_POSITION, AX_DEFAULT_SCROLL_POSITION])\r\n );\r\n }\r\n\r\n this.requestOnScroll$.pipe(\r\n exhaustMap(() => {\r\n return this.scrollCallback();\r\n }))\r\n //.subscribe((data) => { console.log(data) }, (err) => console.log(err));\r\n\r\n }\r\n\r\n private isUserScrollingDown = (positions) => {\r\n return positions[0].sT < positions[1].sT;\r\n }\r\n\r\n private isScrollExpectedPercent = (position) => {\r\n return ((position.sT + position.cH) / position.sH) > (this.scrollPercent / 100);\r\n }\r\n\r\n}","import { Directive, ElementRef, OnDestroy } from '@angular/core';\r\n\r\n@Directive({ selector: '[ax-responsive]' })\r\nexport class AXResponsiveDirective implements OnDestroy {\r\n\r\n private _observer: ResizeObserver = new ResizeObserver(entries => {\r\n for (let entry of entries) {\r\n\r\n if (entry.target) {\r\n const e = entry.target;\r\n const elements = [e, ...Array.from(e.querySelectorAll(`[class*='sm:']`))];\r\n elements.map(c => ({\r\n element: c,\r\n classList: Array.from(c.classList).filter(c => c.includes('sm')).map(c => c.slice(3))\r\n })).forEach(c => {\r\n e.clientWidth < 320 ? c.element.classList.add(...c.classList) : c.element.classList.remove(...c.classList);\r\n });\r\n }\r\n }\r\n });;\r\n\r\n constructor(private _elementRef: ElementRef<HTMLDivElement>) {\r\n this._observer.observe(_elementRef.nativeElement);\r\n }\r\n\r\n ngOnDestroy() {\r\n this._observer.disconnect();\r\n this._observer.unobserve(this._elementRef.nativeElement);\r\n }\r\n\r\n}","import {\r\n Overlay,\r\n OverlayKeyboardDispatcher,\r\n OverlayPositionBuilder,\r\n ScrollStrategyOptions,\r\n OverlayContainer,\r\n OverlayRef,\r\n OverlayConfig,\r\n OverlayOutsideClickDispatcher,\r\n} from '@angular/cdk/overlay';\r\n\r\n// TODO: 'ComponentFactoryResolver' is deprecated.\r\nimport {\r\n ComponentFactoryResolver,\r\n Inject,\r\n Injector,\r\n NgZone,\r\n Renderer2,\r\n RendererFactory2,\r\n Injectable,\r\n} from '@angular/core';\r\n\r\nimport { Directionality } from '@angular/cdk/bidi';\r\nimport { DOCUMENT, Location } from '@angular/common';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DynamicOverlayContainer extends OverlayContainer {\r\n public setContainerElement(containerElement: HTMLElement): void {\r\n this._containerElement = containerElement;\r\n }\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DynamicOverlay extends Overlay {\r\n private readonly _dynamicOverlayContainer: DynamicOverlayContainer;\r\n private renderer: Renderer2;\r\n\r\n constructor(\r\n scrollStrategies: ScrollStrategyOptions,\r\n _overlayContainer: DynamicOverlayContainer,\r\n _componentFactoryResolver: ComponentFactoryResolver,\r\n _positionBuilder: OverlayPositionBuilder,\r\n _keyboardDispatcher: OverlayKeyboardDispatcher,\r\n _injector: Injector,\r\n _ngZone: NgZone,\r\n @Inject(DOCUMENT) _document: any,\r\n _directionality: Directionality,\r\n rendererFactory: RendererFactory2,\r\n _location: Location,\r\n _outsideClickDispatcher: OverlayOutsideClickDispatcher\r\n ) {\r\n super(\r\n scrollStrategies,\r\n _overlayContainer,\r\n _componentFactoryResolver,\r\n _positionBuilder,\r\n _keyboardDispatcher,\r\n _injector,\r\n _ngZone,\r\n _document,\r\n _directionality,\r\n _location,\r\n _outsideClickDispatcher\r\n );\r\n this.renderer = rendererFactory.createRenderer(null, null);\r\n\r\n this._dynamicOverlayContainer = _overlayContainer;\r\n }\r\n\r\n private setContainerElement(containerElement: HTMLElement): void {\r\n this.renderer.setStyle(containerElement, 'transform', 'translateZ(0)');\r\n this._dynamicOverlayContainer.setContainerElement(containerElement);\r\n }\r\n\r\n public createOn(\r\n containerElement: HTMLElement,\r\n config?: OverlayConfig\r\n ): OverlayRef {\r\n this.setContainerElement(containerElement);\r\n return super.create(config);\r\n }\r\n}\r\n","import {\r\n Injectable,\r\n ApplicationRef,\r\n ViewContainerRef,\r\n TemplateRef,\r\n} from '@angular/core';\r\nimport {\r\n ConnectedPosition,\r\n Overlay,\r\n OverlayPositionBuilder,\r\n PositionStrategy,\r\n ScrollStrategy,\r\n} from '@angular/cdk/overlay';\r\nimport { TemplatePortal, Portal, ComponentPortal } from '@angular/cdk/portal';\r\nimport { merge } from 'rxjs';\r\nimport { DynamicOverlay } from './custom-cdk-overlay.service';\r\nimport { AXConnectedPosition } from '../classes/drawing.class';\r\nimport { NavigationStart, RouterEvent, Router } from '@angular/router';\r\n\r\nexport interface AXOverlayViewRef {\r\n instance: any;\r\n dispose: () => void;\r\n isOpen: () => boolean;\r\n}\r\n\r\nexport interface AXOverlayConfigs {\r\n position?: AXConnectedPosition | AXConnectedPosition[] | PositionStrategy;\r\n hasBackdrop?: boolean;\r\n transparentBackdrop?: boolean;\r\n closeOnClickOutside?: boolean;\r\n targetElement?: HTMLElement;\r\n containerElement?: HTMLElement;\r\n onBackdropClick?: () => void;\r\n panelClass?: string[] | string;\r\n backdropClass?: string[] | string;\r\n scroll?: 'auto' | 'block' | 'close';\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AXOverlayService {\r\n portal: Portal<any>;\r\n constructor(\r\n private overlayService: DynamicOverlay,\r\n private overlayService2: Overlay,\r\n private appRef: ApplicationRef\r\n ) {}\r\n\r\n position(): OverlayPositionBuilder {\r\n return this.overlayService.position();\r\n }\r\n\r\n show(\r\n content: any,\r\n context?: any,\r\n configs?: AXOverlayConfigs\r\n ): AXOverlayViewRef {\r\n configs = Object.assign(\r\n {\r\n hasBackdrop: true,\r\n transparentBackdrop: true,\r\n closeOnClickOutside: true,\r\n },\r\n configs || {}\r\n );\r\n // get root viewref\r\n const viewRef: ViewContainerRef =\r\n this.appRef.components[0].instance.viewRef;\r\n\r\n // let portal: Portal<any>;\r\n // get component by route\r\n if (typeof content === 'string') {\r\n // TODO: ???\r\n }\r\n // create portal from component\r\n else if (content instanceof TemplateRef) {\r\n this.portal = new TemplatePortal(content, viewRef, context);\r\n } else if (typeof content === 'function') {\r\n this.portal = new ComponentPortal(content, viewRef);\r\n }\r\n let positionStrategy: PositionStrategy;\r\n if (configs.position && configs.targetElement) {\r\n const p: ConnectedPosition[] = Array.isArray(configs.position)\r\n ? (configs.position as ConnectedPosition[])\r\n : [configs.position as ConnectedPosition];\r\n positionStrategy = this.overlayService\r\n .position()\r\n .flexibleConnectedTo(configs.targetElement)\r\n .withPositions(p)\r\n .withPush(true);\r\n } else {\r\n positionStrategy = configs.position\r\n ? (configs.position as PositionStrategy)\r\n : this.overlayService\r\n .position()\r\n .global()\r\n .centerHorizontally()\r\n .centerVertically();\r\n }\r\n let scrollStrategy: ScrollStrategy =\r\n this.overlayService.scrollStrategies.reposition({ autoClose: true });\r\n if (configs.scroll === 'block') {\r\n scrollStrategy = this.overlayService.scrollStrategies.block();\r\n }\r\n if (configs.scroll === 'close') {\r\n scrollStrategy = this.overlayService.scrollStrategies.close();\r\n }\r\n\r\n const config = {\r\n positionStrategy,\r\n scrollStrategy,\r\n hasBackdrop: configs.hasBackdrop,\r\n disposeOnNavigation: true,\r\n backdropClass: configs.backdropClass\r\n ? configs.backdropClass\r\n : configs.transparentBackdrop\r\n ? 'cdk-overlay-transparent-backdrop'\r\n : undefined,\r\n panelClass: configs.panelClass\r\n ? configs.panelClass\r\n : ['ax-animate-animated', 'ax-animate-zoomIn', 'ax-animate-faster'],\r\n };\r\n let overlayRef: any = configs.containerElement\r\n ? this.overlayService.createOn(configs.containerElement, config)\r\n : this.overlayService2.create(config);\r\n\r\n const host = overlayRef.attach(this.portal!);\r\n if (host.instance) {\r\n Object.assign(host.instance, context);\r\n setTimeout(() => {\r\n host.changeDetectorRef.detectChanges();\r\n }, 0);\r\n }\r\n\r\n if (configs.closeOnClickOutside) {\r\n merge(overlayRef.backdropClick(), overlayRef.detachments()).subscribe(\r\n () => {\r\n overlayRef.dispose();\r\n overlayRef = undefined;\r\n if (configs!.onBackdropClick) {\r\n configs!.onBackdropClick();\r\n }\r\n }\r\n );\r\n }\r\n return {\r\n instance: host.instance,\r\n dispose: overlayRef.dispose.bind(overlayRef),\r\n isOpen: () => {\r\n return overlayRef.hasAttached();\r\n },\r\n };\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { AXAutoFocusDirective } from './directives/auto-focus.directive';\r\nimport { AXNgModelChangeDebouncedDirective } from './directives/debounce-time.directive';\r\nimport { AXHotkeyDirective } from './directives/hotkey.directive';\r\nimport { AXInfiniteScrollerDirective } from './directives/infinite-scroll.directive';\r\nimport { AXResponsiveDirective } from './directives/responsive.directive';\r\n@NgModule({\r\n imports: [],\r\n exports: [\r\n AXResponsiveDirective,\r\n AXInfiniteScrollerDirective,\r\n AXAutoFocusDirective,\r\n AXNgModelChangeDebouncedDirective,\r\n AXHotkeyDirective,\r\n ],\r\n declarations: [\r\n AXResponsiveDirective,\r\n AXInfiniteScrollerDirective,\r\n AXNgModelChangeDebouncedDirective,\r\n AXAutoFocusDirective,\r\n AXHotkeyDirective,\r\n ],\r\n providers: [],\r\n})\r\nexport class AXCommonModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.AXFocusableComponent","i1.AXComponent","i2.AXHotkeysService","i1","i1.DynamicOverlay","i2"],"mappings":"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"}
|
@@ -133,7 +133,7 @@ AXDataPagerInputSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion
|
|
133
133
|
<ax-number-box [value]="_currentPage" class="ax-sm" (onValueChanged)="_handleValueChanged($event)" [showSpinButtons]="false"
|
134
134
|
[minValue]="1" [maxValue]="_totalPages" allowNull="false">
|
135
135
|
</ax-number-box>
|
136
|
-
`, isInline: true, dependencies: [{ kind: "component", type: i1.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "size", "value", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "name", "checked", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue"], outputs: ["valueChange", "onValueChanged", "onBlur", "onFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
136
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "size", "value", "state", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "name", "checked", "thousandsSeparator", "padDecimalZeros", "step", "decimals", "decimalStep", "showSpinButtons", "minValue", "maxValue"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
137
137
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXDataPagerInputSelectorComponent, decorators: [{
|
138
138
|
type: Component,
|
139
139
|
args: [{
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-data-pager.mjs","sources":["../../../../projects/acorex/components/data-pager/src/data-pager-base.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-info.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-input-selector.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-next-buttons.components.ts","../../../../projects/acorex/components/data-pager/src/data-pager-numeric-selector.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-pagesize-dropdown.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-prev-buttons.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager.component.html","../../../../projects/acorex/components/data-pager/src/data-pager.module.ts","../../../../projects/acorex/components/data-pager/acorex-components-data-pager.ts"],"sourcesContent":["import { EventEmitter, Inject, Injectable } from '@angular/core';\r\nimport { AXEvent } from '@acorex/components/common';\r\nimport { AXInteractiveComponenetMixin } from '@acorex/components/mixin';\r\n\r\n/**\r\n * A token that specifies the display mode of datapager component.\r\n */\r\nexport type AXDataPagerDisplayMode = 'full' | 'compact' | 'custom';\r\n\r\nexport interface AXDataPagerInfoData {\r\n range: { from: number; to: number };\r\n page: number;\r\n skip: number;\r\n take: number;\r\n totalPages: number;\r\n totalItems: number;\r\n}\r\n\r\nexport class AXPagerPageChangedEvent\r\n extends AXEvent\r\n implements AXDataPagerInfoData\r\n{\r\n range: { from: number; to: number } = { from: 0, to: 0 };\r\n page: number = 0;\r\n skip: number = 0;\r\n take: number = 0;\r\n totalPages: number = 0;\r\n totalItems: number = 0;\r\n}\r\n\r\nexport class AXPagerStateChangedEvent extends AXPagerPageChangedEvent {}\r\n\r\n@Injectable()\r\nexport abstract class AXPagerComponent {\r\n abstract onStateChanged: EventEmitter<AXPagerStateChangedEvent>;\r\n abstract get state(): AXDataPagerInfoData;\r\n abstract size: number;\r\n abstract goNextPage(): void;\r\n abstract goLastPage(): void;\r\n abstract goFirstPage(): void;\r\n abstract goPrevPage(): void;\r\n abstract goToPage(page: number): void;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXDataPagerChild extends AXInteractiveComponenetMixin {\r\n constructor(@Inject(Array) ...args: any[]) {\r\n super(...args);\r\n }\r\n}\r\n","import { AXTranslator } from '@acorex/core/translation';\r\nimport {\r\n Component,\r\n ChangeDetectionStrategy,\r\n ViewEncapsulation,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n Inject,\r\n} from '@angular/core';\r\nimport {\r\n AXDataPagerChild,\r\n AXPagerComponent,\r\n} from './data-pager-base.component';\r\n\r\n@Component({\r\n selector: 'ax-data-pager-info',\r\n template: `{{ _textFormatted }}`,\r\n host: { class: 'ax-data-pager-info' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n { provide: AXDataPagerChild, useExisting: AXDataPagerInfoComponent },\r\n ],\r\n})\r\nexport class AXDataPagerInfoComponent extends AXDataPagerChild {\r\n constructor(\r\n private elementRef: ElementRef<HTMLDivElement>,\r\n private cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n @Input()\r\n text: string = AXTranslator.get('datapager.info.text');\r\n\r\n _textFormatted: string;\r\n\r\n onViewInit() {\r\n this._updateText();\r\n this._parent.onStateChanged.subscribe((c) => {\r\n this._updateText();\r\n });\r\n }\r\n\r\n private _updateText() {\r\n const info = this._parent.state;\r\n if ([info.range, info.range.from, info.totalItems].every((c) => c)) {\r\n this._textFormatted = this.text\r\n .replace('[from]', info.range.from.toString())\r\n .replace('[to]', info.range.to.toString())\r\n .replace('[totalItems]', info.totalItems.toString())\r\n .replace('[page]', info.page.toString())\r\n .replace('[totalPages]', info.totalPages.toString());\r\n this.cdr.markForCheck();\r\n } else {\r\n }\r\n }\r\n}\r\n","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Inject } from \"@angular/core\";\r\nimport { AXValueChangedEvent } from \"@acorex/components/common\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-input-selector',\r\n template: `\r\n <ax-number-box [value]=\"_currentPage\" class=\"ax-sm\" (onValueChanged)=\"_handleValueChanged($event)\" [showSpinButtons]=\"false\"\r\n [minValue]=\"1\" [maxValue]=\"_totalPages\" allowNull=\"false\">\r\n </ax-number-box>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerInputSelectorComponent }]\r\n})\r\nexport class AXDataPagerInputSelectorComponent extends AXDataPagerChild {\r\n\r\n constructor(\r\n elementRef: ElementRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n _totalPages: number = 1;\r\n _currentPage: number = 1;\r\n\r\n onViewInit() {\r\n this._currentPage = this._parent.state.page;\r\n this._totalPages = this._parent.state.totalPages;\r\n this._parent.onStateChanged.subscribe(c => {\r\n this._currentPage = c.page;\r\n this._totalPages = c.totalPages;\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n _handleValueChanged(e: AXValueChangedEvent<number>) {\r\n //TODO: debounceTime\r\n this._parent.goToPage(e.value as number);\r\n }\r\n}","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Inject } from \"@angular/core\";\r\nimport { AXClickEvent } from \"@acorex/components/common\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-next-buttons',\r\n template: `\r\n <ax-button [disabled]=\"disabled\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" title=\"Go to the next page\" (onClick)=\"_emitOnNextPageClick($event)\" >\r\n <ax-icon [ngClass]=\"{'ax-icon-chevron-left': rtl,'ax-icon-chevron-right': !rtl}\"></ax-icon> \r\n <i ></i> \r\n </ax-button>\r\n <ax-button [disabled]=\"disabled\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" title=\"Go to the last page\" (onClick)=\"_emitOnLastPageClick($event)\">\r\n <ax-icon [ngClass]=\"{'ax-icon-first-page': rtl,'ax-icon-last-page': !rtl}\"></ax-icon>\r\n </ax-button>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerNextButtonsComponent }]\r\n})\r\nexport class AXDataPagerNextButtonsComponent extends AXDataPagerChild {\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n onViewInit() {\r\n this._checkDisabled();\r\n //\r\n this._parent.onStateChanged.subscribe(c => {\r\n this._checkDisabled();\r\n });\r\n }\r\n\r\n private _checkDisabled() {\r\n this.disabled = this._parent.state.page == this._parent.state.totalPages;\r\n }\r\n\r\n _emitOnLastPageClick(e: AXClickEvent) {\r\n this._parent.goLastPage();\r\n }\r\n\r\n _emitOnNextPageClick(e: AXClickEvent) {\r\n this._parent.goNextPage();\r\n }\r\n}","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Inject, NgZone } from \"@angular/core\";\r\nimport { AXButtonItem } from \"@acorex/components/button\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-numeric-selector',\r\n template: `\r\n <ax-button [disabled]=\"_currentPage==1\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" (onClick)=\"_handleOnItemClick({data:1})\">\r\n <ax-icon [ngClass]=\"{'ax-icon-last-page': rtl,'ax-icon-first-page': !rtl}\"></ax-icon>\r\n </ax-button>\r\n <ax-button-group color=\"ghost\" look=\"blank\" class=\"ax-sm\" >\r\n <ax-button *ngFor=\"let item of _items\" color=\"ghost\" look=\"blank\" [selected]=\"_currentPage==item.data\" class=\"ax-sm\" [text]=\"item.text\" (onClick)=\"_handleOnItemClick(item)\">\r\n <ax-icon [class]=\"item.iconClass\" *ngIf=\"item.iconClass\">\r\n </ax-icon>\r\n </ax-button>\r\n </ax-button-group>\r\n <ax-button [disabled]=\"_currentPage==_lastPage\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" (onClick)=\"_handleOnItemClick({data:_lastPage})\">\r\n <ax-icon [ngClass]=\"{'ax-icon-last-page': !rtl,'ax-icon-first-page': rtl}\"></ax-icon>\r\n </ax-button>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerNumericSelectorComponent }]\r\n})\r\nexport class AXDataPagerNumericSelectorComponent extends AXDataPagerChild {\r\n\r\n constructor(\r\n _elementRef: ElementRef,\r\n _cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n private _zone: NgZone,\r\n ) {\r\n super(_elementRef, _cdr);\r\n }\r\n\r\n\r\n _items: AXButtonItem[] = [];\r\n _currentPage: number = 1;\r\n _lastPage: number = 1;\r\n\r\n private _displayCount: number = 5;\r\n\r\n onViewInit() {\r\n this._generateDisplayItems();\r\n this._parent.onStateChanged.subscribe(c => {\r\n\r\n this._generateDisplayItems();\r\n });\r\n }\r\n\r\n private _generateDisplayItems(): void {\r\n this._currentPage = this._parent.state.page;\r\n this._lastPage = this._parent.state.totalPages;\r\n //\r\n this._items = [];\r\n\r\n const start: number = Math.max(0, ((Math.ceil(this._currentPage / this._displayCount) - 1) * this._displayCount) + 1);\r\n const end: number = Math.min(start + this._displayCount - 1, this._lastPage);\r\n //\r\n if (start > this._displayCount) {\r\n this._items.push({\r\n iconClass: 'ax-icon-more ax-rotation-90',\r\n data: start - 1\r\n });\r\n }\r\n //\r\n for (let i = start; i <= end; i++) {\r\n this._items.push({\r\n text: i.toString(),\r\n data: i\r\n });\r\n }\r\n if (end < this._lastPage) {\r\n this._items.push({\r\n iconClass: 'ax-icon-more ax-rotation-90',\r\n data: end + 1\r\n });\r\n }\r\n this._cdr.detectChanges();\r\n }\r\n\r\n _handleOnItemClick(e: any) {\r\n this._parent.goToPage(Number(e.data));\r\n }\r\n}","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Input, Inject } from \"@angular/core\";\r\nimport { AXClickEvent } from \"@acorex/components/common\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-page-sizes',\r\n template: `\r\n <ax-button [text]=\"_size\" color=\"ghost\" look=\"blank\" class=\"ax-sm\">\r\n <ax-dropdown-panel (onItemClick)=\"_emitOnItemClick($event)\">\r\n <ax-button-item *ngFor=\"let item of _items\" [text]=\"item.text\" [data]=\"item.data\" [selected]=\"item.selected\" >\r\n </ax-button-item>\r\n </ax-dropdown-panel>\r\n <ax-suffix>\r\n <ax-icon icon=\"ax-icon-arrow-down\"></ax-icon>\r\n </ax-suffix>\r\n </ax-button>\r\n <!-- <span >items per page</span> -->\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n outputs: [],\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerPageSizesComponent }]\r\n})\r\nexport class AXDataPagerPageSizesComponent extends AXDataPagerChild {\r\n\r\n constructor(\r\n elementRef: ElementRef,\r\n cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n\r\n _size: number;\r\n\r\n\r\n onViewInit() {\r\n this._generateDisplayItems();\r\n //\r\n this._parent.onStateChanged.subscribe(c => {\r\n this._generateDisplayItems();\r\n });\r\n }\r\n\r\n\r\n //TODO: AXButtonItems type error\r\n _items: any[] = [];\r\n\r\n private _sizes: number[];\r\n @Input()\r\n public get sizes(): number[] {\r\n return this._sizes || [5, 10, 20, 50, 100];\r\n }\r\n public set sizes(v: number[]) {\r\n this._sizes = v;\r\n this._generateDisplayItems();\r\n }\r\n\r\n private _generateDisplayItems(): void {\r\n this._size = this._parent.state.take;\r\n this._items = this.sizes.map((s:any) => ({\r\n text: s.toString(),\r\n selected: s == this._size,\r\n data: {\r\n size: s\r\n }\r\n }));\r\n this._cdr.detectChanges();\r\n }\r\n\r\n\r\n _emitOnItemClick(e: AXClickEvent) {\r\n this._size = this._parent.size = Number(e.data.size);\r\n }\r\n}","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Inject } from \"@angular/core\";\r\nimport { AXClickEvent } from \"@acorex/components/common\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-prev-buttons',\r\n template: `\r\n <ax-button [disabled]=\"disabled\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" title=\"Go to the last page\" (onClick)=\"_emitOnFirstPageClick($event)\">\r\n <ax-icon [ngClass]=\"{'ax-icon-last-page': rtl,'ax-icon-first-page': !rtl}\"></ax-icon>\r\n </ax-button>\r\n <ax-button [disabled]=\"disabled\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" title=\"Go to the next page\" (onClick)=\"_emitOnPrevPageClick($event)\">\r\n <ax-icon [ngClass]=\"{'ax-icon-chevron-left': !rtl,'ax-icon-chevron-right': rtl}\"></ax-icon>\r\n </ax-button>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerPrevButtonsComponent }]\r\n})\r\nexport class AXDataPagerPrevButtonsComponent extends AXDataPagerChild {\r\n\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n onViewInit() {\r\n this._checkDisabled();\r\n this._parent.onStateChanged.subscribe(c => {\r\n this._checkDisabled();\r\n });\r\n }\r\n\r\n private _checkDisabled() {\r\n this.disabled = this._parent.state.page == 1;\r\n }\r\n\r\n\r\n _emitOnFirstPageClick(e: AXClickEvent) {\r\n this._parent.goFirstPage();\r\n }\r\n\r\n _emitOnPrevPageClick(e: AXClickEvent) {\r\n this._parent.goPrevPage();\r\n }\r\n\r\n}","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n Inject,\r\n Optional,\r\n} from '@angular/core';\r\nimport { isNumber } from 'lodash-es';\r\nimport { AXPagedComponent } from '@acorex/components/common';\r\n\r\nimport {\r\n AXDataPagerDisplayMode,\r\n AXDataPagerInfoData,\r\n AXPagerComponent,\r\n AXPagerStateChangedEvent,\r\n} from './data-pager-base.component';\r\nimport { AXBaseValueComponentMixin } from '@acorex/components/mixin';\r\n\r\n@Component({\r\n selector: 'ax-data-pager',\r\n templateUrl: './data-pager.component.html',\r\n styleUrls: ['./data-pager.component.scss'],\r\n inputs: ['value', 'name'],\r\n outputs: ['valueChange', 'onValueChanged'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXPagerComponent, useExisting: AXDataPagerComponent }],\r\n})\r\nexport class AXDataPagerComponent extends AXBaseValueComponentMixin {\r\n\r\n private _size: number = 10;\r\n @Input()\r\n public get size(): number {\r\n return this._size;\r\n }\r\n public set size(v: number) {\r\n if (v != this._size) {\r\n this._size = v;\r\n if (this._parent) {\r\n this._parent.pageSize = v;\r\n }\r\n const newPage = Math.ceil(this.state.range.from / this._size) || 1;\r\n this.value = newPage;\r\n this._emitStateChangedEvent();\r\n }\r\n }\r\n\r\n private _total: number = 0;\r\n @Input()\r\n public get total(): number {\r\n return this._total;\r\n }\r\n public set total(v: number) {\r\n const t = v && v > 0 ? v : 0;\r\n if (t != this._total) {\r\n this._total = t;\r\n this._emitStateChangedEvent();\r\n }\r\n }\r\n\r\n private _totalPages: number = 0;\r\n\r\n public get totalPages(): number {\r\n return this._totalPages;\r\n }\r\n\r\n private set totalPages(value: number) {\r\n this._totalPages = value;\r\n }\r\n\r\n @Input()\r\n displayMode: AXDataPagerDisplayMode = 'full';\r\n\r\n @Output()\r\n onStateChanged: EventEmitter<AXPagerStateChangedEvent> = new EventEmitter<AXPagerStateChangedEvent>();\r\n\r\n constructor(\r\n private _elementRef: ElementRef,\r\n private _cdr: ChangeDetectorRef,\r\n @Optional()\r\n @Inject(AXPagedComponent)\r\n private _parent: AXPagedComponent\r\n ) {\r\n super(_elementRef, _cdr);\r\n }\r\n\r\n onInit() {\r\n if (this._parent) {\r\n this._parent.onPageChanged.subscribe((c) => {\r\n this.size = this._parent.pageSize;\r\n this.total = this._parent.totalCount;\r\n this.value = c.value;\r\n });\r\n this.size = this._parent.pageSize;\r\n this.total = this._parent.totalCount;\r\n }\r\n this.goFirstPage();\r\n }\r\n\r\n onViewInit() {\r\n this._emitStateChangedEvent();\r\n }\r\n\r\n _onValueChanged(oldValue: number, newValue: number) {\r\n this._emitStateChangedEvent();\r\n }\r\n\r\n _getValue(value: any) {\r\n if (!isNumber(value) || !value || this.totalPages == 0)\r\n return 1\r\n return value > this.totalPages ? this.totalPages : value;\r\n }\r\n\r\n public get state(): AXDataPagerInfoData {\r\n const skip = Math.max(0, (this.value - 1) * this.size);\r\n const result = {\r\n page: this.value,\r\n totalItems: this.total,\r\n totalPages: this.totalPages,\r\n range: {\r\n from: skip + 1,\r\n to: Math.min(this.value * this.size, this.total),\r\n },\r\n skip,\r\n take: this.size,\r\n };\r\n return result;\r\n }\r\n\r\n private _emitStateChangedEvent(): void {\r\n this.totalPages = Math.ceil(this._total / this.size);\r\n //\r\n this.onStateChanged.emit(\r\n Object.assign(\r\n {\r\n component: this,\r\n htmlElement: this._elementRef.nativeElement,\r\n },\r\n this.state\r\n )\r\n );\r\n if (this.totalPages > 0)\r\n this._parent?.goToPage(this.value);\r\n }\r\n\r\n goNextPage(): void {\r\n this.goToPage(Math.min(++this.value, this.totalPages));\r\n }\r\n\r\n goLastPage(): void {\r\n this.goToPage(this.totalPages);\r\n }\r\n\r\n goFirstPage(): void {\r\n this.goToPage(1);\r\n }\r\n\r\n goPrevPage(): void {\r\n this.goToPage(Math.max(--this.value, 1));\r\n }\r\n\r\n goToPage(page: number): void {\r\n if (page != this.value) {\r\n this.value = page;\r\n }\r\n }\r\n}\r\n","<ng-container [ngSwitch]=\"displayMode\">\r\n <ng-container *ngSwitchCase=\"'full'\">\r\n <ax-prefix>\r\n <ax-data-pager-numeric-selector>\r\n </ax-data-pager-numeric-selector>\r\n <ax-data-pager-page-sizes>\r\n </ax-data-pager-page-sizes>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <ax-data-pager-info>\r\n </ax-data-pager-info>\r\n </ax-suffix>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'compact'\">\r\n <ax-prefix>\r\n <ax-data-pager-prev-buttons>\r\n </ax-data-pager-prev-buttons>\r\n <ax-data-pager-input-selector>\r\n </ax-data-pager-input-selector>\r\n <ax-data-pager-next-buttons>\r\n </ax-data-pager-next-buttons>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <ax-data-pager-info>\r\n </ax-data-pager-info>\r\n </ax-suffix>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <ng-content select=\"ax-prefix\"></ng-content>\r\n <ng-content select=\"ax-suffix\"></ng-content>\r\n </ng-container>\r\n</ng-container>\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXDataPagerComponent } from './data-pager.component';\r\nimport { AXDataPagerNextButtonsComponent } from './data-pager-next-buttons.components';\r\nimport { AXDataPagerPrevButtonsComponent } from './data-pager-prev-buttons.component';\r\nimport { AXDataPagerPageSizesComponent } from './data-pager-pagesize-dropdown.component';\r\nimport { AXDataPagerNumericSelectorComponent } from './data-pager-numeric-selector.component';\r\nimport { AXDataPagerInputSelectorComponent } from './data-pager-input-selector.component';\r\nimport { AXDataPagerInfoComponent } from './data-pager-info.component';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\n\r\nconst COMPONENT = [\r\n AXDataPagerComponent,\r\n AXDataPagerNextButtonsComponent,\r\n AXDataPagerPrevButtonsComponent,\r\n AXDataPagerPageSizesComponent,\r\n AXDataPagerNumericSelectorComponent,\r\n AXDataPagerInputSelectorComponent,\r\n AXDataPagerInfoComponent\r\n];\r\nconst MODULES = [CommonModule, AXButtonModule, AXNumberBoxModule,AXDropdownModule,AXDecoratorModule];\r\n\r\n@NgModule({\r\n declarations: [...COMPONENT],\r\n imports: [...MODULES],\r\n exports: [...COMPONENT],\r\n providers: [],\r\n})\r\nexport class AXDataPagerModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i3","i4","i2","i3.AXDataPagerNextButtonsComponent","i4.AXDataPagerPrevButtonsComponent","i5.AXDataPagerPageSizesComponent","i6.AXDataPagerNumericSelectorComponent","i7.AXDataPagerInputSelectorComponent","i8.AXDataPagerInfoComponent"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-data-pager.mjs","sources":["../../../../projects/acorex/components/data-pager/src/data-pager-base.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-info.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-input-selector.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-next-buttons.components.ts","../../../../projects/acorex/components/data-pager/src/data-pager-numeric-selector.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-pagesize-dropdown.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager-prev-buttons.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager.component.ts","../../../../projects/acorex/components/data-pager/src/data-pager.component.html","../../../../projects/acorex/components/data-pager/src/data-pager.module.ts","../../../../projects/acorex/components/data-pager/acorex-components-data-pager.ts"],"sourcesContent":["import { EventEmitter, Inject, Injectable } from '@angular/core';\r\nimport { AXEvent } from '@acorex/components/common';\r\nimport { AXInteractiveComponenetMixin } from '@acorex/components/mixin';\r\n\r\n/**\r\n * A token that specifies the display mode of datapager component.\r\n */\r\nexport type AXDataPagerDisplayMode = 'full' | 'compact' | 'custom';\r\n\r\nexport interface AXDataPagerInfoData {\r\n range: { from: number; to: number };\r\n page: number;\r\n skip: number;\r\n take: number;\r\n totalPages: number;\r\n totalItems: number;\r\n}\r\n\r\nexport class AXPagerPageChangedEvent\r\n extends AXEvent\r\n implements AXDataPagerInfoData\r\n{\r\n range: { from: number; to: number } = { from: 0, to: 0 };\r\n page: number = 0;\r\n skip: number = 0;\r\n take: number = 0;\r\n totalPages: number = 0;\r\n totalItems: number = 0;\r\n}\r\n\r\nexport class AXPagerStateChangedEvent extends AXPagerPageChangedEvent {}\r\n\r\n@Injectable()\r\nexport abstract class AXPagerComponent {\r\n abstract onStateChanged: EventEmitter<AXPagerStateChangedEvent>;\r\n abstract get state(): AXDataPagerInfoData;\r\n abstract size: number;\r\n abstract goNextPage(): void;\r\n abstract goLastPage(): void;\r\n abstract goFirstPage(): void;\r\n abstract goPrevPage(): void;\r\n abstract goToPage(page: number): void;\r\n}\r\n\r\n@Injectable()\r\nexport abstract class AXDataPagerChild extends AXInteractiveComponenetMixin {\r\n constructor(@Inject(Array) ...args: any[]) {\r\n super(...args);\r\n }\r\n}\r\n","import { AXTranslator } from '@acorex/core/translation';\r\nimport {\r\n Component,\r\n ChangeDetectionStrategy,\r\n ViewEncapsulation,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n Inject,\r\n} from '@angular/core';\r\nimport {\r\n AXDataPagerChild,\r\n AXPagerComponent,\r\n} from './data-pager-base.component';\r\n\r\n@Component({\r\n selector: 'ax-data-pager-info',\r\n template: `{{ _textFormatted }}`,\r\n host: { class: 'ax-data-pager-info' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [\r\n { provide: AXDataPagerChild, useExisting: AXDataPagerInfoComponent },\r\n ],\r\n})\r\nexport class AXDataPagerInfoComponent extends AXDataPagerChild {\r\n constructor(\r\n private elementRef: ElementRef<HTMLDivElement>,\r\n private cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n @Input()\r\n text: string = AXTranslator.get('datapager.info.text');\r\n\r\n _textFormatted: string;\r\n\r\n onViewInit() {\r\n this._updateText();\r\n this._parent.onStateChanged.subscribe((c) => {\r\n this._updateText();\r\n });\r\n }\r\n\r\n private _updateText() {\r\n const info = this._parent.state;\r\n if ([info.range, info.range.from, info.totalItems].every((c) => c)) {\r\n this._textFormatted = this.text\r\n .replace('[from]', info.range.from.toString())\r\n .replace('[to]', info.range.to.toString())\r\n .replace('[totalItems]', info.totalItems.toString())\r\n .replace('[page]', info.page.toString())\r\n .replace('[totalPages]', info.totalPages.toString());\r\n this.cdr.markForCheck();\r\n } else {\r\n }\r\n }\r\n}\r\n","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Inject } from \"@angular/core\";\r\nimport { AXValueChangedEvent } from \"@acorex/components/common\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-input-selector',\r\n template: `\r\n <ax-number-box [value]=\"_currentPage\" class=\"ax-sm\" (onValueChanged)=\"_handleValueChanged($event)\" [showSpinButtons]=\"false\"\r\n [minValue]=\"1\" [maxValue]=\"_totalPages\" allowNull=\"false\">\r\n </ax-number-box>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerInputSelectorComponent }]\r\n})\r\nexport class AXDataPagerInputSelectorComponent extends AXDataPagerChild {\r\n\r\n constructor(\r\n elementRef: ElementRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n private cdr: ChangeDetectorRef\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n _totalPages: number = 1;\r\n _currentPage: number = 1;\r\n\r\n onViewInit() {\r\n this._currentPage = this._parent.state.page;\r\n this._totalPages = this._parent.state.totalPages;\r\n this._parent.onStateChanged.subscribe(c => {\r\n this._currentPage = c.page;\r\n this._totalPages = c.totalPages;\r\n this.cdr.markForCheck();\r\n });\r\n }\r\n\r\n _handleValueChanged(e: AXValueChangedEvent<number>) {\r\n //TODO: debounceTime\r\n this._parent.goToPage(e.value as number);\r\n }\r\n}","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Inject } from \"@angular/core\";\r\nimport { AXClickEvent } from \"@acorex/components/common\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-next-buttons',\r\n template: `\r\n <ax-button [disabled]=\"disabled\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" title=\"Go to the next page\" (onClick)=\"_emitOnNextPageClick($event)\" >\r\n <ax-icon [ngClass]=\"{'ax-icon-chevron-left': rtl,'ax-icon-chevron-right': !rtl}\"></ax-icon> \r\n <i ></i> \r\n </ax-button>\r\n <ax-button [disabled]=\"disabled\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" title=\"Go to the last page\" (onClick)=\"_emitOnLastPageClick($event)\">\r\n <ax-icon [ngClass]=\"{'ax-icon-first-page': rtl,'ax-icon-last-page': !rtl}\"></ax-icon>\r\n </ax-button>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerNextButtonsComponent }]\r\n})\r\nexport class AXDataPagerNextButtonsComponent extends AXDataPagerChild {\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n private cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n onViewInit() {\r\n this._checkDisabled();\r\n //\r\n this._parent.onStateChanged.subscribe(c => {\r\n this._checkDisabled();\r\n });\r\n }\r\n\r\n private _checkDisabled() {\r\n this.disabled = this._parent.state.page == this._parent.state.totalPages;\r\n }\r\n\r\n _emitOnLastPageClick(e: AXClickEvent) {\r\n this._parent.goLastPage();\r\n }\r\n\r\n _emitOnNextPageClick(e: AXClickEvent) {\r\n this._parent.goNextPage();\r\n }\r\n}","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Inject, NgZone } from \"@angular/core\";\r\nimport { AXButtonItem } from \"@acorex/components/button\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-numeric-selector',\r\n template: `\r\n <ax-button [disabled]=\"_currentPage==1\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" (onClick)=\"_handleOnItemClick({data:1})\">\r\n <ax-icon [ngClass]=\"{'ax-icon-last-page': rtl,'ax-icon-first-page': !rtl}\"></ax-icon>\r\n </ax-button>\r\n <ax-button-group color=\"ghost\" look=\"blank\" class=\"ax-sm\" >\r\n <ax-button *ngFor=\"let item of _items\" color=\"ghost\" look=\"blank\" [selected]=\"_currentPage==item.data\" class=\"ax-sm\" [text]=\"item.text\" (onClick)=\"_handleOnItemClick(item)\">\r\n <ax-icon [class]=\"item.iconClass\" *ngIf=\"item.iconClass\">\r\n </ax-icon>\r\n </ax-button>\r\n </ax-button-group>\r\n <ax-button [disabled]=\"_currentPage==_lastPage\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" (onClick)=\"_handleOnItemClick({data:_lastPage})\">\r\n <ax-icon [ngClass]=\"{'ax-icon-last-page': !rtl,'ax-icon-first-page': rtl}\"></ax-icon>\r\n </ax-button>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerNumericSelectorComponent }]\r\n})\r\nexport class AXDataPagerNumericSelectorComponent extends AXDataPagerChild {\r\n\r\n constructor(\r\n _elementRef: ElementRef,\r\n _cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n private _zone: NgZone,\r\n ) {\r\n super(_elementRef, _cdr);\r\n }\r\n\r\n\r\n _items: AXButtonItem[] = [];\r\n _currentPage: number = 1;\r\n _lastPage: number = 1;\r\n\r\n private _displayCount: number = 5;\r\n\r\n onViewInit() {\r\n this._generateDisplayItems();\r\n this._parent.onStateChanged.subscribe(c => {\r\n\r\n this._generateDisplayItems();\r\n });\r\n }\r\n\r\n private _generateDisplayItems(): void {\r\n this._currentPage = this._parent.state.page;\r\n this._lastPage = this._parent.state.totalPages;\r\n //\r\n this._items = [];\r\n\r\n const start: number = Math.max(0, ((Math.ceil(this._currentPage / this._displayCount) - 1) * this._displayCount) + 1);\r\n const end: number = Math.min(start + this._displayCount - 1, this._lastPage);\r\n //\r\n if (start > this._displayCount) {\r\n this._items.push({\r\n iconClass: 'ax-icon-more ax-rotation-90',\r\n data: start - 1\r\n });\r\n }\r\n //\r\n for (let i = start; i <= end; i++) {\r\n this._items.push({\r\n text: i.toString(),\r\n data: i\r\n });\r\n }\r\n if (end < this._lastPage) {\r\n this._items.push({\r\n iconClass: 'ax-icon-more ax-rotation-90',\r\n data: end + 1\r\n });\r\n }\r\n this._cdr.detectChanges();\r\n }\r\n\r\n _handleOnItemClick(e: any) {\r\n this._parent.goToPage(Number(e.data));\r\n }\r\n}","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Input, Inject } from \"@angular/core\";\r\nimport { AXClickEvent } from \"@acorex/components/common\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-page-sizes',\r\n template: `\r\n <ax-button [text]=\"_size\" color=\"ghost\" look=\"blank\" class=\"ax-sm\">\r\n <ax-dropdown-panel (onItemClick)=\"_emitOnItemClick($event)\">\r\n <ax-button-item *ngFor=\"let item of _items\" [text]=\"item.text\" [data]=\"item.data\" [selected]=\"item.selected\" >\r\n </ax-button-item>\r\n </ax-dropdown-panel>\r\n <ax-suffix>\r\n <ax-icon icon=\"ax-icon-arrow-down\"></ax-icon>\r\n </ax-suffix>\r\n </ax-button>\r\n <!-- <span >items per page</span> -->\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n outputs: [],\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerPageSizesComponent }]\r\n})\r\nexport class AXDataPagerPageSizesComponent extends AXDataPagerChild {\r\n\r\n constructor(\r\n elementRef: ElementRef,\r\n cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n\r\n _size: number;\r\n\r\n\r\n onViewInit() {\r\n this._generateDisplayItems();\r\n //\r\n this._parent.onStateChanged.subscribe(c => {\r\n this._generateDisplayItems();\r\n });\r\n }\r\n\r\n\r\n //TODO: AXButtonItems type error\r\n _items: any[] = [];\r\n\r\n private _sizes: number[];\r\n @Input()\r\n public get sizes(): number[] {\r\n return this._sizes || [5, 10, 20, 50, 100];\r\n }\r\n public set sizes(v: number[]) {\r\n this._sizes = v;\r\n this._generateDisplayItems();\r\n }\r\n\r\n private _generateDisplayItems(): void {\r\n this._size = this._parent.state.take;\r\n this._items = this.sizes.map((s:any) => ({\r\n text: s.toString(),\r\n selected: s == this._size,\r\n data: {\r\n size: s\r\n }\r\n }));\r\n this._cdr.detectChanges();\r\n }\r\n\r\n\r\n _emitOnItemClick(e: AXClickEvent) {\r\n this._size = this._parent.size = Number(e.data.size);\r\n }\r\n}","import { Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, ChangeDetectorRef, Inject } from \"@angular/core\";\r\nimport { AXClickEvent } from \"@acorex/components/common\";\r\nimport { AXDataPagerChild, AXPagerComponent } from \"./data-pager-base.component\";\r\n\r\n@Component({\r\n selector: 'ax-data-pager-prev-buttons',\r\n template: `\r\n <ax-button [disabled]=\"disabled\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" title=\"Go to the last page\" (onClick)=\"_emitOnFirstPageClick($event)\">\r\n <ax-icon [ngClass]=\"{'ax-icon-last-page': rtl,'ax-icon-first-page': !rtl}\"></ax-icon>\r\n </ax-button>\r\n <ax-button [disabled]=\"disabled\" look=\"blank\" color=\"ghost\" class=\"ax-sm\" title=\"Go to the next page\" (onClick)=\"_emitOnPrevPageClick($event)\">\r\n <ax-icon [ngClass]=\"{'ax-icon-chevron-left': !rtl,'ax-icon-chevron-right': rtl}\"></ax-icon>\r\n </ax-button>\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXDataPagerChild, useExisting: AXDataPagerPrevButtonsComponent }]\r\n})\r\nexport class AXDataPagerPrevButtonsComponent extends AXDataPagerChild {\r\n\r\n\r\n constructor(\r\n private elementRef: ElementRef,\r\n cdr: ChangeDetectorRef,\r\n @Inject(AXPagerComponent)\r\n private _parent: AXPagerComponent,\r\n ) {\r\n super(elementRef, cdr);\r\n }\r\n\r\n onViewInit() {\r\n this._checkDisabled();\r\n this._parent.onStateChanged.subscribe(c => {\r\n this._checkDisabled();\r\n });\r\n }\r\n\r\n private _checkDisabled() {\r\n this.disabled = this._parent.state.page == 1;\r\n }\r\n\r\n\r\n _emitOnFirstPageClick(e: AXClickEvent) {\r\n this._parent.goFirstPage();\r\n }\r\n\r\n _emitOnPrevPageClick(e: AXClickEvent) {\r\n this._parent.goPrevPage();\r\n }\r\n\r\n}","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n Inject,\r\n Optional,\r\n} from '@angular/core';\r\nimport { isNumber } from 'lodash-es';\r\nimport { AXPagedComponent } from '@acorex/components/common';\r\n\r\nimport {\r\n AXDataPagerDisplayMode,\r\n AXDataPagerInfoData,\r\n AXPagerComponent,\r\n AXPagerStateChangedEvent,\r\n} from './data-pager-base.component';\r\nimport { AXBaseValueComponentMixin } from '@acorex/components/mixin';\r\n\r\n@Component({\r\n selector: 'ax-data-pager',\r\n templateUrl: './data-pager.component.html',\r\n styleUrls: ['./data-pager.component.scss'],\r\n inputs: ['value', 'name'],\r\n outputs: ['valueChange', 'onValueChanged'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [{ provide: AXPagerComponent, useExisting: AXDataPagerComponent }],\r\n})\r\nexport class AXDataPagerComponent extends AXBaseValueComponentMixin {\r\n\r\n private _size: number = 10;\r\n @Input()\r\n public get size(): number {\r\n return this._size;\r\n }\r\n public set size(v: number) {\r\n if (v != this._size) {\r\n this._size = v;\r\n if (this._parent) {\r\n this._parent.pageSize = v;\r\n }\r\n const newPage = Math.ceil(this.state.range.from / this._size) || 1;\r\n this.value = newPage;\r\n this._emitStateChangedEvent();\r\n }\r\n }\r\n\r\n private _total: number = 0;\r\n @Input()\r\n public get total(): number {\r\n return this._total;\r\n }\r\n public set total(v: number) {\r\n const t = v && v > 0 ? v : 0;\r\n if (t != this._total) {\r\n this._total = t;\r\n this._emitStateChangedEvent();\r\n }\r\n }\r\n\r\n private _totalPages: number = 0;\r\n\r\n public get totalPages(): number {\r\n return this._totalPages;\r\n }\r\n\r\n private set totalPages(value: number) {\r\n this._totalPages = value;\r\n }\r\n\r\n @Input()\r\n displayMode: AXDataPagerDisplayMode = 'full';\r\n\r\n @Output()\r\n onStateChanged: EventEmitter<AXPagerStateChangedEvent> = new EventEmitter<AXPagerStateChangedEvent>();\r\n\r\n constructor(\r\n private _elementRef: ElementRef,\r\n private _cdr: ChangeDetectorRef,\r\n @Optional()\r\n @Inject(AXPagedComponent)\r\n private _parent: AXPagedComponent\r\n ) {\r\n super(_elementRef, _cdr);\r\n }\r\n\r\n onInit() {\r\n if (this._parent) {\r\n this._parent.onPageChanged.subscribe((c) => {\r\n this.size = this._parent.pageSize;\r\n this.total = this._parent.totalCount;\r\n this.value = c.value;\r\n });\r\n this.size = this._parent.pageSize;\r\n this.total = this._parent.totalCount;\r\n }\r\n this.goFirstPage();\r\n }\r\n\r\n onViewInit() {\r\n this._emitStateChangedEvent();\r\n }\r\n\r\n _onValueChanged(oldValue: number, newValue: number) {\r\n this._emitStateChangedEvent();\r\n }\r\n\r\n _getValue(value: any) {\r\n if (!isNumber(value) || !value || this.totalPages == 0)\r\n return 1\r\n return value > this.totalPages ? this.totalPages : value;\r\n }\r\n\r\n public get state(): AXDataPagerInfoData {\r\n const skip = Math.max(0, (this.value - 1) * this.size);\r\n const result = {\r\n page: this.value,\r\n totalItems: this.total,\r\n totalPages: this.totalPages,\r\n range: {\r\n from: skip + 1,\r\n to: Math.min(this.value * this.size, this.total),\r\n },\r\n skip,\r\n take: this.size,\r\n };\r\n return result;\r\n }\r\n\r\n private _emitStateChangedEvent(): void {\r\n this.totalPages = Math.ceil(this._total / this.size);\r\n //\r\n this.onStateChanged.emit(\r\n Object.assign(\r\n {\r\n component: this,\r\n htmlElement: this._elementRef.nativeElement,\r\n },\r\n this.state\r\n )\r\n );\r\n if (this.totalPages > 0)\r\n this._parent?.goToPage(this.value);\r\n }\r\n\r\n goNextPage(): void {\r\n this.goToPage(Math.min(++this.value, this.totalPages));\r\n }\r\n\r\n goLastPage(): void {\r\n this.goToPage(this.totalPages);\r\n }\r\n\r\n goFirstPage(): void {\r\n this.goToPage(1);\r\n }\r\n\r\n goPrevPage(): void {\r\n this.goToPage(Math.max(--this.value, 1));\r\n }\r\n\r\n goToPage(page: number): void {\r\n if (page != this.value) {\r\n this.value = page;\r\n }\r\n }\r\n}\r\n","<ng-container [ngSwitch]=\"displayMode\">\r\n <ng-container *ngSwitchCase=\"'full'\">\r\n <ax-prefix>\r\n <ax-data-pager-numeric-selector>\r\n </ax-data-pager-numeric-selector>\r\n <ax-data-pager-page-sizes>\r\n </ax-data-pager-page-sizes>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <ax-data-pager-info>\r\n </ax-data-pager-info>\r\n </ax-suffix>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'compact'\">\r\n <ax-prefix>\r\n <ax-data-pager-prev-buttons>\r\n </ax-data-pager-prev-buttons>\r\n <ax-data-pager-input-selector>\r\n </ax-data-pager-input-selector>\r\n <ax-data-pager-next-buttons>\r\n </ax-data-pager-next-buttons>\r\n </ax-prefix>\r\n <ax-suffix>\r\n <ax-data-pager-info>\r\n </ax-data-pager-info>\r\n </ax-suffix>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <ng-content select=\"ax-prefix\"></ng-content>\r\n <ng-content select=\"ax-suffix\"></ng-content>\r\n </ng-container>\r\n</ng-container>\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AXDataPagerComponent } from './data-pager.component';\r\nimport { AXDataPagerNextButtonsComponent } from './data-pager-next-buttons.components';\r\nimport { AXDataPagerPrevButtonsComponent } from './data-pager-prev-buttons.component';\r\nimport { AXDataPagerPageSizesComponent } from './data-pager-pagesize-dropdown.component';\r\nimport { AXDataPagerNumericSelectorComponent } from './data-pager-numeric-selector.component';\r\nimport { AXDataPagerInputSelectorComponent } from './data-pager-input-selector.component';\r\nimport { AXDataPagerInfoComponent } from './data-pager-info.component';\r\nimport { AXButtonModule } from '@acorex/components/button';\r\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\r\nimport { AXDropdownModule } from '@acorex/components/dropdown';\r\nimport { AXDecoratorModule } from '@acorex/components/decorators';\r\n\r\nconst COMPONENT = [\r\n AXDataPagerComponent,\r\n AXDataPagerNextButtonsComponent,\r\n AXDataPagerPrevButtonsComponent,\r\n AXDataPagerPageSizesComponent,\r\n AXDataPagerNumericSelectorComponent,\r\n AXDataPagerInputSelectorComponent,\r\n AXDataPagerInfoComponent\r\n];\r\nconst MODULES = [CommonModule, AXButtonModule, AXNumberBoxModule,AXDropdownModule,AXDecoratorModule];\r\n\r\n@NgModule({\r\n declarations: [...COMPONENT],\r\n imports: [...MODULES],\r\n exports: [...COMPONENT],\r\n providers: [],\r\n})\r\nexport class AXDataPagerModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i3","i4","i2","i3.AXDataPagerNextButtonsComponent","i4.AXDataPagerPrevButtonsComponent","i5.AXDataPagerPageSizesComponent","i6.AXDataPagerNumericSelectorComponent","i7.AXDataPagerInputSelectorComponent","i8.AXDataPagerInfoComponent"],"mappings":"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"}
|
@@ -794,6 +794,7 @@ function _SelectionComponenetMixin(Base) {
|
|
794
794
|
else {
|
795
795
|
this._value = Array.isArray(v) ? v[0] : v;
|
796
796
|
}
|
797
|
+
this._renderSelection();
|
797
798
|
this.valueChange.emit(this._value);
|
798
799
|
this.onValueChanged.emit({
|
799
800
|
component: this,
|
@@ -812,7 +813,6 @@ function _SelectionComponenetMixin(Base) {
|
|
812
813
|
this.validate();
|
813
814
|
}
|
814
815
|
}
|
815
|
-
this._renderSelection();
|
816
816
|
}
|
817
817
|
}
|
818
818
|
get selectedItems() {
|
@@ -891,6 +891,7 @@ function _SelectionComponenetMixin(Base) {
|
|
891
891
|
}
|
892
892
|
}
|
893
893
|
selectItems(...items) {
|
894
|
+
debugger;
|
894
895
|
if (items && items.length) {
|
895
896
|
if (this.multiple) {
|
896
897
|
this.value = (this.value || []).concat(items.map(c => this._getItemByDataMode(c)));
|
@@ -1019,6 +1020,7 @@ function _ValueComponenetMixin(Base) {
|
|
1019
1020
|
*/
|
1020
1021
|
this.onValueChanged = new EventEmitter();
|
1021
1022
|
this.valueChange = new EventEmitter();
|
1023
|
+
this.stateChange = new EventEmitter();
|
1022
1024
|
_readonly.set(this, false);
|
1023
1025
|
_allowNull.set(this, true);
|
1024
1026
|
_name.set(this, void 0);
|
@@ -1056,11 +1058,11 @@ function _ValueComponenetMixin(Base) {
|
|
1056
1058
|
set value(v) {
|
1057
1059
|
v = this._internalSetValue(v);
|
1058
1060
|
//if (!this._isInited ) {
|
1059
|
-
const old =
|
1061
|
+
const old = AXObjectUtil.deepJSONClone(this.value);
|
1060
1062
|
// TODO: check real equality
|
1061
1063
|
if (v != old) {
|
1062
1064
|
__classPrivateFieldSet(this, _value, v, "f");
|
1063
|
-
this._emitOnValueChangedEvent(old,
|
1065
|
+
this._emitOnValueChangedEvent(old, this.value);
|
1064
1066
|
this._cdr.markForCheck();
|
1065
1067
|
if (v == null ||
|
1066
1068
|
v == undefined ||
|
@@ -1080,6 +1082,10 @@ function _ValueComponenetMixin(Base) {
|
|
1080
1082
|
get state() {
|
1081
1083
|
return __classPrivateFieldGet(this, _state, "f");
|
1082
1084
|
}
|
1085
|
+
set state(value) {
|
1086
|
+
this._setState(value);
|
1087
|
+
this.stateChange.emit(value);
|
1088
|
+
}
|
1083
1089
|
_emitOnValueChangedEvent(oldValue, newValue) {
|
1084
1090
|
this.valueChange.emit(newValue);
|
1085
1091
|
this.onValueChanged.emit({
|
@@ -1210,15 +1216,7 @@ function _ValueComponenetMixin(Base) {
|
|
1210
1216
|
_value = new WeakMap(),
|
1211
1217
|
_state = new WeakMap(),
|
1212
1218
|
_a;
|
1213
|
-
}
|
1214
|
-
const VALUE_INPUTS = [
|
1215
|
-
'readonly',
|
1216
|
-
'allowNull',
|
1217
|
-
'value',
|
1218
|
-
'name',
|
1219
|
-
'checked',
|
1220
|
-
];
|
1221
|
-
const VALUE_OUTPUT = ['valueChange', 'onValueChanged'];
|
1219
|
+
}
|
1222
1220
|
|
1223
1221
|
const AXBaseComponentMixin = _BaseComponenetMixin(AXBaseComponent);
|
1224
1222
|
const AXSizableComponentMixin = _SizableComponenetMixin(_BaseComponenetMixin(AXBaseComponent));
|
@@ -1249,6 +1247,6 @@ function _PageComponenetMixin(Base) {
|
|
1249
1247
|
* Generated bundle index. Do not edit.
|
1250
1248
|
*/
|
1251
1249
|
|
1252
|
-
export { AXAvatarMixin, AXBaseButtonMixin, AXBaseClickableMixin, AXBaseComponent, AXBaseComponentMixin, AXBaseDropdownMixin, AXBaseMenuMixin, AXBaseSelectionDropdownMixin, AXBaseSelectionValueMixin, AXBaseTextBoxMixin, AXBaseValueComponentMixin, AXBaseValueDropdownMixin, AXInteractiveComponenetMixin, AXSizableComponentMixin, BASEMENU_INPUTS, BASEMENU_OUTPUT, BASE_INPUTS, BASE_OUTPUT, BUTTON_INPUTS, BUTTON_OUTPUT, COLOR_LOOK_INPUTS, COLOR_LOOK_OUTPUT, DATALIST_INPUTS, DATALIST_OUTPUT, DROPDOWN_INPUTS, DROPDOWN_OUTPUT, INTERACTIVE_INPUTS, INTERACTIVE_OUTPUT, SELECTION_INPUTS, SELECTION_OUTPUT, SIZABLE_INPUTS, SIZABLE_OUTPUT, TEXTBOX_INPUTS, TEXTBOX_OUTPUT,
|
1250
|
+
export { AXAvatarMixin, AXBaseButtonMixin, AXBaseClickableMixin, AXBaseComponent, AXBaseComponentMixin, AXBaseDropdownMixin, AXBaseMenuMixin, AXBaseSelectionDropdownMixin, AXBaseSelectionValueMixin, AXBaseTextBoxMixin, AXBaseValueComponentMixin, AXBaseValueDropdownMixin, AXInteractiveComponenetMixin, AXSizableComponentMixin, BASEMENU_INPUTS, BASEMENU_OUTPUT, BASE_INPUTS, BASE_OUTPUT, BUTTON_INPUTS, BUTTON_OUTPUT, COLOR_LOOK_INPUTS, COLOR_LOOK_OUTPUT, DATALIST_INPUTS, DATALIST_OUTPUT, DROPDOWN_INPUTS, DROPDOWN_OUTPUT, INTERACTIVE_INPUTS, INTERACTIVE_OUTPUT, SELECTION_INPUTS, SELECTION_OUTPUT, SIZABLE_INPUTS, SIZABLE_OUTPUT, TEXTBOX_INPUTS, TEXTBOX_OUTPUT, _BaseComponenetMixin, _BaseMenuComponentMixin, _ButtonComponentMixin, _ClickableComponenetMixin, _ColorLookComponentMixin, _DatalistComponenetMixin, _DropdownComponenetMixin, _InteractiveComponenetMixin, _LoadingComponenetMixin, _PageComponenetMixin, _SelectionComponenetMixin, _SizableComponenetMixin, _TextboxComponenetMixin, _ValueComponenetMixin };
|
1253
1251
|
//# sourceMappingURL=acorex-components-mixin.mjs.map
|
1254
1252
|
//# sourceMappingURL=acorex-components-mixin.mjs.map
|