@acorex/cdk 21.0.2-next.4 → 21.0.2-next.41

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.
Files changed (54) hide show
  1. package/fesm2022/acorex-cdk-accordion.mjs +35 -35
  2. package/fesm2022/acorex-cdk-accordion.mjs.map +1 -1
  3. package/fesm2022/acorex-cdk-carousel.mjs +4 -4
  4. package/fesm2022/acorex-cdk-carousel.mjs.map +1 -1
  5. package/fesm2022/acorex-cdk-clipboard.mjs +7 -7
  6. package/fesm2022/acorex-cdk-clipboard.mjs.map +1 -1
  7. package/fesm2022/acorex-cdk-common.mjs +102 -103
  8. package/fesm2022/acorex-cdk-common.mjs.map +1 -1
  9. package/fesm2022/acorex-cdk-dom.mjs +3 -3
  10. package/fesm2022/acorex-cdk-double-click.mjs +5 -5
  11. package/fesm2022/acorex-cdk-double-click.mjs.map +1 -1
  12. package/fesm2022/acorex-cdk-drag-drop.mjs +68 -68
  13. package/fesm2022/acorex-cdk-drag-drop.mjs.map +1 -1
  14. package/fesm2022/acorex-cdk-drawer.mjs +35 -35
  15. package/fesm2022/acorex-cdk-drawer.mjs.map +1 -1
  16. package/fesm2022/acorex-cdk-focus-trap.mjs +19 -19
  17. package/fesm2022/acorex-cdk-focus-trap.mjs.map +1 -1
  18. package/fesm2022/acorex-cdk-full-screen.mjs +4 -4
  19. package/fesm2022/acorex-cdk-full-screen.mjs.map +1 -1
  20. package/fesm2022/acorex-cdk-input-mask.mjs +19 -13
  21. package/fesm2022/acorex-cdk-input-mask.mjs.map +1 -1
  22. package/fesm2022/acorex-cdk-list-navigation.mjs +17 -17
  23. package/fesm2022/acorex-cdk-list-navigation.mjs.map +1 -1
  24. package/fesm2022/acorex-cdk-outline.mjs +77 -66
  25. package/fesm2022/acorex-cdk-outline.mjs.map +1 -1
  26. package/fesm2022/acorex-cdk-overlay.mjs +16 -3
  27. package/fesm2022/acorex-cdk-overlay.mjs.map +1 -1
  28. package/fesm2022/acorex-cdk-pan-view.mjs +67 -49
  29. package/fesm2022/acorex-cdk-pan-view.mjs.map +1 -1
  30. package/fesm2022/acorex-cdk-resizable.mjs +46 -22
  31. package/fesm2022/acorex-cdk-resizable.mjs.map +1 -1
  32. package/fesm2022/acorex-cdk-selection.mjs +21 -21
  33. package/fesm2022/acorex-cdk-selection.mjs.map +1 -1
  34. package/fesm2022/acorex-cdk-sliding-item.mjs +11 -11
  35. package/fesm2022/acorex-cdk-sliding-item.mjs.map +1 -1
  36. package/fesm2022/acorex-cdk-sticky.mjs +3 -3
  37. package/fesm2022/acorex-cdk-uploader.mjs +298 -188
  38. package/fesm2022/acorex-cdk-uploader.mjs.map +1 -1
  39. package/fesm2022/acorex-cdk-virtual-scroll.mjs +17 -17
  40. package/fesm2022/acorex-cdk-virtual-scroll.mjs.map +1 -1
  41. package/fesm2022/acorex-cdk-wysiwyg.mjs +1 -1
  42. package/fesm2022/acorex-cdk-wysiwyg.mjs.map +1 -1
  43. package/fesm2022/acorex-cdk-z-index.mjs +4 -4
  44. package/fesm2022/acorex-cdk-z-index.mjs.map +1 -1
  45. package/package.json +3 -2
  46. package/types/acorex-cdk-common.d.ts +1 -1
  47. package/types/acorex-cdk-drawer.d.ts +2 -0
  48. package/types/acorex-cdk-focus-trap.d.ts +2 -3
  49. package/types/acorex-cdk-input-mask.d.ts +1 -0
  50. package/types/acorex-cdk-outline.d.ts +1 -0
  51. package/types/acorex-cdk-overlay.d.ts +1 -0
  52. package/types/acorex-cdk-pan-view.d.ts +4 -0
  53. package/types/acorex-cdk-resizable.d.ts +2 -0
  54. package/types/acorex-cdk-uploader.d.ts +120 -110
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-resizable.mjs","sources":["../../../../packages/cdk/resizable/src/lib/resize.directive.ts","../../../../packages/cdk/resizable/src/acorex-cdk-resizable.ts"],"sourcesContent":["import { AXPlatform } from '@acorex/core/platform';\nimport { AXHtmlUtil } from '@acorex/core/utils';\nimport { isPlatformBrowser } from '@angular/common';\nimport {\n AfterViewInit,\n Directive,\n DOCUMENT,\n ElementRef,\n inject,\n model,\n NgZone,\n OnDestroy,\n output,\n PLATFORM_ID,\n signal,\n WritableSignal,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\n@Directive({\n selector: '[axResizable]',\n})\nexport class AXResizableDirective implements AfterViewInit, OnDestroy {\n private readonly el = inject(ElementRef);\n private readonly platformService = inject(AXPlatform);\n private readonly zone = inject(NgZone);\n private readonly document = inject(DOCUMENT);\n private readonly platformID = inject(PLATFORM_ID);\n private readonly isBrowser: boolean;\n \n private hostElement!: HTMLElement;\n private resizeHandle?: HTMLElement;\n private isResizing: WritableSignal<boolean> = signal(false);\n private initialElementWidth = 0;\n private startMoveWidth = 0;\n private subscriptions = new Subscription();\n \n // Bound event handlers to maintain reference for cleanup\n private readonly boundMouseDown = this.onMouseDown.bind(this);\n private readonly boundMouseMove = this.onMouseMove.bind(this);\n private readonly boundMouseUp = this.onMouseUp.bind(this);\n private readonly boundMouseEnter = this.onMouseEnter.bind(this);\n private readonly boundMouseLeave = this.onMouseLeave.bind(this);\n private readonly boundDoubleClick = this.onDoubleClick.bind(this);\n \n private readonly resizeObserver = new ResizeObserver((entries) => {\n const parentElement = this.hostElement.parentElement;\n if (!parentElement) return;\n \n for (const entry of entries) {\n if (entry.target === parentElement && this.maxWidth() === Infinity) {\n this.maxWidth.set(entry.contentRect.width);\n break;\n }\n }\n });\n\n /** Define if directive is active or not */\n axResizable = model(true);\n\n /** Minimum width for the resizable element. */\n minWidth = model(100);\n\n /** Maximum width for the resizable element. Defaults to parent width if not provided. */\n maxWidth = model(Infinity);\n\n /** Behavior on double-click: 'reset' or 'maximize'. */\n dblClickAction = model<'reset' | 'maximize' | 'fit'>('reset');\n\n /** Define initial width for the element. */\n width = model<null | number>(null);\n\n /** Define reset width for the element. */\n defaultWidth = model<null | number>(null);\n\n /** Event emitted when resizing starts. */\n onResizingStarted = output<AXValueChangedEvent<number>>();\n\n /** Event emitted when resizing ends. */\n onResizingEnded = output<AXValueChangedEvent<number>>();\n\n /** Event emitted on double-click. */\n onResizingDblClick = output<AXValueChangedEvent<number>>();\n\n constructor() {\n this.isBrowser = isPlatformBrowser(this.platformID);\n this.hostElement = this.el.nativeElement as HTMLElement;\n \n this.subscriptions.add(\n this.platformService.directionChange.subscribe((i) => {\n this.isRTL.set(i.data === 'rtl');\n if (this.resizeHandle) {\n this.updateHandlePosition();\n }\n })\n );\n }\n\n ngAfterViewInit(): void {\n if (!this.isBrowser) return;\n \n this.initialElementWidth = this.hostElement.offsetWidth;\n\n const initialWidth = this.width();\n if (initialWidth !== null) {\n this.hostElement.style.width = `${initialWidth}px`;\n }\n\n if (this.maxWidth() === Infinity) {\n const parentWidth = this.hostElement.parentElement?.offsetWidth;\n if (parentWidth) {\n this.maxWidth.set(parentWidth);\n }\n }\n \n const parentElement = this.hostElement.parentElement;\n if (parentElement) {\n this.resizeObserver.observe(parentElement);\n }\n \n this.createResizeHandle();\n this.setupResizableState();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n this.resizeObserver.disconnect();\n this.cleanupEventListeners();\n }\n\n private setupResizableState(): void {\n this.subscriptions.add(\n this.axResizable.subscribe((isActive) => {\n if (!isActive) {\n this.resetToInitialWidth();\n this.cleanupEventListeners();\n } else {\n this.createResizeHandle();\n }\n })\n );\n }\n\n private createResizeHandle(): void {\n if (!this.axResizable() || this.resizeHandle) return;\n\n this.hostElement.style.position = 'relative';\n\n this.resizeHandle = this.document.createElement('div');\n this.resizeHandle.classList.add('ax-resizable-handler');\n this.hostElement.appendChild(this.resizeHandle);\n\n this.applyHandleStyles();\n this.attachEventListeners();\n }\n \n private applyHandleStyles(): void {\n if (!this.resizeHandle) return;\n \n Object.assign(this.resizeHandle.style, {\n width: STYLES.handlerWidth,\n backgroundColor: STYLES.backgroundColor,\n position: 'absolute',\n top: '0',\n bottom: '0',\n cursor: STYLES.cursor,\n zIndex: STYLES.zIndex,\n transition: STYLES.transition,\n borderRadius: STYLES.borderRadius,\n userSelect: 'none',\n });\n \n this.updateHandlePosition();\n }\n \n private updateHandlePosition(): void {\n if (!this.resizeHandle) return;\n \n const isRTL = this.isRTL();\n if (isRTL) {\n this.resizeHandle.style.left = '0';\n this.resizeHandle.style.right = '';\n } else {\n this.resizeHandle.style.right = '0';\n this.resizeHandle.style.left = '';\n }\n }\n \n private attachEventListeners(): void {\n if (!this.resizeHandle) return;\n \n const handle = this.resizeHandle;\n this.zone.runOutsideAngular(() => {\n handle.addEventListener('mousedown', this.boundMouseDown);\n handle.addEventListener('mouseenter', this.boundMouseEnter);\n handle.addEventListener('mouseleave', this.boundMouseLeave);\n handle.addEventListener('dblclick', this.boundDoubleClick);\n this.document.addEventListener('mousemove', this.boundMouseMove);\n this.document.addEventListener('mouseup', this.boundMouseUp);\n });\n }\n\n private cleanupEventListeners(): void {\n if (this.resizeHandle) {\n this.resizeHandle.removeEventListener('mousedown', this.boundMouseDown);\n this.resizeHandle.removeEventListener('mouseenter', this.boundMouseEnter);\n this.resizeHandle.removeEventListener('mouseleave', this.boundMouseLeave);\n this.resizeHandle.removeEventListener('dblclick', this.boundDoubleClick);\n this.resizeHandle.remove();\n this.resizeHandle = undefined;\n }\n\n this.document.removeEventListener('mousemove', this.boundMouseMove);\n this.document.removeEventListener('mouseup', this.boundMouseUp);\n this.document.body.style.cursor = '';\n }\n\n private isRTL = signal(AXHtmlUtil.isRtl(this.document.documentElement));\n\n private onMouseDown(event: MouseEvent): void {\n if (!this.resizeHandle) return;\n \n const handleRect = this.resizeHandle.getBoundingClientRect();\n if (event.clientX < handleRect.left || event.clientX > handleRect.right) return;\n \n event.preventDefault();\n \n this.isResizing.set(true);\n this.document.body.style.cursor = STYLES.cursorActive;\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColorActive;\n this.startMoveWidth = this.hostElement.offsetWidth;\n \n this.zone.run(() => {\n this.onResizingStarted.emit({\n component: this,\n htmlElement: this.hostElement,\n isUserInteraction: true,\n name: 'resizingStarted',\n value: this.startMoveWidth,\n oldValue: this.startMoveWidth,\n });\n });\n }\n\n private onMouseMove(event: MouseEvent): void {\n if (!this.isResizing()) return;\n \n const rect = this.hostElement.getBoundingClientRect();\n const isRTL = this.isRTL();\n \n let newWidth = isRTL ? rect.right - event.clientX : event.clientX - rect.left;\n newWidth = Math.max(this.minWidth(), Math.min(newWidth, this.maxWidth()));\n\n if (newWidth !== this.hostElement.offsetWidth) {\n this.hostElement.style.width = `${newWidth}px`;\n }\n }\n\n private onMouseUp(): void {\n if (!this.isResizing() || !this.resizeHandle) return;\n \n this.isResizing.set(false);\n this.document.body.style.cursor = '';\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColor;\n \n const currentWidth = this.hostElement.offsetWidth;\n \n this.zone.run(() => {\n this.onResizingEnded.emit({\n component: this,\n htmlElement: this.hostElement,\n isUserInteraction: true,\n name: 'resizingEnded',\n value: currentWidth,\n oldValue: this.startMoveWidth,\n });\n });\n }\n\n private onMouseEnter(): void {\n if (!this.isResizing() && this.resizeHandle) {\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColorHover;\n }\n }\n\n private onMouseLeave(): void {\n if (!this.isResizing() && this.resizeHandle) {\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColor;\n }\n }\n\n private onDoubleClick(): void {\n const elementWidth = this.hostElement.offsetWidth;\n const action = this.dblClickAction();\n \n let newWidth: number;\n switch (action) {\n case 'reset':\n newWidth = this.resetToInitialWidth();\n break;\n case 'maximize':\n newWidth = this.maximizeToMaxWidth();\n break;\n case 'fit':\n newWidth = this.fitToContent();\n break;\n default:\n newWidth = elementWidth;\n }\n\n this.zone.run(() => {\n this.onResizingDblClick.emit({\n component: this,\n htmlElement: this.hostElement,\n isUserInteraction: true,\n name: 'onResizingDblClick',\n oldValue: elementWidth,\n value: newWidth,\n });\n });\n }\n\n private resetToInitialWidth(): number {\n const defaultWidth = this.defaultWidth();\n if (defaultWidth !== null) {\n this.hostElement.style.width = `${defaultWidth}px`;\n return defaultWidth;\n }\n \n const initialWidth = this.width();\n if (initialWidth !== null) {\n this.hostElement.style.width = `${initialWidth}px`;\n return initialWidth;\n }\n \n this.hostElement.style.width = `${this.initialElementWidth}px`;\n return this.initialElementWidth;\n }\n\n private maximizeToMaxWidth(): number {\n const maxWidth = this.maxWidth();\n if (maxWidth !== Infinity) {\n this.hostElement.style.width = `${maxWidth}px`;\n }\n return maxWidth;\n }\n\n private fitToContent(): number {\n this.hostElement.style.width = 'fit-content';\n return this.hostElement.clientWidth;\n }\n}\n\ninterface AXValueChangedEvent<T> {\n component: unknown;\n htmlElement?: HTMLElement;\n isUserInteraction?: boolean;\n name?: string;\n value?: T;\n oldValue?: T;\n}\n\nconst STYLES = {\n handlerWidth: 'var(--ax-comp-resizable-handler-width, 4px)',\n backgroundColor: 'rgba(var(--ax-comp-resizable-background-color))',\n backgroundColorActive: 'rgba(var(--ax-comp-resizable-background-color-active, var(--ax-sys-color-primary-surface)))',\n backgroundColorHover:\n 'rgba(var(--ax-comp-resizable-background-color-hover, var(--ax-sys-color-primary-light-surface)))',\n cursor: 'var(--ax-comp-resizable-cursor, ew-resize)',\n cursorActive: 'var(--ax-comp-resizable-cursor-active, ew-resize)',\n zIndex: 'var(--ax-comp-resizable-z-index, 999)',\n transition:\n 'var(--ax-comp-resizable-transition, background-color --ax-sys-transition-duration --ax-sys-transition-timing-function)',\n borderRadius: 'var(--ax-comp-resizable-border-radius, --ax-sys-border-radius)',\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-cdk-resizable.mjs","sources":["../../../../packages/cdk/resizable/src/lib/resize.directive.ts","../../../../packages/cdk/resizable/src/acorex-cdk-resizable.ts"],"sourcesContent":["import { AXPlatform } from '@acorex/core/platform';\nimport { AXHtmlUtil } from '@acorex/core/utils';\nimport { isPlatformBrowser } from '@angular/common';\nimport {\n AfterViewInit,\n Directive,\n DOCUMENT,\n effect,\n ElementRef,\n inject,\n model,\n NgZone,\n OnDestroy,\n output,\n PLATFORM_ID,\n signal,\n WritableSignal,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\n@Directive({\n selector: '[axResizable]',\n})\nexport class AXResizableDirective implements AfterViewInit, OnDestroy {\n private readonly el = inject(ElementRef);\n private readonly platformService = inject(AXPlatform);\n private readonly zone = inject(NgZone);\n private readonly document = inject(DOCUMENT);\n private readonly platformID = inject(PLATFORM_ID);\n private readonly isBrowser: boolean;\n \n private hostElement!: HTMLElement;\n private resizeHandle?: HTMLElement;\n private isResizing: WritableSignal<boolean> = signal(false);\n private initialElementWidth = 0;\n private startMoveWidth = 0;\n private subscriptions = new Subscription();\n \n // Bound event handlers to maintain reference for cleanup\n private readonly boundMouseDown = this.onMouseDown.bind(this);\n private readonly boundMouseMove = this.onMouseMove.bind(this);\n private readonly boundMouseUp = this.onMouseUp.bind(this);\n private readonly boundMouseEnter = this.onMouseEnter.bind(this);\n private readonly boundMouseLeave = this.onMouseLeave.bind(this);\n private readonly boundDoubleClick = this.onDoubleClick.bind(this);\n \n private readonly resizeObserver = new ResizeObserver((entries) => {\n const parentElement = this.hostElement.parentElement;\n if (!parentElement) return;\n \n for (const entry of entries) {\n if (entry.target === parentElement && this.maxWidth() === Infinity) {\n this.maxWidth.set(entry.contentRect.width);\n break;\n }\n }\n });\n\n /** Define if directive is active or not */\n axResizable = model(true);\n\n /** Minimum width for the resizable element. */\n minWidth = model(100);\n\n /** Maximum width for the resizable element. Defaults to parent width if not provided. */\n maxWidth = model(Infinity);\n\n /** Behavior on double-click: 'reset' or 'maximize'. */\n dblClickAction = model<'reset' | 'maximize' | 'fit'>('reset');\n\n /** Define initial width for the element. */\n width = model<null | number>(null);\n\n /** Define reset width for the element. */\n defaultWidth = model<null | number>(null);\n\n /** Event emitted when resizing starts. */\n onResizingStarted = output<AXValueChangedEvent<number>>();\n\n /** Event emitted when resizing ends. */\n onResizingEnded = output<AXValueChangedEvent<number>>();\n\n /** Event emitted on double-click. */\n onResizingDblClick = output<AXValueChangedEvent<number>>();\n\n constructor() {\n this.isBrowser = isPlatformBrowser(this.platformID);\n this.hostElement = this.el.nativeElement as HTMLElement;\n \n this.subscriptions.add(\n this.platformService.directionChange.subscribe((i) => {\n this.isRTL.set(i.data === 'rtl');\n if (this.resizeHandle) {\n this.updateHandlePosition();\n }\n })\n );\n\n if (this.isBrowser) {\n effect(() => {\n if (this.isResizing()) {\n return;\n }\n const resolvedWidth = this.width() ?? this.defaultWidth();\n if (resolvedWidth !== null) {\n this.applyElementWidth(resolvedWidth);\n }\n });\n }\n }\n\n ngAfterViewInit(): void {\n if (!this.isBrowser) return;\n \n this.initialElementWidth = this.hostElement.offsetWidth;\n\n this.applyWidthFromModel();\n\n if (this.maxWidth() === Infinity) {\n const parentWidth = this.hostElement.parentElement?.offsetWidth;\n if (parentWidth) {\n this.maxWidth.set(parentWidth);\n }\n }\n \n const parentElement = this.hostElement.parentElement;\n if (parentElement) {\n this.resizeObserver.observe(parentElement);\n }\n \n this.createResizeHandle();\n this.setupResizableState();\n }\n\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n this.resizeObserver.disconnect();\n this.cleanupEventListeners();\n }\n\n private setupResizableState(): void {\n this.subscriptions.add(\n this.axResizable.subscribe((isActive) => {\n if (!isActive) {\n this.applyWidthFromModel();\n this.cleanupEventListeners();\n } else {\n this.applyWidthFromModel();\n this.createResizeHandle();\n }\n })\n );\n }\n\n private applyWidthFromModel(): void {\n const width = this.width();\n if (width !== null) {\n this.applyElementWidth(width);\n return;\n }\n const defaultWidth = this.defaultWidth();\n if (defaultWidth !== null) {\n this.applyElementWidth(defaultWidth);\n }\n }\n\n private applyElementWidth(width: number): void {\n this.hostElement.style.width = `${width}px`;\n }\n\n private createResizeHandle(): void {\n if (!this.axResizable() || this.resizeHandle) return;\n\n this.hostElement.style.position = 'relative';\n\n this.resizeHandle = this.document.createElement('div');\n this.resizeHandle.classList.add('ax-resizable-handler');\n this.hostElement.appendChild(this.resizeHandle);\n\n this.applyHandleStyles();\n this.attachEventListeners();\n }\n \n private applyHandleStyles(): void {\n if (!this.resizeHandle) return;\n \n Object.assign(this.resizeHandle.style, {\n width: STYLES.handlerWidth,\n backgroundColor: STYLES.backgroundColor,\n position: 'absolute',\n top: '0',\n bottom: '0',\n cursor: STYLES.cursor,\n zIndex: STYLES.zIndex,\n transition: STYLES.transition,\n borderRadius: STYLES.borderRadius,\n userSelect: 'none',\n });\n \n this.updateHandlePosition();\n }\n \n private updateHandlePosition(): void {\n if (!this.resizeHandle) return;\n \n const isRTL = this.isRTL();\n if (isRTL) {\n this.resizeHandle.style.left = '0';\n this.resizeHandle.style.right = '';\n } else {\n this.resizeHandle.style.right = '0';\n this.resizeHandle.style.left = '';\n }\n }\n \n private attachEventListeners(): void {\n if (!this.resizeHandle) return;\n \n const handle = this.resizeHandle;\n this.zone.runOutsideAngular(() => {\n handle.addEventListener('mousedown', this.boundMouseDown);\n handle.addEventListener('mouseenter', this.boundMouseEnter);\n handle.addEventListener('mouseleave', this.boundMouseLeave);\n handle.addEventListener('dblclick', this.boundDoubleClick);\n this.document.addEventListener('mousemove', this.boundMouseMove);\n this.document.addEventListener('mouseup', this.boundMouseUp);\n });\n }\n\n private cleanupEventListeners(): void {\n if (this.resizeHandle) {\n this.resizeHandle.removeEventListener('mousedown', this.boundMouseDown);\n this.resizeHandle.removeEventListener('mouseenter', this.boundMouseEnter);\n this.resizeHandle.removeEventListener('mouseleave', this.boundMouseLeave);\n this.resizeHandle.removeEventListener('dblclick', this.boundDoubleClick);\n this.resizeHandle.remove();\n this.resizeHandle = undefined;\n }\n\n this.document.removeEventListener('mousemove', this.boundMouseMove);\n this.document.removeEventListener('mouseup', this.boundMouseUp);\n this.document.body.style.cursor = '';\n }\n\n private isRTL = signal(AXHtmlUtil.isRtl(this.document.documentElement));\n\n private onMouseDown(event: MouseEvent): void {\n if (!this.resizeHandle) return;\n \n const handleRect = this.resizeHandle.getBoundingClientRect();\n if (event.clientX < handleRect.left || event.clientX > handleRect.right) return;\n \n event.preventDefault();\n \n this.isResizing.set(true);\n this.document.body.style.cursor = STYLES.cursorActive;\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColorActive;\n this.startMoveWidth = this.hostElement.offsetWidth;\n \n this.zone.run(() => {\n this.onResizingStarted.emit({\n component: this,\n htmlElement: this.hostElement,\n isUserInteraction: true,\n name: 'resizingStarted',\n value: this.startMoveWidth,\n oldValue: this.startMoveWidth,\n });\n });\n }\n\n private onMouseMove(event: MouseEvent): void {\n if (!this.isResizing()) return;\n \n const rect = this.hostElement.getBoundingClientRect();\n const isRTL = this.isRTL();\n \n let newWidth = isRTL ? rect.right - event.clientX : event.clientX - rect.left;\n newWidth = Math.max(this.minWidth(), Math.min(newWidth, this.maxWidth()));\n\n if (newWidth !== this.hostElement.offsetWidth) {\n this.hostElement.style.width = `${newWidth}px`;\n }\n }\n\n private onMouseUp(): void {\n if (!this.isResizing() || !this.resizeHandle) return;\n\n this.document.body.style.cursor = '';\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColor;\n\n const currentWidth = this.hostElement.offsetWidth;\n\n this.zone.run(() => {\n this.width.set(currentWidth);\n this.onResizingEnded.emit({\n component: this,\n htmlElement: this.hostElement,\n isUserInteraction: true,\n name: 'resizingEnded',\n value: currentWidth,\n oldValue: this.startMoveWidth,\n });\n });\n\n this.isResizing.set(false);\n }\n\n private onMouseEnter(): void {\n if (!this.isResizing() && this.resizeHandle) {\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColorHover;\n }\n }\n\n private onMouseLeave(): void {\n if (!this.isResizing() && this.resizeHandle) {\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColor;\n }\n }\n\n private onDoubleClick(): void {\n const elementWidth = this.hostElement.offsetWidth;\n const action = this.dblClickAction();\n \n let newWidth: number;\n switch (action) {\n case 'reset':\n newWidth = this.resetToInitialWidth();\n break;\n case 'maximize':\n newWidth = this.maximizeToMaxWidth();\n break;\n case 'fit':\n newWidth = this.fitToContent();\n break;\n default:\n newWidth = elementWidth;\n }\n\n this.zone.run(() => {\n this.onResizingDblClick.emit({\n component: this,\n htmlElement: this.hostElement,\n isUserInteraction: true,\n name: 'onResizingDblClick',\n oldValue: elementWidth,\n value: newWidth,\n });\n });\n }\n\n private resetToInitialWidth(): number {\n const defaultWidth = this.defaultWidth();\n if (defaultWidth !== null) {\n this.applyElementWidth(defaultWidth);\n return defaultWidth;\n }\n\n const initialWidth = this.width();\n if (initialWidth !== null) {\n this.applyElementWidth(initialWidth);\n return initialWidth;\n }\n\n this.applyElementWidth(this.initialElementWidth);\n return this.initialElementWidth;\n }\n\n private maximizeToMaxWidth(): number {\n const maxWidth = this.maxWidth();\n if (maxWidth !== Infinity) {\n this.applyElementWidth(maxWidth);\n }\n return maxWidth;\n }\n\n private fitToContent(): number {\n this.hostElement.style.width = 'fit-content';\n return this.hostElement.clientWidth;\n }\n}\n\ninterface AXValueChangedEvent<T> {\n component: unknown;\n htmlElement?: HTMLElement;\n isUserInteraction?: boolean;\n name?: string;\n value?: T;\n oldValue?: T;\n}\n\nconst STYLES = {\n handlerWidth: 'var(--ax-comp-resizable-handler-width, 4px)',\n backgroundColor: 'rgba(var(--ax-comp-resizable-background-color))',\n backgroundColorActive: 'rgba(var(--ax-comp-resizable-background-color-active, var(--ax-sys-color-primary-surface)))',\n backgroundColorHover:\n 'rgba(var(--ax-comp-resizable-background-color-hover, var(--ax-sys-color-primary-light-surface)))',\n cursor: 'var(--ax-comp-resizable-cursor, ew-resize)',\n cursorActive: 'var(--ax-comp-resizable-cursor-active, ew-resize)',\n zIndex: 'var(--ax-comp-resizable-z-index, 999)',\n transition:\n 'var(--ax-comp-resizable-transition, background-color --ax-sys-transition-duration --ax-sys-transition-timing-function)',\n borderRadius: 'var(--ax-comp-resizable-border-radius, --ax-sys-border-radius)',\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -5,10 +5,10 @@ import { CommonModule } from '@angular/common';
5
5
  class AXSelectionItemDirective {
6
6
  constructor() {
7
7
  this.elm = inject(ElementRef);
8
- this.isActive = signal(false, ...(ngDevMode ? [{ debugName: "isActive" }] : []));
8
+ this.isActive = signal(false, ...(ngDevMode ? [{ debugName: "isActive" }] : /* istanbul ignore next */ []));
9
9
  this.onClick = output();
10
- this.key = input.required(...(ngDevMode ? [{ debugName: "key" }] : []));
11
- this.disable = model(false, ...(ngDevMode ? [{ debugName: "disable" }] : []));
10
+ this.key = input.required(...(ngDevMode ? [{ debugName: "key" }] : /* istanbul ignore next */ []));
11
+ this.disable = model(false, ...(ngDevMode ? [{ debugName: "disable" }] : /* istanbul ignore next */ []));
12
12
  this.#init = afterNextRender(() => {
13
13
  this.elm.nativeElement.onclick = (e) => {
14
14
  e.stopPropagation();
@@ -36,10 +36,10 @@ class AXSelectionItemDirective {
36
36
  return;
37
37
  this.isActive.set(false);
38
38
  }
39
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXSelectionItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
40
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.3", type: AXSelectionItemDirective, isStandalone: true, selector: "[axSelectionItem]", inputs: { key: { classPropertyName: "key", publicName: "key", isSignal: true, isRequired: true, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick", disable: "disableChange" }, exportAs: ["axSelectionItem"], ngImport: i0 }); }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSelectionItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
40
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.9", type: AXSelectionItemDirective, isStandalone: true, selector: "[axSelectionItem]", inputs: { key: { classPropertyName: "key", publicName: "key", isSignal: true, isRequired: true, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick", disable: "disableChange" }, exportAs: ["axSelectionItem"], ngImport: i0 }); }
41
41
  }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXSelectionItemDirective, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSelectionItemDirective, decorators: [{
43
43
  type: Directive,
44
44
  args: [{
45
45
  selector: '[axSelectionItem]',
@@ -49,11 +49,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
49
49
 
50
50
  class AXSelectionGroupDirective {
51
51
  constructor() {
52
- this.currentSelectedKey = signal(null, ...(ngDevMode ? [{ debugName: "currentSelectedKey" }] : []));
53
- this.multiple = input(false, ...(ngDevMode ? [{ debugName: "multiple" }] : []));
54
- this.disable = input(false, ...(ngDevMode ? [{ debugName: "disable" }] : []));
55
- this.selectedKeys = model(...(ngDevMode ? [undefined, { debugName: "selectedKeys" }] : []));
56
- this.selectionItemsClass = contentChildren(AXSelectionItemDirective, { ...(ngDevMode ? { debugName: "selectionItemsClass" } : {}), descendants: true });
52
+ this.currentSelectedKey = signal(null, ...(ngDevMode ? [{ debugName: "currentSelectedKey" }] : /* istanbul ignore next */ []));
53
+ this.multiple = input(false, ...(ngDevMode ? [{ debugName: "multiple" }] : /* istanbul ignore next */ []));
54
+ this.disable = input(false, ...(ngDevMode ? [{ debugName: "disable" }] : /* istanbul ignore next */ []));
55
+ this.selectedKeys = model(...(ngDevMode ? [undefined, { debugName: "selectedKeys" }] : /* istanbul ignore next */ []));
56
+ this.selectionItemsClass = contentChildren(AXSelectionItemDirective, { ...(ngDevMode ? { debugName: "selectionItemsClass" } : /* istanbul ignore next */ {}), descendants: true });
57
57
  this.#init = afterNextRender(() => {
58
58
  this.selectionItemsClass().forEach((element) => {
59
59
  element.onClick.subscribe((e) => {
@@ -69,7 +69,7 @@ class AXSelectionGroupDirective {
69
69
  setTimeout(() => {
70
70
  this.setActiveKey();
71
71
  });
72
- }, ...(ngDevMode ? [{ debugName: "#eff" }] : []));
72
+ }, ...(ngDevMode ? [{ debugName: "#eff" }] : /* istanbul ignore next */ []));
73
73
  this.#effect2 = effect(() => {
74
74
  if (this.disable())
75
75
  return;
@@ -81,7 +81,7 @@ class AXSelectionGroupDirective {
81
81
  this.activeItemByKey(this.selectedKeys());
82
82
  }
83
83
  });
84
- }, ...(ngDevMode ? [{ debugName: "#effect2" }] : []));
84
+ }, ...(ngDevMode ? [{ debugName: "#effect2" }] : /* istanbul ignore next */ []));
85
85
  this.#effect3 = effect(() => {
86
86
  if (this.disable()) {
87
87
  this.selectionItemsClass().forEach((element) => {
@@ -93,7 +93,7 @@ class AXSelectionGroupDirective {
93
93
  element.disable.set(false);
94
94
  });
95
95
  }
96
- }, ...(ngDevMode ? [{ debugName: "#effect3" }] : []));
96
+ }, ...(ngDevMode ? [{ debugName: "#effect3" }] : /* istanbul ignore next */ []));
97
97
  }
