@delon/abc 20.1.0 → 21.0.0-next.1

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 (98) hide show
  1. package/fesm2022/auto-focus.mjs +10 -10
  2. package/fesm2022/auto-focus.mjs.map +1 -1
  3. package/fesm2022/cell.mjs +23 -25
  4. package/fesm2022/cell.mjs.map +1 -1
  5. package/fesm2022/chart-observer-size.mjs +21 -34
  6. package/fesm2022/chart-observer-size.mjs.map +1 -1
  7. package/fesm2022/count-down.mjs +24 -31
  8. package/fesm2022/count-down.mjs.map +1 -1
  9. package/fesm2022/date-picker.mjs +89 -85
  10. package/fesm2022/date-picker.mjs.map +1 -1
  11. package/fesm2022/down-file.mjs +24 -44
  12. package/fesm2022/down-file.mjs.map +1 -1
  13. package/fesm2022/ellipsis.mjs +165 -106
  14. package/fesm2022/ellipsis.mjs.map +1 -1
  15. package/fesm2022/error-collect.mjs +12 -14
  16. package/fesm2022/error-collect.mjs.map +1 -1
  17. package/fesm2022/exception.mjs +9 -9
  18. package/fesm2022/exception.mjs.map +1 -1
  19. package/fesm2022/footer-toolbar.mjs +9 -9
  20. package/fesm2022/footer-toolbar.mjs.map +1 -1
  21. package/fesm2022/full-content.mjs +50 -58
  22. package/fesm2022/full-content.mjs.map +1 -1
  23. package/fesm2022/global-footer.mjs +14 -15
  24. package/fesm2022/global-footer.mjs.map +1 -1
  25. package/fesm2022/hotkey.mjs +7 -7
  26. package/fesm2022/hotkey.mjs.map +1 -1
  27. package/fesm2022/loading.mjs +62 -15
  28. package/fesm2022/loading.mjs.map +1 -1
  29. package/fesm2022/lodop.mjs +8 -8
  30. package/fesm2022/lodop.mjs.map +1 -1
  31. package/fesm2022/media.mjs +37 -61
  32. package/fesm2022/media.mjs.map +1 -1
  33. package/fesm2022/notice-icon.mjs +220 -25
  34. package/fesm2022/notice-icon.mjs.map +1 -1
  35. package/fesm2022/onboarding.mjs +163 -65
  36. package/fesm2022/onboarding.mjs.map +1 -1
  37. package/fesm2022/page-header.mjs +252 -155
  38. package/fesm2022/page-header.mjs.map +1 -1
  39. package/fesm2022/pdf.mjs +9 -9
  40. package/fesm2022/pdf.mjs.map +1 -1
  41. package/fesm2022/quick-menu.mjs +79 -71
  42. package/fesm2022/quick-menu.mjs.map +1 -1
  43. package/fesm2022/reuse-tab.mjs +262 -165
  44. package/fesm2022/reuse-tab.mjs.map +1 -1
  45. package/fesm2022/se.mjs +290 -310
  46. package/fesm2022/se.mjs.map +1 -1
  47. package/fesm2022/sg.mjs +32 -69
  48. package/fesm2022/sg.mjs.map +1 -1
  49. package/fesm2022/st.mjs +124 -115
  50. package/fesm2022/st.mjs.map +1 -1
  51. package/fesm2022/sv.mjs +185 -174
  52. package/fesm2022/sv.mjs.map +1 -1
  53. package/fesm2022/tag-select.mjs +44 -25
  54. package/fesm2022/tag-select.mjs.map +1 -1
  55. package/fesm2022/xlsx.mjs +16 -19
  56. package/fesm2022/xlsx.mjs.map +1 -1
  57. package/fesm2022/zip.mjs +4 -4
  58. package/fesm2022/zip.mjs.map +1 -1
  59. package/package.json +40 -40
  60. package/{auto-focus/index.d.ts → types/auto-focus.d.ts} +2 -2
  61. package/{cell/index.d.ts → types/cell.d.ts} +12 -13
  62. package/{observers/index.d.ts → types/chart-observer-size.d.ts} +5 -9
  63. package/{count-down/index.d.ts → types/count-down.d.ts} +6 -10
  64. package/{date-picker/index.d.ts → types/date-picker.d.ts} +6 -10
  65. package/types/down-file.d.ts +32 -0
  66. package/types/ellipsis.d.ts +46 -0
  67. package/types/error-collect.d.ts +34 -0
  68. package/{exception/index.d.ts → types/exception.d.ts} +13 -13
  69. package/{footer-toolbar/index.d.ts → types/footer-toolbar.d.ts} +2 -2
  70. package/{full-content/index.d.ts → types/full-content.d.ts} +8 -13
  71. package/{global-footer/index.d.ts → types/global-footer.d.ts} +7 -7
  72. package/{loading/index.d.ts → types/loading.d.ts} +1 -0
  73. package/{media/index.d.ts → types/media.d.ts} +10 -16
  74. package/{notice-icon/index.d.ts → types/notice-icon.d.ts} +15 -15
  75. package/{onboarding/index.d.ts → types/onboarding.d.ts} +12 -14
  76. package/types/page-header.d.ts +67 -0
  77. package/types/quick-menu.d.ts +31 -0
  78. package/{reuse-tab/index.d.ts → types/reuse-tab.d.ts} +46 -55
  79. package/types/se.d.ts +101 -0
  80. package/types/sg.d.ts +31 -0
  81. package/{st/index.d.ts → types/st.d.ts} +10 -2
  82. package/types/sv.d.ts +81 -0
  83. package/types/tag-select.d.ts +25 -0
  84. package/{xlsx/index.d.ts → types/xlsx.d.ts} +3 -3
  85. package/down-file/index.d.ts +0 -34
  86. package/ellipsis/index.d.ts +0 -55
  87. package/error-collect/index.d.ts +0 -35
  88. package/page-header/index.d.ts +0 -83
  89. package/quick-menu/index.d.ts +0 -38
  90. package/se/index.d.ts +0 -129
  91. package/sg/index.d.ts +0 -44
  92. package/sv/index.d.ts +0 -96
  93. package/tag-select/index.d.ts +0 -27
  94. /package/{index.d.ts → types/abc.d.ts} +0 -0
  95. /package/{hotkey/index.d.ts → types/hotkey.d.ts} +0 -0
  96. /package/{lodop/index.d.ts → types/lodop.d.ts} +0 -0
  97. /package/{pdf/index.d.ts → types/pdf.d.ts} +0 -0
  98. /package/{zip/index.d.ts → types/zip.d.ts} +0 -0
package/fesm2022/pdf.mjs CHANGED
@@ -131,7 +131,7 @@ class PdfComponent {
131
131
  return this._renderText ? this.textLayerMode : PdfTextLayerMode.DISABLE;
132
132
  }
133
133
  get win() {
134
- return this.doc.defaultView || window;
134
+ return this.doc.defaultView ?? window;
135
135
  }
