@acorex/cdk 19.13.4 → 19.13.5

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 (33) hide show
  1. package/drag-drop/lib/drag.directive.d.ts +22 -6
  2. package/drawer/lib/drawer-item.directive.d.ts +4 -2
  3. package/fesm2022/acorex-cdk-carousel.mjs +3 -3
  4. package/fesm2022/acorex-cdk-carousel.mjs.map +1 -1
  5. package/fesm2022/acorex-cdk-collapse.mjs +19 -19
  6. package/fesm2022/acorex-cdk-collapse.mjs.map +1 -1
  7. package/fesm2022/acorex-cdk-dom.mjs +3 -3
  8. package/fesm2022/acorex-cdk-dom.mjs.map +1 -1
  9. package/fesm2022/acorex-cdk-drag-drop.mjs +301 -65
  10. package/fesm2022/acorex-cdk-drag-drop.mjs.map +1 -1
  11. package/fesm2022/acorex-cdk-drawer.mjs +35 -18
  12. package/fesm2022/acorex-cdk-drawer.mjs.map +1 -1
  13. package/fesm2022/acorex-cdk-focus-trap.mjs +3 -3
  14. package/fesm2022/acorex-cdk-focus-trap.mjs.map +1 -1
  15. package/fesm2022/acorex-cdk-list-navigation.mjs +10 -10
  16. package/fesm2022/acorex-cdk-list-navigation.mjs.map +1 -1
  17. package/fesm2022/acorex-cdk-outline.mjs +10 -10
  18. package/fesm2022/acorex-cdk-outline.mjs.map +1 -1
  19. package/fesm2022/acorex-cdk-overlay.mjs +3 -3
  20. package/fesm2022/acorex-cdk-overlay.mjs.map +1 -1
  21. package/fesm2022/acorex-cdk-pan-view.mjs +3 -3
  22. package/fesm2022/acorex-cdk-pan-view.mjs.map +1 -1
  23. package/fesm2022/acorex-cdk-resizable.mjs +3 -3
  24. package/fesm2022/acorex-cdk-resizable.mjs.map +1 -1
  25. package/fesm2022/acorex-cdk-selection.mjs +10 -10
  26. package/fesm2022/acorex-cdk-selection.mjs.map +1 -1
  27. package/fesm2022/acorex-cdk-sliding-item.mjs +7 -7
  28. package/fesm2022/acorex-cdk-sliding-item.mjs.map +1 -1
  29. package/fesm2022/acorex-cdk-sticky.mjs +3 -3
  30. package/fesm2022/acorex-cdk-sticky.mjs.map +1 -1
  31. package/fesm2022/acorex-cdk-virtual-scroll.mjs +10 -10
  32. package/fesm2022/acorex-cdk-virtual-scroll.mjs.map +1 -1
  33. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-outline.mjs","sources":["../../../../libs/cdk/outline/src/lib/outline-container.directive.ts","../../../../libs/cdk/outline/src/lib/outline-item.directive.ts","../../../../libs/cdk/outline/src/lib/outline.module.ts","../../../../libs/cdk/outline/src/acorex-cdk-outline.ts"],"sourcesContent":["import { AXUnsubscriber } from '@acorex/core/utils';\nimport { afterNextRender, computed, Directive, ElementRef, inject, input, NgZone, signal } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { BehaviorSubject, fromEvent, map } from 'rxjs';\n\nexport type outlineItemType = { el: HTMLElement; active: boolean; scrollY: number };\n\n@Directive({\n selector: '[axOutlineContainer]',\n exportAs: 'axOutlineContainer',\n providers: [AXUnsubscriber],\n})\nexport class AXOutlineContainerDirective {\n router = inject(Router);\n private zone = inject(NgZone);\n private el = inject(ElementRef<HTMLElement>);\n private unsubscriber = inject(AXUnsubscriber);\n\n target = input<string>();\n smoothScroll = input(true);\n activationOffset = input(16);\n activateLastAtBottom = input(true);\n scrollableElementId = input<string | null>(null);\n\n private scrollTop = signal(0);\n private outlineItems = signal<outlineItemType[]>([]);\n\n private scrollableElement = computed(() =>\n this.scrollableElementId() ? document.getElementById(this.scrollableElementId()) : (this.el.nativeElement as HTMLElement),\n );\n\n outlineItems$ = new BehaviorSubject<outlineItemType[]>([]);\n\n #anr = afterNextRender(() => {\n if (this.smoothScroll) {\n this.scrollableElement().style.scrollBehavior = 'smooth';\n }\n this.setOutlineItems();\n this.router.events.pipe(this.unsubscriber.takeUntilDestroy).subscribe((e) => {\n if (e instanceof NavigationEnd) {\n this.setOutlineItems();\n }\n });\n this.zone.runOutsideAngular(() => {\n fromEvent(this.scrollableElement(), 'scroll')\n .pipe(\n this.unsubscriber.takeUntilDestroy,\n map(() => this.scrollableElement().scrollTop),\n )\n .subscribe((scrollTop) => {\n this.scrollTop.set(scrollTop);\n this.scrollChanged(scrollTop);\n });\n });\n });\n\n private scrollChanged(scrollTop: number) {\n this.outlineItems.update((prevItems) => {\n if (prevItems.length === 0) return prevItems;\n\n const scrollHeight = this.scrollableElement().scrollHeight;\n const clientHeight = this.scrollableElement().clientHeight;\n const isAtBottom = scrollTop + clientHeight >= scrollHeight - 1;\n\n if (isAtBottom && this.activateLastAtBottom()) {\n return prevItems.map((item, index) => ({\n ...item,\n active: index === prevItems.length - 1,\n }));\n }\n\n let activeIndex = -1;\n for (let i = 0; i < prevItems.length; i++) {\n const item = prevItems[i];\n if (scrollTop >= item.scrollY - this.activationOffset()) {\n activeIndex = i;\n }\n }\n return prevItems.map((item, index) => ({\n ...item,\n active: index === activeIndex,\n }));\n });\n this.outlineItems$.next(this.outlineItems());\n }\n\n private setOutlineItems() {\n setTimeout(() => {\n const targets = this.target() ? [...this.el.nativeElement.querySelectorAll(this.target())] : [];\n targets.push(...this.el.nativeElement.querySelectorAll('[data-ax-outline-item=\"true\"]'));\n const uniqueTargets = new Set(targets);\n const outlineItems = Array.from(uniqueTargets)\n .filter((el) => {\n return el.dataset['axOutlineItem'] !== 'false';\n })\n .map((el) => {\n const existingId = el.id;\n let newId;\n if (!existingId) {\n const textContent = el.textContent.trim();\n if (textContent) {\n newId = `${textContent.replace(/\\s+/g, '-')}`;\n } else {\n newId = `${Math.random().toString(36).slice(2, 7)}`;\n }\n el.id = newId;\n }\n return { el, active: false, scrollY: el.offsetTop };\n })\n .sort((a, b) => a.scrollY - b.scrollY);\n this.outlineItems.set(outlineItems);\n this.scrollChanged(this.scrollTop());\n });\n }\n}\n","import { afterNextRender, Directive, ElementRef, inject, input } from '@angular/core';\n\n@Directive({\n selector: '[axOutlineItem]',\n exportAs: 'axOutlineItem',\n})\nexport class AXOutlineItemDirective {\n private el = inject(ElementRef);\n\n id = input<string>();\n disabled = input(false);\n\n #anr = afterNextRender(() => {\n (this.el.nativeElement as HTMLElement).dataset['axOutlineItem'] = this.disabled() ? 'false' : 'true';\n\n let newId;\n if (!this.id()) {\n const textContent = this.el.nativeElement.textContent.trim();\n if (textContent) {\n newId = `${textContent.replace(/\\s+/g, '-')}`;\n } else {\n newId = `${Math.random().toString(36).slice(2, 7)}`;\n }\n this.el.nativeElement.id = newId;\n }\n });\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXOutlineContainerDirective } from './outline-container.directive';\nimport { AXOutlineItemDirective } from './outline-item.directive';\n\nconst COMPONENT = [AXOutlineContainerDirective, AXOutlineItemDirective];\nconst MODULES = [CommonModule];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXOutlineModule {}\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-outline.mjs","sources":["../../../../libs/cdk/outline/src/lib/outline-container.directive.ts","../../../../libs/cdk/outline/src/lib/outline-item.directive.ts","../../../../libs/cdk/outline/src/lib/outline.module.ts","../../../../libs/cdk/outline/src/acorex-cdk-outline.ts"],"sourcesContent":["import { AXUnsubscriber } from '@acorex/core/utils';\nimport { afterNextRender, computed, Directive, ElementRef, inject, input, NgZone, signal } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { BehaviorSubject, fromEvent, map } from 'rxjs';\n\nexport type outlineItemType = { el: HTMLElement; active: boolean; scrollY: number };\n\n@Directive({\n selector: '[axOutlineContainer]',\n exportAs: 'axOutlineContainer',\n providers: [AXUnsubscriber],\n})\nexport class AXOutlineContainerDirective {\n router = inject(Router);\n private zone = inject(NgZone);\n private el = inject(ElementRef<HTMLElement>);\n private unsubscriber = inject(AXUnsubscriber);\n\n target = input<string>();\n smoothScroll = input(true);\n activationOffset = input(16);\n activateLastAtBottom = input(true);\n scrollableElementId = input<string | null>(null);\n\n private scrollTop = signal(0);\n private outlineItems = signal<outlineItemType[]>([]);\n\n private scrollableElement = computed(() =>\n this.scrollableElementId() ? document.getElementById(this.scrollableElementId()) : (this.el.nativeElement as HTMLElement),\n );\n\n outlineItems$ = new BehaviorSubject<outlineItemType[]>([]);\n\n #anr = afterNextRender(() => {\n if (this.smoothScroll) {\n this.scrollableElement().style.scrollBehavior = 'smooth';\n }\n this.setOutlineItems();\n this.router.events.pipe(this.unsubscriber.takeUntilDestroy).subscribe((e) => {\n if (e instanceof NavigationEnd) {\n this.setOutlineItems();\n }\n });\n this.zone.runOutsideAngular(() => {\n fromEvent(this.scrollableElement(), 'scroll')\n .pipe(\n this.unsubscriber.takeUntilDestroy,\n map(() => this.scrollableElement().scrollTop),\n )\n .subscribe((scrollTop) => {\n this.scrollTop.set(scrollTop);\n this.scrollChanged(scrollTop);\n });\n });\n });\n\n private scrollChanged(scrollTop: number) {\n this.outlineItems.update((prevItems) => {\n if (prevItems.length === 0) return prevItems;\n\n const scrollHeight = this.scrollableElement().scrollHeight;\n const clientHeight = this.scrollableElement().clientHeight;\n const isAtBottom = scrollTop + clientHeight >= scrollHeight - 1;\n\n if (isAtBottom && this.activateLastAtBottom()) {\n return prevItems.map((item, index) => ({\n ...item,\n active: index === prevItems.length - 1,\n }));\n }\n\n let activeIndex = -1;\n for (let i = 0; i < prevItems.length; i++) {\n const item = prevItems[i];\n if (scrollTop >= item.scrollY - this.activationOffset()) {\n activeIndex = i;\n }\n }\n return prevItems.map((item, index) => ({\n ...item,\n active: index === activeIndex,\n }));\n });\n this.outlineItems$.next(this.outlineItems());\n }\n\n private setOutlineItems() {\n setTimeout(() => {\n const targets = this.target() ? [...this.el.nativeElement.querySelectorAll(this.target())] : [];\n targets.push(...this.el.nativeElement.querySelectorAll('[data-ax-outline-item=\"true\"]'));\n const uniqueTargets = new Set(targets);\n const outlineItems = Array.from(uniqueTargets)\n .filter((el) => {\n return el.dataset['axOutlineItem'] !== 'false';\n })\n .map((el) => {\n const existingId = el.id;\n let newId;\n if (!existingId) {\n const textContent = el.textContent.trim();\n if (textContent) {\n newId = `${textContent.replace(/\\s+/g, '-')}`;\n } else {\n newId = `${Math.random().toString(36).slice(2, 7)}`;\n }\n el.id = newId;\n }\n return { el, active: false, scrollY: el.offsetTop };\n })\n .sort((a, b) => a.scrollY - b.scrollY);\n this.outlineItems.set(outlineItems);\n this.scrollChanged(this.scrollTop());\n });\n }\n}\n","import { afterNextRender, Directive, ElementRef, inject, input } from '@angular/core';\n\n@Directive({\n selector: '[axOutlineItem]',\n exportAs: 'axOutlineItem',\n})\nexport class AXOutlineItemDirective {\n private el = inject(ElementRef);\n\n id = input<string>();\n disabled = input(false);\n\n #anr = afterNextRender(() => {\n (this.el.nativeElement as HTMLElement).dataset['axOutlineItem'] = this.disabled() ? 'false' : 'true';\n\n let newId;\n if (!this.id()) {\n const textContent = this.el.nativeElement.textContent.trim();\n if (textContent) {\n newId = `${textContent.replace(/\\s+/g, '-')}`;\n } else {\n newId = `${Math.random().toString(36).slice(2, 7)}`;\n }\n this.el.nativeElement.id = newId;\n }\n });\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXOutlineContainerDirective } from './outline-container.directive';\nimport { AXOutlineItemDirective } from './outline-item.directive';\n\nconst COMPONENT = [AXOutlineContainerDirective, AXOutlineItemDirective];\nconst MODULES = [CommonModule];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXOutlineModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -25,10 +25,10 @@ class AXOverlayService {
25
25
  };
