@progress/kendo-angular-pdfviewer 16.9.0-develop.8 → 16.9.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.
@@ -9,7 +9,7 @@ export const packageMetadata = {
9
9
  name: '@progress/kendo-angular-pdfviewer',
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
12
- publishDate: 1724848962,
13
- version: '16.9.0-develop.8',
12
+ publishDate: 1725979259,
13
+ version: '16.9.0',
14
14
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning',
15
15
  };
@@ -323,16 +323,17 @@ export class PDFViewerComponent {
323
323
  * @hidden
324
324
  */
325
325
  onZoomLevelChange(zoomLevel, emit = true) {
326
- if (typeof zoomLevel === 'string') {
327
- const parsedValue = parseFloat(zoomLevel);
328
- zoomLevel = { value: Number.isNaN(parsedValue) ? 1 : parsedValue / 100 };
329
- }
330
326
  if (!zoomLevel) {
331
- zoomLevel = { value: 1 };
327
+ zoomLevel = {
328
+ value: 1,
329
+ displayValue: '100%',
330
+ text: '100%'
331
+ };
332
332
  }
333
333
  let newZoom = calculateZoomLevel(zoomLevel.value, zoomLevel.type, this.pdfContext.zoom, this.pagesContainer.nativeElement);
334
334
  newZoom = Math.round(newZoom * 100) / 100;
335
- if (emit && hasObservers(this.zoomLevelChange)) {
335
+ const sameZoom = this.zoom === newZoom;
336
+ if (!sameZoom && emit && hasObservers(this.zoomLevelChange)) {
336
337
  this.zoomLevelChange.emit({
337
338
  previousZoomLevel: this.zoom,
338
339
  currentZoomLevel: newZoom
@@ -459,9 +460,11 @@ export class PDFViewerComponent {
459
460
  dom: this.pagesContainer.nativeElement,
460
461
  done: (pdfPages) => {
461
462
  this.pdfContext.pdfPages = pdfPages;
462
- this.ngZone.run(() => this.loading = false);
463
+ this.ngZone.run(() => {
464
+ this.loading = false;
465
+ this.cdr.markForCheck();
466
+ });
463
467
  this.assignPageIds();
464
- this.cdr.markForCheck();
465
468
  },
466
469
  error: (e) => {
467
470
  if (this.pdfScroller) {
@@ -484,7 +487,7 @@ export class PDFViewerComponent {
484
487
  }
485
488
  setZoomLevel(zoom) {
486
489
  const option = this.zoomOptionsData.find(item => !item.type && item.value === zoom);
487
- this.zoomLevel = option || {
490
+ this.zoomLevel = option ? { ...option } : {
488
491
  value: zoom,
489
492
  displayValue: `${Math.round(zoom * 100)}%`,
490
493
  text: `${Math.round(zoom * 100)}%`
@@ -14,6 +14,7 @@ import { ButtonComponent, ButtonGroupComponent } from '@progress/kendo-angular-b
14
14
  import { ToolbarFocusableDirective } from './toolbar-focusable.directive';
15
15
  import { ToolbarInputWrapperComponent } from './input-wrapper.component';
16
16
  import { NgFor, NgSwitch, NgSwitchCase, NgIf } from '@angular/common';
17
+ import { map } from 'rxjs/operators';
17
18
  import * as i0 from "@angular/core";
18
19
  import * as i1 from "@progress/kendo-angular-l10n";
19
20
  import * as i2 from "./toolbar-navigation.service";
@@ -59,6 +60,15 @@ export class ToolbarComponent {
59
60
  this.downloadIcon = downloadIcon;
60
61
  this.printIcon = printIcon;
61
62
  this.pagerType = 'input';
63
+ this.valueNormalizer = (text) => text.pipe(map((value) => {
64
+ const parsedValue = parseFloat(value);
65
+ const newValue = Number.isNaN(parsedValue) ? 1 : parsedValue / 100;
66
+ return {
67
+ value: newValue,
68
+ displayValue: `${Math.round(newValue * 100)}%`,
69
+ text: `${Math.round(newValue * 100)}%`
70
+ };
71
+ }));
62
72
  }
63
73
  messageFor(key) {
64
74
  return this.localization.get(key);
@@ -161,6 +171,8 @@ ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
161
171
  valueField="id"
162
172
  [value]="zoomLevelChooserValue"
163
173
  [allowCustom]="true"
174
+ [valueNormalizer]="valueNormalizer"
175
+ [clearButton]="false"
164
176
  (valueChange)="onZoomLevelChooserValueChange($event)">
165
177
  <ng-template kendoComboBoxItemTemplate let-dataItem>
166
178
  {{ dataItem.type ? messageFor('f' + dataItem.type.slice(1)) : dataItem.text }}
@@ -331,6 +343,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
331
343
  valueField="id"
332
344
  [value]="zoomLevelChooserValue"
333
345
  [allowCustom]="true"
346
+ [valueNormalizer]="valueNormalizer"
347
+ [clearButton]="false"
334
348
  (valueChange)="onZoomLevelChooserValueChange($event)">
335
349
  <ng-template kendoComboBoxItemTemplate let-dataItem>
336
350
  {{ dataItem.type ? messageFor('f' + dataItem.type.slice(1)) : dataItem.text }}
@@ -17,6 +17,7 @@ import * as i1$1 from '@progress/kendo-angular-dropdowns';
17
17
  import { ComboBoxComponent, ItemTemplateDirective } from '@progress/kendo-angular-dropdowns';
18
18
  import { ButtonGroupComponent, ButtonComponent } from '@progress/kendo-angular-buttons';
19
19
  import { NgFor, NgSwitch, NgSwitchCase, NgIf } from '@angular/common';
20
+ import { map } from 'rxjs/operators';
20
21
  import { TextBoxComponent, TextBoxSuffixTemplateDirective } from '@progress/kendo-angular-inputs';
21
22
  import { LoaderComponent as LoaderComponent$1 } from '@progress/kendo-angular-indicators';
22
23
  import 'pdfjs-dist/build/pdf.worker.entry';
@@ -125,8 +126,8 @@ const packageMetadata = {
125
126
  name: '@progress/kendo-angular-pdfviewer',
126
127
  productName: 'Kendo UI for Angular',
127
128
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
128
- publishDate: 1724848962,
129
- version: '16.9.0-develop.8',
129
+ publishDate: 1725979259,
130
+ version: '16.9.0',
130
131
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning',
131
132
  };
132
133
 
@@ -463,6 +464,15 @@ class ToolbarComponent {
463
464
  this.downloadIcon = downloadIcon;
464
465
  this.printIcon = printIcon;
465
466
  this.pagerType = 'input';
467
+ this.valueNormalizer = (text) => text.pipe(map((value) => {
468
+ const parsedValue = parseFloat(value);
469
+ const newValue = Number.isNaN(parsedValue) ? 1 : parsedValue / 100;
470
+ return {
471
+ value: newValue,
472
+ displayValue: `${Math.round(newValue * 100)}%`,
473
+ text: `${Math.round(newValue * 100)}%`
474
+ };
475
+ }));
466
476
  }
467
477
  messageFor(key) {
468
478
  return this.localization.get(key);
@@ -565,6 +575,8 @@ ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
565
575
  valueField="id"
566
576
  [value]="zoomLevelChooserValue"
567
577
  [allowCustom]="true"
578
+ [valueNormalizer]="valueNormalizer"
579
+ [clearButton]="false"
568
580
  (valueChange)="onZoomLevelChooserValueChange($event)">
569
581
  <ng-template kendoComboBoxItemTemplate let-dataItem>
570
582
  {{ dataItem.type ? messageFor('f' + dataItem.type.slice(1)) : dataItem.text }}
@@ -735,6 +747,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
735
747
  valueField="id"
736
748
  [value]="zoomLevelChooserValue"
737
749
  [allowCustom]="true"
750
+ [valueNormalizer]="valueNormalizer"
751
+ [clearButton]="false"
738
752
  (valueChange)="onZoomLevelChooserValueChange($event)">
739
753
  <ng-template kendoComboBoxItemTemplate let-dataItem>
740
754
  {{ dataItem.type ? messageFor('f' + dataItem.type.slice(1)) : dataItem.text }}
@@ -1442,16 +1456,17 @@ class PDFViewerComponent {
1442
1456
  * @hidden
1443
1457
  */
1444
1458
  onZoomLevelChange(zoomLevel, emit = true) {
1445
- if (typeof zoomLevel === 'string') {
1446
- const parsedValue = parseFloat(zoomLevel);
1447
- zoomLevel = { value: Number.isNaN(parsedValue) ? 1 : parsedValue / 100 };
1448
- }
1449
1459
  if (!zoomLevel) {
1450
- zoomLevel = { value: 1 };
1460
+ zoomLevel = {
1461
+ value: 1,
1462
+ displayValue: '100%',
1463
+ text: '100%'
1464
+ };
1451
1465
  }
1452
1466
  let newZoom = calculateZoomLevel(zoomLevel.value, zoomLevel.type, this.pdfContext.zoom, this.pagesContainer.nativeElement);
1453
1467
  newZoom = Math.round(newZoom * 100) / 100;
1454
- if (emit && hasObservers(this.zoomLevelChange)) {
1468
+ const sameZoom = this.zoom === newZoom;
1469
+ if (!sameZoom && emit && hasObservers(this.zoomLevelChange)) {
1455
1470
  this.zoomLevelChange.emit({
1456
1471
  previousZoomLevel: this.zoom,
1457
1472
  currentZoomLevel: newZoom
@@ -1580,9 +1595,11 @@ class PDFViewerComponent {
1580
1595
  dom: this.pagesContainer.nativeElement,
1581
1596
  done: (pdfPages) => {
1582
1597
  this.pdfContext.pdfPages = pdfPages;
1583
- this.ngZone.run(() => this.loading = false);
1598
+ this.ngZone.run(() => {
1599
+ this.loading = false;
1600
+ this.cdr.markForCheck();
1601
+ });
1584
1602
  this.assignPageIds();
1585
- this.cdr.markForCheck();
1586
1603
  },
1587
1604
  error: (e) => {
1588
1605
  if (this.pdfScroller) {
@@ -1605,7 +1622,7 @@ class PDFViewerComponent {
1605
1622
  }
1606
1623
  setZoomLevel(zoom) {
1607
1624
  const option = this.zoomOptionsData.find(item => !item.type && item.value === zoom);
1608
- this.zoomLevel = option || {
1625
+ this.zoomLevel = option ? Object.assign({}, option) : {
1609
1626
  value: zoom,
1610
1627
  displayValue: `${Math.round(zoom * 100)}%`,
1611
1628
  text: `${Math.round(zoom * 100)}%`
@@ -17,6 +17,7 @@ import * as i1$1 from '@progress/kendo-angular-dropdowns';
17
17
  import { ComboBoxComponent, ItemTemplateDirective } from '@progress/kendo-angular-dropdowns';
18
18
  import { ButtonGroupComponent, ButtonComponent } from '@progress/kendo-angular-buttons';
19
19
  import { NgFor, NgSwitch, NgSwitchCase, NgIf } from '@angular/common';
20
+ import { map } from 'rxjs/operators';
20
21
  import { TextBoxComponent, TextBoxSuffixTemplateDirective } from '@progress/kendo-angular-inputs';
21
22
  import { LoaderComponent as LoaderComponent$1 } from '@progress/kendo-angular-indicators';
22
23
  import 'pdfjs-dist/build/pdf.worker.entry';
@@ -125,8 +126,8 @@ const packageMetadata = {
125
126
  name: '@progress/kendo-angular-pdfviewer',
126
127
  productName: 'Kendo UI for Angular',
127
128
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
128
- publishDate: 1724848962,
129
- version: '16.9.0-develop.8',
129
+ publishDate: 1725979259,
130
+ version: '16.9.0',
130
131
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning',
131
132
  };
132
133
 
@@ -463,6 +464,15 @@ class ToolbarComponent {
463
464
  this.downloadIcon = downloadIcon;
464
465
  this.printIcon = printIcon;
465
466
  this.pagerType = 'input';
467
+ this.valueNormalizer = (text) => text.pipe(map((value) => {
468
+ const parsedValue = parseFloat(value);
469
+ const newValue = Number.isNaN(parsedValue) ? 1 : parsedValue / 100;
470
+ return {
471
+ value: newValue,
472
+ displayValue: `${Math.round(newValue * 100)}%`,
473
+ text: `${Math.round(newValue * 100)}%`
474
+ };
475
+ }));
466
476
  }
467
477
  messageFor(key) {
468
478
  return this.localization.get(key);
@@ -565,6 +575,8 @@ ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versi
565
575
  valueField="id"
566
576
  [value]="zoomLevelChooserValue"
567
577
  [allowCustom]="true"
578
+ [valueNormalizer]="valueNormalizer"
579
+ [clearButton]="false"
568
580
  (valueChange)="onZoomLevelChooserValueChange($event)">
569
581
  <ng-template kendoComboBoxItemTemplate let-dataItem>
570
582
  {{ dataItem.type ? messageFor('f' + dataItem.type.slice(1)) : dataItem.text }}
@@ -735,6 +747,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
735
747
  valueField="id"
736
748
  [value]="zoomLevelChooserValue"
737
749
  [allowCustom]="true"
750
+ [valueNormalizer]="valueNormalizer"
751
+ [clearButton]="false"
738
752
  (valueChange)="onZoomLevelChooserValueChange($event)">
739
753
  <ng-template kendoComboBoxItemTemplate let-dataItem>
740
754
  {{ dataItem.type ? messageFor('f' + dataItem.type.slice(1)) : dataItem.text }}
@@ -1439,16 +1453,17 @@ class PDFViewerComponent {
1439
1453
  * @hidden
1440
1454
  */
1441
1455
  onZoomLevelChange(zoomLevel, emit = true) {
1442
- if (typeof zoomLevel === 'string') {
1443
- const parsedValue = parseFloat(zoomLevel);
1444
- zoomLevel = { value: Number.isNaN(parsedValue) ? 1 : parsedValue / 100 };
1445
- }
1446
1456
  if (!zoomLevel) {
1447
- zoomLevel = { value: 1 };
1457
+ zoomLevel = {
1458
+ value: 1,
1459
+ displayValue: '100%',
1460
+ text: '100%'
1461
+ };
1448
1462
  }
1449
1463
  let newZoom = calculateZoomLevel(zoomLevel.value, zoomLevel.type, this.pdfContext.zoom, this.pagesContainer.nativeElement);
1450
1464
  newZoom = Math.round(newZoom * 100) / 100;
1451
- if (emit && hasObservers(this.zoomLevelChange)) {
1465
+ const sameZoom = this.zoom === newZoom;
1466
+ if (!sameZoom && emit && hasObservers(this.zoomLevelChange)) {
1452
1467
  this.zoomLevelChange.emit({
1453
1468
  previousZoomLevel: this.zoom,
1454
1469
  currentZoomLevel: newZoom
@@ -1575,9 +1590,11 @@ class PDFViewerComponent {
1575
1590
  dom: this.pagesContainer.nativeElement,
1576
1591
  done: (pdfPages) => {
1577
1592
  this.pdfContext.pdfPages = pdfPages;
1578
- this.ngZone.run(() => this.loading = false);
1593
+ this.ngZone.run(() => {
1594
+ this.loading = false;
1595
+ this.cdr.markForCheck();
1596
+ });
1579
1597
  this.assignPageIds();
1580
- this.cdr.markForCheck();
1581
1598
  },
1582
1599
  error: (e) => {
1583
1600
  if (this.pdfScroller) {
@@ -1600,7 +1617,7 @@ class PDFViewerComponent {
1600
1617
  }
1601
1618
  setZoomLevel(zoom) {
1602
1619
  const option = this.zoomOptionsData.find(item => !item.type && item.value === zoom);
1603
- this.zoomLevel = option || {
1620
+ this.zoomLevel = option ? { ...option } : {
1604
1621
  value: zoom,
1605
1622
  displayValue: `${Math.round(zoom * 100)}%`,
1606
1623
  text: `${Math.round(zoom * 100)}%`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-pdfviewer",
3
- "version": "16.9.0-develop.8",
3
+ "version": "16.9.0",
4
4
  "description": "Kendo UI PDFViewer for Angular",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",
@@ -23,21 +23,21 @@
23
23
  "@angular/core": "15 - 18",
24
24
  "@angular/platform-browser": "15 - 18",
25
25
  "@progress/kendo-licensing": "^1.0.2",
26
- "@progress/kendo-angular-buttons": "16.9.0-develop.8",
27
- "@progress/kendo-angular-common": "16.9.0-develop.8",
28
- "@progress/kendo-angular-dropdowns": "16.9.0-develop.8",
29
- "@progress/kendo-angular-inputs": "16.9.0-develop.8",
30
- "@progress/kendo-angular-intl": "16.9.0-develop.8",
31
- "@progress/kendo-angular-l10n": "16.9.0-develop.8",
32
- "@progress/kendo-angular-icons": "16.9.0-develop.8",
33
- "@progress/kendo-angular-indicators": "16.9.0-develop.8",
34
- "@progress/kendo-angular-pager": "16.9.0-develop.8",
35
- "@progress/kendo-angular-popup": "16.9.0-develop.8",
26
+ "@progress/kendo-angular-buttons": "16.9.0",
27
+ "@progress/kendo-angular-common": "16.9.0",
28
+ "@progress/kendo-angular-dropdowns": "16.9.0",
29
+ "@progress/kendo-angular-inputs": "16.9.0",
30
+ "@progress/kendo-angular-intl": "16.9.0",
31
+ "@progress/kendo-angular-l10n": "16.9.0",
32
+ "@progress/kendo-angular-icons": "16.9.0",
33
+ "@progress/kendo-angular-indicators": "16.9.0",
34
+ "@progress/kendo-angular-pager": "16.9.0",
35
+ "@progress/kendo-angular-popup": "16.9.0",
36
36
  "rxjs": "^6.5.3 || ^7.0.0"
37
37
  },
38
38
  "dependencies": {
39
39
  "tslib": "^2.3.1",
40
- "@progress/kendo-angular-schematics": "16.9.0-develop.8",
40
+ "@progress/kendo-angular-schematics": "16.9.0",
41
41
  "@progress/kendo-file-saver": "^1.0.1",
42
42
  "@progress/kendo-pdfviewer-common": "0.2.10"
43
43
  },
@@ -197,7 +197,7 @@ export declare class PDFViewerComponent implements OnInit, AfterViewInit, OnDest
197
197
  /**
198
198
  * @hidden
199
199
  */
200
- onZoomLevelChange(zoomLevel: ZoomLevel | string, emit?: boolean): void;
200
+ onZoomLevelChange(zoomLevel: ZoomLevel, emit?: boolean): void;
201
201
  /**
202
202
  * @hidden
203
203
  */
@@ -4,8 +4,8 @@ const schematics_1 = require("@angular-devkit/schematics");
4
4
  function default_1(options) {
5
5
  const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'PDFViewerModule', package: 'pdfviewer', peerDependencies: {
6
6
  // peers of the dropdowns
7
- '@progress/kendo-angular-navigation': '16.9.0-develop.8',
8
- '@progress/kendo-angular-treeview': '16.9.0-develop.8'
7
+ '@progress/kendo-angular-navigation': '16.9.0',
8
+ '@progress/kendo-angular-treeview': '16.9.0'
9
9
  } });
10
10
  return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
11
11
  }
@@ -9,6 +9,7 @@ import { SVGIcon } from '@progress/kendo-svg-icons';
9
9
  import { ToolbarNavigationService } from './toolbar-navigation.service';
10
10
  import { PDFViewerTool } from '../models/toolbar-tool';
11
11
  import { ZoomLevel } from '../models/zoom-level';
12
+ import { Observable } from 'rxjs';
12
13
  import * as i0 from "@angular/core";
13
14
  /**
14
15
  * @hidden
@@ -61,6 +62,11 @@ export declare class ToolbarComponent {
61
62
  onFileSelect(e: any): void;
62
63
  onZoomLevelChooserValueChange(zoomLevel: ZoomLevel): void;
63
64
  focus(): void;
65
+ valueNormalizer: (text: Observable<string>) => Observable<{
66
+ value: number;
67
+ displayValue: string;
68
+ text: string;
69
+ }>;
64
70
  static ɵfac: i0.ɵɵFactoryDeclaration<ToolbarComponent, never>;
65
71
  static ɵcmp: i0.ɵɵComponentDeclaration<ToolbarComponent, "[kendoPDFViewerToolbar]", never, { "zoomLevel": "zoomLevel"; "calculatedComboBoxValue": "calculatedComboBoxValue"; "skip": "skip"; "pageSize": "pageSize"; "total": "total"; "zoomInDisabled": "zoomInDisabled"; "zoomOutDisabled": "zoomOutDisabled"; "disabledTools": "disabledTools"; "zoomLevelChooserValue": "zoomLevelChooserValue"; "zoomOptionsData": "zoomOptionsData"; "pagesContainerId": "pagesContainerId"; "tools": "tools"; }, { "fileSelect": "fileSelect"; "fileSelectStart": "fileSelectStart"; "fileSelectError": "fileSelectError"; "download": "download"; "selectionEnabled": "selectionEnabled"; "panningEnabled": "panningEnabled"; "pageChange": "pageChange"; "zoomIn": "zoomIn"; "zoomOut": "zoomOut"; "zoomLevelChange": "zoomLevelChange"; "print": "print"; "search": "search"; }, never, never, true, never>;
66
72
  }