UNPKG

ngx-extended-pdf-viewer

Version:

Embedding PDF files in your Angular application. Highly configurable viewer including the toolbar, sidebar, and all the features you're used to.

131 lines 9.95 kB
/** * @fileoverview added by tsickle * Generated from: lib/toolbar/pdf-zoom-toolbar/pdf-zoom-dropdown/pdf-zoom-dropdown.component.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, ViewChild, Input } from '@angular/core'; /** * @record */ function ZoomLevel() { } if (false) { /** @type {?} */ ZoomLevel.prototype.id; /** @type {?} */ ZoomLevel.prototype.dataL10nId; /** @type {?} */ ZoomLevel.prototype.dataL10nArgs; /** @type {?} */ ZoomLevel.prototype.value; /** @type {?} */ ZoomLevel.prototype.displayValue; } var PdfZoomDropdownComponent = /** @class */ (function () { function PdfZoomDropdownComponent() { this._zoomLevels = []; } Object.defineProperty(PdfZoomDropdownComponent.prototype, "zoomLevels", { // ['auto', 'page-actual', 'page-fit', 'page-width', 0.5, 0.75, 1, 1.25, 1.5, 2, 3, 4]; set: // ['auto', 'page-actual', 'page-fit', 'page-width', 0.5, 0.75, 1, 1.25, 1.5, 2, 3, 4]; /** * @param {?} levels * @return {?} */ function (levels) { var _this = this; this._zoomLevels = levels.map((/** * @param {?} l * @return {?} */ function (l) { return _this.valueToZoomLevel(l); })); }, enumerable: true, configurable: true }); /** * @return {?} */ PdfZoomDropdownComponent.prototype.ngOnInit = /** * @return {?} */ function () { }; /** * @private * @param {?} value * @return {?} */ PdfZoomDropdownComponent.prototype.valueToZoomLevel = /** * @private * @param {?} value * @return {?} */ function (value) { if (value.toString().endsWith('%')) { value = value.toString().replace('%', ''); value = Number(value) / 100; } /** @type {?} */ var numericalValue = Number(value); if (!numericalValue) { /** @type {?} */ var v = String(value); return { id: this.snakeToCamel(value + 'Option'), value: v, dataL10nId: 'page_scale_' + v.replace('page-', ''), dataL10nArgs: undefined, displayValue: v, }; } /** @type {?} */ var percentage = Math.round(numericalValue * 100); return { id: "scale_" + percentage, value: String(numericalValue), dataL10nId: 'page_scale_percent', dataL10nArgs: "{ \"scale\": " + percentage + " }", displayValue: String(percentage) + '%', }; }; /** * @private * @param {?} str * @return {?} */ PdfZoomDropdownComponent.prototype.snakeToCamel = /** * @private * @param {?} str * @return {?} */ function (str) { // idea found here: https://hisk.io/javascript-snake-to-camel/ return str.replace(/([-_][a-z])/g, (/** * @param {?} group * @return {?} */ function (group) { return group.toUpperCase().replace('-', '').replace('_', ''); })); }; PdfZoomDropdownComponent.decorators = [ { type: Component, args: [{ selector: 'pdf-zoom-dropdown', template: "<span id=\"scaleSelectContainer\" class=\"dropdownToolbarButton\">\n <select\n id=\"scaleSelect\"\n title=\"Zoom\"\n data-l10n-id=\"zoom\"\n #sizeSelector\n >\n <option *ngFor=\"let level of _zoomLevels\"\n [id]=\"level.id\"\n [attr.value]=\"level.value\"\n [attr.data-l10n-id]=\"level.dataL10nId\"\n [attr.data-l10n-args]=\"level.dataL10nArgs\">\n {{level.displayValue}}\n </option>\n <option\n id=\"customScaleOption\"\n title=\"\"\n value=\"custom\"\n disabled=\"disabled\"\n hidden=\"true\"\n ></option>\n\n </select>\n</span>\n", styles: [".dropdownToolbarButton{display:table-cell;-webkit-appearance:none;width:150px;max-width:150px}.dropdownToolbarButton>select{width:170px}@media screen and (-webkit-min-device-pixel-ratio:1.1),screen and (min-resolution:1.1dppx){.dropdownToolbarButton::after{top:-1px}}"] }] } ]; /** @nocollapse */ PdfZoomDropdownComponent.ctorParameters = function () { return []; }; PdfZoomDropdownComponent.propDecorators = { zoomLevels: [{ type: Input }], sizeSelector: [{ type: ViewChild, args: ['sizeSelector',] }] }; return PdfZoomDropdownComponent; }()); export { PdfZoomDropdownComponent }; if (false) { /** @type {?} */ PdfZoomDropdownComponent.prototype._zoomLevels; /** @type {?} */ PdfZoomDropdownComponent.prototype.sizeSelector; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXpvb20tZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWV4dGVuZGVkLXBkZi12aWV3ZXIvIiwic291cmNlcyI6WyJsaWIvdG9vbGJhci9wZGYtem9vbS10b29sYmFyL3BkZi16b29tLWRyb3Bkb3duL3BkZi16b29tLWRyb3Bkb3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsU0FBUyxFQUF3QixLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFFMUYsd0JBTUM7OztJQUxDLHVCQUFXOztJQUNYLCtCQUFtQjs7SUFDbkIsaUNBQWlDOztJQUNqQywwQkFBYzs7SUFDZCxpQ0FBcUI7O0FBRXZCO0lBZ0JFO1FBVk8sZ0JBQVcsR0FBcUIsRUFBRSxDQUFDO0lBVTNCLENBQUM7SUFQaEIsc0JBQ1csZ0RBQVU7UUFIckIsdUZBQXVGOzs7Ozs7O1FBRXZGLFVBQ3NCLE1BQThCO1lBRHBELGlCQUdDO1lBREMsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsR0FBRzs7OztZQUFDLFVBQUMsQ0FBQyxJQUFLLE9BQUEsS0FBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxFQUF4QixDQUF3QixFQUFDLENBQUM7UUFDakUsQ0FBQzs7O09BQUE7Ozs7SUFNRCwyQ0FBUTs7O0lBQVIsY0FBWSxDQUFDOzs7Ozs7SUFFTCxtREFBZ0I7Ozs7O0lBQXhCLFVBQXlCLEtBQXNCO1FBQzdDLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNsQyxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLENBQUM7U0FDN0I7O1lBQ0ssY0FBYyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDcEMsSUFBSSxDQUFDLGNBQWMsRUFBRTs7Z0JBQ2IsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDdkIsT0FBTztnQkFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO2dCQUN2QyxLQUFLLEVBQUUsQ0FBQztnQkFDUixVQUFVLEVBQUUsYUFBYSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztnQkFDbEQsWUFBWSxFQUFFLFNBQVM7Z0JBQ3ZCLFlBQVksRUFBRSxDQUFDO2FBQ2hCLENBQUM7U0FDSDs7WUFDSyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsR0FBRyxDQUFDO1FBQ25ELE9BQU87WUFDTCxFQUFFLEVBQUUsV0FBUyxVQUFZO1lBQ3pCLEtBQUssRUFBRSxNQUFNLENBQUMsY0FBYyxDQUFDO1lBQzdCLFVBQVUsRUFBRSxvQkFBb0I7WUFDaEMsWUFBWSxFQUFFLGtCQUFjLFVBQVUsT0FBSTtZQUMxQyxZQUFZLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEdBQUc7U0FDdkMsQ0FBQztJQUNKLENBQUM7Ozs7OztJQUVPLCtDQUFZOzs7OztJQUFwQixVQUFxQixHQUFXO1FBQzlCLDhEQUE4RDtRQUM5RCxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsY0FBYzs7OztRQUFFLFVBQUMsS0FBSyxJQUFLLE9BQUEsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBckQsQ0FBcUQsRUFBQyxDQUFDO0lBQ3ZHLENBQUM7O2dCQWpERixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsaW1CQUFpRDs7aUJBRWxEOzs7Ozs2QkFLRSxLQUFLOytCQUtMLFNBQVMsU0FBQyxjQUFjOztJQW9DM0IsK0JBQUM7Q0FBQSxBQWxERCxJQWtEQztTQTdDWSx3QkFBd0I7OztJQUNuQywrQ0FBMEM7O0lBUTFDLGdEQUE2QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBWaWV3Q2hpbGQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbnRlcmZhY2UgWm9vbUxldmVsIHtcbiAgaWQ6IHN0cmluZztcbiAgZGF0YUwxMG5JZDogc3RyaW5nO1xuICBkYXRhTDEwbkFyZ3M6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgdmFsdWU6IHN0cmluZztcbiAgZGlzcGxheVZhbHVlOiBzdHJpbmc7XG59XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwZGYtem9vbS1kcm9wZG93bicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wZGYtem9vbS1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BkZi16b29tLWRyb3Bkb3duLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUGRmWm9vbURyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIF96b29tTGV2ZWxzOiBBcnJheTxab29tTGV2ZWw+ID0gW107XG4gIC8vIFsnYXV0bycsICdwYWdlLWFjdHVhbCcsICdwYWdlLWZpdCcsICdwYWdlLXdpZHRoJywgMC41LCAwLjc1LCAxLCAxLjI1LCAxLjUsIDIsIDMsIDRdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgem9vbUxldmVscyhsZXZlbHM6IEFycmF5PHN0cmluZyB8IG51bWJlcj4pIHtcbiAgICB0aGlzLl96b29tTGV2ZWxzID0gbGV2ZWxzLm1hcCgobCkgPT4gdGhpcy52YWx1ZVRvWm9vbUxldmVsKGwpKTtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoJ3NpemVTZWxlY3RvcicpIHNpemVTZWxlY3RvcjogYW55O1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgcHJpdmF0ZSB2YWx1ZVRvWm9vbUxldmVsKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIpOiBab29tTGV2ZWwge1xuICAgIGlmICh2YWx1ZS50b1N0cmluZygpLmVuZHNXaXRoKCclJykpIHtcbiAgICAgIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKS5yZXBsYWNlKCclJywgJycpO1xuICAgICAgdmFsdWUgPSBOdW1iZXIodmFsdWUpIC8gMTAwO1xuICAgIH1cbiAgICBjb25zdCBudW1lcmljYWxWYWx1ZSA9IE51bWJlcih2YWx1ZSk7XG4gICAgaWYgKCFudW1lcmljYWxWYWx1ZSkge1xuICAgICAgY29uc3QgdiA9IFN0cmluZyh2YWx1ZSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZDogdGhpcy5zbmFrZVRvQ2FtZWwodmFsdWUgKyAnT3B0aW9uJyksXG4gICAgICAgIHZhbHVlOiB2LFxuICAgICAgICBkYXRhTDEwbklkOiAncGFnZV9zY2FsZV8nICsgdi5yZXBsYWNlKCdwYWdlLScsICcnKSxcbiAgICAgICAgZGF0YUwxMG5BcmdzOiB1bmRlZmluZWQsXG4gICAgICAgIGRpc3BsYXlWYWx1ZTogdixcbiAgICAgIH07XG4gICAgfVxuICAgIGNvbnN0IHBlcmNlbnRhZ2UgPSBNYXRoLnJvdW5kKG51bWVyaWNhbFZhbHVlICogMTAwKTtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IGBzY2FsZV8ke3BlcmNlbnRhZ2V9YCxcbiAgICAgIHZhbHVlOiBTdHJpbmcobnVtZXJpY2FsVmFsdWUpLFxuICAgICAgZGF0YUwxMG5JZDogJ3BhZ2Vfc2NhbGVfcGVyY2VudCcsXG4gICAgICBkYXRhTDEwbkFyZ3M6IGB7IFwic2NhbGVcIjogJHtwZXJjZW50YWdlfSB9YCxcbiAgICAgIGRpc3BsYXlWYWx1ZTogU3RyaW5nKHBlcmNlbnRhZ2UpICsgJyUnLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHNuYWtlVG9DYW1lbChzdHI6IHN0cmluZykge1xuICAgIC8vIGlkZWEgZm91bmQgaGVyZTogaHR0cHM6Ly9oaXNrLmlvL2phdmFzY3JpcHQtc25ha2UtdG8tY2FtZWwvXG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlKC8oWy1fXVthLXpdKS9nLCAoZ3JvdXApID0+IGdyb3VwLnRvVXBwZXJDYXNlKCkucmVwbGFjZSgnLScsICcnKS5yZXBsYWNlKCdfJywgJycpKTtcbiAgfVxufVxuIl19