136
136
  get el() {
137
137
  return this._el.querySelector('.pdf-container');
@@ -253,7 +253,7 @@ class PdfComponent {
253
253
  return;
254
254
  this._pdf.getPage(currentViewer.currentPageNumber).then((page) => {
255
255
  const { _rotation, _zoom } = this;
256
- const rotation = _rotation || page.rotate;
256
+ const rotation = _rotation ?? page.rotate;
257
257
  const viewportWidth = page.getViewport({
258
258
  scale: _zoom,
259
259
  rotation
@@ -396,8 +396,8 @@ class PdfComponent {
396
396
  ngOnDestroy() {
397
397
  this.destroy();
398
398
  }
399
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: PdfComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
400
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.0", type: PdfComponent, isStandalone: true, selector: "pdf", inputs: { src: "src", pi: ["pi", "pi", numberAttribute], showAll: ["showAll", "showAll", booleanAttribute], renderText: ["renderText", "renderText", booleanAttribute], textLayerMode: "textLayerMode", showBorders: ["showBorders", "showBorders", booleanAttribute], stickToPage: ["stickToPage", "stickToPage", booleanAttribute], originalSize: ["originalSize", "originalSize", booleanAttribute], fitToPage: ["fitToPage", "fitToPage", booleanAttribute], zoom: ["zoom", "zoom", numberAttribute], zoomScale: "zoomScale", rotation: ["rotation", "rotation", numberAttribute], autoReSize: ["autoReSize", "autoReSize", booleanAttribute], externalLinkTarget: "externalLinkTarget", delay: ["delay", "delay", numberAttribute] }, outputs: { change: "change" }, host: { properties: { "class.d-block": "true" } }, exportAs: ["pdf"], usesOnChanges: true, ngImport: i0, template: `
399
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PdfComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
400
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.6", type: PdfComponent, isStandalone: true, selector: "pdf", inputs: { src: "src", pi: ["pi", "pi", numberAttribute], showAll: ["showAll", "showAll", booleanAttribute], renderText: ["renderText", "renderText", booleanAttribute], textLayerMode: "textLayerMode", showBorders: ["showBorders", "showBorders", booleanAttribute], stickToPage: ["stickToPage", "stickToPage", booleanAttribute], originalSize: ["originalSize", "originalSize", booleanAttribute], fitToPage: ["fitToPage", "fitToPage", booleanAttribute], zoom: ["zoom", "zoom", numberAttribute], zoomScale: "zoomScale", rotation: ["rotation", "rotation", numberAttribute], autoReSize: ["autoReSize", "autoReSize", booleanAttribute], externalLinkTarget: "externalLinkTarget", delay: ["delay", "delay", numberAttribute] }, outputs: { change: "change" }, host: { properties: { "class.d-block": "true" } }, exportAs: ["pdf"], usesOnChanges: true, ngImport: i0, template: `
401
401
  @if (!inited || loading) {
402
402
  <nz-skeleton />
403
403
  }
@@ -418,7 +418,7 @@ __decorate([
418
418
  __decorate([
419
419
  ZoneOutside()
420
420
  ], PdfComponent.prototype, "destroy", null);
421
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: PdfComponent, decorators: [{
421
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PdfComponent, decorators: [{
422
422
  type: Component,
423
423
  args: [{
424
424
  selector: 'pdf',
@@ -485,11 +485,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
485
485
 
486
486
  const COMPONENTS = [PdfComponent];
487
487
  class PdfModule {
488
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: PdfModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
489
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: PdfModule, imports: [CommonModule, NzSkeletonModule, PdfComponent], exports: [PdfComponent] });
490
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: PdfModule, imports: [CommonModule, NzSkeletonModule, COMPONENTS] });
488
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PdfModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
489
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.6", ngImport: i0, type: PdfModule, imports: [CommonModule, NzSkeletonModule, PdfComponent], exports: [PdfComponent] });
490
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PdfModule, imports: [CommonModule, NzSkeletonModule, COMPONENTS] });
491
491
  }
492
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: PdfModule, decorators: [{
492
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: PdfModule, decorators: [{
493
493
  type: NgModule,
494
494
  args: [{
495
495
  imports: [CommonModule, NzSkeletonModule, ...COMPONENTS],
@@ -1 +1 @@
1
- {"version":3,"file":"pdf.mjs","sources":["../../../../packages/abc/pdf/pdf.config.ts","../../../../packages/abc/pdf/pdf.types.ts","../../../../packages/abc/pdf/pdf.component.ts","../../../../packages/abc/pdf/pdf.module.ts","../../../../packages/abc/pdf/pdf.ts"],"sourcesContent":["import { AlainPdfConfig } from '@delon/util/config';\n\nexport const PDF_DEFULAT_CONFIG: AlainPdfConfig = {\n lib: `https://cdn.jsdelivr.net/npm/pdfjs-dist@3.6.x/`,\n showAll: true,\n renderText: true,\n showBorders: false,\n originalSize: true,\n fitToPage: false,\n autoReSize: true\n};\n","// import type { PDFDocumentProxy } from 'pdfjs-dist';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\ntype PDFDocumentProxy = NzSafeAny;\n\nexport type PdfChangeEventType =\n | 'loaded'\n | 'load-progress'\n | 'pages-init'\n | 'page-rendered'\n | 'text-layer-rendered'\n | 'pi'\n | 'error';\nexport type PdfZoomScale = 'page-height' | 'page-fit' | 'page-width';\n\nexport interface PdfChangeEvent {\n type?: PdfChangeEventType;\n pi?: number;\n total?: number;\n pdf?: PDFDocumentProxy | null;\n ev?: NzSafeAny;\n progress?: { loaded: number; total: number };\n error?: NzSafeAny;\n}\n\nexport enum PdfTextLayerMode {\n DISABLE = 0,\n ENABLE = 1,\n ENABLE_ENHANCE = 2\n}\n\nexport enum PdfExternalLinkTarget {\n NONE = 0, // Default value.\n SELF = 1,\n BLANK = 2,\n PARENT = 3,\n TOP = 4\n}\n","import { Platform } from '@angular/cdk/platform';\nimport { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n ElementRef,\n EventEmitter,\n Input,\n NgZone,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChange,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent, timer, debounceTime, filter } from 'rxjs';\n\n// import type { PDFDocumentLoadingTask, PDFDocumentProxy } from 'pdfjs-dist';\n// import type { EventBus } from 'pdfjs-dist/types/web/event_utils';\n// import type { PDFFindController } from 'pdfjs-dist/types/web/pdf_find_controller';\n// import type { PDFLinkService } from 'pdfjs-dist/types/web/pdf_link_service';\n// import type { PDFViewer } from 'pdfjs-dist/types/web/pdf_viewer';\n\nimport { AlainConfigService } from '@delon/util/config';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { LazyService } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzSkeletonComponent } from 'ng-zorro-antd/skeleton';\n\nimport { PDF_DEFULAT_CONFIG } from './pdf.config';\nimport { PdfChangeEvent, PdfChangeEventType, PdfExternalLinkTarget, PdfTextLayerMode, PdfZoomScale } from './pdf.types';\n\n// TODO: Although pdfjs-dist is an optional dependency on canvas\n// will be installed automatically when the dependency is installed by default;\n// This requires a higher environment and often fails to install\ntype PDFDocumentLoadingTask = NzSafeAny;\ntype PDFDocumentProxy = NzSafeAny;\ntype EventBus = NzSafeAny;\ntype PDFFindController = NzSafeAny;\ntype PDFLinkService = NzSafeAny;\ntype PDFViewer = NzSafeAny;\n\nconst CSS_UNITS: number = 96.0 / 72.0;\nconst BORDER_WIDTH = 9;\n\n@Component({\n selector: 'pdf',\n exportAs: 'pdf',\n template: `\n @if (!inited || loading) {\n <nz-skeleton />\n }\n <div class=\"pdf-container\">\n <div class=\"pdfViewer\"></div>\n </div>\n `,\n host: {\n '[class.d-block]': `true`\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [NzSkeletonComponent]\n})\nexport class PdfComponent implements OnChanges, AfterViewInit, OnDestroy {\n private readonly lazySrv = inject(LazyService);\n private readonly platform = inject(Platform);\n private readonly _el: HTMLElement = inject(ElementRef).nativeElement;\n private readonly doc = inject(DOCUMENT);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly ngZone = inject(NgZone);\n private readonly destroy$ = inject(DestroyRef);\n private readonly cogSrv = inject(AlainConfigService);\n\n inited = false;\n private lib: string = '';\n private _pdf?: PDFDocumentProxy | null;\n private loadingTask?: PDFDocumentLoadingTask;\n private _src: NzSafeAny;\n private lastSrc?: NzSafeAny;\n private _pi = 1;\n private _total = 0;\n private _showAll = true;\n private _rotation = 0;\n private _zoom = 1;\n private _renderText = true;\n private _loading = false;\n\n private multiPageViewer?: PDFViewer;\n private multiPageLinkService?: PDFLinkService;\n private multiPageFindController?: PDFFindController;\n private singlePageViewer?: PDFViewer;\n private singlePageLinkService?: PDFLinkService;\n private singlePageFindController?: PDFFindController;\n private _eventBus?: EventBus;\n\n @Input() set src(dataOrBuffer: NzSafeAny) {\n this._src = dataOrBuffer;\n this.load();\n }\n @Input({ transform: numberAttribute })\n set pi(val: number) {\n this._pi = this.getValidPi(val);\n if (this.pageViewer) {\n this.pageViewer.scrollPageIntoView({ pageNumber: this._pi });\n }\n }\n @Input({ transform: booleanAttribute }) set showAll(val: boolean) {\n this._showAll = val;\n this.resetDoc();\n }\n @Input({ transform: booleanAttribute }) set renderText(val: boolean) {\n this._renderText = val;\n if (this.pageViewer) {\n this.resetDoc();\n }\n }\n @Input() textLayerMode = PdfTextLayerMode.ENABLE;\n @Input({ transform: booleanAttribute }) showBorders = false;\n @Input({ transform: booleanAttribute }) stickToPage = false;\n @Input({ transform: booleanAttribute }) originalSize = true;\n @Input({ transform: booleanAttribute }) fitToPage = false;\n @Input({ transform: numberAttribute }) set zoom(val: number) {\n if (val <= 0) return;\n this._zoom = val;\n }\n @Input() zoomScale: PdfZoomScale = 'page-width';\n @Input({ transform: numberAttribute }) set rotation(val: number) {\n if (val % 90 !== 0) {\n console.warn(`Invalid rotation angle, shoule be divisible by 90.`);\n return;\n }\n this._rotation = val;\n }\n @Input({ transform: booleanAttribute }) autoReSize = true;\n @Input() externalLinkTarget = PdfExternalLinkTarget.BLANK;\n @Input({ transform: numberAttribute }) delay?: number;\n @Output() readonly change = new EventEmitter<PdfChangeEvent>();\n\n get loading(): boolean {\n return this._loading;\n }\n\n get pdf(): PDFDocumentProxy | undefined | null {\n return this._pdf;\n }\n\n get findController(): PDFFindController | undefined {\n return this._showAll ? this.multiPageFindController : this.singlePageFindController;\n }\n\n get pageViewer(): PDFViewer | undefined {\n return this._showAll ? this.multiPageViewer : this.singlePageViewer;\n }\n\n get linkService(): PDFLinkService | undefined {\n return this._showAll ? this.multiPageLinkService : this.singlePageLinkService;\n }\n\n get eventBus(): EventBus | undefined {\n return this._eventBus;\n }\n\n private get _textLayerMode(): PdfTextLayerMode {\n return this._renderText ? this.textLayerMode : PdfTextLayerMode.DISABLE;\n }\n\n private get win(): NzSafeAny {\n return this.doc.defaultView || window;\n }\n\n private get el(): HTMLElement {\n return this._el.querySelector('.pdf-container') as HTMLElement;\n }\n\n constructor() {\n const cog = this.cogSrv.merge('pdf', PDF_DEFULAT_CONFIG)!;\n Object.assign(this, cog);\n\n const lib = cog.lib!;\n this.lib = lib.endsWith('/') ? lib : `${lib}/`;\n }\n\n private getValidPi(pi: number): number {\n if (pi < 1) return 1;\n const pdf = this._pdf;\n return pdf && pi > pdf.numPages ? pdf.numPages : pi;\n }\n\n private emit(type: PdfChangeEventType, opt?: PdfChangeEvent): void {\n this.ngZone.run(() =>\n this.change.emit({\n type,\n pdf: this._pdf,\n pi: this._pi,\n total: this._total,\n ...opt\n })\n );\n }\n\n private initDelay(): void {\n if (!this.win.pdfjsLib) {\n throw new Error(\n `No window.pdfjsLib found, please make sure that cdn or local path exists, the current referenced path is: ${JSON.stringify(\n this.lib\n )}`\n );\n }\n this.inited = true;\n this.cdr.detectChanges();\n this.win.pdfjsLib.GlobalWorkerOptions.workerSrc = `${this.lib}build/pdf.worker.min.js`;\n\n timer(this.delay ?? 0)\n .pipe(takeUntilDestroyed(this.destroy$))\n .subscribe(() => this.load());\n }\n\n setLoading(status: boolean): void {\n this.ngZone.run(() => {\n this._loading = status;\n this.cdr.detectChanges();\n });\n }\n\n @ZoneOutside()\n private load(): void {\n const { _src } = this;\n if (!this.inited || !_src) {\n return;\n }\n\n if (this.lastSrc === _src) {\n this.render();\n return;\n }\n\n this.destroy();\n this.ngZone.run(() => {\n this._loading = true;\n this.cdr.detectChanges();\n });\n this.setLoading(true);\n const loadingTask: PDFDocumentLoadingTask = (this.loadingTask = this.win.pdfjsLib.getDocument(_src));\n loadingTask.onProgress = (progress: { loaded: number; total: number }) => this.emit('load-progress', { progress });\n (loadingTask.promise as PromiseLike<PDFDocumentProxy>)\n .then(\n pdf => {\n this._pdf = pdf;\n this.lastSrc = _src;\n this._total = pdf.numPages;\n\n this.emit('loaded');\n\n if (!this.pageViewer) {\n this.setupPageViewer();\n }\n\n this.resetDoc();\n this.render();\n },\n error => this.emit('error', { error })\n )\n .then(() => this.setLoading(false));\n }\n\n @ZoneOutside()\n private resetDoc(): void {\n const pdf = this._pdf;\n if (!pdf) {\n return;\n }\n this.cleanDoc();\n\n this.findController!.setDocument(pdf);\n this.pageViewer!.setDocument(pdf);\n this.linkService!.setDocument(pdf, null);\n }\n\n private cleanDoc(): void {\n this.multiPageViewer!.setDocument(null as NzSafeAny);\n this.singlePageViewer!.setDocument(null as NzSafeAny);\n\n this.multiPageLinkService!.setDocument(null, null);\n this.singlePageLinkService!.setDocument(null, null);\n\n this.multiPageFindController!.setDocument(null as NzSafeAny);\n this.singlePageFindController!.setDocument(null as NzSafeAny);\n }\n\n private render(): void {\n const currentViewer = this.pageViewer;\n if (!currentViewer) {\n return;\n }\n\n if (this._rotation !== 0 || currentViewer.pagesRotation !== this._rotation) {\n this.timeExec(() => {\n currentViewer.pagesRotation = this._rotation;\n });\n }\n\n if (this.stickToPage) {\n this.timeExec(() => {\n currentViewer.currentPageNumber = this._pi;\n });\n }\n\n this.updateSize();\n }\n\n private timeExec(fn: () => void): void {\n this.ngZone.runOutsideAngular(() => {\n timer(0)\n .pipe(takeUntilDestroyed(this.destroy$))\n .subscribe(() => this.ngZone.runOutsideAngular(() => fn()));\n });\n }\n\n @ZoneOutside()\n private updateSize(): void {\n const currentViewer = this.pageViewer;\n if (!currentViewer) return;\n\n this._pdf!.getPage(currentViewer.currentPageNumber).then((page: NzSafeAny) => {\n const { _rotation, _zoom } = this;\n const rotation = _rotation || page.rotate;\n const viewportWidth =\n page.getViewport({\n scale: _zoom,\n rotation\n }).width * CSS_UNITS;\n let scale = _zoom;\n\n // Scale the document when it shouldn't be in original size or doesn't fit into the viewport\n if (!this.originalSize || (this.fitToPage && viewportWidth > this.el.clientWidth)) {\n const viewPort = page.getViewport({ scale: 1, rotation });\n scale = this.getScale(viewPort.width, viewPort.height);\n }\n\n currentViewer.currentScale = scale;\n });\n }\n\n private getScale(viewportWidth: number, viewportHeight: number): number {\n const borderSize = this.showBorders ? 2 * BORDER_WIDTH : 0;\n const el = this.el;\n const containerWidth = el.clientWidth - borderSize;\n const containerHeight = el.clientHeight - borderSize;\n\n if (containerHeight === 0 || viewportHeight === 0 || containerWidth === 0 || viewportWidth === 0) {\n return 1;\n }\n\n let ratio = 1;\n switch (this.zoomScale) {\n case 'page-fit':\n ratio = Math.min(containerHeight / viewportHeight, containerWidth / viewportWidth);\n break;\n case 'page-height':\n ratio = containerHeight / viewportHeight;\n break;\n case 'page-width':\n default:\n ratio = containerWidth / viewportWidth;\n break;\n }\n\n return (this._zoom * ratio) / CSS_UNITS;\n }\n\n @ZoneOutside()\n private destroy(): void {\n const { loadingTask } = this;\n if (loadingTask && !loadingTask.destroyed) {\n loadingTask.destroy();\n }\n if (this._pdf) {\n this._pdf.destroy();\n this._pdf = null;\n this.cleanDoc();\n }\n }\n\n private setupPageViewer(): void {\n this.win.pdfjsLib.disableTextLayer = !this._renderText;\n this.win.pdfjsLib.externalLinkTarget = this.externalLinkTarget;\n\n this.setupMultiPageViewer();\n this.setupSinglePageViewer();\n }\n\n private createEventBus(): EventBus {\n const eventBus: EventBus = new this.win.pdfjsViewer.EventBus();\n eventBus.on(`pagesinit`, (ev: NzSafeAny) => {\n this.emit('pages-init', { ev });\n });\n eventBus.on(`pagerendered`, (ev: NzSafeAny) => {\n this.emit('page-rendered', { ev });\n });\n eventBus.on(`pagechanging`, (ev: NzSafeAny) => {\n const nowPi = ev.pageNumber;\n if (nowPi !== this._pi) {\n this._pi = nowPi;\n this.emit('pi', { ev });\n }\n });\n eventBus.on(`textlayerrendered`, (ev: NzSafeAny) => {\n this.emit('text-layer-rendered', { ev });\n });\n return eventBus;\n }\n\n private setupMultiPageViewer(): void {\n const VIEWER = this.win.pdfjsViewer;\n\n const eventBus = (this._eventBus = this.createEventBus());\n const linkService: PDFLinkService = (this.multiPageLinkService = new VIEWER.PDFLinkService({\n eventBus\n }));\n const findController: PDFFindController = (this.multiPageFindController = new VIEWER.PDFFindController({\n eventBus,\n linkService\n }));\n\n const viewer: PDFViewer = (this.multiPageViewer = new VIEWER.PDFViewer({\n eventBus,\n container: this.el,\n removePageBorders: !this.showBorders,\n textLayerMode: this._textLayerMode,\n linkService,\n findController\n }));\n linkService.setViewer(viewer);\n }\n\n private setupSinglePageViewer(): void {\n const VIEWER = this.win.pdfjsViewer;\n\n const eventBus = this.createEventBus();\n const linkService: PDFLinkService = (this.singlePageLinkService = new VIEWER.PDFLinkService({\n eventBus\n }));\n const findController: PDFFindController = (this.singlePageFindController = new VIEWER.PDFFindController({\n eventBus,\n linkService\n }));\n\n const pageViewer = (this.singlePageViewer = new VIEWER.PDFSinglePageViewer({\n eventBus,\n container: this.el,\n removePageBorders: !this.showBorders,\n textLayerMode: this._textLayerMode,\n linkService,\n findController\n }));\n linkService.setViewer(pageViewer);\n pageViewer._currentPageNumber = this._pi;\n }\n\n ngAfterViewInit(): void {\n if (!this.platform.isBrowser) {\n return;\n }\n if (this.win.pdfjsLib) {\n this.initDelay();\n return;\n }\n const { lib } = this;\n this.lazySrv\n .load(`${lib}build/pdf.min.js`)\n .then(() => this.lazySrv.load([`${lib}web/pdf_viewer.js`, `${lib}web/pdf_viewer.css`]))\n .then(() => this.initDelay());\n\n this.ngZone.runOutsideAngular(() => this.initResize());\n }\n\n private initResize(): void {\n fromEvent(this.win, 'resize')\n .pipe(\n debounceTime(100),\n filter(() => this.autoReSize && this._pdf != null),\n takeUntilDestroyed(this.destroy$)\n )\n .subscribe(() => this.updateSize());\n }\n\n ngOnChanges(changes: { [p in keyof PdfComponent]?: SimpleChange }): void {\n if (this.inited && !changes.src) {\n this.render();\n }\n }\n\n ngOnDestroy(): void {\n this.destroy();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzSkeletonModule } from 'ng-zorro-antd/skeleton';\n\nimport { PdfComponent } from './pdf.component';\n\nconst COMPONENTS = [PdfComponent];\n\n@NgModule({\n imports: [CommonModule, NzSkeletonModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class PdfModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pdf.mjs","sources":["../../../../packages/abc/pdf/pdf.config.ts","../../../../packages/abc/pdf/pdf.types.ts","../../../../packages/abc/pdf/pdf.component.ts","../../../../packages/abc/pdf/pdf.module.ts","../../../../packages/abc/pdf/pdf.ts"],"sourcesContent":["import { AlainPdfConfig } from '@delon/util/config';\n\nexport const PDF_DEFULAT_CONFIG: AlainPdfConfig = {\n lib: `https://cdn.jsdelivr.net/npm/pdfjs-dist@3.6.x/`,\n showAll: true,\n renderText: true,\n showBorders: false,\n originalSize: true,\n fitToPage: false,\n autoReSize: true\n};\n","// import type { PDFDocumentProxy } from 'pdfjs-dist';\n\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\n\ntype PDFDocumentProxy = NzSafeAny;\n\nexport type PdfChangeEventType =\n | 'loaded'\n | 'load-progress'\n | 'pages-init'\n | 'page-rendered'\n | 'text-layer-rendered'\n | 'pi'\n | 'error';\nexport type PdfZoomScale = 'page-height' | 'page-fit' | 'page-width';\n\nexport interface PdfChangeEvent {\n type?: PdfChangeEventType;\n pi?: number;\n total?: number;\n pdf?: PDFDocumentProxy | null;\n ev?: NzSafeAny;\n progress?: { loaded: number; total: number };\n error?: NzSafeAny;\n}\n\nexport enum PdfTextLayerMode {\n DISABLE = 0,\n ENABLE = 1,\n ENABLE_ENHANCE = 2\n}\n\nexport enum PdfExternalLinkTarget {\n NONE = 0, // Default value.\n SELF = 1,\n BLANK = 2,\n PARENT = 3,\n TOP = 4\n}\n","import { Platform } from '@angular/cdk/platform';\nimport { DOCUMENT } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DestroyRef,\n ElementRef,\n EventEmitter,\n Input,\n NgZone,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChange,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent, timer, debounceTime, filter } from 'rxjs';\n\n// import type { PDFDocumentLoadingTask, PDFDocumentProxy } from 'pdfjs-dist';\n// import type { EventBus } from 'pdfjs-dist/types/web/event_utils';\n// import type { PDFFindController } from 'pdfjs-dist/types/web/pdf_find_controller';\n// import type { PDFLinkService } from 'pdfjs-dist/types/web/pdf_link_service';\n// import type { PDFViewer } from 'pdfjs-dist/types/web/pdf_viewer';\n\nimport { AlainConfigService } from '@delon/util/config';\nimport { ZoneOutside } from '@delon/util/decorator';\nimport { LazyService } from '@delon/util/other';\nimport type { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { NzSkeletonComponent } from 'ng-zorro-antd/skeleton';\n\nimport { PDF_DEFULAT_CONFIG } from './pdf.config';\nimport { PdfChangeEvent, PdfChangeEventType, PdfExternalLinkTarget, PdfTextLayerMode, PdfZoomScale } from './pdf.types';\n\n// TODO: Although pdfjs-dist is an optional dependency on canvas\n// will be installed automatically when the dependency is installed by default;\n// This requires a higher environment and often fails to install\ntype PDFDocumentLoadingTask = NzSafeAny;\ntype PDFDocumentProxy = NzSafeAny;\ntype EventBus = NzSafeAny;\ntype PDFFindController = NzSafeAny;\ntype PDFLinkService = NzSafeAny;\ntype PDFViewer = NzSafeAny;\n\nconst CSS_UNITS: number = 96.0 / 72.0;\nconst BORDER_WIDTH = 9;\n\n@Component({\n selector: 'pdf',\n exportAs: 'pdf',\n template: `\n @if (!inited || loading) {\n <nz-skeleton />\n }\n <div class=\"pdf-container\">\n <div class=\"pdfViewer\"></div>\n </div>\n `,\n host: {\n '[class.d-block]': `true`\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [NzSkeletonComponent]\n})\nexport class PdfComponent implements OnChanges, AfterViewInit, OnDestroy {\n private readonly lazySrv = inject(LazyService);\n private readonly platform = inject(Platform);\n private readonly _el: HTMLElement = inject(ElementRef).nativeElement;\n private readonly doc = inject(DOCUMENT);\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly ngZone = inject(NgZone);\n private readonly destroy$ = inject(DestroyRef);\n private readonly cogSrv = inject(AlainConfigService);\n\n inited = false;\n private lib: string = '';\n private _pdf?: PDFDocumentProxy | null;\n private loadingTask?: PDFDocumentLoadingTask;\n private _src: NzSafeAny;\n private lastSrc?: NzSafeAny;\n private _pi = 1;\n private _total = 0;\n private _showAll = true;\n private _rotation = 0;\n private _zoom = 1;\n private _renderText = true;\n private _loading = false;\n\n private multiPageViewer?: PDFViewer;\n private multiPageLinkService?: PDFLinkService;\n private multiPageFindController?: PDFFindController;\n private singlePageViewer?: PDFViewer;\n private singlePageLinkService?: PDFLinkService;\n private singlePageFindController?: PDFFindController;\n private _eventBus?: EventBus;\n\n @Input() set src(dataOrBuffer: NzSafeAny) {\n this._src = dataOrBuffer;\n this.load();\n }\n @Input({ transform: numberAttribute })\n set pi(val: number) {\n this._pi = this.getValidPi(val);\n if (this.pageViewer) {\n this.pageViewer.scrollPageIntoView({ pageNumber: this._pi });\n }\n }\n @Input({ transform: booleanAttribute }) set showAll(val: boolean) {\n this._showAll = val;\n this.resetDoc();\n }\n @Input({ transform: booleanAttribute }) set renderText(val: boolean) {\n this._renderText = val;\n if (this.pageViewer) {\n this.resetDoc();\n }\n }\n @Input() textLayerMode = PdfTextLayerMode.ENABLE;\n @Input({ transform: booleanAttribute }) showBorders = false;\n @Input({ transform: booleanAttribute }) stickToPage = false;\n @Input({ transform: booleanAttribute }) originalSize = true;\n @Input({ transform: booleanAttribute }) fitToPage = false;\n @Input({ transform: numberAttribute }) set zoom(val: number) {\n if (val <= 0) return;\n this._zoom = val;\n }\n @Input() zoomScale: PdfZoomScale = 'page-width';\n @Input({ transform: numberAttribute }) set rotation(val: number) {\n if (val % 90 !== 0) {\n console.warn(`Invalid rotation angle, shoule be divisible by 90.`);\n return;\n }\n this._rotation = val;\n }\n @Input({ transform: booleanAttribute }) autoReSize = true;\n @Input() externalLinkTarget = PdfExternalLinkTarget.BLANK;\n @Input({ transform: numberAttribute }) delay?: number;\n @Output() readonly change = new EventEmitter<PdfChangeEvent>();\n\n get loading(): boolean {\n return this._loading;\n }\n\n get pdf(): PDFDocumentProxy | undefined | null {\n return this._pdf;\n }\n\n get findController(): PDFFindController | undefined {\n return this._showAll ? this.multiPageFindController : this.singlePageFindController;\n }\n\n get pageViewer(): PDFViewer | undefined {\n return this._showAll ? this.multiPageViewer : this.singlePageViewer;\n }\n\n get linkService(): PDFLinkService | undefined {\n return this._showAll ? this.multiPageLinkService : this.singlePageLinkService;\n }\n\n get eventBus(): EventBus | undefined {\n return this._eventBus;\n }\n\n private get _textLayerMode(): PdfTextLayerMode {\n return this._renderText ? this.textLayerMode : PdfTextLayerMode.DISABLE;\n }\n\n private get win(): NzSafeAny {\n return this.doc.defaultView ?? window;\n }\n\n private get el(): HTMLElement {\n return this._el.querySelector('.pdf-container') as HTMLElement;\n }\n\n constructor() {\n const cog = this.cogSrv.merge('pdf', PDF_DEFULAT_CONFIG)!;\n Object.assign(this, cog);\n\n const lib = cog.lib!;\n this.lib = lib.endsWith('/') ? lib : `${lib}/`;\n }\n\n private getValidPi(pi: number): number {\n if (pi < 1) return 1;\n const pdf = this._pdf;\n return pdf && pi > pdf.numPages ? pdf.numPages : pi;\n }\n\n private emit(type: PdfChangeEventType, opt?: PdfChangeEvent): void {\n this.ngZone.run(() =>\n this.change.emit({\n type,\n pdf: this._pdf,\n pi: this._pi,\n total: this._total,\n ...opt\n })\n );\n }\n\n private initDelay(): void {\n if (!this.win.pdfjsLib) {\n throw new Error(\n `No window.pdfjsLib found, please make sure that cdn or local path exists, the current referenced path is: ${JSON.stringify(\n this.lib\n )}`\n );\n }\n this.inited = true;\n this.cdr.detectChanges();\n this.win.pdfjsLib.GlobalWorkerOptions.workerSrc = `${this.lib}build/pdf.worker.min.js`;\n\n timer(this.delay ?? 0)\n .pipe(takeUntilDestroyed(this.destroy$))\n .subscribe(() => this.load());\n }\n\n setLoading(status: boolean): void {\n this.ngZone.run(() => {\n this._loading = status;\n this.cdr.detectChanges();\n });\n }\n\n @ZoneOutside()\n private load(): void {\n const { _src } = this;\n if (!this.inited || !_src) {\n return;\n }\n\n if (this.lastSrc === _src) {\n this.render();\n return;\n }\n\n this.destroy();\n this.ngZone.run(() => {\n this._loading = true;\n this.cdr.detectChanges();\n });\n this.setLoading(true);\n const loadingTask: PDFDocumentLoadingTask = (this.loadingTask = this.win.pdfjsLib.getDocument(_src));\n loadingTask.onProgress = (progress: { loaded: number; total: number }) => this.emit('load-progress', { progress });\n (loadingTask.promise as PromiseLike<PDFDocumentProxy>)\n .then(\n pdf => {\n this._pdf = pdf;\n this.lastSrc = _src;\n this._total = pdf.numPages;\n\n this.emit('loaded');\n\n if (!this.pageViewer) {\n this.setupPageViewer();\n }\n\n this.resetDoc();\n this.render();\n },\n error => this.emit('error', { error })\n )\n .then(() => this.setLoading(false));\n }\n\n @ZoneOutside()\n private resetDoc(): void {\n const pdf = this._pdf;\n if (!pdf) {\n return;\n }\n this.cleanDoc();\n\n this.findController!.setDocument(pdf);\n this.pageViewer!.setDocument(pdf);\n this.linkService!.setDocument(pdf, null);\n }\n\n private cleanDoc(): void {\n this.multiPageViewer!.setDocument(null as NzSafeAny);\n this.singlePageViewer!.setDocument(null as NzSafeAny);\n\n this.multiPageLinkService!.setDocument(null, null);\n this.singlePageLinkService!.setDocument(null, null);\n\n this.multiPageFindController!.setDocument(null as NzSafeAny);\n this.singlePageFindController!.setDocument(null as NzSafeAny);\n }\n\n private render(): void {\n const currentViewer = this.pageViewer;\n if (!currentViewer) {\n return;\n }\n\n if (this._rotation !== 0 || currentViewer.pagesRotation !== this._rotation) {\n this.timeExec(() => {\n currentViewer.pagesRotation = this._rotation;\n });\n }\n\n if (this.stickToPage) {\n this.timeExec(() => {\n currentViewer.currentPageNumber = this._pi;\n });\n }\n\n this.updateSize();\n }\n\n private timeExec(fn: () => void): void {\n this.ngZone.runOutsideAngular(() => {\n timer(0)\n .pipe(takeUntilDestroyed(this.destroy$))\n .subscribe(() => this.ngZone.runOutsideAngular(() => fn()));\n });\n }\n\n @ZoneOutside()\n private updateSize(): void {\n const currentViewer = this.pageViewer;\n if (!currentViewer) return;\n\n this._pdf!.getPage(currentViewer.currentPageNumber).then((page: NzSafeAny) => {\n const { _rotation, _zoom } = this;\n const rotation = _rotation ?? page.rotate;\n const viewportWidth =\n page.getViewport({\n scale: _zoom,\n rotation\n }).width * CSS_UNITS;\n let scale = _zoom;\n\n // Scale the document when it shouldn't be in original size or doesn't fit into the viewport\n if (!this.originalSize || (this.fitToPage && viewportWidth > this.el.clientWidth)) {\n const viewPort = page.getViewport({ scale: 1, rotation });\n scale = this.getScale(viewPort.width, viewPort.height);\n }\n\n currentViewer.currentScale = scale;\n });\n }\n\n private getScale(viewportWidth: number, viewportHeight: number): number {\n const borderSize = this.showBorders ? 2 * BORDER_WIDTH : 0;\n const el = this.el;\n const containerWidth = el.clientWidth - borderSize;\n const containerHeight = el.clientHeight - borderSize;\n\n if (containerHeight === 0 || viewportHeight === 0 || containerWidth === 0 || viewportWidth === 0) {\n return 1;\n }\n\n let ratio = 1;\n switch (this.zoomScale) {\n case 'page-fit':\n ratio = Math.min(containerHeight / viewportHeight, containerWidth / viewportWidth);\n break;\n case 'page-height':\n ratio = containerHeight / viewportHeight;\n break;\n case 'page-width':\n default:\n ratio = containerWidth / viewportWidth;\n break;\n }\n\n return (this._zoom * ratio) / CSS_UNITS;\n }\n\n @ZoneOutside()\n private destroy(): void {\n const { loadingTask } = this;\n if (loadingTask && !loadingTask.destroyed) {\n loadingTask.destroy();\n }\n if (this._pdf) {\n this._pdf.destroy();\n this._pdf = null;\n this.cleanDoc();\n }\n }\n\n private setupPageViewer(): void {\n this.win.pdfjsLib.disableTextLayer = !this._renderText;\n this.win.pdfjsLib.externalLinkTarget = this.externalLinkTarget;\n\n this.setupMultiPageViewer();\n this.setupSinglePageViewer();\n }\n\n private createEventBus(): EventBus {\n const eventBus: EventBus = new this.win.pdfjsViewer.EventBus();\n eventBus.on(`pagesinit`, (ev: NzSafeAny) => {\n this.emit('pages-init', { ev });\n });\n eventBus.on(`pagerendered`, (ev: NzSafeAny) => {\n this.emit('page-rendered', { ev });\n });\n eventBus.on(`pagechanging`, (ev: NzSafeAny) => {\n const nowPi = ev.pageNumber;\n if (nowPi !== this._pi) {\n this._pi = nowPi;\n this.emit('pi', { ev });\n }\n });\n eventBus.on(`textlayerrendered`, (ev: NzSafeAny) => {\n this.emit('text-layer-rendered', { ev });\n });\n return eventBus;\n }\n\n private setupMultiPageViewer(): void {\n const VIEWER = this.win.pdfjsViewer;\n\n const eventBus = (this._eventBus = this.createEventBus());\n const linkService: PDFLinkService = (this.multiPageLinkService = new VIEWER.PDFLinkService({\n eventBus\n }));\n const findController: PDFFindController = (this.multiPageFindController = new VIEWER.PDFFindController({\n eventBus,\n linkService\n }));\n\n const viewer: PDFViewer = (this.multiPageViewer = new VIEWER.PDFViewer({\n eventBus,\n container: this.el,\n removePageBorders: !this.showBorders,\n textLayerMode: this._textLayerMode,\n linkService,\n findController\n }));\n linkService.setViewer(viewer);\n }\n\n private setupSinglePageViewer(): void {\n const VIEWER = this.win.pdfjsViewer;\n\n const eventBus = this.createEventBus();\n const linkService: PDFLinkService = (this.singlePageLinkService = new VIEWER.PDFLinkService({\n eventBus\n }));\n const findController: PDFFindController = (this.singlePageFindController = new VIEWER.PDFFindController({\n eventBus,\n linkService\n }));\n\n const pageViewer = (this.singlePageViewer = new VIEWER.PDFSinglePageViewer({\n eventBus,\n container: this.el,\n removePageBorders: !this.showBorders,\n textLayerMode: this._textLayerMode,\n linkService,\n findController\n }));\n linkService.setViewer(pageViewer);\n pageViewer._currentPageNumber = this._pi;\n }\n\n ngAfterViewInit(): void {\n if (!this.platform.isBrowser) {\n return;\n }\n if (this.win.pdfjsLib) {\n this.initDelay();\n return;\n }\n const { lib } = this;\n this.lazySrv\n .load(`${lib}build/pdf.min.js`)\n .then(() => this.lazySrv.load([`${lib}web/pdf_viewer.js`, `${lib}web/pdf_viewer.css`]))\n .then(() => this.initDelay());\n\n this.ngZone.runOutsideAngular(() => this.initResize());\n }\n\n private initResize(): void {\n fromEvent(this.win, 'resize')\n .pipe(\n debounceTime(100),\n filter(() => this.autoReSize && this._pdf != null),\n takeUntilDestroyed(this.destroy$)\n )\n .subscribe(() => this.updateSize());\n }\n\n ngOnChanges(changes: { [p in keyof PdfComponent]?: SimpleChange }): void {\n if (this.inited && !changes.src) {\n this.render();\n }\n }\n\n ngOnDestroy(): void {\n this.destroy();\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzSkeletonModule } from 'ng-zorro-antd/skeleton';\n\nimport { PdfComponent } from './pdf.component';\n\nconst COMPONENTS = [PdfComponent];\n\n@NgModule({\n imports: [CommonModule, NzSkeletonModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class PdfModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -1,92 +1,100 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, ChangeDetectorRef, ElementRef, Renderer2, EventEmitter, booleanAttribute, numberAttribute, Output, Input, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
2
+ import { inject, ElementRef, Renderer2, input, numberAttribute, booleanAttribute, output, signal, computed, effect, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
3
3
  import { NzStringTemplateOutletDirective, NzOutletModule } from 'ng-zorro-antd/core/outlet';
4
4
  import { NzIconDirective, NzIconModule } from 'ng-zorro-antd/icon';
5
5
  import { CommonModule } from '@angular/common';
6
6
 
7
7
  class QuickMenuComponent {
8
- cdr = inject(ChangeDetectorRef);
9
8
  el = inject(ElementRef).nativeElement;
10
9
  render = inject(Renderer2);
11
- ctrlStyle = {};
12
- icon = 'question-circle';
13
- top = 120;
14
- width = 200;
15
- bgColor;
16
- borderColor;
17
- expand = false;
18
- expandChange = new EventEmitter();
19
- show = false;
20
- initFlag = false;
21
- _click() {
22
- this.show = !this.show;
23
- this.expandChange.emit(this.show);
24
- this.setStyle();
25
- }
26
- setStyle() {
27
- this.ctrlStyle = {
28
- 'background-color': this.bgColor,
29
- 'border-color': this.borderColor
10
+ icon = input('question-circle', ...(ngDevMode ? [{ debugName: "icon" }] : []));
11
+ top = input(120, { ...(ngDevMode ? { debugName: "top" } : {}), transform: numberAttribute });
12
+ width = input(200, { ...(ngDevMode ? { debugName: "width" } : {}), transform: numberAttribute });
13
+ bgColor = input(...(ngDevMode ? [undefined, { debugName: "bgColor" }] : []));
14
+ borderColor = input(...(ngDevMode ? [undefined, { debugName: "borderColor" }] : []));
15
+ expand = input(false, { ...(ngDevMode ? { debugName: "expand" } : {}), transform: booleanAttribute });
16
+ expandChange = output();
17
+ show = signal(false, ...(ngDevMode ? [{ debugName: "show" }] : []));
18
+ ctrlStyle = computed(() => {
19
+ const ret = {
20
+ 'background-color': this.bgColor(),
21
+ 'border-color': this.borderColor()
30
22
  };
31
- const res = [
32
- `top:${this.top}px`,
33
- `width:${this.width}px`,
34
- `margin-right:-${this.show ? 0 : this.width}px`
35
- ];
36
- if (this.bgColor) {
37
- res.push(`background-color:${this.bgColor}`);
38
- }
39
- if (this.borderColor) {
40
- res.push(`border-color:${this.borderColor}`);
41
- }
42
- this.render.setAttribute(this.el, 'style', res.join(';'));
43
- this.cdr.detectChanges();
44
- }
45
- ngOnInit() {
46
- this.initFlag = true;
47
- this.setStyle();
23
+ return ret;
24
+ }, ...(ngDevMode ? [{ debugName: "ctrlStyle" }] : []));
25
+ constructor() {
26
+ effect(() => {
27
+ this.show.set(this.expand());
28
+ });
29
+ effect(() => {
30
+ const res = [
31
+ `top:${this.top()}px`,
32
+ `width:${this.width()}px`,
33
+ `margin-right:-${this.show() ? 0 : this.width()}px`
34
+ ];
35
+ if (this.bgColor) {
36
+ res.push(`background-color:${this.bgColor()}`);
37
+ }
38
+ if (this.borderColor) {
39
+ res.push(`border-color:${this.borderColor()}`);
40
+ }
41
+ this.render.setAttribute(this.el, 'style', res.join(';'));
42
+ });
48
43
  }
49
- ngOnChanges() {
50
- this.show = this.expand;
51
- if (this.initFlag) {
52
- this.setStyle();
53
- }
44
+ _click() {
45
+ this.show.set(!this.show());
46
+ this.expandChange.emit(this.show());
54
47
  }
55
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: QuickMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
56
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "20.3.0", type: QuickMenuComponent, isStandalone: true, selector: "quick-menu", inputs: { icon: "icon", top: ["top", "top", numberAttribute], width: ["width", "width", numberAttribute], bgColor: "bgColor", borderColor: "borderColor", expand: ["expand", "expand", booleanAttribute] }, outputs: { expandChange: "expandChange" }, host: { listeners: { "click": "_click()" }, properties: { "class.quick-menu": "true" } }, exportAs: ["quickMenu"], usesOnChanges: true, ngImport: i0, template: "<div class=\"quick-menu__inner\">\n <div class=\"quick-menu__ctrl\" [style]=\"ctrlStyle\">\n <div class=\"quick-menu__ctrl-icon\">\n <ng-container *nzStringTemplateOutlet=\"icon\">\n <nz-icon [nzType]=\"$any(icon)\" />\n </ng-container>\n </div>\n </div>\n <ng-content />\n</div>\n", dependencies: [{ kind: "directive", type: NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "directive", type: NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
48
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: QuickMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
49
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: QuickMenuComponent, isStandalone: true, selector: "quick-menu", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, top: { classPropertyName: "top", publicName: "top", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, bgColor: { classPropertyName: "bgColor", publicName: "bgColor", isSignal: true, isRequired: false, transformFunction: null }, borderColor: { classPropertyName: "borderColor", publicName: "borderColor", isSignal: true, isRequired: false, transformFunction: null }, expand: { classPropertyName: "expand", publicName: "expand", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { expandChange: "expandChange" }, host: { listeners: { "click": "_click()" }, classAttribute: "quick-menu" }, exportAs: ["quickMenu"], ngImport: i0, template: `
50
+ <div class="quick-menu__inner">
51
+ <div class="quick-menu__ctrl" [style]="ctrlStyle()">
52
+ <div class="quick-menu__ctrl-icon">
53
+ @let ic = icon();
54
+ <ng-container *nzStringTemplateOutlet="ic">
55
+ <nz-icon [nzType]="$any(ic)" />
56
+ </ng-container>
57
+ </div>
58
+ </div>
59
+ <ng-content />
60
+ </div>
61
+ `, isInline: true, dependencies: [{ kind: "directive", type: NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "directive", type: NzStringTemplateOutletDirective, selector: "[nzStringTemplateOutlet]", inputs: ["nzStringTemplateOutletContext", "nzStringTemplateOutlet"], exportAs: ["nzStringTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
57
62
  }
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: QuickMenuComponent, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: QuickMenuComponent, decorators: [{
59
64
  type: Component,
60
- args: [{ selector: 'quick-menu', exportAs: 'quickMenu', host: {
61
- '[class.quick-menu]': 'true',
65
+ args: [{
66
+ selector: 'quick-menu',
67
+ exportAs: 'quickMenu',
68
+ template: `
69
+ <div class="quick-menu__inner">
70
+ <div class="quick-menu__ctrl" [style]="ctrlStyle()">
71
+ <div class="quick-menu__ctrl-icon">
72
+ @let ic = icon();
73
+ <ng-container *nzStringTemplateOutlet="ic">
74
+ <nz-icon [nzType]="$any(ic)" />
75
+ </ng-container>
76
+ </div>
77
+ </div>
78
+ <ng-content />
79
+ </div>
80
+ `,
81
+ host: {
82
+ class: 'quick-menu',
62
83
  '(click)': '_click()'
63
- }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [NzIconDirective, NzStringTemplateOutletDirective], template: "<div class=\"quick-menu__inner\">\n <div class=\"quick-menu__ctrl\" [style]=\"ctrlStyle\">\n <div class=\"quick-menu__ctrl-icon\">\n <ng-container *nzStringTemplateOutlet=\"icon\">\n <nz-icon [nzType]=\"$any(icon)\" />\n </ng-container>\n </div>\n </div>\n <ng-content />\n</div>\n" }]
64
- }], propDecorators: { icon: [{
65
- type: Input
66
- }], top: [{
67
- type: Input,
68
- args: [{ transform: numberAttribute }]
69
- }], width: [{
70
- type: Input,
71
- args: [{ transform: numberAttribute }]
72
- }], bgColor: [{
73
- type: Input
74
- }], borderColor: [{
75
- type: Input
76
- }], expand: [{
77
- type: Input,
78
- args: [{ transform: booleanAttribute }]
79
- }], expandChange: [{
80
- type: Output
81
- }] } });
84
+ },
85
+ changeDetection: ChangeDetectionStrategy.OnPush,
86
+ encapsulation: ViewEncapsulation.None,
87
+ imports: [NzIconDirective, NzStringTemplateOutletDirective]
88
+ }]
89
+ }], ctorParameters: () => [], propDecorators: { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], top: [{ type: i0.Input, args: [{ isSignal: true, alias: "top", required: false }] }], width: [{ type: i0.Input, args: [{ isSignal: true, alias: "width", required: false }] }], bgColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "bgColor", required: false }] }], borderColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "borderColor", required: false }] }], expand: [{ type: i0.Input, args: [{ isSignal: true, alias: "expand", required: false }] }], expandChange: [{ type: i0.Output, args: ["expandChange"] }] } });
82
90
 
83
91
  const COMPONENTS = [QuickMenuComponent];
84
92
  class QuickMenuModule {
85
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: QuickMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
86
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: QuickMenuModule, imports: [CommonModule, NzIconModule, NzOutletModule, QuickMenuComponent], exports: [QuickMenuComponent] });
87
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: QuickMenuModule, imports: [CommonModule, NzIconModule, NzOutletModule] });
93
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: QuickMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
94
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.6", ngImport: i0, type: QuickMenuModule, imports: [CommonModule, NzIconModule, NzOutletModule, QuickMenuComponent], exports: [QuickMenuComponent] });
95
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: QuickMenuModule, imports: [CommonModule, NzIconModule, NzOutletModule] });
88
96
  }
89
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: QuickMenuModule, decorators: [{
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: QuickMenuModule, decorators: [{
90
98
  type: NgModule,
91
99
  args: [{
92
100
  imports: [CommonModule, NzIconModule, NzOutletModule, ...COMPONENTS],
@@ -1 +1 @@
1
- {"version":3,"file":"quick-menu.mjs","sources":["../../../../packages/abc/quick-menu/quick-menu.component.ts","../../../../packages/abc/quick-menu/quick-menu.component.html","../../../../packages/abc/quick-menu/quick-menu.module.ts","../../../../packages/abc/quick-menu/quick-menu.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n numberAttribute\n} from '@angular/core';\n\nimport { NzStringTemplateOutletDirective } from 'ng-zorro-antd/core/outlet';\nimport { NzIconDirective } from 'ng-zorro-antd/icon';\n\n@Component({\n selector: 'quick-menu',\n exportAs: 'quickMenu',\n templateUrl: './quick-menu.component.html',\n host: {\n '[class.quick-menu]': 'true',\n '(click)': '_click()'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [NzIconDirective, NzStringTemplateOutletDirective]\n})\nexport class QuickMenuComponent implements OnInit, OnChanges {\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n private readonly render = inject(Renderer2);\n\n ctrlStyle: Record<string, string | undefined> = {};\n\n @Input() icon: string | TemplateRef<void> = 'question-circle';\n @Input({ transform: numberAttribute }) top = 120;\n @Input({ transform: numberAttribute }) width = 200;\n @Input() bgColor?: string;\n @Input() borderColor?: string;\n @Input({ transform: booleanAttribute }) expand: boolean = false;\n @Output() readonly expandChange = new EventEmitter<boolean>();\n\n private show = false;\n private initFlag = false;\n\n _click(): void {\n this.show = !this.show;\n this.expandChange.emit(this.show);\n this.setStyle();\n }\n\n private setStyle(): void {\n this.ctrlStyle = {\n 'background-color': this.bgColor,\n 'border-color': this.borderColor\n };\n\n const res: string[] = [\n `top:${this.top}px`,\n `width:${this.width}px`,\n `margin-right:-${this.show ? 0 : this.width}px`\n ];\n if (this.bgColor) {\n res.push(`background-color:${this.bgColor}`);\n }\n if (this.borderColor) {\n res.push(`border-color:${this.borderColor}`);\n }\n this.render.setAttribute(this.el, 'style', res.join(';'));\n this.cdr.detectChanges();\n }\n\n ngOnInit(): void {\n this.initFlag = true;\n this.setStyle();\n }\n\n ngOnChanges(): void {\n this.show = this.expand;\n if (this.initFlag) {\n this.setStyle();\n }\n }\n}\n","<div class=\"quick-menu__inner\">\n <div class=\"quick-menu__ctrl\" [style]=\"ctrlStyle\">\n <div class=\"quick-menu__ctrl-icon\">\n <ng-container *nzStringTemplateOutlet=\"icon\">\n <nz-icon [nzType]=\"$any(icon)\" />\n </ng-container>\n </div>\n </div>\n <ng-content />\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { QuickMenuComponent } from './quick-menu.component';\n\nconst COMPONENTS = [QuickMenuComponent];\n\n@NgModule({\n imports: [CommonModule, NzIconModule, NzOutletModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class QuickMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quick-menu.mjs","sources":["../../../../packages/abc/quick-menu/quick-menu.component.ts","../../../../packages/abc/quick-menu/quick-menu.module.ts","../../../../packages/abc/quick-menu/quick-menu.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Renderer2,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n computed,\n effect,\n inject,\n input,\n numberAttribute,\n output,\n signal\n} from '@angular/core';\n\nimport { NzStringTemplateOutletDirective } from 'ng-zorro-antd/core/outlet';\nimport { NzIconDirective } from 'ng-zorro-antd/icon';\n\n@Component({\n selector: 'quick-menu',\n exportAs: 'quickMenu',\n template: `\n <div class=\"quick-menu__inner\">\n <div class=\"quick-menu__ctrl\" [style]=\"ctrlStyle()\">\n <div class=\"quick-menu__ctrl-icon\">\n @let ic = icon();\n <ng-container *nzStringTemplateOutlet=\"ic\">\n <nz-icon [nzType]=\"$any(ic)\" />\n </ng-container>\n </div>\n </div>\n <ng-content />\n </div>\n `,\n host: {\n class: 'quick-menu',\n '(click)': '_click()'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [NzIconDirective, NzStringTemplateOutletDirective]\n})\nexport class QuickMenuComponent {\n private readonly el: HTMLElement = inject(ElementRef).nativeElement;\n private readonly render = inject(Renderer2);\n\n readonly icon = input<string | TemplateRef<void>>('question-circle');\n readonly top = input(120, { transform: numberAttribute });\n readonly width = input(200, { transform: numberAttribute });\n readonly bgColor = input<string>();\n readonly borderColor = input<string>();\n readonly expand = input(false, { transform: booleanAttribute });\n readonly expandChange = output<boolean>();\n\n private show = signal(false);\n\n protected ctrlStyle = computed(() => {\n const ret: Record<string, string | undefined> = {\n 'background-color': this.bgColor(),\n 'border-color': this.borderColor()\n };\n return ret;\n });\n\n constructor() {\n effect(() => {\n this.show.set(this.expand());\n });\n effect(() => {\n const res: string[] = [\n `top:${this.top()}px`,\n `width:${this.width()}px`,\n `margin-right:-${this.show() ? 0 : this.width()}px`\n ];\n if (this.bgColor) {\n res.push(`background-color:${this.bgColor()}`);\n }\n if (this.borderColor) {\n res.push(`border-color:${this.borderColor()}`);\n }\n this.render.setAttribute(this.el, 'style', res.join(';'));\n });\n }\n\n _click(): void {\n this.show.set(!this.show());\n this.expandChange.emit(this.show());\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { QuickMenuComponent } from './quick-menu.component';\n\nconst COMPONENTS = [QuickMenuComponent];\n\n@NgModule({\n imports: [CommonModule, NzIconModule, NzOutletModule, ...COMPONENTS],\n exports: COMPONENTS\n})\nexport class QuickMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}