98
98
  #init;
99
99
  #eff;
@@ -155,10 +155,10 @@ class AXSelectionGroupDirective {
155
155
  this.selectionItemsClass()[item].isActive.set(true);
156
156
  });
157
157
  }
158
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXSelectionGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
159
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.1.3", type: AXSelectionGroupDirective, isStandalone: true, selector: "[axSelectionGroup]", inputs: { multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, selectedKeys: { classPropertyName: "selectedKeys", publicName: "selectedKeys", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedKeys: "selectedKeysChange" }, queries: [{ propertyName: "selectionItemsClass", predicate: AXSelectionItemDirective, descendants: true, isSignal: true }], exportAs: ["axSelectionGroup"], ngImport: i0 }); }
158
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSelectionGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
159
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.2.9", type: AXSelectionGroupDirective, isStandalone: true, selector: "[axSelectionGroup]", inputs: { multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, selectedKeys: { classPropertyName: "selectedKeys", publicName: "selectedKeys", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedKeys: "selectedKeysChange" }, queries: [{ propertyName: "selectionItemsClass", predicate: AXSelectionItemDirective, descendants: true, isSignal: true }], exportAs: ["axSelectionGroup"], ngImport: i0 }); }
160
160
  }
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXSelectionGroupDirective, decorators: [{
161
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSelectionGroupDirective, decorators: [{
162
162
  type: Directive,
163
163
  args: [{
164
164
  selector: '[axSelectionGroup]',
@@ -169,11 +169,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImpor
169
169
  const COMPONENT = [AXSelectionGroupDirective, AXSelectionItemDirective];
170
170
  const MODULES = [CommonModule];
171
171
  class AXSelectionCdkModule {
172
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXSelectionCdkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
173
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.3", ngImport: i0, type: AXSelectionCdkModule, imports: [CommonModule, AXSelectionGroupDirective, AXSelectionItemDirective], exports: [AXSelectionGroupDirective, AXSelectionItemDirective] }); }
174
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXSelectionCdkModule, imports: [MODULES] }); }
172
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSelectionCdkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
173
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: AXSelectionCdkModule, imports: [CommonModule, AXSelectionGroupDirective, AXSelectionItemDirective], exports: [AXSelectionGroupDirective, AXSelectionItemDirective] }); }
174
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSelectionCdkModule, imports: [MODULES] }); }
175
175
  }