26
26
  }
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXOverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXOverlayService, providedIn: 'root' }); }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXOverlayService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
29
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXOverlayService, providedIn: 'root' }); }
30
30
  }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXOverlayService, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXOverlayService, decorators: [{
32
32
  type: Injectable,
33
33
  args: [{
34
34
  providedIn: 'root',
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-overlay.mjs","sources":["../../../../libs/cdk/overlay/src/lib/overlay.service.ts","../../../../libs/cdk/overlay/src/acorex-cdk-overlay.ts"],"sourcesContent":["import { AXComponentContent, AXComponentService } from '@acorex/core/components';\nimport { inject, Injectable, TemplateRef } from '@angular/core';\nimport { AXOverlayOptions, AXOverlayRef } from './overlay.types';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXOverlayService {\n private componentService = inject(AXComponentService);\n\n async create<T = any>(content: AXComponentContent<T>, options?: AXOverlayOptions): Promise<AXOverlayRef<T>> {\n if (content instanceof TemplateRef) {\n const ref = await this.componentService.createFromTemplate<T>(content);\n return {\n instance: ref,\n };\n } else {\n const ref = await this.componentService.createFromComponent<T>(content);\n if (options?.inputs) {\n Object.entries(options.inputs).forEach((c) => {\n ref.setInput(c[0], c[1]);\n });\n }\n return {\n instance: ref,\n };\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAOa,gBAAgB,CAAA;AAH7B,IAAA,WAAA,GAAA;AAIU,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAoBtD;AAlBC,IAAA,MAAM,MAAM,CAAU,OAA8B,EAAE,OAA0B,EAAA;AAC9E,QAAA,IAAI,OAAO,YAAY,WAAW,EAAE;YAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAI,OAAO,CAAC;YACtE,OAAO;AACL,gBAAA,QAAQ,EAAE,GAAG;aACd;;aACI;YACL,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAI,OAAO,CAAC;AACvE,YAAA,IAAI,OAAO,EAAE,MAAM,EAAE;AACnB,gBAAA,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;AAC3C,oBAAA,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1B,iBAAC,CAAC;;YAEJ,OAAO;AACL,gBAAA,QAAQ,EAAE,GAAG;aACd;;;8GAlBM,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cAFf,MAAM,EAAA,CAAA,CAAA;;2FAEP,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACND;;AAEG;;;;"}
1
+ {"version":3,"file":"acorex-cdk-overlay.mjs","sources":["../../../../libs/cdk/overlay/src/lib/overlay.service.ts","../../../../libs/cdk/overlay/src/acorex-cdk-overlay.ts"],"sourcesContent":["import { AXComponentContent, AXComponentService } from '@acorex/core/components';\nimport { inject, Injectable, TemplateRef } from '@angular/core';\nimport { AXOverlayOptions, AXOverlayRef } from './overlay.types';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXOverlayService {\n private componentService = inject(AXComponentService);\n\n async create<T = any>(content: AXComponentContent<T>, options?: AXOverlayOptions): Promise<AXOverlayRef<T>> {\n if (content instanceof TemplateRef) {\n const ref = await this.componentService.createFromTemplate<T>(content);\n return {\n instance: ref,\n };\n } else {\n const ref = await this.componentService.createFromComponent<T>(content);\n if (options?.inputs) {\n Object.entries(options.inputs).forEach((c) => {\n ref.setInput(c[0], c[1]);\n });\n }\n return {\n instance: ref,\n };\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAOa,gBAAgB,CAAA;AAH7B,IAAA,WAAA,GAAA;AAIU,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAoBtD;AAlBC,IAAA,MAAM,MAAM,CAAU,OAA8B,EAAE,OAA0B,EAAA;AAC9E,QAAA,IAAI,OAAO,YAAY,WAAW,EAAE;YAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAI,OAAO,CAAC;YACtE,OAAO;AACL,gBAAA,QAAQ,EAAE,GAAG;aACd;;aACI;YACL,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAI,OAAO,CAAC;AACvE,YAAA,IAAI,OAAO,EAAE,MAAM,EAAE;AACnB,gBAAA,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;AAC3C,oBAAA,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1B,iBAAC,CAAC;;YAEJ,OAAO;AACL,gBAAA,QAAQ,EAAE,GAAG;aACd;;;+GAlBM,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cAFf,MAAM,EAAA,CAAA,CAAA;;4FAEP,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACND;;AAEG;;;;"}
@@ -182,10 +182,10 @@ class AXPanViewDirective {
182
182
  this.zoom.set(Math.round(Math.max(this.minZoom(), Math.min(this.maxZoom(), this.zoom() - this.zoomStep()))));
183
183
  this.setElementPosition();
184
184
  }
185
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXPanViewDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
186
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.9", type: AXPanViewDirective, isStandalone: true, selector: "[axPanView]", inputs: { zoomStep: { classPropertyName: "zoomStep", publicName: "zoomStep", isSignal: true, isRequired: false, transformFunction: null }, minZoom: { classPropertyName: "minZoom", publicName: "minZoom", isSignal: true, isRequired: false, transformFunction: null }, maxZoom: { classPropertyName: "maxZoom", publicName: "maxZoom", isSignal: true, isRequired: false, transformFunction: null }, freeMode: { classPropertyName: "freeMode", publicName: "freeMode", isSignal: true, isRequired: false, transformFunction: null }, fitContent: { classPropertyName: "fitContent", publicName: "fitContent", isSignal: true, isRequired: false, transformFunction: null }, disablePan: { classPropertyName: "disablePan", publicName: "disablePan", isSignal: true, isRequired: false, transformFunction: null }, disableZoom: { classPropertyName: "disableZoom", publicName: "disableZoom", isSignal: true, isRequired: false, transformFunction: null }, wrapperClasses: { classPropertyName: "wrapperClasses", publicName: "wrapperClasses", isSignal: true, isRequired: false, transformFunction: null }, panX: { classPropertyName: "panX", publicName: "panX", isSignal: true, isRequired: false, transformFunction: null }, panY: { classPropertyName: "panY", publicName: "panY", isSignal: true, isRequired: false, transformFunction: null }, zoom: { classPropertyName: "zoom", publicName: "zoom", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { panX: "panXChange", panY: "panYChange", zoom: "zoomChange", zoomChange: "zoomChange", positionChange: "positionChange" }, exportAs: ["axPanView"], ngImport: i0 }); }
185
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPanViewDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
186
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.10", type: AXPanViewDirective, isStandalone: true, selector: "[axPanView]", inputs: { zoomStep: { classPropertyName: "zoomStep", publicName: "zoomStep", isSignal: true, isRequired: false, transformFunction: null }, minZoom: { classPropertyName: "minZoom", publicName: "minZoom", isSignal: true, isRequired: false, transformFunction: null }, maxZoom: { classPropertyName: "maxZoom", publicName: "maxZoom", isSignal: true, isRequired: false, transformFunction: null }, freeMode: { classPropertyName: "freeMode", publicName: "freeMode", isSignal: true, isRequired: false, transformFunction: null }, fitContent: { classPropertyName: "fitContent", publicName: "fitContent", isSignal: true, isRequired: false, transformFunction: null }, disablePan: { classPropertyName: "disablePan", publicName: "disablePan", isSignal: true, isRequired: false, transformFunction: null }, disableZoom: { classPropertyName: "disableZoom", publicName: "disableZoom", isSignal: true, isRequired: false, transformFunction: null }, wrapperClasses: { classPropertyName: "wrapperClasses", publicName: "wrapperClasses", isSignal: true, isRequired: false, transformFunction: null }, panX: { classPropertyName: "panX", publicName: "panX", isSignal: true, isRequired: false, transformFunction: null }, panY: { classPropertyName: "panY", publicName: "panY", isSignal: true, isRequired: false, transformFunction: null }, zoom: { classPropertyName: "zoom", publicName: "zoom", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { panX: "panXChange", panY: "panYChange", zoom: "zoomChange", zoomChange: "zoomChange", positionChange: "positionChange" }, exportAs: ["axPanView"], ngImport: i0 }); }
187
187
  }
188
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXPanViewDirective, decorators: [{
188
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXPanViewDirective, decorators: [{
189
189
  type: Directive,
190
190
  args: [{
191
191
  selector: '[axPanView]',
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-pan-view.mjs","sources":["../../../../libs/cdk/pan-view/src/lib/pan-view.directive.ts","../../../../libs/cdk/pan-view/src/acorex-cdk-pan-view.ts"],"sourcesContent":["import { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n afterNextRender,\n computed,\n Directive,\n ElementRef,\n inject,\n input,\n linkedSignal,\n model,\n NgZone,\n OnDestroy,\n output,\n PLATFORM_ID,\n Renderer2,\n signal,\n} from '@angular/core';\n\n@Directive({\n selector: '[axPanView]',\n exportAs: 'axPanView',\n})\nexport class AXPanViewDirective implements OnDestroy {\n private resizeObserver: ResizeObserver;\n\n private platformId = inject(PLATFORM_ID);\n private zone = inject(NgZone);\n private render = inject(Renderer2);\n private document = inject(DOCUMENT);\n private el = inject(ElementRef<HTMLElement>);\n\n private startX = signal(0);\n private startY = signal(0);\n private pointerDown = signal(false);\n private wrapper = signal<HTMLDivElement | null>(null);\n\n zoomStep = input(7);\n minZoom = input(25);\n maxZoom = input(400);\n freeMode = input(false);\n fitContent = input(true);\n disablePan = input(false);\n disableZoom = input(false);\n wrapperClasses = input('');\n\n panX = model(0);\n panY = model(0);\n zoom = model(100);\n\n zoomChange = output<number>();\n positionChange = output<{ x: number; y: number }>();\n\n private nativeEl = computed(() => this.el.nativeElement as HTMLElement);\n\n private initialWidth = linkedSignal(() => this.nativeEl().getBoundingClientRect().width);\n private initialHeight = linkedSignal(() => this.nativeEl().getBoundingClientRect().height);\n\n #anr = afterNextRender(() => {\n // Create Wrapper\n this.createWrapper();\n this.zone.runOutsideAngular(() => {\n // Wheel Event\n this.wrapper().onwheel = (e) => {\n e.preventDefault();\n if (e.ctrlKey || this.freeMode()) {\n this.handleZoomChange(e);\n return;\n } else if (e.shiftKey) {\n if (this.disablePan()) return;\n this.panX.update((prev) => prev - e.deltaY / 3);\n this.setElementPosition();\n } else {\n if (this.disablePan()) return;\n this.panY.update((prev) => prev - e.deltaY / 3);\n this.setElementPosition();\n }\n };\n // Pointer Down Event\n this.wrapper().onpointerdown = (e) => this.handlePointerDown(e);\n // Pointer Move Event\n this.document.onpointermove = (e) => this.handlePointerMove(e);\n // Pointer Up/Leave Event\n this.document.onpointerup = (e) => this.handlePointerUp(e);\n\n if (isPlatformBrowser(this.platformId)) {\n this.resizeObserver = new ResizeObserver(() => this.sizeChanged());\n this.resizeObserver.observe(this.wrapper());\n this.resizeObserver.observe(this.nativeEl());\n }\n });\n setTimeout(() => {\n this.resetPosition();\n });\n });\n\n ngOnDestroy(): void {\n if (isPlatformBrowser(this.platformId)) this.resizeObserver.disconnect();\n }\n\n private createWrapper() {\n this.wrapper.set(this.render.createElement('div'));\n this.render.addClass(this.wrapper(), 'ax-pan-view-wrapper');\n if (this.wrapperClasses()) this.render.addClass(this.wrapper(), this.wrapperClasses());\n\n const parent = this.nativeEl().parentNode;\n this.render.appendChild(this.wrapper(), this.nativeEl());\n this.render.insertBefore(parent, this.wrapper(), this.nativeEl().nextSibling);\n\n this.render.setStyle(this.wrapper(), 'width', '100%');\n this.render.setStyle(this.wrapper(), 'height', '100%');\n this.render.setStyle(this.wrapper(), 'overflow', 'hidden');\n this.render.setStyle(this.wrapper(), 'position', 'relative');\n\n this.render.setStyle(this.nativeEl(), 'top', '0');\n this.render.setStyle(this.nativeEl(), 'left', '0');\n this.render.setStyle(this.nativeEl(), 'position', 'absolute');\n }\n\n private handlePointerDown(e: PointerEvent) {\n if (this.disablePan()) return;\n if (!this.freeMode() && e.pointerType === 'mouse' && e.buttons !== 4) return;\n if (this.freeMode() && e.pointerType === 'mouse' && e.buttons !== 1) return;\n e.preventDefault();\n this.pointerDown.set(true);\n this.wrapper().style.cursor = 'grabbing';\n\n // Update previous position for next move\n this.startX.set(e.clientX - this.panX());\n this.startY.set(e.clientY - this.panY());\n }\n\n private handlePointerMove(e: PointerEvent) {\n if (!this.pointerDown() || this.disablePan()) return;\n e.preventDefault();\n this.panX.set(e.clientX - this.startX());\n this.panY.set(e.clientY - this.startY());\n\n this.setElementPosition();\n }\n\n private handlePointerUp(e: PointerEvent) {\n if (!this.pointerDown() || this.disablePan()) return;\n e.preventDefault();\n this.pointerDown.set(false);\n this.wrapper().style.cursor = 'auto';\n }\n\n private handleZoomChange(e: WheelEvent) {\n if (this.disableZoom()) return;\n\n e.preventDefault();\n\n const rect = this.nativeEl().getBoundingClientRect();\n const mouseX = e.clientX - rect.left;\n const mouseY = e.clientY - rect.top;\n\n // Calculate the new zoom based on step\n const zoomDirection = e.deltaY > 0 ? -1 : 1; // Scroll up -> zoom in, scroll down -> zoom out\n const newZoom = Math.round(\n Math.max(this.minZoom(), Math.min(this.maxZoom(), this.zoom() + zoomDirection * this.zoomStep())),\n );\n\n const scaleChange = newZoom / this.zoom();\n\n // Adjust pan to keep zoom centered at the mouse position\n this.panX.update((prev) => prev - (mouseX - rect.width / 2) * (scaleChange - 1));\n this.panY.update((prev) => prev - (mouseY - rect.height / 2) * (scaleChange - 1));\n this.zoom.set(newZoom);\n\n this.setElementPosition();\n }\n\n private sizeChanged() {\n const prevWidth = this.initialWidth();\n const prevHeight = this.initialHeight();\n\n this.initialWidth.set((this.nativeEl().getBoundingClientRect().width * 100) / this.zoom());\n this.initialHeight.set((this.nativeEl().getBoundingClientRect().height * 100) / this.zoom());\n\n const newWidth = this.initialWidth();\n const newHeight = this.initialHeight();\n\n // Maintain the same relative position\n this.panX.update((prev) => prev - (newWidth - prevWidth) / 2);\n this.panY.update((prev) => prev - (newHeight - prevHeight) / 2);\n\n this.setElementPosition();\n }\n\n private setFitContentScale() {\n if (!this.fitContent()) return;\n const height = this.wrapper().clientHeight / this.nativeEl().clientHeight;\n const width = this.wrapper().clientWidth / this.nativeEl().clientWidth;\n this.zoom.set(Math.round(Math.min(height, width) * 100));\n }\n\n setElementPosition() {\n this.nativeEl().style.transform = `translate(${this.panX()}px, ${this.panY()}px) scale(${this.zoom() / 100})`;\n\n this.positionChange.emit({ x: this.panX(), y: this.panY() });\n this.zoomChange.emit(this.zoom());\n }\n\n resetPosition() {\n const containerWidth = this.wrapper().offsetWidth;\n const containerHeight = this.wrapper().offsetHeight;\n\n const boxLeft = (containerWidth - this.initialWidth()) / 2;\n const boxTop = (containerHeight - this.initialHeight()) / 2;\n\n this.panX.set(boxLeft);\n this.panY.set(boxTop);\n\n if (this.fitContent()) this.setFitContentScale();\n else this.zoom.set(100);\n\n this.setElementPosition();\n }\n\n zoomIn() {\n this.zoom.set(Math.round(Math.max(this.minZoom(), Math.min(this.maxZoom(), this.zoom() + this.zoomStep()))));\n this.setElementPosition();\n }\n\n zoomOut() {\n this.zoom.set(Math.round(Math.max(this.minZoom(), Math.min(this.maxZoom(), this.zoom() - this.zoomStep()))));\n this.setElementPosition();\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-pan-view.mjs","sources":["../../../../libs/cdk/pan-view/src/lib/pan-view.directive.ts","../../../../libs/cdk/pan-view/src/acorex-cdk-pan-view.ts"],"sourcesContent":["import { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n afterNextRender,\n computed,\n Directive,\n ElementRef,\n inject,\n input,\n linkedSignal,\n model,\n NgZone,\n OnDestroy,\n output,\n PLATFORM_ID,\n Renderer2,\n signal,\n} from '@angular/core';\n\n@Directive({\n selector: '[axPanView]',\n exportAs: 'axPanView',\n})\nexport class AXPanViewDirective implements OnDestroy {\n private resizeObserver: ResizeObserver;\n\n private platformId = inject(PLATFORM_ID);\n private zone = inject(NgZone);\n private render = inject(Renderer2);\n private document = inject(DOCUMENT);\n private el = inject(ElementRef<HTMLElement>);\n\n private startX = signal(0);\n private startY = signal(0);\n private pointerDown = signal(false);\n private wrapper = signal<HTMLDivElement | null>(null);\n\n zoomStep = input(7);\n minZoom = input(25);\n maxZoom = input(400);\n freeMode = input(false);\n fitContent = input(true);\n disablePan = input(false);\n disableZoom = input(false);\n wrapperClasses = input('');\n\n panX = model(0);\n panY = model(0);\n zoom = model(100);\n\n zoomChange = output<number>();\n positionChange = output<{ x: number; y: number }>();\n\n private nativeEl = computed(() => this.el.nativeElement as HTMLElement);\n\n private initialWidth = linkedSignal(() => this.nativeEl().getBoundingClientRect().width);\n private initialHeight = linkedSignal(() => this.nativeEl().getBoundingClientRect().height);\n\n #anr = afterNextRender(() => {\n // Create Wrapper\n this.createWrapper();\n this.zone.runOutsideAngular(() => {\n // Wheel Event\n this.wrapper().onwheel = (e) => {\n e.preventDefault();\n if (e.ctrlKey || this.freeMode()) {\n this.handleZoomChange(e);\n return;\n } else if (e.shiftKey) {\n if (this.disablePan()) return;\n this.panX.update((prev) => prev - e.deltaY / 3);\n this.setElementPosition();\n } else {\n if (this.disablePan()) return;\n this.panY.update((prev) => prev - e.deltaY / 3);\n this.setElementPosition();\n }\n };\n // Pointer Down Event\n this.wrapper().onpointerdown = (e) => this.handlePointerDown(e);\n // Pointer Move Event\n this.document.onpointermove = (e) => this.handlePointerMove(e);\n // Pointer Up/Leave Event\n this.document.onpointerup = (e) => this.handlePointerUp(e);\n\n if (isPlatformBrowser(this.platformId)) {\n this.resizeObserver = new ResizeObserver(() => this.sizeChanged());\n this.resizeObserver.observe(this.wrapper());\n this.resizeObserver.observe(this.nativeEl());\n }\n });\n setTimeout(() => {\n this.resetPosition();\n });\n });\n\n ngOnDestroy(): void {\n if (isPlatformBrowser(this.platformId)) this.resizeObserver.disconnect();\n }\n\n private createWrapper() {\n this.wrapper.set(this.render.createElement('div'));\n this.render.addClass(this.wrapper(), 'ax-pan-view-wrapper');\n if (this.wrapperClasses()) this.render.addClass(this.wrapper(), this.wrapperClasses());\n\n const parent = this.nativeEl().parentNode;\n this.render.appendChild(this.wrapper(), this.nativeEl());\n this.render.insertBefore(parent, this.wrapper(), this.nativeEl().nextSibling);\n\n this.render.setStyle(this.wrapper(), 'width', '100%');\n this.render.setStyle(this.wrapper(), 'height', '100%');\n this.render.setStyle(this.wrapper(), 'overflow', 'hidden');\n this.render.setStyle(this.wrapper(), 'position', 'relative');\n\n this.render.setStyle(this.nativeEl(), 'top', '0');\n this.render.setStyle(this.nativeEl(), 'left', '0');\n this.render.setStyle(this.nativeEl(), 'position', 'absolute');\n }\n\n private handlePointerDown(e: PointerEvent) {\n if (this.disablePan()) return;\n if (!this.freeMode() && e.pointerType === 'mouse' && e.buttons !== 4) return;\n if (this.freeMode() && e.pointerType === 'mouse' && e.buttons !== 1) return;\n e.preventDefault();\n this.pointerDown.set(true);\n this.wrapper().style.cursor = 'grabbing';\n\n // Update previous position for next move\n this.startX.set(e.clientX - this.panX());\n this.startY.set(e.clientY - this.panY());\n }\n\n private handlePointerMove(e: PointerEvent) {\n if (!this.pointerDown() || this.disablePan()) return;\n e.preventDefault();\n this.panX.set(e.clientX - this.startX());\n this.panY.set(e.clientY - this.startY());\n\n this.setElementPosition();\n }\n\n private handlePointerUp(e: PointerEvent) {\n if (!this.pointerDown() || this.disablePan()) return;\n e.preventDefault();\n this.pointerDown.set(false);\n this.wrapper().style.cursor = 'auto';\n }\n\n private handleZoomChange(e: WheelEvent) {\n if (this.disableZoom()) return;\n\n e.preventDefault();\n\n const rect = this.nativeEl().getBoundingClientRect();\n const mouseX = e.clientX - rect.left;\n const mouseY = e.clientY - rect.top;\n\n // Calculate the new zoom based on step\n const zoomDirection = e.deltaY > 0 ? -1 : 1; // Scroll up -> zoom in, scroll down -> zoom out\n const newZoom = Math.round(\n Math.max(this.minZoom(), Math.min(this.maxZoom(), this.zoom() + zoomDirection * this.zoomStep())),\n );\n\n const scaleChange = newZoom / this.zoom();\n\n // Adjust pan to keep zoom centered at the mouse position\n this.panX.update((prev) => prev - (mouseX - rect.width / 2) * (scaleChange - 1));\n this.panY.update((prev) => prev - (mouseY - rect.height / 2) * (scaleChange - 1));\n this.zoom.set(newZoom);\n\n this.setElementPosition();\n }\n\n private sizeChanged() {\n const prevWidth = this.initialWidth();\n const prevHeight = this.initialHeight();\n\n this.initialWidth.set((this.nativeEl().getBoundingClientRect().width * 100) / this.zoom());\n this.initialHeight.set((this.nativeEl().getBoundingClientRect().height * 100) / this.zoom());\n\n const newWidth = this.initialWidth();\n const newHeight = this.initialHeight();\n\n // Maintain the same relative position\n this.panX.update((prev) => prev - (newWidth - prevWidth) / 2);\n this.panY.update((prev) => prev - (newHeight - prevHeight) / 2);\n\n this.setElementPosition();\n }\n\n private setFitContentScale() {\n if (!this.fitContent()) return;\n const height = this.wrapper().clientHeight / this.nativeEl().clientHeight;\n const width = this.wrapper().clientWidth / this.nativeEl().clientWidth;\n this.zoom.set(Math.round(Math.min(height, width) * 100));\n }\n\n setElementPosition() {\n this.nativeEl().style.transform = `translate(${this.panX()}px, ${this.panY()}px) scale(${this.zoom() / 100})`;\n\n this.positionChange.emit({ x: this.panX(), y: this.panY() });\n this.zoomChange.emit(this.zoom());\n }\n\n resetPosition() {\n const containerWidth = this.wrapper().offsetWidth;\n const containerHeight = this.wrapper().offsetHeight;\n\n const boxLeft = (containerWidth - this.initialWidth()) / 2;\n const boxTop = (containerHeight - this.initialHeight()) / 2;\n\n this.panX.set(boxLeft);\n this.panY.set(boxTop);\n\n if (this.fitContent()) this.setFitContentScale();\n else this.zoom.set(100);\n\n this.setElementPosition();\n }\n\n zoomIn() {\n this.zoom.set(Math.round(Math.max(this.minZoom(), Math.min(this.maxZoom(), this.zoom() + this.zoomStep()))));\n this.setElementPosition();\n }\n\n zoomOut() {\n this.zoom.set(Math.round(Math.max(this.minZoom(), Math.min(this.maxZoom(), this.zoom() - this.zoomStep()))));\n this.setElementPosition();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -231,10 +231,10 @@ class AXResizableDirective {
231
231
  this.el.nativeElement.style.width = 'fit-content';
232
232
  return this.el.nativeElement.clientWidth;
233
233
  }
234
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXResizableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
235
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.9", type: AXResizableDirective, isStandalone: true, selector: "[axResizable]", inputs: { axResizable: { classPropertyName: "axResizable", publicName: "axResizable", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null }, dblClickAction: { classPropertyName: "dblClickAction", publicName: "dblClickAction", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, defaultWidth: { classPropertyName: "defaultWidth", publicName: "defaultWidth", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { axResizable: "axResizableChange", minWidth: "minWidthChange", maxWidth: "maxWidthChange", dblClickAction: "dblClickActionChange", width: "widthChange", defaultWidth: "defaultWidthChange", onResizingStarted: "onResizingStarted", onResizingEnded: "onResizingEnded", onResizingDblClick: "onResizingDblClick" }, ngImport: i0 }); }
234
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXResizableDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
235
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.10", type: AXResizableDirective, isStandalone: true, selector: "[axResizable]", inputs: { axResizable: { classPropertyName: "axResizable", publicName: "axResizable", isSignal: true, isRequired: false, transformFunction: null }, minWidth: { classPropertyName: "minWidth", publicName: "minWidth", isSignal: true, isRequired: false, transformFunction: null }, maxWidth: { classPropertyName: "maxWidth", publicName: "maxWidth", isSignal: true, isRequired: false, transformFunction: null }, dblClickAction: { classPropertyName: "dblClickAction", publicName: "dblClickAction", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, defaultWidth: { classPropertyName: "defaultWidth", publicName: "defaultWidth", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { axResizable: "axResizableChange", minWidth: "minWidthChange", maxWidth: "maxWidthChange", dblClickAction: "dblClickActionChange", width: "widthChange", defaultWidth: "defaultWidthChange", onResizingStarted: "onResizingStarted", onResizingEnded: "onResizingEnded", onResizingDblClick: "onResizingDblClick" }, ngImport: i0 }); }
236
236
  }
237
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXResizableDirective, decorators: [{
237
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXResizableDirective, decorators: [{
238
238
  type: Directive,
239
239
  args: [{
240
240
  selector: '[axResizable]',
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-resizable.mjs","sources":["../../../../libs/cdk/resizable/src/lib/resize.directive.ts","../../../../libs/cdk/resizable/src/acorex-cdk-resizable.ts"],"sourcesContent":["import { AXPlatform } from '@acorex/core/platform';\nimport { AXHtmlUtil } from '@acorex/core/utils';\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Directive, ElementRef, inject, model, NgZone, OnDestroy, output, PLATFORM_ID, signal, WritableSignal } from '@angular/core';\n\n@Directive({\n selector: '[axResizable]',\n})\nexport class AXResizableDirective implements AfterViewInit, OnDestroy {\n private el = inject(ElementRef);\n private platformService = inject(AXPlatform);\n private zone = inject(NgZone);\n private document = inject(DOCUMENT);\n private platformID = inject(PLATFORM_ID);\n private resizeHandle: HTMLElement;\n private isResizing: WritableSignal<boolean> = signal(false);\n private initialElementWidth: number;\n private startMoveWidth: number;\n private resizeObserver = new ResizeObserver((entries) => {\n entries\n .filter((e) => e.target === (this.el.nativeElement as HTMLElement).parentElement)\n .forEach((i) => {\n this.maxWidth.set(i.contentRect.width);\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.platformService.directionChange.subscribe((i) => {\n this.isRTL.set(i.data === 'rtl');\n });\n }\n\n ngAfterViewInit(): void {\n this.initialElementWidth = (this.el.nativeElement as HTMLElement).offsetWidth; // Store the initial width\n\n if (this.width() !== null) {\n (this.el.nativeElement as HTMLElement).style.width = `${this.width()}px`;\n }\n\n if (this.maxWidth() === Infinity) {\n const parentWidth = (this.el.nativeElement as HTMLElement).parentElement?.offsetWidth;\n if (parentWidth) {\n this.maxWidth.set(parentWidth);\n }\n }\n this.resizeObserver.observe((this.el.nativeElement as HTMLElement).parentElement);\n this.createResizeHandle();\n this.setupResizableState();\n }\n\n ngOnDestroy(): void {\n this.resizeObserver.disconnect();\n this.cleanupEventListeners();\n }\n\n // ngDoCheck(): void {\n // console.log('check');\n // }\n\n private setupResizableState(): void {\n this.axResizable.subscribe((isActive) => {\n if (!isActive) {\n this.resetToInitialWidth(); // Reset width when disabled\n this.cleanupEventListeners(); // Remove event listeners\n } else {\n this.createResizeHandle(); // Re-enable functionality\n }\n });\n }\n\n private createResizeHandle(): void {\n if (!this.axResizable()) return; // Do nothing if directive is disabled\n\n (this.el.nativeElement as HTMLElement).style.position = 'relative';\n\n this.resizeHandle = this.document.createElement('div');\n this.resizeHandle.classList.add('ax-resizable-handler');\n (this.el.nativeElement as HTMLElement).appendChild(this.resizeHandle);\n\n const isRTL = this.isRTL();\n Object.assign(this.resizeHandle.style, {\n width: STYLES.handlerWidth,\n backgroundColor: STYLES.backgroundColor,\n position: 'absolute',\n top: '0',\n [isRTL ? 'left' : 'right']: '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.zone.runOutsideAngular(() => {\n this.resizeHandle.addEventListener('mousedown', this.onMouseDown.bind(this));\n this.document.addEventListener('mousemove', this.onMouseMove.bind(this));\n this.document.addEventListener('mouseup', this.onMouseUp.bind(this));\n this.resizeHandle.addEventListener('mouseenter', this.onMouseEnter.bind(this));\n this.resizeHandle.addEventListener('mouseleave', this.onMouseLeave.bind(this));\n this.resizeHandle.addEventListener('dblclick', this.onDoubleClick.bind(this));\n });\n }\n\n private cleanupEventListeners(): void {\n if (this.resizeHandle) {\n this.resizeHandle.removeEventListener('mousedown', this.onMouseDown.bind(this));\n this.resizeHandle.removeEventListener('mouseenter', this.onMouseEnter.bind(this));\n this.resizeHandle.removeEventListener('mouseleave', this.onMouseLeave.bind(this));\n this.resizeHandle.removeEventListener('dblclick', this.onDoubleClick.bind(this));\n\n if (this.resizeHandle.parentElement) {\n this.resizeHandle.parentElement.removeChild(this.resizeHandle);\n }\n }\n\n this.document.removeEventListener('mousemove', this.onMouseMove.bind(this));\n this.document.removeEventListener('mouseup', this.onMouseUp.bind(this));\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 (isPlatformBrowser(this.platformID)) {\n const handleRect = this.resizeHandle.getBoundingClientRect();\n if (event.clientX >= handleRect.left && event.clientX <= handleRect.right) {\n this.isResizing.set(true);\n this.document.body.style.cursor = STYLES.cursorActive;\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColorActive;\n event.preventDefault();\n this.startMoveWidth = (this.el.nativeElement as HTMLElement).offsetWidth;\n this.onResizingStarted.emit({\n component: this,\n htmlElement: this.el.nativeElement as HTMLElement,\n isUserInteraction: true,\n name: 'resizingStarted',\n value: (this.el.nativeElement as HTMLElement).offsetWidth,\n oldValue: (this.el.nativeElement as HTMLElement).offsetWidth,\n });\n }\n }\n }\n\n private onMouseMove(event: MouseEvent): void {\n if (this.isResizing() && isPlatformBrowser(this.platformID)) {\n const rect = (this.el.nativeElement as HTMLElement).getBoundingClientRect();\n const isRTL = this.isRTL();\n let newWidth: number;\n\n if (isRTL) {\n newWidth = rect.right - event.clientX;\n } else {\n newWidth = event.clientX - rect.left;\n }\n\n // Clamp the width to minWidth and maxWidth\n newWidth = Math.max(this.minWidth(), Math.min(newWidth, this.maxWidth()));\n\n // Update the width only if it has changed\n if (newWidth !== (this.el.nativeElement as HTMLElement).offsetWidth) {\n (this.el.nativeElement as HTMLElement).style.width = `${newWidth}px`;\n }\n }\n }\n\n private onMouseUp(): void {\n if (this.isResizing() && isPlatformBrowser(this.platformID)) {\n this.isResizing.set(false);\n this.document.body.style.cursor = '';\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColor;\n\n this.onResizingEnded.emit({\n component: this,\n htmlElement: this.el.nativeElement as HTMLElement,\n isUserInteraction: true,\n name: 'resizingEnded',\n value: (this.el.nativeElement as HTMLElement).offsetWidth,\n oldValue: this.startMoveWidth,\n });\n }\n }\n\n private onMouseEnter(): void {\n if (!this.isResizing()) {\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColorHover;\n }\n }\n\n private onMouseLeave(): void {\n if (!this.isResizing()) {\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColor;\n }\n }\n\n private onDoubleClick(): void {\n const elementWidth = (this.el.nativeElement as HTMLElement).offsetWidth;\n // const maxWidth = this.maxWidth();\n // const initialWidth = this.initialWidth() !== null ? this.initialWidth() : this.initialElementWidth;\n let newWidth: number;\n if (this.dblClickAction() === 'reset') {\n newWidth = this.resetToInitialWidth();\n } else if (this.dblClickAction() === 'maximize') {\n newWidth = this.maximizeToMaxWidth();\n } else {\n newWidth = this.fitToContent();\n }\n\n this.onResizingDblClick.emit({\n component: this,\n htmlElement: this.el.nativeElement as HTMLElement,\n isUserInteraction: true,\n name: 'onResizingDblClick',\n oldValue: elementWidth,\n value: newWidth,\n });\n }\n\n private resetToInitialWidth(): number {\n if (this.defaultWidth() !== null) {\n (this.el.nativeElement as HTMLElement).style.width = `${this.defaultWidth()}px`;\n return this.defaultWidth();\n } else if (this.width() !== null) {\n (this.el.nativeElement as HTMLElement).style.width = `${this.width()}px`;\n return this.width();\n } else {\n (this.el.nativeElement as HTMLElement).style.width = `${this.initialElementWidth}px`;\n return this.initialElementWidth;\n }\n }\n\n private maximizeToMaxWidth() {\n const maxWidth = this.maxWidth();\n if (maxWidth !== Infinity) {\n (this.el.nativeElement as HTMLElement).style.width = `${maxWidth}px`;\n }\n return maxWidth;\n }\n\n private fitToContent() {\n (this.el.nativeElement as HTMLElement).style.width = 'fit-content';\n return (this.el.nativeElement as HTMLElement).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: '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: '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":["../../../../libs/cdk/resizable/src/lib/resize.directive.ts","../../../../libs/cdk/resizable/src/acorex-cdk-resizable.ts"],"sourcesContent":["import { AXPlatform } from '@acorex/core/platform';\nimport { AXHtmlUtil } from '@acorex/core/utils';\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Directive, ElementRef, inject, model, NgZone, OnDestroy, output, PLATFORM_ID, signal, WritableSignal } from '@angular/core';\n\n@Directive({\n selector: '[axResizable]',\n})\nexport class AXResizableDirective implements AfterViewInit, OnDestroy {\n private el = inject(ElementRef);\n private platformService = inject(AXPlatform);\n private zone = inject(NgZone);\n private document = inject(DOCUMENT);\n private platformID = inject(PLATFORM_ID);\n private resizeHandle: HTMLElement;\n private isResizing: WritableSignal<boolean> = signal(false);\n private initialElementWidth: number;\n private startMoveWidth: number;\n private resizeObserver = new ResizeObserver((entries) => {\n entries\n .filter((e) => e.target === (this.el.nativeElement as HTMLElement).parentElement)\n .forEach((i) => {\n this.maxWidth.set(i.contentRect.width);\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.platformService.directionChange.subscribe((i) => {\n this.isRTL.set(i.data === 'rtl');\n });\n }\n\n ngAfterViewInit(): void {\n this.initialElementWidth = (this.el.nativeElement as HTMLElement).offsetWidth; // Store the initial width\n\n if (this.width() !== null) {\n (this.el.nativeElement as HTMLElement).style.width = `${this.width()}px`;\n }\n\n if (this.maxWidth() === Infinity) {\n const parentWidth = (this.el.nativeElement as HTMLElement).parentElement?.offsetWidth;\n if (parentWidth) {\n this.maxWidth.set(parentWidth);\n }\n }\n this.resizeObserver.observe((this.el.nativeElement as HTMLElement).parentElement);\n this.createResizeHandle();\n this.setupResizableState();\n }\n\n ngOnDestroy(): void {\n this.resizeObserver.disconnect();\n this.cleanupEventListeners();\n }\n\n // ngDoCheck(): void {\n // console.log('check');\n // }\n\n private setupResizableState(): void {\n this.axResizable.subscribe((isActive) => {\n if (!isActive) {\n this.resetToInitialWidth(); // Reset width when disabled\n this.cleanupEventListeners(); // Remove event listeners\n } else {\n this.createResizeHandle(); // Re-enable functionality\n }\n });\n }\n\n private createResizeHandle(): void {\n if (!this.axResizable()) return; // Do nothing if directive is disabled\n\n (this.el.nativeElement as HTMLElement).style.position = 'relative';\n\n this.resizeHandle = this.document.createElement('div');\n this.resizeHandle.classList.add('ax-resizable-handler');\n (this.el.nativeElement as HTMLElement).appendChild(this.resizeHandle);\n\n const isRTL = this.isRTL();\n Object.assign(this.resizeHandle.style, {\n width: STYLES.handlerWidth,\n backgroundColor: STYLES.backgroundColor,\n position: 'absolute',\n top: '0',\n [isRTL ? 'left' : 'right']: '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.zone.runOutsideAngular(() => {\n this.resizeHandle.addEventListener('mousedown', this.onMouseDown.bind(this));\n this.document.addEventListener('mousemove', this.onMouseMove.bind(this));\n this.document.addEventListener('mouseup', this.onMouseUp.bind(this));\n this.resizeHandle.addEventListener('mouseenter', this.onMouseEnter.bind(this));\n this.resizeHandle.addEventListener('mouseleave', this.onMouseLeave.bind(this));\n this.resizeHandle.addEventListener('dblclick', this.onDoubleClick.bind(this));\n });\n }\n\n private cleanupEventListeners(): void {\n if (this.resizeHandle) {\n this.resizeHandle.removeEventListener('mousedown', this.onMouseDown.bind(this));\n this.resizeHandle.removeEventListener('mouseenter', this.onMouseEnter.bind(this));\n this.resizeHandle.removeEventListener('mouseleave', this.onMouseLeave.bind(this));\n this.resizeHandle.removeEventListener('dblclick', this.onDoubleClick.bind(this));\n\n if (this.resizeHandle.parentElement) {\n this.resizeHandle.parentElement.removeChild(this.resizeHandle);\n }\n }\n\n this.document.removeEventListener('mousemove', this.onMouseMove.bind(this));\n this.document.removeEventListener('mouseup', this.onMouseUp.bind(this));\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 (isPlatformBrowser(this.platformID)) {\n const handleRect = this.resizeHandle.getBoundingClientRect();\n if (event.clientX >= handleRect.left && event.clientX <= handleRect.right) {\n this.isResizing.set(true);\n this.document.body.style.cursor = STYLES.cursorActive;\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColorActive;\n event.preventDefault();\n this.startMoveWidth = (this.el.nativeElement as HTMLElement).offsetWidth;\n this.onResizingStarted.emit({\n component: this,\n htmlElement: this.el.nativeElement as HTMLElement,\n isUserInteraction: true,\n name: 'resizingStarted',\n value: (this.el.nativeElement as HTMLElement).offsetWidth,\n oldValue: (this.el.nativeElement as HTMLElement).offsetWidth,\n });\n }\n }\n }\n\n private onMouseMove(event: MouseEvent): void {\n if (this.isResizing() && isPlatformBrowser(this.platformID)) {\n const rect = (this.el.nativeElement as HTMLElement).getBoundingClientRect();\n const isRTL = this.isRTL();\n let newWidth: number;\n\n if (isRTL) {\n newWidth = rect.right - event.clientX;\n } else {\n newWidth = event.clientX - rect.left;\n }\n\n // Clamp the width to minWidth and maxWidth\n newWidth = Math.max(this.minWidth(), Math.min(newWidth, this.maxWidth()));\n\n // Update the width only if it has changed\n if (newWidth !== (this.el.nativeElement as HTMLElement).offsetWidth) {\n (this.el.nativeElement as HTMLElement).style.width = `${newWidth}px`;\n }\n }\n }\n\n private onMouseUp(): void {\n if (this.isResizing() && isPlatformBrowser(this.platformID)) {\n this.isResizing.set(false);\n this.document.body.style.cursor = '';\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColor;\n\n this.onResizingEnded.emit({\n component: this,\n htmlElement: this.el.nativeElement as HTMLElement,\n isUserInteraction: true,\n name: 'resizingEnded',\n value: (this.el.nativeElement as HTMLElement).offsetWidth,\n oldValue: this.startMoveWidth,\n });\n }\n }\n\n private onMouseEnter(): void {\n if (!this.isResizing()) {\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColorHover;\n }\n }\n\n private onMouseLeave(): void {\n if (!this.isResizing()) {\n this.resizeHandle.style.backgroundColor = STYLES.backgroundColor;\n }\n }\n\n private onDoubleClick(): void {\n const elementWidth = (this.el.nativeElement as HTMLElement).offsetWidth;\n // const maxWidth = this.maxWidth();\n // const initialWidth = this.initialWidth() !== null ? this.initialWidth() : this.initialElementWidth;\n let newWidth: number;\n if (this.dblClickAction() === 'reset') {\n newWidth = this.resetToInitialWidth();\n } else if (this.dblClickAction() === 'maximize') {\n newWidth = this.maximizeToMaxWidth();\n } else {\n newWidth = this.fitToContent();\n }\n\n this.onResizingDblClick.emit({\n component: this,\n htmlElement: this.el.nativeElement as HTMLElement,\n isUserInteraction: true,\n name: 'onResizingDblClick',\n oldValue: elementWidth,\n value: newWidth,\n });\n }\n\n private resetToInitialWidth(): number {\n if (this.defaultWidth() !== null) {\n (this.el.nativeElement as HTMLElement).style.width = `${this.defaultWidth()}px`;\n return this.defaultWidth();\n } else if (this.width() !== null) {\n (this.el.nativeElement as HTMLElement).style.width = `${this.width()}px`;\n return this.width();\n } else {\n (this.el.nativeElement as HTMLElement).style.width = `${this.initialElementWidth}px`;\n return this.initialElementWidth;\n }\n }\n\n private maximizeToMaxWidth() {\n const maxWidth = this.maxWidth();\n if (maxWidth !== Infinity) {\n (this.el.nativeElement as HTMLElement).style.width = `${maxWidth}px`;\n }\n return maxWidth;\n }\n\n private fitToContent() {\n (this.el.nativeElement as HTMLElement).style.width = 'fit-content';\n return (this.el.nativeElement as HTMLElement).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: '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: '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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"}
@@ -24,10 +24,10 @@ class AXSelectionItemDirective {
24
24
  unselect() {
25
25
  this.isActive.set(false);
26
26
  }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSelectionItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
28
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.9", type: AXSelectionItemDirective, isStandalone: true, selector: "[axSelectionItem]", inputs: { key: { classPropertyName: "key", publicName: "key", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClick: "onClick" }, exportAs: ["axSelectionItem"], ngImport: i0 }); }
27
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSelectionItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
28
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.10", type: AXSelectionItemDirective, isStandalone: true, selector: "[axSelectionItem]", inputs: { key: { classPropertyName: "key", publicName: "key", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClick: "onClick" }, exportAs: ["axSelectionItem"], ngImport: i0 }); }
29
29
  }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSelectionItemDirective, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSelectionItemDirective, decorators: [{
31
31
  type: Directive,
32
32
  args: [{
33
33
  selector: '[axSelectionItem]',
@@ -118,10 +118,10 @@ class AXSelectionGroupDirective {
118
118
  this.selectionItemsClass()[item].isActive.set(true);
119
119
  });
120
120
  }
121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSelectionGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
122
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "19.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: { onSelectionChanged: "onSelectionChanged" }, queries: [{ propertyName: "content", predicate: AXSelectionItemDirective, descendants: true, isSignal: true }, { propertyName: "selectionItemsClass", predicate: AXSelectionItemDirective, descendants: true, isSignal: true }], exportAs: ["axSelectionGroup"], ngImport: i0 }); }
121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSelectionGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
122
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "19.2.10", 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: { onSelectionChanged: "onSelectionChanged" }, queries: [{ propertyName: "content", predicate: AXSelectionItemDirective, descendants: true, isSignal: true }, { propertyName: "selectionItemsClass", predicate: AXSelectionItemDirective, descendants: true, isSignal: true }], exportAs: ["axSelectionGroup"], ngImport: i0 }); }
123
123
  }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSelectionGroupDirective, decorators: [{
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSelectionGroupDirective, decorators: [{
125
125
  type: Directive,
126
126
  args: [{
127
127
  selector: '[axSelectionGroup]',
@@ -132,11 +132,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImpor
132
132
  const COMPONENT = [AXSelectionGroupDirective, AXSelectionItemDirective];
133
133
  const MODULES = [CommonModule];
134
134
  class AXSelectionModule {
135
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSelectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
136
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.9", ngImport: i0, type: AXSelectionModule, imports: [CommonModule, AXSelectionGroupDirective, AXSelectionItemDirective], exports: [AXSelectionGroupDirective, AXSelectionItemDirective] }); }
137
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSelectionModule, imports: [MODULES] }); }
135
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSelectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
136
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.10", ngImport: i0, type: AXSelectionModule, imports: [CommonModule, AXSelectionGroupDirective, AXSelectionItemDirective], exports: [AXSelectionGroupDirective, AXSelectionItemDirective] }); }
137
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSelectionModule, imports: [MODULES] }); }
138
138
  }
139
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSelectionModule, decorators: [{
139
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSelectionModule, decorators: [{
140
140
  type: NgModule,
141
141
  args: [{
142
142
  imports: [...MODULES, ...COMPONENT],
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-selection.mjs","sources":["../../../../libs/cdk/selection/src/lib/selection-item.directive.ts","../../../../libs/cdk/selection/src/lib/selection-group.directive.ts","../../../../libs/cdk/selection/src/lib/selection.module.ts","../../../../libs/cdk/selection/src/acorex-cdk-selection.ts"],"sourcesContent":["import { afterNextRender, Directive, ElementRef, inject, input, 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\n #init = afterNextRender(() => {\n (this.elm.nativeElement as HTMLElement).onclick = () => {\n this.onClick.emit({ sender: this });\n };\n });\n\n public toggle() {\n this.isActive.update((prev) => !prev);\n }\n public select() {\n this.isActive.set(true);\n }\n public unselect() {\n this.isActive.set(false);\n }\n}\n","import { afterNextRender, contentChildren, Directive, effect, input, output, signal } from '@angular/core';\nimport { AXSelectionItemDirective } from './selection-item.directive';\n\n@Directive({\n selector: '[axSelectionGroup]',\n exportAs: 'axSelectionGroup',\n})\nexport class AXSelectionGroupDirective {\n private content = contentChildren(AXSelectionItemDirective, { descendants: true });\n private activeIndex = signal(null);\n multiple = input(false);\n disable = input(false);\n selectedKeys = input<string | string[] | number | number[]>();\n onSelectionChanged = output<{ sender: AXSelectionGroupDirective; selectedKeys: string[] }>();\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.activeIndex.set(e.sender.key());\n if (this.multiple()) {\n element.toggle();\n } else {\n this.selectionItemsClass().forEach((element) => {\n if (element.key() !== this.activeIndex()) {\n element.unselect();\n }\n });\n element.select();\n }\n });\n });\n });\n\n #effect = effect(() => {\n if (!this.selectedKeys()) return;\n\n if (typeof this.selectedKeys() === 'string' || typeof this.selectedKeys() === 'number') {\n this.content().forEach((element) => {\n element.isActive.set(false);\n if (this.selectedKeys() === element.key()) {\n element.isActive.set(true);\n }\n });\n } else if (this.selectedKeys() instanceof Array) {\n (this.selectedKeys() as Array<string>).forEach((index) => {\n this.content().forEach((element) => {\n element.isActive.set(false);\n if (index === element.key()) {\n element.isActive.set(true);\n }\n });\n });\n }\n });\n\n #effect2 = effect(() => {\n if (!this.selectedKeys()) {\n this.selectionItemsClass()[0]?.isActive.set(true);\n }\n });\n\n #effect3 = effect(() => {\n if (!this.activeIndex()) return;\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.onSelectionChanged.emit({ sender: this, selectedKeys: selectedKeys });\n } else {\n this.onSelectionChanged.emit({ sender: this, selectedKeys: [this.activeIndex()] });\n }\n });\n\n activeItemByIndex(...restParams: number[]) {\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 AXSelectionModule {}\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":["../../../../libs/cdk/selection/src/lib/selection-item.directive.ts","../../../../libs/cdk/selection/src/lib/selection-group.directive.ts","../../../../libs/cdk/selection/src/lib/selection.module.ts","../../../../libs/cdk/selection/src/acorex-cdk-selection.ts"],"sourcesContent":["import { afterNextRender, Directive, ElementRef, inject, input, 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\n #init = afterNextRender(() => {\n (this.elm.nativeElement as HTMLElement).onclick = () => {\n this.onClick.emit({ sender: this });\n };\n });\n\n public toggle() {\n this.isActive.update((prev) => !prev);\n }\n public select() {\n this.isActive.set(true);\n }\n public unselect() {\n this.isActive.set(false);\n }\n}\n","import { afterNextRender, contentChildren, Directive, effect, input, output, signal } from '@angular/core';\nimport { AXSelectionItemDirective } from './selection-item.directive';\n\n@Directive({\n selector: '[axSelectionGroup]',\n exportAs: 'axSelectionGroup',\n})\nexport class AXSelectionGroupDirective {\n private content = contentChildren(AXSelectionItemDirective, { descendants: true });\n private activeIndex = signal(null);\n multiple = input(false);\n disable = input(false);\n selectedKeys = input<string | string[] | number | number[]>();\n onSelectionChanged = output<{ sender: AXSelectionGroupDirective; selectedKeys: string[] }>();\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.activeIndex.set(e.sender.key());\n if (this.multiple()) {\n element.toggle();\n } else {\n this.selectionItemsClass().forEach((element) => {\n if (element.key() !== this.activeIndex()) {\n element.unselect();\n }\n });\n element.select();\n }\n });\n });\n });\n\n #effect = effect(() => {\n if (!this.selectedKeys()) return;\n\n if (typeof this.selectedKeys() === 'string' || typeof this.selectedKeys() === 'number') {\n this.content().forEach((element) => {\n element.isActive.set(false);\n if (this.selectedKeys() === element.key()) {\n element.isActive.set(true);\n }\n });\n } else if (this.selectedKeys() instanceof Array) {\n (this.selectedKeys() as Array<string>).forEach((index) => {\n this.content().forEach((element) => {\n element.isActive.set(false);\n if (index === element.key()) {\n element.isActive.set(true);\n }\n });\n });\n }\n });\n\n #effect2 = effect(() => {\n if (!this.selectedKeys()) {\n this.selectionItemsClass()[0]?.isActive.set(true);\n }\n });\n\n #effect3 = effect(() => {\n if (!this.activeIndex()) return;\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.onSelectionChanged.emit({ sender: this, selectedKeys: selectedKeys });\n } else {\n this.onSelectionChanged.emit({ sender: this, selectedKeys: [this.activeIndex()] });\n }\n });\n\n activeItemByIndex(...restParams: number[]) {\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 AXSelectionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -83,10 +83,10 @@ class AXSlidingItemDirective {
83
83
  const el = this.hostElement.nativeElement;
84
84
  el.style.transform = `translate(${pos}px, 0)`;
85
85
  }
86
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSlidingItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
87
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.9", type: AXSlidingItemDirective, isStandalone: true, selector: "[axSlidingItem]", ngImport: i0 }); }
86
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSlidingItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
87
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.10", type: AXSlidingItemDirective, isStandalone: true, selector: "[axSlidingItem]", ngImport: i0 }); }
88
88
  }
89
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSlidingItemDirective, decorators: [{
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSlidingItemDirective, decorators: [{
90
90
  type: Directive,
91
91
  args: [{ selector: '[axSlidingItem]' }]
92
92
  }] });
@@ -94,11 +94,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImpor
94
94
  const COMPONENT = [AXSlidingItemDirective];
95
95
  const MODULES = [CommonModule];
96
96
  class AXSlidingItemDirectiveModule {
97
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSlidingItemDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
98
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.9", ngImport: i0, type: AXSlidingItemDirectiveModule, imports: [CommonModule, AXSlidingItemDirective], exports: [AXSlidingItemDirective] }); }
99
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSlidingItemDirectiveModule, imports: [MODULES] }); }
97
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSlidingItemDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
98
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.10", ngImport: i0, type: AXSlidingItemDirectiveModule, imports: [CommonModule, AXSlidingItemDirective], exports: [AXSlidingItemDirective] }); }
99
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSlidingItemDirectiveModule, imports: [MODULES] }); }
100
100
  }
101
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXSlidingItemDirectiveModule, decorators: [{
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXSlidingItemDirectiveModule, decorators: [{
102
102
  type: NgModule,
103
103
  args: [{
104
104
  imports: [...MODULES, ...COMPONENT],
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-sliding-item.mjs","sources":["../../../../libs/cdk/sliding-item/src/lib/sliding-item.directive.ts","../../../../libs/cdk/sliding-item/src/lib/sliding-item.module.ts","../../../../libs/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","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXSlidingItemDirective } from './sliding-item.directive';\n\nconst COMPONENT = [AXSlidingItemDirective];\nconst MODULES = [CommonModule];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXSlidingItemDirectiveModule {}\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":["../../../../libs/cdk/sliding-item/src/lib/sliding-item.directive.ts","../../../../libs/cdk/sliding-item/src/lib/sliding-item.module.ts","../../../../libs/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","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXSlidingItemDirective } from './sliding-item.directive';\n\nconst COMPONENT = [AXSlidingItemDirective];\nconst MODULES = [CommonModule];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXSlidingItemDirectiveModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -82,10 +82,10 @@ class AXStickyDirective {
82
82
  this.mutationObserver.disconnect();
83
83
  }
84
84
  }
85
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXStickyDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
86
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.9", type: AXStickyDirective, isStandalone: true, selector: "[axSticky]", inputs: { stickyClass: ["axSticky", "stickyClass"], stickyOffset: "stickyOffset", stickyParent: "stickyParent", stickyTarget: "stickyTarget" }, outputs: { isStickyChange: "isStickyChange" }, exportAs: ["axpSticky"], ngImport: i0 }); }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXStickyDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
86
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.10", type: AXStickyDirective, isStandalone: true, selector: "[axSticky]", inputs: { stickyClass: ["axSticky", "stickyClass"], stickyOffset: "stickyOffset", stickyParent: "stickyParent", stickyTarget: "stickyTarget" }, outputs: { isStickyChange: "isStickyChange" }, exportAs: ["axpSticky"], ngImport: i0 }); }
87
87
  }
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: AXStickyDirective, decorators: [{
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.10", ngImport: i0, type: AXStickyDirective, decorators: [{
89
89
  type: Directive,
90
90
  args: [{
91
91
  selector: '[axSticky]',
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-cdk-sticky.mjs","sources":["../../../../libs/cdk/sticky/src/lib/sticky.directive.ts","../../../../libs/cdk/sticky/src/acorex-cdk-sticky.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n NgZone,\n OnDestroy,\n Output,\n Renderer2,\n} from '@angular/core';\n\n@Directive({\n selector: '[axSticky]',\n exportAs: 'axpSticky',\n})\nexport class AXStickyDirective implements AfterViewInit, OnDestroy {\n @Input('axSticky') stickyClass!: string;\n @Input('stickyOffset') stickyOffset = 100;\n @Output() isStickyChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n private _isSticky = false;\n public get isSticky(): boolean {\n return this._isSticky;\n }\n public set isSticky(value: boolean) {\n if (this._isSticky !== value) {\n this._isSticky = value;\n this.isStickyChange.emit(value);\n }\n }\n\n private topOffset!: number;\n private parentElement!: HTMLElement | Window;\n private targetElement!: HTMLElement;\n private mutationObserver!: MutationObserver;\n\n @Input() stickyParent!: string | HTMLElement;\n @Input() stickyTarget!: string;\n\n constructor(\n private element: ElementRef<HTMLDivElement>,\n private renderer: Renderer2,\n private zone: NgZone,\n private cdr: ChangeDetectorRef,\n ) {}\n\n ngAfterViewInit() {\n this.initSticky();\n\n // Add mutation observer for dynamic content\n this.mutationObserver = new MutationObserver(() => {\n this.updateTopOffset();\n });\n\n this.mutationObserver.observe(this.element.nativeElement, {\n childList: true,\n subtree: true,\n });\n\n // Add resize event listener\n window.addEventListener('resize', this.updateTopOffset.bind(this));\n }\n\n private initSticky() {\n if (this.stickyParent instanceof HTMLElement) {\n this.parentElement = this.stickyParent;\n } else {\n this.parentElement = (document.querySelector(this.stickyParent) as HTMLElement) || window;\n }\n\n this.targetElement =\n (document.querySelector(this.stickyTarget) as HTMLElement) || this.element.nativeElement;\n\n this.updateTopOffset();\n this.parentElement.addEventListener('scroll', this.onParentScroll);\n }\n\n private updateTopOffset(): void {\n this.zone.runOutsideAngular(() => {\n const rect = this.targetElement.getBoundingClientRect();\n this.topOffset = rect.top + (window.scrollY || 0);\n });\n }\n\n private onParentScroll = (): void => {\n this.zone.runOutsideAngular(() => {\n const scrollTop =\n this.parentElement === window ? window.scrollY : (this.parentElement as HTMLElement).scrollTop;\n\n const shouldStick = scrollTop + this.stickyOffset >= this.topOffset;\n\n if (shouldStick !== this.isSticky) {\n this.zone.run(() => {\n this.isSticky = shouldStick;\n this.toggleStickyClasses(shouldStick);\n this.cdr.markForCheck();\n });\n }\n });\n };\n\n private toggleStickyClasses(isSticky: boolean): void {\n const classes = this.stickyClass.split(' ').filter(Boolean);\n classes.forEach((className) => {\n if (isSticky) {\n this.renderer.addClass(this.targetElement, className);\n } else {\n this.renderer.removeClass(this.targetElement, className);\n }\n });\n }\n\n ngOnDestroy() {\n this.parentElement.removeEventListener('scroll', this.onParentScroll);\n window.removeEventListener('resize', this.updateTopOffset.bind(this));\n\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\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-sticky.mjs","sources":["../../../../libs/cdk/sticky/src/lib/sticky.directive.ts","../../../../libs/cdk/sticky/src/acorex-cdk-sticky.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n NgZone,\n OnDestroy,\n Output,\n Renderer2,\n} from '@angular/core';\n\n@Directive({\n selector: '[axSticky]',\n exportAs: 'axpSticky',\n})\nexport class AXStickyDirective implements AfterViewInit, OnDestroy {\n @Input('axSticky') stickyClass!: string;\n @Input('stickyOffset') stickyOffset = 100;\n @Output() isStickyChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n private _isSticky = false;\n public get isSticky(): boolean {\n return this._isSticky;\n }\n public set isSticky(value: boolean) {\n if (this._isSticky !== value) {\n this._isSticky = value;\n this.isStickyChange.emit(value);\n }\n }\n\n private topOffset!: number;\n private parentElement!: HTMLElement | Window;\n private targetElement!: HTMLElement;\n private mutationObserver!: MutationObserver;\n\n @Input() stickyParent!: string | HTMLElement;\n @Input() stickyTarget!: string;\n\n constructor(\n private element: ElementRef<HTMLDivElement>,\n private renderer: Renderer2,\n private zone: NgZone,\n private cdr: ChangeDetectorRef,\n ) {}\n\n ngAfterViewInit() {\n this.initSticky();\n\n // Add mutation observer for dynamic content\n this.mutationObserver = new MutationObserver(() => {\n this.updateTopOffset();\n });\n\n this.mutationObserver.observe(this.element.nativeElement, {\n childList: true,\n subtree: true,\n });\n\n // Add resize event listener\n window.addEventListener('resize', this.updateTopOffset.bind(this));\n }\n\n private initSticky() {\n if (this.stickyParent instanceof HTMLElement) {\n this.parentElement = this.stickyParent;\n } else {\n this.parentElement = (document.querySelector(this.stickyParent) as HTMLElement) || window;\n }\n\n this.targetElement =\n (document.querySelector(this.stickyTarget) as HTMLElement) || this.element.nativeElement;\n\n this.updateTopOffset();\n this.parentElement.addEventListener('scroll', this.onParentScroll);\n }\n\n private updateTopOffset(): void {\n this.zone.runOutsideAngular(() => {\n const rect = this.targetElement.getBoundingClientRect();\n this.topOffset = rect.top + (window.scrollY || 0);\n });\n }\n\n private onParentScroll = (): void => {\n this.zone.runOutsideAngular(() => {\n const scrollTop =\n this.parentElement === window ? window.scrollY : (this.parentElement as HTMLElement).scrollTop;\n\n const shouldStick = scrollTop + this.stickyOffset >= this.topOffset;\n\n if (shouldStick !== this.isSticky) {\n this.zone.run(() => {\n this.isSticky = shouldStick;\n this.toggleStickyClasses(shouldStick);\n this.cdr.markForCheck();\n });\n }\n });\n };\n\n private toggleStickyClasses(isSticky: boolean): void {\n const classes = this.stickyClass.split(' ').filter(Boolean);\n classes.forEach((className) => {\n if (isSticky) {\n this.renderer.addClass(this.targetElement, className);\n } else {\n this.renderer.removeClass(this.targetElement, className);\n }\n });\n }\n\n ngOnDestroy() {\n this.parentElement.removeEventListener('scroll', this.onParentScroll);\n window.removeEventListener('resize', this.updateTopOffset.bind(this));\n\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}