ngx-kit 7.0.0 → 7.1.0

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 (40) hide show
  1. package/angle-selector/README.md +34 -34
  2. package/box-shadow/README.md +33 -33
  3. package/color-picker/README.md +52 -52
  4. package/data-table/README.md +120 -120
  5. package/date-picker/README.md +74 -74
  6. package/dialog/README.md +92 -92
  7. package/drag-resize/README.md +55 -55
  8. package/fesm2022/ngx-kit-color-picker.mjs.map +1 -1
  9. package/fesm2022/ngx-kit-date-picker.mjs.map +1 -1
  10. package/fesm2022/ngx-kit-dialog.mjs.map +1 -1
  11. package/fesm2022/ngx-kit-drag-resize.mjs.map +1 -1
  12. package/fesm2022/ngx-kit-drawer-menu.mjs +2 -2
  13. package/fesm2022/ngx-kit-drawer-menu.mjs.map +1 -1
  14. package/fesm2022/ngx-kit-dropzone.mjs.map +1 -1
  15. package/fesm2022/ngx-kit-form-field.mjs.map +1 -1
  16. package/fesm2022/ngx-kit-gallery.mjs +2 -2
  17. package/fesm2022/ngx-kit-gallery.mjs.map +1 -1
  18. package/fesm2022/ngx-kit-grid-layout.mjs +108 -41
  19. package/fesm2022/ngx-kit-grid-layout.mjs.map +1 -1
  20. package/fesm2022/ngx-kit-infinite-scroll.mjs +467 -0
  21. package/fesm2022/ngx-kit-infinite-scroll.mjs.map +1 -0
  22. package/fesm2022/ngx-kit-shared.mjs.map +1 -1
  23. package/fesm2022/ngx-kit-virtual-scroll.mjs +2 -2
  24. package/fesm2022/ngx-kit-virtual-scroll.mjs.map +1 -1
  25. package/fesm2022/ngx-kit-webflow.mjs +38 -38
  26. package/fesm2022/ngx-kit-webflow.mjs.map +1 -1
  27. package/gallery/README.md +71 -71
  28. package/gradient-picker/README.md +41 -41
  29. package/grid-layout/README.md +64 -64
  30. package/image-editor/README.md +44 -44
  31. package/infinite-scroll/README.md +252 -0
  32. package/menu/README.md +85 -85
  33. package/message/README.md +70 -70
  34. package/notify/README.md +56 -56
  35. package/package.json +5 -1
  36. package/shared/README.md +117 -117
  37. package/time-picker/README.md +89 -89
  38. package/types/ngx-kit-grid-layout.d.ts +21 -20
  39. package/types/ngx-kit-infinite-scroll.d.ts +86 -0
  40. package/virtual-scroll/README.md +199 -199
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-kit-dialog.mjs","sources":["../../../projects/libs/dialog/dialog.tokens.ts","../../../projects/libs/dialog/directives/body.directive.ts","../../../projects/libs/dialog/directives/footer.directive.ts","../../../projects/libs/dialog/directives/header.directive.ts","../../../projects/libs/dialog/ngx-dialog.component.ts","../../../projects/libs/dialog/ngx-dialog.component.html","../../../projects/libs/dialog/ngx-dialog-config.ts","../../../projects/libs/dialog/ngx-dialog-ref.ts","../../../projects/libs/dialog/ngx-dialog.service.ts","../../../projects/libs/dialog/dialog.facade.ts","../../../projects/libs/dialog/ngx-dialog.module.ts","../../../projects/libs/dialog/ngx-kit-dialog.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { NgxDialogRef } from './ngx-dialog-ref';\n\nexport const DIALOG_DATA = new InjectionToken<any>('DIALOG_DATA');\nexport const DIALOG_REF = new InjectionToken<NgxDialogRef>('DIALOG_REF');\n","import { AfterViewInit, Directive, ElementRef, inject, Renderer2 } from '@angular/core';\nimport { DIALOG_REF } from '../dialog.tokens';\n\n@Directive({\n standalone: false,\n selector: 'ngx-dialog-body,[ngxDialogBody]',\n host: {\n class: 'dialog-body',\n },\n exportAs: 'ngxDialogBody',\n})\nexport class NgxDialogBodyDirective implements AfterViewInit {\n height?: number;\n\n private _dialogRef = inject(DIALOG_REF);\n constructor(\n public _el: ElementRef<HTMLElement>,\n private _renderer: Renderer2,\n ) {\n this._dialogRef.body = this._el;\n }\n\n ngAfterViewInit(): void {\n this.onWindowResize();\n if (this._dialogRef.dialog && this._dialogRef.dialog.nativeElement) {\n new ResizeObserver(() => {\n this.onWindowResize();\n }).observe(this._dialogRef.dialog.nativeElement);\n }\n }\n\n // @HostListener('window:resize', ['$event'])\n onWindowResize(ev?: Event) {\n if (!window) return;\n let headerH = 0;\n let footerH = 0;\n let dialogH = window.innerHeight;\n if (this._dialogRef.header) {\n headerH = this._dialogRef.header.nativeElement.offsetHeight;\n }\n if (this._dialogRef.footer) {\n footerH = this._dialogRef.footer.nativeElement.offsetHeight;\n }\n if (this._dialogRef.dialog && this._dialogRef.dialog.nativeElement.offsetHeight < dialogH) {\n dialogH = this._dialogRef.dialog.nativeElement.offsetHeight;\n }\n this.height = dialogH - headerH - footerH;\n this._renderer.setStyle(this._el.nativeElement, 'max-height', this.height + 'px');\n // console.log(this.height, ':', 'windowHeight', dialogH, 'h', headerH, 'f', footerH);\n }\n}\n","import { Directive, ElementRef, inject, Input, OnInit } from '@angular/core';\nimport { DIALOG_REF } from '../dialog.tokens';\n\n@Directive({\n standalone: false,\n selector: 'ngx-dialog-footer,[ngxDialogFooter]',\n host: {\n class: 'dialog-footer',\n '[class.align-start]': 'align===\"start\"',\n '[class.align-end]': 'align===\"end\"',\n '[class.align-space-between]': 'align===\"space-between\"',\n '[class.align-center]': 'align===\"center\"',\n '[class.align-space-around]': 'align===\"space-around\"',\n },\n exportAs: 'ngxDialogFooter',\n})\nexport class NgxDialogFooterDirective implements OnInit {\n @Input() align: 'start' | 'end' | 'space-between' | 'center' | 'space-around' = 'end';\n\n private _dialogRef = inject(DIALOG_REF);\n constructor(public _el: ElementRef<HTMLElement>) {}\n\n ngOnInit(): void {\n this._dialogRef.footer = this._el;\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { Directive, ElementRef, inject, Inject, Input, OnInit } from '@angular/core';\nimport { DIALOG_REF } from '../dialog.tokens';\n\n@Directive({\n standalone: false,\n selector: 'ngx-dialog-header,[ngxDialogHeader]',\n host: {\n class: 'dialog-header',\n },\n exportAs: 'ngxDialogHeader',\n})\nexport class NgxDialogHeaderDirective implements OnInit {\n @Input() showCloseButton = true;\n\n private _dialogRef = inject(DIALOG_REF);\n constructor(\n public _el: ElementRef<HTMLElement>,\n @Inject(DOCUMENT) private _document: Document,\n ) {}\n\n ngOnInit(): void {\n this._el.nativeElement.innerHTML = '<span>' + this._el.nativeElement.innerHTML + '</span>';\n if (this.showCloseButton) {\n let closeBtn = this._document.createElement('button');\n closeBtn.className = 'close-btn';\n closeBtn.innerHTML =\n '<svg width=\"20\" height=\"20\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path d=\"M312.1 375c9.369 9.369 9.369 24.57 0 33.94s-24.57 9.369-33.94 0L160 289.9l-119 119c-9.369 9.369-24.57 9.369-33.94 0s-9.369-24.57 0-33.94L126.1 256L7.027 136.1c-9.369-9.369-9.369-24.57 0-33.94s24.57-9.369 33.94 0L160 222.1l119-119c9.369-9.369 24.57-9.369 33.94 0s9.369 24.57 0 33.94L193.9 256L312.1 375z\"/></svg>';\n\n closeBtn.onclick = closeBtn.ontouchend = () => {\n this._dialogRef.close();\n };\n this._el.nativeElement.appendChild(closeBtn);\n }\n this._dialogRef.header = this._el;\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n inject,\n OnDestroy,\n OnInit,\n Type,\n ViewChild,\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { NgxDialogConfig } from './ngx-dialog-config';\nimport { DIALOG_REF } from './dialog.tokens';\n\n@Component({\n standalone: false,\n templateUrl: './ngx-dialog.component.html',\n styleUrls: ['./ngx-dialog.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgxDialogComponent implements OnInit, AfterViewInit, OnDestroy {\n config?: NgxDialogConfig;\n component!: Type<any>;\n private readonly _onClose = new Subject<void>();\n public onClose = this._onClose.asObservable();\n @ViewChild('ngxDialog') ngxDialog?: ElementRef<HTMLElement>;\n\n _dialogRef = inject(DIALOG_REF);\n private cd = inject(ChangeDetectorRef);\n constructor() {}\n\n ngOnInit(): void {}\n\n ngAfterViewInit(): void {\n this._dialogRef.dialog = this.ngxDialog;\n this.setStyle();\n this.cd.detectChanges();\n }\n\n ngOnDestroy(): void {}\n\n onOverlayClicked(evt: MouseEvent): void {\n if (this.config?.allowCloseOnOutsideClick) {\n this._dialogRef.close();\n }\n }\n\n onDialogClicked(evt: MouseEvent): void {\n evt.stopPropagation();\n }\n\n close(): void {\n this._onClose.next();\n }\n\n setStyle() {\n if (this.ngxDialog) {\n if (this.config?.width) {\n this.ngxDialog.nativeElement.style.width = this.config.width;\n }\n if (this.config?.maxWidth) {\n this.ngxDialog.nativeElement.style.maxWidth = this.config.maxWidth;\n } else {\n this.ngxDialog.nativeElement.style.maxWidth = '100%';\n }\n if (this.config?.minWidth) {\n this.ngxDialog.nativeElement.style.minWidth = this.config.minWidth;\n }\n if (this.config?.height) {\n this.ngxDialog.nativeElement.style.height = this.config.height;\n }\n if (this.config?.maxHeight) {\n this.ngxDialog.nativeElement.style.maxHeight = this.config.maxHeight;\n } else {\n this.ngxDialog.nativeElement.style.maxHeight = '100%';\n }\n if (this.config?.minHeight) {\n this.ngxDialog.nativeElement.style.minHeight = this.config.minHeight;\n }\n }\n }\n}\n","<div class=\"ngx-dialog-overlay\" (click)=\"onOverlayClicked($event)\">\n <div class=\"ngx-dialog\" (click)=\"onDialogClicked($event)\" #ngxDialog>\n <ng-container *ngComponentOutlet=\"component\"></ng-container>\n </div>\n</div>\n","import { Injector } from '@angular/core';\n\nexport class NgxDialogConfig<DataType = any> {\n /**\n * pass data to dialog\n */\n data?: DataType | any = {};\n /** close dialog on outside click\n * - default false */\n allowCloseOnOutsideClick?: boolean = false;\n /**\n * container class\n * - You can separate the list of classes with a space\n * - for example:\"`my class one two three ...`\"\n *\n * TODO: must set with public config setter\n */\n containerClass? = 'ngx-kit';\n header?: {\n enable?: true;\n title?: '';\n showCloseButton?: true;\n };\n footer?: {\n enable?: true;\n };\n width?: string = '';\n minWidth?: string = '';\n maxWidth?: string = '';\n height?: string = '';\n minHeight?: string = '';\n maxHeight?: string = '';\n\n /** parent injector */\n injector?: Injector;\n\n constructor() {}\n}\n","import { ElementRef } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nexport class NgxDialogRef {\n dialog?: ElementRef<HTMLElement>;\n header?: ElementRef<HTMLElement>;\n footer?: ElementRef<HTMLElement>;\n body?: ElementRef<HTMLElement>;\n private readonly _afterClosed = new Subject<any>();\n\n afterClosed: Observable<any> = this._afterClosed.asObservable();\n\n id?: string;\n close(result?: any): void {\n this._afterClosed.next(result);\n }\n}\n","import {\n ApplicationRef,\n ComponentRef,\n createComponent,\n EmbeddedViewRef,\n EnvironmentInjector,\n Injectable,\n Injector,\n Provider,\n runInInjectionContext,\n Type,\n} from '@angular/core';\nimport { NgxDialogConfig } from './ngx-dialog-config';\nimport { NgxDialogRef } from './ngx-dialog-ref';\nimport { NgxDialogComponent } from './ngx-dialog.component';\nimport { DIALOG_DATA, DIALOG_REF } from './dialog.tokens';\nimport { randomStrnig } from 'ngx-kit/shared';\n\n@Injectable()\nexport class NgxOverlayService {\n dialogComponentRefs: ComponentRef<NgxDialogComponent>[] = [];\n _defaultOptions: NgxDialogConfig | undefined;\n constructor(\n private appRef: ApplicationRef,\n private injector: Injector,\n private envInjector: EnvironmentInjector,\n ) {}\n\n public open(component: Type<any>, config?: NgxDialogConfig): NgxDialogRef {\n const dialogRef = this._open(component, config);\n return dialogRef;\n }\n\n private _open(component: Type<any>, config?: NgxDialogConfig): NgxDialogRef {\n config = { ...(this._defaultOptions || new NgxDialogConfig()), ...config };\n const map = new WeakMap();\n map.set(NgxDialogConfig, config);\n\n const dialogRef = new NgxDialogRef();\n dialogRef.id = this.getDialogId;\n map.set(NgxDialogRef, dialogRef);\n\n const sub = dialogRef.afterClosed.subscribe(() => {\n // close the dialog\n this.removeDialogComponentFromBody(dialogRef.id);\n sub.unsubscribe();\n });\n\n // ✅ ساخت Injector اختصاصی با DestroyRef\n const componentInjector = Injector.create({\n providers: [\n NgxDialogRef,\n { provide: DIALOG_DATA, useValue: config.data },\n { provide: DIALOG_REF, useValue: dialogRef, multi: false },\n ],\n parent: config?.injector ? config.injector : this.envInjector,\n });\n\n const componentRef: ComponentRef<NgxDialogComponent> = runInInjectionContext(\n componentInjector,\n () =>\n createComponent(NgxDialogComponent, {\n elementInjector: componentInjector,\n environmentInjector: this.envInjector,\n }),\n );\n\n this.appRef.attachView(componentRef.hostView);\n this.appendDialogComponentToBody(componentRef, config);\n componentRef.instance.config = config;\n componentRef.instance.component = component;\n //componentRef.instance._dialogRef = dialogRef;\n this.dialogComponentRefs.push(componentRef);\n return dialogRef;\n }\n\n private removeDialogComponentFromBody(id?: string): void {\n if (!id) {\n return;\n }\n const index = this.dialogComponentRefs.findIndex((x) => x.instance._dialogRef.id == id);\n if (index > -1 && this.dialogComponentRefs[index]) {\n this.appRef.detachView(this.dialogComponentRefs[index].hostView);\n this.dialogComponentRefs[index].destroy();\n this.dialogComponentRefs.splice(index, 1);\n }\n }\n\n private appendDialogComponentToBody(\n componentRef: ComponentRef<NgxDialogComponent>,\n config: NgxDialogConfig,\n ) {\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n if (config.containerClass) {\n for (let c of config.containerClass.split(' ')) {\n if (c.trim()) domElem.classList.add(c);\n }\n }\n document.body.appendChild(domElem);\n }\n\n closeAll() {\n for (let index = 0; index < this.dialogComponentRefs.length; index++) {\n if (this.dialogComponentRefs[index]) {\n this.appRef.detachView(this.dialogComponentRefs[index].hostView);\n this.dialogComponentRefs[index].destroy();\n }\n }\n this.dialogComponentRefs = [];\n }\n\n private get getDialogId() {\n return randomStrnig(10, true);\n }\n}\n","import { Type } from '@angular/core';\nimport { NgxDialogConfig } from './ngx-dialog-config';\nimport { NgxOverlayService } from './ngx-dialog.service';\nimport { NgxDialogRef } from './ngx-dialog-ref';\n\nexport class Dialog {\n private static serviceInstance: NgxOverlayService | null = null;\n static _setService(svc: NgxOverlayService) {\n this.serviceInstance = svc;\n }\n\n static open<DataType>(component: Type<any>, config?: NgxDialogConfig<DataType>): NgxDialogRef {\n if (!this.serviceInstance) {\n throw Error('ngx-dialog: service not initialized. Ensure NgxDialogModule is imported.');\n }\n return this.serviceInstance.open(component, config);\n }\n}\n","import { CommonModule, isPlatformServer } from '@angular/common';\nimport { NgModule, Optional, PLATFORM_ID, SkipSelf, inject } from '@angular/core';\nimport { NgxDialogBodyDirective } from './directives/body.directive';\nimport { NgxDialogFooterDirective } from './directives/footer.directive';\nimport { NgxDialogHeaderDirective } from './directives/header.directive';\nimport { NgxDialogComponent } from './ngx-dialog.component';\nimport { NgxOverlayService } from './ngx-dialog.service';\nimport { Dialog as DialogFacade } from './dialog.facade';\n\n@NgModule({\n declarations: [\n NgxDialogComponent,\n NgxDialogHeaderDirective,\n NgxDialogFooterDirective,\n NgxDialogBodyDirective,\n ],\n imports: [CommonModule],\n exports: [\n NgxDialogComponent,\n NgxDialogHeaderDirective,\n NgxDialogFooterDirective,\n NgxDialogBodyDirective,\n ],\n providers: [NgxOverlayService],\n})\nexport class NgxDialogModule {\n private readonly platformId = inject(PLATFORM_ID);\n\n constructor(\n @Optional() @SkipSelf() parentModule: NgxDialogModule | null,\n service: NgxOverlayService,\n ) {\n if (parentModule) {\n return;\n }\n\n // API استاتیک Dialog.open(...) روی یک static field کلاسی پیاده شده تا\n // بدون تزریق دستی سرویس هم قابل استفاده باشه. این static field برای کل\n // پروسه‌ی Node.js مشترکه، نه به‌ازای هر درخواست — پس در Angular SSR،\n // چند درخواست هم‌زمان می‌تونستن instance همدیگه رو overwrite کنن و\n // دیالوگ یک کاربر با ApplicationRef اشتباه (کاربر دیگه) کار کنه.\n // به‌جای این‌که این باگ به‌صورت خاموش رخ بده، روی سرور اصلاً static\n // instance رو ست نمی‌کنیم؛ Dialog.open() روی سرور با همون خطای\n // «service not initialized» که از قبل وجود داشت fail می‌کنه (fail-loud\n // به‌جای corrupt خاموش). برای SSR باید NgxOverlayService رو مستقیم\n // inject کرد (که per-request/per-injector امنه)، نه از API استاتیک\n // استفاده کرد. رفتار کلاینت (که ۹۹٪ کاربردهاست) کاملاً بدون تغییره.\n if (isPlatformServer(this.platformId)) {\n return;\n }\n\n DialogFacade._setService(service);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["DialogFacade","i1.NgxOverlayService"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-kit-dialog.mjs","sources":["../../../projects/libs/dialog/dialog.tokens.ts","../../../projects/libs/dialog/directives/body.directive.ts","../../../projects/libs/dialog/directives/footer.directive.ts","../../../projects/libs/dialog/directives/header.directive.ts","../../../projects/libs/dialog/ngx-dialog.component.ts","../../../projects/libs/dialog/ngx-dialog.component.html","../../../projects/libs/dialog/ngx-dialog-config.ts","../../../projects/libs/dialog/ngx-dialog-ref.ts","../../../projects/libs/dialog/ngx-dialog.service.ts","../../../projects/libs/dialog/dialog.facade.ts","../../../projects/libs/dialog/ngx-dialog.module.ts","../../../projects/libs/dialog/ngx-kit-dialog.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { NgxDialogRef } from './ngx-dialog-ref';\n\nexport const DIALOG_DATA = new InjectionToken<any>('DIALOG_DATA');\nexport const DIALOG_REF = new InjectionToken<NgxDialogRef>('DIALOG_REF');\n","import { AfterViewInit, Directive, ElementRef, inject, Renderer2 } from '@angular/core';\nimport { DIALOG_REF } from '../dialog.tokens';\n\n@Directive({\n standalone: false,\n selector: 'ngx-dialog-body,[ngxDialogBody]',\n host: {\n class: 'dialog-body',\n },\n exportAs: 'ngxDialogBody',\n})\nexport class NgxDialogBodyDirective implements AfterViewInit {\n height?: number;\n\n private _dialogRef = inject(DIALOG_REF);\n constructor(\n public _el: ElementRef<HTMLElement>,\n private _renderer: Renderer2,\n ) {\n this._dialogRef.body = this._el;\n }\n\n ngAfterViewInit(): void {\n this.onWindowResize();\n if (this._dialogRef.dialog && this._dialogRef.dialog.nativeElement) {\n new ResizeObserver(() => {\n this.onWindowResize();\n }).observe(this._dialogRef.dialog.nativeElement);\n }\n }\n\n // @HostListener('window:resize', ['$event'])\n onWindowResize(ev?: Event) {\n if (!window) return;\n let headerH = 0;\n let footerH = 0;\n let dialogH = window.innerHeight;\n if (this._dialogRef.header) {\n headerH = this._dialogRef.header.nativeElement.offsetHeight;\n }\n if (this._dialogRef.footer) {\n footerH = this._dialogRef.footer.nativeElement.offsetHeight;\n }\n if (this._dialogRef.dialog && this._dialogRef.dialog.nativeElement.offsetHeight < dialogH) {\n dialogH = this._dialogRef.dialog.nativeElement.offsetHeight;\n }\n this.height = dialogH - headerH - footerH;\n this._renderer.setStyle(this._el.nativeElement, 'max-height', this.height + 'px');\n // console.log(this.height, ':', 'windowHeight', dialogH, 'h', headerH, 'f', footerH);\n }\n}\n","import { Directive, ElementRef, inject, Input, OnInit } from '@angular/core';\nimport { DIALOG_REF } from '../dialog.tokens';\n\n@Directive({\n standalone: false,\n selector: 'ngx-dialog-footer,[ngxDialogFooter]',\n host: {\n class: 'dialog-footer',\n '[class.align-start]': 'align===\"start\"',\n '[class.align-end]': 'align===\"end\"',\n '[class.align-space-between]': 'align===\"space-between\"',\n '[class.align-center]': 'align===\"center\"',\n '[class.align-space-around]': 'align===\"space-around\"',\n },\n exportAs: 'ngxDialogFooter',\n})\nexport class NgxDialogFooterDirective implements OnInit {\n @Input() align: 'start' | 'end' | 'space-between' | 'center' | 'space-around' = 'end';\n\n private _dialogRef = inject(DIALOG_REF);\n constructor(public _el: ElementRef<HTMLElement>) {}\n\n ngOnInit(): void {\n this._dialogRef.footer = this._el;\n }\n}\n","import { DOCUMENT } from '@angular/common';\r\nimport { Directive, ElementRef, inject, Inject, Input, OnInit } from '@angular/core';\r\nimport { DIALOG_REF } from '../dialog.tokens';\r\n\r\n@Directive({\r\n standalone: false,\r\n selector: 'ngx-dialog-header,[ngxDialogHeader]',\r\n host: {\r\n class: 'dialog-header',\r\n },\r\n exportAs: 'ngxDialogHeader',\r\n})\r\nexport class NgxDialogHeaderDirective implements OnInit {\r\n @Input() showCloseButton = true;\r\n\r\n private _dialogRef = inject(DIALOG_REF);\r\n constructor(\r\n public _el: ElementRef<HTMLElement>,\r\n @Inject(DOCUMENT) private _document: Document,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this._el.nativeElement.innerHTML = '<span>' + this._el.nativeElement.innerHTML + '</span>';\r\n if (this.showCloseButton) {\r\n let closeBtn = this._document.createElement('button');\r\n closeBtn.className = 'close-btn';\r\n closeBtn.innerHTML =\r\n '<svg width=\"20\" height=\"20\" fill=\"currentColor\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path d=\"M312.1 375c9.369 9.369 9.369 24.57 0 33.94s-24.57 9.369-33.94 0L160 289.9l-119 119c-9.369 9.369-24.57 9.369-33.94 0s-9.369-24.57 0-33.94L126.1 256L7.027 136.1c-9.369-9.369-9.369-24.57 0-33.94s24.57-9.369 33.94 0L160 222.1l119-119c9.369-9.369 24.57-9.369 33.94 0s9.369 24.57 0 33.94L193.9 256L312.1 375z\"/></svg>';\r\n\r\n closeBtn.onclick = closeBtn.ontouchend = () => {\r\n this._dialogRef.close();\r\n };\r\n this._el.nativeElement.appendChild(closeBtn);\r\n }\r\n this._dialogRef.header = this._el;\r\n }\r\n}\r\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n inject,\n OnDestroy,\n OnInit,\n Type,\n ViewChild,\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { NgxDialogConfig } from './ngx-dialog-config';\nimport { DIALOG_REF } from './dialog.tokens';\n\n@Component({\n standalone: false,\n templateUrl: './ngx-dialog.component.html',\n styleUrls: ['./ngx-dialog.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgxDialogComponent implements OnInit, AfterViewInit, OnDestroy {\n config?: NgxDialogConfig;\n component!: Type<any>;\n private readonly _onClose = new Subject<void>();\n public onClose = this._onClose.asObservable();\n @ViewChild('ngxDialog') ngxDialog?: ElementRef<HTMLElement>;\n\n _dialogRef = inject(DIALOG_REF);\n private cd = inject(ChangeDetectorRef);\n constructor() {}\n\n ngOnInit(): void {}\n\n ngAfterViewInit(): void {\n this._dialogRef.dialog = this.ngxDialog;\n this.setStyle();\n this.cd.detectChanges();\n }\n\n ngOnDestroy(): void {}\n\n onOverlayClicked(evt: MouseEvent): void {\n if (this.config?.allowCloseOnOutsideClick) {\n this._dialogRef.close();\n }\n }\n\n onDialogClicked(evt: MouseEvent): void {\n evt.stopPropagation();\n }\n\n close(): void {\n this._onClose.next();\n }\n\n setStyle() {\n if (this.ngxDialog) {\n if (this.config?.width) {\n this.ngxDialog.nativeElement.style.width = this.config.width;\n }\n if (this.config?.maxWidth) {\n this.ngxDialog.nativeElement.style.maxWidth = this.config.maxWidth;\n } else {\n this.ngxDialog.nativeElement.style.maxWidth = '100%';\n }\n if (this.config?.minWidth) {\n this.ngxDialog.nativeElement.style.minWidth = this.config.minWidth;\n }\n if (this.config?.height) {\n this.ngxDialog.nativeElement.style.height = this.config.height;\n }\n if (this.config?.maxHeight) {\n this.ngxDialog.nativeElement.style.maxHeight = this.config.maxHeight;\n } else {\n this.ngxDialog.nativeElement.style.maxHeight = '100%';\n }\n if (this.config?.minHeight) {\n this.ngxDialog.nativeElement.style.minHeight = this.config.minHeight;\n }\n }\n }\n}\n","<div class=\"ngx-dialog-overlay\" (click)=\"onOverlayClicked($event)\">\n <div class=\"ngx-dialog\" (click)=\"onDialogClicked($event)\" #ngxDialog>\n <ng-container *ngComponentOutlet=\"component\"></ng-container>\n </div>\n</div>\n","import { Injector } from '@angular/core';\n\nexport class NgxDialogConfig<DataType = any> {\n /**\n * pass data to dialog\n */\n data?: DataType | any = {};\n /** close dialog on outside click\n * - default false */\n allowCloseOnOutsideClick?: boolean = false;\n /**\n * container class\n * - You can separate the list of classes with a space\n * - for example:\"`my class one two three ...`\"\n *\n * TODO: must set with public config setter\n */\n containerClass? = 'ngx-kit';\n header?: {\n enable?: true;\n title?: '';\n showCloseButton?: true;\n };\n footer?: {\n enable?: true;\n };\n width?: string = '';\n minWidth?: string = '';\n maxWidth?: string = '';\n height?: string = '';\n minHeight?: string = '';\n maxHeight?: string = '';\n\n /** parent injector */\n injector?: Injector;\n\n constructor() {}\n}\n","import { ElementRef } from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\n\nexport class NgxDialogRef {\n dialog?: ElementRef<HTMLElement>;\n header?: ElementRef<HTMLElement>;\n footer?: ElementRef<HTMLElement>;\n body?: ElementRef<HTMLElement>;\n private readonly _afterClosed = new Subject<any>();\n\n afterClosed: Observable<any> = this._afterClosed.asObservable();\n\n id?: string;\n close(result?: any): void {\n this._afterClosed.next(result);\n }\n}\n","import {\n ApplicationRef,\n ComponentRef,\n createComponent,\n EmbeddedViewRef,\n EnvironmentInjector,\n Injectable,\n Injector,\n Provider,\n runInInjectionContext,\n Type,\n} from '@angular/core';\nimport { NgxDialogConfig } from './ngx-dialog-config';\nimport { NgxDialogRef } from './ngx-dialog-ref';\nimport { NgxDialogComponent } from './ngx-dialog.component';\nimport { DIALOG_DATA, DIALOG_REF } from './dialog.tokens';\nimport { randomStrnig } from 'ngx-kit/shared';\n\n@Injectable()\nexport class NgxOverlayService {\n dialogComponentRefs: ComponentRef<NgxDialogComponent>[] = [];\n _defaultOptions: NgxDialogConfig | undefined;\n constructor(\n private appRef: ApplicationRef,\n private injector: Injector,\n private envInjector: EnvironmentInjector,\n ) {}\n\n public open(component: Type<any>, config?: NgxDialogConfig): NgxDialogRef {\n const dialogRef = this._open(component, config);\n return dialogRef;\n }\n\n private _open(component: Type<any>, config?: NgxDialogConfig): NgxDialogRef {\n config = { ...(this._defaultOptions || new NgxDialogConfig()), ...config };\n const map = new WeakMap();\n map.set(NgxDialogConfig, config);\n\n const dialogRef = new NgxDialogRef();\n dialogRef.id = this.getDialogId;\n map.set(NgxDialogRef, dialogRef);\n\n const sub = dialogRef.afterClosed.subscribe(() => {\n // close the dialog\n this.removeDialogComponentFromBody(dialogRef.id);\n sub.unsubscribe();\n });\n\n // ✅ ساخت Injector اختصاصی با DestroyRef\n const componentInjector = Injector.create({\n providers: [\n NgxDialogRef,\n { provide: DIALOG_DATA, useValue: config.data },\n { provide: DIALOG_REF, useValue: dialogRef, multi: false },\n ],\n parent: config?.injector ? config.injector : this.envInjector,\n });\n\n const componentRef: ComponentRef<NgxDialogComponent> = runInInjectionContext(\n componentInjector,\n () =>\n createComponent(NgxDialogComponent, {\n elementInjector: componentInjector,\n environmentInjector: this.envInjector,\n }),\n );\n\n this.appRef.attachView(componentRef.hostView);\n this.appendDialogComponentToBody(componentRef, config);\n componentRef.instance.config = config;\n componentRef.instance.component = component;\n //componentRef.instance._dialogRef = dialogRef;\n this.dialogComponentRefs.push(componentRef);\n return dialogRef;\n }\n\n private removeDialogComponentFromBody(id?: string): void {\n if (!id) {\n return;\n }\n const index = this.dialogComponentRefs.findIndex((x) => x.instance._dialogRef.id == id);\n if (index > -1 && this.dialogComponentRefs[index]) {\n this.appRef.detachView(this.dialogComponentRefs[index].hostView);\n this.dialogComponentRefs[index].destroy();\n this.dialogComponentRefs.splice(index, 1);\n }\n }\n\n private appendDialogComponentToBody(\n componentRef: ComponentRef<NgxDialogComponent>,\n config: NgxDialogConfig,\n ) {\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n if (config.containerClass) {\n for (let c of config.containerClass.split(' ')) {\n if (c.trim()) domElem.classList.add(c);\n }\n }\n document.body.appendChild(domElem);\n }\n\n closeAll() {\n for (let index = 0; index < this.dialogComponentRefs.length; index++) {\n if (this.dialogComponentRefs[index]) {\n this.appRef.detachView(this.dialogComponentRefs[index].hostView);\n this.dialogComponentRefs[index].destroy();\n }\n }\n this.dialogComponentRefs = [];\n }\n\n private get getDialogId() {\n return randomStrnig(10, true);\n }\n}\n","import { Type } from '@angular/core';\nimport { NgxDialogConfig } from './ngx-dialog-config';\nimport { NgxOverlayService } from './ngx-dialog.service';\nimport { NgxDialogRef } from './ngx-dialog-ref';\n\nexport class Dialog {\n private static serviceInstance: NgxOverlayService | null = null;\n static _setService(svc: NgxOverlayService) {\n this.serviceInstance = svc;\n }\n\n static open<DataType>(component: Type<any>, config?: NgxDialogConfig<DataType>): NgxDialogRef {\n if (!this.serviceInstance) {\n throw Error('ngx-dialog: service not initialized. Ensure NgxDialogModule is imported.');\n }\n return this.serviceInstance.open(component, config);\n }\n}\n","import { CommonModule, isPlatformServer } from '@angular/common';\nimport { NgModule, Optional, PLATFORM_ID, SkipSelf, inject } from '@angular/core';\nimport { NgxDialogBodyDirective } from './directives/body.directive';\nimport { NgxDialogFooterDirective } from './directives/footer.directive';\nimport { NgxDialogHeaderDirective } from './directives/header.directive';\nimport { NgxDialogComponent } from './ngx-dialog.component';\nimport { NgxOverlayService } from './ngx-dialog.service';\nimport { Dialog as DialogFacade } from './dialog.facade';\n\n@NgModule({\n declarations: [\n NgxDialogComponent,\n NgxDialogHeaderDirective,\n NgxDialogFooterDirective,\n NgxDialogBodyDirective,\n ],\n imports: [CommonModule],\n exports: [\n NgxDialogComponent,\n NgxDialogHeaderDirective,\n NgxDialogFooterDirective,\n NgxDialogBodyDirective,\n ],\n providers: [NgxOverlayService],\n})\nexport class NgxDialogModule {\n private readonly platformId = inject(PLATFORM_ID);\n\n constructor(\n @Optional() @SkipSelf() parentModule: NgxDialogModule | null,\n service: NgxOverlayService,\n ) {\n if (parentModule) {\n return;\n }\n\n // API استاتیک Dialog.open(...) روی یک static field کلاسی پیاده شده تا\n // بدون تزریق دستی سرویس هم قابل استفاده باشه. این static field برای کل\n // پروسه‌ی Node.js مشترکه، نه به‌ازای هر درخواست — پس در Angular SSR،\n // چند درخواست هم‌زمان می‌تونستن instance همدیگه رو overwrite کنن و\n // دیالوگ یک کاربر با ApplicationRef اشتباه (کاربر دیگه) کار کنه.\n // به‌جای این‌که این باگ به‌صورت خاموش رخ بده، روی سرور اصلاً static\n // instance رو ست نمی‌کنیم؛ Dialog.open() روی سرور با همون خطای\n // «service not initialized» که از قبل وجود داشت fail می‌کنه (fail-loud\n // به‌جای corrupt خاموش). برای SSR باید NgxOverlayService رو مستقیم\n // inject کرد (که per-request/per-injector امنه)، نه از API استاتیک\n // استفاده کرد. رفتار کلاینت (که ۹۹٪ کاربردهاست) کاملاً بدون تغییره.\n if (isPlatformServer(this.platformId)) {\n return;\n }\n\n DialogFacade._setService(service);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["DialogFacade","i1.NgxOverlayService"],"mappings":"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"}