176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXSelectionCdkModule, decorators: [{
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSelectionCdkModule, decorators: [{
177
177
  type: NgModule,
178
178
  args: [{
179
179
  imports: [...MODULES, ...COMPONENT],
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-selection.mjs","sources":["../../../../packages/cdk/selection/src/lib/selection-item.directive.ts","../../../../packages/cdk/selection/src/lib/selection-group.directive.ts","../../../../packages/cdk/selection/src/lib/selection.module.ts","../../../../packages/cdk/selection/src/acorex-cdk-selection.ts"],"sourcesContent":["import { afterNextRender, Directive, ElementRef, inject, input, model, output, signal } from '@angular/core';\n\n@Directive({\n selector: '[axSelectionItem]',\n exportAs: 'axSelectionItem',\n})\nexport class AXSelectionItemDirective {\n private elm = inject(ElementRef);\n isActive = signal(false);\n onClick = output<{ sender: AXSelectionItemDirective }>();\n key = input.required<string | number>();\n disable = model(false);\n\n #init = afterNextRender(() => {\n (this.elm.nativeElement as HTMLElement).onclick = (e: MouseEvent) => {\n e.stopPropagation();\n e.preventDefault();\n this.toggle();\n if (this.disable()) return;\n this.onClick.emit({ sender: this });\n };\n });\n\n public toggle() {\n if (this.disable()) return;\n this.isActive.update((prev) => !prev);\n }\n public select() {\n if (this.disable()) return;\n this.isActive.set(true);\n }\n public unselect() {\n if (this.disable()) return;\n this.isActive.set(false);\n }\n}\n","import { afterNextRender, contentChildren, Directive, effect, input, model, signal } from '@angular/core';\nimport { AXSelectionItemDirective } from './selection-item.directive';\n\nexport type AXSelectionGroupSelectedKeys = unknown | unknown[];\n\n@Directive({\n selector: '[axSelectionGroup]',\n exportAs: 'axSelectionGroup',\n})\nexport class AXSelectionGroupDirective {\n private currentSelectedKey = signal<number | string>(null);\n multiple = input(false);\n disable = input(false);\n selectedKeys = model<AXSelectionGroupSelectedKeys>();\n selectionItemsClass = contentChildren(AXSelectionItemDirective, { descendants: true });\n\n #init = afterNextRender(() => {\n this.selectionItemsClass().forEach((element) => {\n element.onClick.subscribe((e) => {\n if (this.disable()) return;\n this.currentSelectedKey.set(e.sender.key());\n this.setActiveKey();\n });\n });\n });\n\n #eff = effect(() => {\n void this.multiple();\n setTimeout(() => {\n this.setActiveKey();\n });\n });\n\n #effect2 = effect(() => {\n if (this.disable()) return;\n setTimeout(() => {\n if (!this.selectedKeys()) {\n this.selectFirstItem();\n } else {\n this.activeItemByKey(this.selectedKeys());\n }\n });\n });\n\n #effect3 = effect(() => {\n if (this.disable()) {\n this.selectionItemsClass().forEach((element) => {\n element.disable.set(true);\n });\n } else {\n this.selectionItemsClass().forEach((element) => {\n element.disable.set(false);\n });\n }\n });\n\n private setActiveKey() {\n if (this.multiple()) {\n const selectedKeys = [];\n this.selectionItemsClass().forEach((item) => {\n if (item.isActive()) {\n selectedKeys.push(item.key());\n }\n });\n this.selectedKeys.set(selectedKeys);\n } else {\n this.selectionItemsClass().forEach((item) => {\n if (item.key() !== this.currentSelectedKey()) {\n item.unselect();\n }\n });\n this.selectedKeys.set(this.currentSelectedKey());\n }\n }\n\n private selectFirstItem() {\n this.selectionItemsClass()[0]?.isActive.set(true);\n this.selectedKeys.set(this.selectionItemsClass()[0].key());\n }\n\n private activeItemByKey(key: AXSelectionGroupSelectedKeys) {\n const isArray = Array.isArray(key);\n if (!isArray) {\n this.selectionItemsClass().forEach((item) => {\n if (item.key() === key) {\n item.select();\n }\n });\n } else if (isArray && this.multiple()) {\n const keySet = new Set(key);\n this.selectionItemsClass().forEach((item) => {\n if (keySet.has(item.key())) {\n item.select();\n }\n });\n } else if (isArray && !this.multiple()) {\n this.selectionItemsClass().forEach((item) => {\n if (item.key() === key[0]) {\n item.select();\n }\n });\n }\n }\n\n activeItemByIndex(...restParams: number[]) {\n if (this.disable()) return;\n this.selectionItemsClass().forEach((item) => item.isActive.set(false));\n restParams.forEach((item) => {\n this.selectionItemsClass()[item].isActive.set(true);\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXSelectionGroupDirective } from './selection-group.directive';\nimport { AXSelectionItemDirective } from './selection-item.directive';\n\nconst COMPONENT = [AXSelectionGroupDirective, AXSelectionItemDirective];\nconst MODULES = [CommonModule];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXSelectionCdkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-cdk-selection.mjs","sources":["../../../../packages/cdk/selection/src/lib/selection-item.directive.ts","../../../../packages/cdk/selection/src/lib/selection-group.directive.ts","../../../../packages/cdk/selection/src/lib/selection.module.ts","../../../../packages/cdk/selection/src/acorex-cdk-selection.ts"],"sourcesContent":["import { afterNextRender, Directive, ElementRef, inject, input, model, output, signal } from '@angular/core';\n\n@Directive({\n selector: '[axSelectionItem]',\n exportAs: 'axSelectionItem',\n})\nexport class AXSelectionItemDirective {\n private elm = inject(ElementRef);\n isActive = signal(false);\n onClick = output<{ sender: AXSelectionItemDirective }>();\n key = input.required<string | number>();\n disable = model(false);\n\n #init = afterNextRender(() => {\n (this.elm.nativeElement as HTMLElement).onclick = (e: MouseEvent) => {\n e.stopPropagation();\n e.preventDefault();\n this.toggle();\n if (this.disable()) return;\n this.onClick.emit({ sender: this });\n };\n });\n\n public toggle() {\n if (this.disable()) return;\n this.isActive.update((prev) => !prev);\n }\n public select() {\n if (this.disable()) return;\n this.isActive.set(true);\n }\n public unselect() {\n if (this.disable()) return;\n this.isActive.set(false);\n }\n}\n","import { afterNextRender, contentChildren, Directive, effect, input, model, signal } from '@angular/core';\nimport { AXSelectionItemDirective } from './selection-item.directive';\n\nexport type AXSelectionGroupSelectedKeys = unknown | unknown[];\n\n@Directive({\n selector: '[axSelectionGroup]',\n exportAs: 'axSelectionGroup',\n})\nexport class AXSelectionGroupDirective {\n private currentSelectedKey = signal<number | string>(null);\n multiple = input(false);\n disable = input(false);\n selectedKeys = model<AXSelectionGroupSelectedKeys>();\n selectionItemsClass = contentChildren(AXSelectionItemDirective, { descendants: true });\n\n #init = afterNextRender(() => {\n this.selectionItemsClass().forEach((element) => {\n element.onClick.subscribe((e) => {\n if (this.disable()) return;\n this.currentSelectedKey.set(e.sender.key());\n this.setActiveKey();\n });\n });\n });\n\n #eff = effect(() => {\n void this.multiple();\n setTimeout(() => {\n this.setActiveKey();\n });\n });\n\n #effect2 = effect(() => {\n if (this.disable()) return;\n setTimeout(() => {\n if (!this.selectedKeys()) {\n this.selectFirstItem();\n } else {\n this.activeItemByKey(this.selectedKeys());\n }\n });\n });\n\n #effect3 = effect(() => {\n if (this.disable()) {\n this.selectionItemsClass().forEach((element) => {\n element.disable.set(true);\n });\n } else {\n this.selectionItemsClass().forEach((element) => {\n element.disable.set(false);\n });\n }\n });\n\n private setActiveKey() {\n if (this.multiple()) {\n const selectedKeys = [];\n this.selectionItemsClass().forEach((item) => {\n if (item.isActive()) {\n selectedKeys.push(item.key());\n }\n });\n this.selectedKeys.set(selectedKeys);\n } else {\n this.selectionItemsClass().forEach((item) => {\n if (item.key() !== this.currentSelectedKey()) {\n item.unselect();\n }\n });\n this.selectedKeys.set(this.currentSelectedKey());\n }\n }\n\n private selectFirstItem() {\n this.selectionItemsClass()[0]?.isActive.set(true);\n this.selectedKeys.set(this.selectionItemsClass()[0].key());\n }\n\n private activeItemByKey(key: AXSelectionGroupSelectedKeys) {\n const isArray = Array.isArray(key);\n if (!isArray) {\n this.selectionItemsClass().forEach((item) => {\n if (item.key() === key) {\n item.select();\n }\n });\n } else if (isArray && this.multiple()) {\n const keySet = new Set(key);\n this.selectionItemsClass().forEach((item) => {\n if (keySet.has(item.key())) {\n item.select();\n }\n });\n } else if (isArray && !this.multiple()) {\n this.selectionItemsClass().forEach((item) => {\n if (item.key() === key[0]) {\n item.select();\n }\n });\n }\n }\n\n activeItemByIndex(...restParams: number[]) {\n if (this.disable()) return;\n this.selectionItemsClass().forEach((item) => item.isActive.set(false));\n restParams.forEach((item) => {\n this.selectionItemsClass()[item].isActive.set(true);\n });\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXSelectionGroupDirective } from './selection-group.directive';\nimport { AXSelectionItemDirective } from './selection-item.directive';\n\nconst COMPONENT = [AXSelectionGroupDirective, AXSelectionItemDirective];\nconst MODULES = [CommonModule];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXSelectionCdkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -4,19 +4,19 @@ import { inject, ElementRef, signal, effect, afterNextRender, Directive } from '
4
4
  class AXSlidingItemDirective {
5
5
  constructor() {
6
6
  this.hostElement = inject(ElementRef);
7
- this.isMouseDown = signal(false, ...(ngDevMode ? [{ debugName: "isMouseDown" }] : []));
8
- this.prevX = signal(0, ...(ngDevMode ? [{ debugName: "prevX" }] : []));
9
- this.currentX = signal(0, ...(ngDevMode ? [{ debugName: "currentX" }] : []));
10
- this.stopPoint = signal(0, ...(ngDevMode ? [{ debugName: "stopPoint" }] : []));
11
- this.disableSlidingRight = signal(false, ...(ngDevMode ? [{ debugName: "disableSlidingRight" }] : []));
12
- this.disableSlidingLeft = signal(false, ...(ngDevMode ? [{ debugName: "disableSlidingLeft" }] : []));
7
+ this.isMouseDown = signal(false, ...(ngDevMode ? [{ debugName: "isMouseDown" }] : /* istanbul ignore next */ []));
8
+ this.prevX = signal(0, ...(ngDevMode ? [{ debugName: "prevX" }] : /* istanbul ignore next */ []));
9
+ this.currentX = signal(0, ...(ngDevMode ? [{ debugName: "currentX" }] : /* istanbul ignore next */ []));
10
+ this.stopPoint = signal(0, ...(ngDevMode ? [{ debugName: "stopPoint" }] : /* istanbul ignore next */ []));
11
+ this.disableSlidingRight = signal(false, ...(ngDevMode ? [{ debugName: "disableSlidingRight" }] : /* istanbul ignore next */ []));
12
+ this.disableSlidingLeft = signal(false, ...(ngDevMode ? [{ debugName: "disableSlidingLeft" }] : /* istanbul ignore next */ []));
13
13
  this.#positionChange = effect(() => {
14
14
  if (this.currentX() > 0 && this.disableSlidingRight())
15
15
  return;
16
16
  if (this.currentX() < 0 && this.disableSlidingLeft())
17
17
  return;
18
18
  this.setPosition(this.currentX());
19
- }, ...(ngDevMode ? [{ debugName: "#positionChange" }] : []));
19
+ }, ...(ngDevMode ? [{ debugName: "#positionChange" }] : /* istanbul ignore next */ []));
20
20
  this.#init = afterNextRender(() => {
21
21
  const el = this.hostElement.nativeElement.parentElement;
22
22
  el.style.display = 'flex';
@@ -58,7 +58,7 @@ class AXSlidingItemDirective {
58
58
  this.isMouseDown.set(false);
59
59
  this.dismiss();
60
60
  };
61
- }, ...(ngDevMode ? [{ debugName: "#effect2" }] : []));
61
+ }, ...(ngDevMode ? [{ debugName: "#effect2" }] : /* istanbul ignore next */ []));
62
62
  }
63
63
  #positionChange;
64
64
  #init;
@@ -82,10 +82,10 @@ class AXSlidingItemDirective {
82
82
  const el = this.hostElement.nativeElement;
83
83
  el.style.transform = `translate(${pos}px, 0)`;
84
84
  }
85
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXSlidingItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
86
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.3", type: AXSlidingItemDirective, isStandalone: true, selector: "[axSlidingItem]", ngImport: i0 }); }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSlidingItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
86
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: AXSlidingItemDirective, isStandalone: true, selector: "[axSlidingItem]", ngImport: i0 }); }
87
87
  }
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXSlidingItemDirective, decorators: [{
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXSlidingItemDirective, decorators: [{
89
89
  type: Directive,
90
90
  args: [{ selector: '[axSlidingItem]' }]
91
91
  }] });
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-sliding-item.mjs","sources":["../../../../packages/cdk/sliding-item/src/lib/sliding-item.directive.ts","../../../../packages/cdk/sliding-item/src/acorex-cdk-sliding-item.ts"],"sourcesContent":["import { afterNextRender, Directive, effect, ElementRef, inject, signal } from '@angular/core';\n\n@Directive({ selector: '[axSlidingItem]' })\nexport class AXSlidingItemDirective {\n private hostElement = inject(ElementRef);\n private isMouseDown = signal(false);\n private prevX = signal(0);\n currentX = signal(0);\n stopPoint = signal(0);\n disableSlidingRight = signal(false);\n disableSlidingLeft = signal(false);\n\n #positionChange = effect(() => {\n if (this.currentX() > 0 && this.disableSlidingRight()) return;\n if (this.currentX() < 0 && this.disableSlidingLeft()) return;\n this.setPosition(this.currentX());\n });\n\n #init = afterNextRender(() => {\n const el = (this.hostElement.nativeElement as HTMLElement).parentElement;\n el.style.display = 'flex';\n el.style.justifyContent = 'space-between';\n el.style.position = 'relative';\n el.style.overflow = 'hidden';\n });\n\n #effect2 = effect(() => {\n this.hostElement.nativeElement.style.position = 'absolute';\n this.hostElement.nativeElement.style.top = '0';\n this.hostElement.nativeElement.style.left = '0';\n this.hostElement.nativeElement.style.width = '100%';\n this.hostElement.nativeElement.style.height = '100%';\n this.hostElement.nativeElement.style.zIndex = '1';\n this.hostElement.nativeElement.style.cursor = 'grab';\n this.hostElement.nativeElement.style.userSelect = 'none';\n this.hostElement.nativeElement.style.touchAction = 'none';\n\n this.hostElement.nativeElement.onpointerdown = (e: PointerEvent) => {\n this.hostElement.nativeElement.style.transition = 'none';\n this.hostElement.nativeElement.style.cursor = 'grabbing';\n this.isMouseDown.set(true);\n this.prevX.set(e.clientX);\n };\n\n this.hostElement.nativeElement.onpointermove = (e: PointerEvent) => {\n if (!this.isMouseDown()) return;\n const currentX = e.clientX;\n const deltaX = currentX - this.prevX();\n this.currentX.update((prev) => prev + deltaX);\n this.prevX.set(currentX);\n };\n\n this.hostElement.nativeElement.onpointerup = () => {\n this.isMouseDown.set(false);\n this.dismiss();\n };\n\n this.hostElement.nativeElement.onpointerleave = () => {\n if (!this.isMouseDown()) return;\n this.isMouseDown.set(false);\n this.dismiss();\n };\n });\n\n private dismiss() {\n const el = this.hostElement.nativeElement as HTMLElement;\n this.hostElement.nativeElement.style.transition = '.5s transform ease';\n el.style.cursor = 'grab';\n\n if (this.stopPoint()) {\n el.style.transform = `translate(${this.stopPoint()}, 0)`;\n this.currentX.set(this.stopPoint());\n this.prevX.set(this.stopPoint());\n } else {\n el.style.transform = `translate(0, 0)`;\n this.currentX.set(0);\n this.prevX.set(0);\n }\n }\n\n setPosition(pos: number) {\n const el = this.hostElement.nativeElement as HTMLElement;\n el.style.transform = `translate(${pos}px, 0)`;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-cdk-sliding-item.mjs","sources":["../../../../packages/cdk/sliding-item/src/lib/sliding-item.directive.ts","../../../../packages/cdk/sliding-item/src/acorex-cdk-sliding-item.ts"],"sourcesContent":["import { afterNextRender, Directive, effect, ElementRef, inject, signal } from '@angular/core';\n\n@Directive({ selector: '[axSlidingItem]' })\nexport class AXSlidingItemDirective {\n private hostElement = inject(ElementRef);\n private isMouseDown = signal(false);\n private prevX = signal(0);\n currentX = signal(0);\n stopPoint = signal(0);\n disableSlidingRight = signal(false);\n disableSlidingLeft = signal(false);\n\n #positionChange = effect(() => {\n if (this.currentX() > 0 && this.disableSlidingRight()) return;\n if (this.currentX() < 0 && this.disableSlidingLeft()) return;\n this.setPosition(this.currentX());\n });\n\n #init = afterNextRender(() => {\n const el = (this.hostElement.nativeElement as HTMLElement).parentElement;\n el.style.display = 'flex';\n el.style.justifyContent = 'space-between';\n el.style.position = 'relative';\n el.style.overflow = 'hidden';\n });\n\n #effect2 = effect(() => {\n this.hostElement.nativeElement.style.position = 'absolute';\n this.hostElement.nativeElement.style.top = '0';\n this.hostElement.nativeElement.style.left = '0';\n this.hostElement.nativeElement.style.width = '100%';\n this.hostElement.nativeElement.style.height = '100%';\n this.hostElement.nativeElement.style.zIndex = '1';\n this.hostElement.nativeElement.style.cursor = 'grab';\n this.hostElement.nativeElement.style.userSelect = 'none';\n this.hostElement.nativeElement.style.touchAction = 'none';\n\n this.hostElement.nativeElement.onpointerdown = (e: PointerEvent) => {\n this.hostElement.nativeElement.style.transition = 'none';\n this.hostElement.nativeElement.style.cursor = 'grabbing';\n this.isMouseDown.set(true);\n this.prevX.set(e.clientX);\n };\n\n this.hostElement.nativeElement.onpointermove = (e: PointerEvent) => {\n if (!this.isMouseDown()) return;\n const currentX = e.clientX;\n const deltaX = currentX - this.prevX();\n this.currentX.update((prev) => prev + deltaX);\n this.prevX.set(currentX);\n };\n\n this.hostElement.nativeElement.onpointerup = () => {\n this.isMouseDown.set(false);\n this.dismiss();\n };\n\n this.hostElement.nativeElement.onpointerleave = () => {\n if (!this.isMouseDown()) return;\n this.isMouseDown.set(false);\n this.dismiss();\n };\n });\n\n private dismiss() {\n const el = this.hostElement.nativeElement as HTMLElement;\n this.hostElement.nativeElement.style.transition = '.5s transform ease';\n el.style.cursor = 'grab';\n\n if (this.stopPoint()) {\n el.style.transform = `translate(${this.stopPoint()}, 0)`;\n this.currentX.set(this.stopPoint());\n this.prevX.set(this.stopPoint());\n } else {\n el.style.transform = `translate(0, 0)`;\n this.currentX.set(0);\n this.prevX.set(0);\n }\n }\n\n setPosition(pos: number) {\n const el = this.hostElement.nativeElement as HTMLElement;\n el.style.transform = `translate(${pos}px, 0)`;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -102,10 +102,10 @@ class AXStickyDirective {
102
102
  this.mutationObserver.disconnect();
103
103
  }
104
104
  }
105
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXStickyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
106
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.3", type: AXStickyDirective, isStandalone: true, selector: "[axSticky]", inputs: { stickyClass: ["axpSticky", "stickyClass"], stickyOffset: "stickyOffset", stickyParent: "stickyParent", stickyTarget: "stickyTarget" }, outputs: { isStickyChange: "isStickyChange" }, exportAs: ["axpSticky"], ngImport: i0 }); }
105
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXStickyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
106
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: AXStickyDirective, isStandalone: true, selector: "[axSticky]", inputs: { stickyClass: ["axpSticky", "stickyClass"], stickyOffset: "stickyOffset", stickyParent: "stickyParent", stickyTarget: "stickyTarget" }, outputs: { isStickyChange: "isStickyChange" }, exportAs: ["axpSticky"], ngImport: i0 }); }
107
107
  }
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AXStickyDirective, decorators: [{
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXStickyDirective, decorators: [{
109
109
  type: Directive,
110
110
  args: [{
111
111
  selector: '[axSticky]',